Since now we reduced the idle editor time for showing completions,
some things started to be a bit annoying. This fix changes the
prefix from the proposal to include only letters, digits, and the
underscore. Yes, technically they are not allways identifiers
in a generic sense, but it should be enough for our purpose.
Now, you should not receive a proposal 'foo:' when you have already
typed 'foo' in QML, for example.
Change-Id: Ica92182a34636598faedb067d0527e37ca6fee89
Reviewed-on: http://codereview.qt.nokia.com/46
Reviewed-by: Roberto Raggi <roberto.raggi@nokia.com>
// Compute common prefix
QString firstKey = m_currentItems.first()->text();
+ int ignore = 0;
+ for (int i = firstKey.length() - 1; i >= 0; --i, ++ignore) {
+ const QChar &c = firstKey.at(i);
+ if (c.isLetterOrNumber() || c == QLatin1Char('_'))
+ break;
+ }
+ if (ignore)
+ firstKey.chop(ignore);
QString lastKey = m_currentItems.last()->text();
const int length = qMin(firstKey.length(), lastKey.length());
firstKey.truncate(length);