Compare commits

...
4 Commits
Author SHA1 Message Date
Felitendo e3278ecf27 chore: 1.5.3
release / Debian package (push) Failing after 15s
release / RPM package (push) Failing after 34s
release / Release and repositories (push) Skipped
release / Install from the RPM repository (push) Skipped
2026-09-24 08:25:50 +02:00
Felitendo 2401855b70 fix: keep the flag in front of a bare double dash
Discord's entry is `discord --url -- %u`. The flag went in before the
field code, which put it after the double dash, and that is where
Chromium stops reading switches and starts treating everything as an
address. The feature never came on.
2026-09-24 08:24:15 +02:00
Felitendo da291cefa5 fix: recognise Discord's bootstrap launcher
Discord no longer ships its application. /usr/bin/discord is a few lines
of shell that run updater_bootstrap, which downloads Electron into the
user's config directory on first start and execs it from there. So there
is no binary next to the launcher to find markers around, and the path it
hands over to is built out of $HOME and the version it just downloaded,
which the script reader cannot resolve. Discord came out as "not
Chromium" and was dropped from the list entirely.

The name of the bootstrap it ships is the one thing left that says
Discord, so that is the hint now.
2026-09-24 08:24:15 +02:00
Felitendo e2e05748f7 docs: explain steam and the browser flag names 2026-09-24 08:22:09 +02:00
5 changed files with 29 additions and 3 deletions

No files matched your search

+6
View File
@@ -2,6 +2,12 @@
What each release brings, newest first. The [GitHub releases](https://github.com/LoonixTools/middleclick-autoscroll/releases) add every commit that went into it. Versions before `v1.1.0` came without notes.
## v1.5.3
_2026-09-24_
A small patch. Discord changed the way it installs itself and slipped out of the list, so autoscroll never reached it. It is back.
## v1.5.2
_2026-09-24_
+1 -1
View File
@@ -8,7 +8,7 @@
# Overridable so a packager can pass the version it is actually building
# (`make VERSION=$pkgver`). The literal below is the fallback for builds
# straight from a checkout, and is what a release tag has to carry.
VERSION ?= 1.5.2
VERSION ?= 1.5.3
PREFIX ?= /usr
DESTDIR ?=
+8
View File
@@ -117,6 +117,14 @@ Chromium, Electron and CEF all have autoscroll built in, but it is off on Linux.
Setting that for every app by hand is a pain and breaks with updates, so this tool does it for you.
New apps are picked up on their own. AppImages are covered too, without unpacking or starting them.
Some browsers want a different name. Brave and Helium ship the feature under their own, so browsers
are handed all of the names at once. A name a browser does not know is ignored.
Steam is its own case. It builds the command line for its interface itself, and repairs every file
that looks changed. So the flag goes into the script that starts the web helper, written to keep the
file at the size and date Steam recorded. Steam finds nothing to repair, and autoscroll works in the
store and the library. After a Steam update the patch is put back on its own.
</details>
<details>
+8 -1
View File
@@ -74,7 +74,14 @@ MCA_SNAP_DIRS=(/snap /var/lib/snapd/snap)
# CHROMIUM_FLAGS and CHROME_WRAPPER earn their place: they are the variables
# the Debian, Fedora and openSUSE Chromium wrappers and Google's own Chrome
# wrapper build their command line out of, and nothing else sets them.
MCA_SCRIPT_HINTS='ELECTRON_|app\.asar|chrome-sandbox|libcef|enable-blink-features|ozone-platform-hint|CHROMIUM_FLAGS|CHROME_WRAPPER|CHROME_VERSION_EXTRA'
#
# updater_bootstrap is Discord's, and it is the only thing left that names it.
# Discord no longer ships its application: /usr/bin/discord is a few lines of
# shell that run that bootstrap, which downloads Electron into the user's
# config directory on first start and execs it from there. So there is nothing
# next to the launcher to find, and the path it hands over to is built out of
# $HOME and the version it just downloaded.
MCA_SCRIPT_HINTS='ELECTRON_|app\.asar|chrome-sandbox|libcef|enable-blink-features|ozone-platform-hint|CHROMIUM_FLAGS|CHROME_WRAPPER|CHROME_VERSION_EXTRA|updater_bootstrap'
# ---------------------------------------------------------------------------
# Desktop entries
+6 -1
View File
@@ -71,6 +71,11 @@ MCA_FEATURE_OPTS='--enable-blink-features|--enable-features'
# Where an argument has to go: after the program and its own arguments, but
# before the first field code (%U and friends) or Flatpak's @@ markers, which
# are placeholders the launcher expands rather than arguments.
#
# A bare "--" stops it too. That is where Chromium stops reading switches and
# starts treating everything as an address, so a flag put after it is read as a
# page to open and the feature never comes on. Discord's entry is exactly that
# shape: `discord --url -- %u`.
_mca_exec_insert_at() {
local rest="$1" tok idx=0
@@ -79,7 +84,7 @@ _mca_exec_insert_at() {
[[ -n $rest ]] || break
tok="${rest%% *}"
case "$tok" in
%[a-zA-Z]|@@|@@u) printf '%s\n' "$idx"; return 0 ;;
%[a-zA-Z]|@@|@@u|--) printf '%s\n' "$idx"; return 0 ;;
esac
rest="${rest:${#tok}}"
idx=$(( idx + ${#tok} ))