diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-11-30 09:40:23 +0100 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-12-30 17:46:15 +0000 |
commit | 3f6d82715dda8dd06f6bddf2ed89e89640f63a2e (patch) | |
tree | f72bea692402d7774b1e8a38d091db85c103b4e7 /src/quick/items/qquicktextinput.cpp | |
parent | bb594453f9cb96bf8f2975d4a8aa5379cfc46e23 (diff) |
Add TextInput::textEdited()
[ChangeLog][QtQuick][TextInput] Added textEdited() signal to
distinguish user edits from programmatical text changes.
Change-Id: I1d78499e3e11f9f1cab80ce3b0a6d9f2713219f4
Task-number: QTBUG-57203
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Diffstat (limited to 'src/quick/items/qquicktextinput.cpp')
-rw-r--r-- | src/quick/items/qquicktextinput.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/quick/items/qquicktextinput.cpp b/src/quick/items/qquicktextinput.cpp index 27f3dcecfa..e9f88ae7f0 100644 --- a/src/quick/items/qquicktextinput.cpp +++ b/src/quick/items/qquicktextinput.cpp @@ -1152,6 +1152,17 @@ bool QQuickTextInput::hasAcceptableInput() const The corresponding handler is \c onEditingFinished. */ +/*! + \qmlsignal QtQuick::TextInput::textEdited() + \since 5.9 + + This signal is emitted whenever the text is edited. Unlike \c textChanged(), + this signal is not emitted when the text is changed programmatically, for example, + by changing the value of the \c text property or by calling \c clear(). + + The corresponding handler is \c onTextEdited. +*/ + #if QT_CONFIG(im) Qt::InputMethodHints QQuickTextInputPrivate::effectiveInputMethodHints() const { @@ -3499,7 +3510,7 @@ void QQuickTextInputPrivate::selectWordAtPos(int cursor) The \a update value is currently unused. */ -bool QQuickTextInputPrivate::finishChange(int validateFromState, bool update, bool /*edited*/) +bool QQuickTextInputPrivate::finishChange(int validateFromState, bool update, bool edited) { Q_Q(QQuickTextInput); @@ -3570,6 +3581,8 @@ bool QQuickTextInputPrivate::finishChange(int validateFromState, bool update, bo m_preeditDirty = false; #endif alignmentChanged = determineHorizontalAlignment(); + if (edited) + emit q->textEdited(); emit q->textChanged(); } |