diff --git a/src/java/net/i2p/i2pfirefox/I2PBrowser.java b/src/java/net/i2p/i2pfirefox/I2PBrowser.java index 80d94f6..cf988bc 100644 --- a/src/java/net/i2p/i2pfirefox/I2PBrowser.java +++ b/src/java/net/i2p/i2pfirefox/I2PBrowser.java @@ -260,6 +260,12 @@ public class I2PBrowser extends I2PCommonBrowser { if (useSystray) { logger.info("Starting systray"); systray(args); + Runtime.getRuntime().addShutdownHook(new Thread() { + @Override + public void run() { + shutdownSystray(); + } + }); } } catch (Exception e) { logger.warning(e.toString()); diff --git a/src/java/net/i2p/i2pfirefox/I2PFirefoxProfileBuilder.java b/src/java/net/i2p/i2pfirefox/I2PFirefoxProfileBuilder.java index 9fe2fa1..77fe0ba 100644 --- a/src/java/net/i2p/i2pfirefox/I2PFirefoxProfileBuilder.java +++ b/src/java/net/i2p/i2pfirefox/I2PFirefoxProfileBuilder.java @@ -257,6 +257,7 @@ public class I2PFirefoxProfileBuilder extends I2PCommonBrowser { } File baseProfileDir = new File(baseProfile); File profileDir = new File(profile); + setupUserChrome(profileDir, app); if (!baseProfileDir.exists() || !profileDir.exists()) { logger.info("Empty directories"); return false; @@ -276,6 +277,12 @@ public class I2PFirefoxProfileBuilder extends I2PCommonBrowser { logger.info("Error copying base profile to profile" + e); return false; } + logger.info("Done setting up fancy Firefox options"); + + return true; + } + + public static void setupUserChrome(File profileDir, boolean app) { File workingUserOverrides = new File(profileDir, "user-overrides.js"); logger.info(workingUserOverrides.getAbsolutePath()); if (workingUserOverrides.exists()) { @@ -317,9 +324,6 @@ public class I2PFirefoxProfileBuilder extends I2PCommonBrowser { deleteAppChrome(profileDir.toString()); } } - logger.info("Done setting up fancy Firefox options"); - - return true; } /**