add status bar for plugin/capability status instead of message box

This commit is contained in:
SoftFever
2026-07-03 14:57:35 +08:00
parent e3c6ec309d
commit 6fd1176661
5 changed files with 208 additions and 49 deletions

View File

@@ -65,9 +65,22 @@ body {
gap: 8px;
}
/* Compact toolbar buttons */
.toolbar .ButtonTypeChoice {
height: 26px !important;
line-height: 25px !important;
font-size: 13px !important;
}
/* Only the plain buttons (Open Terminal, Refresh) tighten horizontal padding; the explore dropdown
buttons (grandchildren) keep their own padding/width. */
.toolbar > .ButtonTypeChoice {
padding: 0 10px !important;
}
.explore-dropdown {
--explore-arrow-width: 26px;
--explore-action-width: 160px;
--explore-arrow-width: 22px;
--explore-action-width: 140px;
position: relative;
display: inline-flex;
align-items: stretch;
@@ -652,8 +665,68 @@ body {
}
}
#AcceptArea {
/* Footer status bar: single-line, fixed-height strip that shows the latest script run result.
Reuses the shared status color tokens so it themes (light/dark) like the plugin status chips. */
.status-bar {
flex: 0 0 auto;
display: flex;
align-items: center;
gap: 8px;
min-height: 28px;
padding: 6px 14px;
box-sizing: border-box;
border-top: 1px solid var(--border);
background: var(--panel);
color: var(--text);
font-size: 13px;
}
.status-dot {
flex: 0 0 auto;
width: 8px;
height: 8px;
border-radius: 50%;
background: var(--muted);
}
.status-text {
min-width: 0;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
/* Idle (no run yet): keep the strip height stable but hide the indicator dot. */
.status-bar.is-empty .status-dot {
visibility: hidden;
}
.status-bar.level-success .status-dot {
background: var(--plugin-status-ok);
}
.status-bar.level-success .status-text {
color: var(--plugin-status-ok);
}
.status-bar.level-error .status-dot {
background: var(--plugin-status-danger);
}
.status-bar.level-error .status-text {
color: var(--plugin-status-danger);
}
.status-bar.level-warn .status-dot {
background: var(--plugin-status-warn);
}
.status-bar.level-warn .status-text {
color: var(--plugin-status-warn);
}
.status-bar.level-info .status-dot {
background: var(--muted);
}
.ctx {