Skip to content
This repository was archived by the owner on Oct 4, 2021. It is now read-only.

Commit 8f07bab

Browse files
committed
[Debugger] Remove expanders from Exception Caught dialog
The expanders are preventing Voice Over from accessing the child UI elements of the expanders.
1 parent c2fd185 commit 8f07bab

File tree

1 file changed

+18
-50
lines changed

1 file changed

+18
-50
lines changed

main/src/addins/MonoDevelop.Debugger/MonoDevelop.Debugger/ExceptionCaughtDialog.cs

Lines changed: 18 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,6 @@ class ExceptionCaughtDialog : Gtk.Window
5858
Button close, helpLinkButton, innerExceptionHelpLinkButton;
5959
TreeView exceptionValueTreeView, stackTraceTreeView;
6060
MacObjectValueTreeView macExceptionValueTreeView;
61-
Expander expanderProperties, expanderStacktrace;
6261
InnerExceptionsTree innerExceptionsTreeView;
6362
ObjectValueTreeViewController controller;
6463
CheckButton onlyShowMyCodeCheckbox;
@@ -209,7 +208,7 @@ Widget CreateExceptionValueTreeView ()
209208
if (useNewTreeView && Platform.IsMac) {
210209
var scrolled = new AppKit.NSScrollView {
211210
DocumentView = macExceptionValueTreeView,
212-
AutohidesScrollers = false,
211+
AutohidesScrollers = true,
213212
HasVerticalScroller = true,
214213
HasHorizontalScroller = true,
215214
};
@@ -240,7 +239,6 @@ Widget CreateExceptionValueTreeView ()
240239
exceptionValueTreeView.Show ();
241240

242241
var scrolled = new ScrolledWindow {
243-
HeightRequest = 180,
244242
CanFocus = true,
245243
HscrollbarPolicy = PolicyType.Automatic,
246244
VscrollbarPolicy = PolicyType.Automatic
@@ -252,57 +250,23 @@ Widget CreateExceptionValueTreeView ()
252250
scrolledWidget = scrolled;
253251
}
254252

255-
var vbox = new VBox ();
256-
expanderProperties = WrapInExpander (GettextCatalog.GetString ("Properties"), scrolledWidget);
257-
vbox.PackStart (new VBox (), false, false, 5);
258-
vbox.PackStart (expanderProperties, true, true, 0);
259-
vbox.ShowAll ();
260-
261-
return vbox;
262-
}
263-
264-
class ExpanderWithMinSize : Expander
265-
{
266-
public ExpanderWithMinSize (string label) : base (label)
267-
{
268-
}
253+
var label = new Label ();
254+
label.Markup = "<b>" + GettextCatalog.GetString ("Properties") + "</b>";
255+
label.Xalign = 0;
256+
label.Xpad = 10;
269257

270258
protected override void OnSizeRequested (ref Requisition requisition)
271259
{
272260
base.OnSizeRequested (ref requisition);
273261
requisition.Height = 28;
274262
}
275-
}
276263

277-
Expander WrapInExpander (string title, Widget widget)
278-
{
279-
var expander = new ExpanderWithMinSize ($"<b>{GLib.Markup.EscapeText (title)}</b>");
280-
expander.Name = "exception_dialog_expander";
281-
Gtk.Rc.ParseString (@"style ""exception-dialog-expander""
282-
{
283-
GtkExpander::expander-spacing = 10
284-
}
285-
widget ""*.exception_dialog_expander"" style ""exception-dialog-expander""
286-
");
287-
expander.Child = widget;
288-
expander.Spacing = 0;
289-
expander.Show ();
290-
expander.CanFocus = true;
291-
expander.UseMarkup = true;
292-
expander.Expanded = true;
293-
expander.Activated += Expander_Activated;
294-
expander.ModifyBg (StateType.Prelight, Ide.Gui.Styles.PrimaryBackgroundColor.ToGdkColor ());
295-
return expander;
296-
}
264+
var vbox = new VBox ();
265+
vbox.PackStart (label, false, false, 12);
266+
vbox.PackStart (scrolledWidget, true, true, 0);
267+
vbox.ShowAll ();
297268

298-
void Expander_Activated (object sender, EventArgs e)
299-
{
300-
if (expanderProperties.Expanded && expanderStacktrace.Expanded)
301-
paned.PositionSet = false;
302-
else if (expanderStacktrace.Expanded)
303-
paned.Position = paned.MaxPosition;
304-
else
305-
paned.Position = paned.MinPosition;
269+
return vbox;
306270
}
307271

308272
static void StackFrameLayout (CellLayout layout, CellRenderer cr, TreeModel model, TreeIter iter)
@@ -339,7 +303,6 @@ Widget CreateStackTraceTreeView ()
339303
stackTraceTreeView.RowActivated += StackFrameActivated;
340304

341305
var scrolled = new ScrolledWindow {
342-
HeightRequest = 180,
343306
HscrollbarPolicy = PolicyType.Never,
344307
VscrollbarPolicy = PolicyType.Automatic
345308
};
@@ -351,10 +314,14 @@ Widget CreateStackTraceTreeView ()
351314
vbox.PackStart (scrolled, true, true, 0);
352315
vbox.Show ();
353316

317+
var label = new Label ();
318+
label.Markup = "<b>" + GettextCatalog.GetString ("Stacktrace") + "</b>";
319+
label.Xalign = 0;
320+
label.Xpad = 10;
321+
354322
var vbox2 = new VBox ();
355-
expanderStacktrace = WrapInExpander (GettextCatalog.GetString ("Stacktrace"), vbox);
356-
vbox2.PackStart (new VBox (), false, false, 5);
357-
vbox2.PackStart (expanderStacktrace, true, true, 0);
323+
vbox2.PackStart (label, false, false, 12);
324+
vbox2.PackStart (vbox, true, true, 0);
358325
vbox2.ShowAll ();
359326
return vbox2;
360327
}
@@ -406,6 +373,7 @@ void Build ()
406373
paned.GrabAreaSize = 10;
407374
paned.Pack1 (CreateStackTraceTreeView (), true, false);
408375
paned.Pack2 (CreateExceptionValueTreeView (), true, false);
376+
paned.Position = 160;
409377
paned.Show ();
410378
var vbox = new VBox (false, 0);
411379
var whiteBackground = new EventBox ();

0 commit comments

Comments
 (0)