From 4a8b9ab64de7c6d29e58420354d898a52a78bd06 Mon Sep 17 00:00:00 2001 From: fs Date: Wed, 22 Apr 2026 22:41:12 +0200 Subject: [PATCH] feat(drawer): open-full action as secondary outline button with text + icon MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Converts the "Open full page" control in the detail drawer header from an icon-only link into a text+icon button using the standard `secondary outline small` classes. Because the base button rule in app-shell.css only targets `button, [type=…], [role=button]`, the anchor gets `role="button"` so the core cascade applies (border-radius, padding, hover/focus states). Component-local CSS is trimmed to just the flex layout (icon + label with gap) and text-decoration reset — border, radius and colors come from the shared button base. Tooltip is removed (redundant with visible text); aria-label remains for screen readers. Co-Authored-By: Claude Opus 4.7 (1M context) --- web/css/components/app-detail-drawer.css | 8 ++++++++ web/js/components/app-detail-drawer.js | 8 ++++---- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/web/css/components/app-detail-drawer.css b/web/css/components/app-detail-drawer.css index dcc6d66..5216796 100644 --- a/web/css/components/app-detail-drawer.css +++ b/web/css/components/app-detail-drawer.css @@ -82,6 +82,14 @@ margin-bottom: 0; } + .app-detail-drawer-full { + display: inline-flex; + align-items: center; + gap: 0.4rem; + white-space: nowrap; + text-decoration: none; + } + .app-detail-drawer-body { flex: 1 1 auto; overflow-y: auto; diff --git a/web/js/components/app-detail-drawer.js b/web/js/components/app-detail-drawer.js index b7a2f54..5bafb0c 100644 --- a/web/js/components/app-detail-drawer.js +++ b/web/js/components/app-detail-drawer.js @@ -48,10 +48,10 @@ function ensureDrawerElement(labels) {