diff --git a/res/xml/searchable.xml b/res/xml/searchable.xml
index a78d531..3d6876e 100644
--- a/res/xml/searchable.xml
+++ b/res/xml/searchable.xml
@@ -26,12 +26,4 @@
     android:searchSuggestIntentData="content://com.android.contacts/contacts/lookup"
     android:searchSettingsDescription="@string/search_settings_description"
 >
-
-    <!-- allow green action key for search-bar and per-suggestion clicks -->
-    <actionkey
-        android:keycode="KEYCODE_CALL"
-        android:queryActionMsg="call"
-        android:suggestActionMsg="call"
-    />
-
 </searchable>
diff --git a/tests/res/values/donottranslate_strings.xml b/tests/res/values/donottranslate_strings.xml
index be6b5a7..dc8bf2f 100644
--- a/tests/res/values/donottranslate_strings.xml
+++ b/tests/res/values/donottranslate_strings.xml
@@ -52,10 +52,7 @@
         <item>ACTION_SEARCH: contact</item>
         <item>ACTION_SEARCH: email</item>
         <item>ACTION_SEARCH: phone</item>
-        <item>SEARCH_SUGGESTION_CLICKED (call button)</item>
         <item>SEARCH_SUGGESTION_CLICKED: contact</item>
-        <item>SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED</item>
-        <item>SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED</item>
         <item>TODO: JOIN_CONTACT</item>
 
         <!-- Edit Contact -->
diff --git a/tests/src/com/android/contacts/tests/allintents/AllIntentsActivity.java b/tests/src/com/android/contacts/tests/allintents/AllIntentsActivity.java
index 252fe24..519dc5c 100644
--- a/tests/src/com/android/contacts/tests/allintents/AllIntentsActivity.java
+++ b/tests/src/com/android/contacts/tests/allintents/AllIntentsActivity.java
@@ -96,10 +96,7 @@
         ACTION_SEARCH_CONTACT,
         ACTION_SEARCH_EMAIL,
         ACTION_SEARCH_PHONE,
-        SEARCH_SUGGESTION_CLICKED_CALL_BUTTON,
         SEARCH_SUGGESTION_CLICKED_CONTACT,
-        SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED,
-        SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED,
         JOIN_CONTACT,
         EDIT_CONTACT,
         EDIT_CONTACT_LOOKUP,
@@ -317,17 +314,6 @@
                 startSearchResultActivity(intent);
                 break;
             }
-            case SEARCH_SUGGESTION_CLICKED_CALL_BUTTON: {
-                long contactId = findArbitraryContactWithPhoneNumber();
-                if (contactId != -1) {
-                    Uri contactUri = ContentUris.withAppendedId(Contacts.CONTENT_URI, contactId);
-                    Intent intent = new Intent(Intents.SEARCH_SUGGESTION_CLICKED);
-                    intent.setData(contactUri);
-                    intent.putExtra(SearchManager.ACTION_MSG, "call");
-                    startContactListActivity(intent);
-                }
-                break;
-            }
             case SEARCH_SUGGESTION_CLICKED_CONTACT: {
                 long contactId = findArbitraryContactWithPhoneNumber();
                 if (contactId != -1) {
@@ -338,18 +324,6 @@
                 }
                 break;
             }
-            case SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED: {
-                Intent intent = new Intent(Intents.SEARCH_SUGGESTION_DIAL_NUMBER_CLICKED);
-                intent.setData(Uri.parse("tel:800-4664411"));
-                startContactListActivity(intent);
-                break;
-            }
-            case SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED: {
-                Intent intent = new Intent(Intents.SEARCH_SUGGESTION_CREATE_CONTACT_CLICKED);
-                intent.setData(Uri.parse("tel:800-4664411"));
-                startContactListActivity(intent);
-                break;
-            }
             case JOIN_CONTACT: {
                 // TODO
                 break;
