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:
@@ -29,8 +29,10 @@ public partial class MissionControlView : UserControl
|
|||||||
InitializeComponent();
|
InitializeComponent();
|
||||||
DataContextChanged += OnDataContextChanged;
|
DataContextChanged += OnDataContextChanged;
|
||||||
QueueSplitter.DragCompleted += (_, _) => _queueWidth = BodyGrid.ColumnDefinitions[2].Width;
|
QueueSplitter.DragCompleted += (_, _) => _queueWidth = BodyGrid.ColumnDefinitions[2].Width;
|
||||||
// Resume/Brief buttons don't close a plain Flyout on their own.
|
// Resume/Brief buttons don't close a plain Flyout on their own. Deferred: Click fires before
|
||||||
RecentSessionsList.AddHandler(Button.ClickEvent, (_, _) => RecentSessionsButton.Flyout?.Hide());
|
// 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();
|
private void OnSessionFlyoutOpening(object? sender, EventArgs e) => _ = _vm?.RefreshSessionTargetsAsync();
|
||||||
|
|||||||
Reference in New Issue
Block a user