* Allow spell checking quick fixes to work
diff --git a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/editor/SourceModuleDocumentProvider.java b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/editor/SourceModuleDocumentProvider.java
index b490529..d2d953e 100644
--- a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/editor/SourceModuleDocumentProvider.java
+++ b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/editor/SourceModuleDocumentProvider.java
@@ -65,6 +65,7 @@
 import org.eclipse.dltk.internal.core.ExternalScriptProject;
 import org.eclipse.dltk.internal.ui.IDLTKStatusConstants;
 import org.eclipse.dltk.internal.ui.text.IProblemRequestorExtension;
+import org.eclipse.dltk.internal.ui.text.spelling.ScriptSpellingProblem;
 import org.eclipse.dltk.internal.ui.text.spelling.SpellingProblems;
 import org.eclipse.dltk.launching.ScriptRuntime;
 import org.eclipse.dltk.ui.DLTKPluginImages;
@@ -569,7 +570,7 @@
 		private int fStateCount = 0;
 
 		private ISourceModule fSourceModule;
-		private List<ProblemAnnotation> fGeneratedAnnotations = new ArrayList<ProblemAnnotation>();
+		private List<Annotation> fGeneratedAnnotations = new ArrayList<Annotation>();
 		private IProgressMonitor fProgressMonitor;
 		private boolean fIsActive = false;
 		private boolean fIsHandlingTemporaryProblems;
@@ -767,12 +768,20 @@
 						if (position != null) {
 
 							try {
+								if (problem instanceof ScriptSpellingProblem) {
+									SpellingAnnotation annotation = new SpellingAnnotation(
+											((ScriptSpellingProblem) problem)
+													.getfSpellingProblem());
+									addAnnotation(annotation, position, false);
+									fGeneratedAnnotations.add(annotation);
+								}
 								ProblemAnnotation annotation = new ProblemAnnotation(
 										problem, fSourceModule);
 								overlayMarkers(position, annotation);
+
 								addAnnotation(annotation, position, false);
 								fGeneratedAnnotations.add(annotation);
-
+								
 								temporaryProblemsChanged = true;
 							} catch (BadLocationException x) {
 								// ignore invalid position
diff --git a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingProblem.java b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingProblem.java
index 06697f2..8198d7c 100644
--- a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingProblem.java
+++ b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingProblem.java
@@ -15,6 +15,7 @@
 import org.eclipse.jface.text.BadLocationException;
 import org.eclipse.jface.text.IDocument;
 import org.eclipse.jface.text.IRegion;
+import org.eclipse.ui.texteditor.spelling.SpellingProblem;
 
 /**
  * Spelling problem to be accepted by problem requesters.
@@ -55,6 +56,8 @@
 	/** The originating file name */
 	private String fOrigin;
 
+	private SpellingProblem fSpellingProblem;
+
 	/**
 	 * Initialize with the given parameters.
 	 * 
@@ -76,10 +79,11 @@
 	 *            the document
 	 * @param origin
 	 *            the originating file name
+	 * @param problem
 	 */
 	public ScriptSpellingProblem(int start, int end, int line, String message,
 			String word, boolean match, boolean sentence, IDocument document,
-			String origin) {
+			String origin, SpellingProblem problem) {
 		super();
 		fSourceStart = start;
 		fSourceEnd = end;
@@ -90,6 +94,11 @@
 		fSentence = sentence;
 		fDocument = document;
 		fOrigin = origin;
+		fSpellingProblem = problem;
+	}
+
+	public SpellingProblem getfSpellingProblem() {
+		return fSpellingProblem;
 	}
 
 	/*
diff --git a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingReconcileStrategy.java b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingReconcileStrategy.java
index bb83bd2..377c827 100644
--- a/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingReconcileStrategy.java
+++ b/core/plugins/org.eclipse.dltk.ui/src/org/eclipse/dltk/internal/ui/text/spelling/ScriptSpellingReconcileStrategy.java
@@ -83,7 +83,7 @@
 								problem.getMessage(), word,
 								false /* dictionaryMatch */,
 								false /* sentenceStart */, document,
-								editorInput.getName());
+								editorInput.getName(), problem);
 						requestor.acceptProblem(iProblem);
 					}
 				} catch (BadLocationException x) {