From 522321b7c91f48459f03c9575e5ae032ca38ce12 Mon Sep 17 00:00:00 2001
From: Frank Praznik <[EMAIL REDACTED]>
Date: Tue, 1 Oct 2024 12:40:17 -0400
Subject: [PATCH] test: Fix testcustomcursor on high-DPI displays
Use the backbuffer dimensions and scale the chessboard pattern to draw it filling the window on scaled displays.
---
test/testcustomcursor.c | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/test/testcustomcursor.c b/test/testcustomcursor.c
index 20012ad4e9d75..d7f6e3edcae78 100644
--- a/test/testcustomcursor.c
+++ b/test/testcustomcursor.c
@@ -341,10 +341,11 @@ static void loop(void)
SDL_FRect rect;
int x, y, row;
int window_w = 0, window_h = 0;
+ const float scale = SDL_GetWindowPixelDensity(state->windows[i]);
- SDL_GetWindowSize(state->windows[i], &window_w, &window_h);
- rect.w = 128.0f;
- rect.h = 128.0f;
+ SDL_GetWindowSizeInPixels(state->windows[i], &window_w, &window_h);
+ rect.w = 128.0f * scale;
+ rect.h = 128.0f * scale;
for (y = 0, row = 0; y < window_h; y += (int)rect.h, ++row) {
bool black = ((row % 2) == 0) ? true : false;
for (x = 0; x < window_w; x += (int)rect.w) {