[Spice-devel] [PATCH qxl-wddm-dod] Send HIDE command when pointer is not visible
Frediano Ziglio
fziglio at redhat.com
Fri Nov 18 17:07:23 UTC 2016
From: Javier Celaya <javier.celaya at flexvdi.com>
This avoid having possibly 2 pointers (client and server) if Windows
decide to render the mouse by itself.
This happens for instance moving windows.
---
qxldod/QxlDod.cpp | 7 +------
1 file changed, 1 insertion(+), 6 deletions(-)
Javier, as we changed license since you create it could you please sign off
the patch?
I added some comments to this patch.
diff --git a/qxldod/QxlDod.cpp b/qxldod/QxlDod.cpp
index 724e89f..8f31714 100755
--- a/qxldod/QxlDod.cpp
+++ b/qxldod/QxlDod.cpp
@@ -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;
--
2.7.4
More information about the Spice-devel
mailing list