| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "core/dom/CompositorProxy.h" | 5 #include "core/dom/CompositorProxy.h" |
| 6 | 6 |
| 7 #include "bindings/core/v8/ExceptionMessages.h" | 7 #include "bindings/core/v8/ExceptionMessages.h" |
| 8 #include "bindings/core/v8/ExceptionState.h" | 8 #include "bindings/core/v8/ExceptionState.h" |
| 9 #include "core/dom/DOMNodeIds.h" | 9 #include "core/dom/DOMNodeIds.h" |
| 10 #include "core/dom/ExceptionCode.h" | 10 #include "core/dom/ExceptionCode.h" |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 for (const auto& attribute : attributeArray) { | 91 for (const auto& attribute : attributeArray) { |
| 92 properties |= compositorMutablePropertyForName(attribute); | 92 properties |= compositorMutablePropertyForName(attribute); |
| 93 } | 93 } |
| 94 return properties; | 94 return properties; |
| 95 } | 95 } |
| 96 | 96 |
| 97 #if DCHECK_IS_ON() | 97 #if DCHECK_IS_ON() |
| 98 static bool sanityCheckMutableProperties(uint32_t properties) { | 98 static bool sanityCheckMutableProperties(uint32_t properties) { |
| 99 // Ensures that we only have bits set for valid mutable properties. | 99 // Ensures that we only have bits set for valid mutable properties. |
| 100 uint32_t sanityCheckProperties = properties; | 100 uint32_t sanityCheckProperties = properties; |
| 101 for (unsigned i = 0; i < WTF_ARRAY_LENGTH(allowedProperties); ++i) { | 101 for (const auto& property : allowedProperties) |
| 102 sanityCheckProperties &= | 102 sanityCheckProperties &= ~static_cast<uint32_t>(property.property); |
| 103 ~static_cast<uint32_t>(allowedProperties[i].property); | |
| 104 } | |
| 105 return !sanityCheckProperties; | 103 return !sanityCheckProperties; |
| 106 } | 104 } |
| 107 #endif | 105 #endif |
| 108 | 106 |
| 109 CompositorProxy* CompositorProxy::create(ExecutionContext* context, | 107 CompositorProxy* CompositorProxy::create(ExecutionContext* context, |
| 110 Element* element, | 108 Element* element, |
| 111 const Vector<String>& attributeArray, | 109 const Vector<String>& attributeArray, |
| 112 ExceptionState& exceptionState) { | 110 ExceptionState& exceptionState) { |
| 113 if (!context->isDocument()) { | 111 if (!context->isDocument()) { |
| 114 exceptionState.throwTypeError(ExceptionMessages::failedToConstruct( | 112 exceptionState.throwTypeError(ExceptionMessages::failedToConstruct( |
| (...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 299 m_elementId, m_compositorMutableProperties); | 297 m_elementId, m_compositorMutableProperties); |
| 300 } else { | 298 } else { |
| 301 Platform::current()->mainThread()->getWebTaskRunner()->postTask( | 299 Platform::current()->mainThread()->getWebTaskRunner()->postTask( |
| 302 BLINK_FROM_HERE, | 300 BLINK_FROM_HERE, |
| 303 crossThreadBind(&decrementCompositorProxiedPropertiesForElement, | 301 crossThreadBind(&decrementCompositorProxiedPropertiesForElement, |
| 304 m_elementId, m_compositorMutableProperties)); | 302 m_elementId, m_compositorMutableProperties)); |
| 305 } | 303 } |
| 306 } | 304 } |
| 307 | 305 |
| 308 } // namespace blink | 306 } // namespace blink |
| OLD | NEW |