Add clear_clipboard API
This commit is contained in:
@@ -832,9 +832,8 @@ static void upgradeClientToUdp(const network::GetAPIMessager::action_data &act,
|
||||
}
|
||||
}
|
||||
|
||||
static void checkAPIMessages(network::GetAPIMessager *apimessager,
|
||||
rdr::U8 &trackingFrameStats, char trackingClient[],
|
||||
std::list<VNCSConnectionST*> &clients)
|
||||
void VNCServerST::checkAPIMessages(network::GetAPIMessager *apimessager,
|
||||
rdr::U8 &trackingFrameStats, char trackingClient[])
|
||||
{
|
||||
if (pthread_mutex_lock(&apimessager->userMutex))
|
||||
return;
|
||||
@@ -866,6 +865,13 @@ static void checkAPIMessages(network::GetAPIMessager *apimessager,
|
||||
case network::GetAPIMessager::UDP_UPGRADE:
|
||||
upgradeClientToUdp(act, clients);
|
||||
break;
|
||||
case network::GetAPIMessager::CLEAR_CLIPBOARD:
|
||||
clearBinaryClipboardData();
|
||||
clipboardClient = NULL;
|
||||
desktop->handleClipboardAnnounceBinary(0, NULL);
|
||||
|
||||
sendBinaryClipboardData("text/plain", NULL, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1031,7 +1037,7 @@ void VNCServerST::writeUpdate()
|
||||
shottime = msSince(&shotstart);
|
||||
|
||||
trackingFrameStats = 0;
|
||||
checkAPIMessages(apimessager, trackingFrameStats, trackingClient, clients);
|
||||
checkAPIMessages(apimessager, trackingFrameStats, trackingClient);
|
||||
}
|
||||
const rdr::U8 origtrackingFrameStats = trackingFrameStats;
|
||||
|
||||
|
||||
@@ -284,6 +284,9 @@ namespace rfb {
|
||||
void translateDLPRegion(rdr::U16 &x1, rdr::U16 &y1, rdr::U16 &x2, rdr::U16 &y2) const;
|
||||
|
||||
rdr::U32 clipboardId;
|
||||
|
||||
void checkAPIMessages(network::GetAPIMessager *apimessager,
|
||||
rdr::U8 &trackingFrameStats, char trackingClient[]);
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user