From de055be89f76412c02574202f72216005439c947 Mon Sep 17 00:00:00 2001
From: dec05eba <dec05eba@protonmail.com>
Date: Sun, 29 Dec 2024 19:58:58 +0100
Subject: Add option to switch back to old ui for flatpak

---
 src/main.cpp | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/src/main.cpp b/src/main.cpp
index ebd56e6..449490a 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -2787,7 +2787,7 @@ static gboolean on_click_switch_to_new_ui(GtkButton*, gpointer) {
         return true;
     }
 
-    bool service_install_successful = system("flatpak-spawn --host -- install -Dm644 /var/lib/flatpak/app/com.dec05eba.gpu_screen_recorder/current/active/files/share/gpu-screen-recorder/gpu-screen-recorder-ui.service \"${XDG_CONFIG_HOME:-$HOME/.config}/systemd/user/gpu-screen-recorder-ui.service\"") == 0;
+    bool service_install_successful = system("flatpak-spawn --host -- pkexec install -Dm644 /var/lib/flatpak/app/com.dec05eba.gpu_screen_recorder/current/active/files/share/gpu-screen-recorder/gpu-screen-recorder-ui.service /usr/lib/systemd/user/gpu-screen-recorder-ui.service") == 0;
     service_install_successful &= (system("flatpak-spawn --host -- systemctl --user daemon-reload") == 0);
     service_install_successful &= (system("flatpak-spawn --host -- systemctl enable --user gpu-screen-recorder-ui") == 0);
     if(!service_install_successful) {
@@ -4479,6 +4479,7 @@ static void startup_new_ui(bool launched_by_daemon) {
 int main(int argc, char **argv) {
     setlocale(LC_ALL, "C");
 
+    const bool use_old_ui_opt = argc == 2 && strcmp(argv[1], "use-old-ui") == 0;
     const bool launched_by_daemon_opt = argc == 2 && strcmp(argv[1], "gsr-ui") == 0;
     argc = 1;
 
@@ -4491,6 +4492,13 @@ int main(int argc, char **argv) {
 
     config_empty = false;
     config = read_config(config_empty);
+
+    if(use_old_ui_opt) {
+        system("flatpak-spawn --host -- systemctl disable --user gpu-screen-recorder-ui");
+        config.main_config.use_new_ui = false;
+        save_configs();
+    }
+
     if(config.main_config.use_new_ui)
         startup_new_ui(launched_by_daemon_opt);
 
-- 
cgit v1.2.3-70-g09d2