Commit graph

35078 commits

Author SHA1 Message Date
David Langley
a89f61a357 Add error text and title with server name 2024-09-13 14:48:48 +01:00
David Baker
9426fec8c7
Fix timeout type (#40)
In the user profile timezone code, which was failing a ts check.
2024-09-13 13:15:10 +00:00
Michael Telatynski
be59791db1
Add support for org.matrix.cross_signing_reset UIA stage flow (#34)
* Soften UIA fallback postMessage check to work cross-origin

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

* Do the same for the SSO UIA flow

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

* Add support for `org.matrix.cross_signing_reset` UIA stage flow

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

* Check against MessageEvent::source instead

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

* i18n

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

* Add tests

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

* Remove protected method

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-09-13 11:49:19 +00:00
David Langley
0244aaeb2f use window.dispatchEvent 2024-09-13 12:18:32 +01:00
David Langley
a6dec86374 Add mobile registration and dispatch event for mobile postmessage dance 2024-09-13 12:12:04 +01:00
Michael Telatynski
a6e98b0b63
Use strong over b for improved a11y semantics
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-09-13 12:09:41 +01:00
Florian Duros
6b384fe9c1
Fix huge usage bandwidth and performance issue of pinned message banner. (#37)
* Return only the first 100 pinned messages

* Execute pinned message 10 by 10
2024-09-13 07:47:22 +00:00
ElementRobot
0e8cd5badd
[create-pull-request] automated change (#38)
Co-authored-by: dbkr <dbkr@users.noreply.github.com>
2024-09-13 06:18:17 +00:00
Will Hunt
eae9d9e248
Add timezone to user profile (#20)
* [create-pull-request] automated change (#12966)

Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>

* Add timezone to right panel profile.

* Add setting to publish timezone

* Add string for timezone publish

* Automatically update timezone when setting changes.

* Refactor to using a hook

And automatically refresh the timezone every minute.

* Check for feature support for extended profiles.

* lint

* Add timezone

* Remove unintentional changes

* Use browser default timezone.

* lint

* tweaks

* Set timezone publish at the device level to prevent all devices writing to the timezone field.

* Update hook to use external client.

* Add test for user timezone.

* Update snapshot for preferences tab.

* Hide timezone info if not provided.

* Stablize test

* Fix date test types.

* prettier

* Add timezone tests

* Add test for invalid timezone.

* Update screenshot

* Remove check for profile.

---------

Co-authored-by: ElementRobot <releases@riot.im>
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-09-12 13:18:25 +00:00
Florian Duros
f31776378d
Reverse pinned message list (#19) 2024-09-12 12:43:07 +00:00
David Baker
a701e3afd7
Add config option to force verification (#29)
* Add config option to force verification

If this is set, users will not have the option to skip verification
on login (they will still be able to reload and continue unverified,
currently). Default off.

* Test for complete security dialog

* I hadn't set up prettier
2024-09-11 20:55:00 +00:00
Richard van der Hoff
433c14e5a9
Log clearer errors when picklekey goes missing (#27)
* tokens.ts: improve documentation

Improve variable naming and documentation on the methods in `tokens.ts`.

* rename restoreFromLocalStorage

Since the session data isn't actually stored in localstorage, this feels like a
misleading name.

* Lifecycle: bail out if picklekey is missing

Currently, if we have an accesstoken which is encrypted with a picklekey, but
the picklekey has gone missing, we carry on with no access token at all. This
is sure to blow up in some way or other later on, but in a rather cryptic way.

Instead, let's bail out early.

(This will produce a "can't restore session" error, but we normally see one of
those anyway because we can't initialise the crypto store.)
2024-09-11 15:13:04 +00:00
Florian Duros
03004a55fd
Change settings to true by default (#25) 2024-09-11 11:16:52 +00:00
Florian Duros
07125f554d
Remove release announcement of new header (#23) 2024-09-11 09:17:44 +00:00
David Langley
491f0cd08a
Change license (#13)
* Copyright headers 1

* Licence headers 2

* Copyright Headers 3

* Copyright Headers 4

* Copyright Headers 5

* Copyright Headers 6

* Copyright headers 7

* Add copyright headers for html and config file

* Replace license files and update package.json

* Update with CLA

* lint
2024-09-09 13:57:16 +00:00
David Baker
c26ce7a0dd
Merge branch 'develop' into dbkr/changelog_repos 2024-09-09 09:57:32 +01:00
dbkr
0acc7dd540 [create-pull-request] automated change 2024-09-09 06:03:18 +00:00
David Baker
f8da257769 Update repos for changelog fetching 2024-09-06 14:08:23 +01:00
Florian Duros
08d1b6ceae
Add analytics event for pinned messages 2024-09-05 16:56:18 +02:00
Florian Duros
5bfbca9eb0
Migrate all pinning checks and actions into PinningUtils (#12964) 2024-09-05 14:37:24 +00:00
Richard van der Hoff
649074273e
Log phases in the verification process (#12963)
When the EncryptionPanel (which does the work of the verification flow) changes
"phase", log it. I hope this will be helpful when diagnosing stuck
verifications.
2024-09-05 09:34:39 +00:00
Sahil Silare
cdffbdb81a
Add error handling for room publish toggle (#12941)
* feat: added error handling for room publish toggle

* chore: fixed the messages and removed `console.log`

* chore: added minor comment that was removed

* fix: addressed review comments

* fix: fixed linting
2024-09-05 09:01:10 +00:00
Florian Duros
1e3320da1e
Pinned message list: prevent sender name to overflow pinned event tile (#12947)
* Prevent sender name to overflow pinned event tile

* Add tooltip to display the sender name
2024-09-04 09:45:18 +00:00
Florian Duros
60fe70b3cc
Add a prefix to file, poll, image, video and audio in the pinned message banner (#12950)
* Move event preview to its own component

* Remove unused parameter

* Add prefix to file, audio, video and image in the pinned message banner

* Add prefix to poll in the pinned message banner

* Add tests
2024-09-04 09:07:19 +00:00
David Baker
6bfdb3e16b
Fix read receipt animation (#12923)
* Fix read receipt animation

The way it was done involved remembering dom nodes and then getting
their position later when animating the receipt to its next position,
but I'm not sure how this worked since the DOM node may not neccessarily
be in the DOM anymore. Instead, just remember the bounding box coordinates.
At worst it might go weird if the window is resized but seems fine in
practice. Also, keeping references to dom nodes feels like a fast road
to memory leaks.

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

* Attempt to write a test for read receipts

and fix naming

* Another test

also change a condition to make it testable
2024-09-03 11:59:30 +00:00
Florian Duros
f033b64b53
Display the indicator even with one message in pinned message banner (#12946)
* Display the indicator even with one message

* Update e2e tests
2024-09-02 15:51:04 +00:00
Florian Duros
41686bba58
Always display last pinned message on the banner (#12945)
* Fix when an event is pinned and the banner displays the correct event.

Fix when an event is pinned and the banner displays the good event.

* Update e2e tests
2024-09-02 15:50:39 +00:00
Florian Duros
1ac533e730
Don't emit decrypted event for the banner (#12944) 2024-09-02 15:45:25 +00:00
Timshel
ae15bbe6e0
Allow user to set timezone (#12775)
* Allow user to set timezone

* Update test snapshots

---------

Co-authored-by: Florian Duros <florianduros@element.io>
2024-09-02 09:07:07 +00:00
Florian Duros
13ec19c22e
Sort the pinning message list in the same order than the banner (#12937) 2024-08-30 14:57:30 +00:00
Michael Weimann
19f8b44745
Implement download_file in widget driver (#12931)
* Implement download_file in widget driver

Signed-off-by: Michael Weimann <michael.weimann@nordeck.net>

* Fix test URIs

Signed-off-by: Michael Weimann <michael.weimann@nordeck.net>

* Use download-file branch as widget-api source

Signed-off-by: Michael Weimann <michael.weimann@nordeck.net>

* bump matrix-widget-api to 1.9.0

Signed-off-by: Kim Brose <kim.brose@nordeck.net>

* prettier

Signed-off-by: Kim Brose <kim.brose@nordeck.net>

---------

Signed-off-by: Michael Weimann <michael.weimann@nordeck.net>
Signed-off-by: Kim Brose <kim.brose@nordeck.net>
Co-authored-by: Kim Brose <kim.brose@nordeck.net>
2024-08-30 14:45:25 +00:00
Florian Duros
d16ab09866
Display pinned messages on a banner at the top of a room (#12917)
* Move pinned message hooks to a dedicated file

* Add a banner at the top of a room to display the pinned messages

* Put the pinning banner behind labs pinning labs flag

* Add redacted event support

* Handle UTD in pinning message banner

* Add tests for redaction

* Make all the banner clickable

* Add tests for PinnedMessageBanner.tsx

* Add e2e tests for the pinned message banner

* Review changes
2024-08-29 14:26:10 +00:00
Florian Duros
ea3c5cf787
Fix pin/unpin slowness and non refresh from the message action bar (#12934)
* Improve PinningUtils.ts doc and use common methods to check pin or unpin.
Removed unused methods.

* Send room account data and state event in parallel

* Rerender MessageActionBar.tsx if there is a room pinned event

* Update pinning util tests

* Add test for room pinned events in MessageActionBar-test.tsx
2024-08-28 08:56:46 +00:00
David Baker
f0a75d8ad5
Add a config option to control the default widget container height (#12893)
* Add a config option to control the default widget container height

* Oops: need to remember to git checkout
2024-08-27 09:59:54 +00:00
Florian Duros
e599428b74
Ignore desktop for minimum browser support. (#12928) 2024-08-27 09:41:49 +00:00
Richard van der Hoff
5a9d7ba2d7
Remove unused CryptoCallbacks implementations (#12919)
* Remove unused `onSecretRequested` callback

This thing is unused with the rust crypto stack (which is lucky, because it
uses methods that only work with the legacy stack).

* Remove unused `getDehydrationKey` method

This callback is no longer used, so there is no need for an implementation.

* Remove unused `dehydrationCache`

This is no longer written to, so is redundant.

* Remove another write to `CryptoCallbacks.getDehydrationKey`

As before: this hook is no longer used by the js-sdk, so writing to it is
pointless.
2024-08-23 14:00:18 +00:00
David Langley
70665d3ce3
RTE drafts (#12674)
* Add drafts to the RTE and tests

* test drafts in threads

* lint

* Add unit test.

* Fix test failure

* Remove unused import

* Clean up wysiwyg drafts and add test.

* Fix typo

* Add timeout to allow for wasm loading.

---------

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
2024-08-22 12:54:01 +00:00
Florian Duros
a7e907e0e6
Add thread information in pinned message list (#12902) 2024-08-21 09:02:35 +00:00
Florian Duros
3d80eff65b
Add Pin/Unpin action in quick access of the message action bar (#12897)
* Add Pin/Unpin action in quick access of the message action bar

* Add tests for `MessageActionBar`

* Add tests for `PinningUtils`

* Fix `MessageContextMenu-test`

* Add e2e test to pin/unpin from message action bar
2024-08-21 08:50:00 +00:00
ElementRobot
c37cb9f0b1
[create-pull-request] automated change (#12899)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-08-19 06:16:04 +00:00
Michael Telatynski
9f5b39b9d9
Ensure elements on Login page are disabled when in-flight (#12895)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-17 09:37:35 +00:00
Florian Duros
6f3dc30693
Message Pinning: rework the message pinning list in the right panel (#12825)
* Fix pinning event loading after restart

* Update deps

* Replace pinned event list

* Add a dialog to confirm to unpin all messages

* Use `EmptyState` when there is no pinned messages

* Rework `PinnedEventTile` tests

* Add comments and refactor `PinnedMessageCard`

* Rework `PinnedMessageCard` tests

* Add tests for `UnpinAllDialog`

* Add e2e tests for pinned messages

* Replace 3px custom gap by 4px gap

* Use string interpolation for `Pin` action.

* Update playright sceenshot for empty state
2024-08-16 12:16:06 +00:00
Michael Telatynski
88cf643cbd
Tweak UIA postMessage check to work cross-origin (#12878)
* Soften UIA fallback postMessage check to work cross-origin

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

* Do the same for the SSO UIA flow

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

* Check against MessageEvent::source instead

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-16 08:12:18 +00:00
ElementRobot
7a91e3efcf
[create-pull-request] automated change (#12894)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-08-16 06:16:05 +00:00
Florian Duros
d9846dc62d
Hide pinned messages when grouped in timeline when feature pinning is disabled (#12888) 2024-08-14 15:30:42 +00:00
David Baker
4751c52d82
Refactor the various email/phone management UI into a single component (#12884)
* Refactor the various email/phone management UI into a single component

These were basically the same component copied & pasted 3 times and
tweaked to match the behaviour of each case. This de-dupes them into
one component.

This all could really benefit from playwright tests, but would require
setting up a dummy ID server in the playwright tests. This is all legacy
pre-MAS stuff so its questionable whether its worth the effort.

* Basic test, remove old tests

* Use different text to confirm remove & put headers back

although the two texts are both 'Remove' in practice

* Remove string

This was never triggered anyway with sydent & synapse because they
don't seem to agree on what error to return. In any case, I think it
makes more sense for it to be consistent with the email path, ie. using
a dialog.

* Avoid nested forms

* Snapshots

* More snapshots

* Test the hs side

* Snapshots

* Test IS bind/revoke

* Test remove can be cancelled

* Test unvalidated cases & fix phone error

* Reset state between tests

* Import useState directly

* One more direct React import
2024-08-14 13:13:57 +00:00
ElementRobot
62e164173c
[create-pull-request] automated change (#12886)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-08-14 06:15:55 +00:00
Michael Telatynski
eacb22eac7
Add chat button on new room header for maximised widgets (#12882)
* Add chat button to new room header for video room & maximised widgets

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

* 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>

* Update snapshot

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

* Update screenshot

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-12 13:44:15 +00:00
Michael Telatynski
0e37c09042
Show spinner whilst initial search request is in progress (#12883)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-12 13:44:07 +00:00
Andrew Ferrazzutti
a437c677bb
Support delayed events (MSC4140) for call widget (#12714)
The Widget API spec for delayed events is defined by MSC4157.

Also support "parent" delayed events, which were in a previous version
of MSC4140 and may be reintroduced or be part of a new MSC later.
2024-08-07 15:06:30 +00:00
Timo
a35bf68f22
Stop the ongoing ring if another device joins the call session. (#12866) 2024-08-07 11:45:31 +00:00
Michael Telatynski
2978b86e52
Allow selecting text in the right panel topic (#12870)
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-07 08:45:50 +00:00
David Langley
5d16a38b17
Rich text Editor: Auto-replace plain text emoticons with emoji (#12828)
* Detect autoReplaceEmoji setting

* Add plain text emoticon to emoji replacement for plain and rich text modes of the RTE.

* Use latest wysiwyg

* lint

* fix existing jest tests and docs

* Add unit tests

* Update wysiwyg to fix flakes.

* fix wording of tests and comments

* use useSettingValue
2024-08-07 08:39:55 +00:00
David Langley
e6835fe9d2
Clean up editor drafts for unknown rooms (#12850)
* Clean up editor drafts for unknown rooms and add tests.

* lint

* Call cleanUpDraftsIfRequired when we know a live update has completed.

* Fix test for new call site of draft cleaning

* fix test
2024-08-07 08:35:57 +00:00
ElementRobot
f71d8bdf2c
[create-pull-request] automated change (#12872)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-08-07 06:16:53 +00:00
Travis Ralston
7a4783f907
Import base64 utils directly from js-sdk (#12871)
* Import base64 utils directly from js-sdk

See comments in code

* Use the authenticated routes (because the service worker said so)

* Revert "Use the authenticated routes (because the service worker said so)"

This reverts commit 835806d253106b36f337e6387e48d740cc8fb1f2.

* Use the authenticated routes (because the service worker said so)

* Continue fighting Playwright

* Document who is at fault if the import breaks (it's us)

* Update playwright/e2e/timeline/timeline.spec.ts

Co-authored-by: Robin <robin@robin.town>

---------

Co-authored-by: Robin <robin@robin.town>
2024-08-07 04:33:13 +00:00
David Baker
4e4c5c7768
Rename general user settings to account (#12841)
* Rename general user settings to account

Everything 'general' is now elsewhere, so this is ready for its
new name.

* Update snapshots

* Rename & update playwright test

* Rename class & remove unused CSS class

* Change test ID

* rethemendex

* More tests!!

* snapshots

* Put the screenshots back in the new place

* Fix tests with restoreAllMocks

* More screenshot renaming

* More test fixes & screenshot updates

* More test fixes

* un-skip

* Typo

Co-authored-by: Robin <robin@robin.town>

---------

Co-authored-by: Robin <robin@robin.town>
2024-08-06 17:05:08 +00:00
David Baker
6ca4f670bf
Update settings tab icons (#12867)
* Change icon for general/account tab

...and add support for compound design token icons to TabbedView,
changing all the other icons over while we're at it.

* Update snapshots

* Fix responsive mode

* Missed one

* truthy-check the whole block

* Use asset imports

* Update snapshots
2024-08-06 16:08:45 +00:00
Michael Telatynski
5519b81af9
Disable jump to read receipt button instead of hiding when nothing to jump to (#12863)
* Disable User Info jump to read receipt button instead of hiding it when no RR

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

* Update tests

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

* Update snapshot

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

* Remove non-functional code

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-08-06 14:55:48 +00:00
Michael Telatynski
dde19f36ac
Add missing presence indicator to new room header (#12865)
* Add missing presence indicator to new room header

DecoratedRoomAvatar doesn't match Figma styles so created a composable avatar wrapper

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

* Add oobData to new room header avatar

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

* Simplify

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>

* Add tests

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

* Improve coverage

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-06 14:51:25 +00:00
Michael Telatynski
a7bc0e4612
Merge branch 'master' into develop 2024-08-06 11:46:52 +01:00
David Baker
c7bbc1c045
Merge commit from fork
and migrate existing account-level settings once-only for
existing sessions.
2024-08-06 10:54:11 +01:00
Michael Telatynski
54e5321f39
Clear settings caches on reset rather than custom lifecycle method (#12859)
* Clear settings caches on reset

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

* Derp

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-08-05 10:36:24 +00:00
Michael Telatynski
090586439f
Preparations for React 18 (#12860)
* Add missing types

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

* Eagerly add `children` to props in prep for React 18

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

* Avoid assuming that setState immediately sets `this.state` values

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

* Add missing context declaration

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

* Fix UserFriendlyError types to work with React 18

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-05 07:59:27 +00:00
David Baker
accbe07439
Merge pull request #12857 from matrix-org/dbkr/email_phone_css_temporary_move
Move General user settings styles to more specific places
2024-08-02 13:29:12 +01:00
ElementRobot
67f5c08301
[create-pull-request] automated change (#12858)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-08-02 06:16:25 +00:00
David Baker
dd61eb932c Fix classname 2024-08-01 18:38:21 +01:00
David Baker
da67dbcc87
Merge branch 'develop' into dbkr/email_phone_css_temporary_move 2024-08-01 17:38:42 +01:00
Michael Telatynski
c1d4199b02
Upgrade target to es2022 (#12852)
* Upgrade target to es2021

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

* Upgrade to es2022

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

* Fix babel config

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

* Fix React contexts

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

* Fix types

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

* Fix React state

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-08-01 16:14:28 +00:00
David Baker
77062ac721 Move General user settings styles to more specific places
This was w grab bag of styles for the email/phone components and
one for something now in preferences. Move them elsewhere so I can
rename the tab sensibly.
2024-08-01 16:45:56 +01:00
David Baker
9cd0c247a2
Convert general user to functional component (#12856) 2024-08-01 15:28:11 +00:00
Andrew Ferrazzutti
127051892d
Invite dialog: display MXID on its own line (#11756)
* Invite dialog: display MXID on its own line

Signed-off-by: Andrew Ferrazzutti <andrewf@element.io>

* Refactor to satisfy i18n linter

Signed-off-by: Andrew Ferrazzutti <andrewf@element.io>

---------

Signed-off-by: Andrew Ferrazzutti <andrewf@element.io>
2024-08-01 14:17:49 +00:00
Michael Telatynski
a38a5161ef
Align RoomSummaryCard styles with Figma (#12793)
* Extract useIsVideoRoom hook

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

* Align RoomSummaryCard styles with Figma

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

* Update screenshots

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

* Update screenshot

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-08-01 12:00:40 +00:00
Michael Telatynski
b6addb4118
Fix React contexts (#12855) 2024-08-01 13:01:05 +01:00
herkulessi
fa60edf00f
Ignore permalink_prefix when serializing pills (#11726)
* Ignore permalink_prefix when serializing Markdown

fixes vector-im/element-web/issues/26002

During serialization of messages, pills were wrongfully serialized to a URL
starting with `permalink_prefix`. This is against the Spec (which mandates
https://matrix.to/#/ links) and the resulting pills were not recognized as
pills in other clients.

Spec-Appendix concerning matrix.to links: https://spec.matrix.org/v1.8/appendices/#matrixto-navigation

Signed-off-by: Lars Wickel <git@herkulessi.de>

* Test for pill serialization with permalink_prefix set

Signed-off-by: Lars Wickel <git@herkulessi.de>

* Test that permalink_prefix is used for permalink creation

Signed-off-by: Lars Wickel <git@herkulessi.de>

* Fix lint issues introduced

Signed-off-by: Lars Wickel <git@herkulessi.de>

* Incorporate requested changes

Signed-off-by: Lars Wickel <git@herkulessi.de>

---------

Signed-off-by: Lars Wickel <git@herkulessi.de>
Co-authored-by: herkulessi <git@herkulessi.de>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2024-08-01 11:17:44 +00:00
David Baker
a0c029c3c1
Fix alignment of RTL messages (#12837)
* Fix alignment of RTL messages

Inspired by https://github.com/matrix-org/matrix-react-sdk/pull/5453 but
hopefully with the edited marker in the right place.

This is a PoC: types aren't correct and the style needs pulling
out to a class. Plus it would probably need more visual tests added.
If this looks acceptable, I can make these changes.

* Fix spacing between text and edited annotation

* Update snapshot

* Update more snapshots

* More snapshots

* More more snapshots

* Split out style

* Fix emotes

This will cause them always be right-justified if the display name
is rtl.

* Add playwright test for ltr/rtl message rendering

* Better snapshots

* Await on message sending

* Better waiting, hopefully

* Old snapshot files

* Really hopefully fixed screenshots this time

* Don't include the message action bar in the screenshots
2024-07-31 22:23:46 +00:00
Michael Telatynski
f3ac6692da
Handle media download errors better (#12848)
* Handle media download errors better

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

* Add test

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

* Show error if media download failed

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

* More tests

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-31 14:07:59 +00:00
Michael Telatynski
b55653ddf0
Extract Extensions into their own right panel tab (#12844)
* Extract useIsVideoRoom hook

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

* Move useWidgets hook to WidgetUtils

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

* Extract Extensions into their own right panel tab

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

* Remove unused components & classes

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

* Tests

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

* Update screenshots

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-31 09:38:25 +00:00
Michael Telatynski
fae5bf1612
Remove topic from new room header and expand right panel topic (#12842)
* Remove topic from new Room Header

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

* Hide topic edit in right panel unless user has permission to edit

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

* Expand right panel room topic by default

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

* Fix text align of topic in right panel

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

* Update tests

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

* Fix topic colour in right panel

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

* Delint

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

* Update snapshot

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

* Exclude `Add topic` from text-align

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

* Don't show `Add topic` if !perms

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-31 09:23:01 +00:00
ElementRobot
aeecba97e9
[create-pull-request] automated change (#12846)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-07-31 06:17:53 +00:00
Michael Telatynski
2e6f8511f2
Extract useIsVideoRoom hook (#12843)
* Extract useIsVideoRoom hook

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

* Update RoomInfoLine.tsx

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-30 17:36:04 +00:00
Richard van der Hoff
bc21ed3010
Fix picklekey debug (#12845)
https://github.com/matrix-org/matrix-react-sdk/pull/12831 added some logging,
but I messed it up
2024-07-30 17:21:43 +00:00
Michael Telatynski
02047243f0
Rework how the onboarding notifications task works (#12839)
* Rework how the onboarding notifications task works

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

* Add test

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-07-30 14:55:08 +00:00
David Baker
272a66baa5
Split up bodyToHtml (#12840)
* Split up bodyToHtml

This (very incrementally) splits up the bodyToHtml function to avoid
the multiple return types and hopefully make it a touch easier to
comprehend. I'd also like to see what the test coverage says about
this, so this is is somewhat experimental. This shouldn't change
any behaviour but the comments in this function indiciate just how
subtle it is.

* Remove I prefix

* Missed emoji formatting part
2024-07-30 13:35:16 +00:00
Michael Telatynski
66a89d8a84
Update tests for new unsupported browser view (#12836)
* Update tests for new unsupported browser view

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

* Add new desktop_builds config options

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-07-30 13:16:21 +00:00
Michael Telatynski
b0392b8fc3
Update toast styles to match Figma (#12833)
* Warn users on unsupported browsers before they lack features

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

* Update Learn more link

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>

* Update toast styles to match Figma

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

* Remove test code

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

* update tests

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

* Update tests

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

* Update snapshots

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-30 12:57:15 +00:00
Michael Telatynski
a12c1874f9
Warn users on unsupported browsers before they lack features (#12830)
* Warn users on unsupported browsers before they lack features

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

* Update Learn more link

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>

* Add comments

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-29 16:05:34 +00:00
kdanielm
96777f84b5
Make micIcon display on primary (#11908)
Co-authored-by: Michael Weimann <michaelw@matrix.org>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-29 15:46:10 +00:00
David Baker
c2c108957e
Add sign out button to settings profile section (#12666)
* Add sign out button to settings profile section

And move the logic for displaying the dialog out of the user menu
to somewhere it can be re-used.

Also close any open dialog on logout, because otherwise, well... you
can guess.

* Missing import

* Update screenshot

* This button doesn't need to be an anchor

* Use Flex component

* Use new force-close function

* More tests
2024-07-29 12:53:44 +00:00
Richard van der Hoff
95db2d943c
Add some logging to pickle key save/restore (#12831)
... in an attempt to diagnose https://github.com/element-hq/element-desktop/issues/1077
2024-07-26 13:37:29 +00:00
Łukasz Polowczyk
c1420ba126
Allow Chrome page translator to translate messages in rooms (#11113)
* support message translation in chat

* Update src/HtmlUtils.tsx

* update snapshots

* Convert TextualBody-test to use snapshots

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Richard van der Hoff <richard@matrix.org>
2024-07-25 16:58:33 +00:00
Timo
3c370c6cbc
Remove MatrixRTC realted import ES lint exceptions using a index.ts for matrixrtc (#12780)
* update restricted import rules for matrixrtc

* review

* upgrade matrix-js-sdk

* add missing import
2024-07-25 12:49:41 +00:00
Timo
2e0716cc59
Fix unwanted ringing of other devices even though the user is already connected to the call. (#12742)
* Fix call ringing on other device when already joined.
This is done by checking if a user is already connected to the call on
another device before playing the ring sound.

* Add test
2024-07-25 09:34:19 +00:00
Timo
72e7df0f13
Acknowledge DeviceMute widget actions (#12790)
* acknowledge DeviceMute widget actions (to prevent sending the  default error response to the widget)

* rephrase comment

* test for widget action ack
2024-07-25 09:29:01 +00:00
ElementRobot
0e2ba42ad7
[Backport staging] Update compound-design-tokens to satisfy compound-web peer dependency (#12820)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-24 11:22:21 +00:00
renovate[bot]
bacf738ac8
Update all non-major dependencies (#12815)
* Update all non-major dependencies

* Prettier

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-24 10:53:13 +00:00
Michael Telatynski
ae18bb9ba4
Update compound-design-tokens to satisfy compound-web peer dependency (#12808)
* Update compound-design-tokens to satisfy compound-web peer dependency

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

* Update snapshots

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-24 09:49:33 +00:00
R Midhun Suresh
dafc97fe83
Add release announcement for the new room header (#12802) 2024-07-23 12:46:24 +01:00
R Midhun Suresh
bb1b7f1fd0
Default the room header to on (#12803)
* Default the room header to on

* Refactor code into helper method

Add a method to open/close the room info panel and use it everywhere.

* Fix broken tests, update snapshots and screenshots

* Update room header tests to make sense with the new header
2024-07-23 10:56:25 +00:00
Michael Telatynski
25fcd6a65f
Update Thread Panel to match latest designs (#12797)
* Add reusable empty state for the right panel

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

* Update tests

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

* Improve coverage

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

* Update Thread Panel to match latest Figma

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

* Update tests

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

* i18n

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

* Use --cpd-space var

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-07-23 09:12:07 +00:00