Thursday, October 28, 2010

Focus! User is King

As mentioned briefly in my previous post, I noted an interesting yet subtle HCI feature in Mac OS X and wondering how to have this in openSUSE? If not possible, is someone out there looking at this?

When I boot up and log onto a system (Mac OS X or any SUSE), my typical first move is to quickly launch all the applications that I need to start my day. This means clicking and launching a few web browsers (Firefox, Chrome, Opera/Safari), chat apps Adium/Pidgin/Kopete, mail clients etc.

The system will get severely loaded due to multiple, concurrent startup of applications vying for resources. That's acceptable and normal. However, here's the subtle feature/difference of Mac OS X:

Whichever application that appears first, being the impatient user, I will start interacting with it. If one of my web browsers appears first, I will start surfing and typing away. Mac OS X seems to know this and when other applications starts, they DO NOT steal focus away but instead will be rendered behind the current browser. Further, to inform me that my other applications has started and awaiting my attention, a hyperactive jumping icon of those apps will be dancing away on the dock.

On all variants of SUSE, the behaviour is different in that the next application that starts and is ready for user input will steal focus away from the first application. Using the same example above, as I'm surfing and typing away in Firefox, and the next application that starts is my mail client. It will appear on top of Firefox and asks for my password, thus focus is given to the mail client. While entering my password for the mail client, more often than not, the next (third) application starts and it steals focus away from my mail client while I'm still typing my password. As you can imagine, or even have experienced this yourselves, this can be rather frustrating... not to mention half of your password now appears as plaintext in another application. xpasti

Would appreciate anyone out there reading this point me in the right direction and some answers. Thank you. senyum


  1. Well, what can I say :D Use a different, more configurable window manager. I bet there are some which are configurable enough.

  2. I would even say that you're using a horrible windowmanager if it does this. It's rather stupid... But it is configurable. Go to your window manager settings (either via SystemSettings or rmb on window decoration and choose "configure window behaviour"; then choose "Focus" and set your focus stealing prevention to either medium or high.

    Some applications are quite braindead in what they ask of the windowmanager which is why it has these levels. Usually,medium does quite well but in some cases you need 'high'. Extreme never lets a window take focus, even if you just started it yourself.

    Have fun :D

    (the windowmanager I talk about is KWin but I guess other windowmanagers have these options too. If not, switch windowmanager, you're not tied to your WM - I've used Metacity in KDE for a while and KWin works fine in GNOME ;-)

  3. @13thSlayer and @jospoortvliet,

    Thank you. :) I will look into my WM and see if I can tweak it. Glad to know this can be achieved so easily.

    @jospoortvliet, I hope you're doing well and got enough rest. I've been following your posts on Surprised you managed to read and answer me inspite of your busy schedule post-openSUSE Conference, your unread 1000 emails and answering that American media about introspection. :)