Adding instrumentation to locate the source of jankiness
[chromium-blink-merge.git] / chrome / browser / ui / views / constrained_window_views.h
blobe83429af5bfbe886310ed7cc2a0a42f0e20714a0
1 // Copyright (c) 2012 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_UI_VIEWS_CONSTRAINED_WINDOW_VIEWS_H_
6 #define CHROME_BROWSER_UI_VIEWS_CONSTRAINED_WINDOW_VIEWS_H_
8 #include "ui/gfx/native_widget_types.h"
10 namespace content {
11 class WebContents;
14 namespace views {
15 class DialogDelegate;
16 class Widget;
17 class WidgetDelegate;
20 namespace web_modal {
21 class ModalDialogHost;
22 class WebContentsModalDialogHost;
25 // Update the position of dialog |widget| against |dialog_host|. This is used to
26 // reposition widgets e.g. when the host dimensions change.
27 void UpdateWebContentsModalDialogPosition(
28 views::Widget* widget,
29 web_modal::WebContentsModalDialogHost* dialog_host);
31 void UpdateBrowserModalDialogPosition(
32 views::Widget* widget,
33 web_modal::ModalDialogHost* dialog_host);
35 // Calls CreateWebModalDialogViews, shows the dialog, and returns its widget.
36 views::Widget* ShowWebModalDialogViews(
37 views::WidgetDelegate* dialog,
38 content::WebContents* initiator_web_contents);
40 // Create a widget for |dialog| that is modal to |web_contents|.
41 views::Widget* CreateWebModalDialogViews(views::WidgetDelegate* dialog,
42 content::WebContents* web_contents);
44 // Create a widget for |dialog| that is modal to the browser window |parent|.
45 // This places the dialog appropriately if |parent| is a valid browser window.
46 views::Widget* CreateBrowserModalDialogViews(views::DialogDelegate* dialog,
47 gfx::NativeWindow parent);
49 #endif // CHROME_BROWSER_UI_VIEWS_CONSTRAINED_WINDOW_VIEWS_H_