diff --git a/portprotonqt/dialogs.py b/portprotonqt/dialogs.py index a77fc5b..00ccbf4 100644 --- a/portprotonqt/dialogs.py +++ b/portprotonqt/dialogs.py @@ -98,7 +98,7 @@ class AddGameDialog(QDialog): # Game name self.nameEdit = QLineEdit(self) - self.nameEdit.setStyleSheet(self.theme.SEARCH_EDIT_STYLE + " QLineEdit { color: #ffffff; font-size: 14px; }") + self.nameEdit.setStyleSheet(self.theme.ADDGAME_INPUT_STYLE) if game_name: self.nameEdit.setText(game_name) name_label = QLabel(_("Game Name:")) @@ -107,7 +107,7 @@ class AddGameDialog(QDialog): # Exe path self.exeEdit = QLineEdit(self) - self.exeEdit.setStyleSheet(self.theme.SEARCH_EDIT_STYLE + " QLineEdit { color: #ffffff; font-size: 14px; }") + self.exeEdit.setStyleSheet(self.theme.ADDGAME_INPUT_STYLE) if exe_path: self.exeEdit.setText(exe_path) exeBrowseButton = QPushButton(_("Browse..."), self) @@ -123,7 +123,7 @@ class AddGameDialog(QDialog): # Cover path self.coverEdit = QLineEdit(self) - self.coverEdit.setStyleSheet(self.theme.SEARCH_EDIT_STYLE + " QLineEdit { color: #ffffff; font-size: 14px; }") + self.coverEdit.setStyleSheet(self.theme.ADDGAME_INPUT_STYLE) if cover_path: self.coverEdit.setText(cover_path) coverBrowseButton = QPushButton(_("Browse..."), self) diff --git a/portprotonqt/game_card.py b/portprotonqt/game_card.py index 8ad4a20..ca95cfd 100644 --- a/portprotonqt/game_card.py +++ b/portprotonqt/game_card.py @@ -322,10 +322,16 @@ class GameCard(QFrame): @staticmethod def getAntiCheatIconFilename(status: str) -> str: status = status.lower() - if status in ("supported", "running"): - return "platinum-gold" - elif status in ("denied", "planned", "broken"): - return "broken" + if status in ("supported"): + return "ac_supported" + elif status in ("running"): + return "ac_running" + elif status in ("planned"): + return "ac_planned" + elif status in ("denied"): + return "ac_denied" + elif status in ("broken"): + return "ac_broken" return "" @staticmethod diff --git a/portprotonqt/main_window.py b/portprotonqt/main_window.py index 9168633..f26e064 100644 --- a/portprotonqt/main_window.py +++ b/portprotonqt/main_window.py @@ -1000,6 +1000,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.autoFullscreenGamepadCheckBox.setStyleSheet(self.theme.SETTINGS_CHECKBOX_STYLE) self.autoFullscreenGamepadTitle = QLabel(_("Auto Fullscreen on Gamepad connected:")) diff --git a/portprotonqt/system_overlay.py b/portprotonqt/system_overlay.py index 6359dce..7e5c845 100644 --- a/portprotonqt/system_overlay.py +++ b/portprotonqt/system_overlay.py @@ -1,10 +1,11 @@ import subprocess -from PySide6.QtWidgets import QDialog, QVBoxLayout, QPushButton, QMessageBox -from PySide6.QtWidgets import QApplication +from PySide6.QtWidgets import QDialog, QVBoxLayout, QPushButton, QMessageBox, QApplication, QWidget from PySide6.QtCore import Qt from portprotonqt.logger import get_logger import os from portprotonqt.localization import _ +from portprotonqt.custom_widgets import AutoSizeButton +from portprotonqt.theme_manager import ThemeManager logger = get_logger(__name__) @@ -16,41 +17,61 @@ class SystemOverlay(QDialog): self.setWindowTitle(_("System Overlay")) self.setModal(True) self.setFixedSize(400, 300) + self.theme_manager = ThemeManager() + self.setStyleSheet(self.theme.OVERLAY_WINDOW_STYLE) + + # Убираем рамку окна + self.setWindowFlags(Qt.WindowType.FramelessWindowHint | Qt.WindowType.Dialog) layout = QVBoxLayout(self) layout.setContentsMargins(20, 20, 20, 20) layout.setSpacing(10) # Reboot button - reboot_button = QPushButton(_("Reboot")) + reboot_button = AutoSizeButton( + _("Reboot"), + icon=self.theme_manager.get_icon("reboot") + ) reboot_button.setStyleSheet(self.theme.OVERLAY_BUTTON_STYLE) reboot_button.setFocusPolicy(Qt.FocusPolicy.StrongFocus) reboot_button.clicked.connect(self.reboot) layout.addWidget(reboot_button) # Shutdown button - shutdown_button = QPushButton(_("Shutdown")) + shutdown_button = AutoSizeButton( + _("Shutdown"), + icon=self.theme_manager.get_icon("shutdown") + ) shutdown_button.setStyleSheet(self.theme.OVERLAY_BUTTON_STYLE) shutdown_button.setFocusPolicy(Qt.FocusPolicy.StrongFocus) shutdown_button.clicked.connect(self.shutdown) layout.addWidget(shutdown_button) # Suspend button - suspend_button = QPushButton(_("Suspend")) + suspend_button = AutoSizeButton( + _("Suspend"), + icon=self.theme_manager.get_icon("suspend") + ) suspend_button.setStyleSheet(self.theme.OVERLAY_BUTTON_STYLE) suspend_button.setFocusPolicy(Qt.FocusPolicy.StrongFocus) suspend_button.clicked.connect(self.suspend) layout.addWidget(suspend_button) # Exit application button - exit_button = QPushButton(_("Exit Application")) + exit_button = AutoSizeButton( + _("Exit Application"), + icon=self.theme_manager.get_icon("exit") + ) exit_button.setStyleSheet(self.theme.OVERLAY_BUTTON_STYLE) exit_button.setFocusPolicy(Qt.FocusPolicy.StrongFocus) exit_button.clicked.connect(self.exit_application) layout.addWidget(exit_button) # Return to Desktop button - desktop_button = QPushButton(_("Return to Desktop")) + desktop_button = AutoSizeButton( + _("Return to Desktop"), + icon=self.theme_manager.get_icon("desktop") + ) desktop_button.setStyleSheet(self.theme.OVERLAY_BUTTON_STYLE) desktop_button.setFocusPolicy(Qt.FocusPolicy.StrongFocus) desktop_button.clicked.connect(self.return_to_desktop) @@ -62,14 +83,31 @@ class SystemOverlay(QDialog): layout.addWidget(desktop_button) # Cancel button - cancel_button = QPushButton(_("Cancel")) + cancel_button = AutoSizeButton( + _("Cancel"), + icon=self.theme_manager.get_icon("cancel") + ) cancel_button.setStyleSheet(self.theme.OVERLAY_BUTTON_STYLE) cancel_button.setFocusPolicy(Qt.FocusPolicy.StrongFocus) cancel_button.clicked.connect(self.reject) layout.addWidget(cancel_button) - # Set focus to the first button - reboot_button.setFocus() + def showEvent(self, event): + """Override showEvent to center window and set focus.""" + super().showEvent(event) + + # Center window relative to parent or screen + parent = self.parent() + if isinstance(parent, QWidget) and parent.isVisible(): + self.move(parent.geometry().center() - self.rect().center()) + else: + screen_geometry = QApplication.primaryScreen().availableGeometry() + self.move(screen_geometry.center() - self.rect().center()) + + # Set focus on first button + button = self.findChild(QPushButton) + if button is not None: + button.setFocus() def reboot(self): try: diff --git a/portprotonqt/themes/standart/images/icons/ac_broken.svg b/portprotonqt/themes/standart/images/icons/ac_broken.svg new file mode 100644 index 0000000..3ae1e8a --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/ac_broken.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="m8 1c-3.8581 0-7 3.1419-7 7s3.1419 7 7 7 7-3.1419 7-7-3.1419-7-7-7zm0 1.3988c3.1014 0 5.6012 2.4998 5.6012 5.6012s-2.4998 5.6012-5.6012 5.6012-5.6012-2.4998-5.6012-5.6012 2.4998-5.6012 5.6012-5.6012zm-2.1002 3.501a0.70007 0.70007 0 0 0-0.69938 0.69938 0.70007 0.70007 0 0 0 0.69938 0.70144h0.0062a0.70007 0.70007 0 0 0 0.70144-0.70144 0.70007 0.70007 0 0 0-0.70144-0.69938zm4.2004 0a0.70007 0.70007 0 0 0-0.69938 0.69938 0.70007 0.70007 0 0 0 0.69938 0.70144h0.0062a0.70007 0.70007 0 0 0 0.70144-0.70144 0.70007 0.70007 0 0 0-0.70144-0.69938zm-2.1002 2.9452c-0.81784 0-1.6354 0.31214-2.2499 0.93935a0.70007 0.70007 0 0 0 0.01026 0.99062 0.70007 0.70007 0 0 0 0.98857-0.01026c0.69244-0.70672 1.8098-0.70672 2.5022 0a0.70007 0.70007 0 0 0 0.98857 0.01026 0.70007 0.70007 0 0 0 0.01026-0.99062c-0.61461-0.62721-1.4321-0.93935-2.2499-0.93935z" stop-color="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.0501"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/ac_denied.svg b/portprotonqt/themes/standart/images/icons/ac_denied.svg new file mode 100644 index 0000000..f4550bc --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/ac_denied.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="m8.4694 1c-0.38007 0-0.76931 0.12326-1.0795 0.39899-0.24769 0.22016-0.42499 0.54342-0.48662 0.90798-0.11341-0.02303-0.22892-0.03356-0.34306-0.03356-0.38003 0-0.76934 0.12329-1.0795 0.39899s-0.51086 0.71412-0.51086 1.1914v3.2534c-0.58842-0.47053-1.4218-0.53407-2.0788-0.13983-0.73301 0.43947-0.98585 1.3992-0.56679 2.1441 1.1968 2.1273 1.8635 3.2982 2.1124 3.6804h-0.0019c0.04201 0.06466 0.08444 0.12946 0.12678 0.1939 0.78928 1.1985 2.1179 1.8996 3.5443 1.9595a0.63645 0.63645 0 0 0 0.04475 0.044746h1.2734c2.4527 0 4.4541-2.0014 4.4541-4.4541v-5.4087c0-0.47729-0.20066-0.9175-0.51085-1.1932-0.31015-0.27573-0.69944-0.39899-1.0795-0.39899-0.11425 0-0.22955 0.010492-0.34306 0.03356-0.0619-0.36382-0.23934-0.68631-0.48662-0.90611-0.3102-0.27573-0.69944-0.39899-1.0795-0.39899-0.11414 0-0.22964 0.010534-0.34306 0.03356-0.06162-0.36456-0.23893-0.68781-0.48662-0.90798-0.3102-0.27573-0.69944-0.39899-1.0795-0.39899zm0 1.2734c0.09723 0 0.18528 0.033977 0.23305 0.076442 0.04778 0.042465 0.08576 0.081413 0.08576 0.24051v5.4106a0.63639 0.63639 0 0 0 0.63577 0.63577 0.63639 0.63639 0 0 0 0.63577-0.63577v-4.1353a0.63639 0.63639 0 0 0 0-0.00186c0-0.1591 0.038-0.19805 0.08576-0.24051 0.04778-0.042465 0.13583-0.078306 0.23305-0.078306 0.09723 0 0.18528 0.035841 0.23305 0.078306 0.04778 0.042465 0.08576 0.081413 0.08576 0.24051v4.1372a0.63639 0.63639 0 0 0 0.63577 0.63577 0.63639 0.63639 0 0 0 0.63577-0.63577v-2.8619a0.63639 0.63639 0 0 0 0-0.00186c0-0.1591 0.03799-0.19805 0.08576-0.24051 0.04777-0.042465 0.13583-0.078306 0.23305-0.078306 0.09723 0 0.18528 0.035841 0.23305 0.078306s0.08576 0.081413 0.08576 0.24051v5.4087c0 1.7649-1.4177 3.1826-3.1826 3.1826h-1.141c-1.0712 1.81e-4 -2.0676-0.53724-2.6568-1.4319-0.04114-0.06262-0.08223-0.12548-0.12305-0.18831-0.14817-0.22748-0.8766-1.4876-2.0714-3.6114-0.08788-0.1562-0.03999-0.33666 0.11373-0.42882a0.63645 0.63645 0 0 0 0.0019 0c0.2198-0.13189 0.4917-0.097253 0.67306 0.083899l0.92662 0.92476 0.0093 0.00932a0.63639 0.63639 0 0 0 0.01492 0.011187 0.63623 0.63623 0 0 0 0.04847 0.042882 0.63623 0.63623 0 0 0 0.06898 0.046611 0.63623 0.63623 0 0 0 0.07458 0.037289 0.63623 0.63623 0 0 0 0.07831 0.026102 0.63623 0.63623 0 0 0 0.07831 0.01678 0.63639 0.63639 0 0 0 0.0037 0 0.63623 0.63623 0 0 0 0.08203 0.00559 0.63623 0.63623 0 0 0 0.08203-0.00559 0.63639 0.63639 0 0 0 0.36729-0.18085 0.63623 0.63623 0 0 0 0.05407-0.063391 0.63639 0.63639 0 0 0 0.04661-0.068984 0.63623 0.63623 0 0 0 0.08576-0.31695v-4.7729c0-0.15914 0.03796-0.19802 0.08576-0.24051 0.04781-0.042493 0.13579-0.078306 0.23305-0.078306s0.18525 0.035813 0.23305 0.078306c0.04781 0.042493 0.08576 0.081374 0.08576 0.24051v4.1372a0.63623 0.63623 0 0 0 0.63577 0.63577 0.63623 0.63623 0 0 0 0.63577-0.63577v-4.1353a0.63639 0.63639 0 0 0 0-0.00186v-1.2734c0-0.1591 0.038-0.19805 0.08576-0.24051 0.04778-0.042465 0.13583-0.076442 0.23305-0.076442z" stop-color="#000000" stroke-width="0"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/ac_planned.svg b/portprotonqt/themes/standart/images/icons/ac_planned.svg new file mode 100644 index 0000000..8edaa81 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/ac_planned.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="m4.499 1c-0.76498 0-1.3988 0.63379-1.3988 1.3988v1.4008c0 1.5752 0.61452 2.8449 1.5464 3.6733 0.22594 0.20084 0.46887 0.37639 0.724 0.5271-0.25512 0.15071-0.49805 0.32626-0.724 0.5271-0.93192 0.82837-1.5464 2.0982-1.5464 3.6733v1.4008c0 0.76498 0.63379 1.3988 1.3988 1.3988h7.002c0.76498 0 1.3988-0.63379 1.3988-1.3988v-1.4008c0-1.5752-0.61452-2.8449-1.5464-3.6733-0.22594-0.20084-0.46887-0.37639-0.724-0.5271 0.25513-0.15071 0.49805-0.32626 0.724-0.5271 0.93192-0.82837 1.5464-2.0982 1.5464-3.6733v-1.4008c0-0.76498-0.63379-1.3988-1.3988-1.3988zm0 1.3988h7.002v1.4008h-7.002zm0.23381 2.8016h6.5344c-0.18996 0.50569-0.4851 0.90658-0.845 1.2265-0.64324 0.57176-1.5277 0.87372-2.4222 0.87372s-1.779-0.30195-2.4222-0.87372c-0.3599-0.31991-0.65504-0.7208-0.845-1.2265zm3.2672 3.499c0.89453 0 1.779 0.30195 2.4222 0.87372 0.3599 0.31991 0.65504 0.7208 0.845 1.2265h-6.5344c0.18996-0.50569 0.4851-0.90658 0.845-1.2265 0.64324-0.57176 1.5277-0.87372 2.4222-0.87372zm-3.501 3.501h7.002v1.4008h-7.002z" stop-color="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.0501"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/ac_running.svg b/portprotonqt/themes/standart/images/icons/ac_running.svg new file mode 100644 index 0000000..5fad41a --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/ac_running.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="m9.3899 1a1.4351 1.4351 0 0 0-1.4349 1.4349 1.4351 1.4351 0 0 0 1.4349 1.4349 1.4351 1.4351 0 0 0 1.4349-1.4349 1.4351 1.4351 0 0 0-1.4349-1.4349zm-0.73373 3.5667a0.69575 0.69575 0 0 0-0.01427 0.00204 0.69568 0.69568 0 0 0-0.0591 0.00611 0.69575 0.69575 0 0 0-0.02446 0.00408 0.69568 0.69568 0 0 0-0.02038 0.00408l-3.4567 0.69093a0.69575 0.69575 0 0 0-0.56049 0.68278v2.0871a0.69568 0.69568 0 0 0 0.69704 0.69501 0.69568 0.69568 0 0 0 0.69501-0.69501v-1.5164l1.9322-0.38725-0.53196 3.1815a0.69575 0.69575 0 0 0 0.26904 0.67055l2.5049 1.8771v2.4356a0.69568 0.69568 0 0 0 0.69501 0.69501 0.69568 0.69568 0 0 0 0.69704-0.69501v-2.7821a0.69575 0.69575 0 0 0-0.27922-0.55641l-2.4437-1.8343 0.40355-2.4234 1.1312 1.1312a0.69575 0.69575 0 0 0 0.27107 0.16713l2.0871 0.69704a0.69568 0.69568 0 0 0 0.88048-0.44024 0.69568 0.69568 0 0 0-0.44024-0.88048l-1.9301-0.64405-1.9709-1.9709a0.69575 0.69575 0 0 0-0.05095-0.044839 0.69568 0.69568 0 0 0-0.0061-0.00408 0.69575 0.69575 0 0 0-0.04076-0.030572 0.69568 0.69568 0 0 0-0.05911-0.036687 0.69575 0.69575 0 0 0-0.04892-0.024458 0.69568 0.69568 0 0 0-0.0061-0.00204 0.69575 0.69575 0 0 0-0.06318-0.024458 0.69568 0.69568 0 0 0-0.10394-0.026496 0.69568 0.69568 0 0 0-0.0163-0.00204 0.69575 0.69575 0 0 0-0.13656-0.00611zm-1.5673 5.9127a0.69568 0.69568 0 0 0-0.58087 0.38317l-0.2833 0.56864-2.9573-0.59106a0.69568 0.69568 0 0 0-0.81933 0.54622 0.69568 0.69568 0 0 0 0.54622 0.8173l3.4771 0.69704a0.69575 0.69575 0 0 0 0.76023-0.37094l0.52176-1.0435a0.69568 0.69568 0 0 0-0.31184-0.93347 0.69568 0.69568 0 0 0-0.3526-0.07337z" stop-color="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.0435"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/ac_supported.svg b/portprotonqt/themes/standart/images/icons/ac_supported.svg new file mode 100644 index 0000000..f76efd0 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/ac_supported.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="m11.896 0.99999a0.77558 0.77558 0 0 0-0.04089 0.0023c-2.9888 0.16296-5.5645 2.0598-6.7001 4.803-1.6574 0.22304-3.1671 1.0967-4.0123 2.5628a0.7755 0.7755 0 0 0-0.03181 0.2431 0.7755 0.7755 0 0 0-0.06589 0.052255 0.7755 0.7755 0 0 0 0.04998 0.063615 0.7755 0.7755 0 0 0 0.33171 0.69977 0.7755 0.7755 0 0 0 0.18176-0.047712 0.7755 0.7755 0 0 0 0.11587 0.14768c0.30901 0.036723 0.60932 0.09847 0.8997 0.18403-1.1944 1.1741-1.8021 2.8615-1.579 4.5735a0.77558 0.77558 0 0 0 0.67023 0.67023c1.712 0.22304 3.3994-0.38463 4.5735-1.579 0.08557 0.29041 0.1473 0.59066 0.18403 0.8997a0.77558 0.77558 0 0 0 1.1587 0.58163c1.4661-0.84521 2.3398-2.3549 2.5628-4.0123 2.7432-1.1355 4.64-3.7113 4.803-6.7001a0.77558 0.77558 0 0 0 0.0023-0.0409c0-1.704-1.3995-3.1035-3.1035-3.1035zm0.02045 1.5608c0.84612 0.01261 1.5096 0.67611 1.5222 1.5222-0.14636 2.4969-1.7648 4.6608-4.1259 5.4914a0.77558 0.77558 0 0 0-0.51801 0.70658c-0.03211 0.97216-0.51756 1.7993-1.1746 2.481-0.10516-0.31723-0.23158-0.62236-0.37715-0.91561a0.7755 0.7755 0 0 0-0.36352-0.64751c-0.53452-0.83732-1.2415-1.5443-2.0789-2.0789a0.7755 0.7755 0 0 0-0.64751-0.36352c-0.29324-0.14557-0.59838-0.27199-0.91561-0.37715 0.68166-0.65705 1.5088-1.1425 2.481-1.1746a0.77558 0.77558 0 0 0 0.70658-0.51801c0.83059-2.3611 2.9944-3.9795 5.4914-4.1259zm-1.5699 1.5427c-0.36621 0-0.74435 0.11713-1.0497 0.38851-0.3053 0.27138-0.50211 0.7086-0.50211 1.161s0.19681 0.89187 0.50211 1.1633c0.3053 0.27138 0.68345 0.38851 1.0497 0.38851 0.36621 0 0.74208-0.11713 1.0474-0.38851 0.3053-0.27138 0.50211-0.71088 0.50211-1.1633s-0.19681-0.8896-0.50211-1.161c-0.3053-0.27138-0.68117-0.38851-1.0474-0.38851zm-6.1843 6.3388c0.54645 0.37575 1.0192 0.84854 1.395 1.395-0.66921 0.88979-1.7235 1.346-2.8377 1.4427 0.09666-1.1142 0.55292-2.1685 1.4427-2.8377z" stop-color="#000000" stroke-width="0"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/cancel.svg b/portprotonqt/themes/standart/images/icons/cancel.svg new file mode 100644 index 0000000..cb6e680 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/cancel.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="m8 15q-1.4525 0-2.73-0.55125t-2.2225-1.4962-1.4962-2.2225-0.55125-2.73 0.55125-2.73 1.4962-2.2225 2.2225-1.4962 2.73-0.55125 2.73 0.55125 2.2225 1.4962 1.4962 2.2225 0.55125 2.73-0.55125 2.73-1.4962 2.2225-2.2225 1.4962-2.73 0.55125zm0-1.4q0.945 0 1.82-0.30625t1.61-0.88375l-7.84-7.84q-0.5775 0.735-0.88375 1.61t-0.30625 1.82q0 2.345 1.6275 3.9725t3.9725 1.6275zm4.41-2.17q0.5775-0.735 0.88375-1.61t0.30625-1.82q0-2.345-1.6275-3.9725t-3.9725-1.6275q-0.945 0-1.82 0.30625t-1.61 0.88375z" fill="#fff" stroke-width=".0175"/></svg> 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/images/icons/desktop.svg b/portprotonqt/themes/standart/images/icons/desktop.svg new file mode 100644 index 0000000..8323ac3 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/desktop.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="m1 15v-1.5556h14v1.5556zm1.9091-2.3333q-0.525 0-0.89886-0.45694-0.37386-0.45694-0.37386-1.0986v-8.5556q0-0.64167 0.37386-1.0986 0.37386-0.45694 0.89886-0.45694h10.182q0.525 0 0.89886 0.45694 0.37386 0.45694 0.37386 1.0986v8.5556q0 0.64167-0.37386 1.0986-0.37386 0.45694-0.89886 0.45694zm0-1.5556h10.182v-8.5556h-10.182zm0 0v-8.5556z" fill="#fff" stroke-width=".017588"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/epic_games.svg b/portprotonqt/themes/standart/images/icons/epic_games.svg new file mode 100644 index 0000000..db4fe7f --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/epic_games.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="m3.0633 1c-0.80027 0-1.0954 0.29529-1.0954 1.0959v9.661c0 0.0906 0.0035 0.1749 0.01149 0.25287 0.01822 0.17476 0.02187 0.34391 0.1844 0.53672 0.01589 0.01889 0.18141 0.14243 0.18141 0.14243 0.08926 0.04377 0.1502 0.07592 0.25087 0.11644l4.862 2.037c0.25239 0.11571 0.35791 0.16105 0.54122 0.15742h0.001499c0.18332 0.0036 0.28881-0.04171 0.54122-0.15742l4.862-2.037c0.10069-0.04052 0.16159-0.07267 0.25087-0.11644 0 0 0.16555-0.12354 0.18141-0.14243 0.16254-0.19281 0.16618-0.36196 0.1844-0.53672 8e-3 -0.07797 0.01149-0.16227 0.01149-0.25287v-9.661c0-0.80064-0.29519-1.0959-1.0954-1.0959zm7.7925 1.8141h0.3968c0.66379 0 0.98449 0.32242 0.98449 0.98949v1.0964h-0.80109v-1.0505c0-0.21471-0.09928-0.31434-0.30534-0.31434h-0.13743c-0.21364 0-0.31284 0.09963-0.31284 0.31434v3.3893c0 0.21473 0.0992 0.31434 0.31284 0.31434h0.15292c0.20594 0 0.30484-0.0996 0.30484-0.31434v-1.2114h0.80159v1.2499c0 0.66722-0.32803 0.99699-0.99199 0.99699h-0.40479c-0.66381 0-0.99199-0.32977-0.99199-0.99699v-3.4662c0-0.66719 0.32818-0.99699 0.99199-0.99699zm-7.1083 0.04648h1.8166v0.74362h-0.99998v1.5182h0.9615v0.74362h-0.9615v1.6182h1.015v0.74412h-1.8316zm2.2259 0h1.2818c0.66394 0 0.99199 0.3293 0.99199 0.99649v1.4268c0 0.66707-0.32805 0.99649-0.99199 0.99649h-0.46526v1.948h-0.81658zm2.6421 0h0.81708v5.3677h-0.81708zm-1.8256 0.72063v1.9785h0.33583c0.20606 0 0.30484-0.09961 0.30484-0.31434v-1.3498c0-0.21468-0.09878-0.31434-0.30484-0.31434zm-2.2488 5.924h0.09546l0.02449 2e-3 0.02449 0.0025h0.02199l0.02199 2e-3 0.02449 0.0045 0.01999 0.0025 0.02199 0.0045 0.02249 0.0045 0.01999 4e-3 0.03998 9e-3 0.01999 7e-3 0.01999 0.0045 0.01749 0.0065 0.01999 0.0065 0.05997 0.027 0.01999 0.010994 0.01999 9e-3 0.01799 0.010994 0.01949 0.011494 0.01799 0.010994 0.01999 0.010994 0.01749 0.013493 0.01799 0.010994 0.01749 0.013493 0.01799 0.013493 0.01749 0.015492 0.01799 0.013493-0.01349 0.017491-0.01549 0.015992-0.01349 0.017491-0.01549 0.017991-0.01299 0.017991-0.01349 0.015492-0.01549 0.017491-0.01299 0.017991-0.01349 0.015492-0.01549 0.017991-0.01349 0.017991-0.01549 0.017491-0.01349 0.015992-0.01299 0.017491-0.01549 0.017991-0.01349 0.017991-0.01549 0.01549-0.01349 0.01749-0.01749-0.01299-0.01799-0.01549-0.01749-0.01149-0.01799-0.013493-0.01749-0.010995-0.01799-0.010994-0.01749-0.010994-0.01999-0.011494-0.01799-9e-3 -0.01749-0.0085-0.01799-7e-3 -0.01999-0.0065-0.01999-7e-3 -0.01999-4e-3 -0.04398-9e-3 -0.02249-0.0025-0.02449-2e-3 -0.02449-0.0025h-0.04648l-0.02199 0.0025-0.01999 2e-3 -0.02199 0.0045-0.01999 0.0045-0.01999 7e-3 -0.01999 0.0065-0.03998 0.018-0.01799 0.010994-0.01749 0.010994-0.01799 0.010994-0.04647 0.040479-0.01349 0.01549-0.01549 0.01549-0.01299 0.01799-0.01099 0.01549-0.01149 0.01799-0.01099 0.01999-0.011 0.01799-9e-3 0.01999-0.0065 0.01999-9e-3 0.01999-0.0065 0.02199-0.0045 0.02249-0.0045 0.01999-0.0045 0.02449-2e-3 0.02249-0.0025 0.02199v0.05148l0.0025 0.02199 2e-3 0.01999 2e-3 0.02249 0.0135 0.05997 7e-3 0.02049 0.0065 0.01749 9e-3 0.02249 0.0085 0.01999 0.011 0.01999 0.01149 0.01799 0.01099 0.01749 0.01349 0.01799 0.01299 0.01549 0.01549 0.01599 0.01349 0.01549 0.01549 0.01349 0.01799 0.01299 0.01749 0.01349 0.01749 0.01099 0.01799 0.01149 0.01999 0.0085 0.03998 0.018 0.02199 7e-3 0.02249 0.0065 0.02199 0.0045 0.02249 0.0045 0.02199 2e-3 0.02449 0.0025h0.05098l0.02449-0.0025 0.02449-2e-3 0.02199-0.0025 0.02199-0.0045 0.02249-0.0045 0.02199-0.0065 0.01999-0.0045 0.01999-9e-3 0.01799-0.0085 0.01949-9e-3 0.01599-9e-3 0.01749-0.01099v-0.20291h-0.32385v-0.32535h0.73217v0.72417l-0.01549 0.01349-0.01799 0.01299-0.01549 0.01149-0.01749 0.01299-0.01799 0.01149-0.01749 0.01349-0.01799 0.01099-0.01749 0.01099-0.01999 0.01099-0.01999 0.01149-0.01999 0.01099-0.01999 9e-3 -0.01999 0.01099-0.02249 9e-3 -0.01949 9e-3 -0.02249 0.0085-0.01999 9e-3 -0.01999 7e-3 -0.03998 0.013-0.02199 7e-3 -0.01999 0.0065-0.02249 0.0045-0.01949 0.0045-0.02249 0.0045-0.02199 0.0045-0.02249 2e-3 -0.02399 0.0025-0.02249 2e-3 -0.02449 0.0025-0.02199 2e-3 -0.02449 2e-3h-0.09546l-0.02199-2e-3 -0.02449-2e-3 -0.02199-0.0025-0.02249-2e-3 -0.02199-0.0025-0.02249-0.0045-0.02199-0.0045-0.01999-0.0045-0.02199-4e-3 -0.01999-7e-3 -0.02249-0.0045-0.01999-0.0065-0.01999-9e-3 -0.01999-0.0065-0.02199-9e-3 -0.05997-0.027-0.01999-0.01099-0.01749-0.01099-0.01999-0.01099-0.01799-0.01149-0.01749-0.01099-0.01799-0.01349-0.01749-0.01299-0.01799-0.01349-0.03098-0.02698-0.01549-0.01549-0.01549-0.01349-0.03098-0.03098-0.01349-0.01549-0.01299-0.01799-0.01349-0.01549-0.01099-0.01799-0.01349-0.01799-0.011-0.01749-0.01099-0.01799-0.01149-0.01999-0.01099-0.01799-0.0085-0.01999-0.027-0.05997-0.0065-0.01799-9e-3 -0.01999-0.0045-0.01999-0.0065-0.01999-0.0045-0.02249-0.0065-0.01999-0.0045-0.02249-0.0025-0.01999-0.0045-0.02199-2e-3 -0.01999-2e-3 -0.02249-0.0025-0.02249-2e-3 -0.02199v-0.07347l2e-3 -0.02449v-0.02249l0.0025-0.02249 2e-3 -0.02449 0.0045-0.02199 2e-3 -0.02249 0.0045-0.01999 7e-3 -0.02199 0.0045-0.02249 0.0065-0.01999 0.0065-0.02249 0.0065-0.01999 9e-3 -0.02199 9e-3 -0.01999 9e-3 -0.020489 9e-3 -0.01999 0.0085-0.01999 0.01099-0.01999 0.01149-0.017991 0.01099-0.017491 0.011-0.017991 0.01099-0.017991 0.01349-0.017491 0.01349-0.017991 0.01299-0.017991 0.01349-0.015492 0.01549-0.015492 0.01349-0.015492 0.01549-0.015992 0.01549-0.015492 0.01549-0.013493 0.01749-0.015492 0.01549-0.013493 0.01799-0.012994 0.01749-0.011494 0.01799-0.012993 0.01799-0.011494 0.01749-0.010994 0.01999-0.010994 0.01999-0.011494 0.01999-0.010994 0.01999-9e-3 0.01999-0.0085 0.02199-0.011494 0.01749-0.0065 0.02249-7e-3 0.01999-0.0085 0.01999-0.0045 0.01999-7e-3 0.02199-0.0045 0.01999-0.0065 0.02199-0.0045 0.02249-2e-3 0.02199-0.0045 0.02249-0.0025 0.02199-2e-3 0.02199-0.0025zm6.9934 0.0045h0.09546l0.02449 2e-3 0.02399 0.0025h0.02249l0.02449 2e-3 0.02199 0.0045 0.02449 0.0025 0.02199 0.0045 0.04248 0.0085 0.02199 0.0045 0.01999 0.0045 0.02199 7e-3 0.01999 0.0065 0.01999 0.0045 0.02249 9e-3 0.01999 0.0065 0.01999 9e-3 0.01949 9e-3 0.02249 9e-3 0.01999 0.010994 0.01749 9e-3 0.01999 0.010995 0.01999 0.010994 0.01799 0.011494 0.01999 0.012993 0.01749 0.011494 0.01799 0.012993 0.01749 0.013493 0.01799 0.013493-0.01349 0.017991-0.01099 0.017491-0.01299 0.017991-0.01349 0.017991-0.01349 0.019989-0.011 0.017491-0.01349 0.017991-0.01299 0.017991-0.01149 0.017491-0.01299 0.017991-0.01349 0.017991-0.01099 0.017491-0.01349 0.020489-0.01299 0.017491-0.01349 0.017991-0.01099 0.017991-0.01349 0.01749-0.01749-0.01299-0.01999-0.01149-0.01799-0.010994-0.01749-0.013493-0.01999-9e-3 -0.01799-0.010994-0.01999-9e-3 -0.01749-9e-3 -0.01999-0.0085-0.01799-9e-3 -0.01949-7e-3 -0.01799-9e-3 -0.02449-0.0065-0.02199-0.0065-0.02249-7e-3 -0.02199-0.0045-0.02249-4e-3 -0.02199-0.0045-0.02199-0.0025-0.02249-2e-3 -0.01999-0.0025h-0.04848l-0.02449 0.0045-0.02249 0.0045-0.01949 0.0045-0.01799 9e-3 -0.01549 9e-3 -0.01999 0.017491-0.01349 0.02049-0.0085 0.01999-0.0025 0.021988v0.0045l0.0025 0.028985 0.01099 0.02449 9e-3 0.01349 0.01499 0.01549 0.02049 0.01099 0.01749 0.01149 0.02199 9e-3 0.02449 0.0085 0.02699 9e-3 0.01749 0.0045 0.01749 7e-3 0.02049 4e-3 0.01949 7e-3 0.02249 0.0045 0.04898 0.013 0.02399 7e-3 0.02449 0.0045 0.02249 0.0065 0.02399 7e-3 0.02249 4e-3 0.02199 7e-3 0.02249 0.0065 0.01949 7e-3 0.02249 0.0065 0.01999 0.0065 0.01999 7e-3 0.02449 0.0085 0.02199 0.01149 0.02199 0.0085 0.02249 0.01149 0.03998 0.02198 0.01749 0.01149 0.01799 0.01299 0.01749 0.01149 0.01799 0.01549 0.01749 0.01549 0.01549 0.01799 0.01599 0.01549 0.01299 0.01799 0.01349 0.01999 0.011 0.01749 0.01099 0.02049 9e-3 0.01749 0.0065 0.01999 7e-3 0.02049 4e-3 0.01999 0.0045 0.02199 0.0045 0.02249 0.0025 0.02199 2e-3 0.02449v0.05398l-2e-3 0.02449-0.0025 0.02199-2e-3 0.02449-0.0045 0.02249-0.0065 0.02199-0.0045 0.01999-7e-3 0.02249-0.0085 0.01999-9e-3 0.01799-9e-3 0.01999-0.01099 0.01799-0.011 0.01749-0.01349 0.01799-0.01099 0.01799-0.01349 0.01549-0.01549 0.01549-0.01299 0.01349-0.01799 0.01549-0.01549 0.01349-0.01799 0.01349-0.01749 0.01099-0.01749 0.01299-0.02049 0.01149-0.01999 9e-3 -0.01949 0.01099-0.02249 9e-3 -0.02199 9e-3 -0.02249 0.0065-0.02199 0.0065-0.01999 7e-3 -0.02199 0.0045-0.01999 4e-3 -0.01999 0.0045-0.02249 0.0045-0.02199 0.0025-0.01999 2e-3 -0.02249 0.0025-0.02399 2e-3 -0.02249 0.0025h-0.09296l-0.02199-0.0025h-0.02449l-0.02249-2e-3 -0.02199-0.0025-0.02449-2e-3 -0.02199-0.0045-0.02249-0.0025-0.02199-0.0045-0.02249-4e-3 -0.04398-9e-3 -0.02249-7e-3 -0.01999-0.0045-0.04398-0.013-0.01999-9e-3 -0.02249-7e-3 -0.01999-0.0065-0.02199-9e-3 -0.01999-9e-3 -0.01999-0.0085-0.01999-0.01099-0.01999-9e-3 -0.01999-0.01149-0.01749-0.01099-0.01999-0.01099-0.01799-0.01099-0.01749-0.01149-0.01799-0.01349-0.01749-0.01299-0.01799-0.01349-0.01749-0.01349-0.01599-0.01349-0.01749-0.01549 0.01349-0.01749 0.01549-0.01599 0.01299-0.01749 0.01549-0.01799 0.01349-0.01549 0.01349-0.01799 0.01549-0.01799 0.01299-0.01549 0.01599-0.01749 0.01299-0.01599 0.01549-0.01749 0.01349-0.01799 0.01349-0.01549 0.01499-0.01799 0.01349-0.01799 0.01549-0.01549 0.01349-0.01749 0.01749 0.01299 0.01999 0.01349 0.01799 0.01349 0.01999 0.01349 0.01749 0.01099 0.01999 0.01349 0.01799 0.01099 0.01999 9e-3 0.01749 0.01099 0.05997 0.027 0.01999 0.0065 0.01999 9e-3 0.02199 0.0065 0.02249 7e-3 0.01999 0.0065 0.02199 0.0045 0.02249 0.0045 0.02199 0.0045 0.02449 2e-3 0.02199 0.0045h0.02249l0.02399 2e-3h0.04898l0.02449-2e-3 0.02199-0.0045 0.03998-9e-3 0.01799-0.0065 0.01549-9e-3 0.01749-0.01349 0.01349-0.01549 9e-3 -0.01799 0.0065-0.01999 2e-3 -0.02199v-0.0045l-2e-3 -0.02699-9e-3 -0.02199-0.011-0.01599-0.01549-0.01299-0.01799-0.01349-0.01749-9e-3 -0.01999-9e-3 -0.02249-9e-3 -0.02649-0.01099-0.01549-0.0045-0.01749-0.0045-0.01999-0.0065-0.01999-0.0045-0.02249-0.0065-0.02199-0.0045-0.02449-7e-3 -0.02199-0.0045-0.02449-0.0065-0.02199-0.0045-0.02249-0.0065-0.02199-0.0045-0.02249-7e-3 -0.01999-0.0065-0.02199-0.0045-0.01999-0.0065-0.01999-7e-3 -0.01999-0.0065-0.02449-9e-3 -0.02199-9e-3 -0.02199-0.0085-0.02249-9e-3 -0.01999-0.01149-0.02199-0.01099-0.01799-0.01099-0.01999-0.01099-0.01749-0.01349-0.01799-0.01149-0.01549-0.01299-0.01549-0.01599-0.01549-0.01549-0.01349-0.01549-0.01299-0.01549-0.011-0.01549-0.01099-0.01799-0.01149-0.01999-9e-3 -0.01549-0.0065-0.01799-0.0065-0.01999-0.0065-0.01799-0.0045-0.02199-0.0045-0.01999-0.0025-0.02249-2e-3 -0.02249-0.0025-0.02449v-0.050979l0.0025-0.022489 2e-3 -0.01999 0.0025-0.021989 0.0045-0.020489 0.0045-0.01999 0.0065-0.019989 0.0045-0.01999 0.0085-0.019989 9e-3 -0.01999 9e-3 -0.019989 0.011-0.02049 0.01099-0.01999 0.01349-0.017491 0.01349-0.017991 0.01549-0.017991 0.01549-0.015492 0.01549-0.017991 0.01749-0.015492 0.01549-0.010994 0.03598-0.026986 0.01749-0.010994 0.01999-0.010994 0.01999-9e-3 0.01999-0.010994 0.01999-9e-3 0.02199-7e-3 0.02249-0.0085 0.01999-7e-3 0.01749-0.0045 0.01999-0.0045 0.01999-4e-3 0.02199-0.0045 0.01999-0.0045 0.02249-0.0025 0.02199-2e-3 0.02249-0.0025zm-5.3892 0.015492h0.41031l0.018 0.03998 0.0085 0.01999 9e-3 0.022488 0.0065 0.01999 0.018 0.03998 9e-3 0.020489 9e-3 0.01999 0.0085 0.021989 9e-3 0.01999 9e-3 0.020489 0.0065 0.01999 0.018 0.03998 0.0085 0.021989 9e-3 0.020489 0.018 0.03998 0.0085 0.01999 7e-3 0.01999 0.0085 0.022488 0.036 0.07996 0.0085 0.01999 9e-3 0.02249 0.0065 0.01999 0.018 0.03998 9e-3 0.02049 0.0085 0.01999 9e-3 0.02199 0.018 0.03998 0.0065 0.01999 9e-3 0.02049 0.0085 0.01999 9e-3 0.01999 9e-3 0.02199 9e-3 0.02049 9e-3 0.01999 0.0085 0.01999 0.0065 0.01999 9e-3 0.01999 9e-3 0.02249 0.018 0.03998 0.0085 0.01999 0.018 0.03998 0.0065 0.02249 0.018 0.03998 0.0085 0.01999 9e-3 0.01999 9e-3 0.02049 9e-3 0.02199 9e-3 0.01999 0.0065 0.01999 0.0085 0.02049 0.018 0.03998 9e-3 0.02199 9e-3 0.02049 0.0085 0.01999 9e-3 0.01999 0.0065 0.01999 9e-3 0.01999 9e-3 0.02249 9e-3 0.01999 0.0085 0.01999 0.027 0.05997 0.0065 0.02249 9e-3 0.01999 0.0085 0.01999 9e-3 0.01999h-0.45679l-9e-3 -0.01999-0.0065-0.01999-9e-3 -0.01999-9e-3 -0.02249-0.0065-0.01999-0.018-0.03998-0.0065-0.01999-9e-3 -0.01999-0.0085-0.01999-7e-3 -0.02049-0.0085-0.02199-9e-3 -0.01999-7e-3 -0.01999-9e-3 -0.02049h-0.63671l-0.0085 0.02049-0.0065 0.01999-9e-3 0.01999-9e-3 0.02199-0.0065 0.02049-0.018 0.03998-0.0065 0.01999-0.018 0.03998-0.0065 0.01999-9e-3 0.02249-9e-3 0.01999-0.0065 0.01999-9e-3 0.01999h-0.4478l0.0085-0.01999 0.018-0.03998 9e-3 -0.02249 0.0065-0.01999 0.018-0.03998 0.0085-0.01999 9e-3 -0.01999 9e-3 -0.02249 0.0085-0.01999 9e-3 -0.01999 7e-3 -0.01999 0.0085-0.01999 9e-3 -0.02049 9e-3 -0.02199 9e-3 -0.01999 0.0085-0.01999 9e-3 -0.02049 9e-3 -0.01999 0.0065-0.01999 9e-3 -0.02199 9e-3 -0.02049 9e-3 -0.01999 0.0085-0.01999 0.018-0.03998 0.0085-0.02249 7e-3 -0.01999 9e-3 -0.01999 0.0085-0.01999 0.018-0.03998 9e-3 -0.02249 0.0085-0.01999 9e-3 -0.01999 0.0065-0.01999 9e-3 -0.01999 9e-3 -0.02049 9e-3 -0.02199 9e-3 -0.01999 0.0085-0.01999 9e-3 -0.02049 9e-3 -0.01999 0.0065-0.01999 9e-3 -0.01999 9e-3 -0.02199 0.0085-0.01999 9e-3 -0.02049 0.018-0.03998 0.0085-0.01999 7e-3 -0.02249 0.0085-0.01999 0.036-0.07996 0.0085-0.022488 9e-3 -0.01999 0.0065-0.01999 0.018-0.03998 9e-3 -0.020489 0.0085-0.021989 0.027-0.05997 0.0065-0.020489 9e-3 -0.01999 0.0085-0.021989 9e-3 -0.01999 9e-3 -0.020489 0.018-0.03998 0.0085-0.01999 7e-3 -0.022488 0.0085-0.01999 9e-3 -0.01999zm1.2783 0.010994h0.45479l0.01099 0.017991 0.0115 0.01999 0.01299 0.017991 0.01099 0.01999 0.01149 0.017491 0.01099 0.020489 0.011 0.017491 0.01349 0.01999 0.01099 0.017991 0.01099 0.017491 0.01099 0.019989 0.01099 0.017991 0.01349 0.01999 0.011 0.017991 0.01099 0.01999 0.01149 0.017491 0.01299 0.017991 0.01149 0.01999 0.01099 0.017991 0.01099 0.01999 0.01099 0.017491 0.01349 0.01999 0.01099 0.017991 0.011 0.01999 0.01099 0.017491 0.01099 0.01799 0.01349 0.01999 0.01099 0.01799 0.011 0.01999 0.01149 0.01749 0.01099 0.02049 0.01349 0.01749 0.011 0.01999 0.01099 0.01799 0.01099-0.01799 0.01099-0.01999 0.01349-0.01749 0.01099-0.02049 0.011-0.01749 0.01149-0.01999 0.01299-0.01799 0.01099-0.01999 0.01149-0.01799 0.011-0.017491 0.01299-0.01999 0.01099-0.017991 0.01149-0.01999 0.011-0.017491 0.01299-0.01999 0.01149-0.017991 0.011-0.01999 0.01099-0.017991 0.01099-0.017491 0.01349-0.01999 0.01099-0.017991 0.0115-0.01999 0.01099-0.017991 0.01299-0.019989 0.011-0.017491 0.01149-0.017991 0.01099-0.01999 0.01299-0.017491 0.0115-0.020489 0.01099-0.017491 0.01099-0.01999 0.01349-0.017991 0.011-0.01999 0.01099-0.017991h0.45479v1.6222h-0.42831v-0.95907l-0.01099 0.01749-0.01299 0.02049-0.01149 0.01799-0.01299 0.01749-0.01099 0.01999-0.01349 0.01799-0.01099 0.01799-0.0115 0.01999-0.01299 0.01799-0.01099 0.01749-0.01349 0.01799-0.011 0.02049-0.01349 0.01749-0.01099 0.01799-0.01099 0.01999-0.01349 0.01799-0.011 0.01799-0.01349 0.01999-0.01099 0.01749-0.01349 0.01799-0.011 0.02049-0.01099 0.01749-0.01349 0.01799-0.01099 0.01999-0.01299 0.01799-0.01099 0.01799-0.01349 0.01749-0.01149 0.01999-0.01099 0.01799-0.01299 0.01799-0.01099 0.01999-0.01349 0.01799-0.011 0.01749-0.01349 0.02049-0.01099 0.01799h-9e-3l-0.01299-0.02049-0.01149-0.01799-0.01299-0.01999-0.01149-0.01749-0.01299-0.01999-0.011-0.01799-0.01349-0.02049-0.01099-0.01749-0.01349-0.01999-0.011-0.01799-0.01349-0.01999-0.01099-0.01799-0.01299-0.01999-0.01149-0.01799-0.01299-0.01999-0.01149-0.01799-0.01299-0.01999-0.01349-0.01799-0.011-0.01999-0.01349-0.01799-0.01099-0.01999-0.01299-0.01799-0.01149-0.01999-0.01299-0.01799-0.01099-0.01999-0.01349-0.01749-0.01099-0.02049-0.01349-0.01799-0.01099-0.01999-0.01349-0.01749-0.01099-0.02049-0.01349-0.01749-0.011-0.02049-0.01299-0.01749v0.95457h-0.42181v-1.5998zm2.025 0h1.2819v0.36781h-0.85861v0.26537h0.77215v0.34534h-0.77215v0.27638h0.87011v0.36733h-1.2934v-1.5998zm-3.1014 0.50024-9e-3 0.01999-0.0065 0.02049-9e-3 0.02199-9e-3 0.02049-0.0065 0.01999-9e-3 0.01999-9e-3 0.02249-0.0085 0.01999-7e-3 0.01999-0.0085 0.02049-9e-3 0.01999-0.0065 0.02199-9e-3 0.02049-9e-3 0.01999-0.0065 0.01999-9e-3 0.01999-9e-3 0.02249-9e-3 0.01999-0.0065 0.02049-9e-3 0.01999-0.0085 0.02199-7e-3 0.02049-0.0085 0.01999h0.37483l-9e-3 -0.01999-0.0065-0.02049-9e-3 -0.02199-9e-3 -0.01999-0.0065-0.02049-9e-3 -0.01999-9e-3 -0.02249-0.0065-0.01999-9e-3 -0.01999-0.0085-0.01999-7e-3 -0.02049-9e-3 -0.02199-0.0065-0.01999-9e-3 -0.02049-0.0085-0.01999-7e-3 -0.01999-0.0085-0.02249-9e-3 -0.01999-7e-3 -0.01999-0.0085-0.02049-9e-3 -0.02199-0.0065-0.02049zm-0.67315 3.0454h4.6741l-2.3858 0.7866z" fill="#fff" fill-rule="evenodd"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/exit.svg b/portprotonqt/themes/standart/images/icons/exit.svg new file mode 100644 index 0000000..4156042 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/exit.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="m8 1v1.5547h5.4453v10.891h-5.4453v1.5547h5.4453c0.42777-7e-6 0.79303-0.15241 1.0977-0.45703 0.30463-0.30462 0.45703-0.66988 0.45703-1.0977v-10.891c0-0.42777-0.1524-0.79303-0.45703-1.0977-0.30462-0.30463-0.66988-0.45703-1.0977-0.45703h-5.4453zm-3.1113 3.1113-3.8887 3.8887 3.8887 3.8887 1.0703-1.127-1.9844-1.9844h6.3594v-1.5547h-6.3594l1.9844-1.9844-1.0703-1.127z" fill="#fff"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/gog.svg b/portprotonqt/themes/standart/images/icons/gog.svg new file mode 100644 index 0000000..bb05fb7 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/gog.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="m8 1c-3.86 0-7 3.1403-7 7s3.14 7 7 7 7-3.1403 7-7-3.14-7-7-7zm-4.0784 3.3478h1.7655c0.26874 0 0.48684 0.21779 0.48684 0.48684v2.9828c0 0.26904-0.21779 0.48684-0.48684 0.48684h-2.2523v-0.6087h1.9479c0.10074 0 0.18249-0.08175 0.18249-0.18249v-2.3742c0-0.10074-0.08175-0.18249-0.18249-0.18249h-1.1568c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.1568c0 0.10074 0.08175 0.18249 0.18249 0.18249h0.88273v0.6087h-1.1871c-0.26874 0-0.48684-0.2178-0.48684-0.48684v-1.7655c0-0.26904 0.21779-0.48684 0.48684-0.48684zm3.1957 0h1.7655c0.26843 0 0.48684 0.2184 0.48684 0.48684v1.7655c0 0.26844-0.2184 0.48684-0.48684 0.48684h-1.7655c-0.26843 0-0.48684-0.2184-0.48684-0.48684v-1.7655c0-0.26844 0.2184-0.48684 0.48684-0.48684zm3.1957 0h1.7655c0.26874 0 0.48684 0.21779 0.48684 0.48684v2.9828c0 0.26904-0.21779 0.48684-0.48684 0.48684h-2.2523v-0.6087h1.9479c0.10074 0 0.18249-0.08175 0.18249-0.18249v-2.3742c0-0.10074-0.08175-0.18249-0.18249-0.18249h-1.1568c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.1568c0 0.10074 0.08175 0.18249 0.18249 0.18249h0.88273v0.6087h-1.1871c-0.26874 0-0.48684-0.2178-0.48684-0.48684v-1.7655c0-0.26904 0.21779-0.48684 0.48684-0.48684zm-2.8913 0.6087c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.1568c0 0.10074 0.08175 0.18249 0.18249 0.18249h1.1568c0.10074 0 0.18249-0.08175 0.18249-0.18249v-1.1568c0-0.10074-0.08175-0.18249-0.18249-0.18249zm-3.5 3.9565h1.7958v0.6087h-1.4914c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.1568c0 0.10074 0.08175 0.18249 0.18249 0.18249h1.4914v0.6087h-1.7958c-0.26874 0-0.48684-0.21779-0.48684-0.48684v-1.7655c0-0.26874 0.21779-0.48684 0.48684-0.48684zm2.7391 0h1.7655c0.26844 0 0.48684 0.2184 0.48684 0.48684v1.7655c0 0.26844-0.2184 0.48684-0.48684 0.48684h-1.7655c-0.26844 0-0.48684-0.2184-0.48684-0.48684v-1.7655c0-0.26844 0.2184-0.48684 0.48684-0.48684zm3.1957 0h2.7088v2.7391h-0.6087v-2.1304h-0.50229c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.9479h-0.6087v-2.1304h-0.50229c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.9479h-0.6087v-2.2523c0-0.26874 0.21779-0.48684 0.48684-0.48684zm-2.8913 0.6087c-0.10074 0-0.18249 0.08175-0.18249 0.18249v1.1568c0 0.10074 0.08175 0.18249 0.18249 0.18249h1.1568c0.10074 0 0.18249-0.08175 0.18249-0.18249v-1.1568c0-0.10074-0.08175-0.18249-0.18249-0.18249z" fill="#fff" stroke-width=".30435"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/login.svg b/portprotonqt/themes/standart/images/icons/login.svg new file mode 100644 index 0000000..8aafb9e --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/login.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="m8 15v-1.5556h5.4444v-10.889h-5.4444v-1.5556h5.4444q0.64167 0 1.0986 0.45694 0.45694 0.45694 0.45694 1.0986v10.889q0 0.64167-0.45694 1.0986t-1.0986 0.45694zm-1.5556-3.1111-1.0694-1.1278 1.9833-1.9833h-6.3583v-1.5556h6.3583l-1.9833-1.9833 1.0694-1.1278 3.8889 3.8889z" fill="#fff" stroke-width=".019444"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/reboot.svg b/portprotonqt/themes/standart/images/icons/reboot.svg new file mode 100644 index 0000000..9163861 --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/reboot.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="m8 15q-1.4583 0-2.7319-0.55417-1.2735-0.55417-2.2167-1.4972-0.94313-0.94306-1.4972-2.2167t-0.55417-2.7319q-7.699e-5 -1.4583 0.55417-2.7319 0.55424-1.2736 1.4972-2.2167 0.94298-0.94306 2.2167-1.4972 1.2737-0.55417 2.7319-0.55417 1.5944 0 3.0237 0.68056 1.4292 0.68056 2.4208 1.925v-1.8278h1.5556v4.6667h-4.6667v-1.5556h2.1389q-0.79722-1.0889-1.9639-1.7111-1.1667-0.62222-2.5083-0.62222-2.275 0-3.8596 1.5848-1.5846 1.5848-1.5848 3.8596-1.55e-4 2.2748 1.5848 3.8596 1.585 1.5848 3.8596 1.5848 2.0417 0 3.5681-1.3222t1.7985-3.3444h1.5944q-0.29167 2.6639-2.2848 4.443-1.9931 1.7791-4.6763 1.7792z" fill="#fff"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/shutdown.svg b/portprotonqt/themes/standart/images/icons/shutdown.svg new file mode 100644 index 0000000..69aa61e --- /dev/null +++ b/portprotonqt/themes/standart/images/icons/shutdown.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="m8 15q-1.4525 0-2.73-0.55125t-2.2225-1.4962-1.4962-2.2225-0.55125-2.73q0-1.47 0.55125-2.7388t1.4962-2.2138l0.98 0.98q-0.77 0.77-1.1988 1.785t-0.42875 2.1875q0 2.345 1.6275 3.9725t3.9725 1.6275 3.9725-1.6275 1.6275-3.9725q0-1.1725-0.42875-2.1875t-1.1988-1.785l0.98-0.98q0.945 0.945 1.4962 2.2138t0.55125 2.7388q0 1.4525-0.55125 2.73t-1.4962 2.2225-2.2225 1.4962-2.73 0.55125zm-0.7-6.3v-7.7h1.4v7.7z" fill="#fff" stroke-width=".0175"/></svg> diff --git a/portprotonqt/themes/standart/images/icons/spinner.svg b/portprotonqt/themes/standart/images/icons/suspend.svg similarity index 100% rename from portprotonqt/themes/standart/images/icons/spinner.svg rename to portprotonqt/themes/standart/images/icons/suspend.svg diff --git a/portprotonqt/themes/standart/styles.py b/portprotonqt/themes/standart/styles.py index bcc6a27..a09f49d 100644 --- a/portprotonqt/themes/standart/styles.py +++ b/portprotonqt/themes/standart/styles.py @@ -10,11 +10,7 @@ pixmapsScaledSize = 60, 60 CONTEXT_MENU_STYLE = """ QMenu { - background: qlineargradient(x1:0, y1:0, x2:1, y2:0, - stop:0 rgba(40, 40, 40, 0.95), - stop:1 rgba(25, 25, 25, 0.95)); - border: 1px solid rgba(255, 255, 255, 0.15); - border-radius: 12px; + background: #282a33;; color: #ffffff; font-family: 'Play'; font-size: 16px; @@ -27,12 +23,12 @@ CONTEXT_MENU_STYLE = """ color: #ffffff; } QMenu::item:selected { - background: #282a33; - color: #09bec8; + background: #409EFF; + color: #ffffff; } QMenu::item:hover { - background: #282a33; - color: #09bec8; + background: #409EFF; + color: #ffffff; } QMenu::item:focus { background: #409EFF; @@ -67,7 +63,7 @@ TITLE_LABEL_STYLE = """ # СТИЛЬ ОБЛАСТИ НАВИГАЦИИ (КНОПКИ ВКЛАДОК) NAV_WIDGET_STYLE = """ QWidget { - background: none; + background: #282a33; border: 0px solid; } """ @@ -82,19 +78,19 @@ NAV_BUTTON_STYLE = """ font-family: 'Play'; font-size: 16px; text-transform: uppercase; - border: none; + border: #409EFF; border-radius: 15px; } NavLabel[checked = true] { background: rgba(0,122,255,0); - color: #09bec8; + color: #409EFF; font-weight: normal; text-decoration: underline; border-radius: 15px; } NavLabel:hover { background: none; - color: #09bec8; + color: #409EFF; } """ @@ -120,7 +116,7 @@ SEARCH_EDIT_STYLE = """ color: #ffffff; } QLineEdit:focus { - border: 1px solid #09bec8; + border: 1px solid #409EFF; } """ @@ -228,7 +224,7 @@ INSTALLED_TAB_TITLE_STYLE = "font-family: 'Play'; font-size: 24px; color: #fffff ACTION_BUTTON_STYLE = """ QPushButton { background: #3f424d; - border: 1px solid rgba(255, 255, 255, 0.20); + border: 2px solid rgba(255, 255, 255, 0.01); border-radius: 10px; color: #ffffff; font-size: 16px; @@ -236,36 +232,40 @@ ACTION_BUTTON_STYLE = """ padding: 8px 16px; } QPushButton:hover { - background: #282a33; + background: #409EFF; + border: 2px solid #409EFF; } QPushButton:pressed { background: #282a33; } QPushButton:focus { border: 2px solid #409EFF; - background-color: #404554; + background-color: #409EFF; } """ -# СТИЛЬ КНОПОК ОВЕРЛЕЯ +# СТИЛЬ ОВЕРЛЕЯ +OVERLAY_WINDOW_STYLE = "background: #282a33;" OVERLAY_BUTTON_STYLE = """ QPushButton { background: #3f424d; - border: 1px solid rgba(255, 255, 255, 0.20); + border: 2px solid rgba(255, 255, 255, 0.01); border-radius: 10px; color: #ffffff; font-size: 16px; font-family: 'Play'; + padding: 8px 16px; } QPushButton:hover { - background: #282a33; + background: #409EFF; + border: 2px solid #409EFF; } QPushButton:pressed { background: #282a33; } QPushButton:focus { border: 2px solid #409EFF; - background-color: #404554; + background-color: #409EFF; } """ @@ -331,10 +331,10 @@ ADDGAME_BACK_BUTTON_STYLE = """ padding: 8px 16px; } QPushButton:hover { - background: #09bec8; + background: #409EFF; } QPushButton:pressed { - background: #09bec8; + background: #409EFF; } """ @@ -388,10 +388,10 @@ PLAY_BUTTON_STYLE = """ min-height: 40px; } QPushButton:hover { - background: #09bec8; + background: #409EFF; } QPushButton:pressed { - background: #09bec8; + background: #409EFF; } """ @@ -416,6 +416,40 @@ DIALOG_BROWSE_BUTTON_STYLE = """ } """ +ADDGAME_INPUT_STYLE = """ + QLineEdit { + background: #3f424d; + border: 2px solid rgba(255, 255, 255, 0.01); + border-radius: 10px; + height: 34px; + padding-left: 12px; + color: #ffffff; + font-family: 'Play'; + font-size: 16px; + } + QLineEdit:hover { + background: #3f424d; + border: 2px solid #409EFF; + } + QLineEdit:focus { + border: 2px solid #409EFF; + background-color: #404554; + } + QMenu { + border: 1px solid rgba(255, 255, 255, 0.2); + padding: 5px 10px; + background: #32343d; + } + QMenu::item { + padding: 0px 10px; + border: 10px solid transparent; /* reserve space for selection border */ + } + QMenu::item:selected { + background: #3f424d; + border-radius: 10px; + } +""" + # СТИЛЬ КАРТОЧКИ ИГРЫ (GAMECARD) GAME_CARD_WINDOW_STYLE = """ QFrame { @@ -553,7 +587,7 @@ PARAMS_TITLE_STYLE = "color: #ffffff; font-family: 'Play'; font-size: 16px; padd PROXY_INPUT_STYLE = """ QLineEdit { background: #282a33; - border: 0px solid rgba(255, 255, 255, 0.2); + border: 2px solid rgba(255, 255, 255, 0.01); border-radius: 10px; height: 34px; padding-left: 12px; @@ -561,8 +595,13 @@ PROXY_INPUT_STYLE = """ font-family: 'Play'; font-size: 16px; } + QLineEdit:hover { + background: #3f424d; + border: 2px solid #409EFF; + } QLineEdit:focus { - border: 1px solid rgba(255, 255, 255, 0.2); + border: 2px solid #409EFF; + background-color: #404554; } QMenu { border: 1px solid rgba(255, 255, 255, 0.2); @@ -582,7 +621,7 @@ PROXY_INPUT_STYLE = """ SETTINGS_COMBO_STYLE = f""" QComboBox {{ background: #3f424d; - border: 0px solid rgba(255, 255, 255, 0.2); + border: 2px solid rgba(255, 255, 255, 0.01); border-radius: 10px; height: 34px; padding-left: 12px; @@ -594,19 +633,20 @@ SETTINGS_COMBO_STYLE = f""" }} QComboBox:on {{ background: #373a43; - border: 1px solid rgba(255, 255, 255, 0.2); + border: 1px solid #409EFF; border-top-left-radius: 10px; border-top-right-radius: 10px; border-bottom-left-radius: 0px; border-bottom-right-radius: 0px; }} QComboBox:hover {{ - border: 1px solid rgba(255, 255, 255, 0.2); + border: 2px solid #409EFF; + background: #409EFF; }} /* Состояние фокуса */ QComboBox:focus {{ border: 2px solid #409EFF; - background-color: #404554; + background-color: #409EFF; }} QComboBox::drop-down {{ subcontrol-origin: padding; @@ -631,7 +671,7 @@ SETTINGS_COMBO_STYLE = f""" /* Список при открытом комбобоксе */ QComboBox QAbstractItemView {{ outline: none; - border: 1px solid rgba(255, 255, 255, 0.2); + border: 1px solid #409EFF; border-top-style: none; }} QListView {{ @@ -655,6 +695,30 @@ SETTINGS_COMBO_STYLE = f""" }} """ +SETTINGS_CHECKBOX_STYLE = f""" + QCheckBox {{ + height: 34px; + }} + + QCheckBox::indicator {{ + width: 24px; + height: 24px; + border: 2px solid rgba(255, 255, 255, 0.01); + border-radius: 10px; + background: #282a33; + }} + QCheckBox::indicator:hover {{ + background: #3f424d; + border: 2px solid #409EFF; + }} + QCheckBox::indicator:focus {{ + border: 2px solid #409EFF; + }} + QCheckBox::indicator:checked {{ + image: url({theme_manager.get_icon("check", current_theme_name, as_path=True)}); + border: 2px solid #409EFF; + }} +""" # ФУНКЦИЯ ДЛЯ ДИНАМИЧЕСКОГО ГРАДИЕНТА (ДЕТАЛИ ИГР) # Функции из этой темы срабатывает всегда вне зависимости от выбранной темы, функции из других тем работают только в этих темах