summaryrefslogtreecommitdiffstats
path: root/pdf/pdfium
diff options
context:
space:
mode:
authorvitalybuka <vitalybuka@chromium.org>2015-08-04 16:19:02 -0700
committerCommit bot <commit-bot@chromium.org>2015-08-04 23:20:47 +0000
commit0bb69c7f9ab18c6e79dd607ee6ab405231964dac (patch)
tree40b05aa3555cb0d35a95170992fdb7347d85c174 /pdf/pdfium
parent2bcebfbff86ffc73ee01f58a67e15541ffa4a150 (diff)
downloadchromium_src-0bb69c7f9ab18c6e79dd607ee6ab405231964dac.zip
chromium_src-0bb69c7f9ab18c6e79dd607ee6ab405231964dac.tar.gz
chromium_src-0bb69c7f9ab18c6e79dd607ee6ab405231964dac.tar.bz2
Revert of Add a scroll offset to PDF documents to account for the top material design toolbar. (patchset #7 id:120001 of https://codereview.chromium.org/1255403002/ )
Reason for revert: This patch breaks print preview. BUG=516829 Original issue's description: > Add a scroll offset to PDF documents to account for the top material design toolbar. > > Previously the toolbar in the material design PDF UI would always cover the top > of pages when it was first loaded or when a page was navigated to using the > page selector. Now we ensure that a blank region is left at the very top of > the document when it is first loaded. This is the region that the toolbar > covers, so the document is not obscured at all. When pages are navigated to, we > ensure that the top of the selected page is always underneath the toolbar > so that it is not obscured. The one exception to this is when in fit-to-page > mode which causes the page to be zoomed to cover the entire screen, ignoring > the toolbar. This is so that users can take advantaging of filling all of the > screen real-estate with a page when that is what they want. > > This is implemented by initially scrolling the document to a negative offset > (which is equal to the toolbar height). All subsequent scrolls are relative > to this initial scroll. A few small bugs that assumed there was no blank space > above the first page have also been fixed. > > BUG=439114 > > Committed: https://crrev.com/daad0f1f879b13c8b55797ae5ce106d382283047 > Cr-Commit-Position: refs/heads/master@{#341685} TBR=sammc@chromium.org,tsergeant@chromium.org,raymes@chromium.org BUG=439114 Review URL: https://codereview.chromium.org/1267553004 Cr-Commit-Position: refs/heads/master@{#341820}
Diffstat (limited to 'pdf/pdfium')
-rw-r--r--pdf/pdfium/pdfium_engine.cc9
-rw-r--r--pdf/pdfium/pdfium_engine.h5
2 files changed, 4 insertions, 10 deletions
diff --git a/pdf/pdfium/pdfium_engine.cc b/pdf/pdfium/pdfium_engine.cc
index fc36c1e..89fa7eb 100644
--- a/pdf/pdfium/pdfium_engine.cc
+++ b/pdf/pdfium/pdfium_engine.cc
@@ -1071,15 +1071,6 @@ void PDFiumEngine::Paint(const pp::Rect& rect,
if (dirty_in_screen.IsEmpty())
continue;
- // Compute the leftover dirty region. The first page may have blank space
- // above it, in which case we also need to subtract that space from the
- // dirty region.
- if (i == 0) {
- pp::Rect blank_space_in_screen = dirty_in_screen;
- blank_space_in_screen.set_y(0);
- blank_space_in_screen.set_height(dirty_in_screen.y());
- leftover = leftover.Subtract(blank_space_in_screen);
- }
leftover = leftover.Subtract(dirty_in_screen);
if (pages_[index]->available()) {
diff --git a/pdf/pdfium/pdfium_engine.h b/pdf/pdfium/pdfium_engine.h
index c8ee6bd..ff45f45 100644
--- a/pdf/pdfium/pdfium_engine.h
+++ b/pdf/pdfium/pdfium_engine.h
@@ -84,7 +84,6 @@ class PDFiumEngine : public PDFEngine,
virtual int GetMostVisiblePage();
virtual pp::Rect GetPageRect(int index);
virtual pp::Rect GetPageContentsRect(int index);
- virtual pp::Rect GetPageScreenRect(int page_index) const;
virtual int GetVerticalScrollbarYPosition() { return position_.y(); }
virtual void PaintThumbnail(pp::ImageData* image_data, int index);
virtual void SetGrayscale(bool grayscale);
@@ -374,6 +373,10 @@ class PDFiumEngine : public PDFEngine,
// Returns the currently visible rectangle in document coordinates.
pp::Rect GetVisibleRect() const;
+ // Returns a page's rect in screen coordinates, as well as its surrounding
+ // border areas and bottom separator.
+ pp::Rect GetPageScreenRect(int page_index) const;
+
// Given a rectangle in document coordinates, returns the rectange into screen
// coordinates (i.e. 0,0 is top left corner of plugin area). If it's not
// visible, an empty rectangle is returned.