From 0dcd8a41cd1d63585e6b7454c87aa84ccbfcc416 Mon Sep 17 00:00:00 2001 From: Aaron Robinson Date: Mon, 29 Mar 2004 09:19:33 +0000 Subject: [PATCH] faux fullscreen null cursor --- Cxbx.opt | Bin 58880 -> 60928 bytes Include/Win32/CxbxKrnl/EmuXTL.h | 1 + Source/Win32/CxbxKrnl/EmuD3D8.cpp | 9 ++++----- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Cxbx.opt b/Cxbx.opt index a669c67267a0a9e7e8779e56d81930b1ec54cc51..c1f67acd2b151c8789a40f6094c990ea710a2177 100644 GIT binary patch literal 60928 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 delta 1334 zcmciBPe@cj90&0E&FtHKYpH8K77C#aiV(Cv_b6@MGRrb6|E;u}`fANpsa#w{*cJ91 z=@0RuLiYk|4t2BB9z+eKE)mhelP5tW6m0v>)l(gMkN0^q!~7oe`@MOS|E}_@YAG-2 z22aWH)bCQM)F6atgsTvRCWyf`xDL%=;*6W<--1@S4R@do?m|1<0~7ZEZ3lEh7jRNJ zm&`;0gCsnHKIn%5aN#jL0TVZf_9+ZO8hA-L{6*FAwwknr-c0o9XTDrj?JH3tMYb4A zxx?=G$iPcMQX#(iS5F{IN?7QdOY-Y*^>ke@^yzb~frP*j`p&soSFaZ$9_2&C2k+Jn ztr|Ierb(JJZHte~@qpbH59n$Cwt8Ruq4cc(*wMcWpZVsu;sNu;FBEI^+2V(PdHD}* C{V#<8 diff --git a/Include/Win32/CxbxKrnl/EmuXTL.h b/Include/Win32/CxbxKrnl/EmuXTL.h index 55a1e9ac6..ebb734e91 100644 --- a/Include/Win32/CxbxKrnl/EmuXTL.h +++ b/Include/Win32/CxbxKrnl/EmuXTL.h @@ -52,5 +52,6 @@ namespace XTL extern XTL::LPDIRECT3DDEVICE8 g_pD3DDevice8; extern DWORD g_CurrentVertexShader; extern BOOL g_bFakePixelShaderLoaded; +extern BOOL g_bIsFauxFullscreen; #endif diff --git a/Source/Win32/CxbxKrnl/EmuD3D8.cpp b/Source/Win32/CxbxKrnl/EmuD3D8.cpp index 351298172..c206cdecb 100644 --- a/Source/Win32/CxbxKrnl/EmuD3D8.cpp +++ b/Source/Win32/CxbxKrnl/EmuD3D8.cpp @@ -61,6 +61,7 @@ XTL::LPDIRECTDRAWSURFACE7 g_pDDSOverlay7 = NULL; // DirectDraw7 Overlay Surfa XTL::LPDIRECTDRAWCLIPPER g_pDDClipper = NULL; // DirectDraw7 Clipper DWORD g_CurrentVertexShader = 0; BOOL g_bFakePixelShaderLoaded = FALSE; +BOOL g_bIsFauxFullscreen = FALSE; // Static Function(s) static BOOL WINAPI EmuEnumDisplayDevices(GUID FAR *lpGUID, LPSTR lpDriverDescription, LPSTR lpDriverName, LPVOID lpContext, HMONITOR hm); @@ -407,12 +408,10 @@ void ToggleFauxFullscreen(HWND hWnd) if(g_XBVideo.GetFullscreen()) return; - static bool bIsNormal = true; - static LONG lRestore = 0, lRestoreEx = 0; static RECT lRect = {0}; - if(bIsNormal) + if(!g_bIsFauxFullscreen) { if(g_hEmuParent != NULL) { @@ -449,7 +448,7 @@ void ToggleFauxFullscreen(HWND hWnd) } } - bIsNormal = !bIsNormal; + g_bIsFauxFullscreen = !g_bIsFauxFullscreen; } // rendering window message procedure @@ -554,7 +553,7 @@ static LRESULT WINAPI EmuMsgProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lPar case WM_SETCURSOR: { - if(g_XBVideo.GetFullscreen()) + if(g_XBVideo.GetFullscreen() || g_bIsFauxFullscreen) { SetCursor(NULL); return 0;