Fix Tab switching when starting a Download

When a Download URL opens in a new Tab,
the browser attempts to start the Download
and close the Tab. The methods used to do this
were buggy, leaving the visible tab in a broken
state.

Change-Id: I3eb0e9ca0992bfec48de2f58f5aa2895018cdd88
diff --git a/src/com/android/browser/BaseUi.java b/src/com/android/browser/BaseUi.java
index 1083576..5934fe1 100644
--- a/src/com/android/browser/BaseUi.java
+++ b/src/com/android/browser/BaseUi.java
@@ -413,10 +413,7 @@
 
     @Override
     public void removeTab(Tab tab) {
-        if (mActiveTab == tab) {
-            removeTabFromContentView(tab);
-            mActiveTab = null;
-        }
+        removeTabFromContentView(tab);
     }
 
     @Override
diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 946e456..e71bc27 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -2986,6 +2986,7 @@
         }
 
         if (change_tabs) {
+            setActiveTab(tab);
             synchronized (mThumbnailCbList) {
                 startCaptureTimer();
                 mLatestCreatedTab = tab;
@@ -2994,7 +2995,6 @@
                     public void onReceiveValue(Bitmap bitmap) {
                         synchronized (mThumbnailCbList) {
                             if (mLatestCreatedTab != null) {
-                                setActiveTab(mLatestCreatedTab);
                                 mLatestCreatedTab = null;
                             }
                             stopCaptureTimer();
diff --git a/src/com/android/browser/NavigationBarBase.java b/src/com/android/browser/NavigationBarBase.java
index 5a39678..690b007 100644
--- a/src/com/android/browser/NavigationBarBase.java
+++ b/src/com/android/browser/NavigationBarBase.java
@@ -350,11 +350,13 @@
     @Override
     public void onClick(View v) {
         Tab currentTab = mUiController.getCurrentTab();
-        WebView wv = currentTab.getWebView();
         String url = null;
-        if (currentTab != null){
+        WebView wv = null;
+        if (currentTab != null) {
+            wv = currentTab.getWebView();
             url = currentTab.getUrl();
         }
+
         if (mMore == v) {
             showMenu(mMore);
         } else if (mFaviconTile == v) {