From: Seoyeon Kim Date: Wed, 28 Feb 2018 04:16:29 +0000 (+0900) Subject: Move Input Method enumerations to public API X-Git-Tag: dali_1.3.20~1 X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git;a=commitdiff_plain;h=8d1ae9703da35d841106ed6f3f0c54ef995261f0 Move Input Method enumerations to public API - Moved all InputMethod enumerations from devel API to public API. Change-Id: Ia1e728a640d7cc799ba5524510339dc41ea478c4 Signed-off-by: Seoyeon Kim --- diff --git a/dali/devel-api/adaptor-framework/input-method-devel.h b/dali/devel-api/adaptor-framework/input-method-devel.h deleted file mode 100644 index 5d0f455..0000000 --- a/dali/devel-api/adaptor-framework/input-method-devel.h +++ /dev/null @@ -1,166 +0,0 @@ -#ifndef __DALI_INPUT_MEHTOD_DEVEL_H__ -#define __DALI_INPUT_MEHTOD_DEVEL_H__ - -/* - * Copyright (c) 2017 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. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - */ - -// EXTERNAL INCLUDES -#include - -namespace Dali -{ -/** - * @addtogroup dali_adaptor_framework - * @{ - */ -namespace InputMethod -{ - -/** - * @brief SetType that can be changed in the system Input Method - * - * Key types of map to change virtual keyboard settings in INPUT_METHOD_SETTINGS property - * - */ -namespace Category -{ - enum Type - { - PANEL_LAYOUT, ///< Set Keyboard layout - ACTION_BUTTON_TITLE, ///< Set Action button title - AUTO_CAPITALISE, ///< Set Auto capitalise of input - VARIATION, ///< Set variation - }; -} - -/** - * @brief Autocapitalization Types - * - */ -namespace AutoCapital -{ - enum Type - { - NONE, ///< No auto-capitalization when typing - WORD, ///< Autocapitalize each word typed - SENTENCE, ///< Autocapitalize the start of each sentence - ALLCHARACTER, ///< Autocapitalize all letters - }; -} - -/** - * @brief Input panel (virtual keyboard) layout types. - * - */ -namespace PanelLayout -{ - enum Type - { - NORMAL, ///< Default layout - NUMBER, ///< Number layout - EMAIL, ///< Email layout - URL, ///< URL layout - PHONENUMBER, ///< Phone Number layout - IP, ///< IP layout - MONTH, ///< Month layout - NUMBERONLY, ///< Number Only layout - HEX, ///< Hexadecimal layout - TERMINAL, ///< Command-line terminal layout including ESC, Alt, Ctrl key, so on (no auto-correct, no auto-capitalization) - PASSWORD, ///< Like normal, but no auto-correct, no auto-capitalization etc - DATETIME, ///< Date and time layout - EMOTICON, ///< Emoticon layout - }; -} - -/** - * @brief Specifies what the Input Method "action" button functionality is set to. - * - * The 'Action' button is traditionally the [RETURN] or [DONE] button. - * - */ -namespace ActionButtonTitle -{ - enum Type - { - DEFAULT, ///< Default action - DONE, ///< Done - GO, ///< Go action - JOIN, ///< Join action - LOGIN, ///< Login action - NEXT, ///< Next action - PREVIOUS, ///< Previous action - SEARCH, ///< Search action - SEND, ///< Send action - SIGNIN, ///< Sign in action - UNSPECIFIED, ///< Unspecified action - NONE ///< Nothing to do - }; -} - -/** - * @brief Available variation for Normal layout - * - * - */ -namespace NormalLayout -{ - enum Type - { - NORMAL, ///< The plain normal layout - WITH_FILENAME, ///< Filename layout. Symbols such as '/' should be disabled - WITH_PERSON_NAME ///< The name of a person - }; -} - -/** - * @brief Available variation for Number only layout - * - * - */ -namespace NumberOnlyLayout -{ - enum Type - { - NORMAL, ///< The plain normal number layout - WITH_SIGNED, ///< The number layout to allow a positive or negative sign at the start - WITH_DECIMAL, ///< The number layout to allow decimal point to provide fractional value - WITH_SIGNED_AND_DECIMAL ///< The number layout to allow decimal point and negative sign - }; -} - -/** - * @brief Available variation for Password layout - * - * - */ -namespace PasswordLayout -{ - enum Type - { - NORMAL, ///< The normal password layout - WITH_NUMBERONLY ///< The password layout to allow only number - }; -} - -} // namespace InputMethod - -/** - * @} - */ -} // namespace Dali - -#endif // __DALI_INPUT_MEHTOD_DEVEL_H__ diff --git a/dali/devel-api/adaptor-framework/input-method-options.cpp b/dali/devel-api/adaptor-framework/input-method-options.cpp index f354933..a035763 100644 --- a/dali/devel-api/adaptor-framework/input-method-options.cpp +++ b/dali/devel-api/adaptor-framework/input-method-options.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -18,9 +18,6 @@ // CLASS HEADER #include -// INTERNAL INCLUDES -#include - using namespace Dali::InputMethod; using namespace Dali::InputMethod::Category; @@ -35,13 +32,13 @@ struct InputMethodOptions::Impl { mPanelLayout = PanelLayout::NORMAL; mAutoCapital = AutoCapital::SENTENCE; - mActionButton = ActionButtonTitle::DEFAULT; + mButtonAction = ButtonAction::DEFAULT; mVariation = NormalLayout::NORMAL; } PanelLayout::Type mPanelLayout; AutoCapital::Type mAutoCapital; - ActionButtonTitle::Type mActionButton; + ButtonAction::Type mButtonAction; int mVariation:4; }; @@ -81,20 +78,20 @@ void InputMethodOptions::ApplyProperty( const Property::Map& settings ) mImpl->mPanelLayout = static_cast(value); } } - else if ( key == TOKEN_STRING( AUTO_CAPITALISE ) ) + else if ( key == TOKEN_STRING( BUTTON_ACTION ) ) { if ( item.GetType() == Property::INTEGER ) { int value = item.Get< int >(); - mImpl->mAutoCapital = static_cast(value); + mImpl->mButtonAction = static_cast(value); } } - else if ( key == TOKEN_STRING( ACTION_BUTTON ) ) + else if ( key == TOKEN_STRING( AUTO_CAPITALIZE ) ) { if ( item.GetType() == Property::INTEGER ) { int value = item.Get< int >(); - mImpl->mActionButton = static_cast(value); + mImpl->mAutoCapital = static_cast(value); } } else if( key == TOKEN_STRING( VARIATION ) ) @@ -114,8 +111,8 @@ void InputMethodOptions::ApplyProperty( const Property::Map& settings ) void InputMethodOptions::RetrieveProperty( Property::Map& settings ) { settings[TOKEN_STRING( PANEL_LAYOUT )] = mImpl->mPanelLayout; - settings[TOKEN_STRING( AUTO_CAPITALISE )] = mImpl->mAutoCapital; - settings[TOKEN_STRING( ACTION_BUTTON )] = mImpl->mActionButton; + settings[TOKEN_STRING( BUTTON_ACTION )] = mImpl->mButtonAction; + settings[TOKEN_STRING( AUTO_CAPITALIZE )] = mImpl->mAutoCapital; settings[TOKEN_STRING( VARIATION )] = mImpl->mVariation; } @@ -135,22 +132,22 @@ bool InputMethodOptions::CompareAndSet( InputMethod::Category::Type type, const } break; } - case AUTO_CAPITALISE: + case BUTTON_ACTION: { - if ( options.mImpl->mAutoCapital != mImpl->mAutoCapital ) + if ( options.mImpl->mButtonAction != mImpl->mButtonAction ) { - mImpl->mAutoCapital = options.mImpl->mAutoCapital; - index = static_cast(mImpl->mAutoCapital); + mImpl->mButtonAction = options.mImpl->mButtonAction; + index = static_cast(mImpl->mButtonAction); updated = true; } break; } - case ACTION_BUTTON_TITLE: + case AUTO_CAPITALIZE: { - if ( options.mImpl->mActionButton != mImpl->mActionButton ) + if ( options.mImpl->mAutoCapital != mImpl->mAutoCapital ) { - mImpl->mActionButton = options.mImpl->mActionButton; - index = static_cast(mImpl->mActionButton); + mImpl->mAutoCapital = options.mImpl->mAutoCapital; + index = static_cast(mImpl->mAutoCapital); updated = true; } break; diff --git a/dali/devel-api/adaptor-framework/input-method-options.h b/dali/devel-api/adaptor-framework/input-method-options.h index 942ced1..477be33 100644 --- a/dali/devel-api/adaptor-framework/input-method-options.h +++ b/dali/devel-api/adaptor-framework/input-method-options.h @@ -2,7 +2,7 @@ #define __DALI_VIRTUAL_KEYBOARD_OPTIONS_H__ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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,7 @@ #include // INTERNAL INCLUDES -#include +#include namespace Dali { diff --git a/dali/devel-api/adaptor-framework/virtual-keyboard.cpp b/dali/devel-api/adaptor-framework/virtual-keyboard.cpp index 8b0c941..3232c6d 100644 --- a/dali/devel-api/adaptor-framework/virtual-keyboard.cpp +++ b/dali/devel-api/adaptor-framework/virtual-keyboard.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -47,12 +47,12 @@ void ApplySettings( const Property::Map& settingsMap ) Internal::Adaptor::VirtualKeyboard::ApplySettings( settingsMap ); } -void SetReturnKeyType( const InputMethod::ActionButton type ) +void SetReturnKeyType( const InputMethod::ButtonAction::Type type ) { Internal::Adaptor::VirtualKeyboard::SetReturnKeyType( type ); } -InputMethod::ActionButton GetReturnKeyType() +InputMethod::ButtonAction::Type GetReturnKeyType() { return Internal::Adaptor::VirtualKeyboard::GetReturnKeyType(); } diff --git a/dali/devel-api/adaptor-framework/virtual-keyboard.h b/dali/devel-api/adaptor-framework/virtual-keyboard.h index a5dcbdb..91889be 100644 --- a/dali/devel-api/adaptor-framework/virtual-keyboard.h +++ b/dali/devel-api/adaptor-framework/virtual-keyboard.h @@ -2,7 +2,7 @@ #define __DALI_VIRTUAL_KEYBOARD_H__ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -98,13 +98,13 @@ DALI_IMPORT_API void ApplySettings( const Property::Map& settingsMap ); * @brief Set the specific return key into the virtual keyboard. * @param[in] type the kind of return key types. */ -DALI_IMPORT_API void SetReturnKeyType( const InputMethod::ActionButton type ); +DALI_IMPORT_API void SetReturnKeyType( const InputMethod::ButtonAction::Type type ); /** * @brief Retrieve the current return key type. * @return the type of retun key. */ -DALI_IMPORT_API InputMethod::ActionButton GetReturnKeyType(); +DALI_IMPORT_API InputMethod::ButtonAction::Type GetReturnKeyType(); /** * @brief Enable/disable prediction (predictive text). diff --git a/dali/devel-api/file.list b/dali/devel-api/file.list index 6ca2599..170ca79 100644 --- a/dali/devel-api/file.list +++ b/dali/devel-api/file.list @@ -49,7 +49,6 @@ devel_api_adaptor_framework_header_files = \ $(adaptor_devel_api_dir)/adaptor-framework/image-loading.h \ $(adaptor_devel_api_dir)/adaptor-framework/gif-loading.h \ $(adaptor_devel_api_dir)/adaptor-framework/imf-manager.h \ - $(adaptor_devel_api_dir)/adaptor-framework/input-method-devel.h \ $(adaptor_devel_api_dir)/adaptor-framework/input-method-options.h \ $(adaptor_devel_api_dir)/adaptor-framework/lifecycle-controller.h \ $(adaptor_devel_api_dir)/adaptor-framework/orientation.h \ @@ -66,7 +65,7 @@ devel_api_adaptor_framework_header_files = \ $(adaptor_devel_api_dir)/adaptor-framework/virtual-keyboard.h \ $(adaptor_devel_api_dir)/adaptor-framework/physical-keyboard.h \ $(adaptor_devel_api_dir)/adaptor-framework/key-devel.h - + devel_api_text_abstraction_src_files = \ $(adaptor_devel_api_dir)/text-abstraction/bidirectional-support.cpp \ $(adaptor_devel_api_dir)/text-abstraction/font-client.cpp \ diff --git a/dali/internal/input/common/virtual-keyboard-impl.h b/dali/internal/input/common/virtual-keyboard-impl.h index 57127cb..f680aa7 100644 --- a/dali/internal/input/common/virtual-keyboard-impl.h +++ b/dali/internal/input/common/virtual-keyboard-impl.h @@ -2,7 +2,7 @@ #define __DALI_INTERNAL_VIRTUAL_KEYBOARD_H__ /* - * Copyright (c) 2017 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -59,12 +59,12 @@ void ApplySettings( const Property::Map& settingsMap ); /** * @copydoc Dali::VirtualKeyboard::SetReturnKeyType() */ -void SetReturnKeyType( const Dali::InputMethod::ActionButton type ); +void SetReturnKeyType( const Dali::InputMethod::ButtonAction::Type type ); /** * @copydoc Dali::VirtualKeyboard::GetReturnKeyType() */ -Dali::InputMethod::ActionButton GetReturnKeyType(); +Dali::InputMethod::ButtonAction::Type GetReturnKeyType(); /** * @copydoc Dali::VirtualKeyboard::EnablePrediction() diff --git a/dali/internal/input/tizen-wayland/ecore-virtual-keyboard.cpp b/dali/internal/input/tizen-wayland/ecore-virtual-keyboard.cpp index 52a97a6..be0d28b 100644 --- a/dali/internal/input/tizen-wayland/ecore-virtual-keyboard.cpp +++ b/dali/internal/input/tizen-wayland/ecore-virtual-keyboard.cpp @@ -205,12 +205,12 @@ void ApplySettings( const Property::Map& settingsMap ) Property::Value item = settingsMap.GetValue(i); - if ( key == TOKEN_STRING( ACTION_BUTTON ) ) + if ( key == TOKEN_STRING( BUTTON_ACTION ) ) { if ( item.GetType() == Property::INTEGER ) { int value = item.Get< int >(); - VirtualKeyboard::SetReturnKeyType( static_cast(value) ); + VirtualKeyboard::SetReturnKeyType( static_cast(value) ); } } else diff --git a/dali/internal/input/tizen-wayland/imf-manager-impl-ecore-wl.cpp b/dali/internal/input/tizen-wayland/imf-manager-impl-ecore-wl.cpp index 7ddd5ed..ebe400a 100644 --- a/dali/internal/input/tizen-wayland/imf-manager-impl-ecore-wl.cpp +++ b/dali/internal/input/tizen-wayland/imf-manager-impl-ecore-wl.cpp @@ -29,12 +29,12 @@ #include // INTERNAL INCLUDES -#include #include #include #include #include #include +#include #define TOKEN_STRING(x) #x @@ -752,13 +752,13 @@ void ImfManagerEcoreWl::ApplyOptions( const InputMethodOptions& options ) { ecore_imf_context_input_panel_layout_set( mIMFContext, panelLayoutMap[index] ); } - if ( mOptions.CompareAndSet(AUTO_CAPITALISE, options, index) ) + if ( mOptions.CompareAndSet(BUTTON_ACTION, options, index) ) { - ecore_imf_context_autocapital_type_set( mIMFContext, autoCapitalMap[index] ); + ecore_imf_context_input_panel_return_key_type_set( mIMFContext, returnKeyTypeMap[index] ); } - if ( mOptions.CompareAndSet(ACTION_BUTTON_TITLE, options, index) ) + if ( mOptions.CompareAndSet(AUTO_CAPITALIZE, options, index) ) { - ecore_imf_context_input_panel_return_key_type_set( mIMFContext, returnKeyTypeMap[index] ); + ecore_imf_context_autocapital_type_set( mIMFContext, autoCapitalMap[index] ); } if ( mOptions.CompareAndSet(VARIATION, options, index) ) { diff --git a/dali/internal/input/tizen-wayland/virtual-keyboard-impl-ecore-wl.cpp b/dali/internal/input/tizen-wayland/virtual-keyboard-impl-ecore-wl.cpp index 5088cc5..4ba175d 100644 --- a/dali/internal/input/tizen-wayland/virtual-keyboard-impl-ecore-wl.cpp +++ b/dali/internal/input/tizen-wayland/virtual-keyboard-impl-ecore-wl.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -45,25 +45,25 @@ namespace Adaptor namespace VirtualKeyboard { -Dali::InputMethod::ActionButton gActionButtonFunction = Dali::InputMethod::ACTION_DEFAULT; +Dali::InputMethod::ButtonAction::Type gButtonActionFunction = Dali::InputMethod::ButtonAction::DEFAULT; -Ecore_IMF_Input_Panel_Return_Key_Type actionButtonMapping(Dali::InputMethod::ActionButton actionButton ) +Ecore_IMF_Input_Panel_Return_Key_Type buttonActionMapping(Dali::InputMethod::ButtonAction::Type buttonAction ) { - switch( actionButton ) + switch( buttonAction ) { - case InputMethod::ACTION_DEFAULT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_DONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DONE; - case InputMethod::ACTION_GO: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_GO; - case InputMethod::ACTION_JOIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_JOIN; - case InputMethod::ACTION_LOGIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_LOGIN; - case InputMethod::ACTION_NEXT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_NEXT; - case InputMethod::ACTION_PREVIOUS: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_SEARCH: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEARCH; - case InputMethod::ACTION_SEND: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEND; - case InputMethod::ACTION_SIGNIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_UNSPECIFIED: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_NONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - default: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::DEFAULT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::DONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DONE; + case InputMethod::ButtonAction::GO: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_GO; + case InputMethod::ButtonAction::JOIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_JOIN; + case InputMethod::ButtonAction::LOGIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_LOGIN; + case InputMethod::ButtonAction::NEXT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_NEXT; + case InputMethod::ButtonAction::PREVIOUS: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::SEARCH: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEARCH; + case InputMethod::ButtonAction::SEND: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEND; + case InputMethod::ButtonAction::SIGNIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::UNSPECIFIED: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::NONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + default: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; } } @@ -71,21 +71,21 @@ void RotateTo(int angle) { } -void SetReturnKeyType( const InputMethod::ActionButton type ) +void SetReturnKeyType( const InputMethod::ButtonAction::Type type ) { Dali::ImfManager imfManager = ImfManager::Get(); // Create ImfManager instance (if required) when setting values Ecore_IMF_Context* imfContext = reinterpret_cast(ImfManager::GetImplementation( imfManager ).GetContext()); if( imfContext ) { - gActionButtonFunction = type; - ecore_imf_context_input_panel_return_key_type_set( imfContext, actionButtonMapping( type ) ); + gButtonActionFunction = type; + ecore_imf_context_input_panel_return_key_type_set( imfContext, buttonActionMapping( type ) ); } } -Dali::InputMethod::ActionButton GetReturnKeyType() +Dali::InputMethod::ButtonAction::Type GetReturnKeyType() { - return gActionButtonFunction; + return gButtonActionFunction; } } // namespace VirtualKeyboard diff --git a/dali/internal/input/ubuntu-x11/imf-manager-impl-x.cpp b/dali/internal/input/ubuntu-x11/imf-manager-impl-x.cpp index ee39014..bad6039 100644 --- a/dali/internal/input/ubuntu-x11/imf-manager-impl-x.cpp +++ b/dali/internal/input/ubuntu-x11/imf-manager-impl-x.cpp @@ -587,10 +587,10 @@ void ImfManagerX::ApplyOptions( const InputMethodOptions& options ) if ( mOptions.CompareAndSet(PANEL_LAYOUT, options, index) ) { } - if ( mOptions.CompareAndSet(AUTO_CAPITALISE, options, index) ) + if ( mOptions.CompareAndSet(BUTTON_ACTION, options, index) ) { } - if ( mOptions.CompareAndSet(ACTION_BUTTON_TITLE, options, index) ) + if ( mOptions.CompareAndSet(AUTO_CAPITALIZE, options, index) ) { } if ( mOptions.CompareAndSet(VARIATION, options, index) ) diff --git a/dali/internal/input/ubuntu-x11/virtual-keyboard-impl-x.cpp b/dali/internal/input/ubuntu-x11/virtual-keyboard-impl-x.cpp index f2d6a2c..19e0d2b 100644 --- a/dali/internal/input/ubuntu-x11/virtual-keyboard-impl-x.cpp +++ b/dali/internal/input/ubuntu-x11/virtual-keyboard-impl-x.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -43,25 +43,25 @@ namespace Adaptor namespace VirtualKeyboard { -Dali::InputMethod::ActionButton gActionButtonFunction = Dali::InputMethod::ACTION_DEFAULT; +Dali::InputMethod::ButtonAction::Type gButtonActionFunction = Dali::InputMethod::ButtonAction::DEFAULT; -Ecore_IMF_Input_Panel_Return_Key_Type actionButtonMapping(Dali::InputMethod::ActionButton actionButton ) +Ecore_IMF_Input_Panel_Return_Key_Type buttonActionMapping(Dali::InputMethod::ButtonAction::Type buttonAction ) { - switch( actionButton ) + switch( buttonAction ) { - case InputMethod::ACTION_DEFAULT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_DONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DONE; - case InputMethod::ACTION_GO: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_GO; - case InputMethod::ACTION_JOIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_JOIN; - case InputMethod::ACTION_LOGIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_LOGIN; - case InputMethod::ACTION_NEXT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_NEXT; - case InputMethod::ACTION_PREVIOUS: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_SEARCH: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEARCH; - case InputMethod::ACTION_SEND: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEND; - case InputMethod::ACTION_SIGNIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_UNSPECIFIED: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - case InputMethod::ACTION_NONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; - default: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::DEFAULT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::DONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DONE; + case InputMethod::ButtonAction::GO: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_GO; + case InputMethod::ButtonAction::JOIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_JOIN; + case InputMethod::ButtonAction::LOGIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_LOGIN; + case InputMethod::ButtonAction::NEXT: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_NEXT; + case InputMethod::ButtonAction::PREVIOUS: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::SEARCH: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEARCH; + case InputMethod::ButtonAction::SEND: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_SEND; + case InputMethod::ButtonAction::SIGNIN: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::UNSPECIFIED: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + case InputMethod::ButtonAction::NONE: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; + default: return ECORE_IMF_INPUT_PANEL_RETURN_KEY_TYPE_DEFAULT; } } @@ -83,21 +83,21 @@ void RotateTo(int angle) } } -void SetReturnKeyType( const InputMethod::ActionButton type ) +void SetReturnKeyType( const InputMethod::ButtonAction::Type type ) { Dali::ImfManager imfManager = ImfManager::Get(); // Create ImfManager instance (if required) when setting values Ecore_IMF_Context* imfContext = reinterpret_cast(ImfManager::GetImplementation( imfManager ).GetContext()); if( imfContext ) { - gActionButtonFunction = type; - ecore_imf_context_input_panel_return_key_type_set( imfContext, actionButtonMapping( type ) ); + gButtonActionFunction = type; + ecore_imf_context_input_panel_return_key_type_set( imfContext, buttonActionMapping( type ) ); } } -Dali::InputMethod::ActionButton GetReturnKeyType() +Dali::InputMethod::ButtonAction::Type GetReturnKeyType() { - return gActionButtonFunction; + return gButtonActionFunction; } } // namespace VirtualKeyboard diff --git a/dali/public-api/adaptor-framework/input-method.h b/dali/public-api/adaptor-framework/input-method.h index 5d38abc..f5caaa3 100644 --- a/dali/public-api/adaptor-framework/input-method.h +++ b/dali/public-api/adaptor-framework/input-method.h @@ -2,7 +2,7 @@ #define __DALI_INPUT_MEHTOD_H__ /* - * Copyright (c) 2015 Samsung Electronics Co., Ltd. + * Copyright (c) 2018 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. @@ -34,7 +34,197 @@ namespace Dali */ namespace InputMethod { + +/** + * @brief Enumeration for settings that can be changed in the system Input Method. + * + * Key types of map to change virtual keyboard settings in INPUT_METHOD_SETTINGS property. + * @SINCE_1_3.20 + */ +namespace Category +{ + +/** +* @brief Enumeration for Category type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + PANEL_LAYOUT, ///< Set Keyboard layout @SINCE_1_3.20 + BUTTON_ACTION, ///< Set Button Action @SINCE_1_3.20 + AUTO_CAPITALIZE, ///< Set Auto capitalize of input @SINCE_1_3.20 + VARIATION ///< Set variation @SINCE_1_3.20 +}; + +} // namespace Category + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +/////////////////////////// The enumerations below is to set each type of Category. /////////////////////////////////// +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +/** + * @brief Sets Input panel (virtual keyboard) layout types. + * + * @SINCE_1_3.20 + */ +namespace PanelLayout +{ + +/** +* @brief Enumeration for PanelLayout type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + NORMAL, ///< Default layout @SINCE_1_3.20 + NUMBER, ///< Number layout @SINCE_1_3.20 + EMAIL, ///< Email layout @SINCE_1_3.20 + URL, ///< URL layout @SINCE_1_3.20 + PHONENUMBER, ///< Phone Number layout @SINCE_1_3.20 + IP, ///< IP layout @SINCE_1_3.20 + MONTH, ///< Month layout @SINCE_1_3.20 + NUMBER_ONLY, ///< Number Only layout @SINCE_1_3.20 + HEX, ///< Hexadecimal layout @SINCE_1_3.20 + TERMINAL, ///< Command-line terminal layout including ESC, Alt, Ctrl key, so on (no auto-correct, no auto-capitalization) @SINCE_1_3.20 + PASSWORD, ///< Like normal, but no auto-correct, no auto-capitalization etc @SINCE_1_3.20 + DATE_TIME, ///< Date and time layout @SINCE_1_3.20 + EMOTICON ///< Emoticon layout @SINCE_1_3.20 +}; + +} // namespace PanelLayout + +/** + * @brief Enumeration for specifying what the Input Method "action" button functionality is set to. + * + * The 'Action' button is traditionally the [RETURN] or [DONE] button. + * Not all these actions are supported by all systems. + * Setting a custom label will still require one of these actions to be set. + * @SINCE_1_3.20 + */ +namespace ButtonAction +{ + +/** +* @brief Enumeration for ButtonAction type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + DEFAULT, ///< Default action @SINCE_1_3.20 + DONE, ///< Done @SINCE_1_3.20 + GO, ///< Go action @SINCE_1_3.20 + JOIN, ///< Join action @SINCE_1_3.20 + LOGIN, ///< Login action @SINCE_1_3.20 + NEXT, ///< Next action @SINCE_1_3.20 + PREVIOUS, ///< Previous action @SINCE_1_3.20 + SEARCH, ///< Search action @SINCE_1_3.20 + SEND, ///< Send action @SINCE_1_3.20 + SIGNIN, ///< Sign in action @SINCE_1_3.20 + UNSPECIFIED, ///< Unspecified action @SINCE_1_3.20 + NONE ///< Nothing to do @SINCE_1_3.20 +}; + +} // namespace ButtonAction + + +/** + * @brief Sets Autocapitalization Types. + * + * @SINCE_1_3.20 + */ +namespace AutoCapital +{ + +/** +* @brief Enumeration for AutoCapital type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + NONE, ///< No auto-capitalization when typing @SINCE_1_3.20 + WORD, ///< Autocapitalize each word typed @SINCE_1_3.20 + SENTENCE, ///< Autocapitalize the start of each sentence @SINCE_1_3.20 + ALL_CHARACTER ///< Autocapitalize all letters @SINCE_1_3.20 +}; + +} // namespace AutoCapital + + +/////////////////////////// VARIATION based on PANEL_LAYOUT ////////////////////////////////// + +/** + * @brief Available variation for Normal layout. + * + * @SINCE_1_3.20 + */ +namespace NormalLayout +{ + +/** +* @brief Enumeration for NormalLayout Variation type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + NORMAL, ///< The plain normal layout @SINCE_1_3.20 + WITH_FILENAME, ///< Filename layout. Symbols such as '/' should be disabled @SINCE_1_3.20 + WITH_PERSON_NAME ///< The name of a person @SINCE_1_3.20 +}; + +} // namespace NormalLayout + +/** + * @brief Available variation for Number only layout. + * + * @SINCE_1_3.20 + */ +namespace NumberOnlyLayout +{ + +/** +* @brief Enumeration for NumberOnlyLayout Variation type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + NORMAL, ///< The plain normal number layout @SINCE_1_3.20 + WITH_SIGNED, ///< The number layout to allow a positive or negative sign at the start @SINCE_1_3.20 + WITH_DECIMAL, ///< The number layout to allow decimal point to provide fractional value @SINCE_1_3.20 + WITH_SIGNED_AND_DECIMAL ///< The number layout to allow decimal point and negative sign @SINCE_1_3.20 +}; + +} // namespace NumberOnlyLayout + +/** + * @brief Available variation for Password layout. + * + * @SINCE_1_3.20 + */ +namespace PasswordLayout +{ + +/** +* @brief Enumeration for PasswordLayout Variation type. +* +* @SINCE_1_3.20 +*/ +enum Type +{ + NORMAL, ///< The normal password layout @SINCE_1_3.20 + WITH_NUMBER_ONLY ///< The password layout to allow only number @SINCE_1_3.20 +}; + +} // namespace PasswordLayout + + /** + * @DEPRECATED_1_3.20 Use ButtonAction instead. * @brief Enumeration for specifying what the Input Method "action" button functionality is set to. * * The 'Action' button is traditionally the [RETURN] or [DONE] button. @@ -61,6 +251,7 @@ enum ActionButton }; /** + * @DEPRECATED_1_3.20 Use Category instead. * @brief Enumeration for settings that can be changed in the system Input Method. * * Not all these settings are supported by all systems.