Community
Participate
Working Groups
I20070427-0010 Found these in the log (sorry, no steps): !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.578 !MESSAGE Conflict for 'org.eclipse.compare.copyAllRightToLeft': HandlerActivation(commandId=org.eclipse.compare.copyAllRightToLeft,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.ContentMergeViewer$8@186faea),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.compare.copyAllRightToLeft,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.ContentMergeViewer$8@c33c4f),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408) !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.671 !MESSAGE Conflict for 'org.eclipse.compare.selectNextChange': HandlerActivation(commandId=org.eclipse.compare.selectNextChange,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$31@1cee967),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.compare.selectNextChange,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$31@13da390),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408) !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.671 !MESSAGE Conflict for 'org.eclipse.compare.selectPreviousChange': HandlerActivation(commandId=org.eclipse.compare.selectPreviousChange,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$32@1d48add),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.compare.selectPreviousChange,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$32@e8da0f),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408) !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.687 !MESSAGE Conflict for 'org.eclipse.compare.copyRightToLeft': HandlerActivation(commandId=org.eclipse.compare.copyRightToLeft,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$34@1bd69bf),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.compare.copyRightToLeft,handler=ActionHandler(org.eclipse.compare.contentmergeviewer.TextMergeViewer$34@69b4ef),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408) !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.703 !MESSAGE Conflict for 'org.eclipse.compare.ignoreWhiteSpace': HandlerActivation(commandId=org.eclipse.compare.ignoreWhiteSpace,handler=ActionHandler(org.eclipse.compare.internal.ChangePropertyAction@153c9b),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.compare.ignoreWhiteSpace,handler=ActionHandler(org.eclipse.compare.internal.ChangePropertyAction@3e01e7),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408) !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.703 !MESSAGE Conflict for 'org.eclipse.ui.edit.text.toggleShowWhitespaceCharacters': HandlerActivation(commandId=org.eclipse.ui.edit.text.toggleShowWhitespaceCharacters,handler=ActionHandler(org.eclipse.compare.internal.ShowWhitespaceAction@168c9a3),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.ui.edit.text.toggleShowWhitespaceCharacters,handler=ActionHandler(org.eclipse.compare.internal.ShowWhitespaceAction@8dfc71),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408) !ENTRY org.eclipse.ui.workbench 2 0 2007-04-27 16:45:21.718 !MESSAGE Conflict for 'org.eclipse.ui.editors.lineNumberToggle': HandlerActivation(commandId=org.eclipse.ui.editors.lineNumberToggle,handler=ActionHandler(org.eclipse.compare.internal.TextEditorPropertyAction@8d189f),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408): HandlerActivation(commandId=org.eclipse.ui.editors.lineNumberToggle,handler=ActionHandler(org.eclipse.compare.internal.TextEditorPropertyAction@14ba145),expression=ActiveShellExpression(Shell {Apply Patch}),sourcePriority=17408)
This occurs when the viewer type is switched in the Apply Patch wizard. The CompareViewerSwithcingPane needs to create the new viewer before disposing the old one. This means there is a small window of time (i.e a few milliseconds) for which there are conflicting key bindings. I'll try and give this some thought in RC1 to see if there is some way to avoid generating the log messages. If I can't come up with something, we'll just have to live with the messages.
Bug 179049 has a patch that removes most of the warnings. Unfortunately, we need API to remove the others. Bascially, we need API on ContentMergeViewer that we can call to indicate that a viewer change is about to take place. I worked around this in 3.3 by adapting TextMergeViewer to an internal class in order to deactivate the handlers (This doesn't work for ContentMergeViewer since it doesn't implement IAdaptable). However, I think the best API to add in 3.4 is just a method on ContentMergeViewer that gets called before the viewer switch happens.
*** Bug 196036 has been marked as a duplicate of this bug. ***
*** Bug 212020 has been marked as a duplicate of this bug. ***
Since it involves API changes, it will not be fixed for 3.4. Reassigning to 3.5 for further investigation.
*** Bug 230048 has been marked as a duplicate of this bug. ***
(In reply to comment #2) > order to deactivate the handlers (This doesn't work for ContentMergeViewer > since it doesn't implement IAdaptable). With an AdapterFactory and Platform.getAdapterManager().getAdapter(), it's possible to adapt even non-adaptable objects. If the Adapter Factory is a private nested class within ContentMergeViewer, it should be capable of creating adapters that have access to the internals of the ContentMergeViewer. The factory likely doesn't even need to be an inner class and one adapter instance is likely sufficient, because the methods in the adapter can be fed with the ContentMergeViewer instance. Only requirement is that the private nested adapter class implements some "known" interface from the "outside". Would that open the door for a workaround in 3.4 ?
Perhaps but, given the place we are in the 3.4 release cycle and the effects of this (i.e. there haven't been any reports of lost functionality only a log message the first time it happens), I don't think it is worth the effort. Do you have a compelling reason why this needs to be addressed for 3.4?
No, just the brain teaser of sneaking in the non-API :-) But, if you agree that a solution is technically possible without changing API, it might be worthwile changing the target milestone to something that indicates that a solution is possible in the 3.4 stream or 3.4 maintenance stream.
Again, without a compelling reason to change it, I think the milestone of 3.5 is acceptable (even though Szymon sets those things now and not me). It has nothing to do with whether a fix can be done without an API change (i.e. yes, it may be possible to fix this without an API change but given that there is no compelling reason to do so, the best course of action is to wait until 3.5 and fix the problem the right way). Just my 0.02c.
*** Bug 231794 has been marked as a duplicate of this bug. ***
In I20090106-1323, I get these when I - open a Java editor - start an Extract Method refactoring - click Preview - click Back - click Preview
*** Bug 234613 has been marked as a duplicate of this bug. ***
*** Bug 203461 has been marked as a duplicate of this bug. ***
(In reply to comment #12) > In I20090106-1323, I get these when I > - open a Java editor > - start an Extract Method refactoring > - click Preview > - click Back > - click Preview This particular case has been fixed in bug 259413.
Created attachment 125885 [details] Patch v01 Patch proposal for fixing the issue without an API change. This is an extract from "Patch v02" for bug 201116.
*** Bug 250804 has been marked as a duplicate of this bug. ***
*** Bug 225519 has been marked as a duplicate of this bug. ***
Released to HEAD, but filed bug 266840 for the new API on ContentMergeViewer. Available in builds >N20090302-2000.