From: Victor Cebollada Date: Mon, 6 Jul 2015 15:13:02 +0000 (+0100) Subject: TextDecorator. Do not destroy the highlight geometry every OnRelayout. X-Git-Tag: dali_1.0.49~1^2 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=commitdiff_plain;h=d84ed16e09247b8cff122c22b3cb0e9856cea7aa;hp=a8bc013df97fad9f1cc2d95c37248464ac553e6e TextDecorator. Do not destroy the highlight geometry every OnRelayout. Change-Id: I0edd86d8799c98767111b5abb5a4a71fbf928c93 Signed-off-by: Victor Cebollada --- diff --git a/dali-toolkit/internal/text/decorator/text-decorator.cpp b/dali-toolkit/internal/text/decorator/text-decorator.cpp index 49fe080..2eacef4 100644 --- a/dali-toolkit/internal/text/decorator/text-decorator.cpp +++ b/dali-toolkit/internal/text/decorator/text-decorator.cpp @@ -805,24 +805,25 @@ struct Decorator::Impl : public ConnectionTracker mQuadVertices.SetData( &vertices[ 0 ] ); mQuadIndices.SetData( &indices[ 0 ] ); - mQuadGeometry = Geometry::New(); - mQuadGeometry.AddVertexBuffer( mQuadVertices ); - mQuadGeometry.SetIndexBuffer( mQuadIndices ); - - if( mHighlightRenderer ) + if( !mQuadGeometry ) { - mHighlightRenderer.SetGeometry( mQuadGeometry ); + mQuadGeometry = Geometry::New(); + mQuadGeometry.AddVertexBuffer( mQuadVertices ); } - else + mQuadGeometry.SetIndexBuffer( mQuadIndices ); + + if( !mHighlightRenderer ) { mHighlightRenderer = Dali::Renderer::New( mQuadGeometry, mHighlightMaterial ); mHighlightActor.AddRenderer( mHighlightRenderer ); } - - mHighlightActor.SetPosition( mHighlightPosition.x, - mHighlightPosition.y ); } + mHighlightActor.SetPosition( mHighlightPosition.x, + mHighlightPosition.y ); + + mHighlightQuadList.clear(); + mHighlightRenderer.SetDepthIndex( mTextDepth - 2u ); // text is rendered at mTextDepth and text's shadow at mTextDepth -1u. } }