mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 06:04:49 +01:00
replace IsIconic with custom function
This commit is contained in:
parent
5c23d2d8a5
commit
66e86aa37c
@ -5,6 +5,7 @@
|
||||
#include <windows.h>
|
||||
|
||||
|
||||
BOOL util_is_minimized(HWND hwnd);
|
||||
BOOL util_is_avx_supported();
|
||||
void util_limit_game_ticks();
|
||||
void util_update_bnet_pos(int newX, int newY);
|
||||
|
6
src/dd.c
6
src/dd.c
@ -861,7 +861,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
x = y = 0;
|
||||
}
|
||||
|
||||
if (IsIconic(g_ddraw->hwnd))
|
||||
if (util_is_minimized(g_ddraw->hwnd))
|
||||
real_ShowWindow(g_ddraw->hwnd, SW_RESTORE);
|
||||
|
||||
RECT dst = { x, y, g_ddraw->render.width + x, g_ddraw->render.height + y };
|
||||
@ -930,7 +930,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
{
|
||||
if (g_ddraw->nonexclusive)
|
||||
{
|
||||
if (IsIconic(g_ddraw->hwnd))
|
||||
if (util_is_minimized(g_ddraw->hwnd))
|
||||
real_ShowWindow(g_ddraw->hwnd, SW_RESTORE);
|
||||
|
||||
real_SetWindowPos(
|
||||
@ -972,7 +972,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
|
||||
real_GetWindowLongA(g_ddraw->hwnd, GWL_STYLE) | WS_MINIMIZEBOX);
|
||||
}
|
||||
|
||||
if (IsIconic(g_ddraw->hwnd))
|
||||
if (util_is_minimized(g_ddraw->hwnd))
|
||||
real_ShowWindow(g_ddraw->hwnd, SW_RESTORE);
|
||||
|
||||
real_SetWindowPos(
|
||||
|
@ -206,7 +206,7 @@ int dbg_printf(const char* fmt, ...)
|
||||
|
||||
void dbg_print_rect(char* info, LPRECT rect)
|
||||
{
|
||||
#ifdef _DEBUG_X
|
||||
#ifdef _DEBUG
|
||||
if (rect)
|
||||
{
|
||||
TRACE(
|
||||
|
@ -3,6 +3,7 @@
|
||||
#include "winapi_hooks.h"
|
||||
#include "dd.h"
|
||||
#include "hook.h"
|
||||
#include "utils.h"
|
||||
|
||||
|
||||
BOOL g_mouse_locked;
|
||||
@ -14,7 +15,7 @@ void mouse_lock()
|
||||
if (g_ddraw->devmode || g_ddraw->bnet_active || !g_ddraw->hwnd)
|
||||
return;
|
||||
|
||||
if (g_hook_active && !g_mouse_locked && !IsIconic(g_ddraw->hwnd))
|
||||
if (g_hook_active && !g_mouse_locked && !util_is_minimized(g_ddraw->hwnd))
|
||||
{
|
||||
int game_count = InterlockedExchangeAdd((LONG*)&g_ddraw->show_cursor_count, 0);
|
||||
int cur_count = real_ShowCursor(TRUE) - 1;
|
||||
|
@ -11,6 +11,13 @@
|
||||
#include "config.h"
|
||||
|
||||
|
||||
BOOL util_is_minimized(HWND hwnd)
|
||||
{
|
||||
RECT rc = { 0 };
|
||||
|
||||
return IsIconic(hwnd) || (real_GetClientRect(hwnd, &rc) && (rc.right - rc.left == 0 || rc.bottom - rc.top == 0));
|
||||
}
|
||||
|
||||
BOOL util_is_avx_supported()
|
||||
{
|
||||
const DWORD XMM_STATE_BIT = 1 << 1;
|
||||
|
@ -170,7 +170,7 @@ BOOL WINAPI fake_ClipCursor(const RECT* lpRect)
|
||||
|
||||
CopyRect(&g_ddraw->mouse.rc, &dst_rc);
|
||||
|
||||
if (g_mouse_locked && !IsIconic(g_ddraw->hwnd))
|
||||
if (g_mouse_locked && !util_is_minimized(g_ddraw->hwnd))
|
||||
{
|
||||
real_MapWindowPoints(g_ddraw->hwnd, HWND_DESKTOP, (LPPOINT)&dst_rc, 2);
|
||||
|
||||
|
@ -137,7 +137,7 @@ LRESULT CALLBACK fake_WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam
|
||||
}
|
||||
case WM_D3D9DEVICELOST:
|
||||
{
|
||||
if (((!g_ddraw->windowed && !g_ddraw->nonexclusive) || !IsIconic(g_ddraw->hwnd)) &&
|
||||
if (((!g_ddraw->windowed && !g_ddraw->nonexclusive) || !util_is_minimized(g_ddraw->hwnd)) &&
|
||||
g_ddraw->renderer == d3d9_render_main &&
|
||||
d3d9_on_device_lost())
|
||||
{
|
||||
@ -531,7 +531,7 @@ LRESULT CALLBACK fake_WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam
|
||||
{
|
||||
if (g_ddraw->renderer == d3d9_render_main) /* Needed for Windows 7 */
|
||||
real_ShowWindow(g_ddraw->hwnd, SW_RESTORE);
|
||||
|
||||
|
||||
ChangeDisplaySettings(&g_ddraw->render.mode, CDS_FULLSCREEN);
|
||||
real_ShowWindow(g_ddraw->hwnd, SW_RESTORE);
|
||||
mouse_lock();
|
||||
|
Loading…
x
Reference in New Issue
Block a user