This is an automated email from the git hooks/post-receive script.

Git pushed a commit to branch master
in repository ffmpeg.

commit 54749da98a289e22b406240d2ef06227fe5d0b6b
Author:     Hunter Kvalevog <[email protected]>
AuthorDate: Tue Aug 5 20:57:30 2025 -0500
Commit:     michaelni <[email protected]>
CommitDate: Wed Jun 10 12:56:20 2026 +0000

    avdevice/gdigrab: make overlay window layered
    
    WS_EX_LAYERED allows input events to pass through to windows beneath.
    
    WS_EX_NOACTIVATE prevents the window from stealing focus when created.
---
 libavdevice/gdigrab.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavdevice/gdigrab.c b/libavdevice/gdigrab.c
index d9c0d2fbc1..c441c2c6b7 100644
--- a/libavdevice/gdigrab.c
+++ b/libavdevice/gdigrab.c
@@ -134,7 +134,8 @@ gdigrab_region_wnd_task(LPVOID opaque)
     MSG msg;
 
     DWORD style = WS_POPUP | WS_VISIBLE;
-    DWORD ex = WS_EX_TOOLWINDOW | WS_EX_TOPMOST | WS_EX_TRANSPARENT;
+    DWORD ex = WS_EX_LAYERED | WS_EX_NOACTIVATE | WS_EX_TOOLWINDOW |
+        WS_EX_TOPMOST | WS_EX_TRANSPARENT;
 
     rect.left -= REGION_WND_BORDER; rect.top -= REGION_WND_BORDER;
     rect.right += REGION_WND_BORDER; rect.bottom += REGION_WND_BORDER;
@@ -170,6 +171,7 @@ gdigrab_region_wnd_task(LPVOID opaque)
     DeleteObject(region_interior);
 
     SetWindowLongPtr(hwnd, GWLP_WNDPROC, (LONG_PTR) gdigrab_region_wnd_proc);
+    SetLayeredWindowAttributes(hwnd, 0, 0xFF, LWA_ALPHA);
 
     ShowWindow(hwnd, SW_SHOW);
 

_______________________________________________
ffmpeg-cvslog mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to