--- a/qtile_extras/layout/decorations/borders.py +++ b/qtile_extras/layout/decorations/borders.py @@ -205,7 +205,7 @@ _BorderStyle.__init__(self, **config) self.add_defaults(GradientBorder.defaults) - if not isinstance(self.colours, list | tuple): + if not isinstance(self.colours, (list, tuple)): raise ConfigError("colours must be a list or tuple.") if self.offsets is None: @@ -261,7 +261,7 @@ self.add_defaults(GradientFrame.defaults) self.offsets = [x / (len(self.colours) - 1) for x in range(len(self.colours))] - if not isinstance(self.colours, list | tuple): + if not isinstance(self.colours, (list, tuple)): raise ConfigError("colours must be a list or tuple.") self._check_colours() @@ -408,7 +408,7 @@ _BorderStyle.__init__(self, **config) self.add_defaults(SolidEdge.defaults) - if not (isinstance(self.colours, list | tuple) and len(self.colours) == 4): + if not (isinstance(self.colours, (list, tuple)) and len(self.colours) == 4): raise ConfigError("colours must have 4 values.") self._check_colours() @@ -488,7 +488,7 @@ return self.fallback for match, colour in self.matches: - if isinstance(match, list | str): + if isinstance(match, (list, str)): matched = any(m.compare(win) for m in match) else: matched = match.compare(win) --- a/qtile_extras/widget/decorations.py +++ b/qtile_extras/widget/decorations.py @@ -72,9 +72,9 @@ self.parent = parent def single_or_four(self, value, name: str): - if isinstance(value, float | int): + if isinstance(value, (float, int)): n = e = s = w = value - elif isinstance(value, tuple | list): + elif isinstance(value, (tuple, list)): if len(value) == 1: n = e = s = w = value[0] elif len(value) == 4: --- a/qtile_extras/widget/groupbox2.py +++ b/qtile_extras/widget/groupbox2.py @@ -24,7 +24,7 @@ from copy import deepcopy from enum import Flag, auto from pathlib import Path -from typing import TYPE_CHECKING +from typing import TYPE_CHECKING, Union from cairocffi.pixbuf import ImageLoadingError from libqtile import bar, hook @@ -39,8 +39,8 @@ from typing import Any, Literal -ColorType = str | tuple[int, int, int] | tuple[int, int, int, float] -ColorsType = ColorType | list[ColorType] +ColorType = Union[str, tuple[int, int, int], tuple[int, int, int, float]] +ColorsType = Union[ColorType, list[ColorType]] IMAGE_CACHE: dict[str, Img] = {} --- a/qtile_extras/widget/statusnotifier.py +++ b/qtile_extras/widget/statusnotifier.py @@ -32,7 +32,7 @@ from qtile_extras.widget.mixins import DbusMenuMixin if TYPE_CHECKING: - from collections.abc import Callable + from typing import Callable, Optional NO_MENU = "/NO_DBUSMENU" @@ -55,7 +55,7 @@ await self.menu.start() -def get_menu(self, root: int = 0, callback: Callable | None = None): +def get_menu(self, root: int = 0, callback: Optional[Callable] = None): if self.menu: self.menu.get_menu(root, callback=callback)