Sunderland93
d81e9a08b2
Add toplevel width and height
2018-11-28 17:59:06 +04:00
Sunderland93
1e097b0e1d
Implement xdg_toplevel_close event
2018-11-28 13:58:14 +04:00
Sunderland93
b538786b00
Implement zwp_idle_inhibit_v1 protocol
2018-11-26 21:54:39 +04:00
twinaphex
7d9e564667
Turn some C++ comments into C comments
2018-11-24 19:40:14 +01:00
Sunderland93
17fd203141
Waiting for the "initial" set of globals to appear
...
(fixed xdg_wm_base_ping working)
2018-11-24 20:52:22 +04:00
Sunderland93
fbcab67d8b
Fix wrong toplevel geometry
2018-11-23 23:04:06 +04:00
Sunderland93
cd8bf003d1
Add toplevel configuration
2018-11-23 21:23:53 +04:00
Sunderland93
9d5cb529c1
Add wait event for surface configure
2018-11-23 21:08:42 +04:00
Sunderland93
2615ad3f55
Make it works!
2018-11-21 21:28:32 +04:00
Sunderland93
b64f302eb7
Check for resize
2018-11-19 22:31:17 +04:00
Sunderland93
4d8defb4c9
Remove D-bus based screensaver inhibition
...
(will replaced to idle-inhibit in future)
2018-11-18 21:50:39 +04:00
Sunderland93
c32c98e667
Very WIP: xdg-shell support
2018-11-17 16:01:51 +04:00
twinaphex
4738ef545c
Change interval type to signed int
2018-09-12 00:08:13 +02:00
twinaphex
ae0d9fd60d
(Wayland) Buildfixes
2018-08-17 17:42:14 +02:00
Wiktor Strzębała
45799ee034
Bring up touch support for wayland subsystem for sailfish os devices
...
Touch code cleanup
Make variabled static as suggest bparker06
C89 compilation error fix (at least for loops)
More C89 fixes
Signed-off-by: Wiktor Strzębała <wiktorek140@tlen.pl>
2018-08-09 20:49:27 +02:00
twinaphex
aec7ed40da
This crashed Wayland
2018-08-01 01:15:58 +02:00
Sven
5f35249216
Implement robust cheat searching interface with rumble features
2018-07-25 19:19:14 -04:00
Themaister
f2cae17021
Vulkan: Try to avoid creating swapchains redundantly.
...
Win32: Only make resize events when needed.
Do not create swapchain unless necessary.
Deal better with Windows WSI workarounds.
2018-07-01 16:21:09 +02:00
Gustavo Maciel Dias Vieira
14c505117d
Add screensaver (idle) inhibition for Wayland driver
...
The Wayland driver currently has no implementation for gfx_ctx_wl_suppress_screensaver. This adds a Dbus implementation using the same infrastructure used by the X11 driver.
2018-05-29 09:56:58 -03:00
Brandon Wright
df5528b1d0
Divide Wayland rate by 1000 instead of multiply.
2018-04-15 20:00:14 -05:00
Brandon Wright
533f898132
Add get refresh rate context function. Implement for X11 and Wayland.
2018-04-15 17:56:12 -05:00
Brandon Wright
e8de264b75
Fix X11 Vulkan bug from Wayland driver.
2018-03-17 19:45:01 -05:00
twinaphex
16c1bd7a03
Create context get_api function
2018-03-01 21:16:54 +01:00
gblues
6904101c44
Clean up trailing whitespace
...
== DETAILS
Really simple code cleanup, because my editor flags trailing whitespaces
and it's pretty annoying.
2017-12-12 00:24:18 -08:00
Themaister
75b84b4f94
Support pending swapchain creation.
2017-12-09 17:28:20 +01:00
Brad Parker
1771b11a39
wayland: fix heap buffer overflows
2017-11-05 19:31:34 -05:00
twinaphex
060753258a
Combine input_driver.c and input_keyboard.c
2017-06-11 17:51:12 +02:00
twinaphex
ded0813f6b
Don't need this header
2017-06-06 07:36:06 +02:00
twinaphex
f307135d1d
Split up wayland input driver into separate driver; and
...
improve mouse support for menu
2017-06-06 07:34:33 +02:00
twinaphex
6b3dbff75f
Merge input_driver.c and input_joypad_driver.c
2017-06-06 05:56:02 +02:00
twinaphex
9ebfb36b4e
Use rarch_keysym_lut directly
2017-06-06 05:17:25 +02:00
twinaphex
9d74212a41
Buildfix
2017-05-19 03:35:32 +02:00
twinaphex
b0398c1482
C89 build fixes
2017-05-19 03:34:53 +02:00
twinaphex
126a5bf121
Use string_is_equal_fast/string_is_not_equal_fast
2017-05-16 04:00:37 +02:00
twinaphex
953045f0d2
Update logs
2017-04-23 11:56:46 +02:00
twinaphex
6ebd4e139e
Rewrite more string_is_equal call invocations as memcmp
2017-04-22 08:51:16 +02:00
Kyle Brenneman
a4d19e174a
Define the platform enums if they aren't in eglext.h.
...
Add #defines for EGL_PLATFORM_X11_KHR, EGL_PLATFORM_WAYLAND_KHR, and
EGL_PLATFORM_GBM_KHR, if they aren't already defiend in eglext.h.
2017-04-19 07:08:05 -06:00
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
7f4b490fdb
Prevent implicit memsets with struct video_viewport
2017-04-15 19:43:52 +02:00
twinaphex
6247d6ea1d
Update check_window - we no longer need runloop.h inside context driver
2017-01-23 01:02:33 +01:00
twinaphex
4ea31e99aa
Remove some header includes
2017-01-23 00:39:20 +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
Brad Parker
a54ea9ad88
show titlebar again for remaining drivers
2017-01-19 18:08:39 +00:00
Brad Parker
b44c8c9995
store buffer for window title, only update actual title when it changes
2017-01-19 00:33:52 -05:00
twinaphex
34da27c36b
Don't need 'frame_count' variable for check_window
2017-01-18 21:47:12 +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
d48141041d
Pass joypad_info to input_state function callback - less
...
settings pointer grabbing
2017-01-10 17:40:21 +01:00
twinaphex
b9945f05f1
Pass joypad_info to input_joypad_analog
2017-01-10 03:53:57 +01:00
twinaphex
6376f2af68
Add rarch_joypad_info_t
2017-01-10 03:44:53 +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
a90cf337c7
C buildfix
2017-01-09 01:56:36 +01:00
twinaphex
c87ef25133
CXX_BUILD fix
2017-01-09 01:54:15 +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
Hans-Kristian Arntzen
c48bb6284e
Wayland: Cursor toggling.
2016-12-17 21:34:51 +01:00
Hans-Kristian Arntzen
313ac63c33
Make use of xkb_state_update_mask.
...
Fixes mod keys in Wayland it seems.
2016-12-17 20:42:48 +01:00
Hans-Kristian Arntzen
b2059dcb79
Implement basic Wayland keyboard and mouse.
2016-12-17 20:28:08 +01:00
twinaphex
2c7af649cf
(Wayland) Cleanups
2016-12-04 03:54:11 +01:00
twinaphex
aaefa8d59e
(wayland_ctx.c) Prevent implicit memsets
2016-11-06 18:47:50 +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
Brad Parker
0eb1777a1f
remove extra semicolons
2016-09-03 10:30:21 -04:00
twinaphex
aa15fb3f91
Update remaining video context drivers
2016-08-31 15:02:07 +02:00
Brad Parker
2afd72252c
make GLX context current when creating font textures with threaded video
2016-08-31 01:33:35 -04:00
Logan McNaughton
47227c829b
GLES3 fixes
2016-08-06 21:45:35 -06:00
twinaphex
d953be6397
(Wayland) Use signal handler code from frontend driver
2016-07-08 12:52:46 +02:00
Hans-Kristian Arntzen
471d06d133
Fix Wayland refresh rate logging.
2016-07-06 23:22:13 +02:00
twinaphex
5845a9944d
Add more HAVE_THREADS ifdefs
2016-05-11 19:02:43 +02:00
Hans-Kristian Arntzen
d723411436
De ioctl video_driver.
2016-05-08 14:00:51 +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
twinaphex
64a77af881
Use RARCH_DISPLAY_CTL_HW_CONTEXT_GET directly instead of
...
going through video_driver_callback
2016-03-04 20:49:55 +01:00
twinaphex
b8c1e31c13
(Android/Vulkan) Start hooking up Vulkan for Android context driver
2016-03-01 18:16:22 +01:00
twinaphex
e938be3747
Have to rewrite EGL context code
2016-03-01 06:49:05 +01:00
Alcaro
7a6463a300
Add escape hatch if rarch (or the core) is in an infinite loop.
2016-02-23 16:11:39 +01:00
twinaphex
22a677b3a8
Don't use egl_common's 'api' variable anymore
2016-02-22 11:54:19 +01:00
twinaphex
fd7a62f5ca
(Wayland) Context driver doesn't use egl api anymore
2016-02-22 11:48:17 +01:00
twinaphex
e4935d490c
(DRM) Uses its own sighandler and atomic quit variable
2016-02-22 11:46:08 +01:00
Hans-Kristian Arntzen
c4104ae37c
Wayland: Add metrics support.
2016-02-21 22:04:56 +01:00
Hans-Kristian Arntzen
52a515f0d3
Wayland: Add HiDPI awareness.
2016-02-21 21:35:06 +01:00
twinaphex
fde9f1ce2c
Start making GL optional (previously we assumed pretty much - hardware
...
context = GL) Still have the issue where the menu driver auto-switches
back to rgui instead of glui/xmb
2016-02-20 06:16:34 +01:00
Hans-Kristian Arntzen
88ec0f522b
Vulkan: Add Vulkan backend to GLX context.
...
Also fixes some snags with libretro-test-vulkan.
2016-02-19 21:37:24 +01:00
twinaphex
11831a8b47
move shareable vulkan initialization code to vulkan_common.c
2016-02-19 14:38:15 +01:00
twinaphex
e1a1843edc
Start moving code to vulkan_common.h
2016-02-19 14:23:51 +01:00
twinaphex
2d5e10e840
Fix this
2016-02-19 13:17:03 +01:00
twinaphex
140d65b994
Setup specific WSI extensions
2016-02-19 13:11:30 +01:00
twinaphex
7ec1a6836c
(Vulkan WSI) Add Mir bits (we don't have Mir context driver yet
...
but whatever, add them all)
2016-02-19 13:06:38 +01:00
twinaphex
50efe142b9
Go through function pointers
2016-02-19 13:03:35 +01:00
twinaphex
eb1fe0476d
Start implementing xlib/xcb bits (for when these context drivers
...
get added)
2016-02-19 12:46:42 +01:00
twinaphex
14d39be698
Move code around
2016-02-19 12:30:18 +01:00
twinaphex
cebefa6ae1
Refactor vulkan_surface_create
2016-02-19 12:23:16 +01:00
twinaphex
db074e1c1a
Start implementing more WSI variants
2016-02-19 12:15:16 +01:00
twinaphex
353c421a5c
Add function pointer for vkCreateAndroidSurfaceKHR
2016-02-19 12:08:34 +01:00
twinaphex
6fcd097e4c
Start setting up vulkan_init_context for multiple WSI types
2016-02-19 12:04:56 +01:00
twinaphex
1c412eea5a
Start adding preliminary implementation for vulkan_surface_create
2016-02-19 12:00:52 +01:00
twinaphex
96c9687a8a
Create vulkan_surface_create
2016-02-19 11:55:57 +01:00
twinaphex
98990d6afc
Add more WSI enum types
2016-02-19 11:50:25 +01:00
twinaphex
7205d76ab0
Cleanups
2016-02-19 11:36:46 +01:00
twinaphex
c105fb22f3
Style nits
2016-02-19 11:29:15 +01:00
twinaphex
a61536ffdc
More refactors - create vulkan_destroy_context
2016-02-19 11:12:43 +01:00
twinaphex
6be1453d9c
Create vulkan_init_context
2016-02-19 11:04:51 +01:00
twinaphex
50a605e9db
Cleanups
2016-02-19 10:54:00 +01:00
twinaphex
1165d1c0b7
Create gfx_ctx_vulkan_data_t
2016-02-19 10:35:59 +01:00
twinaphex
02e3d6eba7
Only one Wayland context driver now
2016-02-19 07:58:14 +01:00
twinaphex
0b85951abe
(Wayland context) Cleanup some defines
2016-02-18 07:40:13 +01:00
twinaphex
a21444fc9a
(Wayland ctx) More improvements to Vulkan support
2016-02-18 07:29:20 +01:00
twinaphex
f5c5c82729
Add extra conditionals for all possible usecases (HAVE_EGL/HAVE_OPENGL/HAVE_OPENGLES/etc)
2016-02-18 07:18:58 +01:00
twinaphex
bd672b8b72
Add vulkan path in registry_handle_global
2016-02-18 05:31:24 +01:00
twinaphex
620fbe8976
Forgot to set this
2016-02-18 00:20:23 +01:00
twinaphex
eeada0c458
Start making general-purpose Wayland context driver that could work
...
for both Vulkan and EGL/GL
2016-02-17 23:22:54 +01:00
twinaphex
56a14ffc3c
Start adding HAVE_OPENGL/HAVE_VG ifdefs
2016-02-17 22:20:43 +01:00
Hans-Kristian Arntzen
adbf9fed16
Vulkan implementation.
2016-02-16 20:42:02 +01:00
twinaphex
157eb71606
Use string_is_equal more
2016-01-20 06:16:55 +01:00
twinaphex
54f46f4ee3
Update headers
2016-01-10 04:41:52 +01:00
twinaphex
3b8932b302
Turn returntype of set_resize into bool
2016-01-07 00:58:33 +01:00
twinaphex
e1331fa6a5
CXX_BUILD fixes
2015-12-10 14:05:56 +01:00
twinaphex
902997c579
Remove gfx_ctx_data_get_ptr
2015-12-09 09:05:55 +01:00
Higor Eurípedes
1cf574cfbe
Move most of egl_common globals into egl_ctx_data_t
2015-12-08 13:54:03 -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
a95762e5cb
Create egl_has_config
2015-12-08 14:42:02 +01:00
twinaphex
2d55dc3bda
Complete namespace changes
2015-12-07 15:32:14 +01:00
twinaphex
866501703f
Cleanups
2015-11-23 21:28:54 +01:00
twinaphex
f98cda3c33
video_context_data only accessed now from one file
2015-11-23 21:06:15 +01:00
twinaphex
1f87c6d9e2
Dont' try to access driver->video_context_data directly
2015-11-23 20:56:06 +01:00
twinaphex
85dbeeb8f9
No more video_monitor.h
2015-11-22 13:32:46 +01:00
twinaphex
2f151896eb
use egl_create_surface everywhere
2015-11-20 13:43:05 +01:00
twinaphex
1101bb34d3
Create g_egl_api/g_egl_inited
2015-11-20 13:27:31 +01:00
twinaphex
3c842823bc
(Mali/Wayland) Use egl_create_context
2015-11-19 18:36:24 +01:00
twinaphex
c1e61f7ff0
Start using egl_init_context for most GLES context drivers
2015-11-19 18:10:59 +01:00
twinaphex
ee3f625a83
Remove signal includes
2015-11-19 15:57:09 +01:00
twinaphex
80369a8823
Create egl_install_sighandlers
2015-11-19 15:55:57 +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
5aedc1c4ca
Create egl_set_swap_interval
2015-11-19 15:16:37 +01:00
twinaphex
7b39fd50a3
Create egl_swap_buffers
2015-11-19 14:38:55 +01:00
twinaphex
e2c82900d1
Create egl_bind_hw_render
2015-11-19 14:32:39 +01:00
twinaphex
6dee1fcc92
Move g_use_hw_ctx to egl_common.c
2015-11-19 14:28:21 +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
50f8634902
Add gfx/common/egl_common.c
2015-11-19 13:16:43 +01:00