#include "ash/multi_profile_uma.h"
#include "ash/session_state_delegate.h"
#include "ash/shell.h"
+#include "chrome/browser/ui/ash/multi_user/multi_user_context_menu.h"
#include "chrome/browser/ui/ash/multi_user/multi_user_window_manager.h"
#include "chrome/browser/ui/browser_commands_chromeos.h"
#endif
// Check the |virtual_url()| first. This catches regular chrome:// URLs
// including URLs that were rewritten (such as chrome://bookmarks).
- if (entry->GetVirtualURL().SchemeIs(chrome::kChromeUIScheme))
+ if (entry->GetVirtualURL().SchemeIs(content::kChromeUIScheme))
return true;
// If the |virtual_url()| isn't a chrome:// URL, check if it's actually
// view-source: of a chrome:// URL.
if (entry->GetVirtualURL().SchemeIs(content::kViewSourceScheme))
- return entry->GetURL().SchemeIs(chrome::kChromeUIScheme);
+ return entry->GetURL().SchemeIs(content::kChromeUIScheme);
return false;
}
command_id == IDC_RESTORE_TAB ||
command_id == IDC_SELECT_NEXT_TAB ||
command_id == IDC_SELECT_PREVIOUS_TAB ||
- command_id == IDC_TABPOSE ||
command_id == IDC_EXIT;
}
base::UserMetricsAction("Accel_SelectPreviousTab"));
SelectPreviousTab(browser_);
break;
- case IDC_TABPOSE:
- OpenTabpose(browser_);
- break;
case IDC_MOVE_TAB_NEXT:
MoveTabNext(browser_);
break;
#if defined(OS_CHROMEOS)
case IDC_VISIT_DESKTOP_OF_LRU_USER_2:
- case IDC_VISIT_DESKTOP_OF_LRU_USER_3: {
- ash::MultiProfileUMA::RecordTeleportAction(
- ash::MultiProfileUMA::TELEPORT_WINDOW_CAPTION_MENU);
- // When running the multi user mode on Chrome OS, windows can "visit"
- // another user's desktop.
- const std::string& user_id =
- ash::Shell::GetInstance()->session_state_delegate()->GetUserID(
- IDC_VISIT_DESKTOP_OF_LRU_USER_2 == id ? 1 : 2);
- chrome::MultiUserWindowManager::GetInstance()->ShowWindowForUser(
- browser_->window()->GetNativeWindow(),
- user_id);
- break;
- }
+ case IDC_VISIT_DESKTOP_OF_LRU_USER_3:
+ ExecuteVisitDesktopCommand(id, browser_->window()->GetNativeWindow());
+ break;
+#endif
+
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(TOOLKIT_GTK)
+ case IDC_USE_SYSTEM_TITLE_BAR: {
+ PrefService* prefs = browser_->profile()->GetPrefs();
+ prefs->SetBoolean(prefs::kUseCustomChromeFrame,
+ !prefs->GetBoolean(prefs::kUseCustomChromeFrame));
+ break;
+ }
#endif
#if defined(OS_WIN)
command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_2, true);
command_updater_.UpdateCommandEnabled(IDC_VISIT_DESKTOP_OF_LRU_USER_3, true);
#endif
+#if defined(OS_LINUX) && !defined(OS_CHROMEOS) && !defined(TOOLKIT_GTK)
+ command_updater_.UpdateCommandEnabled(IDC_USE_SYSTEM_TITLE_BAR, true);
+#endif
// Page-related commands
command_updater_.UpdateCommandEnabled(IDC_EMAIL_PAGE_LOCATION, true);
bool normal_window = browser_->is_type_tabbed();
// Navigation commands
- command_updater_.UpdateCommandEnabled(IDC_HOME, normal_window);
+ command_updater_.UpdateCommandEnabled(
+ IDC_HOME,
+ normal_window || (CommandLine::ForCurrentProcess()->HasSwitch(
+ switches::kEnableStreamlinedHostedApps) &&
+ browser_->is_app()));
// Window management commands
command_updater_.UpdateCommandEnabled(IDC_SELECT_NEXT_TAB, normal_window);
IDC_WIN8_DESKTOP_RESTART : IDC_WIN8_METRO_RESTART;
command_updater_.UpdateCommandEnabled(restart_mode, normal_window);
#endif
- command_updater_.UpdateCommandEnabled(IDC_TABPOSE, normal_window);
// Show various bits of UI
command_updater_.UpdateCommandEnabled(IDC_CLEAR_BROWSING_DATA, normal_window);