diff --git a/src/com/android/browser/BrowserActivity.java b/src/com/android/browser/BrowserActivity.java
index e44ebcb..5fe62b1 100644
--- a/src/com/android/browser/BrowserActivity.java
+++ b/src/com/android/browser/BrowserActivity.java
@@ -3967,15 +3967,17 @@
             intent.putExtra(CombinedBookmarkHistoryActivity.STARTING_FRAGMENT,
                     CombinedBookmarkHistoryActivity.FRAGMENT_ID_HISTORY);
         }
+        int top = -1;
+        int height = -1;
         if (mXLargeScreenSize) {
             showFakeTitleBar();
             int titleBarHeight = ((TitleBarXLarge)mFakeTitleBar).getHeightWithoutProgress();
-            intent.putExtra(CombinedBookmarkHistoryActivity.EXTRA_TOP,
-                    mTabBar.getBottom() + titleBarHeight);
-            intent.putExtra(CombinedBookmarkHistoryActivity.EXTRA_HEIGHT,
-                    getTopWindow().getHeight() - titleBarHeight);
+            top = mTabBar.getBottom() + titleBarHeight;
+            height = getTopWindow().getHeight() - titleBarHeight;
             intent.putExtra(CombinedBookmarkHistoryActivity.NEWTAB_MODE, true);
         }
+        intent.putExtra(CombinedBookmarkHistoryActivity.EXTRA_TOP, top);
+        intent.putExtra(CombinedBookmarkHistoryActivity.EXTRA_HEIGHT, height);
         startActivityForResult(intent, COMBO_PAGE);
     }
 
diff --git a/src/com/android/browser/CombinedBookmarkHistoryActivity.java b/src/com/android/browser/CombinedBookmarkHistoryActivity.java
index 9422ac8..4ddb20d 100644
--- a/src/com/android/browser/CombinedBookmarkHistoryActivity.java
+++ b/src/com/android/browser/CombinedBookmarkHistoryActivity.java
@@ -139,8 +139,8 @@
         Bundle extras = getIntent().getExtras();
         if (extras != null) {
             mNewTabMode = extras.getBoolean(NEWTAB_MODE);
-            mRequestedTop = extras.getInt(EXTRA_TOP);
-            mRequestedHeight = extras.getInt(EXTRA_HEIGHT);
+            mRequestedTop = extras.getInt(EXTRA_TOP, -1);
+            mRequestedHeight = extras.getInt(EXTRA_HEIGHT, -1);
             startingFragment = extras.getInt(STARTING_FRAGMENT, FRAGMENT_ID_BOOKMARKS);
         }
 
