xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.

Opened 5 years ago

Closed 3 years ago

Last modified 16 months ago

#1497 closed task (fixed)

fix painting cursor with opengl

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


Follow up from #1496, see r15576.

We copy the pixels one at a time which is horrid.
Someone who understands opengl should fix the texture code instead..

Change History (5)

comment:1 Changed 3 years ago by Antoine Martin

Status: newassigned

For reference, the current (broken) code can be enabled using:


And the actual painting code can be seen by looking for TEXTURE_CURSOR in browser/xpra/trunk/src/xpra/client/gl/gl_window_backing_base.py.

comment:2 Changed 3 years ago by Antoine Martin

Well, I'll be damned!

Following the precious advice that glEnablei(GL_BLEND) was invalid, I removed it in r23265. (after wrongly trying to replace it by glEnable(GL_BLEND) in r23263, which quickly got reverted in r23264 as painting was broken)

r23266 + r23267 does replace it though, but only for the cursor paint code, and now it seems to work!
So r23269 enables it by default.

I am keeping this ticket open, because this is going to need a lot more testing.
Already tested:

  • win32 shadow server
  • seamless X11 transparent windows
Last edited 3 years ago by Antoine Martin (previous) (diff)

comment:3 Changed 3 years ago by Antoine Martin

r23270 also disables GL_BLEND once we're done painting the cursor

comment:4 Changed 3 years ago by Antoine Martin

Resolution: fixed
Status: assignedclosed

Works great.

comment:5 Changed 16 months ago by migration script

this ticket has been moved to: https://github.com/Xpra-org/xpra/issues/1497

Note: See TracTickets for help on using tickets.