dev 02020935
This commit is contained in:
1
Pipfile
1
Pipfile
@@ -7,6 +7,7 @@ name = "pypi"
|
|||||||
pyside6 = "==6.6.1"
|
pyside6 = "==6.6.1"
|
||||||
requests = "==2.31.0"
|
requests = "==2.31.0"
|
||||||
wmi = "==1.5.1"
|
wmi = "==1.5.1"
|
||||||
|
pyinstaller = "==6.3.0"
|
||||||
|
|
||||||
[dev-packages]
|
[dev-packages]
|
||||||
|
|
||||||
|
|||||||
74
Pipfile.lock
generated
74
Pipfile.lock
generated
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"_meta": {
|
"_meta": {
|
||||||
"hash": {
|
"hash": {
|
||||||
"sha256": "9fb9aefd0be8259a8edb7585a24d4f9480d2ffccf9320d3971b34c4aa306b7ef"
|
"sha256": "c9e6c224ff1fb7073100c794e46ce72371b7c482473c9704fc5709aefe9f1f33"
|
||||||
},
|
},
|
||||||
"pipfile-spec": 6,
|
"pipfile-spec": 6,
|
||||||
"requires": {
|
"requires": {
|
||||||
@@ -16,13 +16,20 @@
|
|||||||
]
|
]
|
||||||
},
|
},
|
||||||
"default": {
|
"default": {
|
||||||
|
"altgraph": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:1b5afbb98f6c4dcadb2e2ae6ab9fa994bbb8c1d75f4fa96d340f9437ae454406",
|
||||||
|
"sha256:642743b4750de17e655e6711601b077bc6598dbfa3ba5fa2b2a35ce12b508dff"
|
||||||
|
],
|
||||||
|
"version": "==0.17.4"
|
||||||
|
},
|
||||||
"certifi": {
|
"certifi": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:9b469f3a900bf28dc19b8cfbf8019bf47f7fdd1a65a1d4ffb98fc14166beb4d1",
|
"sha256:0569859f95fc761b18b45ef421b1290a0f65f147e92a1e5eb3e635f9a5e4e66f",
|
||||||
"sha256:e036ab49d5b79556f99cfc2d9320b34cfbe5be05c5871b51de9329f0603b0474"
|
"sha256:dc383c07b76109f368f6106eee2b593b04a011ea4d55f652c6ca24a754d1cdd1"
|
||||||
],
|
],
|
||||||
"markers": "python_version >= '3.6'",
|
"markers": "python_version >= '3.6'",
|
||||||
"version": "==2023.11.17"
|
"version": "==2024.2.2"
|
||||||
},
|
},
|
||||||
"charset-normalizer": {
|
"charset-normalizer": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
@@ -128,6 +135,49 @@
|
|||||||
"markers": "python_version >= '3.5'",
|
"markers": "python_version >= '3.5'",
|
||||||
"version": "==3.6"
|
"version": "==3.6"
|
||||||
},
|
},
|
||||||
|
"packaging": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:048fb0e9405036518eaaf48a55953c750c11e1a1b68e0dd1a9d62ed0c092cfc5",
|
||||||
|
"sha256:8c491190033a9af7e1d931d0b5dacc2ef47509b34dd0de67ed209b5203fc88c7"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.7'",
|
||||||
|
"version": "==23.2"
|
||||||
|
},
|
||||||
|
"pefile": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:82e6114004b3d6911c77c3953e3838654b04511b8b66e8583db70c65998017dc",
|
||||||
|
"sha256:da185cd2af68c08a6cd4481f7325ed600a88f6a813bad9dea07ab3ef73d8d8d6"
|
||||||
|
],
|
||||||
|
"markers": "sys_platform == 'win32'",
|
||||||
|
"version": "==2023.2.7"
|
||||||
|
},
|
||||||
|
"pyinstaller": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:0597fb04337695e5cc5250253e0655530bf14f264b7a5b7d219cc65f6889c4bd",
|
||||||
|
"sha256:156b32ba943e0090bcc68e40ae1cb68fd92b7f1ab6fe0bdf8faf3d3cfc4e12dd",
|
||||||
|
"sha256:1eadbd1fae84e2e6c678d8b4ed6a232ec5c8fe3a839aea5a3071c4c0282f98cc",
|
||||||
|
"sha256:41c937fe8f07ae02009b3b5a96ac3eb0800a4f8a97af142d4100060fe2135bb9",
|
||||||
|
"sha256:75a6f2a6f835a2e6e0899d10e60c10caf5defd25aced38b1dd48fbbabc89de07",
|
||||||
|
"sha256:886b3b995b674905a20ad5b720b47cc395897d7b391117831027a4c8c5d67a58",
|
||||||
|
"sha256:914d4c96cc99472e37ac552fdd82fbbe09e67bb592d0717fcffaa99ea74273df",
|
||||||
|
"sha256:96c37a1ee5b2fd5bb25c098ef510661d6d17b6515d0b86d8fc93727dd2475ba3",
|
||||||
|
"sha256:abe91106a3bbccc3f3a27af4325676ecdb6f46cb842ac663625002a870fc503b",
|
||||||
|
"sha256:b721d793a33b6d9946c7dd95d3ea7589c0424b51cf1b9fe580f03c544f1336b2",
|
||||||
|
"sha256:de25beb176f73a944758553caacec46cc665bf3910ad8a174706d79cf6e95340",
|
||||||
|
"sha256:e436fcc0ea87c3f132baac916d508c24c84a8f6d8a06c3154fbc753f169b76c7"
|
||||||
|
],
|
||||||
|
"index": "pypi",
|
||||||
|
"markers": "python_version < '3.13' and python_version >= '3.8'",
|
||||||
|
"version": "==6.3.0"
|
||||||
|
},
|
||||||
|
"pyinstaller-hooks-contrib": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:469b5690df53223e2e8abffb2e44d6ee596e7d79d4b1eed9465123b67439875a",
|
||||||
|
"sha256:a7118c1a5c9788595e5c43ad058a7a5b7b6d59e1eceb42362f6ec1f0b61986b0"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.7'",
|
||||||
|
"version": "==2024.0"
|
||||||
|
},
|
||||||
"pyside6": {
|
"pyside6": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:0a67587c088cb80e90d4ce3023b02466ea858c93a6dc9c4e062b13314e03d464",
|
"sha256:0a67587c088cb80e90d4ce3023b02466ea858c93a6dc9c4e062b13314e03d464",
|
||||||
@@ -178,6 +228,14 @@
|
|||||||
],
|
],
|
||||||
"version": "==306"
|
"version": "==306"
|
||||||
},
|
},
|
||||||
|
"pywin32-ctypes": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:3426e063bdd5fd4df74a14fa3cf80a0b42845a87e1d1e81f6549f9daec593a60",
|
||||||
|
"sha256:bf490a1a709baf35d688fe0ecf980ed4de11d2b3e37b51e5442587a75d9957e7"
|
||||||
|
],
|
||||||
|
"markers": "sys_platform == 'win32'",
|
||||||
|
"version": "==0.2.2"
|
||||||
|
},
|
||||||
"requests": {
|
"requests": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
|
"sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f",
|
||||||
@@ -187,6 +245,14 @@
|
|||||||
"markers": "python_version >= '3.7'",
|
"markers": "python_version >= '3.7'",
|
||||||
"version": "==2.31.0"
|
"version": "==2.31.0"
|
||||||
},
|
},
|
||||||
|
"setuptools": {
|
||||||
|
"hashes": [
|
||||||
|
"sha256:385eb4edd9c9d5c17540511303e39a147ce2fc04bc55289c322b9e5904fe2c05",
|
||||||
|
"sha256:be1af57fc409f93647f2e8e4573a142ed38724b8cdd389706a867bb4efcf1e78"
|
||||||
|
],
|
||||||
|
"markers": "python_version >= '3.8'",
|
||||||
|
"version": "==69.0.3"
|
||||||
|
},
|
||||||
"shiboken6": {
|
"shiboken6": {
|
||||||
"hashes": [
|
"hashes": [
|
||||||
"sha256:072c35c4fe46ec13b364d9dc47b055bb2277ee3aeaab18c23650280ec362f62a",
|
"sha256:072c35c4fe46ec13b364d9dc47b055bb2277ee3aeaab18c23650280ec362f62a",
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ class DaShowProfiles(QtWidgets.QDialog):
|
|||||||
|
|
||||||
def __init__(self,
|
def __init__(self,
|
||||||
browser: str,
|
browser: str,
|
||||||
is_chrome_compat: bool,
|
is_compat: bool,
|
||||||
profiles_data: ProfilesData,
|
profiles_data: ProfilesData,
|
||||||
ext_id: str,
|
ext_id: str,
|
||||||
ext_name: str,
|
ext_name: str,
|
||||||
@@ -71,7 +71,7 @@ class DaShowProfiles(QtWidgets.QDialog):
|
|||||||
self.setWindowTitle(ext_name)
|
self.setWindowTitle(ext_name)
|
||||||
self.setWindowIcon(ext_icon)
|
self.setWindowIcon(ext_icon)
|
||||||
self.browser = browser
|
self.browser = browser
|
||||||
self.is_chrome_compat = is_chrome_compat
|
self.is_compat = is_compat
|
||||||
|
|
||||||
self.process = QtCore.QProcess(self)
|
self.process = QtCore.QProcess(self)
|
||||||
|
|
||||||
@@ -132,7 +132,7 @@ class DaShowProfiles(QtWidgets.QDialog):
|
|||||||
def on_pbn_delete_selected_clicked(self):
|
def on_pbn_delete_selected_clicked(self):
|
||||||
us = QtCore.QSettings()
|
us = QtCore.QSettings()
|
||||||
user_data_path = str(us.value(f"{self.browser}Data", ""))
|
user_data_path = str(us.value(f"{self.browser}Data", ""))
|
||||||
if self.browser == "Chrome" and self.is_chrome_compat:
|
if self.is_compat:
|
||||||
pref_name = "Preferences"
|
pref_name = "Preferences"
|
||||||
else:
|
else:
|
||||||
pref_name = "Secure Preferences"
|
pref_name = "Secure Preferences"
|
||||||
|
|||||||
33
main.py
33
main.py
@@ -7,7 +7,7 @@ from mw_dailycheck import MwDailyCheck
|
|||||||
|
|
||||||
import daily_check_rc
|
import daily_check_rc
|
||||||
|
|
||||||
version = (0, 1, 0)
|
version = (0, 2, 0)
|
||||||
|
|
||||||
ORG_NAME = "JnPrograms"
|
ORG_NAME = "JnPrograms"
|
||||||
APP_NAME = "DailyCheck"
|
APP_NAME = "DailyCheck"
|
||||||
@@ -18,14 +18,14 @@ def set_default_settings():
|
|||||||
user_path = os.path.expanduser("~")
|
user_path = os.path.expanduser("~")
|
||||||
user_data_path_map = {
|
user_data_path_map = {
|
||||||
"win32": {
|
"win32": {
|
||||||
"Chrome": Path(user_path, r"AppData\Local\Google\Chrome\User Data"),
|
"Chrome": str(Path(user_path, r"AppData\Local\Google\Chrome\User Data")),
|
||||||
"Edge": Path(user_path, r"AppData\Local\Microsoft\Edge\User Data"),
|
"Edge": str(Path(user_path, r"AppData\Local\Microsoft\Edge\User Data")),
|
||||||
"Brave": Path(user_path, r"AppData\Local\BraveSoftware\Brave-Browser\User Data"),
|
"Brave": str(Path(user_path, r"AppData\Local\BraveSoftware\Brave-Browser\User Data")),
|
||||||
},
|
},
|
||||||
"darwin": {
|
"darwin": {
|
||||||
"Chrome": Path(user_path, "Library/Application Support/Google/Chrome"),
|
"Chrome": str(Path(user_path, "Library/Application Support/Google/Chrome")),
|
||||||
"Edge": Path(user_path, "Library/Application Support/Microsoft Edge"),
|
"Edge": str(Path(user_path, "Library/Application Support/Microsoft Edge")),
|
||||||
"Brave": Path(user_path, "Library/Application Support/BraveSoftware/Brave-Browser"),
|
"Brave": str(Path(user_path, "Library/Application Support/BraveSoftware/Brave-Browser")),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
exec_path_map = {
|
exec_path_map = {
|
||||||
@@ -42,13 +42,20 @@ def set_default_settings():
|
|||||||
}
|
}
|
||||||
user_data_path = user_data_path_map[plat]
|
user_data_path = user_data_path_map[plat]
|
||||||
exec_path = exec_path_map[plat]
|
exec_path = exec_path_map[plat]
|
||||||
|
settings_map = {
|
||||||
|
"ChromeExec": exec_path["Chrome"],
|
||||||
|
"EdgeExec": exec_path["Edge"],
|
||||||
|
"BraveExec": exec_path["Brave"],
|
||||||
|
"ChromeData": user_data_path["Chrome"],
|
||||||
|
"EdgeData": user_data_path["Edge"],
|
||||||
|
"BraveData": user_data_path["Brave"],
|
||||||
|
}
|
||||||
us = QtCore.QSettings()
|
us = QtCore.QSettings()
|
||||||
us.setValue("ChromeExec", exec_path["Chrome"])
|
exist_keys = us.childKeys()
|
||||||
us.setValue("EdgeExec", exec_path["Edge"])
|
for s in settings_map:
|
||||||
us.setValue("BraveExec", exec_path["Brave"])
|
if s not in exist_keys:
|
||||||
us.setValue("ChromeData", user_data_path["Chrome"])
|
us.setValue(s, settings_map[s])
|
||||||
us.setValue("EdgeData", user_data_path["Edge"])
|
# print(f"Add key {s}")
|
||||||
us.setValue("BraveData", user_data_path["Brave"])
|
|
||||||
|
|
||||||
|
|
||||||
def main():
|
def main():
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
# coding: utf8
|
# coding: utf8
|
||||||
import json
|
import json
|
||||||
from pathlib import Path
|
from pathlib import Path
|
||||||
|
from datetime import datetime
|
||||||
from PySide6 import QtWidgets, QtGui, QtCore
|
from PySide6 import QtWidgets, QtGui, QtCore
|
||||||
from wg_basic import WgBasic
|
from wg_basic import WgBasic
|
||||||
from wg_software import WgSoftware
|
from wg_software import WgSoftware
|
||||||
@@ -81,8 +82,8 @@ class MwDailyCheck(QtWidgets.QMainWindow):
|
|||||||
dirname = QtWidgets.QFileDialog.getExistingDirectory(self, "导出未知")
|
dirname = QtWidgets.QFileDialog.getExistingDirectory(self, "导出未知")
|
||||||
if len(dirname) == 0:
|
if len(dirname) == 0:
|
||||||
return
|
return
|
||||||
|
now = datetime.strftime(datetime.now(), "%y%m%d%H%M")
|
||||||
ex_file = Path(dirname, f"未知信息.json")
|
ex_file = Path(dirname, f"未知信息{now}.json")
|
||||||
if accept_warning(self, ex_file.exists(), "警告", "文件已存在,确认覆盖吗?"):
|
if accept_warning(self, ex_file.exists(), "警告", "文件已存在,确认覆盖吗?"):
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -70,10 +70,12 @@ def get_extension_icon_path(ext_icons: dict[str, str], ext_path: str, profile_pa
|
|||||||
icon_file = icon_file[1:]
|
icon_file = icon_file[1:]
|
||||||
|
|
||||||
full_path = Path(profile_path, "Extensions", ext_path, icon_file)
|
full_path = Path(profile_path, "Extensions", ext_path, icon_file)
|
||||||
|
if not full_path.exists():
|
||||||
|
return ""
|
||||||
return str(full_path)
|
return str(full_path)
|
||||||
|
|
||||||
|
|
||||||
def scan_extensions(browser: str, is_chrome_compat=False) -> tuple[ExtensionsData, ProfilesData]:
|
def scan_extensions(browser: str, is_compat=False) -> tuple[ExtensionsData, ProfilesData]:
|
||||||
us = QtCore.QSettings()
|
us = QtCore.QSettings()
|
||||||
user_data_path = str(us.value(f"{browser}Data", ""))
|
user_data_path = str(us.value(f"{browser}Data", ""))
|
||||||
if len(user_data_path) == 0 or not Path(user_data_path).exists():
|
if len(user_data_path) == 0 or not Path(user_data_path).exists():
|
||||||
@@ -82,11 +84,13 @@ def scan_extensions(browser: str, is_chrome_compat=False) -> tuple[ExtensionsDat
|
|||||||
profile_data = scan_profiles(user_data_path)
|
profile_data = scan_profiles(user_data_path)
|
||||||
extensions_data: ExtensionsData = {}
|
extensions_data: ExtensionsData = {}
|
||||||
|
|
||||||
if browser == "Chrome" and is_chrome_compat:
|
if is_compat:
|
||||||
pref_file = "Preferences"
|
pref_file = "Preferences"
|
||||||
else:
|
else:
|
||||||
pref_file = "Secure Preferences"
|
pref_file = "Secure Preferences"
|
||||||
|
|
||||||
|
# print(pref_file)
|
||||||
|
|
||||||
for profile_id in profile_data:
|
for profile_id in profile_data:
|
||||||
profile_path = Path(user_data_path, profile_id)
|
profile_path = Path(user_data_path, profile_id)
|
||||||
secure_pref_path = Path(profile_path, pref_file)
|
secure_pref_path = Path(profile_path, pref_file)
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ def extract_win_icon_from_file(icon: str, default: QIcon) -> QIcon:
|
|||||||
icon = icon.replace("'", "")
|
icon = icon.replace("'", "")
|
||||||
if not os.path.exists(icon):
|
if not os.path.exists(icon):
|
||||||
return default
|
return default
|
||||||
if not icon.endswith(("exe", "EXE")):
|
if not icon.endswith(("exe", "EXE", "dll", "DLL")):
|
||||||
return QIcon(icon)
|
return QIcon(icon)
|
||||||
|
|
||||||
large, small = win32gui.ExtractIconEx(icon, 0)
|
large, small = win32gui.ExtractIconEx(icon, 0)
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ class UiWgExtensions(object):
|
|||||||
self.cbx_safe.setChecked(True)
|
self.cbx_safe.setChecked(True)
|
||||||
self.cbx_unsafe.setChecked(True)
|
self.cbx_unsafe.setChecked(True)
|
||||||
self.cbx_unknown.setChecked(True)
|
self.cbx_unknown.setChecked(True)
|
||||||
self.cbx_chrome_compat = QtWidgets.QCheckBox("谷歌兼容模式", window)
|
self.cbx_compat = QtWidgets.QCheckBox("兼容模式", window)
|
||||||
self.pbn_update = QtWidgets.QPushButton("更新", window)
|
self.pbn_update = QtWidgets.QPushButton("更新", window)
|
||||||
self.pbn_settings = QtWidgets.QPushButton("设置", window)
|
self.pbn_settings = QtWidgets.QPushButton("设置", window)
|
||||||
self.hly_top.addWidget(self.cmbx_browsers)
|
self.hly_top.addWidget(self.cmbx_browsers)
|
||||||
@@ -32,7 +32,7 @@ class UiWgExtensions(object):
|
|||||||
self.hly_top.addWidget(self.cbx_unsafe)
|
self.hly_top.addWidget(self.cbx_unsafe)
|
||||||
self.hly_top.addWidget(self.cbx_unknown)
|
self.hly_top.addWidget(self.cbx_unknown)
|
||||||
self.hly_top.addStretch(1)
|
self.hly_top.addStretch(1)
|
||||||
self.hly_top.addWidget(self.cbx_chrome_compat)
|
self.hly_top.addWidget(self.cbx_compat)
|
||||||
self.hly_top.addWidget(self.pbn_update)
|
self.hly_top.addWidget(self.pbn_update)
|
||||||
self.hly_top.addWidget(self.pbn_settings)
|
self.hly_top.addWidget(self.pbn_settings)
|
||||||
|
|
||||||
@@ -51,17 +51,20 @@ class BaseExtensionsListModel(QtCore.QAbstractListModel):
|
|||||||
self.safe_info = {} # type: dict[str, dict]
|
self.safe_info = {} # type: dict[str, dict]
|
||||||
self.blank_icon = QtGui.QIcon(":/images/blank_128.png")
|
self.blank_icon = QtGui.QIcon(":/images/blank_128.png")
|
||||||
|
|
||||||
def update(self, **kwargs):
|
self.last_is_compat = False
|
||||||
|
|
||||||
|
def update(self, is_compat=False):
|
||||||
raise NotImplementedError
|
raise NotImplementedError
|
||||||
|
|
||||||
def update_ext(self, browser: str, is_chrome_compat=False):
|
def update_ext(self, browser: str, is_compat=False):
|
||||||
"""内部用"""
|
"""内部用"""
|
||||||
self.all_profiles.clear()
|
self.all_profiles.clear()
|
||||||
self.all_extensions.clear()
|
self.all_extensions.clear()
|
||||||
self.names.clear()
|
self.names.clear()
|
||||||
self.icons.clear()
|
self.icons.clear()
|
||||||
|
|
||||||
self.all_extensions, self.all_profiles = scan_extensions(browser, is_chrome_compat)
|
self.all_extensions, self.all_profiles = scan_extensions(browser, is_compat)
|
||||||
|
self.last_is_compat = is_compat
|
||||||
for ext_id in self.all_extensions:
|
for ext_id in self.all_extensions:
|
||||||
name = self.all_extensions[ext_id].name
|
name = self.all_extensions[ext_id].name
|
||||||
icon = self.all_extensions[ext_id].icon
|
icon = self.all_extensions[ext_id].icon
|
||||||
@@ -108,20 +111,20 @@ class BaseExtensionsListModel(QtCore.QAbstractListModel):
|
|||||||
|
|
||||||
class ChromeExtensionsListModel(BaseExtensionsListModel):
|
class ChromeExtensionsListModel(BaseExtensionsListModel):
|
||||||
|
|
||||||
def update(self, is_chrome_compat=False):
|
def update(self, is_compat=False):
|
||||||
super().update_ext("Chrome", is_chrome_compat)
|
super().update_ext("Chrome", is_compat)
|
||||||
|
|
||||||
|
|
||||||
class EdgeExtensionsListModel(BaseExtensionsListModel):
|
class EdgeExtensionsListModel(BaseExtensionsListModel):
|
||||||
|
|
||||||
def update(self, **kwargs):
|
def update(self, is_compat=False):
|
||||||
super().update_ext("Edge")
|
super().update_ext("Edge", is_compat)
|
||||||
|
|
||||||
|
|
||||||
class BraveExtensionsListModel(BaseExtensionsListModel):
|
class BraveExtensionsListModel(BaseExtensionsListModel):
|
||||||
|
|
||||||
def update(self, **kwargs):
|
def update(self, is_compat=False):
|
||||||
super().update_ext("Brave")
|
super().update_ext("Brave", is_compat)
|
||||||
|
|
||||||
|
|
||||||
class BrowsersListModel(QtCore.QAbstractListModel):
|
class BrowsersListModel(QtCore.QAbstractListModel):
|
||||||
@@ -168,7 +171,7 @@ class WgExtensions(QtWidgets.QWidget):
|
|||||||
}
|
}
|
||||||
self.switch_model(self.get_current_browser())
|
self.switch_model(self.get_current_browser())
|
||||||
|
|
||||||
self.ui.cbx_chrome_compat.clicked.connect(self.on_cbx_chrome_compat_clicked)
|
self.ui.cbx_compat.clicked.connect(self.on_cbx_compat_clicked)
|
||||||
self.ui.cmbx_browsers.currentTextChanged.connect(self.on_cmbx_browsers_current_text_changed)
|
self.ui.cmbx_browsers.currentTextChanged.connect(self.on_cmbx_browsers_current_text_changed)
|
||||||
self.ui.cbx_safe.clicked.connect(self.on_cbx_safe_clicked)
|
self.ui.cbx_safe.clicked.connect(self.on_cbx_safe_clicked)
|
||||||
self.ui.cbx_unsafe.clicked.connect(self.on_cbx_unsafe_clicked)
|
self.ui.cbx_unsafe.clicked.connect(self.on_cbx_unsafe_clicked)
|
||||||
@@ -199,7 +202,7 @@ class WgExtensions(QtWidgets.QWidget):
|
|||||||
def update_model(self, browser: str):
|
def update_model(self, browser: str):
|
||||||
model = self.ext_list_models[browser]
|
model = self.ext_list_models[browser]
|
||||||
self.show_all_rows()
|
self.show_all_rows()
|
||||||
model.update(is_chrome_compat=self.ui.cbx_chrome_compat.isChecked())
|
model.update(is_compat=self.ui.cbx_compat.isChecked())
|
||||||
self.apply_rows_hidden()
|
self.apply_rows_hidden()
|
||||||
|
|
||||||
def switch_model(self, browser: str):
|
def switch_model(self, browser: str):
|
||||||
@@ -207,15 +210,18 @@ class WgExtensions(QtWidgets.QWidget):
|
|||||||
self.update_model(browser)
|
self.update_model(browser)
|
||||||
self.model_is_initial[browser] = False
|
self.model_is_initial[browser] = False
|
||||||
|
|
||||||
self.ui.lv_extensions.setModel(self.ext_list_models[browser])
|
model = self.ext_list_models[browser]
|
||||||
|
self.show_all_rows()
|
||||||
|
self.ui.lv_extensions.setModel(model)
|
||||||
|
self.apply_rows_hidden()
|
||||||
|
# 单纯的切换浏览器不一定会导致更新数据,所以需要同步兼容模式的设置
|
||||||
|
self.ui.cbx_compat.setChecked(model.last_is_compat)
|
||||||
|
|
||||||
def on_cbx_chrome_compat_clicked(self):
|
def on_cbx_compat_clicked(self):
|
||||||
if self.get_current_browser() == "Chrome":
|
self.update_model(self.get_current_browser())
|
||||||
self.update_model("Chrome")
|
|
||||||
|
|
||||||
def on_cmbx_browsers_current_text_changed(self, text: str):
|
def on_cmbx_browsers_current_text_changed(self, text: str):
|
||||||
self.switch_model(text)
|
self.switch_model(text)
|
||||||
self.ui.cbx_chrome_compat.setVisible(self.ui.cmbx_browsers.currentText() == "Chrome")
|
|
||||||
|
|
||||||
def filters_clicked(self, safe_mark: bool | None, checked: bool):
|
def filters_clicked(self, safe_mark: bool | None, checked: bool):
|
||||||
model = self.ext_list_models[self.get_current_browser()]
|
model = self.ext_list_models[self.get_current_browser()]
|
||||||
@@ -243,7 +249,7 @@ class WgExtensions(QtWidgets.QWidget):
|
|||||||
node = model.all_extensions[ext_id]
|
node = model.all_extensions[ext_id]
|
||||||
da_sp = DaShowProfiles(
|
da_sp = DaShowProfiles(
|
||||||
self.get_current_browser(),
|
self.get_current_browser(),
|
||||||
self.ui.cbx_chrome_compat.isChecked(),
|
self.ui.cbx_compat.isChecked(),
|
||||||
model.all_profiles,
|
model.all_profiles,
|
||||||
ext_id,
|
ext_id,
|
||||||
node.name,
|
node.name,
|
||||||
|
|||||||
Reference in New Issue
Block a user