IDEA-174426 Find in Path long line performance

This commit is contained in:
Dmitry Batrak
2017-06-19 15:40:09 +03:00
parent a9f33f8af4
commit 66441bf6d5
2 changed files with 12 additions and 18 deletions
@@ -337,7 +337,7 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
myScrollPane = new MyScrollPane(); // create UI after scheme initialization
myIsViewer = viewer;
myKind = kind;
mySettings = new SettingsImpl(this, project);
mySettings = new SettingsImpl(this, project, kind);
if (!mySettings.isUseSoftWraps() && shouldSoftWrapsBeForced()) {
mySettings.setUseSoftWrapsQuiet();
putUserData(FORCED_SOFT_WRAPS, Boolean.TRUE);
@@ -557,20 +557,6 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
if (SystemInfo.isJavaVersionAtLeast("1.8") && SystemInfo.isMacIntel64 && SystemInfo.isJetBrainsJvm && Registry.is("ide.mac.forceTouch")) {
new MacGestureSupportForEditor(getComponent());
}
backwardCompatibilityWithSoftWrapAppliancePlaces(mySettings, kind);
}
// todo drop it
private static void backwardCompatibilityWithSoftWrapAppliancePlaces(SettingsImpl settings, EditorKind kind) {
if (kind.equals(EditorKind.CONSOLE)) {
settings.setSoftWrapAppliancePlace(SoftWrapAppliancePlaces.CONSOLE);
}
if (kind.equals(EditorKind.MAIN_EDITOR)) {
settings.setSoftWrapAppliancePlace(SoftWrapAppliancePlaces.MAIN_EDITOR);
}
if (kind.equals(EditorKind.PREVIEW)) {
settings.setSoftWrapAppliancePlace(SoftWrapAppliancePlaces.PREVIEW);
}
}
/**
@@ -20,6 +20,7 @@ import com.intellij.codeStyle.CodeStyleFacade;
import com.intellij.lang.Language;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.editor.Document;
import com.intellij.openapi.editor.EditorKind;
import com.intellij.openapi.editor.EditorSettings;
import com.intellij.openapi.editor.ex.DocumentEx;
import com.intellij.openapi.editor.ex.EditorEx;
@@ -91,12 +92,19 @@ public class SettingsImpl implements EditorSettings {
private Boolean myShowIntentionBulb = null;
public SettingsImpl() {
this(null, null);
this(null, null, null);
}
public SettingsImpl(@Nullable EditorEx editor, @Nullable Project project) {
SettingsImpl(@Nullable EditorEx editor, @Nullable Project project, @Nullable EditorKind kind) {
myEditor = editor;
myLanguage = editor != null && project != null ? getDocumentLanguage(project, editor.getDocument()) : null;
if (EditorKind.CONSOLE.equals(kind)) {
mySoftWrapAppliancePlace = SoftWrapAppliancePlaces.CONSOLE;
}
else if (EditorKind.PREVIEW.equals(kind)) {
mySoftWrapAppliancePlace = SoftWrapAppliancePlaces.PREVIEW;
}
}
@Override
@@ -636,7 +644,7 @@ public class SettingsImpl implements EditorSettings {
fireEditorRefresh();
}
public void setUseSoftWrapsQuiet() {
void setUseSoftWrapsQuiet() {
myUseSoftWraps = Boolean.TRUE;
}