diff --git a/gui/griffon-app/controllers/com/muwire/gui/BrowseController.groovy b/gui/griffon-app/controllers/com/muwire/gui/BrowseController.groovy index fff00f5c..8c98d6c4 100644 --- a/gui/griffon-app/controllers/com/muwire/gui/BrowseController.groovy +++ b/gui/griffon-app/controllers/com/muwire/gui/BrowseController.groovy @@ -113,7 +113,9 @@ class BrowseController { return def params = [:] - params['result'] = result + params['host'] = result.getSender() + params['infoHash'] = result.getInfohash() + params['name'] = result.getName() params['core'] = core mvcGroup.createMVCGroup("fetch-certificates", params) } diff --git a/gui/griffon-app/controllers/com/muwire/gui/FetchCertificatesController.groovy b/gui/griffon-app/controllers/com/muwire/gui/FetchCertificatesController.groovy index 0caadd57..b66b7207 100644 --- a/gui/griffon-app/controllers/com/muwire/gui/FetchCertificatesController.groovy +++ b/gui/griffon-app/controllers/com/muwire/gui/FetchCertificatesController.groovy @@ -28,7 +28,7 @@ class FetchCertificatesController { core.eventBus.with { register(CertificateFetchEvent.class, this) register(CertificateFetchedEvent.class, this) - publish(new UIFetchCertificatesEvent(host : model.result.sender, infoHash : model.result.infohash)) + publish(new UIFetchCertificatesEvent(host : model.host, infoHash : model.infoHash)) } } diff --git a/gui/griffon-app/controllers/com/muwire/gui/MainFrameController.groovy b/gui/griffon-app/controllers/com/muwire/gui/MainFrameController.groovy index 37c035f2..7bb11080 100644 --- a/gui/griffon-app/controllers/com/muwire/gui/MainFrameController.groovy +++ b/gui/griffon-app/controllers/com/muwire/gui/MainFrameController.groovy @@ -589,7 +589,17 @@ class MainFrameController { @ControllerAction void viewFeedItemCertificates() { + List items = view.selectedFeedItems() + if (items == null || items.size() != 1) + return + FeedItem item = items.get(0) + def params = [:] + params['core'] = core + params['host'] = item.getPublisher() + params['infoHash'] = item.getInfoHash() + params['name'] = item.getName() + mvcGroup.createMVCGroup("fetch-certificates", params) } void startChat(Persona p) { diff --git a/gui/griffon-app/controllers/com/muwire/gui/SearchTabController.groovy b/gui/griffon-app/controllers/com/muwire/gui/SearchTabController.groovy index cc7f07d0..2a1dd036 100644 --- a/gui/griffon-app/controllers/com/muwire/gui/SearchTabController.groovy +++ b/gui/griffon-app/controllers/com/muwire/gui/SearchTabController.groovy @@ -155,7 +155,9 @@ class SearchTabController { return def params = [:] - params['result'] = event + params['host'] = event.getSender() + params['infoHash'] = event.getInfohash() + params['name'] = event.getName() params['core'] = core mvcGroup.createMVCGroup("fetch-certificates", params) } diff --git a/gui/griffon-app/models/com/muwire/gui/FetchCertificatesModel.groovy b/gui/griffon-app/models/com/muwire/gui/FetchCertificatesModel.groovy index 3a7630e0..98f22deb 100644 --- a/gui/griffon-app/models/com/muwire/gui/FetchCertificatesModel.groovy +++ b/gui/griffon-app/models/com/muwire/gui/FetchCertificatesModel.groovy @@ -1,6 +1,9 @@ package com.muwire.gui +import com.muwire.core.InfoHash +import com.muwire.core.Persona import com.muwire.core.filecert.CertificateFetchStatus +import com.muwire.core.filefeeds.FeedItem import com.muwire.core.search.UIResultEvent import griffon.core.artifact.GriffonModel @@ -9,7 +12,9 @@ import griffon.metadata.ArtifactProviderFor @ArtifactProviderFor(GriffonModel) class FetchCertificatesModel { - UIResultEvent result + Persona host + InfoHash infoHash + String name @Observable CertificateFetchStatus status @Observable int totalCertificates diff --git a/gui/griffon-app/views/com/muwire/gui/FetchCertificatesView.groovy b/gui/griffon-app/views/com/muwire/gui/FetchCertificatesView.groovy index f2dcbdb9..e0f6689d 100644 --- a/gui/griffon-app/views/com/muwire/gui/FetchCertificatesView.groovy +++ b/gui/griffon-app/views/com/muwire/gui/FetchCertificatesView.groovy @@ -38,7 +38,7 @@ class FetchCertificatesView { void initUI() { int rowHeight = application.context.get("row-height") mainFrame = application.windowManager.findWindow("main-frame") - dialog = new JDialog(mainFrame, model.result.name, true) + dialog = new JDialog(mainFrame, model.name, true) dialog.setResizable(true) p = builder.panel {