static void sdl2_gfx_set_handles(sdl2_video_t *vid) { /* SysWMinfo headers are broken on OSX. */ #if defined(_WIN32) || defined(HAVE_X11) SDL_SysWMinfo info; SDL_VERSION(&info.version); if (SDL_GetWindowWMInfo(vid->window, &info) != 1) return; #if defined(_WIN32) video_driver_display_type_set(RARCH_DISPLAY_WIN32); video_driver_display_set(0); video_driver_window_set((uintptr_t)info.info.win.window); #elif defined(HAVE_X11) video_driver_display_type_set(RARCH_DISPLAY_X11); video_driver_display_set((uintptr_t)info.info.x11.display); video_driver_window_set((uintptr_t)info.info.x11.window); #endif #endif }
bool x11_input_ctx_new(bool true_full) { if (!x11_create_input_context(g_x11_dpy, g_x11_win, &g_x11_xim, &g_x11_xic)) return false; video_driver_display_type_set(RARCH_DISPLAY_X11); video_driver_display_set((uintptr_t)g_x11_dpy); video_driver_window_set((uintptr_t)g_x11_win); g_x11_true_full = true_full; return true; }
bool win32_window_create(void *data, unsigned style, RECT *mon_rect, unsigned width, unsigned height, bool fullscreen) { #ifndef _XBOX main_window.hwnd = CreateWindowEx(0, "RetroArch", "RetroArch", style, fullscreen ? mon_rect->left : g_pos_x, fullscreen ? mon_rect->top : g_pos_y, width, height, NULL, NULL, NULL, data); if (!main_window.hwnd) return false; video_driver_display_type_set(RARCH_DISPLAY_WIN32); video_driver_display_set(0); video_driver_window_set((uintptr_t)main_window.hwnd); #endif return true; }