From 748f9c886b20a3254e0ed15cdceec4716f065f32 Mon Sep 17 00:00:00 2001
From: dervart <dervart@gmail.com>
Date: Thu, 12 Jun 2025 14:33:37 +0700
Subject: [PATCH] add checkboxes styles

---
 portprotonqt/main_window.py                   |  3 ++-
 .../themes/standart/images/icons/check.svg    |  1 +
 portprotonqt/themes/standart/styles.py        | 20 +++++++++++++++++++
 3 files changed, 23 insertions(+), 1 deletion(-)
 create mode 100644 portprotonqt/themes/standart/images/icons/check.svg

diff --git a/portprotonqt/main_window.py b/portprotonqt/main_window.py
index b31f398..142f2ed 100644
--- a/portprotonqt/main_window.py
+++ b/portprotonqt/main_window.py
@@ -970,7 +970,7 @@ class MainWindow(QMainWindow):
 
         # 5. Fullscreen setting for application
         self.fullscreenCheckBox = QCheckBox(_("Launch Application in Fullscreen"))
-        #self.fullscreenCheckBox.setStyleSheet(self.theme.SETTINGS_CHECKBOX_STYLE)
+        self.fullscreenCheckBox.setStyleSheet(self.theme.SETTINGS_CHECKBOX_STYLE)
         self.fullscreenCheckBox.setFocusPolicy(Qt.FocusPolicy.StrongFocus)
         self.fullscreenTitle = QLabel(_("Application Fullscreen Mode:"))
         self.fullscreenTitle.setStyleSheet(self.theme.PARAMS_TITLE_STYLE)
@@ -981,6 +981,7 @@ class MainWindow(QMainWindow):
 
         # 6. Automatic fullscreen on gamepad connection
         self.autoFullscreenGamepadCheckBox = QCheckBox(_("Auto Fullscreen on Gamepad connected"))
+        self.autoFullscreenGamepadCheckBox.setStyleSheet(self.theme.SETTINGS_CHECKBOX_STYLE)
         self.autoFullscreenGamepadCheckBox.setFocusPolicy(Qt.FocusPolicy.StrongFocus)
         self.autoFullscreenGamepadTitle = QLabel(_("Auto Fullscreen on Gamepad connected:"))
         self.autoFullscreenGamepadTitle.setStyleSheet(self.theme.PARAMS_TITLE_STYLE)
diff --git a/portprotonqt/themes/standart/images/icons/check.svg b/portprotonqt/themes/standart/images/icons/check.svg
new file mode 100644
index 0000000..cde32bd
--- /dev/null
+++ b/portprotonqt/themes/standart/images/icons/check.svg
@@ -0,0 +1 @@
+<svg width="16" height="16" version="1.1" viewBox="0 0 16 16" xml:space="preserve" xmlns="http://www.w3.org/2000/svg"><path d="m6.5845 11.474-3.2932-3.2932 0.82331-0.82331 2.4699 2.4699 5.3009-5.3009 0.8233 0.82331z" fill="#fff" stroke-width=".014444"/></svg>
diff --git a/portprotonqt/themes/standart/styles.py b/portprotonqt/themes/standart/styles.py
index f353ff8..1b92099 100644
--- a/portprotonqt/themes/standart/styles.py
+++ b/portprotonqt/themes/standart/styles.py
@@ -567,6 +567,26 @@ SETTINGS_COMBO_STYLE = f"""
     }}
 """
 
+SETTINGS_CHECKBOX_STYLE = """
+    QCheckBox {
+        height: 34px;
+    }
+
+    QCheckBox::indicator {
+        width: 24px;
+        height: 24px;
+        border: 1px solid rgba(255, 255, 255, 0.01);
+        border-radius: 10px;
+        background: #282a33;
+    }
+    QCheckBox::indicator:hover {
+        background: #3f424d;
+        border: 1px solid rgba(255, 255, 255, 0.2);
+    }
+    QCheckBox::indicator:checked {
+        image: url(./themes/standart/images/icons/check.svg);
+    }
+"""
 
 # ФУНКЦИЯ ДЛЯ ДИНАМИЧЕСКОГО ГРАДИЕНТА (ДЕТАЛИ ИГР)
 # Функции из этой темы срабатывает всегда вне зависимости от выбранной темы, функции из других тем работают только в этих темах