Bug 26828 - Weird behavior of UI (mostly tree views)
Summary: Weird behavior of UI (mostly tree views)
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: Project Management ()
Version: unspecified
Hardware: Macintosh Mac OS
: Normal normal
Target Milestone: master
Assignee: Cody Russell
Depends on:
Reported: 2015-02-07 06:38 UTC by Paul
Modified: 2017-01-24 19:45 UTC (History)
5 users (show)

Is this bug a regression?: ---
Last known good build:

Document Outline pad (248.72 KB, image/png)
2015-02-07 06:39 UTC, Paul

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on Developer Community or GitHub with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Paul 2015-02-07 06:38:48 UTC
Sometimes tree views of Xamarin Studio renders wrong and navigation almost impossible. This bug is often appears in Document Outline pad but also in Toolbox pad. I don't know the way to repro it, it happens randomly. Please see screenshot. This bug is old, at least from XS 4.
Comment 1 Paul 2015-02-07 06:39:59 UTC
Created attachment 9693 [details]
Document Outline pad
Comment 2 Alan McGovern 2015-02-08 11:40:54 UTC
What exactly is the issue with the outline panel? From the screenshot it looks like it's rendering normally. What is it that makes navigation hard?
Comment 3 Paul 2015-02-08 11:45:22 UTC
Normally? Are you kidding? No scrollbars, no ViewControllers. This was Document Outline of Storyboard on those screenshot.
Comment 4 Alan McGovern 2015-02-08 16:38:08 UTC
The missing scrollbars issue is probably bug #25355. I believe the fix for that will be part of the next mono release after 3.12.0.

Just to be more exact about the missing ViewController issue. Which of these cases sounds more like what you are experiencing:

1) Initially everything shows up in the Outline pad put then the content of the outline pad gets 'stuck', like it was scrolled too far, and you cannot view elements at the top anymore nor can you scroll the view properly.

or 2) There is a specific sequence of actions which can remove the ViewController node from the Outline pad but leave it's children in place.

In either case, if you close the outline pad using the 'X' and then open a brand new one using View -> Pads -> Outline Pad, does the new outline pad function correctly?
Comment 5 Paul 2015-02-08 17:43:54 UTC
I'm experiencing 1st case.

I haven't tried approach you've described, but if in 'stucked' part of Outline view remains one or more collapsible items I can fix this bug just by expanding/collapsing that item. But there's no collapsible items on screenshot, so the only way to fix it was restarting entire XS.

P.S. The bug you've mentioned is private and I can't say is it related to this situation or not. But I doubt that the reason is in mono runtime. I suggest that reason somewhere in GTK UI.
Comment 6 Alan McGovern 2015-02-09 14:14:35 UTC
Great, if it's option 1 then this issue is a known one which affects several of our pads which use TreeView structures. We'll update this bug when we have more information about it. 

I hadn't realised that expanding/contracting an item in the TreeView fixes the problem. That might help us diagnose why it's getting stuck in the first place. 

Also, the scroll bar issue should be fixed in Mono and higher. You are right in saying that the issue is related to Gtk, but Gtk is installed by the Mono installer on MacOS so that's why you need a newer mono to fix that particular issue. I hadn't noticed bug 25355 was private, but it was the one dealing with the vanishing scroll bar problem. 

Thanks for the information!
Comment 7 Alan McGovern 2015-02-09 14:16:11 UTC
Cody, sometimes Gtk tree views are getting stuck and can't be scrolled anymore. This seems like a Gtk issue and affects the outline panel as well as the NUnit test pad.
Comment 8 Cody Russell 2015-02-11 10:54:37 UTC
This sounds like it might be related to the issue that I'm trying to figure out where we get leave-notify events when we shouldn't. There are a couple other places where this happens and it prevents scroll or motion events from triggering. In those other places the user can usually move the mouse cursor out of the window and then back in (thereby triggering an enter-notify event) and it works again.
Comment 9 Lluis Sanchez 2015-09-02 05:49:29 UTC
What's the status of this?
Comment 10 Alan McGovern 2015-09-02 07:35:48 UTC
It still happens all the time for me. There's no solid repro for it though. I trigger this, and similar issues, all the time [0] with the unit tests pad. Once it gets stuck XS usually crashes when i interact with the panel so i just quit XS and restart it

[0] A handful of times a week
Comment 11 Paul 2015-09-02 08:14:27 UTC
One of the way to repro:

1. Open any solution
2. File -> Close solution
3. Open this solution once again (or any another solution)
4. Open solution explorer pad

The pad will be empty. You can pres random arrows button on the keyboard to make hidden tree view items collapse/expand. And if you're lucky the tree view will appear.
Comment 13 Cody Russell 2017-01-24 19:45:25 UTC
I think this is fixed here: https://github.com/mono/monodevelop/pull/1055