Home

xmn / bettertrumpet

publicxammen/BetterTrumpet· sync paused
Overview Code History Branches Pull requestsIssuesInsights
master
HomeOverview Code PRsIssues

feat: premium flyout entrance (scale-pop + staggered reveal) + acrylic tint fix

3 months ago

a4974fc
Authored
xammen6/7/2026, 10:17:30 PM
Build on the .NET 8 migration to make the flyout feel native/premium:

- Entrance: replace the 8px slide+fade with a scale-up "pop" anchored to the
  taskbar edge (BackEase overshoot) on the content's ScaleTransform — GPU-cheap,
  window opacity still fades. New BeginFlyoutScaleEntranceAnimation.
- Staggered reveal: device/app rows fade + slide-up in sequence over the
  entrance (BeginStaggeredRowReveal + FindVisualChildren<T> helper).
- Toggle fix: clicking the tray icon on an open flyout now closes it instead of
  reopening. A light-dismiss deactivation timestamp lets OpenFlyout absorb the
  trailing click that caused the dismiss (keyboard reopen unaffected).
- Acrylic tint fix (pre-existing bug): custom slider colors froze
  AcrylicColor_Flyout to an opaque value (and overwrote FlyoutBackground),
  permanently killing the flyout's translucency after Settings was opened. Now
  the custom color tints the acrylic material itself at a translucent,
  transparency-aware opacity (0.7); the content layer is left untouched so the
  blur shows through.

Touches EarTrumpetColorsSettingsPageViewModel (other session's settings area) —
changes are additive/corrective only.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>

Parent856c2ef

5 files changed
  • EarTrumpet/Extensions/DependencyObjectExtensions.cs+32−1
  • EarTrumpet/UI/Helpers/WindowAnimationLibrary.cs+157−0
  • EarTrumpet/UI/ViewModels/EarTrumpetColorsSettingsPageViewModel.cs+13−9
  • EarTrumpet/UI/ViewModels/FlyoutViewModel.cs+16−0
  • EarTrumpet/UI/Views/FlyoutWindow.xaml.cs+12−1