diff --git a/dlls/dxgi/device.c b/dlls/dxgi/device.c index 5500452653e..4b23155754d 100644 --- a/dlls/dxgi/device.c +++ b/dlls/dxgi/device.c @@ -42,6 +42,7 @@ static HRESULT STDMETHODCALLTYPE dxgi_device_QueryInterface(IWineDXGIDevice *ifa || IsEqualGUID(riid, &IID_IDXGIDevice) || IsEqualGUID(riid, &IID_IDXGIDevice1) || IsEqualGUID(riid, &IID_IDXGIDevice2) + || IsEqualGUID(riid, &IID_IDXGIDevice3) || IsEqualGUID(riid, &IID_IWineDXGIDevice)) { IUnknown_AddRef(iface); @@ -321,6 +322,11 @@ static HRESULT STDMETHODCALLTYPE dxgi_device_EnqueueSetEvent(IWineDXGIDevice *if return E_NOTIMPL; } +static void STDMETHODCALLTYPE dxgi_device_Trim(IWineDXGIDevice *iface) +{ + FIXME("iface %p stub!\n", iface); +} + /* IWineDXGIDevice methods */ static HRESULT STDMETHODCALLTYPE dxgi_device_create_surface(IWineDXGIDevice *iface, @@ -376,6 +382,8 @@ static const struct IWineDXGIDeviceVtbl dxgi_device_vtbl = dxgi_device_OfferResources, dxgi_device_ReclaimResources, dxgi_device_EnqueueSetEvent, + /* IDXGIDevice3 methods */ + dxgi_device_Trim, /* IWineDXGIDevice methods */ dxgi_device_create_surface, }; diff --git a/include/wine/winedxgi.idl b/include/wine/winedxgi.idl index 610b7c0485c..070ac2fddaa 100644 --- a/include/wine/winedxgi.idl +++ b/include/wine/winedxgi.idl @@ -42,7 +42,7 @@ interface IWineDXGISwapChainFactory : IUnknown local, uuid(3e1ff30b-c951-48c3-b010-0fb49f3dca71) ] -interface IWineDXGIDevice : IDXGIDevice2 +interface IWineDXGIDevice : IDXGIDevice3 { HRESULT create_surface( [in] struct wined3d_texture *wined3d_texture,