diff --git a/packages/ui/src/components/Scroller.svelte b/packages/ui/src/components/Scroller.svelte
index 0d2b3b654d..dc3f7ea38d 100644
--- a/packages/ui/src/components/Scroller.svelte
+++ b/packages/ui/src/components/Scroller.svelte
@@ -453,6 +453,14 @@
? 'visible'
: 'hidden'
let scrollY: number = 0
+
+ let safariScrollJumpfix: boolean = true
+ export const enableSafariScrollJumpFix = (enable: boolean): void => {
+ if (enable) {
+ scrollY = divScroll?.scrollTop ?? 0
+ }
+ safariScrollJumpfix = enable
+ }
@@ -476,24 +484,25 @@
}}
class="scroll relative flex-shrink"
style:overflow-x={horizontal ? 'auto' : 'hidden'}
- on:scroll={(evt) => {
+ on:scroll={() => {
if ($tooltipstore.label !== undefined) closeTooltip()
- const newPos = divScroll?.scrollTop ?? 0
// TODO: Workaround: https://front.hc.engineering/workbench/platform/tracker/TSK-760
// In Safari scroll could jump on click, with no particular reason.
-
- if (
- !scrolling &&
- !isScrolling &&
- scrollY !== 0 &&
- Math.abs(newPos - scrollY) > 100 &&
- divScroll !== undefined &&
- isSafari()
- ) {
- divScroll.scrollTop = scrollY
+ if (safariScrollJumpfix) {
+ const newPos = divScroll?.scrollTop ?? 0
+ if (
+ !scrolling &&
+ !isScrolling &&
+ scrollY !== 0 &&
+ Math.abs(newPos - scrollY) > 100 &&
+ divScroll !== undefined &&
+ isSafari()
+ ) {
+ divScroll.scrollTop = scrollY
+ }
+ scrollY = divScroll?.scrollTop ?? 0
}
- scrollY = divScroll?.scrollTop ?? 0
}}
>
{
select(-2, evt.detail)
}}
+ on:collapsed
/>
diff --git a/plugins/view-resources/src/components/list/ListCategories.svelte b/plugins/view-resources/src/components/list/ListCategories.svelte
index 73c4e13694..6536b90f1c 100644
--- a/plugins/view-resources/src/components/list/ListCategories.svelte
+++ b/plugins/view-resources/src/components/list/ListCategories.svelte
@@ -319,6 +319,7 @@
index: e.detail.index + getInitIndex(categories, i)
})
}}
+ on:collapsed
{flatHeaders}
{disableHeader}
{props}
diff --git a/plugins/view-resources/src/components/list/ListCategory.svelte b/plugins/view-resources/src/components/list/ListCategory.svelte
index c12b09102d..43f326093f 100644
--- a/plugins/view-resources/src/components/list/ListCategory.svelte
+++ b/plugins/view-resources/src/components/list/ListCategory.svelte
@@ -390,6 +390,7 @@
$focusStore = { provider: $focusStore.provider }
}
}
+ dispatch('collapsed', { div })
}
localStorage.setItem(categoryCollapseKey, collapsed ? 'true' : 'false')
}}
@@ -460,11 +461,6 @@