Parcourir la source

Windows: Report window HDC in SDL_SysWMinfo.

Fixes Bugzilla #2668.
Ryan C. Gordon il y a 10 ans
Parent
commit
331a434fa1
2 fichiers modifiés avec 4 ajouts et 2 suppressions
  1. 1 0
      include/SDL_syswm.h
  2. 3 2
      src/video/windows/SDL_windowswindow.c

+ 1 - 0
include/SDL_syswm.h

@@ -186,6 +186,7 @@ struct SDL_SysWMinfo
         struct
         {
             HWND window;                /**< The window handle */
+            HDC hdc;                    /**< The window device context */
         } win;
 #endif
 #if defined(SDL_VIDEO_DRIVER_WINRT)

+ 3 - 2
src/video/windows/SDL_windowswindow.c

@@ -643,10 +643,11 @@ WIN_DestroyWindow(_THIS, SDL_Window * window)
 SDL_bool
 WIN_GetWindowWMInfo(_THIS, SDL_Window * window, SDL_SysWMinfo * info)
 {
-    HWND hwnd = ((SDL_WindowData *) window->driverdata)->hwnd;
+    const SDL_WindowData *data = (const SDL_WindowData *) window->driverdata;
     if (info->version.major <= SDL_MAJOR_VERSION) {
         info->subsystem = SDL_SYSWM_WINDOWS;
-        info->info.win.window = hwnd;
+        info->info.win.window = data->hwnd;
+        info->info.win.hdc = data->hdc;
         return SDL_TRUE;
     } else {
         SDL_SetError("Application not compiled with SDL %d.%d\n",