From 35714d363fefee93222a098a5f3c4cc02355e707 Mon Sep 17 00:00:00 2001 From: Javon Prince Date: Thu, 24 Apr 2014 16:22:41 +0100 Subject: [PATCH] Optimizing markup processing Only reprocess markup-text in the TextView when the 'markup-enabled' property is changed to true Change-Id: I9011af832a27fa4c6b5d3b9dfe59c9890f91725c Signed-off-by: Javon Prince --- .../internal/controls/text-view/text-view-impl.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/dali-toolkit/internal/controls/text-view/text-view-impl.cpp b/dali-toolkit/internal/controls/text-view/text-view-impl.cpp index 37ce628..6bfaed3 100644 --- a/dali-toolkit/internal/controls/text-view/text-view-impl.cpp +++ b/dali-toolkit/internal/controls/text-view/text-view-impl.cpp @@ -2121,13 +2121,17 @@ void TextView::SetProperty( BaseObject* object, Property::Index index, const Pro { Internal::TextView& textViewImpl( GetImpl( textView ) ); bool newValue( value.Get() ); - textViewImpl.SetMarkupProcessingEnabled( newValue ); - if( newValue ) + if( newValue != textViewImpl.IsMarkupProcessingEnabled() ) { - const std::string& currentText( textViewImpl.GetText() ); - if( ! currentText.empty() ) + textViewImpl.SetMarkupProcessingEnabled( newValue ); + if( newValue ) { - textViewImpl.SetText( currentText ); + // If markup processing has been enabled, Ensure current text is reprocessed. + const std::string& currentText( textViewImpl.GetText() ); + if( ! currentText.empty() ) + { + textViewImpl.SetText( currentText ); + } } } } -- 2.7.4