All-in-one timer, stopwatch, pomodoro, alarm, todo, and flashcards extension.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO-X-004 warning
extensions should avoid synchronous file IO in shell code
Shell code should avoid synchronous file IO APIs like `GLib.file_get_contents()` and `Gio.File.load_contents()`.
utils/fs.js:43
file.load_contents(null)
EGO-A-005 manual_review
extensions should not access the clipboard directly
Direct clipboard access via `St.Clipboard.get_default()` requires reviewer scrutiny.
utils/misc.js:166
St.Clipboard.get_default()
EGO-L-002 warning
objects created by extension should be destroyed in disable()
Objects assigned in `enable()` are missing matching `.destroy()` calls in `disable()` or its helper methods.
applets/alarm.js:324
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-box' })
applets/todo/filter.js:126
this.actor = new St.BoxLayout({ vertical: true, x_expand: true, style_class: 'cronomix-spacing' })
EGO-L-001 warning
extension must not create GObject instances or modify shell before enable()
Resource creation or signal/source setup was found outside `enable()`.
Only use initialization for static resources
extension.js:141
dummy = new St.Widget({ visible: false, style_class: 'popup-menu-content' })
extension.js:141
new St.Widget({ visible: false, style_class: 'popup-menu-content' })
extension.js:175
dummy = new St.Widget({ visible: false, style_class: 'cronomix-custom-css' })
extension.js:175
new St.Widget({ visible: false, style_class: 'cronomix-custom-css' })
EGO-L-005 warning
owned object references should be released in disable()
Owned references that are cleaned up in `disable()` should also be released with `null` or `undefined`.
applets/alarm.js:163
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/alarm.js:324
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-box' })
applets/flashcards.js:189
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/pomodoro.js:238
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/pomodoro.js:358
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/stopwatch.js:147
this.actor = new St.BoxLayout({ vertical: true, style: 'min-width: 256px;', style_class: 'cronomix-spacing' })
applets/timer.js:199
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/timer.js:328
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/timer.js:438
this.actor = new St.BoxLayout({ vertical: true, style_class: 'cronomix-spacing' })
applets/todo/filter.js:126
this.actor = new St.BoxLayout({ vertical: true, x_expand: true, style_class: 'cronomix-spacing' })
EGO-L-003 warning
signals connected by extension should be disconnected in disable()
Signals assigned in `enable()` are missing matching disconnect calls in `disable()` or its helper methods.
applets/pomodoro.js:322
header.label.connect('scroll-event', (_, event) => {
const direction = event.get_scroll_direction();
let font_size = applet.storage.read.clock_size.value;
if (direction === Clutter.ScrollDirection.UP) {
font_size += 20;
applets/stopwatch.js:249
header.label.connect('scroll-event', (_, event) => {
const direction = event.get_scroll_direction();
let font_size = applet.storage.read.clock_size.value;
if (direction === Clutter.ScrollDirection.UP) {
font_size += 20;
| Version | Status |
|---|---|
| 42 | Active |
| 41 | Rejected |
| 40 | Active |
| 39 | Active |
| 38 | Active |
| 37 | Active |
| 36 | Active |
| 35 | Active |
| 34 | Active |
| 33 | Active |
| 32 | Active |
| 31 | Active |
| 30 | Active |
| 29 | Active |
| 28 | Active |
| 27 | Active |
| 26 | Active |
| 25 | Active |
| 24 | Rejected |
| 23 | Rejected |
| 22 | Active |
| 21 | Active |
| 20 | Active |
| 19 | Active |
| 18 | Active |
| 17 | Rejected |
| 16 | Rejected |
| 15 | Rejected |
| 14 | Active |
| 13 | Active |
| 12 | Active |
| 11 | Active |
| 10 | Active |
| 9 | Active |
| 8 | Active |
| 7 | Rejected |
| 6 | Active |
| 5 | Active |
| 4 | Active |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Rejected |