Merge "Set the url input to current page when cleared" into honeycomb-mr1
diff --git a/src/com/android/browser/TitleBarXLarge.java b/src/com/android/browser/TitleBarXLarge.java
index f53bc35..be5e90f 100644
--- a/src/com/android/browser/TitleBarXLarge.java
+++ b/src/com/android/browser/TitleBarXLarge.java
@@ -278,6 +278,13 @@
             if (mUseQuickControls) {
                 mUi.hideTitleBar();
             }
+
+            if (mUrlInput.getText().length() == 0) {
+                Tab currentTab = mUiController.getTabControl().getCurrentTab();
+                if (currentTab != null) {
+                    mUrlInput.setText(currentTab.getUrl(), false);
+                }
+            }
         }
         mUrlInput.clearNeedsUpdate();
     }
diff --git a/src/com/android/browser/autocomplete/SuggestiveAutoCompleteTextView.java b/src/com/android/browser/autocomplete/SuggestiveAutoCompleteTextView.java
index 07c88e8..e51a629 100644
--- a/src/com/android/browser/autocomplete/SuggestiveAutoCompleteTextView.java
+++ b/src/com/android/browser/autocomplete/SuggestiveAutoCompleteTextView.java
@@ -791,7 +791,21 @@
             setText(text);
         } else {
             mBlockCompletion = true;
+            // If cursor movement handling was suspended (the view is
+            // not in focus), resume it and apply the pending change.
+            // Since we don't want to perform any filtering, this change
+            // is safe.
+            boolean wasSuspended = false;
+            if (mController.isCursorHandlingSuspended()) {
+                mController.resumeCursorMovementHandlingAndApplyChanges();
+                wasSuspended = true;
+            }
+
             setText(text);
+
+            if (wasSuspended) {
+                mController.suspendCursorMovementHandling();
+            }
             mBlockCompletion = false;
         }
     }