mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-26 03:31:05 +00:00
d3d12videosink: Handle external HWND's mouse/keyboard events
OS will not propagate the event to child HWND if it's handled by the parent. Thus, navigation event should be handled by parent HWND's event handler. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6692>
This commit is contained in:
parent
a032c1e1bd
commit
6659bd6362
1 changed files with 15 additions and 0 deletions
|
@ -872,6 +872,21 @@ sub_class_proc (HWND hwnd, UINT msg, WPARAM wparam, LPARAM lparam)
|
||||||
priv->hwnd_cond.notify_all ();
|
priv->hwnd_cond.notify_all ();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
case WM_KEYDOWN:
|
||||||
|
case WM_KEYUP:
|
||||||
|
if (priv->enable_navigation)
|
||||||
|
gst_d3d12_window_on_key_event (self, msg, wparam, lparam);
|
||||||
|
break;
|
||||||
|
case WM_LBUTTONDOWN:
|
||||||
|
case WM_LBUTTONUP:
|
||||||
|
case WM_RBUTTONDOWN:
|
||||||
|
case WM_RBUTTONUP:
|
||||||
|
case WM_MBUTTONDOWN:
|
||||||
|
case WM_MBUTTONUP:
|
||||||
|
case WM_MOUSEMOVE:
|
||||||
|
if (priv->enable_navigation)
|
||||||
|
gst_d3d12_window_on_mouse_event (self, msg, wparam, lparam);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue