mirror of
https://gitlab.com/freepascal.org/lazarus/lazarus.git
synced 2025-09-08 09:20:49 +02:00
Gtk3: fixed mouse press/release and unatended mouse grab from toplevel GdkWindow.
This commit is contained in:
parent
049fedf34a
commit
247765dd5d
@ -2274,7 +2274,10 @@ begin
|
|||||||
' Event.Type=',Event^.type_,' Capture=',LCLintf.GetCapture);
|
' Event.Type=',Event^.type_,' Capture=',LCLintf.GetCapture);
|
||||||
{$ENDIF}
|
{$ENDIF}
|
||||||
if Event^.button.send_event = NO_PROPAGATION_TO_PARENT then
|
if Event^.button.send_event = NO_PROPAGATION_TO_PARENT then
|
||||||
exit;
|
begin
|
||||||
|
LCLIntf.SetCapture(0); //must be so, otherwise form grabs everything under gtk :(
|
||||||
|
exit(gtk_true);
|
||||||
|
end;
|
||||||
|
|
||||||
SavedHandle := PtrUInt(Self);
|
SavedHandle := PtrUInt(Self);
|
||||||
|
|
||||||
@ -2774,6 +2777,9 @@ var
|
|||||||
begin
|
begin
|
||||||
Result := gtk_false;
|
Result := gtk_false;
|
||||||
Msg.Msg := LM_MOUSELEAVE;
|
Msg.Msg := LM_MOUSELEAVE;
|
||||||
|
|
||||||
|
if Gtk3IsLayout(aWidget) and (aWidget^.get_parent = TGtk3Widget(aData).Widget) then
|
||||||
|
exit;
|
||||||
TGtk3Widget(aData).DeliverMessage(Msg, True);
|
TGtk3Widget(aData).DeliverMessage(Msg, True);
|
||||||
if Assigned(TGtk3Widget(aData).LCLObject) and (csDesigning in TGtk3Widget(aData).LCLObject.ComponentState) then
|
if Assigned(TGtk3Widget(aData).LCLObject) and (csDesigning in TGtk3Widget(aData).LCLObject.ComponentState) then
|
||||||
Result := gtk_true;
|
Result := gtk_true;
|
||||||
|
Loading…
Reference in New Issue
Block a user