Merge branch 'devel/master' into devel/async_text
authorBowon Ryu <bowon.ryu@samsung.com>
Wed, 24 Jul 2024 06:38:18 +0000 (15:38 +0900)
committerBowon Ryu <bowon.ryu@samsung.com>
Wed, 24 Jul 2024 06:38:18 +0000 (15:38 +0900)
Change-Id: Ic939ffd53dcbf6ec3dc92859646fcfe72bee0db7

1  2 
dali-toolkit/internal/controls/text-controls/text-label-impl.cpp
dali-toolkit/internal/file.list
dali-toolkit/internal/text/layouts/layout-engine.cpp
dali-toolkit/internal/text/rendering/text-typesetter.cpp

@@@ -640,32 -625,8 +654,26 @@@ void TextLabel::SetProperty(BaseObject
          const bool cutout = value.Get<bool>();
  
          impl.mController->SetTextCutout(cutout);
-         // Property doesn't affect the layout, only Visual must be updated
-         TextVisual::EnableRendererUpdate(impl.mVisual);
-         // No need to trigger full re-layout. Instead call UpdateRenderer() directly
-         TextVisual::UpdateRenderer(impl.mVisual);
 +        impl.mIsPropertyUpdated = true;
          break;
        }
 +      case Toolkit::DevelTextLabel::Property::RENDER_MODE:
 +      {
 +        DevelTextLabel::Render::Mode renderMode = static_cast<DevelTextLabel::Render::Mode>(value.Get<int>());
 +        if(renderMode < 0 || renderMode >= DevelTextLabel::Render::END_INDEX)
 +        {
 +          renderMode = DevelTextLabel::Render::SYNC;
 +        }
 +
 +        if(impl.mController->GetRenderMode() != renderMode)
 +        {
 +          impl.mController->SetRenderMode(renderMode);
 +          if(renderMode == DevelTextLabel::Render::ASYNC_AUTO)
 +          {
 +            impl.mIsPropertyUpdated = true;
 +          }
 +        }
 +      }
      }
  
      // Request relayout when text update is needed. It's necessary to call it
Simple merge