After talking to some really helpful people at freenode#ubuntu+1 I figured out what the problem is. They told me about this X.org input driver called "evdev". When I switched to this input driver the problems went away.
From what I know, it sounds to me like Ubuntu should switch to evdev input by default. A lot of people will just conclude that "linux sucks" instead of filing a bug report and then manually editing their xorg.conf to make stuff work.
After talking to some really helpful people at freenode#ubuntu+1 I figured out what the problem is. They told me about this X.org input driver called "evdev". When I switched to this input driver the problems went away.
From what I know, it sounds to me like Ubuntu should switch to evdev input by default. A lot of people will just conclude that "linux sucks" instead of filing a bug report and then manually editing their xorg.conf to make stuff work.