Commit graph

1497 commits

Author SHA1 Message Date
Richard van der Hoff
34439ee652
Simplify references to VerificationRequest (#11045)
* Use new `VerificationRequest.getQRCodeBytes()`

* Use new `VerificationRequest.otherDeviceId`

* Remove references to `VerificationRequest.channel`

* Replace references to `VerificationRequest.{requesting,receiving}UserId`

Normally these are guarded by `request.initiatedByMe` so we can trivially
replace it with `request.otherUserId` or `client.getUserId()`. In one place we
actually need to apply some logic.

* increase test coverage

* Even more test coverage

* Even more test coverage
2023-06-07 14:43:44 +00:00
Richard van der Hoff
2801afe570
Inline VerificationRequest.{invalid,ready,started,done,cancelled} (#11013)
* Inline `VerificationRequest.{invalid,ready,started,done,cancelled}`

These methods are all just shortcuts for checks on `phase`, so let's get rid of
them

* update test

* Add some more tests

* even more coverage

* fix tests
2023-06-06 08:27:53 +00:00
Michael Telatynski
6fa005dcfc
Inhibit interactions on forward dialog message previews (#11025)
* Inhibit interactions on forward dialog message previews

and improve inhibiting of video message body

* Consolidate prop types

* Iterate

* Update src/components/views/messages/IBodyProps.ts

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2023-06-06 08:20:21 +00:00
Michael Telatynski
6b46d6e4f8
Add MatrixClientPeg::safeGet and use it in tests (#10985) 2023-06-05 18:12:23 +01:00
Michael Telatynski
938aefc51c
Pass around MatrixClients instead of using MatrixClientPeg (#11000) 2023-05-30 10:36:34 +01:00
Michael Telatynski
30429df948
Eliminate the use of MatrixClientPeg in utils (#10910) 2023-05-23 16:24:12 +01:00
Suguru Hirahara
8779219727
Hide empty MessageActionBar on message edit history dialog (#10447)
* Hide MessageActionBar on message edit history dialog if neither redact nor view source button is rendered inside it

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Revert "Hide MessageActionBar on message edit history dialog if neither redact nor view source button is rendered inside it"

This reverts commit 247e7d2c8f3a5e2979c93f6a8c31d47d540cc186.

* Iterate - Hide MessageActionBar on message edit history dialog if neither redact nor view source button is rendered inside it

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>

* Feedback

---------

Signed-off-by: Suguru Hirahara <luixxiul@users.noreply.github.com>
2023-05-18 04:17:05 +00:00
David Baker
1aa9860743
Fix the state shown for call in rooms (#10833)
* Fix the state shown for call in rooms

We split out a separate state for 'missed' separate to 'ended' which
caused confusion as the state got set to this when it shouldn't have,
so calls that wouldn't have been shown as missed were.

Remove the csutom call state and just have the missed state as a
variant of the ended state. Re-order the if clauses so they hit the
right ones. Also don't pass the callState variable into renderContent()
which is a class method and so has access to the same info anyway.

* Fix test

* i18n (reorder only)

* Fix test

* Fix types

* Add test for legacy call event tile
2023-05-15 08:37:40 +00:00
Michael Telatynski
f758cbd38a
Make more of the codebase conform to strict types (#10859) 2023-05-12 09:49:37 +01:00
Michael Telatynski
949557b5c6
Fall back from server generated thumbnail to original image (#10853)
* Add test for falling back from thumbnail to original

* Fall back from server generated thumbnail to original image
2023-05-11 09:20:14 +00:00
Michael Telatynski
82e32035fd
Conform more of the codebase to strictNullChecks (#10842) 2023-05-11 09:56:56 +01:00
Michael Telatynski
456c66db5b
Conform more of the codebase to strictNullChecks (#10800) 2023-05-10 08:41:55 +01:00
Michael Telatynski
52017f62e1
Conform more of the codebase to strictNullChecks (#10738) 2023-05-09 18:24:40 +01:00
Michael Telatynski
499d8110b3
Fix emitter handler leak in ThreadView (#10803)
* Fix emitter handler leak in ThreadView

* Help gc react stateNodes
2023-05-05 15:05:58 +00:00
Michael Telatynski
99ac9e5029
Ensure tooltip contents is linked via aria to the target element (#10729)
* Ensure tooltip contents is linked via aria to the target element

* Iterate

* Fix tests

* Fix tests

* Update snapshot

* Fix missing aria labels for more tooltips

* Iterate

* Update snapshots
2023-05-05 08:26:11 +00:00
Kerry
542bf68c63
Fix: reveal images when image previews are disabled (#10781)
* fix image wrapping when showImage previews is disabled

* strict v2
2023-05-05 03:41:42 +00:00
Michael Telatynski
96bcfc58aa
Fix error about being unable to pass ref to function component (#10707) 2023-04-27 09:46:39 +00:00
Michael Telatynski
1a0e5c1805
Fix multiple accessibility defects identified by AXE (#10606)
* Mark effects overlay canvas as aria hidden

* Ensure date separators aren't seen as focusable aria separators

* Fix

* Fix font slider not having aria label

* Add missing aria labels

* Fix settings flags setting aria-checked={null}

* Update snapshots
2023-04-17 16:09:45 +00:00
Michael Telatynski
270a26d89a
Fix view source from edit history dialog always showing latest event (#10626) 2023-04-17 16:09:17 +00:00
kenwuuu
dc4bb237d4
Replace hardcoded strings with MsgType constants (#10604)
* replace hardcoded strings with MsgType constants

* fix import and revert comments

Signed-off-by: Ken Wu kenqiwu@gmail.com

* fix import

Signed-off-by: Ken Wu kenqiwu@gmail.com

---------

Signed-off-by: Ken Wu kenqiwu@gmail.com
2023-04-17 09:37:29 +00:00
Kerry
6280395928
Fix: Images no longer reserve their space in the timeline correctly (#10571)
* test case

* fix + lint

* refix strictNullChecks issue

* add comment about max image size

* tweak

* use safer magic number
2023-04-13 01:22:16 +00:00
Andy Balaam
c496985ff3
Show a tile for an unloaded predecessor room if it has via_servers (#10483)
* Improve typing in constructor of RoomPermalinkCreator

* Provide via servers if present when navigating to predecessor room from Advanced Room Settings

* Show an error tile when the predecessor room is not found

* Test for MatrixToPermalinkConstructor.forRoom

* Test for MatrixToPermalinkConstructor.forEvent

* Display a tile for predecessor event if it contains via servers

* Fix missing case where event id is provided as well as via servers

* Refactor RoomPredecessor tests

* Return lost filterConsole to its home

* Comments for IState in AdvancedRoomSettingsTab

* Explain why we might render a tile even without prevRoom

* Guess the old room's via servers if they are not provided

* Fix TypeScript errors

* Adjust regular expression (hopefully) to avoid potential catastrophic backtracking

* Another attempt at avoiding super-liner regex performance

* Tests for guessServerNameFromRoomId and better implementation

* Further attempt to prevent backtracking

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2023-04-12 15:26:45 +00:00
Michael Telatynski
075cb9e622
Exclude message timestamps from aria live region (#10584)
* Exclude message timestamps from aria live region

* Update snapshot
2023-04-12 14:12:45 +00:00
Neeraj Vageele
ce0bd00c5b
fix file size display from kB to KB (#10561)
* fix file size display from kB to KB

* add a wrapper function for filesize

---------

Co-authored-by: Neeraj <neerajv@thirdrocktechkno.com>
2023-04-11 14:48:41 +01:00
Michael Telatynski
55d3548330
Conform more of the codebase to strictNullChecks (#10518
* Conform more of the codebase to `strictNullChecks`

* Iterate

* Fix tests
2023-04-06 11:10:14 +01:00
Michael Telatynski
e5a314617a
Conform more of the codebase to strictNullChecks (#10505
* Conform more of the codebase to `strictNullChecks`

* Iterate

* Conform more of the codebase to `strictNullChecks`

* Iterate

* Iterate

* Iterate

* Iterate
2023-04-05 09:02:40 +01:00
Michael Telatynski
bc60a9b594
Conform more of the codebase to strictNullChecks (#10504
* Conform more of the codebase to `strictNullChecks`

* Iterate
2023-04-04 11:41:46 +01:00
Michael Telatynski
cefd94859c
Conform src/components/views/messages/* code to strictNullChecks (#10461) 2023-03-29 08:22:35 +01:00
Robin
edef4cc52e
Handle group call redaction (#10465)
Redacted group call events should be interpreted as terminated calls.
2023-03-28 13:16:30 +00:00
Michael Telatynski
c225b8ec29
Conform more code to strictNullChecks (#10444
* Conform more code to `strictNullChecks`

* Fix tests

* Fix tests
2023-03-27 08:01:09 +01:00
Eric Eastwood
e5f06df3f7
Better error handling in jump to date (#10405)
- Friendly error messages with details
 - Add a way to submit debug logs for actual errors (non-networking errors)
 - Don't jump someone back to a room they already navigated away from. Fixes bug mentioned in https://github.com/vector-im/element-web/issues/21263#issuecomment-1056809714
2023-03-24 14:39:24 -05:00
Eric Eastwood
ed88e0cdce
Prevent future date selection in jump to date (#10419)
You can still type in whatever date you want (native date input behavior) but the UI picker has future dates disabled.

Fix https://github.com/vector-im/element-web/issues/20800
2023-03-22 11:45:44 -05:00
Eric Eastwood
7a68bd9cef
Fix big date separators when jump to date is enabled (#10404)
Fix https://github.com/vector-im/element-web/issues/22969
2023-03-20 11:03:36 -05:00
Michael Weimann
a86a8e7f8e
Pillify permalinks to rooms and users (#10388) 2023-03-16 15:01:09 +01:00
Michael Telatynski
1c9ea423c9
Conform more code to strictNullChecks (#10374)
* Apply `strictNullChecks` to `src/components/views/room_settings/*`

* Restore tsconfig.json

* Conform more code to `strictNullChecks`

* Iterate

* Update matrix-widget-api

* Conform more code to `strictNullChecks`
2023-03-16 11:07:29 +00:00
Kerry
209b65243a
Enable "jsx-a11y/alt-text" and "jsx-a11y/label-has-associated-control" lint rules (#10361)
* enable "jsx-a11y/alt-text" lint rule

* enable "jsx-a11y/label-has-associated-control"
2023-03-14 21:25:11 +00:00
Michael Weimann
05e3fb09d6
Roll back pillify everything (#10370) 2023-03-14 11:56:14 +01:00
Michael Telatynski
503df62191
Conform more of the codebase to strictNullChecks (#10358
* Conform more of the codebase to `strictNullChecks`

* Fix types

* Iterate

* Iterate
2023-03-13 15:07:20 +00:00
Michael Telatynski
80fc0997a4
Explicitly specify all children props (#10312) 2023-03-08 13:28:07 +00:00
Michael Telatynski
bda54a8b20
Kill off enzyme in preference of react testing library (#10255) 2023-03-06 15:17:46 +00:00
Michael Weimann
ac3c95fa84
Directly convert Matrix and room Ids to pills (#10267) 2023-03-02 11:41:17 +01:00
Michael Telatyński
629e5cb01f
Properly type Modal props to ensure useful typescript checking (#10238
* Properly type Modal props to ensure useful typescript checking

* delint

* Iterate

* Iterate

* Fix modal.close loop

* Iterate

* Fix tests

* Add comment

* Fix test
2023-02-28 10:31:48 +00:00
Michael Telatynski
76b82b4b2b
Make more code conform to strict null checks (#10219
* Make more code conform to strict null checks

* Fix types

* Fix tests

* Fix remaining test assertions

* Iterate PR
2023-02-24 15:28:40 +00:00
Robin
4c79ecf141
Say when a call was answered from a different device (#10224)
* Say when a call was answered from a different device

* Adjust font size on call tiles to match designs
2023-02-24 14:45:53 +00:00
Kerry
c07cd2462e
Ended poll tiles: add ended the poll message (#10193)
* add ended the poll message to ended poll tile

* fussy import ordering

---------

Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
2023-02-22 10:53:12 +00:00
Kerry
17bbd4eaac
Polls: show warning about undecryptable relations (#10179)
* add decryption error message to MPollBody

* test poll undecryptable message

* tidy + ling

* remove unused file
2023-02-22 10:51:44 +00:00
Florian Duros
58b8df9868
Display "The sender has blocked you from receiving this message" error message instead of "Unable to decrypt message" (#10202) 2023-02-22 11:39:09 +01:00
Kerry
a06163ee98
Poll history - ended polls list items (#10119)
* wip

* remove dupe

* use poll model relations in all cases

* update mpollbody tests to use poll instance

* update poll fetching login in pinned messages card

* add pinned polls to room polls state

* add spinner while relations are still loading

* handle no poll in end poll dialog

* strict errors

* render a poll body that errors for poll end events

* add fetching logic to pollend tile

* extract poll testing utilities

* test mpollend

* strict fix

* more strict fix

* strict fix for forwardref

* add filter component

* update poll test utils

* add unstyled filter tab group

* filtertabgroup snapshot

* lint

* update test util setupRoomWithPollEvents to allow testing multiple polls in one room

* style filter tabs

* test error message for past polls

* sort polls list by latest

* extract poll option display components from pollbody

* add ended poll list item component

* use named export for polllistitem

* test POllListItemEnded

* comments

* strict fixes

* extract poll option display components

* strict fixes

* strict
2023-02-20 18:19:50 +00:00
Germain
8c22584f64
Remove threads labs flag and the ability to disable threads (#9878) 2023-02-20 14:46:07 +00:00
Michael Telatynski
da7aa4055e
Conform more of the code base to strict null checking (#10147)
* Conform more of the code base to strict null checking

* More strict fixes

* More strict work

* Fix missing optional type

* Iterate
2023-02-13 17:01:43 +00:00