From: Attila Fidan dev@print0.net
--- dlls/quartz/tests/videorenderer.c | 64 +++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+)
diff --git a/dlls/quartz/tests/videorenderer.c b/dlls/quartz/tests/videorenderer.c index ea54ec87a8e..d4296de6226 100644 --- a/dlls/quartz/tests/videorenderer.c +++ b/dlls/quartz/tests/videorenderer.c @@ -2306,6 +2306,69 @@ static void test_video_window_autoshow(IVideoWindow *window, IFilterGraph2 *grap IMediaControl_Release(control); }
+static void test_video_window_visibility(IVideoWindow *window, IFilterGraph2 *graph, HWND our_hwnd) +{ + IMediaControl *control; + HRESULT hr; + LONG l; + + IFilterGraph2_QueryInterface(graph, &IID_IMediaControl, (void **)&control); + + hr = IVideoWindow_put_AutoShow(window, OATRUE); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_put_Visible(window, OAFALSE); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IMediaControl_Pause(control); + ok(hr == S_FALSE, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_put_WindowStyle(window, WS_CAPTION); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_get_Visible(window, &l); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + todo_wine ok(l == OATRUE, "Got %ld.\n", l); + + hr = IVideoWindow_put_Visible(window, OAFALSE); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_put_AutoShow(window, OAFALSE); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_put_Visible(window, OATRUE); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_put_WindowStyle(window, WS_CAPTION); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_get_Visible(window, &l); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + todo_wine ok(l == OATRUE, "Got %ld.\n", l); + + hr = IVideoWindow_put_Owner(window, (OAHWND)our_hwnd); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + ShowWindow(our_hwnd, SW_HIDE); + + hr = IVideoWindow_put_WindowStyle(window, WS_CAPTION); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IVideoWindow_get_Visible(window, &l); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + ok(l == OAFALSE, "Got %ld.\n", l); + + ShowWindow(our_hwnd, SW_SHOW); + + hr = IVideoWindow_put_Owner(window, 0); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + hr = IMediaControl_Stop(control); + ok(hr == S_OK, "Got hr %#lx.\n", hr); + + IMediaControl_Release(control); +} + static void test_video_window(void) { VIDEOINFOHEADER vih = @@ -2422,6 +2485,7 @@ static void test_video_window(void) test_video_window_state(window, hwnd, our_hwnd); test_video_window_position(window, hwnd, our_hwnd); test_video_window_autoshow(window, graph, hwnd); + test_video_window_visibility(window, graph, our_hwnd); test_video_window_owner(window, hwnd, our_hwnd); test_video_window_messages(window, hwnd, our_hwnd);