diff options
| author | Rye <rye@alchemyviewer.org> | 2025-10-30 17:22:09 -0400 |
|---|---|---|
| committer | Rye <rye@alchemyviewer.org> | 2025-11-02 21:40:05 -0500 |
| commit | 0c1cbf2d38cbd0db5c9cfb86559b4fc5e4acee0d (patch) | |
| tree | 725abfa056852880daeaa3bae41951b03c1bcb3d /indra/llwindow/llwindowsdl.h | |
| parent | 0c796b0c429058b334ee8968c4f0019445c09d55 (diff) | |
Add support for GLX and EGL to GL extension loader
Fix dullahan wayland support
Fix shader GL_ERROR under GL Core profile in Mesa
Signed-off-by: Rye <rye@alchemyviewer.org>
Diffstat (limited to 'indra/llwindow/llwindowsdl.h')
| -rw-r--r-- | indra/llwindow/llwindowsdl.h | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/indra/llwindow/llwindowsdl.h b/indra/llwindow/llwindowsdl.h index 966999ac12..8a8e9dd1bf 100644 --- a/indra/llwindow/llwindowsdl.h +++ b/indra/llwindow/llwindowsdl.h @@ -35,6 +35,15 @@ #include "SDL3/SDL.h" #include "SDL3/SDL_endian.h" +#ifdef LL_WAYLAND +#include <wayland-client-protocol.h> +#endif + +#if LL_X11 +#include <X11/Xlib.h> +#include <X11/Xutil.h> +#endif + class LLPreeditor; class LLWindowSDL final : public LLWindow @@ -217,6 +226,30 @@ private: U32 mKeyModifiers = SDL_KMOD_NONE; void tryFindFullscreenSize(int &aWidth, int &aHeight); + + enum EServerProtocol{ X11, Wayland, Unknown }; + EServerProtocol mServerProtocol = Unknown; +public: +#if LL_X11 + // X11 + struct X11_DATA + { + Display* xdisplay = nullptr; + Window xwindow = 0; + int xscreen = -1; + }; + static X11_DATA sX11Data; +#endif + +#if LL_WAYLAND + // Wayland + struct WAYLAND_DATA + { + struct wl_display* display = nullptr; + struct wl_surface* surface = nullptr; + }; + static WAYLAND_DATA sWaylandData; +#endif }; class LLSplashScreenSDL : public LLSplashScreen |
