Port to GTK 3.24 and recolour to the film palette
The GTK3 sheets targeted GTK 3.18 and broke at 3.20, when the CSS class model was replaced by element nodes. On 3.24 they parsed but matched almost nothing: buttons, entries, tabs, scales and scrollbars rendered as bare rectangles. Rewritten against the node model. gtk-3.0/ gtk.css colour definitions only - recolour the theme here widgets.css all widget rules, node-selector based mate.css MATE panel, applets, window list, Caja, terminal gtk-dark.css alias of gtk.css (the theme is already dark) legacy/ the original 3.18 sheets, moved aside for reference Palette retargeted to the WAR10CK window in Live Free or Die Hard: bg #23425E, accent #BA6A07. Supporting shades derived with the original theme's own ratios (raised x1.42, recessed x0.72). Text had to be lifted - the old #868A8E scores 3.0:1 on #23425E, so normal text is #B4C4D2 (5.85:1) and bright text #E8F0F7 (9.06:1). metacity-1/ pixmaps remapped by projecting each pixel onto the segment between its two nearest source anchors and re-blending against the new ones, so antialiased edges stay clean. Titlebar is ~7px taller, its text is centred and no longer a hardcoded #6d7379 for both focus states, and the idle window-button glyphs are white instead of a dim orange that turned to mud on the lighter bar. Scrollbars are deliberately not accent-coloured; @scrollbar_slider (#454F5A) keeps them quiet at rest and findable on hover. Fixes a transparent-body bug: GtkDialog and GtkAssistant do not use the `window` CSS node in 3.20+, so every dialog, About box and file chooser rendered as a hole through to the desktop. Attribution and the GPL-3.0 modification notice added to README.md, index.theme and metacity-theme-1.xml. Licence unchanged. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+66
-19
@@ -1,22 +1,69 @@
|
||||
/* Diehard4 — GTK 3.20+ port
|
||||
*
|
||||
* Original theme by obscurant (2016, GTK 3.18 era).
|
||||
* Ported to the post-3.20 CSS node model. Palette and design language
|
||||
* unchanged: flat surfaces, 2-3px radii, burnt-orange accent.
|
||||
*
|
||||
* Everything below is a colour definition; widget rules live in widgets.css.
|
||||
* Recolour the theme by editing this block alone.
|
||||
*/
|
||||
|
||||
@define-color bg_color #0D151D;
|
||||
@define-color pre_murrine #9F440D;
|
||||
/* ---- core palette ----
|
||||
* Matched to the WAR10CK window in Live Free or Die Hard: the slate the
|
||||
* window and titlebar are painted in, and the orange of the edge bars.
|
||||
* The two screen-accurate values are bg_color and selected_bg_color; the
|
||||
* rest are derived from them using the original theme's own ratios
|
||||
* (raised = bg x1.42, recessed = bg x0.72).
|
||||
*/
|
||||
@define-color bg_color #23425E; /* window + titlebar (screen) */
|
||||
@define-color dark_color #193044; /* recessed: entries, troughs */
|
||||
@define-color light_color #325E85; /* raised: buttons, headers */
|
||||
@define-color fg_color #B4C4D2; /* normal text 5.85:1 */
|
||||
@define-color bright_fg_color #E8F0F7; /* titles, text on accent */
|
||||
@define-color selected_bg_color #BA6A07; /* the accent (screen) */
|
||||
@define-color selected_fg_color #E8F0F7;
|
||||
@define-color menu_color #8CA2B6; /* menubar text, dim text */
|
||||
@define-color link_color #D9964A;
|
||||
@define-color scrollbar_slider #454F5A; /* deliberately quiet, not accent */
|
||||
@define-color trough_border_color @light_color; /* was #111B25 — invisible on 3.24 */
|
||||
|
||||
@define-color fg_color #868A8E;
|
||||
@define-color theme_bg_color #0D151D;
|
||||
@define-color theme_fg_color #ABADB0;
|
||||
@define-color selected_bg_color #9F440D;
|
||||
@define-color selected_fg_color #ABADB0;
|
||||
@define-color link_color #A37649;
|
||||
@define-color base_color #0D151D;
|
||||
@define-color border_color #0D151D;
|
||||
@define-color dark_color #0C1219;
|
||||
@define-color light_color #131F2A;
|
||||
@define-color menu_color #545C64;
|
||||
/* ---- derived / status ---- */
|
||||
@define-color borders @light_color;
|
||||
@define-color unfocused_borders @dark_color;
|
||||
@define-color insensitive_fg_color alpha(@fg_color, 0.45);
|
||||
@define-color insensitive_bg_color @bg_color;
|
||||
@define-color insensitive_base_color @dark_color;
|
||||
@define-color warning_color #B5761F;
|
||||
@define-color error_color #A33A2E;
|
||||
@define-color success_color #4E7A46;
|
||||
|
||||
@import url("gtk-main.css");
|
||||
@import url("gtk-widgets-assets.css");
|
||||
@import url("gnome-applications.css");
|
||||
@import url("nemo.css");
|
||||
@import url("unity.css");
|
||||
@import url("unity-greeter.css");
|
||||
/* ---- names third-party CSS and apps expect ---- */
|
||||
@define-color theme_bg_color @bg_color;
|
||||
@define-color theme_fg_color @fg_color;
|
||||
@define-color theme_base_color @bg_color;
|
||||
@define-color theme_text_color @fg_color;
|
||||
@define-color theme_selected_bg_color @selected_bg_color;
|
||||
@define-color theme_selected_fg_color @selected_fg_color;
|
||||
@define-color theme_unfocused_bg_color @bg_color;
|
||||
@define-color theme_unfocused_fg_color @fg_color;
|
||||
@define-color theme_unfocused_base_color @bg_color;
|
||||
@define-color theme_unfocused_text_color @fg_color;
|
||||
@define-color theme_unfocused_selected_bg_color @selected_bg_color;
|
||||
@define-color theme_unfocused_selected_fg_color @selected_fg_color;
|
||||
@define-color base_color @bg_color;
|
||||
@define-color text_color @fg_color;
|
||||
@define-color tooltip_bg_color @dark_color;
|
||||
@define-color tooltip_fg_color @bright_fg_color;
|
||||
@define-color content_view_bg @bg_color;
|
||||
@define-color placeholder_text_color alpha(@fg_color, 0.55);
|
||||
|
||||
/* ---- window manager hints (GTK client-side decorations) ---- */
|
||||
@define-color wm_title @bright_fg_color;
|
||||
@define-color wm_unfocused_title @menu_color;
|
||||
@define-color wm_bg @bg_color;
|
||||
@define-color wm_border @light_color;
|
||||
@define-color wm_icon_close_bg @selected_bg_color;
|
||||
@define-color wm_icon_close_fg @bright_fg_color;
|
||||
|
||||
@import url("widgets.css");
|
||||
@import url("mate.css");
|
||||
|
||||
Reference in New Issue
Block a user