lbry-desktop/ui
infinite-persistence 249b73f8c6
Skip muted list update if no change
## Issue
Components render unnecessarily due to reference invalidation from `selectMutedChannels` selector.

## Notes
`selectMutedChannels` run and return a new reference each time the app gains focus. `createSelector` will not help in this case, because we are indeed invalidating the data in the store in `USER_STATE_POPULATE`.

## Changes
- Don't update the state if the array is identical in content.
- Fixed `selectMutedChannels` to return the reference from the store, so `createSelector` is not needed.
    - Also, the filtering is not needed because we've already done it in the reducer.

## Comments
I've done some profiling on large blocklists. The time needed for the array comparison is still an order magnitude lower than the time needed to render all the Components that got incorrectly marked by this.

The ideal solution is for the sync code to return a hash or timestamp of the array, so that we can compare that instead of the array.
2021-10-19 21:15:26 +08:00
..
component Remove unused props and selector calls. 2021-10-19 21:15:25 +08:00
constants Remove unused actions and test function. 2021-10-19 20:43:11 +08:00
effects Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00
modal Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00
page Remove unused props and selector calls. 2021-10-19 21:15:25 +08:00
redux Skip muted list update if no change 2021-10-19 21:15:26 +08:00
scss Adds sub count to search and other areas. (#10) 2021-10-16 14:12:09 -04:00
util Hush repetitive debug errors + remove from i18n 2021-10-19 20:40:07 +08:00
analytics.js Convert to GA4 format 2021-10-17 20:45:40 +08:00
app.js refactor lbrytv web server 2019-11-11 13:27:29 -05:00
comments.js Comment Moderation - time based bans 2021-09-03 07:17:56 +08:00
i18n.js Revert "Simplify language lists" 2021-04-06 15:42:27 -04:00
index.jsx Remove unused actions and test function. 2021-10-19 20:43:11 +08:00
lbry.js Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00
logWarningConsoleMessage.js new lbc icon 2020-09-29 17:12:32 -04:00
native.js working 2020-12-16 10:52:22 -05:00
reducers.js Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00
rewards.js Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00
store.js Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00