Dear Debian GTK+ Maintainers,

I'm thinking of moving to Debian Stretch from Jessie. I have already
started trying it out on Virtualbox, however I always get sick of GTK3. It
is just driving me crazy. The more its development advances the more
annoyances affecting usability and productivity are introduced which makes
me end up willing to scream something like "I'm not using a damn iPad /
Android tablet, this is a desktop computer!!!!" every time. Since I'm
really sensitive to feature removals, dumbed-down user interfaces, UI
changes based on pure fashion (e.g. tabletized desktop interfaces), and the
fact that EoL of Jessie LTS is near, I must find a solution. So what should
I do with a piece of open-source software that has gone awry? First thing
that pops into my mind is reverting the hell out of those nasty commits
causing the unwanted behavior. I'm neither a maintainer myself nor a
programmer. Just a sysadmin with 10 years in the field who uses Linux
desktop on a daily basis with my favorite distro Debian that I'm using
almost since the beginning. I highlighted desktop with bold, because it's
not a tablet, not a smartphone, so I don't want it to work like a tablet or
look like a tablet. I also don't care if guys at Gnome and Red Hat don't
have a better idea than aping even dumber UIs of Google Android and
Microsoft (Metro) with their shitty UI designs.

I try to avoid GTK3 as much as possible but there are some vital
applications at which I just can't. For example, Google Chrome as well as
Chromium which I wouldn't want to patch and re-compile ever. They default
to the GTK3 file dialog which is the single worst file chooser ever
developed. I would like to get rid of the following annoyances hardcoded
into GTK3.

I also managed to recompile Xfce 4.12.3 with GTK2 using Debian Stretch
source packages. So far it runs without problems. So I thought I'd do the
same with libgtk-3-0 but it doesn't seem that easy at first.

1. Scrolling Indicator Cursor
Every time I scroll inside GTK3 File Chooser, a cross cursor is shown,
which I don't want to be there. Default cursor used to stay during
scrolling and it should stay. I'm not a lame dumb f*ck who doesn't know
what sort of gesture he's just made on the touchpad. If I want to scroll,
it's intentional from my side. I don't need the mouse cursor to be changed
to know that I'm scrolling. If I scroll, I should see list items (files and
folders) moving within the file dialog. That's enough visual response for
me. I find the scrolling indicator cursor annoying. I find it offensive
that it's hardcoded and I can't turn that off via gsettings or gtk.ini. I
would like to turn that off. It seems to have been introduced in commit
de8af768
<https://gitlab.gnome.org/GNOME/gtk/commit/de8af768974b12e6b290fb813ed45bbb66a24f16>,
however I need some advice on how to revert it properly as there are also
further changes based on it (e.g. by commit 9eb356d9
<https://gitlab.gnome.org/GNOME/gtk/commit/9eb356d9f29a881e05937a0089d88154cfc6364a>
).

2. Overshoot Animation
Another annoyance that is basically aping iOS/Android scroll widgets. Since
I'm still not using a smartphone or a tablet but a desktop computer, I
would like to get rid of this feature completely. Which means I don't even
want to mess around with CSS hacks
<https://unix.stackexchange.com/questions/250880/how-to-disable-or-fix-gtk-scrolling-indicators>
as they're tied to particular themes. Plus I don't even want an event to be
fired by the underlying GUI toolkit when I reach the bottom of the
scrollable area and then try to overscroll. I don't want CPU cycles to be
wasted for firing useless events like that. I just want the good old
behavior. No animation, no indicator of overshooting, no overshoot events.
I find the overshoot animation annoying. I find it offensive that it's
hardcoded and I can't turn that off via gsettings or gtk.ini. It seems to
have been introduced in commit 103e11c9
<https://gitlab.gnome.org/GNOME/gtk/commit/103e11c9372c1fbdb6bd8311b7b7f2ee9981ccf8>,
however I need some advice on how to revert the changes properly as there
are a lot of futher changes based on it.

3. Recursive directory search
Most annoying of all. When I'm in GTK3 File Chooser and start typing, the
file dialog will start off a recursive search traversing through all my
directories, on a type-to-find basis. I can't type-ahead a file in the
current directory any more, which allowed me to quickly jump to a file by
typing its initial letters. The new behavior is pretty annoying, raises
many concerns regarding performance, privacy and general usability. It has
already been discussed in many bug reports and forums. [1]
<https://gitlab.gnome.org/GNOME/gtk/issues/839> [2]
<https://bugzilla.gnome.org/show_bug.cgi?id=748672> [3]
<https://mail.gnome.org/archives/nautilus-list/2012-August/msg00002.html>
[4] <https://bugs.launchpad.net/ubuntu/+source/nautilus/+bug/1164016> [5]
<https://bugzilla.gnome.org/show_bug.cgi?id=772634> [6]
<https://bugzilla.gnome.org/show_bug.cgi?id=784029> A proposed patch / pull
request <https://bugzilla.gnome.org/show_bug.cgi?id=753892#c6> has also
been created but stubborn GNOME developers don't even want to understand
why their forced recursive search is an issue. They don't hesitate to push
their will down every single desktop Linux user's throat, without giving an
option to restore the old behavior. It seems to have been introduced in
commit b3c28e14
<https://gitlab.gnome.org/GNOME/gtk/commit/b3c28e14fe184ee61f1904021ba42af5052bc9da>,
however I need some advice on how to revert the changes properly as there
are a lot of further changes based on it.

I don't really want to start an argument about why maintainers have let all
the menace coming with GTK3 into Stretch, because I'm afraid we would end
up somewhere like those systemd-related discussions in the past, without
finding a constructive solution. I also don't want to adapt to these
annoyances. If that was an option for me, I wouldn't have turned to you
with this e-mail.

If there is no chance of maintainers doing this (which is very likely
because Stretch has already been code-frozen) then I would like to ask for
help on how to revert the changes that introduced the annoyances above,
while maintaining stability. And I mean all of them, without any compromise.

I appreciate any help on finding a sustainable way of patching GTK3 in
Debian Stretch source packages to achieve the goals above. Alternatively
I'm okay with a system-wide setting in every GTK3-dependent application
where I can replace GTK3 File Chooser with GTK2 File Chooser, however I
highly doubt this is possible.

Best Regards,
Pál Tamás Ács

Reply via email to