diff --git a/src/plugins/qmljseditor/qmljsoutline.cpp b/src/plugins/qmljseditor/qmljsoutline.cpp
index 864dd4e69160d9e1c5f00336561b899a291e541f..a72e7e31aa1b9980e65cfa840e78ff5946fa514a 100644
--- a/src/plugins/qmljseditor/qmljsoutline.cpp
+++ b/src/plugins/qmljseditor/qmljsoutline.cpp
@@ -167,6 +167,7 @@ void QmlJSOutlineWidget::updateSelectionInText(const QItemSelection &selection)
         m_blockCursorSync = true;
         textCursor.setPosition(location.offset);
         m_editor.data()->setTextCursor(textCursor);
+        m_editor.data()->centerCursor();
         m_blockCursorSync = false;
     }
 }