Changeset 139675 in webkit
- Timestamp:
- Jan 14, 2013 3:13:13 PM (11 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r139665 r139675 1 2013-01-14 Huang Dongsung <luxtella@company100.net> 2 3 [EFL] REGRESSION(r139189): MiniBrowser renders abnormally with -r option. 4 https://bugs.webkit.org/show_bug.cgi?id=106512 5 6 Reviewed by Kenneth Rohde Christiansen. 7 8 PageViewportController handles only pageScaleFactor after r139189. So 9 PageViewportControllerClientEFL calls EwkView::setScaleFactor() with 10 pageScaleFactor instead of pageScaleFactor * deviceScaleFactor. 11 12 This patch makes EwkView handle pageScaleFactor. 13 1. EwkView uses pageScaleFactor * deviceScaleFactor when drawing in 14 the device unit. 15 2. EwkView uses pageScaleFactor when notifying the scale to 16 PageViewportController. 17 18 * UIProcess/API/efl/EwkViewImpl.cpp: 19 (EwkViewImpl::EwkViewImpl): 20 (EwkViewImpl::deviceScaleFactor): 21 (EwkViewImpl::transformFromScene): 22 (EwkViewImpl::displayTimerFired): 23 * UIProcess/API/efl/EwkViewImpl.h: 24 (EwkViewImpl): 25 (EwkViewImpl::setPageScaleFactor): 26 (EwkViewImpl::pageScaleFactor): 27 * UIProcess/PageViewportController.cpp: 28 (WebKit::PageViewportController::didRenderFrame): 29 * UIProcess/PageViewportControllerClient.h: 30 (PageViewportControllerClient): 31 * UIProcess/efl/PageClientLegacyImpl.cpp: 32 (WebKit::PageClientLegacyImpl::updateViewportSize): 33 * UIProcess/efl/PageViewportControllerClientEfl.cpp: 34 (WebKit::PageViewportControllerClientEfl::setViewportPosition): 35 (WebKit::PageViewportControllerClientEfl::setPageScaleFactor): 36 (WebKit::PageViewportControllerClientEfl::didResumeContent): 37 * UIProcess/efl/PageViewportControllerClientEfl.h: 38 (PageViewportControllerClientEfl): 39 * UIProcess/qt/PageViewportControllerClientQt.cpp: 40 (WebKit::PageViewportControllerClientQt::setPageScaleFactor): 41 * UIProcess/qt/PageViewportControllerClientQt.h: 42 (PageViewportControllerClientQt): 43 1 44 2013-01-14 Max Vujovic <mvujovic@adobe.com> 2 45 -
trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp
r138780 r139675 132 132 , m_backForwardList(EwkBackForwardList::create(toAPI(m_pageProxy->backForwardList()))) 133 133 #if USE(TILED_BACKING_STORE) 134 , m_ scaleFactor(1)134 , m_pageScaleFactor(1) 135 135 #endif 136 136 , m_settings(EwkSettings::create(this)) … … 298 298 } 299 299 300 float EwkViewImpl::deviceScaleFactor() const 301 { 302 return m_pageProxy->deviceScaleFactor(); 303 } 304 300 305 AffineTransform EwkViewImpl::transformFromScene() const 301 306 { … … 303 308 304 309 #if USE(TILED_BACKING_STORE) 305 // Note that the scale factor incl page and device scale for now. 306 transform.scale(1 / m_scaleFactor); 310 // Note that we apply both page and device scale factors. 311 transform.scale(1 / pageScaleFactor()); 312 transform.scale(1 / deviceScaleFactor()); 307 313 transform.translate(pagePosition().x(), pagePosition().y()); 308 314 #endif … … 405 411 RefPtr<cairo_t> graphicsContext = adoptRef(cairo_create(surface.get())); 406 412 cairo_translate(graphicsContext.get(), - pagePosition().x(), - pagePosition().y()); 407 cairo_scale(graphicsContext.get(), m_scaleFactor, m_scaleFactor); 413 cairo_scale(graphicsContext.get(), pageScaleFactor(), pageScaleFactor()); 414 cairo_scale(graphicsContext.get(), deviceScaleFactor(), deviceScaleFactor()); 408 415 renderer->paintToGraphicsContext(graphicsContext.get()); 409 416 evas_object_image_data_update_add(sd->image, 0, 0, viewport.width(), viewport.height()); -
trunk/Source/WebKit2/UIProcess/API/efl/EwkViewImpl.h
r138780 r139675 123 123 124 124 void setDeviceScaleFactor(float scale); 125 float deviceScaleFactor() const; 125 126 126 127 WebCore::AffineTransform transformToScene() const; … … 200 201 WebKit::PageClientBase* pageClient() { return m_pageClient.get(); } 201 202 202 void set ScaleFactor(float scaleFactor) { m_scaleFactor = scaleFactor; }203 float scaleFactor() const { return m_scaleFactor; }203 void setPageScaleFactor(float scaleFactor) { m_pageScaleFactor = scaleFactor; } 204 float pageScaleFactor() const { return m_pageScaleFactor; } 204 205 205 206 void setPagePosition(const WebCore::FloatPoint& position) { m_pagePosition = position; } … … 264 265 OwnPtr<EwkBackForwardList> m_backForwardList; 265 266 #if USE(TILED_BACKING_STORE) 266 float m_ scaleFactor;267 float m_pageScaleFactor; 267 268 WebCore::FloatPoint m_pagePosition; 268 269 #endif -
trunk/Source/WebKit2/UIProcess/PageViewportController.cpp
r139312 r139675 191 191 if (m_pendingScaleChange) { 192 192 m_pendingScaleChange = false; 193 m_client->set ContentsScale(m_pageScaleFactor);193 m_client->setPageScaleFactor(m_pageScaleFactor); 194 194 195 195 // The scale changed, we have to re-pixel align. -
trunk/Source/WebKit2/UIProcess/PageViewportControllerClient.h
r137149 r139675 40 40 41 41 virtual void setViewportPosition(const WebCore::FloatPoint& contentsPoint) = 0; 42 virtual void set ContentsScale(float) = 0;42 virtual void setPageScaleFactor(float) = 0; 43 43 44 44 virtual void didResumeContent() = 0; -
trunk/Source/WebKit2/UIProcess/efl/PageClientLegacyImpl.cpp
r137746 r139675 51 51 { 52 52 #if USE(TILED_BACKING_STORE) 53 m_viewImpl->page()->drawingArea()->setVisibleContentsRect(IntRect(roundedIntPoint(m_viewImpl->pagePosition()), m_viewImpl->size()), m_viewImpl-> scaleFactor(), FloatPoint());53 m_viewImpl->page()->drawingArea()->setVisibleContentsRect(IntRect(roundedIntPoint(m_viewImpl->pagePosition()), m_viewImpl->size()), m_viewImpl->pageScaleFactor(), FloatPoint()); 54 54 #endif 55 55 } -
trunk/Source/WebKit2/UIProcess/efl/PageViewportControllerClientEfl.cpp
r139274 r139675 80 80 81 81 FloatPoint pos(contentsPoint); 82 pos.scale(scaleFactor(), scaleFactor()); 82 pos.scale(m_viewImpl->pageScaleFactor(), m_viewImpl->pageScaleFactor()); 83 pos.scale(m_viewImpl->deviceScaleFactor(), m_viewImpl->deviceScaleFactor()); 83 84 m_viewImpl->setPagePosition(pos); 84 85 85 m_controller->didChangeContentsVisibility(m_contentPosition, scaleFactor());86 m_controller->didChangeContentsVisibility(m_contentPosition, m_viewImpl->pageScaleFactor()); 86 87 } 87 88 88 void PageViewportControllerClientEfl::set ContentsScale(float newScale)89 void PageViewportControllerClientEfl::setPageScaleFactor(float newScale) 89 90 { 90 m_viewImpl->set ScaleFactor(newScale);91 m_viewImpl->setPageScaleFactor(newScale); 91 92 } 92 93 … … 94 95 { 95 96 ASSERT(m_controller); 96 m_controller->didChangeContentsVisibility(m_contentPosition, scaleFactor());97 m_controller->didChangeContentsVisibility(m_contentPosition, m_viewImpl->pageScaleFactor()); 97 98 } 98 99 -
trunk/Source/WebKit2/UIProcess/efl/PageViewportControllerClientEfl.h
r137718 r139675 46 46 DrawingAreaProxy* drawingArea() const; 47 47 WebCore::IntSize viewSize() { return m_viewportSize; } 48 float scaleFactor() const { return m_viewImpl->scaleFactor(); }49 48 WebCore::FloatPoint contentPosition() const { return m_contentPosition; } 50 49 … … 53 52 54 53 virtual void setViewportPosition(const WebCore::FloatPoint& contentsPoint); 55 virtual void set ContentsScale(float);54 virtual void setPageScaleFactor(float); 56 55 57 56 virtual void didResumeContent(); -
trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.cpp
r139380 r139675 323 323 } 324 324 325 void PageViewportControllerClientQt::set ContentsScale(float localScale)325 void PageViewportControllerClientQt::setPageScaleFactor(float localScale) 326 326 { 327 327 scaleContent(localScale); -
trunk/Source/WebKit2/UIProcess/qt/PageViewportControllerClientQt.h
r137149 r139675 49 49 50 50 virtual void setViewportPosition(const WebCore::FloatPoint& contentsPoint); 51 virtual void set ContentsScale(float);51 virtual void setPageScaleFactor(float); 52 52 53 53 virtual void didResumeContent();
Note: See TracChangeset
for help on using the changeset viewer.