From d9af1ec4348eca6c4d05ec8effed19697d288072 Mon Sep 17 00:00:00 2001 From: sr Date: Tue, 5 Feb 2013 18:03:00 +0100 Subject: [SERVER] Properly tell client the VNC server'S client id --- i18n/server/pvsmgr_ar_JO.ts | 4 ++-- i18n/server/pvsmgr_de_DE.ts | 4 ++-- i18n/server/pvsmgr_es_MX.ts | 4 ++-- i18n/server/pvsmgr_fr_FR.ts | 4 ++-- i18n/server/pvsmgr_pl_PL.ts | 4 ++-- src/server/mainwindow/mainwindow.cpp | 9 +++++---- src/server/net/client.h | 1 - 7 files changed, 15 insertions(+), 15 deletions(-) diff --git a/i18n/server/pvsmgr_ar_JO.ts b/i18n/server/pvsmgr_ar_JO.ts index 14637a7..1b52528 100644 --- a/i18n/server/pvsmgr_ar_JO.ts +++ b/i18n/server/pvsmgr_ar_JO.ts @@ -51,12 +51,12 @@ - + Projection Error - + Could not send screen contents of %1 to other clients: VNC Startup failed. diff --git a/i18n/server/pvsmgr_de_DE.ts b/i18n/server/pvsmgr_de_DE.ts index 403028e..ed36f2d 100644 --- a/i18n/server/pvsmgr_de_DE.ts +++ b/i18n/server/pvsmgr_de_DE.ts @@ -104,12 +104,12 @@ - + Projection Error - + Could not send screen contents of %1 to other clients: VNC Startup failed. diff --git a/i18n/server/pvsmgr_es_MX.ts b/i18n/server/pvsmgr_es_MX.ts index 15a673a..2e11a13 100644 --- a/i18n/server/pvsmgr_es_MX.ts +++ b/i18n/server/pvsmgr_es_MX.ts @@ -307,12 +307,12 @@ Perform an unprojection or remove remote help to get a target. - + Projection Error - + Could not send screen contents of %1 to other clients: VNC Startup failed. diff --git a/i18n/server/pvsmgr_fr_FR.ts b/i18n/server/pvsmgr_fr_FR.ts index 14637a7..1b52528 100644 --- a/i18n/server/pvsmgr_fr_FR.ts +++ b/i18n/server/pvsmgr_fr_FR.ts @@ -51,12 +51,12 @@ - + Projection Error - + Could not send screen contents of %1 to other clients: VNC Startup failed. diff --git a/i18n/server/pvsmgr_pl_PL.ts b/i18n/server/pvsmgr_pl_PL.ts index 14637a7..1b52528 100644 --- a/i18n/server/pvsmgr_pl_PL.ts +++ b/i18n/server/pvsmgr_pl_PL.ts @@ -51,12 +51,12 @@ - + Projection Error - + Could not send screen contents of %1 to other clients: VNC Startup failed. diff --git a/src/server/mainwindow/mainwindow.cpp b/src/server/mainwindow/mainwindow.cpp index 67d88d0..1d9e565 100644 --- a/src/server/mainwindow/mainwindow.cpp +++ b/src/server/mainwindow/mainwindow.cpp @@ -719,6 +719,7 @@ void MainWindow::onVncServerStateChange(Client* client) msg.setField("HOST", client->ip()); msg.setField("PORT", QString::number(client->vncPort())); msg.setField("ROPASS", client->vncRoPass()); + msg.setField("CLIENTID", QString::number(client->id())); msg.setField("CAPTION", client->name() + " @ " + client->host()); for (QList::iterator it(_clientFrames.begin()); it != _clientFrames.end(); ++it) { @@ -775,15 +776,15 @@ void MainWindow::onVncClientStateChange(Client* client) for (QList::iterator it(_clientFrames.begin()); it != _clientFrames.end(); ++it) { Client *c = (**it).client(); - if (c == NULL || c == client) + if (c == NULL) continue; - if (c->currentProjectionSource() == client->currentProjectionSource()) + if (c->id() == client->currentProjectionSource()) + server = c; + if (c != client && c->currentProjectionSource() == client->currentProjectionSource()) { inUse = true; break; } - if (c->id() == client->currentProjectionSource()) - server = c; } // 3. kill server if applicable if (!inUse && server != NULL) diff --git a/src/server/net/client.h b/src/server/net/client.h index c90c884..2cdfb23 100644 --- a/src/server/net/client.h +++ b/src/server/net/client.h @@ -83,7 +83,6 @@ public: inline const bool isProjectionSource() const { return _isProjectionSource; } inline void setProjectionSource(bool enable) { _isProjectionSource = enable; } inline const ClientId currentProjectionSource() const { return _currentProjectionSource; } - inline void setCurrentProjectionSource(ClientId source) { _currentProjectionSource = source; } void startVncServer(); void stopVncServer(); void stopVncClient(); -- cgit v1.2.3-55-g7522