typedef Dali::ImfManager::ImfEventSignalType ImfEventSignalType;
typedef Dali::ImfManager::StatusSignalType ImfStatusSignalType;
typedef Dali::ImfManager::VoidSignalType ImfVoidSignalType;
+ typedef Dali::ImfManager::KeyboardTypeSignalType ImfKeyboardTypeSignalType;
public:
/**
+ * @copydoc Dali::ImfManager::Finalize()
+ */
+ void Finalize();
+
+ /**
* Check whether the ImfManager is available.
* @return true if available, false otherwise
*/
/**
* Connect Callbacks required for IMF.
* If you don't connect imf callbacks, you can't get the key events.
- * The events are PreeditChanged, Commit and DeleteSurrounding.
+ * The events are PreeditChanged, Commit, DeleteSurrounding and PrivateCommand.
*/
void ConnectCallbacks();
*/
void DeleteSurrounding( void *data, Ecore_IMF_Context *imfContext, void *event_info );
+ /**
+ * @copydoc Dali::ImfManager::SendPrivateCommand()
+ */
+ void SendPrivateCommand( void* data, Ecore_IMF_Context* imfContext, void* event_info );
+
// Cursor related
/**
* @copydoc Dali::ImfManager::NotifyCursorPosition()
*/
void ApplyOptions( const InputMethodOptions& options );
+ /**
+ * @copydoc Dali::ImfManager::SetInputPanelData()
+ */
+ void SetInputPanelData( const std::string& data );
+
+ /**
+ * @copydoc Dali::ImfManager::GetInputPanelData()
+ */
+ void GetInputPanelData( std::string& data );
+
+ /**
+ * @copydoc Dali::ImfManager::GetInputPanelState()
+ */
+ Dali::ImfManager::State GetInputPanelState();
+
+ /**
+ * @copydoc Dali::ImfManager::SetReturnKeyState()
+ */
+ void SetReturnKeyState( bool visible );
+
+ /**
+ * @copydoc Dali::ImfManager::AutoEnableInputPanel()
+ */
+ void AutoEnableInputPanel( bool enabled );
+
+ /**
+ * @copydoc Dali::ImfManager::ShowInputPanel()
+ */
+ void ShowInputPanel();
+
+ /**
+ * @copydoc Dali::ImfManager::HideInputPanel()
+ */
+ void HideInputPanel();
+
+ /**
+ * @copydoc Dali::ImfManager::GetKeyboardType()
+ */
+ Dali::ImfManager::KeyboardType GetKeyboardType();
+
+ /**
+ * @copydoc Dali::ImfManager::GetInputPanelLocale()
+ */
+ std::string GetInputPanelLocale();
+
public: // Signals
/**
*/
ImfVoidSignalType& LanguageChangedSignal() { return mKeyboardLanguageChangedSignal; }
+ /**
+ * @copydoc Dali::ImfManager::KeyboardTypeChangedSignal()
+ */
+ ImfKeyboardTypeSignalType& KeyboardTypeChangedSignal() { return mKeyboardTypeChangedSignal; }
protected:
private:
Ecore_IMF_Context* mIMFContext;
+ Ecore_Wl_Window *mEcoreWlwin;
int mIMFCursorPosition;
std::string mSurroundingText;
+ bool mInited:1; ///< Whether the imf is already inited.
bool mRestoreAfterFocusLost:1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
bool mIdleCallbackConnected:1; ///< Whether the idle callback is already connected.
std::vector<Dali::Integration::KeyEvent> mKeyEvents; ///< Stores key events to be sent from idle call-back.
InputMethodOptions mOptions;
- ImfManagerSignalType mActivatedSignal;
- ImfEventSignalType mEventSignal;
- ImfStatusSignalType mKeyboardStatusSignal;
- ImfVoidSignalType mKeyboardResizeSignal;
- ImfVoidSignalType mKeyboardLanguageChangedSignal;
+ ImfManagerSignalType mActivatedSignal;
+ ImfEventSignalType mEventSignal;
+ ImfStatusSignalType mKeyboardStatusSignal;
+ ImfVoidSignalType mKeyboardResizeSignal;
+ ImfVoidSignalType mKeyboardLanguageChangedSignal;
+ ImfKeyboardTypeSignalType mKeyboardTypeChangedSignal;
public: