equal
deleted
inserted
replaced
507 hostWindow()->repaint(panScrollIconDirtyRect, true); |
507 hostWindow()->repaint(panScrollIconDirtyRect, true); |
508 } |
508 } |
509 |
509 |
510 if (canBlitOnScroll()) { // The main frame can just blit the WebView window |
510 if (canBlitOnScroll()) { // The main frame can just blit the WebView window |
511 // FIXME: Find a way to blit subframes without blitting overlapping content |
511 // FIXME: Find a way to blit subframes without blitting overlapping content |
512 hostWindow()->scroll(-scrollDelta, scrollViewRect, clipRect); |
512 scrollContentsFastPath(-scrollDelta, scrollViewRect, clipRect); |
513 } else { |
513 } else { |
514 // We need to go ahead and repaint the entire backing store. Do it now before moving the |
514 // We need to go ahead and repaint the entire backing store. Do it now before moving the |
515 // windowed plugins. |
515 // windowed plugins. |
516 hostWindow()->repaint(updateRect, true, false, true); // Invalidate the backing store and repaint it synchronously |
516 hostWindow()->repaint(updateRect, true, false, true); // Invalidate the backing store and repaint it synchronously |
517 } |
517 } |
520 frameRectsChanged(); |
520 frameRectsChanged(); |
521 |
521 |
522 // Now update the window (which should do nothing but a blit of the backing store's updateRect and so should |
522 // Now update the window (which should do nothing but a blit of the backing store's updateRect and so should |
523 // be very fast). |
523 // be very fast). |
524 hostWindow()->paint(); |
524 hostWindow()->paint(); |
|
525 } |
|
526 |
|
527 void ScrollView::scrollContentsFastPath(const IntSize& scrollDelta, const IntRect& rectToScroll, const IntRect& clipRect) |
|
528 { |
|
529 hostWindow()->scroll(scrollDelta, rectToScroll, clipRect); |
525 } |
530 } |
526 |
531 |
527 IntPoint ScrollView::windowToContents(const IntPoint& windowPoint) const |
532 IntPoint ScrollView::windowToContents(const IntPoint& windowPoint) const |
528 { |
533 { |
529 IntPoint viewPoint = convertFromContainingWindow(windowPoint); |
534 IntPoint viewPoint = convertFromContainingWindow(windowPoint); |