Skip to content

Commit d88db37

Browse files
committed
Update multi window to use if SDL_GetWindowPosition
1 parent c580523 commit d88db37

File tree

2 files changed

+26
-5
lines changed

2 files changed

+26
-5
lines changed

src/video/emscripten/SDL_emscriptenvideo.c

+2
Original file line numberDiff line numberDiff line change
@@ -853,6 +853,7 @@ static bool Emscripten_SyncWindow(SDL_VideoDevice *_this, SDL_Window *window)
853853
{
854854
// querySelector throws if id is not a valid selector
855855
}
856+
return 0;
856857
}, window_data->canvas_id);
857858
window->y = MAIN_THREAD_EM_ASM_INT({
858859
var id = UTF8ToString($0);
@@ -868,6 +869,7 @@ static bool Emscripten_SyncWindow(SDL_VideoDevice *_this, SDL_Window *window)
868869
{
869870
// querySelector throws if id is not a valid selector
870871
}
872+
return 0;
871873
}, window_data->canvas_id);
872874
return true;
873875
}

test/testmultiwindow.c

+24-5
Original file line numberDiff line numberDiff line change
@@ -27,17 +27,36 @@ static void DestroyTestWindow(TestWindow *testWindow)
2727
SDL_DestroyWindow(testWindow->window);
2828
}
2929

30+
static bool ColorIsBright(SDL_Color color)
31+
{
32+
return (color.r * 0.2126 + color.g * 0.7152 + color.b * 0.0722) > 128.0;
33+
}
34+
3035
static void RenderTestWindow(TestWindow *testWindow)
3136
{
37+
SDL_Window *window = testWindow->window;
3238
SDL_Renderer *renderer = testWindow->renderer;
39+
SDL_Color color = testWindow->color;
3340

3441
if (renderer) {
35-
SDL_SetRenderDrawColor(renderer,
36-
testWindow->color.r,
37-
testWindow->color.g,
38-
testWindow->color.b,
39-
testWindow->color.a);
42+
SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, color.a);
4043
SDL_RenderClear(renderer);
44+
45+
if (ColorIsBright(color)) {
46+
color.r = 0;
47+
color.g = 0;
48+
color.b = 0;
49+
}
50+
else {
51+
color.r = 255;
52+
color.g = 255;
53+
color.b = 255;
54+
}
55+
SDL_SetRenderDrawColor(renderer, color.r, color.g, color.b, color.a);
56+
57+
int x, y;
58+
SDL_GetWindowPosition(window, &x, &y);
59+
SDL_RenderDebugTextFormat(renderer, 0, 0, "Global Window Position: %d %d", x, y);
4160
SDL_RenderPresent(renderer);
4261
}
4362
}

0 commit comments

Comments
 (0)