Commit Graph

48112 Commits (5f10ccb5e4e7c6629d21f589afbc5e6885a888f5)

Author SHA1 Message Date
renovate[bot] 58664e7e7d
Update dependency @playwright/test to v1.44.1 (#12562)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-05 12:50:01 +00:00
Richard van der Hoff 0a01320fca
Element-R: pass pickleKey in as raw key for indexeddb encryption (#12543)
* Element-R: pass pickleKey in as raw key for indexeddb encryption

Currently, we pass the `pickleKey` to the rust library for use as a passphrase
for encrypting its crypto store. The Rust libary then passes that passphrase
through 200000 rounds of PBKDF2 to generate an encryption key, which is
(deliberately) slow.

However, the pickleKey is actually 32 bytes of random data (base64-encoded). By
passing the raw key into the rust library, we can therefore save the PBKDF
operation.

Backwards-compatibility with existing sessions is maintained, because if the
rust library discovers that the store was previously encrypted with a key based
on a PBKDF, it will re-base64 and PBKDF the key we provide, thus reconstructing
the right key.

* Update src/Lifecycle.ts

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

* Lifecycle-test: clean up test setup

Rely less on the unit under test for setting up the test preconditions -- not
least because we don't really want to fire up matrix clients and the like
during test setup.

* Factor out "encryptPickleKey" method

For a start it makes it easier to grok what's going on, but also I went to use
this in a test

* Improve tests for `Lifecycle.restoreFromLocalStorage`

---------

Co-authored-by: Florian Duros <florianduros@element.io>
2024-06-05 08:52:28 +00:00
ElementRobot 5004456d82
[create-pull-request] automated change (#12577)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-05 06:28:32 +00:00
Michael Telatynski 9680a36b14
Update end-to-end-tests.yaml 2024-06-04 17:06:03 +01:00
renovate[bot] 7cd822fa08
Update definitelyTyped (#12551)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-04 14:03:38 +00:00
RiotRobot 48a291d5b0 Reset matrix-js-sdk back to develop branch 2024-06-04 13:28:20 +00:00
RiotRobot c68c33a884 Resetting package fields for development 2024-06-04 13:28:13 +00:00
RiotRobot c3a7c24608 Merge branch 'master' into develop 2024-06-04 13:28:12 +00:00
RiotRobot 3ec0fe166f v3.100.0 2024-06-04 13:27:08 +00:00
RiotRobot f894ae6b68 Upgrade dependency to matrix-js-sdk@33.0.0 2024-06-04 13:20:23 +00:00
ElementRobot ab6a94aa8f
[create-pull-request] automated change (#12574)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-04 06:27:48 +00:00
Michael Telatynski f2d9f13f1b
Update end-to-end-tests.yaml 2024-06-03 21:56:33 +01:00
Michael Telatynski 30850709ef
Build the playwright html report in the main workflow (#12570)
* Build the playwright html report in the main workflow

so we can get the report for MQ

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

* fix

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-03 10:03:26 +00:00
ElementRobot c3769addd3
[create-pull-request] automated change (#12573)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-01 06:27:15 +00:00
ElementRobot fa7486e415
[create-pull-request] automated change (#12572)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-05-31 09:28:18 +00:00
Michael Telatynski dff05f4ca8
Update CODEOWNERS 2024-05-31 10:07:23 +01:00
ElementRobot 3912401db5
[create-pull-request] automated change (#12557)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-05-31 06:23:11 +00:00
renovate[bot] 18edb2e811
Update all non-major dependencies (#12560)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-05-30 15:47:57 +00:00
Michael Telatynski aec15a6ac1
Pin playwright synapse docker image to 2 days ago (#12571)
* Pin playwright synapse docker image to 2 days ago

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

* Automatically update Synapse docker image using GHA PRs

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-05-30 10:34:34 +00:00
RiotRobot 7f49a3009e v3.100.0-rc.1 2024-05-29 13:06:23 +00:00
RiotRobot 2e1c1d15fc Upgrade dependency to matrix-js-sdk@33.0.0-rc.0 2024-05-29 12:56:19 +00:00
RiotRobot ca16462265 Merge remote-tracking branch 'origin/develop' into staging 2024-05-29 12:50:06 +00:00
Florian Duros 679b170bc5
Close the release announcement when a dialog is opened (#12559)
* Fire `ModalManagerEvent.Closed` when a dialog is closed

* Listen to modal events in the RA

* Fix first RA test
2024-05-29 07:22:50 +00:00
Florian Duros 17ab522942
Tooltip: close field tooltip when ESC is pressed (#12553)
* Close field tooltip when ESC is pressed

* Use `Key.ESCAPE`
2024-05-28 12:55:47 +00:00
David Baker e8bb2419c9
Fix tabbedview breakpoint width (#12556)
Which should be 1024 according to the designs, not 768
2024-05-28 10:59:31 +00:00
Michael Telatynski 148a360598
Avoid using deprecated exports, fields, and duplicate code (#12555) 2024-05-28 08:41:20 +01:00
ElementRobot 1973197eb6
[create-pull-request] automated change (#12554)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-05-24 06:24:23 +00:00
Richard van der Hoff bc48fe4b8f
Add seedrandom dep to `resolutions` (#12552)
* Move seedrandom dep to `resolutions`

... to shut renovate up

* Reinstate `seedrandom` as dev dependency

If we just declare it in `resolutions`, it doesn't get installed at all,
because it is only a devDependency of `bloom-filters`.
2024-05-23 20:40:30 +00:00
David Baker 88e8e2df03
Merge pull request #12549 from matrix-org/florianduros/tooltip/legacy-tooltip
Tooltip: Use tooltip compound instead of react-sdk tooltip
2024-05-23 09:53:05 +01:00
Florian Duros d9f718e589
Add more test for `ReactionsRowButton.tsx` 2024-05-22 16:24:09 +02:00
Florian Duros 8f07672da1
Add more tests for `ReadReceiptGroup.tsx` 2024-05-22 15:56:12 +02:00
Florian Duros b6132db68f
Merge branch 'develop' into florianduros/tooltip/legacy-tooltip 2024-05-22 15:12:34 +02:00
Florian Duros 04741ae6a6
Add tests for `ReadReceiptGroup.tsx` 2024-05-22 15:07:57 +02:00
Florian Duros 1190de9028
Migrate `TooltipTarget` usage to compound `Tooltip` (#12542)
* Use new tooltip in `RoomTopic.tsx`

* Use new tooltip in `MLocationBody.tsx`

* Fix room topic

* Update location snapshot

* Use new tooltip in `AppPermission.tsx`

* Remove `TooltipTarget`

* Add tests for `RoomTopic`
2024-05-22 12:15:07 +00:00
RiotRobot 0c28d37f4e Upgrade dependency to matrix-js-sdk@32.4.0 2024-05-22 12:05:45 +00:00
Florian Duros a6907a033e
Use compound tooltip in `ReactionRowButton` 2024-05-22 11:27:01 +02:00
Florian Duros 67c7514dcd
Delete `useTooltip.tsx` 2024-05-22 09:42:54 +02:00
Florian Duros 25fa1238ec
Use tooltip compound in `ReadReceiptPerson` component 2024-05-22 09:29:54 +02:00
Florian Duros dbe00e5889
Use tooltip compound in `ReadReceiptGroup` component 2024-05-21 18:17:31 +02:00
Florian Duros 7d3b3d7f95
Use tooltip compound in `MessageComposer.tsx` 2024-05-21 17:42:01 +02:00
Florian Duros a5e4daa0d1
Deprecate `Tooltip.tsx` 2024-05-21 17:37:04 +02:00
Valere a29cabe45a
Report verification and recovery state to posthog (#12516)
* Report verification and recovery state to posthog

* Fix CryptoApi import

* Fix js-sdk import

* Review: Use DeviceVerificationStatus instead of CrossSigningStatus

* Review: Clean condition to check secrets in 4S

* review: Fix redundent !!
2024-05-21 14:37:00 +00:00
Ed Geraghty f712b809e2
Remove code smell assertion identified by Sonar (#12547)
* This assertion is unnecessary since the receiver accepts the original type of the expression

* Implement `client.getDomain()` null check

* Update comment since `AutoDiscovery.findClientConfig` may still throw
2024-05-21 13:49:12 +00:00
RiotRobot 4f3dcb6bc9 Upgrade dependency to matrix-js-sdk@32.3.0 2024-05-21 12:27:24 +00:00
David Baker 3342aa5ff8
Refactor some logic into common AvatarSetting component (#12544)
* Refactor some logic into common AvatarSetting component

We duplicated some of the logic of setting avatars between profiles &
rooms. This pulls some of that logic into the AvatarSetting component
and hopefully make things a little simpler.

* Unsed import

* Convert JS based hover to CSS

* Remove unnecessary container

* Test avatar-as-file path

* Test file upload

* Unused imports

* Add test for RoomProfileSettings

* Test removing room avatar

* Move upload control CSS too

* Remove commented code

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

* Prettier

* Coments & move style to inline as per PR suggestion

* Better test names

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Fix test

Upload input doesn't have that class anymore

---------

Co-authored-by: Florian Duros <florianduros@element.io>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2024-05-21 10:37:02 +00:00
Florian Duros f6e919021a
Fix E2E icon display in room header (#12545)
* Fix E2E icon display

* Add e2e test
2024-05-20 16:08:50 +00:00
Hubert Chathi 1bb70c5b3b
Only report undecryptable events once (#12501)
* persist previously-reported event IDs as a bloom filter

* Pin to older `@types/seedrandom`

... to work around https://github.com/Callidon/bloom-filters/issues/72

* Inline `DecryptionFailureTracker.addDecryptionFailure`

* Remove redundant TRACK_INTERVAL

There really doesn't seem to be much point to this batching up of decryption
failure reports. We still call the analytics callback the same number of times.

* Rename `trackedEvents` to `reportedEvents`

* Fix incorrect documentation on `visibleEvents`

This *does* overlap with `failures`.

* Combine `addFailure` and `reportFailure`

* Calculate client properties before starting reporting

* Clear localstorage after each test

... otherwise they interfere

* Remove redundant comment

* Ensure that reports are cleared on a logout/login cycle

* make private const private and const

---------

Co-authored-by: Richard van der Hoff <richard@matrix.org>
2024-05-20 14:53:50 +00:00
Richard van der Hoff 3e103941d6
Cleanup work on `DecryptionFailureTracker` (#12546)
* Inline `DecryptionFailureTracker.addDecryptionFailure`

* Remove redundant TRACK_INTERVAL

There really doesn't seem to be much point to this batching up of decryption
failure reports. We still call the analytics callback the same number of times.

* Rename `trackedEvents` to `reportedEvents`

* Fix incorrect documentation on `visibleEvents`

This *does* overlap with `failures`.

* Combine `addFailure` and `reportFailure`

* Calculate client properties before starting reporting
2024-05-17 16:19:31 +00:00
Florian Duros 75562b1d1b
Tooltip: migrate remaining tooltips from `AccessibleTooltipButton` to `AccessibleButton` (#12522)
* Use `AccessibleButton` in `RovingAccessibleTooltipButton`

* Update snapshots

* Update @vector-im/compound-web

* Update composer

* Update formating buttons

* Update snapshots

* Update `ContextMenuTooltipButton.tsx`

* Fix placement

* Update tests

* Remove placement

* Update space panel snapshot

* Remove default placement

* Update snapshots

* Update snapshots

* Use kbd

* Update ``@vector-im/compound-web`

* Migrate remaining files

* Remove `AccessibleTooltipButton.tsx`

* Add test to `InteractiveAuthEntryComponents`

* Add test to `InteractiveAuthEntryComponents`

* Back to old RoomList-test.tsx

* Improve `InteractiveAuthEntryComponent` tests

* Review changes
2024-05-17 14:11:07 +00:00
Florian Duros 8f3c8b3515
Use `RovingAccessibleButton` instead of `RovingAccessibleTooltipButton` (#12539) 2024-05-17 10:29:30 +00:00