/** Keyboard shortcuts (tab management, paste) */ private boolean keyboardShortcuts(int keyCode, KeyEvent event) { if (event.getAction() != KeyEvent.ACTION_DOWN) { return false; } if (!mUseKeyboardShortcuts) { return false; } boolean isCtrlPressed = (event.getMetaState() & KeycodeConstants.META_CTRL_ON) != 0; boolean isShiftPressed = (event.getMetaState() & KeycodeConstants.META_SHIFT_ON) != 0; if (keyCode == KeycodeConstants.KEYCODE_TAB && isCtrlPressed) { if (isShiftPressed) { mViewFlipper.showPrevious(); } else { mViewFlipper.showNext(); } return true; } else if (keyCode == KeycodeConstants.KEYCODE_N && isCtrlPressed && isShiftPressed) { doCreateNewWindow(); return true; } else if (keyCode == KeycodeConstants.KEYCODE_V && isCtrlPressed && isShiftPressed) { doPaste(); return true; } else { return false; } }
private void doCloseWindow() { if (mTermSessions == null) { return; } EmulatorView view = getCurrentEmulatorView(); if (view == null) { return; } TermSession session = mTermSessions.remove(mViewFlipper.getDisplayedChild()); view.onPause(); session.finish(); mViewFlipper.removeView(view); if (mTermSessions.size() == 0) { mStopServiceOnFinish = true; finish(); } else { mViewFlipper.showNext(); } }