diff --git a/src/com/android/browser/Controller.java b/src/com/android/browser/Controller.java
index 8238d77..a53e344 100644
--- a/src/com/android/browser/Controller.java
+++ b/src/com/android/browser/Controller.java
@@ -1546,6 +1546,10 @@
                 openIncognitoTab();
                 break;
 
+            case R.id.close_other_tabs_id:
+                closeOtherTabs();
+                break;
+
             case R.id.goto_menu_id:
                 editUrl();
                 break;
@@ -2419,6 +2423,20 @@
         }
     }
 
+    /**
+     * Close all tabs except the current one
+     */
+    @Override
+    public void closeOtherTabs() {
+        int inactiveTabs = mTabControl.getTabCount() - 1;
+        for (int i = inactiveTabs; i >= 0; i--) {
+            Tab tab = mTabControl.getTab(i);
+            if (tab != mTabControl.getCurrentTab()) {
+                removeTab(tab);
+            }
+        }
+    }
+
     // Called when loading from context menu or LOAD_URL message
     protected void loadUrlFromContext(String url) {
         Tab tab = getCurrentTab();
diff --git a/src/com/android/browser/PhoneUi.java b/src/com/android/browser/PhoneUi.java
index 4da0668..9104095 100644
--- a/src/com/android/browser/PhoneUi.java
+++ b/src/com/android/browser/PhoneUi.java
@@ -214,6 +214,14 @@
         if (incognito != null) {
             incognito.setVisible(showingNavScreen() || mUseQuickControls);
         }
+        MenuItem closeOthers = menu.findItem(R.id.close_other_tabs_id);
+        if (closeOthers != null) {
+            boolean isLastTab = true;
+            if (tab != null) {
+                isLastTab = (mTabControl.getTabCount() <= 1);
+            }
+            closeOthers.setEnabled(!isLastTab);
+        }
         if (showingNavScreen()) {
             menu.setGroupVisible(R.id.LIVE_MENU, false);
             menu.setGroupVisible(R.id.SNAPSHOT_MENU, false);
diff --git a/src/com/android/browser/UiController.java b/src/com/android/browser/UiController.java
index e7a8953..b97ae10 100644
--- a/src/com/android/browser/UiController.java
+++ b/src/com/android/browser/UiController.java
@@ -59,6 +59,8 @@
 
     void closeTab(Tab tab);
 
+    void closeOtherTabs();
+
     void stopLoading();
 
     Intent createBookmarkCurrentPageIntent(boolean canBeAnEdit);
