Changeset 167738 in webkit
- Timestamp:
- Apr 23, 2014 7:37:05 PM (10 years ago)
- Location:
- trunk/Source/WebKit2
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/WebKit2/ChangeLog
r167735 r167738 1 2014-04-23 Benjamin Poulain <bpoulain@apple.com> 2 3 [iOS][WK2] Image and text documents sometime gets the webpage viewport configuration 4 https://bugs.webkit.org/show_bug.cgi?id=132099 5 6 Reviewed by Tim Horton. 7 8 When didReceiveMobileDocType(), if the doctype was not XHTML mobile, we were setting 9 the viewport configuration to webpageParameters(). This is obviously not correct for 10 Image and Text documents. 11 12 This patch moves the code deciding the default configuration out of WebPage::didCommitLoad() 13 and use it from WebPage::didCommitLoad() and WebPage::didReceiveMobileDocType(). 14 15 * WebProcess/WebPage/WebPage.cpp: 16 (WebKit::WebPage::didCommitLoad): 17 * WebProcess/WebPage/WebPage.h: 18 * WebProcess/WebPage/ios/WebPageIOS.mm: 19 (WebKit::WebPage::didReceiveMobileDocType): 20 (WebKit::WebPage::resetViewportDefaultConfiguration): 21 1 22 2014-04-23 Benjamin Poulain <bpoulain@apple.com> 2 23 -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.cpp
r167735 r167738 4255 4255 WebProcess::shared().eventDispatcher().clearQueuedTouchEventsForPage(*this); 4256 4256 4257 Document* document = frame->coreFrame()->document(); 4258 if (document->isImageDocument()) 4259 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::imageDocumentParameters()); 4260 else if (document->isTextDocument()) 4261 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::textDocumentParameters()); 4262 else 4263 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::webpageParameters()); 4264 4257 resetViewportDefaultConfiguration(frame); 4265 4258 m_viewportConfiguration.setViewportArguments(ViewportArguments()); 4266 4259 m_viewportConfiguration.setContentsSize(IntSize()); -
trunk/Source/WebKit2/WebProcess/WebPage/WebPage.h
r167735 r167738 699 699 void setMinimumLayoutSizeForMinimalUI(const WebCore::FloatSize&); 700 700 void dynamicViewportSizeUpdate(const WebCore::FloatSize& minimumLayoutSize, const WebCore::FloatRect& targetExposedContentRect, const WebCore::FloatRect& targetUnobscuredRect, double scale); 701 void viewportConfigurationChanged();702 701 void updateVisibleContentRects(const VisibleContentRectUpdateInfo&); 703 702 bool scaleWasSetByUIProcess() const { return m_scaleWasSetByUIProcess; } … … 803 802 804 803 #if PLATFORM(IOS) 804 void resetViewportDefaultConfiguration(WebFrame* mainFrame); 805 void viewportConfigurationChanged(); 806 805 807 static void convertSelectionRectsToRootView(WebCore::FrameView*, Vector<WebCore::SelectionRect>&); 806 808 PassRefPtr<WebCore::Range> rangeForWebSelectionAtPosition(const WebCore::IntPoint&, const WebCore::VisiblePosition&, SelectionFlags&); -
trunk/Source/WebKit2/WebProcess/WebPage/ios/WebPageIOS.mm
r167735 r167738 135 135 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::xhtmlMobileParameters()); 136 136 else 137 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::webpageParameters());137 resetViewportDefaultConfiguration(m_mainFrame.get()); 138 138 } 139 139 … … 1920 1920 } 1921 1921 1922 void WebPage::resetViewportDefaultConfiguration(WebFrame* frame) 1923 { 1924 if (!frame) { 1925 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::webpageParameters()); 1926 return; 1927 } 1928 1929 Document* document = frame->coreFrame()->document(); 1930 if (document->isImageDocument()) 1931 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::imageDocumentParameters()); 1932 else if (document->isTextDocument()) 1933 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::textDocumentParameters()); 1934 else 1935 m_viewportConfiguration.setDefaultConfiguration(ViewportConfiguration::webpageParameters()); 1936 } 1937 1922 1938 void WebPage::viewportConfigurationChanged() 1923 1939 {
Note: See TracChangeset
for help on using the changeset viewer.