alistair3149
3b8022c3c1
refactor(core): ♻️ set up scroll direction observer in setupObservers
...
This is needed for centralizing the observers.
2024-11-07 19:12:48 -05:00
alistair3149
241ef66893
perf(core): ⚡ ️ move window.resize to resizeObserver
2024-11-07 19:12:48 -05:00
alistair3149
07179d50b1
perf(core): ⚡ ️ defer non-essential init scripts
2024-11-03 10:39:10 -05:00
alistair3149
e79ae5939c
perf(core): ⚡ ️ put sticky header elements in DOM instead of creating them on init
2024-11-03 00:44:23 -04:00
alistair3149
ec097f2e42
perf(core): ⚡ ️ only fire scroll direction function when direction changes
2024-11-02 02:24:54 -04:00
alistair3149
25fbc14908
style(core): 🎨 rename intersectionObserver references to observer
...
We will be using it for more than intersectionObserver.
2024-11-02 02:00:21 -04:00
alistair3149
50a75c550c
perf(core): ⚡ ️ do not use throttle for scroll direction observer
...
Just requestAnimationFrame should be enough. The previous throttle implemenation
makes the sticky header feel less responsive
2024-11-02 01:59:17 -04:00
PenguinEncounter
0248af9425
fix(core): 🐛 fix section collapsing not functioning on Firefox ( #965 )
2024-10-25 14:06:52 -04:00
alistair3149
fe514e94ce
feat(search): ✨ use trash icon instead of clear icon for clear input text button
2024-10-19 01:34:28 -04:00
alistair3149
10d3c17f18
perf(core): ⚡ ️ disable all CSS transition during window resize
2024-10-19 00:13:13 -04:00
alistair3149
cf1e55dc55
feat(keyhint): ✨ remove hyphens between keys
2024-10-17 02:46:21 -04:00
alistair3149
20f484d9a3
feat(core): ✨ simplify section implementation and update support for new headings
2024-10-16 16:17:32 -04:00
alistair3149
10a28ac476
feat(menu): ✨ add accesskey hint to menu items
2024-10-03 18:57:09 -04:00
alistair3149
3804574ccb
fix(VisualEditor): 🐛 unstick page header in VE
2024-09-23 17:53:00 -04:00
alistair3149
1b7025ef85
feat(toc): ✨ expand the current active section
2024-09-10 22:07:22 -04:00
alistair3149
ca1f31d789
refactor(core): ♻️ remove redundant intersection observers
2024-09-10 18:38:11 -04:00
alistair3149
8640d4ef30
feat(toc): ✨ switch to ToC implementation based on Vector 2022
...
This will serve as the groundwork of merging the intersection observers
and collapsible toc in the future.
2024-09-10 18:28:12 -04:00
alistair3149
764f7593c3
fix(overflow): 🐛 fix undefined wrapper
2024-07-20 19:32:22 -04:00
alistair3149
c9d98e477a
feat(stickyHeader): ✨ add CSS var --height-sticky-header to offset sticky elements
...
--height-sticky-header will always return the current height of sticky header.
It can be used to offset sticky elements so that it adjusts to the sticky header.
2024-07-19 17:08:03 -04:00
alistair3149
c3855ff8b9
fix(stickyHeader): use cached value for placeholder height if possible
...
Related: #854
2024-07-12 03:47:25 -04:00
alistair3149
a4593d7dd3
fix(dropdown): 🐛 use both touchstart and mousedown event listener for click outside event
...
On iOS devices, click event listeners don't work when the target does not have cursor: pointer.
This should resolve the issue for iOS browsers.
Related: #895
2024-07-08 15:54:15 -04:00
alistair3149
7f9f975b9e
fix(stickyHeader): 🐛 only add sticky class on resize when it is applicable
2024-07-08 14:01:13 -04:00
alistair3149
a7a763b57f
fix(stickyHeader): 🐛 use more accurate calculation for placeholder
2024-07-07 18:17:50 -04:00
alistair3149
e5336c4610
fix(stickyHeader): 🐛 add a placeholder element to page header to avoid layout shift when stickied
...
Closes : #854
2024-07-07 17:58:02 -04:00
alistair3149
e9fd488cee
fix(share): 🐛 incorrect debounce parameter assignment
2024-07-07 17:40:37 -04:00
alistair3149
fdc6eaee20
feat(Echo): ✨ upgrade Echo buttons for consistency
...
This is similiar to how it is handled in Vector.
We are forcing the Echo button to render in the same way as it was initially.
This took me so many hours sigh.
2024-07-05 20:37:52 -04:00
alistair3149
317296e7b0
fix(dropdown): 🐛 merge conflicting dismiss event handlers
...
Focus loss and click outside are basically using the same function.
Merging them should avoid them conflicting with each other.
Related: #895
2024-07-04 16:00:46 -04:00
alistair3149
f2ff92e1ac
feat(toc): ✨ drop checkbox hack usage in ToC in favor of dropdown ( #894 )
...
Now that ToC is also using the new dropdown system, we can remove all references to the old checkbox hack now.
Fixes : #855
2024-07-03 17:44:52 -04:00
alistair3149
516ef3a1cb
feat(dropdown): ✨ revamp dropdown menu handling
...
Putting the dropdown content in the details elemenet have been inconsistent.
Transition are not working correctly and different browsers are not handling it well.
Furthermore, the previous implementation does not allow an always visible state of dropdown content.
Fixes : #882
2024-07-03 16:07:19 -04:00
alistair3149
7ec0ae5b8e
refactor(stickyHeader): ♻️ create sticky sentinel in JS instead
...
It is only used for sticky header which requires JS, we should just create it in JS
2024-07-02 19:20:17 -04:00
alistair3149
5715a29dae
feat(stickyHeader): ✨ reduce direction observer throttle
2024-07-01 13:19:59 -04:00
alistair3149
aaee215cf6
refactor(stickyHeader): ♻️ move sticky header script into a separate module
2024-07-01 13:19:31 -04:00
alistair3149
1edc40e70c
feat(share): ✨ only share URL
...
The text handling across OS is inconsistent, and it is more desirable to just share the link and get the description through the embed.
2024-06-28 19:25:57 -04:00
alistair3149
327aca0b2c
feat(pageActions): ✨ add share button to page actions for article pages
2024-06-28 18:42:04 -04:00
alistair3149
7fb35f90f5
fix(overflow): 🐛 prevent overflow button from triggering form action button
...
When the overflow button is within a `<form>` element, it can sometimes
trigger the form action (e.g. In the realtime preview of WikiEditor).
2024-06-24 14:39:33 -04:00
alistair3149
dd89daba39
fix(overflow): 🐛 allow to click through the nav element
2024-06-12 12:51:50 -04:00
alistair3149
7830faa8fe
fix(overflow): 🐛 mark oveflow button as not accessible for screen reader
2024-06-11 19:15:57 -04:00
alistair3149
4b457dfa08
fix(overflow): 🐛 align scroll buttons with content margin
2024-06-11 19:07:38 -04:00
alistair3149
cbf60030f1
fix(overflow): 🐛 use more accurate rounding method for overflow detection
2024-06-11 18:56:54 -04:00
alistair3149
55d413eeda
feat(overflow): ✨ add overflow scroll button when using a pointer device
2024-06-11 18:00:45 -04:00
alistair3149
ababe58186
fix(core): 🐛 do not debounce scroll direction script
2024-06-09 22:58:17 -04:00
github-actions
26076514c1
ci: 👷 lint code to MediaWiki standards
...
Check commit and GitHub actions for more details
2024-06-07 19:01:54 +00:00
alistair3149
502b462c06
style(dropdown): 🎨 clean up code styles
2024-06-01 15:28:49 -04:00
alistair3149
32d10f893b
fix(dropdown): 🐛 toggle should dismiss the dropdown properly
2024-06-01 15:13:38 -04:00
alistair3149
a2d3159def
feat(core): ✨ replace checkbox hack with details and summary
...
Note that ToC is still using the old checkbox hack, it will be replaced in a later time.
Related: T333394
2024-05-30 02:20:13 -04:00
alistair3149
83ab221408
feat(core): ✨ only handle wikitable instead of all tables
...
Wikis use tables in creative ways and it is probably just safer to only apply it to wikitables.
Might revisit if there are any news from T330527.
2024-05-29 17:47:13 -04:00
alistair3149
2bbb1d9408
perf(core): ⚡ ️ check for nowrap classes before constructing class
2024-05-29 14:02:57 -04:00
alistair3149
4ed68a924d
feat(core): ✨ wrap any elements tagged with the class citizen-overflow
2024-05-27 18:01:09 -04:00
alistair3149
7b32aeec7d
fix(core): 🐛 always reset overflow state
2024-05-27 17:58:04 -04:00
alistair3149
974e6b2750
feat(core): ✨ add config to change overflow inherited classes
2024-05-27 17:16:23 -04:00