From 2d08889977ea19d715a6794d7b5a0579f44c01b1 Mon Sep 17 00:00:00 2001 From: zzz <zzz@mail.i2p> Date: Mon, 9 May 2016 12:45:29 +0000 Subject: [PATCH] DTG swing event handling tweaks --- .../src/net/i2p/desktopgui/TrayManager.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/apps/desktopgui/src/net/i2p/desktopgui/TrayManager.java b/apps/desktopgui/src/net/i2p/desktopgui/TrayManager.java index 2df63f2af9..6217e8d88b 100644 --- a/apps/desktopgui/src/net/i2p/desktopgui/TrayManager.java +++ b/apps/desktopgui/src/net/i2p/desktopgui/TrayManager.java @@ -102,9 +102,12 @@ abstract class TrayManager { public void mousePressed(MouseEvent e) { handle(e); } public void mouseReleased(MouseEvent e) { handle(e); } private void handle(MouseEvent e) { + //System.out.println("Button " + e.getButton() + " Frame was visible? " + + // frame.isVisible() + " menu was visible? " + menu.isVisible() + + // " trigger? " + menu.isPopupTrigger(e)); // http://stackoverflow.com/questions/17258250/changing-the-laf-of-a-popupmenu-for-a-trayicon-in-java - // menu visible check is failsafe, for when menu gets cancelled - if (!frame.isVisible() || !menu.isVisible()) { + // menu visible check is never true + if (!frame.isVisible() /* || !menu.isVisible() */ ) { frame.setLocation(e.getX(), e.getY()); frame.setVisible(true); menu.show(frame, 0, 0); @@ -113,8 +116,8 @@ abstract class TrayManager { } }); menu.addPopupMenuListener(new PopupMenuListener() { - public void popupMenuCanceled(PopupMenuEvent e) { frame.setVisible(false); } - public void popupMenuWillBecomeInvisible(PopupMenuEvent e) {} + public void popupMenuCanceled(PopupMenuEvent e) { /* frame.setVisible(false); */ } + public void popupMenuWillBecomeInvisible(PopupMenuEvent e) { frame.setVisible(false); } public void popupMenuWillBecomeVisible(PopupMenuEvent e) {} }); // this is to make it go away when we click elsewhere -- GitLab