Commit Graph

8966 Commits

Author SHA1 Message Date
Michael Telatynski
811454462d fix Stickerpicker and MessageContextMenu
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 20:38:58 +00:00
Michael Telatynski
3847996b5b transition Tooltips over to deprecated code
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 20:26:09 +00:00
Michael Telatynski
2daf3a96bf delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 18:42:38 +00:00
Michael Telatynski
6c5b777a77 Consolidate all except tooltips
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 18:16:59 +00:00
Michael Telatynski
5a540f5949 Migrate MemberStatusMessageAvatar over to new Context Menus
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-28 16:40:45 +00:00
Michael Telatynski
6d69ec17d9 Merge branches 'develop' and 't3chguy/context_menus' of github.com:matrix-org/matrix-react-sdk into t3chguy/context_menus
 Conflicts:
	src/components/views/context_menus/RoomTileContextMenu.js
2019-11-28 16:25:59 +00:00
Travis Ralston
90a1cb68eb
Merge pull request #3681 from matrix-org/travis/fix-jitsi
Fix persisted widgets getting stuck at loading screens
2019-11-28 09:06:44 -07:00
Aaron Raimist
1bb55d4fa1
Hide Remove button in message editing history if you don't have permission to redact
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-11-27 22:30:39 -06:00
Travis Ralston
f020929345 Add an option to invite users to upgraded private rooms
The option doesn't show up on public room upgrades.
2019-11-27 20:29:11 -07:00
Travis Ralston
96ffe94876 Merge remote-tracking branch 'origin/develop' into t3chguy/clear_notifications 2019-11-27 19:27:52 -07:00
Travis Ralston
7b013ecc69 Fix persisted widgets getting stuck at loading screens
The widget itself is rendered underneath the loading screen, so we just have to disable the loading state.

This commit also removes the "is" attribute because React 16 includes unknown attributes: https://reactjs.org/blog/2017/09/08/dom-attributes-in-react-16.html

Fixes https://github.com/vector-im/riot-web/issues/11536
2019-11-27 12:54:31 -07:00
Travis Ralston
fbba55ab05
Merge pull request #3670 from matrix-org/travis/toggle-communities
Make the communities button behave more like a toggle
2019-11-27 07:52:05 -07:00
David Baker
c9b972116a Remove broken velocity-ui animation
The deactivate account dialog tried to shake the password box on
an incorrect password but it didn't work because we don't import
velocity-ui anywhere. Looks like we forgot to import it in
DeactivateAccountDialog.js and were relying on it being imported
elsewhere (so probably broke when BottomLeftMenu got removed).

Either way, we no longer use the field-shake animation anywhere else,
so just remove it.
2019-11-27 11:47:57 +00:00
David Baker
dd7b08ec25
Merge pull request #3674 from matrix-org/dbkr/read_marker_css_transition
Change read markers to use CSS transitions
2019-11-27 09:18:53 +00:00
Aaron Raimist
98c47265c9
Fix indentation
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-11-26 15:01:02 -06:00
Aaron Raimist
7905e6cc3b
Add a link to the labs feature documentation
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2019-11-26 14:31:48 -06:00
David Baker
a2e3f64963 Change read markers to use CSS transitions
Removes one of the two places we use Velocity, so we're one step
closer to getting rid of it for good.

Should therefore fix the fact that Velocity is leaking data entries
and therefore <hr> elements.

Hopefully also makes the logic in getEventTiles incrementally simpler,
if still somwewhat byzantine.
2019-11-26 19:06:02 +00:00
Travis Ralston
9f1df0ce8f
Merge pull request #3669 from matrix-org/travis/breadcrumb-upgrades
Update breadcrumbs when we do eventually see upgraded rooms
2019-11-26 10:33:07 -07:00
Matthew Hodgson
9f455fae4b
Merge branch 'develop' into matthew/fix_logging 2019-11-26 10:19:48 +00:00
Matthew Hodgson
9fd45d1f14 console.log doesn't take %s substitutions 2019-11-26 01:14:03 +00:00
Travis Ralston
1ff39f2524 Make the communities button behave more like a toggle
Fixes https://github.com/vector-im/riot-web/issues/10771

Clicking the button should toggle between your last page (room in our case) and the communities stuff.
2019-11-25 16:51:48 -07:00
Travis Ralston
9df227dbd0 Update breadcrumbs when we do eventually see upgraded rooms
Fixes https://github.com/vector-im/riot-web/issues/11469
2019-11-25 16:21:09 -07:00
Travis Ralston
98693d2dbc
Merge pull request #3665 from matrix-org/travis/fix-flashing
Hide tooltips with CSS when they aren't visible
2019-11-25 09:13:43 -07:00
Bruno Windels
694f2cb1dc make sure the toast container is always in the document 2019-11-25 13:20:20 +01:00
Bruno Windels
422ab81185 a11y adjustments for toasts 2019-11-25 12:31:57 +01:00
Travis Ralston
11fec80370 Hide tooltips with CSS when they aren't visible
Fixes https://github.com/vector-im/riot-web/issues/11456
2019-11-24 20:52:22 -07:00
David Baker
7f7e51627c
Merge pull request #3664 from matrix-org/dbkr/nullcheck_thumbnail_file
Null check on thumbnail_file
2019-11-22 16:59:15 +00:00
Bruno Windels
15b5ad7451
Merge pull request #3662 from matrix-org/bwindels/itsadoubledate
Fix double date separator for room upgrade tiles
2019-11-22 16:52:47 +00:00
David Baker
aae3150383 Null check on thumbnail_file 2019-11-22 16:50:32 +00:00
Bruno Windels
4a684d01a4
Merge pull request #3661 from matrix-org/bwindels/verif-toasts
Show incoming verification requests in in-app notifications
2019-11-22 16:39:18 +00:00
Bruno Windels
32b6fccbfc fix double date separator 2019-11-22 17:26:14 +01:00
Bruno Windels
309633181d use FormButton in verification request tile too and dedupe styles 2019-11-22 16:32:50 +01:00
Bruno Windels
0dfb0f5468 fix lint 2019-11-22 16:25:30 +01:00
Bruno Windels
8cb362002b show a toast instead of dialog when feature flag is enabled 2019-11-22 16:08:27 +01:00
Bruno Windels
c705752317 add toast for verification requests
this uses a verification requests as emitted by the js-sdk with
the `crypto.verification.request` rather than a verifier as emitted
by `crypto.verification.start` as this works for both to_device and
timeline events with the changes made in the js-sdk pr.
2019-11-22 16:08:27 +01:00
Bruno Windels
66cc68bae4 add new-styled button
might merge it later on with accessible button
2019-11-22 16:04:51 +01:00
Bruno Windels
e86d2b616e add ToastContainer 2019-11-22 16:04:51 +01:00
David Baker
7df8ef2f91
Merge pull request #3655 from matrix-org/t3chguy/fix_m.room.create_upgrade_notice
Show m.room.create event before the ELS on room upgrade
2019-11-22 13:41:36 +00:00
David Baker
25ba4c5f71 Fix read markers
init code needs to be a constructor or its run too late
2019-11-22 13:11:36 +00:00
David Baker
3f5a8faf37 PropTypes should be static 2019-11-22 13:01:56 +00:00
David Baker
6d4abeef45 Convert MessagePanel to React class
I was about to add the getDerivedStateFromProps function to change
how read markers worked, but doing that in an old style class
means the statics object, so let;s just convert the thing.
2019-11-22 12:07:25 +00:00
Michael Telatynski
a02a285058 Show m.room.create event before the ELS on room upgrade
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-22 10:24:51 +00:00
David Baker
b239fde32d Workaround for soft-crash with calls on startup
Fixes https://github.com/vector-im/riot-web/issues/11458
2019-11-21 17:31:57 +00:00
Travis Ralston
72f0401589 Merge branch 'develop' into jryans/4s-new-key-backup 2019-11-21 10:22:13 -07:00
Travis Ralston
9d5f3ce32d
Merge pull request #3650 from matrix-org/travis/widget-integration-copy
Rename section heading for integrations in settings
2019-11-21 10:13:59 -07:00
Travis Ralston
a55e5f7759 Update copy for widgets not using message encryption
Misc design update
2019-11-21 09:12:07 -07:00
Travis Ralston
f7f22444e8 Rename section heading for integrations in settings
Misc design update
2019-11-21 09:03:07 -07:00
Travis Ralston
6597e0bd42
Merge pull request #3646 from matrix-org/travis/integration-manager-opt
Add an option to disable the use of integration managers for provisioning
2019-11-21 08:10:56 -07:00
Travis Ralston
86783e4439
Merge pull request #3645 from matrix-org/travis/widget-menu
Move many widget options to a context menu
2019-11-21 08:10:28 -07:00
Travis Ralston
5d612bb370
Merge pull request #3644 from matrix-org/travis/widget-encryption
Re-add encryption warning to widget permission prompt
2019-11-21 08:04:56 -07:00
Michael Telatynski
d3f872bf7a Merge branches 'develop' and 't3chguy/remove_bluebird' of github.com:matrix-org/matrix-react-sdk into t3chguy/remove_bluebird 2019-11-21 11:15:32 +00:00
Travis Ralston
670c14b2e3 Circumvent the linter 2019-11-20 20:54:21 -07:00
Travis Ralston
a69d818a0d Our linter is seriously picky. 2019-11-20 20:49:41 -07:00
Travis Ralston
560c0afae3 Appease the linter 2019-11-20 20:45:16 -07:00
Travis Ralston
94fed922cf Intercept cases of disabled/no integration managers
We already intercepted most of the cases where no integration manager was present, though there was a bug in many components where openAll() would be called regardless of an integration manager being available.

The integration manager being disabled by the user is handled in the IntegrationManager classes rather than on click because we have quite a few calls to these functions. The StickerPicker is an exception because it does slightly different behaviour.

This also removes the old "no integration manager configured" state from the IntegrationManager component as it is now replaced by a dialog.
2019-11-20 20:40:39 -07:00
Travis Ralston
81c9bdd9f3 It's called an "Integration Manager" (singular)
Fixes https://github.com/vector-im/riot-web/issues/11256

This was finally annoying me enough to fix it.
2019-11-20 20:14:25 -07:00
Travis Ralston
3391cc0d90 Add the toggle switch for provisioning 2019-11-20 20:05:32 -07:00
Travis Ralston
0a0e952691 Update integration manager copy 2019-11-20 19:53:52 -07:00
Travis Ralston
b0eb54541c Rip out options to change your integration manager
We are not supporting this due to the complexity involved in switching integration managers. We still support custom ones under the hood, just not to the common user. A later sprint on integrations will consider re-adding the option alongside fixing the various bugs out there.
2019-11-20 19:50:13 -07:00
Travis Ralston
fd12eb28e7 Move many widget options to a context menu
Part of https://github.com/vector-im/riot-web/issues/11262
2019-11-20 19:17:42 -07:00
bkil
a40194194d ReactionsRowButtonTooltip: fix null dereference if emoji owner left room
Signed-off-by: bkil <b.K.il.h.u+tigbuh@gmail.com>
2019-11-21 01:50:18 +01:00
Travis Ralston
62a2c7a51a Re-add encryption warning to widget permission prompt 2019-11-20 16:26:06 -07:00
Travis Ralston
8abc0953d5 Remove the import my IDE should have removed for me 2019-11-20 11:08:53 -07:00
Travis Ralston
93e4de9861 Fix positioning and sizing of e2e icon in the composer
This also removes the special case class for the composer because the input is now aligned regardless of icon.
2019-11-20 11:00:39 -07:00
J. Ryan Stinnett
e6dea37693 Add hidden button for bootstrapping SSSS
This adds an testing button to the key backup panel which bootstraps the Secure
Secret Storage system (and also cross-signing keys).

Fixes https://github.com/vector-im/riot-web/issues/11212
2019-11-20 17:56:44 +00:00
Travis Ralston
1c1b8cf6b9
Merge pull request #3630 from matrix-org/travis/widget-permission
Wire up the widget permission prompt to the cross-platform setting
2019-11-20 10:37:51 -07:00
David Baker
00241a8d0c
Merge pull request #3637 from matrix-org/dbkr/system_dark_mode
Get theme automatically from system setting
2019-11-20 16:32:37 +00:00
David Baker
a744415221 Add hack to work around mystery settings bug 2019-11-20 15:34:32 +00:00
Michael Telatynski
6121420113
Merge branch 'develop' into t3chguy/remove_bluebird 2019-11-20 15:21:23 +00:00
Bruno Windels
d1554977a8
Merge pull request #3633 from matrix-org/bwindels/fix-roomstatus-e2e-icon
use general warning icon instead of e2e one for room status
2019-11-20 14:36:30 +00:00
David Baker
71f5c8b2b0 Lint 2019-11-20 13:47:54 +00:00
David Baker
5a700b518a Get theme automatically from system setting
Uses CSS `prefers-color-scheme` to get the user's preferred colour
scheme. Also bundles up some theme logic into its own class.
2019-11-20 13:41:06 +00:00
Damir Jelić
44b212bc4c Merge branch 'poljar/seshat-pr' into develop 2019-11-20 13:33:03 +01:00
David Baker
a31d222570 Add catch handler for theme setting 2019-11-19 23:00:54 +00:00
David Baker
80ee68a42f Use a settings watcher to set the theme
Rather than listening for account data updates manually
2019-11-19 22:36:55 +00:00
J. Ryan Stinnett
9dea848927 Use div around buttons to fix React warning 2019-11-19 16:28:49 +00:00
Bruno Windels
de0287213e use general warning icon instead of e2e one for room status 2019-11-19 15:06:09 +01:00
Bruno Windels
43884923e8 merge the feature_user_info_panel flag into feature_dm_verification 2019-11-19 14:18:12 +01:00
Damir Jelić
6017473caf EventIndex: Move the event listener registration into the EventIndex class. 2019-11-19 14:05:00 +01:00
Travis Ralston
5b6ace2558 Appease the linter 2019-11-18 18:02:47 -07:00
Travis Ralston
b185eed462 Wire up the widget permission prompt to the cross-platform setting
This doesn't have any backwards compatibility with anyone who has already clicked "Allow". We kinda want everyone to read the new prompt, so what better way to do it than effectively revoke all widget permissions?

Part of https://github.com/vector-im/riot-web/issues/11262
2019-11-18 17:56:33 -07:00
Travis Ralston
f5ec9eb8f4 Ensure widgets always have a sender associated with them
Fixes https://github.com/vector-im/riot-web/issues/11419
2019-11-18 13:16:36 -07:00
Michael Telatynski
f9d1fed74a re-add missing case of codepath 2019-11-18 19:00:22 +00:00
Travis Ralston
ef1c575bff
Merge pull request #3622 from matrix-org/travis/new-widget-prompt
Implement the bulk of the new widget permission prompt design
2019-11-18 10:45:18 -07:00
J. Ryan Stinnett
cf26f14644 Switch to function properties to avoid manual binding in KeyBackupPanel 2019-11-18 17:43:34 +00:00
J. Ryan Stinnett
d5d2f7f936
Merge pull request #3588 from matrix-org/jryans/identity-disco-opt
Relax identity server discovery error handling
2019-11-18 17:09:08 +00:00
Michael Telatynski
e144f1c368 remove Promise.config 2019-11-18 10:37:29 +00:00
Michael Telatynski
5c172a383d Merge branch 't3chguy/remove_bluebird_2' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/remove_bluebird
 Conflicts:
	src/components/views/right_panel/UserInfo.js
2019-11-18 10:36:43 +00:00
Michael Telatynski
d4d51dc61f Rip out the remainder of Bluebird 2019-11-18 10:03:05 +00:00
Damir Jelić
5149164010 MatrixChat: Revert the unnecessary changes in the MatrixChat class. 2019-11-18 10:58:40 +01:00
Michael Telatynski
1ab9b82c25
Merge pull request #3618 from matrix-org/t3chguy/remove_bluebird_2
Remove Bluebird: phase 2.1
2019-11-18 09:29:04 +00:00
Travis Ralston
6b726a8e13 Implement the bulk of the new widget permission prompt design
Part 1 of https://github.com/vector-im/riot-web/issues/11262

This is all the visual changes - the actual wiring of the UI to the right places is for another PR (though this PR still works independently).

The help icon is known to be weird here - it's a bug in the svg we have. The tooltip also goes right instead of up because making the tooltip go up is not easy work for this PR - maybe a future one if we *really* want it to go up.
2019-11-15 14:26:16 -07:00
Travis Ralston
616a5ab55d Merge branch 'develop' into travis/deactivate-2 2019-11-15 10:24:20 -07:00
Bruno Windels
0f39a9f72d fix pr feedback 2019-11-15 17:29:38 +01:00
Bruno Windels
d416ba2c0c add verify button while we don't have the verification in right panel 2019-11-15 16:14:18 +01:00
Bruno Windels
3a399e18fc prevent https://github.com/vector-im/riot-web/issues/11338 2019-11-15 16:14:18 +01:00
Bruno Windels
53019c5e91 don't show devices section when not encrypted, as it just shows spinner 2019-11-15 16:14:18 +01:00
Bruno Windels
92237f1045 cleanup 2019-11-15 16:14:18 +01:00
Bruno Windels
264c8181c2 add canEdit to permission state, more explicit than maxLevel >= 0 2019-11-15 16:14:18 +01:00
Bruno Windels
48b1207c6e split up PowerLevelEditor into two components
one while editing (PowerLevelEditor) and one
while not editing (PowerLevelSection).

Also save when pressing the button, not when changing the
power dropdown.

Also show the spinner next to the dropdown when saving,
not at the bottom of the component.
2019-11-15 16:14:18 +01:00
Bruno Windels
e86ceb986f pass powerlevels state to power level section and admin section 2019-11-15 16:14:18 +01:00
Bruno Windels
bd853b3102 listen for RoomState.members instead of RoomState.events
as the powerlevel on the member is not yet updated at the time
RoomState.events is emitted.

Also listen on the client for this event as the currentState
object can change when the timeline is reset.
2019-11-15 16:14:18 +01:00
Bruno Windels
6db162a3a7 add PL edit mode, don't show selector by default
still saves when changing the selector though
2019-11-15 16:14:18 +01:00
Bruno Windels
d0914f9208 allow label to be empty on power selector 2019-11-15 16:14:18 +01:00
Bruno Windels
b278531f2f add IconButton as in design 2019-11-15 16:14:18 +01:00
Bruno Windels
ca12e6c010 don't render unverified state on bubbles
as they are only used for verification right now,
and verification events will be unverified by definition,
so no need to alarm users needlessly.

Also, this breaks the bubble layout on hover due to e2e icons
and verified left border style.
2019-11-15 16:14:18 +01:00
Bruno Windels
9e8a2eda1f small fixes 2019-11-15 16:14:18 +01:00
Bruno Windels
030827f77d mark destructive actions in red 2019-11-15 16:14:18 +01:00
Bruno Windels
0bd1e7112d style security section as per design 2019-11-15 16:14:18 +01:00
Bruno Windels
04731d0ae3 RoomState.events fired on RoomState object, not room 2019-11-15 16:14:18 +01:00
Bruno Windels
6afeeddb36 hide verified devices by default with expand button 2019-11-15 16:14:18 +01:00
Bruno Windels
4a1dc55673 fixup: rearrange openDMForUser 2019-11-15 16:14:18 +01:00
Bruno Windels
e32a948d5d add "unverify user" action to user info 2019-11-15 16:14:18 +01:00
Bruno Windels
29216ef668 update when room encryption is turned on
also don't download devices as long as room is not encrypted
2019-11-15 16:14:18 +01:00
Bruno Windels
bd2bf4500a remove direct message list from UserInfo 2019-11-15 16:14:18 +01:00
Bruno Windels
238555f4ec fixup: isMe 2019-11-15 16:14:18 +01:00
Bruno Windels
8dd7d8e5c0 fixup: don't consider left DM rooms 2019-11-15 16:14:18 +01:00
Bruno Windels
b475bc9e91 Add direct message button
While we don't have canonical DMs yet,
it takes you to the most recently active DM room
2019-11-15 16:14:18 +01:00
Bruno Windels
3e356756aa style profile info 2019-11-15 16:14:18 +01:00
Bruno Windels
f4988392f9 restyle e2e icons 2019-11-15 16:14:18 +01:00
Bruno Windels
af4ad488bd Restyle Avatar
Make it a circle with the profile picture centered,
with a max height/width of 30vh
2019-11-15 16:14:18 +01:00
J. Ryan Stinnett
854b5a7af5
Merge pull request #3617 from matrix-org/jryans/login-server-details-when-dead
Show server details on login for unreachable homeserver
2019-11-14 20:29:32 +00:00
Travis Ralston
b05dabe2b7 Add better error handling to Synapse user deactivation
Also clearly flag it as a Synapse user deactivation in the analytics, so we don't get confused.

Fixes https://github.com/vector-im/riot-web/issues/10986
2019-11-14 12:02:43 -07:00
J. Ryan Stinnett
413b90328f Show server details on login for unreachable homeserver
This fixes the login page to be more helpful when the current homeserver is
unreachable: it reveals the server change field, so you have some chance to
progress forward.

Fixes https://github.com/vector-im/riot-web/issues/11077
2019-11-14 15:23:04 +00:00
Michael Telatynski
58d15acf19
Merge pull request #3612 from matrix-org/t3chguy/remove_bluebird_1
Remove Bluebird: phase 1
2019-11-14 14:52:30 +00:00
Michael Telatynski
54dcaf1302 Replace bluebird specific promise things. Fix uses of sync promise code.
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 13:52:17 +00:00
Michael Telatynski
5c24547ef5 re-add and actually use promise timeout util
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-14 09:37:26 +00:00
Damir Jelić
cc2ee53824 EventIndex: Add some more docs and fix some lint issues. 2019-11-13 16:21:26 +01:00
Damir Jelić
1316e04776 EventIndexing: Check if there is a room when resetting the timeline. 2019-11-13 15:23:08 +01:00
Damir Jelić
54b352f69c MatrixChat: Fix the limited timeline checkpoint adding. 2019-11-13 10:37:20 +01:00
Travis Ralston
fd28cf7a4c Move notification count to in front of the room name in the page title
Fixes https://github.com/vector-im/riot-web/issues/10943
2019-11-12 15:12:54 -07:00
Michael Telatynski
79ebb9091c
Merge branch 'develop' into t3chguy/remove_bluebird_1 2019-11-12 18:16:34 +00:00
Travis Ralston
6d0b388fa2
Merge branch 'develop' into travis/mjolnir 2019-11-12 10:00:01 -07:00
Damir Jelić
d911055f5d MatrixChat: Move the indexing limited room logic to a different event. 2019-11-12 15:39:54 +01:00
Damir Jelić
e296fd05c0 RoomView: Move the search logic into a separate module. 2019-11-12 15:39:26 +01:00
Michael Telatynski
b73d0ca92a delint and run i18n 2019-11-12 12:37:47 +00:00
Damir Jelić
cfdcf45ac6 MatrixChat: Move the event indexing logic into separate modules. 2019-11-12 13:29:07 +01:00
Michael Telatynski
f5d467b391 delint 2019-11-12 12:26:07 +00:00
Michael Telatynski
2b34cf4362 Replace Promise.delay with promise utils sleep
(cherry picked from commit 0a21957b2c)
2019-11-12 12:07:56 +00:00
Michael Telatynski
2ea239d192 Replace rest of defer usages using small shim. Add homebrew promise utils
(cherry picked from commit 6850c14739)
2019-11-12 12:07:56 +00:00
Michael Telatynski
217dfc3eed Replace all trivial Promise.defer usages with regular Promises
(cherry picked from commit 44401d73b4)
2019-11-12 12:07:56 +00:00
Michael Telatynski
548e38cba9 Revert "Replace all trivial Promise.defer usages with regular Promises"
This reverts commit 44401d73
2019-11-12 11:56:53 +00:00
Michael Telatynski
7a512f7299 Revert "Replace rest of defer usages using small shim. Add homebrew promise utils"
This reverts commit 6850c147
2019-11-12 11:56:43 +00:00
Michael Telatynski
f9d6ed63f0 Revert "Replace Promise.delay with promise utils sleep"
This reverts commit 0a21957b
2019-11-12 11:56:32 +00:00
Michael Telatynski
168b1b68bb Revert "s/.done(/.then(/ since modern es6 track unhandled promise exceptions"
This reverts commit 09a8fec2
2019-11-12 11:56:21 +00:00
J. Ryan Stinnett
d72dedb0ce Cache room alias to room ID mapping in memory
This adds very basic cache (literally just a `Map` for now) to store room alias
to room ID mappings. The improves the perceived performance of Riot when
switching rooms via browser navigation (back / forward), as we no longer try to
resolve the room alias every time.

The cache is only in memory, so reloading manually or as part of the clear cache
process will start afresh.

Fixes https://github.com/vector-im/riot-web/issues/10020
2019-11-12 11:54:41 +00:00
Michael Telatynski
09a8fec261 s/.done(/.then(/ since modern es6 track unhandled promise exceptions 2019-11-12 11:51:23 +00:00
Michael Telatynski
0a21957b2c Replace Promise.delay with promise utils sleep 2019-11-12 11:46:58 +00:00
Michael Telatynski
6850c14739 Replace rest of defer usages using small shim. Add homebrew promise utils 2019-11-12 11:45:28 +00:00
Michael Telatynski
44401d73b4 Replace all trivial Promise.defer usages with regular Promises 2019-11-12 11:40:38 +00:00
Michael Telatynski
2eddb6ca01 DRY context menu placement algorithms 2019-11-12 11:24:14 +00:00
Michael Telatynski
1c4d89f2d7 Migrate all standard Context Menus over to new custom framework 2019-11-11 17:53:17 +00:00
Travis Ralston
df1d5055c0
Merge pull request #3606 from matrix-org/travis/edit-history
Use a ternary operator instead of relying on AND semantics in EditHistoryDialog
2019-11-11 08:24:07 -07:00
Damir Jelić
2c5565e502 MatrixChat: Add some missing semicolons. 2019-11-11 15:08:00 +01:00
Travis Ralston
bdcf3890a5 Fix HTML fallback in replies
Correctly encode the `body` to avoid problems down the line. We also convert newlines to `<br/>` to better represent the message as a fallback.

Fixes https://github.com/vector-im/riot-web/issues/9413
2019-11-08 16:07:11 -07:00
Travis Ralston
c4d45e87ea Use a ternary operator instead of relying on AND semantics in EditHIstoryDialog
Fixes https://github.com/vector-im/riot-web/issues/11334 (probably).

`allEvents` should never have a boolean in it, so given the stack trace and the code this is my best estimate for what the problem could be. I can't reproduce the problem.
2019-11-08 15:54:48 -07:00
Travis Ralston
5a5ebee918 Check for a message type before assuming it is a room message
Redacted messages do not have message types, despite being room messages. 

Fixes https://github.com/vector-im/riot-web/issues/11352

Regressed in https://github.com/matrix-org/matrix-react-sdk/pull/3601

Click-to-ping being broken (as mentioned by https://github.com/vector-im/riot-web/issues/11353) is a side effect of the react stack falling over. Once one room crashes, click-to-ping is broken everywhere.
2019-11-08 10:39:38 -07:00
David Baker
43c6298bea
Merge pull request #3601 from matrix-org/bwindels/verification-over-dm
Show verification requests in the timeline
2019-11-08 16:20:01 +00:00
J. Ryan Stinnett
3645e4a822
Merge pull request #3600 from matrix-org/jryans/thumb-variation-again
Restore thumbs after variation selector removal
2019-11-07 22:47:15 +02:00
Bruno Windels
d83f3632f6 make the linter happy 2019-11-07 20:04:36 +01:00
Bruno Windels
805c83779a support bubble tile style for verification tiles 2019-11-07 19:56:21 +01:00
Bruno Windels
d7f5252f9a render done and cancel event as conclusion tile
don't render any done events not sent by us, as
done events are sent by both parties and we don't want
to render two conclusion tiles.

cancel events should be only sent by one party.
2019-11-07 19:55:18 +01:00
Bruno Windels
9d67fa9fa1 render verification request with correct tile
only if the request was send by or to us, otherwise ignore.
2019-11-07 19:55:18 +01:00
Bruno Windels
e8c21a341c add key verification conclusion tile 2019-11-07 19:54:56 +01:00
Bruno Windels
0d2f9c4215 add verification request tile + styling 2019-11-07 19:54:56 +01:00
Bruno Windels
5c9e80a0ba add feature flag and send verification using DM from dialog if enabled 2019-11-07 19:54:56 +01:00
J. Ryan Stinnett
3d1a1121b9 Restore thumbs after variation selector removal
This more thorough change adjusts emoji processing to deal with variation
selectors appropriately and revives the missing thumbs.

Regressed by https://github.com/matrix-org/matrix-react-sdk/pull/3598
Fixes https://github.com/vector-im/riot-web/issues/11344
2019-11-07 17:49:25 +00:00
Marco Zehe
ec2f3d36ea Fix breadcrumbs so the bar is a toolbar and the buttons are buttons.
Signed-off-by: Marco Zehe <marco.zehe@gmail.com>
2019-11-07 14:41:01 +01:00
J. Ryan Stinnett
6cd2b55c23
Merge pull request #3598 from matrix-org/jryans/rm-variation-sels
Remove variation selectors from quick reactions
2019-11-07 12:34:11 +02:00
J. Ryan Stinnett
91f3b75d41 Remove variation selectors from quick reactions
This fixes a regression introduced by the full emoji picker which inserted empty
variation selectors in the thumbs up / down quick reactions. Since this makes
them different characters, it would cause us to not aggregate thumbs from web
vs. mobile together.

Regressed by https://github.com/matrix-org/matrix-react-sdk/pull/3554
Fixes https://github.com/vector-im/riot-web/issues/11335
2019-11-07 10:19:35 +00:00
Travis Ralston
86be607e92 onTileUpdate -> onMessageAllowed
We keep onTileUpdate in MessgeEvent because it's a generic thing for the class to handle. onMessageAllowed is slightly different than onShowAllowed because "show allowed" doesn't quite make sense on its own, imo.
2019-11-06 10:52:00 -07:00
David Baker
d14c0c342d
Merge pull request #3594 from matrix-org/bwindels/fixfilenotifpanel
Fix: file and notifications panel back-paginating forever.
2019-11-06 10:52:15 +00:00
Bruno Windels
842bf77409 prevent error when nextProps is null, cleanup
As the FilePanel is now rendered as part of the RoomView,
we don't need to respond to room changes, as RoomView has
a key of the roomId, so the whole subtree would be recreated.
2019-11-06 10:34:22 +01:00
Bruno Windels
9fa7990996 prevent error for empty list 2019-11-06 10:34:22 +01:00
sha-265
bc924bbd82
Support RTL language in message composer 2019-11-04 17:37:36 +00:00
Michael Telatynski
92ee50fb77
Merge pull request #3587 from matrix-org/t3chguy/a11y_message_actions_bar
Improve A11Y of timeline. Show timestamp & Actions on focus-within
2019-11-04 10:33:16 +00:00
Michael Telatynski
6d3b563119 Add comments regarding tab-index=-1 2019-11-04 10:16:16 +00:00
J. Ryan Stinnett
dd5702fc40
Merge pull request #3582 from matrix-org/jryans/prompt-when-no-terms
Add a prompt when interacting with an identity server without terms
2019-11-01 19:01:54 +02:00
J. Ryan Stinnett
446e21c2e1 Relax identity server discovery error handling
If discovery results in a warning for the identity server (as in can't be found
or is malformed), this allows you to continue signing in and shows the warning
above the form.

Fixes https://github.com/vector-im/riot-web/issues/11102
2019-11-01 12:27:56 +00:00
Michael Telatynski
fd4cdd0dec Improve A11Y of timeline. Show TS & Actions on focus-within 2019-11-01 10:50:58 +00:00
Travis Ralston
3e4a721111 Appease the linter 2019-10-31 16:27:45 -06:00
Travis Ralston
11068d189c Hide messages blocked by ban lists 2019-10-31 16:19:42 -06:00
Travis Ralston
b420fd6758 Add a view rules dialog 2019-10-31 16:00:31 -06:00
Travis Ralston
39b657ce7c Add basic structure for (un)subscribing from lists 2019-10-31 15:54:22 -06:00
David Baker
c0c2d85d20
Merge pull request #3584 from matrix-org/dbkr/fix_rooms_missing_from_search
Fix bug where rooms would not appear when filtering
2019-10-31 21:09:39 +00:00
Travis Ralston
b93508728a Add personal list management to Mjolnir section 2019-10-31 14:24:51 -06:00
David Baker
7d6643664e Fix bug where rooms would not appear when filtering
We need to reset the scroll offset otherwise the component may be
scrolled past the only content it has (Chrome just corrected the
scroll offset but Firefox scrolled it anyway).

NB. Introducing the new deriveStateFromProps method seems to
means that react no longer calls componentWillMount so I've
had to change it to componentDidMount (which it should have
been anyway).

Fixes https://github.com/vector-im/riot-web/issues/11263
2019-10-31 19:42:41 +00:00
Travis Ralston
23383419e8 Add settings base for Mjolnir rules 2019-10-31 13:20:18 -06:00
J. Ryan Stinnett
57013f0523
Merge pull request #3583 from matrix-org/jryans/refine-submit-url
Guard against misconfigured homeservers when adding / binding phone numbers
2019-10-31 17:23:14 +02:00
J. Ryan Stinnett
b38c7fc411 Guard against misconfigured homeservers when adding / binding phone numbers
This ensures we only fallback to submitting MSISDN tokens to the identity server
when we expect to do. Unexpected cases will now throw an error.

Fixes https://github.com/vector-im/riot-web/issues/10936
2019-10-31 14:50:21 +00:00
Michael Telatynski
bc263fa4bb
Merge pull request #3580 from matrix-org/t3chguy/better_slash_command_errors_unknown
Fix error message which is shown when unknown slash command attempted
2019-10-31 13:26:43 +00:00
J. Ryan Stinnett
0fc5108817 Add a prompt when interacting with an identity server without terms
This adds a prompt whenever we are about to perform some action on a default identity
server (from homeserver .well-known or Riot app config) without terms. This
allows the user to abort or trust the server (storing it in account data).

Fixes https://github.com/vector-im/riot-web/issues/10557
2019-10-31 13:13:13 +00:00
Michael Telatynski
ffb6054eac Attempt to fix soft crash on some pinned events by null guarding member 2019-10-31 11:21:58 +00:00
Michael Telatynski
178accae19 Fix error message which is shown when unknown slash command attempted 2019-10-31 10:49:24 +00:00
Michael Telatynski
fa811f99de Merge hide-to-tray-icon with show-tray-icon 2019-10-30 14:32:27 +00:00
Michael Telatynski
46e7e1e81a Merge branches 'develop' and 't3chguy/hide_tray_icon' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/hide_tray_icon 2019-10-30 14:15:09 +00:00
Travis Ralston
e46976be72 Match widgets up with their integration manager 2019-10-29 11:49:15 -06:00
J. Ryan Stinnett
cbd25ab1a8
Merge pull request #3575 from matrix-org/jryans/log-event-wo-id
Add diagnostic log to catch events without an ID
2019-10-29 19:37:33 +02:00
J. Ryan Stinnett
3775dc0943 Add diagnostic log to catch events without an ID
This adds some temporary logging to investigate
https://github.com/vector-im/riot-web/issues/11120.
2019-10-29 17:32:22 +00:00
Michael Telatynski
98096d206b Fix missing i18n for RoomTile ARIA labels and +a case for notif-off bold 2019-10-29 16:34:56 +00:00
Michael Telatynski
cd37ffcef2 Add ability to hide tray icon on non-Mac (which has no tray icon) 2019-10-29 11:37:41 +00:00
J. Ryan Stinnett
e3a55508d9 Remove unneeded help about identity servers
The custom server path no longer shows an identity server field (for modern
homeservers), so it's confusing to have the help dialog reference it.

Part of https://github.com/vector-im/riot-web/issues/11236
2019-10-28 15:38:28 +00:00
J. Ryan Stinnett
99fa100b92 Tweak identity server warning text 2019-10-28 14:23:11 +00:00
J. Ryan Stinnett
88d0ae0572 Remove messages implying you need an identity server for email recovery
This tweaks logic that shows some warning messages saying you need an identity
server for email recovery. Assuming you have a modern homeserver, no identity
server is need for these activities, so the warnings were confusing.

Fixes https://github.com/vector-im/riot-web/issues/11100
2019-10-28 14:13:24 +00:00
Michael Telatynski
3b8cb42108 Fix Room Create ELS using MXID instead of newly set Displayname/Avatar 2019-10-26 09:31:45 +01:00
Bruno Windels
ea24b8bd58 pass heightBefore, scrollTop and viewportHeight to Category
to support having multiple LazyRenderLists in one viewport
2019-10-24 17:57:48 +02:00
Bruno Windels
00b1816986 use LazyRenderList in emoji picker Category 2019-10-24 17:56:26 +02:00
Bruno Windels
3e360c156a bring LazyRenderList up to React 16 standards, cleanup & docs 2019-10-24 17:56:26 +02:00
Travis Ralston
71c5b7959c
Merge pull request #3564 from matrix-org/travis/fix-matrix.org
Update ServerTypeSelector for new matrix.org CS API URL
2019-10-24 09:03:44 -06:00
Travis Ralston
157d5a0130 Update ServerTypeSelector for new matrix.org CS API URL
This was missed in https://github.com/vector-im/riot-web/pull/11112 and causes problems where matrix.org isn't pre-selected.
2019-10-23 13:13:32 -06:00
Michael Telatynski
fac8274559 Add comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:45:04 +01:00
Michael Telatynski
2e6899be93 Improve Accessibility of the new Emoji picker
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:39:39 +01:00
Michael Telatynski
3ee43dc2eb correct EmojiPicker.ReactionPicker reactions PropType validity
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:38:43 +01:00
Michael Telatynski
9c63be7dc4 Remove wrapping div around RoomList to fix regression with scrollbars
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:32:14 +01:00
Michael Telatynski
bc639312ec delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:32:12 +01:00
Michael Telatynski
8d9dc195d5 Make ARIA happier with DateSeparator and tidy ELS
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:32:10 +01:00
Michael Telatynski
efcda54c3f Move Jitsi widget above Explore/Filter
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 13:05:02 +01:00
Michael Telatynski
c6023ca461 Gen i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 12:29:53 +01:00
Michael Telatynski
d7a64fcacd Move Jitsi widget to bottom and fix keyboard navigation of left panel
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 12:12:57 +01:00
Michael Telatynski
4dd0f6d902 Make breadcrumbs more accessible
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 12:12:54 +01:00
Michael Telatynski
744fc5ca6a Specify aria-level="1" on Room List tree RoomSubList
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 12:12:54 +01:00
Michael Telatynski
93ecc9839b Fix linty failures 2019-10-22 13:49:02 +01:00
Michael Telatynski
e7f292794c
Merge pull request #3556 from matrix-org/t3chguy/a11y4
Use Navigation Treeview pattern for RoomList Accessibility
2019-10-22 13:42:08 +01:00
Michael Telatynski
2a3655e9b8 Focus highlight room sublist label, catch right arrow and simplify code
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-22 11:10:25 +01:00
David Baker
a3dbf881e8
Merge pull request #3557 from matrix-org/jryans/scroll-unmount-guard
Abort scroll updates when already unmounted
2019-10-21 17:05:53 +01:00
Michael Telatynski
c5d5cd72bc
Merge pull request #3465 from matrix-org/t3chguy/nvl/userinfo
UserInfo consolidation of GroupMemberInfo and MemberInfo panels
2019-10-21 15:50:08 +01:00
Matthew Hodgson
e632b520f2
Merge pull request #3554 from maunium/emoji-picker
Add full emoji picker for reactions
2019-10-20 11:21:24 +01:00
Tulir Asokan
b2deb548d3 Translate search button titles
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-20 12:41:16 +03:00
Tulir Asokan
438ad54701 Remove space between emojis in picker
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-20 12:31:28 +03:00
Tulir Asokan
10732e8e73 Fix license headers
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-20 12:31:21 +03:00
Tulir Asokan
be829980f6 Split inline SVGs to their own files
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-20 12:13:32 +03:00
Michael Telatynski
02f8b18346 Merge branch 't3chguy/nvl/userinfo' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/nvl/userinfo
 Conflicts:
	src/components/views/right_panel/UserInfo.js
2019-10-19 16:42:00 +01:00
Michael Telatynski
0e6359ab24 replace @use-it/event-listener as it doesn't like Node EE's 2019-10-19 16:39:06 +01:00
J. Ryan Stinnett
3a428efb60 Abort scroll updates when already unmounted
This checks whether we're unmounted before updating scroll state, as we use
async functions and timeouts in this area.

Fixes https://github.com/vector-im/riot-web/issues/11150
2019-10-18 18:01:57 +01:00
Michael Telatynski
4494e3b61b
Merge pull request #3555 from matrix-org/t3chguy/a11y3
Accessibility fixes to autocomplete and tabpanels
2019-10-18 17:09:44 +01:00
J. Ryan Stinnett
7ac14e48dc
Merge pull request #3549 from matrix-org/jryans/disconnect-dead-is
Show warning dialog when changing unreachable IS
2019-10-18 16:53:25 +01:00
Damir Jelić
64061173e1 MatrixChat: Check if our state array is empty in the crawled messages response. 2019-10-18 16:33:07 +02:00
Damir Jelić
89f14e55a2 MatrixChat: Catch errors when fetching room messages in the crawler. 2019-10-18 16:32:43 +02:00
Damir Jelić
1b63886a6b MatrixChat: Add more detailed logging to the event crawler. 2019-10-18 16:31:39 +02:00
J. Ryan Stinnett
579ada3ca2 Add an overall reachability timeout of 10s
This adds a reachability timeout of 10s when checking the IS for 3PID bindings.
This ensures we stop in a reasonable time, rather than waiting for a long list
of requests to eventually timeout via some general mechanism.

Part of https://github.com/vector-im/riot-web/issues/10909
2019-10-18 12:40:50 +01:00
Michael Telatynski
7e4d429fa3 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 19:18:14 +01:00
Michael Telatynski
93429d7c2e Break withLegacyMatrixClient into a util module
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 19:13:37 +01:00
Michael Telatynski
2494af37c8 Break UserInfo:RoomAdminToolsContainer into smaller components
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 19:08:40 +01:00
Michael Telatynski
fe46925c00 Handle LEFT Arrow as expected by Aria Treeview Widget pattern
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 17:49:28 +01:00
Michael Telatynski
f72ff95efb Handle ARROW_RIGHT on group node in treelist as per aria suggestions
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 17:30:37 +01:00
Michael Telatynski
afe2226cb8 Handle ARROW_LEFT correctly on any room tile in sublist
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 17:14:00 +01:00
Michael Telatynski
1286cf287e remove TODO for now
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 17:09:43 +01:00
Michael Telatynski
3eef1bf87e Fix tabbing through room sublist
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 17:03:37 +01:00
Michael Telatynski
f09a3b4281 Fix outline on RoomSubList badges
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 16:21:33 +01:00
Michael Telatynski
8b5d3b93f4 Prevent double read of ARIA expanded
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 15:59:32 +01:00
Michael Telatynski
3400808f6e Use navigation treeview aria pattern for roomlist sublists and tiles
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-17 15:53:39 +01:00
Tulir Asokan
30ffd65b6c Fix reacting to messages with reactions from other users
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-16 21:35:12 +03:00
Tulir Asokan
318754d31c Reorganize reaction sending and show if emoji is selected
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-15 19:07:04 +03:00
Tulir Asokan
7acae6dc32 Autofocus search and fix bugs
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-15 18:22:23 +03:00
Tulir Asokan
824685ae64 Redact existing reaction instead of trying to double-react
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-15 00:15:18 +03:00
Tulir Asokan
7fc12b4b13 Simplify onChangeFilter category updating
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 21:30:26 +03:00
Tulir Asokan
bb1a242ef0 Don't underline recently category in header if it's empty
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 21:03:41 +03:00
Tulir Asokan
2dad33cd3e Close menu after clicking emoji
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 20:45:17 +03:00
Tulir Asokan
a6e0986bf8 Improve style
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 20:38:09 +03:00
Tulir Asokan
e16d0bfa4d Underline visible sections in header
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 20:14:44 +03:00
Tulir Asokan
088c9bff9e Add recently used section and scroll to category
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 19:41:10 +03:00
Michael Telatynski
2de88449aa Clean up RoomSubList from stale unused code paths
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-14 16:08:56 +01:00
Michael Telatynski
d3517cdb71 actually pass role="tabpanel" to the DOM for FilePanel and NotifPanel
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-14 10:44:42 +01:00
Tulir Asokan
497b779334 Add full emoji picker for reactions
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-14 00:32:11 +03:00
Tulir Asokan
2555fcb38f Fix reply fallback being included in edit m.new_content
Signed-off-by: Tulir Asokan <tulir@maunium.net>
2019-10-13 13:32:09 +03:00
J. Ryan Stinnett
e6a81c5733 Show warning dialog when changing unreachable IS
If the IS is unreachable, this handles the error by showing a warning
encouraging the user to check after their personal data and resolve the
situation, but still allows them to continue if they want.

Fixes https://github.com/vector-im/riot-web/issues/10909
2019-10-11 15:57:12 +01:00
Damir Jelić
3f53691834 RoomView: Use platform specific search if our platform supports it.
This patch extends our search to include our platform specific event
index.

There are 3 search scenarios and are handled differently when platform
support for indexing is present:

    - Search a single non-encrypted room: Use the server-side search
        like before.
    - Search a single encrypted room: Search using our platform specific
        event index.
    - Search across all rooms: Search encrypted rooms using our local
        event index. Search non-encrypted rooms using the classic
        server-side search. Combine the results.

The combined search will result in having twice the amount of search
results since comparing the scores fairly wasn't deemed sensible.
2019-10-11 16:55:01 +02:00
Damir Jelić
4acec19d40 MatrixChat: Add new crawler checkpoints if there was a limited timeline.
A sync call may not have all events that happened since the last time
the client synced. In such a case the room is marked as limited and
events need to be fetched separately.

When such a sync call happens our event index will have a gap. To
close the gap checkpoints are added to start crawling our room again.
Unnecessary full re-crawls are prevented by checking if our current
/room/roomId/messages request contains only events that were already
present in our event index.
2019-10-11 16:55:01 +02:00
Damir Jelić
5e7076e985 MatrixChat: Add live events to the event index as well. 2019-10-11 16:55:01 +02:00
Damir Jelić
b23ba5f881 MatrixChat: Stop the crawler function and delete the index when logging out. 2019-10-11 16:55:01 +02:00
Damir Jelić
9ce478cb0e MatrixChat: Create an event index and start crawling for events.
This patch adds support to create an event index if the clients platform
supports it and starts an event crawler.

The event crawler goes through the room history of encrypted rooms and
eventually indexes the whole room history of such rooms.

It does this by first creating crawling checkpoints and storing them
inside a database. A checkpoint consists of a room_id, direction and
token.

After the checkpoints are added the client starts a crawler method in
the background. The crawler goes through checkpoints in a round-robin
way and uses them to fetch historic room messages using the
rooms/roomId/messages API endpoint.

Every time messages are fetched a new checkpoint is created that will
be stored in the database with the fetched events in an atomic way, the
old checkpoint is deleted at the same time as well.
2019-10-11 16:55:01 +02:00
J. Ryan Stinnett
d7631ed9f8 Catch errors in Settings when IS is unreachable
A few bits of Settings try to talk to the IS when Settings is opened. This
changes them to handle failure by logging warnings to the console.
2019-10-11 15:52:15 +01:00
Travis Ralston
61cc6c8293 Correctly update the banned users list when a user is unbanned
Fixes https://github.com/vector-im/riot-web/issues/11123

Error wasn't actually the user being unbanned twice - it was a React error about "cannot call enqueueForceUpdate of undefined", which was a binding problem with onUnbanned. However, fixing that didn't do the intended thing - the user was still shown in the settings. We now just listen for membership and  fix it that way.
2019-10-11 12:56:48 +01:00
Michael Telatynski
6e33cc0650
Merge pull request #3433 from matrix-org/t3chguy/nvl/react16/EventListSummary
Summarise state events after room creation
2019-10-11 09:53:26 +01:00
Michael Telatynski
dcc948f43d
Merge pull request #3543 from matrix-org/t3chguy/timeline_keyboard_focus
Don't intercept TAB on the app outside of the composer, fix tabIndex > 0
2019-10-10 17:52:10 +01:00
Bruno Windels
f8a610687f don't persist caret when selection is missing
so caret will be put back at end of editor when remounting
2019-10-10 16:40:03 +02:00
Michael Telatynski
5643743167 Don't intercept TAB on the app outside of the composer, fix tabIndex > 0
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-10 14:13:29 +01:00
Michael Telatynski
7160922b77
Merge pull request #3541 from matrix-org/t3chguy/fix_150rc1
SettingsFlag always run ToggleSwitch fully-controlled
2019-10-10 09:39:33 +01:00
Michael Telatynski
0d42b8629e remove SettingsFlag manualSave altogether
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 23:20:59 +01:00
Michael Telatynski
685c2f494a actually always run fully controlled
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 22:33:14 +01:00
Michael Telatynski
2b9c102f07 SettingsFlag always run ToggleSwitch fully-controlled
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 22:27:49 +01:00
Michael Telatynski
58317b1608 Use Keyboard Key variables instead of hardcoded strings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 19:59:11 +01:00
Michael Telatynski
ff18a04da1
Merge pull request #3529 from matrix-org/t3chguy/react16_cleanup2
React error/warning cleanup
2019-10-09 16:26:24 +01:00
J. Ryan Stinnett
93ff43f7e1
Merge pull request #3535 from matrix-org/jryans/tag-react-soft-crashes
Add label to rageshakes for React soft crashes
2019-10-09 12:38:42 +01:00
David Baker
aa6ce97b2f
Merge pull request #3534 from matrix-org/dbkr/add_threepid_ui_auth
Support UI Auth on adding email addresses & phone numbers
2019-10-09 12:02:05 +01:00
J. Ryan Stinnett
e905abe5ce Add label to rageshakes for React soft crashes
This adds a label all rageshakes submitted via the React error boundary marking
them as soft crashes for triage.

Fixes https://github.com/vector-im/riot-web/issues/11072
2019-10-09 11:59:10 +01:00
Michael Telatynski
f2d73793ee delint again
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:51:08 +02:00
Michael Telatynski
9331ca9d07 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:51:08 +02:00
Michael Telatynski
6be318b59d Only insert ELS if it'll be non-empty
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:51:08 +02:00
Michael Telatynski
efeb6e87c4 Use new React Shallow renderer with hooks support
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:51:08 +02:00
Michael Telatynski
efde7f289f Use EventListSummary on m.room.create events and state events thereafter
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:50:03 +02:00
Michael Telatynski
34530843f4 Factor out generic EventListSummary from MELS
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:50:03 +02:00
J. Ryan Stinnett
e81df88ec2
Merge pull request #3532 from matrix-org/jryans/join-soft-crash
Fix soft crash on room join
2019-10-08 23:22:57 +01:00
David Baker
4a56aa16b8 Merge remote-tracking branch 'origin/develop' into dbkr/add_threepid_ui_auth 2019-10-08 19:11:00 +01:00
David Baker
0b334c0bbc Support UI Auth on adding email address 2019-10-08 18:56:13 +01:00
Bruno Windels
051fd0fd92
Merge pull request #3528 from matrix-org/bwindels/addemailerror
Fix:  Unable to verify email address error
2019-10-08 16:49:51 +00:00
Bruno Windels
8c8b1430e4 fix spelling 2019-10-08 18:39:35 +02:00
Bruno Windels
14bbaae585
Merge pull request #3509 from matrix-org/bwindels/createroomenter
Fix: submit create room dialog when pressing enter
2019-10-08 16:36:05 +00:00
J. Ryan Stinnett
1dc2ae007f Fix soft crash on room join
This fixes a soft crash that can happen on room join if you keep the right panel
open (which is the default). The `MainSplit` component was not properly testing
for the edge cases of when the resize container would be mounted.

Fixes https://github.com/vector-im/riot-web/issues/10997
2019-10-08 15:43:57 +01:00
Bruno Windels
5bcb4b0fb6
Merge pull request #3530 from matrix-org/bwindels/watchemoticonsetting
Fix: watch emoticon autoreplace setting
2019-10-08 12:53:54 +00:00