Changeset 175669 in webkit
- Timestamp:
- Nov 5, 2014 9:35:02 PM (9 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r175649 r175669 1 2014-11-05 Ryuan Choi <ryuan.choi@gmail.com> 2 3 [EFL] Improve previous temporary fix against drawing (0,0) position before rendering content of next web page 4 https://bugs.webkit.org/show_bug.cgi?id=138305 5 6 Reviewed by Gyuyoung Kim. 7 8 WebKit2 has freezed layer tree until frame load completion since r101838. 9 In EFL port, we unfreeze it when PageViewportController::pageTransitionViewportReady() is called though, 10 UIProcess on EFL port updates cairo surface during the freezing time of layer tree. 11 Thus UIProcess should not update the layer trees until the layerTreeState is unfrozen. 12 13 * UIProcess/API/efl/EwkView.h: Removed previous workarounds. 14 (EwkView::setWaitingForNewPage): Deleted. 15 (EwkView::waitingForNewPage): Deleted. 16 (EwkView::didCommitNewPage): Deleted. 17 * UIProcess/CoordinatedGraphics/PageViewportController.cpp: 18 (WebKit::PageViewportController::PageViewportController): 19 (WebKit::PageViewportController::didCommitLoad): 20 (WebKit::PageViewportController::didRenderFrame): 21 (WebKit::PageViewportController::syncVisibleContents): 22 * UIProcess/CoordinatedGraphics/PageViewportController.h: 23 * UIProcess/efl/PageLoadClientEfl.cpp: 24 (WebKit::PageLoadClientEfl::didCommitLoadForFrame): 25 * UIProcess/efl/PageViewportControllerClientEfl.cpp: 26 (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents): 27 * UIProcess/efl/ViewClientEfl.cpp: 28 (WebKit::ViewClientEfl::didRenderFrame): 29 1 30 2014-11-05 Timothy Horton <timothy_horton@apple.com> 2 31 -
trunk/Source/WebKit2/UIProcess/API/efl/EwkView.h
r175468 r175669 200 200 void didFindZoomableArea(const WKPoint&, const WKRect&); 201 201 202 // FIXME: PageViewportController needs to fix a problem that current page is shown in (0,0) position when starting to load new page.203 // Below functions are to fix this problem for now.204 void setWaitingForNewPage() { m_isWaitingForNewPage = true; }205 bool waitingForNewPage() { return m_isWaitingForNewPage; }206 void didCommitNewPage() { m_isWaitingForNewPage = false; }207 208 202 static const char smartClassName[]; 209 203 -
trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/PageViewportController.cpp
r175468 r175669 49 49 , m_pendingPositionChange(false) 50 50 , m_pendingScaleChange(false) 51 , m_layerTreeStateIsFrozen(false) 51 52 { 52 53 // Initializing Viewport Raw Attributes to avoid random negative or infinity scale factors … … 139 140 // Do not continue to use the content size of the previous page. 140 141 m_contentsSize = IntSize(); 142 143 m_layerTreeStateIsFrozen = true; 141 144 142 145 // Reset the position to the top, page/history scroll requests may override this before we re-enable rendering. … … 202 205 m_pendingPositionChange = false; 203 206 } 207 208 m_layerTreeStateIsFrozen = false; 204 209 } 205 210 … … 266 271 drawingArea->setVisibleContentsRect(visibleContentsRect, trajectoryVector); 267 272 268 m_client.didChangeVisibleContents(); 273 if (!m_layerTreeStateIsFrozen) 274 m_client.didChangeVisibleContents(); 269 275 } 270 276 -
trunk/Source/WebKit2/UIProcess/CoordinatedGraphics/PageViewportController.h
r175468 r175669 105 105 bool m_pendingPositionChange; 106 106 bool m_pendingScaleChange; 107 bool m_layerTreeStateIsFrozen; 107 108 WebCore::FloatRect m_lastFrameCoveredRect; 108 109 }; -
trunk/Source/WebKit2/UIProcess/efl/PageLoadClientEfl.cpp
r170243 r175669 122 122 else 123 123 view->scheduleUpdateDisplay(); 124 125 view->setWaitingForNewPage();126 124 } 127 125 -
trunk/Source/WebKit2/UIProcess/efl/PageViewportControllerClientEfl.cpp
r175468 r175669 58 58 void PageViewportControllerClientEfl::didChangeVisibleContents() 59 59 { 60 if (m_view->waitingForNewPage())61 return;62 63 60 m_view->scheduleUpdateDisplay(); 64 61 } -
trunk/Source/WebKit2/UIProcess/efl/ViewClientEfl.cpp
r172445 r175669 115 115 else 116 116 ewkView->scheduleUpdateDisplay(); 117 118 ewkView->didCommitNewPage();119 117 } 120 118
Note: See TracChangeset
for help on using the changeset viewer.