X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=base%2Fdali-toolkit%2Finternal%2Fcontrols%2Ftext-view%2Frelayout-utilities.cpp;h=3040654ffb83bcde44a5ee2eac2777451e56a4ca;hb=00ef589046a32c53d20de1c61af7cc69524e51dc;hp=567a56e2f926a21294cc659db01306056730d86e;hpb=e58fa784d19a558e35f458ecf6d262a2344beb4f;p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git diff --git a/base/dali-toolkit/internal/controls/text-view/relayout-utilities.cpp b/base/dali-toolkit/internal/controls/text-view/relayout-utilities.cpp index 567a56e..3040654 100644 --- a/base/dali-toolkit/internal/controls/text-view/relayout-utilities.cpp +++ b/base/dali-toolkit/internal/controls/text-view/relayout-utilities.cpp @@ -517,8 +517,11 @@ void UpdateAlignment( const TextView::LayoutParameters& layoutParameters, // If the exceed policy is ellipsize at the end, negative offsets are not wanted. // In that case, it will align the line to the left and/or top, and ellipsize the end. - const bool ellipsizeAlignToLeft = ( layoutParameters.mExceedPolicy == TextView::EllipsizeEndOriginal ) || ( layoutParameters.mExceedPolicy == TextView::EllipsizeEnd ); - const bool ellipsizeAlignToTop = ( layoutParameters.mExceedPolicy == TextView::EllipsizeEnd ); + const bool ellipsizeAlignToLeft = ( layoutParameters.mExceedPolicy == TextView::EllipsizeEndOriginal ) || + ( layoutParameters.mExceedPolicy == TextView::EllipsizeEnd ) || + ( layoutParameters.mExceedPolicy == TextView::SplitEllipsizeEnd ); + const bool ellipsizeAlignToTop = ( layoutParameters.mExceedPolicy == TextView::EllipsizeEnd ) || + ( layoutParameters.mExceedPolicy == TextView::SplitEllipsizeEnd ); RelayoutParameters relayoutParameters; @@ -1009,6 +1012,7 @@ void CalculateVisibilityForEllipsize( const Internal::TextView::LayoutParameters break; } + case TextView::SplitEllipsizeEnd: case TextView::EllipsizeEnd: { // Ellipsizes the text if it doesn't fit in the width and fully fits in the text-view's height. @@ -1205,7 +1209,8 @@ void EllipsizeLine( const TextView::LayoutParameters& layoutParameters, } else { - if( TextView::EllipsizeEnd == layoutParameters.mExceedPolicy ) + if( ( TextView::EllipsizeEnd == layoutParameters.mExceedPolicy ) || + ( TextView::SplitEllipsizeEnd == layoutParameters.mExceedPolicy )) { if( !ellipsizeParameters.mIsLineHeightFullyVisible ) { @@ -1256,6 +1261,7 @@ void SetTextVisible( TextView::RelayoutData& relayoutData ) characterLayoutInfo.mGradientColor = Vector4::ZERO; characterLayoutInfo.mStartPoint = Vector2::ZERO; characterLayoutInfo.mEndPoint = Vector2::ZERO; + characterLayoutInfo.mColorAlpha = characterLayoutInfo.mStyledText.mStyle.GetTextColor().a; } // end characters } // end words } // end group of words @@ -1429,7 +1435,8 @@ void UpdateVisibilityForEllipsize( const TextView::LayoutParameters& layoutParam // If the next line exceeds the text-view height then it's going to be invisible and current line needs to be ellipsized. ellipsizeParameters.mIsLineHeightFullyVisible = true; ellipsizeParameters.mIsNextLineFullyVisibleHeight = true; - if( TextView::EllipsizeEnd == layoutParameters.mExceedPolicy ) + if( ( TextView::EllipsizeEnd == layoutParameters.mExceedPolicy ) || + ( TextView::SplitEllipsizeEnd == layoutParameters.mExceedPolicy ) ) { // Need to check if there is lines which doesn't fit in the height. @@ -1499,6 +1506,7 @@ void UpdateVisibility( const TextView::LayoutParameters& layoutParameters, break; } case TextView::EllipsizeEndOriginal: + case TextView::SplitEllipsizeEnd: case TextView::EllipsizeEnd: // Fall through { // Set first all characters to visible as UpdateVisibilityForEllipsize() doesn't traverse all of them.