From e06cc70d2194f254822fe727223e41aa482e74fd Mon Sep 17 00:00:00 2001 From: yuzubot Date: Fri, 12 Aug 2022 12:02:46 +0000 Subject: [PATCH] "Merge Tagged PR 8647" --- .reuse/dep5 | 10 +- .../icons/48x48/{plus.png => list-add.png} | Bin dist/qt_themes/colorful/style.qrc | 2 +- .../colorful_dark/icons/16x16/refresh.png | Bin 362 -> 0 bytes .../qt_themes/colorful_dark/icons/index.theme | 2 +- dist/qt_themes/colorful_dark/style.qrc | 2 +- .../icons/16x16/refresh.png | Bin 362 -> 0 bytes .../colorful_midnight_blue/style.qrc | 2 +- dist/qt_themes/default/default.qrc | 2 +- .../qt_themes/default/icons/16x16/refresh.png | Bin 349 -> 0 bytes .../icons/48x48/{plus.png => list-add.png} | Bin dist/qt_themes/default_dark/icons/index.theme | 8 + dist/qt_themes/default_dark/style.qrc | 25 + dist/qt_themes/default_dark/style.qss | 687 ++++++++++++++++++ .../qdarkstyle/icons/16x16/refresh.png | Bin 362 -> 0 bytes .../icons/48x48/{plus.png => list-add.png} | Bin dist/qt_themes/qdarkstyle/style.qrc | 2 +- .../icons/16x16/lock.png | Bin 304 -> 0 bytes .../icons/16x16/refresh.png | Bin 362 -> 0 bytes .../icons/16x16/view-refresh.png | Bin 362 -> 0 bytes .../icons/256x256/plus_folder.png | Bin 3438 -> 0 bytes .../icons/48x48/bad_folder.png | Bin 1098 -> 0 bytes .../icons/48x48/chip.png | Bin 15120 -> 0 bytes .../icons/48x48/folder.png | Bin 542 -> 0 bytes .../icons/48x48/plus.png | Bin 339 -> 0 bytes .../icons/48x48/sd_card.png | Bin 676 -> 0 bytes .../icons/48x48/star.png | Bin 725 -> 0 bytes .../qdarkstyle_midnight_blue/style.qrc | 19 +- src/yuzu/game_list.cpp | 2 +- src/yuzu/game_list_p.h | 2 +- src/yuzu/main.cpp | 82 ++- src/yuzu/main.h | 5 + 32 files changed, 817 insertions(+), 35 deletions(-) rename dist/qt_themes/colorful/icons/48x48/{plus.png => list-add.png} (100%) delete mode 100644 dist/qt_themes/colorful_dark/icons/16x16/refresh.png delete mode 100644 dist/qt_themes/colorful_midnight_blue/icons/16x16/refresh.png delete mode 100644 dist/qt_themes/default/icons/16x16/refresh.png rename dist/qt_themes/default/icons/48x48/{plus.png => list-add.png} (100%) create mode 100644 dist/qt_themes/default_dark/icons/index.theme create mode 100644 dist/qt_themes/default_dark/style.qrc create mode 100644 dist/qt_themes/default_dark/style.qss delete mode 100644 dist/qt_themes/qdarkstyle/icons/16x16/refresh.png rename dist/qt_themes/qdarkstyle/icons/48x48/{plus.png => list-add.png} (100%) delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/lock.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/refresh.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/view-refresh.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/256x256/plus_folder.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/bad_folder.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/chip.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/folder.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/plus.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/sd_card.png delete mode 100644 dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/star.png diff --git a/.reuse/dep5 b/.reuse/dep5 index d72233e8c..5f31a4f55 100644 --- a/.reuse/dep5 +++ b/.reuse/dep5 @@ -42,20 +42,18 @@ Files: dist/qt_themes/*/icons/16x16/connected.png dist/qt_themes/*/icons/48x48/sd_card.png dist/qt_themes/*/icons/48x48/star.png dist/qt_themes/*/icons/256x256/plus_folder.png - dist/qt_themes/colorful/icons/48x48/plus.png + dist/qt_themes/colorful/icons/48x48/list-add.png dist/qt_themes/default/icons/16x16/checked.png dist/qt_themes/default/icons/16x16/failed.png Copyright: https://icons8.com License: CC-BY-ND-3.0 -Files: dist/qt_themes/*/icons/16x16/refresh.png - dist/qt_themes/*/icons/16x16/view-refresh.png +Files: dist/qt_themes/*/icons/16x16/view-refresh.png Copyright: Google, Inc. License: Apache-2.0 -Files: dist/qt_themes/default/icons/48x48/plus.png - dist/qt_themes/qdarkstyle/icons/48x48/plus.png - dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/plus.png +Files: dist/qt_themes/default/icons/48x48/list-add.png + dist/qt_themes/qdarkstyle/icons/48x48/list-add.png Copyright: BreadFish64 License: CC0-1.0 diff --git a/dist/qt_themes/colorful/icons/48x48/plus.png b/dist/qt_themes/colorful/icons/48x48/list-add.png similarity index 100% rename from dist/qt_themes/colorful/icons/48x48/plus.png rename to dist/qt_themes/colorful/icons/48x48/list-add.png diff --git a/dist/qt_themes/colorful/style.qrc b/dist/qt_themes/colorful/style.qrc index 4b3f28d89..507e0e58b 100644 --- a/dist/qt_themes/colorful/style.qrc +++ b/dist/qt_themes/colorful/style.qrc @@ -13,7 +13,7 @@ SPDX-License-Identifier: GPL-2.0-or-later icons/48x48/bad_folder.png icons/48x48/chip.png icons/48x48/folder.png - icons/48x48/plus.png + icons/48x48/list-add.png icons/48x48/sd_card.png icons/48x48/star.png icons/256x256/plus_folder.png diff --git a/dist/qt_themes/colorful_dark/icons/16x16/refresh.png b/dist/qt_themes/colorful_dark/icons/16x16/refresh.png deleted file mode 100644 index d4afd76f949ff5c65e039b69ff999325bff5d7b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 362 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4TP^t%4d#k2I8Aju../colorful/icons/48x48/chip.png ../colorful/icons/48x48/folder.png ../qdarkstyle/icons/48x48/no_avatar.png - ../colorful/icons/48x48/plus.png + ../colorful/icons/48x48/list-add.png ../colorful/icons/48x48/sd_card.png ../colorful/icons/256x256/plus_folder.png diff --git a/dist/qt_themes/colorful_midnight_blue/icons/16x16/refresh.png b/dist/qt_themes/colorful_midnight_blue/icons/16x16/refresh.png deleted file mode 100644 index d4afd76f949ff5c65e039b69ff999325bff5d7b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 362 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4TP^t%4d#k2I8Aju../colorful/icons/48x48/bad_folder.png ../colorful/icons/48x48/chip.png ../colorful/icons/48x48/folder.png - ../colorful/icons/48x48/plus.png + ../colorful/icons/48x48/list-add.png ../colorful/icons/48x48/sd_card.png ../colorful/icons/256x256/plus_folder.png diff --git a/dist/qt_themes/default/default.qrc b/dist/qt_themes/default/default.qrc index ef080c221..a07f2a9c1 100644 --- a/dist/qt_themes/default/default.qrc +++ b/dist/qt_themes/default/default.qrc @@ -17,7 +17,7 @@ SPDX-License-Identifier: GPL-2.0-or-later icons/48x48/chip.png icons/48x48/folder.png icons/48x48/no_avatar.png - icons/48x48/plus.png + icons/48x48/list-add.png icons/48x48/sd_card.png icons/48x48/star.png icons/256x256/yuzu.png diff --git a/dist/qt_themes/default/icons/16x16/refresh.png b/dist/qt_themes/default/icons/16x16/refresh.png deleted file mode 100644 index 69f9474acabad4c5bbb4b8dd3f73b34b5d49d3f1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 349 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p z3xP1>)&}zuprB-lYeY$Kep*R+Vo@qXd3m{BW?pu2a$-TMUVc&f>~}U&Kt;DaT^vI! zdXHXO?dResz;fZRvg2D(hZAudG7gC+giq$}KOcG4zro@DnrG}2G&q=8CN#Jv2-qAk zIjJ+#`oXqIX2G$hS8WgP*%
    P@0_exQBEhkNRG4vEbF(e=wge3`J!mrnDK5~jx# zUU8hS;5{7IoY@i1eaCa!ii`_xR|*?vr#zBue!3=;y?e(G)x3h?UwC-!Cn58K{>@QcV*C}8#I7dD9^Y}8_gWU)lKmGvA3u?Q86s88 o#x1&7v25w|org}xo1bUDudAldyso>n5$H<>Pgg&ebxsLQ00=gQyZ`_I diff --git a/dist/qt_themes/default/icons/48x48/plus.png b/dist/qt_themes/default/icons/48x48/list-add.png similarity index 100% rename from dist/qt_themes/default/icons/48x48/plus.png rename to dist/qt_themes/default/icons/48x48/list-add.png diff --git a/dist/qt_themes/default_dark/icons/index.theme b/dist/qt_themes/default_dark/icons/index.theme new file mode 100644 index 000000000..60a072d1d --- /dev/null +++ b/dist/qt_themes/default_dark/icons/index.theme @@ -0,0 +1,8 @@ +[Icon Theme] +Name=default_dark +Comment=Colorful theme (Dark style) +Inherits=colorful +Directories=16x16 + +[16x16] +Size=16 diff --git a/dist/qt_themes/default_dark/style.qrc b/dist/qt_themes/default_dark/style.qrc new file mode 100644 index 000000000..7de4737c2 --- /dev/null +++ b/dist/qt_themes/default_dark/style.qrc @@ -0,0 +1,25 @@ + + + + ../colorful/icons/16x16/connected.png + ../colorful/icons/16x16/connected_notification.png + ../colorful/icons/16x16/disconnected.png + icons/index.theme + ../colorful_dark/icons/16x16/lock.png + ../colorful_dark/icons/16x16/view-refresh.png + ../colorful/icons/48x48/bad_folder.png + ../colorful/icons/48x48/chip.png + ../colorful/icons/48x48/folder.png + ../qdarkstyle/icons/48x48/no_avatar.png + ../colorful/icons/48x48/list-add.png + ../colorful/icons/48x48/sd_card.png + ../colorful/icons/256x256/plus_folder.png + + + + style.qss + + diff --git a/dist/qt_themes/default_dark/style.qss b/dist/qt_themes/default_dark/style.qss new file mode 100644 index 000000000..ca6daa2d5 --- /dev/null +++ b/dist/qt_themes/default_dark/style.qss @@ -0,0 +1,687 @@ +/* +* SPDX-FileCopyrightText: 2018 yuzu Emulator Project +* SPDX-License-Identifier: GPL-2.0-or-later +*/ +QAbstractSpinBox { + min-height: 19px; +} + +QPushButton#TogglableStatusBarButton { + color: #959595; + border: 1px solid transparent; + background-color: transparent; + padding: 0px 3px 0px 3px; + text-align: center; +} + +QPushButton#TogglableStatusBarButton:checked { + color: palette(text); +} + +QPushButton#TogglableStatusBarButton:hover { + border: 1px solid #76797C; +} + +QPushButton#RendererStatusBarButton { + color: #656565; + border: 1px solid transparent; + background-color: transparent; + padding: 0px 3px 0px 3px; + text-align: center; +} + +QPushButton#RendererStatusBarButton:hover { + border: 1px solid #76797C; +} + +QPushButton#RendererStatusBarButton:checked { + color: #e85c00; +} + +QPushButton#RendererStatusBarButton:!checked { + color: #00ccdd; +} + +QPushButton#GPUStatusBarButton { + color: #656565; + border: 1px solid transparent; + background-color: transparent; + padding: 0px 3px 0px 3px; + text-align: center; +} + +QPushButton#GPUStatusBarButton:hover { + border: 1px solid #76797C; +} + +QPushButton#GPUStatusBarButton:checked { + color: #ff8040; +} + +QPushButton#GPUStatusBarButton:!checked { + color: #40dd40; +} + +QPushButton#DockingStatusBarButton { + min-width: 0px; + color: palette(text); + border: 1px solid transparent; + background-color: transparent; + padding: 0px 3px 0px 3px; + text-align: center; +} + +QPushButton#DockingStatusBarButton:hover { + border: 1px solid #76797C; +} + +QPushButton#buttonRefreshDevices { + min-width: 21px; + min-height: 21px; + max-width: 21px; + max-height: 21px; +} + +QWidget#bottomPerGameInput, +QWidget#topControllerApplet, +QWidget#bottomControllerApplet, +QGroupBox#groupPlayer1Connected:checked, +QGroupBox#groupPlayer2Connected:checked, +QGroupBox#groupPlayer3Connected:checked, +QGroupBox#groupPlayer4Connected:checked, +QGroupBox#groupPlayer5Connected:checked, +QGroupBox#groupPlayer6Connected:checked, +QGroupBox#groupPlayer7Connected:checked, +QGroupBox#groupPlayer8Connected:checked { + background-color: #f5f5f5; +} + +QWidget#topControllerApplet { + border-bottom: 1px solid #828790 +} + +QWidget#bottomPerGameInput, +QWidget#bottomControllerApplet { + border-top: 1px solid #828790 +} + +QWidget#topPerGameInput, +QWidget#middleControllerApplet { + background-color: #fff; +} + +QWidget#topPerGameInput QComboBox, +QWidget#middleControllerApplet QComboBox { + width: 120px; +} + +QWidget#connectedControllers { + background: transparent; +} + +QWidget#playersSupported, +QWidget#controllersSupported, +QWidget#controllerSupported1, +QWidget#controllerSupported2, +QWidget#controllerSupported3, +QWidget#controllerSupported4, +QWidget#controllerSupported5, +QWidget#controllerSupported6 { + border: none; + background: transparent; +} + +QGroupBox#groupPlayer1Connected, +QGroupBox#groupPlayer2Connected, +QGroupBox#groupPlayer3Connected, +QGroupBox#groupPlayer4Connected, +QGroupBox#groupPlayer5Connected, +QGroupBox#groupPlayer6Connected, +QGroupBox#groupPlayer7Connected, +QGroupBox#groupPlayer8Connected { + border: 1px solid #828790; + border-radius: 3px; + padding: 0px; + min-height: 98px; + max-height: 98px; +} + +QGroupBox#groupPlayer1Connected:unchecked, +QGroupBox#groupPlayer2Connected:unchecked, +QGroupBox#groupPlayer3Connected:unchecked, +QGroupBox#groupPlayer4Connected:unchecked, +QGroupBox#groupPlayer5Connected:unchecked, +QGroupBox#groupPlayer6Connected:unchecked, +QGroupBox#groupPlayer7Connected:unchecked, +QGroupBox#groupPlayer8Connected:unchecked { + border: 1px solid #d9d9d9; +} + +QGroupBox#groupPlayer1Connected::title, +QGroupBox#groupPlayer2Connected::title, +QGroupBox#groupPlayer3Connected::title, +QGroupBox#groupPlayer4Connected::title, +QGroupBox#groupPlayer5Connected::title, +QGroupBox#groupPlayer6Connected::title, +QGroupBox#groupPlayer7Connected::title, +QGroupBox#groupPlayer8Connected::title { + subcontrol-origin: margin; + subcontrol-position: top left; + padding-left: 0px; + padding-right: 0px; + padding-top: 1px; + margin-left: 0px; + margin-right: -4px; + margin-bottom: 4px; +} + +QCheckBox#checkboxPlayer1Connected, +QCheckBox#checkboxPlayer2Connected, +QCheckBox#checkboxPlayer3Connected, +QCheckBox#checkboxPlayer4Connected, +QCheckBox#checkboxPlayer5Connected, +QCheckBox#checkboxPlayer6Connected, +QCheckBox#checkboxPlayer7Connected, +QCheckBox#checkboxPlayer8Connected { + spacing: 0px; +} + +QWidget#Player1LEDs QCheckBox, +QWidget#Player2LEDs QCheckBox, +QWidget#Player3LEDs QCheckBox, +QWidget#Player4LEDs QCheckBox, +QWidget#Player5LEDs QCheckBox, +QWidget#Player6LEDs QCheckBox, +QWidget#Player7LEDs QCheckBox, +QWidget#Player8LEDs QCheckBox { + spacing: 0px; +} + +QWidget#Player1LEDs QCheckBox::indicator, +QWidget#Player2LEDs QCheckBox::indicator, +QWidget#Player3LEDs QCheckBox::indicator, +QWidget#Player4LEDs QCheckBox::indicator, +QWidget#Player5LEDs QCheckBox::indicator, +QWidget#Player6LEDs QCheckBox::indicator, +QWidget#Player7LEDs QCheckBox::indicator, +QWidget#Player8LEDs QCheckBox::indicator { + width: 6px; + height: 6px; + margin-left: 0px; +} + +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer1Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer2Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer3Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer4Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer5Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer6Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer7Connected::indicator, +QWidget#bottomPerGameInput QCheckBox#checkboxPlayer8Connected::indicator { + width: 12px; + height: 12px; +} + +QCheckBox#checkboxPlayer1Connected::indicator, +QCheckBox#checkboxPlayer2Connected::indicator, +QCheckBox#checkboxPlayer3Connected::indicator, +QCheckBox#checkboxPlayer4Connected::indicator, +QCheckBox#checkboxPlayer5Connected::indicator, +QCheckBox#checkboxPlayer6Connected::indicator, +QCheckBox#checkboxPlayer7Connected::indicator, +QCheckBox#checkboxPlayer8Connected::indicator { + width: 14px; + height: 14px; +} + +QGroupBox#groupPlayer1Connected::indicator, +QGroupBox#groupPlayer2Connected::indicator, +QGroupBox#groupPlayer3Connected::indicator, +QGroupBox#groupPlayer4Connected::indicator, +QGroupBox#groupPlayer5Connected::indicator, +QGroupBox#groupPlayer6Connected::indicator, +QGroupBox#groupPlayer7Connected::indicator, +QGroupBox#groupPlayer8Connected::indicator { + width: 16px; + height: 16px; +} + +QWidget#Player1LEDs QCheckBox::indicator:checked, +QWidget#Player2LEDs QCheckBox::indicator:checked, +QWidget#Player3LEDs QCheckBox::indicator:checked, +QWidget#Player4LEDs QCheckBox::indicator:checked, +QWidget#Player5LEDs QCheckBox::indicator:checked, +QWidget#Player6LEDs QCheckBox::indicator:checked, +QWidget#Player7LEDs QCheckBox::indicator:checked, +QWidget#Player8LEDs QCheckBox::indicator:checked, +QGroupBox#groupPlayer1Connected::indicator:checked, +QGroupBox#groupPlayer2Connected::indicator:checked, +QGroupBox#groupPlayer3Connected::indicator:checked, +QGroupBox#groupPlayer4Connected::indicator:checked, +QGroupBox#groupPlayer5Connected::indicator:checked, +QGroupBox#groupPlayer6Connected::indicator:checked, +QGroupBox#groupPlayer7Connected::indicator:checked, +QGroupBox#groupPlayer8Connected::indicator:checked, +QCheckBox#checkboxPlayer1Connected::indicator:checked, +QCheckBox#checkboxPlayer2Connected::indicator:checked, +QCheckBox#checkboxPlayer3Connected::indicator:checked, +QCheckBox#checkboxPlayer4Connected::indicator:checked, +QCheckBox#checkboxPlayer5Connected::indicator:checked, +QCheckBox#checkboxPlayer6Connected::indicator:checked, +QCheckBox#checkboxPlayer7Connected::indicator:checked, +QCheckBox#checkboxPlayer8Connected::indicator:checked, +QGroupBox#groupConnectedController::indicator:checked { + border-radius: 2px; + border: 1px solid #929192; + background: #39ff14; + image: none; +} + +QWidget#Player1LEDs QCheckBox::indicator:unchecked, +QWidget#Player2LEDs QCheckBox::indicator:unchecked, +QWidget#Player3LEDs QCheckBox::indicator:unchecked, +QWidget#Player4LEDs QCheckBox::indicator:unchecked, +QWidget#Player5LEDs QCheckBox::indicator:unchecked, +QWidget#Player6LEDs QCheckBox::indicator:unchecked, +QWidget#Player7LEDs QCheckBox::indicator:unchecked, +QWidget#Player8LEDs QCheckBox::indicator:unchecked, +QGroupBox#groupPlayer1Connected::indicator:unchecked, +QGroupBox#groupPlayer2Connected::indicator:unchecked, +QGroupBox#groupPlayer3Connected::indicator:unchecked, +QGroupBox#groupPlayer4Connected::indicator:unchecked, +QGroupBox#groupPlayer5Connected::indicator:unchecked, +QGroupBox#groupPlayer6Connected::indicator:unchecked, +QGroupBox#groupPlayer7Connected::indicator:unchecked, +QGroupBox#groupPlayer8Connected::indicator:unchecked, +QCheckBox#checkboxPlayer1Connected::indicator:unchecked, +QCheckBox#checkboxPlayer2Connected::indicator:unchecked, +QCheckBox#checkboxPlayer3Connected::indicator:unchecked, +QCheckBox#checkboxPlayer4Connected::indicator:unchecked, +QCheckBox#checkboxPlayer5Connected::indicator:unchecked, +QCheckBox#checkboxPlayer6Connected::indicator:unchecked, +QCheckBox#checkboxPlayer7Connected::indicator:unchecked, +QCheckBox#checkboxPlayer8Connected::indicator:unchecked, +QGroupBox#groupConnectedController::indicator:unchecked { + border-radius: 2px; + border: 1px solid #929192; + background: transparent; + image: none; +} + +QWidget#controllerPlayer1, +QWidget#controllerPlayer2, +QWidget#controllerPlayer3, +QWidget#controllerPlayer4, +QWidget#controllerPlayer5, +QWidget#controllerPlayer6, +QWidget#controllerPlayer7, +QWidget#controllerPlayer8 { + background: transparent; +} + +QDialog#QtSoftwareKeyboardDialog, +QStackedWidget#topOSK { + background: rgba(51, 51, 51, .9); +} + + +QDialog#OverlayDialog, +QStackedWidget#stackedDialog { + background: rgba(51, 51, 51, .7); +} + +QWidget#boxOSK, +QWidget#lineOSK, +QWidget#richDialog, +QWidget#lineDialog { + background: transparent; +} + +QStackedWidget#bottomOSK, +QWidget#contentDialog, +QWidget#contentRichDialog { + background: rgba(240, 240, 240, 1); +} + +QWidget#contentDialog, +QWidget#contentRichDialog { + margin: 5px; + border-radius: 6px; +} + +QWidget#buttonsDialog, +QWidget#buttonsRichDialog { + margin: 5px; + border-top: 2px solid rgba(44, 44, 44, 1); +} + +QWidget#legendOSKnum { + border-top: 1px solid rgba(44, 44, 44, 1); +} + +QStackedWidget#stackedDialog QTextBrowser QScrollBar::vertical { + background: #cdcdcd; + width: 15px; + margin: 15px 3px 15px 3px; + border: 1px transparent; + border-radius: 4px; +} + +QStackedWidget#stackedDialog QTextBrowser QScrollBar::horizoncal { + background: #cdcdcd; + height: 15px; + margin: 3px 15px 3px 15px; + border: 1px transparent; + border-radius: 4px; +} + +QStackedWidget#stackedDialog QTextBrowser QScrollBar::handle { + background: #fff; + border-radius: 4px; + min-height: 5px; + min-width: 5px; +} + +QStackedWidget#stackedDialog QTextBrowser QScrollBar::add-line, +QStackedWidget#stackedDialog QTextBrowser QScrollBar::sub-line, +QStackedWidget#stackedDialog QTextBrowser QScrollBar::add-page, +QStackedWidget#stackedDialog QTextBrowser QScrollBar::sub-page { + background: none; +} + +QWidget#inputOSK { + border-bottom: 3px solid rgba(255, 255, 255, .9); +} + +QWidget#inputOSK QLineEdit { + background: transparent; + border: none; + color: #ccc; +} + +QWidget#inputBoxOSK { + border: 2px solid rgba(255, 255, 255, .9); +} + +QWidget#inputBoxOSK QTextEdit { + background: transparent; + border: none; + color: #ccc; +} + +QWidget#richDialog QTextBrowser { + background: transparent; + border: none; + padding: 35px 65px; +} + + +QWidget#lineOSK QLabel#label_header { + color: #f0f0f0; +} + +QWidget#lineOSK QLabel#label_sub, +QWidget#lineOSK QLabel#label_characters, +QWidget#boxOSK QLabel#label_characters_box { + color: #ccc; +} + +QWidget#contentDialog QLabel#label_title, +QWidget#contentRichDialog QLabel#label_title_rich { + color: #888; +} + +QWidget#contentDialog QLabel#label_dialog { + padding: 20px 65px; +} + +QWidget#contentDialog QLabel#label_title, +QWidget#contentRichDialog QLabel#label_title_rich { + padding: 0px 65px; +} + +QDialog#OverlayDialog QPushButton { + color: rgba(49, 79, 239, 1); + background: transparent; + border: none; + padding: 0px; + min-width: 0px; +} + +QDialog#OverlayDialog QPushButton:focus, +QDialog#OverlayDialog QPushButton:hover { + color: rgba(49, 79, 239, 1); + background: rgba(255, 255, 255, 1); + border: 5px solid rgba(148, 250, 202, 1); + border-radius: 6px; + outline: none; +} + +QDialog#OverlayDialog QPushButton:pressed { + color: rgba(240, 240, 240, 1); + background: rgba(150, 150, 150, 1); + border: 5px solid rgba(148, 250, 202, 1); + border-radius: 6px; + outline: none; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton { + background: rgba(232, 232, 232, 1); + border: 2px solid rgba(240, 240, 240, 1); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift { + background: rgba(218, 218, 218, 1); + border: 2px solid rgba(240, 240, 240, 1); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num { + color: rgba(240, 240, 240, 1); + background: rgba(44, 44, 44, 1); + border: 2px solid rgba(240, 240, 240, 1); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num { + color: rgba(240, 240, 240, 1); + background: rgba(49, 79, 239, 1); + border: 2px solid rgba(240, 240, 240, 1); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:focus, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:focus, + +QDialog#QtSoftwareKeyboardDialog QPushButton:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:hover, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:hover { + color: rgba(0, 0, 0, 1); + background: rgba(255, 255, 255, 1); + border: 5px solid rgba(148, 250, 202, 1); + border-radius: 6px; + outline: none; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:pressed, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:pressed { + color: rgba(240, 240, 240, 1); + background: rgba(150, 150, 150, 1); + border: 5px solid rgba(148, 250, 202, 1); + border-radius: 6px; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num { + image: url(:/overlay/osk_button_B.png); + image-position: right; + qproperty-icon: url(:/overlay/osk_button_backspace.png); + qproperty-iconSize: 36px; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift { + image: url(:/overlay/osk_button_Y.png); + image-position: right; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num { + image: url(:/overlay/osk_button_plus.png); + image-position: right; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift { + image: url(:/overlay/osk_button_shift_lock_off.png); + image-position: left; + qproperty-icon: url(:/overlay/osk_button_shift.png); + qproperty-iconSize: 36px; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_shift_shift { + image: url(:/overlay/osk_button_shift_lock_off.png); + image-position: left; + qproperty-icon: url(:/overlay/osk_button_shift_on.png); + qproperty-iconSize: 36px; +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_left_bracket, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_right_bracket, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_left_parenthesis, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_right_parenthesis { + padding-bottom: 7px; +} + +QDialog#QtSoftwareKeyboardDialog QWidget#titleOSK QLabel { + background: transparent; + color: #ccc; +} + +QDialog#QtSoftwareKeyboardDialog QWidget#button_L, +QDialog#QtSoftwareKeyboardDialog QWidget#button_L_shift, +QDialog#QtSoftwareKeyboardDialog QWidget#button_L_num { + image: url(:/overlay/button_L.png); +} + +QDialog#QtSoftwareKeyboardDialog QWidget#arrow_left, +QDialog#QtSoftwareKeyboardDialog QWidget#arrow_left_shift, +QDialog#QtSoftwareKeyboardDialog QWidget#arrow_left_num { + image: url(:/overlay/arrow_left.png); +} + +QDialog#QtSoftwareKeyboardDialog QWidget#button_R, +QDialog#QtSoftwareKeyboardDialog QWidget#button_R_shift, +QDialog#QtSoftwareKeyboardDialog QWidget#button_R_num { + image: url(:/overlay/button_R.png); +} + +QDialog#QtSoftwareKeyboardDialog QWidget#arrow_right, +QDialog#QtSoftwareKeyboardDialog QWidget#arrow_right_shift, +QDialog#QtSoftwareKeyboardDialog QWidget#arrow_right_num { + image: url(:/overlay/arrow_right.png); +} + +QDialog#QtSoftwareKeyboardDialog QWidget#button_press_stick, +QDialog#QtSoftwareKeyboardDialog QWidget#button_press_stick_shift { + image: url(:/overlay/button_press_stick.png); +} + +QDialog#QtSoftwareKeyboardDialog QWidget#button_X, +QDialog#QtSoftwareKeyboardDialog QWidget#button_X_shift, +QDialog#QtSoftwareKeyboardDialog QWidget#button_X_num { + image: url(:/overlay/button_X.png); +} + +QDialog#QtSoftwareKeyboardDialog QWidget#button_A, +QDialog#QtSoftwareKeyboardDialog QWidget#button_A_shift, +QDialog#QtSoftwareKeyboardDialog QWidget#button_A_num { + image: url(:/overlay/button_A.png); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return_shift:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:disabled { + color: rgba(164, 164, 164, 1); + background-color: rgba(218, 218, 218, 1); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_at:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_slash:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_percent:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_1:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_2:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_3:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_4:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_5:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_6:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_7:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_8:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_9:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_0:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_return:disabled { + color: rgba(164, 164, 164, 1); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_shift:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_ok_num:disabled { + image: url(:/overlay/osk_button_plus_disabled.png); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_shift:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_backspace_num:disabled { + image: url(:/overlay/osk_button_B_disabled.png); +} + +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space:disabled, +QDialog#QtSoftwareKeyboardDialog QPushButton#button_space_shift:disabled { + image: url(:/overlay/osk_button_Y_disabled.png); +} diff --git a/dist/qt_themes/qdarkstyle/icons/16x16/refresh.png b/dist/qt_themes/qdarkstyle/icons/16x16/refresh.png deleted file mode 100644 index d4afd76f949ff5c65e039b69ff999325bff5d7b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 362 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf2?p zD}XSgpwrRCKtah8*NBqf{Irtt#G+J&^73-M%)IR4TP^t%4d#k2I8Ajuicons/48x48/chip.png icons/48x48/folder.png icons/48x48/no_avatar.png - icons/48x48/plus.png + icons/48x48/list-add.png icons/48x48/sd_card.png icons/48x48/star.png icons/256x256/plus_folder.png diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/lock.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/lock.png deleted file mode 100644 index c750a39e855800fe4cde217a1bf28f841030e501..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 304 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=G`DAk4@xYmNj^kiEpy*OmPd3#R~&?yEVTSwNw^o-U3d7N_S%ktxROZ0mC!4`O#esdB1N*JU5{0l2e>jubge>mPSJ^&&?%8KcL>WvAo_9+JoM2kO zsn>V#-&Rc~i~Ae_tY5EP-=*8Ab(MpM;j*Q7#*{i)r8@>Yr!28i{4k+p>J|4L=dRCP zQYgN$Vq(bz-seA`PP+eLPWpo{(p_gRe3@1fbK~xheFC)y^e0Hmy!rd&s^O(iEb1#g wo=%oNY{h!`>vV^`LLZb)T(e+SzEHyuo5c9`w}kC2php-yUHx3vIVCg!0C@XzqyPW_ diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/refresh.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/16x16/refresh.png deleted file mode 100644 index d4afd76f949ff5c65e039b69ff999325bff5d7b8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 362 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 F|2wrn09yb6 diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/bad_folder.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/bad_folder.png deleted file mode 100644 index 4a9709623476fcf4070c4e3da2bb17375222082e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1098 zcmV-Q1hxB#P)9Ay}WpLce(X`;3^T0>M+iWlD0Lu0^XBOwVv zn~fMSUMNL8AyUxd0WYK_EusyAwOT=XBP!~()_4&xN=PpRBb11E?nUcvwt_U;=Fr`p z&x_sJtYeZrW{1K)u(03%|KGds%k2C!%s`zw6`}mX%)-E(Kr^thKyM0|1EwX-t&hDD zFtbO^EN-QntFhssRsy}dVrt_2WxU1OyKm(i}YHv1kMt#F_agNyVaHtrKKm&x58%DsI zSD3mZz8HI=7>&RJoZi`S8`#sU&CB#^Y_R*PLOOv32szFnAoDjd>oKFvj5bM6W|wRc z$$cxd&gU0_1c(hrb^+a9ol3bUTF0iQTgRrR-L!trEi~sZri|8u zC-3jx>=ly!0bYa}1~8E8+7ZgTec8GpmD-;_An6leqGkaS(ar~fu5$YYyA#pKt-j$s zHMyCK4en?(lmCjFBOG>~jSocT0fc+gD$hDYF7^h{>kUYnsm&+wa$Y zP^+F;wDaNC&yRnU8!@vq%jd$Fq-aHEeI)Mf*ye_u?}3KZ)|m7huAK)Ex*6FEYe=5b zg~nT2#>dY?#`u}M$#yf_QVruC>5%g-YnTT}Ur4>*IyQB*b!_UWnT{2ZyxuNZ81afQ zFabQ2t*-{A&Fo7cU54KgNpY`;MI%FkzA|*yMz&{m=iMK)d@(r_21bDgfJ?K}Hv*5B zAv-JSsa(%}7peF_=U$`(#WV`e+Vc4u z1}-nA&!iy-K+=am4=_&V4SYHLk`o3Yt#u;)*9dF|uFQUlG7liLgSl-~(j+jMeNEa@ ztVkYz=Cr`#nMd_kl%Z1!bN{;zNSX(JuT}fa2P9orsn$vePRV%wUoq}`UK9Za QM*si-07*qoM6N<$f^>%fC;$Ke diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/chip.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/chip.png deleted file mode 100644 index 973fabd052e389c28ef36c482cf44d764795a3b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15120 zcmeI3Yj6|S8HU$(Vmk)Qoe9Lmkg&+6m=I}oziec2u?&`rjBA|O0@`RTt?UI!yO!3L zY?_RnwopoO8c#cQGKHB=8PYTfBsSAh96)J8rk!{k3gdQ4(ga8##*ka7xs?t*E6LKa zEOU}fejd$8`}v&r{l2r$xp@EVj=I`4g#{%A1VI$qt8Mk*s*=9>x!|`k`^I)~xkspW zh6qCTru5DFl7+A ztuoUpHJSLxtpy;m1U+85-nKeX4*XRiZxuy>rl@c@tPE?Fe6WR5o6TlQrJ*z$1yCqL zodJ=FC<39R>A|GnyXDFHMp0O~P6Ne*NJL7o${*0wV zVpRt~kU*Nz8EWVhSgM{4@$Er3Th#$>r8Lvsi<~z#Ia4x8Ju{A-jc_yAq@K7fwiMzs zWC8a|R|Z)|K8O1GruJC%*KF(PXPPLo1q zRA}@K8a1so(i-D3m5ElVpd@i+S`G*A;k=!hasam(&H*XYbAbKhVMOLjWr4L&9*>*$ z@|D~+}XLLw7zvv!*mG$=XF zLwhv3W`kMU$2yNuVPJJCg;~cM6pYrZ_v%2eSF4XfbU0x9wA41<-7f8xL~74hObywm zrCt~0z)8pWAdNKouUaBQnrWq~xe!>NozS`kt2cI*t!LY&woZ2VxY(H_Fu@Qj?YIj0 zrEk)~WL|xnif!r$su{Xs{N*xR}@+ zs4djAwp8V~zDb%>Uwce%HmJadQcJ%HE8LxKb>7(ucc)uZ&PM~BXw@XDr8Pq?>Ew+c z3+ur{0&6ws_0sN5Z%%jAaS_(nWaGg84N0p~XG(a|J2D!bGZ~?dgfTu<(7*H8OvYQm z!vc6tp^^_OQztpO5x(Idbw}TDVmKWx0@Fao7#9)|EWo&68ps&qLL!0%7#Bj0>iLj4>`GB3OWN!8DLD#)U)#3otI21~SID zkceOb#s$+r#uyh85iG#CU>e96<3b{W1sE4h0~upnNJOvzK*kss5)mxGxL_K{ z7~?`Bf&~~COamEXTu4N)0ONvbAmcmYDoDNh#|FUreqr!p->&@A<=~}2(p_EeAc(HT z1kwFNg1B)TTrUztJ9yi0+(i&{KS31peUBesO%T~$yKQAdLl;XP(xT+?LIsKlja%+6LX`cH6;MezNzm zoo}rE(>sHL?5(p`y&tk2zfu()9ewxNPQK;iA?*kDJ_m8A@K&}p`?oS<(GPN-B(BJe z1-kD0gi{yFCbEid?EJW|W62`&g@vtujn2(}?ckweS@`X98=}^ok1U=QT~(gr9$B%h z_b=Oy>lXy7ZZ{8~8!`V+S(Wqd=!(K<$yjgczh6Fnr0ukFDH{89qpe}E9{q;8chf6Q4={~%-W_!oh9;b`k zF?P%Qe9xn2w#vS^`_MsWPhQ#ROJm`Ew|58c`h4R_;oDC{2W1bq?z>!jWw`PDY}cxj zvIEw2OD5!ng!cPSMBkY+@Xry$-6f`vM)THYT`T+7ADi#*KWH6XHM{@SBR2ReM#fZT~9QQ~w9L4#0H) diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/folder.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/folder.png deleted file mode 100644 index 0f1e987d6aa24b1d2f26d40181ec05b62c5862da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 542 zcmV+(0^$9MP)gj)+A>{26oZicm$UB2*Eo2vvkCLKUHkP(`RBR1vBO{U->e2_Tfp5glb)i-)#n zBcA=4?Za$q@u&fICB1B4$pc9Tzz0cZBlCX;n71A~gm$An5;~C7Xj)nV&r(DzBy9m+ zl_ZzNH#|G*J2tSDQd&f2Y*W%(U}LOrBO;cPK1q5L5g(=ESA#B5TF%l{rK~)Xx+?BT gmh@}z-x~VXU+F%DB-VK&7XSbN07*qoM6N<$g3QzC#sB~S diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/plus.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/plus.png deleted file mode 100644 index 16cc8b4f44d52009d4a3f4c9d46f5bb0e20babcf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 339 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA1|-9oezpTCmSQK*5Dp-y;YjHK@;M7UB8wRq z_>O=u<5X=vX`rBFiEBhjaDG}zd16s2LwR|*US?i)adKios$PCk`s{Z$Qb0u)JY5_^ zG8*6BbmVI?5NLh4@}X2!l-S-D>HaqF9f#jLiMc75c-1D{o4(=YB4d5u$$lLMo6j=x zUSPWWW2?jBcdI2P%slmKUl-$FpN4&IYeSNQ8*V0P=El9>^0jUMGlnd_1qi~7(|}J| zQX*~M5!Y#5wY%=$@Lrap@yOElZRqcN@1NB2l?WEb+1qqhd%gU$>qC9Hf>NIS`$c!E z@^cD0wIlW%nb&z$#^EgE6$FvRD#3MqUzqlRtp&OBEq>*PZDy`yczi-rX+hv3f1uwO NJYD@<);T3K0RY^^g3SN` diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/sd_card.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/sd_card.png deleted file mode 100644 index 0291c6542d05a40a350bb5bdbd99a15c01467161..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 676 zcmV;V0$crwP)9;%C77Yw$6jD~9oIODt?HsBRZt0bRw zmeDdcYUphqIq4;3u%|?CJop9~c1NoqP%q z@Y%`Q*)ca5-Xpe{WHeKj&Fr-6S~db994g2rfWrm(!R+N?CEIowoxHK^cpumcqyn)C z`3@YHbj?|xsY|8`Ay=W@MD8lI=ciCA5SvsWHmN{tQi0f{0B??l6*y&P?o*xO z5iqk?z*XRD17abp0hfLGu}GShbYIdtHUAHlO-XMg-H~*(%<(rT_n!W$2z40%0000< KMNUMnLSTXz{w(PL diff --git a/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/star.png b/dist/qt_themes/qdarkstyle_midnight_blue/icons/48x48/star.png deleted file mode 100644 index 90d423a1d4c1e05ccec0a01fa34abca9fe99676d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 725 zcmV;`0xJE9P)_t6%-62 zVr82q2v*vNjbd-7sEw6YRw`;*Au;C>A_fF=QIp5w_Hek|?d?ovvLg4u7RTQAeeXLn zyE7jvb?MS28bBE+=dHsFpda|2T>Y`?tcsOb(ukyDa$SyCCp)c4X8n|W{fGxmW%IG(!0i{rNL(aezNm<_Y1^sIq8_-96v&zaeuqH(9)t-X;C2fn8;Z;z&BvnNxWrZ0C<<9_zG~)OT1-b1Mn&b@#DbGWr?>;6o5x7DE>9D zDTsK>L=SLp1;jrF)&>>dWaLIf@ecv7V=iHZ#CAz!8~vaYn?A6 zZwYt+ELi!6LTGL-v=Mkiy|LL7A^&0Oo! icons/index.theme - icons/16x16/lock.png - icons/16x16/view-refresh.png - icons/48x48/bad_folder.png - icons/48x48/chip.png - icons/48x48/folder.png - icons/48x48/plus.png - icons/48x48/sd_card.png - icons/48x48/star.png - icons/256x256/plus_folder.png + ../qdarkstyle/icons/16x16/lock.png + ../qdarkstyle/icons/16x16/view-refresh.png + ../qdarkstyle/icons/48x48/bad_folder.png + ../qdarkstyle/icons/48x48/chip.png + ../qdarkstyle/icons/48x48/folder.png + ../qdarkstyle/icons/48x48/no_avatar.png + ../qdarkstyle/icons/48x48/list-add.png + ../qdarkstyle/icons/48x48/sd_card.png + ../qdarkstyle/icons/48x48/star.png + ../qdarkstyle/icons/256x256/plus_folder.png rc/arrow_down.png diff --git a/src/yuzu/game_list.cpp b/src/yuzu/game_list.cpp index 041e6ac11..c4b1f65bd 100644 --- a/src/yuzu/game_list.cpp +++ b/src/yuzu/game_list.cpp @@ -286,7 +286,7 @@ void GameList::OnUpdateThemedIcons() { } case GameListItemType::AddDir: child->setData( - QIcon::fromTheme(QStringLiteral("plus")) + QIcon::fromTheme(QStringLiteral("list-add")) .pixmap(icon_size) .scaled(icon_size, icon_size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation), Qt::DecorationRole); diff --git a/src/yuzu/game_list_p.h b/src/yuzu/game_list_p.h index e7667cf60..0e19be22d 100644 --- a/src/yuzu/game_list_p.h +++ b/src/yuzu/game_list_p.h @@ -294,7 +294,7 @@ public: const int icon_size = UISettings::values.folder_icon_size.GetValue(); - setData(QIcon::fromTheme(QStringLiteral("plus")) + setData(QIcon::fromTheme(QStringLiteral("list-add")) .pixmap(icon_size) .scaled(icon_size, icon_size, Qt::IgnoreAspectRatio, Qt::SmoothTransformation), Qt::DecorationRole); diff --git a/src/yuzu/main.cpp b/src/yuzu/main.cpp index f82bec3b7..81f2b53d3 100644 --- a/src/yuzu/main.cpp +++ b/src/yuzu/main.cpp @@ -257,6 +257,18 @@ static QString PrettyProductName() { return QSysInfo::prettyProductName(); } +bool GMainWindow::check_dark_mode() { +#ifdef __linux__ + const QPalette test_palette(qApp->palette()); + const QColor text_color = test_palette.color(QPalette::Active, QPalette::Text); + const QColor window_color = test_palette.color(QPalette::Active, QPalette::Window); + return (text_color.value() > window_color.value()); +#else + // TODO: Windows + return false; +#endif // __linux__ +} + GMainWindow::GMainWindow(bool has_broken_vulkan) : ui{std::make_unique()}, system{std::make_unique()}, input_subsystem{std::make_shared()}, @@ -274,6 +286,13 @@ GMainWindow::GMainWindow(bool has_broken_vulkan) ui->setupUi(this); statusBar()->hide(); + // Check dark mode before a theme is loaded + os_dark_mode = check_dark_mode(); + startup_icon_theme = QIcon::themeName(); + // fallback can only be set once, colorful theme icons are okay on both light/dark + QIcon::setFallbackThemeName(QStringLiteral("colorful")); + QIcon::setFallbackSearchPaths(QStringList(QStringLiteral(":/icons"))); + default_theme_paths = QIcon::themeSearchPaths(); UpdateUITheme(); @@ -3935,8 +3954,21 @@ void GMainWindow::filterBarSetChecked(bool state) { emit(OnToggleFilterBar()); } +static void AdjustLinkColor() { + QPalette new_pal(qApp->palette()); + if (UISettings::IsDarkTheme()) { + new_pal.setColor(QPalette::Link, QColor(0, 190, 255, 255)); + } else { + new_pal.setColor(QPalette::Link, QColor(0, 140, 200, 255)); + } + if (qApp->palette().color(QPalette::Link) != new_pal.color(QPalette::Link)) { + qApp->setPalette(new_pal); + } +} + void GMainWindow::UpdateUITheme() { - const QString default_theme = QStringLiteral("default"); + const QString default_theme = + QString::fromUtf8(UISettings::themes[static_cast(Config::default_theme)].second); QString current_theme = UISettings::values.theme; QStringList theme_paths(default_theme_paths); @@ -3944,6 +3976,23 @@ void GMainWindow::UpdateUITheme() { current_theme = default_theme; } +#ifdef _WIN32 + QIcon::setThemeName(current_theme); + AdjustLinkColor(); +#else + if (current_theme == QStringLiteral("default") || current_theme == QStringLiteral("colorful")) { + QIcon::setThemeName(current_theme == QStringLiteral("colorful") ? current_theme + : startup_icon_theme); + QIcon::setThemeSearchPaths(theme_paths); + if (check_dark_mode()) { + current_theme = QStringLiteral("default_dark"); + } + } else { + QIcon::setThemeName(current_theme); + QIcon::setThemeSearchPaths(QStringList(QStringLiteral(":/icons"))); + AdjustLinkColor(); + } +#endif if (current_theme != default_theme) { QString theme_uri{QStringLiteral(":%1/style.qss").arg(current_theme)}; QFile f(theme_uri); @@ -3966,17 +4015,6 @@ void GMainWindow::UpdateUITheme() { qApp->setStyleSheet({}); setStyleSheet({}); } - - QPalette new_pal(qApp->palette()); - if (UISettings::IsDarkTheme()) { - new_pal.setColor(QPalette::Link, QColor(0, 190, 255, 255)); - } else { - new_pal.setColor(QPalette::Link, QColor(0, 140, 200, 255)); - } - qApp->setPalette(new_pal); - - QIcon::setThemeName(current_theme); - QIcon::setThemeSearchPaths(theme_paths); } void GMainWindow::LoadTranslation() { @@ -4022,6 +4060,26 @@ void GMainWindow::SetDiscordEnabled([[maybe_unused]] bool state) { discord_rpc->Update(); } +void GMainWindow::changeEvent(QEvent* event) { +#ifdef __linux__ + // PaletteChange event appears to only reach so far into the GUI, explicitly asking to + // UpdateUITheme is a decent work around + if (event->type() == QEvent::PaletteChange) { + const QPalette test_palette(qApp->palette()); + const QString current_theme = UISettings::values.theme; + // Keeping eye on QPalette::Window to avoid looping. QPalette::Text might be useful too + static QColor last_window_color; + const QColor window_color = test_palette.color(QPalette::Active, QPalette::Window); + if (last_window_color != window_color && (current_theme == QStringLiteral("default") || + current_theme == QStringLiteral("colorful"))) { + UpdateUITheme(); + } + last_window_color = window_color; + } +#endif // __linux__ + QWidget::changeEvent(event); +} + #ifdef main #undef main #endif diff --git a/src/yuzu/main.h b/src/yuzu/main.h index e13b38b24..bea243ee2 100644 --- a/src/yuzu/main.h +++ b/src/yuzu/main.h @@ -251,6 +251,7 @@ private: bool ConfirmForceLockedExit(); void RequestGameExit(); void RequestGameResume(); + void changeEvent(QEvent* event) override; void closeEvent(QCloseEvent* event) override; #ifdef __linux__ @@ -392,6 +393,10 @@ private: QTimer mouse_hide_timer; QTimer mouse_center_timer; + QString startup_icon_theme; + bool os_dark_mode = false; + bool check_dark_mode(); + // FS std::shared_ptr vfs; std::unique_ptr provider;