From: Joogab Yun Date: Tue, 1 Sep 2020 08:07:50 +0000 (+0900) Subject: Revert "KeyEvent class pimpling" X-Git-Tag: accepted/tizen/unified/20200903.151828~3 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git;a=commitdiff_plain;h=7852e9025794964a77a4f2f18c2a8b4bc9e266c1 Revert "KeyEvent class pimpling" This reverts commit 20e9508534d3498d600a885df07b8061eaf1500a. --- diff --git a/automated-tests/src/dali-adaptor/utc-Dali-Key.cpp b/automated-tests/src/dali-adaptor/utc-Dali-Key.cpp index 27e5fb6..9a2e7dc 100644 --- a/automated-tests/src/dali-adaptor/utc-Dali-Key.cpp +++ b/automated-tests/src/dali-adaptor/utc-Dali-Key.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2014 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -24,7 +24,6 @@ #include #include #include -#include #include using namespace Dali; @@ -98,7 +97,8 @@ const std::size_t KEY_LOOKUP_COUNT = (sizeof( KeyLookupTable))/ (sizeof(KeyLooku // Generate a KeyPressEvent to send to Core Dali::KeyEvent GenerateKeyPress( const std::string& keyName ) { - Dali::KeyEvent keyPress = DevelKeyEvent::New(keyName, "", "", -1, 0, 0lu, Dali::KeyEvent::Down, "", "", Device::Class::NONE, Device::Subclass::NONE); // set name to test, key string to i and modifier to shift + KeyEvent keyPress; + keyPress.keyPressedName = keyName; return keyPress; } diff --git a/dali/devel-api/adaptor-framework/event-feeder.h b/dali/devel-api/adaptor-framework/event-feeder.h index ab52f73..e1648a6 100644 --- a/dali/devel-api/adaptor-framework/event-feeder.h +++ b/dali/devel-api/adaptor-framework/event-feeder.h @@ -25,7 +25,7 @@ namespace Dali { class WheelEvent; -class KeyEvent; +struct KeyEvent; struct TouchPoint; namespace EventFeeder diff --git a/dali/devel-api/adaptor-framework/window-devel.h b/dali/devel-api/adaptor-framework/window-devel.h index 42de53c..4e14202 100644 --- a/dali/devel-api/adaptor-framework/window-devel.h +++ b/dali/devel-api/adaptor-framework/window-devel.h @@ -27,7 +27,7 @@ namespace Dali { -class KeyEvent; +struct KeyEvent; class TouchEvent; class WheelEvent; class RenderTaskList; diff --git a/dali/integration-api/adaptor-framework/scene-holder-impl.h b/dali/integration-api/adaptor-framework/scene-holder-impl.h index e3828b9..c5d5936 100644 --- a/dali/integration-api/adaptor-framework/scene-holder-impl.h +++ b/dali/integration-api/adaptor-framework/scene-holder-impl.h @@ -43,7 +43,7 @@ class Actor; class Layer; class WheelEvent; struct TouchPoint; -class KeyEvent; +struct KeyEvent; namespace Integration { diff --git a/dali/integration-api/adaptor-framework/scene-holder.cpp b/dali/integration-api/adaptor-framework/scene-holder.cpp index f9c1965..d7b1514 100644 --- a/dali/integration-api/adaptor-framework/scene-holder.cpp +++ b/dali/integration-api/adaptor-framework/scene-holder.cpp @@ -102,8 +102,8 @@ void SceneHolder::FeedWheelEvent( Dali::WheelEvent& wheelEvent ) void SceneHolder::FeedKeyEvent( Dali::KeyEvent& keyEvent ) { - Integration::KeyEvent event( keyEvent.GetKeyName(), keyEvent.GetLogicalKey(), keyEvent.GetKeyString(), keyEvent.GetKeyCode(), keyEvent.GetKeyModifier(), keyEvent.GetTime(), static_cast< Integration::KeyEvent::State >( keyEvent.GetState() ), keyEvent.GetCompose(), keyEvent.GetDeviceName(), keyEvent.GetDeviceClass(), keyEvent.GetDeviceSubclass() ); - GetImplementation(*this).FeedKeyEvent( event ); + Integration::KeyEvent convertedEvent( keyEvent ); + GetImplementation(*this).FeedKeyEvent( convertedEvent ); } SceneHolder SceneHolder::Get( Actor actor ) diff --git a/dali/integration-api/adaptor-framework/scene-holder.h b/dali/integration-api/adaptor-framework/scene-holder.h index fe80572..2026e19 100644 --- a/dali/integration-api/adaptor-framework/scene-holder.h +++ b/dali/integration-api/adaptor-framework/scene-holder.h @@ -33,7 +33,7 @@ class Any; class TouchEvent; class WheelEvent; struct TouchPoint; -class KeyEvent; +struct KeyEvent; namespace Internal DALI_INTERNAL { diff --git a/dali/internal/adaptor/android/framework-android.cpp b/dali/internal/adaptor/android/framework-android.cpp index b129bcd..741f76c 100644 --- a/dali/internal/adaptor/android/framework-android.cpp +++ b/dali/internal/adaptor/android/framework-android.cpp @@ -29,7 +29,6 @@ #include #include #include -#include // INTERNAL INCLUDES #include @@ -422,13 +421,13 @@ struct Framework::Impl int32_t action = AKeyEvent_getAction( event ); int64_t timeStamp = AKeyEvent_getEventTime( event ); - Dali::KeyEvent::State state = Dali::KeyEvent::Down; + KeyEvent::State state = KeyEvent::Down; switch ( action ) { case AKEY_EVENT_ACTION_DOWN: break; case AKEY_EVENT_ACTION_UP: - state = Dali::KeyEvent::Up; + state = KeyEvent::Up; break; } @@ -441,7 +440,7 @@ struct Framework::Impl default: break; } - Dali::KeyEvent keyEvent = Dali::DevelKeyEvent::New( keyName, "", "", keyCode, 0, timeStamp, state, "", "", Device::Class::NONE, Device::Subclass::NONE ); + Dali::KeyEvent keyEvent( keyName, "", keyCode, 0, timeStamp, state ); Dali::Internal::Adaptor::Framework::Impl::NativeAppKeyEvent( framework, keyEvent ); return 1; } diff --git a/dali/internal/adaptor/common/adaptor-impl.cpp b/dali/internal/adaptor/common/adaptor-impl.cpp index 52b9eff..a48b607 100755 --- a/dali/internal/adaptor/common/adaptor-impl.cpp +++ b/dali/internal/adaptor/common/adaptor-impl.cpp @@ -574,9 +574,9 @@ void Adaptor::FeedWheelEvent( Dali::WheelEvent& wheelEvent ) mWindows.front()->FeedWheelEvent( event ); } -void Adaptor::FeedKeyEvent( Dali::KeyEvent& keyEvent ) +void Adaptor::FeedKeyEvent( KeyEvent& keyEvent ) { - Integration::KeyEvent convertedEvent( keyEvent.GetKeyName(), keyEvent.GetLogicalKey(), keyEvent.GetKeyString(), keyEvent.GetKeyCode(), keyEvent.GetKeyModifier(), keyEvent.GetTime(), static_cast< Integration::KeyEvent::State >( keyEvent.GetState() ), keyEvent.GetCompose(), keyEvent.GetDeviceName(), keyEvent.GetDeviceClass(), keyEvent.GetDeviceSubclass() ); + Integration::KeyEvent convertedEvent( keyEvent ); mWindows.front()->FeedKeyEvent( convertedEvent ); } diff --git a/dali/internal/adaptor/common/adaptor-impl.h b/dali/internal/adaptor/common/adaptor-impl.h index 7093fb7..5d0e63a 100755 --- a/dali/internal/adaptor/common/adaptor-impl.h +++ b/dali/internal/adaptor/common/adaptor-impl.h @@ -251,7 +251,7 @@ public: // AdaptorInternalServices implementation /** * @copydoc Dali::EventFeeder::FeedKeyEvent() */ - virtual void FeedKeyEvent( Dali::KeyEvent& keyEvent ); + virtual void FeedKeyEvent( KeyEvent& keyEvent ); /** * @copydoc Dali::Adaptor::ReplaceSurface() diff --git a/dali/internal/input/common/key-impl.cpp b/dali/internal/input/common/key-impl.cpp index 49dd765..fe81d22 100644 --- a/dali/internal/input/common/key-impl.cpp +++ b/dali/internal/input/common/key-impl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2014 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -282,7 +282,7 @@ KeyMap globalKeyLookup; bool IsKey( const Dali::KeyEvent& keyEvent, Dali::KEY daliKey) { - int key = globalKeyLookup.GetDaliKeyEnum( keyEvent.GetKeyName().c_str() ); + int key = globalKeyLookup.GetDaliKeyEnum( keyEvent.keyPressedName.c_str() ); return daliKey == key; } 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 7482be6..88b63a6 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 @@ -1055,14 +1055,14 @@ bool InputMethodContextEcoreWl::FilterEventKey( const Dali::KeyEvent& keyEvent ) bool eventHandled( false ); // If a device key then skip ecore_imf_context_filter_event. - if ( ! KeyLookup::IsDeviceButton( keyEvent.GetKeyName().c_str() )) + if ( ! KeyLookup::IsDeviceButton( keyEvent.keyPressedName.c_str() )) { //check whether it's key down or key up event - if ( keyEvent.GetState() == Dali::KeyEvent::Down ) + if ( keyEvent.state == KeyEvent::Down ) { eventHandled = ProcessEventKeyDown( keyEvent ); } - else if ( keyEvent.GetState() == Dali::KeyEvent::Up ) + else if ( keyEvent.state == KeyEvent::Up ) { eventHandled = ProcessEventKeyUp( keyEvent ); } @@ -1160,38 +1160,38 @@ void InputMethodContextEcoreWl::GetPreeditStyle( Dali::InputMethodContext::PreEd attrs = mPreeditAttrs; } -bool InputMethodContextEcoreWl::ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ) +bool InputMethodContextEcoreWl::ProcessEventKeyDown( const KeyEvent& keyEvent ) { bool eventHandled( false ); if ( mIMFContext ) { - Integration::KeyEvent integKeyEvent( keyEvent.GetKeyName(), keyEvent.GetLogicalKey(), keyEvent.GetKeyString(), keyEvent.GetKeyCode(), keyEvent.GetKeyModifier(), keyEvent.GetTime(), static_cast< Integration::KeyEvent::State >( keyEvent.GetState() ), keyEvent.GetCompose(), keyEvent.GetDeviceName(), keyEvent.GetDeviceClass(), keyEvent.GetDeviceSubclass() ); + Integration::KeyEvent integKeyEvent( keyEvent ); std::string key = integKeyEvent.logicalKey; - std::string compose = integKeyEvent.compose; - std::string deviceName = integKeyEvent.deviceName; + 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 = integKeyEvent.keyName.c_str(); + ecoreKeyDownEvent.keyname = keyEvent.keyPressedName.c_str(); ecoreKeyDownEvent.key = key.c_str(); - ecoreKeyDownEvent.string = integKeyEvent.keyString.c_str(); + ecoreKeyDownEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyDownEvent.compose = compose.c_str(); - ecoreKeyDownEvent.timestamp = integKeyEvent.time; - ecoreKeyDownEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( integKeyEvent.keyModifier ); - ecoreKeyDownEvent.locks = EcoreInputModifierToEcoreIMFLock( integKeyEvent.keyModifier ); + ecoreKeyDownEvent.timestamp = keyEvent.time; + ecoreKeyDownEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( keyEvent.keyModifier ); + ecoreKeyDownEvent.locks = EcoreInputModifierToEcoreIMFLock( keyEvent.keyModifier ); ecoreKeyDownEvent.dev_name = deviceName.c_str(); - ecoreKeyDownEvent.dev_class = static_cast ( integKeyEvent.deviceClass );//ECORE_IMF_DEVICE_CLASS_KEYBOARD; - ecoreKeyDownEvent.dev_subclass = static_cast ( integKeyEvent.deviceSubclass );//ECORE_IMF_DEVICE_SUBCLASS_NONE; + ecoreKeyDownEvent.dev_class = static_cast ( keyEvent.GetDeviceClass() );//ECORE_IMF_DEVICE_CLASS_KEYBOARD; + ecoreKeyDownEvent.dev_subclass = static_cast ( keyEvent.GetDeviceSubclass() );//ECORE_IMF_DEVICE_SUBCLASS_NONE; #if defined(ECORE_VERSION_MAJOR) && (ECORE_VERSION_MAJOR >= 1) && defined(ECORE_VERSION_MINOR) && (ECORE_VERSION_MINOR >= 22) - ecoreKeyDownEvent.keycode = integKeyEvent.keyCode; // Ecore_IMF_Event structure has added 'keycode' variable since ecore_imf 1.22 version. + ecoreKeyDownEvent.keycode = keyEvent.keyCode; // Ecore_IMF_Event structure has added 'keycode' variable since ecore_imf 1.22 version. #endif // Since ecore_imf 1.22 version // If the device is IME and the focused key is the direction keys, then we should send a key event to move a key cursor. - if ((integKeyEvent.deviceName == "ime") && ((!strncmp(integKeyEvent.keyName.c_str(), "Left", 4)) || - (!strncmp(integKeyEvent.keyName.c_str(), "Right", 5)) || - (!strncmp(integKeyEvent.keyName.c_str(), "Up", 2)) || - (!strncmp(integKeyEvent.keyName.c_str(), "Down", 4)))) + if ((keyEvent.GetDeviceName() == "ime") && ((!strncmp(keyEvent.keyPressedName.c_str(), "Left", 4)) || + (!strncmp(keyEvent.keyPressedName.c_str(), "Right", 5)) || + (!strncmp(keyEvent.keyPressedName.c_str(), "Up", 2)) || + (!strncmp(keyEvent.keyPressedName.c_str(), "Down", 4)))) { eventHandled = 0; } @@ -1205,9 +1205,9 @@ bool InputMethodContextEcoreWl::ProcessEventKeyDown( const Dali::KeyEvent& keyEv // If the event has not been handled by InputMethodContext then check if we should reset our input method context if (!eventHandled) { - if (!strcmp(integKeyEvent.keyName.c_str(), "Escape") || - !strcmp(integKeyEvent.keyName.c_str(), "Return") || - !strcmp(integKeyEvent.keyName.c_str(), "KP_Enter")) + if (!strcmp(keyEvent.keyPressedName.c_str(), "Escape") || + !strcmp(keyEvent.keyPressedName.c_str(), "Return") || + !strcmp(keyEvent.keyPressedName.c_str(), "KP_Enter")) { ecore_imf_context_reset(mIMFContext); } @@ -1216,31 +1216,31 @@ bool InputMethodContextEcoreWl::ProcessEventKeyDown( const Dali::KeyEvent& keyEv return eventHandled; } -bool InputMethodContextEcoreWl::ProcessEventKeyUp( const Dali::KeyEvent& keyEvent ) +bool InputMethodContextEcoreWl::ProcessEventKeyUp( const KeyEvent& keyEvent ) { bool eventHandled( false ); if( mIMFContext ) { - Integration::KeyEvent integKeyEvent( keyEvent.GetKeyName(), keyEvent.GetLogicalKey(), keyEvent.GetKeyString(), keyEvent.GetKeyCode(), keyEvent.GetKeyModifier(), keyEvent.GetTime(), static_cast< Integration::KeyEvent::State >( keyEvent.GetState() ), keyEvent.GetCompose(), keyEvent.GetDeviceName(), keyEvent.GetDeviceClass(), keyEvent.GetDeviceSubclass() ); + Integration::KeyEvent integKeyEvent( keyEvent ); std::string key = integKeyEvent.logicalKey; - std::string compose = integKeyEvent.compose; - std::string deviceName = integKeyEvent.deviceName; + 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 = integKeyEvent.keyName.c_str(); + ecoreKeyUpEvent.keyname = keyEvent.keyPressedName.c_str(); ecoreKeyUpEvent.key = key.c_str(); - ecoreKeyUpEvent.string = integKeyEvent.keyString.c_str(); + ecoreKeyUpEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyUpEvent.compose = compose.c_str(); - ecoreKeyUpEvent.timestamp = integKeyEvent.time; - ecoreKeyUpEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( integKeyEvent.keyModifier ); - ecoreKeyUpEvent.locks = EcoreInputModifierToEcoreIMFLock( integKeyEvent.keyModifier ); + ecoreKeyUpEvent.timestamp = keyEvent.time; + ecoreKeyUpEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( keyEvent.keyModifier ); + ecoreKeyUpEvent.locks = EcoreInputModifierToEcoreIMFLock( keyEvent.keyModifier ); ecoreKeyUpEvent.dev_name = deviceName.c_str(); - ecoreKeyUpEvent.dev_class = static_cast ( integKeyEvent.deviceClass );//ECORE_IMF_DEVICE_CLASS_KEYBOARD; - ecoreKeyUpEvent.dev_subclass = static_cast ( integKeyEvent.deviceSubclass );//ECORE_IMF_DEVICE_SUBCLASS_NONE; + ecoreKeyUpEvent.dev_class = static_cast ( keyEvent.GetDeviceClass() );//ECORE_IMF_DEVICE_CLASS_KEYBOARD; + ecoreKeyUpEvent.dev_subclass = static_cast ( keyEvent.GetDeviceSubclass() );//ECORE_IMF_DEVICE_SUBCLASS_NONE; #if defined(ECORE_VERSION_MAJOR) && (ECORE_VERSION_MAJOR >= 1) && defined(ECORE_VERSION_MINOR) && (ECORE_VERSION_MINOR >= 22) - ecoreKeyUpEvent.keycode = integKeyEvent.keyCode; // Ecore_IMF_Event structure has added 'keycode' variable since ecore_imf 1.22 version. + ecoreKeyUpEvent.keycode = keyEvent.keyCode; // Ecore_IMF_Event structure has added 'keycode' variable since ecore_imf 1.22 version. #endif // Since ecore_imf 1.22 version eventHandled = ecore_imf_context_filter_event(mIMFContext, diff --git a/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.h b/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.h index acde069..8a37100 100755 --- a/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.h +++ b/dali/internal/input/tizen-wayland/input-method-context-impl-ecore-wl.h @@ -286,7 +286,7 @@ private: * @param[in] keyEvent The event key to be handled. * @return Whether the event key is handled. */ - bool ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ); + bool ProcessEventKeyDown( const KeyEvent& keyEvent ); /** * @brief Process event key up, whether filter a key to isf. @@ -294,7 +294,7 @@ private: * @param[in] keyEvent The event key to be handled. * @return Whether the event key is handled. */ - bool ProcessEventKeyUp( const Dali::KeyEvent& keyEvent ); + bool ProcessEventKeyUp( const KeyEvent& keyEvent ); /** * Ecore_Event_Modifier enums in Ecore_Input.h do not match Ecore_IMF_Keyboard_Modifiers in Ecore_IMF.h. 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 b375e31..83e0c22 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 @@ -761,14 +761,14 @@ bool InputMethodContextX::FilterEventKey( const Dali::KeyEvent& keyEvent ) bool eventHandled( false ); // If a device key then skip ecore_imf_context_filter_event. - if ( ! KeyLookup::IsDeviceButton( keyEvent.GetKeyName().c_str() )) + if ( ! KeyLookup::IsDeviceButton( keyEvent.keyPressedName.c_str() )) { //check whether it's key down or key up event - if ( keyEvent.GetState() == Dali::KeyEvent::Down ) + if ( keyEvent.state == KeyEvent::Down ) { eventHandled = ProcessEventKeyDown( keyEvent ); } - else if ( keyEvent.GetState() == Dali::KeyEvent::Up ) + else if ( keyEvent.state == KeyEvent::Up ) { eventHandled = ProcessEventKeyUp( keyEvent ); } @@ -857,25 +857,25 @@ void InputMethodContextX::GetPreeditStyle( Dali::InputMethodContext::PreEditAttr attrs = mPreeditAttrs; } -bool InputMethodContextX::ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ) +bool InputMethodContextX::ProcessEventKeyDown( const KeyEvent& keyEvent ) { bool eventHandled( false ); if ( mIMFContext ) { - Integration::KeyEvent integKeyEvent( keyEvent.GetKeyName(), keyEvent.GetLogicalKey(), keyEvent.GetKeyString(), keyEvent.GetKeyCode(), keyEvent.GetKeyModifier(), keyEvent.GetTime(), static_cast< Integration::KeyEvent::State >( keyEvent.GetState() ), keyEvent.GetCompose(), keyEvent.GetDeviceName(), keyEvent.GetDeviceClass(), keyEvent.GetDeviceSubclass() ); + Integration::KeyEvent integKeyEvent( keyEvent ); std::string key = integKeyEvent.logicalKey; - std::string compose = integKeyEvent.compose; + 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 = integKeyEvent.keyName.c_str(); + ecoreKeyDownEvent.keyname = keyEvent.keyPressedName.c_str(); ecoreKeyDownEvent.key = key.c_str(); - ecoreKeyDownEvent.string = integKeyEvent.keyString.c_str(); + ecoreKeyDownEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyDownEvent.compose = compose.c_str(); - ecoreKeyDownEvent.timestamp = integKeyEvent.time; - ecoreKeyDownEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( integKeyEvent.keyModifier ); - ecoreKeyDownEvent.locks = EcoreInputModifierToEcoreIMFLock( integKeyEvent.keyModifier ); + ecoreKeyDownEvent.timestamp = keyEvent.time; + ecoreKeyDownEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( keyEvent.keyModifier ); + ecoreKeyDownEvent.locks = EcoreInputModifierToEcoreIMFLock( keyEvent.keyModifier ); #if defined(ECORE_VERSION_MAJOR) && (ECORE_VERSION_MAJOR >= 1) && defined(ECORE_VERSION_MINOR) #if (ECORE_VERSION_MINOR >= 14) @@ -884,15 +884,15 @@ bool InputMethodContextX::ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ) ecoreKeyDownEvent.dev_subclass = ECORE_IMF_DEVICE_SUBCLASS_NONE; #endif // Since ecore_imf 1.14 version #if (ECORE_VERSION_MINOR >= 22) - ecoreKeyDownEvent.keycode = integKeyEvent.keyCode; + ecoreKeyDownEvent.keycode = keyEvent.keyCode; #endif // Since ecore_imf 1.22 version #endif // Since ecore_imf Version 1 // If the device is IME and the focused key is the direction keys, then we should send a key event to move a key cursor. - if ((integKeyEvent.deviceName == "ime") && ((!strncmp(integKeyEvent.keyName.c_str(), "Left", 4)) || - (!strncmp(integKeyEvent.keyName.c_str(), "Right", 5)) || - (!strncmp(integKeyEvent.keyName.c_str(), "Up", 2)) || - (!strncmp(integKeyEvent.keyName.c_str(), "Down", 4)))) + if ((keyEvent.GetDeviceName() == "ime") && ((!strncmp(keyEvent.keyPressedName.c_str(), "Left", 4)) || + (!strncmp(keyEvent.keyPressedName.c_str(), "Right", 5)) || + (!strncmp(keyEvent.keyPressedName.c_str(), "Up", 2)) || + (!strncmp(keyEvent.keyPressedName.c_str(), "Down", 4)))) { eventHandled = 0; } @@ -906,9 +906,9 @@ bool InputMethodContextX::ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ) // If the event has not been handled by InputMethodContext then check if we should reset our IMFcontext if (!eventHandled) { - if (!strcmp(integKeyEvent.keyName.c_str(), "Escape") || - !strcmp(integKeyEvent.keyName.c_str(), "Return") || - !strcmp(integKeyEvent.keyName.c_str(), "KP_Enter")) + if (!strcmp(keyEvent.keyPressedName.c_str(), "Escape") || + !strcmp(keyEvent.keyPressedName.c_str(), "Return") || + !strcmp(keyEvent.keyPressedName.c_str(), "KP_Enter")) { ecore_imf_context_reset(mIMFContext); } @@ -917,32 +917,31 @@ bool InputMethodContextX::ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ) return eventHandled; } -bool InputMethodContextX::ProcessEventKeyUp( const Dali::KeyEvent& keyEvent ) +bool InputMethodContextX::ProcessEventKeyUp( const KeyEvent& keyEvent ) { bool eventHandled( false ); if( mIMFContext ) { - Integration::KeyEvent integKeyEvent( keyEvent.GetKeyName(), keyEvent.GetLogicalKey(), keyEvent.GetKeyString(), keyEvent.GetKeyCode(), keyEvent.GetKeyModifier(), keyEvent.GetTime(), static_cast< Integration::KeyEvent::State >( keyEvent.GetState() ), keyEvent.GetCompose(), keyEvent.GetDeviceName(), keyEvent.GetDeviceClass(), keyEvent.GetDeviceSubclass() ); - + Integration::KeyEvent integKeyEvent( keyEvent ); std::string key = integKeyEvent.logicalKey; - std::string compose = integKeyEvent.compose; + 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 = integKeyEvent.keyName.c_str(); + ecoreKeyUpEvent.keyname = keyEvent.keyPressedName.c_str(); ecoreKeyUpEvent.key = key.c_str(); - ecoreKeyUpEvent.string = integKeyEvent.keyString.c_str(); + ecoreKeyUpEvent.string = keyEvent.keyPressed.c_str(); ecoreKeyUpEvent.compose = compose.c_str(); - ecoreKeyUpEvent.timestamp = integKeyEvent.time; - ecoreKeyUpEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( integKeyEvent.keyModifier ); - ecoreKeyUpEvent.locks = EcoreInputModifierToEcoreIMFLock( integKeyEvent.keyModifier ); + ecoreKeyUpEvent.timestamp = keyEvent.time; + ecoreKeyUpEvent.modifiers = EcoreInputModifierToEcoreIMFModifier( keyEvent.keyModifier ); + ecoreKeyUpEvent.locks = EcoreInputModifierToEcoreIMFLock( keyEvent.keyModifier ); #if defined(ECORE_VERSION_MAJOR) && (ECORE_VERSION_MAJOR >= 1) && defined(ECORE_VERSION_MINOR) #if (ECORE_VERSION_MINOR >= 14) ecoreKeyUpEvent.dev_name = ""; #endif // Since ecore_imf 1.14 version #if (ECORE_VERSION_MINOR >= 22) - ecoreKeyUpEvent.keycode = integKeyEvent.keyCode; + ecoreKeyUpEvent.keycode = keyEvent.keyCode; #endif // Since ecore_imf 1.22 version #endif // Since ecore_imf Version 1 diff --git a/dali/internal/input/ubuntu-x11/input-method-context-impl-x.h b/dali/internal/input/ubuntu-x11/input-method-context-impl-x.h index 9dbfaca..e707386 100755 --- a/dali/internal/input/ubuntu-x11/input-method-context-impl-x.h +++ b/dali/internal/input/ubuntu-x11/input-method-context-impl-x.h @@ -2,7 +2,7 @@ #define DALI_INTERNAL_INPUT_METHOD_CONTEXT_IMPL_X_H /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2019 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -292,7 +292,7 @@ private: * @param[in] keyEvent The event key to be handled. * @return Whether the event key is handled. */ - bool ProcessEventKeyDown( const Dali::KeyEvent& keyEvent ); + bool ProcessEventKeyDown( const KeyEvent& keyEvent ); /** * @brief Process event key up, whether filter a key to isf. @@ -300,7 +300,7 @@ private: * @param[in] keyEvent The event key to be handled. * @return Whether the event key is handled. */ - bool ProcessEventKeyUp( const Dali::KeyEvent& keyEvent ); + bool ProcessEventKeyUp( const KeyEvent& keyEvent ); /** * Ecore_Event_Modifier enums in Ecore_Input.h do not match Ecore_IMF_Keyboard_Modifiers in Ecore_IMF.h. 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 b15c0dd..f3deb99 100755 --- a/dali/internal/input/windows/input-method-context-impl-win.cpp +++ b/dali/internal/input/windows/input-method-context-impl-win.cpp @@ -339,14 +339,14 @@ bool InputMethodContextWin::FilterEventKey( const Dali::KeyEvent& keyEvent ) { bool eventHandled( false ); - if ( ! KeyLookup::IsDeviceButton( keyEvent.GetKeyName().c_str() )) + if ( ! KeyLookup::IsDeviceButton( keyEvent.keyPressedName.c_str() )) { //check whether it's key down or key up event - if ( keyEvent.state == Dali::KeyEvent::Down ) + if ( keyEvent.state == KeyEvent::Down ) { eventHandled = ProcessEventKeyDown( keyEvent ); } - else if ( keyEvent.state == Dali::KeyEvent::Up ) + else if ( keyEvent.state == KeyEvent::Up ) { eventHandled = ProcessEventKeyUp( keyEvent ); } diff --git a/dali/public-api/adaptor-framework/window.h b/dali/public-api/adaptor-framework/window.h index f53e6d0..06ec8eb 100644 --- a/dali/public-api/adaptor-framework/window.h +++ b/dali/public-api/adaptor-framework/window.h @@ -57,7 +57,7 @@ class Actor; class Layer; class RenderTaskList; class TouchEvent; -class KeyEvent; +struct KeyEvent; /** * @brief The window class is used internally for drawing.