Simple Directmedia Layer
Go to file
Sam Lantinga 6a342954e8 Fixed bug 5451 - Can't create EGLSurface in Wayland from SDLWindow (no EGLNativeWindow pointer)
sashikknox

In some cases, need create EGLWindow with SDLWindow. In X11 i can get pointer to NativeWindow from **struct SDL_SysWMinfo wmInfo**
```C++
struct SDL_SysWMinfo wmInfo;
SDL_GetWindowWMInfo(ptSDLWindow, &wmInfo)
#if defined(__unix__) && defined(SDL_VIDEO_DRIVER_X11)
nativeWindow=(EGLNativeWindowType)wmInfo.info.x11.window;
nativeDisplay=(EGLNativeDisplayType)wmInfo.info.x11.display;
#endif
```
than i can create EGLSurface
```
eglCreateWindowSurface(nativeDisplay, EGL_CONFIG, nativeWindow, SURFACE_ATTRIBUTES);
```
in Wayland i can do it with same way, just need pointer to **EGLWindow**, we already have pointer to **wl_display** from **SDL_sysWMInfo**, need add to **wl** struct in SDL_SysWMInfo another pointer to **struct wl_egl_window *egl_window;**. And in wayland backend, in function **Wayland_GetWindowWMInfo** return pointer to **egl_window** from **SDL_WindowData**
Now i use patched statically built SDL2 in port of Quake 2 GLES2 for SailfishOS (it use QtWayland):
link to SDL2 commit and changed string for patch:
- 6858a618cd
- b1e29e87b9/SDL2/src/video/wayland/SDL_waylandwindow.c (L463)

link to use in Quake2 port:
1. here i get pointer to EGLNativeWindowType:  6d94fedb1b/Engine/Sources/Compatibility/OpenGLES/EGLWrapper.c (L319)
2. then use it for create EGLSurface: 6d94fedb1b/Engine/Sources/Compatibility/OpenGLES/EGLWrapper.c (L391)
2021-01-14 14:42:53 -08:00
acinclude acinclude/libtool.m4: Apply macos11 patch from libtool bug #44605 2021-01-09 00:11:20 +03:00
android-project Disabled Bluetooth if BLE is not supported 2021-01-07 19:33:12 -06:00
android-project-ant
build-scripts Fixed Xbox One Series X share button incorrectly triggering on newer firmware 2021-01-08 09:54:52 -08:00
cmake [KMS/DRM] Go back to the LEGACY interface only because using planes breaks compatibility with HW, so no advantage on using ATOMIC. 2021-01-08 18:57:12 +01:00
debian Updated copyright for 2021 2021-01-02 10:25:38 -08:00
docs added documentation docs/README-os2.md (based on original readme.os2). 2020-10-14 23:01:06 +03:00
include Fixed bug 5451 - Can't create EGLSurface in Wayland from SDLWindow (no EGLNativeWindow pointer) 2021-01-14 14:42:53 -08:00
src Fixed bug 5451 - Can't create EGLSurface in Wayland from SDLWindow (no EGLNativeWindow pointer) 2021-01-14 14:42:53 -08:00
test testgamecontroller: log which controller the event came from 2021-01-13 11:01:54 -08:00
VisualC Add SDL_cond implementation using Windows Condition Variables 2020-12-28 11:43:11 -08:00
VisualC-WinRT Add SDL_cond implementation using Windows Condition Variables 2020-12-28 11:43:11 -08:00
visualtest
wayland-protocols
Xcode fixed permissions of xcode project file 2021-01-08 21:56:00 +03:00
Xcode-iOS Added weak linking to hidapi framework 2020-11-17 10:29:36 -08:00
.hgignore Fixed bug 4965 - Update the .hgignore file 2020-02-03 16:38:07 -08:00
Android.mk minor whitespace fix 2020-10-09 03:28:30 +03:00
autogen.sh
BUGS.txt
cmake_uninstall.cmake.in
CMakeLists.txt removed MSVC strtok_s use from SDL_strtokr(). 2020-12-30 01:00:24 +03:00
configure acinclude/libtool.m4: Apply macos11 patch from libtool bug #44605 2021-01-09 00:11:20 +03:00
configure.ac Fixed bug 5461 - Add rewritten WSCONS driver for OpenBSD 2021-01-14 14:32:11 -08:00
COPYING.txt Updated copyright for 2021 2021-01-02 10:25:38 -08:00
CREDITS.txt
INSTALL.txt
Makefile.in Fixed bug 5399 - make install is broken as it depends on missing rule build 2020-12-15 00:42:17 -08:00
Makefile.minimal
Makefile.os2 Updated SDL to version 2.0.15 for development 2020-12-22 10:36:15 -08:00
Makefile.pandora
Makefile.psp added SDL_strtokr() as a replacement for POSIX strtok_r (bug #4046.) 2019-11-20 20:40:50 +03:00
Makefile.wiz
README-SDL.txt
README.txt
sdl2-config-version.cmake.in cmake: Forgot to add this file to revision control. 2020-02-25 14:52:03 -05:00
sdl2-config.cmake.in build: Merge pkg-config Libs.private into Libs for static-only builds 2020-04-11 23:38:34 +01:00
sdl2-config.in build: Don't duplicate Libs in Libs.private in pkg-config file 2020-04-12 13:24:36 +01:00
sdl2.m4 acinclude & sdl2.m4 updates: 2020-12-22 17:00:28 +03:00
sdl2.pc.in build: Merge pkg-config Libs.private into Libs for static-only builds 2020-04-11 23:38:34 +01:00
SDL2.spec.in Fixed bug 4615 - RPM Build fails due to unpackaged files 2019-06-11 19:58:10 -07:00
SDL2Config.cmake
TODO.txt
VisualC.html
WhatsNew.txt Fixed the name of the PS5 hint 2020-12-09 10:39:36 -08:00

                         Simple DirectMedia Layer

                                  (SDL)

                                Version 2.0

---
https://www.libsdl.org/

Simple DirectMedia Layer is a cross-platform development library designed
to provide low level access to audio, keyboard, mouse, joystick, and graphics
hardware via OpenGL and Direct3D. It is used by video playback software,
emulators, and popular games including Valve's award winning catalog
and many Humble Bundle games.

More extensive documentation is available in the docs directory, starting
with README.md

Enjoy!
	Sam Lantinga				(slouken@libsdl.org)