Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

show pointer using opengl texture overlay #1496

Closed
totaam opened this issue Apr 12, 2017 · 1 comment
Closed

show pointer using opengl texture overlay #1496

totaam opened this issue Apr 12, 2017 · 1 comment

Comments

@totaam
Copy link
Collaborator

totaam commented Apr 12, 2017

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.

Changesets:

  • 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.

@totaam
Copy link
Collaborator Author

totaam commented Apr 12, 2017

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

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant