diff --git a/bin/periodic/fix-theming b/bin/periodic/fix-theming
index ee8f389..ced9230 100755
--- a/bin/periodic/fix-theming
+++ b/bin/periodic/fix-theming
@@ -71,22 +71,27 @@ set_xfwm_theme() {
 
 # Use the highDPI variant of the XFWM theme
 use_hdpi_theme_variant() {
-	local -r current_xfwm_theme=$(xfconf-query -c xfwm4 -p /general/theme)
+	# shellcheck disable=SC2015
+	[ -n "$1" ] && local -r xfwm_theme="$1" ||
+		local -r xfwm_theme=$(xfconf-query -c xfwm4 -p /general/theme)
 
 	for variant in xhdpi hdpi; do
 		# If this variant of the theme is already enabled then break out of the loop
-		[ "${current_xfwm_theme##*-}" = "$variant" ] && break
+		[ "${xfwm_theme##*-}" = "$variant" ] && break
 
 		# Store the name for this variant of the theme in highDPI_theme variable
-		local -r highDPI_theme=$current_xfwm_theme-$variant
+		local highDPI_theme=$xfwm_theme-$variant
 
 		if theme_exists "$highDPI_theme"; then
 			set_xfwm_theme "$highDPI_theme"
-			[ "$1" != 'disable_notification' ] &&
+			[ -z "$1" ] &&
 				notify-send "XFWM theme changed to $highDPI_theme" "Changed to the highDPI variant of your chosen theme because you've enabled highDPI on your system"
 			break
 		fi
 	done
+	if ! theme_exists "$highDPI_theme"; then
+		[ -n "$1" ] && theme_exists "$1" && set_xfwm_theme "$1"
+	fi
 }
 
 # Use the normal variant of the XFWM theme
@@ -98,7 +103,7 @@ use_normal_theme_variant() {
 		[ "${current_xfwm_theme##*-}" != "$variant" ] && continue
 
 		# Store the name for the normal variant of this theme in normal_theme variable
-		local -r normal_theme=${current_xfwm_theme%-"$variant"}
+		local normal_theme=${current_xfwm_theme%-"$variant"}
 
 		if theme_exists "$normal_theme"; then
 			set_xfwm_theme "$normal_theme"
@@ -156,10 +161,12 @@ sync_theme() {
 
 	# Apply the current theme for XFWM unless it's initial_sync on system reboot
 	if [ "$1" != 'initial_sync' ]; then
-		set_xfwm_theme "$current_theme"
-
 		# Use the highDPI variant of the XFWM theme if the current_window_scaling factor is 2
-		[ "$current_window_scaling" -eq '2' ] && use_hdpi_theme_variant 'disable_notification'
+		if [ "$current_window_scaling" -eq '2' ]; then
+			use_hdpi_theme_variant "$current_theme"
+		else
+			set_xfwm_theme "$current_theme"
+		fi
 	fi
 
 	# Cleanup flatpak_themes_dir and remove ~/.config/gtk-4.0