100 Commits
Author SHA1 Message Date
RobinandGitHub c021fc1548 Merge pull request #3995 from element-hq/toger5/fix-double-leave-sound
Fix play of second leave sound
2026-06-02 14:46:43 +02:00
RobinandGitHub 399b7d83da Merge pull request #3988 from element-hq/renovate/livekit-client
Update dependency livekit-client to v2.19.0
2026-06-02 11:50:10 +02:00
Robin 47326c28d3 Fix type error 2026-06-02 11:33:17 +02:00
RobinandGitHub 084fa20b3d Merge pull request #4003 from element-hq/device-switch-fixes
Show the right labels in device switcher menus
2026-06-02 11:29:28 +02:00
Robin cec78a383d Fix footer stories 2026-06-02 11:14:53 +02:00
RobinandGitHub faa34aeaaa Merge pull request #3987 from element-hq/renovate/compound
Update dependency @vector-im/compound-design-tokens to v10.2.0
2026-06-02 10:48:44 +02:00
Robin 5fed562db2 Request full device names when device switchers are open 2026-06-02 10:36:57 +02:00
Robin 164765cd27 Show the right fallback labels in device switcher menus 2026-06-02 10:15:40 +02:00
RobinandGitHub af8a876adc Merge pull request #3999 from element-hq/renovate/embedded-package-dependencies
Update Gradle to v8.14.5
2026-06-02 08:42:39 +02:00
RobinandGitHub 0de6e94647 Merge pull request #3983 from element-hq/one-on-one-portrait-regressions
Fix a couple more regressions due to the one-on-one portrait layout
2026-05-20 17:03:54 +02:00
Robin 8d07d552d7 Ensure landscape layout is always edge-to-edge on mobile
The spotlight landscape layout was edge-to-edge previously, and should remain that way.
2026-05-20 16:11:07 +02:00
Robin 8324ce2ce0 Avoid overlapping spotlight tiles with the app bar
The default inset that is given to the fixed layout layer needs to account for the app bar now.
2026-05-20 16:11:07 +02:00
RobinandGitHub eaa049433a Merge pull request #3979 from element-hq/settings-footer-glitch
Stop the settings button from appearing while footer is fading out
2026-05-20 15:15:37 +02:00
Robin 4b175b814e Update and simplify tests 2026-05-20 13:43:33 +02:00
Robin 43f1b89535 Stop the settings button from appearing while footer is fading out
The designs actually never want us to show the settings button in the footer if an app bar is in use (as in Element X mobile apps), so just avoid showing it at all in that case.
2026-05-20 12:38:18 +02:00
RobinandGitHub 284d76e333 Merge pull request #3977 from element-hq/posthog-updates
Allow PostHog dependency updates again
2026-05-20 12:22:51 +02:00
Robin 7b32135328 Ensure that foreground elements of media tile do not overlap app bar
Because the type of header that we use in Element X (an 'app bar') lives in a different place in the document than the other headers, it needs a special branch to propagate the right insets.
2026-05-20 11:55:27 +02:00
Robin 94ce207581 Allow PostHog dependency updates again 2026-05-20 11:50:01 +02:00
RobinandGitHub 6b261611a5 Log unhandled promise rejections in rageshakes (#3972)
For more comprehensive rageshake logs. Copied from Element Web's rageshake.ts.
2026-05-19 13:44:16 +02:00
RobinandGitHub f3c0b9ed8d Merge pull request #3969 from element-hq/renovate/livekit-client
Update dependency livekit-client to v2.18.10
2026-05-18 13:30:48 +02:00
RobinandGitHub ac1297d02c Merge pull request #3916 from element-hq/one-on-one-portrait
Create a proper one-on-one call layout for portrait screens
2026-05-18 13:28:59 +02:00
RobinandGitHub d66afd734d Merge pull request #3971 from Johennes/johannes/minor-docs-fixes
Minor documentation fixes
2026-05-18 13:17:34 +02:00
Robin cfbdbca5bb Fix media foreground elements being obscured by header/footer 2026-05-18 13:08:52 +02:00
RobinandGitHub d7acce49a3 Merge pull request #3970 from Johennes/johannes/typo
Minor README fixes
2026-05-18 10:12:59 +02:00
RobinandGitHub 7e932d27da Merge pull request #3939 from element-hq/renovate/github-actions
Update GitHub Actions
2026-05-15 11:42:37 +02:00
RobinandGitHub a1e03ea389 Merge pull request #3942 from element-hq/renovate/compound
Update dependency @vector-im/compound-design-tokens to v10.1.1
2026-05-15 11:36:20 +02:00
Robin de52ea6590 Fix tests 2026-05-15 11:29:22 +02:00
Robin 9ad5d02e31 Merge branch 'livekit' into one-on-one-portrait 2026-05-15 11:28:47 +02:00
Robin f3234b1c3e Merge branch 'livekit' into renovate/github-actions 2026-05-15 11:26:25 +02:00
Robin 53acd2596c Merge branch 'livekit' into renovate/compound 2026-05-15 11:20:55 +02:00
Robin b562a0f721 Create a proper one-on-one call layout for portrait screens 2026-05-13 09:54:58 +02:00
RobinandGitHub bd2de29470 Merge pull request #3922 from element-hq/hs/compound-switch
Use Compound Switch component
2026-05-11 09:51:56 +02:00
Robin 069074d241 Merge branch 'livekit' into hs/compound-switch 2026-05-11 09:36:08 +02:00
Robin d50c8e0ca9 Update Playwright test to look for 'Decline' button
Since the label of this button is changing in Element Web.
2026-05-06 12:37:31 +02:00
RobinandGitHub 5ca50fdb63 Merge pull request #3913 from element-hq/fkwp/feature_relax_homeserver_offline
[Feature] add grace period before reporting the sync loop as disconnected
2026-05-04 18:18:27 +02:00
Robin 7916360b52 Convert all grace period tests to marble tests 2026-05-04 18:01:41 +02:00
RobinandGitHub 83a9a2a86c Merge pull request #3903 from element-hq/edge-to-edge
Allow calls to display edge-to-edge on mobile
2026-05-04 15:40:08 +02:00
RobinandGitHub 0470dabff2 Merge pull request #3940 from element-hq/renovate/all-minor-patch
Update all non-major dependencies
2026-05-01 16:10:27 +02:00
Robin f093946a29 Allow calls to display edge-to-edge on mobile
By adding viewport-fit=cover to the <meta name="viewport"> header, the page now requests to be displayed edge-to-edge across the entire screen. This gives us control over what we display around camera cut-outs and system navigation UI, if the user agent supports it. I then adjusted the styles of various UI elements to ensure that they still lie within the screen's safe area.
2026-05-01 12:14:40 +02:00
RobinandGitHub 72d922468e Merge pull request #3914 from element-hq/valere/playwright/update_test_for_latest_web
Dismiss the new invite confirmation modal
2026-04-23 17:06:34 +02:00
RobinandGitHub ab05e8d250 Merge pull request #3900 from element-hq/invert-buttons-again
Invert the microphone and video button colors again
2026-04-21 14:09:29 +02:00
Robin e9fd84816e Invert the colors of the camera and microphone buttons again
Turns out design prefers the button colors how they were prior to fa844446b6.
2026-04-21 11:21:48 +02:00
RobinandGitHub 2c65a75ba8 Merge pull request #3889 from element-hq/multiple-screen-shares
Fix visual glitches with multiple screen shares
2026-04-17 13:09:41 +02:00
Robin 7e39889f78 Fix name tags appearing in the wrong place with multiple screen shares
They were not properly being contained to where the MediaView is supposed to appear, causing them to all stack up on the first screen share in the spotlight tile.
2026-04-17 12:39:40 +02:00
Robin 96b343effc Fix forward/back buttons not showing up on desktop for multiple screen shares
6667fc54c0 changed this CSS selector that shows buttons on hover to only target the buttons in the bottom right corner of the spotlight tile, causing the forward/back buttons to stay invisible.
2026-04-17 12:23:29 +02:00
Robin e8963effe2 Test that the local user can see their own screen share
To make this test work I had to extend the mocking of the CallViewModel tests to make a local connection object exist.
2026-04-15 20:03:49 +02:00
Robin b03524e25f Make screen sharing work more like speaking marbles in tests
This approach is more flexible in that it allows even the local participant to share their screen in CallViewModel tests, and more rigorous in that it ensures that application code is reacting specifically to track publications.
2026-04-15 19:56:04 +02:00
Robin 832c5784d4 Fix local screen share not appearing in one-on-one calls
This was regressed by 9dfade68ee.
2026-04-15 19:55:32 +02:00
RobinandGitHub 014f645bb3 Merge pull request #3880 from element-hq/renovate/livekit-client
Update dependency livekit-client to v2.18.2
2026-04-15 17:00:28 +02:00
RobinandGitHub 27a6e67ce9 Merge pull request #3870 from element-hq/delete-unused-css
Delete unused CSS file
2026-04-15 11:09:33 +02:00
RobinandGitHub eccf119afd Merge pull request #3871 from element-hq/no-app-prompt
Get rid of the 'open in app' mobile prompt
2026-04-14 18:39:06 +02:00
Robin 438b6b8672 Move local video tile in one-on-one layout to be flush with the edge
Per design updates.
2026-04-13 18:30:42 +02:00
Robin 364fdb5e54 Get rid of the 'open in app' mobile prompt
We've determined that calls are working fine in mobile browsers these days and we no longer need it.
2026-04-13 18:05:00 +02:00
RobinandGitHub 3b0dce33a2 Merge pull request #3863 from element-hq/renovate/major-compound
Update Compound (major)
2026-04-13 15:30:29 +02:00
Robin 9df60310e4 Update test snapshots 2026-04-13 15:13:19 +02:00
Robin 4d1fbf0502 Delete unused CSS file
Seems this was mistakenly committed during initial development of the Grid component. src/grid/Grid.module.css is the one that's actually used.
2026-04-13 15:08:40 +02:00
RobinandGitHub 0025d4f882 Merge pull request #3868 from element-hq/reactions-placement
Fix placement of reaction and raised hand indicators
2026-04-13 15:06:44 +02:00
Robin 5daa110f7e Make the footer move floating tiles out of the way when shown
If you manage to move your floating video tile to the bottom of the screen in a small landscape window, the footer obscures the tile when shown. The designs want us to smoothly move the floating tile out of the way in this case.
2026-04-13 13:13:09 +02:00
Robin 0842b2b472 Fix placement of reaction and raised hand indicators 2026-04-13 13:02:15 +02:00
RobinandGitHub 01bd1e3af7 Merge pull request #3842 from element-hq/voice-intents
Add intents for group voice calls
2026-04-13 12:34:45 +02:00
RobinandGitHub 330584ac31 Merge pull request #3827 from element-hq/storybook
Set up Storybook again
2026-04-08 17:12:16 +02:00
RobinandGitHub 417164cc11 Merge pull request #3855 from element-hq/changelog-labels
Reconfirm that a PR has a changelog label when new commits are pushed
2026-04-08 16:00:07 +02:00
Robin 2a5acc0207 Reconfirm that a PR has a changelog label when new commits are pushed
Without re-running the changelog label workflow on new commits, PRs get stuck waiting for the check after new commits are pushed.
2026-04-08 15:08:54 +02:00
RobinandGitHub efd1b42da0 Merge pull request #3847 from element-hq/renovate/npm-vite-vulnerability
Update dependency vite to v8 [SECURITY]
2026-04-07 01:45:41 +02:00
Robin 31b35463fc Fix build 2026-04-07 01:31:21 +02:00
RobinandGitHub 3c2c189830 Merge pull request #3838 from element-hq/valere/refactor_transport_discovery
Refactor LocalTransport discovery and validation
2026-04-06 13:24:16 +02:00
Robin 2c34e681a1 Fix tests 2026-04-06 12:58:26 +02:00
RobinandGitHub 48226795de Merge pull request #3846 from element-hq/renovate/major-compound
Update dependency @vector-im/compound-design-tokens to v9
2026-04-06 12:44:47 +02:00
RobinandGitHub a84419c8a4 Merge pull request #3824 from element-hq/renovate/major-compound
Update dependency @vector-im/compound-design-tokens to v8
2026-04-03 19:07:59 +02:00
Robin f0ec4b9add Add intents for group voice calls
This adds two new intents: start_call_voice and join_existing_voice. I need the latter in order to implement Element Web's new incoming call toasts, in which you can turn off your video before joining a group call. The other one, start_call_voice, exists more for completeness than anything; we don't currently want to allow users to start voice calls in group chats in our messenger clients, but maybe Cinny would, for instance.
2026-04-03 18:47:13 +02:00
RobinandGitHub 47e14ff574 Merge pull request #3832 from element-hq/renovate/all-minor-patch
Update all non-major dependencies
2026-04-03 18:09:58 +02:00
Robin 55eea7a968 Fix type error 2026-04-03 17:48:42 +02:00
RobinandGitHub 121160e835 Merge pull request #3837 from element-hq/renovate/npm-lodash-es-vulnerability
Update dependency lodash-es to v4.18.1 [SECURITY]
2026-04-03 14:57:35 +02:00
Robin f7488a0474 Avoid redundantly showing the local user in the PiP tile
If you are the only participant in the call, the expanded spotlight layout would redundantly show your media in both the spotlight and PiP tiles. This is a regression; in versions 0.16.1 and earlier we would avoid showing the same user twice.
2026-04-01 13:16:39 +02:00
Robin c9eab59161 Create a StarRatingInput story 2026-03-30 18:26:38 +02:00
Robin 4cf75c8eeb Create a LayoutToggle story 2026-03-30 18:26:38 +02:00
Robin 2de151d94d Set up Storybook again 2026-03-30 18:26:38 +02:00
RobinandGitHub b40feae7da Merge pull request #3810 from element-hq/robin/button-accessibility
Improve accessibility of microphone, camera, and screen share buttons
2026-03-24 17:36:36 +01:00
RobinandGitHub e15761d8ee Merge pull request #3703 from element-hq/renovate/compound
Update Compound
2026-03-24 17:20:01 +01:00
Robin c60ed50a9d Attempt to fix end-to-end widget tests 2026-03-24 17:04:28 +01:00
Robin 6dcd883fc3 Update test snapshots 2026-03-24 16:10:19 +01:00
Robin c0d60b2c29 Improve accessibility of microphone, camera, and screen share buttons
Taking Valere's suggestion of giving them the 'switch' role. Also, the aria-label attributes were redundant (having tooltips already gives the buttons aria-labelledby).
2026-03-21 02:53:48 +01:00
RobinandGitHub 4d69565312 Merge pull request #3809 from element-hq/robin/invert-buttons
Invert the colors of the camera and microphone buttons
2026-03-18 14:49:55 +01:00
Robin fa844446b6 Invert the colors of the camera and microphone buttons
So that they use primary color tokens when unmuted, and secondary color tokens when muted. This makes them work like the screen sharing button.
2026-03-18 11:29:55 +01:00
Robin 9dfade68ee New ringing UI
This implements the new ringing UI by showing a placeholder tile for the participant being dialed, rather than an overlay.
2026-03-18 11:20:43 +01:00
RobinandGitHub 5cf5227eaa Merge pull request #3802 from element-hq/toger5/fix-qs-glob-js-yaml-security
Update qs, js-yaml, glob for security patches
2026-03-13 17:31:40 +01:00
RobinandGitHub 467675ff40 Merge pull request #3785 from robintown/unpin-deps
Unpin Knip and LiveKit track processors
2026-03-09 14:35:52 +01:00
Robin 4c7fad30c0 Silence new Knip errors 2026-03-09 13:11:48 +01:00
Robin 4922249f41 Unpin Knip and LiveKit track processors
These dependencies were held back on old versions because of issues that are now resolved (see 2fca7e3719 and 44eb8acaee).
2026-03-09 13:00:43 +01:00
RobinandGitHub 06c15ded37 Merge pull request #3747 from JakeTripplJ/screenshare-volume
Add volume control to screen shares
2026-03-09 10:59:45 +01:00
Robin 885a523e91 Fix formatting 2026-03-09 10:44:22 +01:00
Robin 313b8285d9 Make the screen share volume button accessible on mobile
In landscape orientation the button would be buried underneath the footer, which would block interaction with it. This commit changes the footer to not show in cases where a button has been pressed.
2026-03-09 10:30:42 +01:00
Robin 3bbbac23a0 Adjust dimensions of screen share volume menu 2026-03-06 23:15:59 +01:00
Robin c7a16e9dfd Refactor screen share volume button into a component 2026-03-06 23:14:15 +01:00
RobinandGitHub 38e79bb7db Merge pull request #3764 from element-hq/renovate/github-actions
Update docker/login-action digest to c94ce9f
2026-03-02 13:44:15 +01:00
RobinandGitHub 23050075b7 Merge pull request #3765 from element-hq/renovate/embedded-package-dependencies
Update embedded package dependencies
2026-03-02 12:31:27 +01:00
RobinandGitHub dcb7143359 Merge pull request #3755 from element-hq/robin/ringing
Convert media view model classes to interfaces
2026-02-27 17:27:58 +01:00
Robin 0ce24929dc Add TODO to clean up encryption status code 2026-02-27 17:12:24 +01:00
Robin 9930288d1f Move observeInboundRtpStreamStats$ into the appropriate file 2026-02-27 17:08:04 +01:00
Robin 6b51b7dc58 Split MediaViewModel into multiple files 2026-02-25 22:41:28 +01:00