return GetImplementation( window ).WheelEventSignal();
}
-TransitionEffectEventSignalType& TransitionEffectEventSignal( Window window )
-{
- return GetImplementation( window ).TransitionEffectEventSignal();
-}
-
void SetParent( Window window, Window parent )
{
GetImplementation( window ).SetParent( parent );
namespace DevelWindow
{
-/**
- * @brief Enumeration for transition effect's state.
- */
-enum class EffectState
-{
- NONE = 0, ///< None state
- START, ///< Transition effect is started.
- END ///< Transition effect is ended.
-};
-
-/**
- * @brief Enumeration for transition effect's type.
- */
-enum class EffectType
-{
- NONE = 0, ///< None type
- SHOW, ///< Window show effect.
- HIDE, ///< Window hide effect.
-};
typedef Signal< void () > EventProcessingFinishedSignalType; ///< Event Processing finished signal type
typedef Signal< void (const WheelEvent&) > WheelEventSignalType; ///< Touched signal type
-typedef Signal< void (Window, EffectState, EffectType) > TransitionEffectEventSignalType; ///< Effect signal type and state
-
/**
* @brief Sets position and size of the window. This API guarantees that both moving and resizing of window will appear on the screen at once.
*
DALI_ADAPTOR_API WheelEventSignalType& WheelEventSignal( Window window );
/**
- * @brief This signal is emitted for transition effect.
- *
- * The transition animation is appeared when the window is shown/hidden.
- * When the animation is started, START signal is emitted.
- * Then the animation is ended, END signal is emitted, too.
- * A callback of the following type may be connected:
- * @code
- * void YourCallbackName( Window window, EffectState state, EffectType type );
- * @endcode
- * @param[in] window The window instance
- * @return The signal to connect to
- */
-DALI_ADAPTOR_API TransitionEffectEventSignalType& TransitionEffectEventSignal( Window window );
-
-/**
* @brief Sets parent window of the window.
*
* After setting that, these windows do together when raise-up, lower and iconified/deiconified.
mSelectionDataSendSignal(),
mSelectionDataReceivedSignal(),
mStyleChangedSignal(),
- mAccessibilitySignal(),
- mTransitionEffectEventSignal()
+ mAccessibilitySignal()
{
}
return mAccessibilitySignal;
}
-WindowBase::TransitionEffectEventSignalType& WindowBase::TransitionEffectEventSignal()
-{
- return mTransitionEffectEventSignal;
-}
-
} // namespace Adaptor
} // namespace Internal
#include <dali/public-api/adaptor-framework/window.h>
#include <dali/public-api/adaptor-framework/key-grab.h>
#include <dali/public-api/adaptor-framework/style-change.h>
-#include <dali/devel-api/adaptor-framework/window-devel.h>
#include <dali/internal/window-system/common/damage-observer.h>
#include <dali/internal/window-system/common/rotation-event.h>
#include <dali/internal/graphics/gles/egl-implementation.h>
typedef Signal< void ( ) > DeleteSignalType;
typedef Signal< void ( const DamageArea& ) > DamageSignalType;
typedef Signal< void ( const RotationEvent& ) > RotationSignalType;
- typedef Signal< void ( DevelWindow::EffectState, DevelWindow::EffectType ) > TransitionEffectEventSignalType;
// Input events
typedef Signal< void ( Integration::Point&, uint32_t ) > TouchEventSignalType;
*/
AccessibilitySignalType& AccessibilitySignal();
- /**
- * @brief This signal is emitted when window's transition animation is started or ended.
- */
- TransitionEffectEventSignalType& TransitionEffectEventSignal();
-
protected:
// Undefined
SelectionSignalType mSelectionDataReceivedSignal;
StyleSignalType mStyleChangedSignal;
AccessibilitySignalType mAccessibilitySignal;
- TransitionEffectEventSignalType mTransitionEffectEventSignal;
};
} // namespace Adaptor
mResizedSignal(),
mDeleteRequestSignal(),
mFocusChangeSignal(),
- mResizeSignal(),
- mTransitionEffectEventSignal()
+ mResizeSignal()
{
}
mWindowBase->IconifyChangedSignal().Connect( this, &Window::OnIconifyChanged );
mWindowBase->FocusChangedSignal().Connect( this, &Window::OnFocusChanged );
mWindowBase->DeleteRequestSignal().Connect( this, &Window::OnDeleteRequest );
- mWindowBase->TransitionEffectEventSignal().Connect( this, &Window::OnTransitionEffectEvent );
mWindowSurface->OutputTransformedSignal().Connect( this, &Window::OnOutputTransformed );
mDeleteRequestSignal.Emit();
}
-void Window::OnTransitionEffectEvent( DevelWindow::EffectState state, DevelWindow::EffectType type )
-{
- Dali::Window handle( this );
- mTransitionEffectEventSignal.Emit( handle, state, type );
-}
-
void Window::OnTouchPoint( Dali::Integration::Point& point, int timeStamp )
{
FeedTouchPoint( point, timeStamp );
typedef Dali::Window::ResizedSignalType ResizedSignalType;
typedef Dali::Window::FocusChangeSignalType FocusChangeSignalType;
typedef Dali::Window::ResizeSignalType ResizeSignalType;
- typedef Dali::DevelWindow::TransitionEffectEventSignalType TransitionEffectEventSignalType;
typedef Signal< void () > SignalType;
/**
*/
void OnDeleteRequest();
- /**
- * Called when the window receives a Transition effect-start/end event.
- */
- void OnTransitionEffectEvent( DevelWindow::EffectState state, DevelWindow::EffectType type );
-
private: // Dali::Internal::Adaptor::SceneHolder
/**
*/
Dali::DevelWindow::EventProcessingFinishedSignalType& EventProcessingFinishedSignal() { return mScene.EventProcessingFinishedSignal(); }
- /**
- * @copydoc Dali::DevelWindow::TransitionEffectEventSignal()
- */
- TransitionEffectEventSignalType& TransitionEffectEventSignal() { return mTransitionEffectEventSignal; }
-
private:
WindowRenderSurface* mWindowSurface; ///< The window rendering surface
SignalType mDeleteRequestSignal;
FocusChangeSignalType mFocusChangeSignal;
ResizeSignalType mResizeSignal;
- TransitionEffectEventSignalType mTransitionEffectEventSignal;
};
} // namespace Adaptor
}
/////////////////////////////////////////////////////////////////////////////////////////////////
-// Effect Start/End Callbacks
-/////////////////////////////////////////////////////////////////////////////////////////////////
-
-/**
- * Called when transition animation of the window's shown/hidden is started by window manager.
- */
-static Eina_Bool EcoreEventEffectStart(void *data, int type, void *event)
-{
- WindowBaseEcoreWl2* windowBase = static_cast< WindowBaseEcoreWl2* >( data );
- Ecore_Wl2_Event_Effect_Start *effectStart = static_cast<Ecore_Wl2_Event_Effect_Start*>( event );
- DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreWl2::EcoreEventEffectStart, effect type[ %d ]\n", effectStart->type );
- if( windowBase )
- {
- if( effectStart->type < 3 ) // only under restack
- {
- windowBase->OnTransitionEffectEvent( DevelWindow::EffectState::START, static_cast<DevelWindow::EffectType>( effectStart->type ) );
- }
- }
- return ECORE_CALLBACK_PASS_ON;
-}
-
-/**
- * Called when transition animation of the window's shown/hidden is ended by window manager.
- */
-static Eina_Bool EcoreEventEffectEnd(void *data, int type, void *event)
-{
- Ecore_Wl2_Event_Effect_Start *effectEnd = static_cast<Ecore_Wl2_Event_Effect_Start*>( event );
- WindowBaseEcoreWl2* windowBase = static_cast< WindowBaseEcoreWl2* >( data );
- DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreWl2::EcoreEventEffectEnd, effect type[ %d ]\n", effectEnd->type );
- if( windowBase )
- {
- if( effectEnd->type < 3 ) // only under restack
- {
- windowBase->OnTransitionEffectEvent( DevelWindow::EffectState::END, static_cast<DevelWindow::EffectType>( effectEnd->type ) );
- }
- }
- return ECORE_CALLBACK_PASS_ON;
-}
-
-/////////////////////////////////////////////////////////////////////////////////////////////////
// Font Callbacks
/////////////////////////////////////////////////////////////////////////////////////////////////
mEcoreEventHandler.PushBack( ecore_event_handler_add( ECORE_WL2_EVENT_DATA_SOURCE_SEND, EcoreEventDataSend, this ) );
mEcoreEventHandler.PushBack( ecore_event_handler_add( ECORE_WL2_EVENT_SELECTION_DATA_READY, EcoreEventDataReceive, this ) );
- // Register Effect Start/End event
- mEcoreEventHandler.PushBack( ecore_event_handler_add( ECORE_WL2_EVENT_EFFECT_START, EcoreEventEffectStart, this ) );
- mEcoreEventHandler.PushBack( ecore_event_handler_add( ECORE_WL2_EVENT_EFFECT_END, EcoreEventEffectEnd, this ) );
-
// Register Vconf notify - font name and size
vconf_notify_key_changed( DALI_VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_NAME, VconfNotifyFontNameChanged, this );
vconf_notify_key_changed( VCONFKEY_SETAPPL_ACCESSIBILITY_FONT_SIZE, VconfNotifyFontSizeChanged, this );
#endif
}
-void WindowBaseEcoreWl2::OnTransitionEffectEvent( DevelWindow::EffectState state, DevelWindow::EffectType type )
-{
- mTransitionEffectEventSignal.Emit( state, type );
-}
-
void WindowBaseEcoreWl2::RegistryGlobalCallback( void* data, struct wl_registry *registry, uint32_t name, const char* interface, uint32_t version )
{
if( strcmp( interface, tizen_policy_interface.name ) == 0 )
*/
void OnFontSizeChanged();
- /**
- * @brief Called when a transition effect-start/end event is received.
- */
- void OnTransitionEffectEvent( DevelWindow::EffectState state, DevelWindow::EffectType type );
-
#ifdef DALI_ELDBUS_AVAILABLE
/**
* @brief Called when Ecore ElDBus accessibility event is received.