namespace Adaptor
{
-class InputMethodContextX : public Dali::Internal::Adaptor::InputMethodContext
+class InputMethodContextX : public Dali::Internal::Adaptor::InputMethodContext, public Dali::ConnectionTracker
{
public:
/**
* @brief Creates a new InputMethodContext handle
*
+ * @param[in] actor The actor that uses the new InputMethodContext instance.
* @return InputMethodContext pointer
*/
- static InputMethodContextPtr New();
+ static InputMethodContextPtr New( Dali::Actor actor );
/**
* Constructor
- * @param[in] ecoreXwin, The window is created by application.
+ * @param[in] actor The actor that uses the new InputMethodContext instance.
*/
- explicit InputMethodContextX( Ecore_X_Window ecoreXwin );
+ explicit InputMethodContextX( Dali::Actor actor );
public:
*/
Dali::InputMethodContext::InputPanelLanguage GetInputPanelLanguage() const override;
+ /**
+ * @copydoc Dali::InputMethodContext::SetInputPanelPosition()
+ */
+ void SetInputPanelPosition( unsigned int x, unsigned int y ) override;
+
+ /**
+ * @copydoc Dali::InputMethodContext::GetPreeditStyle()
+ */
+ void GetPreeditStyle( Dali::InputMethodContext::PreEditAttributeDataContainer& attrs ) const override;
+
private:
/**
* Context created the first time and kept until deleted.
- * @param[in] ecoreXwin, The window is created by application.
*/
- void CreateContext( Ecore_X_Window ecoreXwin );
+ void CreateContext();
/**
* @copydoc Dali::InputMethodContext::DeleteContext()
*/
Ecore_IMF_Keyboard_Locks EcoreInputModifierToEcoreIMFLock( unsigned int modifier );
+ /**
+ * Called when the binded actor is added to a window.
+ */
+ void OnStaged( Dali::Actor actor );
+
public:
/**
bool mRestoreAfterFocusLost:1; ///< Whether the keyboard needs to be restored (activated ) after focus regained.
bool mIdleCallbackConnected:1; ///< Whether the idle callback is already connected.
InputMethodOptions mOptions;
+ Dali::InputMethodContext::PreEditAttributeDataContainer mPreeditAttrs; ///< Stores preedit attribute data
};
} // namespace Adaptor