• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2011 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 #ifndef CHROME_BROWSER_UI_BROWSER_DIALOGS_H_
6 #define CHROME_BROWSER_UI_BROWSER_DIALOGS_H_
7 #pragma once
8 
9 #include "ipc/ipc_message.h"
10 #include "ui/gfx/native_widget_types.h"
11 
12 class Browser;
13 class Extension;
14 class HtmlDialogUIDelegate;
15 class Profile;
16 class SkBitmap;
17 class TabContents;
18 
19 namespace browser {
20 
21 #if defined(IPC_MESSAGE_LOG_ENABLED)
22 
23 // The dialog is a singleton. If the dialog is already opened, it won't do
24 // anything, so you can just blindly call this function all you want.
25 // This is Called from chrome/browser/browser_about_handler.cc
26 void ShowAboutIPCDialog();
27 
28 #endif  // IPC_MESSAGE_LOG_ENABLED
29 
30 // Creates and shows an HTML dialog with the given delegate and profile.
31 // The window is automatically destroyed when it is closed.
32 // Returns the created window.
33 //
34 // Make sure to use the returned window only when you know it is safe
35 // to do so, i.e. before OnDialogClosed() is called on the delegate.
36 gfx::NativeWindow ShowHtmlDialog(gfx::NativeWindow parent, Profile* profile,
37                                  HtmlDialogUIDelegate* delegate);
38 
39 // Creates the ExtensionInstalledBubble and schedules it to be shown once
40 // the extension has loaded. |extension| is the installed extension. |browser|
41 // is the browser window which will host the bubble. |icon| is the install
42 // icon of the extension.
43 void ShowExtensionInstalledBubble(const Extension* extension,
44                                   Browser* browser,
45                                   const SkBitmap& icon,
46                                   Profile* profile);
47 
48 // Shows or hide the hung renderer dialog for the given TabContents.
49 // We need to pass the TabContents to the dialog, because multiple tabs can hang
50 // and it needs to keep track of which tabs are currently hung.
51 void ShowHungRendererDialog(TabContents* contents);
52 void HideHungRendererDialog(TabContents* contents);
53 
54 } // namespace browser
55 
56 #endif  // CHROME_BROWSER_UI_BROWSER_DIALOGS_H_
57