From b3e444c74e0f31ba9d63d7bed934f017bf2499df Mon Sep 17 00:00:00 2001 From: callum Date: Thu, 17 Mar 2011 17:18:58 -0700 Subject: SOCIAL-634 FIX Error condition content for Destination Guide, Avatar Picker, and Help if S3 content or web content is not available. (Included refs to new LLQtWebKit that supports functionality) --- indra/newview/app_settings/settings.xml | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 6a89f5681d..c626538808 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12586,5 +12586,16 @@ Value 1 + WebContentFloaterErrorURL + + Comment + URL to navigate to if the Web content floater hits a page with a 400-499 HTTP status code + Persist + 1 + Type + String + Value + http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/damballah/404.html + -- cgit v1.3 From 22be29e60f5f45c7d30add3aeb219fef34d4ffec Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 18 Mar 2011 17:08:03 -0700 Subject: SOCIAL-762 FIX cannot change to advanced mode need separate flags for first run and first login --- indra/newview/app_settings/settings.xml | 15 +++++++++++++-- indra/newview/llappviewer.cpp | 1 + indra/newview/llviewerwindow.cpp | 5 ++--- 3 files changed, 16 insertions(+), 5 deletions(-) (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index c626538808..888f9c9d7f 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -3198,7 +3198,7 @@ FirstRunThisInstall Comment - Specifies that you have not run the viewer since you installed the latest update + Specifies that you have not run the viewer since you performed a clean install Persist 1 Type @@ -3206,7 +3206,18 @@ Value 1 - FirstSelectedDisabledPopups + FirstLoginThisInstall + + Comment + Specifies that you have not logged in with the viewer since you performed a clean install + Persist + 1 + Type + Boolean + Value + 1 + + FirstSelectedDisabledPopups Comment Return false if there is not disabled popup selected in the list of floater preferences popups diff --git a/indra/newview/llappviewer.cpp b/indra/newview/llappviewer.cpp index d0f9cae078..f6fe7ecd01 100644 --- a/indra/newview/llappviewer.cpp +++ b/indra/newview/llappviewer.cpp @@ -2171,6 +2171,7 @@ bool LLAppViewer::initConfiguration() if (gSavedSettings.getBOOL("FirstRunThisInstall")) { gSavedSettings.setString("SessionSettingsFile", "settings_minimal.xml"); + gSavedSettings.setBOOL("FirstRunThisInstall", FALSE); } if (clp.hasOption("sessionsettings")) diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 0778536d15..6bf363bf68 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1799,12 +1799,11 @@ void LLViewerWindow::initWorldUI() avatar_picker->navigateTo(gSavedSettings.getString("AvatarPickerURL"), "text/html"); } - if (gSavedSettings.getBOOL("FirstRunThisInstall")) + if (gSavedSettings.getBOOL("FirstLoginThisInstall")) { toggle_destination_and_avatar_picker(0); + gSavedSettings.setBOOL("FirstLoginThisInstall", FALSE); } - - gSavedSettings.setBOOL("FirstRunThisInstall", FALSE); } // Destroy the UI -- cgit v1.3 From a57729b9260ce5e711bff47c02ca54ab65eade27 Mon Sep 17 00:00:00 2001 From: callum Date: Tue, 22 Mar 2011 13:58:27 -0700 Subject: SOCIAL-634 FIX Error condition content for Destination Guide, Avatar Picker, and Help if S3 content or web content is not available --- indra/newview/app_settings/settings.xml | 4 ++-- indra/newview/llfloaterwebcontent.cpp | 6 ------ indra/newview/llmediactrl.cpp | 16 ++++++++++++++++ indra/newview/llmediactrl.h | 5 +++++ indra/newview/llviewerwindow.cpp | 2 ++ 5 files changed, 25 insertions(+), 8 deletions(-) (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 888f9c9d7f..b82c98fd60 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12597,10 +12597,10 @@ Value 1 - WebContentFloaterErrorURL + GenericErrorPageURL Comment - URL to navigate to if the Web content floater hits a page with a 400-499 HTTP status code + URL to set as a property on LLMediaControl to navigate to if the a page completes with a 400-499 HTTP status code Persist 1 Type diff --git a/indra/newview/llfloaterwebcontent.cpp b/indra/newview/llfloaterwebcontent.cpp index 76fb985b39..058567492b 100644 --- a/indra/newview/llfloaterwebcontent.cpp +++ b/indra/newview/llfloaterwebcontent.cpp @@ -328,12 +328,6 @@ void LLFloaterWebContent::handleMediaEvent(LLPluginClassMedia* self, EMediaEvent const std::string link = self->getHoverLink(); mStatusBarText->setText( link ); } - else if(event == MEDIA_EVENT_NAVIGATE_ERROR_PAGE ) - { - std::string redirect_url = gSavedSettings.getString("WebContentFloaterErrorURL"); - mWebBrowser->navigateTo(redirect_url, "text/html"); - set_current_url(redirect_url); - } } void LLFloaterWebContent::set_current_url(const std::string& url) diff --git a/indra/newview/llmediactrl.cpp b/indra/newview/llmediactrl.cpp index 376e38ade3..b8c61068c4 100644 --- a/indra/newview/llmediactrl.cpp +++ b/indra/newview/llmediactrl.cpp @@ -73,6 +73,7 @@ LLMediaCtrl::Params::Params() texture_height("texture_height", 1024), caret_color("caret_color"), initial_mime_type("initial_mime_type"), + error_page_url("error_page_url"), media_id("media_id"), trusted_content("trusted_content", false), focus_on_click("focus_on_click", true) @@ -102,6 +103,7 @@ LLMediaCtrl::LLMediaCtrl( const Params& p) : mTextureHeight ( 1024 ), mClearCache(false), mHomePageMimeType(p.initial_mime_type), + mErrorPageURL(p.error_page_url), mTrusted(p.trusted_content), mWindowShade(NULL), mHoverTextChanged(false) @@ -610,6 +612,16 @@ void LLMediaCtrl::setTarget(const std::string& target) } } +void LLMediaCtrl::setErrorPageURL(const std::string& url) +{ + mErrorPageURL = url; +} + +const std::string& LLMediaCtrl::getErrorPageURL() +{ + return mErrorPageURL; +} + //////////////////////////////////////////////////////////////////////////////// // bool LLMediaCtrl::setCaretColor(unsigned int red, unsigned int green, unsigned int blue) @@ -963,6 +975,10 @@ void LLMediaCtrl::handleMediaEvent(LLPluginClassMedia* self, EMediaEvent event) case MEDIA_EVENT_NAVIGATE_ERROR_PAGE: { LL_DEBUGS("Media") << "Media event: MEDIA_EVENT_NAVIGATE_ERROR_PAGE" << LL_ENDL; + if ( mErrorPageURL.length() > 0 ) + { + navigateTo(mErrorPageURL, "text/html"); + }; }; break; diff --git a/indra/newview/llmediactrl.h b/indra/newview/llmediactrl.h index 7a28b0986d..53b98b7ec8 100644 --- a/indra/newview/llmediactrl.h +++ b/indra/newview/llmediactrl.h @@ -63,6 +63,7 @@ public: Optional initial_mime_type; Optional media_id; + Optional error_page_url; Params(); }; @@ -113,6 +114,9 @@ public: void setTarget(const std::string& target); + void setErrorPageURL(const std::string& url); + const std::string& getErrorPageURL(); + // Clear the browser cache when the instance gets loaded void clearCache(); @@ -175,6 +179,7 @@ public: std::string mHomePageUrl; std::string mHomePageMimeType; std::string mCurrentNavUrl; + std::string mErrorPageURL; std::string mTarget; bool mIgnoreUIScale; bool mAlwaysRefresh; diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index 6bf363bf68..b71eebc30f 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1791,11 +1791,13 @@ void LLViewerWindow::initWorldUI() LLMediaCtrl* avatar_picker = avatar_picker_destination_guide_container->findChild("avatar_picker_contents"); if (destinations) { + destinations->setErrorPageURL(gSavedSettings.getString("GenericErrorPageURL")); destinations->navigateTo(gSavedSettings.getString("DestinationGuideURL"), "text/html"); } if (avatar_picker) { + avatar_picker->setErrorPageURL(gSavedSettings.getString("GenericErrorPageURL")); avatar_picker->navigateTo(gSavedSettings.getString("AvatarPickerURL"), "text/html"); } -- cgit v1.3 From 698565535a9a0652c6c21e5ac88124013a16324a Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Tue, 22 Mar 2011 16:56:11 -0700 Subject: avatar picker, destination guide, and how to urls now point to agni versions --- indra/newview/app_settings/settings.xml | 2 +- indra/newview/app_settings/settings_minimal.xml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 888f9c9d7f..4e701d89e8 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12606,7 +12606,7 @@ Type String Value - http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/damballah/404.html + http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/agni/404.html diff --git a/indra/newview/app_settings/settings_minimal.xml b/indra/newview/app_settings/settings_minimal.xml index 03656f2a53..490da2c9d4 100644 --- a/indra/newview/app_settings/settings_minimal.xml +++ b/indra/newview/app_settings/settings_minimal.xml @@ -61,7 +61,7 @@ Type String Value - http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/damballah/howto/index.html?topic=[TOPIC] + http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/agni/howto/index.html?topic=[TOPIC] PreferredMaturity @@ -345,7 +345,7 @@ Type String Value - http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/damballah/guide.html + http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/agni/guide.html AvatarPickerURL @@ -356,7 +356,7 @@ Type String Value - http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/damballah/avatars.html + http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/agni/avatars.html LogInventoryDecline -- cgit v1.3 From 9c82ea334ab0c1283f28997fe060b24200e3e2be Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Wed, 23 Mar 2011 17:02:23 -0700 Subject: SOCIAL-714 FIX [PUBLIC] Basic mode to launch with Destinations panel open by default --- indra/newview/app_settings/settings.xml | 11 +++++++++++ indra/newview/app_settings/settings_minimal.xml | 11 +++++++++++ indra/newview/llviewermenu.cpp | 14 ++++++-------- indra/newview/llviewerwindow.cpp | 7 ++----- 4 files changed, 30 insertions(+), 13 deletions(-) (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index c79cf99eb4..d042a247c4 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12608,5 +12608,16 @@ Value http://common-flash-secondlife-com.s3.amazonaws.com/viewer/v2.6/agni/404.html + DestinationsAndAvatarsVisibility + + Comment + Whether destination panel or avatar picker are open (0=destination guide, 1=avatar picker, default=nothing) + Persist + 1 + Type + S32 + Value + -1 + diff --git a/indra/newview/app_settings/settings_minimal.xml b/indra/newview/app_settings/settings_minimal.xml index 490da2c9d4..8886976f3f 100644 --- a/indra/newview/app_settings/settings_minimal.xml +++ b/indra/newview/app_settings/settings_minimal.xml @@ -402,5 +402,16 @@ Value 0 + DestinationsAndAvatarsVisibility + + Comment + Whether destination panel or avatar picker are open (0=destination guide, 1=avatar picker, default=nothing) + Persist + 1 + Type + S32 + Value + 0 + diff --git a/indra/newview/llviewermenu.cpp b/indra/newview/llviewermenu.cpp index 33fff82738..b05b2e0a67 100644 --- a/indra/newview/llviewermenu.cpp +++ b/indra/newview/llviewermenu.cpp @@ -863,7 +863,6 @@ void toggle_destination_and_avatar_picker(const LLSD& show) LLFirstUse::notUsingDestinationGuide(false); avatar_btn->setToggleState(false); destination_btn->setToggleState(true); - return; } break; case 1: @@ -874,18 +873,17 @@ void toggle_destination_and_avatar_picker(const LLSD& show) avatar_picker->setVisible(true); avatar_btn->setToggleState(true); destination_btn->setToggleState(false); - return; } break; default: + container->setVisible(false); + destinations->setVisible(false); + avatar_picker->setVisible(false); + avatar_btn->setToggleState(false); + destination_btn->setToggleState(false); break; } - - container->setVisible(false); - destinations->setVisible(false); - avatar_picker->setVisible(false); - avatar_btn->setToggleState(false); - destination_btn->setToggleState(false); + gSavedSettings.setS32("DestinationsAndAvatarsVisibility", panel_idx); }; diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index b71eebc30f..faf4e8b3fc 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -1801,11 +1801,8 @@ void LLViewerWindow::initWorldUI() avatar_picker->navigateTo(gSavedSettings.getString("AvatarPickerURL"), "text/html"); } - if (gSavedSettings.getBOOL("FirstLoginThisInstall")) - { - toggle_destination_and_avatar_picker(0); - gSavedSettings.setBOOL("FirstLoginThisInstall", FALSE); - } + // show destinations by default + toggle_destination_and_avatar_picker(gSavedSettings.getS32("DestinationsAndAvatarsVisibility")); } // Destroy the UI -- cgit v1.3 From 12d3acc1920fa8a90287d59df61864620bbf29ca Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Thu, 24 Mar 2011 15:27:15 -0700 Subject: SOCIAL-714 FIX [PUBLIC] Basic mode to launch with Destinations panel open by default we now correctly remember last state of destinations/avatar picker panels --- indra/newview/app_settings/settings.xml | 2 +- indra/newview/app_settings/settings_minimal.xml | 11 ----------- 2 files changed, 1 insertion(+), 12 deletions(-) (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 2cfda13cfd..04045585a0 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12617,7 +12617,7 @@ Type S32 Value - -1 + 0 diff --git a/indra/newview/app_settings/settings_minimal.xml b/indra/newview/app_settings/settings_minimal.xml index 8886976f3f..490da2c9d4 100644 --- a/indra/newview/app_settings/settings_minimal.xml +++ b/indra/newview/app_settings/settings_minimal.xml @@ -402,16 +402,5 @@ Value 0 - DestinationsAndAvatarsVisibility - - Comment - Whether destination panel or avatar picker are open (0=destination guide, 1=avatar picker, default=nothing) - Persist - 1 - Type - S32 - Value - 0 - -- cgit v1.3 From f443f3e84725d01d47b96a3385ee9ccc494ede89 Mon Sep 17 00:00:00 2001 From: Richard Linden Date: Fri, 25 Mar 2011 19:13:32 -0700 Subject: SOCIAL-717 FIX Artwork for click to move hint updated resize logic for hint popups to accomodate image size --- indra/llui/lliconctrl.h | 1 + indra/newview/app_settings/settings.xml | 2 +- indra/newview/llfirstuse.cpp | 6 +++- indra/newview/llhints.cpp | 14 +++++++++ indra/newview/llnavigationbar.cpp | 3 ++ .../newview/skins/default/xui/en/notifications.xml | 8 +++-- indra/newview/skins/default/xui/en/panel_hint.xml | 2 +- .../skins/default/xui/en/panel_hint_image.xml | 34 +++++++++++++-------- .../skins/minimal/textures/click_to_move.png | Bin 0 -> 8188 bytes indra/newview/skins/minimal/textures/textures.xml | 1 + 10 files changed, 54 insertions(+), 17 deletions(-) create mode 100644 indra/newview/skins/minimal/textures/click_to_move.png (limited to 'indra/newview/app_settings/settings.xml') diff --git a/indra/llui/lliconctrl.h b/indra/llui/lliconctrl.h index e9bdab2d47..669e126266 100644 --- a/indra/llui/lliconctrl.h +++ b/indra/llui/lliconctrl.h @@ -69,6 +69,7 @@ public: void setColor(const LLColor4& color) { mColor = color; } void setImage(LLPointer image) { mImagep = image; } + const LLPointer getImage() { return mImagep; } private: void setIconImageDrawSize() ; diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 04045585a0..b966447942 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12364,7 +12364,7 @@ Type F32 Value - 120.0 + 1.0 DestinationGuideHintTimeout diff --git a/indra/newview/llfirstuse.cpp b/indra/newview/llfirstuse.cpp index e319418def..1c15360b09 100644 --- a/indra/newview/llfirstuse.cpp +++ b/indra/newview/llfirstuse.cpp @@ -115,7 +115,11 @@ void LLFirstUse::notMoving(bool enable) { // fire off 2 notifications and rely on filtering to select the relevant one firstUseNotification("FirstNotMoving", enable, "HintMove", LLSD(), LLSD().with("target", "move_btn").with("direction", "top")); - firstUseNotification("FirstNotMoving", enable, "HintMoveArrows", LLSD(), LLSD().with("target", "bottom_tray").with("direction", "top").with("hint_image", "arrow_keys.png").with("down_arrow", "")); + firstUseNotification("FirstNotMoving", enable, "HintMoveClick", LLSD(), LLSD() + .with("target", "nav_bar") + .with("direction", "bottom") + .with("hint_image", "click_to_move.png") + .with("up_arrow", "")); } // static diff --git a/indra/newview/llhints.cpp b/indra/newview/llhints.cpp index c4dcaf11f9..97f0e36a0c 100644 --- a/indra/newview/llhints.cpp +++ b/indra/newview/llhints.cpp @@ -191,6 +191,8 @@ BOOL LLHintPopup::postBuild() LLRect text_bounds = hint_text.getTextBoundingRect(); S32 delta_height = text_bounds.getHeight() - hint_text.getRect().getHeight(); reshape(getRect().getWidth(), getRect().getHeight() + delta_height); + hint_text.reshape(hint_text.getRect().getWidth(), hint_text.getRect().getHeight() + delta_height); + hint_text.translate(0, -delta_height); return TRUE; } @@ -211,6 +213,18 @@ void LLHintPopup::draw() alpha = clamp_rescale(mFadeTimer.getElapsedTimeF32(), 0.f, mFadeInTime, 0.f, 1.f); } + LLIconCtrl& hint_icon = getChildRef("hint_image"); + + LLUIImagePtr hint_image = hint_icon.getImage(); + S32 image_height = hint_image.isNull() ? 0 : hint_image->getHeight(); + S32 image_width = hint_image.isNull() ? 0 : hint_image->getWidth(); + + S32 delta_height = image_height - hint_icon.getRect().getHeight(); + hint_icon.getParent()->reshape(image_width, image_height); + + LLRect hint_rect = getLocalRect(); + reshape(hint_rect.getWidth(), hint_rect.getHeight() + delta_height); + { LLViewDrawContext context(alpha); if (mTarget.empty()) diff --git a/indra/newview/llnavigationbar.cpp b/indra/newview/llnavigationbar.cpp index 3b160ddc8e..b8832dfd8e 100644 --- a/indra/newview/llnavigationbar.cpp +++ b/indra/newview/llnavigationbar.cpp @@ -57,6 +57,7 @@ #include "llviewercontrol.h" #include "llfloatermediabrowser.h" #include "llweb.h" +#include "llhints.h" #include "llinventorymodel.h" #include "lllandmarkactions.h" @@ -324,6 +325,8 @@ BOOL LLNavigationBar::postBuild() LLTeleportHistory::getInstance()->setHistoryChangedCallback( boost::bind(&LLNavigationBar::onTeleportHistoryChanged, this)); + LLHints::registerHintTarget("nav_bar", LLView::getHandle()); + return TRUE; } diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index 6ecaef1bf3..ad68e50e77 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -7034,11 +7034,15 @@ Mute everyone? - To walk, use the directional keys on your keyboard. You can run by pressing the Up arrow twice. +Click to Walk +Click anywhere on the ground to walk to that spot. + +Click and Drag to Rotate View +Click and drag anywhere on the world to rotate your view custom_skin diff --git a/indra/newview/skins/default/xui/en/panel_hint.xml b/indra/newview/skins/default/xui/en/panel_hint.xml index e2e9d0aef0..c883fd8a1d 100644 --- a/indra/newview/skins/default/xui/en/panel_hint.xml +++ b/indra/newview/skins/default/xui/en/panel_hint.xml @@ -16,7 +16,7 @@ right="197" top="26" bottom="92" - follows="all" + follows="left|right|bottom" text_color="Black" wrap="true"/>