diff options
Diffstat (limited to 'source/application/StarMainApplication_sdl.cpp')
-rw-r--r-- | source/application/StarMainApplication_sdl.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source/application/StarMainApplication_sdl.cpp b/source/application/StarMainApplication_sdl.cpp index 941b344..953d3d8 100644 --- a/source/application/StarMainApplication_sdl.cpp +++ b/source/application/StarMainApplication_sdl.cpp @@ -282,6 +282,15 @@ public: if (!m_platformServices) Logger::info("Application: No platform services available"); +#ifdef STAR_SYSTEM_LINUX // Checks for Wayland and uses it if available, otherwise uses X11. + if (SDL_getenv("WAYLAND_DISPLAY") != nullptr) { + SDL_setenv("SDL_VIDEODRIVER", "wayland", 1); + Logger::info("Application: Using Wayland window system"); + } else { + SDL_setenv("SDL_VIDEODRIVER", "x11", 1); + Logger::info("Application: Using X11 window system"); + } + Logger::info("Application: Creating SDL Window"); m_sdlWindow = SDL_CreateWindow(m_windowTitle.utf8Ptr(), SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, m_windowSize[0], m_windowSize[1], SDL_WINDOW_OPENGL | SDL_WINDOW_RESIZABLE); |