summaryrefslogtreecommitdiff
path: root/indra/llui/lltextbase.cpp
diff options
context:
space:
mode:
authorCallum Prentice <callum@lindenlab.com>2010-04-02 14:57:12 -0700
committerCallum Prentice <callum@lindenlab.com>2010-04-02 14:57:12 -0700
commit98e46e28e05c22c02da41603a056c0caf34f5ad0 (patch)
treea24352a4ce377d91428554aab15f96f887b24514 /indra/llui/lltextbase.cpp
parent9e1b600d9b41afea62b2ba68fa8d5bc5861d1111 (diff)
parent2c5c563319d5ba8eaeae93b627536321956d347e (diff)
Merge with tip
Diffstat (limited to 'indra/llui/lltextbase.cpp')
-rw-r--r--indra/llui/lltextbase.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/indra/llui/lltextbase.cpp b/indra/llui/lltextbase.cpp
index 5f4b16ec9e..e08026eaf4 100644
--- a/indra/llui/lltextbase.cpp
+++ b/indra/llui/lltextbase.cpp
@@ -962,7 +962,18 @@ void LLTextBase::reshape(S32 width, S32 height, BOOL called_from_parent)
{
if (width != getRect().getWidth() || height != getRect().getHeight())
{
+ //EXT-4288
+ //to keep consistance scrolling behaviour
+ //when scrolling from top and from bottom...
+ bool is_scrolled_to_end = (mScroller!=NULL) && scrolledToEnd();
+
LLUICtrl::reshape( width, height, called_from_parent );
+
+ if (is_scrolled_to_end)
+ {
+ deselect();
+ endOfDoc();
+ }
// do this first after reshape, because other things depend on
// up-to-date mVisibleTextRect
@@ -1048,6 +1059,13 @@ void LLTextBase::setValue(const LLSD& value )
}
//virtual
+BOOL LLTextBase::canDeselect() const
+{
+ return hasSelection();
+}
+
+
+//virtual
void LLTextBase::deselect()
{
mSelectionStart = 0;