A GNOME extension timer to remind users to take breaks and reduce eye strain by following the 20'20'20 rule.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
1. Please don't use deprecated modules (line 1 `extension.js`): [EGO Review Guidelines: deprecated modules](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#do-not-use-deprecated-modules) 2. gettext domain can be specified in `metadata.json` (line 9 `extension.js`): [Anatomy of an Extension: `gettext-domain`](https://gjs.guide/extensions/overview/anatomy.html#gettext-domain) 3. Timeout should be removed on destroy (line 21 `extension.js`): [EGO Review Guidelines: Timeout](https://gjs.guide/extensions/review-guidelines/review-guidelines.html#remove-main-loop-sources) 4. Null out the timeout in the callback (line 39 `extension.js`) and check for `notificationTimeoutId` in disable to avoid warnings: ```js if (notificationTimeoutId) { GLib.Source.remove(notificationTimeoutId); notificationTimeoutId = null; } ``` 5. Please remove the timeout before destroying the indicator (line 59 `extension.js`) to avoid accessing objects after they are getting destroyed. If you need any help with your extension you can ask us on: - [GNOME Extensions Matrix Channel](https://matrix.to/#/#extensions:gnome.org) - IRC Bridge: irc://irc.gimpnet.org/shell-extensions