Commit graph

218 commits

Author SHA1 Message Date
Michael Telatynski
9518e4d415 Guard all isSpaceRoom calls behind the labs flag 2021-05-05 23:59:07 +01:00
Michael Telatynski
036bc50b5d Disable groups routes when spaces is enabled to avoid confusion 2021-04-29 12:29:22 +01:00
Michael Telatynski
46d35411b4 Add animated mx_BetaDot atop the legacy Communities button 2021-04-27 17:01:22 +01:00
Michael Telatynski
c953b1b6bb Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into pr/only-member-warning 2021-04-19 12:01:32 +01:00
Michael Telatynski
71d5f03a25 delint 2021-04-19 11:36:40 +01:00
Aaron Raimist
9c250171b4
Use new copy
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-04-14 18:27:41 -05:00
Travis Ralston
1e551585c0 Fix copy/paste fail 2021-04-08 09:33:39 -06:00
Travis Ralston
d89bbe2167 Move check to MatrixChat 2021-04-08 09:20:14 -06:00
Aaron Raimist
0af52c931e
Merge branch 'develop' into only-member-warning
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-03-31 23:15:09 -05:00
Michael Telatynski
83612dd4ad
Merge pull request #5792 from matrix-org/t3chguy/spaces4.12
Fixing spaces papercuts
2021-03-26 15:01:31 +00:00
J. Ryan Stinnett
fd59a66523 Tweak cross-signing copy
This makes some Design-approved copy tweaks to the recent cross-signing flow
changes.
2021-03-26 11:13:39 +00:00
Michael Telatynski
8c6d92cc99 Move space room discovery & management into the space room view 2021-03-26 09:54:15 +00:00
Michael Telatynski
56dbd5f628 Remove unused autoJoin prop and move viaServers logic into RVS
this fixes the issue where autoJoining ignored viaServers
2021-03-24 16:45:53 +00:00
Travis Ralston
3caf07be87
Merge pull request #5658 from matrix-org/travis/welcome-login
Add an optional config option to make the welcome page the login page
2021-03-19 09:12:35 -06:00
Travis Ralston
6ce0c17455
Merge pull request #5774 from matrix-org/travis/js-sdk-imports
Convert a bunch more js-sdk imports to absolute paths
2021-03-19 07:23:45 -06:00
Travis Ralston
1d43c8b791 Remove forgotten rooms from the room list once forgotten
Fixes https://github.com/vector-im/element-web/issues/15559

This isn't exactly perfect as an implementation: if the user refreshes immediately after forgetting then there is a good chance the room re-appears because of the sync accumulator. At the very least this change makes it so in *most* cases the room goes away, which is probably good enough until https://github.com/vector-im/element-web/issues/14038 can be implemented properly.
2021-03-18 23:28:59 -06:00
Travis Ralston
1d9d0cd7be Convert a bunch more js-sdk imports to absolute paths
Turns out a lot of the typescript warnings about improper warnings were correct. TypeScript appears to be pulling in two copies of the js-sdk when we do this, which can lead to type conflicts (or worse: the wrong code entirely). We fix this at the webpack level by explicitly importing from `src`, but some alternative build structures have broken tests because of this - jest ends up pulling in the "wrong" js-sdk, breaking things.
2021-03-18 20:50:34 -06:00
Travis Ralston
9b6d9b3bf1 years are difficult 2021-03-12 15:02:39 -07:00
Travis Ralston
75cfd9a8f5 Redirect to login properly 2021-03-12 15:01:05 -07:00
Travis Ralston
c8d7b0e1b9 Collapse copyright 2021-03-12 14:56:47 -07:00
Travis Ralston
25485edb3f Merge branch 'develop' into travis/welcome-login 2021-03-12 14:55:40 -07:00
Šimon Brandner
02051a39ff
Hangup all calls on logout
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-03-12 13:55:14 +01:00
Travis Ralston
c230a75eda Flag structural components as replaceable 2021-03-08 20:23:24 -07:00
Michael Telatynski
faf7a4b8bc Initial Space room directory view 2021-03-02 14:14:50 +00:00
Michael Telatynski
ab4b7b73ea Add a basic Space Settings view 2021-03-02 13:26:00 +00:00
Michael Telatynski
dfd0aaffe3 Iterate copy for some global warning prompts for spaces 2021-03-02 09:56:43 +00:00
Michael Telatynski
c8fe3f7676 Pass room creation opts for new rooms into RoomView 2021-03-01 17:54:53 +00:00
Travis Ralston
21b9ab9d85 Add an optional config option to make the welcome page the login page
This is commonly requested by deployments with custom setups or those using SSO. Instead of having them all ship the same welcome.html with redirect code in it, we can offer a built-in redirect.

Note that this doesn't actually redirect and instead just replaces the view. This is to make the change less invasive as otherwise it involves changing the routing layers.
2021-02-16 15:18:31 -07:00
J. Ryan Stinnett
811ae9ba82
Merge pull request #5616 from dangwynne/develop
Close current modal when session is logged out
2021-02-08 12:56:00 +00:00
Michael Telatynski
1d1a3e72ca Improve SSO login start screen and 3pid invite handling somewhat 2021-02-05 17:18:13 +00:00
dangwynne
12f6272ab4 implement qa feedback for closing modals when logging out 2021-02-05 09:24:12 +00:00
dangwynne
88aa2a6f70 fix whitespace change. Signed-off-by: Dan Gwynne dangwynne1@gmail.com 2021-02-04 09:33:21 +00:00
dangwynne
c1823e2e5a
Close current modal when session is logged out 2021-02-03 22:31:28 +00:00
Michael Telatynski
5d86c2f8e0 Better errors for SSO failures 2021-02-01 16:42:58 +00:00
Michael Telatynski
62712159f6
Merge pull request #5578 from matrix-org/t3chguy/sso_fixes
Improve SSO auth flow
2021-01-29 13:28:53 +00:00
J. Ryan Stinnett
2996ceca52 Add optional mobile guide toast
This adds an optional toast which Element deployments can enable to nudge users
towards the mobile apps once they are inside the app.

Part of https://github.com/vector-im/element-web/issues/16283
2021-01-28 17:21:36 +00:00
Michael Telatynski
fd4109b8ad fix tests by reverting if removal 2021-01-28 11:00:04 +00:00
Michael Telatynski
1761a4ec80 Improve SSO UIA
Fixes Fallback UIA postmessage interface
Auto-closes SSO UIA tab when the user has completed the flow within it
Error for when auth stage is restarted because it failed
2021-01-28 10:45:29 +00:00
Michael Telatynski
e6673bca1b Improve SSO auth flow
Use replaceState instead of a redirect to strip the loginToken
Put user into the same post-auth flows of E2ESetup
Skip UIA prompt in this post-auth flow, happy path is a server grace period
2021-01-27 12:50:12 +00:00
David Baker
452fbb076b Add a dialpad UI for PSTN lookup
Queries the homeserver for PSTN protocol support, and if found,
the add-room button on the DM rooms list section opens a context
menu instead with a 'dial pad' option as well as the current 'start chat'
dialog. Entering a number into this and pressing dial performs
a thirdparty user query for the given string and starts a DM with that
user.
2020-12-23 19:02:01 +00:00
Michael Telatynski
e4b929c6f9 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/fix/15882 2020-12-03 11:42:47 +00:00
Michael Telatynski
f432d4e394 delint 2020-12-03 11:31:14 +00:00
Michael Telatynski
3223b00028 Jump to home page when leaving a room
so that you don't get thrown into a room you may be ignoring on purpose
2020-12-03 11:15:55 +00:00
Michael Telatynski
f7d7182dc9 Iterate Multi-SSO support 2020-11-24 12:09:11 +00:00
David Baker
37059a3fcd Move call listener out of MatrixChat
and into callhandler
2020-11-23 16:20:15 +00:00
Aaron Raimist
80c4d54ccc
Fix lint
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2020-11-18 13:54:54 -06:00
Michael Telatynski
11fb081f7a
Merge pull request #5423 from matrix-org/t3chguy/sso
Redirect user home from auth screens if they are already logged in
2020-11-18 15:49:47 +00:00
Michael Telatynski
5b32287f3d Redirect user home from auth screens if they are already logged in 2020-11-16 15:56:54 +00:00
Michael Telatynski
6a3049b90f Remove old unused views/paths 2020-11-16 15:40:56 +00:00
Michael Telatynski
d0513406ee Pass filter text when clicking explore/dm prompt 2020-11-11 17:04:09 +00:00
Aaron Raimist
29a81bbe85
Warn when you attempt to leave room that you are the only member of
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2020-11-10 15:05:25 -06:00
Michael Telatynski
5c9acc364f
Merge pull request #5383 from matrix-org/t3chguy/fix/15604
Tweaks to toasts and post-registration landing
2020-11-04 13:59:51 +00:00
Michael Telatynski
0c14de3017 defer some toasts 2020-11-02 17:25:48 +00:00
Michael Telatynski
4afa610ee1 Add variant of default home page for justRegistered 2020-11-02 17:24:47 +00:00
Michael Telatynski
f2d8069a24 Track UISIs as Countly Events 2020-11-02 10:28:57 +00:00
Michael Telatynski
171b3ede76 improve comments 2020-10-30 14:27:14 +00:00
Michael Telatynski
70fe26d163 Fix CountlyAnaltics NPE on MatrixClientPeg 2020-10-30 14:14:17 +00:00
Michael Telatynski
c3a355097d Initial Countly work 2020-10-29 15:57:16 +00:00
Arsh Sharma
e57f4fbd54 docs: fixed whitespace 2020-10-21 20:13:50 +05:30
Arsh Sharma
312d46917c docs: added comment explanation 2020-10-21 20:10:35 +05:30
Michael Telatynski
6b01b6ac6c Discard all mx_fadable legacy cruft which is totally useless
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-15 16:13:16 +01:00
J. Ryan Stinnett
f2b72efe39 Remove various remaining bits of ILAG flows
TypeScript helpfully pointed me towards this dead code, which has been floating
around unused for a while. If we want to bring back ILAG in the future, we can
always revive it from history.
2020-10-07 12:53:59 +01:00
J. Ryan Stinnett
1b255e42c3 Convert src/Lifecycle.ts to TypeScript 2020-10-07 12:53:59 +01:00
Travis Ralston
153e63b6aa Fix conditional on communities prototype room creation dialog 2020-10-01 13:44:16 -06:00
Michael Telatynski
4273de31ca
Merge pull request #5254 from resynth1943/only-refresh-title-if-needed
Only set title when it changes
2020-09-27 23:36:41 +01:00
resynth1943
b499fd06fc Formatting change 2020-09-27 21:20:41 +01:00
resynth1943
747f9fba38 Only set title when it changes
I've seen Chromium constantly refresh the title in the developer tools.
To be honest, I'm not sure if this means Chromium wastes CPU
time changing a title, but this may introduce better performance.

Signed-off-by: Resynth <resynth1943@tutanota.com>
2020-09-27 21:14:43 +01:00
David Baker
585c7637d6
Merge pull request #5248 from matrix-org/dbkr/callhandler_to_ts
Convert CallHandler to typescript
2020-09-25 15:52:21 +01:00
David Baker
8962f7ae9e Convert CallHandler to typescript
and remove the old conference call stuff while we're at it: enough
time should have passed since those mistakes that we can move on.
The old conference call rooms will still appear for anyone whose
account dates back to that time, but they've presumably been appearing
in any other matrix client they used too.
2020-09-24 16:16:20 +01:00
Travis Ralston
d4c14b3399 Don't import things we don't use 2020-09-18 16:11:18 -06:00
Travis Ralston
26b18811ce Add some permission checks to the communities v2 prototype
Prototype behaviour:
* If you can't create a room in the community, say so.
  * The UX for this could probably be improved, but for now the intention is to not break muscle memory by hiding the create room option.
* If you can't change settings in the community, or can't invite people, don't show those respective options.
  * Breaking muscle memory here is moderately okay.
2020-09-18 16:04:19 -06:00
J. Ryan Stinnett
ec4bf0c057
Merge pull request #5219 from matrix-org/jryans/defer-cross-signing-setup
Defer encryption setup until first E2EE room
2020-09-18 10:28:33 +01:00
Michael Telatynski
1e9e0dee87
Merge pull request #5227 from matrix-org/t3chguy/fix/15188
UI Feature Flag: Registration, Password Reset, Deactivate
2020-09-17 13:40:06 +01:00
Michael Telatynski
4213a557f2 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/fix/15175
 Conflicts:
	src/settings/Settings.ts
	src/settings/UIFeature.ts
2020-09-17 11:58:26 +01:00
Michael Telatynski
d340dd58d1 UI Feature Flag: Registration, Password Reset, Deactivate 2020-09-17 11:55:10 +01:00
Michael Telatynski
4db9ac16b5
Merge pull request #5211 from matrix-org/t3chguy/fix/15173
Hide Analytics sections if piwik config is not provided
2020-09-16 16:34:55 +01:00
J. Ryan Stinnett
46f37fb969 Create cross-signing keys during authentication
With this change, Element now creates cross-signing keys during auth flows for
password login. For other auth flows like token / SSO, it will not happen until
a cross-signing / secret storage dialog flow as before.
2020-09-16 15:03:06 +01:00
J. Ryan Stinnett
7bd5e3fa31 Move security-related dialogs to a common directory 2020-09-16 15:03:06 +01:00
Michael Telatynski
dfabe79335 tidy up event handler 2020-09-16 13:44:24 +01:00
Michael Telatynski
d1070c05dd UI Feature Flag: Disable VoIP 2020-09-16 13:40:27 +01:00
Michael Telatynski
771ab82598 Hide Analytics sections if piwik config is not provided 2020-09-16 10:29:21 +01:00
Travis Ralston
246b802206 Merge branch 'develop' into travis/3pid-invites 2020-09-15 08:53:32 -06:00
Michael Telatynski
6b5426bddd Rename toolbar Notifier methods to prompt 2020-09-15 13:58:29 +01:00
Travis Ralston
803badba1b Show the user's 3PID invite after they've reloaded the page
This is a step towards https://github.com/vector-im/element-web/issues/13430

Since we've stored the invite, we can send the user to it once they reload the page or revisit Element. We currently only support one invite at a time, but this should be fine for most cases. 

We only do this restoration if the next screen isn't set to avoid breaking the user out of an expected flow.

As an added touch, this also ensures that the email address is pre-filled on the registration page if needed, just in case the user refreshes before getting to the submit button.
2020-09-11 20:20:33 -06:00
Travis Ralston
a5d7b24805 Add a note for why oob_data isn't threaded yet
See https://github.com/vector-im/element-web/issues/15157
2020-09-11 19:57:16 -06:00
Travis Ralston
b1cdf1bc9a Redirect to the registration page if there's a 3PID invite
Fixes https://github.com/vector-im/element-web/issues/15130
2020-09-11 19:53:52 -06:00
Travis Ralston
dc44b9ef59 Store and thread 3pid invite through the app
This doesn't do anything with the stored value (yet), but enables us to do something with it in a future commit.
2020-09-11 19:49:48 -06:00
Michael Telatynski
c26f3b8a97 Fix onNewScreen to use replace when going from roomId->roomAlias to prevent locking the user in place 2020-09-09 16:52:46 +01:00
Michael Telatynski
9ba33c7f80 Fix eslint ts override tsx matching and delint 2020-08-29 01:11:08 +01:00
Travis Ralston
82b015bd5f Rename components to match prior convention 2020-08-26 08:52:39 -06:00
Travis Ralston
7c1a9993e3 Add new create group dialog 2020-08-25 21:08:24 -06:00
J. Ryan Stinnett
8e0742b9fe
Merge pull request #5130 from matrix-org/jryans/secure-backup-required
Enforce Secure Backup completion when requested by HS
2020-08-24 17:32:58 +01:00
J. Ryan Stinnett
35f19d53a5 Mention issue for view state store 2020-08-24 16:44:47 +01:00
Travis Ralston
e0b8343088 Run all room leaving behaviour through a single function
Fixes https://github.com/vector-im/element-web/issues/14999
Fixes https://github.com/vector-im/element-web/issues/10380

We were failing to handle errors when `/part`ing a room, though the leave room button was fine. This runs both the button and command through the same function for handling, including the 'view next room' behaviour.
2020-08-19 19:21:40 -06:00
J. Ryan Stinnett
e56a61ec68 Invoke Secure Backup flow inside the app when requested by HS
If the Secure Backup required mode is set the client `.well-known` file, then
this will ensure that everyone already inside the app is required to complete
setup matching that policy.

Fixes https://github.com/vector-im/element-web/issues/14954
2020-08-19 16:23:27 +01:00
J. Ryan Stinnett
ce226ab534 Replace Riot with Element in docs and comments
This only covers the simple cases of references to issues and repos. More
complex areas, such as deployment scripts, will be handled separately.

Part of https://github.com/vector-im/element-web/issues/14864
2020-08-03 18:33:36 +01:00
Travis Ralston
4969cfe9de Appease the linter 2020-07-28 16:37:09 -06:00
Travis Ralston
1f7f40736b Fix imports for SettingLevel to point at new file 2020-07-28 11:53:43 -06:00
Travis Ralston
dd16ec070c Replace countRoomsWithNotif with a dedicated NotificationState
Fixes https://github.com/vector-im/riot-web/issues/14694

Instead of spending 10-1000ms in a function iterating over a whole lot of room events, we can use our cached state from the Notification State Store. 

This commit sets up a structure that could be applied to communities in the TagPanel too, as that could probably use a similar optimization.

This reduces the updateStatusIndicator() time to just 4ms on average.
2020-07-21 20:24:44 -06:00
Michael Telatynski
48aa203b95 Notify left panel of resizing when it is collapsed&expanded
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-16 06:05:53 +01:00