mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
deprecate ObjectUtils.consumeIfNotNull, fix usages
GitOrigin-RevId: 576b7bbf18a6b1bc772c12dca24b82a4c8a5ad29
This commit is contained in:
committed by
intellij-monorepo-bot
parent
80562754a0
commit
cbf060942c
@@ -31,7 +31,6 @@ import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.util.ConcurrencyUtil;
|
||||
import com.intellij.util.Consumer;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.concurrency.AppExecutorUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.ui.UIUtil;
|
||||
@@ -385,10 +384,13 @@ public class DebugProcessEvents extends DebugProcessImpl {
|
||||
@Override
|
||||
public void extensionAdded(@NotNull PositionManagerFactory extension, @NotNull PluginDescriptor pluginDescriptor) {
|
||||
getManagerThread().invoke(PrioritizedTask.Priority.NORMAL, () ->
|
||||
ObjectUtils.consumeIfNotNull(extension.createPositionManager(DebugProcessEvents.this), m -> {
|
||||
mapping.put(extension, m);
|
||||
appendPositionManager(m);
|
||||
}));
|
||||
{
|
||||
PositionManager manager = extension.createPositionManager(DebugProcessEvents.this);
|
||||
if (manager != null) {
|
||||
mapping.put(extension, manager);
|
||||
appendPositionManager(manager);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -194,7 +194,9 @@ public abstract class DebugProcessImpl extends UserDataHolderBase implements Deb
|
||||
}
|
||||
|
||||
public void setWatchMethodReturnValuesEnabled(boolean enabled) {
|
||||
ObjectUtils.consumeIfNotNull(myReturnValueWatcher, v -> v.setEnabled(enabled));
|
||||
if (myReturnValueWatcher != null) {
|
||||
myReturnValueWatcher.setEnabled(enabled);
|
||||
}
|
||||
}
|
||||
|
||||
public boolean canGetMethodReturnValue() {
|
||||
@@ -2308,7 +2310,9 @@ public abstract class DebugProcessImpl extends UserDataHolderBase implements Deb
|
||||
@Override
|
||||
public void contextAction(@NotNull SuspendContextImpl suspendContext) {
|
||||
breakpointManager.applyThreadFilter(DebugProcessImpl.this, null); // clear the filter on resume
|
||||
ObjectUtils.consumeIfNotNull(myReturnValueWatcher, MethodReturnValueWatcher::clear);
|
||||
if (myReturnValueWatcher != null) {
|
||||
myReturnValueWatcher.clear();
|
||||
}
|
||||
super.contextAction(suspendContext);
|
||||
}
|
||||
|
||||
@@ -2448,11 +2452,15 @@ public abstract class DebugProcessImpl extends UserDataHolderBase implements Deb
|
||||
}
|
||||
|
||||
public void startWatchingMethodReturn(ThreadReferenceProxyImpl thread) {
|
||||
ObjectUtils.consumeIfNotNull(myReturnValueWatcher, v -> v.enable(thread.getThreadReference()));
|
||||
if (myReturnValueWatcher != null) {
|
||||
myReturnValueWatcher.enable(thread.getThreadReference());
|
||||
}
|
||||
}
|
||||
|
||||
void stopWatchingMethodReturn() {
|
||||
ObjectUtils.consumeIfNotNull(myReturnValueWatcher, MethodReturnValueWatcher::disable);
|
||||
if (myReturnValueWatcher != null) {
|
||||
myReturnValueWatcher.disable();
|
||||
}
|
||||
}
|
||||
|
||||
private record VirtualMachineData(VirtualMachineProxyImpl vm, RemoteConnection connection,
|
||||
|
||||
@@ -3,13 +3,12 @@ package com.intellij.debugger.ui.impl.watch;
|
||||
|
||||
import com.intellij.debugger.ui.tree.NodeDescriptor;
|
||||
import com.intellij.openapi.util.Pair;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import one.util.streamex.StreamEx;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import static com.intellij.util.ObjectUtils.consumeIfNotNull;
|
||||
import static com.intellij.util.containers.ContainerUtil.iterateBackward;
|
||||
import static com.intellij.util.containers.ContainerUtil.map;
|
||||
|
||||
public class DescriptorTree {
|
||||
private final HashMap<NodeDescriptor, List<NodeDescriptor>> myChildrenMap = new HashMap<>();
|
||||
@@ -71,8 +70,10 @@ public class DescriptorTree {
|
||||
Pair<NodeDescriptor, NodeDescriptor> nodeInfo = stack.pop();
|
||||
NodeDescriptor child = nodeInfo.second;
|
||||
walker.visit(nodeInfo.first, child);
|
||||
consumeIfNotNull(myChildrenMap.get(child),
|
||||
children -> iterateBackward(map(children, e -> new Pair<>(child, e))).forEach(stack::push));
|
||||
List<NodeDescriptor> list = myChildrenMap.get(child);
|
||||
if (list != null) {
|
||||
iterateBackward(ContainerUtil.map(list, e -> new Pair<>(child, e))).forEach(stack::push);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -36,7 +36,6 @@ import java.util.Comparator;
|
||||
import java.util.List;
|
||||
import java.util.function.Function;
|
||||
|
||||
import static com.intellij.util.ObjectUtils.consumeIfNotNull;
|
||||
import static com.intellij.util.containers.ContainerUtil.getFirstItem;
|
||||
import static com.intellij.util.containers.ContainerUtil.mapNotNull;
|
||||
|
||||
@@ -120,7 +119,11 @@ public class OverheadView extends BorderLayoutPanel implements Disposable, DataP
|
||||
ReadAction.nonBlocking(
|
||||
() -> getFirstItem(mapNotNull(getSelectedBreakpoints(), XBreakpoint::getNavigatable)))
|
||||
.expireWith(OverheadView.this)
|
||||
.finishOnUiThread(ModalityState.NON_MODAL, navigatable -> consumeIfNotNull(navigatable, n -> n.navigate(true)))
|
||||
.finishOnUiThread(ModalityState.NON_MODAL, navigatable -> {
|
||||
if (navigatable != null) {
|
||||
navigatable.navigate(true);
|
||||
}
|
||||
})
|
||||
.submit(AppExecutorUtil.getAppExecutorService());
|
||||
return true;
|
||||
}
|
||||
|
||||
+6
-5
@@ -16,7 +16,6 @@ import com.intellij.openapi.util.InvalidDataException;
|
||||
import com.intellij.openapi.util.WriteExternalException;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.psi.PsiFile;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.containers.WeakList;
|
||||
import com.intellij.util.messages.MessageBus;
|
||||
import org.jdom.Element;
|
||||
@@ -314,13 +313,15 @@ public class CodeStyleSettingsManager implements PersistentStateComponentWithMod
|
||||
}
|
||||
|
||||
public void fireCodeStyleSettingsChanged(@NotNull VirtualFile file) {
|
||||
ObjectUtils.consumeIfNotNull(getProject(), project ->
|
||||
fireCodeStyleSettingsChanged(new CodeStyleSettingsChangeEvent(project, file)));
|
||||
if (getProject() != null) {
|
||||
fireCodeStyleSettingsChanged(new CodeStyleSettingsChangeEvent(getProject(), file));
|
||||
}
|
||||
}
|
||||
|
||||
public void fireCodeStyleSettingsChanged() {
|
||||
ObjectUtils.consumeIfNotNull(getProject(), project ->
|
||||
fireCodeStyleSettingsChanged(new CodeStyleSettingsChangeEvent(project, null)));
|
||||
if (getProject() != null) {
|
||||
fireCodeStyleSettingsChanged(new CodeStyleSettingsChangeEvent(getProject(), null));
|
||||
}
|
||||
}
|
||||
|
||||
private void fireCodeStyleSettingsChanged(@NotNull CodeStyleSettingsChangeEvent event) {
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
package com.intellij.psi.codeStyle;
|
||||
|
||||
import com.intellij.openapi.util.DifferenceFilter;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import org.jdom.Attribute;
|
||||
import org.jdom.Element;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -20,8 +20,12 @@ class StoredOptionsContainer {
|
||||
void processOptions(@NotNull Element element) {
|
||||
element.getChildren().forEach(
|
||||
child ->
|
||||
ObjectUtils.consumeIfNotNull(
|
||||
child.getAttribute("name"), attribute -> myOptionSet.add(attribute.getValue()))
|
||||
{
|
||||
Attribute childAttribute = child.getAttribute("name");
|
||||
if (childAttribute != null) {
|
||||
myOptionSet.add(childAttribute.getValue());
|
||||
}
|
||||
}
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
+5
-3
@@ -181,9 +181,11 @@ public class CodeFormatterFacade {
|
||||
|
||||
FormatterEx formatter = FormatterEx.getInstanceEx();
|
||||
if (CodeStyleManager.getInstance(project).isSequentialProcessingAllowed()) {
|
||||
ObjectUtils.consumeIfNotNull(
|
||||
FormattingProgressCallbackFactory.getInstance().createProgressCallback(project, file, document),
|
||||
callback -> formatter.setProgressTask(callback));
|
||||
FormattingProgressCallback progressCallback =
|
||||
FormattingProgressCallbackFactory.getInstance().createProgressCallback(project, file, document);
|
||||
if (progressCallback != null) {
|
||||
formatter.setProgressTask(progressCallback);
|
||||
}
|
||||
}
|
||||
|
||||
CommonCodeStyleSettings.IndentOptions indentOptions =
|
||||
|
||||
+6
-2
@@ -194,8 +194,12 @@ public final class CoreCodeStyleUtil {
|
||||
|
||||
private void disposePointers() {
|
||||
SmartPointerManager pointerManager = SmartPointerManager.getInstance(myFile.getProject());
|
||||
ObjectUtils.consumeIfNotNull(startPointer, pointer -> pointerManager.removePointer(pointer));
|
||||
ObjectUtils.consumeIfNotNull(endPointer, pointer -> pointerManager.removePointer(pointer));
|
||||
if (startPointer != null) {
|
||||
pointerManager.removePointer(startPointer);
|
||||
}
|
||||
if (endPointer != null) {
|
||||
pointerManager.removePointer(endPointer);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+14
-11
@@ -54,7 +54,7 @@ import com.intellij.ui.tabs.TabsListener;
|
||||
import com.intellij.ui.tabs.impl.JBTabsImpl;
|
||||
import com.intellij.util.Alarm;
|
||||
import com.intellij.util.ArrayUtil;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.Consumer;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.ui.GraphicsUtil;
|
||||
import com.intellij.util.ui.JBInsets;
|
||||
@@ -345,22 +345,25 @@ public final class RunnerContentUi implements ContentUI, Disposable, CellTransfo
|
||||
|
||||
@Override
|
||||
public void mousePressed(MouseEvent e) {
|
||||
ObjectUtils.consumeIfNotNull(InternalDecoratorImpl.Companion.findTopLevelDecorator(myComponent),
|
||||
decorator -> decorator.activate(ToolWindowEventSource.ToolWindowHeader));
|
||||
InternalDecoratorImpl topLevelDecorator = InternalDecoratorImpl.Companion.findTopLevelDecorator(myComponent);
|
||||
if (topLevelDecorator != null) {
|
||||
topLevelDecorator.activate(ToolWindowEventSource.ToolWindowHeader);
|
||||
}
|
||||
myPressPoint = e.getPoint();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void mouseClicked(MouseEvent e) {
|
||||
if (SwingUtilities.isLeftMouseButton(e) && e.getClickCount() == 2) {
|
||||
ObjectUtils.consumeIfNotNull(InternalDecoratorImpl.Companion.findTopLevelDecorator(myComponent),
|
||||
decorator -> {
|
||||
if (decorator.isHeaderVisible()) return;
|
||||
String id = decorator.getToolWindowId();
|
||||
ToolWindowManagerEx manager = ToolWindowManagerEx.getInstanceEx(myProject);
|
||||
ToolWindow window = manager.getToolWindow(id);
|
||||
ObjectUtils.consumeIfNotNull(window, w -> manager.setMaximized(w, !manager.isMaximized(w)));
|
||||
});
|
||||
InternalDecoratorImpl topLevelDecorator = InternalDecoratorImpl.Companion.findTopLevelDecorator(myComponent);
|
||||
if (topLevelDecorator != null && !topLevelDecorator.isHeaderVisible()) {
|
||||
String id = topLevelDecorator.getToolWindowId();
|
||||
ToolWindowManagerEx manager = ToolWindowManagerEx.getInstanceEx(myProject);
|
||||
ToolWindow window = manager.getToolWindow(id);
|
||||
if (window != null) {
|
||||
manager.setMaximized(window, !manager.isMaximized(window));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+4
-2
@@ -3,11 +3,11 @@ package com.intellij.openapi.externalSystem.util;
|
||||
|
||||
import com.intellij.build.events.BuildEvent;
|
||||
import com.intellij.build.events.EventResult;
|
||||
import com.intellij.build.events.impl.*;
|
||||
import com.intellij.build.events.impl.FailureImpl;
|
||||
import com.intellij.build.events.impl.FailureResultImpl;
|
||||
import com.intellij.build.events.impl.SkippedResultImpl;
|
||||
import com.intellij.build.events.impl.SuccessResultImpl;
|
||||
import com.intellij.build.events.impl.*;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.externalSystem.model.task.event.*;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
@@ -24,7 +24,9 @@ public class ExternalSystemProgressEventConverter {
|
||||
public static @Nullable BuildEvent convertBuildEvent(@NotNull ExternalSystemTaskExecutionEvent event) {
|
||||
var hint = event.getProgressEvent().getDescriptor().getHint();
|
||||
var buildEvent = convertAbstractBuildEvent(event);
|
||||
ObjectUtils.consumeIfNotNull(buildEvent, it -> it.setHint(hint));
|
||||
if (buildEvent != null) {
|
||||
buildEvent.setHint(hint);
|
||||
}
|
||||
return buildEvent;
|
||||
}
|
||||
|
||||
|
||||
+3
-2
@@ -18,7 +18,6 @@ import com.intellij.ui.AnActionButton;
|
||||
import com.intellij.ui.AnActionButtonRunnable;
|
||||
import com.intellij.ui.ToolbarDecorator;
|
||||
import com.intellij.ui.components.JBList;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
@@ -60,7 +59,9 @@ public class ExcludedFilesList extends JBList<FileSetDescriptor> {
|
||||
private void onSelectionChange() {
|
||||
int i = getSelectedIndex();
|
||||
AnActionButton removeButton = ToolbarDecorator.findRemoveButton(myFileListDecorator.getActionsPanel());
|
||||
ObjectUtils.consumeIfNotNull(removeButton, button -> button.setEnabled(i >= 0));
|
||||
if (removeButton != null) {
|
||||
removeButton.setEnabled(i >= 0);
|
||||
}
|
||||
}
|
||||
|
||||
public void reset(@NotNull CodeStyleSettings settings) {
|
||||
|
||||
+3
-1
@@ -266,7 +266,9 @@ public class SearchEverywhereHeader {
|
||||
}
|
||||
|
||||
public void resetScope() {
|
||||
ObjectUtils.consumeIfNotNull(mySelectedTab.everywhereAction, action -> action.setEverywhere(true));
|
||||
if (mySelectedTab.everywhereAction != null) {
|
||||
mySelectedTab.everywhereAction.setEverywhere(true);
|
||||
}
|
||||
}
|
||||
|
||||
public boolean isEverywhere() {
|
||||
|
||||
+4
-2
@@ -13,7 +13,6 @@ import com.intellij.openapi.util.NlsSafe;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.openapi.vfs.VirtualFile;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.jetbrains.annotations.Nls;
|
||||
@@ -78,7 +77,10 @@ public final class OSAssociateFileTypesUtil {
|
||||
}
|
||||
}
|
||||
else {
|
||||
ObjectUtils.consumeIfNotNull(getFileTypeByName(name), fileType -> fileTypes.add(fileType));
|
||||
FileType type = getFileTypeByName(name);
|
||||
if (type != null) {
|
||||
fileTypes.add(type);
|
||||
}
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
+4
-5
@@ -6,7 +6,6 @@ import com.intellij.openapi.application.PathManager;
|
||||
import com.intellij.openapi.fileTypes.impl.associate.OSFileAssociationException;
|
||||
import com.intellij.openapi.util.io.FileUtil;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
|
||||
import java.io.File;
|
||||
@@ -26,10 +25,10 @@ public final class LocalDesktopEntryCreator {
|
||||
builder.append("[Desktop Entry]\n")
|
||||
.append("Type=Application\n")
|
||||
.append("Exec=").append(getLauncherPath()).append("\n");
|
||||
ObjectUtils.consumeIfNotNull(
|
||||
getIconPath(),
|
||||
iconPath -> builder.append("Icon=").append(iconPath).append("\n")
|
||||
);
|
||||
String path = getIconPath();
|
||||
if (path != null) {
|
||||
builder.append("Icon=").append(path).append("\n");
|
||||
}
|
||||
builder.append("Name=").append(ApplicationNamesInfo.getInstance().getFullProductName()).append("\n")
|
||||
.append("NoDisplay=true\n");
|
||||
try {
|
||||
|
||||
@@ -7,6 +7,7 @@ import com.intellij.openapi.actionSystem.*;
|
||||
import com.intellij.openapi.diagnostic.Logger;
|
||||
import com.intellij.openapi.options.advanced.AdvancedSettings;
|
||||
import com.intellij.openapi.ui.JBPopupMenu;
|
||||
import com.intellij.openapi.ui.popup.JBPopup;
|
||||
import com.intellij.openapi.ui.popup.util.PopupUtil;
|
||||
import com.intellij.openapi.util.registry.Registry;
|
||||
import com.intellij.openapi.util.text.StringUtil;
|
||||
@@ -19,7 +20,6 @@ import com.intellij.ui.tabs.TabInfo;
|
||||
import com.intellij.ui.tabs.UiDecorator;
|
||||
import com.intellij.ui.tabs.impl.themes.TabTheme;
|
||||
import com.intellij.util.MathUtil;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.ui.*;
|
||||
import com.intellij.util.ui.accessibility.ScreenReader;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
@@ -86,11 +86,10 @@ public class TabLabel extends JPanel implements Accessible, DataProvider {
|
||||
Component c = SwingUtilities.getDeepestComponentAt(e.getComponent(), e.getX(), e.getY());
|
||||
if (c instanceof InplaceButton) return;
|
||||
myTabs.select(info, true);
|
||||
ObjectUtils.consumeIfNotNull(PopupUtil.getPopupContainerFor(TabLabel.this), popup -> {
|
||||
if (ClientProperty.isTrue(popup.getContent(), MorePopupAware.class)) {
|
||||
popup.cancel();
|
||||
}
|
||||
});
|
||||
JBPopup container = PopupUtil.getPopupContainerFor(TabLabel.this);
|
||||
if (container != null && ClientProperty.isTrue(container.getContent(), MorePopupAware.class)) {
|
||||
container.cancel();
|
||||
}
|
||||
}
|
||||
else {
|
||||
handlePopup(e);
|
||||
|
||||
+3
-2
@@ -9,7 +9,6 @@ import com.intellij.openapi.editor.colors.impl.AppEditorFontOptions;
|
||||
import com.intellij.openapi.editor.colors.impl.AppFontOptions;
|
||||
import com.intellij.openapi.options.Configurable;
|
||||
import com.intellij.openapi.options.ConfigurableProvider;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.ui.JBUI;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import org.jetbrains.annotations.Nullable;
|
||||
@@ -123,7 +122,9 @@ public final class AppConsoleFontConfigurable extends AppFontConfigurable {
|
||||
}
|
||||
|
||||
void updateOnEditorFontChange(@NotNull FontPreferences fontPreferences) {
|
||||
ObjectUtils.consumeIfNotNull(myFontOptionsPanel, panel->panel.updateOnEditorFontChange(fontPreferences));
|
||||
if (myFontOptionsPanel != null) {
|
||||
myFontOptionsPanel.updateOnEditorFontChange(fontPreferences);
|
||||
}
|
||||
}
|
||||
|
||||
public static class Provider extends ConfigurableProvider {
|
||||
|
||||
@@ -34,7 +34,7 @@ import com.intellij.openapi.wm.impl.FrameInfo;
|
||||
import com.intellij.openapi.wm.impl.IdeFrameImpl;
|
||||
import com.intellij.openapi.wm.impl.welcomeScreen.WelcomeFrame;
|
||||
import com.intellij.testFramework.LightVirtualFile;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.ui.tabs.TabInfo;
|
||||
import com.intellij.util.concurrency.NonUrgentExecutor;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.messages.MessageBusConnection;
|
||||
@@ -222,14 +222,13 @@ public final class LightEditServiceImpl implements LightEditService,
|
||||
private void logStartupTime() {
|
||||
if (!ApplicationManager.getApplication().isUnitTestMode()) {
|
||||
if (myFrameWrapper != null) {
|
||||
ObjectUtils.consumeIfNotNull(
|
||||
getEditPanel().getTabs().getSelectedInfo(),
|
||||
tabInfo ->
|
||||
UiNotifyConnector
|
||||
.doWhenFirstShown(tabInfo.getComponent(), () -> ApplicationManager.getApplication().invokeLater(() -> {
|
||||
LOG.info("Startup took: " + ManagementFactory.getRuntimeMXBean().getUptime() + " ms");
|
||||
}))
|
||||
);
|
||||
TabInfo info = getEditPanel().getTabs().getSelectedInfo();
|
||||
if (info != null) {
|
||||
UiNotifyConnector
|
||||
.doWhenFirstShown(info.getComponent(), () -> ApplicationManager.getApplication().invokeLater(() -> {
|
||||
LOG.info("Startup took: " + ManagementFactory.getRuntimeMXBean().getUptime() + " ms");
|
||||
}));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,7 +34,6 @@ import com.intellij.ui.tabs.TabInfo;
|
||||
import com.intellij.ui.tabs.TabsListener;
|
||||
import com.intellij.ui.tabs.impl.JBEditorTabs;
|
||||
import com.intellij.util.BitUtil;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.concurrency.AppExecutorUtil;
|
||||
import com.intellij.util.containers.ContainerUtil;
|
||||
import com.intellij.util.messages.MessageBusConnection;
|
||||
@@ -67,7 +66,9 @@ final class LightEditTabs extends JBEditorTabs implements LightEditorListener, C
|
||||
addListener(new TabsListener() {
|
||||
@Override
|
||||
public void selectionChanged(TabInfo oldSelection, TabInfo newSelection) {
|
||||
ObjectUtils.consumeIfNotNull(oldSelection, tabInfo -> tabInfo.setTabColor(null));
|
||||
if (oldSelection != null) {
|
||||
oldSelection.setTabColor(null);
|
||||
}
|
||||
asyncUpdateTab(newSelection);
|
||||
onSelectionChange(newSelection);
|
||||
}
|
||||
@@ -106,7 +107,10 @@ final class LightEditTabs extends JBEditorTabs implements LightEditorListener, C
|
||||
|
||||
@Override
|
||||
public void close() {
|
||||
ObjectUtils.consumeIfNotNull(getSelectedInfo(), tabInfo -> closeTab(tabInfo));
|
||||
TabInfo info = getSelectedInfo();
|
||||
if (info != null) {
|
||||
this.closeTab(info);
|
||||
}
|
||||
}
|
||||
|
||||
private static Icon getFileTypeIcon(@NotNull LightEditorInfo editorInfo) {
|
||||
|
||||
@@ -60,11 +60,11 @@ public final class LightEditorManagerImpl implements LightEditorManager, Disposa
|
||||
}
|
||||
FileEditor fileEditor = pair.second;
|
||||
LightEditorInfo editorInfo = new LightEditorInfoImpl(pair.first, fileEditor, file);
|
||||
ObjectUtils.consumeIfNotNull(EditorHistoryManager.getInstance(project).getState(file, pair.first),
|
||||
state -> {
|
||||
fileEditor.getComponent();
|
||||
fileEditor.setState(state);
|
||||
});
|
||||
FileEditorState state = EditorHistoryManager.getInstance(project).getState(file, pair.first);
|
||||
if (state != null) {
|
||||
fileEditor.getComponent();
|
||||
fileEditor.setState(state);
|
||||
}
|
||||
if (LightEditorInfoImpl.getEditor(editorInfo) instanceof EditorImpl editor) {
|
||||
editor.setDropHandler(new LightEditDropHandler());
|
||||
}
|
||||
|
||||
@@ -216,8 +216,10 @@ public abstract class TabbedContentAction extends AnAction implements DumbAware
|
||||
|
||||
@Override
|
||||
public void update(@NotNull AnActionEvent e) {
|
||||
ObjectUtils.consumeIfNotNull(ActionUtil.getAction(myHorizontal ? "SplitVertically" : "SplitHorizontally"),
|
||||
action -> e.getPresentation().setIcon(action.getTemplatePresentation().getIcon()));
|
||||
AnAction action = ActionUtil.getAction(myHorizontal ? "SplitVertically" : "SplitHorizontally");
|
||||
if (action != null) {
|
||||
e.getPresentation().setIcon(action.getTemplatePresentation().getIcon());
|
||||
}
|
||||
e.getPresentation().setEnabledAndVisible(myManager.getContents().length > 1);
|
||||
}
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@ import com.intellij.openapi.project.DumbAwareAction;
|
||||
import com.intellij.openapi.project.Project;
|
||||
import com.intellij.openapi.project.ProjectManager;
|
||||
import com.intellij.openapi.ui.AbstractPainter;
|
||||
import com.intellij.openapi.ui.popup.JBPopup;
|
||||
import com.intellij.openapi.ui.popup.util.PopupUtil;
|
||||
import com.intellij.openapi.util.ActionCallback;
|
||||
import com.intellij.openapi.util.Disposer;
|
||||
@@ -39,7 +40,6 @@ import com.intellij.ui.tabs.impl.*;
|
||||
import com.intellij.ui.tabs.impl.singleRow.SingleRowLayout;
|
||||
import com.intellij.ui.tabs.impl.singleRow.WindowTabsLayout;
|
||||
import com.intellij.ui.tabs.impl.themes.DefaultTabTheme;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.intellij.util.ui.GraphicsUtil;
|
||||
import com.intellij.util.ui.JBFont;
|
||||
import com.intellij.util.ui.JBUI;
|
||||
@@ -145,11 +145,10 @@ public final class WindowTabsComponent extends JBTabsImpl {
|
||||
Component c = SwingUtilities.getDeepestComponentAt(e.getComponent(), e.getX(), e.getY());
|
||||
if (c instanceof InplaceButton) return;
|
||||
myTabs.select(info, true);
|
||||
ObjectUtils.consumeIfNotNull(PopupUtil.getPopupContainerFor(label), popup -> {
|
||||
if (ClientProperty.isTrue(popup.getContent(), MorePopupAware.class)) {
|
||||
popup.cancel();
|
||||
}
|
||||
});
|
||||
JBPopup container = PopupUtil.getPopupContainerFor(label);
|
||||
if (container != null && ClientProperty.isTrue(container.getContent(), MorePopupAware.class)) {
|
||||
container.cancel();
|
||||
}
|
||||
}
|
||||
else {
|
||||
handlePopup(e);
|
||||
|
||||
@@ -114,7 +114,6 @@ import java.util.stream.Stream;
|
||||
|
||||
import static com.intellij.openapi.util.text.StringUtil.splitByLines;
|
||||
import static com.intellij.testFramework.UsefulTestCase.assertSameLines;
|
||||
import static com.intellij.util.ObjectUtils.consumeIfNotNull;
|
||||
import static com.intellij.util.containers.ContainerUtil.sorted;
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
@@ -1158,11 +1157,15 @@ public final class PlatformTestUtil {
|
||||
while (true) {
|
||||
try {
|
||||
if (System.currentTimeMillis() - start > timeoutInSeconds * 1000L) {
|
||||
consumeIfNotNull(callback, Runnable::run);
|
||||
if (callback != null) {
|
||||
callback.run();
|
||||
}
|
||||
fail(errorMessageSupplier.get());
|
||||
}
|
||||
if (condition.getAsBoolean()) {
|
||||
consumeIfNotNull(callback, Runnable::run);
|
||||
if (callback != null) {
|
||||
callback.run();
|
||||
}
|
||||
break;
|
||||
}
|
||||
dispatchAllEventsInIdeEventQueue();
|
||||
|
||||
@@ -142,7 +142,7 @@ public final class ObjectUtils {
|
||||
}
|
||||
|
||||
/**
|
||||
* Use {@code if (obj != null) ...} instead
|
||||
* @deprecated Use {@code if (obj != null) ...} instead
|
||||
*/
|
||||
@Deprecated
|
||||
public static <T> void consumeIfNotNull(@Nullable T obj, @NotNull Consumer<? super T> consumer) {
|
||||
|
||||
@@ -17,7 +17,6 @@ import com.intellij.terminal.JBTerminalWidget;
|
||||
import com.intellij.terminal.TerminalTitle;
|
||||
import com.intellij.terminal.TerminalTitleListener;
|
||||
import com.intellij.terminal.ui.TerminalWidgetKt;
|
||||
import com.intellij.util.ObjectUtils;
|
||||
import com.jediterm.terminal.ui.TerminalWidgetListener;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
@@ -43,9 +42,10 @@ public final class TerminalSessionEditor extends UserDataHolderBase implements F
|
||||
FileEditorManagerEx.getInstanceEx(myProject).closeFile(myFile);
|
||||
}, myProject.getDisposed());
|
||||
};
|
||||
ObjectUtils.consumeIfNotNull(JBTerminalWidget.asJediTermWidget(myFile.getTerminalWidget()), widget -> {
|
||||
widget.addListener(myListener);
|
||||
});
|
||||
JBTerminalWidget termWidget = JBTerminalWidget.asJediTermWidget(myFile.getTerminalWidget());
|
||||
if (termWidget != null) {
|
||||
termWidget.addListener(myListener);
|
||||
}
|
||||
|
||||
terminalFile.getTerminalWidget().getTerminalTitle().addTitleListener(new TerminalTitleListener() {
|
||||
@Override
|
||||
@@ -102,9 +102,10 @@ public final class TerminalSessionEditor extends UserDataHolderBase implements F
|
||||
|
||||
@Override
|
||||
public void dispose() {
|
||||
ObjectUtils.consumeIfNotNull(JBTerminalWidget.asJediTermWidget(myFile.getTerminalWidget()), widget -> {
|
||||
widget.removeListener(myListener);
|
||||
});
|
||||
JBTerminalWidget termWidget = JBTerminalWidget.asJediTermWidget(myFile.getTerminalWidget());
|
||||
if (termWidget != null) {
|
||||
termWidget.removeListener(myListener);
|
||||
}
|
||||
if (Boolean.TRUE.equals(myFile.getUserData(FileEditorManagerImpl.CLOSING_TO_REOPEN))) {
|
||||
ApplicationManager.getApplication().invokeLater(() -> {
|
||||
boolean disposedBefore = Disposer.isDisposed(myFile.getTerminalWidget());
|
||||
|
||||
Reference in New Issue
Block a user