Commit graph

10715 commits

Author SHA1 Message Date
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
6ccb566587 Show message previews on the new room list tiles
They're heavily cached.
2020-06-10 18:37:59 -06:00
Travis Ralston
0f16d7f32d Merge branch 'develop' into travis/room-list/layout 2020-06-10 15:53:33 -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
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
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
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
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
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
Jorik Schellekens
0fb6846c9d Radio buttons 2020-06-10 13:03:00 +01:00
Travis Ralston
0755b4c148 Add a context menu to rooms in the new room list
The tag options are not implemented out of concern for diff size. 

This splits the context menu classes out to a new "iconized" style which is common across a number of context menus, including the UserMenu.

Some of the badge/sublist styles had to change to better accommodate the menu icon lining up.

This also contains the framework required for https://github.com/vector-im/riot-web/issues/13961
2020-06-09 23:09:15 -06:00
Travis Ralston
2180a56074 Remove irrelevant property 2020-06-09 21:15:38 -06:00
Travis Ralston
111394df6d Add hover states and basic context menu to new room list
The 'sort by' radio buttons are blocked by https://github.com/matrix-org/matrix-react-sdk/pull/4731 as it contains the styles needed.

The 'unread rooms' checkbox is intentionally not hooked up. This is a more complicated refactoring that needs to be done.

The message preview checkbox works, though the previews remain hardcoded in this change. The primary intent of this change is to have a good enough context menu and the hover states.

The hover states are as described in the design.
2020-06-09 21:12:49 -06:00
Travis Ralston
5f8b7187cf Update resize handle for new designs
The diff should have information on what this does and how it is supposed to work.
2020-06-09 19:48:31 -06:00
Travis Ralston
b84af372b9 Bump animation time for breadcrumbs up to 640ms
This matches the design, unlike the 300ms which was too fast.
2020-06-09 15:35:07 -06:00
Travis Ralston
fed52f274e Fix custom theme use with new room list
Fixes https://github.com/vector-im/riot-web/issues/13968

We were grabbing "custom-" instead of the actual theme name.
2020-06-09 15:23:34 -06:00
Travis Ralston
1467191a5d Update the CSS transition for breadcrumbs
The actual transition length might need adjusting, but this is fairly close to what was requested.
2020-06-09 15:06:54 -06:00
Travis Ralston
b5f9c4ba8a Merge branch 'develop' into travis/room-list/breadcrumbs 2020-06-09 08:12:56 -06:00
Travis Ralston
9377fa513f Merge branch 'develop' into travis/room-list/breadcrumbs 2020-06-09 08:11:08 -06:00
Travis Ralston
eefc40e0f8 Use IDestroyable instead of IDisposable
For consistency within our project
2020-06-09 08:08:47 -06:00
Travis Ralston
724f545b4a Merge remote-tracking branch 'origin/develop' into travis/room-list/sublist-badges 2020-06-09 08:06:10 -06:00
Travis Ralston
8632d56e97 dispose -> destroy 2020-06-09 08:05:35 -06:00
Travis Ralston
182dd41947
Merge pull request #4736 from matrix-org/travis/room-list/filter-explore
Add filtering and exploring to the new room list
2020-06-09 07:59:13 -06:00
Travis Ralston
ae8b75214a Balance out the throttle 2020-06-09 07:58:39 -06:00
Jorik Schellekens
7a3ed0e496
Merge pull request #4733 from matrix-org/joriks/font-scaling-appearance
Clean up font scaling appearance
2020-06-09 13:16:15 +01:00
Travis Ralston
5114c37b82 Add filtering and exploring to the new room list
This is per the designs. Animation doesn't feel required here.

Like the rest of this series, this rewrites a component to be more purpose-built to help match the designs and to solve the smallest possible problem.
2020-06-08 20:33:21 -06:00
Travis Ralston
9859891b4d Merge branch 'develop' into travis/room-list/sublist-badges 2020-06-08 18:12:43 -06:00
Travis Ralston
bcc455b248 Merge branch 'develop' into travis/room-list/breadcrumbs 2020-06-08 18:11:42 -06:00
Travis Ralston
0354bf9b6d Reimplement breadcrumbs for new room list
This all-new component handles breadcrumbs a bit more smoothly for the app by always listening to changes even if the component isn't present. This allows the breadcrumbs to remain up to date for when the user re-enables breadcrumbs.

The new behaviour is that we turn breadcrumbs on once the user has a room, and we don't turn it back off for them.

This also introduces a new animation which is more stable and not laggy, though instead of sliding the breadcrumbs pop. This might be undesirable - to be reviewed.
2020-06-08 17:11:58 -06:00
Travis Ralston
086b9101fa Add sublist badge counts to new room list
Also add IDLE state to rooms
2020-06-08 13:42:18 -06:00
Jorik Schellekens
b4bdb23f5f Clean up font scaling appearance 2020-06-08 19:02:36 +01:00
Travis Ralston
de4c2fe3d9 Use real buttons in user menu 2020-06-08 11:06:21 -06:00
Jorik Schellekens
d6a532040e lint 2020-06-08 16:57:39 +01:00
Jorik Schellekens
26eaef848b Use Element instead of HTMLElement 2020-06-08 16:53:19 +01:00
Jorik Schellekens
35ecaff399 Move Settings flag to ts 2020-06-08 16:48:32 +01:00
Travis Ralston
6002fef269 Merge branch 'travis/room-list/css-layout' into travis/room-list/user-menu 2020-06-08 09:41:38 -06:00
Travis Ralston
000c92a53f Merge branch 'develop' into travis/room-list/css-layout 2020-06-08 09:40:21 -06:00
Travis Ralston
50673496c3 Add hosting link 2020-06-08 09:32:16 -06:00
Travis Ralston
94ce23aa4b Wire up theme changer 2020-06-08 09:32:05 -06:00
Travis Ralston
acf78ae475 Wire up the remaining dialogs 2020-06-08 09:04:43 -06:00
Travis Ralston
de18af35ff Support minimum to open user settings to a particular tab
Tabs now have IDs, and we use those IDs to open things. This doesn't do any conversion to typescript, and doesn't add the same feature to the room settings out of concern for the size of diff.
2020-06-08 08:20:15 -06:00
Jorik Schellekens
a7bc722b3f Use px where images use px width 2020-06-08 14:45:12 +01:00