browser_commands_mac.cc revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
1// Copyright (c) 2013 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "chrome/browser/ui/browser_commands_mac.h"
6
7#include "base/command_line.h"
8#include "base/mac/mac_util.h"
9#include "chrome/browser/fullscreen.h"
10#include "chrome/browser/ui/browser.h"
11#include "chrome/browser/ui/browser_commands.h"
12#include "chrome/browser/ui/fullscreen/fullscreen_controller.h"
13#include "chrome/common/chrome_switches.h"
14
15namespace chrome {
16
17void ToggleFullscreenWithChromeOrFallback(Browser* browser) {
18  DCHECK(browser);
19  // In simplified fullscreen mode, the "WithChrome" variant does not exist.
20  // Call into the standard cross-platform fullscreen method instead.
21  const CommandLine* command_line = CommandLine::ForCurrentProcess();
22  if (command_line->HasSwitch(switches::kEnableSimplifiedFullscreen))
23    ToggleFullscreenMode(browser);
24  else if (chrome::mac::SupportsSystemFullscreen())
25    browser->fullscreen_controller()->ToggleBrowserFullscreenWithChrome();
26  else
27    ToggleFullscreenMode(browser);
28}
29
30}  // namespace chrome
31