android.view.KeyEvent#KEYCODE_ALT_RIGHT源码实例Demo

下面列出了android.view.KeyEvent#KEYCODE_ALT_RIGHT 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。


/**
 * Handles presses of the meta keys.
 */
public boolean onKeyDown(View view, Editable content, int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_SHIFT_LEFT || keyCode == KeyEvent.KEYCODE_SHIFT_RIGHT) {
        press(content, CAP);
        return true;
    }

    if (keyCode == KeyEvent.KEYCODE_ALT_LEFT || keyCode == KeyEvent.KEYCODE_ALT_RIGHT
            || keyCode == KeyEvent.KEYCODE_NUM) {
        press(content, ALT);
        return true;
    }

    if (keyCode == KeyEvent.KEYCODE_SYM) {
        press(content, SYM);
        return true;
    }

    return false; // no super to call through to
}
 

/**
 * Handles release of the meta keys.
 */
public boolean onKeyUp(View view, Editable content, int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_SHIFT_LEFT || keyCode == KeyEvent.KEYCODE_SHIFT_RIGHT) {
        release(content, CAP, event);
        return true;
    }

    if (keyCode == KeyEvent.KEYCODE_ALT_LEFT || keyCode == KeyEvent.KEYCODE_ALT_RIGHT
            || keyCode == KeyEvent.KEYCODE_NUM) {
        release(content, ALT, event);
        return true;
    }

    if (keyCode == KeyEvent.KEYCODE_SYM) {
        release(content, SYM, event);
        return true;
    }

    return false; // no super to call through to
}
 

/**
 * Handles presses of the meta keys.
 */
public static long handleKeyDown(long state, int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_SHIFT_LEFT || keyCode == KeyEvent.KEYCODE_SHIFT_RIGHT) {
        return press(state, META_SHIFT_ON, META_SHIFT_MASK,
                META_CAP_LOCKED, META_CAP_PRESSED, META_CAP_RELEASED, META_CAP_USED);
    }

    if (keyCode == KeyEvent.KEYCODE_ALT_LEFT || keyCode == KeyEvent.KEYCODE_ALT_RIGHT
            || keyCode == KeyEvent.KEYCODE_NUM) {
        return press(state, META_ALT_ON, META_ALT_MASK,
                META_ALT_LOCKED, META_ALT_PRESSED, META_ALT_RELEASED, META_ALT_USED);
    }

    if (keyCode == KeyEvent.KEYCODE_SYM) {
        return press(state, META_SYM_ON, META_SYM_MASK,
                META_SYM_LOCKED, META_SYM_PRESSED, META_SYM_RELEASED, META_SYM_USED);
    }
    return state;
}
 

/**
 * Handles release of the meta keys.
 */
public static long handleKeyUp(long state, int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_SHIFT_LEFT || keyCode == KeyEvent.KEYCODE_SHIFT_RIGHT) {
        return release(state, META_SHIFT_ON, META_SHIFT_MASK,
                META_CAP_PRESSED, META_CAP_RELEASED, META_CAP_USED, event);
    }

    if (keyCode == KeyEvent.KEYCODE_ALT_LEFT || keyCode == KeyEvent.KEYCODE_ALT_RIGHT
            || keyCode == KeyEvent.KEYCODE_NUM) {
        return release(state, META_ALT_ON, META_ALT_MASK,
                META_ALT_PRESSED, META_ALT_RELEASED, META_ALT_USED, event);
    }

    if (keyCode == KeyEvent.KEYCODE_SYM) {
        return release(state, META_SYM_ON, META_SYM_MASK,
                META_SYM_PRESSED, META_SYM_RELEASED, META_SYM_USED, event);
    }
    return state;
}
 
源代码5 项目: talkback   文件: KeyComboModelApp.java

@Override
public boolean isEligibleKeyComboCode(long keyComboCode) {
  if (keyComboCode == KEY_COMBO_CODE_UNASSIGNED) {
    return true;
  }

  int modifier = KeyComboManager.getModifier(keyComboCode);
  if ((modifier & REQUIRED_MODIFIER_MASK) == 0
      || (modifier | ELIGIBLE_MODIFIER_MASK) != ELIGIBLE_MODIFIER_MASK) {
    return false;
  }

  int keyCode = KeyComboManager.getKeyCode(keyComboCode);
  return keyCode != 0
      && keyCode != KeyEvent.KEYCODE_SHIFT_LEFT
      && keyCode != KeyEvent.KEYCODE_SHIFT_RIGHT
      && keyCode != KeyEvent.KEYCODE_ALT_LEFT
      && keyCode != KeyEvent.KEYCODE_ALT_RIGHT
      && keyCode != KeyEvent.KEYCODE_CTRL_LEFT
      && keyCode != KeyEvent.KEYCODE_CTRL_RIGHT;
}
 

@Override
public boolean onKey(View v, int keyCode, KeyEvent event) {
	if (event.getAction() == KeyEvent.ACTION_DOWN)
		return false;
	if (keyCode == KeyEvent.KEYCODE_ALT_LEFT
			|| keyCode == KeyEvent.KEYCODE_ALT_RIGHT
			|| keyCode == KeyEvent.KEYCODE_SHIFT_LEFT
			|| keyCode == KeyEvent.KEYCODE_SHIFT_RIGHT)
		return false;

	if (keyCode == KeyEvent.KEYCODE_DEL
			&& this.getText().toString().length() == 0) {
		if (delegate != null) {
			delegate.focusOnPreviousField(this);
		}
	}
	return false;
}
 

@Override
public boolean sendKeyEvent(KeyEvent event) {
    int keyCode = event.getKeyCode();
    if (keyCode == KeyEvent.KEYCODE_SHIFT_LEFT || keyCode == KeyEvent.KEYCODE_SHIFT_RIGHT) {
        isShiftPressed = event.getAction() == KeyEvent.ACTION_DOWN;
    } else if (keyCode == KeyEvent.KEYCODE_ALT_LEFT || keyCode == KeyEvent.KEYCODE_ALT_RIGHT
            || keyCode == KeyEvent.KEYCODE_NUM) {
        isAltPressed = event.getAction() == KeyEvent.ACTION_DOWN;
    } else if (keyCode == KeyEvent.KEYCODE_SYM) {
        isSymPressed = event.getAction() == KeyEvent.ACTION_DOWN;
    } else if (keyCode == KeyEvent.KEYCODE_CTRL_LEFT || keyCode == KeyEvent.KEYCODE_CTRL_RIGHT) {
        isCtrlPressed = event.getAction() == KeyEvent.ACTION_DOWN;
    }
    return ic.sendKeyEvent(event);
}
 
源代码8 项目: Ansole   文件: EmulatorView.java

@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
    if (sTrapAltAndMeta) {
        boolean altEsc = mKeyListener.getAltSendsEsc();
        boolean altOn = (event.getMetaState() & KeyEvent.META_ALT_ON) != 0;
        boolean metaOn = (event.getMetaState() & KeyEvent.META_META_ON) != 0;
        boolean altPressed = (keyCode == KeyEvent.KEYCODE_ALT_LEFT)
                || (keyCode == KeyEvent.KEYCODE_ALT_RIGHT);
        boolean altActive = mKeyListener.isAltActive();
        if (altEsc && (altOn || altPressed || altActive || metaOn)) {
            if (event.getAction() == KeyEvent.ACTION_DOWN) {
                return onKeyDown(keyCode, event);
            } else {
                return onKeyUp(keyCode, event);
            }
        }
    }

    if (handleHardwareControlKey(keyCode, event)) {
        return true;
    }

    if (mKeyListener.isCtrlActive()) {
        if (event.getAction() == KeyEvent.ACTION_DOWN) {
            return onKeyDown(keyCode, event);
        } else {
            return onKeyUp(keyCode, event);
        }
    }

    return super.onKeyPreIme(keyCode, event);
}
 
源代码9 项目: Ansole   文件: TermKeyListener.java

/**
 * Handle a keyUp event.
 *
 * @param keyCode the keyCode of the keyUp event
 */
public void keyUp(int keyCode, KeyEvent event) {
    boolean allowToggle = isEventFromToggleDevice(event);
    switch (keyCode) {
    case KeyEvent.KEYCODE_ALT_LEFT:
    case KeyEvent.KEYCODE_ALT_RIGHT:
        if (allowToggle) {
            mAltKey.onRelease();
            updateCursorMode();
        }
        break;
    case KeyEvent.KEYCODE_SHIFT_LEFT:
    case KeyEvent.KEYCODE_SHIFT_RIGHT:
        if (allowToggle) {
            mCapKey.onRelease();
            updateCursorMode();
        }
        break;

    case KEYCODE_CTRL_LEFT:
    case KEYCODE_CTRL_RIGHT:
        // ignore control keys.
        break;

    default:
        // Ignore other keyUps
        break;
    }
}
 
 方法所在类
 同类方法