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

Issue 347763007: Improve scrolling performance in OOP PDF (Closed)

Created:
6 years, 6 months ago by raymes
Modified:
6 years, 6 months ago
Reviewers:
Lei Zhang
CC:
chromium-reviews, arv+watch_chromium.org, chrome-apps-syd-reviews_chromium.org
Project:
chromium
Visibility:
Public.

Description

Improve scrolling performance in OOP PDF This increases the performance of scrolling in OOP PDF by not sending viewport changes via postMessage every time a scroll event occurs on the page. Instead, scroll events are sent along with pepper DidChangeView messages, which is a much more responsive way of updating the scroll position. Unfortunately this introduces some issues coordinating zoom and scroll events on the page. When a zoom happens in the container page, a scroll message might be sent to the plugin via DidChangeView. Then we send a zoom change message via postMessage. The result is that the zooming and scrolling happen asynchronously and result in a flickering effect. To avoid this, we first notify the plugin that we are about to zoom which causes it to stop reacting to scroll messages. After we have finished zooming we notify the plugin again so that it can continue reacting to scroll messages. BUG=386920 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=279910

Patch Set 1 #

Total comments: 2

Patch Set 2 : #

Patch Set 3 : #

Patch Set 4 : #

Unified diffs Side-by-side diffs Delta from patch set Stats (+278 lines, -142 lines) Patch
M chrome/browser/resources/pdf/pdf.js View 1 2 4 chunks +41 lines, -13 lines 0 comments Download
M chrome/browser/resources/pdf/viewport.js View 9 chunks +122 lines, -59 lines 0 comments Download
M chrome/test/data/pdf/basic_plugin_test.js View 1 2 1 chunk +1 line, -1 line 0 comments Download
M chrome/test/data/pdf/viewport_test.js View 18 chunks +55 lines, -32 lines 0 comments Download
M pdf/out_of_process_instance.h View 1 2 3 4 chunks +8 lines, -5 lines 0 comments Download
M pdf/out_of_process_instance.cc View 1 2 3 8 chunks +51 lines, -32 lines 0 comments Download

Messages

Total messages: 14 (0 generated)
raymes
6 years, 6 months ago (2014-06-23 05:08:32 UTC) #1
Lei Zhang
lgtm https://codereview.chromium.org/347763007/diff/1/pdf/out_of_process_instance.cc File pdf/out_of_process_instance.cc (right): https://codereview.chromium.org/347763007/diff/1/pdf/out_of_process_instance.cc#newcode519 pdf/out_of_process_instance.cc:519: int max_x = document_size_.width() * zoom_ - plugin_dip_size_.width(); ...
6 years, 6 months ago (2014-06-23 09:19:41 UTC) #2
raymes
https://codereview.chromium.org/347763007/diff/1/pdf/out_of_process_instance.cc File pdf/out_of_process_instance.cc (right): https://codereview.chromium.org/347763007/diff/1/pdf/out_of_process_instance.cc#newcode519 pdf/out_of_process_instance.cc:519: int max_x = document_size_.width() * zoom_ - plugin_dip_size_.width(); On ...
6 years, 6 months ago (2014-06-24 00:41:53 UTC) #3
raymes
The CQ bit was checked by raymes@chromium.org
6 years, 6 months ago (2014-06-24 00:41:56 UTC) #4
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/raymes@chromium.org/347763007/20001
6 years, 6 months ago (2014-06-24 00:43:32 UTC) #5
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_chromium_chromeos_rel on tryserver.chromium ...
6 years, 6 months ago (2014-06-24 05:10:54 UTC) #6
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 6 months ago (2014-06-24 06:30:32 UTC) #7
commit-bot: I haz the power
Try jobs failed on following builders: linux_chromium_chromeos_rel on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/linux_chromium_chromeos_rel/builds/41295) linux_chromium_rel on tryserver.chromium (http://build.chromium.org/p/tryserver.chromium/builders/linux_chromium_rel/builds/45272)
6 years, 6 months ago (2014-06-24 06:30:33 UTC) #8
raymes
The CQ bit was checked by raymes@chromium.org
6 years, 6 months ago (2014-06-25 23:41:11 UTC) #9
raymes
The CQ bit was unchecked by raymes@chromium.org
6 years, 6 months ago (2014-06-25 23:41:13 UTC) #10
raymes
The CQ bit was checked by raymes@chromium.org
6 years, 6 months ago (2014-06-25 23:59:18 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/raymes@chromium.org/347763007/60001
6 years, 6 months ago (2014-06-26 00:03:00 UTC) #12
commit-bot: I haz the power
FYI, CQ is re-trying this CL (attempt #1). The failing builders are: linux_chromium_gn_rel on tryserver.chromium ...
6 years, 6 months ago (2014-06-26 04:31:50 UTC) #13
commit-bot: I haz the power
6 years, 6 months ago (2014-06-26 05:45:40 UTC) #14
Message was sent while issue was closed.
Change committed as 279910

Powered by Google App Engine
This is Rietveld 408576698