xpra icon
Bug tracker and wiki

Opened 2 years ago

Closed 3 weeks 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:

Description

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 (4)

comment:1 Changed 4 weeks ago by Antoine Martin

Status: newassigned

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

XPRA_OPENGL_TEXTURE_CURSOR=1 xpra attach ...

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 4 weeks 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 4 weeks ago by Antoine Martin (previous) (diff)

comment:3 Changed 4 weeks ago by Antoine Martin

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

comment:4 Changed 3 weeks ago by Antoine Martin

Resolution: fixed
Status: assignedclosed

Works great.

Note: See TracTickets for help on using tickets.