Add environment variables for Pinch and Rotation gesture 80/223480/1
authorJiyun Yang <ji.yang@samsung.com>
Thu, 30 Jan 2020 06:29:54 +0000 (15:29 +0900)
committerJiyun Yang <ji.yang@samsung.com>
Thu, 30 Jan 2020 06:29:54 +0000 (15:29 +0900)
DALI_PINCH_MINIMUM_TOUCH_EVENTS
DALI_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START
DALI_ROTATION_MINIMUM_TOUCH_EVENTS
DALI_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START

They represent the minimum touch events count required for a gesture

Change-Id: Id6191971bfc5a534d9a30c470e9ba93ed701d59f

dali/internal/adaptor/common/adaptor-impl.cpp
dali/internal/system/common/environment-options.cpp
dali/internal/system/common/environment-options.h
dali/internal/system/common/environment-variables.h

index 4935c93..cd0cd02 100755 (executable)
@@ -282,6 +282,22 @@ void Adaptor::Initialize( GraphicsFactory& graphicsFactory, Dali::Configuration:
   {
     Integration::SetPinchGestureMinimumDistance( mEnvironmentOptions->GetMinimumPinchDistance() );
   }
+  if( mEnvironmentOptions->GetMinimumPinchTouchEvents() >= 0 )
+  {
+    Integration::SetPinchGestureMinimumTouchEvents( mEnvironmentOptions->GetMinimumPinchTouchEvents() );
+  }
+  if( mEnvironmentOptions->GetMinimumPinchTouchEventsAfterStart() >= 0 )
+  {
+    Integration::SetPinchGestureMinimumTouchEventsAfterStart( mEnvironmentOptions->GetMinimumPinchTouchEventsAfterStart() );
+  }
+  if( mEnvironmentOptions->GetMinimumRotationTouchEvents() >= 0 )
+  {
+    Integration::SetRotationGestureMinimumTouchEvents( mEnvironmentOptions->GetMinimumRotationTouchEvents() );
+  }
+  if( mEnvironmentOptions->GetMinimumRotationTouchEventsAfterStart() >= 0 )
+  {
+    Integration::SetRotationGestureMinimumTouchEventsAfterStart( mEnvironmentOptions->GetMinimumRotationTouchEventsAfterStart() );
+  }
   if( mEnvironmentOptions->GetLongPressMinimumHoldingTime() >= 0 )
   {
     Integration::SetLongPressMinimumHoldingTime( mEnvironmentOptions->GetLongPressMinimumHoldingTime() );
index bab51d1..3827ad9 100644 (file)
@@ -120,6 +120,10 @@ EnvironmentOptions::EnvironmentOptions()
   mPanMinimumDistance( -1 ),
   mPanMinimumEvents( -1 ),
   mPinchMinimumDistance( -1.0f ),
+  mPinchMinimumTouchEvents( -1 ),
+  mPinchMinimumTouchEventsAfterStart( -1 ),
+  mRotationMinimumTouchEvents( -1 ),
+  mRotationMinimumTouchEventsAfterStart( -1 ),
   mLongPressMinimumHoldingTime( -1 ),
   mGlesCallTime( 0 ),
   mMultiSamplingLevel( DEFAULT_MULTI_SAMPLING_LEVEL ),
@@ -290,6 +294,26 @@ float EnvironmentOptions::GetMinimumPinchDistance() const
   return mPinchMinimumDistance;
 }
 
+int EnvironmentOptions::GetMinimumPinchTouchEvents() const
+{
+  return mPinchMinimumTouchEvents;
+}
+
+int EnvironmentOptions::GetMinimumPinchTouchEventsAfterStart() const
+{
+  return mPinchMinimumTouchEventsAfterStart;
+}
+
+int EnvironmentOptions::GetMinimumRotationTouchEvents() const
+{
+  return mRotationMinimumTouchEvents;
+}
+
+int EnvironmentOptions::GetMinimumRotationTouchEventsAfterStart() const
+{
+  return mRotationMinimumTouchEventsAfterStart;
+}
+
 int EnvironmentOptions::GetLongPressMinimumHoldingTime() const
 {
   return mLongPressMinimumHoldingTime;
index d8e630a..f72ebdd 100644 (file)
@@ -220,6 +220,26 @@ public:
   float GetMinimumPinchDistance() const;
 
   /**
+   * @return The minimum touch events required before a pinch can be started (-1 means it's not set)
+   */
+  int GetMinimumPinchTouchEvents() const;
+
+  /**
+   * @return The minimum touch events required after a pinch started (-1 means it's not set)
+   */
+  int GetMinimumPinchTouchEventsAfterStart() const;
+
+  /**
+   * @return The minimum touch events required before a rotation can be started (-1 means it's not set)
+   */
+  int GetMinimumRotationTouchEvents() const;
+
+  /**
+   * @return The minimum touch events required after a rotation started (-1 means it's not set)
+   */
+  int GetMinimumRotationTouchEventsAfterStart() const;
+
+  /**
    * @return The minimum holding time required to be recognized as a long press gesture (milliseconds)
    */
   int GetLongPressMinimumHoldingTime() const;
@@ -352,6 +372,10 @@ private: // Data
   int mPanMinimumDistance;                        ///< minimum distance required before pan starts
   int mPanMinimumEvents;                          ///< minimum events required before pan starts
   float mPinchMinimumDistance;                    ///< minimum number of pixels moved before a pinch starts
+  int mPinchMinimumTouchEvents;                   ///< minimum events required before a pinch starts
+  int mPinchMinimumTouchEventsAfterStart;         ///< minimum events required after a pinch started
+  int mRotationMinimumTouchEvents;                ///< minimum events required before a rotation starts
+  int mRotationMinimumTouchEventsAfterStart;      ///< minimum events required after a rotation started
   int mLongPressMinimumHoldingTime;               ///< minimum holding time required to be recognized as a long press gesture (millisecond)
   int mGlesCallTime;                              ///< time in seconds between status updates
   int mMultiSamplingLevel;                        ///< The number of samples required in multisample buffers
index 013417e..ca1a9c8 100644 (file)
@@ -84,7 +84,14 @@ namespace Adaptor
 #define DALI_ENV_PAN_MINIMUM_DISTANCE                 "DALI_PAN_MINIMUM_DISTANCE"
 #define DALI_ENV_PAN_MINIMUM_EVENTS                   "DALI_PAN_MINIMUM_EVENTS"
 
-#define DALI_ENV_PINCH_MINIMUM_DISTANCE               "DALI_PINCH_MINIMUM_DISTANCE"
+// Pinch-Gesture
+#define DALI_ENV_PINCH_MINIMUM_DISTANCE                     "DALI_PINCH_MINIMUM_DISTANCE"
+#define DALI_ENV_PINCH_MINIMUM_TOUCH_EVENTS                 "DALI_PINCH_MINIMUM_TOUCH_EVENTS"
+#define DALI_ENV_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START     "DALI_PINCH_MINIMUM_TOUCH_EVENTS_AFTER_START"
+
+// Rotation-Gesture
+#define DALI_ENV_ROTATION_MINIMUM_TOUCH_EVENTS              "DALI_ROTATION_MINIMUM_TOUCH_EVENTS"
+#define DALI_ENV_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START  "DALI_ROTATION_MINIMUM_TOUCH_EVENTS_AFTER_START"
 
 /**
  * The minimum holding time required to be recognized as a long press gesture (milliseconds)