Commit Graph
28 Commits
Author SHA1 Message Date
sankalp 754cde0278 feat(src/services): add NumLock service and refactor Battery documentation
Add new NumLock service to monitor NumLock LED state changes.
Refactor Battery service documentation and property cache handling.
Update imports to include NumLock.
2026-07-05 23:04:34 +05:45
sankalp 7057c750fb feat(src/services): add trust management for Bluetooth devices 2026-07-05 22:07:19 +05:45
sankalp a402cf436b refactor(src/services): centralize position polling guard methods
Add guard flag `_pos_polling` and wrapper methods `_start_pos_fabricator` and `_stop_pos_fabricator` to prevent multiple fabricator starts.
Update all calls to use the new wrappers for consistent lifecycle management.
2026-07-05 20:56:13 +05:45
sankalp 089cc2c6cd feat: increase polling intervals for MPRIS status and position fabricators
- Change status fabricator interval from 250ms to 5000ms
- Change position fabricator interval from 1000ms to 2000ms
- Update poll_from and on_changed callbacks to match the new intervals
2026-07-05 00:05:09 +05:45
sankalp 01c193bd8e refactor(src/services): simplify TodoService and remove unused ConfigService stop function
Remove redundant import duplication, replace uuid with os.urandom, rename completion_rate to active, update property decorator, and clean up callback handling. Also removed unused stop_config_service function.
2026-07-04 07:26:44 +05:45
sankalp 89eb8db97b feat(config): switch configuration parsing to TOML and add google_lens support 2026-07-04 06:29:38 +05:45
sankalp ce0746eeb2 refactor: simplify DBus menu service discovery and introspection handling 2026-07-03 22:59:26 +05:45
sankalp 8d40ac1a7f refactor(src/services): simplify menu cache implementation and remove unused imports
- Remove time import and unused typing items
- Streamline cache eviction and hit logic
- Replace sentinel handling with simpler checks
- Fix activation environment command arguments
- Improve logging messages and cache hit reporting
2026-07-03 21:31:41 +05:45
sankalp cd1ac21273 refactor(src/services): improve property caching and simplify DBus property handling
Add internal property cache to reduce DBus round‑trips and streamline signal handling.
It also adjusts proxy flags and error handling for better robustness.
2026-06-25 13:15:00 +05:45
sankalp 65d1e43dc9 feat(src/services): bump version to 0.2.0 and update pinned dependencies
Update pinned dependencies and bump version to reflect the new stable release.
2026-06-25 12:30:22 +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 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 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 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 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 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 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 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 2a15d71c33 feat(globalmenu): got a prototype of working globalmenu for some apps 2026-06-22 15:58:10 +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 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 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 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 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 244a913d96 feat(src/services): add config persistence, reload handling and notification pruning on config change
Add ability to persist current configuration to disk and trigger reloads, expose set() and save() methods, monitor the config directory for changes, and adjust notification history based on config modifications.

- New Features
  - Implement `save()` method to write config to file and trigger reload
  - Add `set()` method for in‑memory config updates
  - Extend file monitoring to include parent directory
  - Rename `get_all_config` to `get_config_all`
- Enhancements
  - Refine reload logic to correctly capture previous state via `_last_notified_config`
  - Trigger reloads on additional file‑monitor events (CREATED, DELETED)
  - Prune cached notifications according to config changes (`notification_ignored_apps`, `notification_limited_apps_history`)
- Bug Fixes
  - Resolve race condition where reload‑pending flag could be left set
  - Ensure callbacks are notified on every reload request
  - Fix stale comparison of config values in `has_changed`
2026-05-03 22:06:23 +05:45
sankalp 791400f437 chore(src/services): remove auth service module- Removed legacy authentication service code.
- Cleaned up unused imports and configuration.
2026-05-03 20:20:05 +05:45
sankalp e4813f35a0 feat(root): implement dynamic todo list refresh and UI enhancements
This change adds a mechanism to refresh the todo list dynamically when the underlying service updates, improving UI responsiveness and user experience. It also updates documentation and removes deprecated files.

- New Features:
  - Added `_refresh_todos` method to rebuild the todo list when `get_todo_service().todos` changes.
  - Introduced `TodoListCapture` class for mouse capture handling of the todo list window.
- Enhancements:
  - Updated README with corrected image paths, installation tips, and manual installation commands.
  - Introduced `start.py` to launch the application or lock mode.
  - Removed deprecated `config.json` and `debug_memory.py`.
- Bug Fixes:
  - Fixed lock screen screenshot path in README.
2026-04-10 17:11:32 +05:45