Commit graph

245 commits

Author SHA1 Message Date
Bruno Windels
0386a1e048 get rid of obsolete showEmpty prop 2018-10-19 14:32:49 +02:00
Bruno Windels
ae8723451a remove onShowMoreRooms, as room tiles & scrollbar rendered at same level 2018-10-19 14:27:36 +02:00
Bruno Windels
f14c2cf2b2 don't hide empty sections that have a (+) button 2018-10-19 12:46:59 +02:00
Bruno Windels
6af61ebb09 add plus button for rooms and people 2018-10-19 12:07:36 +02:00
Bruno Windels
d264687796 don't scroll sub list header 2018-10-18 16:25:22 +02:00
Bruno Windels
01082c8595 hook up resizer events 2018-10-18 15:51:58 +02:00
Bruno Windels
39ab3d86bd create sizer that sets item size with flex-basis
works with the flex-grow we set initially for the sub lists
2018-10-18 15:51:22 +02:00
Bruno Windels
c1e602d56f scrollbars and resize handles around room sub lists 2018-10-18 15:19:45 +02:00
Bruno Windels
99982b1164 put repeated props in process function 2018-10-18 15:15:56 +02:00
Bruno Windels
c12368ea48 process RoomSubList props through function before creating them
this way, we'll be able to add adjacent resize handles and scroll wrappers
2018-10-18 15:09:58 +02:00
Bruno Windels
81d0ce2bcf remove sticky header code 2018-10-18 15:08:32 +02:00
Bruno Windels
6906d5a5f9 remove DND for room tiles 2018-10-17 16:02:35 +02:00
Bruno Windels
91ec96c8d3 Merge branch 'develop' into bwindels/redesign 2018-09-21 12:44:44 +02:00
David Baker
b7570002e0 Hide replaced rooms
By using new getVisibleRooms() in js-sdk
2018-08-22 12:01:29 +01:00
Bruno Windels
cead4096d8
Merge pull request #2118 from matrix-org/bwindels/feature_lazyloading
Lazy loading of room members
2018-08-16 18:14:55 +02:00
David Baker
05bf200a72 Don't crash if scrollbars updated before init
The initialisation here is done on a timer to allow the DOM
elements to be in place before it's run, so it's possible for an
update to happen ebfore the initialisation. Stop & bail out if
there is no this.stickies.
2018-08-13 13:49:22 +01:00
David Baker
f44cc8e66e
Merge pull request #2112 from matrix-org/dbkr/recognise_server_notices_room
Recognise server notices room(s)
2018-08-07 09:52:25 +01:00
David Baker
b5ce1ac5e1 Recognise server notices room(s)
and put them in their own section at the bottom
2018-08-06 18:00:40 +01:00
David Baker
b2302af708 Update room tags behaviour to match spec more
Fix Riot's behaviour with room tags after my cleanup in
https://github.com/matrix-org/matrix-doc/pull/1457 . Although, reading
it again, it's not clear how you're supposed to tell the difference
between a reverse-dns tag name and a legacy freeform text tag
(contains a '.'?) - I've left it detecting these as freeform text
for now.
2018-08-06 16:58:54 +01:00
Matthew Hodgson
fe73953d9d fix merge; disable sticky headers; tweak chevrons 2018-07-30 09:00:11 -07:00
Bruno Windels
d87d34030a fix dm detection and conf call code with lazy loading 2018-07-25 16:10:49 +02:00
Michael Telatynski
37a8e7f2e2
add setting to throw new RoomSubList hide behaviour behind an opt-in
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-30 17:07:28 +01:00
David Baker
67dc8f2a8e
Merge pull request #2016 from matrix-org/t3chguy/hide_empty_sublist
fix historical section
2018-06-26 18:26:29 +01:00
Michael Telatynski
9b50daa748
give Historical an emptyContent to make it look more consistent
and also to unbreak it since now !emptyContent get hidden

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-26 07:46:33 +01:00
Luke Barnard
e292ee942f Fix RoomSubList headers by re-commiting 1faecfd
The original got reverted in ebfafb36 somehow.
2018-06-25 16:37:45 +01:00
Michael Telatynski
3b141d7a84
change variable names for clarity
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 16:48:00 +01:00
Michael Telatynski
1346f47a12
allow filtering Group Invite Tiles with the same search filter
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-14 14:18:39 +01:00
Michael Telatynski
c820836bcc
make RoomTooltip generic and add ContextMenu&Tooltip to GroupInviteTile
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-12 15:23:11 +01:00
Luke Barnard
4d8394954c Only create one group store listener in RoomList
Instead of creating several and destroying the reference to the one
created before.
2018-05-01 14:24:58 +01:00
Luke Barnard
28e8ce967f Correctly unregister group store listener when unmounting RoomList 2018-05-01 11:38:57 +01:00
Luke Barnard
023daef4b7 Refactor GroupStores into one global GroupStore
Take a step closer to a flux-like architecture for group data, for
the purposes of providing features that require it.

Now the app has a single GroupStore that can be poked to fetch
updates for a particular group.
2018-05-01 11:24:17 +01:00
Luke Barnard
39e9d52c04 Make sure to proxy special prop ref 2018-03-27 13:04:26 +01:00
Luke Barnard
b80568b1c5 Wrap GeminiScrollbar in a component, enabled forceGemini
Fixes https://github.com/vector-im/riot-web/issues/6294
2018-03-27 13:04:26 +01:00
Luke Barnard
8672b97f9a Improve room list performance when receiving messages
In summary this makes RoomTiles (and RoomAvatars) do more for
themselves in terms of reacting individually to state changes in
the js-sdk.

Instead of force updating the entire room list for avatar changes
and room name changes, do this in the RoomTile and RoomAvatar
instead. This increases the number of listeners listening to the
matrix client, but allows us to properly implement a
shouldComponentUpdate for RoomTile (because the avatar, name and
notification count are now in component state)
2018-03-14 14:29:55 +00:00
Matthew Hodgson
3552800d19
Merge pull request #1753 from matrix-org/luke/fix-room-list-drop-target-bg
Give emptySubListTip a container for correct bg colour
2018-02-23 16:36:10 +00:00
David Baker
fd90a8b23c
Merge pull request #1756 from matrix-org/luke/fix-recent-ordering
Make RoomListStore aware of Room.timeline events
2018-02-20 10:17:16 +00:00
Travis Ralston
cbeee72062
Don't show empty custom tags when filtering tags
Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-02-16 10:11:04 -07:00
Luke Barnard
94a0a90457 Make RoomListStore aware of Room.timeline events
so that we can do reorderings of lists ordered by most recent event.

No optimisations here; we only update for timeline events
on live timelines that could update the "unread count".
2018-02-16 14:16:50 +00:00
Luke Barnard
57419a7f8d Give emptySubListTip a container for correct bg colour 2018-02-15 14:11:45 +00:00
David Baker
ceec405519 Remove RoomListStore listener
This caused the the RoomList component to leak (although in practice
only accross logins because that's the only time it's unmounted)
2018-02-15 11:23:00 +00:00
Luke Barnard
7a4c1994c3 Use Boolean() instead of assuming filter is based on truthiness 2018-02-12 18:35:13 +00:00
lukebarnard
feca1707f1 Remove a factor n complexity during room visibility calc 2018-02-06 09:55:58 +00:00
lukebarnard
701abb6a21 Move management of room lists to RoomListStore
this is part maintenance to make RoomList clearer and part
allowing room list state to be modified via a dispatch.
2018-01-25 22:16:03 +01:00
lukebarnard
d0e3319bd9 Remove DragDropContext from TagPanel and RoomList
So that we can have one context that can handle DND between
the TagPanel and RoomList.
2018-01-25 22:05:20 +01:00
lukebarnard
6106b3ce44 newOrder defaults null, allows check for newOrder on line 357 2018-01-19 14:12:27 +00:00
lukebarnard
54f6d305d7 Null-guard for newTag 2018-01-19 14:11:05 +00:00
lukebarnard
6f0d799912 Fix indentation 2018-01-18 18:15:34 +00:00
lukebarnard
59f4661bfd Add comment 2018-01-18 18:01:31 +00:00
lukebarnard
dfecad181a Swap RoomList to react-beautiful-dnd 2018-01-18 17:59:29 +00:00
lukebarnard
408f13f68c Only set selected tags state when updating rooms
instead of every time we get an update from a GroupStore/otherwise.

This was leading to many setStates and renders at startup when we
receive many group /members /rooms etc. responses.

Also, use the rate limited version of refreshRoomList.
2018-01-15 14:42:41 +00:00