Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(311)

Issue 1160513004: Fix graphics corruption that can occur in the PDF viewer when scrolling (Closed)

Created:
5 years, 6 months ago by raymes
Modified:
5 years, 6 months ago
Reviewers:
Sam McNally
CC:
chromium-reviews, chrome-apps-syd-reviews_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix graphics corruption that can occur in the PDF viewer when scrolling In a PDF, if we scroll in a reverse direction to the direction we originally scrolled (within the same paint) and there were invalidations that happened in-between we may end up incorrectly clipping the invalidated rects (see crbug.com/488390). This bug doesn't exist in the original implementation (ppapi/utility/graphics/paint_aggregator.cc) which uses a different method of handling invalidations that occur after a scroll. The problem is that when we scroll the invalidated region, we clip it to the scroll rect. This can cause us to lose information about what the invalidated region was if it gets scrolled back into view. We either need to not do this clipping or disallow combining scrolls that occur in different directions with invalidations that happen in-between. BUG=488390 Committed: https://crrev.com/60dbedb323463b79e3c254c38e716efc2d31fbbe Cr-Commit-Position: refs/heads/master@{#332354}

Patch Set 1 #

Patch Set 2 : #

Total comments: 3

Patch Set 3 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+27 lines, -0 lines) Patch
M pdf/paint_aggregator.cc View 1 2 2 chunks +27 lines, -0 lines 0 comments Download

Messages

Total messages: 10 (2 generated)
raymes
5 years, 6 months ago (2015-05-28 05:51:32 UTC) #2
raymes
Hey Sam, PTAL :)
5 years, 6 months ago (2015-06-02 03:01:29 UTC) #3
Sam McNally
https://codereview.chromium.org/1160513004/diff/20001/pdf/paint_aggregator.cc File pdf/paint_aggregator.cc (right): https://codereview.chromium.org/1160513004/diff/20001/pdf/paint_aggregator.cc#newcode13 pdf/paint_aggregator.cc:13: // We don't use std::sign here to avoid any ...
5 years, 6 months ago (2015-06-02 03:29:26 UTC) #4
raymes
https://codereview.chromium.org/1160513004/diff/20001/pdf/paint_aggregator.cc File pdf/paint_aggregator.cc (right): https://codereview.chromium.org/1160513004/diff/20001/pdf/paint_aggregator.cc#newcode14 pdf/paint_aggregator.cc:14: int32_t sign(int32_t num) { On 2015/06/02 03:29:26, Sam McNally ...
5 years, 6 months ago (2015-06-02 06:57:08 UTC) #5
Sam McNally
LGTM
5 years, 6 months ago (2015-06-02 06:57:57 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1160513004/40001
5 years, 6 months ago (2015-06-02 06:58:27 UTC) #8
commit-bot: I haz the power
Committed patchset #3 (id:40001)
5 years, 6 months ago (2015-06-02 07:57:22 UTC) #9
commit-bot: I haz the power
5 years, 6 months ago (2015-06-02 07:58:13 UTC) #10
Message was sent while issue was closed.
Patchset 3 (id:??) landed as
https://crrev.com/60dbedb323463b79e3c254c38e716efc2d31fbbe
Cr-Commit-Position: refs/heads/master@{#332354}

Powered by Google App Engine
This is Rietveld 408576698