Review of "Weatherglass" version 5

Details Page Preview

Weather that lives in your top bar. The panel icon animates with the sky outside - sun, drifting clouds, rain, snow, thunderstorms - beside a live temperature. Open the menu and the whole card is the sky: a live animated backdrop of drifting clouds, twinkling stars and falling precipitation, painted frame by frame. What's inside: * Animated menu backdrop with eleven scenes, from clear sun and moon to fog, sleet, hail and lightning * Hourly chart: switch between temperature, precipitation or wind * The moon carries the real lunar phase at night; sunrise and sunset bathe the card in golden-hour light * Eight days of forecast tiles, current conditions at a glance * 20 languages with full bidirectional support: the entire card mirrors in Arabic, Hebrew, Persian and Urdu * Metric or imperial units, 12- or 24-hour clock, live scene previews in preferences * Three backdrop styles: animated sky, solid, or theme background with accent charts Weather data from Open-Meteo (global), Met.no (ECMWF) and NOAA NWS - choose your favourite forecaster, no API keys needed. Location: detected automatically through GNOME's own location service (IP lookup where none is available), or a city you pick. No accounts, no tracking, no analytics: weather requests go straight from your machine to the provider you choose. Automatic detection prefers the system location service, with the standard GNOME prompt naming this extension; its IP-lookup and city-label fallbacks each contact one free keyless endpoint and are used only when needed. Nothing is cached on disk. Demo: https://github.com/vijaybala-lang/weatherglass/releases/download/v8/weatherglass-demo-card.mp4

Extension Homepage
https://github.com/vijaybala-lang/weatherglass

No comments.

Diff Against

Files

Note: Binary files aren't shown on the web site. To see all files, please download the extension zipfile.

Shexli (experimental) warning 1

Shexli found 1 issue that may need reviewer attention.

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.

Remove main loop sources

  • menu.js:123
                this._animTimerId = GLib.timeout_add(GLib.PRIORITY_LOW, SKY_FRAME_INTERVAL_MS, () => {
                    const now = GLib.get_monotonic_time();
                    if (this.mapped ?? true) {
                        this._time += Math.min((now - this._lastTime) / 1000000, 0.1);
                        

All Versions

Version Status
10 Unreviewed
9 Active
8 Active
7 Rejected
6 Rejected
5 Active
4 Rejected
3 Rejected
2 Rejected
1 Rejected

Previous Reviews on this Version

JustPerfection active