WPF - OnLostMouseCapture with active scrolling.
-
What version of the product are you using? v85.3.130
-
What architecture x86 or x64? Both
-
On what operating system? Win10
-
Are you using
WinForms,WPForOffScreen? WPF -
What steps will reproduce the problem? 1)Draging the scrollbar with left button pressing 2)move the cursor out of the browser control 2)press alt+tab, choose other app. 3)release left button. 4)move mouse in browser, browser is thinking that mouse is pressed.
-
Please provide any additional information below. As i said in https://github.com/cefsharp/CefSharp/pull/2871 we have problem with OnLostMouseCapture. Default wpf implementation does not raise mouse up event after lost mouse capture.
Worked fast fix(SubClass):
private bool isLeftMouseDown;
protected override void OnMouseDown(MouseButtonEventArgs e)
{
isLeftMouseDown = e.LeftButton == MouseButtonState.Pressed;
base.OnMouseDown(e);
}
protected override void OnLostMouseCapture(MouseEventArgs e)
{
var modifiers = e.GetModifiers();
var point = e.GetPosition(this);
if (isLeftMouseDown)
{
GetBrowser().GetHost().SendMouseClickEvent((int)point.X, (int)point.Y, MouseButtonType.Left, true, 1, modifiers);
isLeftMouseDown = false;
}
base.OnLostMouseCapture(e);
}
Thank you for the detailed bug report.
Can you please submit a PR with your proposed changes. Thanks.