[Gambas-user] Test Screen.Available values

Mayost Sharon sharon at 455.co.il
Tue May 16 15:14:07 CEST 2023


Hello

I ran it on:
36 FEDORA
GAMBAS 3.18.2

It runs well
I don't get any error

---------- Original Message -----------
From: Bruce Steers <bsteers4 at gmail.com>
To: Gambas Mailing List <user at lists.gambas-basic.org>
Sent: Tue, 16 May 2023 11:00:48 +0100
Subject: [Gambas-user] Test Screen.Available values

> Hi all.
> 
> I have a problem with a program that Benoit does not get the same bug and
> wondered if some people could test this program.
> 
> the program is a simple screenshot program.
> I made it because I now use a laptop with 2 screens attached and with the
> built-in screenshot programs it grabs the entire area of both screens and i
> then have to crop the picture.
> 
> This application detects what screen the mouse is on via an addition to
> Mouse.class (Mouse.Screen) and only grabs that screens area.
> 
> It also has an option to "hide panels" , if this is selected then is uses
> the Screen.Available co'ords not the normal co'ords.
> like so...
> 
>   Dim s As Screen = Screens[Mouse.Screen]
> 
>   If NoPanels Then
>     hPic = Desktop.Screenshot(s.AvailableX, s.AvailableY, s.AvailableWidth,
> s.AvailableHeight)
>   Else
>     hPic = Desktop.Screenshot(s.x, s.y, s.w, s.h)
>   Endif
> 
> The problem....
> On my system this works as expected with GTK3 , if NoPanels is selected the
> screenshot only includes the internal usable screen and not the outer
> desktop panels.
> 
> (note: my config is the plug-in 1280x1024 monitor is default screen, laptop
> built-in 1366x768 is secondary screen)
> 
> Now with GTK2 and QT5 it does not work and parts of the panels get included
> in the screenshot.
> On my machine but not Benoits :-\
> 
> Also for me KDE failed with GTK3 as well but for Ben no problems.
> 
> So i am trying to figure out why it fails for me but not for Ben.
> Could some people test this application on their systems and report if it
> works as expected or not.
> 
> To test...
> Load the project.
> select the debug toolkit to use (either gtk3 or qt5)
> hit run.
> Ensure the "Hide Panels" checkbox is checked.
> Hit Okay
> 
> the following window shows the screenshot image.  It should not include
> your desktop panels just the inner screen part.
> 
> Like i say on my Mint21-MATE machine this works as expected only with GTK3
> toolkit.
> 
> Thanks all :)
> BruceS
> 
> My system config...
> [System]
> Gambas=3.18.90 0e0771183 (bruces-patched)
> OperatingSystem=Linux
> Distribution=Linux Mint 21 Vanessa
> Kernel=5.15.0-71-generic
> Architecture=x86_64
> Cores=4
> Memory=7869M
> Language=en_GB.UTF-8
> Desktop=MATE
> DesktopResolution=96
> DesktopScale=8
> WidgetTheme=clearlooks
> Font=Ubuntu,11
> 
> [Programs]
> gcc=gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
> git=git version 2.34.1
> 
> [Libraries]
> Cairo=libcairo.so.2.11600.0
> Curl=libcurl.so.4.7.0
> DBus=libdbus-1.so.3.19.13
> 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
> QT5=libQt5Core.so.5.15.3
> RSvg=librsvg-2.so.2.48.0
> SDL=libSDL2-2.0.so.0.18.2
> SQLite 3=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=101b3a4351c7472ce168422673669594200000046200005
> DESKTOP_SESSION=mate
> DISPLAY=:0
> GB_GUI=gb.gtk3
> GDMSESSION=mate
> GDM_LANG=en_GB
> 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_LOGGING_RULES=*.debug=false
> QT_QPA_PLATFORMTHEME=qt5ct
> QT_SCALE_FACTOR=1
> SESSION_MANAGER=local/<hostname>:@/tmp/.ICE-unix/4620,
> unix/<hostname>:/tmp/.ICE-unix/4620 SHELL=/bin/bash SHLVL=1 SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
> TZ=:/etc/localtime
> USER=<user>
> XAUTHORITY=<home>/.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_GREETER_DATA_DIR=/var/lib/lightdm-data/<user>
> XDG_RUNTIME_DIR=/run/user/1000
> XDG_SEAT=seat0
> XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
> XDG_SESSION_CLASS=user
> XDG_SESSION_DESKTOP=mate
> XDG_SESSION_ID=c1
> XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
> XDG_SESSION_TYPE=x11
> XDG_VTNR=7
> XMODIFIERS=@im=ibus
> _=/usr/bin/gambas3
------- End of Original Message -------



More information about the User mailing list