diff options
author | Patrick Rudolph <siro@das-labor.org> | 2015-06-20 20:06:11 +0200 |
---|---|---|
committer | Axel Davy <axel.davy@ens.fr> | 2016-02-04 22:12:17 +0100 |
commit | a961ec335d5f38c07181e4956341c9b4cca59fa4 (patch) | |
tree | 38b1b8729d3516591737a5b30bf4819bfc7fff38 /include/d3dadapter | |
parent | e59908e57f4f6d63bbe079fde4e0180167e709c1 (diff) | |
download | external_mesa3d-a961ec335d5f38c07181e4956341c9b4cca59fa4.zip external_mesa3d-a961ec335d5f38c07181e4956341c9b4cca59fa4.tar.gz external_mesa3d-a961ec335d5f38c07181e4956341c9b4cca59fa4.tar.bz2 |
st/nine: Handle Window Occlusion
Apps can know if the window is occluded by checking for
specific error messages. The behaviour is different
for Device9 and Device9Ex.
This allow games to release the mouse and stop rendering
until the focus is restored.
In case of multiple swapchain we do care only of the device one.
Signed-off-by: Patrick Rudolph <siro@das-labor.org>
Reviewed-by: Axel Davy <axel.davy@ens.fr>
Diffstat (limited to 'include/d3dadapter')
-rw-r--r-- | include/d3dadapter/present.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/d3dadapter/present.h b/include/d3dadapter/present.h index 08a9729..162f703 100644 --- a/include/d3dadapter/present.h +++ b/include/d3dadapter/present.h @@ -69,6 +69,8 @@ typedef struct ID3DPresentVtbl HRESULT (WINAPI *SetCursor)(ID3DPresent *This, void *pBitmap, POINT *pHotspot, BOOL bShow); HRESULT (WINAPI *SetGammaRamp)(ID3DPresent *This, const D3DGAMMARAMP *pRamp, HWND hWndOverride); HRESULT (WINAPI *GetWindowInfo)(ID3DPresent *This, HWND hWnd, int *width, int *height, int *depth); + /* Available since version 1.1 */ + BOOL (WINAPI *GetWindowOccluded)(ID3DPresent *This); } ID3DPresentVtbl; struct ID3DPresent @@ -96,6 +98,7 @@ struct ID3DPresent #define ID3DPresent_SetCursor(p,a,b,c) (p)->lpVtbl->SetCursor(p,a,b,c) #define ID3DPresent_SetGammaRamp(p,a,b) (p)->lpVtbl->SetGammaRamp(p,a,b) #define ID3DPresent_GetWindowInfo(p,a,b,c,d) (p)->lpVtbl->GetWindowSize(p,a,b,c,d) +#define ID3DPresent_GetWindowOccluded(p) (p)->lpVtbl->GetWindowOccluded(p) typedef struct ID3DPresentGroupVtbl { |