--- a/src/maple/mouse.c Sat Jan 26 03:44:22 2008 +0000 +++ b/src/maple/mouse.c Fri Mar 28 12:32:25 2008 +0000 @@ -85,18 +85,18 @@ void mouse_input_callback( void *mdev, uint32_t buttons, int32_t x, int32_t y ) { mouse_device_t dev = (mouse_device_t)mdev; - dev->buttons = 0; + dev->buttons = 0xFF; if( buttons & 0x01 ) { - dev->buttons |= BUTTON_LEFT; + dev->buttons &= ~BUTTON_LEFT; } if( buttons & 0x02 ) { - dev->buttons |= BUTTON_MIDDLE; + dev->buttons &= ~BUTTON_MIDDLE; } if( buttons & 0x04 ) { - dev->buttons |= BUTTON_RIGHT; + dev->buttons &= ~BUTTON_RIGHT; } if( buttons & 0x08 ) { - dev->buttons |= BUTTON_THUMB; + dev->buttons &= ~BUTTON_THUMB; } dev->axis[0] += x; dev->axis[1] += y;