Merge Firestorm LGPL

master
Ansariel 2017-10-02 18:05:03 +02:00
commit b641591983
16 changed files with 184 additions and 45 deletions

View File

@ -423,6 +423,13 @@ LLWindowWin32::LLWindowWin32(LLWindowCallbacks* callbacks,
mKeyVirtualKey = 0;
mhDC = NULL;
mhRC = NULL;
// <FS:Ansariel> Respect "Hide pointer while typing" Windows preference setting
if (!SystemParametersInfo(SPI_GETMOUSEVANISH, 0, &mMouseVanish, 0))
{
mMouseVanish = TRUE;
}
// </FS:Ansariel>
// Initialize the keyboard
gKeyboard = new LLKeyboardWin32();
@ -1683,7 +1690,10 @@ void LLWindowWin32::showCursorFromMouseMove()
void LLWindowWin32::hideCursorUntilMouseMove()
{
if (!mHideCursorPermanent)
// <FS:Ansariel> Respect "Hide pointer while typing" Windows preference setting
//if (!mHideCursorPermanent)
if (!mHideCursorPermanent && mMouseVanish)
// </FS:Ansariel>
{
hideCursor();
mHideCursorPermanent = FALSE;
@ -2700,6 +2710,20 @@ LRESULT CALLBACK LLWindowWin32::mainWindowProc(HWND h_wnd, UINT u_msg, WPARAM w_
return 0;
break;
// <FS:Ansariel> Respect "Hide pointer while typing" Windows preference setting
case WM_SETTINGCHANGE:
{
if (w_param == SPI_SETMOUSEVANISH)
{
if (!SystemParametersInfo(SPI_GETMOUSEVANISH, 0, &window_imp->mMouseVanish, 0))
{
window_imp->mMouseVanish = TRUE;
}
}
}
break;
// </FS:Ansariel>
}
window_imp->mCallbacks->handlePauseWatchdog(window_imp);

View File

@ -221,6 +221,9 @@ protected:
U32 mRawWParam;
U32 mRawLParam;
// <FS:Ansariel> Respect "Hide pointer while typing" Windows preference setting
BOOL mMouseVanish;
friend class LLWindowManager;
// <FS:ND> Allow to query for window chrome sizes.
public:

View File

@ -1758,6 +1758,17 @@
<key>Value</key>
<integer>1</integer>
</map>
<key>AssetFetchConcurrency</key>
<map>
<key>Comment</key>
<string>Maximum number of HTTP connections used for asset fetches</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
<string>U32</string>
<key>Value</key>
<integer>0</integer>
</map>
<key>AuctionShowFence</key>
<map>
<key>Comment</key>
@ -16830,7 +16841,7 @@ Change of this parameter will affect the layout of buttons in notification toast
<key>Comment</key>
<string>show physics shapes while building</string>
<key>Persist</key>
<integer>1</integer>
<integer>0</integer>
<key>Type</key>
<string>Boolean</string>
<key>Value</key>

View File

@ -82,6 +82,7 @@ const S32 MAX_PASSWORD_OPENSIM = 255;
FSPanelLogin *FSPanelLogin::sInstance = NULL;
BOOL FSPanelLogin::sCapslockDidNotification = FALSE;
BOOL FSPanelLogin::sCredentialSet = FALSE;
std::string FSPanelLogin::sPassword = "";
// Helper for converting a user name into the canonical "Firstname Lastname" form.
@ -187,6 +188,7 @@ FSPanelLogin::FSPanelLogin(const LLRect &rect,
setBackgroundOpaque(TRUE);
mPasswordModified = FALSE;
FSPanelLogin::sInstance = this;
LLView* login_holder = gViewerWindow->getLoginPanelHolder();
@ -463,6 +465,7 @@ void FSPanelLogin::setFields(LLPointer<LLCredential> credential, bool from_start
LL_WARNS() << "Attempted setFields with no login view shown" << LL_ENDL;
return;
}
sCredentialSet = TRUE;
LL_INFOS("Credentials") << "Setting login fields to " << *credential << LL_ENDL;
std::string login_id;
@ -727,9 +730,12 @@ void FSPanelLogin::onUpdateStartSLURL(const LLSLURL& new_start_slurl)
updateServer(); // to change the links and splash screen
}
location_combo->setTextEntry(new_start_slurl.getLocationString());
sInstance->mLocationLength = new_start_slurl.getLocationString().length();
sInstance->updateLoginButtons();
if ( new_start_slurl.getLocationString().length() )
{
location_combo->setTextEntry(new_start_slurl.getLocationString());
sInstance->mLocationLength = new_start_slurl.getLocationString().length();
sInstance->updateLoginButtons();
}
}
else
{
@ -908,6 +914,7 @@ void FSPanelLogin::onClickConnect(void *)
}
else
{
sCredentialSet = FALSE;
LLPointer<LLCredential> cred;
BOOL remember;
getFields(cred, remember);

View File

@ -58,6 +58,8 @@ public:
static void getFields(LLPointer<LLCredential>& credential, BOOL& remember);
static BOOL isCredentialSet() { return sCredentialSet; }
static BOOL areCredentialFieldsDirty();
static void setLocation(const LLSLURL& slurl);
static void autologinToLocation(const LLSLURL& slurl);
@ -122,6 +124,8 @@ private:
static FSPanelLogin* sInstance;
static BOOL sCapslockDidNotification;
static BOOL sCredentialSet;
unsigned int mUsernameLength;
unsigned int mPasswordLength;
unsigned int mLocationLength;

View File

@ -72,6 +72,13 @@ static const struct
"",
"other"
},
// <FS:Beq> Avoid stall in texture fetch due to asset fetching. [Drake]
{ // AP_ASSET
12, 1, 16, 0, true,
"AssetFetchConcurrency",
"asset fetch"
},
// </FS:Beq>
{ // AP_TEXTURE
8, 1, 12, 0, true,
"TextureFetchConcurrency",

View File

@ -61,6 +61,22 @@ public:
/// Pipelined: no
AP_DEFAULT,
// <FS:Beq> Avoid stall in texture fetch due to asset fetching. [Drake]
/// Asset fetching policy class. Used to
/// download assets via capability.
/// Deep queueing of requests.
/// Do not share. GET requests only.
///
/// Destination: cdn:80
/// Protocol: http:
/// Transfer size: KB-MB
/// Long poll: no
/// Concurrency: high
/// Request rate: high
/// Pipelined: yes
AP_ASSET,
// </FS:Beq>
/// Texture fetching policy class. Used to
/// download textures via capability or SSA
/// baking service. Deep queueing of requests.

View File

@ -115,7 +115,14 @@ void LLFloaterHoverHeight::onSliderMoved(LLUICtrl* ctrl, void* userData)
//gAgentAvatarp->setHoverOffset(offset, false);
if (gAgent.getRegion() && gAgent.getRegion()->avatarHoverHeightEnabled())
{
gAgentAvatarp->setHoverOffset(offset, false);
if (sldrCtrl->isMouseHeldDown())
{
gAgentAvatarp->setHoverOffset(offset, false);
}
else
{
gSavedPerAccountSettings.setF32("AvatarHoverOffsetZ", value);
}
}
else if (!gAgentAvatarp->isUsingServerBakes())
{

View File

@ -258,7 +258,10 @@ bool LLFolderViewModelItemInventory::filter( LLFolderViewFilter& filter)
{
// This is where filter check on the item done (CHUI-849)
const bool passed_filter = filter.check(this);
if (passed_filter && mChildren.empty()) // Update the latest filter generation for empty folders
// <FS:Ansariel> FIRE-21632: Only do this for folders or it will break correct filtering of the "Worn" inventory tab
//if (passed_filter && mChildren.empty()) // Update the latest filter generation for empty folders
if (passed_filter && mChildren.empty() && getInventoryType() == LLInventoryType::IT_CATEGORY) // Update the latest filter generation for empty folders
// </FS:Ansariel>
{
LLFolderViewModelItemInventory* view_model = this;
while (view_model && view_model->mMostFilteredDescendantGeneration < filter_generation)

View File

@ -1132,13 +1132,16 @@ bool idle_startup()
// Show the login dialog
login_show();
// connect dialog is already shown, so fill in the names
if (gUserCredential.notNull())
// <FS:CR>
//if (gUserCredential.notNull() && !LLPanelLogin::isCredentialSet())
//{
// LLPanelLogin::setFields( gUserCredential, gRememberPassword);
//}
if (gUserCredential.notNull() && !FSPanelLogin::isCredentialSet())
{
// <FS:CR>
//LLPanelLogin::setFields( gUserCredential, gRememberPassword);
FSPanelLogin::setFields(gUserCredential, true);
// </FS:CR>
}
// </FS:CR>
// <FS:Ansariel> [FS Login Panel]
//LLPanelLogin::giveFocus();
FSPanelLogin::giveFocus();

View File

@ -522,8 +522,10 @@ void LLViewerAssetStorage::assetRequestCoro(
std::string url = getAssetURL(mViewerAssetUrl, uuid,atype);
LL_DEBUGS("ViewerAsset") << "request url: " << url << LL_ENDL;
LLCore::HttpRequest::policy_t httpPolicy(LLAppCoreHttp::AP_TEXTURE);
// <FS:Beq> Avoid stall in texture fetch due to asset fetching.[Drake]
// LLCore::HttpRequest::policy_t httpPolicy(LLAppCoreHttp::AP_TEXTURE);
LLCore::HttpRequest::policy_t httpPolicy(LLAppCoreHttp::AP_ASSET);
// </FS:Beq>
LLCoreHttpUtil::HttpCoroutineAdapter::ptr_t
httpAdapter(new LLCoreHttpUtil::HttpCoroutineAdapter("assetRequestCoro", httpPolicy));
LLCore::HttpRequest::ptr_t httpRequest(new LLCore::HttpRequest);

View File

@ -2098,7 +2098,14 @@ void FloaterQuickPrefs::onAvatarZOffsetSliderMoved()
LL_INFOS("Avatar") << "setting hover from slider moved" << offset[VZ] << LL_ENDL;
if (gAgent.getRegion() && gAgent.getRegion()->avatarHoverHeightEnabled())
{
gAgentAvatarp->setHoverOffset(offset, false);
if (mAvatarZOffsetSlider->isMouseHeldDown())
{
gAgentAvatarp->setHoverOffset(offset, false);
}
else
{
gSavedPerAccountSettings.setF32("AvatarHoverOffsetZ", value);
}
}
else if (!gAgentAvatarp->isUsingServerBakes())
{

View File

@ -3,7 +3,7 @@
name="linkreplace"
help_topic="linkreplace"
positioning="centered"
title="REPLACE INVENTORY LINKS"
title="Replace Inventory Links"
width="333"
height="130"
save_rect="true"

View File

@ -2780,21 +2780,36 @@ even though the user gets a free copy.
width="130">
Physics Shape Type:
</text>
<combo_box
height="19"
top_delta="15"
layout="topleft"
follows="left|top"
name="Physics Shape Type Combo Ctrl"
tool_tip="Choose the physics shape type"
width="108"/>
<combo_box
height="19"
top_delta="15"
layout="topleft"
follows="left|top"
name="Physics Shape Type Combo Ctrl"
tool_tip="Choose the physics shape type"
width="108"/>
<button
follows="left|top"
height="19"
is_toggle="true"
control_name="ShowPhysicsShapeInEdit"
image_disabled="PhysicsView_Off"
image_disabled_selected="PhysicsView_Off"
image_selected="PhysicsView_On"
image_unselected="PhysicsView_Off"
layout="topleft"
left_delta="117"
name="PhysicsViewToggle"
tool_tip="Toggle the physics view on in edit mode"
width="19"/>
<combo_box
height="19"
layout="topleft"
name="material"
top_pad="5"
width="150">
<combo_box.item
width="150"
left="144">
<combo_box.item
label="Stone"
name="Stone"
value="Stone" />

View File

@ -2780,20 +2780,35 @@ even though the user gets a free copy.
width="130">
Physics Shape Type:
</text>
<combo_box
height="19"
top_delta="15"
layout="topleft"
follows="left|top"
name="Physics Shape Type Combo Ctrl"
tool_tip="Choose the physics shape type"
width="108"/>
<combo_box
<combo_box
height="19"
top_delta="15"
layout="topleft"
follows="left|top"
name="Physics Shape Type Combo Ctrl"
tool_tip="Choose the physics shape type"
width="108"/>
<button
follows="left|top"
height="19"
is_toggle="true"
control_name="ShowPhysicsShapeInEdit"
image_disabled="PhysicsView_Off"
image_disabled_selected="PhysicsView_Off"
image_selected="PhysicsView_On"
image_unselected="PhysicsView_Off"
layout="topleft"
left_delta="117"
name="PhysicsViewToggle"
tool_tip="Toggle the physics view on in edit mode"
width="19"/>
<combo_box
height="19"
layout="topleft"
name="material"
top_pad="5"
width="150">
width="150"
left="144">
<combo_box.item
label="Stone"
name="Stone"

View File

@ -2714,20 +2714,35 @@ even though the user gets a free copy.
width="130">
Physics Shape Type:
</text>
<combo_box
height="19"
top_delta="15"
layout="topleft"
follows="left|top"
name="Physics Shape Type Combo Ctrl"
tool_tip="Choose the physics shape type"
width="108"/>
<combo_box
<combo_box
height="19"
top_delta="15"
layout="topleft"
follows="left|top"
name="Physics Shape Type Combo Ctrl"
tool_tip="Choose the physics shape type"
width="108"/>
<button
follows="left|top"
height="19"
is_toggle="true"
control_name="ShowPhysicsShapeInEdit"
image_disabled="PhysicsView_Off"
image_disabled_selected="PhysicsView_Off"
image_selected="PhysicsView_On"
image_unselected="PhysicsView_Off"
layout="topleft"
left_delta="117"
name="PhysicsViewToggle"
tool_tip="Toggle the physics view on in edit mode"
width="19"/>
<combo_box
height="19"
layout="topleft"
name="material"
top_pad="5"
width="150">
width="150"
left="144">
<combo_box.item
label="Stone"
name="Stone"