[PATCH] ieframe: Deactivate UI when processing IOleObject::DoVerb(OLEIVERB_HIDE).

Jacek Caban jacek at codeweavers.com
Tue Aug 4 09:10:25 CDT 2020


Hi Dmitry,

On 04.08.2020 11:01, Dmitry Timoshkov wrote:
> @@ -1847,6 +1849,77 @@ static void test_DoVerb(IWebBrowser2 *unk)
>       hres = IOleObject_Advise(oleobj, &test_sink, &connection);
>       ok(hres == S_OK, "Advise failed: %08x\n", hres);
>   
> +    b = 0x100;
> +    hres = IWebBrowser2_get_Visible(unk, &b);
> +    ok(hres == S_OK, "get_Visible failed: %08x\n", hres);
> +    ok(b == VARIANT_TRUE, "Visible = %x\n", b);
> +
> +    SET_EXPECT(CanInPlaceActivate);
> +    SET_EXPECT(Site_GetWindow);
> +    SET_EXPECT(OnInPlaceActivate);
> +    SET_EXPECT(GetWindowContext);
> +    SET_EXPECT(ShowObject);
> +    SET_EXPECT(GetContainer);
> +    SET_EXPECT(Frame_GetWindow);
> +    SET_EXPECT(OnUIActivate);
> +    SET_EXPECT(Frame_SetActiveObject);
> +    SET_EXPECT(UIWindow_SetActiveObject);
> +    SET_EXPECT(SetMenu);
> +    SET_EXPECT(OnFocus_TRUE);
> +
> +    hres = IOleObject_DoVerb(oleobj, OLEIVERB_SHOW, NULL, &ClientSite,
> +                             0, (HWND)0xdeadbeef, &rect);
> +    ok(hres == S_OK, "DoVerb failed: %08x\n", hres);
> +
> +    CHECK_CALLED(CanInPlaceActivate);
> +    CHECK_CALLED(Site_GetWindow);
> +    CHECK_CALLED(OnInPlaceActivate);
> +    CHECK_CALLED(GetWindowContext);
> +    CHECK_CALLED(ShowObject);
> +    CHECK_CALLED(GetContainer);
> +    CHECK_CALLED(Frame_GetWindow);
> +    CHECK_CALLED(OnUIActivate);
> +    CHECK_CALLED(Frame_SetActiveObject);
> +    CHECK_CALLED(UIWindow_SetActiveObject);
> +    CHECK_CALLED(SetMenu);
> +    CHECK_CALLED(OnFocus_TRUE);


The patch looks mostly good to me, but could you please move tests to 
test_WebBrowser_DoVerb? test_DoVerb is a bit unfortunate name, it's 
effectively used in a few places as a helper for DoVerb(OLEIVERB_SHOW) call.


Thanks,

Jacek




More information about the wine-devel mailing list