diff options
38 files changed, 211 insertions, 94 deletions
| diff --git a/indra/llui/llfloater.cpp b/indra/llui/llfloater.cpp index 40b550269c..33548151fd 100644 --- a/indra/llui/llfloater.cpp +++ b/indra/llui/llfloater.cpp @@ -195,7 +195,8 @@ LLFloater::Params::Params()  	dock_pressed_image("dock_pressed_image"),  	help_pressed_image("help_pressed_image"),  	open_callback("open_callback"), -	close_callback("close_callback") +	close_callback("close_callback"), +	follows("follows")  {  	changeDefault(visible, false);  } @@ -2965,6 +2966,9 @@ void LLFloater::initFromParams(const LLFloater::Params& p)  	 // control_name, tab_stop, focus_lost_callback, initial_value, rect, enabled, visible  	LLPanel::initFromParams(p); +	// override any follows flags +	setFollows(FOLLOWS_NONE); +  	mTitle = p.title;  	mShortTitle = p.short_title;  	applyTitle(); diff --git a/indra/llui/llfloater.h b/indra/llui/llfloater.h index c70eb0958d..59b35d206f 100644 --- a/indra/llui/llfloater.h +++ b/indra/llui/llfloater.h @@ -156,6 +156,8 @@ public:  		Optional<CommitCallbackParam> open_callback,  									  close_callback; + +		Ignored					follows;  		Params();  	}; diff --git a/indra/llwindow/llwindow.cpp b/indra/llwindow/llwindow.cpp index 0e17cffc9d..de7ce3db77 100644 --- a/indra/llwindow/llwindow.cpp +++ b/indra/llwindow/llwindow.cpp @@ -111,8 +111,8 @@ LLWindow::LLWindow(LLWindowCallbacks* callbacks, BOOL fullscreen, U32 flags)  	  mCursorHidden(FALSE),  	  mBusyCount(0),  	  mIsMouseClipping(FALSE), -	  mMinWindowWidth(S32_MAX),		// just a sanity check - actual minimum size is stored in settings.xml -	  mMinWindowHeight(S32_MAX), +	  mMinWindowWidth(0), +	  mMinWindowHeight(0),  	  mSwapMethod(SWAP_METHOD_UNDEFINED),  	  mHideCursorPermanent(FALSE),  	  mFlags(flags), diff --git a/indra/llwindow/llwindowsdl.cpp b/indra/llwindow/llwindowsdl.cpp index aed035569d..6d593c807e 100644 --- a/indra/llwindow/llwindowsdl.cpp +++ b/indra/llwindow/llwindowsdl.cpp @@ -1034,9 +1034,9 @@ void LLWindowSDL::setMouseClipping( BOOL b )  }  // virtual -void LLWindowSDL::setMinSize(U32 min_width, U32 min_height) +void LLWindowSDL::setMinSize(U32 min_width, U32 min_height, bool enforce_immediately)  { -	LLWindow::setMinSize(min_width, min_height); +	LLWindow::setMinSize(min_width, min_height, enforce_immediately);  #if LL_X11  	// Set the minimum size limits for X11 window diff --git a/indra/llwindow/llwindowsdl.h b/indra/llwindow/llwindowsdl.h index 76019999b1..14bc0b399d 100644 --- a/indra/llwindow/llwindowsdl.h +++ b/indra/llwindow/llwindowsdl.h @@ -76,7 +76,7 @@ public:  	/*virtual*/ void captureMouse();  	/*virtual*/ void releaseMouse();  	/*virtual*/ void setMouseClipping( BOOL b ); -	/*virtual*/	void setMinSize(U32 min_width, U32 min_height); +	/*virtual*/	void setMinSize(U32 min_width, U32 min_height, bool enforce_immediately = true);  	/*virtual*/ BOOL isClipboardTextAvailable();  	/*virtual*/ BOOL pasteTextFromClipboard(LLWString &dst); diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 4e91ca6c48..0a4874ae92 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -245,6 +245,7 @@ set(viewer_SOURCE_FILES      llfloaterurlentry.cpp      llfloatervoiceeffect.cpp      llfloaterwebcontent.cpp +    llfloaterwebprofile.cpp      llfloaterwhitelistentry.cpp      llfloaterwindowsize.cpp      llfloaterworldmap.cpp @@ -800,6 +801,7 @@ set(viewer_HEADER_FILES      llfloaterurlentry.h      llfloatervoiceeffect.h      llfloaterwebcontent.h +    llfloaterwebprofile.h      llfloaterwhitelistentry.h      llfloaterwindowsize.h      llfloaterworldmap.h diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 1e07ed8a27..67724831bc 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -12685,7 +12685,7 @@        <key>Type</key>        <string>U32</string>        <key>Value</key> -      <integer>600</integer> +      <integer>0</integer>      </map>      <key>WindowHeight</key>      <map> @@ -12718,7 +12718,7 @@        <key>Type</key>        <string>U32</string>        <key>Value</key> -      <integer>960</integer> +      <integer>0</integer>      </map>      <key>WindowWidth</key>      <map> @@ -13424,10 +13424,10 @@        <key>Value</key>        <integer>1</integer>      </map> -     <key>WebProfileRect</key> +     <key>WebProfileFloaterRect</key>      <map>        <key>Comment</key> -      <string>Web profile dimensions</string> +      <string>Web profile floater dimensions</string>        <key>Persist</key>        <integer>1</integer>        <key>Type</key> @@ -13435,8 +13435,8 @@        <key>Value</key>        <array>          <integer>0</integer> -        <integer>650</integer> -        <integer>490</integer> +        <integer>730</integer> +        <integer>485</integer>          <integer>0</integer>          </array>          </map> diff --git a/indra/newview/llavataractions.cpp b/indra/newview/llavataractions.cpp index 2f331bdab1..8ca621538f 100755 --- a/indra/newview/llavataractions.cpp +++ b/indra/newview/llavataractions.cpp @@ -308,20 +308,6 @@ static const char* get_profile_floater_name(const LLUUID& avatar_id)  	return avatar_id == gAgentID ? "my_profile" : "profile";  } -static const LLRect& get_preferred_profile_rect(const LLUUID& avatar_id) -{ -	if (avatar_id == gAgentID && -		LLFloaterReg::getInstance(get_profile_floater_name(avatar_id))->hasSavedRect()) -	{ -		return LLRect::null; // no preference, use saved rect -	} - -	// Preferred size for all residents' profiles -	// and default size for our own profile. -	static LLCachedControl<LLRect> profile_rect(gSavedSettings, "WebProfileRect"); -	return profile_rect; -} -  static void on_avatar_name_show_profile(const LLUUID& agent_id, const LLAvatarName& av_name)  {  	std::string username = av_name.mUsername; @@ -334,13 +320,9 @@ static void on_avatar_name_show_profile(const LLUUID& agent_id, const LLAvatarNa  	std::string url = getProfileURL(username);  	// PROFILES: open in webkit window -	const bool show_chrome = false;  	LLFloaterWebContent::Params p;  	p.url(url). -		id(agent_id.asString()). -		show_chrome(show_chrome). -		window_class("profile"). -		preferred_media_size(get_preferred_profile_rect(agent_id)); +		id(agent_id.asString());  	LLFloaterReg::showInstance(get_profile_floater_name(agent_id), p);  } diff --git a/indra/newview/llfloaterwebcontent.cpp b/indra/newview/llfloaterwebcontent.cpp index d6db7aa6ad..f3beacea4f 100644 --- a/indra/newview/llfloaterwebcontent.cpp +++ b/indra/newview/llfloaterwebcontent.cpp @@ -128,39 +128,7 @@ bool LLFloaterWebContent::matchesKey(const LLSD& key)  //static  LLFloater* LLFloaterWebContent::create( Params p)  { -	lldebugs << "url = " << p.url() << ", target = " << p.target() << ", uuid = " << p.id() << llendl; - -	if (!p.id.isProvided()) -	{ -		p.id = LLUUID::generateNewID().asString(); -	} - -	if(p.target().empty() || p.target() == "_blank") -	{ -		p.target = p.id(); -	} - -	S32 browser_window_limit = gSavedSettings.getS32("WebContentWindowLimit"); -	if(browser_window_limit != 0) -	{ -		// showInstance will open a new window.  Figure out how many web browsers are already open, -		// and close the least recently opened one if this will put us over the limit. - -		LLFloaterReg::const_instance_list_t &instances = LLFloaterReg::getFloaterList(p.window_class); -		lldebugs << "total instance count is " << instances.size() << llendl; - -		for(LLFloaterReg::const_instance_list_t::const_iterator iter = instances.begin(); iter != instances.end(); iter++) -		{ -			lldebugs << "    " << (*iter)->getKey()["target"] << llendl; -		} - -		if(instances.size() >= (size_t)browser_window_limit) -		{ -			// Destroy the least recently opened instance -			(*instances.begin())->closeFloater(); -		} -	} - +	preCreate(p);  	return new LLFloaterWebContent(p);  } @@ -211,6 +179,43 @@ void LLFloaterWebContent::geometryChanged(S32 x, S32 y, S32 width, S32 height)  	setShape(new_rect);	  } +// static +void LLFloaterWebContent::preCreate(LLFloaterWebContent::Params& p) +{ +	lldebugs << "url = " << p.url() << ", target = " << p.target() << ", uuid = " << p.id() << llendl; + +	if (!p.id.isProvided()) +	{ +		p.id = LLUUID::generateNewID().asString(); +	} + +	if(p.target().empty() || p.target() == "_blank") +	{ +		p.target = p.id(); +	} + +	S32 browser_window_limit = gSavedSettings.getS32("WebContentWindowLimit"); +	if(browser_window_limit != 0) +	{ +		// showInstance will open a new window.  Figure out how many web browsers are already open, +		// and close the least recently opened one if this will put us over the limit. + +		LLFloaterReg::const_instance_list_t &instances = LLFloaterReg::getFloaterList(p.window_class); +		lldebugs << "total instance count is " << instances.size() << llendl; + +		for(LLFloaterReg::const_instance_list_t::const_iterator iter = instances.begin(); iter != instances.end(); iter++) +		{ +			lldebugs << "    " << (*iter)->getKey()["target"] << llendl; +		} + +		if(instances.size() >= (size_t)browser_window_limit) +		{ +			// Destroy the least recently opened instance +			(*instances.begin())->closeFloater(); +		} +	} +} +  void LLFloaterWebContent::open_media(const Params& p)  {  	// Specifying a mime type of text/html here causes the plugin system to skip the MIME type probe and just open a browser plugin. diff --git a/indra/newview/llfloaterwebcontent.h b/indra/newview/llfloaterwebcontent.h index 9d90306a9c..2a2a9e110b 100644 --- a/indra/newview/llfloaterwebcontent.h +++ b/indra/newview/llfloaterwebcontent.h @@ -90,6 +90,7 @@ protected:  	void onEnterAddress();  	void onPopExternal(); +	static void preCreate(Params& p);  	void open_media(const Params& );  	void set_current_url(const std::string& url); diff --git a/indra/newview/llfloaterwebprofile.cpp b/indra/newview/llfloaterwebprofile.cpp new file mode 100644 index 0000000000..7ee7b5172c --- /dev/null +++ b/indra/newview/llfloaterwebprofile.cpp @@ -0,0 +1,79 @@ +/**  + * @file llfloaterwebprofile.cpp + * @brief Avatar profile floater. + * + * $LicenseInfo:firstyear=2009&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + *  + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + *  + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + *  + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA + * $/LicenseInfo$ + */ + +#include "llviewerprecompiledheaders.h" + +#include "llfloaterwebprofile.h" + +#include "llviewercontrol.h" + +LLFloaterWebProfile::LLFloaterWebProfile(const Params& key) : +	LLFloaterWebContent(key) +{ +} + +void LLFloaterWebProfile::onOpen(const LLSD& key) +{ +	Params p(key); +	LLFloaterWebContent::onOpen(p); +	applyPreferredRect(); +} + +// virtual +void LLFloaterWebProfile::handleReshape(const LLRect& new_rect, bool by_user) +{ +	lldebugs << "handleReshape: " << new_rect << llendl; + +	if (by_user && !isMinimized()) +	{ +		lldebugs << "Storing new rect" << llendl; +		gSavedSettings.setRect("WebProfileFloaterRect", new_rect); +	} + +	LLFloaterWebContent::handleReshape(new_rect, by_user); +} + +LLFloater* LLFloaterWebProfile::create(const LLSD& key) +{ +	LLFloaterWebContent::Params p(key); +	preCreate(p); +	p.show_chrome(false). +		window_class("profile"); +	return new LLFloaterWebProfile(p); +} + +void LLFloaterWebProfile::applyPreferredRect() +{ +	const LLRect preferred_rect = gSavedSettings.getRect("WebProfileFloaterRect"); +	lldebugs << "Applying preferred rect: " << preferred_rect << llendl; + +	// Don't override position that may have been set by floater stacking code. +	LLRect new_rect = getRect(); +	new_rect.setLeftTopAndSize( +		new_rect.mLeft, new_rect.mTop, +		preferred_rect.getWidth(), preferred_rect.getHeight()); +	setShape(new_rect); +} diff --git a/indra/newview/llfloaterwebprofile.h b/indra/newview/llfloaterwebprofile.h new file mode 100644 index 0000000000..4c355e401b --- /dev/null +++ b/indra/newview/llfloaterwebprofile.h @@ -0,0 +1,59 @@ +/**  + * @file llfloaterwebprofile.h + * @brief Avatar profile floater. + * + * $LicenseInfo:firstyear=2009&license=viewerlgpl$ + * Second Life Viewer Source Code + * Copyright (C) 2010, Linden Research, Inc. + *  + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; + * version 2.1 of the License only. + *  + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU + * Lesser General Public License for more details. + *  + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA + *  + * Linden Research, Inc., 945 Battery Street, San Francisco, CA  94111  USA + * $/LicenseInfo$ + */ + +#ifndef LL_LLFLOATERWEBPROFILE_H +#define LL_LLFLOATERWEBPROFILE_H + +#include "llfloaterwebcontent.h" +#include "llviewermediaobserver.h" + +#include <string> + +class LLMediaCtrl; + +/** + * Displays avatar profile web page. + */ +class LLFloaterWebProfile +:	public LLFloaterWebContent +{ +	LOG_CLASS(LLFloaterWebProfile); +public: +	typedef LLFloaterWebContent::Params Params; + +	LLFloaterWebProfile(const Params& key); + +	/*virtual*/ void onOpen(const LLSD& key); +	/*virtual*/ void handleReshape(const LLRect& new_rect, bool by_user = false); + +	static LLFloater* create(const LLSD& key); + +private: +	void applyPreferredRect(); +}; + +#endif  // LL_LLFLOATERWEBPROFILE_H + diff --git a/indra/newview/lltoolbarview.cpp b/indra/newview/lltoolbarview.cpp index 3872444e8f..eccb2cf2f1 100644 --- a/indra/newview/lltoolbarview.cpp +++ b/indra/newview/lltoolbarview.cpp @@ -73,6 +73,7 @@ LLToolBarView::ToolbarSet::ToolbarSet()  LLToolBarView::LLToolBarView(const LLToolBarView::Params& p)  :	LLUICtrl(p),  	mDragStarted(false), +	mShowToolbars(true),  	mDragToolbarButton(NULL),  	mToolbarsLoaded(false)  { @@ -532,7 +533,9 @@ void LLToolBarView::draw()  	for (S32 i = TOOLBAR_FIRST; i <= TOOLBAR_LAST; i++)  	{ -		mToolbars[i]->getParent()->setVisible(mToolbars[i]->hasButtons() || isToolDragged()); +		mToolbars[i]->getParent()->setVisible(mShowToolbars  +											&& (mToolbars[i]->hasButtons()  +											|| isToolDragged()));  	}  	// Draw drop zones if drop of a tool is active @@ -661,10 +664,7 @@ void LLToolBarView::resetDragTool(LLToolBarButton* toolbarButton)  void LLToolBarView::setToolBarsVisible(bool visible)  { -	for (S32 i = TOOLBAR_FIRST; i <= TOOLBAR_LAST; i++) -	{ -		mToolbars[i]->getParent()->setVisible(visible); -	} +	mShowToolbars = visible;  }  bool LLToolBarView::isModified() const diff --git a/indra/newview/lltoolbarview.h b/indra/newview/lltoolbarview.h index b99e8bc28d..be66bcae36 100644 --- a/indra/newview/lltoolbarview.h +++ b/indra/newview/lltoolbarview.h @@ -129,6 +129,7 @@ private:  	bool				mDragStarted;  	LLToolBarButton*	mDragToolbarButton; +	bool				mShowToolbars;  };  extern LLToolBarView* gToolBarView; diff --git a/indra/newview/llviewerfloaterreg.cpp b/indra/newview/llviewerfloaterreg.cpp index 24070018c2..01650881f9 100644 --- a/indra/newview/llviewerfloaterreg.cpp +++ b/indra/newview/llviewerfloaterreg.cpp @@ -65,6 +65,7 @@  #include "llfloaterhardwaresettings.h"  #include "llfloaterhelpbrowser.h"  #include "llfloaterwebcontent.h" +#include "llfloaterwebprofile.h"  #include "llfloatermediasettings.h"  #include "llfloaterhud.h"  #include "llfloaterimagepreview.h" @@ -287,8 +288,8 @@ void LLViewerFloaterReg::registerFloaters()  	LLFloaterReg::add("stop_queue", "floater_script_queue.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterNotRunQueue>);  	LLFloaterReg::add("snapshot", "floater_snapshot.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterSnapshot>);  	LLFloaterReg::add("search", "floater_search.xml", (LLFloaterBuildFunc)&LLFloaterReg::build<LLFloaterSearch>); -	LLFloaterReg::add("my_profile", "floater_my_web_profile.xml", (LLFloaterBuildFunc)&LLFloaterWebContent::create); -	LLFloaterReg::add("profile", "floater_web_profile.xml", (LLFloaterBuildFunc)&LLFloaterWebContent::create);	 +	LLFloaterReg::add("my_profile", "floater_my_web_profile.xml", (LLFloaterBuildFunc)&LLFloaterWebProfile::create); +	LLFloaterReg::add("profile", "floater_web_profile.xml", (LLFloaterBuildFunc)&LLFloaterWebProfile::create);  	LLFloaterReg::add("how_to", "floater_how_to.xml", (LLFloaterBuildFunc)&LLFloaterWebContent::create);	 diff --git a/indra/newview/llviewerwindow.cpp b/indra/newview/llviewerwindow.cpp index eb72a8657f..31dfa1923c 100644 --- a/indra/newview/llviewerwindow.cpp +++ b/indra/newview/llviewerwindow.cpp @@ -2140,7 +2140,6 @@ void LLViewerWindow::reshape(S32 width, S32 height)  		sendShapeToSim();  		// store new settings for the mode we are in, regardless -		// Only save size if not maximized  		BOOL maximized = mWindow->getMaximized();  		gSavedSettings.setBOOL("WindowMaximized", maximized); @@ -2150,6 +2149,10 @@ void LLViewerWindow::reshape(S32 width, S32 height)  			U32 min_window_height=gSavedSettings.getU32("MinWindowHeight");  			// tell the OS specific window code about min window size  			mWindow->setMinSize(min_window_width, min_window_height); + +			// Only save size if not maximized +			gSavedSettings.setU32("WindowWidth", mWindowRectRaw.getWidth()); +			gSavedSettings.setU32("WindowHeight", mWindowRectRaw.getHeight());  		}  		LLViewerStats::getInstance()->setStat(LLViewerStats::ST_WINDOW_WIDTH, (F64)width); diff --git a/indra/newview/skins/default/xui/en/floater_activeim.xml b/indra/newview/skins/default/xui/en/floater_activeim.xml index 670c528f08..b79c5d9a19 100644 --- a/indra/newview/skins/default/xui/en/floater_activeim.xml +++ b/indra/newview/skins/default/xui/en/floater_activeim.xml @@ -6,7 +6,6 @@  	title="ACTIVE IM"  	height="22"  	width="320" -	follows="right|bottom"  	background_visible="true"  	can_close="true"  	can_dock="true" diff --git a/indra/newview/skins/default/xui/en/floater_build_options.xml b/indra/newview/skins/default/xui/en/floater_build_options.xml index afb7917043..35918e9705 100644 --- a/indra/newview/skins/default/xui/en/floater_build_options.xml +++ b/indra/newview/skins/default/xui/en/floater_build_options.xml @@ -1,7 +1,6 @@  <?xml version="1.0" encoding="utf-8" standalone="yes" ?>  <floater   legacy_header_height="18" - follows="right"   height="198"   layout="topleft"   name="build options floater" diff --git a/indra/newview/skins/default/xui/en/floater_camera.xml b/indra/newview/skins/default/xui/en/floater_camera.xml index 21fcc50f6e..4673c6def5 100644 --- a/indra/newview/skins/default/xui/en/floater_camera.xml +++ b/indra/newview/skins/default/xui/en/floater_camera.xml @@ -6,7 +6,6 @@   legacy_header_height="18"   can_minimize="true"   can_close="true" - follows="bottom"   height="164"   layout="topleft"   name="camera_floater" diff --git a/indra/newview/skins/default/xui/en/floater_color_picker.xml b/indra/newview/skins/default/xui/en/floater_color_picker.xml index 421f3a72c6..e06d10606a 100644 --- a/indra/newview/skins/default/xui/en/floater_color_picker.xml +++ b/indra/newview/skins/default/xui/en/floater_color_picker.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   can_minimize="false" - follows="left|top"   height="380"   layout="topleft"   name="ColorPicker" diff --git a/indra/newview/skins/default/xui/en/floater_event.xml b/indra/newview/skins/default/xui/en/floater_event.xml index 7ed020f832..cf61b7d24d 100644 --- a/indra/newview/skins/default/xui/en/floater_event.xml +++ b/indra/newview/skins/default/xui/en/floater_event.xml @@ -1,6 +1,5 @@  <?xml version="1.0" encoding="utf-8" standalone="yes" ?>  <floater - follows="all"   height="400"   can_resize="true"   help_topic="event_details" diff --git a/indra/newview/skins/default/xui/en/floater_gesture.xml b/indra/newview/skins/default/xui/en/floater_gesture.xml index a941734358..b96a94a849 100644 --- a/indra/newview/skins/default/xui/en/floater_gesture.xml +++ b/indra/newview/skins/default/xui/en/floater_gesture.xml @@ -9,7 +9,6 @@   help_topic="gestures"   title="GESTURES"   background_visible="true" - follows="all"   label="Places"   layout="topleft"   min_height="350" diff --git a/indra/newview/skins/default/xui/en/floater_im_session.xml b/indra/newview/skins/default/xui/en/floater_im_session.xml index 0ef6709f11..5fe8f3c114 100644 --- a/indra/newview/skins/default/xui/en/floater_im_session.xml +++ b/indra/newview/skins/default/xui/en/floater_im_session.xml @@ -3,7 +3,6 @@   legacy_header_height="18"   background_visible="true"   default_tab_group="1" - follows="all"   height="350"   help_topic="floater_im_box"   layout="topleft" diff --git a/indra/newview/skins/default/xui/en/floater_live_lsleditor.xml b/indra/newview/skins/default/xui/en/floater_live_lsleditor.xml index 1f192f9b28..5cd7cd196d 100644 --- a/indra/newview/skins/default/xui/en/floater_live_lsleditor.xml +++ b/indra/newview/skins/default/xui/en/floater_live_lsleditor.xml @@ -4,7 +4,6 @@   bevel_style="none"   border_style="line"   can_resize="true" - follows="left|top"   height="580"   layout="topleft"   min_height="271" diff --git a/indra/newview/skins/default/xui/en/floater_lsl_guide.xml b/indra/newview/skins/default/xui/en/floater_lsl_guide.xml index c9d87f158f..e9676777f4 100644 --- a/indra/newview/skins/default/xui/en/floater_lsl_guide.xml +++ b/indra/newview/skins/default/xui/en/floater_lsl_guide.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   can_resize="true" - follows="left|top"   height="400"   layout="topleft"   min_height="271" diff --git a/indra/newview/skins/default/xui/en/floater_map.xml b/indra/newview/skins/default/xui/en/floater_map.xml index 31972d4122..3eeebcf120 100644 --- a/indra/newview/skins/default/xui/en/floater_map.xml +++ b/indra/newview/skins/default/xui/en/floater_map.xml @@ -4,7 +4,6 @@   can_minimize="true"    can_resize="true"   chrome="true" - follows="top|right"   height="200"   layout="topleft"   min_height="128" diff --git a/indra/newview/skins/default/xui/en/floater_mem_leaking.xml b/indra/newview/skins/default/xui/en/floater_mem_leaking.xml index 28a29c42aa..fb7d09a21e 100644 --- a/indra/newview/skins/default/xui/en/floater_mem_leaking.xml +++ b/indra/newview/skins/default/xui/en/floater_mem_leaking.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   can_minimize="false" - follows="left|top"   height="175"   layout="topleft"   name="MemLeak" diff --git a/indra/newview/skins/default/xui/en/floater_moveview.xml b/indra/newview/skins/default/xui/en/floater_moveview.xml index 4d685ac8a9..065dab0413 100644 --- a/indra/newview/skins/default/xui/en/floater_moveview.xml +++ b/indra/newview/skins/default/xui/en/floater_moveview.xml @@ -7,7 +7,6 @@   can_dock="false"   can_minimize="true"   can_close="true" - follows="bottom"   height="110"   layout="topleft"   name="move_floater" diff --git a/indra/newview/skins/default/xui/en/floater_preview_notecard.xml b/indra/newview/skins/default/xui/en/floater_preview_notecard.xml index f35628f8e5..be3b2d179d 100644 --- a/indra/newview/skins/default/xui/en/floater_preview_notecard.xml +++ b/indra/newview/skins/default/xui/en/floater_preview_notecard.xml @@ -3,7 +3,6 @@   legacy_header_height="18"   can_resize="true"   default_tab_group="1" - follows="left|top"   height="361"   layout="topleft"   min_height="243" diff --git a/indra/newview/skins/default/xui/en/floater_preview_texture.xml b/indra/newview/skins/default/xui/en/floater_preview_texture.xml index 92d3a6702c..137e278ddc 100644 --- a/indra/newview/skins/default/xui/en/floater_preview_texture.xml +++ b/indra/newview/skins/default/xui/en/floater_preview_texture.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   can_resize="true" - follows="left|top"   height="350"   layout="topleft"   min_height="200" diff --git a/indra/newview/skins/default/xui/en/floater_script.xml b/indra/newview/skins/default/xui/en/floater_script.xml index 73e6d6147a..bd4edb81c8 100644 --- a/indra/newview/skins/default/xui/en/floater_script.xml +++ b/indra/newview/skins/default/xui/en/floater_script.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   background_visible="true" - follows="left|top|right|bottom"   height="250"   layout="topleft"   name="script_floater" diff --git a/indra/newview/skins/default/xui/en/floater_script_debug_panel.xml b/indra/newview/skins/default/xui/en/floater_script_debug_panel.xml index ce96ea232e..b5dd2f97b9 100644 --- a/indra/newview/skins/default/xui/en/floater_script_debug_panel.xml +++ b/indra/newview/skins/default/xui/en/floater_script_debug_panel.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   can_resize="true" - follows="left|top|right|bottom"   height="200"   layout="topleft"   name="script" diff --git a/indra/newview/skins/default/xui/en/floater_snapshot.xml b/indra/newview/skins/default/xui/en/floater_snapshot.xml index 61f2e7e72d..e71b714f25 100644 --- a/indra/newview/skins/default/xui/en/floater_snapshot.xml +++ b/indra/newview/skins/default/xui/en/floater_snapshot.xml @@ -4,7 +4,6 @@   legacy_header_height="18"   can_minimize="true"   can_close="true" - follows="left|top"   height="500"   layout="topleft"   name="Snapshot" diff --git a/indra/newview/skins/default/xui/en/floater_stats.xml b/indra/newview/skins/default/xui/en/floater_stats.xml index 406114294d..2fd932786b 100644 --- a/indra/newview/skins/default/xui/en/floater_stats.xml +++ b/indra/newview/skins/default/xui/en/floater_stats.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   can_resize="true" - follows="top|right"   height="400"   layout="topleft"   name="Statistics" diff --git a/indra/newview/skins/default/xui/en/floater_sys_well.xml b/indra/newview/skins/default/xui/en/floater_sys_well.xml index 9b96a5badc..ecedb27438 100644 --- a/indra/newview/skins/default/xui/en/floater_sys_well.xml +++ b/indra/newview/skins/default/xui/en/floater_sys_well.xml @@ -2,7 +2,6 @@  <floater   legacy_header_height="18"   bevel_style="in" - follows="right|bottom"   layout="topleft"   name="sys_well_window"   help_topic="notification_chiclet" diff --git a/indra/newview/skins/default/xui/en/floater_tools.xml b/indra/newview/skins/default/xui/en/floater_tools.xml index aa18c6e039..f9147ea650 100644 --- a/indra/newview/skins/default/xui/en/floater_tools.xml +++ b/indra/newview/skins/default/xui/en/floater_tools.xml @@ -2,7 +2,6 @@  <floater   open_positioning="cascading"   legacy_header_height="18" - follows="left|top|right"   height="580"   layout="topleft"   bg_opaque_image="Window_NoTitle_Foreground" diff --git a/indra/newview/skins/default/xui/en/floater_voice_effect.xml b/indra/newview/skins/default/xui/en/floater_voice_effect.xml index 2c754cd8d0..77fb21e27c 100644 --- a/indra/newview/skins/default/xui/en/floater_voice_effect.xml +++ b/indra/newview/skins/default/xui/en/floater_voice_effect.xml @@ -7,7 +7,6 @@   help_topic="voice_effects"   title="VOICE MORPHING"   background_visible="true" - follows="all"   label="Places"   layout="topleft"   min_height="360" diff --git a/indra/newview/skins/default/xui/en/panel_toast.xml b/indra/newview/skins/default/xui/en/panel_toast.xml index b9e714dd30..062c403a26 100644 --- a/indra/newview/skins/default/xui/en/panel_toast.xml +++ b/indra/newview/skins/default/xui/en/panel_toast.xml @@ -21,7 +21,6 @@   width="310"   left="0"   top="0" - follows="right|bottom"   background_visible="false"   bg_opaque_image="Toast_Over"   bg_alpha_image="Toast_Background" | 
