diff options
author | fsamuel@chromium.org <fsamuel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-16 22:54:44 +0000 |
---|---|---|
committer | fsamuel@chromium.org <fsamuel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-16 22:54:44 +0000 |
commit | c514d637a6470da60e02cc190e71e20a691e14a2 (patch) | |
tree | f6f7b4765d2dbc27c8bfd83d84cf413c5bb993a8 /content | |
parent | 91c6cf4d358844116236ddef83ac34397af20d82 (diff) | |
download | chromium_src-c514d637a6470da60e02cc190e71e20a691e14a2.zip chromium_src-c514d637a6470da60e02cc190e71e20a691e14a2.tar.gz chromium_src-c514d637a6470da60e02cc190e71e20a691e14a2.tar.bz2 |
Enabled scaling zoom for TOUCH_UI.
This patch depends on landing this WebKit patch first:
https://bugs.webkit.org/show_bug.cgi?id=66067
BUG=none
TEST=manually
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=96694
Review URL: http://codereview.chromium.org/7619015
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97052 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r-- | content/renderer/render_view.cc | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/content/renderer/render_view.cc b/content/renderer/render_view.cc index 369b267..0da84a9 100644 --- a/content/renderer/render_view.cc +++ b/content/renderer/render_view.cc @@ -262,6 +262,8 @@ static const int kDelaySecondsForContentStateSync = 1; // The maximum number of popups that can be spawned from one page. static const int kMaximumNumberOfUnacknowledgedPopups = 25; +static const float kScalingIncrement = 0.1f; + static void GetRedirectChain(WebDataSource* ds, std::vector<GURL>* result) { WebVector<WebURL> urls; ds->redirectChain(urls); @@ -3374,7 +3376,7 @@ void RenderView::OnZoom(PageZoom::Function function) { return; webview()->hidePopups(); - +#if !defined(TOUCH_UI) double old_zoom_level = webview()->zoomLevel(); double zoom_level; if (function == PageZoom::RESET) { @@ -3395,8 +3397,18 @@ void RenderView::OnZoom(PageZoom::Function function) { zoom_level = static_cast<int>(old_zoom_level); } } - webview()->setZoomLevel(false, zoom_level); +#else + double old_page_scale_factor = webview()->pageScaleFactor(); + double page_scale_factor; + if (function == PageZoom::RESET) { + page_scale_factor = 1.0; + } else { + page_scale_factor = old_page_scale_factor + + (function > 0 ? kScalingIncrement : -kScalingIncrement); + } + webview()->scalePage(page_scale_factor, WebPoint(0, 0)); +#endif zoomLevelChanged(); } |