Skip to content

Overhaul GNOME Shell extension with full-featured UI#222

Merged
iamtoruk merged 5 commits intomainfrom
feat/gnome-extension-enhanced
May 5, 2026
Merged

Overhaul GNOME Shell extension with full-featured UI#222
iamtoruk merged 5 commits intomainfrom
feat/gnome-extension-enhanced

Conversation

@iamtoruk
Copy link
Copy Markdown
Member

@iamtoruk iamtoruk commented May 5, 2026

Summary

  • Complete UI rewrite: scrollable popup, token histogram chart with hover tooltips, skeleton loading animation, dark/light theme support
  • Stale-while-revalidate caching (5min TTL) for instant tab switching
  • Settings: force dark mode, exact costs toggle, budget alerts, provider toggles
  • Right-aligned numeric columns, horizontal scroll for 6+ provider tabs
  • Fixed crashes: post-destroy async guards, Soup session abort, settled guard for double-resolve race
  • Expanded PATH resolution (volta, bun, cargo, asdf, fnm, pnpm), reduced CLI timeout to 15s
  • Removed unsupported St CSS (text-align, letter-spacing), unused imports, dead constants

Replaces the initial implementation from #212 which had unsupported CSS causing crashes and incomplete UI.

Test plan

  • Verify popup opens without crash on GNOME 45+
  • Switch between provider tabs -- should use cached data instantly
  • Toggle dark mode in settings, confirm theme applies
  • Hover chart bars, verify tooltip shows date/tokens/cost
  • Enable exact costs, confirm full decimal values display
  • Test with 6+ providers detected for horizontal scroll

iamtoruk added 5 commits May 4, 2026 10:59
Combines PR #212's modular architecture (DataClient, GSettings, Libadwaita
prefs) with the custom St widget UI from feat/tauri-menubar-win-linux.

Adds: branded header, horizontal agent tabs, hero typography, period/insight
pills, 19-day token histogram, 6 content views (Activity, Trend, Forecast,
Pulse, Stats, Plan), currency switcher with FX conversion, findings CTA,
budget alerts, theme detection, payload caching with TTL.
…rformance fixes

- Add vertical scroll for popup content and horizontal scroll for 6+ provider tabs
- Add token histogram chart with hover tooltips showing date, in/out tokens, cost
- Add skeleton loading animation with stale-while-revalidate caching (5min TTL)
- Add dark/light theme support with force-dark-mode setting
- Add exact costs toggle for full decimal values
- Add right-aligned columns for cost, turns, oneshot, and model data
- Remove unsupported St CSS properties (text-align, letter-spacing)
- Fix post-destroy crash: guard async callbacks, abort Soup session on teardown
- Fix dataClient double-resolve race with settled guard
- Expand PATH resolution for volta, bun, cargo, asdf, fnm, pnpm
- Reduce CLI timeout from 45s to 15s and cache augmented PATH
- Remove unused imports (Pango, Main) and dead constants
- Show 10 top activities, remove Plan pill
@iamtoruk iamtoruk merged commit f5cbfe2 into main May 5, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant