Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 155280
Collapse All | Expand All

(-)META-INF/MANIFEST.MF (+1 lines)
Lines 6-11 Link Here
6
Bundle-Activator: org.eclipse.mylyn.tasks.ui.TasksUiPlugin
6
Bundle-Activator: org.eclipse.mylyn.tasks.ui.TasksUiPlugin
7
Require-Bundle: org.eclipse.ui,
7
Require-Bundle: org.eclipse.ui,
8
 org.eclipse.core.runtime,
8
 org.eclipse.core.runtime,
9
 org.eclipse.core.expressions,
9
 org.eclipse.ui.forms,
10
 org.eclipse.ui.forms,
10
 org.eclipse.jface.text,
11
 org.eclipse.jface.text,
11
 org.eclipse.mylyn.context.core,
12
 org.eclipse.mylyn.context.core,
(-)src/org/eclipse/mylyn/internal/tasks/ui/editors/RepositoryViewerConfig.java (-40 / +5 lines)
Lines 8-28 Link Here
8
8
9
package org.eclipse.mylyn.internal.tasks.ui.editors;
9
package org.eclipse.mylyn.internal.tasks.ui.editors;
10
10
11
import java.util.ArrayList;
12
import java.util.Arrays;
13
import java.util.List;
14
15
import org.eclipse.core.runtime.NullProgressMonitor;
16
import org.eclipse.jface.text.IDocument;
11
import org.eclipse.jface.text.IDocument;
17
import org.eclipse.jface.text.TextAttribute;
12
import org.eclipse.jface.text.TextAttribute;
18
import org.eclipse.jface.text.hyperlink.DefaultHyperlinkPresenter;
13
import org.eclipse.jface.text.hyperlink.DefaultHyperlinkPresenter;
19
import org.eclipse.jface.text.hyperlink.IHyperlink;
14
import org.eclipse.jface.text.hyperlink.IHyperlink;
20
import org.eclipse.jface.text.hyperlink.IHyperlinkDetector;
21
import org.eclipse.jface.text.hyperlink.IHyperlinkPresenter;
15
import org.eclipse.jface.text.hyperlink.IHyperlinkPresenter;
22
import org.eclipse.jface.text.presentation.IPresentationReconciler;
16
import org.eclipse.jface.text.presentation.IPresentationReconciler;
23
import org.eclipse.jface.text.presentation.PresentationReconciler;
17
import org.eclipse.jface.text.presentation.PresentationReconciler;
24
import org.eclipse.jface.text.reconciler.IReconciler;
18
import org.eclipse.jface.text.reconciler.IReconciler;
25
import org.eclipse.jface.text.reconciler.MonoReconciler;
26
import org.eclipse.jface.text.rules.DefaultDamagerRepairer;
19
import org.eclipse.jface.text.rules.DefaultDamagerRepairer;
27
import org.eclipse.jface.text.rules.IRule;
20
import org.eclipse.jface.text.rules.IRule;
28
import org.eclipse.jface.text.rules.IToken;
21
import org.eclipse.jface.text.rules.IToken;
Lines 30-40 Link Here
30
import org.eclipse.jface.text.rules.RuleBasedScanner;
23
import org.eclipse.jface.text.rules.RuleBasedScanner;
31
import org.eclipse.jface.text.rules.SingleLineRule;
24
import org.eclipse.jface.text.rules.SingleLineRule;
32
import org.eclipse.jface.text.rules.Token;
25
import org.eclipse.jface.text.rules.Token;
33
import org.eclipse.jface.text.source.DefaultAnnotationHover;
34
import org.eclipse.jface.text.source.IAnnotationHover;
35
import org.eclipse.jface.text.source.IAnnotationModel;
36
import org.eclipse.jface.text.source.ISourceViewer;
26
import org.eclipse.jface.text.source.ISourceViewer;
37
import org.eclipse.jface.text.source.SourceViewerConfiguration;
38
import org.eclipse.mylyn.internal.tasks.ui.TaskListColorsAndFonts;
27
import org.eclipse.mylyn.internal.tasks.ui.TaskListColorsAndFonts;
39
import org.eclipse.mylyn.tasks.core.AbstractTask;
28
import org.eclipse.mylyn.tasks.core.AbstractTask;
40
import org.eclipse.mylyn.tasks.core.TaskList;
29
import org.eclipse.mylyn.tasks.core.TaskList;
Lines 43-78 Link Here
43
import org.eclipse.swt.SWT;
32
import org.eclipse.swt.SWT;
44
import org.eclipse.swt.graphics.RGB;
33
import org.eclipse.swt.graphics.RGB;
45
import org.eclipse.swt.widgets.Control;
34
import org.eclipse.swt.widgets.Control;
35
import org.eclipse.ui.editors.text.EditorsUI;
36
import org.eclipse.ui.editors.text.TextSourceViewerConfiguration;
46
37
47
/**
38
/**
48
 * @author Rob Elves
39
 * @author Rob Elves
49
 */
40
 */
50
public class RepositoryViewerConfig extends SourceViewerConfiguration {
41
public class RepositoryViewerConfig extends TextSourceViewerConfiguration {
51
42
52
	private RepositoryTextScanner scanner = null;
43
	private RepositoryTextScanner scanner = null;
53
44
54
	private TaskSpellingReconcileStrategy strategy = new TaskSpellingReconcileStrategy();
55
56
	private boolean spellcheck = false;
45
	private boolean spellcheck = false;
57
46
58
	public RepositoryViewerConfig(boolean spellchecking) {
47
	public RepositoryViewerConfig(boolean spellchecking) {
48
		super(EditorsUI.getPreferenceStore());
59
		this.spellcheck = spellchecking;
49
		this.spellcheck = spellchecking;
60
	}
50
	}
61
51
62
	public void setAnnotationModel(IAnnotationModel model, IDocument doc) {
63
		strategy.setAnnotationModel(model);
64
		strategy.setDocument(doc);
65
	}
66
67
	@Override
68
	public IAnnotationHover getAnnotationHover(ISourceViewer sourceViewer) {
69
		if (spellcheck) {
70
			return new DefaultAnnotationHover();
71
		} else {
72
			return null;
73
		}
74
	}
75
76
	@Override
52
	@Override
77
	public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {
53
	public IPresentationReconciler getPresentationReconciler(ISourceViewer sourceViewer) {
78
		PresentationReconciler reconciler = new PresentationReconciler();
54
		PresentationReconciler reconciler = new PresentationReconciler();
Lines 93-105 Link Here
93
	}
69
	}
94
70
95
	@Override
71
	@Override
96
	public IHyperlinkDetector[] getHyperlinkDetectors(ISourceViewer sourceViewer) {
97
		List<IHyperlinkDetector> detectors = new ArrayList<IHyperlinkDetector>();
98
		detectors.addAll(Arrays.asList(TasksUiPlugin.getDefault().getTaskHyperlinkDetectors()));
99
		return detectors.toArray(new IHyperlinkDetector[detectors.size()]);
100
	}
101
102
	@Override
103
	public IHyperlinkPresenter getHyperlinkPresenter(final ISourceViewer sourceViewer) {
72
	public IHyperlinkPresenter getHyperlinkPresenter(final ISourceViewer sourceViewer) {
104
		return new DefaultHyperlinkPresenter(new RGB(0, 0, 200)) {
73
		return new DefaultHyperlinkPresenter(new RGB(0, 0, 200)) {
105
			@Override
74
			@Override
Lines 153-163 Link Here
153
	@Override
122
	@Override
154
	public IReconciler getReconciler(ISourceViewer sourceViewer) {
123
	public IReconciler getReconciler(ISourceViewer sourceViewer) {
155
		if (spellcheck) {
124
		if (spellcheck) {
156
			MonoReconciler reconciler = new MonoReconciler(strategy, false);
125
			return super.getReconciler(sourceViewer);
157
			reconciler.setIsIncrementalReconciler(false);
158
			reconciler.setProgressMonitor(new NullProgressMonitor());
159
			reconciler.setDelay(500);
160
			return reconciler;
161
		} else {
126
		} else {
162
			return null;
127
			return null;
163
		}
128
		}
(-)src/org/eclipse/mylyn/tasks/ui/editors/TaskFormPage.java (-64 / +72 lines)
Lines 12-18 Link Here
12
import java.util.Iterator;
12
import java.util.Iterator;
13
import java.util.List;
13
import java.util.List;
14
14
15
import org.eclipse.core.commands.IHandler;
15
import org.eclipse.core.resources.IMarker;
16
import org.eclipse.core.resources.IMarker;
17
import org.eclipse.jface.action.Action;
18
import org.eclipse.jface.commands.ActionHandler;
16
import org.eclipse.jface.text.DefaultInformationControl;
19
import org.eclipse.jface.text.DefaultInformationControl;
17
import org.eclipse.jface.text.Document;
20
import org.eclipse.jface.text.Document;
18
import org.eclipse.jface.text.IInformationControl;
21
import org.eclipse.jface.text.IInformationControl;
Lines 27-42 Link Here
27
import org.eclipse.jface.text.TextViewer;
30
import org.eclipse.jface.text.TextViewer;
28
import org.eclipse.jface.text.source.Annotation;
31
import org.eclipse.jface.text.source.Annotation;
29
import org.eclipse.jface.text.source.AnnotationModel;
32
import org.eclipse.jface.text.source.AnnotationModel;
30
import org.eclipse.jface.text.source.AnnotationPainter;
31
import org.eclipse.jface.text.source.AnnotationRulerColumn;
32
import org.eclipse.jface.text.source.CompositeRuler;
33
import org.eclipse.jface.text.source.IAnnotationAccess;
33
import org.eclipse.jface.text.source.IAnnotationAccess;
34
import org.eclipse.jface.text.source.IAnnotationAccessExtension;
34
import org.eclipse.jface.text.source.IAnnotationAccessExtension;
35
import org.eclipse.jface.text.source.IAnnotationHover;
35
import org.eclipse.jface.text.source.IAnnotationHover;
36
import org.eclipse.jface.text.source.ISharedTextColors;
36
import org.eclipse.jface.text.source.ISharedTextColors;
37
import org.eclipse.jface.text.source.ISourceViewer;
37
import org.eclipse.jface.text.source.ISourceViewer;
38
import org.eclipse.jface.text.source.ImageUtilities;
38
import org.eclipse.jface.text.source.ImageUtilities;
39
import org.eclipse.jface.text.source.OverviewRuler;
39
import org.eclipse.jface.text.source.SourceViewer;
40
import org.eclipse.mylyn.internal.tasks.ui.TaskListColorsAndFonts;
40
import org.eclipse.mylyn.internal.tasks.ui.TaskListColorsAndFonts;
41
import org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTextViewer;
41
import org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryTextViewer;
42
import org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryViewerConfig;
42
import org.eclipse.mylyn.internal.tasks.ui.editors.RepositoryViewerConfig;
Lines 44-49 Link Here
44
import org.eclipse.mylyn.tasks.core.TaskRepository;
44
import org.eclipse.mylyn.tasks.core.TaskRepository;
45
import org.eclipse.swt.SWT;
45
import org.eclipse.swt.SWT;
46
import org.eclipse.swt.custom.StyledText;
46
import org.eclipse.swt.custom.StyledText;
47
import org.eclipse.swt.events.DisposeEvent;
48
import org.eclipse.swt.events.DisposeListener;
47
import org.eclipse.swt.events.FocusEvent;
49
import org.eclipse.swt.events.FocusEvent;
48
import org.eclipse.swt.events.FocusListener;
50
import org.eclipse.swt.events.FocusListener;
49
import org.eclipse.swt.graphics.Color;
51
import org.eclipse.swt.graphics.Color;
Lines 57-66 Link Here
57
import org.eclipse.swt.widgets.Display;
59
import org.eclipse.swt.widgets.Display;
58
import org.eclipse.swt.widgets.Shell;
60
import org.eclipse.swt.widgets.Shell;
59
import org.eclipse.swt.widgets.Text;
61
import org.eclipse.swt.widgets.Text;
62
import org.eclipse.ui.ActiveShellExpression;
63
import org.eclipse.ui.PlatformUI;
60
import org.eclipse.ui.actions.ActionFactory;
64
import org.eclipse.ui.actions.ActionFactory;
65
import org.eclipse.ui.editors.text.EditorsUI;
66
import org.eclipse.ui.editors.text.TextSourceViewerConfiguration;
61
import org.eclipse.ui.forms.IManagedForm;
67
import org.eclipse.ui.forms.IManagedForm;
62
import org.eclipse.ui.forms.editor.FormEditor;
68
import org.eclipse.ui.forms.editor.FormEditor;
63
import org.eclipse.ui.forms.editor.FormPage;
69
import org.eclipse.ui.forms.editor.FormPage;
70
import org.eclipse.ui.handlers.IHandlerActivation;
71
import org.eclipse.ui.handlers.IHandlerService;
72
import org.eclipse.ui.texteditor.AnnotationPreference;
73
import org.eclipse.ui.texteditor.DefaultMarkerAnnotationAccess;
74
import org.eclipse.ui.texteditor.ITextEditorActionDefinitionIds;
75
import org.eclipse.ui.texteditor.MarkerAnnotationPreferences;
76
import org.eclipse.ui.texteditor.SourceViewerDecorationSupport;
64
import org.eclipse.ui.themes.IThemeManager;
77
import org.eclipse.ui.themes.IThemeManager;
65
78
66
/**
79
/**
Lines 69-74 Link Here
69
 * NOTE: likely to change for 3.0.
82
 * NOTE: likely to change for 3.0.
70
 * 
83
 * 
71
 * @author Rob Elves
84
 * @author Rob Elves
85
 * @author Eugene Kuleshov (spelling correction)
86
 * 
72
 * @ref: PDEFormPage.class ref:
87
 * @ref: PDEFormPage.class ref:
73
 * @ref: http://dev.eclipse.org/newslists/news.eclipse.platform.swt/msg19676.html
88
 * @ref: http://dev.eclipse.org/newslists/news.eclipse.platform.swt/msg19676.html
74
 */
89
 */
Lines 80-87 Link Here
80
95
81
	protected List<TextViewer> textViewers = new ArrayList<TextViewer>();
96
	protected List<TextViewer> textViewers = new ArrayList<TextViewer>();
82
97
83
	private static final ISharedTextColors sharedTextColors = new SharedTextColors();
84
85
	private void addTextViewer(TextViewer viewer) {
98
	private void addTextViewer(TextViewer viewer) {
86
		textViewers.add(viewer);
99
		textViewers.add(viewer);
87
	}
100
	}
Lines 304-352 Link Here
304
			actionContributor = ((TaskEditor) getEditor()).getContributor();
317
			actionContributor = ((TaskEditor) getEditor()).getContributor();
305
		}
318
		}
306
319
307
		CompositeRuler fCompositeRuler = null;
320
		AnnotationModel annotationModel = new AnnotationModel();
308
		OverviewRuler fOverviewRuler = null;
321
		final RepositoryTextViewer commentViewer = new RepositoryTextViewer(null, null, repository, composite, style);
309
		IAnnotationAccess fAnnotationAccess = null;
322
		commentViewer.showAnnotations(false);
310
		AnnotationRulerColumn annotationRuler = null;
323
		commentViewer.showAnnotationsOverview(false);
311
312
		AnnotationModel fAnnotationModel = null;
313
314
		if (true) {
315
			fAnnotationModel = new AnnotationModel();
316
			fAnnotationAccess = new AnnotationMarkerAccess();
317
318
			fCompositeRuler = new CompositeRuler();
319
			fOverviewRuler = new OverviewRuler(fAnnotationAccess, 12, sharedTextColors);
320
			annotationRuler = new AnnotationRulerColumn(fAnnotationModel, 16, fAnnotationAccess);
321
			fCompositeRuler.setModel(fAnnotationModel);
322
			fOverviewRuler.setModel(fAnnotationModel);
323
324
			// annotation ruler is decorating our composite ruler
325
			fCompositeRuler.addDecorator(0, annotationRuler);
326
327
			// what types are show on the different rulers
328
			annotationRuler.addAnnotationType(ErrorAnnotation.ERROR_TYPE);
329
			fOverviewRuler.addAnnotationType(ErrorAnnotation.ERROR_TYPE);
330
324
331
			fOverviewRuler.addHeaderAnnotationType(ErrorAnnotation.ERROR_TYPE);
325
		IAnnotationAccess annotationAccess = new DefaultMarkerAnnotationAccess();
332
			fOverviewRuler.setAnnotationTypeLayer(ErrorAnnotation.ERROR_TYPE, 3);
333
326
334
			fOverviewRuler.setAnnotationTypeColor(ErrorAnnotation.ERROR_TYPE,
327
		final SourceViewerDecorationSupport support = new SourceViewerDecorationSupport(commentViewer, null,
335
					TaskListColorsAndFonts.COLOR_SPELLING_ERROR);
328
				annotationAccess, EditorsUI.getSharedTextColors());
336
329
330
		@SuppressWarnings("unchecked")
331
		Iterator e = new MarkerAnnotationPreferences().getAnnotationPreferences().iterator();
332
		while (e.hasNext()) {
333
			support.setAnnotationPreference((AnnotationPreference) e.next());
337
		}
334
		}
338
		final RepositoryTextViewer commentViewer = new RepositoryTextViewer(fCompositeRuler, fOverviewRuler,
339
				repository, composite, style);
340
		commentViewer.showAnnotations(false);
341
		commentViewer.showAnnotationsOverview(false);
342
335
343
		// to paint the annotations
336
		support.install(EditorsUI.getPreferenceStore());
344
		final AnnotationPainter ap = new AnnotationPainter(commentViewer, fAnnotationAccess);
337
345
		ap.addAnnotationType(ErrorAnnotation.ERROR_TYPE);
338
		commentViewer.getTextWidget().addDisposeListener(new DisposeListener() {
346
		ap.setAnnotationTypeColor(ErrorAnnotation.ERROR_TYPE, TaskListColorsAndFonts.COLOR_SPELLING_ERROR);
339
			public void widgetDisposed(DisposeEvent e) {
340
				support.uninstall();
341
			}
342
		});
347
343
348
		// this will draw the squigglies under the text
344
		final IHandlerService handlerService = (IHandlerService) PlatformUI.getWorkbench().getService(
349
		commentViewer.addPainter(ap);
345
				IHandlerService.class);
350
346
351
		IThemeManager themeManager = getSite().getWorkbenchWindow().getWorkbench().getThemeManager();
347
		IThemeManager themeManager = getSite().getWorkbenchWindow().getWorkbench().getThemeManager();
352
348
Lines 356-372 Link Here
356
		commentViewer.addSelectionChangedListener(actionContributor);
352
		commentViewer.addSelectionChangedListener(actionContributor);
357
353
358
		commentViewer.getTextWidget().addFocusListener(new FocusListener() {
354
		commentViewer.getTextWidget().addFocusListener(new FocusListener() {
359
355
			private IHandlerActivation handlerActivation;
356
			
360
			public void focusGained(FocusEvent e) {
357
			public void focusGained(FocusEvent e) {
361
362
				actionContributor.updateSelectableActions(commentViewer.getSelection());
358
				actionContributor.updateSelectableActions(commentViewer.getSelection());
363
359
360
				handlerActivation = handlerService.activateHandler(
361
						ITextEditorActionDefinitionIds.QUICK_ASSIST, createQuickFixActionHandler(commentViewer),
362
						new ActiveShellExpression(commentViewer.getTextWidget().getShell()));
364
			}
363
			}
365
364
366
			public void focusLost(FocusEvent e) {
365
			public void focusLost(FocusEvent e) {
367
				StyledText st = (StyledText) e.widget;
366
				StyledText st = (StyledText) e.widget;
368
				st.setSelectionRange(st.getCaretOffset(), 0);
367
				st.setSelectionRange(st.getCaretOffset(), 0);
369
				actionContributor.forceActionsEnabled();
368
				actionContributor.forceActionsEnabled();
369
				
370
				if(handlerActivation!=null) {
371
					handlerService.deactivateHandler(handlerActivation);
372
				}
370
			}
373
			}
371
		});
374
		});
372
375
Lines 380-422 Link Here
380
		commentViewer.getTextWidget().setMenu(getManagedForm().getForm().getMenu());
383
		commentViewer.getTextWidget().setMenu(getManagedForm().getForm().getMenu());
381
		Document document = new Document(text);
384
		Document document = new Document(text);
382
385
383
		// NOTE: Configuration must be applied before the document is set in
386
		// NOTE: Configuration must be applied before the document is set in order for
384
		// order for
387
		// Hyperlink coloring to work. (Presenter needs document object up front)
385
		// Hyperlink colouring to work. (Presenter needs document object up
388
		TextSourceViewerConfiguration viewerConfig = new RepositoryViewerConfig(spellCheck);
386
		// front)
389
		commentViewer.configure(viewerConfig);
387
		RepositoryViewerConfig repositoryViewerConfig = new RepositoryViewerConfig(spellCheck);
388
		repositoryViewerConfig.setAnnotationModel(fAnnotationModel, document);
389
		commentViewer.configure(repositoryViewerConfig);
390
390
391
		commentViewer.setDocument(document, fAnnotationModel);
391
		commentViewer.setDocument(document, annotationModel);
392
392
393
		// !DND! hover manager that shows text when we hover
393
		// !DND! hover manager that shows text when we hover
394
		// AnnotationBarHoverManager fAnnotationHoverManager = new
394
		// AnnotationBarHoverManager fAnnotationHoverManager = new AnnotationBarHoverManager(fCompositeRuler,
395
		// AnnotationBarHoverManager(fCompositeRuler,
395
		//     commentViewer, new AnnotationHover(fAnnotationModel), new AnnotationConfiguration());
396
		// commentViewer, new AnnotationHover(fAnnotationModel), new
397
		// AnnotationConfiguration());
398
		// fAnnotationHoverManager.install(annotationRuler.getControl());
396
		// fAnnotationHoverManager.install(annotationRuler.getControl());
399
397
400
		// !DND! Sample debugging code
398
		// !DND! Sample debugging code
401
		// document.set("Here's some texst so that we have somewhere to show an
399
		// document.set("Here's some texst so that we have somewhere to show an error");
402
		// error");
403
		//
400
		//
404
		// // // add an annotation
401
		// // // add an annotation
405
		// ErrorAnnotation errorAnnotation = new ErrorAnnotation(1, "");
402
		// ErrorAnnotation errorAnnotation = new ErrorAnnotation(1, "");
406
		// // lets underline the word "texst"
403
		// // lets underline the word "texst"
407
		// fAnnotationModel.addAnnotation(errorAnnotation, new Position(12, 5));
404
		// fAnnotationModel.addAnnotation(errorAnnotation, new Position(12, 5));
408
405
409
		// CoreSpellingProblem iProblem = new CoreSpellingProblem(12, 5, 1,
406
		// CoreSpellingProblem iProblem = new CoreSpellingProblem(12, 5, 1, 
410
		// "problem message", "theword", false, false,
407
		//    "problem message", "theword", false, false, document, "task editor");
411
		// document, "task editor");// editorInput.getName()
408
		// editorInput.getName()
412
		//
409
		//
413
		// fAnnotationModel.addAnnotation(new ProblemAnnotation(iProblem, null),
410
		// fAnnotationModel.addAnnotation(new ProblemAnnotation(iProblem, null), new Position(12, 5));
414
		// new Position(12, 5));
415
411
416
		addTextViewer(commentViewer);
412
		addTextViewer(commentViewer);
417
		return commentViewer;
413
		return commentViewer;
418
	}
414
	}
419
415
416
	private IHandler createQuickFixActionHandler(final SourceViewer viewer) {
417
		Action quickFixAction = new Action() {
418
			public void run() {
419
				if (viewer.canDoOperation(ISourceViewer.QUICK_ASSIST)) {
420
					viewer.doOperation(ISourceViewer.QUICK_ASSIST);
421
				}
422
			}
423
		};
424
		quickFixAction.setActionDefinitionId(ITextEditorActionDefinitionIds.QUICK_ASSIST);
425
		return new ActionHandler(quickFixAction);
426
	}
427
420
	@Override
428
	@Override
421
	public boolean isDirty() {
429
	public boolean isDirty() {
422
		return isDirty;
430
		return isDirty;
(-)plugin.xml (+9 lines)
Lines 886-889 Link Here
886
            class="org.eclipse.mylyn.internal.tasks.core.LocalTaskListFactory"
886
            class="org.eclipse.mylyn.internal.tasks.core.LocalTaskListFactory"
887
            id="org.eclipse.mylyn.tasks.ui.local.factory"/>
887
            id="org.eclipse.mylyn.tasks.ui.local.factory"/>
888
   </extension>
888
   </extension>
889
   
890
   <extension point="org.eclipse.ui.bindings">
891
     <key commandId="org.eclipse.jdt.ui.edit.text.java.correction.assist.proposals"
892
          sequence="M1+1"
893
          schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
894
          contextId="org.eclipse.ui.contexts.dialogAndWindow" />
895
          <!-- contextId="org.eclipse.ui.contexts.dialog"/> -->
896
   </extension>
897
      
889
</plugin>
898
</plugin>

Return to bug 155280