From: Mohamad Al-Jaf mohamadaljaf@gmail.com
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56983
Also needed by ReplayBook. --- dlls/windows.ui/uisettings.c | 43 ++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+)
diff --git a/dlls/windows.ui/uisettings.c b/dlls/windows.ui/uisettings.c index 8ae4c912721..34d7e9670d5 100644 --- a/dlls/windows.ui/uisettings.c +++ b/dlls/windows.ui/uisettings.c @@ -30,6 +30,7 @@ struct uisettings IUISettings IUISettings_iface; IUISettings2 IUISettings2_iface; IUISettings3 IUISettings3_iface; + IUISettings4 IUISettings4_iface; LONG ref; };
@@ -61,6 +62,10 @@ static HRESULT WINAPI uisettings_QueryInterface( IUISettings *iface, REFIID iid, { *out = &impl->IUISettings3_iface; } + else if (IsEqualGUID( iid, &IID_IUISettings4 )) + { + *out = &impl->IUISettings4_iface; + }
if (!*out) { @@ -384,6 +389,43 @@ static const struct IUISettings3Vtbl uisettings3_vtbl = uisettings3_remove_ColorValuesChanged, };
+DEFINE_IINSPECTABLE( uisettings4, IUISettings4, struct uisettings, IUISettings_iface ); + +static HRESULT WINAPI uisettings4_get_AdvancedEffectsEnabled( IUISettings4 *iface, boolean *value ) +{ + FIXME( "iface %p, value %p stub!.\n", iface, value ); + *value = TRUE; + return S_OK; +} + +static HRESULT WINAPI uisettings4_add_AdvancedEffectsEnabledChanged( IUISettings4 *iface, ITypedEventHandler_UISettings_IInspectable *handler, EventRegistrationToken *cookie ) +{ + FIXME( "iface %p, handler %p, cookie %p stub!\n", iface, handler, cookie ); + *cookie = dummy_cookie; + return S_OK; +} + +static HRESULT WINAPI uisettings4_remove_AdvancedEffectsEnabledChanged( IUISettings4 *iface, EventRegistrationToken cookie ) +{ + FIXME( "iface %p, cookie %#I64x stub!\n", iface, cookie.value ); + return S_OK; +} + +static const struct IUISettings4Vtbl uisettings4_vtbl = +{ + uisettings4_QueryInterface, + uisettings4_AddRef, + uisettings4_Release, + /* IInspectable methods */ + uisettings4_GetIids, + uisettings4_GetRuntimeClassName, + uisettings4_GetTrustLevel, + /* IUISettings4 methods */ + uisettings4_get_AdvancedEffectsEnabled, + uisettings4_add_AdvancedEffectsEnabledChanged, + uisettings4_remove_AdvancedEffectsEnabledChanged, +}; + struct uisettings_statics { IActivationFactory IActivationFactory_iface; @@ -464,6 +506,7 @@ static HRESULT WINAPI factory_ActivateInstance( IActivationFactory *iface, IInsp impl->IUISettings_iface.lpVtbl = &uisettings_vtbl; impl->IUISettings2_iface.lpVtbl = &uisettings2_vtbl; impl->IUISettings3_iface.lpVtbl = &uisettings3_vtbl; + impl->IUISettings4_iface.lpVtbl = &uisettings4_vtbl; impl->ref = 1;
*instance = (IInspectable *)&impl->IUISettings3_iface;