fix vscode
This commit is contained in:
parent
0db4f9bef8
commit
79c9f90e53
13 changed files with 711 additions and 42 deletions
67
flakes/qtile/scenefx.patch
Normal file
67
flakes/qtile/scenefx.patch
Normal file
|
@ -0,0 +1,67 @@
|
|||
diff --git a/libqtile/backend/wayland/window.py b/libqtile/backend/wayland/window.py
|
||||
index 8f2c12a..563cc83 100644
|
||||
--- a/libqtile/backend/wayland/window.py
|
||||
+++ b/libqtile/backend/wayland/window.py
|
||||
@@ -114,6 +114,7 @@ class Window(typing.Generic[S], _Base, base.Window, HasListeners):
|
||||
self.x = 0
|
||||
self.y = 0
|
||||
self._opacity: float = 1.0
|
||||
+ self._rounding: int = 0
|
||||
self._wm_class: str | None = None
|
||||
self._idle_inhibitors_count: int = 0
|
||||
self._urgent = False
|
||||
@@ -389,16 +390,43 @@ class Window(typing.Generic[S], _Base, base.Window, HasListeners):
|
||||
|
||||
@opacity.setter
|
||||
def opacity(self, opacity: float) -> None:
|
||||
- if opacity < 1.0:
|
||||
+ if self.container.node:
|
||||
+ buf = SceneBuffer.from_node(self.container.node)
|
||||
+ if buf:
|
||||
+ buf.set_opacity(opacity)
|
||||
+ else:
|
||||
+ logger.warning(
|
||||
+ f"Failed to turn node {self.container.node} into a buffer!"
|
||||
+ )
|
||||
+ else:
|
||||
logger.warning(
|
||||
- "Sorry, transparency is not yet supported by the wlroots API used by "
|
||||
- "Qtile. Transparency can only be achieved if the client sets it."
|
||||
+ "Sorry, opacity is not implemented for this window type."
|
||||
)
|
||||
# wlroots' scene graph doesn't support setting the opacity of trees/nodes by
|
||||
# the compositor. See: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3393
|
||||
# If/when that becomes supported, this warning can be removed.
|
||||
self._opacity = opacity
|
||||
|
||||
+ @property
|
||||
+ def rounding(self) -> int:
|
||||
+ return self._rounding
|
||||
+
|
||||
+ @rounding.setter
|
||||
+ def rounding(self, radii: int) -> None:
|
||||
+ if self.container.node:
|
||||
+ buf = SceneBuffer.from_node(self.container.node)
|
||||
+ if buf:
|
||||
+ buf.set_corner_radius(radii)
|
||||
+ else:
|
||||
+ logger.warning(
|
||||
+ f"Failed to turn node {self.container.node} into a buffer!"
|
||||
+ )
|
||||
+ else:
|
||||
+ logger.warning(
|
||||
+ "Sorry, rounding is not implemented for this window type."
|
||||
+ )
|
||||
+
|
||||
+
|
||||
@property
|
||||
def floating(self) -> bool:
|
||||
return self._float_state != FloatStates.NOT_FLOATING
|
||||
@@ -921,6 +949,7 @@ class Internal(_Base, base.Internal):
|
||||
self._width: int = width
|
||||
self._height: int = height
|
||||
self._opacity: float = 1.0
|
||||
+ self._rounding: int = 0
|
||||
|
||||
# Store this object on the scene node for finding the window under the pointer.
|
||||
self.wlr_buffer, self.surface = self._new_buffer(init=True)
|
Loading…
Add table
Add a link
Reference in a new issue