Why could a particular text field/search bar fail to trigger search when sending the Search or Enter keycodes?
- On the Android Keyboard, is the Search key the Enter key with a metastate? Or is it a completely different key?
 - What is the metastate of the Search Key? Or is it its own keycode?
 - Does the Android key code 
KEYCODE_ENTERpress the search key? Or doesKEYCODE_SEARCH? 
I had the same problem as this fellow and came up with a fix (below): Unable to click the Search(magnifying glass) button in Android keyboard using Appium/Selenium/Java.
While my question is related, the question I have is what is the metastate of the Search Key on the Android Keyboard, and why doesn't KEYCODE_ENTER work? Why doesn't KEYCODE_SEARCH work? I care less about how to fix it and more about why this is happening (so that I can fix it myself).
I'm trying to interact with an application via adb using the command line/appium:
adb shell input keyevent KEYCODE_ENTERadb shell input keyevent KEYCODE_SEARCH
Example
Take the google search bar widget for example. What exactly is happening to the enter key to make it into a magnifying glass? I am a black box tester, so I don't get access to the code I'm working with.
Follow these steps to see what I'm talking about:
- Tap on the Google Search Bar to focus on the field and bring up the soft keyboard.
 - Notice that the Google Search Bar changes the keyboard to display the enter key as a magnifying glass.
 - Input the text "birds" (don't hit enter yet).
 - In command line, run 
adb shell input keyevent KEYCODE_SEARCH - Observe that nothing happens. This is not the behavior we want.
 - In command line, run 
adb shell input keyevent KEYCODE_ENTER - Observe that we see behavior we want, the search progresses.
 
So if we have a case of a text field with a Magnifying Glass Enter Key which doesn't progress when the user sends KEYCODE_ENTER, does that mean that there isn't a KeyEventListener for KEYCODE_ENTER on that text field like the Google Search bar must have?
How to Fix?
The fix I came up with (but is not yet tested because I do not have access to code) is that the text field in focus needs to have a KeyEventListener for KEYCODE_ENTER. Is a KeyEventListener the reason why KEYCODE_ENTER may not work? Or should it be listening for KEYCODE_SEARCH?
This question helps confirm my fix theory: detect keyboard search button
Please see the following images for the keys that I'm talking about.
