Pārlūkot izejas kodu

Set cursor sprite globally

Pointer are global, not screen specific. Hence so is also the cursor
sprite.
tags/v1.7.90
Pierre Ossman pirms 7 gadiem
vecāks
revīzija
3fb9479caa

+ 6
- 2
unix/xserver/hw/vnc/vncExtInit.cc Parādīt failu

@@ -394,10 +394,14 @@ void vncAddCopied(int scrIdx, const struct UpdateRect *extents,
desktop[scrIdx]->add_copied(reg, rfb::Point(dx, dy));
}

void vncSetCursor(int scrIdx, int width, int height, int hotX, int hotY,
void vncSetCursor(int width, int height, int hotX, int hotY,
const unsigned char *rgbaData)
{
desktop[scrIdx]->setCursor(width, height, hotX, hotY, rgbaData);
for (int scr = 0; scr < vncGetScreenCount(); scr++) {
if (desktop[scr] == NULL)
continue;
desktop[scr]->setCursor(width, height, hotX, hotY, rgbaData);
}
}

void vncPreScreenResize(int scrIdx)

+ 1
- 1
unix/xserver/hw/vnc/vncExtInit.h Parādīt failu

@@ -84,7 +84,7 @@ void vncAddCopied(int scrIdx, const struct UpdateRect *extents,
int nRects, const struct UpdateRect *rects,
int dx, int dy);

void vncSetCursor(int scrIdx, int width, int height, int hotX, int hotY,
void vncSetCursor(int width, int height, int hotX, int hotY,
const unsigned char *rgbaData);

void vncPreScreenResize(int scrIdx);

+ 1
- 1
unix/xserver/hw/vnc/vncHooks.c Parādīt failu

@@ -699,7 +699,7 @@ static Bool vncHooksDisplayCursor(DeviceIntPtr pDev,
}
#endif

vncSetCursor(pScreen->myNum, width, height, hotX, hotY, rgbaData);
vncSetCursor(width, height, hotX, hotY, rgbaData);

free(rgbaData);
}

Notiek ielāde…
Atcelt
Saglabāt