From 1c5659b1caffa30d35e1ffc74d18c037f6332c31 Mon Sep 17 00:00:00 2001 From: maksymsproductengine Date: Thu, 25 Apr 2013 20:02:36 +0300 Subject: CHUI-941 FIXED [CHUIBUG]Inline input is not available in 3.5.0 --- indra/llui/llchatentry.cpp | 10 ---------- 1 file changed, 10 deletions(-) (limited to 'indra/llui/llchatentry.cpp') diff --git a/indra/llui/llchatentry.cpp b/indra/llui/llchatentry.cpp index 6a1b48a08a..f6c4b69308 100644 --- a/indra/llui/llchatentry.cpp +++ b/indra/llui/llchatentry.cpp @@ -163,16 +163,6 @@ bool LLChatEntry::useLabel() return !getLength() && !mLabel.empty(); } -void LLChatEntry::onFocusReceived() -{ - -} - -void LLChatEntry::onFocusLost() -{ - -} - BOOL LLChatEntry::handleSpecialKey(const KEY key, const MASK mask) { BOOL handled = FALSE; -- cgit v1.3 From 36a51f4927eb1bba511b73613a7f9baeddf467fd Mon Sep 17 00:00:00 2001 From: maksymsproductengine Date: Tue, 14 May 2013 01:30:23 +0300 Subject: CHUI-958 FIXED Log spam: "drawtext: Ran off Segmentation End" and To field in nearby chat blank when selected --- indra/llui/llchatentry.cpp | 12 ++++++++++++ indra/llui/llchatentry.h | 2 ++ indra/llui/lltexteditor.cpp | 7 +++++-- indra/llui/lltexteditor.h | 1 + 4 files changed, 20 insertions(+), 2 deletions(-) (limited to 'indra/llui/llchatentry.cpp') diff --git a/indra/llui/llchatentry.cpp b/indra/llui/llchatentry.cpp index f6c4b69308..416c3e65e4 100644 --- a/indra/llui/llchatentry.cpp +++ b/indra/llui/llchatentry.cpp @@ -163,6 +163,18 @@ bool LLChatEntry::useLabel() return !getLength() && !mLabel.empty(); } +void LLChatEntry::onFocusReceived() +{ + LLUICtrl::onFocusReceived(); + updateAllowingLanguageInput(); +} + +void LLChatEntry::onFocusLost() +{ + LLTextEditor::focusLostHelper(); + LLUICtrl::onFocusLost(); +} + BOOL LLChatEntry::handleSpecialKey(const KEY key, const MASK mask) { BOOL handled = FALSE; diff --git a/indra/llui/llchatentry.h b/indra/llui/llchatentry.h index a20a505ae1..3a5e87e8c8 100644 --- a/indra/llui/llchatentry.h +++ b/indra/llui/llchatentry.h @@ -62,6 +62,8 @@ public: virtual void draw(); virtual void onCommit(); + /*virtual*/ void onFocusReceived(); + /*virtual*/ void onFocusLost(); void enableSingleLineMode(bool single_line_mode); boost::signals2::connection setTextExpandedCallback(const commit_signal_t::slot_type& cb); diff --git a/indra/llui/lltexteditor.cpp b/indra/llui/lltexteditor.cpp index 834f213097..09caec7b73 100644 --- a/indra/llui/lltexteditor.cpp +++ b/indra/llui/lltexteditor.cpp @@ -1964,8 +1964,7 @@ void LLTextEditor::onFocusReceived() updateAllowingLanguageInput(); } -// virtual, from LLView -void LLTextEditor::onFocusLost() +void LLTextEditor::focusLostHelper() { updateAllowingLanguageInput(); @@ -1982,7 +1981,11 @@ void LLTextEditor::onFocusLost() // Make sure cursor is shown again getWindow()->showCursorFromMouseMove(); +} +void LLTextEditor::onFocusLost() +{ + focusLostHelper(); LLTextBase::onFocusLost(); } diff --git a/indra/llui/lltexteditor.h b/indra/llui/lltexteditor.h index 969e072704..13f63a17ef 100644 --- a/indra/llui/lltexteditor.h +++ b/indra/llui/lltexteditor.h @@ -255,6 +255,7 @@ protected: S32 insert(S32 pos, const LLWString &wstr, bool group_with_next_op, LLTextSegmentPtr segment); S32 remove(S32 pos, S32 length, bool group_with_next_op); + void focusLostHelper(); void updateAllowingLanguageInput(); BOOL hasPreeditString() const; -- cgit v1.3 From eff548310117faaa9b8489891f60b4f2742da4cb Mon Sep 17 00:00:00 2001 From: PavelK ProductEngine Date: Fri, 24 May 2013 18:19:10 +0300 Subject: CHUI-964 FIXED Oversized "To" input field hides actual IM text --- indra/llui/llchatentry.cpp | 2 +- indra/newview/skins/default/xui/en/floater_im_container.xml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'indra/llui/llchatentry.cpp') diff --git a/indra/llui/llchatentry.cpp b/indra/llui/llchatentry.cpp index 416c3e65e4..c7e732e0c9 100755 --- a/indra/llui/llchatentry.cpp +++ b/indra/llui/llchatentry.cpp @@ -62,9 +62,9 @@ void LLChatEntry::draw() { if(mIsExpandable) { + reflow(); expandText(); } - LLTextEditor::draw(); } 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 da016462db..1215efb7f9 100755 --- a/indra/newview/skins/default/xui/en/floater_im_container.xml +++ b/indra/newview/skins/default/xui/en/floater_im_container.xml @@ -4,6 +4,7 @@ can_minimize="true" can_resize="true" height="210" + min_height="210" layout="topleft" name="floater_im_box" help_topic="floater_im_box" -- cgit v1.3 From 0ada8944ee7427c2ea175602b6a139f2fa23cf73 Mon Sep 17 00:00:00 2001 From: PavelK ProductEngine Date: Wed, 5 Jun 2013 19:40:06 +0300 Subject: CHUI-964 ADD FIX Oversized "To" input field hides actual IM text --- indra/llui/llchatentry.cpp | 2 +- indra/llui/llchatentry.h | 2 +- indra/llui/lltextbase.cpp | 26 +++++++++++++++++++++++--- indra/llui/lltextbase.h | 2 +- 4 files changed, 26 insertions(+), 6 deletions(-) (limited to 'indra/llui/llchatentry.cpp') diff --git a/indra/llui/llchatentry.cpp b/indra/llui/llchatentry.cpp index c7e732e0c9..c04b70eb64 100755 --- a/indra/llui/llchatentry.cpp +++ b/indra/llui/llchatentry.cpp @@ -158,7 +158,7 @@ void LLChatEntry::onValueChange(S32 start, S32 end) resetLabel(); } -bool LLChatEntry::useLabel() +bool LLChatEntry::useLabel() const { return !getLength() && !mLabel.empty(); } diff --git a/indra/llui/llchatentry.h b/indra/llui/llchatentry.h index 3a5e87e8c8..e67f39b21b 100755 --- a/indra/llui/llchatentry.h +++ b/indra/llui/llchatentry.h @@ -56,7 +56,7 @@ protected: LLChatEntry(const Params& p); /*virtual*/ void beforeValueChange(); /*virtual*/ void onValueChange(S32 start, S32 end); - /*virtual*/ bool useLabel(); + /*virtual*/ bool useLabel() const; public: diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp index bf216b32d4..a53a38124c 100755 --- a/indra/llui/lltextbase.cpp +++ b/indra/llui/lltextbase.cpp @@ -1854,7 +1854,17 @@ LLTextBase::segment_set_t::iterator LLTextBase::getSegIterContaining(S32 index) static LLPointer index_segment = new LLIndexSegment(); - if (index > getLength()) { return mSegments.end(); } + S32 text_len = 0; + if (!useLabel()) + { + text_len = getLength(); + } + else + { + text_len = mLabel.getWString().length(); + } + + if (index > text_len) { return mSegments.end(); } // when there are no segments, we return the end iterator, which must be checked by caller if (mSegments.size() <= 1) { return mSegments.begin(); } @@ -1870,7 +1880,17 @@ LLTextBase::segment_set_t::const_iterator LLTextBase::getSegIterContaining(S32 i { static LLPointer index_segment = new LLIndexSegment(); - if (index > getLength()) { return mSegments.end(); } + S32 text_len = 0; + if (!useLabel()) + { + text_len = getLength(); + } + else + { + text_len = mLabel.getWString().length(); + } + + if (index > text_len) { return mSegments.end(); } // when there are no segments, we return the end iterator, which must be checked by caller if (mSegments.size() <= 1) { return mSegments.begin(); } @@ -2101,7 +2121,7 @@ void LLTextBase::resetLabel() } } -bool LLTextBase::useLabel() +bool LLTextBase::useLabel() const { return !getLength() && !mLabel.empty() && !hasFocus(); } diff --git a/indra/llui/lltextbase.h b/indra/llui/lltextbase.h index 20a73387b5..2fb58d468a 100755 --- a/indra/llui/lltextbase.h +++ b/indra/llui/lltextbase.h @@ -507,7 +507,7 @@ protected: void initFromParams(const Params& p); virtual void beforeValueChange(); virtual void onValueChange(S32 start, S32 end); - virtual bool useLabel(); + virtual bool useLabel() const; // draw methods void drawSelectionBackground(); // draws the black box behind the selected text -- cgit v1.3