From 45cb2862963460b3ca3993358bfdff5f10431dce Mon Sep 17 00:00:00 2001 From: Jovan Lanik Date: Sun, 13 Mar 2022 21:58:42 +0100 Subject: [PATCH] Add support for changing GTK theme --- README.md | 2 ++ main.go | 9 +++++++++ 2 files changed, 11 insertions(+) diff --git a/README.md b/README.md index 1c19b00..16b2301 100644 --- a/README.md +++ b/README.md @@ -66,6 +66,8 @@ Usage of nwg-drawer: File Search result COLumns (default 2) -fslen int File Search name LENgth Limit (default 80) + -g string + GTK theme name, eg. "Adwaita-dark" -is int Icon Size (default 64) -lang string diff --git a/main.go b/main.go index dcaaa7c..2976adf 100644 --- a/main.go +++ b/main.go @@ -119,6 +119,7 @@ var cssFileName = flag.String("s", "drawer.css", "Styling: css file name") var targetOutput = flag.String("o", "", "name of the Output to display the drawer on (sway only)") var displayVersion = flag.Bool("v", false, "display Version information") var overlay = flag.Bool("ovl", false, "use OVerLay layer") +var gtkTheme = flag.String("g", "", "GTK theme name") var iconSize = flag.Int("is", 64, "Icon Size") var marginTop = flag.Int("mt", 0, "Margin Top") var marginLeft = flag.Int("ml", 0, "Margin Left") @@ -302,6 +303,14 @@ func main() { // USER INTERFACE gtk.Init(nil) + if *gtkTheme != "" { + settings, _ := gtk.SettingsGetDefault() + err = settings.SetProperty("gtk-theme-name", *gtkTheme) + if err != nil { + log.Error("Unable to set theme:", err) + } + } + cssProvider, _ := gtk.CssProviderNew() err = cssProvider.LoadFromPath(*cssFileName)