Commit Graph
661 Commits
Author SHA1 Message Date
sankalp 3a05e123e7 refactor(src/shared): adjust default bezier curve for smoother scrolling
Use more balanced control points to improve animation responsiveness and visual flow
2026-06-24 12:53:11 +05:45
sankalp 287ae5f44c refactor(src/utils): refine desktop file name lookup and fallback handling
Use resolved name when present, else fall back to title; return None when no desktop file found
2026-06-24 12:52:54 +05:45
sankalp 0594759fed feat(services): streamline DBus menu caching and notification handling
- Consolidate logger disabling, cache empty menus with TTL, and move name resolution to a dedicated resolver to reduce duplication and improve performance
2026-06-24 12:52:36 +05:45
sankalp 8ec0ae267d chore(root): add ruff per-file ignore and fabric source in uv
Prevent lint errors in src/main.py and lock Fabric to a specific commit.
2026-06-24 12:52:17 +05:45
sankalp bbb250c6aa refactor(src/styles): reformat constant definitions
Adjust @define statements to proper syntax and remove outdated comment markers, improving readability and consistency.
2026-06-24 08:38:34 +05:45
sankalp 14580b4d68 refactor(service): enhance menu cache handling and emission sequence checks
Use lock to protect cache access, capture sequence for race‑safe idle emission, and check seq against extraction_seq to prevent stale menu updates.
2026-06-24 08:38:17 +05:45
sankalp bf47875b84 refactor(src/utils): remove GTK menu fallback and add invalidate on ActionMenuClient
Drop unused GTK menu parsing to simplify maintenance and add invalidate hook to clear cached items when menu state changes.
2026-06-23 14:31:12 +05:45
sankalp ab7ac85b80 refactor(src/services): use mutable list[int] for shared node counter in bounded DFS
Avoid resetting the counter per recursion level by using a mutable list; adds clarifying comments about the shared state.
2026-06-23 14:30:49 +05:45
sankalp bc07920f1a refactor(src/window/panel/components): adjust top-level menu filtering to respect visibility
Ensure only visible top-level items are considered
Prevent hidden items from appearing in the menu hierarchy
2026-06-23 14:29:06 +05:45
sankalp 2afbe05229 feat(src/utils): add ActionMenuClient and depth limits for menu parsing
Add flat GTK Action handling and guard DBus menu depth to prevent recursion and overflow.
2026-06-23 14:28:47 +05:45
sankalp b4d011d158 feat(src/services): deduplicate in-flight menu extractions
Prevents duplicate background extraction threads for the same WM class PID, avoiding race conditions and unnecessary work.
2026-06-23 14:28:29 +05:45
sankalp d4d087604b refactor(config): remove GTK_MODULES env var causing Gdk-CRITICAL assertion failures
Remove global env setting that interferes with Modus's GTK windows.
2026-06-23 14:11:43 +05:45
sankalp 6707e1e830 feat(src/window): migrate device monitoring to map/unmap events
Ensure monitoring starts only when the widget is shown and stops on hide, preventing timer leaks and unnecessary refreshes
2026-06-23 14:11:25 +05:45
sankalp 01fed4c52f feat(src/utils): centralize SESSION bus and shrink DBusMenuItem with __slots__
Prevent duplicate bus connections and cut per-instance memory usage.
2026-06-23 14:11:07 +05:45
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