[Gambas-bugtracker] Bug #2652: gb.desktop.x11 does not support VirtualRoot desktops

bugtracker at gambaswiki.org bugtracker at gambaswiki.org
Thu Nov 3 19:03:17 CET 2022


http://gambaswiki.org/bugtracker/edit?object=BUG.2652&from=L21haW4-

Bruce STEERS reported a new bug.

Summary
-------

gb.desktop.x11 does not support VirtualRoot desktops

Type             : Bug
Priority         : Low
Gambas version   : Master
Product          : Unknown


Description
-----------

A window manager like compiz uses a VirtualRoot style workspace switcher that is one large viewport that is Rows * Screen.W and Columns * Screen.Height instead of multiple viewports of the normal Screen size.

For compiz there are the following problems...

The X11.DesktopCount only ever reports one desktop.
X11.DesktopCount should be a division of the overall _NET_DESKTOP_GEOMETRY divided by screen W/H 

DesktopCount is set by setting _NET_DESKTOP_GEOMETRY to the size of the screen multiplied by the columns/rows
(additional connected displays must be accounted for when sizing)

Note: setting GEOMETRY works fine on compiz and holds the setting okay but it does not update the internal compiz preferences in the compiz manager, i do not know how to trigger the update in ccsm.

X11.CurrentDesktop is always 0
X11.CurrentDesktop should get it's position from the hint _NET_DESKTOP_VIEWPORT , for multiple viewports this is always 0,0 but for VirtualRoot it is the position of the current desktop in the overall geometry, position is specific to the _NET_DESKTOP_LAYOUT that is [Orientation,Columns,Rows,StartCorner].

X11.DesktopWindow suffers the same issues.

Info found here: 
https://specifications.freedesktop.org/wm-spec/1.3/ar01s02.html
https://specifications.freedesktop.org/wm-spec/1.3/ar01s03.html


System information
------------------

[System]
Gambas=3.17.90 d7ba6ec0c (bruces-patched)
OperatingSystem=Linux
Kernel=5.15.0-52-generic
Architecture=x86_64
Distribution=Linux Mint 21 Vanessa
Desktop=MATE
Font=Ubuntu,12
Scale=9
Theme=mist
Language=en_GB.UTF-8
Memory=11928M

[Libraries]
Cairo=libcairo.so.2.11600.0
Curl=libcurl.so.4.7.0
DBus=libdbus-1.so.3.19.13
DBus=libdbus-1.so.3.35.0
GDK2=libgdk-x11-2.0.so.0.2400.33
GDK3=libgdk-3.so.0.2404.29
GStreamer=libgstreamer-1.0.so.0.2003.0
GTK+2=libgtk-x11-2.0.so.0.2400.33
GTK+3=libgtk-3.so.0.2404.29
OpenGL=libGL.so.1.7.0
Poppler=libpoppler.so.118.0.0
Poppler=libpoppler.so.97.0.0
QT5=libQt5Core.so.5.15.3
SDL=libSDL-1.2.so.0.11.4
SQLite=libsqlite3.so.0.8.6

[Environment]
CLUTTER_BACKEND=x11
CLUTTER_IM_MODULE=ibus
COMPIZ_CONFIG_PROFILE=mint
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
DEFAULTS_PATH=/usr/share/gconf/mate.default.path
DESKTOP_AUTOSTART_ID=108b7dae3cb177f4dc166747764361626200000058650000
DESKTOP_SESSION=mate
DISPLAY=:0
GB_GUI=gb.gtk3
GDMSESSION=mate
GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
GTK3_MODULES=xapp-gtk3-module
GTK_IM_MODULE=ibus
GTK_MODULES=gail:atk-bridge
GTK_OVERLAY_SCROLLING=0
HOME=<home>
LANG=en_GB.UTF-8
LANGUAGE=en_GB.UTF-8
LC_ADDRESS=en_GB.UTF-8
LC_ALL=en_GB.UTF-8
LC_IDENTIFICATION=en_GB.UTF-8
LC_MEASUREMENT=en_GB.UTF-8
LC_MONETARY=en_GB.UTF-8
LC_NAME=en_GB.UTF-8
LC_NUMERIC=en_GB.UTF-8
LC_PAPER=en_GB.UTF-8
LC_TELEPHONE=en_GB.UTF-8
LC_TIME=en_GB.UTF-8
LIBVIRT_DEFAULT_URI=qemu:///system
LOGNAME=<user>
MANDATORY_PATH=/usr/share/gconf/mate.mandatory.path
MATE_DESKTOP_SESSION_ID=this-is-deprecated
PAPERSIZE=a4
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
PWD=<home>
QT_ACCESSIBILITY=1
QT_FONT_DPI=96
QT_IM_MODULE=ibus
QT_QPA_PLATFORMTHEME=qt5ct
QT_SCALE_FACTOR=1
SESSION_MANAGER=local/<hostname>:@/tmp/.ICE-unix/5865,unix/<hostname>:/tmp/.ICE-unix/5865
SHELL=/bin/bash
SHLVL=0
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
SYSTEMD_EXEC_PID=5793
TZ=:/etc/localtime
USER=<user>
USERNAME=<user>
WINDOWPATH=2
XAUTHORITY=/run/user/1000/gdm/Xauthority
XDG_CONFIG_DIRS=/etc/xdg/xdg-mate:/etc/xdg
XDG_CURRENT_DESKTOP=MATE
XDG_DATA_DIRS=/usr/share/mate:/usr/share/mate:/usr/share/gnome:<home>/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share/:/usr/share/
XDG_RUNTIME_DIR=/run/user/1000
XDG_SEAT=seat0
XDG_SESSION_CLASS=user
XDG_SESSION_DESKTOP=mate
XDG_SESSION_ID=1
XDG_SESSION_TYPE=x11
XDG_VTNR=2
XMODIFIERS=@im=ibus
_=/usr/bin/gambas3




More information about the Bugtracker mailing list