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 |