From 5d6df79b33e1cd4a440ccc57ed27bfb1b21b53d6 Mon Sep 17 00:00:00 2001 From: Jiyun Yang Date: Fri, 20 Dec 2019 15:56:45 +0900 Subject: [PATCH] [Tizen] Add an environment variable for long press gesture DALI_LONG_PRESS_MINIMUM_HOLDING_TIME The minimum holding time required to be recognized as a long press gesture Change-Id: Idc9f62b4c2096564c37fb089c86815ec6433e3e6 Signed-off-by: Jiyun Yang --- dali/internal/adaptor/common/adaptor-impl.cpp | 4 ++++ dali/internal/system/common/environment-options.cpp | 12 ++++++++++++ dali/internal/system/common/environment-options.h | 6 ++++++ dali/internal/system/common/environment-variables.h | 5 +++++ 4 files changed, 27 insertions(+) diff --git a/dali/internal/adaptor/common/adaptor-impl.cpp b/dali/internal/adaptor/common/adaptor-impl.cpp index 872eb7e..695688f 100755 --- a/dali/internal/adaptor/common/adaptor-impl.cpp +++ b/dali/internal/adaptor/common/adaptor-impl.cpp @@ -283,6 +283,10 @@ void Adaptor::Initialize( GraphicsFactory& graphicsFactory, Dali::Configuration: { Integration::SetPinchGestureMinimumDistance( mEnvironmentOptions->GetMinimumPinchDistance() ); } + if( mEnvironmentOptions->GetLongPressMinimumHoldingTime() >= 0 ) + { + Integration::SetLongPressMinimumHoldingTime( mEnvironmentOptions->GetLongPressMinimumHoldingTime() ); + } // Set max texture size if( mEnvironmentOptions->GetMaxTextureSize() > 0 ) diff --git a/dali/internal/system/common/environment-options.cpp b/dali/internal/system/common/environment-options.cpp index d6d54cd..caa98a0 100755 --- a/dali/internal/system/common/environment-options.cpp +++ b/dali/internal/system/common/environment-options.cpp @@ -120,6 +120,7 @@ EnvironmentOptions::EnvironmentOptions() mPanMinimumDistance( -1 ), mPanMinimumEvents( -1 ), mPinchMinimumDistance( -1.0f ), + mLongPressMinimumHoldingTime( -1 ), mGlesCallTime( 0 ), mMultiSamplingLevel( DEFAULT_MULTI_SAMPLING_LEVEL ), mThreadingMode( ThreadingMode::COMBINED_UPDATE_RENDER ), @@ -290,6 +291,11 @@ float EnvironmentOptions::GetMinimumPinchDistance() const return mPinchMinimumDistance; } +int32_t EnvironmentOptions::GetLongPressMinimumHoldingTime() const +{ + return mLongPressMinimumHoldingTime; +} + unsigned int EnvironmentOptions::GetWindowWidth() const { return mWindowWidth; @@ -516,6 +522,12 @@ void EnvironmentOptions::ParseEnvironmentOptions() mPinchMinimumDistance = pinchMinimumDistance; } + int longPressMinimumHoldingTime = -1; + if( GetIntegerEnvironmentVariable( DALI_ENV_LONG_PRESS_MINIMUM_HOLDING_TIME, longPressMinimumHoldingTime ) ) + { + mLongPressMinimumHoldingTime = longPressMinimumHoldingTime; + } + int glesCallTime(0); if ( GetIntegerEnvironmentVariable(DALI_GLES_CALL_TIME, glesCallTime )) { diff --git a/dali/internal/system/common/environment-options.h b/dali/internal/system/common/environment-options.h index 23b0ae0..2c6864e 100755 --- a/dali/internal/system/common/environment-options.h +++ b/dali/internal/system/common/environment-options.h @@ -220,6 +220,11 @@ public: float GetMinimumPinchDistance() const; /** + * @return The minimum holding time required to be recognized as a long press gesture (milliseconds) + */ + int32_t GetLongPressMinimumHoldingTime() const; + + /** * @return The width of the window */ unsigned int GetWindowWidth() const; @@ -352,6 +357,7 @@ 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 + unsigned 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 ThreadingMode::Type mThreadingMode; ///< threading mode diff --git a/dali/internal/system/common/environment-variables.h b/dali/internal/system/common/environment-variables.h index 6c790de..3c1fba3 100755 --- a/dali/internal/system/common/environment-variables.h +++ b/dali/internal/system/common/environment-variables.h @@ -86,6 +86,11 @@ namespace Adaptor #define DALI_ENV_PINCH_MINIMUM_DISTANCE "DALI_PINCH_MINIMUM_DISTANCE" +/** + * The minimum holding time required to be recognized as a long press gesture (milliseconds) + */ +#define DALI_ENV_LONG_PRESS_MINIMUM_HOLDING_TIME "DALI_LONG_PRESS_MINIMUM_HOLDING_TIME" + #define DALI_GLES_CALL_TIME "DALI_GLES_CALL_TIME" #define DALI_GLES_CALL_ACCUMULATE "DALI_GLES_CALL_ACCUMULATE" -- 2.7.4