From 943d293eb38089b1b9f498bd7b4c2756d7157804 Mon Sep 17 00:00:00 2001 From: julodnik Date: Sun, 1 Jun 2014 15:11:42 +0200 Subject: [PATCH] Allow Escape in WinForms designer to move selection to container of selected component --- .../FormsDesigner/Project/Src/FormKeyHandler.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/FormKeyHandler.cs b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/FormKeyHandler.cs index 5d3b29254a..457ce138dd 100644 --- a/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/FormKeyHandler.cs +++ b/src/AddIns/DisplayBindings/FormsDesigner/Project/Src/FormKeyHandler.cs @@ -24,6 +24,7 @@ using System.ComponentModel.Design; using System.Reflection; using System.Windows.Forms; using System.Windows.Forms.Design; +using System.Linq; using ICSharpCode.Core; using ICSharpCode.SharpDevelop; @@ -135,6 +136,17 @@ namespace ICSharpCode.FormsDesigner } return true; } + else if(keyPressed == Keys.Escape) { + ISelectionService selectionService = (ISelectionService)formDesigner.Host.GetService(typeof(ISelectionService)); + ICollection components = selectionService.GetSelectedComponents(); + if (components.Count == 1) { + Control ctrl = components.OfType().FirstOrDefault(); + if (ctrl != null && ctrl.Parent != null) { + selectionService.SetSelectedComponents(new IComponent[] { ctrl.Parent }, SelectionTypes.Primary); + } + } + return true; + } return false; }