diff options
author | mukai@chromium.org <mukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-26 00:44:42 +0000 |
---|---|---|
committer | mukai@chromium.org <mukai@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2014-02-26 00:44:42 +0000 |
commit | fe00717aa4c23baaefdbdd2fefa71a24780ab705 (patch) | |
tree | bc9ab016b1782f42f3decbf56937a45cf27597e2 /chrome/browser/fullscreen_aurax11.cc | |
parent | 61ebd74e979d3be1daea3569e9e7411401afdf40 (diff) | |
download | chromium_src-fe00717aa4c23baaefdbdd2fefa71a24780ab705.zip chromium_src-fe00717aa4c23baaefdbdd2fefa71a24780ab705.tar.gz chromium_src-fe00717aa4c23baaefdbdd2fefa71a24780ab705.tar.bz2 |
Implements fullscreen_aura.cc for Linux-Aura.
BUG=344630
R=erg@chromium.org
Review URL: https://codereview.chromium.org/175573002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@253308 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/fullscreen_aurax11.cc')
-rw-r--r-- | chrome/browser/fullscreen_aurax11.cc | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/chrome/browser/fullscreen_aurax11.cc b/chrome/browser/fullscreen_aurax11.cc new file mode 100644 index 0000000..b186c00 --- /dev/null +++ b/chrome/browser/fullscreen_aurax11.cc @@ -0,0 +1,25 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#include "chrome/browser/fullscreen.h" + +#include <vector> + +#include "ui/gfx/native_widget_types.h" +#include "ui/views/widget/desktop_aura/desktop_window_tree_host_x11.h" +#include "ui/views/widget/widget.h" + +bool IsFullScreenMode() { + std::vector<aura::Window*> all_windows = + views::DesktopWindowTreeHostX11::GetAllOpenWindows(); + // Only the topmost window is checked. This works fine in the most cases, but + // it may return false when there are multiple displays and one display has + // a fullscreen window but others don't. See: crbug.com/345484 + if (all_windows.empty()) + return false; + + views::Widget* widget = + views::Widget::GetWidgetForNativeWindow(all_windows[0]); + return widget && widget->IsFullscreen(); +} |