fix: resolve wifi crashes, shell injections, race conditions, and add debug mode

- Remove transient NEED_AUTH/DISCONNECTED error paths from wifi connect
- Guard double-callback in connect_wifi_bssid/connect_wifi_with_password
- Shell-quote user paths in wallpaper, screenshot, screenrecorder services
- Fix OSD hide-timer use-after-free and applet_window stale source ID
- Fix brightness poll timer leak on read failure
- Fix spotlight search stale idle source removal
- Lock dbusmenu _cache mutation under _registry_lock
- Fix entry.revision written outside _registry_lock scope
- Add fabric-cli exec wrapper for lock screen (lock_screen.lock())
- Replace hyprlock with lock screen in power menu and dropdown
- Add debug mode toggle in settings (controls log verbosity)
- Add diagnostic logging to globalmenu click chain
This commit is contained in:
sankalp committed 2026-07-16 11:47:53 +05:45
1 parent 4378959131
commit a47abda55a
26 files changed
+224 -57

No files matched your search

+16
View File
@@ -32,6 +32,7 @@ from shared.data import APP_NAME, load_config
from utils.functions import set_process_name
from window.desktop.widget import Deskwidgets
from window.dock import Dock
from window.lock import LockScreenWrapper
from window.notification.notification import ModusNoti
from window.osd.main import OSDWindow
from window.panel.main import Panel
@@ -54,6 +55,20 @@ def main():
set_process_name(APP_NAME)
load_config()
from services.config import config
_debug = config().get("debug", False)
if not _debug:
logger.disable("modus_plugin_builtin_emoji")
else:
logger.enable("fabric")
logger.enable("services")
logger.enable("window")
logger.enable("utils")
logger.enable("window.globalmenu")
switcher = ApplicationSwitcher()
panel = Panel()
modusnoti = ModusNoti()
@@ -113,6 +128,7 @@ def main():
__main__.dock = dock
__main__.osd = osd
__main__.screencapture = screencapture
__main__.lock_screen = LockScreenWrapper()
__main__.switch_keyboard_layout = KeyboardLayout.switch_keyboard_layout
app.run()