Merge "Change trace tag in Text" into devel/master
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / internal / text / controller / text-controller-event-handler.cpp
index e351342..5323d35 100644 (file)
 #include <dali/devel-api/adaptor-framework/clipboard-event-notifier.h>
 #include <dali/devel-api/adaptor-framework/key-devel.h>
 #include <dali/integration-api/debug.h>
+#include <dali/integration-api/trace.h>
 
 // INTERNAL INCLUDES
-#include <dali-toolkit/internal/text/cursor-helper-functions.h>
 #include <dali-toolkit/internal/text/controller/text-controller-impl.h>
 #include <dali-toolkit/internal/text/controller/text-controller-placeholder-handler.h>
 #include <dali-toolkit/internal/text/controller/text-controller-text-updater.h>
+#include <dali-toolkit/internal/text/cursor-helper-functions.h>
 #include <dali-toolkit/internal/text/text-editable-control-interface.h>
 
 namespace
@@ -36,6 +37,8 @@ namespace
 Debug::Filter* gLogFilter = Debug::Filter::New(Debug::NoLogging, true, "LOG_TEXT_CONTROLS");
 #endif
 
+DALI_INIT_TRACE_FILTER(gTraceFilter, DALI_TRACE_TEXT_PERFORMANCE_MARKER, false);
+
 const std::string KEY_C_NAME      = "c";
 const std::string KEY_V_NAME      = "v";
 const std::string KEY_X_NAME      = "x";
@@ -191,6 +194,12 @@ bool Controller::EventHandler::KeyEvent(Controller& controller, const Dali::KeyE
         return false;
       }
 
+      if(controller.mImpl->mEventData->mState == EventData::INACTIVE)
+      {
+        // Cursor position will be updated
+        controller.mImpl->ChangeState(EventData::EDITING);
+      }
+
       controller.mImpl->mEventData->mCheckScrollAmount = true;
       Event event(Event::CURSOR_KEY_EVENT);
       event.p1.mInt  = keyCode;
@@ -598,6 +607,8 @@ void Controller::EventHandler::ProcessModifyEvents(Controller& controller)
     return;
   }
 
+  DALI_TRACE_SCOPE(gTraceFilter, "DALI_TEXT_MODIFY_EVENTS");
+
   for(Vector<ModifyEvent>::ConstIterator it    = events.Begin(),
                                          endIt = events.End();
       it != endIt;
@@ -821,7 +832,7 @@ InputMethodContext::CallbackData Controller::EventHandler::OnInputMethodContextE
     case InputMethodContext::SELECTION_SET:
     {
       uint32_t start = static_cast<uint32_t>(inputMethodContextEvent.startIndex);
-      uint32_t end = static_cast<uint32_t>(inputMethodContextEvent.endIndex);
+      uint32_t end   = static_cast<uint32_t>(inputMethodContextEvent.endIndex);
       if(start == end)
       {
         controller.SetPrimaryCursorPosition(start, true);