Merge branch 'master' of https://bitbucket.org/Ansariel/phoenix-firestorm-atlasaurus
# Conflicts: # indra/newview/llfloaterregioninfo.cpp # indra/newview/llversioninfo.cpp # indra/newview/llviewertexturelist.cppmaster
commit
eaa5dc798c
|
|
@ -93,11 +93,11 @@ jobs:
|
|||
with:
|
||||
swap-storage: false
|
||||
|
||||
- name: Set gcc version on Linux
|
||||
if: runner.os == 'Linux'
|
||||
run: |
|
||||
echo "CC=gcc-10" >> $GITHUB_ENV
|
||||
echo "CXX=g++-10" >> $GITHUB_ENV
|
||||
# - name: Set gcc version on Linux
|
||||
# if: runner.os == 'Linux'
|
||||
# run: |
|
||||
# echo "CC=gcc-10" >> $GITHUB_ENV
|
||||
# echo "CXX=g++-10" >> $GITHUB_ENV
|
||||
|
||||
|
||||
- name: Setup rclone and download the folder
|
||||
|
|
|
|||
|
|
@ -23,4 +23,4 @@ Build instructions for each operating system can be found using the links below
|
|||
|
||||
## Contribute
|
||||
|
||||
Help make Firestorm better! You can get involved with improvements by filing bugs and suggesting enhancements via [JIRA](https://jira.firestormviewer.org) or [creating pull requests](FS_PR_GUIDELINES.md).
|
||||
Help make Firestorm better! You can get involved with improvements by filing bugs and suggesting enhancements via [JIRA](https://jira.firestormviewer.org) or [creating pull requests](doc/FS_PR_GUIDELINES.md).
|
||||
|
|
|
|||
|
|
@ -1656,7 +1656,7 @@ ECursorType LLWindowMacOSX::getCursor() const
|
|||
|
||||
// <FS:LO> Legacy cursor setting from main program
|
||||
//void LLWindowMacOSX::initCursors()
|
||||
void LLWindowMacOSX::initCursors(BOOL useLegacyCursors)
|
||||
void LLWindowMacOSX::initCursors(bool useLegacyCursors)
|
||||
{
|
||||
initPixmapCursor(UI_CURSOR_NO, 8, 8);
|
||||
initPixmapCursor(UI_CURSOR_WORKING, 1, 1);
|
||||
|
|
|
|||
|
|
@ -159,7 +159,7 @@ protected:
|
|||
~LLWindowMacOSX();
|
||||
|
||||
//void initCursors();
|
||||
void initCursors(BOOL useLegacyCursors); // <FS:LO> Legacy cursor setting from main program
|
||||
void initCursors(bool useLegacyCursors); // <FS:LO> Legacy cursor setting from main program
|
||||
bool isValid() override;
|
||||
void moveWindow(const LLCoordScreen& position,const LLCoordScreen& size);
|
||||
|
||||
|
|
|
|||
|
|
@ -471,13 +471,42 @@ void FSFloaterIM::sendMsgFromInputEditor(EChatType type)
|
|||
if (FSData::getInstance()->isTestingGroup(mSessionID))
|
||||
{
|
||||
if(chat_prefix_testing)
|
||||
utf8_text.insert(insert_pos, ("(" + str_address_size_tag + str_operating_system_tag + " " + LLVersionInfo::getInstance()->getBuildVersion() + skin_indicator + str_viewer_mode + str_rlv_enabled + str_opensim_tag + ") "));
|
||||
{
|
||||
auto viewer_maturity = LLVersionInfo::getInstance()->getFSViewerMaturity();
|
||||
if( viewer_maturity == LLVersionInfo::FSViewerMaturity::RELEASE_VIEWER )
|
||||
{
|
||||
utf8_text.insert(insert_pos, "(Release) ");
|
||||
}
|
||||
else if( viewer_maturity == LLVersionInfo::FSViewerMaturity::UNOFFICIAL_VIEWER )
|
||||
{
|
||||
utf8_text.insert(insert_pos, "(Unofficial) ");
|
||||
}
|
||||
else // In testing groups we'll allow all non-release recognised channels.
|
||||
{
|
||||
utf8_text.insert(insert_pos, ("(" + str_address_size_tag + str_operating_system_tag + " " + LLVersionInfo::getInstance()->getBuildVersion() + skin_indicator + str_viewer_mode + str_rlv_enabled + str_opensim_tag + ") "));
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
//For release support groups, only display the short version(Major.Minor.Patch) since chat can speed by. This makes it easier on Support's eyes.
|
||||
else if(FSData::getInstance()->isSupportGroup(mSessionID))
|
||||
{
|
||||
if(chat_prefix_support)
|
||||
utf8_text.insert(insert_pos, ("(" + str_address_size_tag + str_operating_system_tag + " " + LLVersionInfo::getInstance()->getShortVersion() + skin_indicator + str_viewer_mode + str_rlv_enabled + str_opensim_tag + ") "));
|
||||
{
|
||||
auto viewer_maturity = LLVersionInfo::getInstance()->getFSViewerMaturity();
|
||||
if( viewer_maturity == LLVersionInfo::FSViewerMaturity::UNOFFICIAL_VIEWER )
|
||||
{
|
||||
utf8_text.insert(insert_pos, "(Unofficial) ");
|
||||
}
|
||||
else if( viewer_maturity != LLVersionInfo::FSViewerMaturity::RELEASE_VIEWER )
|
||||
{
|
||||
utf8_text.insert(insert_pos, "(pre-Release) ");
|
||||
}
|
||||
else
|
||||
{
|
||||
utf8_text.insert(insert_pos, ("(" + str_address_size_tag + str_operating_system_tag + " " + LLVersionInfo::getInstance()->getShortVersion() + skin_indicator + str_viewer_mode + str_rlv_enabled + str_opensim_tag + ") "));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -134,6 +134,13 @@ struct MikktMesh
|
|||
idx[1] = tri_idx + 1;
|
||||
idx[2] = tri_idx + 2;
|
||||
}
|
||||
// <FS:Beq> unknown mode leaves idx uninitialised
|
||||
else
|
||||
{
|
||||
LL_WARNS("GLTF") << "Unsupported primitive mode for conversion to triangles: " << (S32) prim->mMode << LL_ENDL;
|
||||
return false;
|
||||
}
|
||||
// </FS:Beq>
|
||||
|
||||
if (indexed)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ private:
|
|||
LLMediaCtrl* mAvatarPicker;
|
||||
|
||||
// <FS:Ansariel> Avatar chooser does not change between OpenSim grids
|
||||
/*virtual*/ void onOpen(const LLSD& key);
|
||||
/*virtual*/ void onOpen(const LLSD& key) override;
|
||||
void handleUrlChanged(const std::string& url);
|
||||
|
||||
boost::signals2::connection mAvatarPickerUrlChangedSignal;
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ public:
|
|||
void onOpen(const LLSD& key) override;
|
||||
|
||||
// <FS:Ansariel> Instant bump list floater update
|
||||
/*virtual*/ void draw();
|
||||
/*virtual*/ void draw() override;
|
||||
void setDirty() { mDirty = true; }
|
||||
|
||||
static LLFloaterBump* getInstance();
|
||||
|
|
|
|||
|
|
@ -36,12 +36,18 @@
|
|||
#include "llfloaterreg.h"
|
||||
#include "llfloaterpathfindingobjects.h"
|
||||
#include "llhandle.h"
|
||||
// <FS:Beq> hacky BOOL workaround
|
||||
#ifndef BOOL
|
||||
#define BOOL bool
|
||||
#endif
|
||||
// </FS:Beq>
|
||||
#include "llpathfindingcharacter.h"
|
||||
#include "llpathfindingcharacterlist.h"
|
||||
#include "llpathfindingmanager.h"
|
||||
#include "llpathfindingobject.h"
|
||||
#include "llpathfindingobjectlist.h"
|
||||
#include "llpathinglib.h"
|
||||
#undef BOOL // <FS:Beq/> hacky BOOL workaround
|
||||
#include "llquaternion.h"
|
||||
#include "llsd.h"
|
||||
#include "lluicolortable.h"
|
||||
|
|
|
|||
|
|
@ -33,9 +33,15 @@
|
|||
|
||||
#include "llfloater.h"
|
||||
#include "llhandle.h"
|
||||
// <FS:Beq> hacky BOOL workaround
|
||||
#ifndef BOOL
|
||||
#define BOOL bool
|
||||
#endif
|
||||
// </FS:Beq>
|
||||
#include "llpathfindingnavmeshzone.h"
|
||||
#include "llpathfindingpathtool.h"
|
||||
#include "llpathinglib.h"
|
||||
#undef BOOL // <FS:Beq/> hacky BOOL workaround
|
||||
#include "v4color.h"
|
||||
|
||||
class LLButton;
|
||||
|
|
|
|||
|
|
@ -914,8 +914,6 @@ void LLPanelRegionInfo::initCtrl(const std::string& name)
|
|||
template<typename CTRL>
|
||||
void LLPanelRegionInfo::initAndSetCtrl(CTRL*& ctrl, const std::string& name)
|
||||
{
|
||||
// <FS:Ansariel> Fix broken initialization
|
||||
//initCtrl(name);
|
||||
ctrl = findChild<CTRL>(name);
|
||||
if (ctrl)
|
||||
ctrl->setCommitCallback(boost::bind(&LLPanelRegionInfo::onChangeAnything, this));
|
||||
|
|
|
|||
|
|
@ -41,6 +41,11 @@
|
|||
#include "llagent.h"
|
||||
#include "llhttpnode.h"
|
||||
#include "llnotificationsutil.h"
|
||||
// <FS:Beq> hacky BOOL workaround
|
||||
#ifndef BOOL
|
||||
#define BOOL bool
|
||||
#endif
|
||||
// </FS:Beq>
|
||||
#include "llpathfindingcharacterlist.h"
|
||||
#include "llpathfindinglinkset.h"
|
||||
#include "llpathfindinglinksetlist.h"
|
||||
|
|
@ -48,6 +53,7 @@
|
|||
#include "llpathfindingnavmeshstatus.h"
|
||||
#include "llpathfindingobject.h"
|
||||
#include "llpathinglib.h"
|
||||
#undef BOOL // <FS:Beq/> hacky BOOL workaround
|
||||
#include "llsingleton.h"
|
||||
#include "llsd.h"
|
||||
#include "lltrans.h"
|
||||
|
|
|
|||
|
|
@ -38,10 +38,16 @@
|
|||
#include <boost/signals2.hpp>
|
||||
|
||||
#include "llagent.h"
|
||||
// <FS:Beq> hacky BOOL workaround
|
||||
#ifndef BOOL
|
||||
#define BOOL bool
|
||||
#endif
|
||||
// </FS:Beq>
|
||||
#include "llpathfindingmanager.h"
|
||||
#include "llpathfindingnavmesh.h"
|
||||
#include "llpathfindingnavmeshstatus.h"
|
||||
#include "llpathinglib.h"
|
||||
#undef BOOL // <FS:Beq/> hacky BOOL workaround
|
||||
#include "llsd.h"
|
||||
#include "lluuid.h"
|
||||
#include "llviewercontrol.h"
|
||||
|
|
|
|||
|
|
@ -29,8 +29,13 @@
|
|||
|
||||
#include <boost/function.hpp>
|
||||
#include <boost/signals2.hpp>
|
||||
|
||||
// <FS:Beq> hacky BOOL workaround
|
||||
#ifndef BOOL
|
||||
#define BOOL bool
|
||||
#endif
|
||||
// </FS:Beq>
|
||||
#include "llpathinglib.h"
|
||||
#undef BOOL // <FS:Beq/> hacky BOOL workaround
|
||||
#include "llsingleton.h"
|
||||
#include "lltool.h"
|
||||
|
||||
|
|
|
|||
|
|
@ -212,6 +212,47 @@ LLVersionInfo::ViewerMaturity LLVersionInfo::getViewerMaturity() const
|
|||
return maturity;
|
||||
}
|
||||
|
||||
// <FS:Beq> Add FS specific maturity grading
|
||||
LLVersionInfo::FSViewerMaturity LLVersionInfo::getFSViewerMaturity() const
|
||||
{
|
||||
FSViewerMaturity maturity;
|
||||
|
||||
std::string channel = getChannel();
|
||||
|
||||
static const boost::regex is_manual_channel("\\bManualx64\\b");
|
||||
static const boost::regex is_beta_channel("\\bBetax64\\b");
|
||||
static const boost::regex is_alpha_channel("\\bAlphax64\\b");
|
||||
static const boost::regex is_release_channel("\\bReleasex64\\b");
|
||||
static const boost::regex is_nightly_channel("\\bNightlyx64\\b");
|
||||
|
||||
if (ll_regex_search(channel, is_release_channel))
|
||||
{
|
||||
maturity = FSViewerMaturity::RELEASE_VIEWER;
|
||||
}
|
||||
else if (ll_regex_search(channel, is_beta_channel))
|
||||
{
|
||||
maturity = FSViewerMaturity::BETA_VIEWER;
|
||||
}
|
||||
else if (ll_regex_search(channel, is_alpha_channel))
|
||||
{
|
||||
maturity = FSViewerMaturity::ALPHA_VIEWER;
|
||||
}
|
||||
else if (ll_regex_search(channel, is_manual_channel))
|
||||
{
|
||||
maturity = FSViewerMaturity::MANUAL_VIEWER;
|
||||
}
|
||||
else if (ll_regex_search(channel, is_nightly_channel))
|
||||
{
|
||||
maturity = FSViewerMaturity::NIGHTLY_VIEWER;
|
||||
}
|
||||
else
|
||||
{
|
||||
maturity = FSViewerMaturity::UNOFFICIAL_VIEWER;
|
||||
}
|
||||
return maturity;
|
||||
}
|
||||
// </FS:Beq>
|
||||
|
||||
std::string LLVersionInfo::getReleaseNotes() const
|
||||
{
|
||||
return mReleaseNotes;
|
||||
|
|
|
|||
|
|
@ -109,6 +109,20 @@ public:
|
|||
} ViewerMaturity;
|
||||
ViewerMaturity getViewerMaturity() const;
|
||||
|
||||
// <FS:Beq> Add an FS specific viewer maturity enum
|
||||
using FSViewerMaturity =
|
||||
enum class FSViewerMaturityEnum
|
||||
{
|
||||
UNOFFICIAL_VIEWER=0,
|
||||
ALPHA_VIEWER,
|
||||
MANUAL_VIEWER,
|
||||
BETA_VIEWER,
|
||||
NIGHTLY_VIEWER,
|
||||
RELEASE_VIEWER,
|
||||
};
|
||||
FSViewerMaturity getFSViewerMaturity() const;
|
||||
// </FS:Beq>
|
||||
|
||||
/// get the release-notes URL, once it becomes available -- until then,
|
||||
/// return empty string
|
||||
std::string getReleaseNotes() const;
|
||||
|
|
|
|||
|
|
@ -949,11 +949,12 @@ void LLViewerTextureList::updateImageDecodePriority(LLViewerFetchedTexture* imag
|
|||
if (face && face->getViewerObject())
|
||||
{
|
||||
onFace = true;
|
||||
F32 vsize = face->getPixelArea(); // <FS> Particles do not rez properly
|
||||
F32 radius;
|
||||
F32 cos_angle_to_view_dir;
|
||||
bool in_frustum = face->calcPixelArea(cos_angle_to_view_dir, radius);
|
||||
static LLCachedControl<F32> bias_unimportant_threshold(gSavedSettings, "TextureBiasUnimportantFactor", 0.25f);
|
||||
F32 vsize = face->getPixelArea();
|
||||
//F32 vsize = face->getPixelArea(); // <FS> Particles do not rez properly
|
||||
|
||||
// Scale desired texture resolution higher or lower depending on texture scale
|
||||
//
|
||||
|
|
|
|||
|
|
@ -103,7 +103,13 @@
|
|||
#include "llmutelist.h"
|
||||
#include "lltoolpie.h"
|
||||
#include "llnotifications.h"
|
||||
// <FS:Beq> hacky BOOL workaround
|
||||
#ifndef BOOL
|
||||
#define BOOL bool
|
||||
#endif
|
||||
// </FS:Beq>
|
||||
#include "llpathinglib.h"
|
||||
#undef BOOL // <FS:Beq/> hacky BOOL workaround
|
||||
#include "llfloaterpathfindingconsole.h"
|
||||
#include "llfloaterpathfindingcharacters.h"
|
||||
#include "llfloatertools.h"
|
||||
|
|
|
|||
|
|
@ -70,7 +70,7 @@
|
|||
<combo_box.item label="Alle Avatare und Objekte" name="3"/>
|
||||
<combo_box.item label="Alles" name="4"/>
|
||||
</combo_box>
|
||||
<text name="local lights_label" tool_tip="Beeinflusst die Anzahl an dargestellten Lichtquellen, wenn Erweitertes Beleuchtungsmodell aktiviert ist (Neustart erforderlich).">
|
||||
<text name="local lights_label" tool_tip="Beeinflusst die Anzahl an dargestellten Lichtquellen (Neustart erforderlich).">
|
||||
Punkt. Beleucht. (Neustart erf.):
|
||||
</text>
|
||||
<combo_box name="LocalLightsDetail">
|
||||
|
|
|
|||
|
|
@ -421,7 +421,7 @@
|
|||
layout="topleft"
|
||||
left_delta="-5"
|
||||
name="local lights_label"
|
||||
tool_tip="Affects the number of rendered light sources when Advanced Lighting Model is disabled. A restart is required to change mode.">
|
||||
tool_tip="Affects the number of rendered. A restart is required to change mode.">
|
||||
Point Lighting (restart required)
|
||||
</text>
|
||||
<combo_box
|
||||
|
|
|
|||
|
|
@ -1430,6 +1430,9 @@ class Darwin_x86_64_Manifest(ViewerManifest):
|
|||
idnadir = os.path.join(pkgdir, "lib", "python", "idna")
|
||||
|
||||
with self.prefix(src="", dst="Contents"): # everything goes in Contents
|
||||
with self.prefix(dst="MacOS"):
|
||||
executable = self.dst_path_of("Firestorm") # locate the executable within the bundle.
|
||||
|
||||
bugsplat_db = self.args.get('bugsplat')
|
||||
print(f"debug: bugsplat_db={bugsplat_db}")
|
||||
if bugsplat_db:
|
||||
|
|
@ -1540,10 +1543,11 @@ class Darwin_x86_64_Manifest(ViewerManifest):
|
|||
self.path(libfile)
|
||||
|
||||
oldpath = os.path.join("@rpath", libfile)
|
||||
print(f"debug: oldpath={oldpath} executable={executable} libfile={libfile}")
|
||||
self.run_command(
|
||||
['install_name_tool', '-change', oldpath,
|
||||
'@executable_path/../Resources/%s' % libfile,
|
||||
executable])
|
||||
['install_name_tool', '-change',
|
||||
oldpath,
|
||||
'@executable_path/../Resources/%s' % libfile, executable])
|
||||
|
||||
# dylibs is a list of all the .dylib files we expect to need
|
||||
# in our bundled sub-apps. For each of these we'll create a
|
||||
|
|
@ -1957,6 +1961,7 @@ class Darwin_x86_64_Manifest(ViewerManifest):
|
|||
for tries in range(10):
|
||||
try:
|
||||
self.run_command(['hdiutil', 'detach', '-force', devfile])
|
||||
break # Exit loop if detach worked
|
||||
except ManifestError as err:
|
||||
print(f"detach failed on attempt {tries}")
|
||||
time.sleep(1)
|
||||
|
|
|
|||
Loading…
Reference in New Issue