summaryrefslogtreecommitdiff
path: root/indra
diff options
context:
space:
mode:
authorGraham Linden <graham@lindenlab.com>2018-10-12 23:05:03 +0100
committerGraham Linden <graham@lindenlab.com>2018-10-12 23:05:03 +0100
commite3440ed8bcd68442f024f90f238a2e4d01cd8155 (patch)
treeae882f625f4aa27e13f6c513dbaa7d4609e0cd95 /indra
parentda1778e19b98508d66e0288a773e55bb86e118a0 (diff)
parent4d94cbd392886ee68a6a181d1fe321483db5ce37 (diff)
Merge
Diffstat (limited to 'indra')
-rw-r--r--indra/newview/llfloatereditextdaycycle.cpp2
-rw-r--r--indra/newview/llinventorypanel.cpp39
-rw-r--r--indra/newview/llinventorypanel.h2
-rw-r--r--indra/newview/llpanelenvironment.cpp2
-rw-r--r--indra/newview/skins/default/xui/en/panel_settings_sky_clouds.xml8
5 files changed, 41 insertions, 12 deletions
diff --git a/indra/newview/llfloatereditextdaycycle.cpp b/indra/newview/llfloatereditextdaycycle.cpp
index e1220e5592..4513240407 100644
--- a/indra/newview/llfloatereditextdaycycle.cpp
+++ b/indra/newview/llfloatereditextdaycycle.cpp
@@ -1600,8 +1600,6 @@ void LLFloaterEditExtDayCycle::onPickerCommitSetting(LLUUID item_id)
LLViewerInventoryItem *itemp = gInventory.getItem(item_id);
if (itemp)
{
- mInventoryId = item_id;
- mInventoryItem = itemp;
LLSettingsVOBase::getSettingsAsset(itemp->getAssetUUID(),
[this, track, frame, item_id](LLUUID asset_id, LLSettingsBase::ptr_t settings, S32 status, LLExtStat) { onAssetLoadedForFrame(item_id, asset_id, settings, status, track, frame); });
}
diff --git a/indra/newview/llinventorypanel.cpp b/indra/newview/llinventorypanel.cpp
index fb010fa858..0dd37b6161 100644
--- a/indra/newview/llinventorypanel.cpp
+++ b/indra/newview/llinventorypanel.cpp
@@ -48,6 +48,7 @@
#include "llsidepanelinventory.h"
#include "llstartup.h"
#include "lltrans.h"
+#include "llviewerassettype.h"
#include "llviewerattachmenu.h"
#include "llviewerfoldertype.h"
#include "llvoavatarself.h"
@@ -1762,11 +1763,17 @@ public:
void initFromParams(const Params& p);
protected:
- LLAssetFilteredInventoryPanel(const Params& p) : LLInventoryPanel(p) { mAcceptsDragAndDrop = false; }
+ LLAssetFilteredInventoryPanel(const Params& p) : LLInventoryPanel(p) {}
friend class LLUICtrlFactory;
public:
~LLAssetFilteredInventoryPanel() {}
+ /*virtual*/ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
+ EDragAndDropType cargo_type,
+ void* cargo_data,
+ EAcceptance* accept,
+ std::string& tooltip_msg) override;
+
protected:
/*virtual*/ LLFolderViewItem* buildNewViews(const LLUUID& id) override;
/*virtual*/ void itemChanged(const LLUUID& item_id, U32 mask, const LLInventoryObject* model_item) override;
@@ -1781,12 +1788,33 @@ void LLAssetFilteredInventoryPanel::initFromParams(const Params& p)
mAssetType = LLAssetType::lookup(p.filter_asset_type.getValue());
LLInventoryPanel::initFromParams(p);
U64 filter_cats = getFilter().getFilterCategoryTypes();
- filter_cats &= ~(1ULL << LLFolderType::FT_TRASH);
filter_cats &= ~(1ULL << LLFolderType::FT_MARKETPLACE_LISTINGS);
getFilter().setFilterCategoryTypes(filter_cats);
getFilter().setFilterNoMarketplaceFolder();
}
+BOOL LLAssetFilteredInventoryPanel::handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
+ EDragAndDropType cargo_type,
+ void* cargo_data,
+ EAcceptance* accept,
+ std::string& tooltip_msg)
+{
+ BOOL result = FALSE;
+
+ if (mAcceptsDragAndDrop)
+ {
+ EDragAndDropType allow_type = LLViewerAssetType::lookupDragAndDropType(mAssetType);
+ // Don't allow DAD_CATEGORY here since it can contain other items besides required assets
+ // We should see everything we drop!
+ if (allow_type == cargo_type)
+ {
+ result = LLInventoryPanel::handleDragAndDrop(x, y, mask, drop, cargo_type, cargo_data, accept, tooltip_msg);
+ }
+ }
+
+ return result;
+}
+
LLFolderViewItem* LLAssetFilteredInventoryPanel::buildNewViews(const LLUUID& id)
{
LLInventoryObject const* objectp = gInventory.getObject(id);
@@ -1806,12 +1834,15 @@ LLFolderViewItem* LLAssetFilteredInventoryPanel::buildNewViews(const LLUUID& id)
void LLAssetFilteredInventoryPanel::itemChanged(const LLUUID& id, U32 mask, const LLInventoryObject* model_item)
{
- if (!model_item)
+ if (!model_item && !getItemByID(id))
{
+ // remove operation, but item is not in panel already
return;
}
- if (model_item->getType() != mAssetType && model_item->getType() != LLAssetType::AT_CATEGORY)
+ if (model_item
+ && model_item->getType() != mAssetType
+ && model_item->getType() != LLAssetType::AT_CATEGORY)
{
return;
}
diff --git a/indra/newview/llinventorypanel.h b/indra/newview/llinventorypanel.h
index b968b19d9a..97e1c37a31 100644
--- a/indra/newview/llinventorypanel.h
+++ b/indra/newview/llinventorypanel.h
@@ -155,7 +155,7 @@ public:
void draw();
/*virtual*/ BOOL handleKeyHere( KEY key, MASK mask );
BOOL handleHover(S32 x, S32 y, MASK mask);
- BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
+ /*virtual*/ BOOL handleDragAndDrop(S32 x, S32 y, MASK mask, BOOL drop,
EDragAndDropType cargo_type,
void* cargo_data,
EAcceptance* accept,
diff --git a/indra/newview/llpanelenvironment.cpp b/indra/newview/llpanelenvironment.cpp
index 5abef949e1..a260f98181 100644
--- a/indra/newview/llpanelenvironment.cpp
+++ b/indra/newview/llpanelenvironment.cpp
@@ -232,7 +232,7 @@ void LLPanelEnvironmentInfo::refresh()
F32Hours daylength(mCurrentEnvironment->mDayLength);
F32Hours dayoffset(mCurrentEnvironment->mDayOffset);
- if (dayoffset.value() > 8.0f)
+ if (dayoffset.value() > 12.0f)
dayoffset -= F32Hours(24.0);
getChild<LLSliderCtrl>(SLD_DAYLENGTH)->setValue(daylength.value());
diff --git a/indra/newview/skins/default/xui/en/panel_settings_sky_clouds.xml b/indra/newview/skins/default/xui/en/panel_settings_sky_clouds.xml
index 325df39f87..0816d8212d 100644
--- a/indra/newview/skins/default/xui/en/panel_settings_sky_clouds.xml
+++ b/indra/newview/skins/default/xui/en/panel_settings_sky_clouds.xml
@@ -128,10 +128,10 @@
visible="true"
left_delta="0"
top_delta="21"
- min_val_x="-30"
- max_val_x="30"
- min_val_y="-30"
- max_val_y="30" />
+ min_val_x="-10"
+ max_val_x="10"
+ min_val_y="-10"
+ max_val_y="10" />
<text
follows="left|top"