athena_shell_app_delegate.h revision 1320f92c476a1ad9d19dba2a48c72b75566198e9
1c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom// Copyright 2014 The Chromium Authors. All rights reserved.
2c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom// Use of this source code is governed by a BSD-style license that can be
3c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom// found in the LICENSE file.
4c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
5c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom#ifndef ATHENA_EXTENSIONS_SHELL_ATHENA_APP_DELEGATE_H_
6c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom#define ATHENA_EXTENSIONS_SHELL_ATHENA_APP_DELEGATE_H_
770c8287138e69a98c2f950036f9f703ee37228c8Brian Carlstrom
8c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom#include "athena/extensions/athena_app_delegate_base.h"
970c8287138e69a98c2f950036f9f703ee37228c8Brian Carlstrom
10c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstromnamespace athena {
11c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
12c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstromclass AthenaShellAppDelegate : public AthenaAppDelegateBase {
13c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom public:
14c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  AthenaShellAppDelegate();
15c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual ~AthenaShellAppDelegate();
16c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
17c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom private:
18c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  // extensions::AppDelegate:
19c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual void InitWebContents(content::WebContents* web_contents) OVERRIDE;
20c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual content::ColorChooser* ShowColorChooser(
21c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      content::WebContents* web_contents,
22c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      SkColor initial_color) OVERRIDE;
23c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual void RunFileChooser(
24c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      content::WebContents* tab,
25c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      const content::FileChooserParams& params) OVERRIDE;
26c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual void RequestMediaAccessPermission(
27c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      content::WebContents* web_contents,
28c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      const content::MediaStreamRequest& request,
2970c8287138e69a98c2f950036f9f703ee37228c8Brian Carlstrom      const content::MediaResponseCallback& callback,
30c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      const extensions::Extension* extension) OVERRIDE;
31c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual bool CheckMediaAccessPermission(
32c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      content::WebContents* web_contents,
33c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      const GURL& security_origin,
34c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom      content::MediaStreamType type,
3570c8287138e69a98c2f950036f9f703ee37228c8Brian Carlstrom      const extensions::Extension* extension) OVERRIDE;
36c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  virtual void SetWebContentsBlocked(content::WebContents* web_contents,
37c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom                                     bool blocked) OVERRIDE;
38c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
39c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom  DISALLOW_COPY_AND_ASSIGN(AthenaShellAppDelegate);
40c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom};
41c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
4270c8287138e69a98c2f950036f9f703ee37228c8Brian Carlstrom}  // namespace athena
43c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom
44c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom#endif  // ATHENA_EXTENSIONS_SHELL_ATHENA_APP_DELEGATE_H_
45c37f4a04ef89e73a39a59f3c5a179af8c8ab5974Brian Carlstrom