OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Ericsson AB. All rights reserved. | 2 * Copyright (C) 2011 Ericsson AB. All rights reserved. |
3 * Copyright (C) 2012 Google Inc. All rights reserved. | 3 * Copyright (C) 2012 Google Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * | 8 * |
9 * 1. Redistributions of source code must retain the above copyright | 9 * 1. Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 30 matching lines...) Expand all Loading... |
41 #include "core/dom/SpaceSplitString.h" | 41 #include "core/dom/SpaceSplitString.h" |
42 #include "core/frame/Deprecation.h" | 42 #include "core/frame/Deprecation.h" |
43 #include "core/frame/HostsUsingFeatures.h" | 43 #include "core/frame/HostsUsingFeatures.h" |
44 #include "modules/mediastream/MediaConstraintsImpl.h" | 44 #include "modules/mediastream/MediaConstraintsImpl.h" |
45 #include "modules/mediastream/MediaStream.h" | 45 #include "modules/mediastream/MediaStream.h" |
46 #include "modules/mediastream/MediaStreamConstraints.h" | 46 #include "modules/mediastream/MediaStreamConstraints.h" |
47 #include "modules/mediastream/MediaTrackConstraints.h" | 47 #include "modules/mediastream/MediaTrackConstraints.h" |
48 #include "modules/mediastream/UserMediaController.h" | 48 #include "modules/mediastream/UserMediaController.h" |
49 #include "platform/mediastream/MediaStreamCenter.h" | 49 #include "platform/mediastream/MediaStreamCenter.h" |
50 #include "platform/mediastream/MediaStreamDescriptor.h" | 50 #include "platform/mediastream/MediaStreamDescriptor.h" |
| 51 #include "public/platform/WebFeaturePolicyFeature.h" |
51 | 52 |
52 namespace blink { | 53 namespace blink { |
53 | 54 |
54 namespace { | 55 namespace { |
55 | 56 |
56 template <typename NumericConstraint> | 57 template <typename NumericConstraint> |
57 bool SetUsesNumericConstraint( | 58 bool SetUsesNumericConstraint( |
58 const WebMediaTrackConstraintSet& set, | 59 const WebMediaTrackConstraintSet& set, |
59 NumericConstraint WebMediaTrackConstraintSet::*field) { | 60 NumericConstraint WebMediaTrackConstraintSet::*field) { |
60 return (set.*field).HasExact() || (set.*field).HasIdeal() || | 61 return (set.*field).HasExact() || (set.*field).HasIdeal() || |
(...skipping 334 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
395 } | 396 } |
396 | 397 |
397 bool UserMediaRequest::IsSecureContextUse(String& error_message) { | 398 bool UserMediaRequest::IsSecureContextUse(String& error_message) { |
398 Document* document = OwnerDocument(); | 399 Document* document = OwnerDocument(); |
399 | 400 |
400 if (document->IsSecureContext(error_message)) { | 401 if (document->IsSecureContext(error_message)) { |
401 UseCounter::Count(document->GetFrame(), | 402 UseCounter::Count(document->GetFrame(), |
402 WebFeature::kGetUserMediaSecureOrigin); | 403 WebFeature::kGetUserMediaSecureOrigin); |
403 UseCounter::CountCrossOriginIframe( | 404 UseCounter::CountCrossOriginIframe( |
404 *document, WebFeature::kGetUserMediaSecureOriginIframe); | 405 *document, WebFeature::kGetUserMediaSecureOriginIframe); |
| 406 if (Audio()) { |
| 407 Deprecation::CountDeprecationFeaturePolicy( |
| 408 *document, WebFeaturePolicyFeature::kMicrophone); |
| 409 } |
| 410 if (Video()) { |
| 411 Deprecation::CountDeprecationFeaturePolicy( |
| 412 *document, WebFeaturePolicyFeature::kCamera); |
| 413 } |
| 414 |
405 HostsUsingFeatures::CountAnyWorld( | 415 HostsUsingFeatures::CountAnyWorld( |
406 *document, HostsUsingFeatures::Feature::kGetUserMediaSecureHost); | 416 *document, HostsUsingFeatures::Feature::kGetUserMediaSecureHost); |
407 return true; | 417 return true; |
408 } | 418 } |
409 | 419 |
410 // While getUserMedia is blocked on insecure origins, we still want to | 420 // While getUserMedia is blocked on insecure origins, we still want to |
411 // count attempts to use it. | 421 // count attempts to use it. |
412 Deprecation::CountDeprecation(document->GetFrame(), | 422 Deprecation::CountDeprecation(document->GetFrame(), |
413 WebFeature::kGetUserMediaInsecureOrigin); | 423 WebFeature::kGetUserMediaInsecureOrigin); |
414 Deprecation::CountDeprecationCrossOriginIframe( | 424 Deprecation::CountDeprecationCrossOriginIframe( |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
490 } | 500 } |
491 | 501 |
492 DEFINE_TRACE(UserMediaRequest) { | 502 DEFINE_TRACE(UserMediaRequest) { |
493 visitor->Trace(controller_); | 503 visitor->Trace(controller_); |
494 visitor->Trace(success_callback_); | 504 visitor->Trace(success_callback_); |
495 visitor->Trace(error_callback_); | 505 visitor->Trace(error_callback_); |
496 ContextLifecycleObserver::Trace(visitor); | 506 ContextLifecycleObserver::Trace(visitor); |
497 } | 507 } |
498 | 508 |
499 } // namespace blink | 509 } // namespace blink |
OLD | NEW |