Commit graph

560 commits

Author SHA1 Message Date
Travis Ralston
0d29d15a46 Support room-defined height as well
Much like widget widths, it is acceptable for us to forget what everyone's height was previously at.
2021-01-18 19:27:11 -07:00
Travis Ralston
cfb583d193 Calculate widget widths in the WidgetLayoutStore
Note that this ditches all previously set width values, however this is probably acceptable for now. Trying to remain backwards compatible gets tricky on top of already tricky code, and the impact of Element forgetting widths is not as severe as forgetting which widgets were/are pinned.
2021-01-18 18:50:36 -07:00
Travis Ralston
0001e1e684 Support initial ordering and calculation for widgets by layout 2021-01-18 17:41:42 -07:00
David Baker
008fdf8dfb Missed some underscores 2021-01-13 15:44:33 +00:00
David Baker
28fe6291d9 add public/privates & de-underscore 2021-01-13 15:37:49 +00:00
David Baker
ac7f86cf65 Convert DMRoomMap to typescript 2021-01-13 14:49:23 +00:00
J. Ryan Stinnett
162a5de82e Rename and reformat Element URL pattern
This is just a code style cleanup. There are no behaviour changes in this
commit.
2020-12-21 13:05:45 +00:00
Hubert Chathi
983ffe98ff
Merge pull request #5483 from uhoreg/web_pickle
Use random pickle key on all platforms
2020-12-15 12:56:41 -05:00
Hubert Chathi
649ea0d148 apply changes from review, and other fixes/improvements 2020-12-10 21:52:18 -05:00
Travis Ralston
af69ba9c79
Merge pull request #5451 from iokiwi/new/room-alias-in-permalink
Use room alias in generated permalink for rooms
2020-12-09 12:07:44 -07:00
Michael Telatynski
5be65a525d Improve identifiers and code readability 2020-12-09 11:14:06 +00:00
Michael Telatynski
e896b009f1 Handle manual hs urls better 2020-12-08 10:58:16 +00:00
Simon Merrick
b365d3b27e Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into new/room-alias-in-permalink 2020-12-07 10:30:50 +13:00
Simon Merrick
5544ee6408 extract alias handling to separate function 2020-12-06 23:29:11 +13:00
Michael Telatynski
3223b00028 Jump to home page when leaving a room
so that you don't get thrown into a room you may be ignoring on purpose
2020-12-03 11:15:55 +00:00
Simon Merrick
cf8c98e076 More explicit reference checking 2020-12-02 12:34:43 +13:00
Simon Merrick
e92ac67152 Use room alias in generated permalink for rooms
Signed-off-by: Simon Merrick <s.m3rrick@gmail.com>
2020-11-28 21:50:51 +13:00
Travis Ralston
5da27aed94 Replace the concept of a Widget Security Key with an OIDC state
The security key naming/practice was misguided, so let's call it what it is (a settings key) and abstract away the complexity to a new store.

Fixes https://github.com/vector-im/element-web/issues/15820 while we're here.
2020-11-25 18:39:11 -07:00
Travis Ralston
55592d365c Merge branch 'develop' into travis/msc-send-widget-events 2020-11-18 15:57:53 -07:00
Travis Ralston
a212dab84c Developer design a permissions dialog 2020-11-17 20:38:59 -07:00
Travis Ralston
91b1c8b817 Fix DM logic to always pick a more reliable DM room
Fixes https://github.com/vector-im/element-web/issues/15605
2020-11-16 15:07:09 -07:00
Travis Ralston
dacc7bc111 Rebrand Riot -> Element in the permalink classes 2020-11-02 21:46:48 -07:00
David Baker
7ec1d5a881 Fix a bunch of silly lint errors
At some point the script to generate .eslintignore.errorfiles had
been run and added all these files to the ignore list, often because
they lacked a space before a brace or something equally mundane.

These are the easiest bunch.
2020-10-30 18:18:17 +00:00
Michael Telatynski
4e12aeca9e Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/feat/room-list-widgets
 Conflicts:
	src/components/views/elements/AppTile.js
2020-10-21 12:48:51 +01:00
Michael Telatynski
568e147053 Merge copyrights
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-21 12:44:16 +01:00
Michael Telatynski
4dd8b8d8c6 fix WidgetUtils setRoomWidget signature
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-19 21:02:48 +01:00
Michael Telatynski
5ee0262da2 Post-merge tidy up
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-19 20:56:41 +01:00
Michael Telatynski
bec1d718e0 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/feat/room-list-widgets
 Conflicts:
	src/components/views/elements/AppTile.js
	src/utils/WidgetUtils.ts
2020-10-19 20:50:16 +01:00
Michael Telatynski
1fe2eea43f Pass theme to Jitsi
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-19 18:47:27 +01:00
Michael Telatynski
744a4abd1c Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into t3chguy/feat/widgets 2020-10-19 13:08:17 +01:00
Michael Telatynski
73489b7c6d AppsDrawer watch ResizeNotifier isResizing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-19 13:08:11 +01:00
ginnyTheCat
046f498295
Added formula sources 2020-10-11 00:37:00 +02:00
Michael Telatynski
ada6d1aa46 Iterate PR
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-10-09 08:42:21 +01:00
ginnyTheCat
014671d8ce
Fixed lint issues 2020-10-08 19:55:52 +02:00
ginnyTheCat
e218f6dcab
Changed rainbow algorithm 2020-10-08 17:19:28 +02:00
Travis Ralston
0570deffa2 Fix iterableUnion types 2020-10-01 10:01:13 -06:00
Travis Ralston
f27071ee64 Transition all remaining messaging over (delete the old stuff) 2020-09-30 20:20:31 -06:00
Travis Ralston
bb5184bc50 Remove unused function 2020-09-29 15:32:07 -06:00
Travis Ralston
cd93b2c22a First rough cut of cutting AppTile over to the ClientWidgetApi 2020-09-29 14:14:51 -06:00
Travis Ralston
96fa34eecf Add stop functions 2020-09-26 18:40:26 -06:00
Travis Ralston
634ffb0140 Add structure for widget messaging layer 2020-09-25 09:39:21 -06:00
Michael Telatynski
c65d8be7d8 delint
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-09-24 09:49:30 +01:00
Michael Telatynski
956a3bf69d Implement Left Panel User Widget
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-09-24 09:28:49 +01:00
Michael Telatynski
2e6bad8b07 Convert WidgetUtils to TS and improve typing
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-09-23 11:01:19 +01:00
J. Ryan Stinnett
693dbab54e Add more types and enums 2020-09-22 15:22:39 +01:00
J. Ryan Stinnett
115c7ccd4e Support HS-preferred Secure Backup setup methods
This adds support for the `secure_backup_setup_methods` key, which allows HS
admins to state that Element should simplify down to only one setup method,
rather than offering both.

Fixes https://github.com/vector-im/element-web/issues/15238
2020-09-21 16:10:42 +01:00
Michael Telatynski
229967aa33 Retry joinRoom up to 5 times in the case of a 504 GATEWAY TIMEOUT 2020-09-14 15:16:29 +01:00
Matthew Hodgson
5ecc3f4398 kill formatMinimalBadgeCount entirely 2020-09-10 13:56:46 +01:00
Michael Telatynski
a1f1334250 Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/dpsah/6785.3
 Conflicts:
	src/components/structures/RoomView.tsx
2020-09-09 15:16:19 +01:00
Michael Telatynski
01a8ac25c9 Use null coalescing operator 2020-09-08 17:40:57 +01:00
Michael Telatynski
98b59fb217 Consolidate all the work thus far 2020-09-08 15:43:38 +01:00
Michael Telatynski
2527344294 Create name/title Widget utils 2020-09-08 15:42:31 +01:00
Michael Telatynski
87b72de25f
Merge pull request #5176 from matrix-org/t3chguy/dpsah/6785.4
Fix WatchManager for global room watchers and tidy widget code a little
2020-09-08 15:24:10 +01:00
Michael Telatynski
a80bcaa292
Merge pull request #5174 from matrix-org/t3chguy/fix/15100
Fix permalink local linkification to not strip via servers
2020-09-08 15:23:38 +01:00
Jason Robinson
75518254fb
Merge pull request #5173 from matrix-org/jaywink/jitsi-openidjwt-auth
Support creation of Jitsi widgets with "openidtoken-jwt" auth
2020-09-08 17:16:50 +03:00
Michael Telatynski
1b99c11b11 tidy 2020-09-08 15:09:45 +01:00
Michael Telatynski
48d9c94c88 Extract editWidget into WidgetUtils 2020-09-08 11:12:14 +01:00
Michael Telatynski
906d4defd5 Convert RoomView and RoomContext to TS 2020-09-08 10:52:37 +01:00
Michael Telatynski
d0c716d61c Fix permalink local linkification to not strip via servers 2020-09-08 10:26:37 +01:00
Jason Robinson
4b43e39d2a Code review related changes
* drop room ID from jitsi widget data
* reame queryParts variable
2020-09-08 11:31:40 +03:00
Michael Telatynski
667c129ebc Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into t3chguy/dpsah/6785
 Conflicts:
	src/components/structures/ScrollPanel.js
	src/components/views/rooms/AppsDrawer.js
2020-09-07 14:33:57 +01:00
Jason Robinson
baa6d8a294 Correctly template in Jitsi widget auth if such exists
Also add roomId to the widget data and URL template. It's needed by
the Element Web Jitsi code to produce auth for the Jitsi backend.
2020-09-04 12:42:46 +03:00
Michael Telatynski
cffe902504 Add feature to ResizeNotifier to maintain isResizing state and use it to skip onScroll handling 2020-09-02 12:00:35 +01:00
Michael Telatynski
1fc55b33c1 Stash lodash import optimization 2020-08-28 18:53:43 +01:00
resynth1943
2c20afc047 Fix lodash imports
Signed-off-by: resynth1943 <resynth1943@tutanota.com>
2020-08-26 23:23:18 +01:00
J. Ryan Stinnett
8e0742b9fe
Merge pull request #5130 from matrix-org/jryans/secure-backup-required
Enforce Secure Backup completion when requested by HS
2020-08-24 17:32:58 +01:00
J. Ryan Stinnett
b601a025b5 Use io.element instead of im.vector 2020-08-24 16:33:23 +01:00
J. Ryan Stinnett
2e2f60c20b Use updated waitFor API with well-known 2020-08-24 16:11:35 +01:00
Travis Ralston
42988d373b Remove debugging 2020-08-19 19:42:58 -06:00
Travis Ralston
8fffce8a30 Appease the linter 2020-08-19 19:42:36 -06:00
Travis Ralston
309c32700b Remove unused success state 2020-08-19 19:23:27 -06:00
Travis Ralston
e0b8343088 Run all room leaving behaviour through a single function
Fixes https://github.com/vector-im/element-web/issues/14999
Fixes https://github.com/vector-im/element-web/issues/10380

We were failing to handle errors when `/part`ing a room, though the leave room button was fine. This runs both the button and command through the same function for handling, including the 'view next room' behaviour.
2020-08-19 19:21:40 -06:00
J. Ryan Stinnett
e56a61ec68 Invoke Secure Backup flow inside the app when requested by HS
If the Secure Backup required mode is set the client `.well-known` file, then
this will ensure that everyone already inside the app is required to complete
setup matching that policy.

Fixes https://github.com/vector-im/element-web/issues/14954
2020-08-19 16:23:27 +01:00
J. Ryan Stinnett
1932505d3b Enforce Secure Backup completion when requested by HS
This removes all buttons to escape the Secure Backup setup flow when the
matching `.well-known` setting is set by homeserver.

Part of https://github.com/vector-im/element-web/issues/14954
2020-08-19 16:23:27 +01:00
J. Ryan Stinnett
2b0865e89c Move E2EE well-known access to utils 2020-08-19 16:23:27 +01:00
Bruno Windels
5d98805d77 Merge branch 'develop' into bwindels/make-reply-not-overlay 2020-08-18 13:39:06 +02:00
Michael Telatynski
0da31de5ad
Merge pull request #5086 from matrix-org/t3chguy/notifications12
Create Map comparison utilities and convert Hooks to Typescript
2020-08-05 16:28:52 +01:00
Michael Telatynski
6220f50360 delint 2020-08-05 09:28:02 +01:00
Michael Telatynski
cd29edb442 Write more typescript defs 2020-08-05 09:13:01 +01:00
Michael Telatynski
f5d75bc078 fix comments 2020-08-04 22:03:30 +01:00
Michael Telatynski
93b4ea5be4 Create Maps utility comparison functions 2020-08-04 21:57:37 +01:00
J. Ryan Stinnett
ce226ab534 Replace Riot with Element in docs and comments
This only covers the simple cases of references to issues and repos. More
complex areas, such as deployment scripts, will be handled separately.

Part of https://github.com/vector-im/element-web/issues/14864
2020-08-03 18:33:36 +01:00
Travis Ralston
16ebcf70c9 Clean up documentation of Whenable 2020-07-31 09:41:19 -06:00
Bruno Windels
d24ddc415b Notify the timeline it's height has changed, so it can keep being at the bottom
this way new messages will appear in the timeline without needing to scroll
2020-07-31 14:02:40 +02:00
J. Ryan Stinnett
af49639bd8
Merge pull request #5065 from matrix-org/travis/echo/audit
Add local echo for notifications in the new room list
2020-07-31 12:20:20 +01:00
Travis Ralston
5b15d12865 Ensure list visibility changes get counted as list changes
Fixes https://github.com/vector-im/riot-web/issues/14799

We were checking to see if the tags were visible at render time, but we needed to ensure that they were(n't) included when checking for diffs. This introduces a new kind of object cloning for semantic reasons.

This also fixes the selection indicator being a bit off on custom tags.
2020-07-30 14:18:54 -06:00
Travis Ralston
e953bfbf88 Replace flawed objectHasValueChange usage with objectHasDiff
Fixes https://github.com/vector-im/riot-web/issues/14782

We need to check if the keys changed, not just the values.
2020-07-30 14:08:18 -06:00
Travis Ralston
8f1af4be14 Add local echo capabilities for rooms
The structure here might need some documentation and work, but overall the idea is that all calls pass through a CachedEcho instance, which are self-updating.
2020-07-29 16:53:26 -06:00
Travis Ralston
1573c88b47
Update src/utils/arrays.ts
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-28 06:37:19 -06:00
Travis Ralston
b91026fa89 Ensure CustomRoomTagStore doesn't fire useless updates
This could in theory cause double rendering of the room list under some conditions.
2020-07-27 17:18:01 -06:00
Travis Ralston
5f034ee4ed Ensure arrayHasDiff returns a boolean
This is just maintenance noticed while debugging.
2020-07-27 17:17:27 -06:00
Travis Ralston
4d7980eb07 Ensure references to the room list store are broken for diffing
See commit diff for details.
2020-07-24 10:38:04 -06:00
Travis Ralston
9969b01c5f Only render sublists when they change significantly
We can ignore off-screen updates, so do that. See diff for more details on what we're doing.
2020-07-23 22:13:32 -06:00
Travis Ralston
7b97c3032b Make the sublists aware of their own list changes
This cuts the render time in half (from ~448ms to ~200ms on my account) per received event, as we're no longer re-mounting the entire room list and instead just the section(s) we care about.
2020-07-23 21:36:43 -06:00
Jorik Schellekens
501e0c29ca Merge remote-tracking branch 'origin' into joriks/eslint-config 2020-07-21 15:32:50 +01:00
Travis Ralston
a0b2859436 Support custom tags in the room list again
Fixes https://github.com/vector-im/riot-web/issues/14091

Design needs work, however this is behind labs anyways. This re-implements the behaviour of the old room list.

The implementation ended up being a lot easier due to early confusion with what the TagOrderStore and TagPanel take care of. Turns out they don't deal with tags, but groups. As such, we don't need to do anything with filtering (though we keep some sanity checks in place for safety), and just have to wire up the CustomRoomTagPanel and CustomRoomTagStore.
2020-07-20 16:51:16 -06:00
Jorik Schellekens
b3fa855bd8 Merge branch 'develop' of github.com:matrix-org/matrix-react-sdk into joriks/eslint-config 2020-07-20 16:22:32 +01:00
Bruno Windels
4fe4788c2e Merge branch 'develop' into element 2020-07-14 14:31:31 +02:00
Travis Ralston
4a8a59c578 Make EffectiveMembership utils generic
Fixes https://github.com/vector-im/riot-web/issues/14460

Just have to move them to utils.
2020-07-13 20:29:46 -06:00
J. Ryan Stinnett
c77b312fd3 Merge branch 'jryans/rename-strings' into 'element'
Update brand name using variable in all strings

See merge request new-vector/element/element-web/matrix-react-sdk!3
2020-07-13 12:23:28 +00:00