Compare commits

..

2 Commits

Author SHA1 Message Date
b6c41caf44 1.0.100
Some checks failed
Default (tags) / security (push) Failing after 24s
Default (tags) / test (push) Failing after 12s
Default (tags) / release (push) Has been skipped
Default (tags) / metadata (push) Has been skipped
2025-06-26 22:52:54 +00:00
b858b3b9e2 fix(wcc-dashboard): Prevent duplicate application of scroll positions in dashboard to avoid interfering with user scrolling 2025-06-26 22:52:54 +00:00
4 changed files with 17 additions and 2 deletions

View File

@ -1,5 +1,11 @@
# Changelog
## 2025-06-26 - 1.0.100 - fix(wcc-dashboard)
Prevent duplicate application of scroll positions in dashboard to avoid interfering with user scrolling
- Added a private 'scrollPositionsApplied' property to track if scroll positions have already been applied
- Introduced a guard in the applyScrollPositions method to ensure the scroll state is applied only once
## 2025-06-26 - 1.0.99 - fix(dashboard)
Fix scroll state preservation in dashboard by tracking frame and sidebar scroll positions and updating the URL accordingly.

View File

@ -1,6 +1,6 @@
{
"name": "@design.estate/dees-wcctools",
"version": "1.0.99",
"version": "1.0.100",
"private": false,
"description": "A set of web component tools for creating element catalogues, enabling the structured development and documentation of custom elements and pages.",
"exports": {

View File

@ -3,6 +3,6 @@
*/
export const commitinfo = {
name: '@design.estate/dees-wcctools',
version: '1.0.99',
version: '1.0.100',
description: 'A set of web component tools for creating element catalogues, enabling the structured development and documentation of custom elements and pages.'
}

View File

@ -44,6 +44,8 @@ export class WccDashboard extends DeesElement {
@property()
public sidebarScrollY: number = 0;
private scrollPositionsApplied: boolean = false;
@queryAsync('wcc-frame')
public wccFrame: Promise<WccFrame>;
@ -268,6 +270,11 @@ export class WccDashboard extends DeesElement {
}
public async applyScrollPositions() {
// Only apply scroll positions once to avoid interfering with user scrolling
if (this.scrollPositionsApplied) {
return;
}
const wccFrame = await this.wccFrame;
const wccSidebar = this.shadowRoot.querySelector('wcc-sidebar');
@ -280,5 +287,7 @@ export class WccDashboard extends DeesElement {
// The sidebar element itself is the scrollable container
wccSidebar.scrollTop = this.sidebarScrollY;
}
this.scrollPositionsApplied = true;
}
}