Commit graph

7554 commits

Author SHA1 Message Date
Jorik Schellekens
2e325191bc Merge remote-tracking branch 'nv/develop' into joriks/irc-ui 2020-05-19 17:18:36 +01:00
Michael Telatynski
e7d37228f2
Merge pull request #4603 from matrix-org/t3chguy/add_room_tooltip
Label the create room button better than "Add room"
2020-05-19 11:57:59 +01:00
Travis Ralston
38920e7f30 Merge branch 'develop' into travis/room-list-2 2020-05-18 23:23:59 -06:00
Travis Ralston
9aff2e836e
Merge pull request #4593 from matrix-org/travis/dispatcher-types
Convert the dispatcher to TypeScript
2020-05-18 23:22:32 -06:00
Jorik Schellekens
4deeef5fca Remove ability to remove avatars 2020-05-18 16:57:00 +01:00
Jorik Schellekens
17f535e5f8 Fix review problems
- removed superfluous position and classes
- fixed compact view
- fixed event list summary avatar and text overlap
- fixed a problem where the mention list refuses to load.
2020-05-18 16:37:10 +01:00
Michael Telatynski
1eea203db6
Merge pull request #4599 from matrix-org/t3chguy/progress_colour
Consolidate password/passphrase fields into a component & add dynamic colour to progress
2020-05-18 11:08:08 +01:00
Michael Telatynski
a864643d98 Label the create room button something better than "Add room"
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-18 10:37:02 +01:00
Travis Ralston
798e7a1f86 Merge branch 'develop' into travis/dispatcher-types 2020-05-15 09:56:02 -06:00
David Baker
07eed94b35
Merge pull request #4600 from matrix-org/dbkr/fix_email_sent_to_blank
Make email auth component fail better if server claims email isn't validated
2020-05-15 14:33:20 +01:00
David Baker
523067e5f9 Make email auth component fail better if server claims email isn't validated
https://github.com/matrix-org/synapse/issues/7512 means that (at least)
sometimes after clicking on the email validation link and being redirected
to riot, the server will claim the email identity auth stage is still incomplete.

This meant that we displayed the email identity UIA component but with an empty
email address, because we don't know that in the new session. Work around this by
assuming that if the email UIA component is being displayed but we don't have an
email address input, the link has been clicked and we're just waiting for the poll.

Also don't fire off an initial register request if we're already mid-UI-auth, because
that's confusing and unnecessary.

Also also remove unused requestingToken state.

Fixes https://github.com/vector-im/riot-web/issues/13434
2020-05-15 13:32:12 +01:00
Michael Telatynski
5844bee8f2 Merge branches 'develop' and 't3chguy/leaks' of github.com:matrix-org/matrix-react-sdk into t3chguy/leaks
 Conflicts:
	src/components/views/avatars/BaseAvatar.js
2020-05-15 00:16:41 +01:00
Michael Telatynski
89c16603fc Remove the now inlined ZxcvbnProgressBar.tsx
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 21:06:18 +01:00
Michael Telatynski
865495dd69 replace zxcvbn field in CreateSecretStorageDialog with PassphraseField
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 20:50:22 +01:00
Travis Ralston
6cb1efc1a4 Use the new TS dispatcher 2020-05-14 13:45:17 -06:00
Travis Ralston
2b4c19e9ba Merge branch 'travis/dispatcher-types' into travis/room-list-2 2020-05-14 13:40:37 -06:00
Michael Telatynski
cf3c4d9e5f Extract Password field from Registration into a reusable component
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 20:20:36 +01:00
Travis Ralston
f8cbadaba5 Clean up comments in skeleton components 2020-05-14 12:53:00 -06:00
Travis Ralston
c37352679d Fix bold rooms not bolding 2020-05-14 12:46:16 -06:00
Travis Ralston
e8c33161ec Initial work on badges
This doesn't work for bold rooms
2020-05-14 12:46:16 -06:00
Travis Ralston
6bdcbd0f3d Support switching rooms 2020-05-14 12:46:16 -06:00
Travis Ralston
715dd7e1b6 Prepare tooltip for collapsed support 2020-05-14 12:46:16 -06:00
Travis Ralston
9f0810240f Clean up imports and other minor lints 2020-05-14 12:46:16 -06:00
Travis Ralston
cb3d17ee28 Bare minimum for rendering a room list
This is non-interactive and missing most features users will expect to have
2020-05-14 12:46:16 -06:00
Travis Ralston
ea34bb3022 Make component index happy 2020-05-14 12:46:16 -06:00
Travis Ralston
5dda7f02cf Early handling of dispatched events
A possible approach to handling the various triggers for recategorizing rooms.
2020-05-14 12:46:16 -06:00
Travis Ralston
09b7f39df8 Simple rendering of the room list for visual aid
This is largely meant to prove the algorithm works and nothing more.
2020-05-14 12:45:35 -06:00
Travis Ralston
861268d39f Invent an AsyncStore and use it for room lists
This is to get around the problem of a slow dispatch loop. Instead of slowing the whole app down to deal with room lists, we'll just raise events to say we're ready.

Based upon the EventEmitter class.
2020-05-14 12:44:29 -06:00
Travis Ralston
08419d195e Initial breakout for room list rewrite
This does a number of things (sorry):
* Estimates the type changes needed to the dispatcher (later to be replaced by https://github.com/matrix-org/matrix-react-sdk/pull/4593)
* Sets up the stack for a whole new room list store, and later components for usage.
* Create a proxy class to ensure the app still functions as expected when the various stores are enabled/disabled
* Demonstrates a possible structure for algorithms
2020-05-14 12:44:29 -06:00
Michael Telatynski
8dd561d28a Convert Validation to TypeScript
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 19:33:17 +01:00
Michael Telatynski
93a608a644 flatten out passwordSafe as it was a derived state value
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 19:31:40 +01:00
Michael Telatynski
562c5aa9c5
Merge pull request #4588 from matrix-org/t3chguy/kbd1
Add new keyboard shortcuts for jump to unread and upload file
2020-05-14 19:29:09 +01:00
Michael Telatynski
09a4af49f3 Consolidate zxcvbn progress bars into a component and add dynamic colour
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 18:49:55 +01:00
Michael Telatynski
239197a3cb
Merge pull request #4394 from matrix-org/t3chguy/qrcode
wrap node-qrcode in a React FC and use it for ShareDialog
2020-05-14 17:31:26 +01:00
Michael Telatynski
dd747a9a09
Merge pull request #4585 from matrix-org/t3chguy/sso_hash
Pass screenAfterLogin through SSO in the callback url
2020-05-14 17:30:31 +01:00
Travis Ralston
cae28b48d6 Remove debugging that causes email addresses to load forever
This was left in by accident for https://github.com/matrix-org/matrix-react-sdk/pull/4557
2020-05-14 09:43:34 -06:00
Travis Ralston
acc17e6026
Merge pull request #4584 from matrix-org/travis/deactivate-fix
Acquire a new session before enacting deactivation
2020-05-14 07:52:17 -06:00
Michael Telatynski
4c7d703275 Reuse QRCode for VerificationQRCode and specify widths
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 11:20:27 +01:00
Michael Telatynski
1ba19e78f8 Merge branches 'develop' and 't3chguy/qrcode' of github.com:matrix-org/matrix-react-sdk into t3chguy/qrcode
 Conflicts:
	package.json
2020-05-14 10:50:42 +01:00
Bruno Windels
4a8e642400
Merge pull request #4581 from matrix-org/bwindels/remove-asym-4s
Remove UI for upgrading 4S to symmetric encryption
2020-05-14 08:10:39 +00:00
Travis Ralston
e4835c4b03 Demonstrate dis.fire() with view_user_settings
Like a5f3318f3b, this proves that the new dispatcher conversion works for fire-and-forget style dispatches too. This is another obvious-if-broken and generally safe conversion to make.

Other actions which can be dispatched this way have been excluded for reasons mentioned in the Action enum's comments.
2020-05-13 21:08:08 -06:00
Travis Ralston
a5f3318f3b Convert view_user dispatch to prove the conversion works
This is a relatively obvious dispatch action that doesn't require a lot of complicated type definitions, so should be a good candidate to prove the thing works. If for some reason the thing stops working, we've done something wrong.

This also adds a bit of generic types to the dispatch call so we don't confuse the tsx parser by using `dis.dispatch(<ViewUserPayload>{...})` as it thinks that's supposed to be a component. We still get type safety, and the thing remains happy with the generics approach.
2020-05-13 21:07:50 -06:00
Travis Ralston
90a898d03f Move dispatcher into a subdirectory
We're expecting to have a whole bunch of types for the dispatched payloads, so pull the thing into a directory we can throw them in.
2020-05-13 21:07:50 -06:00
Travis Ralston
9dd93f14ba
Merge pull request #4555 from matrix-org/travis/sso-xsigning
Add copy to SSO prompts during cross-signing setup
2020-05-13 15:33:09 -06:00
Jorik Schellekens
fc6e5227ac FIx roomsublist heights.
- also fiddles the font size numbers
2020-05-13 22:24:22 +01:00
David Baker
50107ebe47 Re-fix OpenID requests from widgets
https://github.com/matrix-org/matrix-react-sdk/pull/4591 reverted
https://github.com/matrix-org/matrix-react-sdk/pull/4459. We need
to pass both URLs as we need both the wURL (for the widget's 'identity'
ie. OpenID) and the URL that's actually in the iframe (for the
messaging).
2020-05-13 16:10:40 +01:00
Jorik Schellekens
20ec900405 Set font range 2020-05-13 15:36:53 +01:00
Jorik Schellekens
fea219915f fix code regeression 2020-05-13 15:26:11 +01:00
Jorik Schellekens
3f04f5163a Implement more nitpicks
- fix avatar inital aligment
- right align names
- set flair height to avatar's
- fix conditions for resizing to be more stable
2020-05-13 14:04:46 +01:00
David Baker
ef2678db93
Merge pull request #4591 from matrix-org/dbkr/fix_persistent_widgets_desktop
Fix persistent widgets on desktop / http
2020-05-13 12:47:54 +01:00
David Baker
92824411e8 Fix persistent widgets on desktop / http
WidgetMessaging needs the URL of the widget that gets rendered into
the iframe because that's where the postmessages will be coming from.

Fixes https://github.com/vector-im/riot-web/issues/13369
2020-05-13 12:33:10 +01:00
Michael Telatynski
77e32977dc
Merge pull request #4579 from matrix-org/t3chguy/create_room_public
Default to public room when creating room from room directory
2020-05-13 10:50:38 +01:00
Michael Telatynski
d11923e2e3 Add new keyboard shortcuts for jump to unread and upload file
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-13 10:38:32 +01:00
Michael Telatynski
d63008f9c5
Merge pull request #4576 from matrix-org/t3chguy/kosovo2.0
Replace png flags and add Kosovo to country code dropdown
2020-05-13 09:58:10 +01:00
Michael Telatynski
d8b6b7b976 Pass screenAfterLogin through SSO in the callback url
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-13 06:24:04 +01:00
Jorik Schellekens
5029c3f143 Implement IRC draggable display name width 2020-05-13 02:16:43 +01:00
Travis Ralston
6d90a9d1a3 Appease the linter 2020-05-12 17:20:26 -06:00
Travis Ralston
c0632d0195 Acquire a new session before enacting deactivation
Fixes https://github.com/vector-im/riot-web/issues/13645

Every time the checkbox value changes we acquire a new session now. This avoids us asking the server to change its direction partway through the request.

This causes a bit of UI jerk as the dialog goes from auth -> loading -> auth, however it's better than the alternative of reworking the entire UIA structure to support the `authData` dict changing. Originally this commit consisted of a `disabled` flag on the `InteractiveAuth` component which carried through to the stage's component, however it turns out that stack doesn't respect changes to the `authData` prop, which means the session ID we eventually send down is wrong (`erase: false` instead of the one with `erase: true`). Therefore, we do some logic to ensure we remount `InteractiveAuth` completely.

Further work in this area is described in https://github.com/vector-im/riot-web/issues/13646
2020-05-12 17:17:17 -06:00
David Baker
03b10e7226 Fix sign in / up links on previewed rooms
They errored because the out-of-band data was assumed to be non-null,
but that's only present for 3rd party invites.
2020-05-12 15:24:12 +01:00
David Baker
8b8eb7d3c0
Merge pull request #4580 from matrix-org/dbkr/dont_npe_if_no_device
Avoid soft crash if unknown device in verification
2020-05-12 14:36:54 +01:00
Bruno Windels
8a1b381635 remove UI for upgrading 4S to sym enc 2020-05-12 14:29:11 +02:00
David Baker
ae2645b69b Provide separate translatable for case where we have no device 2020-05-12 12:42:16 +01:00
David Baker
3c5c7f56f3 Adjust comment 2020-05-12 11:14:05 +01:00
David Baker
5c0920da42 Avoid soft crash if unknown device in verification
Rageshakes from the wild indicate that device was null here which
implies that we somehow did not know about the device when verifiying
it? Log and null-check to avoid a soft crash.
2020-05-12 11:05:30 +01:00
Michael Telatynski
7fe40a0470 Default to public room when creating room from room directory
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-12 10:55:46 +01:00
Michael Telatynski
b95d533c4a
Merge pull request #4573 from matrix-org/t3chguy/remove_recent_self
Don't try and redact redactions for "Remove recent messages"
2020-05-12 09:43:23 +01:00
Michael Telatynski
aacc582b52
Merge pull request #4571 from matrix-org/t3chguy/view_source_edits
View Source should target the replacing event rather than the root one
2020-05-12 09:43:02 +01:00
David Baker
03fce86699
Merge pull request #4569 from matrix-org/dbkr/key_backup_restore_reset_recovery
Fix passphrase reset in key backup restore dialog
2020-05-12 09:22:08 +01:00
Michael Telatynski
3bb800bb81 Replace png flags with use of Twemoji
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-11 22:04:18 +01:00
Travis Ralston
58a5b7f154
Merge pull request #4556 from matrix-org/travis/fix-reset
Ensure key backup gets dealt with correctly during secret storage reset
2020-05-11 14:30:12 -06:00
Michael Telatynski
c0061e2f2a Don't try and redact redactions for "Remove recent messages"
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-11 16:39:14 +01:00
Michael Telatynski
0e8bd59d2f View Source should target the replacing event rather than the root one
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-11 15:43:34 +01:00
David Baker
6486c74909 Fix passphrase reset in key backup restore dialog
We prompt to restore the key backup when bootstrapping if it's not
trusted, but the 'set up new recovery options' in this dialog just
sets up a new key backup which just goes back to trying to access
SSSS if cross-signing is enabled. This makes it reset the SSSS
passphase instead.

Fixes https://github.com/vector-im/riot-web/issues/13578
2020-05-11 14:21:59 +01:00
Michael Telatynski
67844d9e1d
Merge pull request #4564 from matrix-org/t3chguy/redaction_redesign
Bring back UnknownBody for UISIs
2020-05-11 10:10:59 +01:00
Michael Telatynski
0da8ef6a1e
Merge pull request #4560 from matrix-org/t3chguy/redact_file
Close ImageView when redacting
2020-05-11 10:10:25 +01:00
Jorik Schellekens
9b7c63a711 Duplicated names 2020-05-08 20:53:32 +01:00
Michael Telatynski
6ff093f5a3 Bring back UnknownBody for UISIs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-08 19:15:59 +01:00
Michael Telatynski
347e3a0dd0
Merge pull request #4484 from matrix-org/t3chguy/redaction_redesign
Redesign redactions
2020-05-08 17:40:04 +01:00
Michael Telatynski
5402839f30 Close ImageView when
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-08 00:15:48 +01:00
Jorik Schellekens
33a5b5142d Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider 2020-05-07 18:01:20 +01:00
Travis Ralston
2aa7a6087c
Merge pull request #4547 from matrix-org/travis/fix-user-panel
Don't try to reload profile information when closing the user panel
2020-05-07 10:21:17 -06:00
Michael Telatynski
dc65c87752 Merge branches 'develop' and 't3chguy/redaction_redesign' of github.com:matrix-org/matrix-react-sdk into t3chguy/redaction_redesign 2020-05-07 17:10:21 +01:00
Jorik Schellekens
bc5fc57dd6 Lint
This is why we shouldn't rely on regex
2020-05-07 14:22:15 +01:00
Jorik Schellekens
771ae5e18f Fix encryption badge layouts and replies.
Begin removing dependence on slider.
Move settings to labs.
Username disambiguation.
2020-05-07 14:04:56 +01:00
Jorik Schellekens
5568e6488d Fix encryption badge layout 2020-05-07 14:04:34 +01:00
Jorik Schellekens
07c2d0cb02 Composer reply previews have group layout 2020-05-07 14:04:34 +01:00
Jorik Schellekens
0af265bf93 Fix replies 2020-05-07 14:04:34 +01:00
Jorik Schellekens
027826c2e1 Replies have the same layout as messages 2020-05-07 14:04:33 +01:00
Jorik Schellekens
10c8d253c8 Create irc layout 2020-05-07 14:04:33 +01:00
Zoe
1abd729ce0
Merge pull request #4540 from matrix-org/foldleft/11395-reg-error
Don't erase password confirm on registration error
2020-05-07 10:42:21 +01:00
Michael Telatynski
f0085a9feb Merge branches 'develop' and 't3chguy/redaction_redesign' of github.com:matrix-org/matrix-react-sdk into t3chguy/redaction_redesign 2020-05-07 09:56:21 +01:00
Travis Ralston
9ae812c346 Add a loading state for email addresses/phone numbers in settings
Fixes https://github.com/vector-im/riot-web/issues/13432
2020-05-06 15:17:55 -06:00
Travis Ralston
e5da81b6ba Ensure key backup gets dealt with correctly during secret storage reset
Fixes https://github.com/vector-im/riot-web/issues/13562

We only initialize a new key backup if the user requested one. If they've requested new keys but have not asked for keys to be backed up, we simply delete the now-invalid backup.

This also adds some logging to identify in rageshakes when someone resets their cross-signing, and when their key backup is being deleted.
2020-05-06 14:42:03 -06:00
Travis Ralston
b8fd50c5e3 Appease the linter 2020-05-06 14:27:32 -06:00
Travis Ralston
d31a0199bc Add default dialog aesthetics to avoid empty SSO dialogs in future 2020-05-06 14:24:16 -06:00
Michael Telatynski
62bbf15efe
Merge pull request #4497 from matrix-org/t3chguy/invite_copy
Update Invite Dialog copy to include email addresses
2020-05-06 18:16:36 +01:00
Jorik Schellekens
bab7d5f461 Some lints 2020-05-06 17:25:54 +01:00
Zoe
14516d3e7e
Merge pull request #4552 from matrix-org/foldleft/fix-sublist-crash
Fix a crash where a name could unexpectedly be an empty list
2020-05-06 13:52:50 +01:00
Zoe
781cbea744 Fix a crash where a name could unexpectedly be an empty list 2020-05-05 15:39:37 +01:00
Travis Ralston
9a14417a03 Don't try to reload profile information when closing the user panel
Fixes https://github.com/vector-im/riot-web/issues/13479

This looks to have been caused by something to do with the app load order, though where is a mystery. The view change seems to fire for the same page type despite a dispatch that says to change the view type.

Instead of debugging it too much further, we'll just patch around it.

This commit also makes the settings link use a more safe approach to viewing the user info - not going through the dispatcher means we are at the mercy of browser behaviour when we already have a loop which deals with this.
2020-05-04 15:41:26 -06:00