Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 312235 - [KeyBindings] Binding for "Synchronize with Repository" is not handled
Summary: [KeyBindings] Binding for "Synchronize with Repository" is not handled
Status: CLOSED DUPLICATE of bug 306173
Alias: None
Product: Platform
Classification: Eclipse Project
Component: Team (show other bugs)
Version: 3.6   Edit
Hardware: Macintosh Mac OS X - Carbon (unsup.)
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Platform Team Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-10 06:46 EDT by Oliver Heering CLA
Modified: 2010-05-14 08:26 EDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Oliver Heering CLA 2010-05-10 06:46:43 EDT
Build Identifier: 20100506-2000

I am always using the latest Eclipse JEE milestones for MacOS X (Cocoa, 64bit) as they usually give me the best performance.

In the past I configured a key binding (SHIFT+CMD+S) for "Synchronize with Repository" which I used very often from the Package Explorer or even from withing a (Java) file editor to quickly sync with our CVS repository. While this was working nicely in Eclipse 3.6 (Helios) M5, it stopped working in M6 and M7. Instead of synchronizing it does nothing or jumps to another line in the project explorer.

As i searched the bug reports i found out how to trace things happening in Eclipse. These are my debug options:

org.eclipse.ui/debug=true
org.eclipse.ui/trace/keyBindings=true
org.eclipse.ui/trace/keyBindings.verbose=true
org.eclipse.ui/trace/sources=true
org.eclipse.ui/trace/handlers=true
org.eclipse.ui/trace/handlers.verbose=true
org.eclipse.ui/trace/handlers.verbose.commandId=org.eclipse.team.cvs.ui.sync

And these are the debug log entries from M5 (correct behavior, leaving some lines out):

HANDLERS >>> Command('org.eclipse.team.cvs.ui.sync') has changed to 'ActionDelegateHandlerProxy(null,org.eclipse.team.internal.ccvs.ui.actions.SyncAction)' as its handler
KEYS >>> Listener.handleEvent(type = KeyDown, stateMask = 0x0, keyCode = 0x20000, time = 45842030, character = 0x0)
KEYS >>> Listener.handleEvent(type = KeyDown, stateMask = 0x20000, keyCode = 0x400000, time = 45842846, character = 0x0)
KEYS >>> Listener.handleEvent(type = KeyDown, stateMask = 0x420000, keyCode = 0x73, time = 45845334, character = 0x73)
KEYS >>> WorkbenchKeyboard.press(potentialKeyStrokes = [COMMAND+SHIFT+S])
KEYS >>> WorkbenchKeyboard.executeCommand(commandId = 'org.eclipse.team.cvs.ui.sync', parameters = {})
SOURCES >>> Active editor id changed to null
[...]
SOURCES >>> Active part changed to org.eclipse.team.internal.ui.synchronize.SynchronizeView@441944ae
SOURCES >>> Active part id changed to org.eclipse.team.sync.views.SynchronizeView
[...]
SOURCES >>> Active shell changed to Shell {Synchronizing CVS}
[... synchronizing takes place ...]
HANDLERS >>> Command('org.eclipse.team.cvs.ui.sync') has changed to no handler

With M6 and M7 the same procedure looks as follows:

KEYS >>> Listener.handleEvent(type = KeyDown, stateMask = 0x0, keyCode = 0x20000, time = 40301526, character = 0x0)
KEYS >>> Listener.handleEvent(type = KeyDown, stateMask = 0x20000, keyCode = 0x400000, time = 40302246, character = 0x0)
KEYS >>> Listener.handleEvent(type = KeyDown, stateMask = 0x420000, keyCode = 0x73, time = 40307798, character = 0x73)
KEYS >>> WorkbenchKeyboard.press(potentialKeyStrokes = [COMMAND+SHIFT+S])
KEYS >>> WorkbenchKeyboard.executeCommand(commandId = 'org.eclipse.team.cvs.ui.sync', parameters = {})
KEYS >>>     not handled

There are no other "HANDLERS"-lines in the log refering to org.eclipse.team.cvs.ui.sync. It just isn't handled and therefore nothing happens.

This wrong behavior might occur with other commands from the "team" plugin (or even other plugins?) as well. Haven't had time to check though...

Reproducible: Always

Steps to Reproduce:
1. Download, unpack and start Eclipse JEE 3.6 M6 or M7 for MacOS X Cocoa
(1a. Use the debug options stated above and redirect output to a log file or anywhere where you can see it. I assume you know how to do this.)
2. Go to preferences, change key binding for "Synchronize with Repository" to COMMAND+SHIFT+S
3. Select the project explorer and press COMMAND+SHIFT+S
4. Look at the log. You will notice the "not handled" line there.
Comment 1 Tomasz Zarna CLA 2010-05-14 06:30:37 EDT
Paul is this something we did or were there a change on the UI side? I don't remember anything in Team that could cause this, but I may be missing something.
Comment 2 Oliver Heering CLA 2010-05-14 06:42:57 EDT
(In reply to comment #1)
> Paul is this something we did or were there a change on the UI side? I don't
> remember anything in Team that could cause this, but I may be missing
> something.

I wasn't sure whether to file the bug to "Team" or "UI". Maybe it is wrong here but it somehow fitted both categories... ;)
Comment 3 Paul Webster CLA 2010-05-14 08:17:34 EDT
(In reply to comment #1)
> Paul is this something we did or were there a change on the UI side? 

Isn't this bug 306173, related to  bug 303784 and the fallout from bug 300526

PW
Comment 4 Tomasz Zarna CLA 2010-05-14 08:26:04 EDT

*** This bug has been marked as a duplicate of bug 306173 ***