Changeset 175468 in webkit
- Timestamp:
- Nov 3, 2014 3:26:50 AM (9 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r175466 r175468 1 2014-11-03 Ryuan Choi <ryuan.choi@gmail.com> 2 3 [EFL] Remove dependency of PageViewportController from PageViewportControllerClient 4 https://bugs.webkit.org/show_bug.cgi?id=138301 5 6 Reviewed by Gyuyoung Kim. 7 8 PaeViewportControllerClient does not need to keep the instance of PageViewPortController. 9 This patch removes it to simplify relation between them. 10 In addition, uses a reference for the client of PageViewportController. 11 12 * UIProcess/API/efl/EwkView.cpp: 13 (EwkView::EwkView): 14 (EwkView::setViewportPosition): 15 * UIProcess/API/efl/EwkView.h: 16 * UIProcess/CoordinatedGraphics/PageViewportController.cpp: 17 (WebKit::PageViewportController::PageViewportController): 18 (WebKit::PageViewportController::didChangeContentsSize): 19 (WebKit::PageViewportController::didRenderFrame): 20 (WebKit::PageViewportController::pageDidRequestScroll): 21 (WebKit::PageViewportController::syncVisibleContents): 22 (WebKit::PageViewportController::didChangeViewportAttributes): 23 * UIProcess/CoordinatedGraphics/PageViewportController.h: 24 * UIProcess/PageViewportControllerClient.h: 25 * UIProcess/efl/PageViewportControllerClientEfl.cpp: 26 (WebKit::PageViewportControllerClientEfl::PageViewportControllerClientEfl): 27 (WebKit::PageViewportControllerClientEfl::setViewportPosition): 28 (WebKit::PageViewportControllerClientEfl::setController): Deleted. 29 * UIProcess/efl/PageViewportControllerClientEfl.h: 30 1 31 2014-11-03 Sungmann Cho <sungmann.cho@navercorp.com> 2 32 -
trunk/Source/WebKit2/UIProcess/API/efl/EwkView.cpp
r175098 r175468 306 306 #endif 307 307 , m_pageViewportControllerClient(this) 308 , m_pageViewportController(page(), &m_pageViewportControllerClient)308 , m_pageViewportController(page(), m_pageViewportControllerClient) 309 309 , m_isAccelerated(true) 310 310 , m_isWaitingForNewPage(false) … … 579 579 if (!m_displayTimer.isActive()) 580 580 m_displayTimer.startOneShot(0); 581 } 582 583 void EwkView::setViewportPosition(const FloatPoint& contentsPosition) 584 { 585 WKViewSetContentPosition(wkView(), WKPointMake(contentsPosition.x(), contentsPosition.y())); 586 m_pageViewportController.didChangeContentsVisibility(contentsPosition, m_pageViewportController.currentScale()); 581 587 } 582 588 -
trunk/Source/WebKit2/UIProcess/API/efl/EwkView.h
r175098 r175468 71 71 class CoordinatedGraphicsScene; 72 72 class Cursor; 73 class FloatPoint; 73 74 class EvasGLContext; 74 75 class EvasGLSurface; … … 144 145 145 146 void scheduleUpdateDisplay(); 147 void setViewportPosition(const WebCore::FloatPoint& contentsPosition); 146 148 147 149 #if ENABLE(FULLSCREEN_API) -
trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/PageViewportController.cpp
r167665 r175468 39 39 } 40 40 41 PageViewportController::PageViewportController(WebKit::WebPageProxy* proxy, PageViewportControllerClient *client)41 PageViewportController::PageViewportController(WebKit::WebPageProxy* proxy, PageViewportControllerClient& client) 42 42 : m_webPageProxy(proxy) 43 43 , m_client(client) … … 60 60 // To be able to assert for valid scale we initialize it to -1. 61 61 m_rawAttributes.initialScale = -1; 62 63 ASSERT(m_client);64 m_client->setController(this);65 62 } 66 63 … … 161 158 162 159 if (minimumScaleUpdated) 163 m_client ->didChangeViewportAttributes();160 m_client.didChangeViewportAttributes(); 164 161 165 162 // We might have pending position change which is now possible. … … 174 171 // size actually changed since animations on the page trigger DidRenderFrame 175 172 // messages without causing dimension changes. 176 m_client ->didChangeContentsSize(contentsSize);173 m_client.didChangeContentsSize(contentsSize); 177 174 } 178 175 … … 188 185 if (m_pendingScaleChange) { 189 186 m_pendingScaleChange = false; 190 m_client ->setPageScaleFactor(m_pageScaleFactor);187 m_client.setPageScaleFactor(m_pageScaleFactor); 191 188 192 189 // The scale changed, we have to re-pixel align. … … 202 199 FloatRect endVisibleContentRect(m_contentsPosition, visibleContentsSize()); 203 200 if (m_pendingPositionChange && endVisibleContentRect.intersects(coveredRect)) { 204 m_client ->setViewportPosition(m_contentsPosition);201 m_client.setViewportPosition(m_contentsPosition); 205 202 m_pendingPositionChange = false; 206 203 } … … 233 230 234 231 if (m_lastFrameCoveredRect.intersects(endVisibleContentRect)) 235 m_client ->setViewportPosition(alignedPosition);232 m_client.setViewportPosition(alignedPosition); 236 233 else { 237 234 // Keep the unbound position in case the contents size is changed later on. … … 269 266 drawingArea->setVisibleContentsRect(visibleContentsRect, trajectoryVector); 270 267 271 m_client ->didChangeVisibleContents();268 m_client.didChangeVisibleContents(); 272 269 } 273 270 … … 292 289 m_pendingScaleChange = true; 293 290 294 m_client ->didChangeViewportAttributes();291 m_client.didChangeViewportAttributes(); 295 292 } 296 293 -
trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/PageViewportController.h
r166138 r175468 44 44 45 45 public: 46 PageViewportController(WebKit::WebPageProxy*, PageViewportControllerClient *);46 PageViewportController(WebKit::WebPageProxy*, PageViewportControllerClient&); 47 47 virtual ~PageViewportController() { } 48 48 … … 87 87 88 88 WebPageProxy* const m_webPageProxy; 89 PageViewportControllerClient *m_client;89 PageViewportControllerClient& m_client; 90 90 91 91 WebCore::ViewportAttributes m_rawAttributes; -
trunk/Source/WebKit2/UIProcess/PageViewportControllerClient.h
r169003 r175468 31 31 namespace WebKit { 32 32 33 class PageViewportController;34 35 33 class PageViewportControllerClient { 36 34 WTF_MAKE_NONCOPYABLE(PageViewportControllerClient); … … 45 43 virtual void didChangeVisibleContents() = 0; 46 44 virtual void didChangeViewportAttributes() = 0; 47 48 virtual void setController(PageViewportController*) = 0;49 45 }; 50 46 -
trunk/Source/WebKit2/UIProcess/efl/PageViewportControllerClientEfl.cpp
r173617 r175468 29 29 30 30 #include "EwkView.h" 31 #include "PageViewportController.h"32 31 #include <WebCore/FloatPoint.h> 33 32 … … 38 37 PageViewportControllerClientEfl::PageViewportControllerClientEfl(EwkView* view) 39 38 : m_view(view) 40 , m_controller(0)41 39 { 42 40 ASSERT(m_view); … … 50 48 void PageViewportControllerClientEfl::setViewportPosition(const WebCore::FloatPoint& contentsPosition) 51 49 { 52 WKViewSetContentPosition(m_view->wkView(), WKPointMake(contentsPosition.x(), contentsPosition.y())); 53 m_controller->didChangeContentsVisibility(contentsPosition, m_controller->currentScale()); 50 m_view->setViewportPosition(contentsPosition); 54 51 } 55 52 … … 71 68 } 72 69 73 void PageViewportControllerClientEfl::setController(PageViewportController* controller)74 {75 m_controller = controller;76 }77 78 70 } // namespace WebKit -
trunk/Source/WebKit2/UIProcess/efl/PageViewportControllerClientEfl.h
r169003 r175468 46 46 virtual void didChangeViewportAttributes() override; 47 47 48 virtual void setController(PageViewportController*) override;49 50 48 private: 51 49 EwkView* m_view; 52 PageViewportController* m_controller;53 50 }; 54 51
Note: See TracChangeset
for help on using the changeset viewer.