Automatically switches between light and dark themes based on sunrise/sunset times for your location. Supports multiple trigger options (golden hour, dawn, dusk, etc.), gradual brightness transitions, and syncs with Night Light. Uses ipinfo.io, sunrisesunset.io, and openstreetmap.org services. If you find any bugs/issues, feel free to create an issue at https://github.com/amritashan/gnome-shell-extension-auto-theme-switcher/issues
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
| Version | Status |
|---|---|
| 8 | Active |
| 7 | Inactive |
| 6 | Rejected |
| 5 | Rejected |
| 4 | Rejected |
| 3 | Inactive |
| 2 | Rejected |
| 1 | Rejected |
Critical Fixes Brightness Control * Fixed: Brightness was forced even when user was outside adjustment window * Fixed: Brightness not updating when theme switches automatically * Fixed: brightness only updated during gradual transitions * Brightness is adjusted only on login, not on every unlock * Simplified brightness control options Resource Management * Fixed: Comprehensive resource cleanup to prevent memory leaks * All cleanup operations in disable() method now wrapped in try-catch blocks * Individual error handling for each cleanup step * Refactored settings signal cleanup into a loop for better maintainability * Added cleanup for all state variables (_debugInfo, _lightTime, _darkTime, etc.) * Fixed prefs window cleanup with defensive try-catch blocks * Ensures complete cleanup even if individual steps fail
1. Avoid making the default class you are exporting in `extension.js` that large. It's super hard to review for cleanup. 2. Avoid wrapping code with unnecessary try and catch blocks. 3. Rejected because you should add the reason comment for session mode in the disable function. 4. Avoid sending large diff since that makes the review process harder and longer.