From b2a3bb83b480831d4d94ae071a1b038a8991f3df Mon Sep 17 00:00:00 2001
From: rokosun <rokosun@noreply.git.trom.tf>
Date: Sat, 14 Oct 2023 22:06:49 +0200
Subject: [PATCH] Sync gtk-4.0 directory to fix theming

Also removed old code for flatpak_icons_dir which is not needed anymore.
---
 bin/periodic/fix-theming | 22 ++++++++++++++--------
 1 file changed, 14 insertions(+), 8 deletions(-)

diff --git a/bin/periodic/fix-theming b/bin/periodic/fix-theming
index 0fa5d19..bd64c56 100755
--- a/bin/periodic/fix-theming
+++ b/bin/periodic/fix-theming
@@ -5,12 +5,12 @@ pidof -sq -o %PPID -x "$(basename "$0")" && exit
 
 # Set the directory/file paths
 declare -r flatpak_themes_dir="$HOME/.themes"
-declare -r flatpak_icons_dir="$HOME/.icons"
+declare -r config_dir="${XDG_CONFIG_HOME:-$HOME/.config}"
 declare -r profile="$HOME/.profile"
 
-# Create flatpak icons & themes directories if they don't exist
-mkdir -p "$flatpak_themes_dir" "$flatpak_icons_dir" ||
-	{ echo "failed to make directories $flatpak_themes_dir & $flatpak_icons_dir"; exit 1; }
+# Create directories if they don't exist
+mkdir -p "$flatpak_themes_dir" "$config_dir" ||
+	{ echo "failed to make directories $flatpak_themes_dir & $config_dir"; exit 1; }
 
 # Enable option for syncing the current theme with XFWM theme if not already enabled
 [ "$(xfconf-query -c xsettings -p /Xfce/SyncThemes)" != 'true' ] &&
@@ -162,14 +162,20 @@ sync_theme() {
 		[ "$current_window_scaling" -eq '2' ] && use_hdpi_theme_variant 'disable_notification'
 	fi
 
-	# Cleanup flatpak_themes_dir
-	rm -rf "${flatpak_themes_dir:?}"/*
+	# Cleanup flatpak_themes_dir and ~/.config/gtk-4.0
+	rm -rf "${flatpak_themes_dir:?}"/{*,.*} "$config_dir/gtk-4.0"/{*,.*}
 
 	# Find the directory where the current theme is stored
 	local -r current_theme_dir=$(xdg_directory_lookup "themes/$current_theme")
-	# Copy/sync current_theme_dir to flatpak_themes_dir
-	[ -d "$current_theme_dir" ] &&
+
+	if [ -d "$current_theme_dir" ]; then
+		# Copy/sync current_theme_dir to flatpak_themes_dir
 		rsync -av --delete --progress "$current_theme_dir" "$flatpak_themes_dir"
+		local -r current_theme_gtk4_dir="$current_theme_dir/gtk-4.0"
+		[ -d "$current_theme_gtk4_dir" ] &&
+			# Copy/sync current_theme_gtk4_dir to config_dir
+			rsync -av --delete --progress "$current_theme_gtk4_dir" "$config_dir"
+	fi
 }
 
 sync_font() {
-- 
2.39.5