- Implement _on_button_press to show Gtk.Menu on right‑click.
- Provide Pair, Trust/Untrust, and Remove commands.
- Connect notify::connected-devices signal to refresh device list.
- Ensure graceful cleanup when device is removed.
Reduce bar count from 10 to 8 and adjust height limits, add CustomImage widget for artwork, update visibility handling to show/hide fallback and artwork
Replace random-based bar generation with deterministic sine animation, rename internal state and constants, split visualizer logic into explicit methods, update drawing to use style colors, consolidate signal and timer handling, and streamline idle/reset behavior.
Refactor ModPopup to use shell -c for commands, adjust icon size default, and improve button click handling. Remove unused GoogleLensIndicator component and related import/usage.
Change title of create_control_window to "modus-controlcenter" and adjust Panel title to "mdous-bar". Update import ordering and remove redundant imports for clarity.
Add _on_map handler and connect "map" signal to update playing state.
Refactor button handling to use change-value signal and dynamic child management.
Update playback status notification to avoid duplicates and use current_status variable.
│ 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.
Updated logic to delegate network operations through NetworkService, renamed signal listeners, and simplified connectivity checks focusing on service availability rather than session object emission.
The refactor introduces persistent indicator widgets and updates how visibility and layout are managed based on configuration changes.
New Features
- Added BatteryIndicator, NetworkIndicator and BluetoothIndicator as persistent panel children.
- Implemented visibility toggling for each indicator according to configuration and battery presence.
- Added debug prints when an indicator’s visibility changes or a battery is not detected.
Enhancements
- Updated dropdown actions to use `get_about_window()` and `get_settings_window()` for About and System Settings entries.
- Switched layout rebuilding to use `get_config_all()` and now only rebuilds when specific keys actually change.
- Removed manual recreation of indicators; visibility is controlled via `show()`/`set_visible()`.
- Consolidated changed‑key detection and added logging of rebuild reasons.
- Streamlined config key checks to use `config_data.get(..., True)`.
Bug Fixes
- Fixed BatteryIndicator to hide and log when no battery is detected.
- Corrected use of `config_data.get()` with appropriate fallback values.
- Updated layout updates to use `show()` and trigger a resize queue instead of `show_all()`.
- New Feature: Replace urllib.request with httpx for fetching artwork URLs, providing timeout and redirect support.
- Enhancement: Added proper HTTP status code handling and early exit on download cancellation.
- Bug Fix: Gracefully handle non‑200 responses and prevent resource leaks during network operations.
The updated regex now matches non‑numeric unit prefixes, and units are normalized before conversion, improving accuracy and preventing mismatches.
- Bug Fixes: Fixed incorrect unit detection that caused failed conversions.
- Enhancements: Added unit cleaning (`converter.clean_type`) to standardize input.
- New Features: None.