Implement bluetooth chooser for Chrome Apps on Mac
This is the part 3 of enabling the chooser UIs for Bluetooth from
Apps to enable developers to make a transition.
This CL implements the chooser UI for Bluetooth from Apps on Mac.
There will be different CLs for non-Mac since the chooser UI is
different.
BUG=613638, 577170
Review-Url: https://codereview.chromium.org/2005443002
Cr-Commit-Position: refs/heads/master@{#397320}
diff --git a/chrome/browser/extensions/chrome_extension_chooser_dialog.h b/chrome/browser/extensions/chrome_extension_chooser_dialog.h
new file mode 100644
index 0000000..d474e3e
--- /dev/null
+++ b/chrome/browser/extensions/chrome_extension_chooser_dialog.h
@@ -0,0 +1,37 @@
+// Copyright 2016 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_EXTENSIONS_CHROME_EXTENSION_CHOOSER_DIALOG_H_
+#define CHROME_BROWSER_EXTENSIONS_CHROME_EXTENSION_CHOOSER_DIALOG_H_
+
+#include "base/macros.h"
+#include "build/build_config.h"
+
+class ChooserController;
+
+namespace content {
+class WebContents;
+}
+
+class ChromeExtensionChooserDialog {
+ public:
+ explicit ChromeExtensionChooserDialog(content::WebContents* web_contents)
+ : web_contents_(web_contents) {}
+ ~ChromeExtensionChooserDialog() {}
+
+ content::WebContents* web_contents() const { return web_contents_; }
+
+// TODO(juncai): remove this preprocessor directive once the non-Mac
+// implementation is done.
+#if defined(OS_MACOSX)
+ void ShowDialog(ChooserController* chooser_controller) const;
+#endif // defined(OS_MACOSX)
+
+ private:
+ content::WebContents* web_contents_;
+
+ DISALLOW_COPY_AND_ASSIGN(ChromeExtensionChooserDialog);
+};
+
+#endif // CHROME_BROWSER_EXTENSIONS_CHROME_EXTENSION_CHOOSER_DIALOG_H_