summaryrefslogtreecommitdiff
path: root/src/plugins/remotelinux
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@digia.com>2012-09-27 10:20:43 +0200
committerChristian Kandeler <christian.kandeler@digia.com>2012-10-02 10:17:03 +0200
commitdff0761406c89ece9a562bbac02323a886ed3e34 (patch)
tree0ebf7e63cfd75fac8660f53e073a7a3cc10e8383 /src/plugins/remotelinux
parent30b553466797ddf7e3252f1cab2d02d6ea0bee5a (diff)
downloadqt-creator-dff0761406c89ece9a562bbac02323a886ed3e34.tar.gz
Device support: Ensure UI changes are always propagated to the device.
The original problem was that we cannot assume QLineEdit::editingFinished() is emitted when clicking a button while a QLineEdit has the focus (QTCREATORBUG-1675). The original solution to that introduced two more bugs, namely that changes are not visible in other tabs until the dialog has been closed and reopened and that pressing "Apply" also applies changes that are done later and which the user intends to revert by by pressing "Cancel" (QTCREATORBUG-7288). This patch intends to fix all of these issues. Task-number: QTCREATORBUG-1675 Task-number: QTCREATORBUG-7288 Change-Id: I569a89f64843e08ee389e3eba6bdcb473ba22393 Reviewed-by: Tobias Hunger <tobias.hunger@digia.com>
Diffstat (limited to 'src/plugins/remotelinux')
-rw-r--r--src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp11
-rw-r--r--src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h1
2 files changed, 12 insertions, 0 deletions
diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp
index b2d87407c2..343c19a8d4 100644
--- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp
+++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.cpp
@@ -151,6 +151,17 @@ void GenericLinuxDeviceConfigurationWidget::createNewKey()
setPrivateKey(dialog.privateKeyFilePath());
}
+void GenericLinuxDeviceConfigurationWidget::updateDeviceFromUi()
+{
+ hostNameEditingFinished();
+ sshPortEditingFinished();
+ timeoutEditingFinished();
+ userNameEditingFinished();
+ passwordEditingFinished();
+ keyFileEditingFinished();
+ handleFreePortsChanged();
+}
+
void GenericLinuxDeviceConfigurationWidget::updatePortsWarningLabel()
{
m_ui->portsWarningLabel->setVisible(!device()->freePorts().hasMore());
diff --git a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h
index 0b996fb1e9..3a0d2f1229 100644
--- a/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h
+++ b/src/plugins/remotelinux/genericlinuxdeviceconfigurationwidget.h
@@ -64,6 +64,7 @@ private slots:
void createNewKey();
private:
+ void updateDeviceFromUi();
void updatePortsWarningLabel();
void initGui();