SYNERGY-1089 No notification between clients (#7064)

* SYNERGY-1089 There is no notification if user moves pointer between clients

* SYNERGY-1089 There is no notification if user moves pointer between 2 clients

* Update ChangeLog
This commit is contained in:
SerhiiGadzhilov 2021-08-04 15:12:01 +03:00 committed by GitHub
parent e0bd2d1baa
commit 1a38713ff8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 20 additions and 30 deletions

View file

@ -15,6 +15,7 @@ Bug fixes:
- #7055 Add secure input notification on Linux - #7055 Add secure input notification on Linux
- #7052 Add secure input notification on Windows - #7052 Add secure input notification on Windows
- #7047 | #7060 Fix prevent sleep option on Mac and Windows - #7047 | #7060 Fix prevent sleep option on Mac and Windows
- #7064 There is no secure input notification if user moves pointer between clients
Enhancements: Enhancements:
- #6998 Remove functionality related to the screen saver synchronisation - #6998 Remove functionality related to the screen saver synchronisation

View file

@ -59,7 +59,6 @@ enum {
kCarbonLoopWaitTimeout = 10 kCarbonLoopWaitTimeout = 10
}; };
void createSecureInputNotification();
int getSecureInputEventPID(); int getSecureInputEventPID();
String getProcessName(int pid); String getProcessName(int pid);
@ -875,10 +874,6 @@ OSXScreen::enter()
bool bool
OSXScreen::leave() OSXScreen::leave()
{ {
if(m_isPrimary && IsSecureEventInputEnabled()) {
createSecureInputNotification();
}
hideCursor(); hideCursor();
if (isDraggingStarted()) { if (isDraggingStarted()) {
@ -2152,23 +2147,6 @@ OSXScreen::getSecureInputApp() const
return ""; return "";
} }
void
createSecureInputNotification()
{
int secureInputProcessPID = getSecureInputEventPID();
String app = getProcessName(secureInputProcessPID);
if(secureInputProcessPID == 0) app = "unknown";
String secureInputNotificationBody =
"'Secure input' enabled by " + app + ". " \
"Close " + app + " to continue using keyboards on the clients.";
// display this notification on the server
AppUtil::instance().showNotification(
"The client keyboards may stop working.",
secureInputNotificationBody);
}
int int
getSecureInputEventPID() getSecureInputEventPID()
{ {

View file

@ -21,7 +21,7 @@
#include "synergy/Screen.h" #include "synergy/Screen.h"
#include "synergy/Clipboard.h" #include "synergy/Clipboard.h"
#include "base/Log.h" #include "base/Log.h"
#include "synergy/AppUtil.h"
// //
// PrimaryClient // PrimaryClient
// //
@ -270,7 +270,13 @@ PrimaryClient::getSecureInputApp() const
void void
PrimaryClient::secureInputNotification(const String& app) const PrimaryClient::secureInputNotification(const String& app) const
{ {
// ignore String secureInputNotificationBody =
"'Secure input' enabled by " + app + ". " \
"Close " + app + " to continue using keyboards on the clients.";
AppUtil::instance().showNotification(
"The client keyboards may stop working.",
secureInputNotificationBody);
} }
void void

View file

@ -513,10 +513,15 @@ Server::switchScreen(BaseClientProxy* dst,
#if defined(__APPLE__) #if defined(__APPLE__)
String secureInputApplication = m_active->getSecureInputApp(); if (dst != m_primaryClient) {
if (m_active == m_primaryClient && secureInputApplication != "") { String secureInputApplication = m_primaryClient->getSecureInputApp();
dst->secureInputNotification(secureInputApplication); if (secureInputApplication != "") {
} // display notification on the server
m_primaryClient->secureInputNotification(secureInputApplication);
//display notification on the client
dst->secureInputNotification(secureInputApplication);
}
}
#endif #endif
// cut over // cut over