From 231a9d2c580b6a5d2d2028f5db15a5274f3825dd Mon Sep 17 00:00:00 2001 From: hjk Date: Thu, 15 Feb 2018 16:52:50 +0100 Subject: [PATCH] RemoteLinux: Also decorate empty/invalid targets with device name Change-Id: Iff9f80490ba3a59e0c17b28acd2376cfc0bf9d87 Reviewed-by: Christian Kandeler --- src/plugins/projectexplorer/runconfiguration.cpp | 16 ++++++++++++---- .../remotelinux/remotelinuxrunconfiguration.cpp | 7 ++----- .../remotelinux/remotelinuxrunconfiguration.h | 2 +- 3 files changed, 15 insertions(+), 10 deletions(-) diff --git a/src/plugins/projectexplorer/runconfiguration.cpp b/src/plugins/projectexplorer/runconfiguration.cpp index 304a2b4f590..1902043c6ff 100644 --- a/src/plugins/projectexplorer/runconfiguration.cpp +++ b/src/plugins/projectexplorer/runconfiguration.cpp @@ -450,12 +450,20 @@ const QList IRunConfigurationFactory::allRunConfigur QString IRunConfigurationFactory::decoratedTargetName(const QString targetName, Target *target) { - QString displayName = QFileInfo(targetName).completeBaseName(); + QString displayName; + if (!targetName.isEmpty()) + displayName = QFileInfo(targetName).completeBaseName(); Core::Id devType = DeviceTypeKitInformation::deviceTypeId(target->kit()); if (devType != Constants::DESKTOP_DEVICE_TYPE) { - if (IDevice::ConstPtr dev = DeviceKitInformation::device(target->kit())) - //: Shown in Run configuration, Add menu: "name of runnable (on device name)" - displayName = tr("%1 (on %2)").arg(displayName, dev->displayName()); + if (IDevice::ConstPtr dev = DeviceKitInformation::device(target->kit())) { + if (displayName.isEmpty()) { + //: Shown in Run configuration if no executable is given, %1 is device name + displayName = tr("Run on %1").arg(dev->displayName()); + } else { + //: Shown in Run configuration, Add menu: "name of runnable (on device name)" + displayName = tr("%1 (on %2)").arg(displayName, dev->displayName()); + } + } } return displayName; } diff --git a/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp b/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp index 6b029147207..7b5c9ad7e11 100644 --- a/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp +++ b/src/plugins/remotelinux/remotelinuxrunconfiguration.cpp @@ -155,12 +155,9 @@ bool RemoteLinuxRunConfiguration::fromMap(const QVariantMap &map) return true; } -QString RemoteLinuxRunConfiguration::defaultDisplayName() +QString RemoteLinuxRunConfiguration::defaultDisplayName() const { - if (!d->targetName.isEmpty()) - return IRunConfigurationFactory::decoratedTargetName(d->targetName, target()); - //: Remote Linux run configuration default display name - return tr("Run on Remote Device"); + return IRunConfigurationFactory::decoratedTargetName(d->targetName, target()); } QString RemoteLinuxRunConfiguration::arguments() const diff --git a/src/plugins/remotelinux/remotelinuxrunconfiguration.h b/src/plugins/remotelinux/remotelinuxrunconfiguration.h index 466ae3432b0..e60fd1ffa54 100644 --- a/src/plugins/remotelinux/remotelinuxrunconfiguration.h +++ b/src/plugins/remotelinux/remotelinuxrunconfiguration.h @@ -80,7 +80,7 @@ protected: QString extraId() const override; private: - QString defaultDisplayName(); + QString defaultDisplayName() const; void handleBuildSystemDataUpdated(); Internal::RemoteLinuxRunConfigurationPrivate * const d;