Add support for real transparency when using a composited environment. (Fixes LP #190946)
This commit is contained in:
parent
5a12e350af
commit
379be85a09
15
terminator
15
terminator
|
@ -291,8 +291,12 @@ class TerminatorTerm:
|
||||||
self._vte.set_scroll_background (self.reconf ('scroll_background'))
|
self._vte.set_scroll_background (self.reconf ('scroll_background'))
|
||||||
self._vte.set_background_transparent (False)
|
self._vte.set_background_transparent (False)
|
||||||
if background_type == "transparent":
|
if background_type == "transparent":
|
||||||
self._vte.set_background_transparent (True)
|
darkness = self.reconf ('background_darkness')
|
||||||
self._vte.set_background_saturation (1 - (self.reconf ('background_darkness')))
|
if self._vte.is_composited():
|
||||||
|
self._vte.set_opacity(int(darkness * 65535))
|
||||||
|
else:
|
||||||
|
self._vte.set_background_transparent (True)
|
||||||
|
self._vte.set_background_saturation (1 - darkness)
|
||||||
|
|
||||||
colors = palette.split (':')
|
colors = palette.split (':')
|
||||||
palette = []
|
palette = []
|
||||||
|
@ -540,6 +544,13 @@ class Terminator:
|
||||||
|
|
||||||
self.window.set_property ('allow-shrink', True)
|
self.window.set_property ('allow-shrink', True)
|
||||||
|
|
||||||
|
# Set RGBA colormap if possible so VTE can use real alpha
|
||||||
|
# channels for transparency.
|
||||||
|
screen = self.window.get_screen()
|
||||||
|
colormap = screen.get_rgba_colormap()
|
||||||
|
if colormap and self.window.is_composited():
|
||||||
|
self.window.set_colormap(colormap)
|
||||||
|
|
||||||
# Start out with just one terminal
|
# Start out with just one terminal
|
||||||
# FIXME: This should be really be decided from some kind of profile
|
# FIXME: This should be really be decided from some kind of profile
|
||||||
term = (TerminatorTerm (self, self.profile, self.command))
|
term = (TerminatorTerm (self, self.profile, self.command))
|
||||||
|
|
Loading…
Reference in New Issue