From b62591f4d88304119a7e6212faad44d1a7d5167f Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Fri, 15 Nov 2019 10:39:37 -0500 Subject: [Debugger] Fixed CanRename() logic for Locals/Watch context menu & allowed disabled menu items --- .../ObjectValue/Mac/MacObjectValueTreeView.cs | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacObjectValueTreeView.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacObjectValueTreeView.cs index f0e8816a96..60a9353317 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacObjectValueTreeView.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacObjectValueTreeView.cs @@ -918,7 +918,7 @@ namespace MonoDevelop.Debugger [CommandHandler (EditCommands.Rename)] protected void OnRename () { - if (SelectedRow == -1) + if (SelectedRowCount != 1 || SelectedRow < 0) return; var nameView = (MacDebuggerObjectNameView) GetView (0, SelectedRow, false); @@ -933,7 +933,13 @@ namespace MonoDevelop.Debugger bool CanRename (out bool enabled) { - enabled = SelectedRowCount == 1 && SelectedRow != -1; + if (SelectedRowCount == 1 && SelectedRow >= 0) { + var item = (MacObjectValueNode) ItemAtRow (SelectedRow); + + enabled = item.Target.Parent is RootObjectValueNode || item.Target is AddNewExpressionObjectValueNode; + } else { + enabled = false; + } return AllowWatchExpressions; } @@ -956,7 +962,9 @@ namespace MonoDevelop.Debugger if (row < 0) return null; - var menu = new NSMenu (); + var menu = new NSMenu { + AutoEnablesItems = false + }; bool enabled; if (CanAddWatch (out enabled)) { -- cgit v1.2.3