| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. All rights
reserved. | 2 * Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012, 2013 Apple Inc. All rights
reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
| 6 * are met: | 6 * are met: |
| 7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
| 8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
| 10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
| (...skipping 306 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 317 PageVisibilityState pageVisibilityState() const override; | 317 PageVisibilityState pageVisibilityState() const override; |
| 318 String autoplayExperimentMode() const override; | 318 String autoplayExperimentMode() const override; |
| 319 | 319 |
| 320 // Frame | 320 // Frame |
| 321 bool isCrossOrigin() const override | 321 bool isCrossOrigin() const override |
| 322 { | 322 { |
| 323 const Frame* frame = m_element->document().frame(); | 323 const Frame* frame = m_element->document().frame(); |
| 324 return frame && frame->isCrossOrigin(); | 324 return frame && frame->isCrossOrigin(); |
| 325 } | 325 } |
| 326 | 326 |
| 327 bool isAutoplayAllowedPerSettings() const override; |
| 328 |
| 327 // LayoutObject | 329 // LayoutObject |
| 328 void setRequestPositionUpdates(bool) override; | 330 void setRequestPositionUpdates(bool) override; |
| 329 IntRect absoluteBoundingBoxRect() const override; | 331 IntRect absoluteBoundingBoxRect() const override; |
| 330 | 332 |
| 331 DEFINE_INLINE_VIRTUAL_TRACE() | 333 DEFINE_INLINE_VIRTUAL_TRACE() |
| 332 { | 334 { |
| 333 visitor->trace(m_element); | 335 visitor->trace(m_element); |
| 334 Client::trace(visitor); | 336 Client::trace(visitor); |
| 335 } | 337 } |
| 336 | 338 |
| (...skipping 3494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3831 | 3833 |
| 3832 String HTMLMediaElement::AutoplayHelperClientImpl::autoplayExperimentMode() cons
t | 3834 String HTMLMediaElement::AutoplayHelperClientImpl::autoplayExperimentMode() cons
t |
| 3833 { | 3835 { |
| 3834 String mode; | 3836 String mode; |
| 3835 if (m_element->document().settings()) | 3837 if (m_element->document().settings()) |
| 3836 mode = m_element->document().settings()->autoplayExperimentMode(); | 3838 mode = m_element->document().settings()->autoplayExperimentMode(); |
| 3837 | 3839 |
| 3838 return mode; | 3840 return mode; |
| 3839 } | 3841 } |
| 3840 | 3842 |
| 3843 bool HTMLMediaElement::AutoplayHelperClientImpl::isAutoplayAllowedPerSettings()
const |
| 3844 { |
| 3845 LocalFrame* frame = m_element->document().frame(); |
| 3846 if (!frame) |
| 3847 return false; |
| 3848 FrameLoaderClient* frameLoaderClient = frame->loader().client(); |
| 3849 return frameLoaderClient && frameLoaderClient->allowAutoplay(false); |
| 3850 } |
| 3851 |
| 3841 void HTMLMediaElement::AutoplayHelperClientImpl::setRequestPositionUpdates(bool
request) | 3852 void HTMLMediaElement::AutoplayHelperClientImpl::setRequestPositionUpdates(bool
request) |
| 3842 { | 3853 { |
| 3843 if (LayoutObject* layoutObject = m_element->layoutObject()) { | 3854 if (LayoutObject* layoutObject = m_element->layoutObject()) { |
| 3844 LayoutMediaItem layoutMediaItem = LayoutMediaItem(toLayoutMedia(layoutOb
ject)); | 3855 LayoutMediaItem layoutMediaItem = LayoutMediaItem(toLayoutMedia(layoutOb
ject)); |
| 3845 layoutMediaItem.setRequestPositionUpdates(request); | 3856 layoutMediaItem.setRequestPositionUpdates(request); |
| 3846 } | 3857 } |
| 3847 } | 3858 } |
| 3848 | 3859 |
| 3849 IntRect HTMLMediaElement::AutoplayHelperClientImpl::absoluteBoundingBoxRect() co
nst | 3860 IntRect HTMLMediaElement::AutoplayHelperClientImpl::absoluteBoundingBoxRect() co
nst |
| 3850 { | 3861 { |
| 3851 IntRect result; | 3862 IntRect result; |
| 3852 if (LayoutObject* object = m_element->layoutObject()) | 3863 if (LayoutObject* object = m_element->layoutObject()) |
| 3853 result = object->absoluteBoundingBoxRect(); | 3864 result = object->absoluteBoundingBoxRect(); |
| 3854 return result; | 3865 return result; |
| 3855 } | 3866 } |
| 3856 | 3867 |
| 3857 } // namespace blink | 3868 } // namespace blink |
| OLD | NEW |