Recent Databases

I just updated to Snow Leopard 10.6.1 and now when I launch DTPO (pb7) it does not list my databases under the “Recent Databases” sidebar heading. I have opened each of my 6 databases, shut them down, logged out, restarted, repaired permissions, all to no avail. They just never appear under this heading. The only way I can open them is to put them all under “Favorites”, which kind of defeats the purpose, or go to File -> Open Database… and locate them in the Open dialog box. Any ideas on how to correct this would be appreciated.

(I never had this issue prior to the Snow Leopard update).

I’m on 10.6.1 and DTPO 2pb7. I didn’t notice anything like you’re describing when I upgraded to 10.6.1. My lists of currently open and recent (but not currently open) databases appear as usual.

What happens when you go to the menubar and select File > Open Recent -> ? do you see a list of your recent apps there?

I’m not familiar with the “Favorites” option so can’t comment on it.

The File->Open Recent menu just has “Clear Menu” listed in light gray (un-selectable) with no databases listed. I have been using DTPO 2pb7 for the last several weeks and neither the sidebar “Recent Databases” nor the menu selector ever lists anything, regardless of whether a database is open or closed. I resorted to using the “Favorites” sidebar list, which has worked fine, but that is not really it’s purpose. Any other thoughts on restoring this functionality would be appreciated.

(I have also tried re-installing the plug-ins which did nothing toward correcting the problem).

From the PB 7 release notes:

“Improved: Recent Databases of sidebar does not include favorite databases anymore.”

(This change occurred from PB 4)

I believe this was a user request. If in Favorites, why include the database in Recent?

I would definitely buy that argument. But, when I remove all my databases from the “Favorites” list, shut down DTPO, restart DTPO, and open any database they still do not appear in the “Recent Databases” sidebar list nor under the Recent Databases menu list.

Any other thoughts?

Try this. Shut down DT. Look for the preference file (it is ~/Library/Preferences/com.devon-technologies.thinkpro2.plist — or a similar name if not DT Pro). Move it to the Desktop or somewhere. Restart DT (a new preference file will be created behind the scenes for you) and see if Recent Databases behaves as expected. If so, then there’s something wrong with the old preference file. You might be better off with the new preference file. (As twicks reports, the features you’re looking for do work.)

Still no joy. Tried your suggestion and still no databases will appear under the “Recent Databases” sidebar or menu. But now I notice that if I quit DTPO and then restart it (no log-out), any databases listed under the “Open Databases” sidebar are still listed as open. My recollection is that prior to removing the .plist files when I quit DTPO and then restarted it all the open databases had to be reopened. Is that just my foggy recollection or is this the correct behavior (where they stay open between “Quits”)?

Any other ideas (wondering if I should uninstall and reinstall from scratch).

Check System Preferences > Appearance and the limit for recent documents. On Snow Leopard this limit is applied to all applications.

I’ve never observed this on OS X 10.5.8, PB G4. The current behavior (DBs that are open at quit are also open at restart) is standard. Here’s a short script to close all your open DBs before quitting:

tell application id "com.devon-technologies.thinkpro2"
		close every database
end tell

Thanks Christian,

That indeed was the problem. I had the System Preferences set to “None” for Recent Applications, and Documents. I had no idea that preference had become a system wide setting effecting even third party apps. When I set it to a numeric value the “Recent Databases” sidebar list again showed the ones I had opened (except those already listed under Favorites).

Solving that problem now leaves only the dilemma of open databases remaining open. Do you have any idea if all open databases are now supposed to remain open even after a “Quit” of DTPO. (And for that matter, even after I log out of my account and then log back in and restart DTPO). This is a problem only because I have several databases that are password protected to open and even those open automatically upon relaunch of DTPO and again ask for a password if they were open when the program was Quit. I know this was not the behavior of DTPO prior to my Snow Leopard upgrade as I routinely quit DTPO with databases open and always had to individually select and reopen them when I relaunched DTPO. If this is now the default behavior, perhaps an easier way to “Close” an open database prior to quitting could be implemented than having to go to the “File -> Close Database” for each one. (Ideas: a simple icon to the right of each open database in the sidebar, similar to the eject symbol for mounted drives in finder sidebar windows; or, when quitting DTPO it could prompt for database closure with each individual database being able to be selected by checkbox and a “Close All” option. A user preference within the program could be set to activate this “feature” or not, like the Finder’s Empty Trash warning prompt).

It is a feature of DTPO that DT will re-open all databases that were open when DT was last quit. A “quit” is when you the user intentionally shut down the running application - either with a cmd-q or at the bottom of the “Devonthink…” menubar dropdown, selecting “Quit Devonthink…” If you initiate a 'logout" or “restart” or “shutdown” operation, you are indirectly telling all open applications, including DTPO, to quit running. Interestingly, doing an inelegant “quit” of DTPO through a “Force Quit” and relaunching will open all previously open databases though you’ll encounter the “database seems to already be in use” window. I don’t use other “force quit”-type of commands in Activity Monitor or Terminal (kill) so I can’t offer any observational data.

Finally, I do know from personal experience that after a power outage, DTPO will launch fine as will any previously-open databases similar to having been force quit.

Again, I can’t see how Snow Leopard would affect this operation one bit. In the end I’m a bit perplexed about what behavior you’d like to see when you ask for a different way of closing open databases than what is now offered. Do you want these “open at shutdown” databases to reopen at launch? Or do you want a means of closing all open databases just prior to quitting DTPO? (If so, someone earlier offered a script for that I believe.)

FWIW, I personally find the File > Close Database > [select database to close] to be a bit cumbersome, especially when I want to close more than one, but not all.

Finally, sorry for the verbosity. Glad to see that the earlier problem has disappeared. :smiley:

Closing databases that way is the most consistent method I’ve found so reopening them later with File > Open Recent uses a new window with previous attributes retained. Otherwise it’s likely the first window opened will end up with the global Inbox window attributes, though further windows may open with previously retained attributes.

And it really annoys me how a window “inherits” the content of another db when the previous db in it is closed. When the db I’m closing is being viewing the current window I want that window immediately closed, not reused by some other db.

I wish each database treated its windows independently, sort of like how running multiple instances of v1 would behave.

My uncomfortable struggle with DTPO multi-db/window management continues. :frowning:

You and me both on your point highlighted above. Perhaps in DTPO v3.6 PB13? :smiling_imp:


This is precisely the behavior that I NEVER experienced prior to my Snow Leopard update. Before that, whenever I quit (cmd-q) DTPO with open databases and then relaunced DTPO at some time in the future, I always had to “Open” the databases that I wanted to use, even the ones that were open when I quit the program.

No, if there must be a default behavior, I personally prefer that all open databases be closed when DTPO quits. Maybe because it’s the behavior I’m used to.

More personalized user control is the issue here. My suggestion was: when the user quits DTPO, rather than leave every open databases open between DTPO launches, or closing all open databases at DTPO quit, provide an option to leave open only databases that I (the user) specify. Just like you can select under “Database Properties…” that a particular database is the “Default Database”, perhaps a property that says “Always Open On Launch” could be added. Any database NOT having that selected would remain closed after a DTPO launch, even if was open at the last DTPO quit. My other suggestion to accomplish this involved dislaying a dialog box when you quit DTPO (cmd-q) that would list each currently OPEN database and allow you to specify which ones to “Close” when the actual “Quit” of DTPO was completed. At the next DTPO launch the databases that had been open (and not explicitly “Closed” at the previous quit) would reopen. (My guess is that this last approach would be too annoying for most users so the “Database Property” approach is probably the better choice).

Exactly my point. When I said, “a simple icon to the right of each open database in the sidebar, similar to the eject symbol for mounted drives in finder sidebar windows”, this is the issue I was referring too. When you want to close more than one, but not all databases, having to mouse up to the menu bar multiple times is inelegant at the least, and annoying at best.

Hope this clarifies my previous post and provides some food for thought to the developer.

gdsheldon, here’s a script that allows the user to select the databases to close and then closes them.

(* Select DTP databases and close them
tell application id "com.devon-technologies.thinkpro2"
	set _names to name of every database whose name is not "Inbox"
	set _choose to (choose from list _names with prompt {"Choose DBs to close."} default items "" with multiple selections allowed)
	if _choose is false then
		repeat with x in _choose
			close database x
		end repeat
	end if
end tell

Thanks to sampler.
This is a step in the right direction. At least it only requires one trip to the menu bar. None would still be better IMHO.

What’s your setting of Startup under the General tab of DTPO Preferences?

That definitely influences which databases/windows will reopen when DTPO is launched, at least on my 10.5.8 systems.

All databases are closed when DTPO quits. It’s which db(s) will reopen, and with which window(s), that’s seems to be the issue here and can be controlled to some extent with the aforementioned Startup preference.

There’s no concept of dbs remaining open after DTPO quits; they all close.

Database Properties seems a logical place to add more per-db control that override global defaults, e.g. more flexible Startup choices.

A problem I see is that v2 it still using v1 preferences/properties that were acceptable when only one open db was supported but don’t always fit or interact well with multi-db support. For instance, what purpose(s) does a single “Default Database” serve in a multi-db environment?

Seems you’re suggesting basically a per-db override for the current global “Open windows that were open on quit” Startup preference.

Even that pref’s name hasn’t kept up with v2’s multi-db support now that it also includes opening dbs in addition to windows.

What you want is a way to make choices during DTPO shutdown for what happens next time it’s relaunched. Something that need to be considered for that is what happens if the next relaunch is done by opening one or more specific dbs rather than generally launching the app. Presumably doing that overrides a previously saved relaunch state, but maybe you still want that state to be retained and not overwritten when quitting the current one.

And issues I’ve reported with how/where dbs are closed influencing how/where windows can appear when next reopened haven’t been addressed.

v2’s multi-db/window session management is essentially the same as v1’s and I’m not satisfied with that for the long-term.

If you close dbs with open windows presumably their contents are replaced with the contents from some other open db or the global Inbox if no other db is open?

I’ve been working on another explanation of why I think DTPO’s window-content-replacement is a usability design flaw.

Yes, the windows are not closed, but all show another one of the DBs

Maybe it’s possible to script combined Close Database and Window functionality, even if just for one db and any currently open window(s) at a time. I’m not sure if you can check if a db being closed has any window(s) associated with it.