* feat: move secondary filters into primary filters in vm
* test: update room list view model tests
* feat: remove secondary filter menu
* test: update and remove secondary filter component tests
* feat: update i18n
* test: update remaining tests
* test(e2e): update screenshots and tests
* feat: add new cases for empty room list
* test(e2e): add more tests for empty room list for new primary filters
* Assert that we set backup_disabled when turning off key storage
* Prompt the user when key storage is unexpectedly off
* Playwright tests for the Turn on key storage toast
* feat: create roomsummarycard viewmodel
* feat: use roomsummurycard vm in component
* test: jest unit RoomSummaryCard and RoomSummaryCardViewModel
* chore: rename to roomsummarycardview
* feat: reput room topic without vm
* test: roomSummaryCard and roomSummaryCardVM tests
* chore: add comments on roomsummarycardVM
* fix: merge conflict with roomsummarytopic, and move to vm right_panel
* fix(roomsummarycard): remove usetransition for search update
* fix: merged file that should be deleted
* fix: roomsummurycard not well merge with roomtopic
* test: update snapshots
* Re-order primary filters
to match EX
* Update tests
* Update screenshots
* Try to make screenshot deterministic
* Just use the screenshot the CI spits out
* Try again
* Another screenshot
* Dispatch an action when room is forgotten
* Dispatch an action when room is forgotten
* Remove room on action
* Add test
* Write test for matrixchat
* Add payload info to comment
* Don't toggle to the minimised left bar size.
* Don't re-style old room list when at the minimum size
* Only apply larger minimised with on new room list
* Don't tell child views we are minimised for the new room list
* move comment to the correct place
* address PR comments
* Don't wrap search text and add truncation down to a minimum of 50px
* Put min-width on the button so that we don't have to hardcode the 50px
* Keep the flex display, shrink and truncate just the search text and keep the shortcut
* Update snapshots
* Add comment for magic value
* Make inner search text a span
* Add e2e test for smallscreen to test responsiveness
* Update snapshots
* Forcing an empty commit to fix PR
* Change minWidth to 224
This widget driver method was mistakenly filtering all state events out of the responses to read_events fromWidget actions. This was a hold-over from back when read_events had two different behaviors depending on whether you specified a state_key (i.e. before the introduction of the update_state action).
* Guard against counterpart.translate returning non-string values
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Outdent and fixup comment, remove stale development-only behaviour
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Debug flaky jest test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Iterate
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Discard changes to jest.config.ts
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Stop migrationg to MSC4278 if the config exists.
* Run migration after we have synced the client.
* Setup the SettingsController with a client.
* Add tests to check migration behaviour.
* update copyright
* Wait for sync properly
* Catch failure
* Docs
* licence
* Inline async code
* Fix migrateURLPreviewsE2EE too
* drop an import
* go away
* Ensure consistent download file name on download from ImageView
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Ensure consistent download file name on download from ImageView
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Switch from defer to PromiseWithResolvers
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Add modernizr check
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>
* feat: support up/down arrow navigation in the new room list
* feat: support tabbing in the new room list
* test: update snapshots
* test(e2e): fix room list test
* test(new room list): add landmark navigation test
* test(e2e): update screenshot test
* test: add test to `RoomListItemView`
* test(e2e): add keyboard navigation tests
* refactor: rename `setIsHover` on `setIsHoverWithDelay`
* Write failing playwright test
Basically when someone changes their name, any old tombstoned rooms that
were previously hidden would suddenly show up in the list.
* Split addRoom into two methods
- `reInsertRoom` that re-inserts a room that is already known by the skiplist.
- `addNewRoom` to add new rooms
The idea is that sometimes you only want to re-insert to noop, eg: when
you get an event in an old room that was upgraded.
* Use new methods in the RLS
Only use `addNewRoom` when absolutely necessary. Most events should
instead use `reInsertRoom` which will noop when the room isn't already
known by the skiplist.
* Fix broken tests
* Add new test
* Fix playwright test
* add loading state to view model and spinner to room list vieqw
* Update snapshots and add loading test
* avoid nested ternary operator
* Add room list skeleton loading state
* Fix loading logic
- Create RoomListStoreV3Event as to not conflict with loading event definition in Create RoomListStoreEvent.
- Add a loaded event
- Use it to determine loaded state in useFilteredRooms rather than the update event which gets fired in other cases.
* Fix isLoadingRooms logic
* update snapshots and fix test
* Forcing an empty commit to fix PR
* Fix _components.pcss order
* Fix test that wasn't doing anything
* fix tests
* Allow providing an empty title to InteractiveAuthDialog
* Make OIDC identity reset consistent with EX
* Translation changes for OIDC Identity reset (already added to Localazy)
* Fix auth tests for new wording 'Continue to account'
* Fix up type for `finished` result of Modal
The `finished` promise can be called with an empty array, for example if the
dialog is closed by a background click. This was not correctly represented in
the typing. Fix that, and add some documentation while we're at it.
* Type fixes to onFinished callbacks from Modal
These can all be called with zero arguments, despite what the type annotations
may say, so mark them accordingly.
* Remove uses of Modal `onFinished` property
... because it is confusing.
Instead, use the `finished` promise returned by `createDialog`.
* Modal: remove support for now-unused `onFinished` prop
* StopGapWidgetDriver: use `await` instead of promise chaining
* Fix up unit tests
* Allow jumping to message search from spotlight
replaces the message search hint which referenced the old UX
Fixes#29831
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update RoomSummaryCard.tsx
* Update actions.ts
* Delete src/hooks/useTransition.ts
* Update RoomSummaryCard.tsx
* Iterate
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 test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix battery drain from Web Audio
* move suspend away from constructor
* await on resume()
* Delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
* Remove room when new membership is leave
It doesn't really matter what the previous membership was.
* Fix test
* Remove on join/invite only
* Exclude kicked rooms from being removed