- wm: hot corner polling via select()-based wm_run loop; TL=Exposé, TR=show desktop, BL=launcher, BR=lock - wm: XF86 media key grabs (volume, brightness, playback) + Super+V for clipboard - wm: autostart reads ~/.config/orionos/autostart on startup - events: media key dispatch (amixer/brightnessctl/playerctl); Super+V → orionclip --show; Print → orionshot - orionshot: new X11 screenshot tool, full-screen and rubber-band region modes, saves PNG to ~/Pictures/Screenshots/ - orionclip: new clipboard manager daemon; polls clipboard, stores 20 entries, popup via Super+V IPC - orionnotify: append-only notification history log at ~/.local/share/orionos/notif-history.log - themes: GTK accent updated from #3A6898 to #1E58A8 to match WM/deskbar - themes: orionwallpaper gains --slideshow DIR [SECS] mode using feh + sleep loop - iso: Docker-based archiso builder, live-session xinitrc, profiledef.sh - Makefile: add orionshot and orionclip to all/clean/install; Docker-based iso target
242 lines
9.2 KiB
CSS
242 lines
9.2 KiB
CSS
/* OrionOS GTK3 Theme — dark navy palette matching orionwm/oriondeskbar */
|
|
|
|
@define-color bg_color #1E2436;
|
|
@define-color bg_dark #161C2A;
|
|
@define-color bg_darker #0E1220;
|
|
@define-color bg_light #262E42;
|
|
@define-color border_light #2A60A8;
|
|
@define-color border_dark #080C18;
|
|
@define-color text_color #D8E4F4;
|
|
@define-color text_disabled #48587A;
|
|
@define-color selected_bg #1E4878;
|
|
@define-color selected_fg #F0F6FF;
|
|
@define-color accent #1E58A8;
|
|
@define-color button_bg #202A3C;
|
|
@define-color button_hover #283650;
|
|
@define-color button_active #181E2E;
|
|
@define-color entry_bg #0E1424;
|
|
@define-color tooltip_bg #0C1020;
|
|
@define-color link_color #5088CC;
|
|
|
|
/* ── base ─────────────────────────────────────────────────────────── */
|
|
* {
|
|
font-family: "Sans";
|
|
font-size: 10pt;
|
|
color: @text_color;
|
|
outline: none;
|
|
-gtk-icon-style: regular;
|
|
}
|
|
|
|
window, .background {
|
|
background-color: @bg_color;
|
|
color: @text_color;
|
|
}
|
|
|
|
/* ── header bars ─────────────────────────────────────────────────── */
|
|
headerbar, .titlebar {
|
|
background: linear-gradient(to bottom, @bg_light, @bg_dark);
|
|
border-bottom: 1px solid @border_dark;
|
|
color: @text_color;
|
|
padding: 4px 8px;
|
|
min-height: 28px;
|
|
}
|
|
headerbar .title { font-weight: bold; }
|
|
|
|
/* ── buttons ─────────────────────────────────────────────────────── */
|
|
button {
|
|
background: linear-gradient(to bottom, @bg_light, @button_bg);
|
|
border: 1px solid @border_dark;
|
|
border-radius: 2px;
|
|
padding: 3px 10px;
|
|
color: @text_color;
|
|
box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), inset 0 -1px 0 rgba(0,0,0,0.3);
|
|
}
|
|
button:hover {
|
|
background: linear-gradient(to bottom, @button_hover, @bg_light);
|
|
border-color: @border_light;
|
|
}
|
|
button:active, button:checked {
|
|
background: linear-gradient(to bottom, @button_active, @bg_dark);
|
|
box-shadow: inset 0 1px 0 rgba(0,0,0,0.3);
|
|
}
|
|
button:disabled {
|
|
color: @text_disabled;
|
|
background: @bg_color;
|
|
}
|
|
button.suggested-action {
|
|
background: linear-gradient(to bottom, #2A5E88, @selected_bg);
|
|
color: @selected_fg;
|
|
border-color: #1A3E58;
|
|
}
|
|
button.destructive-action {
|
|
background: linear-gradient(to bottom, #CC4444, #AA2222);
|
|
color: white;
|
|
border-color: #882222;
|
|
}
|
|
|
|
/* ── menus ───────────────────────────────────────────────────────── */
|
|
menu, .menu, .context-menu {
|
|
background-color: @bg_dark;
|
|
border: 1px solid @border_light;
|
|
padding: 2px 0;
|
|
}
|
|
menuitem {
|
|
padding: 4px 12px;
|
|
color: @text_color;
|
|
}
|
|
menuitem:hover, menuitem:selected {
|
|
background-color: @selected_bg;
|
|
color: @selected_fg;
|
|
}
|
|
menuitem:disabled { color: @text_disabled; }
|
|
|
|
separator, menuitem > separator {
|
|
background-color: @border_dark;
|
|
min-height: 1px;
|
|
margin: 3px 6px;
|
|
}
|
|
|
|
/* ── text inputs ─────────────────────────────────────────────────── */
|
|
entry {
|
|
background-color: @entry_bg;
|
|
border: 1px solid @border_dark;
|
|
border-radius: 1px;
|
|
padding: 3px 6px;
|
|
color: @text_color;
|
|
box-shadow: inset 0 1px 2px rgba(0,0,0,0.4);
|
|
}
|
|
entry:focus {
|
|
border-color: @accent;
|
|
box-shadow: inset 0 1px 2px rgba(0,0,0,0.4), 0 0 0 2px rgba(58,104,152,0.35);
|
|
}
|
|
entry:disabled { background-color: @bg_darker; color: @text_disabled; }
|
|
|
|
/* ── lists & trees ───────────────────────────────────────────────── */
|
|
treeview, listview, .view {
|
|
background-color: @entry_bg;
|
|
color: @text_color;
|
|
}
|
|
treeview:selected, listview row:selected, .view:selected {
|
|
background-color: @selected_bg;
|
|
color: @selected_fg;
|
|
}
|
|
treeview header button {
|
|
background: linear-gradient(to bottom, @bg_light, @bg_dark);
|
|
border-right: 1px solid @border_dark;
|
|
border-bottom: 1px solid @border_dark;
|
|
border-radius: 0;
|
|
box-shadow: none;
|
|
}
|
|
treeview.odd-row { background-color: @bg_darker; }
|
|
|
|
/* ── notebooks (tabs) ────────────────────────────────────────────── */
|
|
notebook > header {
|
|
background-color: @bg_darker;
|
|
border-bottom: 1px solid @border_dark;
|
|
}
|
|
notebook > header tab {
|
|
background-color: @bg_dark;
|
|
border: 1px solid @border_dark;
|
|
border-bottom: none;
|
|
padding: 4px 12px;
|
|
margin-right: 2px;
|
|
border-radius: 2px 2px 0 0;
|
|
color: @text_disabled;
|
|
}
|
|
notebook > header tab:checked {
|
|
background-color: @bg_color;
|
|
border-bottom: 1px solid @bg_color;
|
|
margin-bottom: -1px;
|
|
color: @text_color;
|
|
}
|
|
notebook > stack { background-color: @bg_color; }
|
|
|
|
/* ── scrollbars ──────────────────────────────────────────────────── */
|
|
scrollbar {
|
|
background-color: @bg_darker;
|
|
border: 1px solid @border_dark;
|
|
}
|
|
scrollbar slider {
|
|
background-color: @button_bg;
|
|
border: 1px solid @border_dark;
|
|
border-radius: 2px;
|
|
min-width: 12px;
|
|
min-height: 12px;
|
|
}
|
|
scrollbar slider:hover { background-color: @button_hover; border-color: @border_light; }
|
|
scrollbar button { background-color: @bg_dark; color: @text_color; }
|
|
|
|
/* ── toolbars ────────────────────────────────────────────────────── */
|
|
toolbar, .toolbar {
|
|
background: linear-gradient(to bottom, @bg_light, @bg_dark);
|
|
border-bottom: 1px solid @border_dark;
|
|
padding: 2px;
|
|
}
|
|
|
|
/* ── statusbar ───────────────────────────────────────────────────── */
|
|
statusbar {
|
|
background-color: @bg_darker;
|
|
border-top: 1px solid @border_dark;
|
|
padding: 2px 6px;
|
|
font-size: 9pt;
|
|
color: @text_disabled;
|
|
}
|
|
|
|
/* ── tooltips ────────────────────────────────────────────────────── */
|
|
tooltip {
|
|
background-color: @tooltip_bg;
|
|
border: 1px solid @border_light;
|
|
color: @text_color;
|
|
padding: 4px 8px;
|
|
border-radius: 0;
|
|
}
|
|
|
|
/* ── progress bars ───────────────────────────────────────────────── */
|
|
progressbar trough {
|
|
background-color: @bg_darker;
|
|
border: 1px solid @border_dark;
|
|
border-radius: 1px;
|
|
}
|
|
progressbar progress {
|
|
background: linear-gradient(to right, @selected_bg, @accent);
|
|
border-radius: 1px;
|
|
}
|
|
|
|
/* ── checkboxes & radio buttons ──────────────────────────────────── */
|
|
checkbutton check, radiobutton radio {
|
|
background-color: @entry_bg;
|
|
border: 1px solid @border_dark;
|
|
min-width: 14px;
|
|
min-height: 14px;
|
|
}
|
|
checkbutton check:checked {
|
|
background-color: @selected_bg;
|
|
border-color: @accent;
|
|
color: @selected_fg;
|
|
}
|
|
radiobutton radio:checked { background-color: @selected_bg; border-color: @accent; }
|
|
|
|
/* ── spin buttons ────────────────────────────────────────────────── */
|
|
spinbutton { background-color: @entry_bg; border: 1px solid @border_dark; }
|
|
spinbutton button { border-radius: 0; padding: 0 4px; background: @bg_dark; }
|
|
|
|
/* ── combo boxes ─────────────────────────────────────────────────── */
|
|
combobox button {
|
|
background: linear-gradient(to bottom, @bg_light, @button_bg);
|
|
}
|
|
|
|
/* ── sidebar (file chooser) ──────────────────────────────────────── */
|
|
.sidebar { background-color: @bg_darker; border-right: 1px solid @border_dark; }
|
|
.sidebar row { color: @text_color; }
|
|
.sidebar row:selected { background-color: @selected_bg; color: @selected_fg; }
|
|
|
|
/* ── links ───────────────────────────────────────────────────────── */
|
|
*:link { color: @link_color; }
|
|
*:visited { color: #8860CC; }
|
|
|
|
/* ── infobar / message bar ───────────────────────────────────────── */
|
|
infobar { background-color: @bg_light; border-bottom: 1px solid @border_dark; }
|
|
|
|
/* ── Thunar-specific tweaks ──────────────────────────────────────── */
|
|
.thunar .pathbar button { border-radius: 2px; margin: 1px; }
|