diff --git a/src/plugins/cppeditor/cppeditor.cpp b/src/plugins/cppeditor/cppeditor.cpp
index 3ac02bde43b79c4264416232f9d81537284bb73d..6b2c0e1d42c428cb183474322551f8d2b5f6e9bc 100644
--- a/src/plugins/cppeditor/cppeditor.cpp
+++ b/src/plugins/cppeditor/cppeditor.cpp
@@ -843,7 +843,8 @@ bool CPPEditor::isElectricCharacter(const QChar &ch) const
 {
     if (ch == QLatin1Char('{') ||
         ch == QLatin1Char('}') ||
-        ch == QLatin1Char('#')) {
+        ch == QLatin1Char('#') ||
+        ch == QLatin1Char(':')) {
         return true;
     }
     return false;
diff --git a/src/plugins/texteditor/basetexteditor.cpp b/src/plugins/texteditor/basetexteditor.cpp
index 3ded8b3c8d84619a1bca22448c2ee8af5fd202ae..eac61f480a0e536a024b2ae9578d4c0273455611 100644
--- a/src/plugins/texteditor/basetexteditor.cpp
+++ b/src/plugins/texteditor/basetexteditor.cpp
@@ -992,11 +992,7 @@ void BaseTextEditor::keyPressEvent(QKeyEvent *e)
             QTextCursor cursor = textCursor();
             const QString text = e->text();
             cursor.insertText(text);
-            const QString leftText = cursor.block().text().left(cursor.position() - 1 - cursor.block().position());
-            if (leftText.simplified().isEmpty()) {
-                const QChar typedChar = e->text().at(0);
-                indent(document(), cursor, typedChar);
-            }
+            indent(document(), cursor, QChar::Null);
 #if 0
             TextEditDocumentLayout *documentLayout = qobject_cast<TextEditDocumentLayout*>(document()->documentLayout());
             QTC_ASSERT(documentLayout, return);