feat: Add new module system tray icons#30
Merged
Conversation
- Implement TrayIconItem for individual tray icons with tooltips and badges. - Create TrayIcons module to manage tray icon container and background apps. - Introduce tray state management for attention notifications and collapsing behavior. - Add settings for icon size, visible limit, and attention timeout. - Style tray icons and tooltips with SCSS. - Implement integration and unit tests for tray icons functionality.
… trayIcons, and volumeMixer modules - Replaced direct logger calls with centralized logger instance in themeChanger, backgroundAppsSource, dbusMenu, sniHost, sniWatcher, trayContainer, trayIconItem, trayIcons, and volumeMixer modules. - Improved logging messages for clarity and consistency. - Enhanced tooltip handling in sniHost and trayState. - Adjusted animation durations and effects in trayContainer and trayIconItem for better user experience.
- Added LOG_PREFIX constants to various modules for consistent logging. - Updated logger calls to include module-specific prefixes for better traceability. - Introduced a new setting for recoloring symbolic tray icons to match the panel theme. - Improved error handling and logging in the VolumeMixer, TrayIcons, and other modules.
…additional parameters
… QuickSettings and move the mouse to tray
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces a unified, structured logging style across the codebase, updates documentation to reflect new logging and validation/test practices, and adds new GSettings schema keys for the Tray Icons module. It also makes minor improvements to the test scripts and metadata handling. The changes help ensure consistency, improve debugging, and clarify contributor practices.
Logging system and style improvements:
loggerinsrc/core/logger.tswith support for structured log message prefixes, and updated the logger interface to accept a{ prefix }option. A global setter for the logger was also added. (src/core/logger.ts) [1] [2] [3]loggerwith standardized[ModuleName]prefixes, replacing previous directconsoleor context-based logging. (src/extension.ts,src/modules/autoThemeSwitcher/autoThemeSwitcher.ts,src/modules/bluetoothMenu/bluetoothMenu.ts) [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]loggerproperty from theExtensionContextinterface and its implementations, as logging is now handled globally. (src/core/context.ts) [1] [2] [3]Documentation updates:
CONTRIBUTING.mdandAGENTS.md, specifying prefix conventions and logger usage. Also clarified validation and integration test procedures inAGENTS.md. [1] [2] [3]Tray Icons module configuration:
data/schemas/org.gnome.shell.extensions.aurora-shell.gschema.xml)Build/test and metadata improvements:
tests/unit/trayState.test.tsto unit test scripts inpackage.json.GSETTINGS_SCHEMA_DIRin the test script to ensure schema availability during integration tests. (justfile)versionfield inmetadata.jsontoversion-name, and updated the version bump script accordingly. (metadata.json,scripts/bump-version.sh) [1] [2]