From a0de1be65fc4a38164d78bdb9b15a3d32a5ce01e Mon Sep 17 00:00:00 2001 From: "Jeffrey C. Ollie" Date: Thu, 2 Jan 2025 12:23:05 -0600 Subject: [PATCH] gtk: fix non-notebook separator colors --- src/apprt/gtk/Window.zig | 1 + src/apprt/gtk/notebook_adw.zig | 1 + src/apprt/gtk/notebook_gtk.zig | 2 ++ src/apprt/gtk/style-dark.css | 2 +- src/apprt/gtk/style.css | 2 +- 5 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/apprt/gtk/Window.zig b/src/apprt/gtk/Window.zig index 40fe0bd67..516ea7fc5 100644 --- a/src/apprt/gtk/Window.zig +++ b/src/apprt/gtk/Window.zig @@ -99,6 +99,7 @@ pub fn init(self: *Window, app: *App) !void { self.window = gtk_window; c.gtk_window_set_title(gtk_window, "Ghostty"); c.gtk_window_set_default_size(gtk_window, 1000, 600); + c.gtk_widget_add_css_class(@ptrCast(gtk_window), "terminal-window"); // GTK4 grabs F10 input by default to focus the menubar icon. We want // to disable this so that terminal programs can capture F10 (such as htop) diff --git a/src/apprt/gtk/notebook_adw.zig b/src/apprt/gtk/notebook_adw.zig index 04294c4fe..85083a97e 100644 --- a/src/apprt/gtk/notebook_adw.zig +++ b/src/apprt/gtk/notebook_adw.zig @@ -23,6 +23,7 @@ pub const NotebookAdw = struct { assert(adwaita.enabled(&app.config)); const tab_view: *c.AdwTabView = c.adw_tab_view_new().?; + c.gtk_widget_add_css_class(@ptrCast(@alignCast(tab_view)), "notebook"); if (comptime adwaita.versionAtLeast(1, 2, 0) and adwaita.versionAtLeast(1, 2, 0)) { // Adwaita enables all of the shortcuts by default. diff --git a/src/apprt/gtk/notebook_gtk.zig b/src/apprt/gtk/notebook_gtk.zig index 96c5afadd..6e8b016ba 100644 --- a/src/apprt/gtk/notebook_gtk.zig +++ b/src/apprt/gtk/notebook_gtk.zig @@ -20,6 +20,8 @@ pub const NotebookGtk = struct { // Create a notebook to hold our tabs. const notebook_widget: *c.GtkWidget = c.gtk_notebook_new(); + c.gtk_widget_add_css_class(notebook_widget, "notebook"); + const gtk_notebook: *c.GtkNotebook = @ptrCast(notebook_widget); const notebook_tab_pos: c_uint = switch (app.config.@"gtk-tabs-location") { .top, .hidden => c.GTK_POS_TOP, diff --git a/src/apprt/gtk/style-dark.css b/src/apprt/gtk/style-dark.css index b56fa14f2..dcd4bcab9 100644 --- a/src/apprt/gtk/style-dark.css +++ b/src/apprt/gtk/style-dark.css @@ -2,7 +2,7 @@ background-color: transparent; } -separator { +.terminal-window .notebook separator { background-color: rgba(36, 36, 36, 1); background-clip: content-box; } diff --git a/src/apprt/gtk/style.css b/src/apprt/gtk/style.css index edafc84c7..bf0ee62f6 100644 --- a/src/apprt/gtk/style.css +++ b/src/apprt/gtk/style.css @@ -41,7 +41,7 @@ window.without-window-decoration-and-with-titlebar { background-color: transparent; } -separator { +.terminal-window .notebook separator { background-color: rgba(250, 250, 250, 1); background-clip: content-box; }