Lines Matching full:behavior

228     const Behavior* behavior = getKeyBehavior(keyCode, metaState);  in getCharacter()  local
229 if (behavior != nullptr) { in getCharacter()
230 result = behavior->character; in getCharacter()
244 const Behavior* behavior = getKeyBehavior(keyCode, metaState); in getFallbackAction() local
245 if (behavior != nullptr) { in getFallbackAction()
246 if (behavior->fallbackKeyCode) { in getFallbackAction()
247 outFallbackAction->keyCode = behavior->fallbackKeyCode; in getFallbackAction()
248 outFallbackAction->metaState = metaState & ~behavior->metaState; in getFallbackAction()
266 // Try to find the most general behavior that maps to this character. in getMatch()
267 // For example, the base key behavior will usually be last in the list. in getMatch()
268 // However, if we find a perfect meta state match for one behavior then use that one. in getMatch()
269 for (const Behavior& behavior : key->behaviors) { in getMatch() local
270 if (behavior.character) { in getMatch()
272 if (behavior.character == chars[i]) { in getMatch()
273 result = behavior.character; in getMatch()
274 if ((behavior.metaState & metaState) == behavior.metaState) { in getMatch()
384 const Behavior* behavior = getKeyBehavior(fromKeyCode, fromMetaState); in applyKeyBehavior() local
385 if (behavior != nullptr) { in applyKeyBehavior()
386 if (behavior->replacementKeyCode) { in applyKeyBehavior()
387 toKeyCode = behavior->replacementKeyCode; in applyKeyBehavior()
388 toMetaState = fromMetaState & ~behavior->metaState; in applyKeyBehavior()
390 if (behavior->metaState & AMETA_ALT_ON) { in applyKeyBehavior()
393 if (behavior->metaState & (AMETA_ALT_LEFT_ON | AMETA_ALT_RIGHT_ON)) { in applyKeyBehavior()
396 if (behavior->metaState & AMETA_CTRL_ON) { in applyKeyBehavior()
399 if (behavior->metaState & (AMETA_CTRL_LEFT_ON | AMETA_CTRL_RIGHT_ON)) { in applyKeyBehavior()
402 if (behavior->metaState & AMETA_SHIFT_ON) { in applyKeyBehavior()
405 if (behavior->metaState & (AMETA_SHIFT_LEFT_ON | AMETA_SHIFT_RIGHT_ON)) { in applyKeyBehavior()
429 const KeyCharacterMap::Behavior* KeyCharacterMap::getKeyBehavior(int32_t keyCode, in getKeyBehavior()
433 for (const Behavior& behavior : key->behaviors) { in getKeyBehavior() local
434 if (matchesMetaState(metaState, behavior.metaState)) { in getKeyBehavior()
435 return &behavior; in getKeyBehavior()
443 // Behavior must have at least the set of meta states specified. in matchesMetaState()
444 // And if the key event has CTRL, ALT or META then the behavior must exactly in matchesMetaState()
445 // match those, taking into account that a behavior can specify that it handles in matchesMetaState()
479 // Try to find the most general behavior that maps to this character. in findKey()
480 // For example, the base key behavior will usually be last in the list. in findKey()
481 const Behavior* found = nullptr; in findKey()
482 for (const Behavior& behavior : key.behaviors) { in findKey() local
483 if (behavior.character == ch) { in findKey()
484 found = &behavior; in findKey()
717 for (const Behavior& behavior : key.behaviors) { in writeToParcel() local
719 parcel->writeInt32(behavior.metaState); in writeToParcel()
720 parcel->writeInt32(behavior.character); in writeToParcel()
721 parcel->writeInt32(behavior.fallbackKeyCode); in writeToParcel()
722 parcel->writeInt32(behavior.replacementKeyCode); in writeToParcel()
993 // Parse behavior after the colon. in parseKeyProperty()
996 Behavior behavior; in parseKeyProperty() local
1020 behavior.character = character; in parseKeyProperty()
1041 ALOGE("%s: Invalid key code label for fallback behavior, got '%s'.", in parseKeyProperty()
1050 behavior.fallbackKeyCode = *keyCode; in parseKeyProperty()
1071 behavior.replacementKeyCode = *keyCode; in parseKeyProperty()
1075 ALOGE("%s: Expected a key behavior after ':'.", mTokenizer->getLocation().c_str()); in parseKeyProperty()
1083 // Add the behavior. in parseKeyProperty()
1091 key.label = behavior.character; in parseKeyProperty()
1101 key.number = behavior.character; in parseKeyProperty()
1107 for (const Behavior& b : key.behaviors) { in parseKeyProperty()
1109 ALOGE("%s: Duplicate key behavior for modifier.", in parseKeyProperty()
1114 Behavior newBehavior = behavior; in parseKeyProperty()
1134 for (const Behavior& b : key.behaviors) { in finishKey()