diff --git a/src/plugins/projectexplorer/makestep.cpp b/src/plugins/projectexplorer/makestep.cpp
index 7c7b6457148..1a54b8117ab 100644
--- a/src/plugins/projectexplorer/makestep.cpp
+++ b/src/plugins/projectexplorer/makestep.cpp
@@ -176,14 +176,17 @@ MakeStepConfigWidget::MakeStepConfigWidget(MakeStep *makeStep) :
item->setCheckState(m_makeStep->buildsTarget(item->text()) ? Qt::Checked : Qt::Unchecked);
}
- m_ui->makeLineEdit->setText(m_makeStep->makeCommand());
+ m_ui->makeLineEdit->setExpectedKind(Utils::PathChooser::ExistingCommand);
+ m_ui->makeLineEdit->setBaseDirectory(Utils::PathChooser::homePath());
+ m_ui->makeLineEdit->setHistoryCompleter("PE.MakeCommand.History");
+ m_ui->makeLineEdit->setPath(m_makeStep->makeCommand());
m_ui->makeArgumentsLineEdit->setText(m_makeStep->userArguments());
updateMakeOverrideLabel();
updateDetails();
connect(m_ui->targetsList, &QListWidget::itemChanged,
this, &MakeStepConfigWidget::itemChanged);
- connect(m_ui->makeLineEdit, &QLineEdit::textEdited,
+ connect(m_ui->makeLineEdit, &Utils::PathChooser::rawPathChanged,
this, &MakeStepConfigWidget::makeLineEditTextEdited);
connect(m_ui->makeArgumentsLineEdit, &QLineEdit::textEdited,
this, &MakeStepConfigWidget::makeArgumentsLineEditTextEdited);
@@ -266,7 +269,7 @@ void MakeStepConfigWidget::itemChanged(QListWidgetItem *item)
void MakeStepConfigWidget::makeLineEditTextEdited()
{
- m_makeStep->setMakeCommand(m_ui->makeLineEdit->text());
+ m_makeStep->setMakeCommand(m_ui->makeLineEdit->rawPath());
updateDetails();
}
diff --git a/src/plugins/projectexplorer/makestep.ui b/src/plugins/projectexplorer/makestep.ui
index 1f91e0b5ee2..73350447d0f 100644
--- a/src/plugins/projectexplorer/makestep.ui
+++ b/src/plugins/projectexplorer/makestep.ui
@@ -37,7 +37,7 @@
-
-
+
-
@@ -67,6 +67,18 @@
+
+
+ Utils::PathChooser
+ QWidget
+
+ 1
+
+ editingFinished()
+ browsingFinished()
+
+
+