Chromium Code Reviews| Index: chrome/browser/media/media_stream_device_permission_context.h |
| diff --git a/chrome/browser/media/media_stream_device_permission_context.h b/chrome/browser/media/media_stream_device_permission_context.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..a1a8ca4fbfb8c360dafc815605001609ed1e863f |
| --- /dev/null |
| +++ b/chrome/browser/media/media_stream_device_permission_context.h |
| @@ -0,0 +1,49 @@ |
| +// Copyright 2015 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_MEDIA_MEDIA_STREAM_DEVICE_PERMISSION_CONTEXT_H_ |
| +#define CHROME_BROWSER_MEDIA_MEDIA_STREAM_DEVICE_PERMISSION_CONTEXT_H_ |
| + |
| +#include "base/macros.h" |
| +#include "chrome/browser/permissions/permission_context_base.h" |
| +#include "components/content_settings/core/common/content_settings_types.h" |
| + |
| +// Common class which handles the mic and camera permissions. |
| +// MediaStreamMicPermissionContextFactory and |
| +// MediaStreamCameraPermissionContextFactory will instantiate this with |
| +// corresponding |permission_type|. |
| +class MediaStreamDevicePermissionContext : public PermissionContextBase { |
| + public: |
| + MediaStreamDevicePermissionContext( |
| + Profile* profile, |
| + const ContentSettingsType content_settings_type); |
| + ~MediaStreamDevicePermissionContext() override; |
| + |
| + // PermissionContextBase: |
| + void RequestPermission(content::WebContents* web_contents, |
| + const PermissionRequestID& id, |
| + const GURL& requesting_frame, |
| + bool user_gesture, |
| + const BrowserPermissionCallback& callback) override; |
| + |
| + ContentSetting GetPermissionStatus( |
| + const GURL& requesting_origin, |
| + const GURL& embedding_origin) const override; |
| + |
| + void ResetPermission(const GURL& requesting_origin, |
|
palmer
2015/09/01 18:31:04
Can you please add a TODO and file a bug, and CC m
guoweis_left_chromium
2015/09/01 19:36:33
crbug.com/527149. However, since I don't have secu
|
| + const GURL& embedding_origin) override; |
| + |
| + void CancelPermissionRequest(content::WebContents* web_contents, |
| + const PermissionRequestID& id) override; |
| + |
| + private: |
| + // PermissionContextBase: |
| + bool IsRestrictedToSecureOrigins() const override; |
| + |
| + ContentSettingsType content_settings_type_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(MediaStreamDevicePermissionContext); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_MEDIA_MEDIA_STREAM_DEVICE_PERMISSION_CONTEXT_H_ |