From e547eaf7467462ef89334f0ce83c49ed4e646b92 Mon Sep 17 00:00:00 2001 From: Carsten Reckord Date: Thu, 16 Mar 2017 10:33:23 +0100 Subject: [PATCH] 493913: Add drag&drop support for favorites list URL Support opening Favorites import wizard with an initial URL Bug: 493913 Task-Url: https://bugs.eclipse.org/bugs/show_bug.cgi?id=493913 --- .../epp/internal/mpc/ui/wizards/FavoritesViewer.java | 5 +++++ .../internal/mpc/ui/wizards/ImportFavoritesPage.java | 12 +++++++++--- .../mpc/ui/wizards/ImportFavoritesWizard.java | 10 ++++++++++ 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/FavoritesViewer.java b/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/FavoritesViewer.java index 3fdade4b..62301120 100644 --- a/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/FavoritesViewer.java +++ b/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/FavoritesViewer.java @@ -58,6 +58,11 @@ public FavoritesViewer(Catalog catalog, ImportFavoritesPage page, IMarketplaceWe setRefreshJobDelay(50L); } + @Override + public void setFilterText(String newFilter) { + super.setFilterText(newFilter); + } + @Override protected StructuredViewer doCreateViewer(Composite container) { StructuredViewer viewer = super.doCreateViewer(container); diff --git a/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesPage.java b/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesPage.java index c5216fd9..54aa4212 100644 --- a/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesPage.java +++ b/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesPage.java @@ -28,7 +28,6 @@ import org.eclipse.equinox.internal.p2.discovery.AbstractDiscoveryStrategy; import org.eclipse.equinox.internal.p2.ui.discovery.wizards.CatalogPage; import org.eclipse.equinox.internal.p2.ui.discovery.wizards.CatalogViewer; -import org.eclipse.equinox.internal.p2.ui.discovery.wizards.DiscoveryWizard; import org.eclipse.jface.operation.IRunnableWithProgress; import org.eclipse.jface.viewers.IStructuredSelection; import org.eclipse.osgi.util.NLS; @@ -95,11 +94,13 @@ public static String handleDiscoveryError(String favoritesReference, Exception e @Override protected CatalogViewer doCreateViewer(Composite parent) { - DiscoveryWizard wizard = getWizard(); - CatalogViewer viewer = new FavoritesViewer(getCatalog(), this, browser, + ImportFavoritesWizard wizard = getWizard(); + FavoritesViewer viewer = new FavoritesViewer(getCatalog(), this, browser, wizard.getConfiguration()); viewer.setMinimumHeight(MINIMUM_HEIGHT); viewer.createControl(parent); + String initialFavoritesUrl = wizard.getInitialFavoritesUrl(); + viewer.setFilterText(initialFavoritesUrl == null ? "" : initialFavoritesUrl); //$NON-NLS-1$ return viewer; } @@ -162,4 +163,9 @@ private IUserFavoritesService findUserFavoritesService() { } return userFavoritesService; } + + @Override + public ImportFavoritesWizard getWizard() { + return (ImportFavoritesWizard) super.getWizard(); + } } diff --git a/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesWizard.java b/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesWizard.java index 9a68474a..eaea1c65 100644 --- a/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesWizard.java +++ b/org.eclipse.epp.mpc.ui/src/org/eclipse/epp/internal/mpc/ui/wizards/ImportFavoritesWizard.java @@ -17,6 +17,8 @@ public class ImportFavoritesWizard extends DiscoveryWizard { private final ImportFavoritesPage importFavoritesPage; + private String initialFavoritesUrl; + public ImportFavoritesWizard(MarketplaceCatalog catalog, MarketplaceCatalogConfiguration configuration, IMarketplaceWebBrowser browser) { super(catalog, configuration); setWindowTitle("Import Favorites List"); @@ -37,4 +39,12 @@ public boolean performFinish() { public ImportFavoritesPage getImportFavoritesPage() { return importFavoritesPage; } + + public void setInitialFavoritesUrl(String initialFavoritesUrl) { + this.initialFavoritesUrl = initialFavoritesUrl; + } + + public String getInitialFavoritesUrl() { + return initialFavoritesUrl; + } }