#include <dali/internal/window-system/common/window-base.h>
#include <dali/internal/window-system/common/window-render-surface.h>
#include <dali/internal/window-system/common/window-visibility-observer.h>
-#include <dali/devel-api/adaptor-framework/accessibility.h>
namespace Dali
{
Window::~Window()
{
- if ( mAdaptor )
- {
- auto bridge = Accessibility::Bridge::GetCurrentBridge();
- auto accessible2 = mScene.GetRootLayer();
- auto accessible = Accessibility::Accessible::Get( accessible2 );
- bridge->RemoveTopLevelWindow( accessible );
-
- mAdaptor->RemoveWindow( this );
- mAdaptor = NULL;
- }
-
if ( mEventHandler )
{
mEventHandler->RemoveObserver( *this );
{
mEventHandler = EventHandlerPtr(new EventHandler( mWindowSurface, *mAdaptor ) );
mEventHandler->AddObserver( *this );
-
- auto bridge = Accessibility::Bridge::GetCurrentBridge();
- auto v = mScene.GetRootLayer();
- auto accessible = Accessibility::Accessible::Get( v, true );
- bridge->AddTopLevelWindow( accessible );
-
- //FIXME: line below is temporary solution for missing "activate" signal and should be removed
- Show();
}
void Window::OnSurfaceSet( Dali::RenderSurfaceInterface* surface )
{
Uint16Pair newSize( newRect.width, newRect.height );
- bool forceUpdate = false;
- if( mWindowBase->IsEglWindowRotationSupported() )
- {
- forceUpdate = true;
- }
-
- SurfaceResized( forceUpdate );
+ SurfaceResized();
mAdaptor->SurfaceResizePrepare( mSurface.get(), newSize );
{
Uint16Pair newSize( newRect.width, newRect.height );
- bool forceUpdate = false;
- if( mWindowBase->IsEglWindowRotationSupported() )
- {
- forceUpdate = true;
- }
-
- SurfaceResized( forceUpdate );
+ SurfaceResized();
mAdaptor->SurfaceResizePrepare( mSurface.get(), newSize );
Dali::Window handle( this );
mFocusChangedSignal.Emit( focusIn );
mFocusChangeSignal.Emit( handle, focusIn );
-
- if (auto b = Dali::Accessibility::Bridge::GetCurrentBridge())
- {
- if (focusIn)
- {
- b->ApplicationShown();
- }
- else
- {
- b->ApplicationHidden();
- }
- }
}
void Window::OnOutputTransformed()
{
- bool forceUpdate = false;
- if( mWindowBase->IsEglWindowRotationSupported() )
- {
- forceUpdate = true;
- }
PositionSize positionSize = mSurface->GetPositionSize();
- SurfaceResized( forceUpdate );
+ SurfaceResized();
mAdaptor->SurfaceResizePrepare( mSurface.get(), Adaptor::SurfaceSize( positionSize.width, positionSize.height ) );
mAdaptor->SurfaceResizeComplete( mSurface.get(), Adaptor::SurfaceSize( positionSize.width, positionSize.height ) );
}
mWindowSurface->RequestRotation( mRotationAngle, mWindowWidth, mWindowHeight );
- bool forceUpdate = false;
- if( mWindowBase->IsEglWindowRotationSupported() )
- {
- forceUpdate = true;
- }
-
- SurfaceResized( forceUpdate );
+ SurfaceResized();
- mAdaptor->SurfaceResizePrepare( mSurface.get(), Adaptor::SurfaceSize( mWindowWidth, mWindowHeight ) );
+ mAdaptor->SurfaceResizePrepare( mSurface.get(), Adaptor::SurfaceSize( mRotationAngle, mWindowHeight ) );
// Emit signal
Dali::Window handle( this );
- mResizedSignal.Emit( Dali::Window::WindowSize( mWindowWidth, mWindowHeight ) );
- mResizeSignal.Emit( handle, Dali::Window::WindowSize( mWindowWidth, mWindowHeight ) );
+ mResizedSignal.Emit( Dali::Window::WindowSize( mRotationAngle, mWindowHeight ) );
+ mResizeSignal.Emit( handle, Dali::Window::WindowSize( mRotationAngle, mWindowHeight ) );
- mAdaptor->SurfaceResizeComplete( mSurface.get(), Adaptor::SurfaceSize( mWindowWidth, mWindowHeight ) );
+ mAdaptor->SurfaceResizeComplete( mSurface.get(), Adaptor::SurfaceSize( mRotationAngle, mWindowHeight ) );
}
void Window::OnPause()