Expose pageScaleFactor() to Chromium's WebViewImpl
authorfsamuel@chromium.org <fsamuel@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 12 Aug 2011 22:56:35 +0000 (22:56 +0000)
committerfsamuel@chromium.org <fsamuel@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 12 Aug 2011 22:56:35 +0000 (22:56 +0000)
https://bugs.webkit.org/show_bug.cgi?id=66067

Reviewed by Darin Fisher.

* public/WebView.h:
* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::pageScaleFactor):
* src/WebViewImpl.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@93007 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebKit/chromium/ChangeLog
Source/WebKit/chromium/public/WebView.h
Source/WebKit/chromium/src/WebViewImpl.cpp
Source/WebKit/chromium/src/WebViewImpl.h

index 2908cb293450c33764aef8ee3db8d6b4c6f02857..7c4dd58472fa84f90db8a2fac09ec4776c298630 100644 (file)
@@ -1,3 +1,15 @@
+2011-08-12  Fady Samuel  <fsamuel@chromium.org>
+
+        Expose pageScaleFactor() to Chromium's WebViewImpl
+        https://bugs.webkit.org/show_bug.cgi?id=66067
+
+        Reviewed by Darin Fisher.
+
+        * public/WebView.h:
+        * src/WebViewImpl.cpp:
+        (WebKit::WebViewImpl::pageScaleFactor):
+        * src/WebViewImpl.h:
+
 2011-08-12  Sadrul Habib Chowdhury  <sadrul@chromium.org>
 
         Wire gesture tap events, add support for gesture events in the DRT and add a layout test for it.
 2011-08-12  Sadrul Habib Chowdhury  <sadrul@chromium.org>
 
         Wire gesture tap events, add support for gesture events in the DRT and add a layout test for it.
index 26599ac30199f8e45eaf6b4b3ca5e97cd6c070b8..52c9a6de190344be3d599343808f1cf9507e939a 100644 (file)
@@ -203,6 +203,10 @@ public:
     WEBKIT_EXPORT static double zoomLevelToZoomFactor(double zoomLevel);
     WEBKIT_EXPORT static double zoomFactorToZoomLevel(double factor);
 
     WEBKIT_EXPORT static double zoomLevelToZoomFactor(double zoomLevel);
     WEBKIT_EXPORT static double zoomFactorToZoomLevel(double factor);
 
+    // Gets the scale factor of the page, where 1.0 is the normal size, > 1.0
+    // is scaled up, < 1.0 is scaled down.
+    virtual float pageScaleFactor() const = 0;
+
     // Scales a page by a factor of scaleFactor and then sets a scroll position to (x, y).
     // scalePage() magnifies and shrinks a page without affecting layout.
     // On the other hand, zooming affects layout of the page.
     // Scales a page by a factor of scaleFactor and then sets a scroll position to (x, y).
     // scalePage() magnifies and shrinks a page without affecting layout.
     // On the other hand, zooming affects layout of the page.
index e15eb3974a493d93f06e9652b1def0c22f505e21..1f6ce634a3e1ef6397bbc0e16758d0d15b149701 100644 (file)
@@ -1838,6 +1838,18 @@ double WebView::zoomFactorToZoomLevel(double factor)
     return log(factor) / log(textSizeMultiplierRatio);
 }
 
     return log(factor) / log(textSizeMultiplierRatio);
 }
 
+float WebViewImpl::pageScaleFactor() const
+{
+    if (!page())
+        return 1.0;
+
+    Frame* frame = page()->mainFrame();
+    if (!frame)
+        return 1.0;
+
+    return frame->pageScaleFactor();
+}
+
 void WebViewImpl::scalePage(float scaleFactor, WebPoint origin)
 {
     if (!page())
 void WebViewImpl::scalePage(float scaleFactor, WebPoint origin)
 {
     if (!page())
index 4a2a29ecb982f7b6617d64594ec85725c3b502bc..c6040c0858cf0b9b4706ceba181f6ac69fcd091d 100644 (file)
@@ -155,6 +155,7 @@ public:
     virtual double setZoomLevel(bool textOnly, double zoomLevel);
     virtual void zoomLimitsChanged(double minimumZoomLevel,
                                    double maximumZoomLevel);
     virtual double setZoomLevel(bool textOnly, double zoomLevel);
     virtual void zoomLimitsChanged(double minimumZoomLevel,
                                    double maximumZoomLevel);
+    virtual float pageScaleFactor() const;
     virtual void scalePage(float scaleFactor, WebPoint origin);
     virtual void performMediaPlayerAction(
         const WebMediaPlayerAction& action,
     virtual void scalePage(float scaleFactor, WebPoint origin);
     virtual void performMediaPlayerAction(
         const WebMediaPlayerAction& action,