* add variant of ResetIdentityBody for when the user has no verif. methods
* no longer distinguish between the using having a passphrase or not
* use vertical stack of buttons via EncryptionCard
and update wording
* swap logic order to match rendering order
* use the same dialog when no verification options available
* make it agree with the design more
* allow signing out on initial login
* apply styling changes and remove duplicate elements
* fix and add tests
* add missing snapshot
* Apply suggestions from code review
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* use a boolean property to disable blurring instead of adding a class
* change string identifiers
* apply changes from review -- simplify logic
* change class name to avoid confusion
---------
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* fix: align default avatar in composer pills
* fix: use correct color for avatar in composer pills when there is no image
* test(e2e): add test for cider mention
* chore: fix typo
* Fix local room encryption status always not enabled
* refactor: put back the e2e test after merge
* fix: look at e2eStatus in composer of local room
* doc: add docs to `LocalRoom.isEncryptionEnabled`
* test(e2e): check composer doesn't display unencrypted state
* test: update existing tests
* test(e2e): update existing tests
* refactor: move room encryption check in a dedicated function
* refactor: make `isEncryptionEnabled` cleaner
* test: add tests for `LocalRoom.isEncrypted`
* doc: fix `useIsEncrypted` comment
---------
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
* Playwright: split `logIntoElement` into two
Split up this helper function, so that rather than being a single function with
an optional argument, it is two separate functions.
* Playwright: fix flaky shields test
Wait for the application to redirect to `/#/home` after completing security, so
that we don't end up racing with it.
Fixes https://github.com/element-hq/element-web/issues/28836
* Add tests for axe violations for the new room list
* axe doesn't like a ul/li with roles listbox/option. Changing to div/button as we have elsewhere like RoomListitemView.
* Fix RoomListPrimaryFilters test
* Justify the items in the primary filter container
to get the dropdown button on the right again
* Update snapshot
* Make the room list itself focusable
As the comment said, there was no real reason it needed to be, except
that there was because of axe. Probably having the children focusable
would be better, but Virtuoso wraps them in more divs which doesn't
satisfy axe's requirements since those inner divs are not the scrollable
ones. I can't see a better option than this right now.
* Update snapshot
---------
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
* Refactor StyledRadioButton to provide proper labels.
* Automatically change history settings to members only if room is made private
* Add tests
* lint
* lint further
* Fix clickable buttons
* Revert functional component-ing
* text tweaks
* update snapshots
* Add unit test for history vis changes
* lint
* Update snapshots
* Fix flakes
* lint
* Block change recovery key button while a change is ongoing.
* Add disable check
* lint
* Ensure we test that spamming the button doesn't break it.
* Mock out modals
* lint
* add two more clicks
* lint
---------
Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
* Always show media from your own user
* Update usages of useMediaVisible
* lint
* Add a test for HideActionButton
* Improve docs
* Document the event
* fixup test
* Allow users to hide their own media if they wish.
* Update tests
* remove a check\
* tweak
* tweak
* Update vector-im
* Update snapshots
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update tests
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Make BaseDialog's div keyboard focusable and fix test.
* Update more e2e tests to use switch instead of checkbox
* fix useParticipants incorrectly returning an array when a map is expected
* Try again to fix calParticipants
* try fix RoomHeader tests again by also mocking useParticipants
* Revert "try fix RoomHeader tests again by also mocking useParticipants"
This reverts commit f83093cc44586b881d0918e4e4dee60d3263d44b.
* Try with no dependencies
* try mocking useCall rather than just useParticipantCount
* Mock the call store rather than the hook
* Only mock the call object for tests that expect it.
* Revert "Only mock the call object for tests that expect it."
This reverts commit 043d812b1defe75eb7d9c56546317f176b4ba34e.
* Revert "Mock the call store rather than the hook"
This reverts commit 644be3155c434a309fcfd90a21370a732bb7bdd5.
* Revert "try mocking useCall rather than just useParticipantCount"
This reverts commit 92034aaff9b46fd135ee4dbcd93dd62ad5985e5e.
* Revert "Try with no dependencies"
This reverts commit fb502a68a08bd0227ace807fdaf394ed8719d92a.
* Reapply "try fix RoomHeader tests again by also mocking useParticipants"
This reverts commit e456782efd5ea860cb6679be3adf440788fe40a4.
* Revert "try fix RoomHeader tests again by also mocking useParticipants"
This reverts commit f83093cc44586b881d0918e4e4dee60d3263d44b.
* Revert "Try again to fix calParticipants"
This reverts commit c45ad3063f97cad6989ec3fe44dacf6f0904a4e1.
* Revert "fix useParticipants incorrectly returning an array when a map is expected"
This reverts commit e06d76e3f74d8f77e33247e9f4708bb39aebdce0.
* bump compound-web
* Update snapshots
* Fix bad merge, we don't need the second call to escape. The comment a couple of lines up explains things.
* Trigger build to fix licence/cla check
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: David Langley <davidl@element.io>
* Fix: Allow triple-click text selection to flow around keyword pills
* Fix: Remove unnecessary align-items property from Pill component
* Change display property of .mx_Pill from inline to inline-block to fix rendering issue in Playwright tests
* Add test for triple-click message selection with pills
* InviteDialog: show some words and a spinner while invites are being sent
* MultiInviter-test: avoid building unhandled rejected promises
If we don't handle rejected promises, jest gets confused by them. Instead,
let's create them on-demand.
* Open a "progress" dialog while invites are being sent
* Inhibit invite progress dialog when RoomUpgradeWarning dialog is kept open
... otherwise the `RoomUpgradeWarning` dialog disappears during the invites,
and the tests that assert that it is showing the correct thing fail.
enter the commit message for your changes. Lines starting
* Switch to compound CSS variables instead of old pcss vars
* update playwright screenshots
* Revert "update playwright screenshots"
This reverts commit b0a15d97f35a088fe5b67009085eab46be1316fd.
* Another go at updating screenshots
* Address review comments
* remove redundant Props
* Move Room List to ListView
- Also remove Space/Enter handing from keyboard navigation we can just leave the default behaviour of those keys and handle via onClick
* Update rooms when the primary filter changes
Otherwise when changing spaces, the filter does not reset until the next update to the RVS is made.
* Fix stickyRow/scrollIntoView when switiching space or changing filters
- Also remove the rest of space/enter keyboard handling use
* Remove the rest of space/enter keyboard handling use
* Remove useCombinedRef and add @radix-ui/react-compose-refs as we already depend on it
- Also remove eact-virtualized dep
* Update RoomList unit test
* Update snapshots and unit tests
* Fix e2e tests
* Remove react-virtualized from tests
* Fix e2e flake
* Update more screenshots
* Fix e2e test case where were should scroll to the top when the active room is no longer in the list
* Move from gitpkg to package-patch
* Update to latest react virtuoso release/api.
Also pass spaceId to the room list and scroll the activeIndex into view when spaceId or primaryFilter change.
* Use listbox/option roles to improve ScreenReader experience
* Change onKeyDown e.stopPropogation to cover context menu
* lint
* Remove unneeded exposure of the listView ref
Also move scrollIntoViewOnChange to useCallback
* Update unit test and snapshot
* Fix e2e tests and update screenshots
* Fix unit test and snapshot
* Update more unit tests
* Fix keyboard shortcuts and e2e test
* Fix another e2e and unit test
* lint
* Improve the naming for RoomResult and the documentation on it's fields meaning.
Also update the login in RoomList to check for any change in filters, this is a bit more future proof for when we introduce multi select than using activePrimaryFilter.
* Put back and fix landmark tests
* Fix test import
* Add comment regarding context object getting rendered.
* onKeyDown should be optional
* Use SpaceKey type on RoomResult
* lint
* tests: use stable MAS integration in Synapse
* Automatically follow MAS main branch
* Update the pinned Synapse container image to latest develop
* Update element-web-playwright-common to 1.4.5
* Fix the typing of the MAS config
* Update playwright-common to 1.4.6
* Use the modern MAS -> Synapse API
* Relax MAS rate limiting
* Revert using the modern API explicitly, it is now the default
* Better adjust the MAS rate limits
* Hide recovery key when asked to re-enter it when creating or changing key
* Use align-self to centre the eye icon
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
* Use CSS vars for padding
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
* Use CSS classes to avoid needing the highly specific rule
* Use a Compound variable for border width
* Add classes to snapshots
* Update screenshots
---------
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
* Remove NoOneHere disabled reason.
This was used to prohibit starting calls if the user is alone in the room.
Since there are currently issues with the user count calculation this can disable the button even when not appropriate.
On top of that, there is a reason to start a call if the room was just created and the user is still waiting for the others to join the room to then join the call.
Signed-off-by: Timo K <toger5@hotmail.de>
* some ci fixes
Signed-off-by: Timo K <toger5@hotmail.de>
* fix test snapshots
Signed-off-by: Timo K <toger5@hotmail.de>
* fix test to expect enabled call buttons
* Update snapshot for unit-tests/components/views/rooms/RoomHeader/RoomHeader-test.tsx
---------
Signed-off-by: Timo K <toger5@hotmail.de>
Co-authored-by: fkwp <github-fkwp@w4ve.de>
* Fix downloading files with authenticated media API
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Update snapshot
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Fix test
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
---------
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* Show a blue lock instead of a grey shield for unencrypted rooms
* Update screenshots and snapshot
* Update snapshots and fix e2e test that used to expect the grey shield
* lint and add tests for shield
* Update more screen shots
* finish unit test for left icon
* Remove unneeded check
* Don't bother adding stray props to E2EIcon for data-testid
* Upate snapshots
* feat: add `PlayPauseButton` to storybook
* feat: add generic media body
* feat: add seekbar component
* chore: add ViewWrapper to help writing stories with vm
* refactor: move `formatBytes` from `formattingUtils` into shared component
* refactor: add `className` props to `Clock`
* feat: add new audio player component
* test(e2e): add screenshots for new shared components
* feat: add AudioPlayerViewModel
* feat: use new audio player in `MAudioBody`
* refactor: remove old audio player
* test(e2e): update existing tests
* refactor: remove unused `DurationClock`
* refactor: rename `SeekBar` into `LegacySeekBar`