xpra icon
Bug tracker and wiki

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

Opened 4 years ago

Closed 23 months ago

Last modified 6 months ago

#1570 closed task (fixed)

transparent windows

Reported by: Antoine Martin Owned by: Antoine Martin
Priority: major Milestone: 4.0
Component: core Version: trunk
Keywords: Cc:

Description (last modified by Antoine Martin)

Transparency aka "alpha channel" tracker ticket.

Original tickets and important changesets:

  • #77 tray icons
  • #262 disappearing tooltips
  • #279 32-bit visuals and transparent windows
  • #280 Systray icon transparency broken
  • #385 opengl transparency (and more)
  • #487 webp artifacts with transparency
  • #500 small tooltip windows have transparency issues
  • #577 detect lack of transparency support and disable it to save bandwidth
  • #892 transparency forwarding is broken
  • #961 transparency support is broken with pixmap backing
  • #1145 pixbuf backend does not support transparency with desktop scaling enabled
  • #1682 transparency with the native opengl backend on win32
  • #1794 transparency with the native opengl backend on macos

Attachments (1)

win32-opengl-alpha.patch (2.6 KB) - added by Antoine Martin 4 years ago.
try to enable transparency with opengl

Download all attachments as: .zip

Change History (9)

comment:1 Changed 4 years ago by Antoine Martin

Description: modified (diff)
Status: newassigned

Fixes in r16262:

  • skip compositing check with opengl backend on macos (though transparency still doesn't work..)
  • enable transparency by default on macos as this seems to work with both cairo and pixmap backends
  • remove override in pixmap backing, use the superclass default (ie: enabled on macos)
  • add better error logging when initializing / enabling transparency, especially failures

This reverts an earlier changeset: r4934 "transparency does not work on OSX" - as it works with cairo and pixmap, the opengl case may be fixable.
If not, we should disable it in the backend - which will save some bandwidth.

comment:2 Changed 4 years ago by Antoine Martin

Hopefully this can be dealt with as part of #1569.

comment:3 Changed 4 years ago by Antoine Martin

r17373 enables transparency with GTK3, which works with opengl=off.

For opengl, r17375 passes the flag to the glcontext class so it can choose an appropriate visual.
Unfortunately, despite using the DwmEnableBlurBehindWindow (as directed here: https://stackoverflow.com/a/4055059), the window remains opaque on win32. See patch attached.

Version 0, edited 4 years ago by Antoine Martin (next)

Changed 4 years ago by Antoine Martin

Attachment: win32-opengl-alpha.patch added

try to enable transparency with opengl

comment:4 Changed 4 years ago by Antoine Martin

r17385 uses non-opengl rendering if the window requires transparency, will follow up in #1682 for win32.

macos support is blocked by #1575

comment:5 Changed 3 years ago by Antoine Martin

Description: modified (diff)

r18900 does the same as r17373 on macos: the cairo backend does handle transparency already just fine so let's use it, for opengl: #1794.

comment:6 Changed 2 years ago by Antoine Martin

Milestone: 3.04.0

comment:7 Changed 23 months ago by Antoine Martin

Resolution: fixed
Status: assignedclosed

Closing as this is now supported on all platforms, with all the backends, except for win32 + opengl: #1682

comment:8 Changed 6 months ago by migration script

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

Note: See TracTickets for help on using tickets.