Commit graph

25293 commits

Author SHA1 Message Date
Travis Ralston
9eb965878a
Merge pull request #4754 from matrix-org/travis/room-list/per-list-algo
Support per-list options and algorithms on the new room list
2020-06-12 08:40:23 -06:00
Travis Ralston
6de6d94f7c Fix return type 2020-06-12 08:40:08 -06:00
Travis Ralston
6b54c3a492 Throw if the update cause is unsupported 2020-06-12 08:39:59 -06:00
J. Ryan Stinnett
de003bc78f
Merge pull request #4755 from matrix-org/jryans/send-read-marker-immed
Send read marker updates immediately after moving visually
2020-06-12 15:38:08 +01:00
Travis Ralston
cc17409943
Fix words
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2020-06-12 08:37:08 -06:00
J. Ryan Stinnett
39c28e2207 Send read marker updates immediately after moving visually
The `TimelinePanel` uses two timers to coordinate read marker and read receipt
updates. When the read receipt timer fires, we advance the receipt and send the
latest state of both your receipt and marker to the server. When the read marker
timer fires, we advance the marker visually, but do not send anything to the
server: we were relying on the slightly different schedule of the read receipt
to actually send the updated read marker. This means there's a time window where
it's possible to visually advance the read marker without ever sending it to the
server (if you change rooms before the receipt timer fires again).

To simplify the behaviour here and ensure we always commit the updated marker
when we move it, this change sends an update to the server at the same time as
moving the marker.

It's possible this may improve some of the behaviour reported in
https://github.com/vector-im/riot-web/issues/12338.
2020-06-12 14:34:57 +01:00
Travis Ralston
4aa15ee191 Wire up the context menu to the room list store
Updates are passed along magically to the sublist, so we don't need to listen for the room list store's response to our changes.

This just hits the functions introduced in the last commit.
2020-06-11 22:04:10 -06:00
Travis Ralston
fd029e8e80 Dumb down list algorithms in favour of smarter tags
This commit is a bit involved, as it factors the tag specific handling out of `/list-ordering` (and moves the `Algorithm` class one higher as a result), leaving it in the `Algorithm`. The algorithms for list ordering now only know how to handle a single tag, and this is managed by the `Algorithm` class - which is also no longer the base class for the list ordering. The list ordering algorithms now inherit from a generic `OrderingAlgorithm` base class which handles some rudimentary things.

Overall the logic hasn't changed much: the tag-specific stuff has been moved into the `Algorithm`, and the list ordering algorithms essentially just removed the iteration on tags. The `RoomListStore2` still shovels a bunch of information over to the `Algorithm`, which can lead to an awkward code flow however this commit is meant to keep the number of surfaces touched to a minimum.

The RoomListStore has also gained the ability to set per-list (tag) ordering and sorting, which is required for the new room list. The assumption that it defaults from the account-level settings is not reviewed by design, yet. This decision is deferred.
2020-06-11 22:02:09 -06:00
Travis Ralston
ec48c76a4f
Merge pull request #4753 from matrix-org/travis/room-list/minimized
Add a minimized view to the new room list
2020-06-11 17:20:49 -06:00
Travis Ralston
52b26deb2e Move room list store docs to docs directory
This pulls it away from the code, but the code is sufficiently involved enough where it doesn't need another file near it.
2020-06-11 16:56:12 -06:00
Travis Ralston
966e2cad7e Update documentation for how this refactoring will go 2020-06-11 16:52:47 -06:00
Jorik Schellekens
3895c03ee2
Merge pull request #4752 from matrix-org/joriks/irc-encryption-alignment
Fix e2e icon alignment in irc-layout
2020-06-11 23:42:49 +01:00
Travis Ralston
484dc36619 Fix alignment of show more button 2020-06-11 14:41:35 -06:00
Travis Ralston
2c04a56784 Add a minimized view to the new room list
This covers everything except breadcrumbs, as those are somewhat undecided from a design perspective.
2020-06-11 14:39:28 -06:00
Travis Ralston
2e04414331
Merge pull request #4750 from matrix-org/travis/room-list/leak
Add some resource leak protection to new room list badges
2020-06-11 12:33:11 -06:00
Jorik Schellekens
93a098d94f
Merge pull request #4747 from matrix-org/joriks/fix-read-receipts
Fix read-receipt alignment
2020-06-11 17:34:32 +01:00
Jorik Schellekens
872103fb8a Fix e2e bade alignment 2020-06-11 11:44:11 +01:00
Jorik Schellekens
399dd6a225 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into joriks/fix-read-receipts
To fix types
2020-06-11 10:55:27 +01:00
Jorik Schellekens
b36d7d48cc Center read reaceipts on irc-ui 2020-06-11 10:36:52 +01:00
Travis Ralston
f98f045005
Merge pull request #4751 from matrix-org/travis/room-list/previews
Show message previews on the new room list tiles
2020-06-10 19:10:50 -06:00
Travis Ralston
853ae6d5bf misc code quality improvements 2020-06-10 18:56:21 -06:00
Travis Ralston
6ccb566587 Show message previews on the new room list tiles
They're heavily cached.
2020-06-10 18:37:59 -06:00
Travis Ralston
95fb8e3c78
Merge pull request #4749 from matrix-org/travis/room-list/layout
Fix various layout concerns with the new room list
2020-06-10 16:08:35 -06:00
Travis Ralston
d1c2ecb6cc Add some resource leak protection to new room list badges
Most of the leaks were because we never set `this.rooms` in the notification state, which meant we were constantly triggering the `diff.added` loop.
2020-06-10 16:04:27 -06:00
Travis Ralston
0f16d7f32d Merge branch 'develop' into travis/room-list/layout 2020-06-10 15:53:33 -06:00
Michael Telatynski
d3a3b54a82
Merge pull request #4748 from matrix-org/t3chguy/macos-bitmap
Prioritize text on the clipboard over file
2020-06-10 22:51:16 +01:00
Travis Ralston
1d84b46681 Fix vertical height causing sublists to wrap 2020-06-10 15:22:17 -06:00
Travis Ralston
6c31bf1a61 Fix layout when resizing the list width 2020-06-10 15:15:58 -06:00
Michael Telatynski
ed7f4755cc use ButtonEvent instead of MouseEvent | KeyboardEvent for AccessibleButton (make CI happy)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-10 22:05:29 +01:00
Travis Ralston
be366bdd7f Fix various layout concerns with the new room list
It had ~32px of overflow causing a horizontal scrollbar. Turns out the layout engine gets confused when hidden elements are at the end of a flexbox, so we just move them higher in the DOM (where they logically still make sense).

The remaining changes are all alignment and misc changes in that respect, and probably not obvious.
2020-06-10 15:05:17 -06:00
Michael Telatynski
601e8209d8 Prioritize text on the clipboard over file
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-10 21:48:39 +01:00
Jorik Schellekens
b2154a4a61 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into joriks/fix-read-receipts 2020-06-10 17:33:22 +01:00
Jorik Schellekens
b63d73e3b6
Merge pull request #4729 from matrix-org/joriks/appearance-tab
Move Settings flag to ts
2020-06-10 16:57:18 +01:00
Jorik Schellekens
737fc46b87 Inline kind classnames 2020-06-10 16:48:34 +01:00
Jorik Schellekens
52c7577972 Clean up interfaces and classname 2020-06-10 15:57:28 +01:00
Jorik Schellekens
11d85f167b Fix read-receipt alignment 2020-06-10 15:21:36 +01:00
Travis Ralston
72bb89d4ee
Merge pull request #4743 from matrix-org/travis/room-list/tile-menu
Add a context menu to rooms in the new room list
2020-06-10 07:46:09 -06:00
Travis Ralston
58db992382 Add 10px to comment 2020-06-10 07:45:52 -06:00
Travis Ralston
64a8767c5a
Merge pull request #4742 from matrix-org/travis/room-list/hover-state
Add hover states and basic context menu to new room list
2020-06-10 07:43:31 -06:00
Travis Ralston
b1fdfb51cd Fix i18n 2020-06-10 07:43:13 -06:00
Travis Ralston
a3391d9a08 Merge branch 'develop' into travis/room-list/hover-state 2020-06-10 07:42:41 -06:00
Travis Ralston
78e1db9d30
Merge pull request #4741 from matrix-org/travis/room-list/resize-handle
Update resize handle for new designs in new room list
2020-06-10 07:40:34 -06:00
Travis Ralston
a4ea5b5902
Merge pull request #4740 from matrix-org/travis/room-list/stability-1
Improve general stability in the new room list
2020-06-10 07:40:07 -06:00
Travis Ralston
95b4abba3b
Merge pull request #4735 from matrix-org/travis/room-list/breadcrumbs
Reimplement breadcrumbs for new room list
2020-06-10 07:39:55 -06:00
Travis Ralston
60b5f2dbec
Merge pull request #4744 from matrix-org/joriks/radio-buttons-isolated
Add styled radio buttons
2020-06-10 07:27:17 -06:00
Jorik Schellekens
8a0e4a4954
Merge pull request #4730 from matrix-org/joriks/hide-checkbox-tick
Hide checkbox tick on dark backgrounds
2020-06-10 14:12:06 +01:00
Jorik Schellekens
04d91ae0af Fix code review issues
- interfaces go to the top
- fix comma conflation
- value no generic
- optionalised props
- line lints
2020-06-10 14:11:36 +01:00
Jorik Schellekens
224a296180
Merge pull request #4746 from matrix-org/joriks/checkbox-accessibility
Make checkboxes a11y friendly
2020-06-10 13:52:19 +01:00
Jorik Schellekens
9787b4d640
Even more lines 2020-06-10 13:50:09 +01:00
Jorik Schellekens
0ec0bbecda
lint more lines 2020-06-10 13:49:52 +01:00