Determines whether to propagate pan gestures in text fields and editors. 03/310803/2
authorjoogab.yun <joogab.yun@samsung.com>
Wed, 8 May 2024 09:27:22 +0000 (18:27 +0900)
committerjoogab.yun <joogab.yun@samsung.com>
Thu, 9 May 2024 00:12:54 +0000 (09:12 +0900)
Change-Id: I3cb8ae7710deca1bf9fbe886122a69a35c76df74

dali-toolkit/internal/controls/text-controls/text-editor-impl.cpp
dali-toolkit/internal/controls/text-controls/text-field-impl.cpp

index 43a5884..fdca0ea 100644 (file)
@@ -912,11 +912,15 @@ void TextEditor::OnTap(const TapGesture& gesture)
 
 void TextEditor::OnPan(const PanGesture& gesture)
 {
-  mController->PanEvent(gesture.GetState(), gesture.GetDisplacement());
-  if(gesture.GetState() == GestureState::STARTED && !mController->IsScrollable(gesture.GetDisplacement()))
+  if(!mController->IsScrollable(gesture.GetDisplacement()))
   {
     Dali::DevelActor::SetNeedGesturePropagation(Self(), true);
   }
+  else
+  {
+    Dali::DevelActor::SetNeedGesturePropagation(Self(), false);
+  }
+  mController->PanEvent(gesture.GetState(), gesture.GetDisplacement());
 }
 
 void TextEditor::OnLongPress(const LongPressGesture& gesture)
index 8336b14..95141af 100644 (file)
@@ -819,11 +819,15 @@ void TextField::OnTap(const TapGesture& gesture)
 
 void TextField::OnPan(const PanGesture& gesture)
 {
-  mController->PanEvent(gesture.GetState(), gesture.GetDisplacement());
-  if(gesture.GetState() == GestureState::STARTED && !mController->IsScrollable(gesture.GetDisplacement()))
+  if(!mController->IsScrollable(gesture.GetDisplacement()))
   {
     Dali::DevelActor::SetNeedGesturePropagation(Self(), true);
   }
+  else
+  {
+    Dali::DevelActor::SetNeedGesturePropagation(Self(), false);
+  }
+  mController->PanEvent(gesture.GetState(), gesture.GetDisplacement());
 }
 
 void TextField::OnLongPress(const LongPressGesture& gesture)