virtual gamepad refactoring
virtual button action: hold