GNOME Bugzilla – Bug 760007
GtkTreeview gesture handling breaks mouse support in GtkCellRendererEditable with GtkTextView
Last modified: 2018-04-15 00:18:12 UTC
My app has a subclassed GtkCellRendererEditable, which is using GtkTextView to have multiline text cells. From GTK3.14 and up, mouse stopped working correctly during the editing. It still works fine in all versions GTK prior to 3.14, including GTK2. What I expect: clicking / dragging mouse should position the cursor or select text What I get instead: editing_done handler is called, and editing is cancelled This seems to have been caused by this commit: https://git.gnome.org/browse/gtk+/commit/gtk/gtkimmodule.c?id=89f38b5fc6dd42a4727ced032438e2f6577b68a1 Call stack looks like this after trying to click in the GtkTextView to position the cursor: http://pastebin.com/CYhm5cGZ This problem was reported as a bug to my project's bugtracker, so you might find it useful here: https://github.com/Alexey-Yakovenko/deadbeef/issues/1111 The problem doesn't happen with the standard GtkCellRendererText, so I'm assuming that some kind of workaround was added to it. It is quite clear that this is a regression, which prevents all of the previously compiled builds from working correctly on any GTK3 version since 3.14.
A video demonstrating the problem: https://www.youtube.com/watch?v=TwmWZl-kIR0
Created attachment 318422 [details] minimal repro Unzip, run "make", get "gtk2" and "gtk3" executables. Then try selecting text while inline editing in left versus right column. Left column is GtkCellRendererText, right one is the custom one with GtkTextView. Compare between GTK2 and GTK3 behavior. GTK2 version works as well, as GTK3 < 3.14.
I just confirm a bug.
We're moving to gitlab! As part of this move, we are moving bugs to NEEDINFO if they haven't seen activity in more than a year. If this issue is still important to you and still relevant with GTK+ 3.22 or master, please reopen it and we will migrate it to gitlab.
As announced a while ago, we are migrating to gitlab, and bugs that haven't seen activity in the last year or so will be not be migrated, but closed out in bugzilla. If this bug is still relevant to you, you can open a new issue describing the symptoms and how to reproduce it with gtk 3.22.x or master in gitlab: https://gitlab.gnome.org/GNOME/gtk/issues/new