Windows and Windows Mobile OS Message Boxes tend to have the same issues by only "eating" the first half of a m- They will take the keydown, but leave the keyup, so if your application processes keyup (Bad since you don't get repeat rates) then it will send keys to the window below. You'd think OS designers would figure this stuff out by now. I think the problem is there are too many Developers starting out in .Net/Java only and don't have the foundation in the older stuff and history to know how things work and why.