am e832fd44: am 66964ca7: am fa833f46: Merge "Correctly set search string when entering search" into lmp-mr1-dev

* commit 'e832fd441925078cea7de124b9f2de957a17d7ff':
  Correctly set search string when entering search
diff --git a/src/com/android/contacts/activities/ActionBarAdapter.java b/src/com/android/contacts/activities/ActionBarAdapter.java
index 6a5c1cb..634f9ad 100644
--- a/src/com/android/contacts/activities/ActionBarAdapter.java
+++ b/src/com/android/contacts/activities/ActionBarAdapter.java
@@ -143,7 +143,7 @@
                 new OnClickListener() {
             @Override
             public void onClick(View v) {
-                mSearchView.setText(null);
+                setQueryString(null);
             }
         });
         mSearchContainer.findViewById(R.id.search_back_button).setOnClickListener(
@@ -254,9 +254,8 @@
             }
             if (mSearchMode) {
                 setFocusOnSearchView();
-            } else {
-                mSearchView.setText(null);
             }
+            setQueryString(null);
         } else if (flag) {
             // Everything is already set up. Still make sure the keyboard is up
             if (mSearchView != null) setFocusOnSearchView();
@@ -271,6 +270,10 @@
         mQueryString = query;
         if (mSearchView != null) {
             mSearchView.setText(query);
+            // When programmatically entering text into the search view, the most reasonable
+            // place for the cursor is after all the text.
+            mSearchView.setSelection(mSearchView.getText() == null ?
+                    0 : mSearchView.getText().length());
         }
     }
 
diff --git a/src/com/android/contacts/activities/PeopleActivity.java b/src/com/android/contacts/activities/PeopleActivity.java
index ba77438..f7c2de2 100644
--- a/src/com/android/contacts/activities/PeopleActivity.java
+++ b/src/com/android/contacts/activities/PeopleActivity.java
@@ -1188,8 +1188,8 @@
                         && !Character.isWhitespace(unicodeChar)) {
                     String query = new String(new int[]{ unicodeChar }, 0, 1);
                     if (!mActionBarAdapter.isSearchMode()) {
-                        mActionBarAdapter.setQueryString(query);
                         mActionBarAdapter.setSearchMode(true);
+                        mActionBarAdapter.setQueryString(query);
                         return true;
                     }
                 }