RareSettings: Use QDesktopServices to open the file manager for us
This commit is contained in:
parent
6be9eec3ef
commit
b7b1bc6406
|
@ -1,11 +1,9 @@
|
||||||
import os
|
import os
|
||||||
import platform
|
|
||||||
import subprocess
|
|
||||||
import locale
|
import locale
|
||||||
import sys
|
|
||||||
from logging import getLogger
|
from logging import getLogger
|
||||||
|
|
||||||
from PyQt5.QtCore import QSettings, Qt, pyqtSlot
|
from PyQt5.QtCore import QSettings, Qt, pyqtSlot, QUrl
|
||||||
|
from PyQt5.QtGui import QDesktopServices
|
||||||
from PyQt5.QtWidgets import QWidget, QMessageBox
|
from PyQt5.QtWidgets import QWidget, QMessageBox
|
||||||
|
|
||||||
from rare.components.tabs.settings.widgets.rpc import RPCSettings
|
from rare.components.tabs.settings.widgets.rpc import RPCSettings
|
||||||
|
@ -145,6 +143,7 @@ class RareSettings(QWidget, Ui_RareSettings):
|
||||||
# self.log_dir_clean_button.setVisible(False)
|
# self.log_dir_clean_button.setVisible(False)
|
||||||
# self.log_dir_size_label.setVisible(False)
|
# self.log_dir_size_label.setVisible(False)
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
def clean_logdir(self):
|
def clean_logdir(self):
|
||||||
for f in log_dir().iterdir():
|
for f in log_dir().iterdir():
|
||||||
try:
|
try:
|
||||||
|
@ -159,6 +158,7 @@ class RareSettings(QWidget, Ui_RareSettings):
|
||||||
)
|
)
|
||||||
self.log_dir_size_label.setText(format_size(size))
|
self.log_dir_size_label.setText(format_size(size))
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
def create_start_menu_link(self):
|
def create_start_menu_link(self):
|
||||||
try:
|
try:
|
||||||
if not os.path.exists(self.start_menu_link):
|
if not os.path.exists(self.start_menu_link):
|
||||||
|
@ -176,6 +176,7 @@ class RareSettings(QWidget, Ui_RareSettings):
|
||||||
self.tr("Permission error, cannot remove {}").format(self.start_menu_link),
|
self.tr("Permission error, cannot remove {}").format(self.start_menu_link),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
def create_desktop_link(self):
|
def create_desktop_link(self):
|
||||||
try:
|
try:
|
||||||
if not os.path.exists(self.desktop_link):
|
if not os.path.exists(self.desktop_link):
|
||||||
|
@ -220,18 +221,16 @@ class RareSettings(QWidget, Ui_RareSettings):
|
||||||
view = LibraryView(self.view_combo.itemData(index, Qt.UserRole))
|
view = LibraryView(self.view_combo.itemData(index, Qt.UserRole))
|
||||||
self.settings.setValue(options.library_view.key, int(view))
|
self.settings.setValue(options.library_view.key, int(view))
|
||||||
|
|
||||||
@staticmethod
|
@pyqtSlot()
|
||||||
def open_directory():
|
def open_directory(self):
|
||||||
if platform.system() == "Windows":
|
QDesktopServices.openUrl(QUrl(f"file://{log_dir()}"))
|
||||||
os.startfile(log_dir()) # pylint: disable=E1101
|
|
||||||
else:
|
|
||||||
opener = "open" if sys.platform == "darwin" else "xdg-open"
|
|
||||||
subprocess.Popen([opener, log_dir()])
|
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
def save_window_size(self):
|
def save_window_size(self):
|
||||||
self.settings.setValue(options.save_size.key, self.save_size.isChecked())
|
self.settings.setValue(options.save_size.key, self.save_size.isChecked())
|
||||||
self.settings.remove(options.window_size.key)
|
self.settings.remove(options.window_size.key)
|
||||||
|
|
||||||
|
@pyqtSlot(int)
|
||||||
def on_lang_changed(self, index: int):
|
def on_lang_changed(self, index: int):
|
||||||
lang_code = self.lang_select.itemData(index, Qt.UserRole)
|
lang_code = self.lang_select.itemData(index, Qt.UserRole)
|
||||||
if lang_code == locale.getlocale()[0]:
|
if lang_code == locale.getlocale()[0]:
|
||||||
|
|
Loading…
Reference in a new issue