OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2010, Google Inc. All rights reserved. | 2 * Copyright (c) 2010, Google Inc. All rights reserved. |
3 * Copyright (C) 2008, 2011 Apple Inc. All Rights Reserved. | 3 * Copyright (C) 2008, 2011 Apple 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 are | 6 * modification, are permitted provided that the following conditions are |
7 * met: | 7 * met: |
8 * | 8 * |
9 * * Redistributions of source code must retain the above copyright | 9 * * 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 436 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
447 | 447 |
448 bool ScrollableArea::hasLayerForScrollCorner() const | 448 bool ScrollableArea::hasLayerForScrollCorner() const |
449 { | 449 { |
450 return layerForScrollCorner(); | 450 return layerForScrollCorner(); |
451 } | 451 } |
452 | 452 |
453 void ScrollableArea::layerForScrollingDidChange(WebCompositorAnimationTimeline*
timeline) | 453 void ScrollableArea::layerForScrollingDidChange(WebCompositorAnimationTimeline*
timeline) |
454 { | 454 { |
455 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) | 455 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) |
456 programmaticScrollAnimator->layerForCompositedScrollingDidChange(timelin
e); | 456 programmaticScrollAnimator->layerForCompositedScrollingDidChange(timelin
e); |
| 457 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) |
| 458 scrollAnimator->layerForCompositedScrollingDidChange(timeline); |
457 } | 459 } |
458 | 460 |
459 bool ScrollableArea::scheduleAnimation() | 461 bool ScrollableArea::scheduleAnimation() |
460 { | 462 { |
461 if (HostWindow* window = hostWindow()) { | 463 if (HostWindow* window = hostWindow()) { |
462 window->scheduleAnimation(widget()); | 464 window->scheduleAnimation(widget()); |
463 return true; | 465 return true; |
464 } | 466 } |
465 return false; | 467 return false; |
466 } | 468 } |
467 | 469 |
468 void ScrollableArea::serviceScrollAnimations(double monotonicTime) | 470 void ScrollableArea::serviceScrollAnimations(double monotonicTime) |
469 { | 471 { |
470 bool requiresAnimationService = false; | 472 bool requiresAnimationService = false; |
471 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) { | 473 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) { |
472 scrollAnimator->serviceScrollAnimations(); | 474 scrollAnimator->tickAnimation(monotonicTime); |
473 if (scrollAnimator->hasRunningAnimation()) | 475 if (scrollAnimator->hasAnimationThatRequiresService()) |
474 requiresAnimationService = true; | 476 requiresAnimationService = true; |
475 } | 477 } |
476 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) { | 478 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) { |
477 programmaticScrollAnimator->tickAnimation(monotonicTime); | 479 programmaticScrollAnimator->tickAnimation(monotonicTime); |
478 if (programmaticScrollAnimator->hasAnimationThatRequiresService()) | 480 if (programmaticScrollAnimator->hasAnimationThatRequiresService()) |
479 requiresAnimationService = true; | 481 requiresAnimationService = true; |
480 } | 482 } |
481 if (!requiresAnimationService) | 483 if (!requiresAnimationService) |
482 deregisterForAnimation(); | 484 deregisterForAnimation(); |
483 } | 485 } |
484 | 486 |
485 void ScrollableArea::updateCompositorScrollAnimations() | 487 void ScrollableArea::updateCompositorScrollAnimations() |
486 { | 488 { |
487 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) | 489 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) |
488 programmaticScrollAnimator->updateCompositorAnimations(); | 490 programmaticScrollAnimator->updateCompositorAnimations(); |
| 491 |
| 492 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) |
| 493 scrollAnimator->updateCompositorAnimations(); |
489 } | 494 } |
490 | 495 |
491 void ScrollableArea::notifyCompositorAnimationFinished(int groupId) | 496 void ScrollableArea::notifyCompositorAnimationFinished(int groupId) |
492 { | 497 { |
493 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) | 498 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) |
494 programmaticScrollAnimator->notifyCompositorAnimationFinished(groupId); | 499 programmaticScrollAnimator->notifyCompositorAnimationFinished(groupId); |
| 500 |
| 501 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) |
| 502 scrollAnimator->notifyCompositorAnimationFinished(groupId); |
495 } | 503 } |
496 | 504 |
497 void ScrollableArea::cancelScrollAnimation() | 505 void ScrollableArea::cancelScrollAnimation() |
498 { | 506 { |
499 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) | 507 if (ScrollAnimatorBase* scrollAnimator = existingScrollAnimator()) |
500 scrollAnimator->cancelAnimations(); | 508 scrollAnimator->cancelAnimation(); |
501 } | 509 } |
502 | 510 |
503 void ScrollableArea::cancelProgrammaticScrollAnimation() | 511 void ScrollableArea::cancelProgrammaticScrollAnimation() |
504 { | 512 { |
505 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) | 513 if (ProgrammaticScrollAnimator* programmaticScrollAnimator = existingProgram
maticScrollAnimator()) |
506 programmaticScrollAnimator->cancelAnimation(); | 514 programmaticScrollAnimator->cancelAnimation(); |
507 } | 515 } |
508 | 516 |
509 DoubleRect ScrollableArea::visibleContentRectDouble(IncludeScrollbarsInRect scro
llbarInclusion) const | 517 DoubleRect ScrollableArea::visibleContentRectDouble(IncludeScrollbarsInRect scro
llbarInclusion) const |
510 { | 518 { |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
578 std::max(0, size.height() - horizontalScrollbarHeight)); | 586 std::max(0, size.height() - horizontalScrollbarHeight)); |
579 } | 587 } |
580 | 588 |
581 DEFINE_TRACE(ScrollableArea) | 589 DEFINE_TRACE(ScrollableArea) |
582 { | 590 { |
583 visitor->trace(m_scrollAnimator); | 591 visitor->trace(m_scrollAnimator); |
584 visitor->trace(m_programmaticScrollAnimator); | 592 visitor->trace(m_programmaticScrollAnimator); |
585 } | 593 } |
586 | 594 |
587 } // namespace blink | 595 } // namespace blink |
OLD | NEW |