Skip to content

Commit dc420e8

Browse files
committed
Add Theme V2 background to sticky Tool Vote table header - PR_26160_067-admin-tool-vote-template-conversion
1 parent 6c2626f commit dc420e8

4 files changed

Lines changed: 20 additions & 3 deletions

File tree

assets/theme-v2/css/layout.css

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -364,7 +364,7 @@ body.tool-focus-mode .tool-workspace--table-scroll-focus .tool-table-scroll-regi
364364
}
365365

366366
body.tool-focus-mode .tool-workspace--table-scroll-focus .tool-table-scroll-region .data-table thead th {
367-
background: var(--card-background);
367+
background: var(--panel);
368368
position: sticky;
369369
top: var(--space-0);
370370
z-index: var(--z-index-sm)
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[ ] all Admin pages should have a single importable admin menu loaded on the lefts side of the screen
2+
3+
admin/tool-votes.html

docs_build/dev/reports/admin-tool-vote-template-conversion-report.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717
| Fullscreen does not scroll the entire page. | Playwright asserts `document.body` keeps `overflow-y:hidden` and page scroll position does not change during table scroll testing. | PASS |
1818
| Table sort buttons remain visible at the top inside `thead`. | `assets/theme-v2/css/layout.css` pins fullscreen Tool Vote `thead th` cells with sticky positioning; Playwright verifies the Tool sort button text remains visible after vertical table scrolling. | PASS |
1919
| `thead` remains pinned while data rows scroll. | Playwright verifies the Tool sort header cell reports `position: sticky`, stays inside the table scroll region, and remains above scrolled `tbody` rows after the table region scrolls to the bottom. | PASS |
20+
| Sticky `thead` uses a non-transparent Theme V2 surface background. | Sticky Tool Vote `thead th` cells use `background: var(--panel)`, the same solid Theme V2 panel token used by sticky tool chrome; Playwright verifies `background-color` is non-transparent and `background-image` is `none`. | PASS |
21+
| Sticky `thead` sort buttons remain readable. | Playwright verifies the sticky header sort button remains visible and its text color is non-transparent and distinct from its button background. | PASS |
2022
| In fullscreen, only the data/table area should scroll vertically. | Reusable `tool-workspace--table-scroll-focus` plus `tool-table-scroll-region`; Playwright injects additional table rows, scrolls the table region, and verifies side/center panels remain hidden overflow. | PASS |
2123
| Preserve horizontal scrolling for wide Tool Vote tables. | Playwright verifies the table wrapper is horizontally scrollable and `scrollLeft` moves for the wide table. | PASS |
2224
| Verify Tool Vote table remains usable with large tool counts. | Playwright clones 90 extra rows in the test DOM, verifies vertical scrolling is owned by `data-toolbox-votes-scroll-region`, and keeps the body locked. | PASS |
@@ -44,4 +46,4 @@ Full samples validation was skipped as requested. No samples, shared sample load
4446

4547
## Manual Test Notes
4648

47-
The targeted Playwright lane verified the converted Tool Template V2 structure, Admin navigation, fixed fullscreen header/footer, footer scrollbar access, locked page scrolling, pinned `thead` sort buttons, `tbody` row scrolling under the pinned header with large row counts, horizontal table scrolling, and removed controls. Earlier PR_26160_067 validation also verified editable State, sorting, ordering, tool links, and State edits flowing into Toolbox Build Path through the existing DB-backed metadata source.
49+
The targeted Playwright lane verified the converted Tool Template V2 structure, Admin navigation, fixed fullscreen header/footer, footer scrollbar access, locked page scrolling, pinned `thead` sort buttons, the sticky `thead` `--panel` background, `tbody` row scrolling under the pinned header with large row counts, horizontal table scrolling, and removed controls. Earlier PR_26160_067 validation also verified editable State, sorting, ordering, tool links, and State edits flowing into Toolbox Build Path through the existing DB-backed metadata source.

tests/playwright/tools/AdminPlatformToolsWireframes.spec.mjs

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,9 @@ test("Tool Votes side menu includes Admin platform wireframes", async ({ page })
164164
const scrollRegionBox = scrollRegion?.getBoundingClientRect();
165165
const sortButtonBox = sortButton?.getBoundingClientRect();
166166
const firstBodyRowBox = scrollRegion?.querySelector("tbody tr")?.getBoundingClientRect();
167+
const stickyHeaderCell = sortButton?.closest("th");
168+
const stickyHeaderStyle = stickyHeaderCell ? getComputedStyle(stickyHeaderCell) : null;
169+
const sortButtonStyle = sortButton ? getComputedStyle(sortButton) : null;
167170
return {
168171
bodyOverflowY: getComputedStyle(document.body).overflowY,
169172
bodyScrollAfter: document.scrollingElement?.scrollTop || 0,
@@ -187,8 +190,12 @@ test("Tool Votes side menu includes Admin platform wireframes", async ({ page })
187190
scrollRegionScrollTop: scrollRegion ? scrollRegion.scrollTop : 0,
188191
scrollRegionVerticalScrollable: scrollRegion ? scrollRegion.scrollHeight > scrollRegion.clientHeight : false,
189192
scrollRegionOverflowY: scrollRegion ? getComputedStyle(scrollRegion).overflowY : "",
193+
stickyHeaderBackgroundColor: stickyHeaderStyle?.backgroundColor || "",
194+
stickyHeaderBackgroundImage: stickyHeaderStyle?.backgroundImage || "",
195+
sortButtonBackgroundColor: sortButtonStyle?.backgroundColor || "",
190196
sortButtonBottom: sortButtonBox ? Math.round(sortButtonBox.bottom) : 0,
191-
sortButtonPosition: sortButton ? getComputedStyle(sortButton.closest("th")).position : "",
197+
sortButtonColor: sortButtonStyle?.color || "",
198+
sortButtonPosition: stickyHeaderStyle?.position || "",
192199
sortButtonText: sortButton ? sortButton.textContent.trim() : "",
193200
sortButtonTop: sortButtonBox ? Math.round(sortButtonBox.top) : 0,
194201
scrollRegionTop: scrollRegionBox ? Math.round(scrollRegionBox.top) : 0,
@@ -215,6 +222,11 @@ test("Tool Votes side menu includes Admin platform wireframes", async ({ page })
215222
expect(fullscreenMetrics.horizontalScrollLeft).toBeGreaterThan(0);
216223
expect(fullscreenMetrics.scrollRegionBottom).toBeLessThanOrEqual(fullscreenMetrics.footerTop);
217224
expect(fullscreenMetrics.sortButtonPosition).toBe("sticky");
225+
expect(fullscreenMetrics.stickyHeaderBackgroundColor).not.toBe("rgba(0, 0, 0, 0)");
226+
expect(fullscreenMetrics.stickyHeaderBackgroundColor).not.toBe("transparent");
227+
expect(fullscreenMetrics.stickyHeaderBackgroundImage).toBe("none");
228+
expect(fullscreenMetrics.sortButtonColor).not.toBe("rgba(0, 0, 0, 0)");
229+
expect(fullscreenMetrics.sortButtonColor).not.toBe(fullscreenMetrics.sortButtonBackgroundColor);
218230
expect(fullscreenMetrics.sortButtonText).toContain("Tool");
219231
expect(fullscreenMetrics.sortButtonTop).toBeGreaterThanOrEqual(fullscreenMetrics.scrollRegionTop);
220232
expect(fullscreenMetrics.sortButtonBottom).toBeLessThanOrEqual(fullscreenMetrics.scrollRegionBottom);

0 commit comments

Comments
 (0)