diff --git a/src/com/android/mail/providers/Account.java b/src/com/android/mail/providers/Account.java
index ebda1aa..17d7a4e 100644
--- a/src/com/android/mail/providers/Account.java
+++ b/src/com/android/mail/providers/Account.java
@@ -482,6 +482,16 @@
         return (capabilities & capability) != 0;
     }
 
+    /**
+     * @return <tt>true</tt> if this mail account can be searched in any way (locally on the device,
+     *      remotely on the server, or remotely on the server within the current folder)
+     */
+    public boolean supportsSearch() {
+        return supportsCapability(AccountCapabilities.LOCAL_SEARCH)
+                || supportsCapability(AccountCapabilities.SERVER_SEARCH)
+                || supportsCapability(AccountCapabilities.FOLDER_SERVER_SEARCH);
+    }
+
     public boolean isAccountSyncRequired() {
         return (syncStatus & SyncStatus.INITIAL_SYNC_NEEDED) == SyncStatus.INITIAL_SYNC_NEEDED;
     }
diff --git a/src/com/android/mail/ui/AbstractActivityController.java b/src/com/android/mail/ui/AbstractActivityController.java
index c44e598..20528ec 100644
--- a/src/com/android/mail/ui/AbstractActivityController.java
+++ b/src/com/android/mail/ui/AbstractActivityController.java
@@ -3144,8 +3144,7 @@
             LogUtils.d(LOG_TAG, "AbstractActivityController.startSearch(): null account");
             return;
         }
-        if (mAccount.supportsCapability(UIProvider.AccountCapabilities.LOCAL_SEARCH)
-                || mAccount.supportsCapability(UIProvider.AccountCapabilities.SERVER_SEARCH)) {
+        if (mAccount.supportsSearch()) {
             mActionBarView.expandSearch();
         } else {
             Toast.makeText(mActivity.getActivityContext(), mActivity.getActivityContext()
diff --git a/src/com/android/mail/ui/MailActionBarView.java b/src/com/android/mail/ui/MailActionBarView.java
index b07324c..5db87f1 100644
--- a/src/com/android/mail/ui/MailActionBarView.java
+++ b/src/com/android/mail/ui/MailActionBarView.java
@@ -424,10 +424,8 @@
                 reorderMenu(getContext(), mAccount, menu, totalItems);
                 break;
             case ViewMode.CONVERSATION_LIST:
-                // Show compose and search based on the account
-                // The only option that needs to be disabled is search
-                Utils.setMenuItemVisibility(menu, R.id.search,
-                        mAccount.supportsCapability(AccountCapabilities.FOLDER_SERVER_SEARCH));
+                // Show search if the account supports it
+                Utils.setMenuItemVisibility(menu, R.id.search, mAccount.supportsSearch());
                 break;
             case ViewMode.SEARCH_RESULTS_LIST:
                 // Hide compose and search
