How does the taskbar decide whether to show Recent or Frequent documents on the jump list?

Some jump lists show Recent documents, and others show Frequent documents.

(Images stolen from Sasha Goldshtein.)

Our friend xpclient wanted to know how the taskbar decides which one to use, because it seemed random. (Ironically, xpclient is asking a question about the Window 7 client.)

The default is to show Recent documents. But an application can customize its jump list, and in that case, the application can select which category to show based on the guidance in the documentation. (Or the application might choose to ignore the guidance in the documentation and show both.)

Okay, but what about Explorer itself? You can find that Explorer will sometimes show Frequent locations (e.g., on My Computer) and sometimes Recent locations (e.g., on Control Panel). How is this possible if the decision is made on per-application basis?

Because the taskbar uses the shell application user model to associate windows with applications. We’ve taken advantage of this model a number of times before, like when we prevented a program from being pinned, or made one application look like two or many. Explorer sets its jump lists to show Frequent, but if an Explorer window sets a custom application ID, then that window is treated by the taskbar as a separate program and therefore the Explorer default does not apply (and it gets Recent instead).

To make things even more complicated, xpclient was running a third-party taskbar hacking application which manipulated application ID of windows which belong to other applications. And just like in real life, if you mess with stuff that isn’t yours, you can cause trouble for the real owner. In this case, manipulating the application IDs broke Explorer’s jump list customizations.

This is another case of somebody doing some weird customization and then complaining that their system acts all strange (which often leads to the accusation that Microsoft developers are a bunch of idiots) when the strange behavior was caused by their customization. I mean, if you’re running a taskbar hacking application, then you really shouldn’t be surprised if the taskbar occasionally behaves erratically.

Bonus chatter: The Recent and Frequent categories are variable-length, which you can customize by setting the Number of recent items to display in Jump Lists.

Comments (29)
  1. e_jim says:

    Have folks at MS ever thought of mantaining a list of misbehaved applications, so that when an user wants to install one of them, a warning would appear saying something like "Hey, the application you're trying to install doesn't play along with others; you can use it if you really want to, but don't whine if weirdness ensues…"

    I know about Compatibility Shims, so there's already some sort of such list… It just could be more "explicit" about troublemaker software.

    [I doubt any application vendors would approve Microsoft putting up a dialog box that says "This app is to blame for all your problems." -Raymond]
  2. SimonRev says:

    e_Jim:  I think that exists, although for slightly different scenarios.  I know that whenever I install Visual Studio 6 (mostly for light maintenance to some ancient software), I get a very similar message indicating that the software has problems and isn't recommended.

  3. Joshua says:

    Somehow I think lots of people fiddle with stuff like this because Microsoft has made certain decisions that impede implementation of third party shells.

  4. jader3rd says:

    <quote>I doubt any application vendors would approve Microsoft putting up a dialog box that says "This app is to blame for all your problems."</quote>

    True, but Windows users should would appreciate it.

    [The rule is that the application vendor approves any application compatibility warning dialogs. This is unlikely to be approved. -Raymond]
  5. e_jim says:

    > I doubt any application vendors would approve Microsoft putting up a dialog box that says "This app is to blame for all your problems." -Raymond

    … Even if it actually is to blame? And so, Windows has to take the heat for some craptastic software's faults… :(

    [I'm sure you can imagine how such a dialog box can quickly escalate into a lawsuit. "Program Z does something just as bad, but you don't put up a dialog box for them. This is clearly anti-competitive practice, and I'm suing!" -Raymond]
  6. kog999 says:

    And just imagine if Microsoft produced a competing product that didn’t get the warning. Conspiracy theorist would have a hay day with that.

  7. That lovely picture reminds me again that for some reason WMP is not saving names of audio files to the recent/frequent list.

    [Works for me. Maybe you're running a taskbar customizer tool. -Raymond]
  8. Ben says:

    @alegr1: Check WMP's Options > Privacy tab under History, make sure Music is checked.

  9. Danny says:

    Hey Ray, you used to be a general approach slamming type of person, instead of the more person oriented one (Delphi programmers, xpclient, alegr1) we kind of got since like half a year ago. So who are you and what did you did with my Raymond?

    [I had no intention of slamming Delphi programmers. The remarks were actually intended as a pre-emptive apology. -Raymond]
  10. retyper says:

    Sasha's blog software is working better, doesn't eat posting. Please switch your blog to that software.

    [As already noted, I do not control the software that runs this site. This is like writing to a reporter, "The paper your newspaper is printed on falls apart to quickly. You should switch to the paper that those other guys use." The newspaper reporter doesn't control what paper his article is printed on. -Raymond]
  11. Cheong says:

    It's hard to resist attempt to select lines on the image to see if it's another masterpiece of "CSS styled HTML mimicking real image". :P

  12. FYI, the need to use the "hacking" app, 7+ Taskbar Tweaker arose because of Microsoft's misbehaving taskbar in Windows 7. This is another case of Microsoft going of the way to remove options about how the taskbar behaves and then complaining that their users are whining about it (which often leads to the accusation that the user is just afraid of change) when the evil behavior was caused by Microsoft's removal of options in the first place.

    [I admire how quickly you jump from "undesirable" to "evil". Normally, there's a stop at "incompetent" first. -Raymond]
  13. @xpclient says:

    I agree. This misused of "afraid to change" (when actually the practical usage of something is needlessly changed in a bad way) is wide-spread.

  14. GoD says:

    @xpclient: I installed Windows in a VM at that time and the first thing I did was to search for a tool to fix the task bar and I found 7TT. I know your pain very well.

  15. Tod says:

    Thank you for the suggestion, I'm trying that 7+TT right now.

  16. Antonio Rodríguez says:

    Come on, guys, Windows 7's taskbar isn't broken. If you set it to group but don't combine and to show button labels, it works as Windows XP's one did, adding the possibility of reordering groups (which XP didn't allow). 7+TT adds some nice details, but I can live without them.

  17. Rick C says:

    @JamesJohnston, supposedly if you set the compatibility options for Messenger to Vista, you'll get your tray^Wnotification area icon back.  I think I even read that in the comments here.  (I haven't tried it because the default behavior for taskbar icons makes it so Messenger doesn't take up enough space to annoy me, although I did hate the loss of my tray^Wnotification area icon at first.)

  18. @Rick C: yes I've heard that too.  But obviously it's not really a supported solution – who knows what else the version compatibility hack might screw up?  There needs to be a checkbox in the Options window for this.  Until that happens, I won't waste my time on the client.  I might not do that anyway; most people I had on my contact list don't log in much any more.  Those that did were also on Skype and Facebook and I've kind of shifted to using those channels anyway.

  19. [Works for me. Maybe you're running a taskbar customizer tool. -Raymond]

    I may have some reservations about Microsoft software, but I have much less trust for ISVs. Deservedly. I steer clear from those kludges.


    @alegr1: Check WMP's Options > Privacy tab under History, make sure Music is checked.

    More likely, it's "Save more recently used to jumplist instead of frequently used" on the main tab.

  20. David Walker says:

    Taskbar two rows high, never combine, and you can remove all Pinned icons if you want, and add a "quick-launch" type of toolbar with shortcuts (no text displayed).  I am not against progress, but I really like having a quick-launch bar, so I reimplemented it using native Windows 7 functionality.

  21. Windows 7 taskbar works fine for me for the most part; using a Windows XP or Windows Vista taskbar feels like a step backwards to me.  Aero Peek in particular is quite nice.  Note that I have my taskbar set to "combine when taskbar is full"; if they removed all options except the default "always combine, hide labels" then I'd throw a fit.  If I changed one thing, I think I'd always show window titles above the thumbnails, since often the thumbnails don't help with identifying the window.  Currently you have to hover and get a tooltip / Aero Peek, which is slower.  Other than that, I like these positive changes:

    * Ability to close window by clicking X from thumbnail; Aero Peek.

    * Middle-click behavior of starting new instance.

    * Window+Number hotkey for switching between windows; Window+Shift+Number hotkey for starting new instance.

    * Better management of notification icons: easy to drag/drop unwanted icons into hidden list.

    Some of the other more advanced features I tend not to use so much, like the jump lists, pinning programs to taskbar, etc.

    Now, some developers need to not go overboard with this taskbar.  For example, I quit using Windows Messenger after I installed the latest version.  Now I just use Skype and Facebook chat.  Why is this?  Windows Messenger refuses to run in the background without creating a fat, space-sucking window on my taskbar.  That's a breaking issue for me.  Apparently some genius there decided that everyone sets their taskbar to "always combine, hide labels" (I don't) and so decided to eliminate the notification icon.  Note to Messenger team: remember you are not writing for Mac OS X!

  22. Jim says:

    To add to what JamesJohnston said:

    * The most often used feature of 7TT is the that makes clicking on a taskbar button with multiple windows cycle through them rather than displaying all the previews for you to pick one. In particular, if the button is not currently active then you are taken straight to the most recently used one. But there's a registry entry to make Explorer do this without any external tools (search the web for "LastActiveClick").

    * If you middle click on a preview then that window is closed. This saves you having to precisely hit the red X.

  23. dashesy says:

    @David Walker- using 7TT one can also fix the "Group by ID" to get an almost XP like environment. But still my eyes cannot distinguish the active window (effortlessly) by looking at the un-combined items in taskbar.

    @JamesJohnston- I think many designers run Windows under parallels and think they are designing for Mac OSX.

  24. "[I admire how quickly you jump from "undesirable" to "evil". Normally, there's a stop at "incompetent" first. -Raymond]"

    No there is NO place for incompetent when deleting features is concerned. MS is plain evil. They turned evil after right XPSP2 and are reaching new heights of evilness with each release. :D

  25. Joshua says:

    Remind me not to get into a flame ware with xpclient.

  26. Paul Parks says:

    I can understand disliking the implementation of a feature, or maybe even being disappointed in a feature being change or removed, but I honestly don't see how anyone can be so emotionally invested in Windows or any other Microsoft software that one would consider the organization "evil" for making certain changes. I make my living off of developing for Windows, and I don't get that worked up. Take a deep breath, already.

  27. TK says:

    @David Walker: Hopefully you didn't re-invent the wheel for Quick Launch; it's still available in Windows 7:…/975784

  28. @Paul M. Parks ??? It is not "emotional investment", it is plain utility or convenience. Why should I downgrade my software to something massively less convenient or with reduced utility/function/customization? And yes we are forced to use it some day. If there was a choice was forever staying with what you are happy with, no one would have complained. It is in MS's evil DNA after XPSP2 to sell software with features taken out from one component and some features added to another component. So it's a constant cycle of making compromises. Who knows what option or entire feature they will delete next?

  29. 640k says:

    Remember my words: Tile interfaces are gone in 5 years.

Comments are closed.