Commit Graph

18 Commits (59364ec177984a689e44937909e1485c5ad95ef4)

Author SHA1 Message Date
Michael Telatynski fcc4939075
Fix naming of set-theory utils to match convention (#7343) 2021-12-13 10:57:51 +00:00
Michael Telatynski c8d9294350 Discard unused utility now that we use Object.fromEntries 2021-07-23 18:40:22 +01:00
David Baker 80f5232217 Comply with new member-delimiter-style rule
Just `eslint --fix` with rule from
https://github.com/matrix-org/eslint-plugin-matrix-org/pull/9 in place
2021-07-01 23:23:03 +01:00
J. Ryan Stinnett ae0a8b8da4 Auto-fix lint errors 2021-06-29 13:11:58 +01:00
Travis Ralston a3e846685d Add array utility tests (and support upsampling in resample)
See contained diff. 

The upsampling is important for Voice Messages, but is being done here because it's easier to add all the tests at once.

This also introduces a new Object utility - that will be tested on its own commit.
2021-04-22 20:08:45 -06:00
J. Ryan Stinnett 4e87fdcdfe Fix object diffing when objects have different keys
The object diff optimisation in 32cca0534c is not
correct for the case where `b` has some keys that are not in `a`.

By ensuring their key arrays are same length, we can preserve optimisation and
be correct as well.

Fixes https://github.com/vector-im/element-web/issues/16514
2021-02-24 13:45:25 +00:00
Michael Telatynski 49f511bbab delint 2021-02-19 00:26:52 +00:00
Michael Telatynski 32cca0534c improve algo by skipping an O(n) operation 2021-02-19 00:19:35 +00:00
Michael Telatynski 3ca5632f6a Replace ObjectUtils.js with objects.ts 2021-02-19 00:00:10 +00: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
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 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 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 1fe3e33dbf Factor out cloning to a util and use it everywhere 2020-06-22 14:14:43 -06: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