[Beta] Menubar Plugin
https://github.com/georgesnow/MacPassRevealer/ if anyone is interested it is beta. User feedback is welcome it is considered "beta". So far in my testing it works well.
@mstarke just an update on the plugin. i have 2 branches. master - this most general/simple functionality, but I started a second branch that implements a popover view (UI/UX is not my strong area, but functionality is all there).
I was starting to look at implementing the other functionally i had laid out previously. bundle "aware" - returns entries based on the current bundle, hide the dock icon, lock current database, and possibly query an unlocked database. However, i think i am hitting the limit of what i can do within the APIs tat are available to the plug-ins.
Curious your thoughts on the direction? I would like to take it further and there is some desire on my part because I want the functionality. Would you and do you want to open the plug-in API further to allow for me to try and build the next set of functionality or is it something you would want to pull back into the core app at this point?
I'm open for changes to the API since it's a working set so go ahead on what you might need.
Ok cool. I will look more closely what is already available. The areas I am focusing on now is search/querying a database and locking a database. The one thing I am pretty sure I didn’t see was the ability to lock a database through the api.
@mstarke would it be possible for you to add the ability to lock the current (and or all) open databases into the API?
also possibly the ability to specify focus (I want to provide the option for the focus to be the search field of an unlocked database when bringing MacPass forward)?
As the plugin sees everything MacPass has, you can directly call lockDatabase on MPDocument. But I want to move all this API into a seperate one to decouple plugins from the MacPass source and move to a dedicated PluginAPI (via MPPluginHost and the lot)
I still think you plugin is something work folding into MacPass as core functionality and hence no API changes to the PluginAPI should be needed but I will take your proposals into consideration.
ah cool. didn't realize that, but now looking at MPHTTP I see you import the other headers. I will give this go. thanks!
i still agree as you said before. that moving it into the core code makes sense. I am still working and figuring out how to set up the user preferences aspect. I have also been looking at moving away from using Carbon for HotKeys to Cocoa NSEvents. since technically Carbon is deprecated as of 10.8 and Apple keeps removing more it with each passing year. I have tested this out using the Cocoa NSEvents, which works. however, there are some caveats I noticed.
Just a side note: I am not sure I should be the one to merge my code into the core code. I have updated the copyright and licensing (MIT).
@mstarke - well, I got the locking database working. so thats awesome! And I got preliminary Cocoa HotKeys working as well. I am going work on figuring out the Plugin Settings GUI part. as you saw I had tried with ATUrl plugin. I am going to revisit this with both plugins.
@mstarke if you don't mind checking out the plugin and provide any feedback. I added some features and incorporated the preference settings for the plugin. I will work getting preferences setup for the ATUrl plugin.
https://github.com/georgesnow/MacPassRevealer/
compiled beta version on the above GitHub site.
@mstarke added user customized hotkey - the plugin is now actually useful and customizable. would you consider hosting as signed plugin? Before it gets moved into the core code. I wanted some user feedback ie other menu options that make sense etc...
just side notes/things i couldn't get working - improvements -
how to land focus/cursor in the search box when activating the app
add a menu option to open preferences window and hide/show MacPass
Hide MacPass dock icon
Hey @georgesnow have you figured out how to auto-focus the search box? This (and what you've already done - a global hotkey to open MacPass) are the killer features (for me) that MacPass is missing that Keepass on Windows has.
Thanks for all your work so far on this!
@madmatt not yet. However, I got an idea how to do it. Curious do you usually have more than one database open? I will keep you posted here either way
Hey @georgesnow, that's great news! I only ever use one database. My workflow on Windows is:
- Press Ctrl-Shift-K to open Keepass
- Keepass focuses on the password field, I enter the master password and hit Enter (the key file is already populated and remembered)
- When Keepass unlocks the database, the search field is focused, I type in what I'm searching for and hit enter
- If at least one entry is found, the focus moves to the search results list so I can use arrow keys to highlight the entry I want and hit the Auto-type key (mine is custom, I think it's Command-T on Mac).
- Putting Keepass into the background (during autotype) automatically locks the database and minimises back to the tray again
It's quite a specific workflow and I'm not expecting to get all of that on MacPass by any stretch, but something similar to it would be awesome. I'm trying hard to avoid using the mouse for common tasks to minimise the possibility of getting RSI etc.
MacPass is by far the closest thing I've found on Mac that mimics Keepass on Windows, IMO the main thing it's missing is the auto-focus on search field when unlocking the database, and auto-focusing on the search results after a successful search. The global hotkey to launch the app is nice, but OSX already has nice options for that (Spotlight, Alfred) that are way better than Windows.
@madmatt ok I got it working. I am doing some little further testing before posting an updated plugin. and your workflow is actually very similar to mine.
One other question would the search context of previous app be helpful? so if you have iTerm or Remote Desktop as the front most app before you trigger the keyboard shortcut to show macpass it is provided as the search initial results (basically app aware), but still lands the focus in the search box? so you could just start typing and get new results.
I would probably make it a user preference if I fully implement the "app aware" and also it might need some user specific ones to match. just getting an idea of peoples workflow/expectations
Oh I just noticed do you leave your databas locked al the time? I am not sure I can make the plugin move focus to the search field after you unlock the database. I will need to dig deeper to see if I can figure that out
@madmatt check out the release page. lands focus in the search field(also signed version). if you run into issue please open a ticket on the MacPassRevealer page. Let me know how it works for you
https://github.com/georgesnow/MacPassRevealer/releases
@georgesnow This is fantastic, amazing work! This fixes my biggest gripe with MacPass, and would make an awesome addition to the core app.
I've raised one small bug on the GitHub repo around needing to select 'Force loading of incompatible plugins', but once I figured that out it works perfectly!
@mstarke just an update on the plugin. i have 2 branches. master - this most general/simple functionality, but I started a second branch that implements a popover view (UI/UX is not my strong area, but functionality is all there).
I was starting to look at implementing the other functionally i had laid out previously. bundle "aware" - returns entries based on the current bundle, hide the dock icon, lock current database, and possibly query an unlocked database. However, i think i am hitting the limit of what i can do within the APIs tat are available to the plug-ins.
Curious your thoughts on the direction? I would like to take it further and there is some desire on my part because I want the functionality. Would you and do you want to open the plug-in API further to allow for me to try and build the next set of functionality or is it something you would want to pull back into the core app at this point?
@georgesnow if you need any UI/UX suggestion I'd be happy to help