#include <dali/integration-api/system-overlay.h>
#include <dali/public-api/render-tasks/render-task.h>
#include <dali/public-api/render-tasks/render-task-list.h>
-#include <orientation.h>
// INTERNAL HEADERS
#include <window-render-surface.h>
#include <drag-and-drop-detector-impl.h>
#include <indicator-impl.h>
#include <window-visibility-observer.h>
+#include <orientation.h>
#include <orientation-impl.h>
namespace
#if defined(DALI_PROFILE_MOBILE)
else if ( mIndicatorOpacityMode == Dali::Window::TRANSPARENT )
{
- ecore_x_e_illume_indicator_opacity_set(xWinId, ECORE_X_ILLUME_INDICATOR_BG_TRANSPARENT);
+ ecore_x_e_illume_indicator_opacity_set(xWinId, ECORE_X_ILLUME_INDICATOR_OPAQUE);
}
#endif
}
Window::Window()
: mSurface(NULL),
mIndicatorStyle(Dali::Window::CHANGEABLE_COLOR),
- mIndicatorVisible(Dali::Window::VISIBLE),
+ mIndicatorVisible(Dali::Window::INVISIBLE),
mIndicatorIsShown(false),
mShowRotatedIndicatorOnClose(false),
mStarted(false),
mNextIndicatorOrientation(Dali::Window::PORTRAIT),
mIndicatorOpacityMode(Dali::Window::OPAQUE),
mOverlay(NULL),
- mAdaptor(NULL)
+ mAdaptor(NULL),
+ mEventHandler(NULL),
+ mPreferredOrientation(Dali::Window::PORTRAIT)
{
}
{
delete mEventHandler;
- if ( mAdaptor )
+ if( mIndicator )
+ {
+ mOverlay->Remove( mIndicator->GetActor() );
+ Dali::RenderTaskList taskList = mOverlay->GetOverlayRenderTasks();
+ Dali::RenderTask indicatorTask = taskList.GetTask(0);
+ mOverlay->GetOverlayRenderTasks().RemoveTask(indicatorTask);
+ mIndicator->Close();
+ delete mIndicator;
+ }
+
+ if( mAdaptor )
{
mAdaptor->RemoveObserver( *this );
mAdaptor->SetDragAndDropDetector( NULL );
}
}
+void Window::IndicatorVisibilityChanged(bool isVisible)
+{
+ mIndicatorVisibilityChangedSignal.Emit(isVisible);
+}
+
void Window::SetIndicatorActorRotation()
{
DALI_LOG_TRACE_METHOD( gWindowLogFilter );
case Dali::Window::PORTRAIT:
actor.SetParentOrigin( ParentOrigin::TOP_CENTER );
actor.SetAnchorPoint( AnchorPoint::TOP_CENTER );
- actor.SetRotation( Degree(0), Vector3::ZAXIS );
+ actor.SetOrientation( Degree(0), Vector3::ZAXIS );
break;
case Dali::Window::PORTRAIT_INVERSE:
actor.SetParentOrigin( ParentOrigin::BOTTOM_CENTER );
actor.SetAnchorPoint( AnchorPoint::TOP_CENTER );
- actor.SetRotation( Degree(180), Vector3::ZAXIS );
+ actor.SetOrientation( Degree(180), Vector3::ZAXIS );
break;
case Dali::Window::LANDSCAPE:
actor.SetParentOrigin( ParentOrigin::CENTER_LEFT );
actor.SetAnchorPoint( AnchorPoint::TOP_CENTER );
- actor.SetRotation( Degree(270), Vector3::ZAXIS );
+ actor.SetOrientation( Degree(270), Vector3::ZAXIS );
break;
case Dali::Window::LANDSCAPE_INVERSE:
actor.SetParentOrigin( ParentOrigin::CENTER_RIGHT );
actor.SetAnchorPoint( AnchorPoint::TOP_CENTER );
- actor.SetRotation( Degree(90), Vector3::ZAXIS );
+ actor.SetOrientation( Degree(90), Vector3::ZAXIS );
break;
}
}
return mDragAndDropDetector;
}
+Dali::Any Window::GetNativeHandle() const
+{
+ if(mEventHandler)
+ {
+ return mEventHandler->mEcoreWindow;
+ }
+ else
+ {
+ return Dali::Any();
+ }
+}
+
void Window::OnStart()
{
- DoShowIndicator( mIndicatorOrientation );
+ ShowIndicator( mIndicatorVisible );
}
void Window::OnPause()