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
David Baker
587a6f8e2b
Merge pull request #1687 from matrix-org/luke/perf-tag-panel-selected
...
Improve performance of tag panel selection (when tags are selected)
2018-01-05 15:55:24 +00:00
lukebarnard
8ade357349
Handle newly added rooms and removed rooms.
2018-01-05 12:33:26 +00:00
David Baker
5aed77c752
Merge pull request #1677 from aidalgol/PropTypes
...
Remove use of deprecated React.PropTypes
2018-01-05 11:53:55 +00:00
lukebarnard
7606e60188
Merge branch 'develop' into luke/perf-tag-panel-selected
2018-01-05 10:26:03 +00:00
lukebarnard
f1b60287fb
Merge branch 'develop' into luke/fix-get-users-rooms-for-joined-groups
2018-01-04 17:56:34 +00:00
David Baker
b34f360f96
Merge pull request #1690 from matrix-org/luke/remove-selected-room-prop
...
Remove unused selectedRoom prop
2018-01-04 17:33:36 +00:00
lukebarnard
2282f5c26f
Remove unused selectedRoom prop
2018-01-04 14:19:10 +00:00
lukebarnard
cdd1a57569
Calculate visible rooms when tags change
...
instead of every time we getRoomLists
2018-01-04 11:50:33 +00:00
lukebarnard
5c5307c665
Improve performance of tag panel selection (when tags are selected)
...
Deselecting all tags is now slightly less performant than selecting a tag
but mostly due to the number of RoomTiles being rendered.
Swapping between different tags (a supposed common use-case) feels much
more spritely!
2018-01-03 17:12:31 +00:00
lukebarnard
2baacfa562
Handle case where ordering is not yet known
2018-01-03 14:12:28 +00:00
lukebarnard
a2bb240dcb
Fetch group data for all tags instead of those selected
...
so that tag switching is not delayed by fetching group data, i.e group members and rooms.
2018-01-03 14:07:29 +00:00
lukebarnard
85cdd888e8
Combine TagOrderStore and FilterStore
...
so that shift-click semantics can work. The store that computes the shift-click
rules has to be aware of the actual order of tags displayed, so they must be done
in the same store.
2018-01-03 11:33:59 +00:00
lukebarnard
57fb09dfb7
Fix dodgy merge done in 874a7bf
...
where develop branch should have been used for a chunk of code
2018-01-02 19:26:56 +00:00
lukebarnard
874a7bf1de
Merge branch 'develop' into luke/fix-room-list-group-store-leak
2018-01-02 16:19:37 +00:00
Aidan Gauland
35780f5ae0
Remove use of deprecated React.PropTypes
...
Replace all uses of React.PropTypes with PropTypes and importing PropTypes from
'prop-types'.
2017-12-26 14:03:18 +13:00
Luke Barnard
d292dab9c6
More doc
2017-12-15 17:30:21 +00:00
Luke Barnard
56affd3d42
Rename for clarity
2017-12-15 17:29:06 +00:00
Luke Barnard
653137f6ec
Update comment
2017-12-15 17:21:20 +00:00
Luke Barnard
961d5e1868
Split updatedSelectedTagsRooms
...
because we don't need to get the rooms for all groups when
the filtered tags change.
2017-12-15 14:23:35 +00:00
Luke Barnard
34e455c6fc
Fix leaking of GroupStore listeners in RoomList
2017-12-15 14:12:21 +00:00
Luke Barnard
df1134f092
Use "shared" DMRoomMap
2017-12-14 16:34:49 +00:00
Luke Barnard
3732fd29d5
Comments for instance variables
2017-12-14 16:17:06 +00:00
Luke Barnard
aac5bcfe80
Attempt to improve TagPanel performance
...
by only recalculating rooms to show (for a given group) when a group updates.
2017-12-05 11:25:30 +00:00
Luke Barnard
45bcb6f2ed
Implement TagPanel (or LeftLeftPanel) for group filtering
...
This allows for filtering of the RoomList by group. When a group is selected, the room list will show:
- Rooms in the group
- Direct messages with members in the group
A button at the bottom of the TagPanel allows for creating new groups, which will appear in the panel following creation.
2017-11-29 16:53:43 +00:00
Stefan Parviainen
df6d5cc2b4
Pass plain components, rather than functions returning them
2017-11-14 20:09:52 +01:00