use thumbnails in tab switcher

Change-Id: I0c7bda38c4c12448822f575f6fe0670f87b3eb7b
diff --git a/src/com/android/browser/PhoneUi.java b/src/com/android/browser/PhoneUi.java
index dd68e85..9c3c912 100644
--- a/src/com/android/browser/PhoneUi.java
+++ b/src/com/android/browser/PhoneUi.java
@@ -18,10 +18,12 @@
 
 import android.app.Activity;
 import android.content.Context;
+import android.graphics.Bitmap;
 import android.graphics.PixelFormat;
 import android.os.Handler;
 import android.util.Log;
 import android.view.ActionMode;
+import android.view.Display;
 import android.view.Gravity;
 import android.view.KeyEvent;
 import android.view.Menu;
@@ -117,6 +119,7 @@
 
     @Override
     public void setActiveTab(Tab tab) {
+        captureTab(mActiveTab);
         super.setActiveTab(tab);
         WebView view = tab.getWebView();
         // TabControl.setCurrentTab has been called before this,
@@ -134,6 +137,18 @@
         tab.getTopWindow().requestFocus();
     }
 
+    public void captureTab(final Tab tab) {
+        if (tab == null) return;
+        if (tab.getWebView() == null) return;
+
+        Display display = mActivity.getWindowManager().getDefaultDisplay();
+        float height = mActivity.getResources()
+                .getDimension(R.dimen.tab_view_thumbnail_height);
+        Bitmap sshot = Controller.createScreenshot(tab,
+                display.getWidth(), (int) height);
+        tab.setScreenshot(sshot);
+    }
+
     @Override
     protected void showTitleBar() {
         if (canShowTitleBar()) {
@@ -159,6 +174,7 @@
 
     @Override
     public void showActiveTabsPage() {
+        captureTab(mActiveTab);
         mActiveTabsPage = new ActiveTabsPage(mActivity, mUiController);
         mTitleBar.setVisibility(View.GONE);
         hideTitleBar();