mBrightness( 0 ),
mBrightnessChangeState( 0 ),
mBrightnessChangeDone( true ),
+ mVisible( true ),
+ mWindowPositionSize( positionSize ),
mOwnSurface( false ),
mMoveResizeSerial( 0 ),
mLastSubmittedMoveResizeSerial( 0 ),
rotationEvent.height = ev->w;
}
+ mWindowPositionSize.width = rotationEvent.width;
+ mWindowPositionSize.height = rotationEvent.height;
+
mRotationSignal.Emit( rotationEvent );
}
}
EGLNativeWindowType WindowBaseEcoreWl2::CreateEglWindow( int width, int height )
{
- mEglWindow = wl_egl_window_create( mWlSurface, width, height );
+ int totalAngle = (mWindowRotationAngle + mScreenRotationAngle) % 360;
+ if( totalAngle == 90 || totalAngle == 270 )
+ {
+ mEglWindow = wl_egl_window_create( mWlSurface, height, width );
+ }
+ else
+ {
+ mEglWindow = wl_egl_window_create( mWlSurface, width, height );
+ }
return static_cast< EGLNativeWindowType >( mEglWindow );
}
void WindowBaseEcoreWl2::Move( PositionSize positionSize )
{
+ mWindowPositionSize = positionSize;
ecore_wl2_window_position_set( mEcoreWindow, positionSize.x, positionSize.y );
}
void WindowBaseEcoreWl2::Resize( PositionSize positionSize )
{
+ mWindowPositionSize = positionSize;
ecore_wl2_window_geometry_set( mEcoreWindow, positionSize.x, positionSize.y, positionSize.width, positionSize.height );
}
void WindowBaseEcoreWl2::MoveResize( PositionSize positionSize )
{
+ mWindowPositionSize = positionSize;
ecore_wl2_window_sync_geometry_set( mEcoreWindow, ++mMoveResizeSerial, positionSize.x, positionSize.y, positionSize.width, positionSize.height );
}
void WindowBaseEcoreWl2::SetPreferredAngle( int angle )
{
+ DALI_LOG_RELEASE_INFO( "WindowBaseEcoreWl2::SetPreferredAngle, angle: %d\n", angle );
ecore_wl2_window_preferred_rotation_set( mEcoreWindow, angle );
}
void WindowBaseEcoreWl2::Show()
{
+ if( !mVisible )
+ {
+ ecore_wl2_window_geometry_set( mEcoreWindow, mWindowPositionSize.x, mWindowPositionSize.y, mWindowPositionSize.width, mWindowPositionSize.height );
+ }
+ mVisible = true;
+
ecore_wl2_window_show( mEcoreWindow );
}
void WindowBaseEcoreWl2::Hide()
{
+ mVisible = false;
ecore_wl2_window_hide( mEcoreWindow );
}
DALI_ASSERT_ALWAYS( 0 && "Failed to get display" );
}
+ ecore_wl2_display_sync( display );
+
mEcoreWindow = ecore_wl2_window_new( display, NULL, positionSize.x, positionSize.y, positionSize.width, positionSize.height );
if ( mEcoreWindow == 0 )
ecore_wl2_window_parent_set( mEcoreWindow, ecoreParent );
}
+int WindowBaseEcoreWl2::CreateFrameRenderedSyncFence()
+{
+ return wl_egl_window_tizen_create_commit_sync_fd( mEglWindow );
+}
+
+int WindowBaseEcoreWl2::CreateFramePresentedSyncFence()
+{
+ return wl_egl_window_tizen_create_presentation_sync_fd( mEglWindow );
+}
+
} // namespace Adaptor
} // namespace Internal