Commit graph

5795 commits

Author SHA1 Message Date
Travis Ralston
ca1313099f Show the IncomingCallBox if the call is for the RoomSubList
Fixes https://github.com/vector-im/riot-web/issues/4369

Previously the RoomSubList would filter its list of rooms to verify that the incoming call belongs to it. This causes problems when the sub list is being told some rooms don't exist (ie: the list is filtered). It is trivial for the RoomList to instead track which RoomSubList (tag) it should be handing the call off to so we do that instead now. The RoomSubList trusts that the caller has already filtered it and will render the IncomingCallBox if it has an incoming call.
2018-12-06 11:45:58 -07:00
Travis Ralston
31b7a0ddcb
Merge pull request #2259 from matrix-org/t3chguy/account_deactivation_preferences
Remove temporary account_deactivation_preferences
2018-12-06 10:45:04 -07:00
Travis Ralston
0f348a7c78 Merge branch 'develop' into travis/invite-errors 2018-12-05 11:25:45 -07:00
David Baker
dad8e6a261
Merge pull request #2326 from jryans/group-users-error
Allow group summary to load when /users fails
2018-12-05 10:56:32 +00:00
Travis Ralston
633be5061c Introduce a default_server_name for aesthetics and rework .well-known
Fixes https://github.com/vector-im/riot-web/issues/7724

The `default_server_name` from the config gets displayed in the "Login with my [server] matrix ID" dropdown when the default server is being used. At this point, we also discourage the use of the `default_hs_url` and `default_is_url` options because we do an implicit .well-known lookup to configure the client based on the `default_server_name`. If the URLs are still present in the config, we'll honour them and won't do a .well-known lookup when the URLs are mixed with the new server_name option. Users will be warned if the `default_server_name` does not match the `default_hs_url` if both are supplied. Users are additionally prevented from logging in, registering, and resetting their password if the implicit .well-known check fails - this is to prevent people from doing actions against the wrong homeserver.

This relies on https://github.com/matrix-org/matrix-js-sdk/pull/799 as we now do auto discovery in two places. Instead of bringing the .well-known out to its own utility class in the react-sdk, we might as well drag it out to the js-sdk.
2018-12-04 23:34:57 -07:00
J. Ryan Stinnett
22ff76e6b7 Add error to UI when group member list fails to load
Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-04 18:46:15 -06:00
J. Ryan Stinnett
5fc25fd6ba Only mark group as failed to load for summary
Currently, any error in the `GroupStore`s several requests can cause the whole
`GroupView` component to hide and be mark the group as failed to load.

Since it is known that group members may fail to load in some cases, let's only
show failed to load for the whole group when the summary fails.

This also strengthens the `GroupView` test by ensuring we wait for multiple
updates for checking results.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-12-04 18:32:16 -06:00
Will Hunt
2b077b4f5d Merge remote-tracking branch 'upstream/develop' into hs/upload-limits 2018-12-01 16:24:43 +00:00
Travis Ralston
987ad0b0db Check if users exist before inviting them and communicate errors
Fixes https://github.com/vector-im/riot-web/issues/3283
Fixes https://github.com/vector-im/riot-web/issues/3968
Fixes https://github.com/vector-im/riot-web/issues/4308
Fixes https://github.com/vector-im/riot-web/issues/1597
Fixes https://github.com/vector-im/riot-web/issues/6790

This does 3 things:
* Makes the `MultiInviter` check for a user profile before attempting an invite. This is to prove the user exists.
* Use the `MultiInviter` everywhere to avoid duplicating the logic. Although a couple places only invite one user, it is still worthwhile.
* Communicate errors from the `MultiInviter` to the user in all cases. This is done through dialogs, where some existed previously but were not invoked.

Specifically to the 403 error not working: What was happening was the `MultiInviter` loop was setting the `fatal` flag, but that didn't resolve the promise it stored. This caused a promise to always be open, therefore never hitting a dialog.
2018-11-29 15:05:53 -07:00
Travis Ralston
e3f2e69087
Merge pull request #2227 from matrix-org/travis/well-known
Support .well-known discovery
2018-11-27 13:51:44 -07:00
Travis Ralston
015af7d771 Use sensible logging 2018-11-27 13:41:34 -07:00
David Baker
4f8c4f1c6e Make create key backup dialog async
So we can add zxcvbn to it without inflating the main bundle size
2018-11-23 10:55:18 +00:00
David Baker
d443d6173d Forgot to enable continue button on download 2018-11-22 19:06:58 +00:00
Travis Ralston
5600a9d02a Validate the identity server 2018-11-21 14:14:08 -07:00
Travis Ralston
4cfefe4c3c Introduce an onUsernameBlur and fix hostname parsing 2018-11-21 14:13:56 -07:00
Travis Ralston
6f0f930e0a Merge branch 'develop' into travis/well-known 2018-11-21 13:30:57 -07:00
David Baker
d714176fcd
Merge pull request #2169 from matrix-org/dbkr/e2e_backups
Online incremental megolm backups (v2)
2018-11-21 18:37:43 +00:00
David Baker
b529c98095
Merge pull request #2284 from matrix-org/dbkr/e2e_backups_download_recovery_key
Add recovery key download button
2018-11-21 18:25:33 +00:00
David Baker
3828798099 lint 2018-11-21 18:17:26 +00:00
David Baker
40ef2e0cf4 another missed translation 2018-11-21 18:08:44 +00:00
David Baker
1c06d781ae Missed translation 2018-11-21 18:06:37 +00:00
David Baker
08e2ba8c6c Don't allow enter to submit if field invalid 2018-11-21 18:02:58 +00:00
David Baker
985966f8be Update async dialog interface to use promises
Hopefully makes the syntax a bit nicer. Also uses ES6 async import
rather than require.ensure which is now deprecated. Also also
displays an error if the component fails to load rather than falling
over in a heap, which is nice.
2018-11-21 16:56:44 +00:00
David Baker
ed5d87e797 Add recovery key download button 2018-11-21 13:57:31 +00:00
David Baker
6fe2c9c2bb Merge branch 'dbkr/e2e_backups' into dbkr/e2e_backups_passphrase 2018-11-20 18:10:57 +00:00
David Baker
8ccaf53d20 Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-11-20 18:08:39 +00:00
David Baker
63a7ff5273 lint 2018-11-20 16:20:31 +00:00
David Baker
132408cf02 Add e2e backup recovery with passphrase 2018-11-20 16:16:24 +00:00
David Baker
fbab8ceeef Passphrase based key backups
Add passphrase support to backup creation stage
2018-11-20 13:11:58 +00:00
Richard van der Hoff
c61031d3e1
Merge pull request #2279 from matrix-org/rav/sso_login_type
Support for m.login.sso
2018-11-19 14:14:21 +01:00
Travis Ralston
7dd610b41e
Merge pull request #2235 from MaxwellKepler/develop
Added badge to non-autoplay GIFs
2018-11-16 13:25:40 -07:00
Travis Ralston
2408eeeb3d
Merge pull request #2277 from matrix-org/travis/terms-auth-improvements
Improve terms auth flow
2018-11-16 12:36:17 -07:00
Travis Ralston
7df003ef74 Be more positive in property naming 2018-11-16 12:15:44 -07:00
David Baker
8281bdf875 Actually add the dialog 2018-11-16 11:33:09 +00:00
Travis Ralston
8916c90fed Make the 'Accept' button for consent a little more friendly
Part of https://github.com/vector-im/riot-web/issues/7700
2018-11-15 20:26:37 -07:00
Richard van der Hoff
90f22c7b43 Support for m.login.sso
Adds support for the m.login.sso login type, which is handled the same way as
CAS, and also makes it look a bit nicer.
2018-11-15 19:05:39 +00:00
Travis Ralston
c8b38606cc Fix terms auth continue button CSS 2018-11-14 18:40:00 -07:00
Travis Ralston
2ffc024fab Add a dedicated "Continue" button to the terms auth stage
The button itself is conditionally enabled because the ILAG dialog already has a continue button. It'd be confusing to users to have 2 continue buttons on the same dialog, so this commit adds the structure required to pass along clicks from the dialog's button down to the UI auth component. 

The other place the continue button would appear is on the register page (not ILAG). The button's style is different here, however that will be improved in a later commit. 

Part of https://github.com/vector-im/riot-web/issues/7700
2018-11-14 18:26:35 -07:00
J. Ryan Stinnett
975392cbbb Add visible guest warning to encourage login
If you happen to get logged out, it might not be very clear what has happened
visually. This adds a visible warning to the top of the home page to suggest
logging in.

Fixes vector-im/riot-web#7629.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-11-06 21:08:57 +01:00
Travis Ralston
57b99893e5
Merge pull request #1936 from turt2live/travis/pinned-room-list
Add options to pin unread/mentioned rooms to the top of the room list
2018-11-01 08:04:12 -06:00
David Baker
6d6e6b5a4e Remove cryptic abbreviation 2018-10-31 20:01:36 +00:00
David Baker
1a878fc77a Quote consistency 2018-10-31 19:56:34 +00:00
David Baker
23332e16c5 keyBackupStatus event now has crypto. prefix 2018-10-31 18:07:29 +00:00
Michael Telatynski
328d57f063 Remove temporary account_deactivation_preferences
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2018-10-29 22:57:33 +00:00
David Baker
8ac62f8c12 Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-29 16:20:45 +00:00
Aaron Raimist
5f3b03c85a
Fix a few no-useless-escape lint errors
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-26 23:00:54 -05: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
0bd1d6b778
Merge pull request #2250 from matrix-org/travis/permalink-routing
Support routing matrix.to links to joinable rooms
2018-10-26 14:23:30 -06:00
David Baker
de366fa0e8 Add cancel button to error stage 2018-10-26 17:55:59 +01:00
Travis Ralston
ef8c9246aa Maybe fix UserSettings? 2018-10-26 10:07:21 -06:00
David Baker
156ffd1334 Fix autoreplacement of ascii emoji
More slate API updates in code paths I didn't test

Fixes https://github.com/vector-im/riot-web/issues/7509
2018-10-26 17:01:44 +01:00
Travis Ralston
ea8a37ff21 Merge branch 'develop' into travis/permalink-routing 2018-10-26 09:19:58 -06:00
Travis Ralston
6c23dc0020
Merge pull request #2252 from jryans/dialog-padding
Repair DevTools button padding by centralizing styles
2018-10-26 09:11:18 -06:00
J. Ryan Stinnett
2dc335798d Repair DevTools button padding by centralizing styles
This moves the padding styles for dialog content to the .mx_Dialog rule. In
addition, it fixes vector-im/riot-web#7548 where the DevTools buttons had double
padding.

Signed-off-by: J. Ryan Stinnett <jryans@gmail.com>
2018-10-26 14:15:46 +02:00
Travis Ralston
aaeb6e4978 Use about:blank instead 2018-10-25 15:59:42 -06:00
Travis Ralston
749441b4d3 Merge branch 'develop' into travis/redirect-widgets 2018-10-25 15:57:26 -06:00
Travis Ralston
d58ff90ec1 Merge branch 'develop' into travis/permalink-routing 2018-10-25 15:23:33 -06:00
Travis Ralston
9cdb527163
Merge branch 'develop' into travis/pinned-room-list 2018-10-25 10:57:08 -06:00
David Baker
b59b8b7fca Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backups 2018-10-25 17:42:46 +01:00
David Baker
85bb8392c4
Merge pull request #2247 from matrix-org/dbkr/fix_emoji_replacement
Fix emoji replacement in composer
2018-10-25 16:23:13 +01:00
David Baker
5e81e5b8b8 Fix variable scope 2018-10-25 15:07:19 +01:00
David Baker
401f6333ed Do...while loops are a thing 2018-10-25 14:54:32 +01:00
Travis Ralston
6ee495b912 Merge remote-tracking branch 'origin/develop' into travis/permalink-routing 2018-10-24 16:36:39 -06:00
Maxwell Kepler
5d35ce9449 Changed letter case. 2018-10-24 19:06:48 +01:00
Will Hunt
def0b2d8fb Add developertools option to UserSettings 2018-10-24 18:20:16 +01:00
Will Hunt
8118a9c71a Wall devtools button behind a setting 2018-10-24 18:15:35 +01:00
Will Hunt
44a41b589d Comma on strings and styling button 2018-10-24 17:50:27 +01:00
Will Hunt
79d467c551 Add button to open devtools in roomsettings 2018-10-24 17:36:58 +01:00
David Baker
78d8d22457 Fix emoji replacement in composer
* Re-scan the slate document tree on each emoji replacement since
   doing a replacement will invalidate all the offsets we have.
 * Reset the emoji regex each time we use it.

Fixes https://github.com/vector-im/riot-web/issues/7550
2018-10-24 16:46:06 +01:00
Travis Ralston
d7367a7cfd Merge branch 'develop' into travis/permalink-routing 2018-10-24 09:12:14 -06:00
Aaron Raimist
fe901142aa
Split long string over two lines
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-23 17:20:57 -05:00
Aaron Raimist
92bfb42784
Use one string instead of two
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-23 13:11:36 -05:00
Aaron Raimist
a6c78ace4f
Add warning when administrator leaves community
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-23 12:25:12 -05:00
David Baker
5206719663
Merge pull request #2223 from matrix-org/travis/fix-group-members
Show the group member list again
2018-10-23 10:18:06 +01:00
Travis Ralston
8ff1da11ed
Merge pull request #2237 from aaronraimist/camel-case
lint: make colorScheme camel case
2018-10-22 22:44: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
Aaron Raimist
4b3c865959
lint: make colorScheme camel case
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-22 23:07:47 -05:00
Aaron Raimist
41bd6e4366
Change leave room button text, OK -> Leave
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2018-10-22 20:55:24 -05:00
Travis Ralston
78f527cf95 Remove unused classes 2018-10-22 15:14:21 -06:00
Maxwell Kepler
5e9db3647a Fixed minor typo in comment 2018-10-22 21:03:39 +01:00
Maxwell Kepler
54f9231582 Added badge to GIFs (https://github.com/vector-im/riot-web/issues/7344) 2018-10-22 20:57:58 +01:00
David Baker
9976c4eba5
Merge pull request #2231 from matrix-org/travis/dialog-buttons
Move all dialog buttons to the right and fix their order
2018-10-22 15:00:35 +01: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
7ef08314b8 Redirect widgets to another location before deleting them
This is so that shutdown hooks in the widget can correctly fire, such as Jitsi's hook to abandon its hold on the webcam.

Fixes https://github.com/vector-im/riot-web/issues/7351
2018-10-19 16:23:19 -06:00
Travis Ralston
c75beb0196 Revert "Redirect widgets to another location before deleting them"
This reverts commit 275d88dd4f.
2018-10-19 16:22:48 -06:00
Travis Ralston
275d88dd4f Redirect widgets to another location before deleting them
This is so that shutdown hooks in the widget can correctly fire, such as Jitsi's hook to abandon its hold on the webcam.

Fixes https://github.com/vector-im/riot-web/issues/7351
2018-10-19 16:22:20 -06:00
Travis Ralston
9582c1e65a Move all dialog buttons to the right and fix their order
Fixes https://github.com/vector-im/riot-web/issues/5689

Some dialogs had their own CSS that prevented the buttons from being placed in the right spot. This has been fixed by using a generic standard for the buttons. The only strange dialog that needed more CSS was the devtools dialog due to the header.

Not all dialogs have been checked - I spot-checked about half of them and verified the CSS manually on an established account. It's hard to get at all the dialogs without convoluted testing.
2018-10-19 15:33:23 -06:00
Travis Ralston
49efefa630 Fix an error where React doesn't like value=null on a select
This only happens when there are no canonical aliases for a room.
2018-10-19 14:18:05 -06: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
71a97170d7 Linting 2018-10-18 17:06:47 -06:00
Travis Ralston
0030ba7015 Support .well-known discovery
Fixes https://github.com/vector-im/riot-web/issues/7253
2018-10-18 16:42:54 -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
fbadb588e1
Merge pull request #2221 from matrix-org/travis/tos-register
Support m.login.terms during registration
2018-10-16 09:47:48 -06:00
Travis Ralston
06764c2bab
Merge pull request #2220 from matrix-org/travis/peek-invite-nag
Don't show the invite nag bar when peeking
2018-10-16 09:30:09 -06:00
Travis Ralston
b929c36222 Documentation++ 2018-10-16 09:19:36 -06:00
Travis Ralston
d87ab8aac0 Support m.login.terms during registration
Fixes https://github.com/vector-im/riot-web/issues/7168
Requires https://github.com/matrix-org/synapse/pull/4004
2018-10-15 16:39:59 -06:00
Travis Ralston
6323d78b0c Move tinter init to MatrixChat
This is a much better place for it to live
2018-10-15 14:41:00 -06:00
Travis Ralston
2d62fda862 Don't show the invite nag bar when peeking 2018-10-15 14:35:36 -06:00