Side Panel Manual Resizing Freezes / Locks Rhino UI

I have encountered a bug in the main Rhino UI that freezes / locks Rhino until the process is manually stopped. It is difficult to reproduce and report because it does not raise an error however I will attempt to describe steps to reproduce it:

Freezing the UI can be invoked by resizing the side panel in a certain way by clicking on the divider, dragging it to the left and mid drag let go (and possibly left click during the process). Note that it doesn’t happen every time but can be reproduced. See snip below attempting to explain the movement:

While the UI is frozen, I pause Visual Studio and the the run point is in the file DispatcherSynchronisationContext.cs (not a file within my project). The run point is on the line below:

return SynchronizationContext.WaitHelper(waitHandles, waitAll, millisecondsTimeout);

See below:

I am running a plugin however nothing in the stack trace points to a file in my project leading me to suspect that it is an issue with ETO resizing or deeper in the Rhino UI.

I note that it does seem to occur more when the panel contains GridViews however I have occasionally managed to invoke a freeze on a standard rhino panel.

I’d be interested to see if anyone else has encountered this issue.

Niki

Hi @user764,

We’ve had no report of this. With your plug-in/panel unloaded, can you repeat this?

The docking panel you’re resizing is MFC (C++), btw, not Eto.

– Dale

Hi Dale,

Thanks for your reply and that’s a good point. I have managed to trigger it while the active panel tab is a native Rhino one but with a custom plugin loaded on a non active tab however I have not managed to trigger it with all plugins completely disabled. I imagine this points to how the MFC interacts with the custom forms. I’ll do some more investigating but it’s tricky to isolate but seems linked to a resize event.

Niki