diff options
| author | maksymsproductengine <maksymsproductengine@lindenlab.com> | 2013-04-16 04:55:09 +0300 | 
|---|---|---|
| committer | maksymsproductengine <maksymsproductengine@lindenlab.com> | 2013-04-16 04:55:09 +0300 | 
| commit | 0193a7b74ccc09788e8d2503244f30ac231546cc (patch) | |
| tree | 1b51e66abc369e9b88982ddeb1f4891a14832e16 /indra | |
| parent | 4106d203e016077fe9e233da8fbaa9e2e9a24403 (diff) | |
CHUI-808 FIXED Draggable separator between conversations and message pane is not discoverable:
 - final solution;
Diffstat (limited to 'indra')
| -rw-r--r-- | indra/llui/lllayoutstack.cpp | 103 | ||||
| -rw-r--r-- | indra/llui/lllayoutstack.h | 10 | ||||
| -rw-r--r-- | indra/llui/llresizebar.cpp | 110 | ||||
| -rw-r--r-- | indra/llui/llresizebar.h | 52 | ||||
| -rw-r--r-- | indra/newview/llfloaterimcontainer.cpp | 15 | ||||
| -rw-r--r-- | indra/newview/llfloaterimsessiontab.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/skins/default/colors.xml | 15 | ||||
| -rw-r--r-- | indra/newview/skins/default/textures/textures.xml | 3 | ||||
| -rw-r--r-- | indra/newview/skins/default/textures/widgets/horizontal_drag_handle.png | bin | 0 -> 197 bytes | |||
| -rw-r--r-- | indra/newview/skins/default/textures/widgets/vertical_drag_handle.png | bin | 0 -> 196 bytes | |||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_im_container.xml | 100 | ||||
| -rw-r--r-- | indra/newview/skins/default/xui/en/floater_im_session.xml | 88 | 
12 files changed, 339 insertions, 159 deletions
| diff --git a/indra/llui/lllayoutstack.cpp b/indra/llui/lllayoutstack.cpp index e642883991..c89c0203b4 100644 --- a/indra/llui/lllayoutstack.cpp +++ b/indra/llui/lllayoutstack.cpp @@ -214,8 +214,15 @@ LLLayoutStack::Params::Params()  	open_time_constant("open_time_constant", 0.02f),  	close_time_constant("close_time_constant", 0.03f),  	resize_bar_overlap("resize_bar_overlap", 1), -	border_size("border_size", LLCachedControl<S32>(*LLUI::sSettingGroups["config"], "UIResizeBarHeight", 0)) -{} +	border_size("border_size", LLCachedControl<S32>(*LLUI::sSettingGroups["config"], "UIResizeBarHeight", 0)), +	show_drag_handle("show_drag_handle", false), +	drag_handle_first_indent("drag_handle_first_indent", 0), +	drag_handle_second_indent("drag_handle_second_indent", 0), +	drag_handle_thickness("drag_handle_thickness", 5), +	drag_handle_shift("drag_handle_shift", 2) +{ +	addSynonym(border_size, "drag_handle_gap"); +}  LLLayoutStack::LLLayoutStack(const LLLayoutStack::Params& p)   :	LLView(p), @@ -227,8 +234,14 @@ LLLayoutStack::LLLayoutStack(const LLLayoutStack::Params& p)  	mClip(p.clip),  	mOpenTimeConstant(p.open_time_constant),  	mCloseTimeConstant(p.close_time_constant), -	mResizeBarOverlap(p.resize_bar_overlap) -{} +	mResizeBarOverlap(p.resize_bar_overlap), +	mShowDragHandle(p.show_drag_handle), +	mDragHandleFirstIndent(p.drag_handle_first_indent), +	mDragHandleSecondIndent(p.drag_handle_second_indent), +	mDragHandleThickness(p.drag_handle_thickness), +	mDragHandleShift(p.drag_handle_shift) +{ +}  LLLayoutStack::~LLLayoutStack()  { @@ -262,6 +275,26 @@ void LLLayoutStack::draw()  			drawChild(panelp, 0, 0, !clip_rect.isEmpty());  		}  	} + +	const LLView::child_list_t * child_listp = getChildList(); +	BOOST_FOREACH(LLView * childp, * child_listp) +	{ +		LLResizeBar * resize_barp = dynamic_cast<LLResizeBar*>(childp); +		if (resize_barp && resize_barp->isShowDragHandle() && resize_barp->getVisible() && resize_barp->getRect().isValid()) +		{ +			LLRect screen_rect = resize_barp->calcScreenRect(); +			if (LLUI::getRootView()->getLocalRect().overlaps(screen_rect) && LLUI::sDirtyRect.overlaps(screen_rect)) +			{ +				LLUI::pushMatrix(); +				{ +					const LLRect& rb_rect(resize_barp->getRect()); +					LLUI::translate(rb_rect.mLeft, rb_rect.mBottom); +					resize_barp->draw(); +				} +				LLUI::popMatrix(); +			} +		} +	}  }  void LLLayoutStack::removeChild(LLView* view) @@ -390,7 +423,6 @@ void LLLayoutStack::updateLayout()  	BOOST_FOREACH(LLLayoutPanel* panelp, mPanels)  	{  		F32 panel_dim = llmax(panelp->getExpandedMinDim(), panelp->mTargetDim); -		F32 panel_visible_dim = panelp->getVisibleDim();  		LLRect panel_rect;  		if (mOrientation == HORIZONTAL) @@ -407,27 +439,61 @@ void LLLayoutStack::updateLayout()  										getRect().getWidth(),  										llround(panel_dim));  		} -		panelp->setIgnoreReshape(true); -		panelp->setShape(panel_rect); -		panelp->setIgnoreReshape(false);  		LLRect resize_bar_rect(panel_rect); - +		LLResizeBar * resize_barp = panelp->getResizeBar(); +		bool show_drag_handle = resize_barp->isShowDragHandle();  		F32 panel_spacing = (F32)mPanelSpacing * panelp->getVisibleAmount(); +		F32 panel_visible_dim = panelp->getVisibleDim(); +		S32 panel_spacing_round = (S32)(llround(panel_spacing)); +  		if (mOrientation == HORIZONTAL)  		{ -			resize_bar_rect.mLeft = panel_rect.mRight - mResizeBarOverlap; -			resize_bar_rect.mRight = panel_rect.mRight + (S32)(llround(panel_spacing)) + mResizeBarOverlap; -  			cur_pos += panel_visible_dim + panel_spacing; + +			if (show_drag_handle && panel_spacing_round > mDragHandleThickness) +			{ +				resize_bar_rect.mLeft = panel_rect.mRight + mDragHandleShift; +				resize_bar_rect.mRight = resize_bar_rect.mLeft + mDragHandleThickness; +			} +			else +			{ +				resize_bar_rect.mLeft = panel_rect.mRight - mResizeBarOverlap; +				resize_bar_rect.mRight = panel_rect.mRight + panel_spacing_round + mResizeBarOverlap; +			} + +			if (show_drag_handle) +			{ +				resize_bar_rect.mBottom += mDragHandleSecondIndent; +				resize_bar_rect.mTop -= mDragHandleFirstIndent; +			} +  		}  		else //VERTICAL  		{ -			resize_bar_rect.mTop = panel_rect.mBottom + mResizeBarOverlap; -			resize_bar_rect.mBottom = panel_rect.mBottom - (S32)(llround(panel_spacing)) - mResizeBarOverlap; -  			cur_pos -= panel_visible_dim + panel_spacing; + +			if (show_drag_handle && panel_spacing_round > mDragHandleThickness) +			{ +				resize_bar_rect.mTop = panel_rect.mBottom - mDragHandleShift; +				resize_bar_rect.mBottom = resize_bar_rect.mTop - mDragHandleThickness; +			} +			else +			{ +				resize_bar_rect.mTop = panel_rect.mBottom + mResizeBarOverlap; +				resize_bar_rect.mBottom = panel_rect.mBottom - panel_spacing_round - mResizeBarOverlap; +			} + +			if (show_drag_handle) +			{ +				resize_bar_rect.mLeft += mDragHandleFirstIndent; +				resize_bar_rect.mRight -= mDragHandleSecondIndent; +			}  		} + +		panelp->setIgnoreReshape(true); +		panelp->setShape(panel_rect); +		panelp->setIgnoreReshape(false);  		panelp->mResizeBar->setShape(resize_bar_rect);  	} @@ -475,15 +541,13 @@ void LLLayoutStack::createResizeBar(LLLayoutPanel* panelp)  	{  		if (lp->mResizeBar == NULL)  		{ -			LLResizeBar::Side side = (mOrientation == HORIZONTAL) ? LLResizeBar::RIGHT : LLResizeBar::BOTTOM; -			LLRect resize_bar_rect = getRect(); -  			LLResizeBar::Params resize_params;  			resize_params.name("resize");  			resize_params.resizing_view(lp);  			resize_params.min_size(lp->getRelevantMinDim()); -			resize_params.side(side); +			resize_params.side((mOrientation == HORIZONTAL) ? LLResizeBar::RIGHT : LLResizeBar::BOTTOM);  			resize_params.snapping_enabled(false); +			resize_params.show_drag_handle(mShowDragHandle);  			LLResizeBar* resize_bar = LLUICtrlFactory::create<LLResizeBar>(resize_params);  			lp->mResizeBar = resize_bar;  			LLView::addChild(resize_bar, 0); @@ -865,3 +929,4 @@ void LLLayoutStack::updateResizeBarLimits()  		previous_visible_panelp = visible_panelp;  	}  } + diff --git a/indra/llui/lllayoutstack.h b/indra/llui/lllayoutstack.h index 02c664f1a0..b570974bd6 100644 --- a/indra/llui/lllayoutstack.h +++ b/indra/llui/lllayoutstack.h @@ -62,6 +62,11 @@ public:  		Optional<F32>			open_time_constant,  								close_time_constant;  		Optional<S32>			resize_bar_overlap; +		Optional<bool>			show_drag_handle; +		Optional<S32>			drag_handle_first_indent; +		Optional<S32>			drag_handle_second_indent; +		Optional<S32>			drag_handle_thickness; +		Optional<S32>			drag_handle_shift;  		Params();  	}; @@ -126,6 +131,11 @@ private:  	F32  mCloseTimeConstant;  	bool mNeedsLayout;  	S32  mResizeBarOverlap; +	bool mShowDragHandle; +	S32  mDragHandleFirstIndent; +	S32  mDragHandleSecondIndent; +	S32  mDragHandleThickness; +	S32  mDragHandleShift;  }; // end class LLLayoutStack diff --git a/indra/llui/llresizebar.cpp b/indra/llui/llresizebar.cpp index 15e56cbfe5..cfdc951542 100644 --- a/indra/llui/llresizebar.cpp +++ b/indra/llui/llresizebar.cpp @@ -28,14 +28,53 @@  #include "llresizebar.h" +#include "lllocalcliprect.h"  #include "llmath.h"  #include "llui.h"  #include "llmenugl.h"  #include "llfocusmgr.h"  #include "llwindow.h" +class LLImagePanel : public LLPanel +{ +public: +	struct Params :	public LLInitParam::Block<Params, LLPanel::Params> +	{ +		Optional<bool> horizontal; +		Params() : horizontal("horizontal", false) {} +	}; +	LLImagePanel(const Params& p) : LLPanel(p), mHorizontal(p.horizontal) {} +	virtual ~LLImagePanel() {} + +	void draw() +	{ +		const LLRect& parent_rect = getParent()->getRect(); +		const LLRect& rect = getRect(); +		LLRect clip_rect( -rect.mLeft, parent_rect.getHeight() - rect.mBottom - 2 +						 , parent_rect.getWidth() - rect.mLeft - (mHorizontal ? 2 : 0), -rect.mBottom); +		LLLocalClipRect clip(clip_rect); +		LLPanel::draw(); +	} + +private: +	bool mHorizontal; +}; + +static LLDefaultChildRegistry::Register<LLImagePanel> t1("resize_bar_image_panel"); + +LLResizeBar::Params::Params() +:	max_size("max_size", S32_MAX), +	snapping_enabled("snapping_enabled", true), +	resizing_view("resizing_view"), +	side("side"), +	allow_double_click_snapping("allow_double_click_snapping", true), +	show_drag_handle("show_drag_handle", false) +{ +	name = "resize_bar"; +} +  LLResizeBar::LLResizeBar(const LLResizeBar::Params& p) -:	LLView(p), +:	LLPanel(p),  	mDragLastScreenX( 0 ),  	mDragLastScreenY( 0 ),  	mLastMouseScreenX( 0 ), @@ -46,7 +85,9 @@ LLResizeBar::LLResizeBar(const LLResizeBar::Params& p)  	mSnappingEnabled(p.snapping_enabled),  	mAllowDoubleClickSnapping(p.allow_double_click_snapping),  	mResizingView(p.resizing_view), -	mResizeListener(NULL) +	mResizeListener(NULL), +	mShowDragHandle(p.show_drag_handle), +	mImagePanel(NULL)  {  	setFollowsNone();  	// set up some generically good follow code. @@ -75,8 +116,37 @@ LLResizeBar::LLResizeBar(const LLResizeBar::Params& p)  	default:  		break;  	} + +	if (mShowDragHandle) +	{ +		LLViewBorder::Params border_params; +		border_params.border_thickness = 1; +		border_params.highlight_light_color = LLUIColorTable::instance().getColor("ResizebarBorderlight"); +		border_params.shadow_dark_color = LLUIColorTable::instance().getColor("ResizebarBorderDark"); + +		addBorder(border_params); +		setBorderVisible(TRUE); + +		LLImagePanel::Params image_panel; +		mDragHandleImage = LLUI::getUIImage(LLResizeBar::RIGHT == mSide ? "Vertical Drag Handle" : "Horizontal Drag Handle"); +		image_panel.bg_alpha_image = mDragHandleImage; +		image_panel.background_visible = true; +		image_panel.horizontal = (LLResizeBar::BOTTOM == mSide); +		mImagePanel = LLUICtrlFactory::create<LLImagePanel>(image_panel); +		setImagePanel(mImagePanel); +	}  } +BOOL LLResizeBar::postBuild() +{ +	if (mShowDragHandle) +	{ +		setBackgroundVisible(TRUE); +		setTransparentColor(LLUIColorTable::instance().getColor("ResizebarBody")); +	} + +	return LLPanel::postBuild(); +}  BOOL LLResizeBar::handleMouseDown(S32 x, S32 y, MASK mask)  { @@ -342,3 +412,39 @@ BOOL LLResizeBar::handleDoubleClick(S32 x, S32 y, MASK mask)  	return TRUE;  } +void LLResizeBar::setImagePanel(LLPanel * panelp) +{ +	const LLView::child_list_t * children = getChildList(); +	if (getChildCount() == 2) +	{ +		LLPanel * image_panelp = dynamic_cast<LLPanel*>(children->back()); +		if (image_panelp) +		{ +			removeChild(image_panelp); +			delete image_panelp; +		} +	} + +	addChild(panelp); +	sendChildToBack(panelp); +} + +LLPanel * LLResizeBar::getImagePanel() const +{ +	return getChildCount() > 0 ? (LLPanel *)getChildList()->back() : NULL; +} + +void LLResizeBar::draw() +{ +	if (mShowDragHandle) +	{ +		S32 image_width = mDragHandleImage->getTextureWidth(); +		S32 image_height = mDragHandleImage->getTextureHeight(); +		const LLRect& panel_rect = getRect(); +		S32 image_left = (panel_rect.getWidth() - image_width) / 2 - 1; +		S32 image_bottom = (panel_rect.getHeight() - image_height) / 2; +		mImagePanel->setRect(LLRect(image_left, image_bottom + image_height, image_left + image_width, image_bottom)); +	} + +	LLPanel::draw(); +} diff --git a/indra/llui/llresizebar.h b/indra/llui/llresizebar.h index 8190a95a71..bcf8ea0b40 100644 --- a/indra/llui/llresizebar.h +++ b/indra/llui/llresizebar.h @@ -27,15 +27,14 @@  #ifndef LL_RESIZEBAR_H  #define LL_RESIZEBAR_H -#include "llview.h" -#include "llcoord.h" +#include "llpanel.h" -class LLResizeBar : public LLView +class LLResizeBar : public LLPanel  {  public:  	enum Side { LEFT, TOP, RIGHT, BOTTOM }; -	struct Params : public LLInitParam::Block<Params, LLView::Params> +	struct Params : public LLInitParam::Block<Params, LLPanel::Params>  	{  		Mandatory<LLView*> resizing_view;  		Mandatory<Side>	side; @@ -44,24 +43,19 @@ public:  		Optional<S32>	max_size;  		Optional<bool>	snapping_enabled;  		Optional<bool>	allow_double_click_snapping; +		Optional<bool>	show_drag_handle; -		Params() -		:	max_size("max_size", S32_MAX), -			snapping_enabled("snapping_enabled", true), -			resizing_view("resizing_view"), -			side("side"), -			allow_double_click_snapping("allow_double_click_snapping", true) -		{ -			name = "resize_bar"; -		} +		Params();  	};  protected:  	LLResizeBar(const LLResizeBar::Params& p);  	friend class LLUICtrlFactory; + +	/*virtual*/ BOOL postBuild();  public: -//	virtual void	draw();  No appearance +	virtual void	draw();  	virtual BOOL	handleHover(S32 x, S32 y, MASK mask);  	virtual BOOL	handleMouseDown(S32 x, S32 y, MASK mask);  	virtual BOOL	handleMouseUp(S32 x, S32 y, MASK mask); @@ -72,20 +66,26 @@ public:  	void			setAllowDoubleClickSnapping(BOOL allow) { mAllowDoubleClickSnapping = allow; }  	bool			canResize() { return getEnabled() && mMaxSize > mMinSize; }  	void            setResizeListener(boost::function<void(void*)> listener) {mResizeListener = listener;} +	BOOL			isShowDragHandle() const { return mShowDragHandle; } +	void			setImagePanel(LLPanel * panelp); +	LLPanel *		getImagePanel() const;  private: -	S32				mDragLastScreenX; -	S32				mDragLastScreenY; -	S32				mLastMouseScreenX; -	S32				mLastMouseScreenY; -	LLCoordGL		mLastMouseDir; -	S32				mMinSize; -	S32				mMaxSize; -	const Side		mSide; -	BOOL			mSnappingEnabled; -	BOOL			mAllowDoubleClickSnapping; -	LLView*			mResizingView; -	boost::function<void(void*)>  mResizeListener; +	S32								mDragLastScreenX; +	S32								mDragLastScreenY; +	S32								mLastMouseScreenX; +	S32								mLastMouseScreenY; +	LLCoordGL						mLastMouseDir; +	S32								mMinSize; +	S32								mMaxSize; +	const Side						mSide; +	BOOL							mSnappingEnabled; +	BOOL							mAllowDoubleClickSnapping; +	BOOL							mShowDragHandle; +	LLView*							mResizingView; +	boost::function<void(void*)>	mResizeListener; +	LLPointer<LLUIImage>			mDragHandleImage; +	LLPanel *						mImagePanel;  };  #endif  // LL_RESIZEBAR_H diff --git a/indra/newview/llfloaterimcontainer.cpp b/indra/newview/llfloaterimcontainer.cpp index 8575f6f055..043ffacffb 100644 --- a/indra/newview/llfloaterimcontainer.cpp +++ b/indra/newview/llfloaterimcontainer.cpp @@ -817,15 +817,12 @@ void LLFloaterIMContainer::assignResizeLimits()  	bool is_conv_pane_expanded = !mConversationsPane->isCollapsed();  	bool is_msg_pane_expanded = !mMessagesPane->isCollapsed(); -	// With two panels visible number of borders is three, because the borders -	// between the panels are merged into one -    S32 number_of_visible_borders = llmin((is_conv_pane_expanded? 2 : 0) + (is_msg_pane_expanded? 2 : 0), 3); -    S32 summary_width_of_visible_borders = number_of_visible_borders * LLPANEL_BORDER_WIDTH; -	S32 conv_pane_target_width = is_conv_pane_expanded? -			(is_msg_pane_expanded? -					mConversationsPane->getRect().getWidth() -					: mConversationsPane->getExpandedMinDim()) -			: mConversationsPane->getMinDim(); +    S32 summary_width_of_visible_borders = (is_msg_pane_expanded ? mConversationsStack->getPanelSpacing() : 0) + 1; + +	S32 conv_pane_target_width = is_conv_pane_expanded +		? ( is_msg_pane_expanded?mConversationsPane->getRect().getWidth():mConversationsPane->getExpandedMinDim() ) +		: mConversationsPane->getMinDim(); +  	S32 msg_pane_min_width  = is_msg_pane_expanded ? mMessagesPane->getExpandedMinDim() : 0;  	S32 new_min_width = conv_pane_target_width + msg_pane_min_width + summary_width_of_visible_borders; diff --git a/indra/newview/llfloaterimsessiontab.cpp b/indra/newview/llfloaterimsessiontab.cpp index ce6e639305..7d96fd0d6c 100644 --- a/indra/newview/llfloaterimsessiontab.cpp +++ b/indra/newview/llfloaterimsessiontab.cpp @@ -212,7 +212,7 @@ void LLFloaterIMSessionTab::assignResizeLimits()  	mRightPartPanel->setIgnoreReshape(is_participants_pane_collapsed);      S32 participants_pane_target_width = is_participants_pane_collapsed? -    		0 : (mParticipantListPanel->getRect().getWidth() + LLPANEL_BORDER_WIDTH); +    		0 : (mParticipantListPanel->getRect().getWidth() + mParticipantListAndHistoryStack->getPanelSpacing());      S32 new_min_width = participants_pane_target_width + mRightPartPanel->getExpandedMinDim() + mFloaterExtraWidth; diff --git a/indra/newview/skins/default/colors.xml b/indra/newview/skins/default/colors.xml index 0de217fc0d..b0dfd471e0 100644 --- a/indra/newview/skins/default/colors.xml +++ b/indra/newview/skins/default/colors.xml @@ -864,4 +864,19 @@    <color      name="blue"      value="0 0 1 1"/> + +  <!--Resize bar colors --> + +  <color +    name="ResizebarBorderlight" +    value="0.231 0.231 0.231 1"/> + +  <color +    name="ResizebarBorderDark" +    value="0.133 0.133 0.133 1"/> + +  <color +    name="ResizebarBody" +    value="0.208 0.208 0.208 1"/> +      </colors> diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index 93c9cb02cb..d99c3a8bda 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -776,4 +776,7 @@ with the same filename but different name    <texture name="Popup_Caution" file_name="icons/pop_up_caution.png"/>    <texture name="Camera_Drag_Dot" file_name="world/CameraDragDot.png"/>    <texture name="NavBar Separator" file_name="navbar/separator.png"/> + +  <texture name="Horizontal Drag Handle" file_name="widgets/horizontal_drag_handle.png"/> +  <texture name="Vertical Drag Handle" file_name="widgets/vertical_drag_handle.png"/>  </textures> diff --git a/indra/newview/skins/default/textures/widgets/horizontal_drag_handle.png b/indra/newview/skins/default/textures/widgets/horizontal_drag_handle.pngBinary files differ new file mode 100644 index 0000000000..642eac4065 --- /dev/null +++ b/indra/newview/skins/default/textures/widgets/horizontal_drag_handle.png diff --git a/indra/newview/skins/default/textures/widgets/vertical_drag_handle.png b/indra/newview/skins/default/textures/widgets/vertical_drag_handle.pngBinary files differ new file mode 100644 index 0000000000..b06b70cf36 --- /dev/null +++ b/indra/newview/skins/default/textures/widgets/vertical_drag_handle.png 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 65f623a47e..3e8c6c76cc 100644 --- a/indra/newview/skins/default/xui/en/floater_im_container.xml +++ b/indra/newview/skins/default/xui/en/floater_im_container.xml @@ -25,23 +25,27 @@      <layout_stack       animate="true"        bottom="-1" +     drag_handle_gap="6" +     drag_handle_first_indent="27" +     drag_handle_second_indent="10"       follows="all"       layout="topleft"       left="0"       name="conversations_stack"       orientation="horizontal"       right="-1" +     show_drag_handle="true"       top="0">          <layout_panel           auto_resize="false"           user_resize="true"                   name="conversations_layout_panel"           min_dim="38" -         expanded_min_dim="156"> +         expanded_min_dim="136">              <layout_stack               animate="false"                follows="left|top|right" -             height="35" +             height="27"               layout="topleft"               left="0"               name="conversations_pane_buttons_stack" @@ -50,7 +54,6 @@               top="0">                  <layout_panel                   auto_resize="true" -                 height="35"                   name="conversations_pane_buttons_expanded">                      <menu_button                       follows="top|left" @@ -64,7 +67,7 @@                       left="5"                       name="sort_btn"                       tool_tip="View/sort options" -                     top="5" +                     top="1"                       width="31" />                      <button                       follows="top|left" @@ -74,7 +77,7 @@                       image_selected="Toolbar_Middle_Selected"                       image_unselected="Toolbar_Middle_Off"                       layout="topleft" -                     top="5" +                     top="1"                       left_pad="2"                       name="add_btn"                       tool_tip="Start a new conversation" @@ -87,7 +90,7 @@                       image_selected="Toolbar_Middle_Selected"                       image_unselected="Toolbar_Middle_Off"                       layout="topleft" -                     top="5" +                     top="1"                       left_pad="2"                       name="speak_btn"                       tool_tip="Speak with people using your microphone" @@ -95,9 +98,8 @@                  </layout_panel>                  <layout_panel                   auto_resize="false" -                 height="35"                   name="conversations_pane_buttons_collapsed" -                 width="41"> +                 width="31">                      <button                       follows="right|top"                       height="25" @@ -106,8 +108,8 @@                       image_selected="Toolbar_Middle_Selected"                       image_unselected="Toolbar_Middle_Off"                       layout="topleft" -                     top="5" -                     left="1" +                     top="1" +                     left="0"                       name="expand_collapse_btn"                       tool_tip="Collapse/Expand this list"                       width="31" /> @@ -119,7 +121,7 @@               layout="topleft"               name="conversations_list_panel"               opaque="true" -             top="35" +             top_pad="0"               left="5"               right="-1"/>          </layout_panel> @@ -127,7 +129,7 @@           auto_resize="true"           user_resize="true"           name="messages_layout_panel" -         expanded_min_dim="222"> +         expanded_min_dim="232">              <panel_container               bottom="-1"               follows="all" @@ -136,44 +138,44 @@               name="im_box_tab_container"               right="-1"               top="0"> -             <panel -               bottom="-1" -               follows="all" -               layout="topleft" -               name="stub_panel" -               opaque="true" -               top_pad="0" -               left="0" -               right="-1"> -                 <button -                 follows="right|top" -                 height="25" -                 image_hover_unselected="Toolbar_Middle_Over" -                 image_overlay="Conv_toolbar_collapse" -                 image_selected="Toolbar_Middle_Selected" -                 image_unselected="Toolbar_Middle_Off" +                <panel +                 bottom="-1" +                 follows="all"                   layout="topleft" -                 top="5" -                 right="-10" -                 name="stub_collapse_btn" -                 tool_tip="Collapse this pane" -                 width="31" /> -                 <text -                   type="string" -                   clip_partial="false" -                   follows="left|top|right" -                   layout="topleft" -                   left="15" -                   right="-15" -                   name="stub_textbox" -                   top="25" -                   height="40" -                   valign="center" -                   parse_urls="true" -                   wrap="true"> -                   This conversation is in a separate window.   [secondlife:/// Bring it back.] -                 </text> -             </panel> +                 name="stub_panel" +                 opaque="true" +                 top_pad="0" +                 left="0" +                 right="-1"> +                    <button +                     follows="right|top" +                     height="25" +                     image_hover_unselected="Toolbar_Middle_Over" +                     image_overlay="Conv_toolbar_collapse" +                     image_selected="Toolbar_Middle_Selected" +                     image_unselected="Toolbar_Middle_Off" +                     layout="topleft" +                     top="1" +                     right="-10" +                     name="stub_collapse_btn" +                     tool_tip="Collapse this pane" +                     width="31" /> +                    <text +                     type="string" +                     clip_partial="false" +                     follows="left|top|right" +                     layout="topleft" +                     left="15" +                     right="-15" +                     name="stub_textbox" +                     top="25" +                     height="40" +                     valign="center" +                     parse_urls="true" +                     wrap="true"> +                         This conversation is in a separate window.   [secondlife:/// Bring it back.] +                    </text> +                </panel>              </panel_container>          </layout_panel>      </layout_stack> 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 f8ab2dbcbb..c0ed2e6a78 100644 --- a/indra/newview/skins/default/xui/en/floater_im_session.xml +++ b/indra/newview/skins/default/xui/en/floater_im_session.xml @@ -70,27 +70,23 @@       top="0"       left="0"       right="-1" -     bottom="-3"> +     bottom="-1">          <layout_stack           animate="false"  +         bottom="-1"           default_tab_group="2"           follows="all" -         right="-5" -         bottom="-1" -         top="0"           left="3" -         border_size="0"           layout="topleft" -         orientation="vertical"           name="main_stack" -         tab_group="1"> +         right="-3" +         orientation="vertical" +         tab_group="1" +         top="0">              <layout_panel               auto_resize="false" -             user_resize="false"               name="toolbar_panel" -             height="35" -             right="-1" -             left="1"> +             height="25">                  <menu_button                   menu_filename="menu_im_session_showmodes.xml"                   follows="top|left" @@ -103,7 +99,7 @@                   left="5"                   name="view_options_btn"                   tool_tip="View/sort options" -                 top="5" +                 top="1"                   width="31" />                  <menu_button                   menu_filename="menu_im_conversation.xml" @@ -114,7 +110,7 @@                   image_selected="Toolbar_Middle_Selected"                   image_unselected="Toolbar_Middle_Off"                   layout="topleft" -                 top="5" +                 top="1"                   left_pad="2"                   name="gear_btn"                   visible="false" @@ -129,7 +125,7 @@                   image_selected="Toolbar_Middle_Selected"                   image_unselected="Toolbar_Middle_Off"                   layout="topleft" -                 top="5" +                 top="1"                   left_pad="2"                   name="add_btn"                   tool_tip="Add someone to this conversation" @@ -142,7 +138,7 @@                   image_selected="Toolbar_Middle_Selected"                   image_unselected="Toolbar_Middle_Off"                   layout="topleft" -                 top="5" +                 top="1"                   left_pad="2"                   name="voice_call_btn"                   tool_tip="Open voice connection" @@ -167,8 +163,8 @@                   image_selected="Toolbar_Middle_Selected"                   image_unselected="Toolbar_Middle_Off"                   layout="topleft" -                 top="5" -                 right="-67" +                 top="1" +                 right="-70"                   name="close_btn"                   tool_tip="End this conversation"                   width="31" /> @@ -180,7 +176,7 @@                   image_selected="Toolbar_Middle_Selected"                   image_unselected="Toolbar_Middle_Off"                   layout="topleft" -                 top="5" +                 top="1"                   left_pad="2"                   name="expand_collapse_btn"                   tool_tip="Collapse/Expand this pane" @@ -195,20 +191,21 @@                   layout="topleft"                   left_pad="2"                   name="tear_off_btn" -                 top="5" +                 top="1"                   width="31" />              </layout_panel>              <layout_panel               name="body_panel" -             top="1" -             bottom="-1" -             auto_resize="true" -             user_resize="false"> +             height="235">                  <layout_stack                   default_tab_group="2" +                 drag_handle_gap="6" +                 drag_handle_first_indent="0" +                 drag_handle_second_indent="1"                   follows="all"                   orientation="horizontal"                   name="im_panels" +                 show_drag_handle="true"                   tab_group="1"                   top="0"                   right="-1" @@ -220,14 +217,12 @@                       min_dim="0"                       width="150"                        user_resize="true" -                     auto_resize="false"  -                     bottom="-1" /> +                     auto_resize="false" />                      <layout_panel                       default_tab_group="3"                       tab_group="2"                       name="right_part_holder" -                     min_width="221" -                     bottom="-1"> +                     min_width="221">                          <layout_stack                           animate="true"                            default_tab_group="2" @@ -236,7 +231,7 @@                           name="translate_and_chat_stack"                           tab_group="1"                           top="0" -                         left="0" +                         left="1"                           right="-1"                           bottom="-1">                              <layout_panel @@ -262,7 +257,7 @@                                   parse_highlights="true"                                   parse_urls="true"                                   right="-1" -                                 left="5" +                                 left="0"                                   top="0"                                   bottom="-1" />                              </layout_panel> @@ -271,12 +266,8 @@                  </layout_stack>              </layout_panel>              <layout_panel -             top_delta="0" -             top="0" -             height="30" -             bottom="-1" +             height="35"               auto_resize="false" -             user_resize="false"               name="chat_layout_panel">                  <layout_stack                   animate="false" @@ -285,15 +276,11 @@                   orientation="horizontal"                   name="input_panels"                   top="0" -                 bottom="-2" +                 bottom="-1"                   left="0"                   right="-1">                      <layout_panel -                     name="input_editor_layout_panel" -                     auto_resize="true" -                     user_resize="false" -                     top="0" -                     bottom="-1"> +                     name="input_editor_layout_panel">                          <chat_editor                           layout="topleft"                           expand_lines_count="5" @@ -306,32 +293,27 @@                           max_length="1023"                           spellcheck="true"                           tab_group="3" -                         top="1" -                         bottom="-2" -                         left="4" -                         right="-4" +                         bottom="-8" +                         left="5" +                         right="-5"                           wrap="true" />                      </layout_panel>                      <layout_panel                       auto_resize="false" -                     user_resize="false"                       name="input_button_layout_panel" -                     width="30" -                     top="0" -                     bottom="-1"> +                     width="32">                          <button -                         layout="topleft"                           left="1" -                         right="-1" -                         top="1" -                         height="22" +                         top="4" +                         height="25"                           follows="left|right|top"                           image_hover_unselected="Toolbar_Middle_Over"                           image_overlay="Conv_expand_one_line"                           image_selected="Toolbar_Middle_Selected"                           image_unselected="Toolbar_Middle_Off"                           name="minz_btn" -                         tool_tip="Shows/hides message panel" /> +                         tool_tip="Shows/hides message panel" +                         width="28" />                      </layout_panel>                  </layout_stack>              </layout_panel> | 
