![]() That feature of KeePass does not restore the KeePass Password Safe window, so almost instantly after unlocking the plugin will re-lock KeePass. If KeePass is minimized and locked, the user can right-click the tray icon and select "Unlock Workspace". MinLock does break one minor feature of KeePass. This might be better off as an official KeePass option-based feature instead of a plugin. This approach turned out pretty well because MinLock re-locks KeePass before it even finishes auto-typing. See the plugin development page for details about PLGX compatibility with future versions of KeePass. ![]() MinLock was developed with KeePass version 2.19. KeePass continues on merrily, appears to do all it needs to do with the database, and then very shortly afterwards the message pump runs, the timer tick event fires, and MinLock re-locks KeePass The timer can't fire until the underlying message pump runs, so in this way the plugin doesn't interrupt KeePass in the same callstack of the event firing. Instead of locking in the FileOpened event handler, I do a bit of hackery and use a to wait just a bit before re-locking the KeePass workspace. Then KeePass has some things to finishing doing in the current callstack. ![]() This plugin simply responds to a file being opened (which for KeePass, my understanding is that this is only when it has opened its secure database file). Void Timer_Tick( object sender, EventArgs e) Start a, because it's based on the event loop it // can't interrupt current calls, though calls to Application.DoEvents // could wreak havoc, but that doesn't appear to be a problem here. If (m_Timer = null & m_ = FormWindowState.Minimized) Void MainWindow_FileOpened( object sender, e) Upon unlocking, the database is opened and this event fires // it likely fires other times too (e.g. Public override bool Initialize(IPluginHost host)
0 Comments
Leave a Reply. |