blob: 44dca67f1eb23e6958bd1f63f4580bb11ecd1540 [file] [log] [blame]
[email protected]c5e22aee52012-01-19 16:10:511// Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]c96531e82011-01-26 03:11:142// 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_
[email protected]c96531e82011-01-26 03:11:147
David Benjamin78fe5962019-01-29 22:22:388#include <memory>
djacobo21e56e02016-07-02 01:14:319#include <string>
10#include <utility>
11#include <vector>
12
[email protected]6684dc8162013-06-03 14:05:0813#include "base/callback.h"
constantinae4c513e72017-02-07 02:14:1014#include "base/optional.h"
15#include "base/strings/string16.h"
avi655876a2015-12-25 07:18:1516#include "build/build_config.h"
jackhoub42a1f3d2015-08-24 05:53:2817#include "chrome/browser/ui/bookmarks/bookmark_editor.h"
Mark Pilgrim7cfcd112018-05-08 00:07:5618#include "content/public/browser/content_browser_client.h"
Jun Caibc561f412018-02-28 18:41:3919#include "content/public/browser/resource_request_info.h"
[email protected]cb805452013-05-22 15:16:2120#include "third_party/skia/include/core/SkColor.h"
[email protected]08397d52011-02-05 01:53:3821#include "ui/gfx/native_widget_types.h"
[email protected]c96531e82011-01-26 03:11:1422
[email protected]c60e2482011-02-11 23:46:3223class Browser;
tapted081286e2015-08-10 06:36:3024class LoginHandler;
[email protected]6684dc8162013-06-03 14:05:0825class Profile;
Giovanni Ortuño Urquidi97f8bd522017-06-16 04:04:3726class WebShareTarget;
tapted712c1b82017-06-08 03:10:0527struct WebApplicationInfo;
[email protected]eb2d7902011-02-02 18:19:5628
Peter Boström2a02a692018-02-22 22:25:4629namespace base {
30class FilePath;
31}
32
[email protected]2a6bc3e2011-12-28 23:51:3333namespace content {
[email protected]6ae4f142012-06-13 19:48:2034class BrowserContext;
[email protected]2a6bc3e2011-12-28 23:51:3335class WebContents;
Josh Prattf80ffb82019-01-22 07:13:5136} // namespace content
[email protected]2a6bc3e2011-12-28 23:51:3337
[email protected]1c321ee2012-05-21 03:02:3438namespace extensions {
39class Extension;
40}
41
tapted081286e2015-08-10 06:36:3042namespace net {
43class AuthChallengeInfo;
tapted081286e2015-08-10 06:36:3044}
45
anthonyvd3d7f9722016-12-07 18:43:5446namespace payments {
mathpf709499d2017-01-09 20:48:3647class PaymentRequest;
mathpf4bc50e2017-01-24 05:17:5048class PaymentRequestDialog;
Josh Prattf80ffb82019-01-22 07:13:5149} // namespace payments
anthonyvd3d7f9722016-12-07 18:43:5450
alitoe82b14b2017-04-06 23:11:2951namespace safe_browsing {
Ali Tofighf5baba982017-07-21 23:15:2352class ChromeCleanerController;
alitof8f753f62017-04-28 23:04:1053class ChromeCleanerDialogController;
Fabio Tirelo8825aab42017-10-19 13:23:3154class ChromeCleanerRebootDialogController;
Ali Tofigh525f78bdd2017-09-15 15:37:2055class SettingsResetPromptController;
Josh Prattf80ffb82019-01-22 07:13:5156} // namespace safe_browsing
alitoe82b14b2017-04-06 23:11:2957
avi24d693f2016-08-06 18:03:5258namespace task_manager {
nickbb57d2ca2016-07-25 23:08:0459class TaskManagerTableModel;
60}
61
[email protected]20c07f8e2012-05-31 08:43:1462namespace ui {
63class WebDialogDelegate;
Peter Boström2a02a692018-02-22 22:25:4664struct SelectedFileInfo;
Josh Prattf80ffb82019-01-22 07:13:5165} // namespace ui
[email protected]20c07f8e2012-05-31 08:43:1466
[email protected]87586fb72012-07-02 13:15:0267namespace chrome {
[email protected]c96531e82011-01-26 03:11:1468
taptede0eec372016-01-28 02:45:3369// Shows or hides the Task Manager. |browser| can be NULL when called from Ash.
nick399f10662016-05-06 16:20:2670// Returns a pointer to the underlying TableModel, which can be ignored, or used
71// for testing.
avi24d693f2016-08-06 18:03:5272task_manager::TaskManagerTableModel* ShowTaskManager(Browser* browser);
taptede0eec372016-01-28 02:45:3373void HideTaskManager();
74
75#if !defined(OS_MACOSX)
[email protected]d7db4cd2012-06-27 04:58:4476// Creates and shows an HTML dialog with the given delegate and context.
77// The window is automatically destroyed when it is closed.
[email protected]eb2d7902011-02-02 18:19:5678// Returns the created window.
79//
80// Make sure to use the returned window only when you know it is safe
81// to do so, i.e. before OnDialogClosed() is called on the delegate.
andresantoso