Merge branch 'master' of https://vcs.firestormviewer.org/phoenix-firestorm
commit
49a761189e
|
|
@ -988,9 +988,9 @@
|
|||
<key>archive</key>
|
||||
<map>
|
||||
<key>hash</key>
|
||||
<string>d3f4d83e7b81673731ece92125473b00</string>
|
||||
<string>ad7b9fc10184e8145731f45ae400bfd1</string>
|
||||
<key>url</key>
|
||||
<string>http://3p.firestormviewer.org/dullahan-1.12.2.202209171157_91.1.23_g04c8d56_chromium-91.0.4472.164-linux64-222600157.tar.bz2</string>
|
||||
<string>http://3p.firestormviewer.org/dullahan-1.12.2.202210012157_92.0.27_g274abcf_chromium-92.0.4515.159-linux64-222741156.tar.bz2</string>
|
||||
</map>
|
||||
<key>name</key>
|
||||
<string>linux64</string>
|
||||
|
|
|
|||
|
|
@ -437,7 +437,7 @@ LLWindowSDL::LLWindowSDL(LLWindowCallbacks* callbacks,
|
|||
const std::string& title, S32 x, S32 y, S32 width,
|
||||
S32 height, U32 flags,
|
||||
BOOL fullscreen, BOOL clearBg,
|
||||
BOOL disable_vsync, BOOL use_gl,
|
||||
BOOL enable_vsync, BOOL use_gl,
|
||||
// <FS:LO> Legacy cursor setting from main program
|
||||
//BOOL ignore_pixel_depth, U32 fsaa_samples,)
|
||||
BOOL ignore_pixel_depth, U32 fsaa_samples, BOOL useLegacyCursors)
|
||||
|
|
@ -483,7 +483,7 @@ LLWindowSDL::LLWindowSDL(LLWindowCallbacks* callbacks,
|
|||
mWindowTitle = title;
|
||||
|
||||
// Create the GL context and set it up for windowed or fullscreen, as appropriate.
|
||||
if(createContext(x, y, width, height, 32, fullscreen, disable_vsync))
|
||||
if(createContext(x, y, width, height, 32, fullscreen, enable_vsync))
|
||||
{
|
||||
gGLManager.initGL();
|
||||
|
||||
|
|
@ -667,7 +667,7 @@ void LLWindowSDL::setTitle(const std::string &title)
|
|||
SDL_WM_SetCaption(title.c_str(), title.c_str());
|
||||
}
|
||||
|
||||
BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL disable_vsync)
|
||||
BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL enable_vsync)
|
||||
{
|
||||
//bool glneedsinit = false;
|
||||
|
||||
|
|
@ -1001,7 +1001,7 @@ BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, B
|
|||
|
||||
|
||||
// changing fullscreen resolution, or switching between windowed and fullscreen mode.
|
||||
BOOL LLWindowSDL::switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL disable_vsync, const LLCoordScreen * const posp)
|
||||
BOOL LLWindowSDL::switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL enable_vsync, const LLCoordScreen * const posp)
|
||||
{
|
||||
const BOOL needsRebuild = TRUE; // Just nuke the context and start over.
|
||||
BOOL result = true;
|
||||
|
|
@ -1011,7 +1011,7 @@ BOOL LLWindowSDL::switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL
|
|||
if(needsRebuild)
|
||||
{
|
||||
destroyContext();
|
||||
result = createContext(0, 0, size.mX, size.mY, 0, fullscreen, disable_vsync);
|
||||
result = createContext(0, 0, size.mX, size.mY, 0, fullscreen, enable_vsync);
|
||||
if (result)
|
||||
{
|
||||
gGLManager.initGL();
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ public:
|
|||
/*virtual*/ BOOL setPosition(LLCoordScreen position);
|
||||
/*virtual*/ BOOL setSizeImpl(LLCoordScreen size);
|
||||
/*virtual*/ BOOL setSizeImpl(LLCoordWindow size);
|
||||
/*virtual*/ BOOL switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL disable_vsync, const LLCoordScreen * const posp = NULL);
|
||||
/*virtual*/ BOOL switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL enable_vsync, const LLCoordScreen * const posp = NULL);
|
||||
/*virtual*/ BOOL setCursorPosition(LLCoordWindow position);
|
||||
/*virtual*/ BOOL getCursorPosition(LLCoordWindow *position);
|
||||
/*virtual*/ void showCursor();
|
||||
|
|
@ -159,7 +159,7 @@ public:
|
|||
protected:
|
||||
LLWindowSDL(LLWindowCallbacks* callbacks,
|
||||
const std::string& title, int x, int y, int width, int height, U32 flags,
|
||||
BOOL fullscreen, BOOL clearBg, BOOL disable_vsync, BOOL use_gl,
|
||||
BOOL fullscreen, BOOL clearBg, BOOL enable_vsync, BOOL use_gl,
|
||||
//BOOL ignore_pixel_depth, U32 fsaa_samples);
|
||||
BOOL ignore_pixel_depth, U32 fsaa_samples, BOOL useLegacyCursors); // <FS:LO> Legacy cursor setting from main program
|
||||
~LLWindowSDL();
|
||||
|
|
@ -186,7 +186,7 @@ protected:
|
|||
//
|
||||
|
||||
// create or re-create the GL context/window. Called from the constructor and switchContext().
|
||||
BOOL createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL disable_vsync);
|
||||
BOOL createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL enable_vsync);
|
||||
void destroyContext();
|
||||
void setupFailure(const std::string& text, const std::string& caption, U32 type);
|
||||
void fixWindowSize(void);
|
||||
|
|
@ -263,4 +263,4 @@ public:
|
|||
S32 OSMessageBoxSDL(const std::string& text, const std::string& caption, U32 type);
|
||||
|
||||
#endif //LL_LLWINDOWSDL_H
|
||||
#endif
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -382,7 +382,7 @@ LLWindowSDL::LLWindowSDL(LLWindowCallbacks* callbacks,
|
|||
const std::string& title, S32 x, S32 y, S32 width,
|
||||
S32 height, U32 flags,
|
||||
BOOL fullscreen, BOOL clearBg,
|
||||
BOOL disable_vsync, BOOL use_gl,
|
||||
BOOL enable_vsync, BOOL use_gl,
|
||||
// <FS:LO> Legacy cursor setting from main program
|
||||
//BOOL ignore_pixel_depth, U32 fsaa_samples,)
|
||||
BOOL ignore_pixel_depth, U32 fsaa_samples, BOOL useLegacyCursors)
|
||||
|
|
@ -427,7 +427,7 @@ LLWindowSDL::LLWindowSDL(LLWindowCallbacks* callbacks,
|
|||
mWindowTitle = title;
|
||||
|
||||
// Create the GL context and set it up for windowed or fullscreen, as appropriate.
|
||||
if(createContext(x, y, width, height, 32, fullscreen, disable_vsync))
|
||||
if(createContext(x, y, width, height, 32, fullscreen, enable_vsync))
|
||||
{
|
||||
gGLManager.initGL();
|
||||
|
||||
|
|
@ -663,7 +663,7 @@ void LLWindowSDL::tryFindFullscreenSize( int &width, int &height )
|
|||
}
|
||||
}
|
||||
|
||||
BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL disable_vsync)
|
||||
BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL enable_vsync)
|
||||
{
|
||||
//bool glneedsinit = false;
|
||||
|
||||
|
|
@ -739,7 +739,6 @@ BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, B
|
|||
// We need stencil support for a few (minor) things.
|
||||
if (stencilBits)
|
||||
SDL_GL_SetAttribute(SDL_GL_STENCIL_SIZE, stencilBits);
|
||||
// *FIX: try to toggle vsync here?
|
||||
|
||||
SDL_GL_SetAttribute(SDL_GL_DOUBLEBUFFER, 1);
|
||||
|
||||
|
|
@ -763,7 +762,11 @@ BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, B
|
|||
setupFailure("GL Context creation error creation error", "Error", OSMB_OK);
|
||||
return FALSE;
|
||||
}
|
||||
// SDL_GL_SetSwapInterval(1);
|
||||
|
||||
// FIRE-32559: This *should* work, but for some reason aftrer login vsync always acts as if it's disabled, so
|
||||
// the flag will get set again later in void LLViewerWindow::setStartupComplete() -Zi
|
||||
toggleVSync(enable_vsync);
|
||||
|
||||
mSurface = SDL_GetWindowSurface( mWindow );
|
||||
}
|
||||
|
||||
|
|
@ -921,7 +924,7 @@ BOOL LLWindowSDL::createContext(int x, int y, int width, int height, int bits, B
|
|||
|
||||
|
||||
// changing fullscreen resolution, or switching between windowed and fullscreen mode.
|
||||
BOOL LLWindowSDL::switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL disable_vsync, const LLCoordScreen * const posp)
|
||||
BOOL LLWindowSDL::switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL enable_vsync, const LLCoordScreen * const posp)
|
||||
{
|
||||
const BOOL needsRebuild = TRUE; // Just nuke the context and start over.
|
||||
BOOL result = true;
|
||||
|
|
@ -931,7 +934,7 @@ BOOL LLWindowSDL::switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL
|
|||
if(needsRebuild)
|
||||
{
|
||||
destroyContext();
|
||||
result = createContext(0, 0, size.mX, size.mY, 0, fullscreen, disable_vsync);
|
||||
result = createContext(0, 0, size.mX, size.mY, 0, fullscreen, enable_vsync);
|
||||
if (result)
|
||||
{
|
||||
gGLManager.initGL();
|
||||
|
|
@ -2731,7 +2734,31 @@ void LLWindowSDL::destroySharedContext(void* context)
|
|||
|
||||
void LLWindowSDL::toggleVSync(bool enable_vsync)
|
||||
{
|
||||
SDL_GL_SetSwapInterval(enable_vsync);
|
||||
if (enable_vsync)
|
||||
{
|
||||
// try adaptive vsync first (-1) and if that fails, try regular vsync (1)
|
||||
if (SDL_GL_SetSwapInterval(-1) == -1)
|
||||
{
|
||||
LL_INFOS() << "Failed to enable adaptive vsync, trying regular vsync" << LL_ENDL;
|
||||
if (SDL_GL_SetSwapInterval(1) == -1)
|
||||
{
|
||||
LL_WARNS() << "Failed to enable vsync" << LL_ENDL;
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_DEBUGS() << "Vsync enabled" << LL_ENDL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
LL_DEBUGS() << "Adaptive vsync enabled" << LL_ENDL;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
SDL_GL_SetSwapInterval(0);
|
||||
LL_DEBUGS() << "Vsync disabled" << LL_ENDL;
|
||||
}
|
||||
}
|
||||
// </FS:Zi>
|
||||
|
||||
|
|
|
|||
|
|
@ -65,7 +65,7 @@ public:
|
|||
/*virtual*/ BOOL setPosition(LLCoordScreen position);
|
||||
/*virtual*/ BOOL setSizeImpl(LLCoordScreen size);
|
||||
/*virtual*/ BOOL setSizeImpl(LLCoordWindow size);
|
||||
/*virtual*/ BOOL switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL disable_vsync, const LLCoordScreen * const posp = NULL);
|
||||
/*virtual*/ BOOL switchContext(BOOL fullscreen, const LLCoordScreen &size, BOOL enable_vsync, const LLCoordScreen * const posp = NULL);
|
||||
// <FS:Zi> Make shared context work on Linux for multithreaded OpenGL
|
||||
void* createSharedContext() override;
|
||||
void makeContextCurrent(void* context) override;
|
||||
|
|
@ -162,7 +162,7 @@ public:
|
|||
protected:
|
||||
LLWindowSDL(LLWindowCallbacks* callbacks,
|
||||
const std::string& title, int x, int y, int width, int height, U32 flags,
|
||||
BOOL fullscreen, BOOL clearBg, BOOL disable_vsync, BOOL use_gl,
|
||||
BOOL fullscreen, BOOL clearBg, BOOL enable_vsync, BOOL use_gl,
|
||||
//BOOL ignore_pixel_depth, U32 fsaa_samples);
|
||||
BOOL ignore_pixel_depth, U32 fsaa_samples, BOOL useLegacyCursors); // <FS:LO> Legacy cursor setting from main program
|
||||
~LLWindowSDL();
|
||||
|
|
@ -189,7 +189,7 @@ protected:
|
|||
//
|
||||
|
||||
// create or re-create the GL context/window. Called from the constructor and switchContext().
|
||||
BOOL createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL disable_vsync);
|
||||
BOOL createContext(int x, int y, int width, int height, int bits, BOOL fullscreen, BOOL enable_vsync);
|
||||
void destroyContext();
|
||||
void setupFailure(const std::string& text, const std::string& caption, U32 type);
|
||||
void fixWindowSize(void);
|
||||
|
|
|
|||
|
|
@ -1817,7 +1817,10 @@ bool LLAppViewer::doFrame()
|
|||
{
|
||||
// Sleep if we're not rendering, or the window is minimized.
|
||||
static LLCachedControl<S32> s_background_yield_time(gSavedSettings, "BackgroundYieldTime", 40);
|
||||
S32 milliseconds_to_sleep = llclamp((S32)s_background_yield_time, 0, 1000);
|
||||
// <FS:Ansariel> FIRE-32722: Make sure to idle if actually minimized
|
||||
//S32 milliseconds_to_sleep = llclamp((S32)s_background_yield_time, 0, 1000);
|
||||
S32 milliseconds_to_sleep = llclamp((S32)s_background_yield_time, (gViewerWindow && gViewerWindow->getWindow()->getMinimized()) ? 1 : 0, 1000);
|
||||
// </FS:Ansariel>
|
||||
// don't sleep when BackgroundYieldTime set to 0, since this will still yield to other threads
|
||||
// of equal priority on Windows
|
||||
if (milliseconds_to_sleep > 0)
|
||||
|
|
|
|||
|
|
@ -175,7 +175,7 @@ SimMeasurement<> SIM_TIME_DILATION("simtimedilation", "Simulator time scale",
|
|||
SIM_MAIN_AGENTS("simmainagents", "Number of avatars in current region", LL_SIM_STAT_NUMAGENTMAIN),
|
||||
SIM_CHILD_AGENTS("simchildagents", "Number of avatars in neighboring regions", LL_SIM_STAT_NUMAGENTCHILD),
|
||||
SIM_OBJECTS("simobjects", "", LL_SIM_STAT_NUMTASKS),
|
||||
SIM_ACTIVE_OBJECTS("simactiveobjects", "Number of scripted and/or mocing objects", LL_SIM_STAT_NUMTASKSACTIVE),
|
||||
SIM_ACTIVE_OBJECTS("simactiveobjects", "Number of scripted and/or moving objects", LL_SIM_STAT_NUMTASKSACTIVE),
|
||||
SIM_ACTIVE_SCRIPTS("simactivescripts", "Number of scripted objects", LL_SIM_STAT_NUMSCRIPTSACTIVE),
|
||||
SIM_IN_PACKETS_PER_SEC("siminpps", "", LL_SIM_STAT_INPPS),
|
||||
SIM_OUT_PACKETS_PER_SEC("simoutpps", "", LL_SIM_STAT_OUTPPS),
|
||||
|
|
|
|||
|
|
@ -6827,6 +6827,12 @@ void LLViewerWindow::setStartupComplete()
|
|||
{
|
||||
mProgressView->setStartupComplete();
|
||||
}
|
||||
|
||||
#if LL_SDL2
|
||||
// FIRE-32559: For some reason aftrer login vsync always acts as if it's disabled, so
|
||||
// the flag will get set again here after the 3D view is set up -Zi
|
||||
getWindow()->toggleVSync(gSavedSettings.getBOOL("RenderVSyncEnable"));
|
||||
#endif
|
||||
}
|
||||
|
||||
BOOL LLViewerWindow::getShowProgress() const
|
||||
|
|
|
|||
|
|
@ -1163,7 +1163,7 @@ Zazwyczaj jest to tymczasowy problem. Możesz kontynuować modyfikacje i zapisa
|
|||
Nie możesz kupić działek dla grupy.
|
||||
Nie masz praw kupowania działek dla Twojej aktywnej grupy.
|
||||
</notification>
|
||||
<notification label="Add Friend" name="AddFriendWithMessage">
|
||||
<notification label="Dodaj znajomego" name="AddFriendWithMessage">
|
||||
Znajomi mogą pozwalać na odnajdywanie się wzajemnie na mapie i na otrzymywanie informacji o statusie online.
|
||||
|
||||
Zaproponować znajomość [NAME]?
|
||||
|
|
@ -1407,7 +1407,7 @@ Możesz normalnie używać [APP_NAME], inni użytkownicy będą Cię widzieli po
|
|||
<notification name="AgentComplexityWithVisibility">
|
||||
Twój [https://community.secondlife.com/t5/English-Knowledge-Base/Avatar-Rendering-Complexity/ta-p/2967838 stopień złożoności awatara] to [AGENT_COMPLEXITY].
|
||||
[OVERLIMIT_MSG]
|
||||
<usetemplate ignoretext="Ostrzegaj mnie, gdy stopień złożoności mojego awatara jest zbyt wysoki" name="notifyignore"/>
|
||||
<usetemplate ignoretext="Ostrzegaj mnie, gdy stopień złożoności mojego awatara jest zbyt wysoki" name="notifyignore"/>
|
||||
</notification>
|
||||
<notification name="AgentComplexity">
|
||||
Twój [https://community.secondlife.com/t5/English-Knowledge-Base/Avatar-Rendering-Complexity/ta-p/2967838 stopień złożoności awatara] to [AGENT_COMPLEXITY].
|
||||
|
|
@ -1793,7 +1793,7 @@ Premium Plus pozwala na [MAX_PREMIUM_PLUS]. [https://secondlife.com/my/account/m
|
|||
</form>
|
||||
</notification>
|
||||
<notification name="KickAllUsers">
|
||||
Z jakim komunikatem wyrzucić wszystkich użytkowników z regionu?
|
||||
Z jakim komunikatem wyrzucić wszystkich użytkowników ze świata?
|
||||
<form name="form">
|
||||
<input name="message">
|
||||
Administrator wylogował Cię.
|
||||
|
|
@ -1933,7 +1933,7 @@ Kontynuować?
|
|||
<notification label="Zmiana dostępu do Majątku Lindenów" name="ChangeLindenAccess">
|
||||
Dokonujesz zmiany w liście dostępu Regionu głównego należącego do Lindenów (Regiony Główne, Teen Grid, Orientacja).
|
||||
|
||||
Żądana operacja jest wyjątkowo niebezpieczna dla wszystkich Rezydentów przebywających w regionie i powinna być używana wyłącznie w celu zablokowania opcji pozwalającej na przeniesienie obiektów/L$ do/z sieci.
|
||||
Żądana operacja jest wyjątkowo niebezpieczna dla wszystkich Rezydentów przebywających w regionie i powinna być używana wyłącznie w celu zablokowania opcji pozwalającej na przeniesienie obiektów/L$ do/ze świata.
|
||||
Dodatkowo, zmiany dokonane w Regionie Głównym mogą spowodować problemy przestrzeni serwerowej innych regionów.
|
||||
|
||||
Kontynuować?
|
||||
|
|
@ -2865,7 +2865,7 @@ Nie możesz tutaj latać.
|
|||
Popychanie niedozwolone. Nie możesz tutaj popychać innych chyba, że jesteś właścicielem tej działki.
|
||||
</notification>
|
||||
<notification name="NoVoice">
|
||||
Ta działka nie pozwala na rozmowy głosowe.
|
||||
Ta działka nie pozwala na rozmowy głosowe. Nie będziesz słyszeć, jak ktoś rozmawia.
|
||||
</notification>
|
||||
<notification name="NoBuild">
|
||||
Ta działka nie pozwala na budowanie. Nie możesz tworzyć tutaj obiektów.
|
||||
|
|
@ -2910,7 +2910,7 @@ Pełne informacje na temat klasyfikacji treści można znaleźć [https://commun
|
|||
Region, do którego próbujesz się dostać, właśnie się wyłącza.
|
||||
</notification>
|
||||
<notification name="URBannedFromRegion">
|
||||
Zostałeś zbanowany w regionie.
|
||||
Zostałeś/aś zbanowany/a w regionie.
|
||||
</notification>
|
||||
<notification name="NoTeenGridAccess">
|
||||
Twoje konto nie może zostać połączone z podanym regionem Teen Grid.
|
||||
|
|
@ -3808,7 +3808,7 @@ Zmienić tryb i wyłączyć program?
|
|||
</notification>
|
||||
<notification name="ConfirmHideUI">
|
||||
Ta akcja ukryje wszystkie menu i przyciski. Aby je pokazać użyj skrótu [SHORTCUT] ponownie.
|
||||
<usetemplate name="okcancelignore" notext="Anuluj" ignoretext="Potwierdź przed ukryciem interfejsu"/>
|
||||
<usetemplate name="okcancelignore" notext="Anuluj" ignoretext="Potwierdź przed ukryciem interfejsu"/>
|
||||
</notification>
|
||||
<notification name="PathfindingLinksets_WarnOnPhantom">
|
||||
Niektórym z zaznaczonych zbiorów części zostanie przełączony status Widmowy.
|
||||
|
|
@ -4851,7 +4851,7 @@ Będzie można użyć http://opensimulator.org/wiki/inventory aby rozwiązać pr
|
|||
i kliknij przycisk składania zamówienia.
|
||||
Będziesz mógł/a dodać metodę płatności w kasie.
|
||||
<form name="form">
|
||||
<button name="Continue" text="Kontyntynuj" />
|
||||
<button name="Continue" text="Kontynuuj" />
|
||||
<button name="Cancel" text="Anuluj" />
|
||||
</form>
|
||||
</notification>
|
||||
|
|
@ -5089,18 +5089,6 @@ Jeśli nie zgadzasz się z niniejszymi warunkami użytkowania, nie należy przep
|
|||
<notification name="EnableHiDPI">
|
||||
Włączenie obsługi HiDPI może mieć niekorzystne skutki i pogorszyć wydajność.
|
||||
</notification>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<notification name="FailedToFindSettings">
|
||||
Nie można załadować ustawień dla [NAME] z bazy danych.
|
||||
</notification>
|
||||
|
|
|
|||
|
|
@ -222,7 +222,7 @@ Więcej informacji w naszym FAQ:
|
|||
http://secondlife.com/viewer-access-faq
|
||||
</string>
|
||||
<string name="LoginFailed">
|
||||
Awaria logowania awaryjnego do świata.
|
||||
Logowanie nieudane.
|
||||
Jeśli uważasz, że to błąd, skontaktuj się z obsługą świata.
|
||||
</string>
|
||||
<string name="LoginIntermediateOptionalUpdateAvailable">
|
||||
|
|
|
|||
Loading…
Reference in New Issue