From: taeyoon Date: Wed, 23 Nov 2016 08:05:30 +0000 (-0800) Subject: Merge "[3.0] Fix blending issue" into tizen_3.0 X-Git-Tag: accepted/tizen/3.0/common/20161124.181854~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f4566644793b81e0c7b1530f26ba3e93bbf85a91;hp=585a0ec148d3897cc787200b7382158ce287332b;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git Merge "[3.0] Fix blending issue" into tizen_3.0 --- diff --git a/adaptors/ecore/wayland/event-handler-ecore-wl.cpp b/adaptors/ecore/wayland/event-handler-ecore-wl.cpp index 81c4a0d..1b3012d 100644 --- a/adaptors/ecore/wayland/event-handler-ecore-wl.cpp +++ b/adaptors/ecore/wayland/event-handler-ecore-wl.cpp @@ -293,6 +293,9 @@ struct EventHandler::Impl mEcoreEventHandler.push_back( ecore_event_handler_add( ECORE_WL_EVENT_DATA_SOURCE_SEND, EcoreEventDataSend, handler ) ); mEcoreEventHandler.push_back( ecore_event_handler_add( ECORE_WL_EVENT_SELECTION_DATA_READY, EcoreEventDataReceive, handler ) ); + // Register Rotate event + mEcoreEventHandler.push_back( ecore_event_handler_add( ECORE_WL_EVENT_WINDOW_ROTATE, EcoreEventRotate, handler) ); + // Register Detent event mEcoreEventHandler.push_back( ecore_event_handler_add( ECORE_EVENT_DETENT_ROTATE, EcoreEventDetent, handler) ); @@ -1151,6 +1154,31 @@ struct EventHandler::Impl } /* + * Called when rotate event is recevied + */ + static Eina_Bool EcoreEventRotate( void* data, int type, void* event ) + { + DALI_LOG_INFO( gSelectionEventLogFilter, Debug::Concise, "EcoreEventRotate\n" ); + + EventHandler* handler( (EventHandler*)data ); + Ecore_Wl_Event_Window_Rotate* ev( (Ecore_Wl_Event_Window_Rotate*)event ); + + if( ev->win != (unsigned int)ecore_wl_window_id_get( handler->mImpl->mWindow ) ) + { + return ECORE_CALLBACK_PASS_ON; + } + + RotationEvent rotationEvent; + rotationEvent.angle = ev->angle; + rotationEvent.winResize = 0; + rotationEvent.width = ev->w; + rotationEvent.height = ev->h; + handler->SendRotationPrepareEvent( rotationEvent ); + + return ECORE_CALLBACK_PASS_ON; + } + + /* * Called when detent event is recevied */ static Eina_Bool EcoreEventDetent( void* data, int type, void* event ) @@ -1306,15 +1334,13 @@ void EventHandler::SendRotationPrepareEvent( const RotationEvent& event ) if( mRotationObserver != NULL ) { mRotationObserver->OnRotationPrepare( event ); + mRotationObserver->OnRotationRequest(); } } void EventHandler::SendRotationRequestEvent( ) { - if( mRotationObserver != NULL ) - { - mRotationObserver->OnRotationRequest( ); - } + // No need to separate event into prepare and request in wayland } void EventHandler::FeedTouchPoint( TouchPoint& point, int timeStamp) diff --git a/adaptors/ecore/wayland/window-impl-ecore-wl.cpp b/adaptors/ecore/wayland/window-impl-ecore-wl.cpp index 184299c..2160e4f 100644 --- a/adaptors/ecore/wayland/window-impl-ecore-wl.cpp +++ b/adaptors/ecore/wayland/window-impl-ecore-wl.cpp @@ -466,14 +466,17 @@ void Window::SetIndicatorActorRotation() void Window::Raise() { + ecore_wl_window_raise( mEventHandler->mEcoreWindow ); } void Window::Lower() { + ecore_wl_window_lower( mEventHandler->mEcoreWindow ); } void Window::Activate() { + ecore_wl_window_activate( mEventHandler->mEcoreWindow ); } Dali::DragAndDropDetector Window::GetDragAndDropDetector() const @@ -565,7 +568,12 @@ void Window::RemoveAvailableOrientation(Dali::Window::WindowOrientation orientat void Window::SetAvailableOrientations(const std::vector& orientations) { - DALI_ASSERT_ALWAYS( mAvailableOrientations.size() <= 4 && "Incorrect number of available orientations" ); + int rotations[4]; + for( std::size_t i = 0; i < mAvailableOrientations.size(); ++i ) + { + rotations[i] = static_cast< int >( mAvailableOrientations[i] ); + } + ecore_wl_window_rotation_available_rotations_set( mEventHandler->mEcoreWindow, rotations, mAvailableOrientations.size() ); } const std::vector& Window::GetAvailableOrientations() @@ -576,6 +584,8 @@ const std::vector& Window::GetAvailableOrientat void Window::SetPreferredOrientation(Dali::Window::WindowOrientation orientation) { mPreferredOrientation = orientation; + + ecore_wl_window_rotation_preferred_rotation_set( mEventHandler->mEcoreWindow, orientation ); } Dali::Window::WindowOrientation Window::GetPreferredOrientation() @@ -585,6 +595,7 @@ Dali::Window::WindowOrientation Window::GetPreferredOrientation() void Window::RotationDone( int orientation, int width, int height ) { + ecore_wl_window_rotation_change_done_send( mEventHandler->mEcoreWindow ); } diff --git a/adaptors/tizen/key-grab.h b/adaptors/tizen/key-grab.h index ff310e5..56d6c05 100755 --- a/adaptors/tizen/key-grab.h +++ b/adaptors/tizen/key-grab.h @@ -113,7 +113,7 @@ DALI_IMPORT_API bool UngrabKey( Window window, Dali::KEY daliKey ); /** * @PLATFORM - * @brief Grabs the list of keys specfied by @Dali::Vector of keys for @a window in @Vector of grabModes. + * @brief Grabs the list of keys specfied by Dali::Vector of keys for @a window in Vector of grabModes. * * @details This function can be used for following example scenarios: * - TV - A user might want to change the volume or channel of the background TV contents while focusing on the foregrund app. @@ -133,7 +133,7 @@ DALI_IMPORT_API Dali::Vector GrabKeyList( Window window, const Dali::Vecto /** * @PLATFORM - * @brief Ungrabs the list of keys specfied by @Dali::Vector of keys for @a window. + * @brief Ungrabs the list of keys specfied by Dali::Vector of keys for @a window. * * @SINCE_1_2.0 * @PRIVLEVEL_PLATFORM diff --git a/adaptors/wearable/watch/watch-application.h b/adaptors/wearable/watch/watch-application.h index 705ef2f..8151061 100644 --- a/adaptors/wearable/watch/watch-application.h +++ b/adaptors/wearable/watch/watch-application.h @@ -104,6 +104,7 @@ public: /** * @brief This is the constructor for applications without an argument list. * @SINCE_1_1.37 + * @return A handle to the WatchApplication */ static WatchApplication New(); @@ -113,6 +114,7 @@ public: * @SINCE_1_1.37 * @param[in,out] argc A pointer to the number of arguments * @param[in,out] argv A pointer the the argument list + * @return A handle to the WatchApplication */ static WatchApplication New( int* argc, char **argv[] ); @@ -123,6 +125,7 @@ public: * @param[in,out] argc A pointer to the number of arguments * @param[in,out] argv A pointer the the argument list * @param[in] stylesheet The path to user defined theme file + * @return A handle to the WatchApplication */ static WatchApplication New( int* argc, char **argv[], const std::string& stylesheet ); @@ -135,12 +138,15 @@ public: /** * @brief Copy Constructor * @SINCE_1_1.37 + * @param[in] implementation The WatchApplication implementation */ WatchApplication( const WatchApplication& implementation ); /** * @brief Assignment operator * @SINCE_1_1.37 + * @param[in] handle Handle to an object + * @return A reference to this */ WatchApplication& operator=( const WatchApplication& applicaton ); @@ -161,6 +167,7 @@ public: * @endcode * time(watch time handle) will not be available after returning this callback. It will be freed by the framework. * @SINCE_1_1.37 + * @return The signal to connect to */ WatchTimeSignal& TimeTickSignal(); @@ -174,6 +181,7 @@ public: * @SINCE_1_1.37 * @remarks http://tizen.org/privilege/alarm.set privilege is needed to receive ambient ticks at each minute. * The AmbientTickSignal() will be ignored if your app doesn't have the privilege + * @return The signal to connect to */ WatchTimeSignal& AmbientTickSignal(); @@ -185,6 +193,7 @@ public: * @endcode * ambient_mode If true the device enters the ambient mode, otherwise false * @SINCE_1_1.37 + * @return The signal to connect to */ WatchBoolSignal& AmbientChangedSignal(); diff --git a/adaptors/wearable/watch/watch-time.h b/adaptors/wearable/watch/watch-time.h index 0dc19e8..1a304b5 100644 --- a/adaptors/wearable/watch/watch-time.h +++ b/adaptors/wearable/watch/watch-time.h @@ -57,6 +57,7 @@ public: * @brief return current hour * * @SINCE_1_1.37 + * @return the current hour * @pre The WatchTime needs to be initialized. */ int GetHour() const; @@ -65,6 +66,7 @@ public: * @brief return current hour24 * * @SINCE_1_1.37 + * @return the current hour(the 24-hour clock) * @pre The WatchTime needs to be initialized. */ int GetHour24() const; @@ -73,6 +75,7 @@ public: * @brief return current minute * * @SINCE_1_1.37 + * @return the current minute * @pre The WatchTime needs to be initialized. */ int GetMinute() const; @@ -81,6 +84,7 @@ public: * @brief return current second * * @SINCE_1_1.37 + * @return the current second * @pre The WatchTime needs to be initialized. */ int GetSecond() const;