|
Adam Tkac |
66063c9 |
Index: unix/vncviewer/DesktopWindow.h
|
|
Adam Tkac |
66063c9 |
===================================================================
|
|
Adam Tkac |
66063c9 |
--- unix/vncviewer/DesktopWindow.h (revision 3903)
|
|
Adam Tkac |
66063c9 |
+++ unix/vncviewer/DesktopWindow.h (working copy)
|
|
Adam Tkac |
66063c9 |
@@ -29,6 +29,7 @@
|
|
Adam Tkac |
66063c9 |
#include "TXWindow.h"
|
|
Adam Tkac |
66063c9 |
#include "TXViewport.h"
|
|
Adam Tkac |
66063c9 |
#include "TXImage.h"
|
|
Adam Tkac |
66063c9 |
+#include "parameters.h"
|
|
Adam Tkac |
66063c9 |
|
|
Adam Tkac |
66063c9 |
class CConn;
|
|
Adam Tkac |
66063c9 |
|
|
Adam Tkac |
66063c9 |
@@ -54,6 +55,12 @@
|
|
Adam Tkac |
66063c9 |
// resetLocalCursor() stops the rendering of the local cursor
|
|
Adam Tkac |
66063c9 |
void resetLocalCursor();
|
|
Adam Tkac |
66063c9 |
|
|
Adam Tkac |
66063c9 |
+ // setNoCursor() sets what to display when no cursor is defined - if dot or
|
|
Adam Tkac |
66063c9 |
+ // nothing.
|
|
Adam Tkac |
66063c9 |
+ inline void setNoCursor() {
|
|
Adam Tkac |
66063c9 |
+ XDefineCursor(dpy, win(), dotWhenNoCursor ? dotCursor : noCursor);
|
|
Adam Tkac |
66063c9 |
+ }
|
|
Adam Tkac |
66063c9 |
+
|
|
Adam Tkac |
66063c9 |
// Methods forwarded from CConn
|
|
Adam Tkac |
66063c9 |
void setColourMapEntries(int firstColour, int nColours, rdr::U16* rgbs);
|
|
Adam Tkac |
66063c9 |
void serverCutText(const char* str, rdr::U32 len);
|
|
Adam Tkac |
66063c9 |
Index: unix/vncviewer/CConn.cxx
|
|
Adam Tkac |
66063c9 |
===================================================================
|
|
Adam Tkac |
66063c9 |
--- unix/vncviewer/CConn.cxx (revision 3903)
|
|
Adam Tkac |
66063c9 |
+++ unix/vncviewer/CConn.cxx (working copy)
|
|
Adam Tkac |
66063c9 |
@@ -684,6 +684,7 @@
|
|
Adam Tkac |
66063c9 |
desktop->resetLocalCursor();
|
|
Adam Tkac |
66063c9 |
}
|
|
Adam Tkac |
66063c9 |
dotWhenNoCursor.setParam(options.dotWhenNoCursor.checked());
|
|
Adam Tkac |
66063c9 |
+ desktop->setNoCursor();
|
|
Adam Tkac |
66063c9 |
checkEncodings();
|
|
Adam Tkac |
66063c9 |
}
|
|
Adam Tkac |
66063c9 |
|
|
Adam Tkac |
66063c9 |
Index: unix/vncviewer/DesktopWindow.cxx
|
|
Adam Tkac |
66063c9 |
===================================================================
|
|
Adam Tkac |
66063c9 |
--- unix/vncviewer/DesktopWindow.cxx (revision 3903)
|
|
Adam Tkac |
66063c9 |
+++ unix/vncviewer/DesktopWindow.cxx (working copy)
|
|
Adam Tkac |
66063c9 |
@@ -79,7 +79,7 @@
|
|
Adam Tkac |
66063c9 |
PointerMotionMask | KeyPressMask | KeyReleaseMask |
|
|
Adam Tkac |
66063c9 |
EnterWindowMask | LeaveWindowMask);
|
|
Adam Tkac |
66063c9 |
createXCursors();
|
|
Adam Tkac |
66063c9 |
- XDefineCursor(dpy, win(), dotCursor);
|
|
Adam Tkac |
66063c9 |
+ setNoCursor();
|
|
Adam Tkac |
66063c9 |
im = new TXImage(dpy, width(), height());
|
|
Adam Tkac |
66063c9 |
if (!serverPF.trueColour)
|
|
Adam Tkac |
66063c9 |
im->setPF(serverPF);
|
|
Adam Tkac |
66063c9 |
@@ -139,12 +139,9 @@
|
|
Adam Tkac |
66063c9 |
if (((rdr::U8*)mask)[i]) break;
|
|
Adam Tkac |
66063c9 |
|
|
Adam Tkac |
66063c9 |
if (i == mask_len) {
|
|
Adam Tkac |
66063c9 |
- if (dotWhenNoCursor) {
|
|
Adam Tkac |
66063c9 |
+ if (dotWhenNoCursor)
|
|
Adam Tkac |
66063c9 |
vlog.debug("cursor is empty - using dot");
|
|
Adam Tkac |
66063c9 |
- XDefineCursor(dpy, win(), dotCursor);
|
|
Adam Tkac |
66063c9 |
- } else {
|
|
Adam Tkac |
66063c9 |
- XDefineCursor(dpy, win(), noCursor);
|
|
Adam Tkac |
66063c9 |
- }
|
|
Adam Tkac |
66063c9 |
+ setNoCursor();
|
|
Adam Tkac |
66063c9 |
cursorAvailable = false;
|
|
Adam Tkac |
66063c9 |
return;
|
|
Adam Tkac |
66063c9 |
}
|
|
Adam Tkac |
66063c9 |
@@ -206,7 +203,7 @@
|
|
Adam Tkac |
66063c9 |
void DesktopWindow::resetLocalCursor()
|
|
Adam Tkac |
66063c9 |
{
|
|
Adam Tkac |
66063c9 |
hideLocalCursor();
|
|
Adam Tkac |
66063c9 |
- XDefineCursor(dpy, win(), dotCursor);
|
|
Adam Tkac |
66063c9 |
+ setNoCursor();
|
|
Adam Tkac |
66063c9 |
cursorAvailable = false;
|
|
Adam Tkac |
66063c9 |
}
|
|
Adam Tkac |
66063c9 |
|
|
Adam Tkac |
66063c9 |
@@ -226,7 +223,7 @@
|
|
Adam Tkac |
66063c9 |
if (!getPF().equal(cursor.getPF()) ||
|
|
Adam Tkac |
66063c9 |
cursor.getRect().is_empty()) {
|
|
Adam Tkac |
66063c9 |
vlog.error("attempting to render invalid local cursor");
|
|
Adam Tkac |
66063c9 |
- XDefineCursor(dpy, win(), dotCursor);
|
|
Adam Tkac |
66063c9 |
+ setNoCursor();
|
|
Adam Tkac |
66063c9 |
cursorAvailable = false;
|
|
Adam Tkac |
66063c9 |
return;
|
|
Adam Tkac |
66063c9 |
}
|