diff --git a/src/filewidgets/kfilewidget.cpp b/src/filewidgets/kfilewidget.cpp --- a/src/filewidgets/kfilewidget.cpp +++ b/src/filewidgets/kfilewidget.cpp @@ -1153,7 +1153,6 @@ } locationEdit->lineEdit()->setModified(false); - locationEdit->lineEdit()->selectAll(); } void KFileWidgetPrivate::_k_fileSelected(const KFileItem &i) @@ -1289,7 +1288,7 @@ } // don't change selection when user has clicked on an item - if (operationMode == KFileWidget::Saving && !locationEdit->isVisible()) { + if (operationMode == KFileWidget::Saving) { setNonExtSelection(); } } @@ -1329,7 +1328,7 @@ } // don't change selection when user has clicked on an item - if (operationMode == KFileWidget::Saving && !locationEdit->isVisible()) { + if (operationMode == KFileWidget::Saving) { setNonExtSelection(); } } @@ -2739,6 +2738,8 @@ int lastDot = filename.lastIndexOf('.'); if (lastDot > 0) { locationEdit->lineEdit()->setSelection(0, lastDot); + } else { + locationEdit->lineEdit()->selectAll(); } } }