Commit Graph

41075 Commits

Author SHA1 Message Date
David Baker
c4525b97b6 Have "key storage disabled" as a separate state 2025-02-10 11:05:31 +00:00
David Baker
de183113e2 Merge remote-tracking branch 'origin/develop' into dbkr/key_storage_toggle 2025-02-10 10:54:10 +00:00
David Baker
f0d9e05f85 Amalgamate duplicated CSS files 2025-02-10 10:49:58 +00:00
ElementRobot
bb8b4d7991 [create-pull-request] automated change (#29224)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2025-02-10 06:19:28 +00:00
Florian D
4a8ba810a9 Encryption tab: display correct encryption panel when user cancels the reset identity flow (#29216)
* fix(encryption settings): check encryption state when user cancels the reset identity flow

* test(encryption settings): add test to check encryption state when user cancels the reset identity flow
2025-02-07 13:57:02 +00:00
ElementRobot
eed6b6df12 [create-pull-request] automated change (#29157)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2025-02-07 12:49:08 +00:00
David Baker
0c5f2b07b4 Merge branch 'develop' into dbkr/key_storage_toggle 2025-02-07 11:02:47 +00:00
David Baker
7149b3d019 Don't check key backup enabled state separately
as we don't need it for all the screens
2025-02-07 11:42:32 +01:00
David Baker
8ca4a8b6ec Merge the two hooks in EncryptionUserSettingsTab 2025-02-07 11:18:42 +01:00
David Baker
e8483e0186 Use higher level interface 2025-02-07 10:54:27 +01:00
David Baker
cfd55a6887 Switch to TypedEventEmitter and remove unnecessary loading state 2025-02-07 10:40:37 +01:00
David Baker
7c2d9f4954 Turn comments into proper tsdoc 2025-02-07 10:37:12 +01:00
David Baker
1178d77fb8 Add tsdoc & loading alt text to spinner 2025-02-07 10:29:57 +01:00
David Baker
25f8fe2009 Add missing doc & merge loading states 2025-02-07 10:26:17 +01:00
David Baker
fc9bc0903c Copy css to its own file 2025-02-07 10:22:12 +01:00
Michael Telatynski
4a231c6450 Initial support for runtime modules (#29104)
* Initial runtime Modules work

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Comments

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-06 23:54:18 +00:00
David Baker
16c76cb20d Show the advnced section whatever the state of key storage 2025-02-06 16:21:22 +01:00
David Baker
40f9bd9480 Add playwright test & clarify slightly confusing comment 2025-02-06 15:37:18 +01:00
David Baker
e70afdb04f Test updating 2025-02-06 15:16:03 +01:00
David Baker
4ea6a33497 Merge remote-tracking branch 'origin/develop' into dbkr/key_storage_toggle 2025-02-06 14:11:56 +01:00
Florian D
53f83124a0 Add Forgot recovery key? button to encryption tab (#29202)
* feat(crypto settings): add "Forgot  recovery key?" button to encryption tab

* test(crypto settings): add tests for `RecoveryPanelOutOfSync`

* test(crypto settings): update encryption tab test

* test(crypto settings): update and add e2e test
2025-02-06 10:54:20 +00:00
Florian D
0358b7f93c Add KeyIcon to key storage out of sync toast (#29201)
* feat(toast crypto): add KeyIcon to key storage out of sync toast

* test(toast crypto): update key storage out of sync snapshot
2025-02-05 16:36:48 +00:00
David Baker
130458783f Fix tests 2025-02-05 15:14:10 +01:00
David Baker
5ac200492c Fix type imports 2025-02-05 14:31:28 +01:00
David Baker
aa6de76a8b Fix hardcoded Element string 2025-02-05 14:25:39 +01:00
renovate[bot]
4a381c2a10 Update all non-major dependencies (#29194)
* Update all non-major dependencies

* Delint

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Prettier

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-05 13:25:06 +00:00
David Baker
e408715335 Add key storage delete confirm screen 2025-02-05 14:20:29 +01:00
renovate[bot]
9ae4388bef Update dependency @vector-im/compound-design-tokens to v3 (#28910)
* Update dependency @vector-im/compound-design-tokens to v3

* Update icon path

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-05 11:38:40 +00:00
David Baker
b7b2ea3448 Fix bits lost in merge 2025-02-05 12:01:18 +01:00
David Baker
6a20703ebc Merge remote-tracking branch 'origin/develop' into dbkr/key_storage_toggle 2025-02-05 11:51:31 +01:00
David Baker
9657d39cd6 Wire up the "Forgot recovery key" button for the "Key storage out of sync" toast (#29138)
* Wire up the "Forgot recovery key" button for the "Key storage out of sync" toast

* Unused import & fix test

* Test 'forgot' variant

* Fix dependencies

* Add more toast tests

* Unused import

* Test initialState in Encryption Tab

* Let's see if github has any more luck running this test than me

* Working playwright test with screenshot

* year

* Convert playwright test to use the bot client

* Disambiguate

Co-authored-by: Florian Duros <florianduros@element.io>

* Add doc & do other part of rename

* Split out into custom hook

* Fix tests

---------

Co-authored-by: Florian Duros <florianduros@element.io>
2025-02-04 17:40:31 +00:00
Michael Telatynski
7eb969bbc2 Apply lint rule @typescript-eslint/no-empty-object-type (#29159)
* Apply lint rule @typescript-eslint/no-empty-object-type

To avoid the footgun that is https://www.totaltypescript.com/the-empty-object-type-in-typescript

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-04 13:41:34 +00:00
Will Hunt
8cae1e9f5e Improve rendering of empty topics in the timeline (#29152)
* Improve display of empty topic events in the timeline.

* Use topic parser for topic events.

* Revert changes i18n for the moment

* Use the correct import pattern

* Add tests for topic rendering
2025-02-04 12:18:54 +00:00
R Midhun Suresh
1ea1d386ab Make profile header section match the designs (#29163)
* Update styling to match design

* Fix tests
2025-02-04 09:05:48 +00:00
Florian Duros
b7f8623617 Encryption tab: hide Advanced section when the key storage is out of sync (#29129)
* fix(encryption tab): hide the advanced section when the secrets are not cached locally

The secret verification is now made at the level of `EncryptionUserSettingsTab` instead at the `RecoveryPanel` level. In the `EncryptionUserSettingsTab`, we decide to only display `RecoveryPanelOutOfSync` in case of uncached secrets.

`RecoveryPanelOutOfSync` is simplified version of `RecoveryPanel` handling only the `secrets_not_cached` case.

* refactor(encryption tab): simplify the `RecoveryPanel` without having to handle the missing secrets

* test(encryption tab): move test about cached secrets in `EncryptionUserSettingsTab-test.tsx`

* test(encryption tab): move e2e test which are testing all the encryption tab in `encryption-tab.spec.ts

* refactor(encryption tab): move `RecoveryPanelOutOfSync` in its own file

- fix typos
- call onFinish after accessSecretStorage
- onFinish doesn't need to be asynchronous

* doc(encryption tab): improve documentation when the secrets are not cached locally

* test(encryption tab): improve test documentation and naming

* doc(encryption tab): improve `RecoveryPanelOutOfSync` documentation
2025-02-03 13:47:55 +00:00
Michael Telatynski
4f1eac67a8 Fix share button in discovery settings being disabled incorrectly (#29151)
* Fix share button in discovery settings being disabled incorrectly

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Improve types & add tests

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Improve coverage

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Add missing snapshot

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-02-03 08:48:02 +00:00
R Midhun Suresh
aa01b17f9e Always show back button in the right panel (#29128)
* Construct history on setCard

So that back buttons are always shown in the right panel

* Check card state to ensure operation is atomic

* Fix tests

* Fix lint

* Remove null case

* Fix broken test
2025-02-02 18:37:12 +00:00
Hubert Chathi
4cba79ddcc Schedule dehydration on reload if the dehydration key is already cached locally (#29021)
* Schedule dehydration on reload

* fix test and use the right function to check dehydration is enabled

* use dehydration helper function when scheduling dehydration on restart

* fix test by passing in client object
2025-01-31 18:29:59 +00:00
Michael Telatynski
b64471e4f6 Ensure switching rooms does not wrongly focus timeline search (#29153)
This happened due to the focusRoomSearch param being stored for inactive rooms so it never got cleared

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-01-31 15:47:32 +00:00
Valere
d3a6f34881 feat(crypto): Support verification violation composer banner (#29067)
* feat(crypto): Support verification violation composer banner

* refactor UserIdentityWarning by using now a ViewModel

fixup: logger import

fixup: test lint type problems

fix test having an unexpected verification violation

fixup sonarcubes warnings

* review: comments on types and inline some const

* review: Quick refactor, better handling of action on button click

* review: Small updates, remove commented code
2025-01-31 15:05:32 +00:00
ElementRobot
dcce9c70dc Localazy Download (#29149)
* [create-pull-request] automated change

* Fix test

---------

Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2025-01-31 12:30:53 +00:00
Richard van der Hoff
099c3073b6 Stop showing a dialog prompting the user to enter an old recovery key (#29143)
* SecurityManager: improve logging

* Only prompt user for default 4S key

We don't really support the concept of having multiple 4S keys active, so
prompting the user to enter a non-default 4S key without even telling them
which one we want is rather silly.

* playwright: factor out helper for setting up 4S

We seem to already have about 5 copies of this code, so before I add another,
let's factor it out.

* Playwright test for dehydrated device in reset flow

This should be fixed by the previous commit, so let's check it stays that way.
2025-01-30 16:27:45 +00:00
Florian Duros
d3ea250d77 Remove call to MatrixClient.setGlobalErrorOnUnknownDevices (#29134)
* refactor(MatrixChat): remove `MatrixClient.setGlobalErrorOnUnknownDevices` call

MatrixClient.setGlobalErrorOnUnknownDevices is not implemented in the rust-crypto and will be removed when the legacy crypto will be ripped out.

* test(e2e): remove `MatrixClient.setGlobalErrorOnUnknownDevices` call

MatrixClient.setGlobalErrorOnUnknownDevices is not implemented in the rust-crypto and will be removed when the legacy crypto will be ripped out.
2025-01-29 17:24:44 +00:00
ElementRobot
f243fee5a6 [create-pull-request] automated change (#29122)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2025-01-29 06:18:59 +00:00
David Baker
4db196e6bd Fix import order 2025-01-28 16:50:08 +00:00
David Baker
4ec09f0063 Fix toast showing condition 2025-01-28 16:35:54 +00:00
David Baker
97057de900 Fix import 2025-01-28 15:44:06 +00:00
Robin
c453d33456 Make themed widgets reflect the effective theme (#28342)
* Make themed widgets reflect the effective theme

So that widgets such as Element Call will show up in the right theme even if the app is set to match the system theme.

* Remove debug log line
2025-01-28 10:53:35 +00:00
Michael Telatynski
c390ec333e Tidy up modules (#29089)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2025-01-27 17:27:27 +00:00
David Baker
98950ded60 Keys in the acceptable order 2025-01-27 17:00:17 +00:00