Doug, thanks for your response but how on earth can you get such a simple
thing so wrong?
U/I is almost never "such a simple thing"
Interfaces between hardware and applications go through many, many
layers of the operating system. When designing an application, one calls
OS routines to get and send bits.
The specification for how to do this is provided by the OS provider.
Obviously, calls to those routines worked fine with Panther and Tiger.
Something broke in Leopard. Among the possible reasons:
1) Microsoft originally implemented the wrong OS X routines, which
fortuitously happened to work in Panther and Tiger, but Leopard changed
something that made them fail.
2) Microsoft implemented the right OS X routines, and in the development
of Leopard, Apple changed the specifications for those routines and (a)
they didn't tell anyone, or (b) MS missed the change.
3) Microsoft called the right OS X routines, Apple didn't change the
specifications, but screwed up the implementation in Leopard.
4) Some combination of the above.
5) Something else entirely was introduced with Leopard.
6) Gremlins...