Declined
Last Updated: 02 Dec 2015 15:48 by Tobias
ADMIN
Nasko
Created on: 02 Jul 2015 11:46
Category: Docking
Type: Bug Report
1
Application hangs if we try to drag out a Pane very fast

		
4 comments
Tobias
Posted on: 02 Dec 2015 15:48
Thank you for your response, and I understand your reasons.

The only question I have is that now when this bug is declined, how will I be notified if the bug gets fixed in the future so I can remove the workaround, if for example it gets fixed when you are doing the performance improvements you are talking about?
ADMIN
Kalin
Posted on: 26 Nov 2015 13:59
Hi Tobias,

I apologize for the late response. We investigated and considered this scenario as really case specific and that is why the item is declined. However we plan to work on improving the performance of control and this will also include drag and drop scenarios - we will consider this particular case as well. Meanwhile we really hope the suggested workaround is suitable for your scenario and if you have any other questions or concerns - please let us know.

Regards,
Kalin
Tobias
Posted on: 10 Nov 2015 11:25
Why is this declined? Sure the workaround seems to work this far, but its still a bug in your official releases and I expect it to be fixed at some point.
ADMIN
Kalin
Posted on: 10 Nov 2015 11:14
Hi,

After further investigation appeared the behavior is caused due to the heavy content of the Pane and the fast dragging in this particular scenario. The drag operation cannot be initialized on time - this leads to the issue as the Pane doesn't release the MouseCapture at the correct moment. What we can suggest as workaround to a similar behavior would be to hook to the MouseLeave event of the Docking control and release the mouse capture if RadPane has captured the mouse.

public MainWindow()
{
    InitializeComponent();
    this.Docking.AddHandler(RadDocking.MouseLeaveEvent, new MouseEventHandler(OnMouseLeave), true);
...
}


private void OnMouseLeave(object sender, MouseEventArgs e)
{
    var captured = Mouse.Captured as RadPane;
    if (captured != null)
    {
        captured.ReleaseMouseCapture();
    }
}

Regards,
Kalin