+ int mRenderingBackend;
+ int mExceedPolicy;
+ bool mHasBeenStaged : 1;
+ bool mTextChanged : 1; ///< If true, emits TextChangedSignal in next OnRelayout().
+ bool mCursorPositionChanged : 1; ///< If true, emits CursorPositionChangedSignal at the end of OnRelayout().
+ bool mSelectionChanged : 1; ///< If true, emits SelectionChangedSignal at the end of OnRelayout().
+ bool mSelectionCleared : 1; ///< If true, emits SelectionClearedSignal at the end of OnRelayout().
+
+ //args for cursor position changed event
+ unsigned int mOldPosition;
+
+ //args for selection changed event
+ uint32_t mOldSelectionStart;
+ uint32_t mOldSelectionEnd;
+
+ bool mSelectionStarted : 1; ///< If true, emits SelectionStartedSignal at the end of OnRelayout().
+
+protected:
+ struct PropertyHandler;
+
+ /**
+ * @brief This structure is to connect TextField with Accessible functions.
+ */
+ class TextFieldAccessible : public EditableTextControlAccessible
+ {
+ public:
+ using EditableTextControlAccessible::EditableTextControlAccessible;
+
+ /**
+ * @copydoc Dali::Accessibility::Accessible::GetName()
+ */
+ std::string GetName() const override;
+
+ protected:
+ /**
+ * @copydoc Dali::Toolkit::Internal::TextControlAccessible::GetTextAnchors()
+ */
+ const std::vector<Toolkit::TextAnchor>& GetTextAnchors() const override;
+
+ /**
+ * @copydoc Dali::Toolkit::Internal::TextControlAccessible::GetTextController()
+ */
+ Toolkit::Text::ControllerPtr GetTextController() const override;
+
+ /**
+ * @copydoc Dali::Toolkit::Internal::TextControlAccessible::GetSubstituteCharacter()
+ */
+ std::uint32_t GetSubstituteCharacter() const override;
+
+ /**
+ * @copydoc Dali::Toolkit::Internal::TextControlAccessible::IsHiddenInput()
+ */
+ bool IsHiddenInput() const override;
+
+ /**
+ * @copydoc Dali::Toolkit::Internal::EditableTextControlAccessible::RequestTextRelayout()
+ */
+ void RequestTextRelayout() override;
+ };