Commit graph

6559 commits

Author SHA1 Message Date
Luke Barnard
a120335130 Handle groups being joined and left 2017-12-11 18:03:19 +00:00
Luke Barnard
8d2d3e62cd Only commit a non-falsy tags list 2017-12-11 17:30:10 +00:00
Luke Barnard
0b38bf5e7b Do not allow ordering until TagOrderStore has loaded 2017-12-11 17:24:33 +00:00
Luke Barnard
aa914098dc Return null if TagOrderStore is loading
The view should decide the default state.
2017-12-11 17:19:29 +00:00
Luke Barnard
991ea4ebe5 Fix a few bugs with TagOrderStore:
- Have TagOrderStore listen for MatrixSync actions so that it can initialise
   tag ordering state.
 - Expose an empty list until the client has done its first sync and has
   fetched list of joined groups
2017-12-11 17:17:05 +00:00
Luke Barnard
df88b71dbb Comment typo 2017-12-08 16:47:52 +00:00
Luke Barnard
8f0774496f Remove redundant MatrixChat 2017-12-08 11:29:21 +00:00
Luke Barnard
53e7232a97 Linting 2017-12-08 11:08:57 +00:00
Luke Barnard
31a52c15bd Fix bug with removing matrix listeners 2017-12-08 10:55:29 +00:00
Luke Barnard
72550961e5 Move 'commit_tags' to action creator 2017-12-08 10:52:20 +00:00
Luke Barnard
12515441cd Handle accountData events from TagOrderStore
This introduces a generic way to register certain events emitted by
the js-sdk as those that should be propagated through as dispatched
actions.

This allows the store to treat the js-sdk as the "Server" in the
Flux data flow model. It also allows for stores to not be aware
specifically of the matrix client if they are only reading from it.
2017-12-08 10:05:18 +00:00
Luke Barnard
ee6df105fe Introduce action creators
These can be used to dispatch actions immediately, or after some asynchronous
work has been done. Also, create GroupActions.fetchJoinedGroups as an example.

The concept of async action creators can be used in the following cases:
 - stores or views that do async work, dispatching based on the results
 - actions that have complicated payloads, would make more sense as functions
   with documentation that dispatch created actions.
2017-12-07 14:17:32 +00:00
Luke Barnard
65d88334a9 Fix linting
React DnD specifies functions with upper-case first letters
2017-12-06 16:48:18 +00:00
Luke Barnard
7e1f1cdbd9 Move DragDropContext to wrap LoggedInView
Becuase the tests rely on being able to inspect the state of MatrixChat
2017-12-06 15:01:16 +00:00
Luke Barnard
8f88995b3d Add analytics to TagOrderStore 2017-12-06 14:22:11 +00:00
Luke Barnard
a9cc8eba33 Remove redundant TagOrderStore.orderedTags setting 2017-12-06 14:20:16 +00:00
Luke Barnard
35a108eecc Simplify render of TagPanel - remove sorting 2017-12-06 14:17:26 +00:00
Luke Barnard
4af7def20e Use AccountData im.vector.web.tag_ordering
Also, make defaults sensible
2017-12-06 14:13:08 +00:00
Luke Barnard
7aa5dcef69 Move DragDropContext to wrap entire app 2017-12-06 13:10:58 +00:00
Luke Barnard
a8a650c24a Move TagTile to separate file, and make it dragable 2017-12-06 11:25:46 +00:00
Luke Barnard
82a95f0793 Simplify order_tag in TagOrderStore
such that:
 - it takes a targetTag to be replaced instead the previous tag to insert after
 - it optionally displaces the targetTag before or after the inserted tag
2017-12-06 11:22:06 +00:00
Luke Barnard
8178496457 Implement Store for ordering tags in the tag panel 2017-12-05 14:45:44 +00:00
Luke Barnard
641add4964 Fix one kind of scroll jump
by calling onWidgetLoad when the <img> in MImageBody loads
2017-12-01 14:18:13 +00:00
Luke Barnard
b26cf23574
Merge pull request #1641 from matrix-org/luke/tag-panel-shift-click-semantics
Implement shift-click and ctrl-click semantics for TP
2017-12-01 12:04:21 +00:00
Luke Barnard
363fe04a10 isCtrlOrCmdKeyEvent -> isOnlyCtrlOrCmdKeyEvent 2017-12-01 10:44:00 +00:00
Luke Barnard
ddd0e161c0 Fix broken imports 2017-12-01 10:41:56 +00:00
Luke Barnard
fe81fcb8c6 Factor out isCtrlOrCmdKeyEvent, use that in TagPanel
as opposed to the incorrect ctrl || meta
2017-12-01 10:30:49 +00:00
Luke Barnard
eaaa9fe747 Don't show group when clicking tag panel 2017-11-30 15:35:40 +00:00
Luke Barnard
3bcb3195c4 Implement shift-click and ctrl-click semantics for TP 2017-11-30 14:48:54 +00:00
Luke Barnard
7118f7a38f gen-18n 2017-11-29 18:41:08 +00:00
Luke Barnard
f708250d44 Add feature flag for Tag Panel 2017-11-29 18:00:42 +00:00
Luke Barnard
ead30fae9d Use unmounted instead of mounted 2017-11-29 17:07:43 +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
Luke Barnard
ff25c2f329
Merge pull request #1638 from matrix-org/luke/feature-bulk-device-deletion
Implement UI for using bulk device deletion API
2017-11-28 16:01:39 +00:00
David Baker
a5acc2cfc2
Merge pull request #1637 from matrix-org/luke/replace-IRC-with-flair
Replace (IRC) with flair
2017-11-28 16:00:47 +00:00
Luke Barnard
736b8045aa Remove evil auth cache 2017-11-28 15:54:00 +00:00
Luke Barnard
204bbebfca Only calculate displayed groups if flair enabled 2017-11-28 15:49:11 +00:00
Luke Barnard
b32e4a57bc Factor out _getDisplayeDGroups 2017-11-28 15:46:23 +00:00
Luke Barnard
b748c62880 Renames for clarification 2017-11-28 15:40:36 +00:00
Luke Barnard
1c71983610 Implement UI for using bulk device deletion API 2017-11-28 15:32:40 +00:00
Luke Barnard
55b5f2b249
Merge branch 'develop' into luke/allow-guest-view-group 2017-11-28 14:06:43 +00:00
Luke Barnard
3addb924b1 Replace (IRC) with flair
If a user has public groups that are honoured in their flair, remove the (IRC) to give the appearance that the flair replaces it.
2017-11-28 13:50:05 +00:00
Luke Barnard
a8594a58e5 Allow guest to see MyGroups, show ILAG when creating a group 2017-11-28 13:32:46 +00:00
Luke Barnard
7ec4010881 Make GroupStore use MatrixClientPeg
To avoid weirdness with using a cached matrix client
2017-11-28 11:54:05 +00:00
Luke Barnard
1a3ad5a342 Allow guests to view individual groups
For homeservers that still disallow guests (running synapse without https://github.com/matrix-org/synapse/pull/2715), start ILAG.
2017-11-28 11:52:46 +00:00
David Baker
bbaa46f773
Merge pull request #1634 from matrix-org/luke/move-group-flair-toggle-to-user-settings
Move group publication toggles to UserSettings
2017-11-28 11:02:45 +00:00
Luke Barnard
d4f5e7e6d7 Deal with errors, lack of groups, loading 2017-11-28 10:46:20 +00:00
Richard van der Hoff
8be3862e68 Merge branch 'master' into develop 2017-11-28 10:29:40 +00:00
Luke Barnard
0d5f7ef246 Avoid NPE 2017-11-28 10:12:46 +00:00
Luke Barnard
3342754a72 Catch and log errors from getting group profile 2017-11-28 10:11:25 +00:00