<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" href="../assets/xml/rss.xsl" media="all"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Knowledge Base (Posts about mouse)</title><link>https://bgstack15.ddns.net/blog/</link><description></description><atom:link href="https://bgstack15.ddns.net/blog/categories/mouse.xml" rel="self" type="application/rss+xml"></atom:link><language>en</language><copyright>Contents © 2024 &lt;a href="mailto:bgstack15@gmail.com"&gt;bgstack15&lt;/a&gt; 
&lt;a rel="license" href="https://creativecommons.org/licenses/by-sa/4.0/"&gt;
&lt;img alt="Creative Commons License BY-SA"
style="border-width:0; margin-bottom:12px;"
src="https://bgstack15.ddns.net/.images/l_by-sa_4.0_88x31.png"&gt;&lt;/a&gt;</copyright><lastBuildDate>Sat, 02 Mar 2024 14:00:34 GMT</lastBuildDate><generator>Nikola (getnikola.com)</generator><docs>http://blogs.law.harvard.edu/tech/rss</docs><item><title>controlling mouse sensitivity primarily for 640x480 Dosbos-X windows</title><link>https://bgstack15.ddns.net/blog/posts/2024/03/02/controlling-mouse-sensitivity-primarily-for-640-480-dosbos-x-windows/</link><dc:creator>bgstack15</dc:creator><description>&lt;p&gt;When you want to run an old Windows 9x-era software title in &lt;a href="https://bgstack15.ddns.net/blog/categories/dosbox-x/"&gt;dosbox-x&lt;/a&gt;, and it the program has a very small maximum resolution, you might want to lower the resolution of the virtual desktop, and then maximize the window of the emulator.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://bgstack15.ddns.net/blog/2024/scrot-display-properties-640x480.png"&gt;&lt;img alt="" src="https://bgstack15.ddns.net/blog/2024/scrot-display-properties-640x480.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;And if you want to do this, your effective mouse sensitivity goes through the roof. You can try lowering it in the virtual environment, but that has limited effect.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://bgstack15.ddns.net/blog/2024/scrot-mouse-properties.png"&gt;&lt;img alt="" src="https://bgstack15.ddns.net/blog/2024/scrot-mouse-properties.png"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;So, you can adjust it in your X11 environment. I don't use a desktop environment, and xfce4-settings-manager can view but not make changes to settings (I guess it needs an xfce4 daemon running for that somewhere). So I modify the xinput properties directly. First of all, here's the script.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://bgstack15.ddns.net/blog/files/2024/listings/mouse-sensitivity.sh.html"&gt;files/2024/listings/mouse-sensitivity.sh&lt;/a&gt;  &lt;a href="https://bgstack15.ddns.net/blog/files/2024/listings/mouse-sensitivity.sh"&gt;(Source)&lt;/a&gt;&lt;/p&gt;&lt;div class="highlight"&gt;&lt;table class="highlighttable"&gt;&lt;tr&gt;&lt;td class="linenos"&gt;&lt;div class="linenodiv"&gt;&lt;pre&gt;&lt;span class="normal"&gt; 1&lt;/span&gt;
&lt;span class="normal"&gt; 2&lt;/span&gt;
&lt;span class="normal"&gt; 3&lt;/span&gt;
&lt;span class="normal"&gt; 4&lt;/span&gt;
&lt;span class="normal"&gt; 5&lt;/span&gt;
&lt;span class="normal"&gt; 6&lt;/span&gt;
&lt;span class="normal"&gt; 7&lt;/span&gt;
&lt;span class="normal"&gt; 8&lt;/span&gt;
&lt;span class="normal"&gt; 9&lt;/span&gt;
&lt;span class="normal"&gt;10&lt;/span&gt;
&lt;span class="normal"&gt;11&lt;/span&gt;
&lt;span class="normal"&gt;12&lt;/span&gt;
&lt;span class="normal"&gt;13&lt;/span&gt;
&lt;span class="normal"&gt;14&lt;/span&gt;
&lt;span class="normal"&gt;15&lt;/span&gt;
&lt;span class="normal"&gt;16&lt;/span&gt;
&lt;span class="normal"&gt;17&lt;/span&gt;
&lt;span class="normal"&gt;18&lt;/span&gt;
&lt;span class="normal"&gt;19&lt;/span&gt;
&lt;span class="normal"&gt;20&lt;/span&gt;
&lt;span class="normal"&gt;21&lt;/span&gt;
&lt;span class="normal"&gt;22&lt;/span&gt;
&lt;span class="normal"&gt;23&lt;/span&gt;
&lt;span class="normal"&gt;24&lt;/span&gt;
&lt;span class="normal"&gt;25&lt;/span&gt;
&lt;span class="normal"&gt;26&lt;/span&gt;
&lt;span class="normal"&gt;27&lt;/span&gt;
&lt;span class="normal"&gt;28&lt;/span&gt;
&lt;span class="normal"&gt;29&lt;/span&gt;
&lt;span class="normal"&gt;30&lt;/span&gt;
&lt;span class="normal"&gt;31&lt;/span&gt;
&lt;span class="normal"&gt;32&lt;/span&gt;
&lt;span class="normal"&gt;33&lt;/span&gt;
&lt;span class="normal"&gt;34&lt;/span&gt;
&lt;span class="normal"&gt;35&lt;/span&gt;
&lt;span class="normal"&gt;36&lt;/span&gt;
&lt;span class="normal"&gt;37&lt;/span&gt;
&lt;span class="normal"&gt;38&lt;/span&gt;
&lt;span class="normal"&gt;39&lt;/span&gt;
&lt;span class="normal"&gt;40&lt;/span&gt;
&lt;span class="normal"&gt;41&lt;/span&gt;
&lt;span class="normal"&gt;42&lt;/span&gt;
&lt;span class="normal"&gt;43&lt;/span&gt;
&lt;span class="normal"&gt;44&lt;/span&gt;
&lt;span class="normal"&gt;45&lt;/span&gt;
&lt;span class="normal"&gt;46&lt;/span&gt;
&lt;span class="normal"&gt;47&lt;/span&gt;
&lt;span class="normal"&gt;48&lt;/span&gt;
&lt;span class="normal"&gt;49&lt;/span&gt;
&lt;span class="normal"&gt;50&lt;/span&gt;
&lt;span class="normal"&gt;51&lt;/span&gt;
&lt;span class="normal"&gt;52&lt;/span&gt;
&lt;span class="normal"&gt;53&lt;/span&gt;
&lt;span class="normal"&gt;54&lt;/span&gt;
&lt;span class="normal"&gt;55&lt;/span&gt;
&lt;span class="normal"&gt;56&lt;/span&gt;
&lt;span class="normal"&gt;57&lt;/span&gt;
&lt;span class="normal"&gt;58&lt;/span&gt;
&lt;span class="normal"&gt;59&lt;/span&gt;
&lt;span class="normal"&gt;60&lt;/span&gt;
&lt;span class="normal"&gt;61&lt;/span&gt;
&lt;span class="normal"&gt;62&lt;/span&gt;
&lt;span class="normal"&gt;63&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class="code"&gt;&lt;div&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;&lt;span class="ch"&gt;#!/bin/sh&lt;/span&gt;
&lt;span class="c1"&gt;# File: mouse-sensitivity.sh&lt;/span&gt;
&lt;span class="c1"&gt;# Location: /usr/local/bin&lt;/span&gt;
&lt;span class="c1"&gt;# Author: bgstack15&lt;/span&gt;
&lt;span class="c1"&gt;# Startdate: 2024-02-14-4 14:04&lt;/span&gt;
&lt;span class="c1"&gt;# SPDX-License-Identifier: GPL-3.0-only&lt;/span&gt;
&lt;span class="c1"&gt;# Title: Simple control for mouse sensitivity&lt;/span&gt;
&lt;span class="c1"&gt;# Purpose: provide easy options to slow down my mouse&lt;/span&gt;
&lt;span class="c1"&gt;# History:&lt;/span&gt;
&lt;span class="c1"&gt;# Usage: ./mouse-sensitivity.sh slow&lt;/span&gt;
&lt;span class="c1"&gt;# Reference:&lt;/span&gt;
&lt;span class="c1"&gt;#    https://unix.stackexchange.com/questions/90572/how-can-i-set-mouse-sensitivity-not-just-mouse-acceleration&lt;/span&gt;
&lt;span class="c1"&gt;#    https://shallowsky.com/blog/linux/setting-mouse-speed.html&lt;/span&gt;
&lt;span class="c1"&gt;#    experimentation for my mouse&lt;/span&gt;
&lt;span class="c1"&gt;# Improve:&lt;/span&gt;
&lt;span class="c1"&gt;# Dependencies:&lt;/span&gt;
&lt;span class="c1"&gt;#    x11, notify-send | zenity&lt;/span&gt;
&lt;span class="c1"&gt;# Documentation:&lt;/span&gt;

&lt;span class="c1"&gt;# Functions&lt;/span&gt;
warn&lt;span class="o"&gt;()&lt;/span&gt; &lt;span class="o"&gt;{&lt;/span&gt;
   &lt;span class="c1"&gt;#zenity --icon-name mouse --warning --text "${1}"&lt;/span&gt;
   notify-send --icon mouse --expire-time&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;2000&lt;/span&gt; &lt;span class="s2"&gt;"Mouse sensitivity"&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;1&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;span class="o"&gt;}&lt;/span&gt;

&lt;span class="c1"&gt;# Load config&lt;/span&gt;
&lt;span class="nb"&gt;test&lt;/span&gt; -f &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;XDG_CONFIG_HOME&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.config&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/mouse-sensitivity.conf"&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; . &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;XDG_CONFIG_HOME&lt;/span&gt;&lt;span class="k"&gt;:-&lt;/span&gt;&lt;span class="p"&gt;~/.config&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/mouse-sensitivity.conf"&lt;/span&gt;
&lt;span class="nb"&gt;test&lt;/span&gt; -z &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;DEVICE_NAME&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class="nv"&gt;DEVICE_NAME&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"Logitech Wireless Receiver Mouse"&lt;/span&gt;
&lt;span class="c1"&gt;# Load environment/runtime settings&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nb"&gt;test&lt;/span&gt; -z &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;then&lt;/span&gt;
   &lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nb"&gt;test&lt;/span&gt; -n &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;1&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="p"&gt;;&lt;/span&gt;
   &lt;span class="k"&gt;then&lt;/span&gt;
      &lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;1&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
   &lt;span class="k"&gt;else&lt;/span&gt;
      warn &lt;span class="s2"&gt;"Need SPEED or \$1 of number between -1.0 and 1.0, or slow, normal, fast."&lt;/span&gt;
      &lt;span class="nb"&gt;exit&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;
   &lt;span class="k"&gt;fi&lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;

&lt;span class="c1"&gt;# determine xinput id&lt;/span&gt;
&lt;span class="nv"&gt;xid&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="k"&gt;$(&lt;/span&gt; xinput list &lt;span class="p"&gt;|&lt;/span&gt; sed -n -r -e &lt;span class="s2"&gt;"/&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;DEVICE_NAME&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;/{s/.*id=([0-9]+).*/\1/;p;}"&lt;/span&gt; &lt;span class="k"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;

&lt;span class="c1"&gt;# Validate SPEED&lt;/span&gt;
&lt;span class="k"&gt;if&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; grep -qE &lt;span class="s1"&gt;'^[0-9\.\-]+$'&lt;/span&gt; &lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;then&lt;/span&gt;
   &lt;span class="c1"&gt;# a decimal number, so running with just that number&lt;/span&gt;
   :
&lt;span class="k"&gt;elif&lt;/span&gt; &lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="p"&gt;|&lt;/span&gt; grep -qE &lt;span class="s1"&gt;'^(slow|normal|fast)'&lt;/span&gt; &lt;span class="p"&gt;;&lt;/span&gt;
&lt;span class="k"&gt;then&lt;/span&gt;
   &lt;span class="k"&gt;case&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt;
      slow&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;-1 &lt;span class="p"&gt;;;&lt;/span&gt;
      normal&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;0&lt;/span&gt; &lt;span class="p"&gt;;;&lt;/span&gt;
      fast&lt;span class="o"&gt;)&lt;/span&gt; &lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="m"&gt;1&lt;/span&gt; &lt;span class="p"&gt;;;&lt;/span&gt;
   &lt;span class="k"&gt;esac&lt;/span&gt;
&lt;span class="k"&gt;else&lt;/span&gt;
   warn &lt;span class="s2"&gt;"Need speed of number between -1.0 and 1.0, or slow, normal, fast."&lt;/span&gt;
   &lt;span class="nb"&gt;exit&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;
&lt;span class="k"&gt;fi&lt;/span&gt;

&lt;span class="c1"&gt;# Run command&lt;/span&gt;
&lt;span class="nb"&gt;printf&lt;/span&gt; &lt;span class="s1"&gt;'%s\n'&lt;/span&gt; &lt;span class="s2"&gt;"Setting device &lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;xid&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt; speed &lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="m"&gt;1&lt;/span&gt;&amp;gt;&lt;span class="p"&gt;&amp;amp;&lt;/span&gt;&lt;span class="m"&gt;2&lt;/span&gt;
xinput set-prop &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;xid&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="s2"&gt;"libinput Accel Speed"&lt;/span&gt; &lt;span class="s2"&gt;"&lt;/span&gt;&lt;span class="si"&gt;${&lt;/span&gt;&lt;span class="nv"&gt;SPEED&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;You can configure it with a file &lt;code&gt;~/.config/mouse-sensitivity.conf&lt;/code&gt; for the exact device name to look for. I hardcoded the property to modify, but I actually have no idea if that is different for different mice. I'll probably improve this over time.&lt;/p&gt;
&lt;p&gt;So now the mouse doesn't zip around quite as ridiculously as before in the tiny, zoomed-in retro environment, so it's easier to click on things!&lt;/p&gt;</description><category>mouse</category><category>oneliner</category><category>x11</category><guid>https://bgstack15.ddns.net/blog/posts/2024/03/02/controlling-mouse-sensitivity-primarily-for-640-480-dosbos-x-windows/</guid><pubDate>Sat, 02 Mar 2024 13:54:15 GMT</pubDate></item><item><title>Fix Palemoon browser mouse scroll wheel goes through history when using Fluxbox</title><link>https://bgstack15.ddns.net/blog/posts/2019/03/30/fix-palemoon-browser-mouse-scroll-wheel-goes-through-history-when-using-fluxbox/</link><dc:creator>bgstack15</dc:creator><description>&lt;h2&gt;The solution&lt;/h2&gt;
&lt;p&gt;In my ~/.fluxbox/startup:&lt;/p&gt;
&lt;pre class="code literal-block"&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;xinput set-button-map "$( xinput | awk -F'[=]' '/ouse/{print $2}' | awk '{print $1}' | head -n1 )" 1 2 3 4 5 6 7 0 0 &amp;amp;
&lt;/code&gt;&lt;/pre&gt;

&lt;h2&gt;The story&lt;/h2&gt;
&lt;p&gt;I installed Devuan ceres on a desktop workstation as part of my research into
lightweight window managers. I installed my self-rolled dpkg of Palemoon
(source on
&lt;a href="https://gitlab.com/bgstack15/stackrpms/tree/master/palemoon/debian"&gt;gitlab&lt;/a&gt;)
because I have been actively reducing my use of upstream Firefox. When I
scrolled up with the mouse wheel, the browser jumped back and forth in
history. If the current tab in the browser has no previous pages, then the
scrolling operates just fine. Apparently I'm a unicorn. Nobody has had this
exact problem in this environment before (Windows users of Firefox changing
the about:config don't count). Relevant xkcds include a tiny bit of
&lt;a href="https://xkcd.com/979/"&gt;xkcd#979&lt;/a&gt; and a healthy dose of
&lt;a href="https://xkcd.com/1495/"&gt;xkcd#1495&lt;/a&gt;. I investigated many different methods to
try to solve my problem. I tried changing the &lt;strong&gt;about:config&lt;/strong&gt; settings in the
browser (specifically &lt;strong&gt;mousewheel.default.action&lt;/strong&gt; and similar) which did not
solve my problem. My next attempt involved file &lt;strong&gt;~/.fluxbox/keys&lt;/strong&gt; to assign
commands to mouse button actions to reduce the effect they have in the window,
which failed to suppress the undesirable actions. I investigated using
xbindkeys to control what is sent to the X server when it receives certain
inputs. I even tried complicated guile logic, which actually seems quite
nifty, but it just didn't accomplish what I wanted in this case. I found an
interesting example (&lt;a href="https://www.linuxquestions.org/questions/linux-desktop-74/%5Bxbindkeys%5D-advanced-mouse-binds-4175428297/"&gt;secondary reference
3&lt;/a&gt;) where some
toggling logic was shared, and I spent a lot of time trying to tinker with
that. I finally found what I was looking for on the Arch Wiki (&lt;a href="https://wiki.archlinux.org/index.php/Mouse_buttons#xinput_tweaking"&gt;primary
reference
1&lt;/a&gt;), go
figure. Those Arch folks know how to help a guy no matter the distro! You can
use xinput to change what signals are sent to X from the device by remapping
the buttons. You can suppress a button with 0. The wiki helpfully explains how
to find which device to modify. And then the series of numbers after that are
the button mappings. So the first button, is mapped to the first number, and
so on. If a button is mapped to 0, it is effectively ignored.&lt;/p&gt;
&lt;pre class="code literal-block"&gt;&lt;span&gt;&lt;/span&gt;&lt;code&gt;xinput set-button-map "$( xinput | awk -F'[=]' '/ouse/{print $2}' | awk '{print $1}' | head -n1 )" 1 2 3 4 5 6 7 0 0 &amp;amp;
&lt;/code&gt;&lt;/pre&gt;

&lt;p&gt;In my example, I mask buttons 8 and 9. Using xev and xbindkeys -mk I learned
that my mouse (a generic HP mouse since I've never cared about fancy
peripherals) sends button 4 on scrolling up, and then button 8 and button 9
when stopping the scrolling up action. It was the button 8 (and 9) that were
causing weird issues with the browser. When I mask the input with xinput as
seen here, the scrolling operates completely normally and as expected.&lt;/p&gt;
&lt;h2&gt;The probable causes&lt;/h2&gt;
&lt;p&gt;I have been using this mouse with Xfce on Fedora for years, and the scrolling
has never been a problem. I suspect my choice of installing all the packages
myself on a Devuan netinst contributed to the problem. I had an issue with
&lt;a href="https://dev1galaxy.org/viewtopic.php?id=2701"&gt;fonts on xscreensaver&lt;/a&gt; which
was probably due to my minimal install. Perhaps Fluxbox does not perform some
perfunctory task that desktop environments (DEs) do with sanitizing input. I
don't care, because Fluxbox has been quite satisfactory. And as a side node, I
haven't found a debian-family "minimal" disc that can be used independently of
a network, like the CentOS &lt;a href="https://wiki.centos.org/Download"&gt;minimal&lt;/a&gt; disc
image, only a &lt;a href="https://www.debian.org/CD/netinst/"&gt;netinst&lt;/a&gt;.&lt;/p&gt;
&lt;h2&gt;References&lt;/h2&gt;
&lt;h3&gt;Primary&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="https://wiki.archlinux.org/index.php/Mouse_buttons#xinput_tweaking"&gt;Mouse buttons - ArchWiki&lt;/a&gt; [wiki.archlinux.org]&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Secondary&lt;/h3&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="http://www.nongnu.org/xbindkeys/xbindkeys.html"&gt;XBindKeys&lt;/a&gt; [nongnu.org]&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.nongnu.org/xbindkeys/xbindkeysrc.scm.html"&gt;xbindkeysrc.scm&lt;/a&gt; [nongnu.org]&lt;/li&gt;
&lt;li&gt;&lt;a href="https://www.linuxquestions.org/questions/linux-desktop-74/%5Bxbindkeys%5D-advanced-mouse-binds-4175428297/"&gt;[SOLVED] [xbindkeys] Advanced mouse binds?&lt;/a&gt; [linuxquestions.org]&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.fluxbox.org/help/man-fluxbox-keys.php"&gt;fluxbox-keys(5) Manual Page&lt;/a&gt; [fluxbox.org]&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Commands/programs&lt;/h3&gt;
&lt;p&gt;xev - uesful to display info about keys are being pressed xbindkeys -mk - same
xinput - manipulate mouse button mapping&lt;/p&gt;
&lt;h3&gt;Files&lt;/h3&gt;
&lt;p&gt;~/.fluxbox/keys ~/.xbindkeysrc ~/.xbindkeysrc.scm&lt;/p&gt;</description><category>browsers</category><category>devuan</category><category>fluxbox</category><category>mouse</category><category>oneliner</category><category>palemoon</category><category>scrolling</category><category>x11</category><guid>https://bgstack15.ddns.net/blog/posts/2019/03/30/fix-palemoon-browser-mouse-scroll-wheel-goes-through-history-when-using-fluxbox/</guid><pubDate>Sat, 30 Mar 2019 13:04:06 GMT</pubDate></item></channel></rss>