Bug 96353 - [Keybindings] out-of-order: Cancel cell editor causes keybinding window to appear on GTK
Summary: [Keybindings] out-of-order: Cancel cell editor causes keybinding window to ap...
Status: ASSIGNED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 3.1   Edit
Hardware: PC Linux-GTK
: P5 major (vote)
Target Milestone: ---   Edit
Assignee: Platform UI Triaged CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-05-23 16:24 EDT by Randy Hudson CLA
Modified: 2019-09-06 16:16 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Randy Hudson CLA 2005-05-23 16:24:10 EDT
Most applications are already using ESC to mean something. For example, cancel a
cell editor. ESC is overloaded on GTK and causes a popup window to open after a
brief delay even when the user has invoked ESC at a normal time.

To see an example of the problem, edit something in the property sheet and press
ESC to cancel the cell editor. The keybinding shortcut window pops up.

This problem was introduced by bug 66336. We should pick another keybinding. I
don't think it is possible to tell whether ESC was handled by client code.
Comment 1 Billy Biggs CLA 2005-05-23 16:29:06 EDT
I think this would occur on any platform where multi-stroke keybindings are
defined that begin with ESC.
Comment 2 Randy Hudson CLA 2005-05-23 16:51:28 EDT
Are there other command definitions with ESC by default?  I know JDT has some, 
but they only are active when the editor has focus.
Comment 3 Douglas Pollock CLA 2005-05-24 15:16:56 EDT
Emacs uses the "ESC" prefix for some of its key bindings.  Please see
"http://www.cs.rutgers.edu/LCSR-Computing/some-docs/emacs-chart.html" for an
idea of what kind of bindings might use an "ESC" prefix.

It is normally possible (though tricky) to tell if someone has done work on an
event.  The paradigm is that you should doit to false when work is done.  In
native widgets, this will prevent the native widget from attempting to handle
the event as well.

However, the SWT event model is a little bit messy in places, and this one of
them.  If I recall correctly, listeners on emulated widgets do not set the
"doit" flag to false when work is done.  I believe there is no way to tell if an
emulated widget has done work.  In your case, you're probably in
ComboCellEditor, which is using a CCombo.

If you click on a Text widget in the Properties view, you will see the expected
behaviour.


I see a few possibilities:
+ Change the binding
+ Change the CCombo to a Combo
+ Provide a preference for turning of the key assist dialog (for those who are
annoyed by this oddity)
+ Simply close this bug as "WONTFIX" -- taking the view that this is a
relatively isolated case, and no good fix exists.
Comment 4 Randy Hudson CLA 2005-05-24 15:21:16 EDT
This is not isolated, unless you were referring to the number of GTK users ;-
).  Our editors use ESC often.

It is OK for emacs bindings to use ESC because this is only active when a text 
editor is active.  The keybindings in question are using the global scope.
Comment 5 Michael Van Meekeren CLA 2006-04-21 13:14:29 EDT
Moving Dougs bugs
Comment 6 Paul Webster CLA 2006-09-28 15:14:53 EDT
Is this still a problem in 3.3?

PW
Comment 7 Denis Roy CLA 2007-06-22 09:32:57 EDT
Changes requested on bug 193523
Comment 8 Eclipse Webmaster CLA 2019-09-06 16:16:55 EDT
This bug hasn't had any activity in quite some time. Maybe the problem got resolved, was a duplicate of something else, or became less pressing for some reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it. The information can be, for example, that the problem still occurs, that you still want the feature, that more information is needed, or that the bug is (for whatever reason) no longer relevant.