Bug 33161 - [KeyBindings] preference page: conflicts on standard key sequences
Summary: [KeyBindings] preference page: conflicts on standard key sequences
Status: VERIFIED FIXED
Alias: None
Product: Platform
Classification: Eclipse Project
Component: UI (show other bugs)
Version: 2.1   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: 3.3   Edit
Assignee: Paul Webster CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 32586 32673 36328 (view as bug list)
Depends on: 176235
Blocks:
  Show dependency tree
 
Reported: 2003-02-25 17:28 EST by Jim des Rivieres CLA
Modified: 2007-06-21 04:18 EDT (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jim des Rivieres CLA 2003-02-25 17:28:43 EST
Build RC1

1. Workbench / Keys preference
2. Select "Save" command

(N.B. active configuration is "Standard")

Observe: There are 3 key sequences:
Ctrl+S
Command+S
Ctrl+X Ctrl+S

The first (Ctrl+S) appears in red and is listed as a "<conflict>".
Global scope; Standard configuration. Selecting the first makes
"<undefined> <conflict>" appear below.

Expectation (1): "conflict" suggests badness, but I have no clue what the UI 
is trying to warn me about. It would be helpful if a brief explanation 
appeared when a conflict entry is selected.

Expectation (2): Having a conflict on factory settings feels like there is 
something wrong with the product. Is there?

Expectation (3): Does "<undefined> <conflict>" really make sense?


Many other command have similar conflicts: Build All, Close, Close All (double 
conflict), Content Assist, Context Information, Copy, Cut, Delete Line, Delete 
to End of Line, Find and Replace, Find Next, Find Previous, Go To Line, 
Incremental Find, Incremental Find Reverse, Next, Next Editor, Next 
Perspective, Next View,  Open Resource, Paste, Previous, Previous Editor, 
Previous Perspective, Previous View,  Print, Redo, Save As, Scroll Line Up, 
Scroll Line Down, Select All, Show Ruler Context Menu, Show View Menu, Switch 
To Editor, Undo.
Comment 1 Chris McLaren CLA 2003-03-05 17:21:58 EST
*** Bug 32586 has been marked as a duplicate of this bug. ***
Comment 2 Chris McLaren CLA 2003-03-14 17:45:37 EST
*** Bug 32673 has been marked as a duplicate of this bug. ***
Comment 3 Darin Swanson CLA 2003-04-09 23:48:13 EDT
*** Bug 36328 has been marked as a duplicate of this bug. ***
Comment 4 MS CLA 2003-04-10 09:27:23 EDT
Per Darin's comments, I removed XMEN plugin and the old Antview plugin and I am 
able to use Content Assist without any conflict for version 2.1

Thanks Darin,

MS
Comment 5 Chris McLaren CLA 2003-09-03 14:29:36 EDT
fixed. you should not see conflicts anymore as of m3.
Comment 6 Darin Swanson CLA 2003-09-03 14:34:28 EDT
Can you please explain Chris?
If I don't see them how can I resolve when conflicts occur?
Thanks.
Comment 7 Chris McLaren CLA 2003-09-03 22:58:35 EDT
i'm going to reopen this. right now the keys preference page cancels out key 
bindings that directly conflict. i thought about it tonight and expect to put 
some conflict notification back in, including this time, a more descriptive 
way to handle these. (report the names of the two plugins trying to take the 
same key binding, for instance).

ps. when jim first logged this bug, it was due to a much bigger problem. key 
bindings in parent/child configurations reported conflicting with one another 
when one was simply overriding another. that problem was very temporary.
Comment 8 Markus Keller CLA 2004-06-30 06:29:13 EDT
In 3.0, conflicting keybindings (same keySequence & same contextId) leads to the
following unfortunate behavior:

(a) The shortcut does not work for either command.
There should be a defined sequence for trying all of the conflicting handler
submissions (e.g. depth-first traversal in the plugin-dependencies tree). When a
handler submission has set the "handled" attribute to false, the next handler
should be tried, etc., until a handler has handled the shortcut.

(b) When selecting the conflicting commands, their 'Assignments' list is empty.
It should at least show the key bindings (and better yet: warn of a conflict).

(c) Typing the keybinding in the Keys pref page yields a single disabled entry
with red X icon and command name "Unassigned". No clue that there is a conflict.
Conflicting commands are not mentioned anywhere.
Comment 9 Markus Keller CLA 2004-07-05 05:06:37 EDT
I filed bug 69279 for (a) of comment 8, since that's a command handling issue
and not a problem with the preference page.
Comment 10 Douglas Pollock CLA 2004-10-20 21:25:18 EDT
Taking all of Chris' [KeyBindings] bugs. 
Comment 11 Douglas Pollock CLA 2005-04-12 11:37:03 EDT
The preference page re-work has been pulled for the 3.1 plan to work on performance.
Comment 12 Michael Van Meekeren CLA 2006-04-21 13:14:33 EDT
Moving Dougs bugs
Comment 13 Paul Webster CLA 2006-09-28 15:12:42 EDT
Is this still a problem in 3.3?

PW
Comment 14 Markus Keller CLA 2006-09-29 08:49:25 EDT
Still a problem in I20060926-0935. After adding a plug-in with the contributions below, choosing the keys preference page does not indicate a conflict when I choose File > Close. Only when I select Ctrl+W, the key sequence assignments table shows two bindings for the same sequence -- still with no conflict icon. 

When I select zzClose in the list, the selection immediately jumps to the Close command. I cannot remove the second binding for Ctrl+W.

   <extension point="org.eclipse.ui.bindings">
      <key
            commandId="zzPlugin.zzclose"
            sequence="M1+W"
            schemeId="org.eclipse.ui.defaultAcceleratorConfiguration" />
   </extension>

   <extension
         point="org.eclipse.ui.commands">
      <command
            categoryId="org.eclipse.ui.category.file"
            description="zzClose"
            id="zzPlugin.zzclose"
            name="zzClose"/>
   </extension>
Comment 15 Paul Webster CLA 2006-09-29 09:13:55 EDT
Make sure key conflict information is displayed in the new keys preference page.

PW
Comment 16 Paul Webster CLA 2007-05-16 19:52:32 EDT
Conflicts are addressed in the new page:

1) the conflicting bindings are marked (in 3.3 with a '*')
2) trying to execute that binding will open the key assist dialog and let the user select

PW
Comment 17 Paul Webster CLA 2007-06-20 12:47:48 EDT
new key preference page work.
PW
Comment 18 Markus Keller CLA 2007-06-21 04:18:01 EDT
Verified in I20070615-1200.