Commit graph

15 commits

Author SHA1 Message Date
matc-pub e48590b9d6
Use mixins and decorators for scroll restoration and tippy cleanup (#2415)
* Enable @babel/plugin-proposal-decorators

Dependency already exists

* Use tippy.js delegate addon, cleanup tippy instances from a mixin.

The delegate addon creates tippy instances from mouse and touch events
with a matching `event.target`. This is initially significantly cheaper
than creating all instances at once. The addon keeps all created tippy
instances alive until it is destroyed itself.

`tippyMixin` destroys the addon instance after every render, as long as
all instances are hidden. This drops some tippy instances that may have
to be recreated later (e.g when the mouse moves over the trigger again),
but is otherwise fairly cheap (creates one tippy instance).

* Restore scroll positions when resource loading settles.

The history module generates a random string (`location.key`) for every
browser history entry. The names for saved positions include this key.
The position is saved before a route component unmounts or before the
`location.key` changes.

The `scrollMixin` tires to restore the scroll position after every
change of `location.key`. It only does so after the first render for
which the route components `loadingSettled()` returns true.

Things like `scrollToComments` should only scroll when `history.action`
is not "POP".

* Drop individual scrollTo calls

* Scroll to comments without reloading post

---------

Co-authored-by: SleeplessOne1917 <28871516+SleeplessOne1917@users.noreply.github.com>
2024-04-11 13:18:07 -04:00
İsmail Karslı 0bd26aa568
Store volume level on window object (#2307)
* Store volume level on window object

* Store volume level on localStorage, instead of window object

* Refactor video event handlers in PostListing component

* Take `muted` prop into account while storing volume level

* fix

* simplify logic
2024-01-03 18:30:32 +00:00
SleeplessOne1917 dd42bc2a3d
ES-Lint tweak (#2001) 2023-07-28 16:07:16 -04:00
Jay Sitter 17710d492c chore(DX): Add prettier to eslint config for use with editors 2023-06-26 10:37:21 -04:00
Jay Sitter 664b39f1eb chore(a11y): Remove a11y eslint overrides, as there are (almost) no more violations 2023-06-25 02:37:34 -04:00
Jay Sitter 1c404c80d3 chore(a11y): Remove now-passing jsx-a11y tests from exemptions 2023-06-25 01:36:21 -04:00
Jay Sitter 5ed7352359 fix: Emoji picker can be closed with escape key, other a11y fixes 2023-06-24 01:58:21 -04:00
Jay Sitter 9f0657ab9b feat(a11y): Add eslint-plugin-jsx-a11y 2023-06-17 15:46:51 -04:00
SleeplessOne1917 2b1af707c3
Use http client (#1081)
* Beginning work on websocket -> http client conversion.

* About 30% done.

* half done.

* more done.

* Almost passing lint.

* Passing lint, but untested.

* Add back in event listeners.

* Fixing some community forms.

* Remove webpack cache.

* fixing some more.

* Fixed ISOwrappers.

* A few more fixes.

* Refactor utils

* Fix instance add/remove buttons

* Not catching errors in isoWrapper.

* Wrap Http client

* Fixing up tagline and ratelimit forms.

* Make all http client wrapping be in one place

* Reworking some more forms.

* Upgrading lemmy-js-client.

* Fixing verify email.

* Fix linting errors

* Upgrading woodpecker node.

* Fix comment scrolling rerender bug.

* Fixing a few things, commenting out props for now.

* v0.18.0-beta.1

* Trying to fix woodpecker, 1.

* Trying to fix woodpecker, 2.

* Handroll prompt

* Add navigation prompt to other pages

* Fix prompt navigation bug

* Fix prompt bug introduced from last bug fix

* Fix PWA bug

* Fix isoData not working

* Fix search page update url

* Fix sharp issue.

* v0.18.0-beta.2

* Make create post pre-fetch communities

* Fix bug from last commit

* Fix issue of posts/comments not being switched when changing select options

* Fix unnecessary fetches on home screen

* Make circular icon buttons not look stupid

* Prevent unnecessary fetches

* Make login experience smoother

* Add PWA shortcuts

* Add related application to PWA

* Update translations

* Forgot to add post editing.

* Fixing site setup.

* Deploy script setup.

* v0.18.0-beta.4

* Sanitize again.

* Adding sanitize json function.

* Upping version.

* Another sanitize fix.

* Upping version.

* Prevent search nav item from disappearing when on search page

* Allow admin and mod actions on non-local comments.

* Fix mobile menu collapse bug

* Completely fix prompt component

* Fix undefined value checks in use_http_client_2 (#1230)

* fix: filter out undefined from posts

* fix: emoji initialisation passing undefined

* fix: || => ?? to be more explicit

* linting

---------

Co-authored-by: Alex Maras <alexmaras@gmail.com>

* Re-add accidentally removed state

* Fix dropdown bug

* Use linkEvent where appropriate

* Fix navigation warnings.

---------

Co-authored-by: Dessalines <tyhou13@gmx.com>
Co-authored-by: Alex Maras <dev@alexmaras.com>
Co-authored-by: Alex Maras <alexmaras@gmail.com>
2023-06-14 08:20:40 -04:00
James Whitmarsh 0754b9ba19 Refactor lets to consts 2023-06-05 22:31:12 +01:00
SleeplessOne1917 ac2a83a7a6
Lint fix (#1035)
* User HTTP instead of HTTPS when fetching icon in docker internal network

* Add debug statement.

* Revert "Add debug statement."

This reverts commit 7fbb12a4bd.

* Revert "User HTTP instead of HTTPS when fetching icon in docker internal network"

This reverts commit 498de660ba.

* Always replace host with internal host

* Fix lint script

* Remove prettier from pre-commit

---------

Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-05-23 18:55:36 -04:00
Dessalines 6320357d21
Upgrade inferno v8.0.0 try2 (#790)
* Upgrade non-breaking deps.

* Upgrade to Inferno v8. Fixes #731

* Upgrading inferno-i18next-dess
2022-09-22 11:03:35 -04:00
Dessalines 4b23b78efe
Use my fork of inferno-i18next. Fixes #413 (#415) 2021-09-18 10:27:49 -04:00
Dessalines ee77f700b3
Extra lints (#192)
* Updating deps, fixing lints.

* Downgrading broken husky.

* Trying to upgrade husky to v5

* Trying a bad lint.

* Trying a bad lint 2.

* Trying a bad lint 3.

* Adding prettier.
2021-02-21 21:24:09 -05:00
Dessalines 3125477c7b Adding prettier 2020-08-23 00:04:58 -04:00