From 824adc9d8c19f71933496f5f3da09e47be3791d0 Mon Sep 17 00:00:00 2001 From: "dmitriy.tseyler" Date: Thu, 20 Jun 2019 15:59:35 +0300 Subject: [PATCH] [dbe] use database delete element provider for service view GitOrigin-RevId: ebd4245f59f1984c0b3b9ddd2d622e777de15ec2 --- .../src/com/intellij/execution/services/ServiceView.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/platform/lang-impl/src/com/intellij/execution/services/ServiceView.java b/platform/lang-impl/src/com/intellij/execution/services/ServiceView.java index ca8eec7097fe..061894db44c7 100644 --- a/platform/lang-impl/src/com/intellij/execution/services/ServiceView.java +++ b/platform/lang-impl/src/com/intellij/execution/services/ServiceView.java @@ -3,6 +3,7 @@ package com.intellij.execution.services; import com.intellij.execution.services.ServiceModel.ServiceViewItem; import com.intellij.ide.DataManager; +import com.intellij.ide.DeleteProvider; import com.intellij.openapi.Disposable; import com.intellij.openapi.actionSystem.CommonDataKeys; import com.intellij.openapi.actionSystem.DataProvider; @@ -117,7 +118,11 @@ abstract class ServiceView extends JPanel implements Disposable { return navigatables.toArray(new Navigatable[0]); } if (PlatformDataKeys.DELETE_ELEMENT_PROVIDER.is(dataId)) { - return new ServiceViewDeleteProvider(serviceView); + List selection = serviceView.getSelectedItems(); + ServiceViewContributor contributor = ServiceViewDragHelper.getTheOnlyContributor(selection); + DataProvider delegate = contributor == null ? null : contributor.getViewDescriptor().getDataProvider(); + DeleteProvider deleteProvider = delegate == null ? null : PlatformDataKeys.DELETE_ELEMENT_PROVIDER.getData(delegate); + return deleteProvider == null ? new ServiceViewDeleteProvider(serviceView) : deleteProvider; } if (PlatformDataKeys.COPY_PROVIDER.is(dataId)) { return new ServiceViewCopyProvider(serviceView);