lbry-desktop/ui/effects
infinite-persistence 7cbb7a54aa
Handle browsers that don't support IntersectionObserver (#1739)
* Remove ad-handling in videojs.jsx

Primary impetus is to remove unnecessary IntersectionObserver usage, but it should be removed anyway because:
- no longer relevant today with Adnimation's script.
- we also globally hide floating ads now, so no more invisible divs.
- the code is wrongly placed -- it's not the responsibility of the Videojs component.

* use-lazy-loaded: skip if IntersectionObserver is not supported

## Issue
Page not loading in older Safari (e.g. ipad air 2)

## Approach
Instead of using a polyfill (which comes with implementation caveats), just not apply the lazy-loading for those old browsers. Not lazy-loading is better than not loading at all, plus this is way easier to test (even by just reading the code) than testing out the polyfill implementation's caveats.

The cons is we would need the polyfill if we use it in other places in the future.

## Code Changes
Factor out the src-setting code, and use it directly when IntersectionObserver is not found.
2022-06-23 08:10:27 -04:00
..
use-claimList-infinite-scroll.js ClaimList: Factor out infinite-scroll and batch-resolve handling into an effect. 2022-05-16 07:57:24 -04:00
use-combined-refs.js fixes button hover 2019-11-19 16:28:59 -05:00
use-connection-status.js Fix "you are offline" nag being stuck 2021-12-22 12:41:05 +08:00
use-debounce.js Add channel list filter 2022-02-01 10:20:00 -05:00
use-drag-drop.js Paste/drop images directly to markdown editor 2022-04-01 12:36:49 -04:00
use-fetch-live.js Remove polling, still happen on channel pages (#1558) 2022-06-09 14:43:45 -04:00
use-fetch-view-count.js Membership subscriptions (#812) 2022-03-09 13:05:37 -05:00
use-fetched.js refactor lbrytv web server 2019-11-11 13:27:29 -05:00
use-get-ads.js fetch ads provider for all homepage videos (but still only show ads for unauth users) 2021-04-26 16:38:33 -04:00
use-get-last-visible-slot.js Generalize useGetLastVisibleSlot 2022-04-18 19:06:02 +08:00
use-get-poster.js Consolidate the mobile tile to use the poster size for better caching. 2022-06-17 11:58:43 -04:00
use-get-thumbnail.js useGetThumbnail: fetch streaming_url instead of generating it. 2022-05-13 18:19:20 +08:00
use-get-user-memberships.js cleanup 2022-03-22 16:07:05 -04:00
use-hover.js fix: better hover use-effect 2020-04-23 13:10:41 -04:00
use-interval.js Switch unnecessary let to const 2022-03-02 20:20:27 -08:00
use-is-mounted.js prevent state updates after component unmounted 2020-05-13 10:18:36 -04:00
use-lazy-loading.js Handle browsers that don't support IntersectionObserver (#1739) 2022-06-23 08:10:27 -04:00
use-lighthouse.js Desktop cherry-pick: "7240 Integrate lbry redux and lbryinc" 2021-10-19 20:40:07 +08:00
use-on-resize.js fix useScreensize 2022-02-07 10:18:50 -05:00
use-persisted-state.js MAKE ODYSEE EVEN MORE BEAUTIFUL (#539) 2022-02-11 13:50:55 -05:00
use-play-next.js Improve livestream claimLink embeds 2022-03-16 16:36:50 -04:00
use-previous.js refactor lbrytv web server 2019-11-11 13:27:29 -05:00
use-resolve-pins.js Swap pinnedUrls vs. pinnedClaimIds precedence 2022-04-01 11:35:29 -04:00
use-screensize.js Remove isTouch from use-screensize.js -- it's not an effect 2022-04-14 10:29:01 -04:00
use-should-show-ads.js Fix stale-closure in ad-detection code 2022-05-30 19:03:20 +08:00
use-stream-file.js prevent state updates after component unmounted 2020-05-13 10:18:36 -04:00
use-stream.js flow fixes 2020-12-16 10:52:22 -05:00
use-throttle.js Refactor channelMention suggestions into new textareaSuggestions component 2021-12-09 15:35:40 -05:00
use-tween.js refactor lbrytv web server 2019-11-11 13:27:29 -05:00