Commit Graph
1047 Commits
Author SHA1 Message Date
sankalp d89b392a0e refactor(src): lazy‑load Launcher and refine GlobalMenuService cache invalidation
Prevents premature instance creation and stale empty‑menu cache entries
2026-06-23 14:10:49 +05:45
sankalp 3d8b1b895e feat(root): add libdbusmenu-gtk3 and libdbusmenu-qt5 to PACKAGES
Add DBus menu libraries required for proper GTK and Qt integration in the application
2026-06-23 14:10:31 +05:45
sankalp 99d35afa36 feat(src/services): capture target pid early and propagate it through extraction pipeline
Add captured PID to logs, DBus client discovery, and fallback path selection to improve consistency and avoid race conditions; use PID inheritance checks for accurate client matching.
2026-06-22 18:57:41 +05:45
sankalp 5663499f32 feat(src/utils): implement universal DBus + GTK Global Menu Client
Add support for multiple DBus backends and GTK GMenuModel fallback, improve thread safety and caching.
2026-06-22 18:38:24 +05:45
sankalp 09d84598cb feat(src/services): add LRU menu cache and thread‑safe extraction sequencing
Prevent stale UI updates and reduce DBus load by caching menus with automatic eviction when limit exceeded
2026-06-22 18:38:07 +05:45
sankalp ef0b9f0b68 feat(deps): lock fabric to specific commit and add required dependencies
Align with latest stable API and ensure reproducible builds
2026-06-22 17:46:34 +05:45
sankalp e8f3e4dd8b feat(src/utils): expose Gio, GLib, logger from fabric.utils
Use unified imports from fabric.utils instead of gi.repository to simplify imports and align with project convention
2026-06-22 17:46:16 +05:45
sankalp 96bb00c199 refactor(src/services): refactor DBus menu discovery and pre-warm PID cache
Pre-warm DBus PID cache using a ThreadPoolExecutor to instantly resolve service PIDs, centralize registry locking, and improve robustness and performance.
2026-06-22 17:45:56 +05:45
sankalp 14f360eb3a feat(root): add appmenu-gtk-module
Add appmenu-gtk-module to PACKAGES to enable proper desktop menu integration.
2026-06-22 17:45:36 +05:45
sankalp 2a15d71c33 feat(globalmenu): got a prototype of working globalmenu for some apps 2026-06-22 15:58:10 +05:45
sankalp dd9cd58106 refactor(src/window/panel/components): simplify visibility toggle in _on_title_button_clicked
Use Toggle for clearer intent
2026-06-17 05:32:42 +05:45
sankalp 754d69a86f feat(src/utils): add required dependenciesfor Wayland support
Add essential libraries for Wayland and system integration.
2026-06-17 05:32:25 +05:45
sankalp c34ade9423 fix(src/shared/window): suppress harmless disconnect errors in logger
Reduce noise by only logging disconnect errors that aren't "nothing connected"
2026-06-17 05:32:07 +05:45
sankalp f4d0f46e35 feat(src/shared/dialogs): set wmclass for about dialog
Ensure the About dialog specifies a proper WM_CLASS for correct window identification
2026-06-17 05:31:50 +05:45
sankalp b1b9dcc061 fix(src/window/osd/components): improve error handling by logging exceptions
To aid debugging and visibility of errors in OSD components.
2026-06-17 05:21:53 +05:45
sankalp 9cbde2c58f refactor(src/window):improve error handling with logging 2026-06-17 05:21:36 +05:45
sankalp 420688e9a7 feat(src/utils): replace printwith logger.error for consistent error logging
Use logger.error across utils to centralize error handling and allow configurable logging levels.
2026-06-17 05:21:19 +05:45
sankalp 1aed6ea816 refactor(src/shared): replace print statements with logger.error
Use centralized logging instead of stdout prints to improve observability and consistency
2026-06-17 05:21:02 +05:45
sankalp 48231b3bc2 feat(src/services): improve error handlingwith detailed logging
Replace silent exception swallowing with explicit logging via logger.error to aid debugging and observability
2026-06-17 05:20:44 +05:45
sankalp 260d215b6b refactor(src/window/controlcenter): simplify bluetooth status handling and UI updates
Cleanup duplicated UI updates and improve signal handling logic for better stability.
2026-06-17 05:15:03 +05:45
sankalp 13c3036a62 feat(src/shared/window): add snap_to_size method for instant resizing without animation
Allows resizing to a specific height instantly without animation
2026-06-17 05:14:46 +05:45
sankalp 6c478710dc refactor(src/window/panel/components): remove redundant hide_control_center call in on_network_direct_changed
Remove redundant hide_control_center(self.wifi_window) which had no effect after UI redesign; simplifies logic and avoids unnecessary side effects.
2026-06-17 04:53:01 +05:45
sankalp a382f73795 feat(src/window/controlcenter): enhance bluetooth handle with fallback and enum
Introduce BTState enum, use rfkill fallback for enable/disable, and preserve network slots to avoid UI jitter.
2026-06-17 04:52:44 +05:45
sankalp 929e525589 feat(src/shared/window): addanimated scrollable window and close_applet cleanup
Introduce Animator‑driven height transitions for smoother scrolling and ensure proper cleanup when the applet window closes.
2026-06-17 04:52:26 +05:45
sankalp bceebd646c feat(src/shared/widgets):add bezier_curve property and trigger animation on active 2026-06-17 04:52:09 +05:45
sankalp 32080ab17f feat(src/services): add bluetooth device proxy and wifi connection logic
Implemented robust BluetoothDevice proxy handling and enhanced Wi‑Fi reconnection with async callbacks and error handling.
2026-06-17 04:51:51 +05:45
sankalp 7a5d90829a refactor(src/window/controlcenter): centralize fallback artwork path and streamline UI updates
Replaced get_relative_path with PLAYER_FALLBACK_ART and simplified image handling via apply_player_art.
2026-06-17 03:33:45 +05:45
sankalp bd78ed9aab feat(src/styles): add dark theme styling and widget CSS
Add CSS for about, battery, calendar, and system info widgets, including layout adjustments, color theming, and interactive component styling.
2026-06-17 03:20:46 +05:45
sankalp 9231460c6b chore(src/shared/styles): delete legacytheme and widget CSS 2026-06-17 03:20:29 +05:45
sankalp a539d02821 refactor(src): adjustpath references from shared/styles to styles
Simplify style file paths by removing redundant "shared" prefix, aligning with updated directory layout.
2026-06-17 03:20:11 +05:45
sankalp 1def82aeb9 refactor(src/window/controlcenter): simplify MPRIS handling and add aggressive cache cleanupRemoved unused imports, merged player manager, and immediately clean cache to prevent leaks 2026-06-17 03:18:24 +05:45
sankalp fa2c157663 fix(src/shared/window): fix window visibility check and margin duplication
Fixes logic error causing popup window to be created when invisible and prevents redundant margin updates.
2026-06-17 03:18:06 +05:45
sankalp bffedbe3ae feat(src/shared/styles): narrowmin-width to match standard player width
Reduced min-width to align with design specifications and maintain consistent UI across platforms.
2026-06-17 03:17:49 +05:45
sankalp e4d139d541 refactor(src/services): rename MprisPlayer to PlayerService and streamline MPRIS integration
Remove legacy PlayerManager implementation and simplify signal handling for DBus players
2026-06-17 03:17:31 +05:45
sankalp 66af39f247 refactor(src/window/controlcenter): migrate WiFi handling to use │
│ network_service abstraction                                                  │
│                                                                              │
│ Updated logic to delegate network operations through NetworkService, renamed │
│ signal listeners, and simplified connectivity checks focusing on service     │
│ availability rather than session object emission.
2026-06-17 02:01:35 +05:45
sankalp 1ab30f6915 refactor(src/window/controlcenter): migrate WiFi handling to use network_service abstraction
Updated logic to delegate network operations through NetworkService, renamed signal listeners, and simplified connectivity checks focusing on service availability rather than session object emission.
2026-06-17 02:00:44 +05:45
sankalp dc150aee81 refactor(src/services): drop unused NetworkClient and simplify network handling
Prevent unused NetworkClient import and remove extensive network code that was blocking release; streamline to only Wifi service and needed helpers.
2026-06-17 02:00:26 +05:45
sankalp 9907acbce2 refactor(src/services): simplify battery.py imports and drop unused gi dependencies
Remove unused gi imports, streamline dependencies, and align with the updated module structure.
2026-06-17 01:49:16 +05:45
sankalp 87884eef09 feat(src/shared): add flat scale widget and smooth-switch styling
Implement animated flat scale widget with CSS styling and smooth-switch UI enhancements
2026-06-17 01:46:19 +05:45
sankalp 687c5d6bcf refactor(src/window/osd): replace Brightness.get_initial() with Brightness() to drop encapsulationRemove Brightness.get_initial() call and instantiate Brightness directly, simplifying the API and making the service easier to test and extend. 2026-06-17 01:46:02 +05:45
sankalp f78534dce0 refactor(src/window): migrate control center windows to AppletWindow and simplify UI
Replace Window base with AppletWindow for consistency, switch to FlatScale, and streamline mouse capture handling.
2026-06-17 01:45:43 +05:45
sankalp b8d3e74afd feat(src/services): rename BatteryService to Battery and add availability properties
Rename service to Battery, expose availability, charging, discharging properties and simplify interface for clarity
2026-06-17 01:45:24 +05:45
sankalp 400b8db954 feat(root): add ddcutil to install script
Add support for monitor DDC/CI control via ddcutil.
2026-06-17 01:45:06 +05:45
sankalp 850c41cddb Merge branch 'dev' of github.com:S4NKALP/Modus into dev 2026-06-17 01:26:57 +05:45
sankalp 0e41e5bb93 Customize modus.lua 2026-06-17 01:26:53 +05:45
sankalp 2a81a27ace feat(src/window/panel/components): improve Hyprland command dispatch syntax and workspace navigation
Use quoted commands and explicit method calls to avoid shell parsing issues.
2026-06-16 22:24:56 +05:45
sankalp d887e22f0b refactor(src/window/launcher/plugins): migrate subprocess calls to exec_shell_command_asyncUse unified async execution and updated hyprctl dispatch syntax 2026-06-16 22:24:36 +05:45
sankalp 7371b4fcb8 refactor(src/window): replace subprocess.Popen with exec_shell_command_async in dock.py
Use async-friendly API and drop shell=True to enhance safety and performance.
2026-06-16 22:24:19 +05:45
sankalp 0c266e9150 refactor(src/shared/styles): replace var(--radius-*) with apply(radius-*) throughout shared styles
Use apply() to align with the updated CSS variable system and ensure consistent radius theming
2026-06-16 22:24:02 +05:45
sankalp e6a4c48b2f feat(root): add hyprland integration and update dependenciesUpdate Fabric dependency to latest commit, pin versions in requirements.txt, enable Windows Subsystem for Linux support and add monkeypatch for hyprland dispatcher to ensure correct Lua calls 2026-06-16 22:23:44 +05:45