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
Michael Telatynski
c3789245b8
Be consistent with the at-room pill avatar configurability
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-12 19:25:43 +01:00
Travis Ralston
0e49c4343c
Internalize algorithm updates in the new room list store
...
Fixes https://github.com/vector-im/riot-web/issues/14411
The act of setting/changing the algorithm was causing the update function to be marked, meaning we wouldn't trigger an update until something else happened later. To get around this, and still support internal functions spamming calls without multiple updates, we simply move the guts to an internalized function and make the public interface do a trigger.
2020-07-10 21:59:12 -06:00
J. Ryan Stinnett
9085627a28
Use brand name from config in all strings
2020-07-10 19:57:01 +01:00
Travis Ralston
46d53e5c8c
Reset before trigger just in case the function triggers too
2020-07-10 08:14:33 -06:00
Travis Ralston
1315f34662
Dedupe room list store updates by marking for updates
...
The core of this is in the MarkedExecution class, with the remainder of the commit ensuring that the right marks and triggers are in place to do the firing.
Because everything is async/await and run through the RoomListStore, we don't have to worry about self-fed updates in the algorithm classes. This also means we have to trigger pretty much all the time.
Changes to tag ordering / list sorting get hit through two paths, so we mark before we do a bulk update and otherwise assume the call is coming in from outside.
2020-07-09 14:53:14 -06:00
Michael Telatynski
97711032d8
Fix signature of sleep utility
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-07-02 22:38:21 +01:00
Jorik Schellekens
b110639c76
Merge remote-tracking branch 'origin' into joriks/eslint-config
2020-06-29 16:49:33 +01:00
Jorik Schellekens
7699aafcaf
Use new eslint package- fix lint issues in ts and js
2020-06-23 17:01:19 +01:00
Travis Ralston
26317b6826
Merge pull request #4803 from matrix-org/travis/room-list/setting-diff
...
Only fire setting changes for changed settings
2020-06-22 14:16:24 -06:00
Travis Ralston
1fe3e33dbf
Factor out cloning to a util and use it everywhere
2020-06-22 14:14:43 -06:00
Travis Ralston
1a427b8ff7
Fix sticky headers over/under extending themselves in the new room list
...
Fixes https://github.com/vector-im/riot-web/issues/14095
2020-06-22 13:09:42 -06:00
J. Ryan Stinnett
37442b92ae
Update read receipt remainder for internal font size change
...
In https://github.com/matrix-org/matrix-react-sdk/pull/4725 , we changed the
internal font size from 15 to 10, but the `toRem` function (currently only used
for read receipts remainders curiously) was not updated. This updates the
function, which restores the remainders.
Fixes https://github.com/vector-im/riot-web/issues/14127
2020-06-22 19:02:03 +01:00
Travis Ralston
099661c2aa
Only fire setting changes for changed settings
...
Previously we were firing updates for everything, which is bad. This has an effect of causing the room list to update itself every time the user goes to toggle some account settings.
2020-06-22 10:18:38 -06:00
Jorik Schellekens
05d0309081
Lint a few semicolons
2020-06-18 14:32:43 +01:00
Travis Ralston
e4a51a7c01
Add presence icons; Convert to generic icon component
...
For https://github.com/vector-im/riot-web/issues/14039
2020-06-16 14:44:37 -06:00
Travis Ralston
eefc40e0f8
Use IDestroyable instead of IDisposable
...
For consistency within our project
2020-06-09 08:08:47 -06:00
Travis Ralston
d9bd3cfc38
Merge pull request #4732 from matrix-org/travis/badge-ts
...
Convert FormattingUtils to TypeScript and add badge utility function
2020-06-09 08:01:19 -06:00
Travis Ralston
8faa0936c9
98 -> 99+
2020-06-09 08:01:03 -06:00
Travis Ralston
1f82396ec5
Remove unused type
2020-06-08 21:40:25 -06:00
Travis Ralston
3fcd5505b3
Support prioritized room list filters
...
This is to fix an issue where when using both the community filter panel and the search box it's an AND rather than further refining the results.
This makes the search box further refine the community filter panel results.
2020-06-08 21:38:56 -06:00
Travis Ralston
21c8611300
Convert FormattingUtils to TypeScript and add badge utility function
...
The new function is to be used in the new room list.
2020-06-08 12:14:32 -06:00
Travis Ralston
e4aeabe5a6
Merge pull request #4444 from pv/jitsi-popout-immediate-join
...
Ensure active Jitsi conference is closed on widget pop-out
2020-06-07 20:22:39 -06:00
Travis Ralston
bc2fbefb5c
Remove iteratorToArray
2020-06-03 11:29:06 -06:00
Travis Ralston
73a8e77d32
Add initial filtering support to new room list
...
For https://github.com/vector-im/riot-web/issues/13635
This is an incomplete implementation and is mostly dumped in this state for review purposes. The remainder of the features/bugs are expected to be in more bite-sized chunks.
This exposes the RoomListStore on the window for easy access to things like the new filter functions (used in debugging).
This also adds initial handling of "new rooms" to the client, though the support is poor.
Known bugs:
* [ ] Regenerates the entire room list when a new room is seen.
* [ ] Doesn't handle 2+ filters at the same time very well (see gif. will need a priority/ordering of some sort).
* [ ] Doesn't handle room order changes within a tag yet, despite the docs implying it does.
2020-06-01 16:49:22 -06:00
Michael Telatynski
efd0da44a1
Give contextual feedback for manual update check instead of banner
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-29 18:24:45 +01:00
Travis Ralston
a9c54153ee
Update badge counts in new room list as needed
2020-05-26 14:16:33 -06:00
Michael Telatynski
fe03d02cf6
Fix reacting to redactions
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-23 08:43:15 +01:00
Jorik Schellekens
6d9d4ee547
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider
2020-05-20 13:46:17 +01:00
Travis Ralston
9aff2e836e
Merge pull request #4593 from matrix-org/travis/dispatcher-types
...
Convert the dispatcher to TypeScript
2020-05-18 23:22:32 -06:00
Travis Ralston
798e7a1f86
Merge branch 'develop' into travis/dispatcher-types
2020-05-15 09:56:02 -06:00
Michael Telatynski
eb6796bd0e
Migrate PasswordScorer to TypeScript
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 19:53:09 +01:00
Michael Telatynski
e241da3af0
Fix diff wrong route offsets because of skipping a node insert
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-05-14 15:35:38 +01:00
Travis Ralston
90a898d03f
Move dispatcher into a subdirectory
...
We're expecting to have a whole bunch of types for the dispatched payloads, so pull the thing into a directory we can throw them in.
2020-05-13 21:07:50 -06:00
Jorik Schellekens
fc6e5227ac
FIx roomsublist heights.
...
- also fiddles the font size numbers
2020-05-13 22:24:22 +01:00
Jorik Schellekens
33a5b5142d
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider
2020-05-07 18:01:20 +01:00
Michael Telatynski
9c916cc544
Merge branches 'develop' and 't3chguy/app_load4' of github.com:matrix-org/matrix-react-sdk into t3chguy/app_load4
...
Conflicts:
src/components/structures/MatrixChat.tsx
2020-04-30 17:41:14 +01:00
David Baker
719faed2ff
Separate toasts for existing & new device verification
...
Separate device verification toasts into ones for devices that were
there when the app loaded and a separate toast for each device that
has appeared since.
Reverts part of https://github.com/matrix-org/matrix-react-sdk/pull/4506
(clicking a device from your own UserInfo now triggers the legacy
verification flow again).
Fixes https://github.com/vector-im/riot-web/issues/13422
Fixes https://github.com/vector-im/riot-web/issues/13418
2020-04-28 18:35:16 +01:00
Jorik Schellekens
1b83faaa8d
Merge branch 'develop' of https://github.com/matrix-org/matrix-react-sdk into joriks/font-scaling-slider
2020-04-28 15:38:46 +01:00
Jorik Schellekens
1289367a6b
Fix indentation
2020-04-28 14:31:49 +01:00
Jorik Schellekens
fe326b9f08
Enfore function name capitalisation
2020-04-28 14:31:49 +01:00
Jorik Schellekens
0fe0d728f1
lint
2020-04-27 11:51:55 +01:00
Jorik Schellekens
3f56ed393d
Use a function to convert to rem.
2020-04-27 11:51:54 +01:00
Travis Ralston
35dd892dce
Merge pull request #4458 from matrix-org/travis/fix-sticker-picker-add
...
Use WidgetType more often to avoid breaking new sticker pickers
2020-04-23 08:18:12 -06:00
Jorik Schellekens
5caec2a289
lint
2020-04-23 10:45:47 +01:00
Jorik Schellekens
05d11fea69
Use a function to convert to rem.
2020-04-23 10:45:46 +01:00
Pauli Virtanen
352ea29d17
Implement widget ReceiveTerminate capability
...
Signed-off-by: Pauli Virtanen <pav@iki.fi>
2020-04-22 19:37:52 +03:00
Michael Telatynski
01abb61e9a
C
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 13:08:33 +01:00
Michael Telatynski
d915e613dc
Convert promise utility module to tyepscript
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-22 12:27:39 +01:00
Travis Ralston
3a360b91b9
Update logging for unmanaged widgets, and add TODO comments for other areas
...
Just a minor thing that is bothersome. Renaming classes and functions is a bit more of an impact than is worth right now, so have settled for littering TODO comments all over the place.
2020-04-22 00:34:08 -06:00
Travis Ralston
f54e99c708
Use WidgetType more often to avoid breaking new sticker pickers
...
Turns out that setUserWidget() wasn't updated to take a real WidgetType, but the code in ScalarMessaging thought it did. This leads to integration managers trying to add sticker widgets with an object `type` rather than a string `type`, which doesn't work.
This updates other code paths which call into the various widget classes to use WidgetType more often. The actual code path for fixing widgets is resolved in WidgetUtils for the setUserWidget function body.
2020-04-21 16:01:10 -06:00
Travis Ralston
d8a5ba9b14
Merge branch 'develop' into travis/moar-jitsi
2020-04-20 09:21:48 -06:00
Michael Telatynski
a37ecbbb34
update console.error
2020-04-15 19:24:33 +01:00
Michael Telatynski
89bc3bdd5b
consolidate and extract copyPlaintext, copyNode and selectText
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-04-15 00:16:11 +01:00
Travis Ralston
4fe16b1b84
Merge branch 'develop' into travis/moar-jitsi
2020-04-14 12:57:28 -06:00
Travis Ralston
b4b0c4c6df
Add comments to highlight where we'll need m.widget support
...
For https://github.com/vector-im/riot-web/issues/13111
2020-04-09 15:14:07 -06:00
Travis Ralston
dc92f557fd
Support m.jitsi-typed widgets as Jitsi widgets
...
Fixes https://github.com/vector-im/riot-web/issues/9268
2020-04-09 15:11:57 -06:00
Michael Telatynski
24a5d8355f
Merge pull request #4288 from matrix-org/t3chguy/react_stickers
...
Deem m.sticker events as actionable for reacting
2020-04-07 17:10:42 +01:00
David Baker
a76b089cf3
Merge pull request #4319 from matrix-org/dbkr/jitsi_fix_popout
...
Fix popout support for jitsi widgets
2020-04-01 11:57:25 +01:00
David Baker
072d9f12c7
Remove unintentional changes
2020-04-01 11:41:32 +01:00
David Baker
274eb75c38
Remove get-config API
...
which is no longer necessary now the jitsi wrapper has its own
external-api script
2020-04-01 10:40:03 +01:00
David Baker
538147f7fa
Better support for widgets overriding their URLs
...
Move the URL processing into AppTile so that the widget can have a
URL used for embedding in the page and a separate one for popping
out into a browser.
2020-04-01 10:00:33 +01:00
J. Ryan Stinnett
a3555cacea
Merge remote-tracking branch 'origin/develop' into jryans/id-change-red
2020-03-30 14:52:22 +01:00
Zoe
098df07c67
review feedback
2020-03-30 10:18:47 +01:00
J. Ryan Stinnett
37619dd127
Show red shield for users that become unverified
...
For any users that we previously verified but that are not unverified, we will
now mark them and rooms they are in with a red shield.
Fixes https://github.com/vector-im/riot-web/issues/12808
2020-03-28 00:21:18 +00:00
Zoe
1f0d7923d7
with output type
2020-03-27 13:51:30 +00:00
Zoe
5b7e7f49d1
lint
2020-03-27 13:50:03 +00:00
Zoe
5d7adef0a2
Factor out shield display rules into one file
2020-03-27 13:45:35 +00:00
Michael Telatynski
b489a7c0d5
Allow reacting to stickers
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-27 00:50:41 +00:00
Bruno Windels
0fb96fda6e
Merge pull request #4272 from matrix-org/bwindels/safaripersisted
...
Fall back to non-standard persisted api for Safari
2020-03-25 17:56:47 +00:00
Bruno Windels
0097134ade
Update src/utils/StorageManager.js
...
Co-Authored-By: J. Ryan Stinnett <jryans@gmail.com>
2020-03-25 17:56:35 +00:00
Bruno Windels
f6e9c32c48
fall back to non-standard persisted api for Safari
2020-03-25 12:04:09 +01:00
Travis Ralston
bdcb65de77
Support and send the config over to capable widgets
...
For https://github.com/vector-im/riot-web/pull/12845
2020-03-24 09:55:54 -06:00
Travis Ralston
f7bf0d013c
Support sending and receiving v1 Jitsi widgets
...
Fixes https://github.com/vector-im/riot-web/issues/12816
Fixes https://github.com/vector-im/riot-web/issues/12814
2020-03-23 10:18:30 -06:00
Travis Ralston
b8ef736038
Merge pull request #4251 from matrix-org/travis/jitsi-name
...
Improve naming of Jitsi conferences
2020-03-23 09:55:02 -06:00
Michael Telatynski
8822bb06f1
Update WidgetUtils.js
2020-03-22 02:14:50 +00:00
Travis Ralston
c17c47d88b
Remove null check that was fixed in another PR
...
See https://github.com/matrix-org/matrix-react-sdk/pull/4255
2020-03-21 11:35:07 -06:00
Michael Telatynski
506927ad8a
change to defaults
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-21 10:49:55 +00:00
Michael Telatynski
ca02ff493c
Fix local jitsi build url fail and missing argument
...
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2020-03-21 10:42:07 +00:00
Travis Ralston
94d23c815a
Improve naming of Jitsi conferences
...
Fixes https://github.com/vector-im/riot-web/issues/12812
2020-03-20 14:19:47 -06:00
Travis Ralston
92251316a3
Switch to named object
2020-03-19 11:51:01 -06:00
Travis Ralston
8519a83b61
Appease the linter
2020-03-18 15:58:57 -06:00
Travis Ralston
9da57817d1
Use a local wrapper for Jitsi calls
...
Requires https://github.com/vector-im/riot-web/pull/12780
2020-03-18 15:50:12 -06:00
Travis Ralston
7dd7417f12
Enable support for TypeScript in components
...
Includes: compilation, translations, IDE support (use .tsx not .ts), typings, and other build tools.
TypeScript component have to import PropTypes and React with `import * as React from 'react';`
2020-03-11 18:03:43 -06:00
Travis Ralston
e4d323d2f2
Disable edits on redacted events
...
Fixes https://github.com/vector-im/riot-web/issues/12633
2020-03-06 14:23:20 -07:00
Travis Ralston
9836a7a655
Merge pull request #4176 from matrix-org/travis/linkify-rooms
...
Fix room alias references in topics
2020-03-04 15:35:34 -07:00