Subscribe to
NSLog(); Header Image

Erroneous Click-Throughs

Sometimes, in Mac OS X, I click or double-click in a window only to see a window behind the front window come forward. Sometimes I haven't even moved the mouse, and when I hide the app that's sprung forward, I find my mouse pointer easily surrounded by 100 pixels in each direction by the other application - the one I intended to click.

By "sometimes" I mean, of course, way too freakin' often!!! This happens all the time - at least ten times per day (granted, I use my computer a lot). I'm not sure whether it's my mouse software (USB Overdrive) or what, but I'm 100% certain that I'm clicking on the right thing, yet things behind the object of my clicks comes forward.

And no, the windows I'm trying to click aren't transparent or anything like that. They're regular old windows, fully opaque, etc. Andy (who should comment shortly) has seen this problem too.

20 Responses to "Erroneous Click-Throughs"

  1. I have to say, I've noticed this as well recently. I've been trying to narrow down the causes enough to file a bug report, but I haven't managed to figure out how to reproduce it reliably...

  2. Steps to reproduce:

    Click around a lot. Eventually it'll happen. If you're not sure, keep clicking. It'll happen again.Whine about bug on blog.Realize that unless someone at Apple knows how this might happen, it ain't gonna be fixed, cuz there's no way in heck to write up a bug report on it.

    Done. 😛

  3. I'm using USB Overdrive on 10.3.5, no problems here. I had that behavior some time ago in 10.2 or some developer preview, so it's probably just a bug that appears from time to time.

  4. Sometimes I see this when I'm clicking or dragging around the scrollbar on the right side of a window. For the dragging I always figured that I somehow changed pressure enough to stop my scrolling and then start a click in another window.

  5. Never seen this happen. No USB Overdrive here. (run kensington sw)

  6. No offense Clef, but I don't believe you. 🙂

  7. I've never seen it either. (no USB Overwhatever here though.). Can you re-create it enough to test to se if it happens without the the mouse software?

    Or are you keeping current on the OS updates? (weird little bugs seem to disappear often enough for me after an update or optimizing...). Are you maybe running a 3rd party videocard with crappy drivers? Outside of that, i dont know what to tell you. Maybe take a screenshot next time it happens…

  8. USB Overdrive is not required to see this bug. It happens on stock machines with no extra input drivers.

    I always have the latest software updates, and it's irrelevant: the problem has existed in nearly every version of Mac OS X. Everyone's using a third-party video card: there are no Apple ones. However, mine are stock - ATI and nVidia.

    A screenshot won't help at all.

  9. I've been experiencing this problem also, I've put it down to being overtired until now, but it's certainly happening, and a lot.

  10. I have noticed it on my Dual 2.0 but it seems most prevalent on my PowerBook and it seems to only happen when the window server is lagging because the machine is under heavy load, generally hard drive I/O.

    I have also seen it when connecting devices and mounting devices when you get the system lag. I can readily duplicate the problem when iPhoto launches after I plug in my digital camera. Clicking on the out of focus iPhoto window will bring the Finder to the fore or the last selected application.

    I have not seen it in my day to day usage of Xcode/Interface Builder where you would suppose that with lots of windows open, clicking would cause such an occurence.

  11. Yeah, that shit happens to me daily, too. Click a finder window and some app's window comes up front. So annoying.

  12. Maybe the event loop is out of order? I could imagine that the window manager's Nib drawing events are before the NSWindow or NSView events that would trip up when a mouse is sending a message to the window behind leading to another screen redraw. I guess that would be how it works cause you would need to draw the screen to lay out the views on top of it.

  13. Mac OS X apps don't really have event loops anymore. They're either Cocoa or they use Carbon Events (most of them anyway - a few laggards are left).

  14. I was lead to believe from reading Aaron Hillegass' book that Cocoa programs typically use event loops. I thought that would apply to the window manager of the OS as well. Guess I don't understand all the concepts yet. Makes me wish I never had to waste so much time in college reading about .Net and dumb SQA Basic. 🙁

  15. I've seen this too, about seven or eight times this year. I'm about 90% sure it's a bug in the window server. But I haven't reported the bug to Apple because there's no way to reproduce it, and also no way to be 100% sure it's happening (although now that so many other people claim to have seen it, I guess I'm not imagining it..)

    Hopefully someone at Apple who actually works on this stuff will notice it and decide to track down the problem.

  16. I've seen this on our iMac G5 with Apple's optical mouse, and solved it by getting a different mouse pad. The one that was causing the problem for me had a picture, company logo, and lines on it..

    The one I changed to was a plain jane one, no pictures, and it's working great for us now.

  17. OS X apps definitely have event loops (see NSRunLoop). It would be more accurate to say that Mac OS apps no longer have to WaitNextEvent (i.e. multitasking no longer depends on an individual app's cooperation). But that's an aside...

    I think part of the reason I never filed a bug on this is that I thought I might be the only one it happens to. Since there seem to be so many other people here experiencing the same problem, though, I'll go ahead and write it up.

  18. There's still an event loop, we usually just don't see it any more. Windows are NSResponders, which are by definition a fancy event loop.

  19. There are click lags with a standard apple one button optical mouse as well. I've always considered it an issue between Quartz Extreme, the OS and the apps at hand... an event loop is being interupted or anticipated.

    Most common occurance is in Pulp Fiction, if I am trying to read as feeds are being fetched, and the list is being scooted and sorted underneath the mouse click. The physical click has happened.. the link beneath the click may have stayed in place, but sometime later, as the screen is updating, another feed headline has actually been clicked, from all visual feedback at that point.

    Nearly as often, it is the tab columns in OmniWeb.

    It boils down to the hand being quicker than the mac.

  20. i know you already said that this isn't the case for you, but the only place i've seen it is in an older build of my (custom window, custom widget driven) WoW point calculator when i was rapidly clicking on my custom buttons. i changed the way it was drawing and the problem *mostly* went away, but still exists a little.. and only in that program... for me 😉;f=1;t=99

    (hmm.. now that WoW is shipping maybe i should wrap up that program...)