Commit graph

39866 commits

Author SHA1 Message Date
Kerry
9db59d75b9
Bump react-focus-lock (#7858)
* react-focus-lock to 2.5.1

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use enzyme in ASSD test so focus lock finds active element

Signed-off-by: Kerry Archibald <kerrya@element.io>

* findById and flushPromises to test utils

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-21 17:09:01 +00:00
Kerry
8b9263c808
Clean up some unit test logs (#7857)
* kill some unit test logs in arrays-test

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove mock logs that are asserted against anyway

* remove more logs

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix safeCOunterpartTranslate warnings in tests

Signed-off-by: Kerry Archibald <kerrya@element.io>

* more safeCounterpartTranslate warnings

Signed-off-by: Kerry Archibald <kerrya@element.io>

* lint

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove more logs

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add helper

Signed-off-by: Kerry Archibald <kerrya@element.io>

* naming

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-21 16:57:44 +00:00
Michael Telatynski
e2827b4082
Fix accessibility around the room list treeview and new search beta (#7856) 2022-02-21 15:46:13 +00:00
Michael Telatynski
c6b8574dcb
Inhibit tooltip on timeline pill avatars, the whole pill has its own (#7854) 2022-02-21 12:38:11 +00:00
David Baker
572fa99e67
Fix virtual / native room mapping on call transfers (#7848)
* Fix virtual / native room mapping on call transfers

By just sending them through the same code path as regular calls.

Also re-do the tests & add a test for transfer specifically.

* Optional arg

* Types
2022-02-21 12:17:09 +00:00
Andy Balaam
f1e1b7be86
Support "closed" polls whose votes are not visible until they are ended (#7842) 2022-02-21 10:21:35 +00:00
Šimon Brandner
eca64d776a
Remove layout workaround (#7853) 2022-02-21 10:05:01 +00:00
Šimon Brandner
9aa77f3417
Remove autoplayGifsAndVideos workaround (#7852) 2022-02-21 10:02:45 +00:00
Kerry
fc9a221371
Focus trap in poll creation dialog (#7847)
* add autofocus

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test

Signed-off-by: Kerry Archibald <kerrya@element.io>

* scope ids

Signed-off-by: Kerry Archibald <kerrya@element.io>

* whitespace

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-18 16:35:08 +00:00
Michael Telatynski
5f5bb4a4fe
Consolidate TileShape into TimelineRenderingType (#7843) 2022-02-18 15:56:05 +00:00
Šimon Brandner
ca89d3b96e
Fix editEvent() call (#7846)
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-02-18 15:15:18 +00:00
Šimon Brandner
fe7f1688dd
Move editEvent() to EventUtils (#7836) 2022-02-18 15:01:32 +00:00
Travis Ralston
34567b9aab
Add labs flag: Show only current profile on historical messages (#7815)
* Add labs flag: Show only current profile on historical messages

For https://github.com/vector-im/element-web/issues/3768
Related https://github.com/vector-im/element-web/issues/4677

* Use the member's user ID
2022-02-18 07:58:04 -07:00
J. Ryan Stinnett
acd051db43
Remove unused LeftPanel dimension tracking (#7845) 2022-02-18 14:46:33 +00:00
Travis Ralston
b756f03563
Keep unsent voice messages in memory until they are deleted or sent (#7840)
Fixes https://github.com/vector-im/element-web/issues/17979
2022-02-18 07:29:08 -07:00
Michael Telatynski
38a547b5d0
Remove ResizeObserver Polyfill (#7844) 2022-02-18 13:51:27 +00:00
Michael Telatynski
29c1c8d1e1
Fix ScrollPanel data-scrollbar not responding to window resizing (#7841) 2022-02-18 13:03:16 +00:00
Kerry
6fccd6b183
add cursor: pointer to actionable poll options (#7826)
* add cursor: pointer to actionable poll options

Signed-off-by: Kerry Archibald <kerrya@element.io>

* eof

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-18 11:43:07 +01:00
Johannes Krude
32e127e098
Add #/dm command to be used as a link in custom home.html (#7783) 2022-02-18 08:43:19 +00:00
Kerry
08a0c6f86c
Don't aggregate rooms and users in SpaceStore (#7723)
* add direct child maps

* track rooms, users and space children in flat hierarchy in spacestore

Signed-off-by: Kerry Archibald <kerrya@element.io>

* update spacefiltercondition to use new spacestore

* remove unused code

Signed-off-by: Kerry Archibald <kerrya@element.io>

* typos

Signed-off-by: Kerry Archibald <kerrya@element.io>

* only build flattened rooms set once per space when updating notifs

* copyright

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove unnecessary currying

Signed-off-by: Kerry Archibald <kerrya@element.io>

* rename SpaceStore spaceFilteredRooms => roomsIdsBySpace, spaceFilteredUsers => userIdsBySpace

Signed-off-by: Kerry Archibald <kerrya@element.io>

* cache aggregates rooms and users by space

Signed-off-by: Kerry Archibald <kerrya@element.io>

* emit events recursively up parent spaces on changes

Signed-off-by: Kerry Archibald <kerrya@element.io>

* exclude meta spaces from aggregate cache

Signed-off-by: Kerry Archibald <kerrya@element.io>

* stray log

* fix emit on member update

Signed-off-by: Kerry Archibald <kerrya@element.io>

* call order

Signed-off-by: Kerry Archibald <kerrya@element.io>

* extend existing getKnownParents fn

Signed-off-by: Kerry Archibald <kerrya@element.io>

* refine types and comments

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-17 21:24:05 +01:00
Michael Telatynski
658590e5bc
More posthog tracking around joining rooms and room search (#7807) 2022-02-17 18:03:27 +00:00
Germain
e997676ae2
Opt out from check for pre-join UISI for threads (#7834) 2022-02-17 17:34:20 +00:00
Kat Gerasimova
9fc1f75fe5
Update team org in triage automation (#7835) 2022-02-17 17:01:01 +00:00
J. Ryan Stinnett
a939184e10
Tear down AppTile using lifecycle tracking (#7833) 2022-02-17 16:30:36 +00:00
Michael Telatynski
f697301298
Add way to join room address via new search dialog (#7830) 2022-02-17 15:40:35 +00:00
Michael Telatynski
07d5b4139d
Add way to join room address via new search dialog (#7830) 2022-02-17 15:40:12 +00:00
RiotRobot
c19aa957b6 Merge branch 'master' into develop 2022-02-17 12:08:14 +00:00
RiotRobot
5892d8b733 v3.40.1 2022-02-17 11:55:35 +00:00
RiotRobot
c6b162d10f Prepare changelog for v3.40.1 2022-02-17 11:55:34 +00:00
RiotRobot
da6b6b3bc0 Upgrade matrix-js-sdk to 15.5.2 2022-02-17 11:52:34 +00:00
Germain
2160fd81c2
Fixes React.js console errors (#7829) 2022-02-17 11:46:19 +00:00
David Baker
548535be1f
Fix delayed badge update for mentions in encrypted rooms (#7813) (#7828)
* Fix delayed badge update for mentions in encrypted rooms

Fixes https://github.com/vector-im/element-web/issues/20859

More detail on the issue

* Remove unused import

* Fix listener removal
2022-02-17 11:34:53 +00:00
Andy Balaam
93d4364455
Prevent forwarding polls (#7819) 2022-02-17 10:57:12 +00:00
Michael Telatynski
4292381202
Fix layout inconsistencies with the room search minimized button (#7824) 2022-02-17 10:33:36 +00:00
David Baker
3be74d38d6
Fix src/lib import (#7825) 2022-02-17 10:06:19 +00:00
Akash Patel
328bbd0e08
set icon-button-color to be configurable (#7725) 2022-02-17 09:40:23 +00:00
Michael Telatynski
2f1d2ed5f8
Fix space panel notification badge behaviour and metrics (#7823) 2022-02-17 09:20:48 +00:00
Michael Telatynski
cd49852c2d
Fix icon size bug in space people context menu (#7822) 2022-02-17 09:20:15 +00:00
David Baker
01b00bf3fe
Add test for RoomNotificationState (#7820)
Regression test for https://github.com/vector-im/element-web/issues/20859
2022-02-17 09:18:37 +00:00
Andy Balaam
7387f3c80a
Allow editing polls (#7806) 2022-02-17 09:13:05 +00:00
Travis Ralston
fa9af44523
Fix left panel widgets causing app crashes (again) (#7814)
* Add type safety around left panel widget handling

* lint
2022-02-16 13:26:18 -07:00
Travis Ralston
2802d39bc9 Merge branch 'revert-7802-travis/refresh-token-idb' into develop 2022-02-16 12:52:15 -07:00
Travis Ralston
bd1568f4e4 Un-break crypto for soft logout 2022-02-16 12:33:33 -07:00
Travis Ralston
aba61fa390 Revert "Support refresh tokens (#7802)"
This reverts commit 839593412c.
2022-02-16 12:32:38 -07:00
Šimon Brandner
81f52283cf
Don't change KEYBOARD_SHORTCUTS and do some refactoring (#7818) 2022-02-16 15:24:00 +00:00
J. Ryan Stinnett
0dc1355441
Fix right panel data flow (#7811) 2022-02-16 11:19:28 +00:00
Kerry
78524bddce
apply mask-size for svgs with bigger viewbox (#7812)
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-16 09:54:40 +01:00
Michael Telatynski
c2cf3a2d9e
Fix room create tile not showing up with hidden events shown (#7810)
* Replace m.room.create with enum

* Fix room create tile not showing up with hidden events shown
2022-02-15 21:05:41 +00:00
dependabot[bot]
b5e3ba28d9
Bump ajv from 6.10.0 to 6.12.6 in /test/end-to-end-tests (#7792)
Bumps [ajv](https://github.com/ajv-validator/ajv) from 6.10.0 to 6.12.6.
- [Release notes](https://github.com/ajv-validator/ajv/releases)
- [Commits](https://github.com/ajv-validator/ajv/compare/v6.10.0...v6.12.6)

---
updated-dependencies:
- dependency-name: ajv
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Kerry Archibald <kerrya@element.io>
2022-02-15 13:52:35 -07:00
Travis Ralston
839593412c
Support refresh tokens (#7802)
MSC: https://github.com/matrix-org/matrix-doc/pull/2918
Fixes https://github.com/vector-im/element-web/issues/18698
Fixes https://github.com/vector-im/element-web/issues/20648
**Requires https://github.com/matrix-org/matrix-js-sdk/pull/2178**

**Note**: There's a lot of logging in this PR. That is intentional to ensure that if/when something goes wrong we can chase the exact code path. It does not log any tokens - just where the code is going. Overall, it should be fairly low volume spam (and can be relaxed at a later date).

----

This approach uses indexeddb (through a mutex library) to manage which tab actually triggers the refresh, preventing issues where multiple tabs try to update the token. If multiple tabs update the token then the server might consider the account hacked and hard logout all the tokens.

If for some reason the timer code gets it wrong, or the user has been offline for too long and the token can't be refreshed, they should be sent to a soft logout screen by the server. This will retain the user's encryption state - they simply need to reauthenticate to get an active access token again.

This additionally contains a change to fix soft logout not working, per the issue links above.

Of interest may be the IPC approach which was ultimately declined in favour of this change instead: https://github.com/matrix-org/matrix-react-sdk/pull/7803
2022-02-15 20:16:49 +00:00