Commit Graph

669 Commits (054011f5f811611ccc93936e995f170a70336fb2)

Author SHA1 Message Date
David Baker 3555b02f34 Merge remote-tracking branch 'origin/experimental' into dbkr/fix_recovery_reminder_cancel 2019-01-10 09:39:57 +00:00
David Baker 7381879e3a Fix a few things with cancelling recovery reminder
* Put a cancel button on the first page of the create key backup
   dialog
 * Move settings logic into the room reminder: I know this is moving
   logic *into* a view but RoomView is quite heavyweight as it is.
 * Give the recovery reminder an explicit 'onDontAskAgainSet' rather
   than onFinished which was getting called with false when the last
   screen of the dialog was closed with the cancel 'x' rather than
   the 'close' button.

https://github.com/vector-im/riot-web/issues/8066
2019-01-09 16:27:41 +00:00
Bruno Windels 290dc9d8fb Merge branch 'experimental' into bwindels/roomgridview-experimental 2019-01-07 14:17:57 +01:00
Travis Ralston 8017f0a4a1 Merge remote-tracking branch 'origin/experimental' into travis/develop-for-real 2019-01-03 16:00:23 -07:00
David Baker f928be6f59 Revert "Merge pull request #2395 from matrix-org/dbkr/merge_develop_experimental"
This reverts commit ad47144355.
2019-01-03 15:37:03 -07:00
David Baker 7d161de35b Partial merge of develop to experimental
Does not include #2336 as the file has been moved out from underneath it:
will do this separately
2019-01-03 15:02:58 +00:00
J. Ryan Stinnett 402f58225f Show in-room reminder when key backup creating device unverified
If the current device hasn't verified the device that created the account's
current key backup version, then the current device is won't use the key backup.
This change adjusts an existing in-room reminder to do the right thing for this
case by allowing the user to verify the device that created the key backup.

Fixes vector-im/riot-web#7902.
2019-01-02 15:36:40 -06:00
Bruno Windels c8243357ea disable editor history/persistence when in grid to avoid pesky bug 2018-12-13 13:01:59 +01:00
Bruno Windels f593bff3c3 show right panel tabs inside panel instead of room header in grid mode 2018-12-13 13:01:59 +01:00
Bruno Windels 44200a6f78 only listen and dispatch to room-local dispatcher in room view, composer 2018-12-13 13:01:59 +01:00
Bruno Windels 9a24249fb5 emit focus_composer after updating the active room in GroupGridView
also change the active room from there so RoomView is oblivious
to grid view stuff
2018-12-13 13:01:59 +01:00
Bruno Windels cf0f75cad4 allow changing active room in grid by clicking it 2018-12-13 13:01:59 +01:00
Bruno Windels df8539d6bc pass the RoomViewStore down with a prop instead of global var.
this will allow to have more than 1 RoomView further on
2018-12-13 12:59:18 +01:00
Bruno Windels ac9902e52a apply redesign to topunreadmessagebar
with placeholder for message count
2018-12-11 15:43:00 +01:00
J. Ryan Stinnett a92d2902c4 Add an in-room reminder to set up key recovery
This adds an in-room reminder above the message timeline to set up Secure
Message Recovery so that your keys will be backed up. If you try to ignore it,
an additional dialog is shown to confirm.

Fixes vector-im/riot-web#7783.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-07 14:13:02 -06:00
Will Hunt 2b077b4f5d Merge remote-tracking branch 'upstream/develop' into hs/upload-limits 2018-12-01 16:24:43 +00:00
Bruno Windels 887defda9c temp solution to make room settings usable
make mx_fadable not do anything anymore, and make room settings
full size.

Room settings haven't been designed yet, so all of this will
have a full pass when we have a go at it.
2018-11-26 17:58:51 +01:00
Bruno Windels 465d767bf1 remove typing notifications from status bar 2018-11-12 18:11:17 +01:00
Bruno Windels 9be4598a0e use main element for room/group view 2018-11-02 15:05:55 +01:00
Bruno Windels b4dd739771 Merge branch 'experimental' into bwindels/rightpanelbelowheader 2018-10-31 14:57:16 +01:00
Bruno Windels a40f1933f2 put RightPanel as sibling of .mx_RoomView_body instead of RoomView 2018-10-30 18:13:17 +01:00
Bruno Windels 4972b1ba7c move aux panel into room body
to put a resize handle between the body and the right panel later on
2018-10-30 13:25:06 +01:00
Aaron Raimist 49ce4ef117
eslint --fix src/
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 22:50:38 -05:00
Travis Ralston d7367a7cfd Merge branch 'develop' into travis/permalink-routing 2018-10-24 09:12:14 -06:00
Aaron Raimist 1aa3085958
Oh right, can't change these
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-22 23:33:38 -05:00
Aaron Raimist cb033bcadd
Why not change it everywhere while we're at it
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-22 23:16:07 -05:00
David Baker c677dd8a24
Merge pull request #2225 from matrix-org/travis/join-room-text
Add a bit of text to explain the purpose of the RoomPreviewSpinner
2018-10-22 13:11:09 +01:00
David Baker b8153dcec7
Merge pull request #2219 from matrix-org/travis/login-register-composer
Move the login box from the left sidebar to where the composer is
2018-10-22 13:05:19 +01:00
Travis Ralston 7383133846 Support parsing matrix.to links in the timeline with ?via= in them
This ends up being translated to ?server_name= in the matrix-js-sdk, although that has a bug at the time of writing. It converts `server_name: ['a', 'b']` to `?server_name=a,b` instead of `?server_name=a&server_name=b`

For reference: the `viaServers` option is routed through the 'join_room' action to RoomViewStore#_joinRoom which is passed directly to the js-sdk http-api#joinRoom function.

Next steps:
* Fix the js-sdk parsing
* Make the SDK generate matrix.to links with ?via=
2018-10-19 13:31:18 -06:00
Travis Ralston af8dfda9a7 Add a bit of text to explain the purpose of the RoomPreviewSpinner
Fixes https://github.com/vector-im/riot-web/issues/5869
2018-10-17 13:53:12 -06:00
Travis Ralston 2d62fda862 Don't show the invite nag bar when peeking 2018-10-15 14:35:36 -06:00
Travis Ralston 94aac62f25 Move the login box from the left sidebar to where the composer is
Fixes https://github.com/vector-im/riot-web/issues/4227

This includes removing the collapse button that isn't needed anymore.
2018-10-15 14:26:24 -06:00
Will Hunt 5a72a5863f Merge remote-tracking branch 'upstream/develop' into hs/upload-limits 2018-10-15 19:20:55 +01:00
David Baker 6f9d673b79 Focus composer after closing room settings
For some reason the slate update means the composer doesn't
have the focus after closing the room settings, and the end to end
tests pick this up!
2018-10-09 17:35:40 +01:00
Bruno Windels e8b4770940 fix lint 2018-09-17 20:01:55 +02:00
Bruno Windels 841aa4b800 check LL with client as this takes server support into account 2018-09-17 19:28:06 +02:00
Bruno Windels 0ce7bb8995 pass membersLoaded state to TimelinePanel to force it to re-render
... once the members are loaded.
2018-09-17 19:27:25 +02:00
Bruno Windels 473f2dd72b pass room to _loadMembersIfJoined, it's called when newState not applied
_loadMembersIfJoined is called from
_onRoomLoaded < _onRoomViewStoreUpdate, before incoming state
from the store is applied to this.state, so looking up the room
with this.state.roomId doesn't always work, which would cause
the members not to be loaded. Pass in the room instead.
2018-09-17 19:24:34 +02:00
Bruno Windels 2ed414494f use Room.myMembership event instead of RoomMember.membership for me
This is more reliable with LL enabled as the syncing user is
only known when it was active in the current timeline
or when the members have been loaded
2018-09-17 19:14:52 +02:00
Bruno Windels 86cbe34181 rerender after members are loaded so pills and RR get rerendered 2018-09-14 18:35:16 +02:00
Bruno Windels f194f323f4 postpone loading the members until the user joined the room
when peeking, the members weren't being loaded at all because
the room wasn't available yet,
and the need for loading the members was never re-evaluated after that.

This only loads the members once the user has joined the room,
which also helps to avoid load all the members before an invite
is accepted.
2018-09-13 18:43:24 +02:00
Bruno Windels deaad4bcb1 even better as the method called is on room 2018-09-10 18:11:08 +02:00
Bruno Windels 694ee5a2c8 fix logging room id when LL members fail 2018-09-10 18:09:11 +02:00
David Baker 27fa21e403 Replace view_set_mxid with require_registration
To put all the other flows through the to-ilag-or-not-to-ilag flow
2018-09-05 18:08:49 +01:00
David Baker bd0a9cf3a0 Merge remote-tracking branch 'origin/develop' into dbkr/room_upgrade 2018-08-29 15:51:07 +01:00
David Baker 269670ed20
Merge pull request #2128 from matrix-org/dbkr/move_tiffany_check
Fix CPU spin on joining large room
2018-08-23 09:33:17 +01:00
David Baker a5f98b6a29 Make the is-alone check use efficient methods 2018-08-22 17:05:36 +01:00
David Baker f679acea08
Revert "Revert "Fix showing peek preview while LL members are loading"" 2018-08-22 16:35:58 +01:00
David Baker bf7633250a
Revert "Fix showing peek preview while LL members are loading" 2018-08-22 16:16:17 +01:00
David Baker 852d6a3be5 Fix CPU spin on joining large room
checkIfAlone() filters the whole member list, which is fine until
we do it once for every membership event, then we have an n^2
problem. Move it into the rate limited function.

Fixes https://github.com/vector-im/riot-web/issues/7163
2018-08-22 14:34:02 +01:00
Bruno Windels a54629276f use getJoinedMemberCount() instead of getJoinedMembers().length as the latter doesnt take LL into account 2018-08-22 14:08:18 +02:00
Bruno Windels c38b286e8e falsy check is obsolete now 2018-08-22 12:28:00 +02:00
Bruno Windels 01a0260ac8 use getMyMembership instead of member 2018-08-22 10:33:13 +02:00
David Baker 9f19896df0 Support for room upgrades
* Show when a room upgrade is needed
 * Dialog box to perform the upgrade
2018-08-17 14:54:43 +01:00
Bruno Windels 1009bc43ae call method on room now to LL members 2018-08-07 14:47:06 +02:00
Bruno Windels b151956f7b Use room method to help with DM detection with fallback to summary heroes/counts. 2018-08-02 11:42:19 +02:00
Bruno Windels 908de56c6d replace getMember(myId).membership with getMyMembership
This works with rooms which haven't had their members
loaded yet.
2018-08-02 11:42:05 +02:00
Bruno Windels 33f5560666 move error message to caller of lazy loading 2018-07-25 16:10:49 +02:00
Bruno Windels 201332d96c move comment after rebase 2018-07-25 16:10:49 +02:00
Bruno Windels af07d73432 hide lazy loading behind feature flag 2018-07-25 16:10:49 +02:00
Bruno Windels e237a02fa5 use more consistent naming 2018-07-25 16:10:49 +02:00
Bruno Windels 6ff92ede8f this code actually never fires, so remove it
and that's ok because createRoom will already mark a DM as such
on the inviter's side. So here we just handle the invitees side.
2018-07-25 16:10:49 +02:00
Bruno Windels 19387805ac Don't assume RoomMember has a state event in direct chat detection
Instead call the method on the member that takes lazy loading into account
2018-07-25 16:10:49 +02:00
Bruno Windels de3e143a8f only lazy load the members when viewing a joined room 2018-07-25 16:10:49 +02:00
David Baker 7aab6fa6f1 Merge remote-tracking branch 'origin/develop' into dbkr/widget_echo 2018-07-18 09:35:57 +01:00
Bruno Windels b412b9e84d Fix stopPeeking not being called at the right time
stopPeeking is currently not called when navigating to a joined room
after having peeked a room. This causes the /events endpoint for the
peeked room to be called until peeking another room, even when not
viewing the peeked room anymore.

The current code would only stop peeking if you joining were true (note the nesting),
e.g. when waiting for your join to be confirmed by /sync.

This change might make stopPeeking called also when not needed by there is a guard in
that method to do nothing if not currently peeking.
2018-07-12 15:19:25 +02:00
David Baker b6f854abe4 Simplify event name as it's the only one 2018-07-05 20:00:42 +01:00
David Baker eb552e5cef Just pass the roomId into WidgetEchoStore 2018-07-05 18:43:20 +01:00
David Baker 8b64ddcbe8 Do some level of local echo for widgets
* Show a spinner while we wait for widgets to be deleted
 * Hide widgets while they're pending deletion
 * Don't put another jitsi widget into the room if there's already
   one pending
2018-07-03 11:16:44 +01:00
David Baker 9539a749e5 More refactoring 2018-06-26 16:03:58 +01:00
David Baker 553111b6e2
Merge pull request #2001 from matrix-org/t3chguy/default_url_previews_off_e2ee
default to not showing url previews in e2ee rooms.
2018-06-25 11:50:14 +01:00
Will Hunt 541f1d71fb Move upload verification logic to RoomView.
Improve upload dialog ux
2018-06-23 14:28:39 +01:00
Will Hunt 736b76bbb0 If HttpStatus == 413, refresh media limits 2018-06-23 13:00:56 +01:00
Will Hunt caf2086585 Restructure limits to be set at RoomView, so they may change if the
upload fails
2018-06-23 13:00:56 +01:00
Michael Telatynski b7396c8ef0
trigger urlPreviews state update on {,room}AccountData changes of settings
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 19:17:55 +01:00
Michael Telatynski acbc84a69c
switch to another settings key for e2e url previews to protect on change
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 18:44:54 +01:00
Michael Telatynski ed1f801254
add comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 18:36:07 +01:00
Michael Telatynski a45dc837b4
add copyright
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 18:36:01 +01:00
Michael Telatynski 891070d001
update UrlPreview settings to be more privacy-aware in e2ee rooms
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-22 18:35:54 +01:00
Michael Telatynski 6200c147a6
Upload File confirmation modal steals focus, send it back to composer
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-19 08:41:24 +01:00
David Baker 50e08c7560
Merge pull request #1947 from matrix-org/t3chguy/invite_checkIfAlone
re-run checkIfAlone if a member change occurred in the active room
2018-06-08 17:36:42 +01:00
Michael Telatynski 0b9b03c9ee
re-run checkIfAlone if a member change occurred in the active room
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-06-07 22:01:27 +01:00
Travis Ralston 83f0459a7f
Merge branch 'develop' into travis/persist-pinned-open 2018-06-06 09:17:08 -06:00
Luke Barnard da9fe9917b Fix click on faded left/right/middle panel -> close settings
- implement generic dispatch to close user/room/group settings
 - use dispatch to allow clicks on disabled left/right/middle panel to
   close settings

A much more maintainable approach would be to use dedicate routing
instead of doing different things depending on what page of the app is
currently being viewed. At the very least we could make the concept of a
settings page generic.
2018-05-29 13:16:39 +01:00
Travis Ralston 752605429c Persist pinned message open-ness between room switches
Addresses part of https://github.com/vector-im/riot-web/issues/5405

Signed-off-by: Travis Ralston <travpc@gmail.com>
2018-05-26 19:58:12 -06:00
Michael Telatynski 4c3f811050
switch RoomView:uploadFile to async to clean up then/catch handling
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-02 13:14:47 +01:00
Michael Telatynski db55f87699
avoid `.done` and `.then` anti-pattern
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-05-01 18:14:35 +01:00
Michael Telatynski bbf4d3e39f
add comment
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-29 00:34:27 +01:00
Michael Telatynski 82d117974f
Remove unused import
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-04-27 11:16:29 +01:00
Michael Telatynski 1d90835de0
Merge branches 'develop' and 't3chguy/m.relates_to' of github.com:matrix-org/matrix-react-sdk into t3chguy/m.relates_to
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

# Conflicts:
#	src/components/structures/RoomView.js
2018-04-04 11:08:34 +01:00
Richard Lewis 35fcb2c9ab Catch rather than 'done' error handler. 2018-03-29 16:56:02 +01:00
Richard Lewis 23a52bdb4c Indentation. 2018-03-29 16:46:22 +01:00
Michael Telatynski b5ed08eba2
Merge
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-03-24 17:52:49 +00:00
Richard Lewis b2bf4d4709 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into rxl881/snapshot 2018-02-23 15:37:33 +00:00
Luke Barnard f08ec3498a Fix bug that prevented tint updates 2018-02-22 10:53:06 +00:00
Michael Telatynski 665ddccb0d
restrict to m.text for now
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-20 15:45:25 +00:00
Michael Telatynski 90f9badbf3
s/Reply/ReplyThread/
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-20 15:40:19 +00:00
Luke Barnard bc15303358 Factor out updateDmState 2018-02-20 14:10:34 +00:00
Luke Barnard d21f55633d Fix DMs being marked as with the current user ("me")
Whilst testing various DM paths, @lukebarnard1 found that there were
many failures to add the room as a DM against the correct user. It
turned out most of the failures seen were because the user chosen
was the current user. If the user accepted an invite it would often
be marked as with themselves because we chose the sender of the
join event as the DM user.

This fix makes the DM room setting process the same for both the
inviting client and the invited client. A RoomState.members
event causes the DM room state to be set in the room, regardless
of whether we are currently `joining` (see previous impl.)

The two cases for setting a DM are:
 - this user accepting an invite with is_direct
 - this user inviting someone with is_direct

This should handle all cases for setting DM state.
2018-02-20 14:03:43 +00:00
Michael Telatynski 7048d85246
attach message_sent and replies to file uploads
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-02-19 23:42:04 +00:00