Changeset 235529 in webkit
- Timestamp:
- Aug 30, 2018 3:55:27 PM (6 years ago)
- Location:
- trunk/Source/WebKit
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit/ChangeLog
r235521 r235529 1 2018-08-30 Justin Michaud <justin@justinmichaud.com> 2 3 [GTK] Touchscreen pinch to zoom should scale the page like other platforms 4 https://bugs.webkit.org/show_bug.cgi?id=188746 5 6 Changes the pinch-to-zoom gesture to magnify/scale the page, rather than zooming in. Also resets this magnification when the zoom level is changed. 7 8 Reviewed by Michael Catanzaro. 9 10 * UIProcess/API/glib/WebKitWebView.cpp: 11 (webkit_web_view_set_zoom_level): 12 * UIProcess/API/gtk/PageClientImpl.cpp: 13 (WebKit::PageClientImpl::zoom): Deleted. 14 * UIProcess/API/gtk/PageClientImpl.h: 15 * UIProcess/API/gtk/WebKitWebViewBase.cpp: 16 * UIProcess/gtk/GestureController.cpp: 17 (WebKit::GestureController::ZoomGesture::handleZoom): 18 (WebKit::GestureController::ZoomGesture::scaleChanged): 19 * UIProcess/gtk/GestureController.h: 20 1 21 2018-08-30 Tim Horton <timothy_horton@apple.com> 2 22 -
trunk/Source/WebKit/UIProcess/API/glib/WebKitWebView.cpp
r234985 r235529 3119 3119 3120 3120 auto& page = getPage(webView); 3121 page.scalePage(1.0, IntPoint()); // Reset page scale when zoom level is changed 3121 3122 if (webkit_settings_get_zoom_text_only(webView->priv->settings.get())) 3122 3123 page.setTextZoomFactor(zoomLevel); -
trunk/Source/WebKit/UIProcess/API/gtk/PageClientImpl.cpp
r235265 r235529 474 474 #endif 475 475 476 void PageClientImpl::zoom(double zoomLevel)477 {478 if (WEBKIT_IS_WEB_VIEW(m_viewWidget)) {479 webkit_web_view_set_zoom_level(WEBKIT_WEB_VIEW(m_viewWidget), zoomLevel);480 return;481 }482 483 webkitWebViewBaseGetPage(WEBKIT_WEB_VIEW_BASE(m_viewWidget))->setPageZoomFactor(zoomLevel);484 }485 486 476 } // namespace WebKit -
trunk/Source/WebKit/UIProcess/API/gtk/PageClientImpl.h
r234816 r235529 53 53 54 54 GtkWidget* viewWidget() { return m_viewWidget; } 55 56 void zoom(double);57 55 58 56 private: -
trunk/Source/WebKit/UIProcess/API/gtk/WebKitWebViewBase.cpp
r234920 r235529 1117 1117 void startZoom(const IntPoint& center, double& initialScale, IntPoint& initialPoint) final 1118 1118 { 1119 auto* page = webkitWebViewBaseGetPage(m_webView);1119 auto* page = m_webView->priv->pageProxy.get(); 1120 1120 ASSERT(page); 1121 initialScale = page->page ZoomFactor();1121 initialScale = page->pageScaleFactor(); 1122 1122 page->getCenterForZoomGesture(center, initialPoint); 1123 1123 } 1124 1124 1125 void zoom(double scale ) final1125 void zoom(double scale, const IntPoint& origin) final 1126 1126 { 1127 m_webView->priv->pageClient->zoom(scale); 1127 auto* page = m_webView->priv->pageProxy.get(); 1128 ASSERT(page); 1129 1130 page->scalePage(scale, origin); 1128 1131 } 1129 1132 -
trunk/Source/WebKit/UIProcess/gtk/GestureController.cpp
r228373 r235529 204 204 void GestureController::ZoomGesture::handleZoom() 205 205 { 206 m_client.zoom(m_scale); 206 FloatPoint scaledZoomCenter(m_initialPoint); 207 scaledZoomCenter.scale(m_scale); 208 209 m_client.zoom(m_scale, WebCore::roundedIntPoint(FloatPoint(scaledZoomCenter - m_viewPoint))); 207 210 } 208 211 … … 210 213 { 211 214 zoomGesture->m_scale = zoomGesture->m_initialScale * scale; 215 if (zoomGesture->m_scale < 1.0) 216 zoomGesture->m_scale = 1.0; 217 212 218 zoomGesture->m_viewPoint = zoomGesture->center(); 219 213 220 if (zoomGesture->m_idle.isActive()) 214 221 return; -
trunk/Source/WebKit/UIProcess/gtk/GestureController.h
r227961 r235529 52 52 53 53 virtual void startZoom(const WebCore::IntPoint& center, double& initialScale, WebCore::IntPoint& initialPoint) = 0; 54 virtual void zoom(double ) = 0;54 virtual void zoom(double scale, const WebCore::IntPoint& origin) = 0; 55 55 56 56 virtual void longPress(GdkEventTouch*) = 0;
Note: See TracChangeset
for help on using the changeset viewer.