Fix #1. Добавлена поддержка клавиатуры и джойстика
This commit is contained in:
parent
6527e7d6bf
commit
a42c232130
@ -39,6 +39,13 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
|
||||
public static final String EXTRA_SAVE = "save";
|
||||
private static final String STATE_SAVEINFO = "saveinfo";
|
||||
|
||||
private static final int
|
||||
ITEM_PREV_SCENE = 0,
|
||||
ITEM_NEXT_SCENE = 1,
|
||||
ITEM_NAVIGATE = 2,
|
||||
ITEM_SAVE = 3,
|
||||
ITEM_LOAD = 4;
|
||||
|
||||
private static final FadeInfo NO_FADE = new FadeInfo(false, false, 0);
|
||||
private static ViewActivity instance;
|
||||
|
||||
@ -189,8 +196,44 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
|
||||
}
|
||||
|
||||
public boolean onKeyUp(int keyCode, KeyEvent event) {
|
||||
if (keyCode == KeyEvent.KEYCODE_MENU) {
|
||||
Dialogs.with(this).showMenu(R.array.menu_items, menu);
|
||||
if (event.getRepeatCount() != 0) {
|
||||
return super.onKeyUp(keyCode, event);
|
||||
}
|
||||
switch (keyCode) {
|
||||
case KeyEvent.KEYCODE_SPACE:
|
||||
case KeyEvent.KEYCODE_BUTTON_A:
|
||||
// Далее
|
||||
onTouchGesture(TouchGestureType.SINGLE_TAP);
|
||||
return true;
|
||||
case KeyEvent.KEYCODE_MENU:
|
||||
case KeyEvent.KEYCODE_ENTER:
|
||||
case KeyEvent.KEYCODE_BUTTON_START:
|
||||
// Меню
|
||||
onTouchGesture(TouchGestureType.SWIPE);
|
||||
return true;
|
||||
|
||||
case KeyEvent.KEYCODE_Q:
|
||||
case KeyEvent.KEYCODE_BUTTON_SELECT:
|
||||
// Меню выхода
|
||||
onBackPressed();
|
||||
return true;
|
||||
|
||||
case KeyEvent.KEYCODE_BUTTON_R1:
|
||||
case KeyEvent.KEYCODE_S:
|
||||
onMenuItemSelected(ITEM_SAVE);
|
||||
return true;
|
||||
|
||||
case KeyEvent.KEYCODE_BUTTON_L1:
|
||||
case KeyEvent.KEYCODE_L:
|
||||
onMenuItemSelected(ITEM_LOAD);
|
||||
return true;
|
||||
|
||||
case KeyEvent.KEYCODE_BUTTON_B:
|
||||
onMenuItemSelected(ITEM_NAVIGATE);
|
||||
return true;
|
||||
|
||||
case KeyEvent.KEYCODE_BUTTON_X:
|
||||
onMenuItemSelected(ITEM_PREV_SCENE);
|
||||
return true;
|
||||
}
|
||||
return super.onKeyUp(keyCode, event);
|
||||
@ -198,19 +241,19 @@ public final class ViewActivity extends Activity implements TouchGesture.OnTouch
|
||||
|
||||
private void onMenuItemSelected(int item) {
|
||||
switch (item) {
|
||||
case 0:
|
||||
case ITEM_PREV_SCENE:
|
||||
Parser.getInstance().prevScene();
|
||||
break;
|
||||
case 1:
|
||||
case ITEM_NEXT_SCENE:
|
||||
Parser.getInstance().nextScene();
|
||||
break;
|
||||
case 2:
|
||||
case ITEM_NAVIGATE:
|
||||
Dialogs.with(getInstance()).showNavigate();
|
||||
break;
|
||||
case 3:
|
||||
case ITEM_SAVE:
|
||||
saveState();
|
||||
break;
|
||||
case 4:
|
||||
case ITEM_LOAD:
|
||||
showLoadStateDialog();
|
||||
break;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user