Commit graph

40876 commits

Author SHA1 Message Date
Michael Telatynski
b4d343053d
Merge pull request #25477 from SuperKenVery/superkenvery/webaudioapi
Remove message audio element (for another pr)
2024-07-04 18:36:53 +00:00
Michael Telatynski
88d507f4f9
Update index.html 2024-07-04 19:23:13 +01:00
SuperKenVery
e288f61f0a
Prevent Element appearing in system media controls (#10995)
* Use WebAudio API to play notification sound

So that it won't appear in system media control.

* Run prettier

* Chosse from mp3 and ogg

* Run prettier

* Use WebAudioAPI everywhere

There's still one remoteAudio. I'm not sure what it does. It seems it's
only used in tests...

* Run prettier

* Eliminate a stupid error

* Iterate

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

* Update setupManualMocks.ts

* Iterate

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

* delint

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>

* mocks

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

* mocks

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>

* Simplify

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

* covg

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-04 18:08:06 +00:00
Travis Ralston
8e03b273ae Add Electron IPC APIs for authenticated media 2024-07-04 11:58:32 -06:00
Robin
c61eca8c24
Don't consider textual characters to be emoji (#12582)
* Don't consider textual characters to be emoji

We were using emojibase-regex to match emoji within messages. However, the docs (https://emojibase.dev/docs/regex/) state that this regex matches both emoji and text presentation characters. This is not what we want, and will result in false positives for characters like '↔' that could turn into an emoji if paired with a variation selector. Unfortunately, none of the other regexes provided by Emojibase do what we want either (https://github.com/milesj/emojibase/issues/174). In the meantime, browser support for the RGI_Emoji character sequence class has made it feasible to write an emoji regex by hand, so that's what I've done.

* Add a fallback for BIGEMOJI_REGEX as well
2024-07-04 17:48:07 +00:00
Robin
e4d138f4d1 Add a Modernizr check for v mode regexes
I plan to use v mode regexes to test for emoji sequences, and Michael has advised me that we need to ensure that the "incompatible browser" screen shows if they are not supported.
2024-07-04 12:53:39 -04:00
Richard van der Hoff
489bc32674
Remove references to some deprecated js-sdk identifiers (#12729)
* IKeyBackupInfo -> KeyBackupInfo

* ICryptoCallbacks -> CryptoCallbacks

* IRoomEncryption -> RoomEncryptionEventContent

* MEGOLM_ALGORITHM -> a single local constant

* UserTrustLevel -> UserVerificationStatus
2024-07-04 15:50:07 +00:00
David Baker
e48110d7c6
Move the account management button (#12663)
* Disable profile controls if the HS doesn't allow them to be set

Also updates to the js-sdk interface changes in https://github.com/matrix-org/matrix-js-sdk/pull/4246

* Remove unnecessary await

* Pass disabled prop to accessiblebutton in avatarsetting

* Move the account management button

The section it lives in with the server name goes, and the button
just lives on its own in the profile section.

* Update test

* Revert bits of previous PR that are no longer wanted

because we squash merge so git can no longer make sense of what changes
have been applied.

* More squash-merge fails

* More more squash merge fails
2024-07-04 09:46:26 +00:00
Michael Telatynski
0434929ee5
Replace deprecated temporal proposal polyfill (#12636)
* Replace deprecated temporal proposal polyfill

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

* Switch polyfill

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

* Rounding

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

* Fix tests

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-03 17:02:10 +00:00
Michael Telatynski
6b90fe20ab
Extract focus_search dispatch action into enum (#12721)
* Extract `focus_search` dispatch action into enum

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

* copypasta

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-03 17:02:02 +00:00
Michael Telatynski
b0d2010247
Update new room header facepile tooltip (#12699)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-03 17:01:58 +00:00
Florian Duros
53ea045c54
Update @vector-im/compound-web (#12718)
* deps: update `@vector-im/compound-web`

* feat: use new EditInPlace

* e2e: update snapshots
2024-07-02 12:35:13 +00:00
David Baker
510fb1ba2f
Disable profile controls if the HS doesn't allow them to be set (#12652)
* Disable profile controls if the HS doesn't allow them to be set

Also updates to the js-sdk interface changes in https://github.com/matrix-org/matrix-js-sdk/pull/4246

* Remove unnecessary await

* Pass disabled prop to accessiblebutton in avatarsetting

* Use getCapabilities

in case there are no cached capabilities

* Fix test

* Go back to just using getCapabilities

Rather than change the other places
2024-07-02 10:04:07 +00:00
David Baker
922676a7cc
Clear autocomplete input on selection accept (#12709)
* Clear autocomplete input on selection accept

Fixes https://github.com/element-hq/element-web/issues/27194

* Playwright: use rust crypto for the bot user (#12708)

... because legacy crypto is legacy

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2024-07-02 09:38:20 +00:00
ElementRobot
ba7ffd68d2
[create-pull-request] automated change (#12715)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-07-01 06:18:53 +00:00
ElementRobot
f475e1a6da
[create-pull-request] automated change (#12711)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-28 06:19:44 +00:00
Florian Duros
33a017b528
New theme ui in user settings (#12576)
* Add hook to get the theme

* Adapt subsection settings to new ui

* WIP new theme subsection

* Add theme selection

* Fix test types

* Disabled theme selector when system theme is used

* Update compound to `4.4.1`

* Add custom theme support

* Remove old ThemChoicePanel

* Fix QuickThemeSwitcher-test.tsx

* Fix AppearanceUserSettingsTab-test.tsx

* Update i18n

* Fix ThemeChoicePanel-test.tsx

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

* Small tweaks

* Fix CSS comments and use compound variable

* Remove custom theme title

* i18n: update

* test: add tests to theme selection

* test: update AppearanceUserSettingsTab-test snapshot

* test: rework custom theme

* playwright: fix audio-player.spec.ts

* playwright: appearance tab

* test: update snapshot

* playright: add custom theme

* i18n: use correct char for ellipsis

* a11y: add missing aria-label to delete button

* dialog: update close button tooltip

* theme: remove local state and handle custom delete

* theme: don't add twice the same custom theme

* test: update snapshot

* playwright: update snapshot

* custom theme: add background to custom theme list

* update compound web

* Use new destructive property on `IconButton` of theme panel

* test: update snapshots

* rename new ui into legacy

* remove wrong constructor doc

* fix theme selector padding

* theme selector: fix key

* test: fix e2e
2024-06-26 15:47:01 +00:00
Richard van der Hoff
7c7cbe655a Remove code which loads legacy libolm
Now that we use the Rust crypto stack
(https://github.com/matrix-org/matrix-react-sdk/pull/12630), the legacy olm
library is unneeded. Remove all the dedicated cruft for loading it.

(All this crap is why matrix-sdk-crypto-wasm has to base64 its wasm artifact,
cf https://github.com/matrix-org/matrix-rust-sdk/pull/1167.)
2024-06-26 16:27:14 +01:00
David Baker
ea0baee101
Split out email & phone number settings to separate components & move discovery to privacy tab (#12670)
* WIP update of threepid settings section

* Remove email / phone number section from original place

and don't show the new one if 3pids are disabled

* Update snapshots

* Pull identity server / 3pid binding settings out to separate component

and put it in the security & privacy section which is its new home

* Update snapshot

* Move relevant part of test & update screenshots / snapshots

* Remove unnecessary dependency

* Add test for discovery settings

* Add spacing in terms agreement
2024-06-26 13:04:19 +00:00
Michael Telatynski
72475240ec
Extract SearchScope and SearchInfo into Searching (#12698)
* Extract SearchScope and SearchInfo into Searching

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

* delint

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

* delint

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

* Fix test

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>
2024-06-26 10:59:04 +00:00
Michael Telatynski
86a95cfff7
Switch from graphemer to Intl.Segmenter (#12697)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-26 09:34:07 +00:00
ElementRobot
b78e6f02f7
[create-pull-request] automated change (#12701)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-26 06:19:17 +00:00
renovate[bot]
4bf8766885
Update dependency typescript to v5.5.2 (#12688)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-25 16:59:07 +01:00
Richard van der Hoff
9c862907f9
Switch to Rust crypto stack for all logins (#12630)
* Use Rust crypto stack universally

Ignore the `feature_rust_crypto` and `RustCrypto.staged_rollout_percent`
settings, and just use RustCrypto everywhere.

* Remove labs setting for rust crypto

* Remove support for legacy crypto stack in `StorageManager`

We're not going to use the legacy stack any more.

* Update docs on `Features.RustCrypto`

* Remove now-unreachable `tryToUnlockSecretStorageWithDehydrationKey`

* Comment out test which doesn't work

* fix typo
2024-06-24 09:14:42 +00:00
ElementRobot
2843545d1e
[create-pull-request] automated change (#12673)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-24 06:23:21 +00:00
Michael Telatynski
5eb5ea81d5
Remove redundant copy in deactive uia modal (#12668)
* Remove redundant copy in deactive uia modal

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

* delint

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-21 14:16:22 +00:00
Michael Telatynski
2d8c23e806
Hide voip buttons in group rooms in environments with widgets disabled (#12664)
* Hide voip buttons in group rooms in environments with widgets disabled

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

* Fix test stubs

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>
2024-06-21 08:42:50 +00:00
Michael Telatynski
6821a35444
Merge branch 'develop' into superkenvery/webaudioapi 2024-06-20 17:19:10 +01:00
Michael Telatynski
ead7303f78
Remove outdated iframe sandbox attribute (#12633)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-20 09:34:33 +00:00
Florian Duros
6c99b91210
Minor tweaks to UserSettings dialog (#12651)
* Make user settings dialog title looks like figma design

* dialog: add title to close button

* Update dialog snapshot

* Update playwright snapshot
2024-06-20 09:29:38 +00:00
Michael Telatynski
76844f5973
Hide voice call button when redundant (#12639)
* Hide voice call button when redundant

i.e. when it'd do the same thing as the video call button like in non-dm rooms

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

* Tests

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-19 15:49:09 +00:00
David Baker
b2e9de144c
Update for js-sdk interface change (#12638)
It's a separate method to force a capabilities fetch as of
https://github.com/matrix-org/matrix-js-sdk/pull/4246
2024-06-19 10:51:43 +00:00
Michael Telatynski
a4af2870b4
Remove unused state fields in qr oidc (#12588)
* Dummy PR to Netlify https://github.com/matrix-org/matrix-js-sdk/pull/4233

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

* Remove unused state field

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

* Discard changes to .prettierignore

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-19 08:50:53 +00:00
ElementRobot
9aa34ce391
[create-pull-request] automated change (#12640)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-19 06:24:08 +00:00
Michael Telatynski
f9e2425ac7
Remove stray setState which caused encryption state shields to flicker (#12632)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-18 15:12:12 +00:00
Timo
5c26d580d8
Fix widgets not being cleaned up correctly. (#12616)
* Fix widgets not being cleaned up correctly.

Widgets could persist forever because they were still sticky when we end the messaging.
Ending the messaging emits an event to which we connect ui changes that move the widget out of the screen. It does not end up in a pip view however.

So we need to make sure the widget is not persistend anymore when we call `stopMessagingByUid` so that any dom changes that remove the AppTile happen when the widget is not persistend anymore and let it destroy.

This PR also makes the role for `MatrixRTCSessionManager` more strict. We do ONLY use it in `Call.ts` and `CallStore`  so that we dont end up in reaces where we updated the ui based on the session manager but not in sync with the call and callstore changes.

Rename activeCalls to connectedCalls. Active call can also be understood as a call where there are active participants but the user itself is not connected. Especially with the `hasActiveCallSession` field of the useRoomCall hook which is tracking active (not necassarly connected sessions)

* rest of the renaming

* fix test to adapt to reduced session manager event usage.
2024-06-17 11:00:41 +00:00
Michael Telatynski
5a1b98d8b7
Improve accessibility of the room summary card (#12586)
* Improve accessibility of the room summary card

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

* Update @vector-im/compound-web to 4.5.0

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

* Update snapshots

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

* Fix bad merge

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-17 08:27:15 +00:00
ElementRobot
5212ae8747
[create-pull-request] automated change (#12627)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-17 06:24:12 +00:00
David Baker
72a8f8f03b
Show tooltips on narrow tabbed views (#12624)
* Show tooltips on narrow tabbed views

* Also only show on left-side tabs

* Unused import

* Comments

* Add test

* More test

* Assert tooltip appears in playwright test
2024-06-14 14:17:46 +00:00
David Baker
650b9cb0cf
Add in-progress view to display name EditInPlace (#12609)
* Add in-progress view to display name EditInPlace

Requires https://github.com/element-hq/compound-web/pull/180

* Update to new compound-web

for editinplace component with spinner

* Update snapshots

for https://github.com/element-hq/compound-web/pull/178

* Update screenshots

* Remove margin

which isn't necessary now there's no 'Remove' link on the bottom

* Update screenshots
2024-06-14 14:16:13 +00:00
Hubert Chathi
6fc9d7641c
Remove room key history sharing (#12618)
* Remove room key history sharing

* remove string from i18n
2024-06-14 13:13:41 +00:00
David Langley
d6b9e2aa8a
Fix config override of other settings levels (#12593)
* Make config override other settings levels and add tests

* fix documentation

* lint

* Use a const for finalLevel.

* respect the explicit parameter

* Use supportedLevelsAreOrdered for config overrides rather than a separate setting.

* Fix typos

* Fix mock in UserSetttingsDialog-test

* Special case disabling of setting tos use config overrides.

* remove logs
2024-06-14 11:00:30 +00:00
Bart van der Braak
8e200dc4ac
Add login page option for SSO redirects (#12622)
Signed-off-by: Bart van der Braak <bartvdbraak@gmail.com>
2024-06-14 10:19:02 +00:00
Bart van der Braak
b61d5b4475 Add SSO redirect option for login page
Signed-off-by: Bart van der Braak <bartvdbraak@gmail.com>
2024-06-14 10:23:16 +02:00
ElementRobot
6e13e6dcb2
[create-pull-request] automated change (#12619)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-06-14 06:24:34 +00:00
Michael Telatynski
6c3817fa34
Merge pull request #27566 from element-hq/t3chguy/fix/24694
Remove gfm.css, import from matrix-react-sdk
2024-06-13 17:10:26 +00:00
Travis Ralston
e151d9ab53
Merge pull request #27558 from element-hq/travis/stable-msc3916
Use stable endpoints for MSC3916
2024-06-13 16:32:18 +00:00
Michael Telatynski
24e3e08391
Cache e2eStatus to avoid concerning unencrypted flicker when changing rooms (#12606)
* Cache e2eStatus to avoid concerning unencrypted flicker when changing rooms

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

* Update src/components/structures/RoomView.tsx

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-06-13 16:25:44 +00:00
Michael Telatynski
2547777de7
Tweak copy for user verification toast (#12605)
* Tweak copy for user verification toast

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

* Update tests

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>
2024-06-13 16:04:33 +00:00
Michael Telatynski
ea16928d35
Remove setImmediate polyfill (#27567) 2024-06-13 16:59:56 +01:00