diff --git a/frontend/src/pages/org/archived-item-qa/archived-item-qa.ts b/frontend/src/pages/org/archived-item-qa/archived-item-qa.ts
index 48092e6093..60d0a820c6 100644
--- a/frontend/src/pages/org/archived-item-qa/archived-item-qa.ts
+++ b/frontend/src/pages/org/archived-item-qa/archived-item-qa.ts
@@ -338,6 +338,18 @@ export class ArchivedItemQA extends BtrixElement {
}
}
+ protected updated(changedProperties: PropertyValues): void {
+ if (
+ changedProperties.has("crawlData") &&
+ this.crawlData?.replayUrl &&
+ this.crawlData.replayUrl !==
+ (changedProperties.get("crawlData") as QATypes.ReplayData | undefined)
+ ?.replayUrl
+ ) {
+ this.showReplayPageLoadingDialog();
+ }
+ }
+
private async initItem() {
void this.fetchCrawl();
await this.fetchQARuns();
@@ -1038,6 +1050,8 @@ export class ArchivedItemQA extends BtrixElement {
return html`
e.preventDefault()}
>
@@ -1131,6 +1144,16 @@ export class ArchivedItemQA extends BtrixElement {
`;
}
+ private readonly disableScrollLock = (e: CustomEvent) => {
+ e.stopPropagation();
+ document.documentElement.classList.add("disable-scroll-lock");
+ };
+
+ private readonly enableScrollLock = (e: CustomEvent) => {
+ e.stopPropagation();
+ document.documentElement.classList.remove("disable-scroll-lock");
+ };
+
private readonly renderRWP = (rwpId: string, { qa }: { qa: boolean }) => {
if (!rwpId) return;
diff --git a/frontend/src/theme.stylesheet.css b/frontend/src/theme.stylesheet.css
index 2ad070739a..a761fdf36d 100644
--- a/frontend/src/theme.stylesheet.css
+++ b/frontend/src/theme.stylesheet.css
@@ -500,6 +500,10 @@
height: var(--btrix-overflow-scrim-width);
--tw-gradient-from: var(--btrix-overflow-scroll-scrim-color, white);
}
+
+ .sl-scroll-lock.disable-scroll-lock body {
+ overflow: auto !important;
+ }
}
/* Following styles won't work with layers */
@@ -514,17 +518,3 @@
[class*=" hover\:text-"]::part(base):hover {
color: inherit;
}
-
-/* Fix scrollbar gutter not actually */
-html {
- overflow: auto;
- scrollbar-gutter: stable;
-}
-
-body.sl-scroll-lock {
- scrollbar-gutter: auto !important;
-}
-/* Leave document scrollable now for replay.ts embedded dialogs */
-/* html:has(body.sl-scroll-lock) {
- overflow: hidden;
-} */