#include <dali/devel-api/adaptor-framework/gl-window.h>
#include <dali/integration-api/events/touch-integ.h>
#include <dali/integration-api/events/key-event-integ.h>
+#include <dali/devel-api/events/key-event-devel.h>
// INTERNAL HEADERS
//#include <dali/internal/graphics/gles/egl-graphics.h>
mFocusChangeSignal(),
mResizedSignal(),
mVisibilityChangedSignal(),
+ mGLInitCallback( 0 ),
+ mGLRenderFrameCallback( 0 ),
+ mGLTerminateCallback( 0 ),
mGLRenderCallback( nullptr ),
mEGLSurface( nullptr ),
mEGLContext( nullptr ),
mEventHandler->RemoveObserver( *this );
}
- mGLTerminateCallback();
+ if( mGLTerminateCallback )
+ {
+ mGLTerminateCallback();
+ }
if( mIsEGLInitialize )
{
return;
}
+ RecalculateTouchPosition( point );
Dali::TouchEvent touchEvent = Dali::Integration::NewTouchEvent( timeStamp, point );
mTouchSignal.Emit( touchEvent );
}
void GlWindow::OnKeyEvent( Dali::Integration::KeyEvent& keyEvent )
{
- Dali::KeyEvent event = Dali::Integration::KeyEvent::Convert( keyEvent );
+ Dali::KeyEvent event = Dali::DevelKeyEvent::New( keyEvent.keyName, keyEvent.logicalKey, keyEvent.keyString, keyEvent.keyCode,
+ keyEvent.keyModifier, keyEvent.time, static_cast<Dali::KeyEvent::State>(keyEvent.state),
+ keyEvent.compose, keyEvent.deviceName, keyEvent.deviceClass, keyEvent.deviceSubclass );
mKeyEventSignal.Emit( event );
}
if( !mInitCallback )
{
- mGLInitCallback();
+ if( mGLInitCallback )
+ {
+ mGLInitCallback();
+ }
mInitCallback = true;
}
- mGLRenderFrameCallback();
+ if( mGLRenderFrameCallback )
+ {
+ mGLRenderFrameCallback();
+ }
if( mIsWindowRotated )
{