Repository navigation
Conversation
Draw a 1 px tick on each Claude, Codex and Antigravity 5-hour and weekly
gauge in the compact theme at the share of the window that has elapsed
(remaining mode: 100 - elapsed). The engine exposes
{window}.expected / expected_display / expected_available. Settings menu
gets "Show pace" (on by default, display.show_pace binding).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Allow a minute of slack past the window length so poll latency right after a reset does not hide the tick; it sits at 0 instead. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ssfade Replaces the background 8s / 2s cyclical timer between Antigravity's Gemini and Claude/GPT pools with an interactive, smooth hover crossfade on the taskbar tile. - Show primary pool at rest (Gemini in dual-mode, or the enabled solo pool). - Smoothly crossfade to the secondary pool over 180 ms while hovered. - Continuous time-based animation (CrossfadeAnimation) for fluid 60 FPS transitions. - O(1) cached tile bounds hit-testing in WM_MOUSEMOVE with auto-invalidation on theme reload, DPI change, or provider count updates. - Remove obsolete periodic timer machinery and dual_mode gate leftovers. - Add comprehensive unit tests for dual and single pool crossfade modes.
fix2it
force-pushed
the
feature/antigravity-hover-crossfade
branch
from
October 26, 2026 08:42
d36b0fe to
57b5923
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary & Vision
This PR reimagines the previous timed 8s / 2s pool alternating feature, evolving it from an automatic background timer into an enhanced, interactive on-demand hover crossfade for the taskbar tile.
Background & Evolution
The original alternating mechanism allowed users to view both Antigravity pools (Gemini and Claude/GPT) by cycling them on an 8-second / 2-second timer.
While this solved the dual-pool visibility goal, experience showed that:
The Reimagined Experience:
Instead of passive cycling, values remain rock-solid and stable at rest. Whenever the user needs to inspect the other pool, hovering the cursor over the Antigravity tile immediately and smoothly reveals it on demand — now working seamlessly for both dual-pool and single-pool setups.
What’s New & Enhanced
On-Demand Hover Crossfade:
Engine & Performance Optimizations:
CrossfadeAnimation): replaces timer-tick-dependent steps with wall-clock interpolation (Instant::elapsed() / duration), ensuring 60 FPS fluidity regardless of Windows timer resolution or system load.antigravity_tile_rect): bounds are cached and reused duringWM_MOUSEMOVE, avoiding expensive recursive layout recalculations on every mouse pixel movement. Automatically invalidated on DPI changes, theme swaps, and provider toggles.WM_TIMERstarvation during active cursor movement.Codebase & Theme Polish:
arm_crossfade_schedule, obsoletedual_modegate leftovers).compact-fluent-quad.json: unified value and pace-tick opacity expressions usingantigravity.<pool>.opacity.Testing & Verification
src/theme_engine/tests.rs).CrossfadeAnimationtiming, completion, and boundary clamps (src/window.rs).cargo test).cargo check).