From bffdabf4afad0de638ceffcdf04834be43362161 Mon Sep 17 00:00:00 2001 From: Inkeliz Date: Mon, 25 Jul 2022 20:16:48 +0100 Subject: [PATCH] app: [macos] set focus on click Signed-off-by: Inkeliz --- app/os_macos.go | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/app/os_macos.go b/app/os_macos.go index 909bd9c1d..072b805af 100644 --- a/app/os_macos.go +++ b/app/os_macos.go @@ -217,6 +217,13 @@ static void invalidateCharacterCoordinates(CFTypeRef viewRef) { } } } + +static void setFocus(CFTypeRef windowRef, CFTypeRef viewRef) { + NSWindow *window = (__bridge NSWindow *)windowRef; + NSView *view = (__bridge NSView *)viewRef; + [window makeFirstResponder:view]; +} + */ import "C" @@ -539,6 +546,11 @@ func gio_onMouse(view, evt C.CFTypeRef, cdir C.int, cbtns C.NSUInteger, x, y, dx if cbtns&(1<<2) != 0 { btns |= pointer.ButtonTertiary } + + if typ == pointer.Press { + C.setFocus(w.window, w.view) + } + w.w.Event(pointer.Event{ Type: typ, Source: pointer.Mouse,