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
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
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
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
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
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
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
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
Damir Jelić
2c5565e502
MatrixChat: Add some missing semicolons.
2019-11-11 15:08:00 +01: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
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
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
Michael Telatynski
3b8cb42108
Fix Room Create ELS using MXID instead of newly set Displayname/Avatar
2019-10-26 09:31:45 +01:00
Michael Telatynski
fac8274559
Add comment
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-23 18:45:04 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Michael Telatynski
a782baf510
React error/warning cleanup
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-08 12:10:37 +01:00
Michael Telatynski
df02eb8e92
Add UserInfo panel (consolidation of MemberInfo & GroupMemberInfo) Labs
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-07 16:52:50 +01:00
Michael Telatynski
1ec0bb284a
Limit Backspace-consuming workaround to just Slate, tidy Keyboard :)
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-04 11:47:33 +01:00
Michael Telatynski
fba646d2c5
Merge pull request #3519 from matrix-org/travis/enable-cider
...
Enable CIDER composer by default
2019-10-04 10:50:28 +01:00
Michael Telatynski
06c612ba3d
Merge pull request #3516 from matrix-org/t3chguy/clean_out_useless_errors
...
Cull some easily fixable errors which make the console a mess
2019-10-04 10:20:34 +01:00
Michael Telatynski
e200193b0a
DRY and fix useCiderComposer being in both labs and preferences
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-04 10:15:00 +01:00
Travis Ralston
853c522467
Enable CIDER composer by default
...
Also convert the setting to a watched setting to apply in realtime.
2019-10-03 23:20:40 -06:00
Michael Telatynski
47c41759f7
Merge pull request #3518 from matrix-org/t3chguy/attempt_NPE_fix
...
Handle null from TimelinePanel.getScrollState in RoomView _getScrollState
2019-10-04 00:25:14 +01:00
Michael Telatynski
0f2eee1b1b
Merge pull request #3517 from matrix-org/t3chguy/fix_community_panel_preference
...
Fix Community Panel preference not taking effect until some refreshing
2019-10-04 00:24:57 +01:00
Michael Telatynski
9e9c56d327
rename settings watcher refs in LeftPanel
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 23:21:32 +01:00
Michael Telatynski
9e8234c98f
Handle null from TimelinePanel.getScrollState in RoomView _getScrollState
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 23:00:08 +01:00
Michael Telatynski
d5f6d781bb
Fix Community Panel preference not taking effect until some refreshing
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 22:13:10 +01:00
Michael Telatynski
a0de7d5f14
Cull some easily fixable errors which make the console a mess
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 21:47:19 +01:00
Michael Telatynski
a9b4abaf78
Fix backspace without slate focus killing everything
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 21:16:18 +01:00
Michael Telatynski
8ef61ce43e
Merge pull request #3514 from matrix-org/t3chguy/accessibility3
...
Various ARIA a11y fixes.
2019-10-03 11:09:01 +01:00
Michael Telatynski
f1db0cf027
Various ARIA a11y fixes.
...
Notate RightPanel tabs.
Shorten Screen Reader queues.
Make AccessibleTooltipButton screen reader friendly
Flatten DOM for Sticker button using React Fragments
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-03 09:35:39 +01:00
J. Ryan Stinnett
b605c0048d
Add an error boundary around the RoomView
...
This adds a more specific boundary around the `RoomView` for room-specific
errors and is an example how we could use add boundaries around just a portion
of the app.
2019-10-02 17:31:22 +01:00
J. Ryan Stinnett
0e8dc24c3f
Add a basic error boundary for the entire app
...
This adds a basic error boundary around the entire app to catch errors during
rendering and present the user with the options on how to proceed. This is not
implemented as a modal so that it could be used selectively in portions of the
app as well, such as just the `RoomView`.
Fixes https://github.com/vector-im/riot-web/issues/11009
2019-10-02 17:31:22 +01:00
Bruno Windels
c8c4dc29d1
Merge pull request #3503 from matrix-org/bwindels/custom-themes-mvp
...
Custom theming MVP
2019-10-02 09:14:07 +00:00
Travis Ralston
7d1a04cb12
Merge pull request #3500 from matrix-org/travis/permalinks
...
Support local permalinks for unfederated instances
2019-10-01 08:41:23 -06:00
Bruno Windels
558f8daeeb
support custom themes from setting
...
also move theme setting code from MatrixChat to own file.
2019-10-01 15:21:22 +02:00
Travis Ralston
fc66e69c02
Rename RoomPermalinkCreator -> Permalinks due to scope
...
The file handles more than just a RoomPermalinkCreator, so we should name it accordingly.
2019-09-30 20:39:58 -06:00
Travis Ralston
64aa6695f5
Move matrix-to.js to utils/permalinks/RoomPermalinkCreator
...
Just a little bit of refactoring to make the feature of custom prefixes a bit easier.
2019-09-30 12:16:46 -06:00
Michael Telatynski
2621ad1b43
Group room tiles in room sub list in the room list for ARIA
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-30 16:04:43 +01:00
Michael Telatynski
22fb925743
Stop using deprecated KeyboardEvent properties
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-30 16:04:06 +01:00
Michael Telatynski
ce78de2185
re-order imports
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-27 10:05:08 +01:00