Add DeviceInput::NumButtons, to abstract button counts (so adding devices or buttons doesn't require changes to InputFilter). Use clamp() for m_AbsPosition_x and m_AbsPosition_y.