mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[terminal] migrate ShellTerminalWidget to terminalProjectScope
GitOrigin-RevId: 528b7fbd1da62a5de0aa4f6654c47de25beca564
This commit is contained in:
committed by
intellij-monorepo-bot
parent
3907f9f348
commit
a98cefa456
@@ -21,7 +21,6 @@ import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.plugins.terminal.action.RenameTerminalSessionActionKt;
|
||||
import org.jetbrains.plugins.terminal.action.TerminalSplitAction;
|
||||
import org.jetbrains.plugins.terminal.classic.ClassicTerminalVfsRefreshService;
|
||||
import org.jetbrains.plugins.terminal.classic.ClassicTerminalVfsRefresher;
|
||||
import org.jetbrains.plugins.terminal.fus.TerminalUsageTriggerCollector;
|
||||
import org.jetbrains.plugins.terminal.util.TerminalUtilKt;
|
||||
@@ -37,6 +36,8 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.function.Consumer;
|
||||
import java.util.function.Function;
|
||||
|
||||
import static org.jetbrains.plugins.terminal.util.TerminalCoroutineKt.terminalProjectScope;
|
||||
|
||||
public class ShellTerminalWidget extends JBTerminalWidget {
|
||||
|
||||
private static final Logger LOG = Logger.getInstance(ShellTerminalWidget.class);
|
||||
@@ -64,7 +65,7 @@ public class ShellTerminalWidget extends JBTerminalWidget {
|
||||
super(project, settingsProvider, parent);
|
||||
myShellCommandHandlerHelper = new TerminalShellCommandHandlerHelper(this);
|
||||
|
||||
ClassicTerminalVfsRefresher refresher = project.getService(ClassicTerminalVfsRefreshService.class).create(this);
|
||||
ClassicTerminalVfsRefresher refresher = new ClassicTerminalVfsRefresher(this, terminalProjectScope(project));
|
||||
getTerminalPanel().addPreKeyEventHandler(e -> {
|
||||
if (e.getID() != KeyEvent.KEY_PRESSED) return;
|
||||
handleAnyKeyPressed();
|
||||
|
||||
-6
@@ -3,7 +3,6 @@ package org.jetbrains.plugins.terminal.classic
|
||||
|
||||
import com.intellij.ide.SaveAndSyncHandler
|
||||
import com.intellij.openapi.Disposable
|
||||
import com.intellij.openapi.components.Service
|
||||
import com.intellij.openapi.util.Disposer
|
||||
import com.intellij.openapi.util.registry.Registry
|
||||
import com.intellij.util.concurrency.annotations.RequiresEdt
|
||||
@@ -17,11 +16,6 @@ import java.util.concurrent.atomic.AtomicReference
|
||||
import kotlin.time.Duration
|
||||
import kotlin.time.Duration.Companion.milliseconds
|
||||
|
||||
@Service(Service.Level.PROJECT)
|
||||
internal class ClassicTerminalVfsRefreshService(private val coroutineScope: CoroutineScope) {
|
||||
fun create(widget: ShellTerminalWidget): ClassicTerminalVfsRefresher = ClassicTerminalVfsRefresher(widget, coroutineScope)
|
||||
}
|
||||
|
||||
internal class ClassicTerminalVfsRefresher(private val widget: ShellTerminalWidget, private val coroutineScope: CoroutineScope) {
|
||||
private val currentWatcherRef: AtomicReference<CommandRunWatcher?> = AtomicReference()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user