Description of problem: GNOME Terminal erroneously reports left mouse button pressed while moving mouse over the window without any mouse buttons pressed. This breaks applications which track all mouse movement (as opposed to those that track movement only when the mouse buttons are pressed), such as Free Pascal's console IDE. Version-Release number of selected component (if applicable): gnome-terminal-3.14.2-2.fc21.x86_64 How reproducible: Always. Steps to Reproduce: 1. Install Free Pascal (yum install fpc) 2. Open GNOME Terminal 3. Make an empty directory and enter it (because the Free Pascal IDE writes configuration files in the directory it is run in) 4. Make sure the mouse cursor is outside the terminal window. 5. Run the ide, by typing "fp". Press enter twice to close the dialog boxes that appear (answering "Yes" and "Copy existing" respectively). 6. Select File->New by pressing Alt-F, N 7. Try typing some text, observe that entering text in the window works. 8. Move the mouse over the terminal window, without clicking any buttons. 9. Observe how the IDE goes crazy and you can no longer type text in the editor window. This is because the IDE behaves as if the left mouse button is hold down. Expected results: Run the IDE in xterm or konsole. Using the mouse works normally and doesn't break the IDE. Additional info: I spent some time debugging the issue and discovered this is a bug in GNOME Terminal and not the Free Pascal IDE. The reason Free Pascal is affected and other programs (such as Midnight Commander) are not is because FPC uses the "all event mouse tracking mode", which is activated by: ESC [?1003h While Midnight Commander uses "button event tracking", which is activated by: ESC [?1002h The difference between the two is that 1002 only sends mouse movement events while some of the buttons are down, while 1003 sends mouse movement events even when no mouse button is pressed. The actual bug only occurs in 1003 mode. In that mode, when the mouse is moved without any buttons pressed, xterm and konsole send mouse movement messages with a button status code 3, while GNOME Terminal sends button status code 0, which is the same as the one used, when the left mouse button was hold down, during the mouse move event.
Thanks, forwarded upstream: https://bugzilla.gnome.org/show_bug.cgi?id=745074
Nikolay, could you please test the patch from the upstream bugreport? It works for me, but you being the heavy FreePascal user you might have a better overview. Get vte-0.38.2 source code, apply the patch, compile with ./configure; make and test with ./src/testvte. This is for testing only, it doesn't install the fix. (You could also recompile and install Fedora's vte291 package with the patch for yourself, in that case gnome-terminal will also pick up the changes after you quit all terminal instances.)
I compiled the sources with the patch and I can confirm that it works. However, I noticed another bug (which was there before the patch as well) - gnome terminal doesn't send a mouse release event for the middle mouse button (button code 1), while xterm does (and so does konsole).
middle click release -> https://bugzilla.gnome.org/show_bug.cgi?id=745131
Applied the middle click patch as well. Everything works as expected now! :)
This message is a reminder that Fedora 21 is nearing its end of life. Approximately 4 (four) weeks from now Fedora will stop maintaining and issuing updates for Fedora 21. It is Fedora's policy to close all bug reports from releases that are no longer maintained. At that time this bug will be closed as EOL if it remains open with a Fedora 'version' of '21'. Package Maintainer: If you wish for this bug to remain open because you plan to fix it in a currently maintained version, simply change the 'version' to a later Fedora version. Thank you for reporting this issue and we are sorry that we were not able to fix it before Fedora 21 is end of life. If you would still like to see this bug fixed and are able to reproduce it against a later version of Fedora, you are encouraged change the 'version' to a later Fedora version prior this bug is closed as described in the policy above. Although we aim to fix as many bugs as possible during every release's lifetime, sometimes those efforts are overtaken by events. Often a more recent Fedora release includes newer upstream software that fixes bugs or makes them obsolete.
Fedora 21 changed to end-of-life (EOL) status on 2015-12-01. Fedora 21 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug. If you can reproduce this bug against a currently maintained version of Fedora please feel free to reopen this bug against that version. If you are unable to reopen this bug, please file a new report against the current release. If you experience problems, please add a comment to this bug. Thank you for reporting this bug and we are sorry it could not be fixed.