fix(ui): Recent-Sessions Resume/Brief-Buttons fuehren ihren Command wieder aus

Der Click-Handler schloss das Flyout synchron; Button liest Command erst nach dem ClickEvent, das Hide hatte die Bindung da schon geloest.
This commit is contained in:
mika kuns
2026-09-30 10:14:55 +02:00
parent 2a41f7e641
commit 60358100be
@@ -29,8 +29,10 @@ public partial class MissionControlView : UserControl
InitializeComponent();
DataContextChanged += OnDataContextChanged;
QueueSplitter.DragCompleted += (_, _) => _queueWidth = BodyGrid.ColumnDefinitions[2].Width;
// Resume/Brief buttons don't close a plain Flyout on their own.
RecentSessionsList.AddHandler(Button.ClickEvent, (_, _) => RecentSessionsButton.Flyout?.Hide());
// Resume/Brief buttons don't close a plain Flyout on their own. Deferred: Click fires before
// Button runs its Command, and a synchronous Hide unbinds that Command first.
RecentSessionsList.AddHandler(Button.ClickEvent,
(_, _) => Avalonia.Threading.Dispatcher.UIThread.Post(() => RecentSessionsButton.Flyout?.Hide()));
}
private void OnSessionFlyoutOpening(object? sender, EventArgs e) => _ = _vm?.RefreshSessionTargetsAsync();