Change the back button to INVISIBLE instead of GONE.

The problem with setting it to GONE is that it does not get
measured when determining the height.  This means that if a
crumb cannot go back and the back button is removed as a
result, the BreadCrumbView will change its height,
resulting in some jumpiness.

Change-Id: I62b32dfb0b0b72fe462bf9ec8413372786c414ab
diff --git a/src/com/android/browser/BreadCrumbView.java b/src/com/android/browser/BreadCrumbView.java
index 8e3acf7..e501703 100644
--- a/src/com/android/browser/BreadCrumbView.java
+++ b/src/com/android/browser/BreadCrumbView.java
@@ -146,7 +146,7 @@
         mBackButton.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
                 LayoutParams.MATCH_PARENT));
         mBackButton.setOnClickListener(this);
-        mBackButton.setVisibility(View.GONE);
+        mBackButton.setVisibility(View.INVISIBLE);
         addView(mBackButton, 0);
     }
 
@@ -157,7 +157,7 @@
         mCrumbs.add(crumb);
         addView(crumb.crumbView);
         if (mUseBackButton) {
-            mBackButton.setVisibility(crumb.canGoBack ? View.VISIBLE : View.GONE);
+            mBackButton.setVisibility(crumb.canGoBack ? View.VISIBLE : View.INVISIBLE);
         }
         crumb.crumbView.setOnClickListener(this);
     }
@@ -181,10 +181,10 @@
             mCrumbs.remove(n - 1);
             if (mUseBackButton) {
                 Crumb top = getTopCrumb();
-                if (top != null) {
-                    mBackButton.setVisibility(top.canGoBack ? View.VISIBLE : View.GONE);
+                if (top != null && top.canGoBack) {
+                    mBackButton.setVisibility(View.VISIBLE);
                 } else {
-                    mBackButton.setVisibility(View.GONE);
+                    mBackButton.setVisibility(View.INVISIBLE);
                 }
             }
             if (notify) {