Panel indicator showing current temperature and weather icon. Popup menu displays an 8-hour hourly forecast with temperature, UV index, precipitation probability, and color-coded temps. Daily view with high/low temperatures and dual weather icons for mixed conditions. Automatic location detection via IP. Supports Celsius/Fahrenheit.
Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.
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.
extension.js:120
this._box = new St.BoxLayout({style_class: 'panel-status-menu-box'})
extension.js:121
this._icon = new St.Icon({
icon_name: 'weather-clear-symbolic',
style_class: 'system-status-icon',
})
extension.js:125
this._label = new St.Label({
text: '--°',
y_align: Clutter.ActorAlign.CENTER,
style: 'padding: 0 4px;',
})
EGO-L-004 warning
main loop sources should be removed in disable()
Main loop sources assigned in `enable()` are missing matching removals in `disable()` or its helper methods.
extension.js:109
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 15, () => {
step++;
if (this._bgContainer && step <= 8) {
this._bgContainer.opacity = Math.round((step / 8) * 255);
return GLib.SOURCE_CONTINUE;
extension.js:157
GLib.timeout_add(GLib.PRIORITY_DEFAULT, intervalMs, () => {
if (!this._icon)
return GLib.SOURCE_REMOVE;
const pos = step % stepsPerCycle;
step++;
if (pos < halfCycle) {
const t = pos / halfCycle;
extension.js:177
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 15, () => {
fadeStep++;
if (this._bgContainer) {
this._bgContainer.opacity = Math.round(255 * (1 - fadeStep / totalFade));
}
if (fadeStep >= totalFade) {
extension.js:376
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 10, () => {
let fi = 0;
const fiSteps = 6;
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 15, () => {
fi++;
if (this._bgContainer) {
this._bgCo
extension.js:379
GLib.timeout_add(GLib.PRIORITY_DEFAULT, 15, () => {
fi++;
if (this._bgContainer) {
this._bgContainer.opacity = Math.round(255 * (fi / fiSteps));
}
return fi < fiSteps ? GLib.SOURCE
| Version | Status |
|---|---|
| 11 | Unreviewed |
| 10 | Active |
| 9 | Active |
| 8 | Rejected |
| 7 | Rejected |
| 6 | Rejected |
| 5 | Rejected |
| 4 | Rejected |
| 3 | Rejected |
| 2 | Rejected |
| 1 | Active |