From dd1490e677293bcb4a81aa6d6162f5a93fa35adb Mon Sep 17 00:00:00 2001 From: Seoyeon Kim Date: Tue, 20 Nov 2018 14:24:49 +0900 Subject: [PATCH] [Tizen] Fix to get the logical key to ecore key variable - Ecore key variable should be the logical key, not the string name of the key pressed. - For example, if the user press 'Shift + 2' key, keyPressedName is 2, but key variable is "at" and key string is "@". Change-Id: I1c59b69873635e180e9e66f347c8ebe0b394ac9f Signed-off-by: Seoyeon Kim --- .../input-method-context-impl-ecore-wl.cpp | 10 ++- .../ubuntu-x11/input-method-context-impl-x.cpp | 10 ++- .../windows/input-method-context-impl-win.cpp | 8 ++- .../ecore-wl/window-base-ecore-wl.cpp | 18 ++++- .../ecore-wl2/window-base-ecore-wl2.cpp | 18 ++++- .../ubuntu-x11/window-base-ecore-x.cpp | 18 ++++- .../window-system/windows/window-base-win.cpp | 78 +++++++++++----------- 7 files changed, 110 insertions(+), 50 deletions(-) diff --git a/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.cpp b/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.cpp index b043d32..1405ba8 100755 --- a/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.cpp +++ b/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.cpp @@ -946,13 +946,16 @@ bool InputMethodContextEcoreWl::ProcessEventKeyDown( const KeyEvent& keyEvent ) bool eventHandled( false ); if ( mIMFContext ) { + Integration::KeyEvent integKeyEvent( keyEvent ); + std::string key = integKeyEvent.key; + std::string compose = keyEvent.GetCompose(); std::string deviceName = keyEvent.GetDeviceName(); // We're consuming key down event so we have to pass to InputMethodContext so that it can parse it as well. Ecore_IMF_Event_Key_Down ecoreKeyDownEvent; ecoreKeyDownEvent.keyname = keyEvent.keyPressedName.c_str(); - ecoreKeyDownEvent.key = keyEvent.keyPressedName.c_str(); + ecoreKeyDownEvent.key = key.c_str(); ecoreKeyDownEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyDownEvent.compose = compose.c_str(); ecoreKeyDownEvent.timestamp = keyEvent.time; @@ -996,13 +999,16 @@ bool InputMethodContextEcoreWl::ProcessEventKeyUp( const KeyEvent& keyEvent ) bool eventHandled( false ); if( mIMFContext ) { + Integration::KeyEvent integKeyEvent( keyEvent ); + std::string key = integKeyEvent.key; + std::string compose = keyEvent.GetCompose(); std::string deviceName = keyEvent.GetDeviceName(); // We're consuming key up event so we have to pass to InputMethodContext so that it can parse it as well. Ecore_IMF_Event_Key_Up ecoreKeyUpEvent; ecoreKeyUpEvent.keyname = keyEvent.keyPressedName.c_str(); - ecoreKeyUpEvent.key = keyEvent.keyPressedName.c_str(); + ecoreKeyUpEvent.key = key.c_str(); ecoreKeyUpEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyUpEvent.compose = compose.c_str(); ecoreKeyUpEvent.timestamp = keyEvent.time; diff --git a/dali/internal/input/ubuntu-x11/input-method-context-impl-x.cpp b/dali/internal/input/ubuntu-x11/input-method-context-impl-x.cpp index 7a28eb3..ccb9de5 100755 --- a/dali/internal/input/ubuntu-x11/input-method-context-impl-x.cpp +++ b/dali/internal/input/ubuntu-x11/input-method-context-impl-x.cpp @@ -753,12 +753,15 @@ bool InputMethodContextX::ProcessEventKeyDown( const KeyEvent& keyEvent ) bool eventHandled( false ); if ( mIMFContext ) { + Integration::KeyEvent integKeyEvent( keyEvent ); + std::string key = integKeyEvent.key; + std::string compose = keyEvent.GetCompose(); // We're consuming key down event so we have to pass to InputMethodContext so that it can parse it as well. Ecore_IMF_Event_Key_Down ecoreKeyDownEvent; ecoreKeyDownEvent.keyname = keyEvent.keyPressedName.c_str(); - ecoreKeyDownEvent.key = keyEvent.keyPressedName.c_str(); + ecoreKeyDownEvent.key = key.c_str(); ecoreKeyDownEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyDownEvent.compose = compose.c_str(); ecoreKeyDownEvent.timestamp = keyEvent.time; @@ -804,12 +807,15 @@ bool InputMethodContextX::ProcessEventKeyUp( const KeyEvent& keyEvent ) bool eventHandled( false ); if( mIMFContext ) { + Integration::KeyEvent integKeyEvent( keyEvent ); + std::string key = integKeyEvent.key; + std::string compose = keyEvent.GetCompose(); // We're consuming key up event so we have to pass to InputMethodContext so that it can parse it as well. Ecore_IMF_Event_Key_Up ecoreKeyUpEvent; ecoreKeyUpEvent.keyname = keyEvent.keyPressedName.c_str(); - ecoreKeyUpEvent.key = keyEvent.keyPressedName.c_str(); + ecoreKeyUpEvent.key = key.c_str(); ecoreKeyUpEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyUpEvent.compose = compose.c_str(); ecoreKeyUpEvent.timestamp = keyEvent.time; diff --git a/dali/internal/input/windows/input-method-context-impl-win.cpp b/dali/internal/input/windows/input-method-context-impl-win.cpp index 7c09270..a99763d 100755 --- a/dali/internal/input/windows/input-method-context-impl-win.cpp +++ b/dali/internal/input/windows/input-method-context-impl-win.cpp @@ -734,9 +734,11 @@ bool InputMethodContextWin::ProcessEventKeyDown( const KeyEvent& keyEvent ) // if ( mIMFContext ) // { // // We're consuming key down event so we have to pass to InputMethodContext so that it can parse it as well. +// Internal::KeyEventImpl& keyEventImpl = GetImplementation( keyEvent ); +// std::string key = keyEventImpl.GetKey(); // Ecore_IMF_Event_Key_Down ecoreKeyDownEvent; // ecoreKeyDownEvent.keyname = keyEvent.keyPressedName.c_str(); -// ecoreKeyDownEvent.key = keyEvent.keyPressedName.c_str(); +// ecoreKeyDownEvent.key = key.c_str(); // ecoreKeyDownEvent.string = keyEvent.keyPressed.c_str(); // ecoreKeyDownEvent.compose = keyEvent.GetCompose().c_str(); // ecoreKeyDownEvent.timestamp = keyEvent.time; @@ -783,9 +785,11 @@ bool InputMethodContextWin::ProcessEventKeyUp( const KeyEvent& keyEvent ) // if( mIMFContext ) // { // // We're consuming key up event so we have to pass to InputMethodContext so that it can parse it as well. +// Internal::KeyEventImpl& keyEventImpl = GetImplementation( keyEvent ); +// std::string key = keyEventImpl.GetKey(); // Ecore_IMF_Event_Key_Up ecoreKeyUpEvent; // ecoreKeyUpEvent.keyname = keyEvent.keyPressedName.c_str(); -// ecoreKeyUpEvent.key = keyEvent.keyPressedName.c_str(); +// ecoreKeyUpEvent.key = key.c_str(); // ecoreKeyUpEvent.string = keyEvent.keyPressed.c_str(); // ecoreKeyUpEvent.compose = keyEvent.GetCompose().c_str(); // ecoreKeyUpEvent.timestamp = keyEvent.time; diff --git a/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp b/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp index 6af5474..571a3a6 100644 --- a/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp +++ b/dali/internal/window-system/tizen-wayland/ecore-wl/window-base-ecore-wl.cpp @@ -998,6 +998,7 @@ void WindowBaseEcoreWl::OnKeyDown( void* data, int type, void* event ) DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreWl::OnKeyDown\n" ); std::string keyName( keyEvent->keyname ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -1007,6 +1008,12 @@ void WindowBaseEcoreWl::OnKeyDown( void* data, int type, void* event ) compose = keyEvent->compose; } + // Ensure key symbol is not NULL as keys like SHIFT have a null string. + if( keyEvent->key ) + { + key = keyEvent->key; + } + int keyCode = KeyLookup::GetDaliKeyCode( keyEvent->keyname ); keyCode = ( keyCode == -1 ) ? 0 : keyCode; int modifier( keyEvent->modifiers ); @@ -1030,7 +1037,7 @@ void WindowBaseEcoreWl::OnKeyDown( void* data, int type, void* event ) GetDeviceClass( ecore_device_class_get( keyEvent->dev ), deviceClass ); GetDeviceSubclass( ecore_device_subclass_get( keyEvent->dev ), deviceSubclass ); - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, deviceName, deviceClass, deviceSubclass ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, deviceName, deviceClass, deviceSubclass ); mKeyEventSignal.Emit( keyEvent ); } @@ -1045,6 +1052,7 @@ void WindowBaseEcoreWl::OnKeyUp( void* data, int type, void* event ) DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreWl::OnKeyUp\n" ); std::string keyName( keyEvent->keyname ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -1054,6 +1062,12 @@ void WindowBaseEcoreWl::OnKeyUp( void* data, int type, void* event ) compose = keyEvent->compose; } + // Ensure key symbol is not NULL as keys like SHIFT have a null string. + if( keyEvent->key ) + { + key = keyEvent->key; + } + int keyCode = KeyLookup::GetDaliKeyCode( keyEvent->keyname ); keyCode = ( keyCode == -1 ) ? 0 : keyCode; int modifier( keyEvent->modifiers ); @@ -1077,7 +1091,7 @@ void WindowBaseEcoreWl::OnKeyUp( void* data, int type, void* event ) GetDeviceClass( ecore_device_class_get( keyEvent->dev ), deviceClass ); GetDeviceSubclass( ecore_device_subclass_get( keyEvent->dev ), deviceSubclass ); - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, deviceName, deviceClass, deviceSubclass ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, deviceName, deviceClass, deviceSubclass ); mKeyEventSignal.Emit( keyEvent ); } diff --git a/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp b/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp index c1b4534..bfd4b63 100755 --- a/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp +++ b/dali/internal/window-system/tizen-wayland/ecore-wl2/window-base-ecore-wl2.cpp @@ -1005,6 +1005,7 @@ void WindowBaseEcoreWl2::OnKeyDown( void* data, int type, void* event ) DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreWl::OnKeyDown\n" ); std::string keyName( keyEvent->keyname ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -1014,6 +1015,12 @@ void WindowBaseEcoreWl2::OnKeyDown( void* data, int type, void* event ) compose = keyEvent->compose; } + // Ensure key symbol is not NULL as keys like SHIFT have a null string. + if( keyEvent->key ) + { + key = keyEvent->key; + } + int keyCode = KeyLookup::GetDaliKeyCode( keyEvent->keyname ); keyCode = ( keyCode == -1 ) ? 0 : keyCode; int modifier( keyEvent->modifiers ); @@ -1037,7 +1044,7 @@ void WindowBaseEcoreWl2::OnKeyDown( void* data, int type, void* event ) GetDeviceClass( ecore_device_class_get( keyEvent->dev ), deviceClass ); GetDeviceSubclass( ecore_device_subclass_get( keyEvent->dev ), deviceSubclass ); - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, deviceName, deviceClass, deviceSubclass ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, deviceName, deviceClass, deviceSubclass ); mKeyEventSignal.Emit( keyEvent ); } @@ -1052,6 +1059,7 @@ void WindowBaseEcoreWl2::OnKeyUp( void* data, int type, void* event ) DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreWl::OnKeyUp\n" ); std::string keyName( keyEvent->keyname ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -1061,6 +1069,12 @@ void WindowBaseEcoreWl2::OnKeyUp( void* data, int type, void* event ) compose = keyEvent->compose; } + // Ensure key symbol is not NULL as keys like SHIFT have a null string. + if( keyEvent->key ) + { + key = keyEvent->key; + } + int keyCode = KeyLookup::GetDaliKeyCode( keyEvent->keyname ); keyCode = ( keyCode == -1 ) ? 0 : keyCode; int modifier( keyEvent->modifiers ); @@ -1084,7 +1098,7 @@ void WindowBaseEcoreWl2::OnKeyUp( void* data, int type, void* event ) GetDeviceClass( ecore_device_class_get( keyEvent->dev ), deviceClass ); GetDeviceSubclass( ecore_device_subclass_get( keyEvent->dev ), deviceSubclass ); - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, deviceName, deviceClass, deviceSubclass ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, deviceName, deviceClass, deviceSubclass ); mKeyEventSignal.Emit( keyEvent ); } diff --git a/dali/internal/window-system/ubuntu-x11/window-base-ecore-x.cpp b/dali/internal/window-system/ubuntu-x11/window-base-ecore-x.cpp index 639a334..edc82c8 100755 --- a/dali/internal/window-system/ubuntu-x11/window-base-ecore-x.cpp +++ b/dali/internal/window-system/ubuntu-x11/window-base-ecore-x.cpp @@ -519,6 +519,7 @@ void WindowBaseEcoreX::OnKeyDown( void* data, int type, void* event ) DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, "WindowBaseEcoreX::OnKeyDown\n" ); std::string keyName( keyEvent->keyname ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -528,6 +529,12 @@ void WindowBaseEcoreX::OnKeyDown( void* data, int type, void* event ) compose = keyEvent->compose; } + // Ensure key symbol is not NULL as keys like SHIFT have a null string. + if( keyEvent->key ) + { + key = keyEvent->key; + } + int keyCode = ecore_x_keysym_keycode_get( keyEvent->keyname ); int modifier( keyEvent->modifiers ); unsigned long time = keyEvent->timestamp; @@ -538,7 +545,7 @@ void WindowBaseEcoreX::OnKeyDown( void* data, int type, void* event ) keyString = keyEvent->string; } - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); mKeyEventSignal.Emit( keyEvent ); } @@ -553,6 +560,7 @@ void WindowBaseEcoreX::OnKeyUp( void* data, int type, void* event ) DALI_LOG_INFO( gWindowBaseLogFilter, Debug::General, " WindowBaseEcoreX::OnKeyUp\n" ); std::string keyName( keyEvent->keyname ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -561,6 +569,12 @@ void WindowBaseEcoreX::OnKeyUp( void* data, int type, void* event ) { compose = keyEvent->compose; } + // Ensure key symbol is not NULL as keys like SHIFT have a null string. + if( keyEvent->key ) + { + key = keyEvent->key; + } + int keyCode = ecore_x_keysym_keycode_get( keyEvent->keyname ); int modifier( keyEvent->modifiers ); unsigned long time( keyEvent->timestamp ); @@ -571,7 +585,7 @@ void WindowBaseEcoreX::OnKeyUp( void* data, int type, void* event ) keyString = keyEvent->string; } - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); mKeyEventSignal.Emit( keyEvent ); } diff --git a/dali/internal/window-system/windows/window-base-win.cpp b/dali/internal/window-system/windows/window-base-win.cpp index 98926f1..ceca985 100755 --- a/dali/internal/window-system/windows/window-base-win.cpp +++ b/dali/internal/window-system/windows/window-base-win.cpp @@ -242,17 +242,17 @@ WindowBaseWin::~WindowBaseWin() WindowsPlatformImplement::PostWinMessage( WM_CLOSE, 0, 0, mWin32Window ); } -static void EventEntry( long hWnd, unsigned int uMsg, long wParam, long lParam ) -{ - EventCallback callback = GetCallback( uMsg ); - EventHandler *handler = (EventHandler*)GetEventHandler( uMsg ); - - if( NULL != callback ) - { - //EventHandler *handler = new EventHandler(); - TWinEventInfo eventInfo( hWnd, uMsg, wParam, lParam ); - callback( handler, uMsg, &eventInfo ); - } +static void EventEntry( long hWnd, unsigned int uMsg, long wParam, long lParam ) +{ + EventCallback callback = GetCallback( uMsg ); + EventHandler *handler = (EventHandler*)GetEventHandler( uMsg ); + + if( NULL != callback ) + { + //EventHandler *handler = new EventHandler(); + TWinEventInfo eventInfo( hWnd, uMsg, wParam, lParam ); + callback( handler, uMsg, &eventInfo ); + } } void WindowBaseWin::Initialize( PositionSize positionSize, Any surface, bool isTransparent ) @@ -379,27 +379,27 @@ void WindowBaseWin::OnFocusOut( void* data, int type, TWinEventInfo *event ) void WindowBaseWin::OnWindowDamaged( void* data, int type, TWinEventInfo *event ) { - Event_Mouse_Button* windowDamagedEvent( (Event_Mouse_Button*)event ); - EventHandler* handler( (EventHandler*)data ); - - if( windowDamagedEvent->window == mWin32Window ) - { - DamageArea area; - area.x = 0; - area.y = 0; - area.width = 480; - area.height = 800; - - //handler->SendEvent( area ); - mWindowDamagedSignal.Emit( area ); - } + Event_Mouse_Button* windowDamagedEvent( (Event_Mouse_Button*)event ); + EventHandler* handler( (EventHandler*)data ); + + if( windowDamagedEvent->window == mWin32Window ) + { + DamageArea area; + area.x = 0; + area.y = 0; + area.width = 480; + area.height = 800; + + //handler->SendEvent( area ); + mWindowDamagedSignal.Emit( area ); + } } void WindowBaseWin::OnMouseButtonDown( void* data, int type, TWinEventInfo *event ) { Event_Mouse_Button touchEvent = *((Event_Mouse_Button*)event); - touchEvent.x = LOWORD( event->lParam ); - touchEvent.y = HIWORD( event->lParam ); + touchEvent.x = LOWORD( event->lParam ); + touchEvent.y = HIWORD( event->lParam ); touchEvent.multi.device = DEVICE_MOUSE; if( touchEvent.window == mWin32Window ) @@ -429,8 +429,8 @@ void WindowBaseWin::OnMouseButtonDown( void* data, int type, TWinEventInfo *even void WindowBaseWin::OnMouseButtonUp( void* data, int type, TWinEventInfo *event ) { Event_Mouse_Button touchEvent = *( (Event_Mouse_Button*)event ); - touchEvent.x = LOWORD( event->lParam ); - touchEvent.y = HIWORD( event->lParam ); + touchEvent.x = LOWORD( event->lParam ); + touchEvent.y = HIWORD( event->lParam ); touchEvent.multi.device = DEVICE_MOUSE; if( touchEvent.window == mWin32Window ) @@ -461,8 +461,8 @@ void WindowBaseWin::OnMouseButtonMove( void* data, int type, TWinEventInfo *even { Event_Mouse_Button touchEvent = *((Event_Mouse_Button*)event); touchEvent.timestamp = GetTickCount(); - touchEvent.x = LOWORD( event->lParam ); - touchEvent.y = HIWORD( event->lParam ); + touchEvent.x = LOWORD( event->lParam ); + touchEvent.y = HIWORD( event->lParam ); touchEvent.multi.device = DEVICE_MOUSE; if( touchEvent.window == mWin32Window ) @@ -511,6 +511,7 @@ void WindowBaseWin::OnKeyDown( void* data, int type, TWinEventInfo *event ) int keyCode = event->wParam; std::string keyName( WindowsPlatformImplement::GetKeyName( keyCode ) ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -520,7 +521,7 @@ void WindowBaseWin::OnKeyDown( void* data, int type, TWinEventInfo *event ) // Ensure key event string is not NULL as keys like SHIFT have a null string. keyString.push_back( event->wParam ); - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Down, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); mKeyEventSignal.Emit( keyEvent ); } @@ -534,6 +535,7 @@ void WindowBaseWin::OnKeyUp( void* data, int type, TWinEventInfo *event ) int keyCode = event->wParam; std::string keyName( WindowsPlatformImplement::GetKeyName( keyCode ) ); + std::string key( "" ); std::string keyString( "" ); std::string compose( "" ); @@ -543,7 +545,7 @@ void WindowBaseWin::OnKeyUp( void* data, int type, TWinEventInfo *event ) // Ensure key event string is not NULL as keys like SHIFT have a null string. keyString.push_back( event->wParam ); - Integration::KeyEvent keyEvent( keyName, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); + Integration::KeyEvent keyEvent( keyName, key, keyString, keyCode, modifier, time, Integration::KeyEvent::Up, compose, DEFAULT_DEVICE_NAME, DEFAULT_DEVICE_CLASS, DEFAULT_DEVICE_SUBCLASS ); mKeyEventSignal.Emit( keyEvent ); } @@ -887,11 +889,11 @@ unsigned int WindowBaseWin::GetSurfaceId( Any surface ) const void WindowBaseWin::CreateWinWindow( PositionSize positionSize, bool isTransparent ) { - long hWnd = WindowsPlatformImplement::CreateHwnd( "Demo", "Demo", positionSize.x, positionSize.y, positionSize.width, positionSize.height, NULL ); - - WindowsPlatformImplement::ShowWindow( hWnd ); - - mWin32Window = (Win_Window_Handle)hWnd; + long hWnd = WindowsPlatformImplement::CreateHwnd( "Demo", "Demo", positionSize.x, positionSize.y, positionSize.width, positionSize.height, NULL ); + + WindowsPlatformImplement::ShowWindow( hWnd ); + + mWin32Window = (Win_Window_Handle)hWnd; DALI_ASSERT_ALWAYS( mWin32Window != 0 && "There is no EcoreWin window" ); } -- 2.7.4