blob: 8fd6b358cc8ca99fc8e9377bbbd8032773ad6cb2 [file] [log] [blame]
// 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.
#ifndef CHROME_BROWSER_APPS_APP_WINDOW_REGISTRY_UTIL_H_
#define CHROME_BROWSER_APPS_APP_WINDOW_REGISTRY_UTIL_H_
#include "ui/gfx/native_widget_types.h"
namespace extensions {
class AppWindow;
}
// Utility functions to interact with app windows across all profiles.
class AppWindowRegistryUtil {
public:
// Returns the app window for |window|, looking in all browser contexts.
static extensions::AppWindow* GetAppWindowForNativeWindowAnyProfile(
gfx::NativeWindow window);
// Returns true if the number of visible app windows registered across all
// browser contexts is non-zero. |window_type_mask| is a bitwise OR filter of
// AppWindow::WindowType, or 0 for any window type.
static bool IsAppWindowVisibleInAnyProfile(int window_type_mask);
// Close all app windows in all profiles.
static void CloseAllAppWindows();
};
#endif // CHROME_BROWSER_APPS_APP_WINDOW_REGISTRY_UTIL_H_