mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2026-06-11 08:13:06 +00:00
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.
This commit is contained in:
committed by
michaelni
co-authored by
michaelni
parent
dc1128e475
commit
54749da98a
@@ -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);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user