Interrupted file transfer when cursor move back #4584

This commit is contained in:
Jerry (Xinyu Hou) 2015-06-04 13:09:48 -07:00
parent e0903983ad
commit 646e1b52eb
2 changed files with 14 additions and 3 deletions

View File

@ -257,6 +257,11 @@ Client::enter(SInt32 xAbs, SInt32 yAbs, UInt32, KeyModifierMask mask, bool)
m_active = true;
m_screen->mouseMove(xAbs, yAbs);
m_screen->enter(mask);
if (m_sendFileThread != NULL) {
StreamChunker::interruptFile();
m_sendFileThread = NULL;
}
}
bool
@ -265,11 +270,12 @@ Client::leave()
m_screen->leave();
m_active = false;
if (m_sendClipboardThread != NULL) {
StreamChunker::interruptClipboard();
m_sendClipboardThread = NULL;
}
m_sendClipboardThread = new Thread(
new TMethodJob<Client>(
this,

View File

@ -1797,7 +1797,7 @@ Server::onMouseMovePrimary(SInt32 x, SInt32 y)
return false;
}
// switch screen
switchScreen(newScreen, x, y, false);
m_waitDragInfoThread = true;
@ -1993,6 +1993,11 @@ Server::onMouseMoveSecondary(SInt32 dx, SInt32 dy)
} while (false);
if (jump) {
if (m_sendFileThread != NULL) {
StreamChunker::interruptFile();
m_sendFileThread = NULL;
}
// switch screens
switchScreen(newScreen, m_x, m_y, false);
}