| // 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_UI_APPS_APP_INFO_DIALOG_H_ |
| #define CHROME_BROWSER_UI_APPS_APP_INFO_DIALOG_H_ |
| |
| #include "base/callback_forward.h" |
| #include "ui/gfx/native_widget_types.h" |
| |
| class Profile; |
| |
| namespace extensions { |
| class Extension; |
| } |
| |
| namespace gfx { |
| class Rect; |
| class Size; |
| } |
| |
| // Used for UMA to track where the App Info dialog is launched from. |
| enum AppInfoLaunchSource { |
| FROM_APP_LIST, // Launched from the app list context menu. |
| FROM_EXTENSIONS_PAGE, // Launched from the chrome://extensions page. |
| NUM_LAUNCH_SOURCES, |
| }; |
| |
| // Shows the chrome app information as a frameless window for the given |app| |
| // and |profile| at the given |app_list_bounds|. Appears 'inside' the app list. |
| void ShowAppInfoInAppList(gfx::NativeWindow parent, |
| const gfx::Rect& app_list_bounds, |
| Profile* profile, |
| const extensions::Extension* app, |
| const base::Closure& close_callback); |
| |
| // Shows the chrome app information in a native dialog box of the given |size|. |
| void ShowAppInfoInNativeDialog(gfx::NativeWindow parent, |
| const gfx::Size& size, |
| Profile* profile, |
| const extensions::Extension* app, |
| const base::Closure& close_callback); |
| |
| #endif // CHROME_BROWSER_UI_APPS_APP_INFO_DIALOG_H_ |