Vintage digital display with a high-fidelity 7-segment look. 10 color themes, custom colors, ghost segments, CRT scanlines, desktop widget mode, a quick color-switch menu, a date tooltip on hover, and integrated alarms with an on-screen dialog so they're never missed. Draws its digits from SVG path data embedded in the extension's code (no system font installation needed) and plays alarms through GNOME Shell's native sound theme; no bundled audio, font or image files.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
EGO015 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.
extension.js:106
this._indicator.connect('button-press-event', (actor, event) => {
if (this._isAlarming) {
this._stopAlarm();
return Clutter.EVENT_STOP;
}
if (event.get_button() === 1) {
dragging =
extension.js:151
this._indicator.connect('button-press-event', () => {
if (this._isAlarming) {
this._stopAlarm();
return Clutter.EVENT_STOP;
} else {
this.openPreferences();
return Clutter.EVEN
extension.js:126
this._indicator.connect('button-release-event', () => {
if (dragging) {
dragging = false;
let [x, y] = this._indicator.get_position();
this._settings.set_int('widget-x', x);
this._settings.set
extension.js:137
this._indicator.connect('motion-event', (actor, event) => {
if (dragging) {
let [x, y] = event.get_coords();
actor.set_position(x - grabX, y - grabY);
return Clutter.EVENT_STOP;
}
| Version | Status |
|---|---|
| 84 | Active |
| 83 | Active |
| 82 | Active |
| 81 | Rejected |
| 80 | Active |
| 79 | Active |
| 78 | Active |
| 77 | Active |
| 76 | Active |
| 75 | Active |
| 74 | Rejected |
| 73 | Active |
| 72 | Active |
| 71 | Active |
| 70 | Active |
| 69 | Active |
| 68 | Active |
| 67 | Rejected |
| 66 | Active |
| 65 | Active |
| 64 | Active |
| 63 | Active |
| 62 | Active |
| 61 | Active |
| 60 | Active |
| 59 | Active |
| 58 | Active |
| 57 | Rejected |
| 56 | Active |
| 55 | Active |
| 54 | Active |
| 53 | Active |
| 52 | Rejected |
| 51 | Active |
| 50 | Active |
| 49 | Active |
| 48 | Active |
| 47 | Rejected |
| 46 | Inactive |
| 45 | Inactive |
| 44 | Rejected |
| 43 | Inactive |
| 42 | Inactive |
| 41 | Inactive |
| 40 | Inactive |
| 39 | Inactive |
| 38 | Rejected |
| 37 | Rejected |
| 36 | Inactive |
| 35 | Inactive |
| 34 | Rejected |
| 33 | Inactive |
| 32 | Inactive |
| 31 | Inactive |
| 30 | Rejected |
| 29 | Inactive |
| 28 | Rejected |
| 27 | Rejected |
| 26 | Rejected |
| 25 | Rejected |
| 24 | Inactive |
| 23 | Inactive |
| 22 | Rejected |
| 21 | Rejected |
| 20 | Rejected |
| 19 | Inactive |
| 18 | Inactive |
| 17 | Inactive |
| 16 | Rejected |
| 15 | Inactive |
| 14 | Rejected |
| 13 | Inactive |
| 12 | Rejected |
| 11 | Inactive |
| 10 | Inactive |
| 9 | Inactive |
| 8 | Rejected |
| 7 | Rejected |
| 6 | Rejected |
| 5 | Rejected |
| 4 | Rejected |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Rejected |
Version 36 Update - Quick Fix What's Fixed - **UI Responsiveness**: Toggle switches in preferences now work with a single click (previously needed 2-3 clicks) - **Affected switches**: Widget Mode, Show Date, 24-Hour Format, Show Seconds, Blinking Separators, Enable Alarm Technical Details The issue was caused by recursive GTK switch events. I've added simple state validation to prevent duplicate activations: ```javascript // Now checks state before setting to avoid loops if (w.active !== settings.get_boolean('setting-name')) { settings.set_boolean('setting-name', w.active); } ``` Files Changed - `prefs.js`: Updated 6 switch handlers - `metadata.json`: Version bump to 36 Testing All switches now respond immediately, settings persist correctly, and existing functionality remains intact. --- **Thank you for your time and patience reviewing this extension!** Your work maintaining the GNOME Extensions ecosystem is truly appreciated. This small fix should make the user experience much smoother.