summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/llcommon/llfasttimer.h85
-rw-r--r--indra/llui/llfloater.cpp6
-rw-r--r--indra/llui/llfloater.h3
-rw-r--r--indra/llui/llmenugl.cpp2
-rw-r--r--indra/llui/lltextbase.cpp14
-rw-r--r--indra/llui/lluictrl.cpp16
-rw-r--r--indra/llui/llurlentry.cpp2
-rw-r--r--indra/llui/tests/llurlentry_test.cpp20
-rw-r--r--indra/newview/llagent.cpp10
-rw-r--r--indra/newview/llagentwearables.cpp16
-rw-r--r--indra/newview/llappearancemgr.cpp16
-rw-r--r--indra/newview/llappearancemgr.h1
-rw-r--r--indra/newview/llappviewer.cpp40
-rw-r--r--indra/newview/llfirstuse.cpp15
-rw-r--r--indra/newview/llfirstuse.h7
-rw-r--r--indra/newview/llfloaterinventory.cpp4
-rw-r--r--indra/newview/llfloaterpreference.cpp56
-rw-r--r--indra/newview/llfloaterpreference.h5
-rw-r--r--indra/newview/llfloaterregioninfo.cpp2
-rw-r--r--indra/newview/llfloatersettingsdebug.cpp2
-rw-r--r--indra/newview/llfloatersnapshot.cpp4
-rw-r--r--indra/newview/llfloaterworldmap.cpp9
-rw-r--r--indra/newview/llfolderview.cpp11
-rw-r--r--indra/newview/llfolderviewitem.cpp1
-rw-r--r--indra/newview/llimview.cpp2
-rw-r--r--indra/newview/llinventoryfunctions.cpp2
-rw-r--r--indra/newview/llmenucommands.cpp2
-rw-r--r--indra/newview/llmorphview.cpp4
-rw-r--r--indra/newview/llpanelobject.cpp4
-rw-r--r--indra/newview/llpaneloutfitsinventory.cpp92
-rw-r--r--indra/newview/llpaneloutfitsinventory.h4
-rw-r--r--indra/newview/llpanelprimmediacontrols.cpp16
-rw-r--r--indra/newview/llpanelprimmediacontrols.h2
-rw-r--r--indra/newview/llpanelvolume.cpp4
-rw-r--r--indra/newview/llsidepanelappearance.cpp14
-rw-r--r--indra/newview/llsidepanelappearance.h2
-rw-r--r--indra/newview/llstartup.cpp2
-rw-r--r--indra/newview/llstatusbar.cpp22
-rw-r--r--indra/newview/llstatusbar.h2
-rw-r--r--indra/newview/lltexturefetch.cpp6
-rw-r--r--indra/newview/lltoolbar.cpp2
-rw-r--r--indra/newview/lltooldraganddrop.cpp12
-rw-r--r--indra/newview/lltoolmgr.cpp4
-rw-r--r--indra/newview/lltoolpie.cpp2
-rw-r--r--indra/newview/lltoolplacer.cpp6
-rw-r--r--indra/newview/llviewerdisplay.cpp4
-rw-r--r--indra/newview/llviewerinventory.cpp19
-rw-r--r--indra/newview/llviewermedia.cpp2
-rw-r--r--indra/newview/llviewermenu.cpp14
-rw-r--r--indra/newview/llviewermessage.cpp8
-rw-r--r--indra/newview/llviewerparcelmedia.cpp6
-rw-r--r--indra/newview/llviewerparcelmgr.cpp33
-rw-r--r--indra/newview/llviewertexture.cpp37
-rw-r--r--indra/newview/llviewertexture.h2
-rw-r--r--indra/newview/llvoavatar.cpp4
-rw-r--r--indra/newview/llvoiceclient.cpp2
-rw-r--r--indra/newview/skins/default/colors.xml60
-rw-r--r--indra/newview/skins/default/textures/textures.xml33
-rw-r--r--indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.pngbin0 -> 311 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.pngbin0 -> 330 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.pngbin0 -> 311 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.pngbin0 -> 324 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/jump_left_in.pngbin0 -> 342 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/jump_left_out.pngbin0 -> 321 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/jump_right_in.pngbin0 -> 320 bytes
-rw-r--r--indra/newview/skins/default/textures/widgets/jump_right_out.pngbin0 -> 315 bytes
-rw-r--r--indra/newview/skins/default/textures/world/BeaconArrow.pngbin0 -> 1965 bytes
-rw-r--r--indra/newview/skins/default/xui/en/floater_about_land.xml213
-rw-r--r--indra/newview/skins/default/xui/en/floater_im_container.xml1
-rw-r--r--indra/newview/skins/default/xui/en/floater_outfit_save_as.xml59
-rw-r--r--indra/newview/skins/default/xui/en/floater_script.xml1
-rw-r--r--indra/newview/skins/default/xui/en/floater_snapshot.xml8
-rw-r--r--indra/newview/skins/default/xui/en/notifications.xml23
-rw-r--r--indra/newview/skins/default/xui/en/panel_bottomtray.xml22
-rw-r--r--indra/newview/skins/default/xui/en/panel_classified_info.xml1
-rw-r--r--indra/newview/skins/default/xui/en/panel_edit_classified.xml1
-rw-r--r--indra/newview/skins/default/xui/en/panel_edit_pick.xml1
-rw-r--r--indra/newview/skins/default/xui/en/panel_main_inventory.xml2
-rw-r--r--indra/newview/skins/default/xui/en/panel_pick_info.xml1
-rw-r--r--indra/newview/skins/default/xui/en/panel_picks.xml1
-rw-r--r--indra/newview/skins/default/xui/en/panel_preferences_alerts.xml1
-rw-r--r--indra/newview/skins/default/xui/en/panel_preferences_privacy.xml17
-rw-r--r--indra/newview/skins/default/xui/en/panel_prim_media_controls.xml29
-rw-r--r--indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml1
-rw-r--r--indra/newview/skins/default/xui/en/sidepanel_inventory.xml1
-rw-r--r--indra/newview/skins/default/xui/en/sidepanel_item_info.xml3
-rw-r--r--indra/newview/skins/default/xui/en/sidepanel_task_info.xml3
-rw-r--r--indra/newview/skins/default/xui/en/widgets/chat_history.xml22
-rw-r--r--indra/newview/skins/default/xui/en/widgets/menu.xml2
-rw-r--r--indra/newview/tests/llviewerhelputil_test.cpp3
-rw-r--r--install.xml16
91 files changed, 792 insertions, 417 deletions
diff --git a/indra/llcommon/llfasttimer.h b/indra/llcommon/llfasttimer.h
index 5058a2e772..cd76bfe709 100644
--- a/indra/llcommon/llfasttimer.h
+++ b/indra/llcommon/llfasttimer.h
@@ -39,46 +39,81 @@
#define TIME_FAST_TIMERS 0
#if LL_WINDOWS
+#define LL_INLINE __forceinline
+
+//
+// NOTE: put back in when we aren't using platform sdk anymore
+//
// because MS has different signatures for these functions in winnt.h
// need to rename them to avoid conflicts
-#define _interlockedbittestandset _renamed_interlockedbittestandset
-#define _interlockedbittestandreset _renamed_interlockedbittestandreset
-#include <intrin.h>
-#undef _interlockedbittestandset
-#undef _interlockedbittestandreset
+//#define _interlockedbittestandset _renamed_interlockedbittestandset
+//#define _interlockedbittestandreset _renamed_interlockedbittestandreset
+//#include <intrin.h>
+//#undef _interlockedbittestandset
+//#undef _interlockedbittestandreset
+
+//inline U32 get_cpu_clock_count_32()
+//{
+// U64 time_stamp = __rdtsc();
+// return (U32)(time_stamp >> 8);
+//}
+//
+//// return full timer value, *not* shifted by 8 bits
+//inline U64 get_cpu_clock_count_64()
+//{
+// return __rdtsc();
+//}
-#define LL_INLINE __forceinline
// shift off lower 8 bits for lower resolution but longer term timing
// on 1Ghz machine, a 32-bit word will hold ~1000 seconds of timing
inline U32 get_cpu_clock_count_32()
{
- U64 time_stamp = __rdtsc();
- return (U32)(time_stamp >> 8);
+ U32 ret_val;
+ __asm
+ {
+ _emit 0x0f
+ _emit 0x31
+ shr eax,8
+ shl edx,24
+ or eax, edx
+ mov dword ptr [ret_val], eax
+ }
+ return ret_val;
}
// return full timer value, *not* shifted by 8 bits
inline U64 get_cpu_clock_count_64()
{
- return __rdtsc();
+ U64 ret_val;
+ __asm
+ {
+ _emit 0x0f
+ _emit 0x31
+ mov eax,eax
+ mov edx,edx
+ mov dword ptr [ret_val+4], edx
+ mov dword ptr [ret_val], eax
+ }
+ return ret_val;
}
#else
#define LL_INLINE
-#endif // LL_WINDOWS
-
-#if (LL_LINUX || LL_SOLARIS || LL_DARWIN) && (defined(__i386__) || defined(__amd64__))
-inline U32 get_cpu_clock_count_32()
-{
- U64 x;
- __asm__ volatile (".byte 0x0f, 0x31": "=A"(x));
- return (U32)x >> 8;
-}
-
-inline U32 get_cpu_clock_count_64()
-{
- U64 x;
- __asm__ volatile (".byte 0x0f, 0x31": "=A"(x));
- return x >> 8;
-}
+#endif
+
+#if (LL_LINUX || LL_SOLARIS || LL_DARWIN) && (defined(__i386__) || defined(__amd64__))
+inline U32 get_cpu_clock_count_32()
+{
+ U64 x;
+ __asm__ volatile (".byte 0x0f, 0x31": "=A"(x));
+ return (U32)x >> 8;
+}
+
+inline U32 get_cpu_clock_count_64()
+{
+ U64 x;
+ __asm__ volatile (".byte 0x0f, 0x31": "=A"(x));
+ return x >> 8;
+}
#endif
#if ( LL_DARWIN && !(defined(__i386__) || defined(__amd64__))) || (LL_SOLARIS && defined(__sparc__))
diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp
index a17e306325..980cd2abd7 100644
--- a/indra/llui/llfloater.cpp
+++ b/indra/llui/llfloater.cpp
@@ -233,6 +233,7 @@ LLFloater::LLFloater(const LLSD& key, const LLFloater::Params& p)
mAutoFocus(TRUE), // automatically take focus when opened
mCanDock(false),
mDocked(false),
+ mTornOff(false),
mHasBeenDraggedWhileMinimized(FALSE),
mPreviousMinimizedBottom(0),
mPreviousMinimizedLeft(0)
@@ -1456,6 +1457,7 @@ void LLFloater::onClickTearOff(LLFloater* self)
}
self->setTornOff(false);
}
+ self->updateButtons();
}
// static
@@ -1748,8 +1750,8 @@ void LLFloater::updateButtons()
if (i == BUTTON_HELP)
{
// don't show the help button if the floater is minimized
- // or if it is a tear-off hosted floater
- if (isMinimized() || mButtonsEnabled[BUTTON_TEAR_OFF])
+ // or if it is a docked tear-off floater
+ if (isMinimized() || (mButtonsEnabled[BUTTON_TEAR_OFF] && ! mTornOff))
{
enabled = false;
}
diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h
index daf558de24..f70495c0f0 100644
--- a/indra/llui/llfloater.h
+++ b/indra/llui/llfloater.h
@@ -256,7 +256,7 @@ public:
bool isDocked() const { return mDocked; }
virtual void setDocked(bool docked, bool pop_on_undock = true);
- virtual void setTornOff(bool torn_off) {}
+ virtual void setTornOff(bool torn_off) { mTornOff = torn_off; }
// Return a closeable floater, if any, given the current focus.
static LLFloater* getClosableFloaterFromFocus();
@@ -387,6 +387,7 @@ private:
bool mCanDock;
bool mDocked;
+ bool mTornOff;
static LLMultiFloater* sHostp;
static BOOL sQuitting;
diff --git a/indra/llui/llmenugl.cpp b/indra/llui/llmenugl.cpp
index 21f3f15739..c172a2b714 100644
--- a/indra/llui/llmenugl.cpp
+++ b/indra/llui/llmenugl.cpp
@@ -99,7 +99,7 @@ const S32 TEAROFF_SEPARATOR_HEIGHT_PIXELS = 10;
const S32 MENU_ITEM_PADDING = 4;
const std::string BOOLEAN_TRUE_PREFIX( "\xE2\x9C\x94" ); // U+2714 HEAVY CHECK MARK
-const std::string BRANCH_SUFFIX( ">" );
+const std::string BRANCH_SUFFIX( "\xE2\x96\xB6" ); // U+25B6 BLACK RIGHT-POINTING TRIANGLE
const std::string ARROW_UP ("^^^^^^^");
const std::string ARROW_DOWN("vvvvvvv");
diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp
index 5ebf49c488..17aecaf32f 100644
--- a/indra/llui/lltextbase.cpp
+++ b/indra/llui/lltextbase.cpp
@@ -346,7 +346,8 @@ void LLTextBase::drawSelectionBackground()
S32 segment_line_start = segmentp->getStart() + segment_offset;
S32 segment_line_end = llmin(segmentp->getEnd(), line_iter->mDocIndexEnd);
- S32 segment_width, segment_height;
+ S32 segment_width = 0;
+ S32 segment_height = 0;
// if selection after beginning of segment
if(selection_left >= segment_line_start)
@@ -433,7 +434,8 @@ void LLTextBase::drawCursor()
if (LL_KIM_OVERWRITE == gKeyboard->getInsertMode() && !hasSelection())
{
- S32 segment_width, segment_height;
+ S32 segment_width = 0;
+ S32 segment_height = 0;
segmentp->getDimensions(mCursorPos - segmentp->getStart(), 1, segment_width, segment_height);
S32 width = llmax(CURSOR_THICKNESS, segment_width);
cursor_rect.mRight = cursor_rect.mLeft + width;
@@ -2443,10 +2445,12 @@ void LLNormalTextSegment::setToolTip(const std::string& tooltip)
bool LLNormalTextSegment::getDimensions(S32 first_char, S32 num_chars, S32& width, S32& height) const
{
- height = mFontHeight;
+ height = 0;
+ width = 0;
bool force_newline = false;
if (num_chars > 0)
{
+ height = mFontHeight;
LLWString text = mEditor.getWText();
// if last character is a newline, then return true, forcing line break
llwchar last_char = text[mStart + first_char + num_chars - 1];
@@ -2461,10 +2465,6 @@ bool LLNormalTextSegment::getDimensions(S32 first_char, S32 num_chars, S32& widt
width = mStyle->getFont()->getWidth(text.c_str(), mStart + first_char, num_chars);
}
}
- else
- {
- width = 0;
- }
LLUIImagePtr image = mStyle->getImage();
if( image.notNull())
diff --git a/indra/llui/lluictrl.cpp b/indra/llui/lluictrl.cpp
index f016c0af89..3ade46d367 100644
--- a/indra/llui/lluictrl.cpp
+++ b/indra/llui/lluictrl.cpp
@@ -868,14 +868,6 @@ bool LLUICtrl::findHelpTopic(std::string& help_topic_out)
if (panel)
{
- // does the panel have an active tab with a help topic?
- LLPanel *tab = panel->childGetVisibleTabWithHelp();
- if (tab)
- {
- help_topic_out = tab->getHelpTopic();
- return true; // success (tab)
- }
-
// does the panel have a sub-panel with a help topic?
LLPanel *subpanel = panel->childGetVisiblePanelWithHelp();
if (subpanel)
@@ -884,6 +876,14 @@ bool LLUICtrl::findHelpTopic(std::string& help_topic_out)
return true; // success (subpanel)
}
+ // does the panel have an active tab with a help topic?
+ LLPanel *tab = panel->childGetVisibleTabWithHelp();
+ if (tab)
+ {
+ help_topic_out = tab->getHelpTopic();
+ return true; // success (tab)
+ }
+
// otherwise, does the panel have a help topic itself?
if (!panel->getHelpTopic().empty())
{
diff --git a/indra/llui/llurlentry.cpp b/indra/llui/llurlentry.cpp
index 1b6dd1b264..4927e57a52 100644
--- a/indra/llui/llurlentry.cpp
+++ b/indra/llui/llurlentry.cpp
@@ -204,7 +204,7 @@ LLUrlEntryHTTPNoProtocol::LLUrlEntryHTTPNoProtocol()
mPattern = boost::regex("("
"\\bwww\\.\\S+\\.\\S+" // i.e. www.FOO.BAR
"|" // or
- "\\b[^ \\t\\n\\r\\f\\v:/]+\\.(?:com|net|edu|org)[^[:space:][:alnum:]]*\\>" // i.e. FOO.net
+ "(?<!@)\\b[^[:space:]:@/]+\\.(?:com|net|edu|org)([/:]\\S*)?\\b" // i.e. FOO.net
")",
boost::regex::perl|boost::regex::icase);
mMenuName = "menu_url_http.xml";
diff --git a/indra/llui/tests/llurlentry_test.cpp b/indra/llui/tests/llurlentry_test.cpp
index 38cf7124ce..80be8fcbf7 100644
--- a/indra/llui/tests/llurlentry_test.cpp
+++ b/indra/llui/tests/llurlentry_test.cpp
@@ -571,6 +571,26 @@ namespace tut
"MIT web site is at web.mit.edu and also www.mit.edu",
"web.mit.edu");
+ testRegex("don't match e-mail addresses", r,
+ "test@lindenlab.com",
+ "");
+
+ testRegex(".com URL with path", r,
+ "see secondlife.com/status for grid status",
+ "secondlife.com/status");
+
+ testRegex(".com URL with port", r,
+ "secondlife.com:80",
+ "secondlife.com:80");
+
+ testRegex(".com URL with port and path", r,
+ "see secondlife.com:80/status",
+ "secondlife.com:80/status");
+
+ testRegex("www.*.com URL with port and path", r,
+ "see www.secondlife.com:80/status",
+ "www.secondlife.com:80/status");
+
testRegex("invalid .com URL [1]", r,
"..com",
"");
diff --git a/indra/newview/llagent.cpp b/indra/newview/llagent.cpp
index 749296d8a5..da0e9238d6 100644
--- a/indra/newview/llagent.cpp
+++ b/indra/newview/llagent.cpp
@@ -43,7 +43,7 @@
#include "llcallingcard.h"
#include "llchannelmanager.h"
#include "llconsole.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloatercamera.h"
#include "llfloatercustomize.h"
#include "llfloaterreg.h"
@@ -5699,10 +5699,10 @@ void LLAgent::processScriptControlChange(LLMessageSystem *msg, void **)
}
// Any control taken? If so, might be first time.
- if (total_count > 0)
- {
- LLFirstUse::useOverrideKeys();
- }
+ //if (total_count > 0)
+ //{
+ //LLFirstUse::useOverrideKeys();
+ //}
}
else
{
diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp
index 10a2dd132a..c21cdf9508 100644
--- a/indra/newview/llagentwearables.cpp
+++ b/indra/newview/llagentwearables.cpp
@@ -1364,15 +1364,15 @@ void LLAgentWearables::makeNewOutfit(const std::string& new_folder_name,
}
}
-class LLAutoRenameFolder: public LLInventoryCallback
+class LLShowCreatedOutfit: public LLInventoryCallback
{
public:
- LLAutoRenameFolder(LLUUID& folder_id):
+ LLShowCreatedOutfit(LLUUID& folder_id):
mFolderID(folder_id)
{
}
- virtual ~LLAutoRenameFolder()
+ virtual ~LLShowCreatedOutfit()
{
LLSD key;
LLSideTray::getInstance()->showPanel("panel_outfits_inventory", key);
@@ -1382,13 +1382,15 @@ public:
{
outfit_panel->getRootFolder()->clearSelection();
outfit_panel->getRootFolder()->setSelectionByID(mFolderID, TRUE);
- outfit_panel->getRootFolder()->setNeedsAutoRename(TRUE);
}
LLAccordionCtrlTab* tab_outfits = outfit_panel ? outfit_panel->findChild<LLAccordionCtrlTab>("tab_outfits") : 0;
if (tab_outfits && !tab_outfits->getDisplayChildren())
{
tab_outfits->changeOpenClose(tab_outfits->getDisplayChildren());
}
+
+ LLAppearanceManager::instance().updateIsDirty();
+ LLAppearanceManager::instance().updatePanelOutfitName("");
}
virtual void fire(const LLUUID&)
@@ -1413,10 +1415,10 @@ LLUUID LLAgentWearables::makeNewOutfitLinks(const std::string& new_folder_name)
LLFolderType::FT_OUTFIT,
new_folder_name);
- LLPointer<LLInventoryCallback> cb = new LLAutoRenameFolder(folder_id);
+ LLPointer<LLInventoryCallback> cb = new LLShowCreatedOutfit(folder_id);
LLAppearanceManager::instance().shallowCopyCategory(LLAppearanceManager::instance().getCOF(),folder_id, cb);
- LLAppearanceManager::instance().createBaseOutfitLink(folder_id, NULL);
-
+ LLAppearanceManager::instance().createBaseOutfitLink(folder_id, cb);
+
return folder_id;
}
diff --git a/indra/newview/llappearancemgr.cpp b/indra/newview/llappearancemgr.cpp
index 4d4a89bcd4..748d8bdfbf 100644
--- a/indra/newview/llappearancemgr.cpp
+++ b/indra/newview/llappearancemgr.cpp
@@ -392,6 +392,21 @@ const LLViewerInventoryItem* LLAppearanceManager::getBaseOutfitLink()
return NULL;
}
+bool LLAppearanceManager::getBaseOutfitName(std::string& name)
+{
+ const LLViewerInventoryItem* outfit_link = getBaseOutfitLink();
+ if(outfit_link)
+ {
+ const LLViewerInventoryCategory *cat = outfit_link->getLinkedCategory();
+ if (cat)
+ {
+ name = cat->getName();
+ return true;
+ }
+ }
+ return false;
+}
+
// Update appearance from outfit folder.
void LLAppearanceManager::changeOutfit(bool proceed, const LLUUID& category, bool append)
{
@@ -630,6 +645,7 @@ void LLAppearanceManager::createBaseOutfitLink(const LLUUID& category, LLPointer
LLAssetType::AT_LINK_FOLDER, link_waiter);
new_outfit_name = catp->getName();
}
+
updatePanelOutfitName(new_outfit_name);
}
diff --git a/indra/newview/llappearancemgr.h b/indra/newview/llappearancemgr.h
index b954968998..20745b70e4 100644
--- a/indra/newview/llappearancemgr.h
+++ b/indra/newview/llappearancemgr.h
@@ -63,6 +63,7 @@ public:
// Finds the folder link to the currently worn outfit
const LLViewerInventoryItem *getBaseOutfitLink();
+ bool getBaseOutfitName(std::string &name);
// Update the displayed outfit name in UI.
void updatePanelOutfitName(const std::string& name);
diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp
index fb1bded795..4a61096ad8 100644
--- a/indra/newview/llappviewer.cpp
+++ b/indra/newview/llappviewer.cpp
@@ -71,7 +71,7 @@
#include "lluicolortable.h"
#include "llurldispatcher.h"
#include "llurlhistory.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llrender.h"
#include "llteleporthistory.h"
#include "lllocationhistory.h"
@@ -1676,7 +1676,7 @@ bool LLAppViewer::initThreads()
// Image decoding
LLAppViewer::sImageDecodeThread = new LLImageDecodeThread(enable_threads && true);
LLAppViewer::sTextureCache = new LLTextureCache(enable_threads && true);
- LLAppViewer::sTextureFetch = new LLTextureFetch(LLAppViewer::getTextureCache(), sImageDecodeThread, enable_threads && false);
+ LLAppViewer::sTextureFetch = new LLTextureFetch(LLAppViewer::getTextureCache(), sImageDecodeThread, enable_threads && true);
LLImage::initClass();
if (LLFastTimer::sLog || LLFastTimer::sMetricLog)
@@ -1915,25 +1915,25 @@ bool LLAppViewer::initConfiguration()
// These are warnings that appear on the first experience of that condition.
// They are already set in the settings_default.xml file, but still need to be added to LLFirstUse
// for disable/reset ability
- LLFirstUse::addConfigVariable("FirstBalanceIncrease");
- LLFirstUse::addConfigVariable("FirstBalanceDecrease");
- LLFirstUse::addConfigVariable("FirstSit");
- LLFirstUse::addConfigVariable("FirstMap");
- LLFirstUse::addConfigVariable("FirstGoTo");
- LLFirstUse::addConfigVariable("FirstBuild");
+// LLFirstUse::addConfigVariable("FirstBalanceIncrease");
+// LLFirstUse::addConfigVariable("FirstBalanceDecrease");
+// LLFirstUse::addConfigVariable("FirstSit");
+// LLFirstUse::addConfigVariable("FirstMap");
+// LLFirstUse::addConfigVariable("FirstGoTo");
+// LLFirstUse::addConfigVariable("FirstBuild");
// LLFirstUse::addConfigVariable("FirstLeftClickNoHit");
- LLFirstUse::addConfigVariable("FirstTeleport");
- LLFirstUse::addConfigVariable("FirstOverrideKeys");
- LLFirstUse::addConfigVariable("FirstAttach");
- LLFirstUse::addConfigVariable("FirstAppearance");
- LLFirstUse::addConfigVariable("FirstInventory");
- LLFirstUse::addConfigVariable("FirstSandbox");
- LLFirstUse::addConfigVariable("FirstFlexible");
- LLFirstUse::addConfigVariable("FirstDebugMenus");
- LLFirstUse::addConfigVariable("FirstStreamingMedia");
- LLFirstUse::addConfigVariable("FirstSculptedPrim");
- LLFirstUse::addConfigVariable("FirstVoice");
- LLFirstUse::addConfigVariable("FirstMedia");
+// LLFirstUse::addConfigVariable("FirstTeleport");
+// LLFirstUse::addConfigVariable("FirstOverrideKeys");
+// LLFirstUse::addConfigVariable("FirstAttach");
+// LLFirstUse::addConfigVariable("FirstAppearance");
+// LLFirstUse::addConfigVariable("FirstInventory");
+// LLFirstUse::addConfigVariable("FirstSandbox");
+// LLFirstUse::addConfigVariable("FirstFlexible");
+// LLFirstUse::addConfigVariable("FirstDebugMenus");
+// LLFirstUse::addConfigVariable("FirstStreamingMedia");
+// LLFirstUse::addConfigVariable("FirstSculptedPrim");
+// LLFirstUse::addConfigVariable("FirstVoice");
+// LLFirstUse::addConfigVariable("FirstMedia");
// - read command line settings.
LLControlGroupCLP clp;
diff --git a/indra/newview/llfirstuse.cpp b/indra/newview/llfirstuse.cpp
index 7fd0e070be..b3fdf60b11 100644
--- a/indra/newview/llfirstuse.cpp
+++ b/indra/newview/llfirstuse.cpp
@@ -45,6 +45,7 @@
#include "llappviewer.h"
#include "lltracker.h"
+/*
// static
std::set<std::string> LLFirstUse::sConfigVariables;
@@ -75,7 +76,8 @@ void LLFirstUse::resetFirstUse()
gWarningSettings.setBOOL(*iter, TRUE);
}
}
-
+*/
+/*
// Called whenever the viewer detects that your balance went up
void LLFirstUse::useBalanceIncrease(S32 delta)
@@ -145,6 +147,8 @@ void LLFirstUse::useBuild()
LLNotificationsUtil::add("FirstBuild");
}
}
+
+ */
/*
// static
void LLFirstUse::useLeftClickNoHit()
@@ -157,6 +161,7 @@ void LLFirstUse::useLeftClickNoHit()
}
}
*/
+/*
// static
void LLFirstUse::useTeleport()
{
@@ -171,7 +176,7 @@ void LLFirstUse::useTeleport()
}
}
}
-
+*/
// static
void LLFirstUse::useOverrideKeys()
{
@@ -187,7 +192,7 @@ void LLFirstUse::useOverrideKeys()
}
}
}
-
+/*
// static
void LLFirstUse::useAttach()
{
@@ -216,6 +221,7 @@ void LLFirstUse::useInventory()
}
}
+*/
// static
void LLFirstUse::useSandbox()
@@ -230,7 +236,7 @@ void LLFirstUse::useSandbox()
LLNotificationsUtil::add("FirstSandbox", args);
}
}
-
+/*
// static
void LLFirstUse::useFlexible()
{
@@ -277,3 +283,4 @@ void LLFirstUse::useMedia()
//LLNotificationsUtil::add("FirstMedia");
}
}
+*/
diff --git a/indra/newview/llfirstuse.h b/indra/newview/llfirstuse.h
index 7b4f9f516f..3c7551f6cb 100644
--- a/indra/newview/llfirstuse.h
+++ b/indra/newview/llfirstuse.h
@@ -79,6 +79,7 @@ object or from inventory.
class LLFirstUse
{
public:
+/*
// Add a config variable to be reset on resetFirstUse()
static void addConfigVariable(const std::string& var);
@@ -97,11 +98,16 @@ public:
static void useBuild();
// static void useLeftClickNoHit();
static void useTeleport();
+*/
static void useOverrideKeys();
+/*
static void useAttach();
static void useAppearance();
static void useInventory();
+ */
static void useSandbox();
+
+/*
static void useFlexible();
static void useDebugMenus();
static void useSculptedPrim();
@@ -109,6 +115,7 @@ public:
protected:
static std::set<std::string> sConfigVariables;
+*/
};
#endif
diff --git a/indra/newview/llfloaterinventory.cpp b/indra/newview/llfloaterinventory.cpp
index 76c0a7637c..e62e2c99a7 100644
--- a/indra/newview/llfloaterinventory.cpp
+++ b/indra/newview/llfloaterinventory.cpp
@@ -35,7 +35,7 @@
#include "llfloaterinventory.h"
#include "llagent.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterreg.h"
#include "llinventorymodel.h"
#include "llpanelmaininventory.h"
@@ -135,5 +135,5 @@ void LLFloaterInventory::cleanup()
void LLFloaterInventory::onOpen(const LLSD& key)
{
- LLFirstUse::useInventory();
+ //LLFirstUse::useInventory();
}
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index 9af37e8174..fc036cb354 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -51,7 +51,7 @@
#include "lldirpicker.h"
#include "llfeaturemanager.h"
#include "llfocusmgr.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterreg.h"
#include "llfloaterabout.h"
#include "llfloaterhardwaresettings.h"
@@ -185,8 +185,8 @@ void handleNameTagOptionChanged(const LLSD& newvalue);
viewer_media_t get_web_media();
bool callback_clear_browser_cache(const LLSD& notification, const LLSD& response);
-bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
-bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
+//bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
+//bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater);
void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator);
@@ -236,7 +236,7 @@ void handleNameTagOptionChanged(const LLSD& newvalue)
}
}
-bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater)
+/*bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFloaterPreference* floater)
{
S32 option = LLNotificationsUtil::getSelectedOption(notification, response);
if (0 == option && floater )
@@ -244,7 +244,7 @@ bool callback_skip_dialogs(const LLSD& notification, const LLSD& response, LLFlo
if ( floater )
{
floater->setAllIgnored();
- LLFirstUse::disableFirstUse();
+ // LLFirstUse::disableFirstUse();
floater->buildPopupLists();
}
}
@@ -259,13 +259,13 @@ bool callback_reset_dialogs(const LLSD& notification, const LLSD& response, LLFl
if ( floater )
{
floater->resetAllIgnored();
- LLFirstUse::resetFirstUse();
+ //LLFirstUse::resetFirstUse();
floater->buildPopupLists();
}
}
return false;
}
-
+*/
void fractionFromDecimal(F32 decimal_val, S32& numerator, S32& denominator)
{
@@ -313,8 +313,8 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
mCommitCallbackRegistrar.add("Pref.SelectSkin", boost::bind(&LLFloaterPreference::onSelectSkin, this));
mCommitCallbackRegistrar.add("Pref.VoiceSetKey", boost::bind(&LLFloaterPreference::onClickSetKey, this));
mCommitCallbackRegistrar.add("Pref.VoiceSetMiddleMouse", boost::bind(&LLFloaterPreference::onClickSetMiddleMouse, this));
- mCommitCallbackRegistrar.add("Pref.ClickSkipDialogs", boost::bind(&LLFloaterPreference::onClickSkipDialogs, this));
- mCommitCallbackRegistrar.add("Pref.ClickResetDialogs", boost::bind(&LLFloaterPreference::onClickResetDialogs, this));
+// mCommitCallbackRegistrar.add("Pref.ClickSkipDialogs", boost::bind(&LLFloaterPreference::onClickSkipDialogs, this));
+// mCommitCallbackRegistrar.add("Pref.ClickResetDialogs", boost::bind(&LLFloaterPreference::onClickResetDialogs, this));
mCommitCallbackRegistrar.add("Pref.ClickEnablePopup", boost::bind(&LLFloaterPreference::onClickEnablePopup, this));
mCommitCallbackRegistrar.add("Pref.ClickDisablePopup", boost::bind(&LLFloaterPreference::onClickDisablePopup, this));
mCommitCallbackRegistrar.add("Pref.LogPath", boost::bind(&LLFloaterPreference::onClickLogPath, this));
@@ -326,6 +326,7 @@ LLFloaterPreference::LLFloaterPreference(const LLSD& key)
mCommitCallbackRegistrar.add("Pref.UpdateSliderText", boost::bind(&LLFloaterPreference::onUpdateSliderText,this, _1,_2));
mCommitCallbackRegistrar.add("Pref.AutoDetectAspect", boost::bind(&LLFloaterPreference::onCommitAutoDetectAspect, this));
mCommitCallbackRegistrar.add("Pref.ParcelMediaAutoPlayEnable", boost::bind(&LLFloaterPreference::onCommitParcelMediaAutoPlayEnable, this));
+ mCommitCallbackRegistrar.add("Pref.MediaEnabled", boost::bind(&LLFloaterPreference::onCommitMediaEnabled, this));
mCommitCallbackRegistrar.add("Pref.onSelectAspectRatio", boost::bind(&LLFloaterPreference::onKeystrokeAspectRatio, this));
mCommitCallbackRegistrar.add("Pref.QualityPerformance", boost::bind(&LLFloaterPreference::onChangeQuality, this, _2));
mCommitCallbackRegistrar.add("Pref.applyUIColor", boost::bind(&LLFloaterPreference::applyUIColor, this ,_1, _2));
@@ -994,16 +995,18 @@ void LLFloaterPreference::onCommitParcelMediaAutoPlayEnable()
gSavedSettings.setBOOL(LLViewerMedia::AUTO_PLAY_MEDIA_SETTING, autoplay);
lldebugs << "autoplay now = " << int(autoplay) << llendl;
+}
- if (autoplay)
- {
- // autoplay toggle has gone from FALSE to TRUE; ensure that
- // the media system is thus actually turned on too.
- gSavedSettings.setBOOL("AudioStreamingVideo", TRUE);
- gSavedSettings.setBOOL("AudioStreamingMusic", TRUE);
- gSavedSettings.setBOOL("AudioStreamingMedia", TRUE);
- llinfos << "autoplay turned on, turned all media subsystems on" << llendl;
- }
+void LLFloaterPreference::onCommitMediaEnabled()
+{
+ LLCheckBoxCtrl *media_enabled_ctrl = getChild<LLCheckBoxCtrl>("media_enabled");
+ bool enabled = media_enabled_ctrl->get();
+ gSavedSettings.setBOOL("AudioStreamingVideo", enabled);
+ gSavedSettings.setBOOL("AudioStreamingMusic", enabled);
+ gSavedSettings.setBOOL("AudioStreamingMedia", enabled);
+ media_enabled_ctrl->setTentative(false);
+ // Update enabled state of the "autoplay" checkbox
+ getChild<LLCheckBoxCtrl>("autoplay_enabled")->setEnabled(enabled);
}
void LLFloaterPreference::refresh()
@@ -1070,7 +1073,7 @@ void LLFloaterPreference::onClickSetMiddleMouse()
// update the control right away since we no longer wait for apply
getChild<LLUICtrl>("modifier_combo")->onCommit();
}
-
+/*
void LLFloaterPreference::onClickSkipDialogs()
{
LLNotificationsUtil::add("SkipShowNextTimeDialogs", LLSD(), LLSD(), boost::bind(&callback_skip_dialogs, _1, _2, this));
@@ -1080,6 +1083,7 @@ void LLFloaterPreference::onClickResetDialogs()
{
LLNotificationsUtil::add("ResetShowNextTimeDialogs", LLSD(), LLSD(), boost::bind(&callback_reset_dialogs, _1, _2, this));
}
+ */
void LLFloaterPreference::onClickEnablePopup()
{
@@ -1419,6 +1423,20 @@ BOOL LLPanelPreference::postBuild()
refresh();
}
+ //////////////////////PanelPrivacy ///////////////////
+ if(hasChild("media_enabled"))
+ {
+ bool video_enabled = gSavedSettings.getBOOL("AudioStreamingVideo");
+ bool music_enabled = gSavedSettings.getBOOL("AudioStreamingMusic");
+ bool media_enabled = gSavedSettings.getBOOL("AudioStreamingMedia");
+ bool enabled = video_enabled || music_enabled || media_enabled;
+
+ LLCheckBoxCtrl *media_enabled_ctrl = getChild<LLCheckBoxCtrl>("media_enabled");
+ media_enabled_ctrl->set(enabled);
+ media_enabled_ctrl->setTentative(!(video_enabled == music_enabled == media_enabled));
+ getChild<LLCheckBoxCtrl>("autoplay_enabled")->setEnabled(enabled);
+ }
+
apply();
return true;
}
diff --git a/indra/newview/llfloaterpreference.h b/indra/newview/llfloaterpreference.h
index b2bc34231d..6f382620ee 100644
--- a/indra/newview/llfloaterpreference.h
+++ b/indra/newview/llfloaterpreference.h
@@ -110,8 +110,8 @@ public:
void onClickSetKey();
void setKey(KEY key);
void onClickSetMiddleMouse();
- void onClickSkipDialogs();
- void onClickResetDialogs();
+// void onClickSkipDialogs();
+// void onClickResetDialogs();
void onClickEnablePopup();
void onClickDisablePopup();
void resetAllIgnored();
@@ -133,6 +133,7 @@ public:
void onCommitAutoDetectAspect();
void onCommitParcelMediaAutoPlayEnable();
+ void onCommitMediaEnabled();
void applyResolution();
void applyUIColor(LLUICtrl* ctrl, const LLSD& param);
void getUIColor(LLUICtrl* ctrl, const LLSD& param);
diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp
index 0402ba20e2..03ff2cc370 100644
--- a/indra/newview/llfloaterregioninfo.cpp
+++ b/indra/newview/llfloaterregioninfo.cpp
@@ -1603,7 +1603,7 @@ std::string all_estates_text()
}
else if (region && region->getOwner() == gAgent.getID())
{
- return LLTrans::getString("AllEstatesYouOwn");
+ return LLTrans::getString("RegionInfoAllEstatesYouOwn");
}
else if (region && region->isEstateManager())
{
diff --git a/indra/newview/llfloatersettingsdebug.cpp b/indra/newview/llfloatersettingsdebug.cpp
index 8979575ef7..a6ffa5ec09 100644
--- a/indra/newview/llfloatersettingsdebug.cpp
+++ b/indra/newview/llfloatersettingsdebug.cpp
@@ -34,7 +34,7 @@
#include "llfloatersettingsdebug.h"
#include "llfloater.h"
#include "lluictrlfactory.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llcombobox.h"
#include "llspinctrl.h"
#include "llcolorswatch.h"
diff --git a/indra/newview/llfloatersnapshot.cpp b/indra/newview/llfloatersnapshot.cpp
index f53b62e490..afb58c9407 100644
--- a/indra/newview/llfloatersnapshot.cpp
+++ b/indra/newview/llfloatersnapshot.cpp
@@ -2078,8 +2078,10 @@ void LLFloaterSnapshot::draw()
{
if(previewp->getThumbnailImage())
{
+ LLRect thumbnail_rect = getChild<LLUICtrl>("thumbnail_placeholder")->getRect();
+
S32 offset_x = (getRect().getWidth() - previewp->getThumbnailWidth()) / 2 ;
- S32 offset_y = getRect().getHeight() - 205 + (90 - previewp->getThumbnailHeight()) / 2 ;
+ S32 offset_y = thumbnail_rect.mBottom + (thumbnail_rect.getHeight() - previewp->getThumbnailHeight()) / 2 ;
glMatrixMode(GL_MODELVIEW);
gl_draw_scaled_image(offset_x, offset_y,
diff --git a/indra/newview/llfloaterworldmap.cpp b/indra/newview/llfloaterworldmap.cpp
index 0781d8ed06..f4d4ea3553 100644
--- a/indra/newview/llfloaterworldmap.cpp
+++ b/indra/newview/llfloaterworldmap.cpp
@@ -47,7 +47,7 @@
#include "llviewercontrol.h"
#include "llcommandhandler.h"
#include "lldraghandle.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterreg.h" // getTypedInstance()
#include "llfocusmgr.h"
#include "llinventorymodel.h"
@@ -116,9 +116,12 @@ public:
{
if (params.size() == 0)
{
- return false;
+ // support the secondlife:///app/worldmap SLapp
+ LLFloaterReg::showInstance("world_map", "center");
+ return true;
}
+ // support the secondlife:///app/worldmap/{LOCATION}/{COORDS} SLapp
const std::string region_name = params[0].asString();
S32 x = (params.size() > 1) ? params[1].asInteger() : 128;
S32 y = (params.size() > 2) ? params[2].asInteger() : 128;
@@ -314,7 +317,7 @@ void LLFloaterWorldMap::onOpen(const LLSD& key)
adjustZoomSliderBounds();
// Could be first show
- LLFirstUse::useMap();
+ //LLFirstUse::useMap();
// Start speculative download of landmarks
const LLUUID landmark_folder_id = gInventory.findCategoryUUIDForType(LLFolderType::FT_LANDMARK);
diff --git a/indra/newview/llfolderview.cpp b/indra/newview/llfolderview.cpp
index 9aed403991..afde543ca8 100644
--- a/indra/newview/llfolderview.cpp
+++ b/indra/newview/llfolderview.cpp
@@ -78,7 +78,7 @@
///----------------------------------------------------------------------------
const S32 RENAME_WIDTH_PAD = 4;
-const S32 RENAME_HEIGHT_PAD = 2;
+const S32 RENAME_HEIGHT_PAD = 1;
const S32 AUTO_OPEN_STACK_DEPTH = 16;
const S32 MIN_ITEM_WIDTH_VISIBLE = LLFolderViewItem::ICON_WIDTH
+ LLFolderViewItem::ICON_PAD
@@ -2221,10 +2221,9 @@ void LLFolderView::updateRenamerPosition()
{
if(mRenameItem)
{
- LLFontGL* font = getLabelFontForStyle(mLabelStyle);
-
- S32 x = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD - 1 + mRenameItem->getIndentation();
- S32 y = llfloor(mRenameItem->getRect().getHeight() - font->getLineHeight()-2);
+ // See also LLFolderViewItem::draw()
+ S32 x = ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mRenameItem->getIndentation();
+ S32 y = mRenameItem->getRect().getHeight() - mRenameItem->getItemHeight() - RENAME_HEIGHT_PAD;
mRenameItem->localPointToScreen( x, y, &x, &y );
screenPointToLocal( x, y, &x, &y );
mRenamer->setOrigin( x, y );
@@ -2236,7 +2235,7 @@ void LLFolderView::updateRenamerPosition()
}
S32 width = llmax(llmin(mRenameItem->getRect().getWidth() - x, scroller_rect.getWidth() - x - getRect().mLeft), MINIMUM_RENAMER_WIDTH);
- S32 height = llfloor(font->getLineHeight() + RENAME_HEIGHT_PAD);
+ S32 height = mRenameItem->getItemHeight() - RENAME_HEIGHT_PAD;
mRenamer->reshape( width, height, TRUE );
}
}
diff --git a/indra/newview/llfolderviewitem.cpp b/indra/newview/llfolderviewitem.cpp
index 2363f51d80..4b48626b22 100644
--- a/indra/newview/llfolderviewitem.cpp
+++ b/indra/newview/llfolderviewitem.cpp
@@ -855,6 +855,7 @@ void LLFolderViewItem::draw()
ARROW_SIZE, ARROW_SIZE, mControlLabelRotation, arrow_image->getImage(), sFgColor);
}
+ // See also LLFolderView::updateRenamerPosition()
F32 text_left = (F32)(ARROW_SIZE + TEXT_PAD + ICON_WIDTH + ICON_PAD + mIndentation);
LLFontGL* font = getLabelFontForStyle(mLabelStyle);
diff --git a/indra/newview/llimview.cpp b/indra/newview/llimview.cpp
index e9661003ea..f751fa2273 100644
--- a/indra/newview/llimview.cpp
+++ b/indra/newview/llimview.cpp
@@ -80,7 +80,7 @@
#include "llrecentpeople.h"
#include "llsyswellwindow.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llagentui.h"
#include "lltextutil.h"
diff --git a/indra/newview/llinventoryfunctions.cpp b/indra/newview/llinventoryfunctions.cpp
index 8f4136c01f..e3caabf08f 100644
--- a/indra/newview/llinventoryfunctions.cpp
+++ b/indra/newview/llinventoryfunctions.cpp
@@ -50,7 +50,7 @@
// newview includes
#include "llappearancemgr.h"
#include "llappviewer.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterchat.h"
#include "llfloatercustomize.h"
#include "llfocusmgr.h"
diff --git a/indra/newview/llmenucommands.cpp b/indra/newview/llmenucommands.cpp
index a2aef9ba63..757eb3c9bc 100644
--- a/indra/newview/llmenucommands.cpp
+++ b/indra/newview/llmenucommands.cpp
@@ -45,7 +45,7 @@
#include "llagent.h"
#include "llcallingcard.h"
#include "llviewercontrol.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterchat.h"
#include "llfloaterworldmap.h"
#include "lllineeditor.h"
diff --git a/indra/newview/llmorphview.cpp b/indra/newview/llmorphview.cpp
index f562e45770..b95e8bd3a2 100644
--- a/indra/newview/llmorphview.cpp
+++ b/indra/newview/llmorphview.cpp
@@ -40,7 +40,7 @@
#include "lldrawable.h"
#include "lldrawpoolavatar.h"
#include "llface.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloatercustomize.h"
#include "llfloatertools.h"
#include "llresmgr.h"
@@ -143,7 +143,7 @@ void LLMorphView::setVisible(BOOL visible)
initialize();
// First run dialog
- LLFirstUse::useAppearance();
+ //LLFirstUse::useAppearance();
}
else
{
diff --git a/indra/newview/llpanelobject.cpp b/indra/newview/llpanelobject.cpp
index 6a61e0f02f..d17c287cc7 100644
--- a/indra/newview/llpanelobject.cpp
+++ b/indra/newview/llpanelobject.cpp
@@ -73,7 +73,7 @@
#include "pipeline.h"
#include "llviewercontrol.h"
#include "lluictrlfactory.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "lldrawpool.h"
@@ -682,7 +682,7 @@ void LLPanelObject::getState( )
if (objectp->getParameterEntryInUse(LLNetworkData::PARAMS_SCULPT))
{
selected_item = MI_SCULPT;
- LLFirstUse::useSculptedPrim();
+ //LLFirstUse::useSculptedPrim();
}
diff --git a/indra/newview/llpaneloutfitsinventory.cpp b/indra/newview/llpaneloutfitsinventory.cpp
index e058b3b326..df73c27f54 100644
--- a/indra/newview/llpaneloutfitsinventory.cpp
+++ b/indra/newview/llpaneloutfitsinventory.cpp
@@ -35,6 +35,7 @@
#include "llagent.h"
#include "llagentwearables.h"
+#include "llappearancemgr.h"
#include "llbutton.h"
#include "llfloaterreg.h"
@@ -44,6 +45,8 @@
#include "llinventoryfunctions.h"
#include "llinventorypanel.h"
#include "lllandmark.h"
+#include "lllineeditor.h"
+#include "llmodaldialog.h"
#include "llsidepanelappearance.h"
#include "llsidetray.h"
#include "lltabcontainer.h"
@@ -61,12 +64,75 @@
static LLRegisterPanelClassWrapper<LLPanelOutfitsInventory> t_inventory("panel_outfits_inventory");
bool LLPanelOutfitsInventory::sShowDebugEditor = false;
+class LLOutfitSaveAsDialog : public LLModalDialog
+{
+private:
+ std::string mItemName;
+ std::string mTempItemName;
+
+ boost::signals2::signal<void (const std::string&)> mSaveAsSignal;
+
+public:
+ LLOutfitSaveAsDialog( const LLSD& key )
+ : LLModalDialog( key ),
+ mTempItemName(key.asString())
+ {
+ }
+
+ BOOL postBuild()
+ {
+ getChild<LLUICtrl>("Save")->setCommitCallback(boost::bind(&LLOutfitSaveAsDialog::onSave, this ));
+ getChild<LLUICtrl>("Cancel")->setCommitCallback(boost::bind(&LLOutfitSaveAsDialog::onCancel, this ));
+
+ childSetTextArg("name ed", "[DESC]", mTempItemName);
+ return TRUE;
+ }
+
+ void setSaveAsCommit( const boost::signals2::signal<void (const std::string&)>::slot_type& cb )
+ {
+ mSaveAsSignal.connect(cb);
+ }
+
+ virtual void onOpen(const LLSD& key)
+ {
+ LLLineEditor* edit = getChild<LLLineEditor>("name ed");
+ if (edit)
+ {
+ edit->setFocus(TRUE);
+ edit->selectAll();
+ }
+ }
+
+ void onSave()
+ {
+ mItemName = childGetValue("name ed").asString();
+ LLStringUtil::trim(mItemName);
+ if( !mItemName.empty() )
+ {
+ mSaveAsSignal(mItemName);
+ closeFloater(); // destroys this object
+ }
+ }
+
+ void onCancel()
+ {
+ closeFloater(); // destroys this object
+ }
+};
+
LLPanelOutfitsInventory::LLPanelOutfitsInventory() :
mActivePanel(NULL),
mParent(NULL)
{
mSavedFolderState = new LLSaveFolderState();
mSavedFolderState->setApply(FALSE);
+
+ static bool registered_dialog = false;
+ if (!registered_dialog)
+ {
+ LLFloaterReg::add("outfit_save_as", "floater_outfit_save_as.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLOutfitSaveAsDialog>);
+ registered_dialog = true;
+ }
}
LLPanelOutfitsInventory::~LLPanelOutfitsInventory()
@@ -177,10 +243,28 @@ void LLPanelOutfitsInventory::onEdit()
{
}
-void LLPanelOutfitsInventory::onNew()
+void LLPanelOutfitsInventory::onSave()
+{
+ std::string outfit_name;
+
+ if (!LLAppearanceManager::getInstance()->getBaseOutfitName(outfit_name))
+ {
+ outfit_name = LLViewerFolderType::lookupNewCategoryName(LLFolderType::FT_OUTFIT);
+ }
+
+ LLOutfitSaveAsDialog* save_as_dialog = LLFloaterReg::showTypedInstance<LLOutfitSaveAsDialog>("outfit_save_as", LLSD(outfit_name), TRUE);
+ if (save_as_dialog)
+ {
+ save_as_dialog->setSaveAsCommit(boost::bind(&LLPanelOutfitsInventory::onSaveCommit, this, _1 ));
+ }
+}
+
+void LLPanelOutfitsInventory::onSaveCommit(const std::string& outfit_name)
{
- const std::string& outfit_name = LLViewerFolderType::lookupNewCategoryName(LLFolderType::FT_OUTFIT);
LLUUID outfit_folder = gAgentWearables.makeNewOutfitLinks(outfit_name);
+ LLSD key;
+ LLSideTray::getInstance()->showPanel("panel_outfits_inventory", key);
+
if (mAppearanceTabs)
{
mAppearanceTabs->selectTabByName("outfitslist_tab");
@@ -291,7 +375,7 @@ void LLPanelOutfitsInventory::onGearButtonClick()
void LLPanelOutfitsInventory::onAddButtonClick()
{
- onNew();
+ onSave();
}
void LLPanelOutfitsInventory::showActionMenu(LLMenuGL* menu, std::string spawning_view_name)
@@ -330,7 +414,7 @@ void LLPanelOutfitsInventory::onCustomAction(const LLSD& userdata)
const std::string command_name = userdata.asString();
if (command_name == "new")
{
- onNew();
+ onSave();
}
if (command_name == "edit")
{
diff --git a/indra/newview/llpaneloutfitsinventory.h b/indra/newview/llpaneloutfitsinventory.h
index b117311775..76110e2a3f 100644
--- a/indra/newview/llpaneloutfitsinventory.h
+++ b/indra/newview/llpaneloutfitsinventory.h
@@ -59,7 +59,9 @@ public:
void onAdd();
void onRemove();
void onEdit();
- void onNew();
+ void onSave();
+
+ void onSaveCommit(const std::string& item_name);
void onSelectionChange(const std::deque<LLFolderViewItem*> &items, BOOL user_action);
void onSelectorButtonClicked();
diff --git a/indra/newview/llpanelprimmediacontrols.cpp b/indra/newview/llpanelprimmediacontrols.cpp
index 4f539f404d..2dc3a62637 100644
--- a/indra/newview/llpanelprimmediacontrols.cpp
+++ b/indra/newview/llpanelprimmediacontrols.cpp
@@ -160,8 +160,6 @@ BOOL LLPanelPrimMediaControls::postBuild()
mSkipBackCtrl = getChild<LLUICtrl>("skip_back");
mVolumeCtrl = getChild<LLUICtrl>("media_volume");
mMuteBtn = getChild<LLButton>("media_mute_button");
- mVolumeUpCtrl = getChild<LLUICtrl>("volume_up");
- mVolumeDownCtrl = getChild<LLUICtrl>("volume_down");
mVolumeSliderCtrl = getChild<LLSliderCtrl>("volume_slider");
mWhitelistIcon = getChild<LLIconCtrl>("media_whitelist_flag");
mSecureLockIcon = getChild<LLIconCtrl>("media_secure_lock_flag");
@@ -339,8 +337,6 @@ void LLPanelPrimMediaControls::updateShape()
mMediaAddressCtrl->setVisible(has_focus && !mini_controls);
mMediaPlaySliderPanel->setVisible(has_focus && !mini_controls);
mVolumeCtrl->setVisible(false);
- mVolumeUpCtrl->setVisible(false);
- mVolumeDownCtrl->setVisible(false);
mWhitelistIcon->setVisible(!mini_controls && (media_data)?media_data->getWhiteListEnable():false);
// Disable zoom if HUD
@@ -373,8 +369,6 @@ void LLPanelPrimMediaControls::updateShape()
mSkipBackCtrl->setEnabled(has_focus && !mini_controls);
mVolumeCtrl->setVisible(has_focus);
- mVolumeUpCtrl->setVisible(has_focus);
- mVolumeDownCtrl->setVisible(has_focus);
mVolumeCtrl->setEnabled(has_focus);
mVolumeSliderCtrl->setEnabled(has_focus && shouldVolumeSliderBeVisible());
mVolumeSliderCtrl->setVisible(has_focus && shouldVolumeSliderBeVisible());
@@ -417,21 +411,15 @@ void LLPanelPrimMediaControls::updateShape()
// video vloume
if(volume <= 0.0)
{
- mVolumeUpCtrl->setEnabled(TRUE);
- mVolumeDownCtrl->setEnabled(FALSE);
mMuteBtn->setToggleState(true);
}
else if (volume >= 1.0)
{
- mVolumeUpCtrl->setEnabled(FALSE);
- mVolumeDownCtrl->setEnabled(TRUE);
mMuteBtn->setToggleState(false);
}
else
{
mMuteBtn->setToggleState(false);
- mVolumeUpCtrl->setEnabled(TRUE);
- mVolumeDownCtrl->setEnabled(TRUE);
}
switch(result)
@@ -476,12 +464,8 @@ void LLPanelPrimMediaControls::updateShape()
mSkipBackCtrl->setEnabled(FALSE);
mVolumeCtrl->setVisible(FALSE);
- mVolumeUpCtrl->setVisible(FALSE);
- mVolumeDownCtrl->setVisible(FALSE);
mVolumeSliderCtrl->setVisible(FALSE);
mVolumeCtrl->setEnabled(FALSE);
- mVolumeUpCtrl->setEnabled(FALSE);
- mVolumeDownCtrl->setEnabled(FALSE);
mVolumeSliderCtrl->setEnabled(FALSE);
if (mMediaPanelScroll)
diff --git a/indra/newview/llpanelprimmediacontrols.h b/indra/newview/llpanelprimmediacontrols.h
index 419f033628..743cec70a1 100644
--- a/indra/newview/llpanelprimmediacontrols.h
+++ b/indra/newview/llpanelprimmediacontrols.h
@@ -156,8 +156,6 @@ private:
LLUICtrl *mMediaPlaySliderCtrl;
LLUICtrl *mVolumeCtrl;
LLButton *mMuteBtn;
- LLUICtrl *mVolumeUpCtrl;
- LLUICtrl *mVolumeDownCtrl;
LLSliderCtrl *mVolumeSliderCtrl;
LLIconCtrl *mWhitelistIcon;
LLIconCtrl *mSecureLockIcon;
diff --git a/indra/newview/llpanelvolume.cpp b/indra/newview/llpanelvolume.cpp
index 5a70842a73..fbe68b4d92 100644
--- a/indra/newview/llpanelvolume.cpp
+++ b/indra/newview/llpanelvolume.cpp
@@ -54,7 +54,7 @@
#include "llcolorswatch.h"
#include "lltexturectrl.h"
#include "llcombobox.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfocusmgr.h"
#include "llmanipscale.h"
#include "llpreviewscript.h"
@@ -470,7 +470,7 @@ void LLPanelVolume::sendIsFlexible()
if (is_flexible)
{
- LLFirstUse::useFlexible();
+ //LLFirstUse::useFlexible();
if (objectp->getClickAction() == CLICK_ACTION_SIT)
{
diff --git a/indra/newview/llsidepanelappearance.cpp b/indra/newview/llsidepanelappearance.cpp
index 77a370cc3f..43215f86bd 100644
--- a/indra/newview/llsidepanelappearance.cpp
+++ b/indra/newview/llsidepanelappearance.cpp
@@ -87,7 +87,7 @@ void LLWatchForOutfitRenameObserver::changed(U32 mask)
mPanel->refreshCurrentOutfitName();
}
}
-
+
LLSidepanelAppearance::LLSidepanelAppearance() :
LLPanel(),
mFilterSubString(LLStringUtil::null),
@@ -255,7 +255,7 @@ void LLSidepanelAppearance::onNewOutfitButtonClicked()
{
if (!mLookInfo->getVisible())
{
- mPanelOutfitsInventory->onNew();
+ mPanelOutfitsInventory->onSave();
}
}
@@ -321,15 +321,11 @@ void LLSidepanelAppearance::refreshCurrentOutfitName(const std::string& name)
mOutfitDirtyTag->setVisible(LLAppearanceManager::getInstance()->isOutfitDirty());
if (name == "")
{
- const LLViewerInventoryItem *outfit_link = LLAppearanceManager::getInstance()->getBaseOutfitLink();
- if (outfit_link)
+ std::string outfit_name;
+ if (LLAppearanceManager::getInstance()->getBaseOutfitName(outfit_name))
{
- const LLViewerInventoryCategory *cat = outfit_link->getLinkedCategory();
- if (cat && cat->getPreferredType() == LLFolderType::FT_OUTFIT)
- {
- mCurrentLookName->setText(cat->getName());
+ mCurrentLookName->setText(outfit_name);
return;
- }
}
mCurrentLookName->setText(getString("No Outfit"));
mOpenOutfitBtn->setEnabled(FALSE);
diff --git a/indra/newview/llsidepanelappearance.h b/indra/newview/llsidepanelappearance.h
index 9524b0ece9..aa2e67fd16 100644
--- a/indra/newview/llsidepanelappearance.h
+++ b/indra/newview/llsidepanelappearance.h
@@ -61,6 +61,7 @@ public:
void fetchInventory();
void inventoryFetched();
void updateVerbs();
+ void onNewOutfitButtonClicked();
private:
void onFilterEdit(const std::string& search_string);
@@ -68,7 +69,6 @@ private:
void onOpenOutfitButtonClicked();
void onEditAppearanceButtonClicked();
void onEditButtonClicked();
- void onNewOutfitButtonClicked();
void onBackButtonClicked();
void onEditWearBackClicked();
void toggleLookInfoPanel(BOOL visible);
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index 99fa271b78..fbc98b7691 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -100,7 +100,7 @@
#include "lleventnotifier.h"
#include "llface.h"
#include "llfeaturemanager.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterchat.h"
#include "llfloaterhud.h"
#include "llfloaterland.h"
diff --git a/indra/newview/llstatusbar.cpp b/indra/newview/llstatusbar.cpp
index b3b2b9ee5d..24895e7a35 100644
--- a/indra/newview/llstatusbar.cpp
+++ b/indra/newview/llstatusbar.cpp
@@ -107,7 +107,6 @@ const F32 ICON_TIMER_EXPIRY = 3.f; // How long the balance and health icons sho
const F32 ICON_FLASH_FREQUENCY = 2.f;
const S32 TEXT_HEIGHT = 18;
-static void onClickBuyCurrency(void*);
static void onClickHealth(void*);
static void onClickScriptDebug(void*);
static void onClickVolume(void*);
@@ -122,7 +121,6 @@ LLStatusBar::LLStatusBar(const LLRect& rect)
mTextTime(NULL),
mSGBandwidth(NULL),
mSGPacketLoss(NULL),
- mBtnBuyCurrency(NULL),
mBtnVolume(NULL),
mBalance(0),
mHealth(100),
@@ -153,8 +151,10 @@ LLStatusBar::LLStatusBar(const LLRect& rect)
mTextHealth = getChild<LLTextBox>("HealthText" );
mTextTime = getChild<LLTextBox>("TimeText" );
- mBtnBuyCurrency = getChild<LLButton>( "buycurrency" );
- mBtnBuyCurrency->setClickedCallback( onClickBuyCurrency, this );
+ getChild<LLUICtrl>("buycurrency")->setCommitCallback(
+ boost::bind(&LLStatusBar::onClickBuyCurrency, this));
+ getChild<LLUICtrl>("buyL")->setCommitCallback(
+ boost::bind(&LLStatusBar::onClickBuyCurrency, this));
mBtnVolume = getChild<LLButton>( "volume_btn" );
mBtnVolume->setClickedCallback( onClickVolume, this );
@@ -362,7 +362,8 @@ void LLStatusBar::refresh()
void LLStatusBar::setVisibleForMouselook(bool visible)
{
mTextTime->setVisible(visible);
- mBtnBuyCurrency->setVisible(visible);
+ getChild<LLUICtrl>("buycurrency")->setVisible(visible);
+ getChild<LLUICtrl>("buyL")->setVisible(visible);
mSGBandwidth->setVisible(visible);
mSGPacketLoss->setVisible(visible);
setBackgroundVisible(visible);
@@ -382,17 +383,18 @@ void LLStatusBar::setBalance(S32 balance)
{
std::string money_str = LLResMgr::getInstance()->getMonetaryString( balance );
+ LLButton* btn_buy_currency = getChild<LLButton>("buycurrency");
LLStringUtil::format_map_t string_args;
string_args["[AMT]"] = llformat("%s", money_str.c_str());
std::string labe_str = getString("buycurrencylabel", string_args);
- mBtnBuyCurrency->setLabel(labe_str);
+ btn_buy_currency->setLabel(labe_str);
// Resize the balance button so that the label fits it, and the button expands to the left.
// *TODO: LLButton should have an option where to expand.
{
- S32 saved_right = mBtnBuyCurrency->getRect().mRight;
- mBtnBuyCurrency->autoResize();
- mBtnBuyCurrency->translate(saved_right - mBtnBuyCurrency->getRect().mRight, 0);
+ S32 saved_right = btn_buy_currency->getRect().mRight;
+ btn_buy_currency->autoResize();
+ btn_buy_currency->translate(saved_right - btn_buy_currency->getRect().mRight, 0);
}
if (mBalance && (fabs((F32)(mBalance - balance)) > gSavedSettings.getF32("UISndMoneyChangeThreshold")))
@@ -497,7 +499,7 @@ S32 LLStatusBar::getSquareMetersLeft() const
return mSquareMetersCredit - mSquareMetersCommitted;
}
-static void onClickBuyCurrency(void* data)
+void LLStatusBar::onClickBuyCurrency()
{
LLFloaterBuyCurrency::buyCurrency();
}
diff --git a/indra/newview/llstatusbar.h b/indra/newview/llstatusbar.h
index 0e98da0fe4..21a98dd753 100644
--- a/indra/newview/llstatusbar.h
+++ b/indra/newview/llstatusbar.h
@@ -91,6 +91,7 @@ private:
// simple method to setup the part that holds the date
void setupDate();
+ void onClickBuyCurrency();
void onVolumeChanged(const LLSD& newvalue);
static void onMouseEnterVolume(LLUICtrl* ctrl);
@@ -103,7 +104,6 @@ private:
LLStatGraph *mSGBandwidth;
LLStatGraph *mSGPacketLoss;
- LLButton *mBtnBuyCurrency;
LLButton *mBtnVolume;
S32 mBalance;
diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp
index eeedf38543..5ce6884239 100644
--- a/indra/newview/lltexturefetch.cpp
+++ b/indra/newview/lltexturefetch.cpp
@@ -495,8 +495,8 @@ void LLTextureFetchWorker::setupPacketData()
U32 LLTextureFetchWorker::calcWorkPriority()
{
// llassert_always(mImagePriority >= 0 && mImagePriority <= LLViewerTexture::maxDecodePriority());
- F32 priority_scale = (F32)LLWorkerThread::PRIORITY_LOWBITS / LLViewerFetchedTexture::maxDecodePriority();
- mWorkPriority = (U32)(mImagePriority * priority_scale);
+ static F32 PRIORITY_SCALE = (F32)LLWorkerThread::PRIORITY_LOWBITS / LLViewerFetchedTexture::maxDecodePriority();
+ mWorkPriority = (U32)(mImagePriority * PRIORITY_SCALE);
return mWorkPriority;
}
@@ -574,7 +574,7 @@ bool LLTextureFetchWorker::doWork(S32 param)
{
LLMutexLock lock(&mWorkMutex);
- if ((mFetcher->isQuitting() || getFlags(LLWorkerClass::WCF_DELETE_REQUESTED)))
+ if ((mFetcher->isQuitting() || mImagePriority < 1.0f || getFlags(LLWorkerClass::WCF_DELETE_REQUESTED)))
{
if (mState < WRITE_TO_CACHE)
{
diff --git a/indra/newview/lltoolbar.cpp b/indra/newview/lltoolbar.cpp
index bf6d715c31..224c5b64bc 100644
--- a/indra/newview/lltoolbar.cpp
+++ b/indra/newview/lltoolbar.cpp
@@ -60,7 +60,7 @@
#include "lltoolmgr.h"
#include "llui.h"
#include "llviewermenu.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llpanelblockedlist.h"
#include "llscrolllistctrl.h"
#include "llscrolllistitem.h"
diff --git a/indra/newview/lltooldraganddrop.cpp b/indra/newview/lltooldraganddrop.cpp
index aa35f22930..4420b046d8 100644
--- a/indra/newview/lltooldraganddrop.cpp
+++ b/indra/newview/lltooldraganddrop.cpp
@@ -41,7 +41,7 @@
#include "llagentwearables.h"
#include "llappearancemgr.h"
#include "lldictionary.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterreg.h"
#include "llfloatertools.h"
#include "llgesturemgr.h"
@@ -1199,11 +1199,11 @@ void LLToolDragAndDrop::dropObject(LLViewerObject* raycast_target,
locateInventory(item, cat);
if(!item || !item->isComplete()) return;
- if (regionp
- && (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX))
- {
- LLFirstUse::useSandbox();
- }
+ //if (regionp
+ // && (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX))
+ //{
+ // LLFirstUse::useSandbox();
+ //}
// check if it cannot be copied, and mark as remove if it is -
// this will remove the object from inventory after rez. Only
// bother with this check if we would not normally remove from
diff --git a/indra/newview/lltoolmgr.cpp b/indra/newview/lltoolmgr.cpp
index 26b3bdb82e..fd12163fd3 100644
--- a/indra/newview/lltoolmgr.cpp
+++ b/indra/newview/lltoolmgr.cpp
@@ -38,7 +38,7 @@
#include "llmenugl.h"
#include "llfloaterreg.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
// tools and manipulators
#include "lltool.h"
#include "llmanipscale.h"
@@ -301,7 +301,7 @@ void LLToolMgr::toggleBuildMode()
getCurrentToolset()->selectTool( LLToolCompCreate::getInstance() );
// Could be first use
- LLFirstUse::useBuild();
+ //LLFirstUse::useBuild();
gAgent.resetView(false);
diff --git a/indra/newview/lltoolpie.cpp b/indra/newview/lltoolpie.cpp
index 412878eef5..da7e8cd767 100644
--- a/indra/newview/lltoolpie.cpp
+++ b/indra/newview/lltoolpie.cpp
@@ -41,7 +41,7 @@
#include "llagent.h"
#include "llviewercontrol.h"
#include "llfocusmgr.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterland.h"
#include "llfloaterreg.h"
#include "llfloaterscriptdebug.h"
diff --git a/indra/newview/lltoolplacer.cpp b/indra/newview/lltoolplacer.cpp
index a7f4cb558e..612bcc03bd 100644
--- a/indra/newview/lltoolplacer.cpp
+++ b/indra/newview/lltoolplacer.cpp
@@ -38,7 +38,7 @@
// viewer headers
#include "llbutton.h"
#include "llviewercontrol.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloatertools.h"
#include "llselectmgr.h"
#include "llstatusbar.h"
@@ -188,7 +188,7 @@ BOOL LLToolPlacer::addObject( LLPCode pcode, S32 x, S32 y, U8 use_physics )
if (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX)
{
- LLFirstUse::useSandbox();
+ //LLFirstUse::useSandbox();
}
// Set params for new object based on its PCode.
@@ -491,7 +491,7 @@ BOOL LLToolPlacer::addDuplicate(S32 x, S32 y)
if (regionp
&& (regionp->getRegionFlags() & REGION_FLAGS_SANDBOX))
{
- LLFirstUse::useSandbox();
+ //LLFirstUse::useSandbox();
}
return TRUE;
diff --git a/indra/newview/llviewerdisplay.cpp b/indra/newview/llviewerdisplay.cpp
index 4d559e2ca7..7b9b12108d 100644
--- a/indra/newview/llviewerdisplay.cpp
+++ b/indra/newview/llviewerdisplay.cpp
@@ -45,7 +45,7 @@
#include "lldynamictexture.h"
#include "lldrawpoolalpha.h"
#include "llfeaturemanager.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llhudmanager.h"
#include "llimagebmp.h"
#include "llmemory.h"
@@ -404,7 +404,7 @@ void display(BOOL rebuild, F32 zoom_factor, int subfield, BOOL for_snapshot)
if( arrival_fraction > 1.f )
{
arrival_fraction = 1.f;
- LLFirstUse::useTeleport();
+ //LLFirstUse::useTeleport();
gAgent.setTeleportState( LLAgent::TELEPORT_NONE );
}
gViewerWindow->setProgressCancelButtonVisible(FALSE, LLTrans::getString("Cancel"));
diff --git a/indra/newview/llviewerinventory.cpp b/indra/newview/llviewerinventory.cpp
index 31dc83e75a..b330c1ba83 100644
--- a/indra/newview/llviewerinventory.cpp
+++ b/indra/newview/llviewerinventory.cpp
@@ -44,6 +44,7 @@
#include "llconsole.h"
#include "llinventorymodel.h"
#include "llgesturemgr.h"
+#include "llsidetray.h"
#include "llinventorybridge.h"
#include "llfloaterinventory.h"
@@ -72,7 +73,23 @@ public:
bool handle(const LLSD& params, const LLSD& query_map,
LLMediaCtrl* web)
{
- if (params.size() < 2) return false;
+ if (params.size() < 1)
+ {
+ return false;
+ }
+
+ // support secondlife:///app/inventory/show
+ if (params[0].asString() == "show")
+ {
+ LLSideTray::getInstance()->showPanel("sidepanel_inventory", LLSD());
+ return true;
+ }
+
+ // otherwise, we need a UUID and a verb...
+ if (params.size() < 2)
+ {
+ return false;
+ }
LLUUID inventory_id;
if (!inventory_id.set(params[0], FALSE))
{
diff --git a/indra/newview/llviewermedia.cpp b/indra/newview/llviewermedia.cpp
index 1d07b5d489..ef596f9297 100644
--- a/indra/newview/llviewermedia.cpp
+++ b/indra/newview/llviewermedia.cpp
@@ -56,7 +56,7 @@
#include "lluuid.h"
#include "llkeyboard.h"
#include "llmutelist.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include <boost/bind.hpp> // for SkinFolder listener
#include <boost/signals2.hpp>
diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp
index fe82da960c..f87d5693e8 100644
--- a/indra/newview/llviewermenu.cpp
+++ b/indra/newview/llviewermenu.cpp
@@ -48,7 +48,7 @@
#include "llconsole.h"
#include "lldebugview.h"
#include "llfilepicker.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterbuy.h"
#include "llfloaterbuycontents.h"
#include "llfloaterbuycurrency.h"
@@ -2491,7 +2491,7 @@ class LLObjectBuild : public view_listener_t
LLToolMgr::getInstance()->getCurrentToolset()->selectTool( LLToolCompCreate::getInstance() );
// Could be first use
- LLFirstUse::useBuild();
+ //LLFirstUse::useBuild();
return true;
}
};
@@ -2536,7 +2536,7 @@ void handle_object_edit()
LLViewerJoystick::getInstance()->setNeedsReset(true);
// Could be first use
- LLFirstUse::useBuild();
+ //LLFirstUse::useBuild();
return;
}
@@ -2587,7 +2587,7 @@ class LLLandBuild : public view_listener_t
LLToolMgr::getInstance()->getCurrentToolset()->selectTool( LLToolCompCreate::getInstance() );
// Could be first use
- LLFirstUse::useBuild();
+ //LLFirstUse::useBuild();
return true;
}
};
@@ -2824,7 +2824,7 @@ bool handle_go_to()
}
// Could be first use
- LLFirstUse::useGoTo();
+ //LLFirstUse::useGoTo();
return true;
}
@@ -3668,7 +3668,7 @@ void near_sit_down_point(BOOL success, void *)
gAgent.setControlFlags(AGENT_CONTROL_SIT_ON_GROUND);
// Might be first sit
- LLFirstUse::useSit();
+ //LLFirstUse::useSit();
}
}
@@ -5186,7 +5186,7 @@ void toggle_debug_menus(void*)
gSavedSettings.setBOOL("UseDebugMenus", visible);
if(visible)
{
- LLFirstUse::useDebugMenus();
+ //LLFirstUse::useDebugMenus();
}
show_debug_menus();
}
diff --git a/indra/newview/llviewermessage.cpp b/indra/newview/llviewermessage.cpp
index 4999ac000e..7f43213c5d 100644
--- a/indra/newview/llviewermessage.cpp
+++ b/indra/newview/llviewermessage.cpp
@@ -51,7 +51,7 @@
#include "llagent.h"
#include "llcallingcard.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterbuycurrency.h"
#include "llfloaterbuyland.h"
#include "llfloaterchat.h"
@@ -4345,10 +4345,10 @@ void process_money_balance_reply( LLMessageSystem* msg, void** )
if (gStatusBar)
{
- S32 old_balance = gStatusBar->getBalance();
+ // S32 old_balance = gStatusBar->getBalance();
// This is an update, not the first transmission of balance
- if (old_balance != 0)
+ /* if (old_balance != 0)
{
// this is actually an update
if (balance > old_balance)
@@ -4360,7 +4360,7 @@ void process_money_balance_reply( LLMessageSystem* msg, void** )
LLFirstUse::useBalanceDecrease(balance - old_balance);
}
}
-
+ */
gStatusBar->setBalance(balance);
gStatusBar->setLandCredit(credit);
gStatusBar->setLandCommitted(committed);
diff --git a/indra/newview/llviewerparcelmedia.cpp b/indra/newview/llviewerparcelmedia.cpp
index 56dee6b34c..e8b435fc8f 100644
--- a/indra/newview/llviewerparcelmedia.cpp
+++ b/indra/newview/llviewerparcelmedia.cpp
@@ -45,7 +45,7 @@
#include "llviewermediafocus.h"
#include "llviewerparcelmediaautoplay.h"
#include "llnotificationsutil.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llpluginclassmedia.h"
#include "llviewertexture.h"
@@ -242,7 +242,7 @@ void LLViewerParcelMedia::play(LLParcel* parcel)
sMediaImpl->navigateTo(media_url, mime_type, true);
}
- LLFirstUse::useMedia();
+ //LLFirstUse::useMedia();
LLViewerParcelMediaAutoPlay::playStarted();
}
@@ -281,7 +281,7 @@ void LLViewerParcelMedia::start()
}
sMediaImpl->start();
- LLFirstUse::useMedia();
+ //LLFirstUse::useMedia();
LLViewerParcelMediaAutoPlay::playStarted();
}
diff --git a/indra/newview/llviewerparcelmgr.cpp b/indra/newview/llviewerparcelmgr.cpp
index 5a5c4e7480..10a95443f1 100644
--- a/indra/newview/llviewerparcelmgr.cpp
+++ b/indra/newview/llviewerparcelmgr.cpp
@@ -50,7 +50,7 @@
#include "llagent.h"
#include "llviewerwindow.h"
#include "llviewercontrol.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llfloaterbuyland.h"
#include "llfloatergroups.h"
#include "llfloaternearbymedia.h"
@@ -1320,14 +1320,37 @@ void LLViewerParcelMgr::sendParcelPropertiesUpdate(LLParcel* parcel, bool use_ag
void LLViewerParcelMgr::setHoverParcel(const LLVector3d& pos)
{
- //FIXME: only request parcel info when tooltip is shown
- return;
- /*LLViewerRegion* region = LLWorld::getInstance()->getRegionFromPosGlobal( pos );
+ static U32 last_west, last_south;
+
+
+ // only request parcel info when tooltip is shown
+ if (!gSavedSettings.getBOOL("ShowLandHoverTip"))
+ {
+ return;
+ }
+
+ // only request parcel info if position has changed outside of the
+ // last parcel grid step
+ U32 west_parcel_step = (U32) floor( pos.mdV[VX] / PARCEL_GRID_STEP_METERS );
+ U32 south_parcel_step = (U32) floor( pos.mdV[VY] / PARCEL_GRID_STEP_METERS );
+
+ if ((west_parcel_step == last_west) && (south_parcel_step == last_south))
+ {
+ return;
+ }
+ else
+ {
+ last_west = west_parcel_step;
+ last_south = south_parcel_step;
+ }
+
+ LLViewerRegion* region = LLWorld::getInstance()->getRegionFromPosGlobal( pos );
if (!region)
{
return;
}
+
// Send a rectangle around the point.
// This means the parcel sent back is at least a rectangle around the point,
// which is more efficient for public land. Fewer requests are sent. JC
@@ -1354,7 +1377,7 @@ void LLViewerParcelMgr::setHoverParcel(const LLVector3d& pos)
msg->addBOOL("SnapSelection", FALSE );
msg->sendReliable( region->getHost() );
- mHoverRequestResult = PARCEL_RESULT_NO_DATA;*/
+ mHoverRequestResult = PARCEL_RESULT_NO_DATA;
}
diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp
index 1edaeec848..ad993bc056 100644
--- a/indra/newview/llviewertexture.cpp
+++ b/indra/newview/llviewertexture.cpp
@@ -1513,16 +1513,20 @@ F32 LLViewerFetchedTexture::calcDecodePriority()
{
desired_discard -= 2;
}
- else if (!isJustBound() && mCachedRawImageReady && !mBoostLevel)
+ else if (!isJustBound() && mCachedRawImageReady)
{
- // We haven't rendered this in the last half second, and we have a cached raw image, leave the desired discard as-is
- desired_discard = cur_discard;
- }
- else if (mGLTexturep.notNull() && !mGLTexturep->getBoundRecently() && mBoostLevel == LLViewerTexture::BOOST_NONE)
- {
- // We haven't rendered this in a while, de-prioritize it
- desired_discard += 2;
+ if(mBoostLevel < BOOST_HIGH)
+ {
+ // We haven't rendered this in a while, de-prioritize it
+ desired_discard += 2;
+ }
+ //else
+ //{
+ // // We haven't rendered this in the last half second, and we have a cached raw image, leave the desired discard as-is
+ // desired_discard = cur_discard;
+ //}
}
+
S32 ddiscard = cur_discard - desired_discard;
ddiscard = llclamp(ddiscard, 0, 4);
priority = (ddiscard+1)*100000.f;
@@ -1629,7 +1633,7 @@ bool LLViewerFetchedTexture::updateFetch()
S32 desired_discard = getDesiredDiscardLevel();
F32 decode_priority = getDecodePriority();
decode_priority = llmax(decode_priority, 0.0f);
-
+
if (mIsFetching)
{
// Sets mRawDiscardLevel, mRawImage, mAuxRawImage
@@ -1772,10 +1776,10 @@ bool LLViewerFetchedTexture::updateFetch()
{
make_request = false;
}
- else if (!isJustBound() && mCachedRawImageReady)
- {
- make_request = false;
- }
+ //else if (!isJustBound() && mCachedRawImageReady)
+ //{
+ // make_request = false;
+ //}
else
{
if (mIsFetching)
@@ -1847,12 +1851,12 @@ BOOL LLViewerFetchedTexture::forceFetch()
{
return false ;
}
- if(mDesiredSavedRawDiscardLevel < getDiscardLevel())
+ //if(mDesiredSavedRawDiscardLevel < getDiscardLevel())
{
//no need to force fetching. normal fetching flow will do the work.
//return false ;
}
- if (mNeedsCreateTexture)
+ //if (mNeedsCreateTexture)
{
// We may be fetching still (e.g. waiting on write)
// but don't check until we've processed the raw data we have
@@ -1888,7 +1892,8 @@ BOOL LLViewerFetchedTexture::forceFetch()
h = getHeight(0);
c = getComponents();
}
- fetch_request_created = LLAppViewer::getTextureFetch()->createRequest(mUrl, getID(),getTargetHost(), maxDecodePriority(),
+ setDecodePriority(maxDecodePriority()) ;
+ fetch_request_created = LLAppViewer::getTextureFetch()->createRequest(mUrl, getID(),getTargetHost(), getDecodePriority(),
w, h, c, desired_discard, needsAux());
if (fetch_request_created)
diff --git a/indra/newview/llviewertexture.h b/indra/newview/llviewertexture.h
index 6aaaa4021b..79d9c4e7bb 100644
--- a/indra/newview/llviewertexture.h
+++ b/indra/newview/llviewertexture.h
@@ -384,8 +384,6 @@ public:
void updateVirtualSize() ;
- // setDesiredDiscardLevel is only used by LLViewerTextureList
- void setDesiredDiscardLevel(S32 discard) { mDesiredDiscardLevel = discard; }
S32 getDesiredDiscardLevel() { return mDesiredDiscardLevel; }
void setMinDiscardLevel(S32 discard) { mMinDesiredDiscardLevel = llmin(mMinDesiredDiscardLevel,(S8)discard); }
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index 5958742db2..4235f97eab 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -56,7 +56,7 @@
#include "lldriverparam.h"
#include "lleditingmotion.h"
#include "llemote.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "llheadrotmotion.h"
#include "llhudeffecttrail.h"
#include "llhudmanager.h"
@@ -5604,7 +5604,7 @@ void LLVOAvatar::sitOnObject(LLViewerObject *sit_object)
if (isSelf())
{
// Might be first sit
- LLFirstUse::useSit();
+ //LLFirstUse::useSit();
gAgent.setFlying(FALSE);
gAgent.setThirdPersonHeadOffset(LLVector3::zero);
diff --git a/indra/newview/llvoiceclient.cpp b/indra/newview/llvoiceclient.cpp
index 42b8a1c2b6..30f00f04af 100644
--- a/indra/newview/llvoiceclient.cpp
+++ b/indra/newview/llvoiceclient.cpp
@@ -62,7 +62,7 @@
#include "llimview.h" // for LLIMMgr
#include "llparcel.h"
#include "llviewerparcelmgr.h"
-#include "llfirstuse.h"
+//#include "llfirstuse.h"
#include "lltrans.h"
#include "llviewerwindow.h"
#include "llviewercamera.h"
diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml
index 6da38fa0d4..e248047930 100644
--- a/indra/newview/skins/default/colors.xml
+++ b/indra/newview/skins/default/colors.xml
@@ -57,8 +57,11 @@
name="Black_50"
value="0 0 0 0.5" />
<color
+ name="FrogGreen"
+ value="0.26 0.345 0.263 1" />
+ <color
name="Red"
- value="1 0 0 1" />
+ value="0.729 0 0.121 1" />
<color
name="Blue"
value="0 0 1 1" />
@@ -71,16 +74,19 @@
<color
name="Transparent"
value="0 0 0 0" />
+ <color
+ name="Purple"
+ value="1 0 1 1" />
<!-- This color name makes potentially unused colors show up bright purple.
Leave this here until all Unused? are removed below, otherwise
the viewer generates many warnings on startup. -->
<color
name="Unused?"
- value="1 0 1 1" />
+ value=".831 1 0 1" />
<!-- UI Definitions -->
- <color
+ <color
name="AgentChatColor"
reference="White" />
<color
@@ -169,13 +175,13 @@
reference="LtGray" />
<color
name="ChicletFlashColor"
- reference="0.114 0.65 0.1" />
+ value="0.114 0.65 0.1" />
<color
name="ColorDropShadow"
reference="Black_50" />
<color
name="ColorPaletteEntry01"
- value="0 0 0 1" />
+ reference="Black" />
<color
name="ColorPaletteEntry02"
value="0.5 0.5 0.5 1" />
@@ -217,34 +223,34 @@
value="0.5 0.25 0 1" />
<color
name="ColorPaletteEntry15"
- value="1 1 1 1" />
+ reference="White" />
<color
name="ColorPaletteEntry16"
- value="1 1 1 1" />
+ reference="White" />
<color
name="ColorPaletteEntry17"
- value="1 1 1 1" />
+ reference="White" />
<color
name="ColorPaletteEntry18"
- value="0.75 0.75 0.75 1" />
+ reference="LtGray" />
<color
name="ColorPaletteEntry19"
- value="1 0 0 1" />
+ reference="Red" />
<color
name="ColorPaletteEntry20"
reference=".5 .5 1 0" />
<color
name="ColorPaletteEntry21"
- value="0 1 0 1" />
+ reference="Green" />
<color
name="ColorPaletteEntry22"
value="0 1 1 1" />
<color
name="ColorPaletteEntry23"
- value="0 0 1 1" />
+ reference="Blue" />
<color
name="ColorPaletteEntry24"
- value="1 0 1 1" />
+ reference="Purple" />
<color
name="ColorPaletteEntry25"
value="1 1 0.5 1" />
@@ -265,10 +271,10 @@
value="1 0.5 0 1" />
<color
name="ColorPaletteEntry31"
- value="1 1 1 1" />
+ reference="White" />
<color
name="ColorPaletteEntry32"
- value="1 1 1 1" />
+ reference="White" />
<color
name="ConsoleBackground"
reference="Black" />
@@ -325,7 +331,7 @@
value="0.92 0.92 1 0.78" />
<color
name="GridlineColor"
- value="1 0 0 1" />
+ reference="Red" />
<color
name="GridlineShadowColor"
value="0 0 0 0.31" />
@@ -337,10 +343,10 @@
value="0.3344 0.5456 0.5159 1" />
<color
name="GroupNotifyTextColor"
- reference="White"/>
+ reference="White"/>
<color
name="GroupNotifyDimmedTextColor"
- reference="DkGray"/>
+ reference="DkGray" />
<color
name="GroupOverTierColor"
value="0.43 0.06 0.06 1" />
@@ -397,7 +403,7 @@
reference="DkGray2" />
<color
name="InventoryFocusOutlineColor"
- reference="EmphasisColor" />
+ reference="White_25" />
<color
name="InventoryItemSuffixColor"
reference="White_25" />
@@ -460,7 +466,7 @@
reference="DkGray" />
<color
name="MenuBarGodBgColor"
- reference="Green" />
+ reference="FrogGreen" />
<color
name="MenuDefaultBgColor"
reference="DkGray2" />
@@ -481,7 +487,7 @@
reference="Black" />
<color
name="MenuNonProductionGodBgColor"
- value="0 0.5 0 1" />
+ value="0.263 0.325 0.345 1" />
<color
name="MenuPopupBgColor"
reference="DkGray2" />
@@ -508,7 +514,7 @@
value="0 0 0 0.3" />
<color
name="NetMapGroupOwnAboveWater"
- value="1 0 1 1" />
+ reference="Purple" />
<color
name="NetMapGroupOwnBelowWater"
value="0.78 0 0.78 1" />
@@ -541,7 +547,7 @@
reference="EmphasisColor" />
<color
name="OverdrivenColor"
- value="1 0 0 1" />
+ reference="Red" />
<color
name="PanelDefaultBackgroundColor"
reference="DkGray" />
@@ -640,10 +646,10 @@
reference="Unused?" />
<color
name="SpeakingColor"
- value="0 1 0 1" />
+ reference="FrogGreen" />
<color
name="SystemChatColor"
- reference="White" />
+ reference="White" />
<color
name="TextBgFocusColor"
reference="White" />
@@ -658,7 +664,7 @@
reference="Black" />
<color
name="TextDefaultColor"
- value="Black" />
+ reference="Black" />
<color
name="TextEmbeddedItemColor"
value="0 0 0.5 1" />
@@ -709,7 +715,7 @@
<color
name="SysWellItemSelected"
value="0.3 0.3 0.3 1.0" />
- <color
+ <color
name="ChatToastAgentNameColor"
reference="EmphasisColor" />
<color
diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml
index 2d519858db..60c1470b89 100644
--- a/indra/newview/skins/default/textures/textures.xml
+++ b/indra/newview/skins/default/textures/textures.xml
@@ -591,15 +591,15 @@ with the same filename but different name
<texture name="Tool_Zoom" file_name="build/Tool_Zoom.png" preload="false" />
<texture name="Toolbar_Divider" file_name="containers/Toolbar_Divider.png" preload="false" />
- <texture name="Toolbar_Left_Off" file_name="containers/Toolbar_Left_Off.png" preload="false" />
- <texture name="Toolbar_Left_Press" file_name="containers/Toolbar_Left_Press.png" preload="false" />
- <texture name="Toolbar_Left_Selected" file_name="containers/Toolbar_Left_Selected.png" preload="false" />
- <texture name="Toolbar_Middle_Off" file_name="containers/Toolbar_Middle_Off.png" preload="false" />
- <texture name="Toolbar_Middle_Press" file_name="containers/Toolbar_Middle_Press.png" preload="false" />
- <texture name="Toolbar_Middle_Selected" file_name="containers/Toolbar_Middle_Selected.png" preload="false" />
- <texture name="Toolbar_Right_Off" file_name="containers/Toolbar_Right_Off.png" preload="false" />
- <texture name="Toolbar_Right_Press" file_name="containers/Toolbar_Right_Press.png" preload="false" />
- <texture name="Toolbar_Right_Selected" file_name="containers/Toolbar_Right_Selected.png" preload="false" />
+ <texture name="Toolbar_Left_Off" file_name="containers/Toolbar_Left_Off.png" preload="false" scale.left="5" scale.bottom="4" scale.top="24" scale.right="30" />
+ <texture name="Toolbar_Left_Press" file_name="containers/Toolbar_Left_Press.png" preload="false" scale.left="5" scale.bottom="4" scale.top="24" scale.right="30" />
+ <texture name="Toolbar_Left_Selected" file_name="containers/Toolbar_Left_Selected.png" preload="false" scale.left="5" scale.bottom="4" scale.top="24" scale.right="30" />
+ <texture name="Toolbar_Middle_Off" file_name="containers/Toolbar_Middle_Off.png" preload="false" scale.left="1" scale.bottom="2" scale.top="24" scale.right="30" />
+ <texture name="Toolbar_Middle_Press" file_name="containers/Toolbar_Middle_Press.png" preload="false" scale.left="1" scale.bottom="2" scale.top="24" scale.right="30" />
+ <texture name="Toolbar_Middle_Selected" file_name="containers/Toolbar_Middle_Selected.png" preload="false" scale.left="1" scale.bottom="2" scale.top="24" scale.right="30" />
+ <texture name="Toolbar_Right_Off" file_name="containers/Toolbar_Right_Off.png" preload="false" scale.left="1" scale.bottom="4" scale.top="24" scale.right="26" />
+ <texture name="Toolbar_Right_Press" file_name="containers/Toolbar_Right_Press.png" preload="false" scale.left="1" scale.bottom="4" scale.top="24" scale.right="26" />
+ <texture name="Toolbar_Right_Selected" file_name="containers/Toolbar_Right_Selected.png" preload="false" scale.left="1" scale.bottom="4" scale.top="24" scale.right="26" />
<texture name="Tooltip" file_name="widgets/Tooltip.png" preload="true" scale.left="2" scale.top="16" scale.right="100" scale.bottom="3" />
@@ -665,10 +665,15 @@ with the same filename but different name
<texture name="icn_voice-groupfocus.tga" />
<texture name="icn_voice-pvtfocus.tga" />
- <texture name="jump_left_out.tga" />
- <texture name="jump_left_in.tga" />
- <texture name="jump_right_out.tga" />
- <texture name="jump_right_in.tga" />
+ <texture name="jump_left_out.tga" file_name="widgets/jump_left_out.png" />
+ <texture name="jump_left_in.tga" file_name="widgets/jump_left_in.png" />
+ <texture name="jump_right_out.tga" file_name="widgets/jump_right_out.png" />
+ <texture name="jump_right_in.tga" file_name="widgets/jump_right_in.png" />
+
+ <texture name="scrollbutton_left_out_blue.tga" file_name="widgets/ScrollArrow_Left_Opaque.png" />
+ <texture name="scrollbutton_left_in_blue.tga" file_name="widgets/ScrollArrow_Left_Over_Opaque.png" />
+ <texture name="scrollbutton_right_out_blue.tga" file_name="widgets/ScrollArrow_Right_Opaque.png" />
+ <texture name="scrollbutton_right_in_blue.tga" file_name="widgets/ScrollArrow_Right_Over_Opaque.png" />
<texture name="up_arrow.tga" file_name="up_arrow.png" />
<texture name="down_arrow.tga" file_name="down_arrow.png" />
@@ -690,7 +695,7 @@ with the same filename but different name
<texture name="button_anim_play.tga" />
<texture name="button_anim_play_selected.tga" />
<texture name="crosshairs.tga" />
- <texture name="direction_arrow.tga" />
+ <texture name="direction_arrow.tga" file_name="world/BeaconArrow.png" />
<texture name="icon_auction.tga" />
<texture name="icon_avatar_offline.tga" />
diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.png
new file mode 100644
index 0000000000..549b3980f6
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Opaque.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.png
new file mode 100644
index 0000000000..a74abd5d8a
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/ScrollArrow_Left_Over_Opaque.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.png
new file mode 100644
index 0000000000..36056d0ad9
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Opaque.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.png b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.png
new file mode 100644
index 0000000000..0c1fd6956b
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/ScrollArrow_Right_Over_Opaque.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/jump_left_in.png b/indra/newview/skins/default/textures/widgets/jump_left_in.png
new file mode 100644
index 0000000000..a1425ccfa0
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/jump_left_in.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/jump_left_out.png b/indra/newview/skins/default/textures/widgets/jump_left_out.png
new file mode 100644
index 0000000000..38edf47d19
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/jump_left_out.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/jump_right_in.png b/indra/newview/skins/default/textures/widgets/jump_right_in.png
new file mode 100644
index 0000000000..39359ab2e2
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/jump_right_in.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/widgets/jump_right_out.png b/indra/newview/skins/default/textures/widgets/jump_right_out.png
new file mode 100644
index 0000000000..3f76bbffac
--- /dev/null
+++ b/indra/newview/skins/default/textures/widgets/jump_right_out.png
Binary files differ
diff --git a/indra/newview/skins/default/textures/world/BeaconArrow.png b/indra/newview/skins/default/textures/world/BeaconArrow.png
new file mode 100644
index 0000000000..12dc246d51
--- /dev/null
+++ b/indra/newview/skins/default/textures/world/BeaconArrow.png
Binary files differ
diff --git a/indra/newview/skins/default/xui/en/floater_about_land.xml b/indra/newview/skins/default/xui/en/floater_about_land.xml
index 900f4c5956..c58c1f00b9 100644
--- a/indra/newview/skins/default/xui/en/floater_about_land.xml
+++ b/indra/newview/skins/default/xui/en/floater_about_land.xml
@@ -209,7 +209,7 @@
</text>
<button
follows="right"
- height="16"
+ height="23"
image_pressed="Info_Press"
image_unselected="Info_Over"
left_pad="3"
@@ -218,7 +218,7 @@
width="16" />
<!-- <button
follows="left|top"
- height="16"
+ height="23"
label="Profile"
layout="topleft"
left_pad="4"
@@ -248,7 +248,7 @@
Leyla Linden </text>
<button
follows="right"
- height="16"
+ height="23"
image_pressed="Info_Press"
image_unselected="Info_Over"
left_pad="3"
@@ -263,10 +263,11 @@ Leyla Linden </text>
left_pad="4"
right="-10"
name="Set..."
- width="50" />
+ width="50"
+ top_delta="-2"/>
<check_box
enabled="false"
- height="23"
+ height="16"
label="Allow Deed to Group"
layout="topleft"
left="108"
@@ -284,7 +285,7 @@ Leyla Linden </text>
right="-10"
name="Deed..."
tool_tip="You may only deed land if you are an officer in the selected group."
- top_delta="0"
+ top_delta="-2"
width="90" />
<check_box
enabled="false"
@@ -294,7 +295,8 @@ Leyla Linden </text>
left="108"
name="check contrib"
tool_tip="When the land is deeded to the group, the former owner contributes enough land allocation to support it."
- width="199" />
+ width="199"
+ top_pad="0"/>
<text
type="string"
length="1"
@@ -335,7 +337,7 @@ Leyla Linden </text>
layout="topleft"
left_delta="0"
name="SalePending"
- top_pad="6"
+ top_pad="5"
width="324" />
<button
follows="left|top"
@@ -345,7 +347,8 @@ Leyla Linden </text>
left_pad="5"
right="-10"
name="Sell Land..."
- width="145" />
+ width="145"
+ top_delta="-25"/>
<text
type="string"
length="1"
@@ -354,7 +357,7 @@ Leyla Linden </text>
layout="topleft"
left_delta="-199"
name="For sale to"
- top_delta="2"
+ top_delta="20"
width="186">
For sale to: [BUYER]
</text>
@@ -366,7 +369,7 @@ Leyla Linden </text>
layout="topleft"
left_delta="0"
name="Sell with landowners objects in parcel."
- top_pad="0"
+ top_pad="-3"
width="186">
Objects included in sale
</text>
@@ -391,7 +394,7 @@ Leyla Linden </text>
right="-10"
name="Cancel Land Sale"
left_pad="5"
- top_pad="-10"
+ top_pad="-25"
width="145" />
<text
type="string"
@@ -522,7 +525,7 @@ Leyla Linden </text>
layout="topleft"
left_delta="0"
name="Reclaim Land..."
- top_delta="-48"
+ top_delta="-61"
width="180" />
<button
enabled="false"
@@ -810,7 +813,7 @@ Leyla Linden </text>
follows="left|top"
height="16"
layout="topleft"
- left_delta="152"
+ left_delta="190"
name="objects_available"
top_delta="0"
width="260">
@@ -834,7 +837,7 @@ Leyla Linden </text>
follows="left|top"
height="16"
layout="topleft"
- left_delta="200"
+ left_delta="190"
name="object_contrib_text"
top_delta="0"
width="212">
@@ -858,7 +861,7 @@ Leyla Linden </text>
follows="left|top"
height="16"
layout="topleft"
- left_delta="200"
+ left_delta="190"
name="total_objects_text"
top_delta="0"
width="48">
@@ -868,7 +871,7 @@ Leyla Linden </text>
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="28"
name="Owned by parcel owner:"
@@ -880,9 +883,9 @@ Leyla Linden </text>
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
- left_delta="176"
+ left_delta="172"
name="owner_objects_text"
top_delta="0"
width="48">
@@ -892,33 +895,35 @@ Leyla Linden </text>
bottom="100"
enabled="false"
follows="left|top"
- height="20"
+ height="23"
label="Show"
label_selected="Show"
layout="topleft"
name="ShowOwner"
right="-140"
- width="60" />
+ width="60"
+ top_delta="-6"/>
<button
bottom="100"
enabled="false"
follows="left|top"
- height="20"
+ height="23"
label="Return"
layout="topleft"
name="ReturnOwner..."
right="-10"
tool_tip="Return objects to their owners."
- width="119" />
+ width="119"
+ top_delta="0"/>
<text
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="28"
name="Set to group:"
- top="104"
+ top_pad="5"
width="176">
Set to group:
</text>
@@ -926,9 +931,9 @@ Leyla Linden </text>
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
- left_delta="176"
+ left_delta="172"
name="group_objects_text"
top_delta="0"
width="48">
@@ -939,32 +944,34 @@ Leyla Linden </text>
enabled="false"
follows="left|top"
label="Show"
- height="20"
+ height="23"
label_selected="Show"
layout="topleft"
name="ShowGroup"
right="-140"
- width="60" />
+ width="60"
+ top_delta="-6"/>
<button
bottom="120"
enabled="false"
follows="left|top"
- height="20"
+ height="23"
label="Return"
layout="topleft"
name="ReturnGroup..."
right="-10"
tool_tip="Return objects to their owners."
- width="119" />
+ width="119"
+ top_delta="0"/>
<text
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="28"
name="Owned by others:"
- top="124"
+ top_pad="5"
width="176">
Owned by others:
</text>
@@ -972,9 +979,9 @@ Leyla Linden </text>
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
- left_delta="176"
+ left_delta="172"
name="other_objects_text"
top_delta="0"
width="48">
@@ -984,33 +991,35 @@ Leyla Linden </text>
bottom="140"
enabled="false"
follows="left|top"
- height="20"
+ height="23"
label="Show"
label_selected="Show"
layout="topleft"
name="ShowOther"
right="-140"
- width="60" />
+ width="60"
+ top_delta="-6"/>
<button
bottom="140"
enabled="false"
follows="left|top"
- height="20"
+ height="23"
label="Return"
layout="topleft"
name="ReturnOther..."
right="-10"
tool_tip="Return objects to their owners."
- width="119" />
+ width="119"
+ top_delta="0"/>
<text
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="28"
name="Selected / sat upon:"
- top="144"
+ top_pad="5"
width="176">
Selected / sat upon:
</text>
@@ -1018,9 +1027,9 @@ Leyla Linden </text>
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
- left_delta="176"
+ left_delta="172"
name="selected_objects_text"
top_delta="0"
width="48">
@@ -1030,51 +1039,53 @@ Leyla Linden </text>
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="10"
name="Autoreturn"
- top="164"
+ top_pad="0"
width="294">
- Autoreturn other Residents&apos; objects (minutes, 0 for off):
+ Auto return other Residents&apos; objects (minutes, 0 for off):
</text>
<line_editor
border_style="line"
border_thickness="1"
bottom="180"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
max_length="6"
name="clean other time"
- right="-50"
- width="56" />
+ right="-72"
+ width="56"
+ top_delta="-6"/>
<text
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="10"
name="Object Owners:"
- top="184"
+ top_pad="10"
width="104">
Object Owners:
</text>
<button
follows="top|right"
- height="20"
+ height="23"
image_overlay="Refresh_Off"
layout="topleft"
name="Refresh List"
left_pad="5"
right="-183"
tool_tip="Refresh Object List"
- width="20" />
+ width="20"
+ top_delta="-6"/>
<button
enabled="false"
follows="left|top"
- height="20"
+ height="23"
label="Return Objects"
layout="topleft"
left_pad="6"
@@ -1086,7 +1097,7 @@ Leyla Linden </text>
column_padding="0"
draw_heading="true"
follows="all"
- height="190"
+ height="180"
layout="topleft"
left="10"
name="owner list"
@@ -1313,7 +1324,7 @@ Only large parcels can be listed in search.
width="430" />
<combo_box
enabled="false"
- height="20"
+ height="23"
layout="topleft"
left="30"
name="land category with adult"
@@ -1374,7 +1385,7 @@ Only large parcels can be listed in search.
</combo_box>
<combo_box
enabled="false"
- height="20"
+ height="23"
layout="topleft"
left="30"
name="land category"
@@ -1463,7 +1474,7 @@ Only large parcels can be listed in search.
type="string"
length="1"
follows="left|top"
- height="30"
+ height="16"
layout="topleft"
left="220"
top="180"
@@ -1553,12 +1564,13 @@ Only large parcels can be listed in search.
Type:
</text>
<combo_box
- height="20"
+ height="23"
layout="topleft"
left_pad="0"
name="media type"
tool_tip="Specify if the URL is a movie, web page, or other media"
- width="120" />
+ width="120"
+ top_delta="0"/>
<text
follows="left|top"
height="16"
@@ -1574,27 +1586,29 @@ Only large parcels can be listed in search.
layout="topleft"
left="10"
name="at URL:"
- width="100">
+ width="100"
+ top_pad="10">
Home Page:
</text>
<line_editor
follows="left|top"
- height="20"
+ height="23"
layout="topleft"
left_pad="0"
max_length="255"
name="media_url"
select_on_focus="true"
- width="300" />
+ width="300"
+ top_delta="0"/>
<button
follows="right|top"
- height="22"
+ height="23"
label="Set"
layout="topleft"
left_pad="5"
- right="-10"
name="set_media_url"
- width="50" />
+ width="50"
+ top_delta="0"/>
<text
type="string"
length="1"
@@ -1603,18 +1617,20 @@ Only large parcels can be listed in search.
layout="topleft"
left="10"
name="CurrentURL:"
- width="100">
+ width="100"
+ top_pad="10">
Current Page:
</text>
- <button
- follows="top|right"
- height="20"
- image_overlay="Refresh_Off"
- layout="topleft"
+ <button
+ follows="top|right"
+ height="23"
+ image_overlay="Refresh_Off"
+ layout="topleft"
name="reset_media_url"
- left_pad="0"
- tool_tip="Refresh URL"
- width="20" />
+ left_pad="0"
+ tool_tip="Refresh URL"
+ width="23"
+ top_delta="0"/>
<text
follows="left|top"
height="16"
@@ -1623,22 +1639,25 @@ Only large parcels can be listed in search.
name="current_url"
width="300" />
<check_box
+ follows="top|left"
height="16"
label="Hide URL"
layout="topleft"
- left="110"
+ left_delta="-36"
name="hide_media_url"
tool_tip="Checking this option will hide the media url to any non-authorized viewers of this parcel information. Note this is not available for HTML types."
- width="200" />
+ width="50"
+ top_pad="5"/>
<text
type="string"
length="1"
follows="left|top"
- height="16"
+ height="23"
layout="topleft"
left="10"
name="Description:"
- width="364">
+ width="364"
+ top_pad="10">
Description:
</text>
<line_editor
@@ -1650,7 +1669,7 @@ Only large parcels can be listed in search.
name="url_description"
select_on_focus="true"
tool_tip="Text displayed next to play/load button"
- top_delta="10"
+ top_delta="0"
width="300" />
<text
type="string"
@@ -1674,7 +1693,7 @@ Only large parcels can be listed in search.
left="110"
name="media texture"
tool_tip="Click to choose a picture"
- top_delta="10"
+ top_delta="0"
width="64" />
<text
type="string"
@@ -1685,16 +1704,17 @@ Only large parcels can be listed in search.
left_pad="8"
name="replace_texture_help"
width="300"
- word_wrap="true">
+ word_wrap="true"
+ top_delta="0">
Objects using this texture will show the movie or web page after you click the play arrow. Select the thumbnail to choose a different texture.
</text>
<check_box
height="16"
label="Auto scale"
layout="topleft"
- left="110"
+ left="107"
name="media_auto_scale"
- top_pad="0"
+ top_pad="-10"
tool_tip="Checking this option will scale the content for this parcel automatically. It may be slightly slower and lower quality visually but no other texture scaling or alignment will be required."
width="200" />
<text
@@ -1706,7 +1726,8 @@ Only large parcels can be listed in search.
left="10"
name="media_size"
tool_tip="Size to render Web media, leave 0 for default."
- width="100">
+ width="100"
+ top_pad="10">
Size:
</text>
<spinner
@@ -1714,7 +1735,7 @@ Only large parcels can be listed in search.
enabled="false"
follows="left|top"
halign="right"
- height="20"
+ height="23"
increment="1"
initial_value="0"
layout="topleft"
@@ -1729,7 +1750,7 @@ Only large parcels can be listed in search.
enabled="false"
follows="left|top"
halign="right"
- height="20"
+ height="23"
increment="1"
initial_value="0"
layout="topleft"
@@ -1759,7 +1780,7 @@ Only large parcels can be listed in search.
layout="topleft"
left="10"
name="Options:"
- top_pad="8"
+ top_pad="10"
width="100">
Options:
</text>
@@ -1767,10 +1788,10 @@ Only large parcels can be listed in search.
height="16"
label="Loop"
layout="topleft"
- left_pad="0"
+ left_pad="-3"
name="media_loop"
tool_tip="Play media in a loop. When the media has finished playing, it will restart from the beginning."
- top_delta="0"
+ top_delta="-1"
width="200" />
</panel>
<panel
@@ -1796,12 +1817,12 @@ Only large parcels can be listed in search.
</text>
<line_editor
follows="left|top"
- height="20"
+ height="23"
layout="topleft"
left="100"
max_length="255"
name="music_url"
- top_pad="0"
+ top_delta="0"
right="-15"
select_on_focus="true" />
<text
@@ -1941,7 +1962,7 @@ Only large parcels can be listed in search.
width="278" />
<check_box
enabled="false"
- height="22"
+ height="16"
label="Sell passes to:"
layout="topleft"
left_delta="0"
@@ -1950,7 +1971,7 @@ Only large parcels can be listed in search.
top_pad="4"
width="120" />
<combo_box
- height="20"
+ height="23"
layout="topleft"
left_pad="22"
name="pass_combo"
@@ -1968,7 +1989,7 @@ Only large parcels can be listed in search.
<spinner
enabled="false"
follows="left|top"
- height="22"
+ height="23"
increment="1"
initial_value="10"
label="Price in L$:"
@@ -1983,7 +2004,7 @@ Only large parcels can be listed in search.
<spinner
enabled="false"
follows="left|top"
- height="22"
+ height="23"
increment="0.25"
initial_value="1"
label="Hours of access:"
diff --git a/indra/newview/skins/default/xui/en/floater_im_container.xml b/indra/newview/skins/default/xui/en/floater_im_container.xml
index ccbba61ddf..d97ca554b7 100644
--- a/indra/newview/skins/default/xui/en/floater_im_container.xml
+++ b/indra/newview/skins/default/xui/en/floater_im_container.xml
@@ -19,6 +19,7 @@
name="im_box_tab_container"
tab_position="bottom"
tab_width="80"
+ tab_height="16"
top="0"
width="390" />
<icon
diff --git a/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml b/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml
new file mode 100644
index 0000000000..c3d84de9a7
--- /dev/null
+++ b/indra/newview/skins/default/xui/en/floater_outfit_save_as.xml
@@ -0,0 +1,59 @@
+<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
+<floater
+ legacy_header_height="18"
+ border="true"
+ can_close="false"
+ can_minimize="false"
+ height="100"
+ layout="topleft"
+ name="modal container"
+ width="240">
+ <button
+ height="20"
+ label="Save"
+ label_selected="Save"
+ layout="topleft"
+ left="20"
+ name="Save"
+ top="70"
+ width="82" />
+ <button
+ height="20"
+ label="Cancel"
+ label_selected="Cancel"
+ layout="topleft"
+ left_pad="36"
+ name="Cancel"
+ top_delta="0"
+ width="82" />
+ <text
+ type="string"
+ length="1"
+ follows="left|top"
+ font="SansSerif"
+ height="16"
+ layout="topleft"
+ left="20"
+ name="Save item as:"
+ top="10"
+ width="200">
+ Save outfit as:
+ </text>
+ <line_editor
+ type="string"
+ length="1"
+ border_style="line"
+ border_thickness="1"
+ follows="left|top"
+ font="SansSerif"
+ handle_edit_keys_directly="true"
+ height="20"
+ layout="topleft"
+ left_delta="0"
+ max_length="63"
+ name="name ed"
+ top_pad="4"
+ width="200">
+ [DESC]
+ </line_editor>
+</floater>
diff --git a/indra/newview/skins/default/xui/en/floater_script.xml b/indra/newview/skins/default/xui/en/floater_script.xml
index f44ba6d873..c3e974d978 100644
--- a/indra/newview/skins/default/xui/en/floater_script.xml
+++ b/indra/newview/skins/default/xui/en/floater_script.xml
@@ -7,7 +7,6 @@
layout="topleft"
left="0"
name="script_floater"
- help_topic="script_floater"
top="0"
can_dock="true"
can_minimize="true"
diff --git a/indra/newview/skins/default/xui/en/floater_snapshot.xml b/indra/newview/skins/default/xui/en/floater_snapshot.xml
index a36a1b591b..60c9810e95 100644
--- a/indra/newview/skins/default/xui/en/floater_snapshot.xml
+++ b/indra/newview/skins/default/xui/en/floater_snapshot.xml
@@ -43,6 +43,12 @@
layout="topleft"
name="local" />
</radio_group>
+ <ui_ctrl
+ height="90"
+ width="90"
+ name="thumbnail_placeholder"
+ top_pad="6"
+ />
<text
type="string"
font="SansSerifSmall"
@@ -54,7 +60,7 @@
left_delta="0"
halign="right"
name="file_size_label"
- top_pad="106"
+ top_pad="10"
width="195">
[SIZE] KB
</text>
diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml
index e20e5a85c0..957b4d74db 100644
--- a/indra/newview/skins/default/xui/en/notifications.xml
+++ b/indra/newview/skins/default/xui/en/notifications.xml
@@ -811,6 +811,7 @@ Please select a proposal to view.
Please select a history item to view.
</notification>
+<!--
<notification
icon="alertmodal.tga"
name="ResetShowNextTimeDialogs"
@@ -832,6 +833,7 @@ Would you like to disable all popups which can be skipped?
notext="Cancel"
yestext="OK"/>
</notification>
+-->
<notification
icon="alertmodal.tga"
@@ -5368,6 +5370,7 @@ Grant this request?
</form>
</notification>
+<!--
<notification
icon="notify.tga"
name="FirstBalanceIncrease"
@@ -5383,6 +5386,7 @@ Your L$ balance is shown in the upper-right.
You just paid L$[AMOUNT].
Your L$ balance is shown in the upper-right.
</notification>
+-->
<notification
icon="notify.tga"
@@ -5394,6 +5398,8 @@ Your L$ balance will be updated when processing completes. If processing takes m
The status of your payment can be checked on your Transaction History page on your [http://secondlife.com/account/ Dashboard]
</notification>
+
+<!--
<notification
icon="notify.tga"
name="FirstSit"
@@ -5418,8 +5424,9 @@ Use the controls on the right to find things and display different backgrounds.
type="notify">
You have opened the Build Tools. Every object you see around you was created using these tools.
</notification>
+-->
-<!--
+<!--
<notification
icon="notify.tga"
name="FirstLeftClickNoHit"
@@ -5428,7 +5435,7 @@ You have opened the Build Tools. Every object you see around you was created usi
If the mouse pointer changes to a hand, you can interact with the object.
Right-click always shows a menu of things you can do.
</notification>
--->
+
<notification
icon="notify.tga"
name="FirstTeleport"
@@ -5436,6 +5443,8 @@ You have opened the Build Tools. Every object you see around you was created usi
You can only teleport to certain areas in this region. The arrow points to your specific destination. Click the arrow to dismiss it.
</notification>
+-->
+
<notification
icon="notify.tga"
name="FirstOverrideKeys"
@@ -5446,6 +5455,7 @@ Some objects (like guns) require you to go into mouselook to use them.
Press &apos;M&apos; to do this.
</notification>
+<!--
<notification
icon="notify.tga"
name="FirstAppearance"
@@ -5465,6 +5475,7 @@ This is your Inventory, which contains items you own.
* To rez something inworld, drag it onto the ground.
* To read a notecard, double-click it.
</notification>
+-->
<notification
icon="notify.tga"
@@ -5475,6 +5486,7 @@ This is a sandbox area, and is meant to help Residents learn how to build.
Things you build here will be deleted after you leave, so don&apos;t forget to right-click and choose &apos;Take&apos; to move your creation to your Inventory.
</notification>
+<!--
<notification
icon="notify.tga"
name="FirstFlexible"
@@ -5500,13 +5512,16 @@ To toggle this menu,
type="notify">
You are editing a Sculpted prim. Sculpties require a special texture to define their shape.
</notification>
+-->
- <!--notification
+ <!--
+ <notification
icon="notify.tga"
name="FirstMedia"
type="notify">
You have begun playing media. Media can set to play automatically in the preferences window under Audio / Video. Note that this can be a security risk for media sites you do not trust.
- </notification-->
+ </notification>
+ -->
<notification
icon="notifytip.tga"
diff --git a/indra/newview/skins/default/xui/en/panel_bottomtray.xml b/indra/newview/skins/default/xui/en/panel_bottomtray.xml
index 4b39210f30..de3de45718 100644
--- a/indra/newview/skins/default/xui/en/panel_bottomtray.xml
+++ b/indra/newview/skins/default/xui/en/panel_bottomtray.xml
@@ -382,6 +382,17 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well
width="40"
min_width="40"
user_resize="false">
+ <icon
+ auto_resize="false"
+ color="0 0 0 0"
+ follows="left|right"
+ height="10"
+ image_name="spacer24.tga"
+ layout="topleft"
+ left="0"
+ min_width="4"
+ top="0"
+ width="5" />
<chiclet_notification
flash_period="0.25"
follows="right"
@@ -414,6 +425,17 @@ image_pressed_selected "Lit" + "Selected" - there are new messages and the Well
function="Button.SetDockableFloaterToggle"
parameter="notification_well_window" />
</button>
+ <icon
+ auto_resize="false"
+ color="0 0 0 0"
+ follows="left|right"
+ height="10"
+ image_name="spacer24.tga"
+ layout="topleft"
+ left="0"
+ min_width="4"
+ top="0"
+ width="5" />
</chiclet_notification>
</layout_panel>
</layout_stack>
diff --git a/indra/newview/skins/default/xui/en/panel_classified_info.xml b/indra/newview/skins/default/xui/en/panel_classified_info.xml
index 5c594d3f14..677bdbc3d2 100644
--- a/indra/newview/skins/default/xui/en/panel_classified_info.xml
+++ b/indra/newview/skins/default/xui/en/panel_classified_info.xml
@@ -7,6 +7,7 @@
left="0"
min_height="350"
name="panel_classified_info"
+ help_topic="profile_classified_info"
top="0"
width="333">
<panel.string
diff --git a/indra/newview/skins/default/xui/en/panel_edit_classified.xml b/indra/newview/skins/default/xui/en/panel_edit_classified.xml
index 1fbf7abda9..188ded3dab 100644
--- a/indra/newview/skins/default/xui/en/panel_edit_classified.xml
+++ b/indra/newview/skins/default/xui/en/panel_edit_classified.xml
@@ -9,6 +9,7 @@
left="0"
min_height="350"
name="panel_edit_classified"
+ help_topic="profile_edit_classified"
top="0"
width="333">
<panel.string
diff --git a/indra/newview/skins/default/xui/en/panel_edit_pick.xml b/indra/newview/skins/default/xui/en/panel_edit_pick.xml
index 7769189219..15eff4b67c 100644
--- a/indra/newview/skins/default/xui/en/panel_edit_pick.xml
+++ b/indra/newview/skins/default/xui/en/panel_edit_pick.xml
@@ -9,6 +9,7 @@
left="0"
min_height="350"
name="panel_edit_pick"
+ help_topic="profile_edit_pick"
top="0"
width="333">
<button
diff --git a/indra/newview/skins/default/xui/en/panel_main_inventory.xml b/indra/newview/skins/default/xui/en/panel_main_inventory.xml
index 9d00abd2c9..4030c7184a 100644
--- a/indra/newview/skins/default/xui/en/panel_main_inventory.xml
+++ b/indra/newview/skins/default/xui/en/panel_main_inventory.xml
@@ -41,6 +41,7 @@ halign="center"
follows="all"
height="295"
label="MY INVENTORY"
+ help_topic="my_inventory_tab"
layout="topleft"
left="0"
name="All Items"
@@ -51,6 +52,7 @@ halign="center"
follows="all"
height="295"
label="RECENT"
+ help_topic="recent_inventory_tab"
layout="topleft"
left_delta="0"
name="Recent Items"
diff --git a/indra/newview/skins/default/xui/en/panel_pick_info.xml b/indra/newview/skins/default/xui/en/panel_pick_info.xml
index 9c7f38e688..822e049eec 100644
--- a/indra/newview/skins/default/xui/en/panel_pick_info.xml
+++ b/indra/newview/skins/default/xui/en/panel_pick_info.xml
@@ -7,6 +7,7 @@
left="0"
min_height="350"
name="panel_pick_info"
+ help_topic="profile_pick_info"
top="0"
width="333">
<button
diff --git a/indra/newview/skins/default/xui/en/panel_picks.xml b/indra/newview/skins/default/xui/en/panel_picks.xml
index 1fc553ff36..a2b0adf9d9 100644
--- a/indra/newview/skins/default/xui/en/panel_picks.xml
+++ b/indra/newview/skins/default/xui/en/panel_picks.xml
@@ -124,7 +124,6 @@
height="25"
top_pad="10"
name="buttons_cucks"
- help_topic="picks_button_tab"
width="313">
<button
enabled="false"
diff --git a/indra/newview/skins/default/xui/en/panel_preferences_alerts.xml b/indra/newview/skins/default/xui/en/panel_preferences_alerts.xml
index 18d0f8acab..ace8281b4e 100644
--- a/indra/newview/skins/default/xui/en/panel_preferences_alerts.xml
+++ b/indra/newview/skins/default/xui/en/panel_preferences_alerts.xml
@@ -31,7 +31,6 @@
width="300" />
<check_box
control_name="ChatOnlineNotification"
- enabled="false"
height="16"
label="When my friends log out or in"
layout="topleft"
diff --git a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml
index 1c1e17eb5a..a8e24366f2 100644
--- a/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml
+++ b/indra/newview/skins/default/xui/en/panel_preferences_privacy.xml
@@ -77,10 +77,23 @@
name="cookies_enabled"
top_pad="10"
width="350" />
- <check_box
+ <check_box
+ control_name="MediaEnabled"
+ height="16"
+ label="Media Enabled"
+ layout="topleft"
+ left="30"
+ name="media_enabled"
+ top_pad="10"
+ width="350">
+ <check_box.commit_callback
+ function="Pref.MediaEnabled" />
+ </check_box>
+ <check_box
+ enabled_control="MediaEnabled"
control_name="ParcelMediaAutoPlayEnable"
height="16"
- label="Allow Media Autoplay"
+ label="Allow Media to auto-play"
layout="topleft"
left="30"
name="autoplay_enabled"
diff --git a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml
index ab6384203f..e1d8ee241d 100644
--- a/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml
+++ b/indra/newview/skins/default/xui/en/panel_prim_media_controls.xml
@@ -122,6 +122,7 @@
height="22"
width="22">
<button
+ name="fwd_btn"
follows="top"
image_overlay="Arrow_Right_Off"
image_disabled="PushButton_Disabled"
@@ -131,7 +132,6 @@
hover_glow_amount="0.15"
top="0"
height="22"
- min_width="22"
width="22"
layout="topleft"
tool_tip="Navigate forward">
@@ -150,10 +150,11 @@
min_width="22"
width="22">
<button
+ name="home_btn"
follows="top"
+ image_overlay="Home_Off"
image_disabled="PushButton_Disabled"
image_disabled_selected="PushButton_Disabled"
- image_overlay="Home_Off"
image_selected="PushButton_Selected"
image_unselected="PushButton_Off"
hover_glow_amount="0.15"
@@ -161,7 +162,6 @@
tool_tip="Home page"
top="0"
height="22"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.Home" />
@@ -178,6 +178,7 @@
min_width="22"
width="22">
<button
+ name="media_stop_btn"
follows="top"
image_overlay="Stop_Off"
image_disabled="PushButton_Disabled"
@@ -189,7 +190,6 @@
tool_tip="Stop media"
top="0"
height="22"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.MediaStop" />
@@ -206,6 +206,7 @@
min_width="22"
width="22">
<button
+ name="reload_btn"
follows="top"
image_overlay="Refresh_Off"
image_disabled="PushButton_Disabled"
@@ -217,7 +218,6 @@
tool_tip="Reload"
top="0"
height="22"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.Reload" />
@@ -234,6 +234,7 @@
min_width="22"
width="22">
<button
+ name="stop_btn"
follows="top"
image_overlay="StopReload_Off"
image_disabled="PushButton_Disabled"
@@ -245,7 +246,6 @@
tool_tip = "Stop loading"
top="0"
height="22"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.Stop" />
@@ -262,6 +262,7 @@
min_width="22"
width="24">
<button
+ name="play_btn"
follows="top"
image_overlay="Play_Off"
image_disabled="PushButton_Disabled"
@@ -274,7 +275,6 @@
left_delta="2"
top="0"
height="22"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.Play" />
@@ -290,6 +290,7 @@
min_width="22"
width="24">
<button
+ name="pause_btn"
follows="top"
image_overlay="Pause_Off"
image_disabled="PushButton_Disabled"
@@ -354,7 +355,6 @@
image_name="Flag"
layout="topleft"
tool_tip="White List enabled"
- min_width="16"
width="16" />
</layout_panel>
<layout_panel
@@ -369,7 +369,6 @@
image_name="Lock2"
layout="topleft"
tool_tip="Secured Browsing"
- min_width="16"
width="16" />
</layout_panel>
</layout_stack>
@@ -394,7 +393,6 @@
initial_value="0.5"
layout="topleft"
tool_tip="Movie play progress"
- min_width="100"
width="200">
<slider_bar.commit_callback
function="MediaCtrl.JumpProgress" />
@@ -410,6 +408,7 @@
min_width="22"
width="22">
<button
+ name="skip_back_btn"
follows="top"
image_overlay="SkipBackward_Off"
image_disabled="PushButton_Disabled"
@@ -438,6 +437,7 @@
min_width="22"
width="22">
<button
+ name="skip_forward_btn"
follows="top"
image_overlay="SkipForward_Off"
image_disabled="PushButton_Disabled"
@@ -449,7 +449,6 @@
layout="topleft"
tool_tip="Step forward"
top="0"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.SkipForward" />
@@ -470,20 +469,19 @@
<!-- two different images. -->
<!-- Note also: the button and the slider must overlap! -->
<button
+ name="media_mute_button"
follows="top"
image_disabled="PushButton_Disabled"
image_disabled_selected="PushButton_Disabled"
image_selected="AudioMute_Off"
image_unselected="Audio_Off"
hover_glow_amount="0.15"
- name="media_mute_button"
is_toggle="true"
layout="topleft"
scale_image="false"
tool_tip="Mute This Media"
top="0"
height="20"
- min_width="22"
width="22" >
<button.commit_callback
function="MediaCtrl.ToggleMute" />
@@ -523,6 +521,7 @@
min_width="22"
width="22">
<button
+ name="zoom_frame_btn"
follows="top"
image_overlay="Zoom_Off"
image_disabled="PushButton_Disabled"
@@ -534,7 +533,6 @@
height="22"
layout="topleft"
tool_tip="Zoom into media"
- min_width="22"
width="22">
<button.commit_callback
function="MediaCtrl.Zoom" />
@@ -550,6 +548,7 @@
min_width="21"
width="21" >
<button
+ name="close_btn"
follows="top"
image_overlay="UnZoom_Off"
image_disabled="PushButton_Disabled"
@@ -577,6 +576,7 @@
min_width="22"
width="22">
<button
+ name="new_window_btn"
follows="top"
image_overlay="ExternalBrowser_Off"
image_disabled="PushButton_Disabled"
@@ -588,7 +588,6 @@
layout="topleft"
tool_tip = "Open URL in browser"
top="0"
- min_width="24"
width="24" >
<button.commit_callback
function="MediaCtrl.Open" />
diff --git a/indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml b/indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml
index 1dd4eb095c..ab3cc036d5 100644
--- a/indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml
+++ b/indra/newview/skins/default/xui/en/panel_sidetray_home_tab.xml
@@ -4,7 +4,6 @@
follows="all"
height="570"
min_height="350"
- label="home_tab"
help_topic="sidetray_home"
layout="topleft"
top="0"
diff --git a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml
index 51974be854..fb5f9d2ec8 100644
--- a/indra/newview/skins/default/xui/en/sidepanel_inventory.xml
+++ b/indra/newview/skins/default/xui/en/sidepanel_inventory.xml
@@ -33,7 +33,6 @@
<panel
height="25"
layout="bottomright"
- help_topic="item_button_tab"
name="button_panel"
left="5"
bottom="5"
diff --git a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml
index 4a992dadd9..e18f59ab64 100644
--- a/indra/newview/skins/default/xui/en/sidepanel_item_info.xml
+++ b/indra/newview/skins/default/xui/en/sidepanel_item_info.xml
@@ -401,7 +401,6 @@ top_pad="10"
<panel
height="30"
layout="bottomright"
- help_topic="button_tab"
name="button_panel"
left="5"
bottom="2"
@@ -414,4 +413,4 @@ top_pad="10"
right="-1"
width="100" />
</panel>
- </panel> \ No newline at end of file
+ </panel>
diff --git a/indra/newview/skins/default/xui/en/sidepanel_task_info.xml b/indra/newview/skins/default/xui/en/sidepanel_task_info.xml
index 2dfcdf4a4c..74f97dca4e 100644
--- a/indra/newview/skins/default/xui/en/sidepanel_task_info.xml
+++ b/indra/newview/skins/default/xui/en/sidepanel_task_info.xml
@@ -518,7 +518,6 @@
<panel
height="25"
layout="bottomright"
- help_topic="button_tab"
name="button_panel"
left="5"
bottom="5"
@@ -551,4 +550,4 @@
top="0"
width="100" />
</panel>
-</panel> \ No newline at end of file
+</panel>
diff --git a/indra/newview/skins/default/xui/en/widgets/chat_history.xml b/indra/newview/skins/default/xui/en/widgets/chat_history.xml
index 8785dff2ae..f6d1992c8e 100644
--- a/indra/newview/skins/default/xui/en/widgets/chat_history.xml
+++ b/indra/newview/skins/default/xui/en/widgets/chat_history.xml
@@ -1,23 +1,25 @@
<?xml version="1.0" encoding="UTF-8"?>
<chat_history
- message_header="panel_chat_header.xml"
- message_separator="panel_chat_separator.xml"
- left_text_pad="10"
- right_text_pad="15"
- left_widget_pad="0"
- right_widget_pad="10"
- top_separator_pad="5"
- bottom_separator_pad="5"
- top_header_pad="17"
- bottom_header_pad="10"
+ message_header="panel_chat_header.xml"
+ message_separator="panel_chat_separator.xml"
+ left_text_pad="10"
+ right_text_pad="15"
+ left_widget_pad="0"
+ right_widget_pad="10"
+ top_separator_pad="2"
+ bottom_separator_pad="2"
+ top_header_pad="12"
+ bottom_header_pad="5"
max_length="2147483647"
track_bottom="true"
name="chat_history"
type="string"
word_wrap="true"
+ line_spacing.multiple="1.0"
font="SansSerif">
<more_chat_text
mouse_opaque="true"
word_wrap="true"
/>
</chat_history>
+enabledcontrol \ No newline at end of file
diff --git a/indra/newview/skins/default/xui/en/widgets/menu.xml b/indra/newview/skins/default/xui/en/widgets/menu.xml
index 53034afa61..58543338f6 100644
--- a/indra/newview/skins/default/xui/en/widgets/menu.xml
+++ b/indra/newview/skins/default/xui/en/widgets/menu.xml
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<menu bg_color="MenuDefaultBgColor"
bg_visible="true"
- drop_shadow="false"
+ drop_shadow="true"
tear_off="false"
shortcut_pad="15">
</menu>
diff --git a/indra/newview/tests/llviewerhelputil_test.cpp b/indra/newview/tests/llviewerhelputil_test.cpp
index d7dd199722..297d98ad8d 100644
--- a/indra/newview/tests/llviewerhelputil_test.cpp
+++ b/indra/newview/tests/llviewerhelputil_test.cpp
@@ -83,6 +83,9 @@ class LLAgent
public:
LLAgent() {}
~LLAgent() {}
+#ifdef __GNUC__
+ __attribute__ ((noinline))
+#endif
BOOL isGodlike() const { return FALSE; }
private:
int dummy;
diff --git a/install.xml b/install.xml
index aa25744f15..5069e44d46 100644
--- a/install.xml
+++ b/install.xml
@@ -962,9 +962,9 @@ anguage Infrstructure (CLI) international standard</string>
<key>windows</key>
<map>
<key>md5sum</key>
- <string>b50db4fdb833111e1e679188e4cb5815</string>
+ <string>c41be1ba9728555ae5a2d2151c96dfe1</string>
<key>url</key>
- <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-windows-qt4.6-20100104.tar.bz2</uri>
+ <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-windows-qt4.6-20100115.tar.bz2</uri>
</map>
</map>
</map>
@@ -1367,23 +1367,23 @@ anguage Infrstructure (CLI) international standard</string>
<key>darwin</key>
<map>
<key>md5sum</key>
- <string>6d2a56c9b335acb10615f230b98aab67</string>
+ <string>51f3fa1ab39563505df83b48ba432a3c</string>
<key>url</key>
- <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/vivox-3.1.0001.7832-darwin-20100113a.tar.bz2</uri>
+ <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/vivox-3.1.0001.7852-darwin-20100115.tar.bz2</uri>
</map>
<key>linux</key>
<map>
<key>md5sum</key>
- <string>0744cbe83bd6c2c030334d3c69b131cb</string>
+ <string>ab9573d6aa2acdd79a553c144c9ecb09</string>
<key>url</key>
- <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/vivox-3.1.0001.7832-linux-20100113a.tar.bz2</uri>
+ <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/vivox-3.1.0001.7852-linux-20100115.tar.bz2</uri>
</map>
<key>windows</key>
<map>
<key>md5sum</key>
- <string>e68ed9a04ec9a437016ad5c641406706</string>
+ <string>88ab785eebdc4f53a7dfc4e0b95f67ec</string>
<key>url</key>
- <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/vivox-3.1.0001.7832-windows-20100113a.tar.bz2</uri>
+ <uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/vivox-3.1.0001.7852-windows-20100115.tar.bz2</uri>
</map>
</map>
</map>