From d7a95fed0337eef33152228f792ed4ed3ca681b5 Mon Sep 17 00:00:00 2001 From: chimp1984 Date: Tue, 15 Dec 2020 00:40:45 -0500 Subject: [PATCH] Pass trade if available and use peers keyring --- .../bisq/desktop/components/PeerInfoIcon.java | 7 ++--- .../desktop/components/PeerInfoIconSmall.java | 7 ++++- .../editor/PeerInfoWithTagEditor.java | 26 ++++++++++++++----- 3 files changed, 29 insertions(+), 11 deletions(-) diff --git a/desktop/src/main/java/bisq/desktop/components/PeerInfoIcon.java b/desktop/src/main/java/bisq/desktop/components/PeerInfoIcon.java index 78ac47eb00e..47679d650fe 100644 --- a/desktop/src/main/java/bisq/desktop/components/PeerInfoIcon.java +++ b/desktop/src/main/java/bisq/desktop/components/PeerInfoIcon.java @@ -104,7 +104,7 @@ public PeerInfoIcon(NodeAddress nodeAddress, role, numTrades, privateNotificationManager, - null, + trade.getOffer(), trade, preferences, accountAgeWitnessService, @@ -246,7 +246,7 @@ private PeerInfoIcon(NodeAddress nodeAddress, getChildren().addAll(outerBackground, innerBackground, avatarImageView, tagPane, numTradesPane); - addMouseListener(numTrades, privateNotificationManager, offer, preferences, useDevPrivilegeKeys, + addMouseListener(numTrades, privateNotificationManager, trade, offer, preferences, useDevPrivilegeKeys, isFiatCurrency, accountAge, signAge, peersAccount.third, peersAccount.fourth, peersAccount.fifth); } @@ -297,6 +297,7 @@ private boolean hasChargebackRisk(@Nullable Trade trade, @Nullable Offer offer) protected void addMouseListener(int numTrades, PrivateNotificationManager privateNotificationManager, + @Nullable Trade trade, Offer offer, Preferences preferences, boolean useDevPrivilegeKeys, @@ -319,7 +320,7 @@ protected void addMouseListener(int numTrades, Res.get("peerInfo.unknownAge") : null; - setOnMouseClicked(e -> new PeerInfoWithTagEditor(privateNotificationManager, offer, preferences, useDevPrivilegeKeys) + setOnMouseClicked(e -> new PeerInfoWithTagEditor(privateNotificationManager, trade, offer, preferences, useDevPrivilegeKeys) .fullAddress(fullAddress) .numTrades(numTrades) .accountAge(accountAgeFormatted) diff --git a/desktop/src/main/java/bisq/desktop/components/PeerInfoIconSmall.java b/desktop/src/main/java/bisq/desktop/components/PeerInfoIconSmall.java index d1cb74d57c0..cee0bec7fdf 100644 --- a/desktop/src/main/java/bisq/desktop/components/PeerInfoIconSmall.java +++ b/desktop/src/main/java/bisq/desktop/components/PeerInfoIconSmall.java @@ -3,13 +3,17 @@ import bisq.core.account.witness.AccountAgeWitnessService; import bisq.core.alert.PrivateNotificationManager; import bisq.core.offer.Offer; +import bisq.core.trade.Trade; import bisq.core.user.Preferences; import bisq.network.p2p.NodeAddress; +import javax.annotation.Nullable; + public class PeerInfoIconSmall extends PeerInfoIcon { public PeerInfoIconSmall(NodeAddress nodeAddress, - String role, Offer offer, + String role, + Offer offer, Preferences preferences, AccountAgeWitnessService accountAgeWitnessService, boolean useDevPrivilegeKeys) { @@ -32,6 +36,7 @@ protected double getScaleFactor() { @Override protected void addMouseListener(int numTrades, PrivateNotificationManager privateNotificationManager, + @Nullable Trade trade, Offer offer, Preferences preferences, boolean useDevPrivilegeKeys, diff --git a/desktop/src/main/java/bisq/desktop/main/overlays/editor/PeerInfoWithTagEditor.java b/desktop/src/main/java/bisq/desktop/main/overlays/editor/PeerInfoWithTagEditor.java index 47c5ddaeca4..e0aa0938661 100644 --- a/desktop/src/main/java/bisq/desktop/main/overlays/editor/PeerInfoWithTagEditor.java +++ b/desktop/src/main/java/bisq/desktop/main/overlays/editor/PeerInfoWithTagEditor.java @@ -25,6 +25,7 @@ import bisq.core.locale.GlobalSettings; import bisq.core.locale.Res; import bisq.core.offer.Offer; +import bisq.core.trade.Trade; import bisq.core.user.Preferences; import bisq.common.UserThread; @@ -85,6 +86,8 @@ public class PeerInfoWithTagEditor extends Overlay { private int numTrades; private ChangeListener focusListener; private final PrivateNotificationManager privateNotificationManager; + @Nullable + private final Trade trade; private final Offer offer; private final Preferences preferences; private EventHandler keyEventEventHandler; @@ -99,10 +102,12 @@ public class PeerInfoWithTagEditor extends Overlay { private String signAgeInfo; public PeerInfoWithTagEditor(PrivateNotificationManager privateNotificationManager, + @Nullable Trade trade, Offer offer, Preferences preferences, boolean useDevPrivilegeKeys) { this.privateNotificationManager = privateNotificationManager; + this.trade = trade; this.offer = offer; this.preferences = preferences; this.useDevPrivilegeKeys = useDevPrivilegeKeys; @@ -244,13 +249,20 @@ private void addContent() { // otherwise the text input handler does not work. doClose(); UserThread.runAfter(() -> { - //TODO only taker could send msg as maker would use its own key from offer.... - new SendPrivateNotificationWindow( - privateNotificationManager, - offer.getPubKeyRing(), - offer.getMakerNodeAddress(), - useDevPrivilegeKeys - ).show(); + PubKeyRing peersPubKeyRing = null; + if (trade != null) { + peersPubKeyRing = trade.getProcessModel().getTradingPeer().getPubKeyRing(); + } else if (offer != null) { + peersPubKeyRing = offer.getPubKeyRing(); + } + if (peersPubKeyRing != null) { + new SendPrivateNotificationWindow( + privateNotificationManager, + peersPubKeyRing, + offer.getMakerNodeAddress(), + useDevPrivilegeKeys + ).show(); + } }, 100, TimeUnit.MILLISECONDS); } };