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:
parent
e0bd2d1baa
commit
1a38713ff8
4 changed files with 20 additions and 30 deletions
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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()
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue