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
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