Commit graph

3719 commits

Author SHA1 Message Date
Travis Ralston
73a8e77d32 Add initial filtering support to new room list
For https://github.com/vector-im/riot-web/issues/13635

This is an incomplete implementation and is mostly dumped in this state for review purposes. The remainder of the features/bugs are expected to be in more bite-sized chunks.

This exposes the RoomListStore on the window for easy access to things like the new filter functions (used in debugging).

This also adds initial handling of "new rooms" to the client, though the support is poor.

Known bugs:
* [ ] Regenerates the entire room list when a new room is seen.
* [ ] Doesn't handle 2+ filters at the same time very well (see gif. will need a priority/ordering of some sort).
* [ ] Doesn't handle room order changes within a tag yet, despite the docs implying it does.
2020-06-01 16:49:22 -06:00
Michael Telatynski
7b2f2daf2c Upload and Paste to Upload tweaks
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-06-01 15:00:55 +01:00
Michael Telatynski
bc83984a62 tidy up the ref to ref with a forwardRef and initialComponent signature
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-30 13:30:59 +01:00
Michael Telatynski
8087b521e6 Autocomplete: use scrollIntoView for auto-scroll instead of broken manual scrollTop calculation
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-29 21:42:33 +01:00
Michael Telatynski
f40cfe4a3b Implement new design with new iconography
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-29 15:00:27 +01:00
Michael Telatynski
ccd0c952e3 Merge branches 'develop' and 't3chguy/emoji_picker_composer' of github.com:matrix-org/matrix-react-sdk into t3chguy/emoji_picker_composer
 Conflicts:
	src/components/views/rooms/MessageComposer.js
2020-05-29 14:53:42 +01:00
Zoe
472c421150 Bubble up a decline-to-render of verification events to outside wrapper
This stops the event from appearing as a blank line.
2020-05-28 21:41:31 +01:00
Michael Telatynski
8aaa7825ef Also kill off things that these kept behind
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-28 17:12:19 +01:00
Jorik Schellekens
46134f5368
Merge pull request #4651 from JorikSchellekens/joriks/fix-encryption-icons-irc
Fix encryption icon miss-alignment
2020-05-27 17:05:32 +01:00
Michael Telatynski
2b432b0d82 Remove feature_cross_signing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-27 10:28:25 +01:00
Travis Ralston
8370fa8bb4 Event.decrypted from the client 2020-05-26 19:56:56 -06:00
Travis Ralston
bf8a3d4419 Bind to the room instead of the client
Also add the other missing deregister handlers
2020-05-26 16:20:51 -06:00
Travis Ralston
a9c54153ee Update badge counts in new room list as needed 2020-05-26 14:16:33 -06:00
Jorik Schellekens
73213422a9 fix encryption icon missalignment 2020-05-26 18:15:06 +01:00
Jorik Schellekens
076a3e058d
Merge pull request #4635 from JorikSchellekens/joriks/field-ts
Move Field to Typescript
2020-05-26 16:13:03 +01:00
Michael Telatynski
47af85b7b9
Merge pull request #4628 from matrix-org/t3chguy/message_sent
Fix sentMessageAndIsAlone by dispatching `message_sent` more consistently
2020-05-26 11:58:14 +01:00
Michael Telatynski
608a1feb03
Merge pull request #4637 from matrix-org/t3chguy/edit_highlights
Fix event highlights not being updated to reflect edits
2020-05-25 19:05:50 +01:00
Jorik Schellekens
fc1f14f5aa Appease the types 2020-05-25 17:53:09 +01:00
Michael Telatynski
1a47ceb322 Fix event highlight with edits
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-25 16:17:46 +01:00
Michael Telatynski
5e00481639 Fix sentMessageAndIsAlone by dispatching message_sent more consistently
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-24 13:08:29 +01:00
Travis Ralston
3a3ddbf7c4 Add missing documentation 2020-05-22 18:10:30 -06:00
Travis Ralston
a19e27d11c Calculate badges in the new room list more reliably
Fixes https://github.com/vector-im/riot-web/issues/13757

This uses a different way of calculating the badges by using about 6 less variables, and consolidating the remaining ones down.
2020-05-22 18:05:09 -06:00
Michael Telatynski
ac0d794877 Fix: Tag_DM is not defined
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-22 13:49:56 +01:00
Travis Ralston
7ff850deea
Merge pull request #4253 from matrix-org/travis/room-list-2
Rewrite the room list store
2020-05-21 13:30:32 -06:00
Travis Ralston
559dd98d01 Fix comment style to be less bothersome 2020-05-21 11:53:16 -06:00
Jorik Schellekens
6d9d4ee547 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider 2020-05-20 13:46:17 +01:00
Travis Ralston
b96c1ada8a
Merge pull request #4494 from pv/auxpanel-scrolling-persisted
Prevent PersistedElements overflowing scrolled areas
2020-05-19 15:28:58 -06:00
Jorik Schellekens
323d0762fc Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/irc-ui 2020-05-19 18:03:44 +01:00
Jorik Schellekens
2e325191bc Merge remote-tracking branch 'nv/develop' into joriks/irc-ui 2020-05-19 17:18:36 +01:00
Michael Telatynski
e7d37228f2
Merge pull request #4603 from matrix-org/t3chguy/add_room_tooltip
Label the create room button better than "Add room"
2020-05-19 11:57:59 +01:00
Jorik Schellekens
4deeef5fca Remove ability to remove avatars 2020-05-18 16:57:00 +01:00
Jorik Schellekens
17f535e5f8 Fix review problems
- removed superfluous position and classes
- fixed compact view
- fixed event list summary avatar and text overlap
- fixed a problem where the mention list refuses to load.
2020-05-18 16:37:10 +01:00
Michael Telatynski
a864643d98 Label the create room button something better than "Add room"
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-18 10:37:02 +01:00
Travis Ralston
798e7a1f86 Merge branch 'develop' into travis/dispatcher-types 2020-05-15 09:56:02 -06:00
Travis Ralston
6cb1efc1a4 Use the new TS dispatcher 2020-05-14 13:45:17 -06:00
Travis Ralston
2b4c19e9ba Merge branch 'travis/dispatcher-types' into travis/room-list-2 2020-05-14 13:40:37 -06:00
Travis Ralston
f8cbadaba5 Clean up comments in skeleton components 2020-05-14 12:53:00 -06:00
Travis Ralston
c37352679d Fix bold rooms not bolding 2020-05-14 12:46:16 -06:00
Travis Ralston
e8c33161ec Initial work on badges
This doesn't work for bold rooms
2020-05-14 12:46:16 -06:00
Travis Ralston
6bdcbd0f3d Support switching rooms 2020-05-14 12:46:16 -06:00
Travis Ralston
715dd7e1b6 Prepare tooltip for collapsed support 2020-05-14 12:46:16 -06:00
Travis Ralston
9f0810240f Clean up imports and other minor lints 2020-05-14 12:46:16 -06:00
Travis Ralston
cb3d17ee28 Bare minimum for rendering a room list
This is non-interactive and missing most features users will expect to have
2020-05-14 12:46:16 -06:00
Travis Ralston
ea34bb3022 Make component index happy 2020-05-14 12:46:16 -06:00
Travis Ralston
5dda7f02cf Early handling of dispatched events
A possible approach to handling the various triggers for recategorizing rooms.
2020-05-14 12:46:16 -06:00
Travis Ralston
09b7f39df8 Simple rendering of the room list for visual aid
This is largely meant to prove the algorithm works and nothing more.
2020-05-14 12:45:35 -06:00
Travis Ralston
861268d39f Invent an AsyncStore and use it for room lists
This is to get around the problem of a slow dispatch loop. Instead of slowing the whole app down to deal with room lists, we'll just raise events to say we're ready.

Based upon the EventEmitter class.
2020-05-14 12:44:29 -06:00
Travis Ralston
08419d195e Initial breakout for room list rewrite
This does a number of things (sorry):
* Estimates the type changes needed to the dispatcher (later to be replaced by https://github.com/matrix-org/matrix-react-sdk/pull/4593)
* Sets up the stack for a whole new room list store, and later components for usage.
* Create a proxy class to ensure the app still functions as expected when the various stores are enabled/disabled
* Demonstrates a possible structure for algorithms
2020-05-14 12:44:29 -06:00
Travis Ralston
a5f3318f3b Convert view_user dispatch to prove the conversion works
This is a relatively obvious dispatch action that doesn't require a lot of complicated type definitions, so should be a good candidate to prove the thing works. If for some reason the thing stops working, we've done something wrong.

This also adds a bit of generic types to the dispatch call so we don't confuse the tsx parser by using `dis.dispatch(<ViewUserPayload>{...})` as it thinks that's supposed to be a component. We still get type safety, and the thing remains happy with the generics approach.
2020-05-13 21:07:50 -06:00
Travis Ralston
90a898d03f Move dispatcher into a subdirectory
We're expecting to have a whole bunch of types for the dispatched payloads, so pull the thing into a directory we can throw them in.
2020-05-13 21:07:50 -06:00