App-XWindowManagerUtils
view release on metacpan or search on metacpan
NAME
App::XWindowManagerUtils - Utilities related to X Window Manager
VERSION
This document describes version 0.003 of App::XWindowManagerUtils (from
Perl distribution App-XWindowManagerUtils), released on 2026-04-06.
SYNOPSIS
DESCRIPTION
This distribution includes several utilities related to "X Window
Manager":
* get-xwm-window-kde-activity
* list-xwm-windows
Under the hood, it's currently a wrapper to tools like "wmctrl", etc.
"wmctrl" works on EWMH-compliant X11 window managers. This means
mainstream desktop environments like KWin, Xfwm, Mutter (GNOME). It
works partially or doesn't work with minimalist window managers like
dwm, suckless. It partially works with Wayland where there is an X
compatibility layer, e.g. GNOME Wayland, KDE Plasma Wayland.
FUNCTIONS
get_xwm_window_kde_activity
Usage:
get_xwm_window_kde_activity(%args) -> [$status_code, $reason, $payload, \%result_meta]
Get the KDE activity GUID(s) of a specific window.
A window can be displayed in more than one KDE activities, so this
utility can return a comma-separated list of GUIDs.
This function is not exported.
Arguments ('*' denotes required arguments):
* id* => *str*
Window ID, specified in hex form with 0x prefix, e.g. 0x05a0000e.
Returns an enveloped result (an array).
First element ($status_code) is an integer containing HTTP-like status
code (200 means OK, 4xx caller error, 5xx function error). Second
element ($reason) is a string containing error message, or something
like "OK" if status is 200. Third element ($payload) is the actual
result, but usually not present when enveloped result is an error
response ($status_code is not 2xx). Fourth element (%result_meta) is
called result metadata and is optional, a hash that contains extra
information, much like how HTTP response headers provide additional
metadata.
Return value: (any)
list_xwm_windows
Usage:
list_xwm_windows(%args) -> [$status_code, $reason, $payload, \%result_meta]
List all Windows.
This utility is currently a wrapper for wmctrl.
This function is not exported by default, but exportable.
Arguments ('*' denotes required arguments):
* detail => *bool*
(No description)
* query => *array[str]*
Queries are matched against window titles, IDs, and KDE activity
names & GUIDs (if KDE activity names & GUIDs are requested).
* with_kde_activity => *bool*
( run in 0.684 second using v1.01-cache-2.11-cpan-bbb979687b5 )