|
|
@@ -10,6 +10,7 @@ using Avalonia.Collections;
|
|
|
using Avalonia.Controls.Generators;
|
|
|
using Avalonia.Data;
|
|
|
using Avalonia.Input;
|
|
|
+using Avalonia.Input.Platform;
|
|
|
using Avalonia.Interactivity;
|
|
|
using Avalonia.Styling;
|
|
|
using Avalonia.VisualTree;
|
|
|
@@ -469,9 +470,13 @@ namespace Avalonia.Controls.Primitives
|
|
|
|
|
|
if (!e.Handled)
|
|
|
{
|
|
|
- if (this.SelectionMode == SelectionMode.Multiple && e.Key == Key.A && e.Modifiers == InputModifiers.Control)
|
|
|
+ var keymap = AvaloniaLocator.Current.GetService<PlatformHotkeyConfiguration>();
|
|
|
+ bool Match(List<KeyGesture> gestures) => gestures.Any(g => g.Matches(e));
|
|
|
+
|
|
|
+ if (this.SelectionMode == SelectionMode.Multiple && Match(keymap.SelectAll))
|
|
|
{
|
|
|
SynchronizeItems(SelectedItems, Items?.Cast<object>());
|
|
|
+ e.Handled = true;
|
|
|
}
|
|
|
}
|
|
|
}
|