summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2011-09-22 09:36:15 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2011-09-22 09:36:15 (GMT)
commitcf5c144770c08691260b14212afe646b1b23afe2 (patch)
treec6177cfc9c1c127cc4ed70936ee9083d8c35eb46 /src
parent0981754cb42a7943cb3cc12345c82b4f301d65a3 (diff)
parenta9e50cd2fe243a912a5c70f157b043bbfc6413fb (diff)
downloadQt-cf5c144770c08691260b14212afe646b1b23afe2.zip
Qt-cf5c144770c08691260b14212afe646b1b23afe2.tar.gz
Qt-cf5c144770c08691260b14212afe646b1b23afe2.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/qt-s60-public: QLineControl: selectedTextChanged() signal is omitted in some cases
Diffstat (limited to 'src')
-rw-r--r--src/gui/widgets/qlinecontrol.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gui/widgets/qlinecontrol.cpp b/src/gui/widgets/qlinecontrol.cpp
index 198bc04..c5232ad 100644
--- a/src/gui/widgets/qlinecontrol.cpp
+++ b/src/gui/widgets/qlinecontrol.cpp
@@ -447,6 +447,8 @@ void QLineControl::moveCursor(int pos, bool mark)
void QLineControl::processInputMethodEvent(QInputMethodEvent *event)
{
int priorState = 0;
+ int originalSelectionStart = m_selstart;
+ int originalSelectionEnd = m_selend;
bool isGettingInput = !event->commitString().isEmpty()
|| event->preeditString() != preeditAreaText()
|| event->replacementLength() > 0;
@@ -525,6 +527,8 @@ void QLineControl::processInputMethodEvent(QInputMethodEvent *event)
}
m_textLayout.setAdditionalFormats(formats);
updateDisplayText(/*force*/ true);
+ if (originalSelectionStart != m_selstart || originalSelectionEnd != m_selend)
+ emit selectionChanged();
if (cursorPositionChanged)
emitCursorPositionChanged();
else if (m_preeditCursor != oldPreeditCursor)