After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 622093 - a minor inconvenience with mouse deselection
a minor inconvenience with mouse deselection
Status: RESOLVED OBSOLETE
Product: vte
Classification: Core
Component: general
0.24.x
Other Linux
: Normal minor
: ---
Assigned To: VTE Maintainers
VTE Maintainers
Depends on:
Blocks:
 
 
Reported: 2010-06-19 16:26 UTC by Rafał Mużyło
Modified: 2021-06-10 14:24 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Rafał Mużyło 2010-06-19 16:26:34 UTC
Filed against vte, as it happens both in gnome-terminal and sakura.

Deselection works correctly, if selection is started
roughly on the cell border, however if a selection is started
about in the middle of a cell, then that cell can't be deselected,
that is: if I press and hold left mouse button to select a portion
of a text in the terminal i.e. in the middle of a letter and select
that portion, then as long as I hold the button, that letter
can't be deselected by dragging the mouse, if I pull the selection
in the opposite direction, the letter is still included in the selection.
Comment 1 Behdad Esfahbod 2010-06-23 13:16:21 UTC
That's intended.  If you click in the middle of the letter, you probably want to select it.  That's our best guess anyway.

It wasn't always like that, but it was harder to make it what you want before.  It wasn't clear where you have to click to get the start position you want...
Comment 2 Rafał Mużyło 2010-06-23 13:34:38 UTC
The problem with that is that once you release the button,
the letter goes into middle click paste,
while if you could deselect it by dragging,
that buffer would not be modified.

For those that barely use a terminal, that may not be a problem,
but otherwise it's an inconvenience (even if a minor one).
Comment 3 Rafał Mużyło 2010-06-23 13:42:20 UTC
To make my point clear, I'm not arguing the letter being selected,
but the lack of possibility to deselect it without selection buffer
being modified.
Comment 4 Behdad Esfahbod 2010-07-01 16:38:12 UTC
Makes some sense.  I'll look into it.
Comment 5 Egmont Koblinger 2014-05-15 00:51:46 UTC
Indeed this is a bit annoying. Along with the drag threshold that makes it hard to select a single letter (you start by selecting two, then go back to select only one).

Unfortunately many terminal emulators get it wrong.

In my opinion, the reason for this is that when a click is forwarded to the application running inside the terminal, it's the charcell you click on that matters. And this confuses developers.

Because, when you're highlighing text, it's not the cell that matters. In all the non-terminal applications highlighting is a smooth experience. For the y coordinate, it's text row where you clicked that matters (obviously). For the x coordinate, however, the closest boundary between two adjacent characters is located, that's where the selection begins or ends.

IMO there's no reason terminals should provide a different user experience. And for this purpose, basically the boundaries have to be moved by half a cell horizontally, compared to as if the clicks were sent to the application. (Further special cases to consider for CJK/Tab.)

I'll try to take a look.
Comment 6 Egmont Koblinger 2015-01-16 19:12:59 UTC
(In reply to comment #2)
> The problem with that is that once you release the button,
> the letter goes into middle click paste,
> while if you could deselect it by dragging,
> that buffer would not be modified.

Tried in gedit: while you can deselect by dragging a simple click, you can't do it with double or triple click selections, there's no way to escape from the buffer getting modified.  I think it's okay if we aim for this in vte, too.
Comment 7 GNOME Infrastructure Team 2021-06-10 14:24:46 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/vte/-/issues/1815.