strongbox-password-safe / Strongbox

A KeePass/Password Safe Client for iOS and OS X
https://strongboxsafe.com
GNU Affero General Public License v3.0
1.32k stars 102 forks source link

Show in System Menu Bar and Hide Dock Icon preferences leads to unlaunchable state #621

Closed strongbox-mark closed 1 year ago

strongbox-mark commented 2 years ago

from: https://gist.github.com/dan-el/df9f86f80e3f11d249c61fdfc8e5628b - Test 3

A single database is set to auto launch.

1) Launch Strongbox (via Dock, double click on Strongbox in "/Applications", or Spotlight) and decrypt database. 2) The little dot appears under the Dock icon. 3) Close the App (red X) and the Dock Icon disappears, Strongbox is still active in the System Menu Bar. 4) Launching Strongbox via Dock (no Dock option at this point) or Spotlight or via double click on Strongbox in "/Applications" does NOT work at all.

"Launching Strongbox" via the System Menu Bar Icon does work however.

Result: Combining "Show in System Menu Bar" = "ON" with "Hide Dock Icon..." = "ON" completely destroy the ability to launch Strongbox except through the System Menu Bar icon.

Note: Same result with Option F = "On" (Icon pinned to the Dock) - the little dot disappears but a click on the Dock icon does not launch Strongbox.

strongbox-mark commented 2 years ago

This definitely appears to be a real issue @dan-el.

Once the app is in the menu/tray state, then the only way to re-launch it is via the tray or the global hotkey (default Cmd+Option+K).

Will need to look into this, however the workaround of the global hotkey or via the tray means this isn't a particularly severe issue. Thanks for raising :)

strongbox-mark commented 1 year ago

Just to mention I've looked into this again, but I don't think there's much to be done here. There doesn't appear to be anyway for Strongbox to be notified when it's in this state of:

It appears that any of the above actions simply try to re-launch Strongbox, but the system realises that Strongbox is already running and ignores the launch request. It does not inform the existing process of the launch request...

As mentioned, when you're running in this mode the best thing to do is hit the Hot Key, or use the tray icon.

dan-el commented 1 year ago

Proceed and close the issue then I'd say. Thanks for looking into it!

strongbox-mark commented 1 year ago

There might be another way around this, so I'll keep open for now...

strongbox-mark commented 1 year ago

Hi @dan-el - I believe this issue should be much improved/fixed for you with 1.57.0, could you check?

dan-el commented 1 year ago

Hi @strongbox-mark , It is much better now with the new menu bar approach. Thank you! The only thing I noticed is when the "General / Always show Dock Icon" preference is ON along with the menu bar icon and all DBs and the DB Manager windows are closed, then a click on the Dock Icon won't do anything. Launching my DB via the menu bar icon does work however. Let me know if you need a screen recording.

strongbox-mark commented 1 year ago

Hi, ok, great, some progress... when I try to reproduce that issue, and click on the Dock Icon the Database Manager reappears... A video would be nice, if could capture the Settings screens (all tabs) too that would be great, might be a setting I haven't thought of

dan-el commented 1 year ago

Hi @strongbox-mark , I created a screen recording showing the behaviour with a) "General / Always show Dock Icon" unchecked b) "General / Always show Dock Icon" checked to show that it is really this one setting causing the described behaviour. See here

strongbox-mark commented 1 year ago

Thanks a million for the screen recording. Unfortunately I've tried everything to reproduce this here but I can't...

Could you update to 1.57.2 from the App Store not Testflight, and confirm you're still seeing this issue?

dan-el commented 1 year ago

It also happens for me with Strongbox 1.57.2 from the App Store. Also tried storing my database file in a different locations, removed it from SB and re-added it, no change. Anything else that might help reproduce the issue? Unfortunately I do not have a second Mac to try myself. Maybe I can play around with a VM at some point. Would deleting all preference files and Library/Application Support folders help?

strongbox-mark commented 1 year ago

Yes, it might help, I guess we should try that... This will nuke all settings:

https://strongbox.reamaze.com/kb/technical/how-do-i-completely-remove-slash-nuke-all-strongbox-settings-on-macos

strongbox-mark commented 1 year ago

HI @dan-el - I've had some luck reproducing this issue but only in a very specific way (the way you do it in your video), so I wanted to confirm something with you. No need to clear your settings by the way.

I can only recreate this behaviour if I launch Strongbox with Always Show Dock Icon > OFF (unchecked) then, while the process is still running, I can switch the Always Show Dock Icon > ON, and I can see the issue that you have in your screen recording.

However, and this is the bit I'd like to confirm, if I choose to quit Strongbox now at this point (I mean full quit, terminate via the Menu Bar > Quit Strongbox button), and then I relaunch Strongbox, I can no longer reproduce the issue. So, does that work for you?

I'm guessing your answer is no, it's still broken for you. That you don't change the Always Show Dock Icon setting at all once you have it set how you like it?

Or is this issue simply that on initial change of this setting from OFF to ON, Strongbox doesn't work well, but after a restart it is ok?

dan-el commented 1 year ago

I can only recreate this behaviour if I launch Strongbox with Always Show Dock Icon > OFF (unchecked) then, while the process is still running, I can switch the Always Show Dock Icon > ON, and I can see the issue that you have in your screen recording.

Produces the issue on my end too.

However, and this is the bit I'd like to confirm, if I choose to quit Strongbox now at this point (I mean full quit, terminate via the Menu Bar > Quit Strongbox button), and then I relaunch Strongbox, I can no longer reproduce the issue. So, does that work for you?

Still produces the same issue on my end.

I'm guessing your answer is no, it's still broken for you. That you don't change the Always Show Dock Icon setting at all once you have it set how you like it?

Correct, still broken, no matter whether I change the setting from "unchecked" to "checked" while the app is running vs. starting up the app with the setting "checked".

Or is this issue simply that on initial change of this setting from OFF to ON, Strongbox doesn't work well, but after a restart it is ok?

No, it is consistently not working for me.

I am currently setting up a Ventura VM to test in a fresh environment and will report back. Cheers!

strongbox-mark commented 1 year ago

OK, wow, that's very helpful thanks! Could you also let me know what your settings are like under:

System Settings > Desktop & Dock > Windows & Apps

I attach a screenshot of mine.

image
dan-el commented 1 year ago

See the screenshot of my physical Mac:

image
strongbox-mark commented 1 year ago

Thanks, does changing that last setting (Close windows when quitting an application) to Off change things for you?

dan-el commented 1 year ago

Hi @strongbox-mark , Changing the setting does nothing for me. The issue persists (also in the VM) And in my VM the issue is happening right out of the box - I only copied the Strongbox app and my kdbx file over to the vanilla VM. Created the VM using these Apple instructions

dan-el commented 1 year ago

Hi @strongbox-mark , With 1.57.3 (5072) from Testflight I can no longer reproduce the issue. So far Strongbox is consistently launching with the described combination of settings.

strongbox-mark commented 1 year ago

That's great news! We'll leave open until we go live but looks like we squashed this one :)

strongbox-mark commented 1 year ago

This should be fixed for you in 1.57.3 in the public App Store release now.

To download and update to 1.57.3, you will need to go to the App Store, search for Strongbox, click on the correct version (the one you have installed now) and then you will see the "Update" button. Click that to Update :)

Feedback welcome and feel free to close if we squashed this.

dan-el commented 1 year ago

I can no longer reproduce any launching issues. The issue can be closed. Thank you!

strongbox-mark commented 1 year ago

That's fantastic :)