Fix voice search

Use BaseUI implementation of onStateChanged. This was regression
brought by navigation bar cleanup code with changed id
'Change-Id: Iecb699a3e5eb848db149705a9142f8f199f02c04'

Change-Id: I10c69b5d168e03ffb3fd9767bd17d5374e167d34
diff --git a/src/com/android/browser/ActivityController.java b/src/com/android/browser/ActivityController.java
index 817857a..d19eaac 100644
--- a/src/com/android/browser/ActivityController.java
+++ b/src/com/android/browser/ActivityController.java
@@ -21,6 +21,10 @@
 
     void handleNewIntent(Intent intent);
 
+    void onStart();
+
+    void onStop();
+
     void onResume();
 
     boolean onMenuOpened(int featureId, Menu menu);
diff --git a/src/com/android/browser/BrowserActivity.java b/src/com/android/browser/BrowserActivity.java
index b07cca5..af2fbfa 100644
--- a/src/com/android/browser/BrowserActivity.java
+++ b/src/com/android/browser/BrowserActivity.java
@@ -229,11 +229,11 @@
     }
 
     protected void handleOnResume() {
-        // Note: Intentionally left blank.
+        mController.onResume();
     }
 
     protected void handleOnStart() {
-        mController.onResume();
+        mController.onStart();
     }
 
     @Override
@@ -246,7 +246,7 @@
 
     protected void handleOnStop() {
         CookieManager.getInstance().flushCookieStore();
-        mController.onPause();
+        mController.onStop();
     }
 
     @Override
@@ -290,7 +290,7 @@
     }
 
     protected void handleOnPause() {
-        // Note: Intentionally left blank
+        mController.onPause();
     }
 
     @Override
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 8c88c7d..3be1ab9 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -238,6 +238,7 @@
     private boolean mExtendedMenuOpen;
 
     private boolean mActivityPaused = true;
+    private boolean mActivityStopped = true;
     private boolean mLoadStopped;
 
     private Handler mHandler;
@@ -730,24 +731,7 @@
             return;
         }
         mActivityPaused = true;
-        Tab tab = mTabControl.getCurrentTab();
-        if (tab != null) {
-            tab.pause();
-            if (!pauseWebViewTimers(tab)) {
-                if (mWakeLock == null) {
-                    PowerManager pm = (PowerManager) mActivity
-                            .getSystemService(Context.POWER_SERVICE);
-                    mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Browser");
-                }
-                mWakeLock.acquire();
-                mHandler.sendMessageDelayed(mHandler
-                        .obtainMessage(RELEASE_WAKELOCK), WAKELOCK_TIMEOUT);
-            }
-        }
-        mUi.onPause();
-        mNetworkHandler.onPause();
-        NfcHandler.unregister(mActivity);
-        mActivity.unregisterReceiver(mLowPowerReceiver);
+
     }
 
     @Override
@@ -777,9 +761,56 @@
             Log.e(LOGTAG, "BrowserActivity is already resumed.");
             return;
         }
+        mActivityPaused = false;
+        if (mVoiceResult != null) {
+            mUi.onVoiceResult(mVoiceResult);
+            mVoiceResult = null;
+        }
+    }
+
+    private void releaseWakeLock() {
+        if (mWakeLock != null && mWakeLock.isHeld()) {
+            mHandler.removeMessages(RELEASE_WAKELOCK);
+            mWakeLock.release();
+        }
+    }
+
+    @Override
+    public void onStop() {
+        if (mActivityStopped) {
+            Log.e(LOGTAG, "BrowserActivity is already stoped.");
+            return;
+        }
+        mActivityStopped = true;
+        Tab tab = mTabControl.getCurrentTab();
+        if (tab != null) {
+            tab.pause();
+            if (!pauseWebViewTimers(tab)) {
+                if (mWakeLock == null) {
+                    PowerManager pm = (PowerManager) mActivity
+                            .getSystemService(Context.POWER_SERVICE);
+                    mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Browser");
+                }
+                mWakeLock.acquire();
+                mHandler.sendMessageDelayed(mHandler
+                        .obtainMessage(RELEASE_WAKELOCK), WAKELOCK_TIMEOUT);
+            }
+        }
+        mUi.onPause();
+        mNetworkHandler.onPause();
+        NfcHandler.unregister(mActivity);
+        mActivity.unregisterReceiver(mLowPowerReceiver);
+    }
+
+    @Override
+    public void onStart() {
+        if (!mActivityStopped) {
+            Log.e(LOGTAG, "BrowserActivity is already started.");
+            return;
+        }
+        mActivityStopped = false;
         UpdateNotificationService.updateCheck(mActivity);
         mSettings.setLastRunPaused(false);
-        mActivityPaused = false;
         Tab current = mTabControl.getCurrentTab();
         if (current != null) {
             current.resume();
@@ -790,20 +821,10 @@
         mUi.onResume();
         mNetworkHandler.onResume();
         NfcHandler.register(mActivity, this);
-        if (mVoiceResult != null) {
-            mUi.onVoiceResult(mVoiceResult);
-            mVoiceResult = null;
-        }
         if (current != null && current.getWebView().isShowingCrashView())
             current.getWebView().reload();
         mActivity.registerReceiver(mLowPowerReceiver, new IntentFilter(Intent.ACTION_BATTERY_LOW));
-    }
 
-    private void releaseWakeLock() {
-        if (mWakeLock != null && mWakeLock.isHeld()) {
-            mHandler.removeMessages(RELEASE_WAKELOCK);
-            mWakeLock.release();
-        }
     }
 
     /**
diff --git a/src/com/android/browser/NavigationBarPhone.java b/src/com/android/browser/NavigationBarPhone.java
index a94cabd..23df7fc 100644
--- a/src/com/android/browser/NavigationBarPhone.java
+++ b/src/com/android/browser/NavigationBarPhone.java
@@ -141,15 +141,8 @@
             mTabText.setVisibility(View.VISIBLE);
             break;
         case StateListener.STATE_HIGHLIGHTED:
-            if (!mUrlInput.getText().toString().equals(mUrlInput.getTag())) {
-                // only change text if different
-                mUrlInput.setText((String) mUrlInput.getTag(), false);
-                mUrlInput.selectAll();
-            }
-
             mTabSwitcher.setVisibility(View.GONE);
             mTabText.setVisibility(View.GONE);
-
             break;
         case StateListener.STATE_EDITED:
             mStopButton.setVisibility(View.GONE);
diff --git a/src/com/android/browser/stub/NullController.java b/src/com/android/browser/stub/NullController.java
index 1df77db..d513b7d 100644
--- a/src/com/android/browser/stub/NullController.java
+++ b/src/com/android/browser/stub/NullController.java
@@ -38,6 +38,14 @@
     }
 
     @Override
+    public void onStop() {
+    }
+
+    @Override
+    public void onStart() {
+    }
+
+    @Override
     public boolean onMenuOpened(int featureId, Menu menu) {
         return false;
     }