From dc9a7333d4074227c07b6298c127fffcf7c6e4e8 Mon Sep 17 00:00:00 2001 From: Jeffrey Stedfast Date: Mon, 2 Dec 2019 14:17:49 -0500 Subject: [Debugger] Always show Pin and Eyeball icons when a11y is in use Fixes https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1027799/ --- .../ObjectValue/Mac/MacDebuggerObjectNameView.cs | 7 +++++++ .../ObjectValue/Mac/MacDebuggerObjectPinView.cs | 7 ++++++- 2 files changed, 13 insertions(+), 1 deletion(-) (limited to 'main') diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectNameView.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectNameView.cs index 21d85d89f5..63b1c60e32 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectNameView.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectNameView.cs @@ -380,6 +380,13 @@ namespace MonoDevelop.Debugger public void SetPreviewButtonIcon (PreviewButtonIcon icon) { + // When a11y is in use, always show an icon. + if (IdeServices.DesktopService.AccessibilityInUse && icon == PreviewButtonIcon.Hidden) { + var selected = Superview is NSTableRowView rowView && rowView.Selected; + + icon = selected ? PreviewButtonIcon.Selected : PreviewButtonIcon.Hover; + } + if (!previewIconVisible || icon == currentIcon) return; diff --git a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectPinView.cs b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectPinView.cs index 82209926a5..51660fb8e4 100644 --- a/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectPinView.cs +++ b/main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ObjectValue/Mac/MacDebuggerObjectPinView.cs @@ -106,7 +106,11 @@ namespace MonoDevelop.Debugger PinButton.Image = selected ? selectedPinnedImage : pinnedImage; pinned = true; } else { - PinButton.Image = none; + // When a11y is in use, always show an icon. + if (IdeServices.DesktopService.AccessibilityInUse) + PinButton.Image = selected ? selectedUnpinnedImage : unpinnedImage; + else + PinButton.Image = none; pinned = false; } @@ -144,6 +148,7 @@ namespace MonoDevelop.Debugger var selected = Superview is NSTableRowView rowView && rowView.Selected; + // When a11y is in use, always show an icon. if (hover || IdeServices.DesktopService.AccessibilityInUse) { PinButton.Image = selected ? selectedUnpinnedImage : unpinnedImage; } else { -- cgit v1.2.3