Commit Graph

69 Commits

Author SHA1 Message Date
Kyle Brenneman fcccc9dc0b Use eglGetPlatformDisplay when it's available.
Added a platform parameter to egl_init_context. If the caller provides a
platform other than EGL_NONE, then it will try to use eglGetPlatformDisplay or
eglGetPlatformDisplayEXT instead of eglGetDisplay.

If neither eglGetPlatformDisplay or eglGetPlatformDisplayEXT is supported, then
it will still fall back to calling eglGetDisplay.

Updated the Wayland, X11, and DRM callers to use the correct platform enum.
Those are the callers that don't just pass EGL_DEFAULT_DISPLAY as the native
display handle.

Calling eglGetDisplay with any value other than EGL_DEFAULT_DISPLAY is
inherently unreliable, because it requires the EGL implementation to guess a
platform type based on a (void *) pointer. Some implementations might not
identify a particular platform, or worse, might guess wrong.

Fixes https://github.com/libretro/RetroArch/issues/4790
2017-04-16 14:19:40 -06:00
twinaphex 6247d6ea1d Update check_window - we no longer need runloop.h inside context driver 2017-01-23 01:02:33 +01:00
twinaphex 1ea3bea0ee Don't pass video_info by value to context_driver init function 2017-01-22 18:29:22 +01:00
twinaphex 96c8ca5a09 Header update #1 2017-01-22 13:40:32 +01:00
twinaphex 9d1de5c974 Rewrite video_context_driver_set_resize 2017-01-19 14:31:57 +01:00
twinaphex 7fbd3fcfb6 Simplify has_windowed 2017-01-19 02:50:56 +01:00
twinaphex b96e0bb820 Remove stub update_title functions 2017-01-19 01:58:44 +01:00
twinaphex 34da27c36b Don't need 'frame_count' variable for check_window 2017-01-18 21:47:12 +01:00
twinaphex 40cd1b70cd Remove runloop.h header includes 2017-01-18 17:43:23 +01:00
twinaphex a6a4808e94 Refactor frame monitor code 2017-01-18 17:41:27 +01:00
twinaphex 666534cc74 Grab settings pointer only once inside wrapper 'input_driver' function 2017-01-16 00:14:10 +01:00
twinaphex 1fa3475d79 Add parameter to video_context_driver's 'init' function 2017-01-13 16:52:07 +01:00
twinaphex 80f79130c0 Update set_video_mode context driver callback function 2017-01-11 06:35:50 +01:00
twinaphex 36fb6776b2 Don't grab settings pointer in video_monitor_get_fps function 2017-01-09 15:42:14 +01:00
twinaphex 6b3cc9068d Pass video_info to swap_buffers too 2017-01-09 14:59:15 +01:00
twinaphex 3d92ce140e Pass video_frame_info_t to update_window_title 2017-01-09 14:42:07 +01:00
twinaphex 77e5cdbfde Revert "Rename runloop_msg_queue_push to video_driver_msg_queue_push"
This reverts commit ad7386913c.
2016-12-22 23:36:11 +01:00
twinaphex ad7386913c Rename runloop_msg_queue_push to video_driver_msg_queue_push
and move code to video_driver.c
2016-12-22 13:15:02 +01:00
twinaphex 51b0e61712 Cleanups 2016-09-11 16:24:02 +02:00
twinaphex 7e83162c60 Remove general.h 2016-09-11 15:10:58 +02:00
twinaphex 6f47289ba6 Start adding HAVE_CONFIG_H to gfx/drivers_context 2016-09-06 19:39:02 +02:00
twinaphex acd4dd527b Header include cleanups 2016-09-05 18:31:32 +02:00
twinaphex aa15fb3f91 Update remaining video context drivers 2016-08-31 15:02:07 +02:00
twinaphex e1a5379886 (FBDev) Cleanups/unifications 2016-07-08 14:29:16 +02:00
twinaphex bddd93bcaa (EGL) Don't use g_egl_quit and egl_install_sighandler 2016-07-08 12:58:06 +02:00
twinaphex 60233d1abb Add set_flags to context driver 2016-05-05 17:35:28 +02:00
twinaphex 8136683ffc (context drivers) Start exposing core GL flag 2016-05-05 05:46:00 +02:00
twinaphex a0425dfb14 (Context drivers) Add get_flags function 2016-05-05 05:35:35 +02:00
Jean-André Santoni 0863a8eb84 Reorder static functions in vivante context 2016-03-12 04:29:26 +07:00
twinaphex e938be3747 Have to rewrite EGL context code 2016-03-01 06:49:05 +01:00
twinaphex 3b8932b302 Turn returntype of set_resize into bool 2016-01-07 00:58:33 +01:00
Higor Eurípedes 98baf27a99 (vivante-fbdev) Convert to new egl common api 2015-12-08 17:33:59 -03:00
Higor Eurípedes c257374dcd (video_context_driver) Make better use of the data argument in context calls 2015-12-08 12:19:08 -03:00
twinaphex 2d55dc3bda Complete namespace changes 2015-12-07 15:32:14 +01:00
twinaphex 85dbeeb8f9 No more video_monitor.h 2015-11-22 13:32:46 +01:00
twinaphex 259674fee2 (vivante fbdev) Add function pointer for rendering hardware contexts 2015-11-20 13:46:41 +01:00
twinaphex 2f151896eb use egl_create_surface everywhere 2015-11-20 13:43:05 +01:00
twinaphex 01614bb7f4 Start using egl_create_context in more drivers 2015-11-19 18:29:15 +01:00
twinaphex c1e61f7ff0 Start using egl_init_context for most GLES context drivers 2015-11-19 18:10:59 +01:00
twinaphex 80369a8823 Create egl_install_sighandlers 2015-11-19 15:55:57 +01:00
twinaphex ad311d3bb0 Set g_egl_quit to 0 at end of egl_destroy 2015-11-19 15:49:49 +01:00
twinaphex 2fe6686ced Create g_egl_quit 2015-11-19 15:47:30 +01:00
twinaphex 774542fc62 Simplify egl_destroy 2015-11-19 15:34:40 +01:00
twinaphex 46fb98e21c Create egl_get_video_size 2015-11-19 15:21:04 +01:00
twinaphex 5aedc1c4ca Create egl_set_swap_interval 2015-11-19 15:16:37 +01:00
twinaphex 9705dc8d04 Create egl_destroy 2015-11-19 14:23:14 +01:00
twinaphex 36579ae58d Start moving identical state variables to egl_common.c 2015-11-19 14:09:51 +01:00
twinaphex ffbb9d0481 Create generic egl_get_proc_address 2015-11-19 13:24:51 +01:00
twinaphex 239ae7de53 Move gl_common to gfx/common 2015-11-17 08:01:33 +01:00
twinaphex 02a43c6b2a Change 'rarch' to 'retro' namespace in libretro-common 2015-10-26 03:18:13 +01:00