SetWindowCursor interferes with captured events while dragging (GTK2)
Original Reporter info from Mantis: cobines
-
Reporter name:
Original Reporter info from Mantis: cobines
- Reporter name:
Description:
Hi,
Revisions 35176, 35280 introduced a change that grab and ungrab gdk pointer on SetWindowCursor. This interferes with capturing events outside of window while in drag&drop.
Normally, when dragging starts the control receives all events (MouseMove, MouseUp in particular) even if cursor is outside of application window because mouse is captured. gdk_pointer_ungrab cancels that and after it is called no mouse events are received by the control that has capture.
To reproduce:
- Start application from console to observe debug prints.
- Press and hold mouse button on CaptureButton.
- Move mouse over the title bar - no messages are received.
- Move mouse outside window - no message are received.
- Depress button - no MouseUp message.
- Move mouse back inside window without pressing buttons - dragging seems to be still in effect as you move the mouse.
Repeat that with the aforementioned revisions reverted, or try with QT widgetset - it works.
Mantis conversion info:
- Mantis ID: 24886
- OS: Debian
- OS Build: Sid
- Build: 42416
- Platform: Linux i386
- Version: 1.1 (SVN)