final EnumMap<MouseButton, ButtonState> buttons = _lastState.getButtonStates();
setStateForButton(e, buttons, ButtonState.UP);
final MouseButton b = getButtonForEvent(e);
if (_clickArmed.contains(b) && (System.currentTimeMillis() - _lastClickTime.get(b) <= MouseState.CLICK_TIME_MS)) {
_clicks.add(b); // increment count of clicks for button b.
// XXX: Note the double event add... this prevents sticky click counts, but is it the best way?
addNewState(e, 0, buttons, EnumMultiset.create(_clicks));
} else {