The current keyboard shortcuts for GoToHome and ToggleHiddenEventVisibility are:
| | other | macOS |
|----------------------------- |-------------- |-------------- |
| GoToHome | Ctrl–Alt–H | Ctrl–Shift–H |
| ToggleHiddenEventVisibility | Ctrl–Shift–H | Cmd–Shift–H |
This removes both distinctions for macOS in order ToggleHiddenEventVisibility not to conflict with...
1. the built-in Safari keyboard shortcut for opening the Home page (Cmd–Shift–H)
2. the KeyBindingAction for GoToHome.
Co-authored-by: Florian Duros <florianduros@element.io>
* Track available filters and expose this info from the vm
- Adds a separate hook that tracks the filtered rooms and the available
filters.
- When secondary filters are added, some of the primary filters will be
selectively hidden. So track this info in the vm.
* Write tests
* Fix typescript error
* Fix translation
* Explain what a primary filter is
* Attach the new store to window
* Fetch rooms after space store is ready
If we fetch a list of rooms and then wait for the space store to be
ready, we will need some way of handling the onAction calls we get
while we wait. These calls are dropped now.
* Update quick settings menu to use a11y roles.
* Add e2e test to test quick menu rendering
* Use a testid for now.
* lint lint
* Revert aria changes
* revert managed
* write screenshot
* Implement the favourite filter
* Make the room node capable of dealing with filters
- Holds data to indicate which filters apply
- Provides method to check if a given set of filters apply to this node
- Provides a method to recalculate which filters apply
* Wire up the filtering mechanism in skip list
* Use filters in the store
* Remove else
* Use a set instead of map
* Add space to the bottom of the room summary actions below leave room
* 8x not 6x
* Spacing needs to be within the scoll content, add it to the bottom of the leave action
* Update RoomSummaryCard-test.tsx.snap
* Fix snapshot and add screenshot test
* Refactor submit rageshake so that it uses the new error codes.
* Improve error information given in Bug Report Dialog
* use type
* Refactor with generic error & policy link.
* lint
* lint
* Add BugReportDialog test
* fix time travel
* use waitFor while waiting for fetch to finish
* lint
* Drop error prefix as per 3973bb38ef
* small fixes
* Don't change string here.
* Fixup i18n strings.
* Avoid destroying calls until they are hidden from the UI
We often want calls to exist even when no more participants are left in the MatrixRTC session. So, we should avoid destroying calls as long as they're being presented in the UI; this means that the user has an intent to either join the call or continue looking at an error screen, and we shouldn't interrupt that interaction.
The RoomViewStore is now what takes care of creating and destroying calls, rather than the CallView. In general it seems kinda impossible to safely create and destroy model objects from React lifecycle hooks, so moving this responsibility to a store seemed appropriate and resolves existing issues with calls in React strict mode.
* Wait for a close action before closing a call
This creates a distinction between the user hanging up and the widget being ready to close, which is useful for allowing Element Call to show error screens when disconnected from the call, for example.
* Don't expect a 'close' action in video rooms
These use the returnToLobby option and are expected to remain visible when the user leaves the call.
* prevent user from accidentally triggering multiple identity resets
* apply changes from review and update to latest design
* Use a CSS class and compound variable
* update snapshot
* Update test/unit-tests/components/views/settings/encryption/ResetIdentityPanel-test.tsx
---------
Co-authored-by: Richard van der Hoff <richard@matrix.org>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Add method to await space store setup
Otherwise, the room list store will get incorrect information about
spaces and thus will produce an incorrect roomlist.
* Implement a way to filter by active space
Implement a way to filter by active space
* Fix broken jest tests
* Fix typo
* Rename `isReady` to `storeReadyPromise`
* Fix mock in test
* Update the store on action
* Add more tests
* Add newlines between case blocks
* Make code more readable
- Make if/else more consistent
- Add comment on findAndAddRoom()
* Add more tests
* Remove redundant code
On a timeline action, we return early if payload.room is falsy.
So then why do we need to retry fetching the room?
I think this can be removed but will ask others if there's some
conext I'm missing.
* Fix test
* Remove more redundant code
* Add more tests
* Explain intention in comment
* Emit only once even when adding multiple rooms
* Add missing tsdoc
* Implement enough of the new store to get a list of rooms
* Make it possible to swap sorting algorithm
* Don't attach to window object
We don't want the store to be created if the labs flag is off
* Remove the store class
Probably best to include this PR with the minimal vm implmentation
* Create a new room list store that wraps around the skip list
* Create a minimal view model
* Fix CI
* Add some basic tests for the store
* Write more tests
* Add some jsdoc comments
* Add more documentation
* Add more docs
* feat(new room list): add space menu in view model
* test(new room list): add space menu in view model
* feat(new room list): add space menu in room list header
* chore: update i18n
* test(new room list): add tests for space menu
* test(new room list): update room list tests
* test(e2e): add tests for space menu
* Implement a skip list for storing rooms
This data structure stores rooms in a given sorted order and allows for
very fast insertions and deletions.
* Export function to get last timestamp of room
* Write tests for the skip list
* Implement enough of the new store to get a list of rooms
* Make it possible to swap sorting algorithm
* Fix comment
* Don't attach to window object
We don't want the store to be created if the labs flag is off
* Remove the store class
Probably best to include this PR with the minimal vm implmentation
* DeviceListener: improve logging
use a LogSpan to tie together logs from the same run, and add some more logs
for various cases
* Regression playwright test
* Remove unused mocking of `getCrossSigningId`
DeviceListener no longer reads this thing
* Clean up unit tests
Remove redundant describe block
* Remove the "out of sync" toast when we are no longer out of sync
Receiving the crypto secrets via secret sharing should make the toast go away.
* chore: update `@vector-im/compound-design-tokens` & `@vector-im/compound-web` to last version
* chore: use `error-solid` icon instead of `error`
* chore: update jest snapshot
* fix: `AccessibleButton` lint
* feat(new room list): add compose menu in header for spaces
* test(new room list): add tests for space
* test(e2e new room list): update space test
* chore: formatting and reuse type var
* Use EditInPlace for identity server picker.
* Exclude picker from default dialog button styles.
* Remove unused import.
* Update test
* Remove unused css
* Update test
* drop only
* Add a test for setting an ID server.
* Add a unit test for SetIdServer
* fix tests
* Reformat mx_Dialog button :not list to use a more readable selector.
* Reformat other :not sections
* forgot a comma
* We're in 2025 now.
* Update copyright + use class methods.
* feat: create new header
* test: add tests to view model
* test: add tests to view
* feat: add header to new room list
* test(e2e): update RoomListView snapshot
* test(e2e): add tests for room list header
* refactor: minor code improvement
* Move CSS for ResetIdentityPanel into EncryptionCard
This allows it to be re-used in other components. It's a *bit* magic
that EncryptionCard applies style to divs within it, although it
somewhat makes sense that it wants them styled a particular way.
The alternative would be to add another component for a div child of
encryption card like EncryptionCardButtons that just makes it flexbox
and centered: I'm not sure which is better.
* Update snapshot
* Update snapshot
* Do it the other way
Because we only want it in the destructive cards, not the other ones.
* Use flex component
* Also use gap prop and update snapshots
* Fix justification
* Snaspshots again
* Set align-items to normal
As center affected the list items too. Also add it to the flex
component because it didn't have it as an option.
* Add Windows 64-bit arm link and remove 32-bit link on compatibility page
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>