IDEA-70827 Auto-wrap doesn't wrap on typing letters

This commit is contained in:
peter
2011-08-17 15:32:12 +02:00
parent 39eef106aa
commit cd0938b8bf
3 changed files with 7 additions and 3 deletions
@@ -31,7 +31,7 @@ import com.intellij.openapi.util.Key;
import com.intellij.psi.codeStyle.CodeStyleSettings;
import com.intellij.psi.formatter.WhiteSpaceFormattingStrategyFactory;
import com.intellij.util.containers.WeakHashMap;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.annotations.NotNull;
import java.util.Map;
@@ -85,7 +85,7 @@ public class AutoHardWrapHandler {
* @param dataContext current data context
* @param modificationStampBeforeTyping document modification stamp before the current symbols typing
*/
public void wrapLineIfNecessary(Editor editor, @Nullable DataContext dataContext, long modificationStampBeforeTyping) {
public void wrapLineIfNecessary(Editor editor, @NotNull DataContext dataContext, long modificationStampBeforeTyping) {
Project project = editor.getProject();
Document document = editor.getDocument();
AutoWrapChange change = myAutoWrapChanges.get(document);
@@ -22,6 +22,7 @@ import com.intellij.codeInsight.completion.CompletionType;
import com.intellij.codeInsight.completion.impl.CompletionServiceImpl;
import com.intellij.codeInsight.lookup.LookupManager;
import com.intellij.codeInsight.lookup.impl.LookupImpl;
import com.intellij.ide.DataManager;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Document;
@@ -51,7 +52,9 @@ public class CompletionAutoPopupHandler extends TypedHandlerDelegate {
FileType fileType) {
CompletionPhase phase = CompletionServiceImpl.getCompletionPhase();
if (phase instanceof CompletionPhase.EmptyAutoPopup) {
long modificationStampBeforeTyping = editor.getDocument().getModificationStamp();
((CompletionPhase.EmptyAutoPopup)phase).handleTyping(c);
AutoHardWrapHandler.getInstance().wrapLineIfNecessary(editor, DataManager.getInstance().getDataContext(editor.getContentComponent()), modificationStampBeforeTyping);
return Result.STOP;
}
@@ -25,6 +25,7 @@ import com.intellij.codeInsight.lookup.CharFilter;
import com.intellij.codeInsight.lookup.LookupElement;
import com.intellij.codeInsight.lookup.LookupManager;
import com.intellij.featureStatistics.FeatureUsageTracker;
import com.intellij.ide.DataManager;
import com.intellij.openapi.application.AccessToken;
import com.intellij.openapi.application.WriteAction;
import com.intellij.openapi.command.CommandProcessor;
@@ -80,7 +81,7 @@ public class LookupTypedHandler extends TypedHandlerDelegate {
AutoPopupController.getInstance(editor.getProject()).scheduleAutoPopup(editor, null);
}
AutoHardWrapHandler.getInstance().wrapLineIfNecessary(editor, null, modificationStamp);
AutoHardWrapHandler.getInstance().wrapLineIfNecessary(editor, DataManager.getInstance().getDataContext(editor.getContentComponent()), modificationStamp);
final CompletionProgressIndicator completion = CompletionServiceImpl.getCompletionService().getCurrentCompletion();
if (completion != null) {