xpra icon
Bug tracker and wiki

Opened 4 months ago

Closed 4 months ago

#1496 closed task (fixed)

show pointer using opengl texture overlay

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: 2.1
Component: client Version: trunk
Keywords: opengl Cc:

Description (last modified by Antoine Martin)

The pointer overlay feature is used when sharing is enabled or when connecting to a shadow server.
It allows the user to see where the pointer actually is.

I thought it would be easy to paint it with opengl... I was wrong.


  • r15562: expose shadow pointer position (sharing already enabled this for regular servers)
  • r15563: send cursor shape (adds polling for X11 shadow servers)
  • r15564: refactoring, decode PNG cursors in packet handler
  • r15565: don't bother polling stuff when no-one is listening!
  • r15567 + r15568 (backwards compatibility fixup): clients can request the default cursor pixels (which are not sent in cursor packets), opengl refactoring, log cursor changes, etc
  • r15569 + r15570 + r15575: opengl cleanups and improvements

Remaining problem: with XPRA_OPENGL_TEXTURE_CURSOR=1, the cursor is shown but it doesn't get blended with the PBO.
Changing the GL_TEXTURE_ENV_MODE to use blending looks like it might work... but this affects the whole texture unit and messes up the rendering of the PBO.
Using another texture unit via glActiveTexture(GL_TEXTURE1) makes it render as a white rectangle instead.

Change History (1)

comment:1 Changed 4 months ago by Antoine Martin

Description: modified (diff)
Resolution: fixed
Status: newclosed

Horrid fix in r15576, will follow up with #1497 instead.

On the plus side, the opengl code is now cleaner and more readable.

Note: See TracTickets for help on using tickets.