Is There a Solution for Focus-Hungry Apps?
V.Toulias asks: "Over the past few years, I have seen a rise in the percentage of applications installed in my Windows box that do not ask nicely for my attention but force themselves into view when they think they have something important to tell me. Mail clients that pop-up into view when a new email is sent or received, instant messengers that pop up when a new message arrives, browser pop-ups that... pop-up even though the page is loading in a 'background window', informational OS messages, It-seems-that-you're-writing-a-letter app helpers, security warnings and the list goes on. It doesn't take a science study to realize the adverse effects that this phenomenon is causing on your productivity and concentration. So, apart from the obvious suggestion of switching OS, is there any other solution to this disturbing trend?"
Most applications allow you to disable many of the pop-up stuff that you're talking about right in the options menu. Outlook has it for new email. MSN I believe has this feature (I use Trillian, but Windows Messenger has that option). I've never had Firefox pop up trying to steal attention...except for update I believe. Windows security warnings can all be disabled through the control panel. You can disable Clippy. Just look through the options menu. It's there, somewhere. If there isn't an option anywhere to disable it...google that specific app. There's probably a registry key you can mess with.
Go to the microsoft website and download the power toys, I believe the program is called Tweak UI. Here you can adjust focus settings and get rid of that stupid yellow balloon that keeps popping up.
Obviously!
If you have a Linux box either with X or without to connect to, then do it (install X on the Windows box first, if necessary). X programs tend to work much nicer.
Or, just don't use X at all. Install a program like screen to manage terminal applications, and then use them instead.
You can also install Cygwin and use it. There are replacements for nearly everything.
mutt/pine for email
lynx/w3m for web
emacs/vim for editing
etc.
Much nicer and faster, in my opinion.
The single most annoying thing to me as far as GUIs on any system is when I'm trying to type or click something and some self-important GUI app steals my focus and pops up on top of what I'm working on. I'd be happy with a GUI system that would let me replace SetFocus (or whatever they call the equivalent) with a big fat no-op.
The second thing I'd like to do is disable those stupid XP security warnings the poster talks about.
So far, I haven't been able to find a way to do either.
What really got me lately was playing older apps, in this case Lucasart's Star Wars: Rogue Squadron, that can't recover from a minimise to desktop (eg, you can't click back onto them and resume gameplay). I'd be midway through assaulting the Imperal Construction Yards when Windows Update would popup, stealing focus to tell me to restart. 20 minutes later, same story. Man, if Microsoft existed during the Rebellion, we'd all be under the thumb of the Empire.
Use two monitors, and do your real work on the secondary screen.
I assume you're talking about Windows. This happens on the Mac to some extent, usually when launching apps - eg when I launch Mail then switch back to the app I was using, of course, new windows in Mail throw themselves on the top. This was not a problem in classic Mac OS which enforced application level window layers, which - to be perfectly honest - I prefer for this very reason.
But I've found two monitors do the trick.
must... stay... awake...
part from the obvious suggestion of switching OS, is there any other solution to this disturbing trend?
Just think how much nicer life would be without a computer.
1. No pesky RIAA lawsuits.
2. No broadband bill.
3. No losing your life savings to pesky phishers.
4. No worrying about hackers stealing you megahertz.
and yes,
No annoying pop-ups.
For years I refused to switch from ICQ to IM just because of this abhorrent behavior (that, and how it inserted shortcuts in 10 or 15 different places). Eventually, all my friends migrated to IM and I didn't have much of a choice. To this day, the forced popup windows bug the hell out of me, but I can get around it with 3rd party clients.
Use OSS software and take out all the popup features.
That said, I don't have that problem except for the occasional webpage that forces a new browser window in a way that adblock, noscript and Firefox can't stop (don't ask, I don't know). Everything on my Linux box stays nicely hidden except when I need it!
I drink to make other people interesting!
http://www.asktog.com/Bughouse/10MostWantedDesignB ugs.html
This isn't a matter of "correct" or "incorrect." It's a matter of personal preference. That it requires you to download a tool that doesn't come with the OS to configure the OS's built-in GUI behavior is sheer lunacy. Microsoft doesn't even do a lot to mention TweakUI so most people don't even know it exists. For all the crap that Microsoft does bundle into the OS ditro, you'd think they'd actually put something useful like TweakUI into the mix for you.
I understand that you wanted solutions that don't involve switching your OS, but why not entertain some of those, as well? It must not be quite annoying enough to you yet if you won't consider the one move that could probably fix the problem. On Mac OS X it is just about impossible to have this problem. I can't recall a single app off the top of my head that has ever stolen the focus from me since I switched platforms a couple years ago. (that doesn't mean it hasn't happened - but at the least it is so rare that I can't think of an incident right now)
Hexy - a strategy game for iPhone/iPod Touch
This isn't just a cop-out answer; I'm quite serious. You are essentially complaining about lack of control over what your software does. Well, take control of it!
The one that bugs me the most is when an application errors during launch and the error window is tucked away behind the stalled splashscreen window-that-isn't-really-a-window. Depending on the app and depending on what type of error it is, you can sometimes alt-tab to the error message (cos it sometimes doesn't get an icon in the taskbar) or you usually just have to kill it in the task manager. Ugh!
This guy's the limit!
In FVWM you can apply "GrabFocusOff" style to those nasty apps. Then you don't have to worry. I did this with gaim so if it wanted to popup a disconnect or new im window it wouldn't steal my focus.
Use one monitor, and use a window managing system that allows virtual desktops (I like Windowmaker, personally). Then tell your window manager to keep new windows in the same desktop as their parent, and notify you of their existence via the appropriate mechanism (system tray, zenity-like translucent no-focus popup, scrolling OSD, etc.)
Focus stealing is one of the reasons I find the Windows GUI essentially unusable.
All's true that is mistrusted
firefox 1.5 shows those "cannot find server" messages in the tab that's trying to load the page (a huge improvement)
gaim opens new IM conversations in a new tab
clippy is not a feature of open office (although the little lightbulb clipart popup thing is both ugly and a little annoying)
outlook just puts a little letter icon next to my clock when i get an email
You can disable the security warnings in Windows XP without using TweakUI/PowerToys.
This applies to Service Pack 2, I believe:
In Control Panel -> Security Center, in the left-hand panel labeled "Resources", click the option labeled "Change the way Security Center alerts me". In the dialog box that opens, uncheck all the options.
'Q' is for Dr. Tran
It's not just an annoyance, it's a bug. For example, when I'm executing a complex keyboard operation, and a dialog pops up and steals my focus, a bunch of work may have been destroyed. It's a security issue as well. When I'm filling in a password (or having one filled in for me by automation), and an instant messenger suddenly pops up, taking those keystrokes, its a sordid tale of woe. No alert should ever take focus unless it's of the "core meltdown, imminent mass casualties" variety.
One could write an app which monitors keystrokes and tracks focus, which calculates focus independently of the window manager, and detects any discrepancies, and corrects them as soon as possible, but it will still leak events sometimes, inevitably, unless it acts as a translation filter and checks at every event for correct focus.
-I like my women like I like my tea: green-
I hate it when they have something important to say (quite rare) and then they dissappear. Then I have to go into the event log and see what it said.
If my mother were able to dink around with settings easily I'd have to change my number instead of firing up my "straight windows" box and telling her exactly what to do.
Man, you really need that seminar!
This seems to be the perfect place to ask this question: OS X is generally pretty good about this, but there are some notable exceptions. For example, I use Barebones's Textwrangler in conjunction with the FTP client Transmit. Frequently, I'll be browsing a remote FTP listing through Transmit, wish to edit some text files, and double-click them. Then, I want to continue browsing the server, all while double-clicking more text files, while Textwrangler opens them silently in the background.
This, unfortunately, is not as easy to do as it should be. Textwrangler steals focus every time a new document opens. Is there any way to fix it? I'm willing to entertain anything short of a Haxie/Kernel Extension to fix this problem. It's also entirely possible that there's some preference in Textwrangler's horribly designed preferences dialog that will fix this problem of which I'm just unaware (although I'd be surprised at that, since I've wanted to fix this for a very long time.)
concrete5: a cms made for marketing, but strong enough for geeks.
TweakUI's focus option is useful for preventing apps from stealing focus while you are in the middle of typing but there are times when TweakUI becomes a pain because it means you have to click to bring say a needed volume slider into focus. I recently discovered the AttachThreadInput function and now I use this to make certain controls steal the focus regardless of what TweakUI's settings are. This is the best of both worlds for a developer.
Argumentum ad Probabilitum
Focus stealing is a royal pain in the arse. Not only in the O/S but on web pages such as dictionary.com which likes to select the whole word youve half typed in to the box so that as you continue to type you wipe out the first half.
Anyhow a couple of points.
1. TweakUI does _not_ stop focus stealing. It tries to help but there are many apps and messages that slip through.
2. Swapping application is _not_ always viable. Either the alternative will cost a lot of cash or there is no open source equivalent that doesnt have the problem just as bad.
and a couple of opinions.
1. Focus stealing has _no_ purpose accept possibly to stress how utterly arrogant the developer was in thinking that his program is more important than what I am doing.
2. It _is_ an O/S issue. Im not so sure how bad it is with Linux and Mac's but Windows is a pain for it and it can cause serious problems. If your firewall or virus scanner gets an incorrect selection made because it pops up while your typing, thats a serious issue. It is no different to malicious emails and popups which MS try to stamp out. It wouldnt be hard for them to stop focus stealing altogether or even better have an option like in TweakUI only one that actually works fully.
Despite a lot of people being a little on the self superior side about this, as if your an idiot for having the problem. I dont believe there is currently any satisfactory way to stop it. Even if the suggestions ive read did work changing apps, changing O/S, using TweakUI etc etc. Non of it should be necessary. A little tick box should suffice.
(Maybe I have selective memory but I am fairly sure this problem is getting increasingly prevelant. I dont remeber much about Win9x doing it, I remember 2k doing it very infrequently. People really shouldnt have to put up with it at all.)
"Prevent applications from stealing focus" check box
(taskbar icon will flash instead)
Download TweakUI (from MSN somewhere - google for it)
Under "General", select "Focus" in the menu-tree, top of screen is the above checkbox.
You can also get X-windows style focus and heaps of other cutomizations.
What about set the window you are working to be 'allways on top'?
There are some free keyboard shortcut utilities for windows around that let you assign a hotkey to toggle ontopness of the current window.
clap!
clap!
clap!
clap!
... using Windows a little as possible. I found the incessant interruptions from windows popping up at odd times totally unacceptable for doing anything that required any degree of concentration (coding, sysadmin tasks, etc.). Even if I could disable the pop-ups for, say, "a new email has arrived" -- which always had me grumbling "BFD! Email isn't a paging service!" -- there were the third-party applications that insist on popping up some darned window imploring me to upgrade or something or other. Even worse than the applications, though, is the IM software that everyone seems to want to have running all the time. Like phone calls, walk-ups, and your neighbor's phone calls are distractions enough.
I found a 2-port KVM and a Linux box on my desk to be the best solution to unwanted software interruptions. I can switch to The Beast a few times a day to do the things that absolutely must be done using that atrocity and spend the remainder of the time getting some real work done. Worth a try if you can swing it.
Fortunately for me, my work is 90+% UNIX-related and much of it cannot be easily done without odd software packages that the desktop support people wouldn't be able to support. (For those folks, Reflection X is considered an oddball app.) They're actually glad not to have me bugging them about those tools and I'm glad to not have to worry about the darned things getting clobbered by service packs, AV software, or the periodic reimaging that always seems to be necessary on a typical corporate PC.
CUR ALLOC 20195.....5804M
In Mac OS X, well-behaved apps show that they need your attention by bouncing the Dock icon a few times (even if the dock is hidden, the icon pops up a few dozen pixels from the bottom of the screen) and, depending on the app, might make an error sound. Poorly behaved apps steal focus and annoy you, but those are easy enough to delete (just drag them to the trash can) and replace with something better. It's one of the small features of Mac OS X that makes me hate using Windows, because everything keeps trying to interrupt me while I work. OS X does make you a spoiled brat.
...sure, we'll do that at work, just as soon as we can find a Lotus Notes implementation in Emacs (oh wait, the Emacs OS does groupware, doesn't it?).
Seriously, if you think for a minute any even semi-normal person is going to browse the web with Lynx, you're crazy. Nobody works out of a mainframe session anymore; nobody has login access solely on beefy Unix boxes. 95% of the world uses Windows; some 80% or so use IE. The reality is that except for a very few exceptions, the world moved beyond the life led at a command-prompt and a no-mouse text UI for day-to-day purposes. Backwards-compatibility with old mainframes, sure -- but most office workers, to say nothing of consumers, do not operate out of mainframe terminals.
Join us next time in reality when you've been tossed a nickel and bought yourself a better computer. ("Better", meaning, better than a P90 recovered from the dumpster at a student's dormitory 7 years ago, now running Linux.)
Is Capitalism Good for the Poor?
This is why I like Linux & also other OSS. None of that shit. Not to mention that nothing forces you to upgrade to a newer version. Nothing has disabled features only available in the Pro version, and of course the application notifies you of this at every turn. Etc.
> On Mac OS X it is just about impossible to have this problem.
> I can't recall a single app off the top of my head that has ever stolen the focus from me since
> I switched platforms a couple years ago.
I was going crazy with iTunes popping up every time I put in a CD. I'd be typing along happily and iTunes would jump to the front and steal the focus.
It turns out the problem is in System Preferences. Go to "CDs & DVDs" and change "when you insert a music CD" to "ignore" instead of "open iTunes."
I complained to Apple about this, and told them that even though i'm glad you can turn it off, it's a BIG violation of the Human Interface Guidelines, and the software never should have gone out the door with this "feature" enabled.
Dude... it was a bloody joke.
My apologies. This is /. -- I've actually seen people post such things and *mean it*...
(And admittedly, I myself was once not far from the "all command-line, all the time" camp, using Firefox as about the only GUI app I ran on my Linux desktop for a while. So when I see these sorts of posts, I can't help but laugh...)
Is Capitalism Good for the Poor?
No, no, quite alright. Looking over my post, I can see where one could make a mistake.
No, but seriously, although switching to the all terminal-based world is insane, there is still quite a lot of potential in it (at least in my opinion). Sure, using lynx as your normal browser may not be the best idea, but it works well when all you have is SSH from a Windows box over a small connection and you don't want to use IE. And I still use emacs (text-based).
Plus, there is that whole thing that it makes you look like a hax0r.
I also have a problem with apps stealing focus... not in Windows as you would expect, but in GNOME (distro is RHEL4).
Gaim steals focus.
KDE has the handy "Focus stealing prevention level" slider, that you can crank up to make popups less invasive. Unfortunately, GNOME does not have this. And, for various reasons, I need to use GNOME, not KDE.
I've played around with various settings, and the best I can find is to turn off alerts entirely in Gaim. This isn't the best solution, because it prevents me from easily seeing new messages, and it applies only to Gaim. Other apps also steal focus, and I'd love a more general solution.
Do newer versions of GNOME have something like KDE's "Focus stealing prevention level"?
Dr. Demento On The 'Net!
I agree. :-) I find myself writing Perl scripts all the time to do text processing that would be stupidly-difficult with almost any GUI app (unless messages are sent via the windowing system from one app to another and the messaging API to do so is dirt-simple and convenient, and even then, it doesn't compare to the simplicity of the cmd-line). Text-piping is a wonderful thing...
:-)
I'm currently using Firefox to type this, Thunderbird for email, XMMS for music, Gaim for IM, Kate for my coding -- and about a dozen terminals for VIM, SSH, running top on a remote host, running my code, etc...
I occasionally use lynx/links when I have no other option (e.g. I'm having problems getting XOrg configured on a box), but avoid it whenever possible...
Is Capitalism Good for the Poor?
Exactly.
I am also typing this in Firefox, and using Firefox to check my email in Gmail. I am using GNOME. Although there are few programs *currently* open, I often have terminals upon terminals of bashes open with emacsen running on top along with Perl and others.
I do not void lynx/links/w3m, I just feel no need to use them, except over SSH from a Windows box.