From 161935f3178f343848839ad93ccaa6c1988bdef6 Mon Sep 17 00:00:00 2001 From: Erik Kundiman Date: Fri, 21 Jun 2024 17:40:58 +0800 Subject: Revert to using Cocoa instead of SDL2 for macOS Our SDL2-based code is kept Darwin-ready. This move was triggered by the merge with SLv's release/maint-b branch causing the viewer to show only a black screen, even though everything else seemed to be working (logging in, streaming, quitting the app). This decision also has caused numerous MPv specific window-related macOS bugs to be fixed. I wanted to commit this on the main branch, but somehow it failed to build. This move was bound to happen at the arrival of Maintenance B after all. --- indra/llwindow/llwindow.cpp | 30 +++++++++++++----------------- 1 file changed, 13 insertions(+), 17 deletions(-) (limited to 'indra/llwindow/llwindow.cpp') diff --git a/indra/llwindow/llwindow.cpp b/indra/llwindow/llwindow.cpp index b51b4fad82..6556bc09c6 100644 --- a/indra/llwindow/llwindow.cpp +++ b/indra/llwindow/llwindow.cpp @@ -33,10 +33,8 @@ #include "llwindowsdl.h" #elif LL_WINDOWS #include "llwindowwin32.h" -/* #elif LL_DARWIN #include "llwindowmacosx.h" -*/ #endif #include "llerror.h" @@ -76,12 +74,12 @@ S32 OSMessageBox(const std::string& text, const std::string& caption, U32 type) #if LL_MESA_HEADLESS // !!! *FIX: (?) LL_WARNS() << "OSMessageBox: " << text << LL_ENDL; return OSBTN_OK; -#elif LL_SDL - result = OSMessageBoxSDL(text, caption, type); #elif LL_WINDOWS result = OSMessageBoxWin32(text, caption, type); -#elif LL_DARWIN +#elif LL_DARWIN && !LL_SDL result = OSMessageBoxMacOSX(text, caption, type); +#elif LL_SDL + result = OSMessageBoxSDL(text, caption, type); #else #error("OSMessageBox not implemented for this platform!") #endif @@ -261,12 +259,12 @@ BOOL LLWindow::copyTextToPrimary(const LLWString &src) // static std::vector LLWindow::getDynamicFallbackFontList() { -#if LL_SDL - return LLWindowSDL::getDynamicFallbackFontList(); -#elif LL_WINDOWS +#if LL_WINDOWS return LLWindowWin32::getDynamicFallbackFontList(); -#elif LL_DARWIN +#elif LL_DARWIN && !LL_SDL return LLWindowMacOSX::getDynamicFallbackFontList(); +#elif LL_SDL + return LLWindowSDL::getDynamicFallbackFontList(); #else return std::vector(); #endif @@ -275,12 +273,12 @@ std::vector LLWindow::getDynamicFallbackFontList() // static std::vector LLWindow::getDisplaysResolutionList() { -#ifdef LL_SDL - return std::vector(); -#elif LL_WINDOWS +#if LL_WINDOWS return LLWindowWin32::getDisplaysResolutionList(); -#elif LL_DARWIN +#elif LL_DARWIN && !LL_SDL return LLWindowMacOSX::getDisplaysResolutionList(); +#else + return std::vector(); #endif } @@ -348,7 +346,7 @@ LLSplashScreen *LLSplashScreen::create() return 0; #elif LL_WINDOWS return new LLSplashScreenWin32; -#elif LL_DARWIN +#elif LL_DARWIN && !LL_SDL return new LLSplashScreenMacOSX; #else #error("LLSplashScreen not implemented on this platform!") @@ -361,13 +359,11 @@ void LLSplashScreen::show() { if (!gSplashScreenp) { -#if !LL_SDL #if LL_WINDOWS && !LL_MESA_HEADLESS gSplashScreenp = new LLSplashScreenWin32; -#elif LL_DARWIN +#elif LL_DARWIN && !LL_SDL gSplashScreenp = new LLSplashScreenMacOSX; #endif -#endif // !LL_SDL if (gSplashScreenp) { gSplashScreenp->showImpl(); -- cgit v1.2.3