diff --git a/docs/kittens/panel.rst b/docs/kittens/panel.rst index ad3367c73..0c6fcc907 100644 --- a/docs/kittens/panel.rst +++ b/docs/kittens/panel.rst @@ -132,6 +132,7 @@ Compatibility with various platforms See the HTML documentation for the compatibility matrix. .. only:: not man + Generated with the help of the :file:`panels.py` test script. .. tab:: Wayland @@ -197,3 +198,9 @@ Compatibility with various platforms - 🟢 - 🟢 - transparency does not work for :option:`--edge=background <--edge>` + + * - GNOME + - 🟢 + - 🟢 + - 🟢 + - diff --git a/kitty_tests/panels.py b/kitty_tests/panels.py new file mode 100755 index 000000000..211aa0cad --- /dev/null +++ b/kitty_tests/panels.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# License: GPLv3 Copyright: 2025, Kovid Goyal + +import shlex +import subprocess + + +def r(msg: str, cmdline: str) -> None: + try: + q = input('Test ' + msg + '? (y/n): ').lower() + if q in ('y', 'yes'): + try: + subprocess.run(['kitten'] + shlex.split(cmdline)) + except KeyboardInterrupt: + pass + except KeyboardInterrupt: + raise SystemExit(1) + +r('top panel check transpareny, no input focus, margins and struts', + 'panel -o background_opacity=0.2 --edge=top --lines=2 --margin-left=50 --margin-right=100') + +r('bottom panel, check struts', 'panel -o background_opacity=0.2 --edge=bottom --lines=2 --margin-left=100 --margin-right=50') + +r('left panel, check struts', 'panel -o background_opacity=0.2 --edge=left --columns=2 --margin-top=50 --margin-bottom=100') + +r('right panel, check struts', 'panel -o background_opacity=0.2 --edge=right --columns=2 --margin-top=50 --margin-bottom=100') + +r('background, check transparency and margins and no input focus', + 'panel -o background_opacity=0.2 --edge=background --margin-top=50 --margin-bottom=50 --margin-left=100 --margin-right=100') + +r('quake, check transparency and focus on show/re-show', 'kitten quick-access-terminal')