krdc: Do not synchronize the contents of the clipboard in view only mode.

This fixes an incomplete solution from commit 9598af1608.

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
pull/29/head
Slávek Banko 3 years ago
parent a97fac6c89
commit 5fe4e2d08b
No known key found for this signature in database
GPG Key ID: 608F5293A04BE668

@ -331,8 +331,6 @@ TQSize KVncView::framebufferSize() {
void KVncView::setViewOnly(bool s) { void KVncView::setViewOnly(bool s) {
m_viewOnly = s; m_viewOnly = s;
m_dontSendCb = s;
if (s) if (s)
setCursor(TQt::ArrowCursor); setCursor(TQt::ArrowCursor);
else else
@ -516,6 +514,8 @@ void KVncView::customEvent(TQCustomEvent *e)
TQApplication::beep(); TQApplication::beep();
} }
else if (e->type() == ServerCutEventType) { else if (e->type() == ServerCutEventType) {
if (!m_viewOnly)
{
ServerCutEvent *sce = (ServerCutEvent*) e; ServerCutEvent *sce = (ServerCutEvent*) e;
TQString ctext = TQString::fromUtf8(sce->bytes(), sce->length()); TQString ctext = TQString::fromUtf8(sce->bytes(), sce->length());
m_dontSendCb = true; m_dontSendCb = true;
@ -523,6 +523,7 @@ void KVncView::customEvent(TQCustomEvent *e)
m_cb->setText(ctext, TQClipboard::Selection); m_cb->setText(ctext, TQClipboard::Selection);
m_dontSendCb = false; m_dontSendCb = false;
} }
}
else if (e->type() == MouseStateEventType) { else if (e->type() == MouseStateEventType) {
MouseStateEvent *mse = (MouseStateEvent*) e; MouseStateEvent *mse = (MouseStateEvent*) e;
emit mouseStateChanged(mse->x(), mse->y(), mse->buttonMask()); emit mouseStateChanged(mse->x(), mse->y(), mse->buttonMask());
@ -712,6 +713,11 @@ void KVncView::clipboardChanged() {
if (m_status != REMOTE_VIEW_CONNECTED) if (m_status != REMOTE_VIEW_CONNECTED)
return; return;
if (m_viewOnly)
{
return;
}
if (m_cb->ownsClipboard() || m_dontSendCb) if (m_cb->ownsClipboard() || m_dontSendCb)
return; return;
@ -726,6 +732,11 @@ void KVncView::selectionChanged() {
if (m_status != REMOTE_VIEW_CONNECTED) if (m_status != REMOTE_VIEW_CONNECTED)
return; return;
if (m_viewOnly)
{
return;
}
if (m_cb->ownsSelection() || m_dontSendCb) if (m_cb->ownsSelection() || m_dontSendCb)
return; return;

Loading…
Cancel
Save