Commit graph

312 commits

Author SHA1 Message Date
Swapnil Raj
dac19cffce Convert EncryptionInfo to TS 2020-07-22 15:14:50 +05:30
Swapnil Raj
a4959f43d2 Convert GroupHeaderButtons to TS
Fix typo in SetRightPanelPhasePayload
2020-07-22 15:14:50 +05:30
Swapnil Raj
887d507772 Fix key to match SetRightPanelPhasePayload's key
member -> members
2020-07-22 15:14:50 +05:30
Swapnil Raj
23e4b67a69 Convert HeaderButton to TS 2020-07-22 15:14:50 +05:30
Swapnil Raj
2c8b5b49ed lint 2020-07-22 15:14:50 +05:30
Swapnil Raj
1d3635e1c8 Replaced string actions with their corresponding types 2020-07-22 15:14:50 +05:30
Swapnil Raj
344185a375 Translate right panel stuff to ts
Add actions for right panel
2020-07-22 15:14:50 +05:30
Michael Telatynski
7529bb8bc0 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-17 19:25:37 +01:00
Michael Telatynski
a402f7e38f Add tooltips to top right buttons
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-17 18:16:21 +01:00
Michael Telatynski
3305ca26f0 fix
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-17 12:07:54 +01:00
Michael Telatynski
5c8d12ab25 Null guard no e2ee for UserInfo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-17 10:49:57 +01:00
J. Ryan Stinnett
9085627a28 Use brand name from config in all strings 2020-07-10 19:57:01 +01:00
Michael Telatynski
63ad7640bf User Info default power levels for ban/kick/redact to 50 as per spec 2020-06-14 01:35:24 +01:00
Michael Telatynski
eb536ff2f7 Merge branches 'develop' and 't3chguy/e2eedefault' of github.com:matrix-org/matrix-react-sdk into t3chguy/e2eedefault
 Conflicts:
	src/components/views/dialogs/CreateRoomDialog.js
	src/components/views/dialogs/InviteDialog.js
	src/components/views/right_panel/UserInfo.js
	src/createRoom.js
2020-06-03 10:51:17 +01:00
Michael Telatynski
8848a2ea64 Merge branches 'develop' and 't3chguy/e2eedefault' of github.com:matrix-org/matrix-react-sdk into t3chguy/e2eedefault
 Conflicts:
	src/components/views/dialogs/InviteDialog.js
2020-06-01 21:42:31 +01:00
Michael Telatynski
2b432b0d82 Remove feature_cross_signing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-27 10:28:25 +01:00
Michael Telatynski
0016d8e744 Add e2ee_default_for_private_rooms to control default e2ee behaviour
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-19 11:36:44 +01: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
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
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
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
David Baker
719faed2ff Separate toasts for existing & new device verification
Separate device verification toasts into ones for devices that were
there when the app loaded and a separate toast for each device that
has appeared since.

Reverts part of https://github.com/matrix-org/matrix-react-sdk/pull/4506
(clicking a device from your own UserInfo now triggers the legacy
verification flow again).

Fixes https://github.com/vector-im/riot-web/issues/13422
Fixes https://github.com/vector-im/riot-web/issues/13418
2020-04-28 18:35:16 +01:00
David Baker
4dca66d140 No need for this if statement now 2020-04-28 09:43:24 +01:00
David Baker
ff1fd15e72 Use the New Session review dialog for verifying our own devices 2020-04-27 20:31:14 +01:00
Bruno Windels
b8dd68dda2 wait until cross-signing keys are fetched to show verify button 2020-04-21 18:36:15 +02:00
Travis Ralston
e72008d7f1 Fix end-to-end tests for end-to-end encryption verification
Fixes https://github.com/vector-im/riot-web/issues/13226

This isn't the fastest route, but it is a predictable route for the happy path we probably want to test. For example, Alice will already be staring at the DM and could easily accept the verification there, but we probably want to make sure that the toast is present and does the right thing. Similarly, neither of them need to verify that there's green shields everywhere, they should be implied, however an explicit check follows a real user's gaze.
2020-04-17 14:31:33 -06:00
Travis Ralston
b4e2daaf46 Convert cross-signing feature flag to setting
This is intended as a temporary measure until we're comfortable with removing the flag entirely.
2020-04-15 13:18:42 -06:00
Michael Telatynski
712e6e8c49 Fix sas verification buttons to match figma and remove useless inDialog prop from EncryptionPanel.js
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-07 19:03:12 +01:00
Michael Telatynski
fe401ce4da
Merge branch 'develop' into t3chguy/xsigning/fix_userinfo_e2eicon 2020-04-03 18:38:30 +01:00
Bruno Windels
cdbd4da0e4 adjust copy for self-verification in verification panel 2020-04-03 17:04:29 +02:00
Bruno Windels
030d594e67 for self-verif, mention which device, not user we're verifying in panel 2020-04-03 17:03:37 +02:00
Bruno Windels
2ee780caa2 pass isSelf flag to sas component 2020-04-02 18:28:14 +02:00
Bruno Windels
cc9c5cabb3 adapt encryption info to self-verification
- hide text when shown in a dialog
 - adapt "waiting for ... to accept" text to self-verif
2020-04-02 17:51:25 +02:00
Bruno Windels
081baa2359 set dialog title for self-verification
use request.isSelfVerification helper
2020-04-02 17:51:06 +02:00
Bruno Windels
1baaafe7b9 some comments to explain the mess 2020-04-02 16:44:42 +02:00
Bruno Windels
0307361fa2 more polish for self-verification 2020-04-02 16:42:39 +02:00
Bruno Windels
1f65cfb7f6 polish design and disable buttons after click 2020-04-02 13:44:19 +02:00
Bruno Windels
ccf6c9efdc fixup: more i18n 2020-04-02 13:44:19 +02:00
Bruno Windels
119fd2f519 fixup: these are actually on the verifier 2020-04-02 13:44:19 +02:00
Bruno Windels
00b1afe0fa first go at reciprocate UX 2020-04-02 13:44:19 +02:00
Bruno Windels
1353ddaa96 move qr code data generation to js-sdk 2020-04-02 13:41:19 +02:00
Travis Ralston
59a99bbad8
Merge pull request #4313 from matrix-org/travis/react-warnings/1-componentDidMount
Use componentDidMount in place of componentWillMount where possible
2020-04-01 11:13:04 -06:00
Michael Telatynski
0d8fd83e4d move aria-label and title so that it doesn't wrap the e2e icon
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-01 17:16:28 +01:00
Michael Telatynski
4a4a13ac75 Fix UserInfo e2e buttons to match Figma
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-01 12:21:18 +01:00
Travis Ralston
3f99332f4b Use componentDidMount in place of componentWillMount where possible
This fixes a common React warning we see. Most of these components should be using constructors instead, however componentDidMount is just as good (and doesn't require converting most of these).

Conversion to classes will be done in a later stage of React warning fixes.

For https://github.com/vector-im/riot-web/issues/12877
2020-03-31 14:14:17 -06:00
Michael Telatynski
eb901441cd Fix alignment of e2e icon in userinfo and expose full displayname in title
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-31 16:14:18 +01:00
J. Ryan Stinnett
37619dd127 Show red shield for users that become unverified
For any users that we previously verified but that are not unverified, we will
now mark them and rooms they are in with a red shield.

Fixes https://github.com/vector-im/riot-web/issues/12808
2020-03-28 00:21:18 +00:00
Michael Telatynski
cf4f595f79
Merge pull request #4289 from matrix-org/t3chguy/userInfo_avatar
blank out UserInfo avatar when changing between members
2020-03-27 10:21:53 +00:00
Michael Telatynski
a974f0fe46 blank out UserInfo avatar when changing between members
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-27 09:59:18 +00:00
Bruno Windels
a6fbb98252 only show close button when not in a dialog, which already has one 2020-03-26 17:02:32 +01:00
Bruno Windels
34b0c1b1e7 fix lint & other cleanup 2020-03-26 16:54:31 +01:00
Bruno Windels
9b54d15fcd add cancel button to verification panel 2020-03-26 16:53:46 +01:00
Michael Telatynski
7ca6a4b777 Iterate copy
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 23:00:46 +00:00
Michael Telatynski
be3167c870 always show Devices section
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 22:44:09 +00:00
Michael Telatynski
d098c91c30 Update cross-signing verification copy and fix i18n
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-25 22:38:11 +00:00
Bruno Windels
301b484371 ask request if method is supported rather than checking ourselves 2020-03-20 13:37:00 +01:00
Bruno Windels
ddbfe4e1fa enable 4S if needed when trying to verify 2020-03-10 16:31:40 +01:00
Bruno Windels
1f9bd55f3b revert to legacy user verification (over to_device) without xsign keys 2020-03-06 17:37:01 +01:00
Bruno Windels
7d051d6a1d await request promise inside encryption panel to show spinner 2020-03-05 17:44:35 +01:00
Bruno Windels
a5cd0a7d5f indent by 4 spaces 2020-03-05 11:09:45 +01:00
Bruno Windels
8a964dbff0 avoid ref by getting count in setter callback 2020-03-04 17:19:54 +01:00
Bruno Windels
afc7273d10 use pendingUpdateCount rather, so we don't show multiple spinners 2020-03-04 16:58:04 +01:00
Bruno Windels
29af8add5d only show verify button if user has uploaded cross-signing keys 2020-03-04 16:10:06 +01:00
Bruno Windels
400cb33247 put state declaration on top 2020-02-27 12:35:34 +01:00
Bruno Windels
50b64d8c55 add local echo for clicking 'start verification' button 2020-02-26 18:30:20 +01:00
Bruno Windels
682781aa48 better word smithing 2020-02-25 13:27:59 +01:00
Bruno Windels
2127edb7b8 show "Waiting for network" in EncryptionInfo after accepting in toast 2020-02-25 13:13:51 +01:00
J. Ryan Stinnett
64dc776e43
Merge pull request #4118 from matrix-org/jryans/hs-xsign-check
Check for cross-signing homeserver support
2020-02-24 16:58:57 +00:00
Bruno Windels
818156663a don't leak if show_sas never comes (or already came) 2020-02-24 17:00:55 +01:00
J. Ryan Stinnett
a71a234622 Check for cross-signing homeserver support
This checks the homeserver to ensure it supports cross-signing (via the versions
feature flag) before attempting bootstrapping or offering user verification.

Fixes https://github.com/vector-im/riot-web/issues/11863
2020-02-24 15:04:34 +00:00
Bruno Windels
2350d102e3 update phase when request prop changes 2020-02-24 13:39:20 +01:00
Bruno Windels
1b38827d92
Merge pull request #4077 from matrix-org/bwindels/filterverifmethods
Only show supported verification methods
2020-02-18 10:16:01 +00:00
Bruno Windels
93674ec781
Merge pull request #4070 from matrix-org/bwindels/oneverifrequest
Find existing requests when starting a new verification request
2020-02-14 15:33:27 +00:00
Bruno Windels
30718e7fde unsent could potentially also happen here
although should not happen in practice
2020-02-14 13:48:38 +01:00
Bruno Windels
a6c072ab42 only show supported verification methods
also an error message if none match
2020-02-14 13:48:18 +01:00
Zoe
37f1104f61 lint 2020-02-13 14:15:08 +00:00
Zoe
c3af1a2f95 don't be too magic about hiding tooltips 2020-02-13 13:47:39 +00:00
Bruno Windels
4b7cc12daa check if there is already a request in progress when clicking verify
and go straight there instead of first showing EncryptionInfo panel
2020-02-13 14:34:44 +01:00
Bruno Windels
68197a1d18 also update phase after starting request
as it might now be a request that is already ongoing
2020-02-13 14:33:35 +01:00
Bruno Windels
d49fbf25f7 check if verifier sasEvent was already set on mount
this allow the verification panel to fully recover
the UI state from an on-going verification request
2020-02-13 14:32:33 +01:00
Bruno Windels
ec708b5e9b
Merge pull request #4058 from matrix-org/bwindels/dontpassmethodstoverify
remove methods arg to requestVerification(DM)
2020-02-13 08:51:36 +00:00
Zoe
e1608509d0 Disable 'start' button after clicking in VerificationPanel 2020-02-12 13:53:16 +00:00
Bruno Windels
33f3a61b94 remove unused imports 2020-02-11 18:23:05 +01:00
Bruno Windels
a1844e44f2 remove methods arg to requestVerification(DM)
as it's easy to have this argument be out of sync from all
the places this is called from the js-sdk. There is also little point,
as you can already specify the methods a consumer of the js-sdk
wants to provide through the verificationMethods option when creating
the client object.
2020-02-11 18:22:48 +01:00
Bruno Windels
7a026eb15d
Merge pull request #4043 from matrix-org/bwindels/showunverifieddevicedialogonclick
Verify single device from other user in right panel & Not Trusted dialog
2020-02-11 15:35:24 +00:00
Bruno Windels
1d39aa6a81
Merge pull request #4049 from matrix-org/bwindels/verifybuttonsdisable
Disable verification buttons after clicking to avoid double submission
2020-02-11 15:35:00 +00:00
Bruno Windels
5267dbf44a
Update src/components/views/right_panel/UserInfo.js
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2020-02-11 15:21:01 +00:00
Bruno Windels
4b8382b5c4 remove dead code 2020-02-10 17:07:02 +01:00
Bruno Windels
a693af0c6b fix lint 2020-02-10 16:19:27 +01:00
Bruno Windels
2a8453b939 i18n fixes 2020-02-10 16:19:27 +01:00
Bruno Windels
9059f00b29 move css to correct file
Move the CSS for the dialog layout used in VerificationPanel to
_VerificationPanel.scss,
and delete the latter as it doesn't have any css of it's own anymore
2020-02-10 16:19:27 +01:00
Travis Ralston
ea4d97fa73 Hack in a layout option 2020-02-10 16:19:27 +01:00
Bruno Windels
5c89b41177 make device verification go over right panel (after showing dialog)
dialog should be more or less as in the design
2020-02-07 18:36:46 +01:00
Bruno Windels
577121e88d disable "verify by emoji" after clicking it 2020-02-07 15:50:51 +01:00
Travis Ralston
724cff6a2e Update QR code rendering to support VerificationRequests
Makes for building the QR code easier and more common.
2020-01-30 17:12:44 +00:00
David Baker
8a09cfbfbd
Merge pull request #3999 from matrix-org/dbkr/user_info_black_shields
Make shields in UserInfo black if user isn't verified
2020-01-30 16:30:19 +00:00
David Baker
4f62fc16bd lint 2020-01-30 16:19:04 +00:00