Dali-toolkit: Text controls crash fix 50/245350/1
authorali198724 <ali198724@gmail.com>
Wed, 7 Oct 2020 11:42:41 +0000 (14:42 +0300)
committerali198724 <ali198724@gmail.com>
Wed, 7 Oct 2020 11:42:53 +0000 (14:42 +0300)
commitd1a4fa773b183f8dc37e2ea01f94355ee278c3ff
tree6d55bb26dff046d3df5a0165bed7ad9bae46b2cf
parent4be6d23fa53be011c4784bdfcaa038ee17ad832a
Dali-toolkit: Text controls crash fix

Fix crash when delete characters after change text color

Run demo, then press backspace
```
//g++ -g -O0 main.cpp -o app `pkg-config --cflags --libs dali2-core dali2-adaptor dali2-adaptor-integration  dali2-toolkit`

using namespace Dali;
using namespace Dali::Toolkit;

class SimpleApp : public ConnectionTracker
{
public:
  SimpleApp(Application& application)
  : mApplication(application)
  {
    mApplication.InitSignal().Connect(this, &SimpleApp::Create);
  }

  void Create(Application& application)
  {
    Window window = application.GetWindow();
    window.SetBackgroundColor(Vector4(0.04f, 0.345f, 0.392f, 1.0f));

    TextField field = TextField::New();
    field.SetProperty(TextField::Property::TEXT, "Erase");
    field.SetProperty(TextField::Property::TEXT_COLOR, Vector4(0.0f, 1.0f, 1.0f, 1.0f)); // CYAN
    field.SetProperty(Actor::Property::PARENT_ORIGIN, ParentOrigin::CENTER);
    field.SetProperty(Actor::Property::SIZE, Vector2(300.f, 60.f));
    window.Add(field);
    field.SetKeyInputFocus();
  }

private:
  Application& mApplication;
};

int DALI_EXPORT_API main(int argc, char** argv)
{
  Application application = Application::New(&argc, &argv);
  SimpleApp test(application);
  application.MainLoop();

  return 0;
}

```

Change-Id: I2c13330f92746c73d32da71cced15c3b297126dc
dali-toolkit/internal/text/text-run-container.h