From b71208d45279640f9cbe6e67bb012fa75d80c68d Mon Sep 17 00:00:00 2001 From: Boris Gjenero Date: Tue, 13 Sep 2016 00:03:53 -0700 Subject: [PATCH] Support SDL_SetWindowTitle() via Module['setWindowTitle']() --- src/video/emscripten/SDL_emscriptenvideo.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/video/emscripten/SDL_emscriptenvideo.c b/src/video/emscripten/SDL_emscriptenvideo.c index ef418cf87..eb3179797 100644 --- a/src/video/emscripten/SDL_emscriptenvideo.c +++ b/src/video/emscripten/SDL_emscriptenvideo.c @@ -47,6 +47,7 @@ static void Emscripten_SetWindowSize(_THIS, SDL_Window * window); static void Emscripten_DestroyWindow(_THIS, SDL_Window * window); static void Emscripten_SetWindowFullscreen(_THIS, SDL_Window * window, SDL_VideoDisplay * display, SDL_bool fullscreen); static void Emscripten_PumpEvents(_THIS); +static void Emscripten_SetWindowTitle(_THIS, SDL_Window * window); /* Emscripten driver bootstrap functions */ @@ -84,9 +85,9 @@ Emscripten_CreateDevice(int devindex) device->PumpEvents = Emscripten_PumpEvents; device->CreateWindow = Emscripten_CreateWindow; - /*device->CreateWindowFrom = Emscripten_CreateWindowFrom; + /*device->CreateWindowFrom = Emscripten_CreateWindowFrom;*/ device->SetWindowTitle = Emscripten_SetWindowTitle; - device->SetWindowIcon = Emscripten_SetWindowIcon; + /*device->SetWindowIcon = Emscripten_SetWindowIcon; device->SetWindowPosition = Emscripten_SetWindowPosition;*/ device->SetWindowSize = Emscripten_SetWindowSize; /*device->ShowWindow = Emscripten_ShowWindow; @@ -317,6 +318,16 @@ Emscripten_SetWindowFullscreen(_THIS, SDL_Window * window, SDL_VideoDisplay * di } } +static void +Emscripten_SetWindowTitle(_THIS, SDL_Window * window) { + EM_ASM_INT({ + if (typeof Module['setWindowTitle'] !== 'undefined') { + Module['setWindowTitle'](Module['Pointer_stringify']($0)); + } + return 0; + }, window->title); +} + #endif /* SDL_VIDEO_DRIVER_EMSCRIPTEN */ /* vi: set ts=4 sw=4 expandtab: */