Commit graph

39817 commits

Author SHA1 Message Date
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
David Baker
a958cd20f1
Fix delayed badge update for mentions in encrypted rooms (#7813)
* 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-15 20:06:29 +00:00
Michael Telatynski
8d4e83084c
Remove Countly analytics integration (#7808) 2022-02-15 16:58:30 +00:00
Charlie Calendre
bb5f62edce
Fix add existing space not showing any spaces (#7801) 2022-02-15 13:53:20 +00:00
Michael Telatynski
0a084601c4
Abstract spotlight to allow non-room results too (#7804) 2022-02-15 13:36:32 +00:00
Kat Gerasimova
201e552b0c
Triage PRs that need design or product (#7805)
Add automation to check if PR is assigned to a team/any member of that team and if it is, add it to the correct board to get it reviewed quicker
2022-02-15 13:17:43 +00:00
David Baker
5fe8442f44
Add an end-to-end test for stickers (#7733)
* Add an end-to-end test for stickers

* More logs on login

* Wait for spinners to go away

* Factor out spinner waiting as it seems useful

* Move stickers to the end

* More waiting

* When all else fails... add sleeps

* Waiting for the server picker to appear seems to work..?

* Typos

Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>

* remove commented code from registration usecase

Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2022-02-15 11:49:53 +00:00
Andy Balaam
84e15fa148
Display '(edited)' next to edited polls (#7789) 2022-02-15 08:52:51 +00:00
Michael Telatynski
6793ef33ba
Use the resize observer polyfill consistently (#7796) 2022-02-14 23:59:03 +00:00
Michael Telatynski
0cf15d27dc
Fix edge cases around event list summaries with hidden events and redactions (#7797) 2022-02-14 23:58:29 +00:00
Michael Telatynski
76fb2abae1
Consolidate, simplify and improve copied tooltips (#7799) 2022-02-14 23:54:46 +00:00
Michael Telatynski
226eed2a7f
Hide Clear room list filter field shortcut if new search enabled (#7798) 2022-02-14 23:38:29 +00:00
Michael Telatynski
8d3c2eddd6
Improve styling of edge case devtools state keys (#7794) 2022-02-14 23:37:45 +00:00
Michael Telatynski
401e5127f4
Don't scroll to bottom when executing non-message slash commands (#7793) 2022-02-14 23:36:06 +00:00
Michael Telatynski
cfa6e266cd
Wire up new fields on the ViewRoom posthog event and more interactions (#7787) 2022-02-14 19:31:13 +00:00
Travis Ralston
9141225a79
Add jest-mock to dependencies (#7800)
It's being used by the chat export test, but is not listed as a dependency.

If we rely on it, we should rely on it.
2022-02-14 19:29:08 +00:00
RiotRobot
9b3af6c493 Reset back to develop branch 2022-02-14 15:41:31 +00:00
RiotRobot
8c62945096 Resetting package fields for development 2022-02-14 15:39:36 +00:00
RiotRobot
0304d3245c Merge branch 'master' into develop 2022-02-14 15:39:33 +00:00
RiotRobot
f7e6250599 v3.40.0 2022-02-14 15:23:26 +00:00
RiotRobot
12b8e68a10 Prepare changelog for v3.40.0 2022-02-14 15:23:25 +00:00
RiotRobot
7558568158 Upgrade matrix-js-sdk to 15.5.1 2022-02-14 15:19:06 +00:00
David Baker
1c3507bc11
Use the shared secret registration API directly (#7774)
* Use the shared secret registration API directly

rather than invoking the synapse module to do it. It's probably
a bit simpler, if anything, and allows for synapse to be run in
a separate container (or rather, avoids the javascript having to have
a copy of synapse source & server config).

* Make registration secret required

Update commander (8 major versions!) to get requiredOption

* Wrong options object :/
2022-02-11 17:03:22 +00:00
Michael Telatynski
0e3b559671
Fix electron typing again again (#7788) 2022-02-11 13:03:51 +00:00
Kerry
b5e7d12f76
Add config option to autorageshake when key backup is not enabled (#7741)
* report on not enabled

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

* add setting

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

* check key backup status after crypto init

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

* remove log

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

* test encryption setup in DeviceListener

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

* i18n

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

* sendLogs for key backup auto-report event

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

* remove reloadOnChagneController

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-11 14:00:37 +01:00
Michael Telatynski
d06ec845ee
Fix cutout misalignment on some decorated room avatars (#7784) 2022-02-11 12:05:54 +00:00
Michael Telatynski
b8a3b29cf7
[Release] Fix cutout misalignment on some decorated room avatars (#7785) 2022-02-11 11:50:07 +00:00
Michael Telatynski
0541a224b5
Fix electron type conflict (#7786) 2022-02-11 11:40:35 +00:00
Michael Telatynski
ac6a356027
End-to-end test alias publishing flow (#7779) 2022-02-11 11:37:31 +00:00
Šimon Brandner
73899bb2e3
Switch to IPC channel for getDesktopCapturerSources (#7782) 2022-02-11 10:41:15 +00:00
Charlie Calendre
c3bb8cf3ef
Fix desktop notifications for invites showing user IDs instead of displaynames (#7780) 2022-02-11 09:25:14 +00:00
Germain
15a9303d29
Improve thread partitioning for 2nd degree relations (#7748) 2022-02-10 15:18:55 +00:00
Michael Telatynski
87ca70edb1
Switch to web-specific screens and $pageview event (#7777) 2022-02-10 14:38:31 +00:00
Michael Telatynski
0d6ef76605
Add analytics for the ViewRoom action (#7666) 2022-02-10 14:29:55 +00:00
Michael Telatynski
20e9d0c159
Wire up more posthog properties and interactions (#7763) 2022-02-10 13:53:07 +00:00
Michael Telatynski
be324df953
Fix bad pluralisation on event list summary hidden message handling (#7778) 2022-02-10 13:29:12 +00:00
Michael Telatynski
7668984ee4
Properly recurse subspaces for leave space dialog options (#7775) 2022-02-10 13:11:28 +00:00
Michael Telatynski
fd832488f1
Update slash command posthog enum (#7776) 2022-02-10 13:11:10 +00:00
Michael Telatynski
f6565bfbc8
Send how many favorited rooms a user has to Posthog (#7772) 2022-02-10 10:02:34 +00:00
Charlie Calendre
871032e1bc
Fix space member list opening with back button (#7773) 2022-02-10 09:20:48 +00:00
Charlie Calendre
8103e606c4
Fix translation for keyboard shortcut displaynames (#7758) 2022-02-10 09:11:35 +00:00
Michael Telatynski
2f7b26214d
Fix sort order for facepiles which was exactly reverse (#7771) 2022-02-10 09:06:45 +00:00
Michael Telatynski
7c344a2157
Fix state events being wrongly hidden when redacted (#7768) 2022-02-10 09:05:58 +00:00
Michael Telatynski
e2196a8731
Event List Summary guard against missing event senders (#7767) 2022-02-10 09:03:44 +00:00
Kerry
818fddd72c
Add customisation point to disable space creation (#7766)
* mock matchMedia in jest setup

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

* use UIComponent.CreateSpaces in space panel

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

* lint

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

* hide add space in spacecontextmenu

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

* use UIComponent customistations in space oom view add space button

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

* copyright

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-09 17:21:40 +01:00
David Baker
6e8edbb418
Fix preview builds for forked PRs (#7769)
Use the magic from matrix-doc to get the PR number, as commented.
2022-02-09 15:31:14 +00:00
Michael Telatynski
999e1b7421
Wire up bunch of interaction events into Posthog (#7707) 2022-02-09 14:42:08 +00:00
Michael Telatynski
5620b83d34
Wire up more Posthog tracking (#7689) 2022-02-09 14:25:58 +00:00
Charlie Calendre
254dbeeccb
Fix all settings button opening sidebar settings tab (#7765) 2022-02-09 12:09:52 +00:00
Michael Telatynski
714136d4f7
Consolidate RedactionGrouper and HiddenEventGrouper into MELS (#7739) 2022-02-09 10:51:12 +00:00