On 5/6/21 9:06 AM, Akihiro Sagawa wrote:
From: Akihiro Sagawa sagawa.aki@gmail.com Subject: [PATCH 3/4] quartz: Hide video window on WM_CLOSE. Message-Id: 20210506230504.D295.375B48EC@gmail.com Date: Thu, 06 May 2021 23:06:04 +0900
Signed-off-by: Akihiro Sagawa sagawa.aki@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().