mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
TypedAction converted to independent service
GitOrigin-RevId: 802980d1bf93317415d69d6338f3d7e0b9fcd2e3
This commit is contained in:
committed by
intellij-monorepo-bot
parent
9ceb6a8a88
commit
d27af7f3f8
+2
-2
@@ -27,7 +27,7 @@ import com.intellij.openapi.command.impl.UndoManagerImpl
|
||||
import com.intellij.openapi.command.undo.UndoManager
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.editor.EditorFactory
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction
|
||||
import com.intellij.openapi.editor.event.DocumentEvent
|
||||
import com.intellij.openapi.editor.event.DocumentListener
|
||||
import com.intellij.openapi.editor.ex.EditorEx
|
||||
@@ -767,7 +767,7 @@ public interface Test {
|
||||
|
||||
Editor another = null
|
||||
Runnable wca = { WriteCommandAction.writeCommandAction(getProject()).run ({
|
||||
EditorActionManager.instance.getTypedAction().handler.execute(another, (char) 'x', DataManager.instance.dataContext)
|
||||
TypedAction.instance.handler.execute(another, (char) 'x', DataManager.instance.dataContext)
|
||||
} as ThrowableRunnable) }
|
||||
|
||||
try {
|
||||
|
||||
+2
-1
@@ -179,7 +179,8 @@ public class DaemonRespondToChangesTest extends DaemonAnalyzerTestCase {
|
||||
}
|
||||
|
||||
private static void typeInAlienEditor(Editor alienEditor, char c) {
|
||||
TypedAction action = EditorActionManager.getInstance().getTypedAction();
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction action = TypedAction.getInstance();
|
||||
DataContext dataContext = ((EditorEx)alienEditor).getDataContext();
|
||||
|
||||
action.actionPerformed(alienEditor, c, dataContext);
|
||||
|
||||
+1
-1
@@ -24,7 +24,7 @@ import com.intellij.testFramework.LightJavaCodeInsightTestCase;
|
||||
public abstract class DefaultActionTestCase extends LightJavaCodeInsightTestCase {
|
||||
protected void performAction(char c) {
|
||||
EditorActionManager actionManager = EditorActionManager.getInstance();
|
||||
TypedAction action = actionManager.getTypedAction();
|
||||
TypedAction action = TypedAction.getInstance();
|
||||
action.actionPerformed(getEditor(), c, DataManager.getInstance().getDataContext());
|
||||
}
|
||||
}
|
||||
+3
-2
@@ -1,7 +1,8 @@
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.java.codeInsight.editorActions
|
||||
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager
|
||||
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction
|
||||
import com.intellij.openapi.editor.ex.EditorEx
|
||||
import com.intellij.testFramework.fixtures.LightJavaCodeInsightFixtureTestCase
|
||||
import groovy.transform.CompileStatic
|
||||
@@ -34,7 +35,7 @@ class JavaQuoteTest extends LightJavaCodeInsightFixtureTestCase {
|
||||
|
||||
private void doTest(String before, String after, char c = '"') {
|
||||
myFixture.configureByText("a.java", "class C {{\n ${before}\n}}")
|
||||
EditorActionManager.instance.typedAction.actionPerformed(editor, c, (editor as EditorEx).dataContext)
|
||||
TypedAction.instance.actionPerformed(editor, c, (editor as EditorEx).dataContext)
|
||||
myFixture.checkResult("class C {{\n ${after}\n}}")
|
||||
}
|
||||
}
|
||||
@@ -12,6 +12,7 @@ import com.intellij.openapi.command.WriteCommandAction;
|
||||
import com.intellij.openapi.command.impl.UndoManagerImpl;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.fileEditor.FileEditor;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.fileEditor.OpenFileDescriptor;
|
||||
@@ -75,7 +76,8 @@ public abstract class UndoTestCase extends JavaCodeInsightTestCase {
|
||||
}
|
||||
|
||||
protected void typeInChar(Editor e, char c) {
|
||||
getActionManager().getTypedAction().actionPerformed(e, c, createDataContextFor(e));
|
||||
getActionManager();
|
||||
TypedAction.getInstance().actionPerformed(e, c, createDataContextFor(e));
|
||||
}
|
||||
|
||||
private static EditorActionManager getActionManager() {
|
||||
|
||||
+3
-1
@@ -30,6 +30,7 @@ import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.EditorModificationUtil;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.editor.ex.DocumentEx;
|
||||
import com.intellij.openapi.fileEditor.FileDocumentManager;
|
||||
import com.intellij.openapi.progress.util.ProgressIndicatorUtils;
|
||||
@@ -658,7 +659,8 @@ public class CodeCompletionHandlerBase {
|
||||
}
|
||||
else {
|
||||
DataContext dataContext = DataManager.getInstance().getDataContext(context.getEditor().getContentComponent());
|
||||
EditorActionManager.getInstance().getTypedAction().getHandler().execute(context.getEditor(), context.getCompletionChar(), dataContext);
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction.getInstance().getHandler().execute(context.getEditor(), context.getCompletionChar(), dataContext);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,12 +20,13 @@ import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.*;
|
||||
import com.intellij.openapi.editor.actionSystem.ActionPlan;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedActionHandler;
|
||||
import com.intellij.openapi.editor.ex.EditorEx;
|
||||
import com.intellij.openapi.editor.highlighter.EditorHighlighter;
|
||||
import com.intellij.openapi.editor.highlighter.HighlighterIterator;
|
||||
import com.intellij.openapi.editor.impl.DefaultRawTypedHandler;
|
||||
import com.intellij.openapi.editor.impl.EditorActionManagerImpl;
|
||||
import com.intellij.openapi.editor.impl.TypedActionImpl;
|
||||
import com.intellij.openapi.fileTypes.FileType;
|
||||
import com.intellij.openapi.fileTypes.FileTypes;
|
||||
import com.intellij.openapi.fileTypes.LanguageFileType;
|
||||
@@ -633,7 +634,7 @@ public class TypedHandler extends TypedActionHandlerBase {
|
||||
);
|
||||
}
|
||||
if (element.getNode() != null && isBrace) {
|
||||
DefaultRawTypedHandler handler = ((EditorActionManagerImpl) EditorActionManager.getInstance()).getDefaultRawTypedHandler();
|
||||
DefaultRawTypedHandler handler = ((TypedActionImpl)TypedAction.getInstance()).getDefaultRawTypedHandler();
|
||||
handler.beginUndoablePostProcessing();
|
||||
|
||||
final int finalLBraceOffset = lBraceOffset;
|
||||
|
||||
+1
-1
@@ -80,7 +80,7 @@ public class IncrementalSearchHandler {
|
||||
if (!ourActionsRegistered) {
|
||||
EditorActionManager actionManager = EditorActionManager.getInstance();
|
||||
|
||||
TypedAction typedAction = actionManager.getTypedAction();
|
||||
TypedAction typedAction = TypedAction.getInstance();
|
||||
typedAction.setupRawHandler(new MyTypedHandler(typedAction.getRawHandler()));
|
||||
|
||||
actionManager.setActionHandler(IdeActions.ACTION_EDITOR_BACKSPACE, new BackSpaceHandler(actionManager.getActionHandler(IdeActions.ACTION_EDITOR_BACKSPACE)));
|
||||
|
||||
@@ -225,7 +225,8 @@ public class ConsoleViewImpl extends JPanel implements ConsoleView, ObservableCo
|
||||
|
||||
private static synchronized void initTypedHandler() {
|
||||
if (ourTypedHandlerInitialized) return;
|
||||
TypedAction typedAction = EditorActionManager.getInstance().getTypedAction();
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction typedAction = TypedAction.getInstance();
|
||||
typedAction.setupHandler(new MyTypedHandler(typedAction.getHandler()));
|
||||
ourTypedHandlerInitialized = true;
|
||||
}
|
||||
|
||||
+1
-4
@@ -55,10 +55,7 @@ public abstract class EditorActionManager {
|
||||
public abstract EditorActionHandler setActionHandler(@NonNls @NotNull String actionId, @NotNull EditorActionHandler handler);
|
||||
|
||||
/**
|
||||
* Returns the service for registering actions activated by typing visible characters
|
||||
* in the editor.
|
||||
*
|
||||
* @return the typed action service instance.
|
||||
* @deprecated Use {@link TypedAction#getInstance()} instead
|
||||
*/
|
||||
@NotNull
|
||||
public abstract TypedAction getTypedAction();
|
||||
|
||||
@@ -4,6 +4,7 @@ package com.intellij.openapi.editor.actionSystem;
|
||||
import com.intellij.openapi.actionSystem.CommonDataKeys;
|
||||
import com.intellij.openapi.actionSystem.DataContext;
|
||||
import com.intellij.openapi.command.CommandProcessor;
|
||||
import com.intellij.openapi.components.ServiceManager;
|
||||
import com.intellij.openapi.editor.*;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.reporting.FreezeLogger;
|
||||
@@ -12,14 +13,16 @@ import org.jetbrains.annotations.Nullable;
|
||||
|
||||
/**
|
||||
* Provides services for registering actions which are activated by typing in the editor.
|
||||
*
|
||||
* @see EditorActionManager#getTypedAction()
|
||||
*/
|
||||
public class TypedAction {
|
||||
public abstract class TypedAction {
|
||||
private TypedActionHandler myRawHandler;
|
||||
private TypedActionHandler myHandler;
|
||||
private boolean myHandlersLoaded;
|
||||
|
||||
public static TypedAction getInstance() {
|
||||
return ServiceManager.getService(TypedAction.class);
|
||||
}
|
||||
|
||||
public TypedAction() {
|
||||
myHandler = new Handler();
|
||||
}
|
||||
|
||||
@@ -275,7 +275,8 @@ public class ActionMacro {
|
||||
@Override
|
||||
public void playBack(DataContext context) {
|
||||
Editor editor = CommonDataKeys.EDITOR.getData(context);
|
||||
final TypedAction typedAction = EditorActionManager.getInstance().getTypedAction();
|
||||
EditorActionManager.getInstance();
|
||||
final TypedAction typedAction = TypedAction.getInstance();
|
||||
for (final char aChar : myText.toCharArray()) {
|
||||
typedAction.actionPerformed(editor, aChar, context);
|
||||
}
|
||||
|
||||
+1
-10
@@ -11,15 +11,11 @@ import com.intellij.injected.editor.DocumentWindow;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
public class EditorActionManagerImpl extends EditorActionManager {
|
||||
private final TypedAction myTypedAction = new TypedAction();
|
||||
private final DefaultRawTypedHandler myDefaultRawTypedHandler;
|
||||
private ReadonlyFragmentModificationHandler myReadonlyFragmentsHandler = new DefaultReadOnlyFragmentModificationHandler();
|
||||
private final ActionManager myActionManager;
|
||||
|
||||
public EditorActionManagerImpl(ActionManager actionManager) {
|
||||
myActionManager = actionManager;
|
||||
myDefaultRawTypedHandler = new DefaultRawTypedHandler(myTypedAction);
|
||||
myTypedAction.setupRawHandler(myDefaultRawTypedHandler);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -33,10 +29,9 @@ public class EditorActionManagerImpl extends EditorActionManager {
|
||||
return action.setupHandler(handler);
|
||||
}
|
||||
|
||||
@Override
|
||||
@NotNull
|
||||
public TypedAction getTypedAction() {
|
||||
return myTypedAction;
|
||||
return TypedAction.getInstance();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -75,9 +70,5 @@ public class EditorActionManagerImpl extends EditorActionManager {
|
||||
EditorBundle.message("guarded.block.modification.attempt.error.title"));
|
||||
}
|
||||
}
|
||||
|
||||
public DefaultRawTypedHandler getDefaultRawTypedHandler() {
|
||||
return myDefaultRawTypedHandler;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1291,7 +1291,8 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
|
||||
|
||||
void processKeyTypedImmediately(char c, Graphics graphics, DataContext dataContext) {
|
||||
EditorActionPlan plan = new EditorActionPlan(this);
|
||||
EditorActionManager.getInstance().getTypedAction().beforeActionPerformed(this, c, dataContext, plan);
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction.getInstance().beforeActionPerformed(this, c, dataContext, plan);
|
||||
if (myImmediatePainter.paint(graphics, plan)) {
|
||||
measureTypingLatency();
|
||||
myLastTypedActionTimestamp = -1;
|
||||
@@ -1299,7 +1300,8 @@ public final class EditorImpl extends UserDataHolderBase implements EditorEx, Hi
|
||||
}
|
||||
|
||||
void processKeyTypedNormally(char c, DataContext dataContext) {
|
||||
EditorActionManager.getInstance().getTypedAction().actionPerformed(this, c, dataContext);
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction.getInstance().actionPerformed(this, c, dataContext);
|
||||
}
|
||||
|
||||
private void fireFocusLost(@NotNull FocusEvent event) {
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
// Copyright 2000-2019 JetBrains s.r.o. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file.
|
||||
package com.intellij.openapi.editor.impl;
|
||||
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
|
||||
public class TypedActionImpl extends TypedAction {
|
||||
private final DefaultRawTypedHandler myDefaultRawTypedHandler;
|
||||
|
||||
public TypedActionImpl() {
|
||||
myDefaultRawTypedHandler = new DefaultRawTypedHandler(this);
|
||||
setupRawHandler(myDefaultRawTypedHandler);
|
||||
}
|
||||
|
||||
public DefaultRawTypedHandler getDefaultRawTypedHandler() {
|
||||
return myDefaultRawTypedHandler;
|
||||
}
|
||||
}
|
||||
@@ -173,6 +173,8 @@
|
||||
<applicationService serviceImplementation="com.intellij.codeInsight.hint.TooltipController"/>
|
||||
<applicationService serviceInterface="com.intellij.openapi.editor.actionSystem.EditorActionManager"
|
||||
serviceImplementation="com.intellij.openapi.editor.impl.EditorActionManagerImpl"/>
|
||||
<applicationService serviceInterface="com.intellij.openapi.editor.actionSystem.TypedAction"
|
||||
serviceImplementation="com.intellij.openapi.editor.impl.TypedActionImpl"/>
|
||||
<applicationService serviceInterface="com.intellij.openapi.editor.actionSystem.LatencyRecorder"
|
||||
serviceImplementation="com.intellij.internal.performance.LatencyRecorderImpl"/>
|
||||
|
||||
|
||||
+4
-2
@@ -115,7 +115,8 @@ public class SelectionQuotingTypedHandlerTest extends BasePlatformTestCase {
|
||||
|
||||
private void doTest(@NotNull final String cs, @NotNull String before, @NotNull String expected) {
|
||||
myFixture.configureByText(FileTypes.PLAIN_TEXT, before);
|
||||
final TypedAction typedAction = EditorActionManager.getInstance().getTypedAction();
|
||||
EditorActionManager.getInstance();
|
||||
final TypedAction typedAction = TypedAction.getInstance();
|
||||
|
||||
performAction(myFixture.getProject(), () -> {
|
||||
for (int i = 0, max = cs.length(); i < max; i++) {
|
||||
@@ -130,7 +131,8 @@ public class SelectionQuotingTypedHandlerTest extends BasePlatformTestCase {
|
||||
myFixture.configureByText(FileTypes.PLAIN_TEXT, "\"aaa\"\nbbb\n\n");
|
||||
myFixture.getEditor().getCaretModel().moveToOffset(0);
|
||||
myFixture.getEditor().getSelectionModel().setSelection(0, 5);
|
||||
final TypedAction typedAction = EditorActionManager.getInstance().getTypedAction();
|
||||
EditorActionManager.getInstance();
|
||||
final TypedAction typedAction = TypedAction.getInstance();
|
||||
performAction(myFixture.getProject(),
|
||||
() -> typedAction.actionPerformed(myFixture.getEditor(), '\'', ((EditorEx)myFixture.getEditor()).getDataContext()));
|
||||
myFixture.getEditor().getSelectionModel().removeSelection();
|
||||
|
||||
+4
-3
@@ -152,14 +152,14 @@ public class ConsoleViewImplTest extends LightPlatformTestCase {
|
||||
console.clear();
|
||||
EditorActionManager actionManager = EditorActionManager.getInstance();
|
||||
DataContext dataContext = DataManager.getInstance().getDataContext(console.getComponent());
|
||||
TypedAction action = actionManager.getTypedAction();
|
||||
TypedAction action = TypedAction.getInstance();
|
||||
action.actionPerformed(console.getEditor(), 'h', dataContext);
|
||||
assertEquals(1, console.getContentSize());
|
||||
}
|
||||
|
||||
public void testTypingAfterMultipleCR() {
|
||||
final EditorActionManager actionManager = EditorActionManager.getInstance();
|
||||
final TypedAction typedAction = actionManager.getTypedAction();
|
||||
final TypedAction typedAction = TypedAction.getInstance();
|
||||
final TestDataProvider dataContext = new TestDataProvider(getProject());
|
||||
|
||||
final ConsoleViewImpl console = myConsole;
|
||||
@@ -352,7 +352,8 @@ public class ConsoleViewImplTest extends LightPlatformTestCase {
|
||||
}
|
||||
|
||||
private static void typeIn(Editor editor, char c) {
|
||||
TypedAction action = EditorActionManager.getInstance().getTypedAction();
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction action = TypedAction.getInstance();
|
||||
DataContext dataContext = ((EditorEx)editor).getDataContext();
|
||||
|
||||
action.actionPerformed(editor, c, dataContext);
|
||||
|
||||
+3
-1
@@ -10,6 +10,7 @@ import com.intellij.openapi.command.WriteCommandAction;
|
||||
import com.intellij.openapi.components.impl.ComponentManagerImpl;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.extensions.Extensions;
|
||||
import com.intellij.openapi.fileEditor.ex.FileEditorManagerEx;
|
||||
import com.intellij.openapi.fileEditor.impl.NonProjectFileWritingAccessExtension;
|
||||
@@ -405,7 +406,8 @@ public class NonProjectFileAccessTest extends HeavyFileEditorManagerTestCase {
|
||||
}
|
||||
|
||||
private void typeInChar(Editor e, char c) {
|
||||
getActionManager().getTypedAction().actionPerformed(e, c, createDataContextFor(e));
|
||||
getActionManager();
|
||||
TypedAction.getInstance().actionPerformed(e, c, createDataContextFor(e));
|
||||
}
|
||||
|
||||
private DataContext createDataContextFor(final Editor editor) {
|
||||
|
||||
@@ -75,7 +75,7 @@ public class EditorTestUtil {
|
||||
executeAction(editor, IdeActions.ACTION_EDITOR_ENTER);
|
||||
}
|
||||
else {
|
||||
TypedAction action = actionManager.getTypedAction();
|
||||
TypedAction action = TypedAction.getInstance();
|
||||
action.actionPerformed(editor, c, DataManager.getInstance().getDataContext(editor.getContentComponent()));
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -475,7 +475,7 @@ public abstract class LightPlatformCodeInsightTestCase extends LightPlatformTest
|
||||
else {
|
||||
EditorActionManager actionManager = EditorActionManager.getInstance();
|
||||
final DataContext dataContext = DataManager.getInstance().getDataContext();
|
||||
TypedAction action = actionManager.getTypedAction();
|
||||
TypedAction action = TypedAction.getInstance();
|
||||
action.actionPerformed(editor, c, dataContext);
|
||||
}
|
||||
}
|
||||
|
||||
+2
-1
@@ -26,6 +26,7 @@ import com.intellij.openapi.editor.CaretModel;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.editor.ex.EditorEx;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
@@ -110,7 +111,7 @@ public class EditorTestFixture {
|
||||
}
|
||||
|
||||
ActionManagerEx.getInstanceEx().fireBeforeEditorTyping(c, getEditorDataContext());
|
||||
actionManager.getTypedAction().actionPerformed(myEditor, c, getEditorDataContext());
|
||||
TypedAction.getInstance().actionPerformed(myEditor, c, getEditorDataContext());
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
+3
-1
@@ -25,6 +25,7 @@ import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.editor.impl.EditorImpl;
|
||||
import com.intellij.openapi.fileEditor.FileEditorManager;
|
||||
import com.intellij.openapi.fileEditor.OpenFileDescriptor;
|
||||
@@ -155,7 +156,8 @@ public class InvokeCompletion extends ActionOnFile {
|
||||
if (LookupEvent.isSpecialCompletionChar(completionChar)) {
|
||||
((LookupImpl)lookup).finishLookup(completionChar, item);
|
||||
} else {
|
||||
EditorActionManager.getInstance().getTypedAction().actionPerformed(editor, completionChar, ((EditorImpl)lookup.getTopLevelEditor()).getDataContext());
|
||||
EditorActionManager.getInstance();
|
||||
TypedAction.getInstance().actionPerformed(editor, completionChar, ((EditorImpl)lookup.getTopLevelEditor()).getDataContext());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+4
-4
@@ -6,8 +6,8 @@ import com.intellij.codeInsight.editorActions.TypedHandlerDelegate
|
||||
import com.intellij.openapi.application.runWriteAction
|
||||
import com.intellij.openapi.editor.Editor
|
||||
import com.intellij.openapi.editor.ScrollType
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager
|
||||
import com.intellij.openapi.editor.impl.EditorActionManagerImpl
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction
|
||||
import com.intellij.openapi.editor.impl.TypedActionImpl
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.psi.PsiElement
|
||||
import com.intellij.psi.PsiFile
|
||||
@@ -40,10 +40,10 @@ class EditorConfigTypedHandlerDelegate : TypedHandlerDelegate() {
|
||||
val newOffset = offset + 1
|
||||
|
||||
val document = editor.document
|
||||
val manager = EditorActionManager.getInstance() as EditorActionManagerImpl
|
||||
val typedAction = TypedAction.getInstance() as TypedActionImpl
|
||||
|
||||
runWriteAction {
|
||||
manager.defaultRawTypedHandler.beginUndoablePostProcessing()
|
||||
typedAction.defaultRawTypedHandler.beginUndoablePostProcessing()
|
||||
document.insertString(lBraceIndex, "{")
|
||||
document.insertString(rBraceIndex, "}")
|
||||
caretModel.moveToOffset(newOffset)
|
||||
|
||||
@@ -5,9 +5,9 @@ import com.intellij.codeInsight.editorActions.TypedHandlerDelegate;
|
||||
import com.intellij.openapi.application.ApplicationManager;
|
||||
import com.intellij.openapi.editor.Document;
|
||||
import com.intellij.openapi.editor.Editor;
|
||||
import com.intellij.openapi.editor.actionSystem.EditorActionManager;
|
||||
import com.intellij.openapi.editor.actionSystem.TypedAction;
|
||||
import com.intellij.openapi.editor.impl.DefaultRawTypedHandler;
|
||||
import com.intellij.openapi.editor.impl.EditorActionManagerImpl;
|
||||
import com.intellij.openapi.editor.impl.TypedActionImpl;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.psi.PsiDocumentManager;
|
||||
import com.intellij.psi.PsiElement;
|
||||
@@ -78,11 +78,7 @@ public class YAMLHyphenTypedHandler extends TypedHandlerDelegate {
|
||||
return;
|
||||
}
|
||||
|
||||
EditorActionManager editorActionManager = EditorActionManager.getInstance();
|
||||
if (!(editorActionManager instanceof EditorActionManagerImpl)) {
|
||||
return;
|
||||
}
|
||||
DefaultRawTypedHandler handler = ((EditorActionManagerImpl)editorActionManager).getDefaultRawTypedHandler();
|
||||
DefaultRawTypedHandler handler = ((TypedActionImpl)TypedAction.getInstance()).getDefaultRawTypedHandler();
|
||||
handler.beginUndoablePostProcessing();
|
||||
|
||||
ApplicationManager.getApplication().runWriteAction(() -> {
|
||||
|
||||
Reference in New Issue
Block a user