Skip to content

Commit 0ec8d5a

Browse files
committed
fix(themes): fix tab positioning, task viewer scrollbar, and Latte progress text contrast
- Remove position:relative !important from .x-tab rule across all themes ExtJS box layout uses inline position:absolute for tab offsets; overriding with relative caused each tab offset to double-count (natural flow pos + intended left), pushing Memory/Network/Confirm tabs off-screen. Fixes #50 - Scope .x-window .x-panel-body overflow:visible to :not(.x-scroller) Blanket override was clobbering ExtJS inline overflow:auto on scrollable panel bodies, removing task viewer scrollbars. Fixes #49 - Set --ctp-on-accent to #ffffff in Catppuccin Latte var(--ctp-base) = #eff1f5 (near-white) was invisible on Latte's light bg; white gives proper contrast against vivid accent fills. Fixes #51 Bumps version to v2.7.3
1 parent 2b7ed7c commit 0ec8d5a

22 files changed

Lines changed: 30 additions & 43 deletions

CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77

88
## [Unreleased]
99

10+
## [2.7.3] - 2026-06-12
11+
12+
### Fixed
13+
- **All themes** — Task Viewer window no longer loses its scrollbar. The blanket `.x-window .x-panel-body { overflow: visible !important }` rule was overriding ExtJS's own inline `overflow: auto` on scrollable panel bodies (`.x-scroller`). Fixed by scoping the rule to `:not(.x-scroller)`. Issue [#49](https://github.com/IT-BAER/proxmorph/issues/49)
14+
- **All themes** — CT and VM creation dialog tabs are no longer pushed off-screen. `position: relative !important` on `.x-tab` was overriding ExtJS box layout's absolute positioning, causing each tab's offset to double-count (natural flow position + intended left = tabs spreading ~1.5× wider than the container). Removed the offending declaration. Issue [#50](https://github.com/IT-BAER/proxmorph/issues/50)
15+
- **Catppuccin Latte** — Text on colored elements (progress bar fill, active buttons, badges) is now visible. `--ctp-on-accent` was set to `var(--ctp-base)` (`#eff1f5`, near-white), which is invisible on the light Latte background. Changed to `#ffffff` for proper contrast against vivid Latte accent fills (mauve, red, yellow). Issue [#51](https://github.com/IT-BAER/proxmorph/issues/51)
16+
1017
## [2.7.2] - 2026-04-16
1118

1219
### Fixed

install.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ MAGENTA='\033[0;35m'
1515
NC='\033[0m' # No Color
1616

1717
# Configuration
18-
VERSION="2.7.2"
18+
VERSION="2.7.3"
1919
WIDGET_TOOLKIT_DIR="/usr/share/javascript/proxmox-widget-toolkit"
2020
THEMES_DIR="${WIDGET_TOOLKIT_DIR}/themes"
2121
PROXMOXLIB_JS="${WIDGET_TOOLKIT_DIR}/proxmoxlib.js"

themes/theme-blue-slate.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,7 +168,7 @@ canvas.x-surface-canvas, .x-surface-canvas, .x-draw-component canvas,
168168
padding: 12px 0 !important;
169169
}
170170

171-
.x-window .x-panel-body {
171+
.x-window .x-panel-body:not(.x-scroller) {
172172
overflow: visible !important;
173173
}
174174

@@ -1241,7 +1241,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
12411241
border: none !important;
12421242
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
12431243
padding: 8px 16px 8px !important;
1244-
position: relative !important;
12451244
overflow: visible !important;
12461245
margin-bottom: 0 !important;
12471246
transition: color 0.15s ease !important;

themes/theme-catppuccin-frappe.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ svg.x-surface,
297297
}
298298

299299
/* Allow column panel bodies to show overflowed form content */
300-
.x-window .x-panel-body {
300+
.x-window .x-panel-body:not(.x-scroller) {
301301
overflow: visible !important;
302302
}
303303

@@ -1553,7 +1553,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15531553
border: none !important;
15541554
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15551555
padding: 8px 16px 8px !important;
1556-
position: relative !important;
15571556
overflow: visible !important;
15581557
margin-bottom: 0 !important;
15591558
transition: color 0.15s ease !important;

themes/theme-catppuccin-latte.css

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -92,8 +92,8 @@
9292
--pwt-chart-primary: var(--ctp-mauve);
9393
--pwt-chart-grid-stroke: var(--ctp-surface1);
9494

95-
/* On Accent text — style guide mandates Base for text on colored backgrounds */
96-
--ctp-on-accent: var(--ctp-base);
95+
/* On Accent text — white for Latte vivid accents (mauve/red contrast); Base is near-white, invisible on light bg */
96+
--ctp-on-accent: #ffffff;
9797

9898
/* Hover overlay — Overlay2@12% (neutral, per Catppuccin port conventions) */
9999
--ctp-hover-overlay: rgba(124, 127, 147, 0.12);
@@ -301,7 +301,7 @@ svg.x-surface,
301301
}
302302

303303
/* Allow column panel bodies to show overflowed form content */
304-
.x-window .x-panel-body {
304+
.x-window .x-panel-body:not(.x-scroller) {
305305
overflow: visible !important;
306306
}
307307

@@ -1557,7 +1557,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15571557
border: none !important;
15581558
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15591559
padding: 8px 16px 8px !important;
1560-
position: relative !important;
15611560
overflow: visible !important;
15621561
margin-bottom: 0 !important;
15631562
transition: color 0.15s ease !important;

themes/theme-catppuccin-macchiato.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ svg.x-surface,
297297
}
298298

299299
/* Allow column panel bodies to show overflowed form content */
300-
.x-window .x-panel-body {
300+
.x-window .x-panel-body:not(.x-scroller) {
301301
overflow: visible !important;
302302
}
303303

@@ -1553,7 +1553,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15531553
border: none !important;
15541554
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15551555
padding: 8px 16px 8px !important;
1556-
position: relative !important;
15571556
overflow: visible !important;
15581557
margin-bottom: 0 !important;
15591558
transition: color 0.15s ease !important;

themes/theme-catppuccin-mocha-teal.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ svg.x-surface,
297297
}
298298

299299
/* Allow column panel bodies to show overflowed form content */
300-
.x-window .x-panel-body {
300+
.x-window .x-panel-body:not(.x-scroller) {
301301
overflow: visible !important;
302302
}
303303

@@ -1553,7 +1553,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15531553
border: none !important;
15541554
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15551555
padding: 8px 16px 8px !important;
1556-
position: relative !important;
15571556
overflow: visible !important;
15581557
margin-bottom: 0 !important;
15591558
transition: color 0.15s ease !important;

themes/theme-catppuccin-mocha.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ svg.x-surface,
325325
}
326326

327327
/* Allow column panel bodies to show overflowed form content */
328-
.x-window .x-panel-body {
328+
.x-window .x-panel-body:not(.x-scroller) {
329329
overflow: visible !important;
330330
}
331331

@@ -1581,7 +1581,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15811581
border: none !important;
15821582
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15831583
padding: 8px 16px 8px !important;
1584-
position: relative !important;
15851584
overflow: visible !important;
15861585
margin-bottom: 0 !important;
15871586
transition: color 0.15s ease !important;

themes/theme-dracula-cyan.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ svg.x-surface,
293293
}
294294

295295
/* Allow column panel bodies to show overflowed form content */
296-
.x-window .x-panel-body {
296+
.x-window .x-panel-body:not(.x-scroller) {
297297
overflow: visible !important;
298298
}
299299

@@ -1549,7 +1549,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15491549
border: none !important;
15501550
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15511551
padding: 8px 16px 8px !important;
1552-
position: relative !important;
15531552
overflow: visible !important;
15541553
margin-bottom: 0 !important;
15551554
transition: color 0.15s ease !important;

themes/theme-dracula-green.css

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,7 +293,7 @@ svg.x-surface,
293293
}
294294

295295
/* Allow column panel bodies to show overflowed form content */
296-
.x-window .x-panel-body {
296+
.x-window .x-panel-body:not(.x-scroller) {
297297
overflow: visible !important;
298298
}
299299

@@ -1549,7 +1549,6 @@ div[id^="pveResourceTree"] .x-grid-cell {
15491549
border: none !important;
15501550
border-radius: var(--pm-radius-md) var(--pm-radius-md) 0 0 !important;
15511551
padding: 8px 16px 8px !important;
1552-
position: relative !important;
15531552
overflow: visible !important;
15541553
margin-bottom: 0 !important;
15551554
transition: color 0.15s ease !important;

0 commit comments

Comments
 (0)