[PATCH 3/4] quartz: Hide video window on WM_CLOSE.
Zebediah Figura (she/her)
zfigura at codeweavers.com
Mon May 17 11:11:46 CDT 2021
On 5/6/21 9:06 AM, Akihiro Sagawa wrote:
> From: Akihiro Sagawa <sagawa.aki at gmail.com>
> Subject: [PATCH 3/4] quartz: Hide video window on WM_CLOSE.
> Message-Id: <20210506230504.D295.375B48EC at gmail.com>
> Date: Thu, 06 May 2021 23:06:04 +0900
>
> Signed-off-by: Akihiro Sagawa <sagawa.aki at gmail.com>
> ---
> dlls/quartz/tests/videorenderer.c | 2 +-
> dlls/quartz/tests/vmr7.c | 2 +-
> dlls/quartz/tests/vmr9.c | 2 +-
> dlls/quartz/window.c | 3 +++
> 4 files changed, 6 insertions(+), 3 deletions(-)
>
> diff --git a/dlls/quartz/tests/videorenderer.c b/dlls/quartz/tests/videorenderer.c
> index d76d964e074..4470e7376b0 100644
> --- a/dlls/quartz/tests/videorenderer.c
> +++ b/dlls/quartz/tests/videorenderer.c
> @@ -2221,7 +2221,7 @@ static void test_video_window_userabort(IVideoWindow *window, IFilterGraph2 *gra
> ok(hr == E_ABORT, "Got hr %#x.\n", hr);
> todo_wine ok(ret == 1, "Expected EC_USERABORT.\n");
>
> - todo_wine ok(IsWindow(hwnd), "Window should exist.\n");
> + ok(IsWindow(hwnd), "Window should exist.\n");
> ok(!IsWindowVisible(hwnd), "Window shouldn't be visible.\n");
>
> IMediaEvent_Release(eventsrc);
> diff --git a/dlls/quartz/tests/vmr7.c b/dlls/quartz/tests/vmr7.c
> index 357a84fe3db..421693f0eee 100644
> --- a/dlls/quartz/tests/vmr7.c
> +++ b/dlls/quartz/tests/vmr7.c
> @@ -2206,7 +2206,7 @@ static void test_video_window_userabort(IVideoWindow *window, IFilterGraph2 *gra
> ok(hr == E_ABORT, "Got hr %#x.\n", hr);
> todo_wine ok(ret == 1, "Expected EC_USERABORT.\n");
>
> - todo_wine ok(IsWindow(hwnd), "Window should exist.\n");
> + ok(IsWindow(hwnd), "Window should exist.\n");
> ok(!IsWindowVisible(hwnd), "Window shouldn't be visible.\n");
>
> IMediaEvent_Release(eventsrc);
> diff --git a/dlls/quartz/tests/vmr9.c b/dlls/quartz/tests/vmr9.c
> index 04306b29b79..92af83d3266 100644
> --- a/dlls/quartz/tests/vmr9.c
> +++ b/dlls/quartz/tests/vmr9.c
> @@ -2445,7 +2445,7 @@ static void test_video_window_userabort(IVideoWindow *window, IFilterGraph2 *gra
> ok(hr == E_ABORT, "Got hr %#x.\n", hr);
> todo_wine ok(ret == 1, "Expected EC_USERABORT.\n");
>
> - todo_wine ok(IsWindow(hwnd), "Window should exist.\n");
> + ok(IsWindow(hwnd), "Window should exist.\n");
> ok(!IsWindowVisible(hwnd), "Window shouldn't be visible.\n");
>
> IMediaEvent_Release(eventsrc);
> diff --git a/dlls/quartz/window.c b/dlls/quartz/window.c
> index bc34cd37cf9..6d9c544c897 100644
> --- a/dlls/quartz/window.c
> +++ b/dlls/quartz/window.c
> @@ -76,6 +76,9 @@ static LRESULT CALLBACK WndProcW(HWND hwnd, UINT message, WPARAM wparam, LPARAM
> case WM_QUARTZ_DESTROY:
> DestroyWindow(hwnd);
> return 0;
> + case WM_CLOSE:
> + ShowWindow(window->hwnd, SW_HIDE);
> + return 0;
> }
>
> return DefWindowProcW(hwnd, message, wparam, lparam);
>
Is it possible to call IVideoWindow methods on the filter after it's
been "closed"? Especialy put_Visible().
More information about the wine-devel
mailing list