mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-01-06 11:50:54 +07:00
node: webpack errors consisting of two lines (WEB-36956)
GitOrigin-RevId: c2388ff7d6e167378a7cb947aa9d82e9baa09839
This commit is contained in:
committed by
intellij-monorepo-bot
parent
67839476fc
commit
08f9fbce1a
@@ -2,15 +2,16 @@
|
||||
package com.intellij.terminal;
|
||||
|
||||
import com.intellij.execution.filters.CompositeFilter;
|
||||
import com.intellij.execution.filters.ConsoleFilterProvider;
|
||||
import com.intellij.execution.filters.Filter;
|
||||
import com.intellij.execution.impl.ConsoleViewUtil;
|
||||
import com.intellij.openapi.Disposable;
|
||||
import com.intellij.openapi.application.ReadAction;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.psi.search.GlobalSearchScope;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.CopyOnWriteArrayList;
|
||||
@@ -21,14 +22,20 @@ class CompositeFilterWrapper {
|
||||
private final Project myProject;
|
||||
private final TerminalExecutionConsole myConsole;
|
||||
private final List<Filter> myFilters = new CopyOnWriteArrayList<>();
|
||||
private volatile CompositeFilter myCompositeFilter;
|
||||
private final AtomicBoolean myConsoleFilterProvidersAdded = new AtomicBoolean(false);
|
||||
|
||||
CompositeFilterWrapper(@NotNull Project project, @Nullable TerminalExecutionConsole console) {
|
||||
CompositeFilterWrapper(@NotNull Project project, @Nullable TerminalExecutionConsole console, @NotNull Disposable disposable) {
|
||||
myProject = project;
|
||||
myConsole = console;
|
||||
ConsoleFilterProvider.FILTER_PROVIDERS.addChangeListener(() -> {
|
||||
myCompositeFilter = null;
|
||||
}, disposable);
|
||||
}
|
||||
|
||||
void addFilter(@NotNull Filter filter) {
|
||||
myFilters.add(filter);
|
||||
myCompositeFilter = null;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@@ -46,10 +53,16 @@ class CompositeFilterWrapper {
|
||||
|
||||
@NotNull
|
||||
CompositeFilter getCompositeFilter() {
|
||||
List<Filter> filters = new ArrayList<>(myFilters);
|
||||
filters.addAll(createCompositeFilters());
|
||||
CompositeFilter filter = new CompositeFilter(myProject, filters);
|
||||
CompositeFilter filter = myCompositeFilter;
|
||||
if (filter != null) {
|
||||
return filter;
|
||||
}
|
||||
if (myConsoleFilterProvidersAdded.compareAndSet(false, true)) {
|
||||
myFilters.addAll(createCompositeFilters());
|
||||
}
|
||||
filter = new CompositeFilter(myProject, myFilters);
|
||||
filter.setForceUseAllFilters(true);
|
||||
myCompositeFilter = filter;
|
||||
return filter;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@ public class JBTerminalWidget extends JediTermWidget implements Disposable, Data
|
||||
@NotNull Disposable parent) {
|
||||
super(columns, lines, settingsProvider);
|
||||
mySettingsProvider = settingsProvider;
|
||||
myCompositeFilterWrapper = new CompositeFilterWrapper(project, console);
|
||||
myCompositeFilterWrapper = new CompositeFilterWrapper(project, console, this);
|
||||
addHyperlinkFilter(line -> runFilters(project, line));
|
||||
setName("terminal");
|
||||
Disposer.register(parent, this);
|
||||
|
||||
Reference in New Issue
Block a user