From 610b37413e950686b61abc0adb588d7e87ff9b36 Mon Sep 17 00:00:00 2001 From: SIDDHANT DIXIT Date: Fri, 23 Jul 2021 22:42:43 +0530 Subject: [PATCH] Updated Dark Mode Added fusion dark palette. --- desktop/src/onionshare/__init__.py | 29 +++++++++++++++++++++-- desktop/src/onionshare/gui_common.py | 2 +- desktop/src/onionshare/settings_dialog.py | 2 ++ 3 files changed, 30 insertions(+), 3 deletions(-) diff --git a/desktop/src/onionshare/__init__.py b/desktop/src/onionshare/__init__.py index 815dff0b..b97ca0fc 100644 --- a/desktop/src/onionshare/__init__.py +++ b/desktop/src/onionshare/__init__.py @@ -28,6 +28,9 @@ import psutil import getpass from PySide2 import QtCore, QtWidgets, QtGui +from PySide2.QtCore import Slot,Qt +from PySide2.QtGui import QPalette, QColor + from onionshare_cli.common import Common from onionshare_cli.settings import Settings @@ -48,8 +51,12 @@ class Application(QtWidgets.QApplication): QtWidgets.QApplication.__init__(self, sys.argv) # Check color mode on starting the app - # self.color_mode = self.get_color_mode() self.color_mode = self.get_color_mode(common) + + # Enable Dark Theme + if self.color_mode == "dark": + self.setDarkMode() + self.installEventFilter(self) def eventFilter(self, obj, event): @@ -67,8 +74,26 @@ class Application(QtWidgets.QApplication): return False return True + def setDarkMode(self): + self.setStyle("Fusion") + dark_palette = QPalette() + dark_palette.setColor(QPalette.Window, QColor(53, 53, 53)) + dark_palette.setColor(QPalette.WindowText, Qt.white) + dark_palette.setColor(QPalette.Base, QColor(25, 25, 25)) + dark_palette.setColor(QPalette.AlternateBase, QColor(53, 53, 53)) + dark_palette.setColor(QPalette.ToolTipBase, Qt.white) + dark_palette.setColor(QPalette.ToolTipText, Qt.white) + dark_palette.setColor(QPalette.Text, Qt.white) + dark_palette.setColor(QPalette.Button, QColor(53, 53, 53)) + dark_palette.setColor(QPalette.ButtonText, Qt.white) + dark_palette.setColor(QPalette.BrightText, Qt.red) + dark_palette.setColor(QPalette.Link, QColor(42, 130, 218)) + dark_palette.setColor(QPalette.Highlight, QColor(42, 130, 218)) + dark_palette.setColor(QPalette.HighlightedText, Qt.black) + self.setPalette(dark_palette) + self.setStyleSheet("QToolTip { color: #ffffff; background-color: #2a82da; border: 1px solid white; }") + def get_color_mode(self, common): - # return "dark" if self.is_dark_mode() else "light" curr_settings = Settings(common) curr_settings.load() current_theme = curr_settings.get("theme") diff --git a/desktop/src/onionshare/gui_common.py b/desktop/src/onionshare/gui_common.py index 3cc353cf..441aff25 100644 --- a/desktop/src/onionshare/gui_common.py +++ b/desktop/src/onionshare/gui_common.py @@ -89,7 +89,7 @@ class GuiCommon: new_tab_button_text_color = "#4e0d4e" if color_mode == "dark": header_color = "#F2F2F2" - # title_color = "#F2F2F2" + title_color = "#F2F2F2" stop_button_color = "#C32F2F" new_tab_button_background = "#5F5F5F" new_tab_button_border = "#878787" diff --git a/desktop/src/onionshare/settings_dialog.py b/desktop/src/onionshare/settings_dialog.py index 72cc7fab..a29c4ee8 100644 --- a/desktop/src/onionshare/settings_dialog.py +++ b/desktop/src/onionshare/settings_dialog.py @@ -19,6 +19,8 @@ along with this program. If not, see . """ from PySide2 import QtCore, QtWidgets, QtGui +from PySide2.QtCore import Slot,Qt +from PySide2.QtGui import QPalette, QColor import sys import platform import datetime