[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gambas-bugtracker] Bug #2934: No MouseWheel event in DocumentView


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

Claus DIETRICH reported a new bug.

Summary
-------

No MouseWheel event in DocumentView

Type             : Bug
Priority         : Medium
Gambas version   : 3.19
Product          : GUI components


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

In order to mimic the zoom functionality of the XReader document viewer I wanted to use the mousewheel-event in the DocumentView class. To my surprise I found that it wasn't fired, although I pressed the Ctrl-Key before turning the mouse wheel. As it is not required to suppress the mousewheel-event when mouse.Control is True, I out-commented one 'Stop Event’ in the following sub in the DocumentView class:

Public Sub View_MouseWheel()
 
  If $iArrangement = Arrange.Fill Then
    $iCurrent = Max(0, Min($iCurrent - (Mouse.Delta * Max($iColumn, 1)), $iCount - 1))
    $hView.Scroll(0, 0)
    View_Scroll
    Stop Event
  Else
    If Mouse.Control Then
      Me.Zoom = $fZoom * 2 ^ (Mouse.Delta / 4)
      $hView.Scroll($iSX, $iSY)
    Endif
    'Stop Event
  Endif
  $iSX = $hView.ScrollX
  $iSY = $hView.ScrollY
 
End

With this modification I was able to catch the mousewheel-event and automatically switch from full width-mode to zoom mode be pressing the ctrl-key and turning the mouse wheel. The XReader offers the same feature and I don't see any side effect of this modification. 

I suggest this modification as bug fix. If required I can send a demo with this modification to your personal email account. 

Best regards

Claus


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

[System]
Gambas=3.19.4
OperatingSystem=Linux
Distribution=Linux Mint 20.3 (Una)
Kernel=5.4.0-192-generic
Architecture=x86_64
Cores=8
Memory=15872M
Language=de_DE.UTF-8
Platform=x11
Desktop=CINNAMON
DesktopResolution=96
DesktopScale=7
WidgetTheme=mint-y
Font=Ubuntu,10
[Programs]
appimage-builder=appimage-builder: 1.1.0
dpkg=Debian »dpkg« Paketmanagement-Programm Version 1.19.7 (amd64).
gcc=gcc (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
msgmerge=msgmerge (GNU gettext-tools) 0.19.8.1
rpmbuild=RPM version 4.14.2.1
[Libraries]
Cairo=libcairo.so.2.11600.0
Curl=libcurl.so.4.6.0
DBus=libdbus-1.so.3.19.11
GDK2=libgdk-x11-2.0.so.0.2400.32
GDK3=libgdk-3.so.0.2404.16
GStreamer=libgstreamer-1.0.so.0.1603.0
GTK+2=libgtk-x11-2.0.so.0.2400.32
GTK+3=libgtk-3.so.0.2404.16
OpenGL=libGL.so.1.7.0
Poppler=libpoppler.so.97.0.0
QT5=libQt5Core.so.5.12.8
RSvg=librsvg-2.so.2.47.0
SDL=libSDL2-2.0.so.0.10.0
SQLite 3=libsqlite3.so.0.8.6
[Environment]
CINNAMON_VERSION=5.2.7
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
DESKTOP_SESSION=cinnamon
DISPLAY=:0
GB_DESKTOP_PORTAL_ENABLED=0
GB_GUI=gb.gtk3
GDMSESSION=cinnamon
GDM_LANG=de_DE
GIO_LAUNCHED_DESKTOP_FILE=<home>/.local/share/applications/gambas3.desktop
GIO_LAUNCHED_DESKTOP_FILE_PID=30603
GJS_DEBUG_OUTPUT=stderr
GJS_DEBUG_TOPICS=JS ERROR;JS LOG
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
GTK3_MODULES=xapp-gtk3-module
GTK_MODULES=gail:atk-bridge
GTK_OVERLAY_SCROLLING=1
HOME=<home>
LANG=de_DE.UTF-8
LANGUAGE=de_DE.UTF-8
LC_ADDRESS=de_DE.UTF-8
LC_ALL=de_DE.UTF-8
LC_IDENTIFICATION=de_DE.UTF-8
LC_MEASUREMENT=de_DE.UTF-8
LC_MONETARY=de_DE.UTF-8
LC_NAME=de_DE.UTF-8
LC_NUMERIC=de_DE.UTF-8
LC_PAPER=de_DE.UTF-8
LC_TELEPHONE=de_DE.UTF-8
LC_TIME=de_DE.UTF-8
LOGNAME=<user>
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_LOGGING_RULES=*.debug=false
QT_QPA_PLATFORMTHEME=qt5ct
SESSION_MANAGER=local/<hostname>:@/tmp/.ICE-unix/1272,unix/<hostname>:/tmp/.ICE-unix/1272
SHELL=/bin/bash
SHLVL=0
SSH_AGENT_PID=1343
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
TZ=:/etc/localtime
USER=<user>
XAUTHORITY=<home>/.Xauthority
XDG_CONFIG_DIRS=/etc/xdg/xdg-cinnamon:/etc/xdg
XDG_CURRENT_DESKTOP=X-Cinnamon
XDG_DATA_DIRS=/usr/share/cinnamon:/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=cinnamon
XDG_SESSION_ID=c2
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session0
XDG_SESSION_TYPE=x11
XDG_VTNR=7


----[ Gambas bugtracker-list is hosted by https://www.hostsharing.net ]----