diff --git a/src/plugins/projectexplorer/projecttreewidget.cpp b/src/plugins/projectexplorer/projecttreewidget.cpp index 9ce74310517..961b9fa8949 100644 --- a/src/plugins/projectexplorer/projecttreewidget.cpp +++ b/src/plugins/projectexplorer/projecttreewidget.cpp @@ -54,6 +54,7 @@ #include #include #include +#include #include #include @@ -416,6 +417,18 @@ void ProjectTreeWidget::editCurrentItem() return; m_view->edit(currentIndex); + // Select complete file basename for renaming + const Node *node = m_model->nodeForIndex(currentIndex); + if (!node || node->nodeType() != NodeType::File) + return; + QLineEdit *editor = qobject_cast(m_view->indexWidget(currentIndex)); + if (!editor) + return; + + const QString text = editor->text(); + const int dotIndex = text.lastIndexOf(QLatin1Char('.')); + if (dotIndex > 0) + editor->setSelection(0, dotIndex); } void ProjectTreeWidget::renamed(const FileName &oldPath, const FileName &newPath)