| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "cc/blink/web_layer_impl.h" | 5 #include "cc/blink/web_layer_impl.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <utility> | 10 #include <utility> |
| (...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 338 } | 338 } |
| 339 | 339 |
| 340 void WebLayerImpl::setHaveScrollEventHandlers(bool have_scroll_event_handlers) { | 340 void WebLayerImpl::setHaveScrollEventHandlers(bool have_scroll_event_handlers) { |
| 341 layer_->SetHaveScrollEventHandlers(have_scroll_event_handlers); | 341 layer_->SetHaveScrollEventHandlers(have_scroll_event_handlers); |
| 342 } | 342 } |
| 343 | 343 |
| 344 bool WebLayerImpl::haveScrollEventHandlers() const { | 344 bool WebLayerImpl::haveScrollEventHandlers() const { |
| 345 return layer_->have_scroll_event_handlers(); | 345 return layer_->have_scroll_event_handlers(); |
| 346 } | 346 } |
| 347 | 347 |
| 348 static_assert(static_cast<uint32_t>( | |
| 349 blink::WebMainThreadScrollingReason::NotScrollingOnMain) == | |
| 350 cc::MainThreadScrollingReason::kNotScrollingOnMain, | |
| 351 "MainThreadScrollingReason and " | |
| 352 "WebMainThreadScrollingReason enums must match"); | |
| 353 static_assert( | |
| 354 static_cast<uint32_t>(blink::WebMainThreadScrollingReason:: | |
| 355 HasBackgroundAttachmentFixedObjects) == | |
| 356 cc::MainThreadScrollingReason::kHasBackgroundAttachmentFixedObjects, | |
| 357 "MainThreadScrollingReason and " | |
| 358 "WebMainThreadScrollingReason enums must match"); | |
| 359 static_assert( | |
| 360 static_cast<uint32_t>(blink::WebMainThreadScrollingReason:: | |
| 361 HasNonLayerViewportConstrainedObjects) == | |
| 362 cc::MainThreadScrollingReason::kHasNonLayerViewportConstrainedObjects, | |
| 363 "MainThreadScrollingReason and " | |
| 364 "WebMainThreadScrollingReason enums must match"); | |
| 365 static_assert( | |
| 366 static_cast<uint32_t>( | |
| 367 blink::WebMainThreadScrollingReason::ThreadedScrollingDisabled) == | |
| 368 cc::MainThreadScrollingReason::kThreadedScrollingDisabled, | |
| 369 "MainThreadScrollingReason and " | |
| 370 "WebMainThreadScrollingReason enums must match"); | |
| 371 static_assert(static_cast<uint32_t>( | |
| 372 blink::WebMainThreadScrollingReason::ScrollBarScrolling) == | |
| 373 cc::MainThreadScrollingReason::kScrollbarScrolling, | |
| 374 "MainThreadScrollingReason and " | |
| 375 "WebMainThreadScrollingReason enums must match"); | |
| 376 static_assert( | |
| 377 static_cast<uint32_t>(blink::WebMainThreadScrollingReason::PageOverlay) == | |
| 378 cc::MainThreadScrollingReason::kPageOverlay, | |
| 379 "MainThreadScrollingReason and " | |
| 380 "WebMainThreadScrollingReason enums must match"); | |
| 381 | |
| 382 void WebLayerImpl::addMainThreadScrollingReasons( | 348 void WebLayerImpl::addMainThreadScrollingReasons( |
| 383 blink::WebMainThreadScrollingReason::WebMainThreadScrollingReason | 349 uint32_t main_thread_scrolling_reasons) { |
| 384 main_thread_scrolling_reasons) { | |
| 385 DCHECK(main_thread_scrolling_reasons); | 350 DCHECK(main_thread_scrolling_reasons); |
| 386 // WebLayerImpl should only know about non-transient scrolling | 351 // WebLayerImpl should only know about non-transient scrolling |
| 387 // reasons. Transient scrolling reasons are computed per hit test. | 352 // reasons. Transient scrolling reasons are computed per hit test. |
| 388 DCHECK_LE( | 353 // TODO(tdresser): This is comparing less than a bit flag but that's not valid |
| 389 main_thread_scrolling_reasons, | 354 // if there is more than one reason given in |main_thread_scrolling_reasons|. |
| 390 static_cast< | 355 DCHECK_LE(main_thread_scrolling_reasons, |
| 391 blink::WebMainThreadScrollingReason::WebMainThreadScrollingReason>( | 356 cc::MainThreadScrollingReason::kMaxNonTransientScrollingReason); |
| 392 cc::MainThreadScrollingReason::kMaxNonTransientScrollingReason)); | |
| 393 layer_->AddMainThreadScrollingReasons(main_thread_scrolling_reasons); | 357 layer_->AddMainThreadScrollingReasons(main_thread_scrolling_reasons); |
| 394 } | 358 } |
| 395 | 359 |
| 396 void WebLayerImpl::clearMainThreadScrollingReasons() { | 360 void WebLayerImpl::clearMainThreadScrollingReasons() { |
| 397 layer_->ClearMainThreadScrollingReasons(); | 361 layer_->ClearMainThreadScrollingReasons(); |
| 398 } | 362 } |
| 399 | 363 |
| 400 bool WebLayerImpl::shouldScrollOnMainThread() const { | 364 bool WebLayerImpl::shouldScrollOnMainThread() const { |
| 401 return layer_->should_scroll_on_main_thread(); | 365 return layer_->should_scroll_on_main_thread(); |
| 402 } | 366 } |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 616 | 580 |
| 617 Layer* WebLayerImpl::layer() const { | 581 Layer* WebLayerImpl::layer() const { |
| 618 return layer_.get(); | 582 return layer_.get(); |
| 619 } | 583 } |
| 620 | 584 |
| 621 void WebLayerImpl::SetContentsOpaqueIsFixed(bool fixed) { | 585 void WebLayerImpl::SetContentsOpaqueIsFixed(bool fixed) { |
| 622 contents_opaque_is_fixed_ = fixed; | 586 contents_opaque_is_fixed_ = fixed; |
| 623 } | 587 } |
| 624 | 588 |
| 625 } // namespace cc_blink | 589 } // namespace cc_blink |
| OLD | NEW |