rulururu

post If you’re gonna be a Windows app, act like a windows app

August 26th, 2007

Filed under: UI — mike hall @ 6:08 am

I hate it when Windows applications use non-standard Windows UI and conventions. Sure it may be good for brand recognition of the company but it’s not good for overall user experience. Let me explain…

Inactive Window Focus

With iTunes, if the mouse is hovering over a button however the focus is on a different app and not on iTunes, the button in iTunes does not get highlighted. Even if you click the button, the button does not press… you have to click it once more to actually press the button, because the first click just sets the focus to the app. It’s standard Windows convention that if you have the focus on App A and if you move your mouse onto a button in App B, the button in App B will still highlight.

Then if you click the mouse, App B will take focus *and* the button in App B will be pressed.

And it turns out that the reason iTunes does this is because when iTunes loses focus, it disables all its controls! I don’t know if this is an Apple thing or what, but I’ve never seen this before and for good reason… it’s not user friendly… at all. And isn’t Apple known for their usability and their great designs? Either way, this is not standard Windows application behavior and is unacceptable.

Active Window Focus

As for another strange behavior, iTunes doesn’t show focus rectangles or highlighting around focused buttons at all (except for the eject button next to each device strangely enough) and that’s a real problem. Whenever I click on the eject button next to my iPod device, I’m never really sure if it was pressed or not. I just have to wait and see if the iPod ejects, if I get an error, or if my internal timer times out and then I try again.

At the very least Apple could show an hourglass here so that you definitively know whether the button was pressed and an operation is taking place. Since there’s no user confirmation or notification, the user is left there wondering if their click took or not. All they need to do are a couple of simple things: show us a progress dialog and visually depress the button when it’s clicked… now that would be the bees’ knees.

List Searching

In addition to focus issues, the lists in the music library do real-time search-as-you-type behavior using the last character typed. Most Windows applications use the last word/partial-word typed. Applications get this behavior free when they derive the list from a standard list base class. Because of this, many applications have this version of the feature and I’ve come to expect it. iTunes does not. Like most of iTunes, it’s not using standard Windows control and therefore doesn’t get this behavior free. This doesn’t mean they’re off the hook for not implementing it, it simply means it isn’t available to the user automatically.

What all this comes down to…

…is that if you want your application to run on Windows, you need to realize that your users will be expecting Windows conventions. Not implementing your application according to these conventions just leave your users confused and frustrated. I said at the top and I’ll say it again… If you’re gonna be a Windows app, act like a windows app.

7 Comments »

  1. Great article. I hate iTunes, slow and sluggish and doesn’t feel right for the reasons you state. Unfortunately, every other music manager I’ve tried is even worse. I keep threating to attempt to make my own app to manage Podcasts, because that is all I use my iPod for, but never do.

    Comment by Scott
    August 26, 2007 @ 2:24 pm

  2. well said. i find itunes to be an appalling application on windows. it’s slow, has such fiddly little controls, and doesn’t keep you informed of what it’s doing.

    Comment by lb
    August 31, 2007 @ 3:07 am

  3. Yep - good article.

    And in no way am I trying to defend iTunes on Windows _at all_, but, I would offer that:

    1. iTunes is a Mac app first and foremost - why would we expect Apple to put in a lot of effort to “window-ize” it? If they make windows users *too* happy, what incentive do they have to switch to a Mac? :) 2. Regarding buttons taking focus + “activating” when clicked while the app doesn’t have focus, it’s interesting because in .NET 2.0 the default toolstrip behavior (toolbars, menus, etc.) is to take focus, but it eats the click. So even Microsoft isn’t acting like a windows app!
    Check out this post for more info on it
    http://blogs.msdn.com/rickbrew/archive/2006/01/09/511003.aspx

    Comment by Aaron Lerch
    September 1, 2007 @ 3:32 pm

  4. 1. iTunes was an app for Mac first, but IMHO you should make your app follow the conventions for the platform that it’s being used on. If you’re being installed on a mac, it should act like how a mac user would expect it to act. If it’s being installed on linux, it should act how a linux user would expect a regular linux app to work. Follow your installed OS’s conventions.

    2.Actually, I have seen that more and more too. Office 2007 apps eat the click too. Even though those are first and foremost Windows apps, I don’t think they’re acting like how good Windows apps should work. When I was experimenting with them for this post, I saw their behavior and it struck me as odd. And since I’m an all Windows user, that simply shouldn’t happen.

    Comment by mike
    September 2, 2007 @ 2:44 am

  5. I’m mostly a Mac user, and what iTunes is doing is the normal Macintosh style. As it happens, I also prefer that style because I can switch to an application without being ever-so-careful not to hit an active control.

    That said, as both a programmer and a user I completely agree with your main point: Consistency with the platform’s conventions is much more important than having *some* applications match anyone’s personal preference. When I do use Windows, it annoys me to no end that only some apps match the UI style, including this mouse-click issue. Apparently the problem is widespread, however, because I did not know until reading this blog entry that there even was a “Windows-approved” behavior in this situation, not to mention which one was correct.

    Thank you for educating me. I’ll just keep my iTunes on my Macintosh and avoid this instance of the problem.

    Comment by solak
    September 7, 2007 @ 5:40 pm

  6. […] like it when applications try to manage that stuff for you… like iTunes. Yes, it’s yet another thing I don’t like about […]

    Pingback by i like ellipses… » How do you like your music?
    January 22, 2008 @ 1:16 am

  7. […] my app to look like an app that runs on a platform somewhere else. I’ve complained about that same problem with iTunes. With CSS resets, it’s not quite that bad since you’re mostly dealing with margins and […]

    Pingback by i like ellipses… » CSS resets and if you should use them
    May 4, 2008 @ 11:44 pm

RSS feed for comments on this post. TrackBack URI

Leave a comment

ruldrurd

Powered by WordPress, Theme based off the "I'm Okay" theme by Laurentiu Piron

Creative Commons License This work is licensed under a Creative Commons Attribution 3.0 United States License.


Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.