1 // Copyright 2014 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.
5 #ifndef CHROME_BROWSER_APPS_APP_WINDOW_REGISTRY_UTIL_H_
6 #define CHROME_BROWSER_APPS_APP_WINDOW_REGISTRY_UTIL_H_
8 #include "ui/gfx/native_widget_types.h"
10 namespace extensions
{
14 // Utility functions to interact with app windows across all profiles.
15 class AppWindowRegistryUtil
{
17 // Returns the app window for |window|, looking in all browser contexts.
18 static extensions::AppWindow
* GetAppWindowForNativeWindowAnyProfile(
19 gfx::NativeWindow window
);
21 // Returns true if the number of visible app windows registered across all
22 // browser contexts is non-zero. |window_type_mask| is a bitwise OR filter of
23 // AppWindow::WindowType, or 0 for any window type.
24 static bool IsAppWindowVisibleInAnyProfile(int window_type_mask
);
26 // Close all app windows in all profiles.
27 static void CloseAllAppWindows();
30 #endif // CHROME_BROWSER_APPS_APP_WINDOW_REGISTRY_UTIL_H_