Commits

Anonymous committed 483c77f

Merging revisions 2146-2150 of https://svn.aws.productengine.com/secondlife/pe/stable-2 into P:\svn\viewer-2.0.0-3, respecting ancestry
* Bugs: EXT-1752 EXT-1754

  • Participants
  • Parent commits efd6b1f

Comments (0)

Files changed (8)

File indra/llmessage/tests/llhost_test.cpp

 	template<> template<>
 	void host_object::test<9>()
 	{
-		std::string hostStr = "google.com";		
+		std::string hostStr = "linux.org";
 		LLHost host;
 		host.setHostByName(hostStr);	
 

File indra/newview/llchannelmanager.cpp

 #include "llimview.h"
 #include "llbottomtray.h"
 #include "llviewerwindow.h"
+#include "llrootview.h"
 
 #include <algorithm>
 
 		return;
 	}
 
+	gViewerWindow->getRootView()->addChild(mStartUpChannel);
+
 	// init channel's position and size
 	S32 channel_right_bound = gViewerWindow->getWorldViewRect().mRight - gSavedSettings.getS32("NotificationChannelRightMargin"); 
 	S32 channel_width = gSavedSettings.getS32("NotifyBoxWidth");
 	mStartUpChannel->setShowToasts(true);
 
 	mStartUpChannel->setCommitCallback(boost::bind(&LLChannelManager::onStartUpToastClose, this));
-	mStartUpChannel->createStartUpToast(away_notifications, gSavedSettings.getS32("ChannelBottomPanelMargin"), gSavedSettings.getS32("StartUpToastLifeTime"));
+	mStartUpChannel->createStartUpToast(away_notifications, gSavedSettings.getS32("StartUpToastLifeTime"));
 }
 
 //--------------------------------------------------------------------------
 		mStartUpChannel->setVisible(FALSE);
 		mStartUpChannel->closeStartUpToast();
 		removeChannelByID(LLUUID(gSavedSettings.getString("StartUpChannelUUID")));
-		delete mStartUpChannel;
 		mStartUpChannel = NULL;
 	}
 
 	// set StartUp Toast Flag to allow all other channels to show incoming toasts
 	LLScreenChannel::setStartUpToastShown();
-
-	// force NEARBY CHAT CHANNEL to repost all toasts if present
-	//LLScreenChannelBase* nearby_channel = findChannelByID(LLUUID(gSavedSettings.getString("NearByChatChannelUUID")));
-	//!!!!!!!!!!!!!!
-	//FIXME
-	//nearby_channel->loadStoredToastsToChannel();
-	//nearby_channel->setCanStoreToasts(false);
 }
 
 //--------------------------------------------------------------------------

File indra/newview/llpanellandmarks.cpp

 	LLFolderViewItem*  item = getCurSelectedItem();
 	if(item &&  mCurrentSelectedList == mLandmarksInventoryPanel)
 	{
-		LLFolderBridge *parentBridge = NULL;
+		LLFolderViewEventListener* folder_bridge = NULL;
 		if(item-> getListener()->getInventoryType() == LLInventoryType::IT_LANDMARK)
 		{
-			parentBridge = dynamic_cast<LLFolderBridge*>(item->getParentFolder()->getListener());
-			/*WORKAROUND:* 
-			 LLFolderView::doIdle() is calling in each frame,
-			 it changes selected items before LLFolderView::startRenamingSelectedItem.
-			 To avoid it we have to change keyboardFocus. 
-			*/
-			gFocusMgr.setKeyboardFocus(item->getParentFolder());
+			// for a landmark get parent folder bridge
+			folder_bridge = item->getParentFolder()->getListener();
 		}
 		else if (item-> getListener()->getInventoryType() == LLInventoryType::IT_CATEGORY) 
 		{
-			parentBridge = dynamic_cast<LLFolderBridge*>(item->getListener());
-			gFocusMgr.setKeyboardFocus(item);
+			// for a folder get its own bridge
+			folder_bridge = item->getListener();
 		}
-		menu_create_inventory_item(mCurrentSelectedList->getRootFolder(),parentBridge, LLSD("category"));
+
+		menu_create_inventory_item(mCurrentSelectedList->getRootFolder()
+			, dynamic_cast<LLFolderBridge*>(folder_bridge)
+			, LLSD("category")
+			, gInventory.findCategoryUUIDForType(LLAssetType::AT_LANDMARK)
+			);
 	}
 }
 

File indra/newview/llscreenchannel.cpp

 			(*it).toast->stopTimer();
 			mHiddenToastsNum++;
 		}
-		createOverflowToast(bottom, gSavedSettings.getS32("NotificationToastLifeTime"));
+		createOverflowToast(bottom, gSavedSettings.getS32("NotificationTipToastLifeTime"));
 	}	
 }
 
 	if(!mOverflowToastPanel)
 		return;
 
-	mOverflowToastPanel->setOnFadeCallback(boost::bind(&LLScreenChannel::onOverflowToastHide, this));
+	mOverflowToastPanel->setOnFadeCallback(boost::bind(&LLScreenChannel::closeOverflowToastPanel, this));
 
 	LLTextBox* text_box = mOverflowToastPanel->getChild<LLTextBox>("toast_text");
 	LLIconCtrl* icon = mOverflowToastPanel->getChild<LLIconCtrl>("icon");
 }
 
 //--------------------------------------------------------------------------
-void LLScreenChannel::createStartUpToast(S32 notif_num, S32 bottom, F32 timer)
+void LLScreenChannel::createStartUpToast(S32 notif_num, F32 timer)
 {
 	LLRect toast_rect;
 	LLToast::Params p;
 
 	toast_rect = mStartUpToastPanel->getRect();
 	mStartUpToastPanel->reshape(getRect().getWidth(), toast_rect.getHeight(), true);
-	toast_rect.setLeftTopAndSize(getRect().mLeft, bottom + toast_rect.getHeight()+gSavedSettings.getS32("ToastGap"), getRect().getWidth(), toast_rect.getHeight());	
+	toast_rect.setLeftTopAndSize(0, toast_rect.getHeight()+gSavedSettings.getS32("ToastGap"), getRect().getWidth(), toast_rect.getHeight());	
 	mStartUpToastPanel->setRect(toast_rect);
 
 	text_box->setValue(text);
 	text_box->setVisible(TRUE);
 	icon->setVisible(TRUE);
 
+	addChild(mStartUpToastPanel);
+	
 	mStartUpToastPanel->setVisible(TRUE);
 }
 
 {
 	if(mStartUpToastPanel != NULL)
 	{
-		mStartUpToastPanel->closeFloater();
+		mStartUpToastPanel->setVisible(FALSE);
 		mStartUpToastPanel = NULL;
 	}
 }

File indra/newview/llscreenchannel.h

 	void	createOverflowToast(S32 bottom, F32 timer);
 
 	// create the StartUp Toast
-	void	createStartUpToast(S32 notif_num, S32 bottom, F32 timer);
+	void	createStartUpToast(S32 notif_num, F32 timer);
 
 	// Channel's flags
 	static bool	mWasStartUpToastShown;

File indra/newview/llviewerinventory.cpp

 const std::string NEW_NOTECARD_NAME = "New Note"; // *TODO:Translate? (probably not)
 const std::string NEW_GESTURE_NAME = "New Gesture"; // *TODO:Translate? (probably not)
 
-void menu_create_inventory_item(LLFolderView* folder, LLFolderBridge *bridge, const LLSD& userdata)
+void menu_create_inventory_item(LLFolderView* folder, LLFolderBridge *bridge, const LLSD& userdata, const LLUUID& default_parent_uuid)
 {
 	std::string type = userdata.asString();
 	
 			a_type = LLAssetType::AT_OUTFIT;
 		if ("my_otfts" == type)
 			a_type = LLAssetType::AT_MY_OUTFITS;
-		LLUUID category;
+
+		LLUUID parent_id;
 		if (bridge)
 		{
-			category = gInventory.createNewCategory(bridge->getUUID(), a_type, LLStringUtil::null);
+			parent_id = bridge->getUUID();
+		}
+		else if (default_parent_uuid.notNull())
+		{
+			parent_id = default_parent_uuid;
 		}
 		else
 		{
-			category = gInventory.createNewCategory(gInventory.getRootFolderID(), a_type, LLStringUtil::null);
+			parent_id = gInventory.getRootFolderID();
 		}
+
+		LLUUID category = gInventory.createNewCategory(parent_id, a_type, LLStringUtil::null);
 		gInventory.notifyObservers();
 		folder->setSelectionByID(category, TRUE);
 	}

File indra/newview/llviewerinventory.h

 
 void menu_create_inventory_item(LLFolderView* folder,
 								LLFolderBridge* bridge,
-								const LLSD& userdata);
+								const LLSD& userdata,
+								const LLUUID& default_parent_uuid = LLUUID::null);
 
 #endif // LL_LLVIEWERINVENTORY_H

File indra/newview/skins/default/xui/en/panel_toast.xml

   visible="false"
   layout="topleft"
 	width="350"
-	height="72"
+	height="40"
   left="100"
   top="500"
   follows="right|bottom" 
    visible="false"
    follows="left|top|right|bottom"
    font="SansSerifBold"
-   height="40"
+   height="28"
    layout="topleft"
    left="60"
    name="toast_text"
    word_wrap="true"
    text_color="white"
-   top="20"
+   top="10"
    width="290">
     Toast text;
   </text>
   <icon
-    top="20" 
+    top="4" 
     left="10" 
     width="32" 
     height="32"