Send HIDE command when pointer is not visible
This avoids having 2 pointers (client and server) if Windows decides to render the mouse by itself. This happens, for instance, when moving windows around. Signed-off-by: Javier Celaya <javier.celaya@flexvdi.com> Acked-by: Frediano Ziglio <fziglio@redhat.com>
This commit is contained in:
parent
da0680c8d5
commit
0ee4b29ea5
@ -434,11 +434,6 @@ NTSTATUS QxlDod::SetPointerPosition(_In_ CONST DXGKARG_SETPOINTERPOSITION* pSetP
|
||||
QXL_ASSERT(pSetPointerPosition != NULL);
|
||||
QXL_ASSERT(pSetPointerPosition->VidPnSourceId < MAX_VIEWS);
|
||||
|
||||
if (!(pSetPointerPosition->Flags.Visible))
|
||||
{
|
||||
DbgPrint(TRACE_LEVEL_INFORMATION, ("<--- %s Cursor is not visible\n", __FUNCTION__));
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
return m_pHWDevice->SetPointerPosition(pSetPointerPosition);
|
||||
}
|
||||
|
||||
@ -4507,7 +4502,7 @@ NTSTATUS QxlDevice::SetPointerPosition(_In_ CONST DXGKARG_SETPOINTERPOSITION* pS
|
||||
pSetPointerPosition->X,
|
||||
pSetPointerPosition->Y));
|
||||
QXLCursorCmd *cursor_cmd = CursorCmd();
|
||||
if (pSetPointerPosition->X < 0) {
|
||||
if (pSetPointerPosition->X < 0 || !pSetPointerPosition->Flags.Visible) {
|
||||
cursor_cmd->type = QXL_CURSOR_HIDE;
|
||||
} else {
|
||||
cursor_cmd->type = QXL_CURSOR_MOVE;
|
||||
|
Loading…
Reference in New Issue
Block a user