| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2010 Google Inc. All rights reserved. | 2 * Copyright (C) 2010 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 220 | 220 |
| 221 void registerMockedHttpURLLoadWithMimeType(const std::string& fileName, | 221 void registerMockedHttpURLLoadWithMimeType(const std::string& fileName, |
| 222 const std::string& mimeType) { | 222 const std::string& mimeType) { |
| 223 URLTestHelpers::registerMockedURLFromBaseURL( | 223 URLTestHelpers::registerMockedURLFromBaseURL( |
| 224 WebString::fromUTF8(m_baseURL.c_str()), | 224 WebString::fromUTF8(m_baseURL.c_str()), |
| 225 WebString::fromUTF8(fileName.c_str()), WebString::fromUTF8(mimeType)); | 225 WebString::fromUTF8(fileName.c_str()), WebString::fromUTF8(mimeType)); |
| 226 } | 226 } |
| 227 | 227 |
| 228 void applyViewportStyleOverride( | 228 void applyViewportStyleOverride( |
| 229 FrameTestHelpers::WebViewHelper* webViewHelper) { | 229 FrameTestHelpers::WebViewHelper* webViewHelper) { |
| 230 StyleSheetContents* styleSheet = | 230 webViewHelper->webView()->settings()->setViewportStyle( |
| 231 StyleSheetContents::create(CSSParserContext(UASheetMode, nullptr)); | 231 WebViewportStyle::Mobile); |
| 232 styleSheet->parseString(loadResourceAsASCIIString("viewportAndroid.css")); | |
| 233 RuleSet* ruleSet = RuleSet::create(); | |
| 234 ruleSet->addRulesFromSheet(styleSheet, MediaQueryEvaluator("screen")); | |
| 235 | |
| 236 Document* document = | |
| 237 toLocalFrame(webViewHelper->webView()->page()->mainFrame())->document(); | |
| 238 document->ensureStyleResolver() | |
| 239 .viewportStyleResolver() | |
| 240 ->collectViewportRules(ruleSet, ViewportStyleResolver::UserAgentOrigin); | |
| 241 document->ensureStyleResolver().viewportStyleResolver()->resolve(); | |
| 242 } | 232 } |
| 243 | 233 |
| 244 static void configueCompositingWebView(WebSettings* settings) { | 234 static void configureCompositingWebView(WebSettings* settings) { |
| 245 settings->setAcceleratedCompositingEnabled(true); | 235 settings->setAcceleratedCompositingEnabled(true); |
| 246 settings->setPreferCompositingToLCDTextEnabled(true); | 236 settings->setPreferCompositingToLCDTextEnabled(true); |
| 247 } | 237 } |
| 248 | 238 |
| 249 static void configureAndroid(WebSettings* settings) { | 239 static void configureAndroid(WebSettings* settings) { |
| 250 settings->setViewportMetaEnabled(true); | 240 settings->setViewportMetaEnabled(true); |
| 251 settings->setViewportEnabled(true); | 241 settings->setViewportEnabled(true); |
| 252 settings->setMainFrameResizesAreOrientationChanges(true); | 242 settings->setMainFrameResizesAreOrientationChanges(true); |
| 253 settings->setShrinksViewportContentToFit(true); | 243 settings->setShrinksViewportContentToFit(true); |
| 254 } | 244 } |
| (...skipping 2650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2905 { | 2895 { |
| 2906 registerMockedHttpURLLoad("large-div.html"); | 2896 registerMockedHttpURLLoad("large-div.html"); |
| 2907 | 2897 |
| 2908 int viewWidth = 500; | 2898 int viewWidth = 500; |
| 2909 int viewHeight = 500; | 2899 int viewHeight = 500; |
| 2910 | 2900 |
| 2911 std::unique_ptr<FakeCompositingWebViewClient> fakeCompositingWebViewClient = | 2901 std::unique_ptr<FakeCompositingWebViewClient> fakeCompositingWebViewClient = |
| 2912 wrapUnique(new FakeCompositingWebViewClient()); | 2902 wrapUnique(new FakeCompositingWebViewClient()); |
| 2913 FrameTestHelpers::WebViewHelper webViewHelper; | 2903 FrameTestHelpers::WebViewHelper webViewHelper; |
| 2914 webViewHelper.initialize(true, nullptr, fakeCompositingWebViewClient.get(), | 2904 webViewHelper.initialize(true, nullptr, fakeCompositingWebViewClient.get(), |
| 2915 nullptr, &configueCompositingWebView); | 2905 nullptr, &configureCompositingWebView); |
| 2916 | 2906 |
| 2917 webViewHelper.resize(WebSize(viewWidth, viewHeight)); | 2907 webViewHelper.resize(WebSize(viewWidth, viewHeight)); |
| 2918 FrameTestHelpers::loadFrame(webViewHelper.webView()->mainFrame(), | 2908 FrameTestHelpers::loadFrame(webViewHelper.webView()->mainFrame(), |
| 2919 m_baseURL + "large-div.html"); | 2909 m_baseURL + "large-div.html"); |
| 2920 | 2910 |
| 2921 FrameView* view = webViewHelper.webView()->mainFrameImpl()->frameView(); | 2911 FrameView* view = webViewHelper.webView()->mainFrameImpl()->frameView(); |
| 2922 EXPECT_TRUE( | 2912 EXPECT_TRUE( |
| 2923 view->layoutViewItem().compositor()->layerForHorizontalScrollbar()); | 2913 view->layoutViewItem().compositor()->layerForHorizontalScrollbar()); |
| 2924 EXPECT_TRUE(view->layoutViewItem().compositor()->layerForVerticalScrollbar()); | 2914 EXPECT_TRUE(view->layoutViewItem().compositor()->layerForVerticalScrollbar()); |
| 2925 | 2915 |
| (...skipping 4234 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 7160 EXPECT_FALSE(client.replacesCurrentHistoryItem()); | 7150 EXPECT_FALSE(client.replacesCurrentHistoryItem()); |
| 7161 } | 7151 } |
| 7162 | 7152 |
| 7163 // Test verifies that layout will change a layer's scrollable attibutes | 7153 // Test verifies that layout will change a layer's scrollable attibutes |
| 7164 TEST_F(WebFrameTest, overflowHiddenRewrite) { | 7154 TEST_F(WebFrameTest, overflowHiddenRewrite) { |
| 7165 registerMockedHttpURLLoad("non-scrollable.html"); | 7155 registerMockedHttpURLLoad("non-scrollable.html"); |
| 7166 std::unique_ptr<FakeCompositingWebViewClient> fakeCompositingWebViewClient = | 7156 std::unique_ptr<FakeCompositingWebViewClient> fakeCompositingWebViewClient = |
| 7167 wrapUnique(new FakeCompositingWebViewClient()); | 7157 wrapUnique(new FakeCompositingWebViewClient()); |
| 7168 FrameTestHelpers::WebViewHelper webViewHelper; | 7158 FrameTestHelpers::WebViewHelper webViewHelper; |
| 7169 webViewHelper.initialize(true, nullptr, fakeCompositingWebViewClient.get(), | 7159 webViewHelper.initialize(true, nullptr, fakeCompositingWebViewClient.get(), |
| 7170 nullptr, &configueCompositingWebView); | 7160 nullptr, &configureCompositingWebView); |
| 7171 | 7161 |
| 7172 webViewHelper.resize(WebSize(100, 100)); | 7162 webViewHelper.resize(WebSize(100, 100)); |
| 7173 FrameTestHelpers::loadFrame(webViewHelper.webView()->mainFrame(), | 7163 FrameTestHelpers::loadFrame(webViewHelper.webView()->mainFrame(), |
| 7174 m_baseURL + "non-scrollable.html"); | 7164 m_baseURL + "non-scrollable.html"); |
| 7175 | 7165 |
| 7176 PaintLayerCompositor* compositor = webViewHelper.webView()->compositor(); | 7166 PaintLayerCompositor* compositor = webViewHelper.webView()->compositor(); |
| 7177 ASSERT_TRUE(compositor->scrollLayer()); | 7167 ASSERT_TRUE(compositor->scrollLayer()); |
| 7178 | 7168 |
| 7179 // Verify that the WebLayer is not scrollable initially. | 7169 // Verify that the WebLayer is not scrollable initially. |
| 7180 GraphicsLayer* scrollLayer = compositor->scrollLayer(); | 7170 GraphicsLayer* scrollLayer = compositor->scrollLayer(); |
| (...skipping 3016 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 10197 webViewHelper.webView()->handleInputEvent(endEvent); | 10187 webViewHelper.webView()->handleInputEvent(endEvent); |
| 10198 webViewHelper.webView()->handleInputEvent(updateEvent); | 10188 webViewHelper.webView()->handleInputEvent(updateEvent); |
| 10199 | 10189 |
| 10200 // Try a full Begin/Update/End cycle. | 10190 // Try a full Begin/Update/End cycle. |
| 10201 webViewHelper.webView()->handleInputEvent(beginEvent); | 10191 webViewHelper.webView()->handleInputEvent(beginEvent); |
| 10202 webViewHelper.webView()->handleInputEvent(updateEvent); | 10192 webViewHelper.webView()->handleInputEvent(updateEvent); |
| 10203 webViewHelper.webView()->handleInputEvent(endEvent); | 10193 webViewHelper.webView()->handleInputEvent(endEvent); |
| 10204 } | 10194 } |
| 10205 | 10195 |
| 10206 } // namespace blink | 10196 } // namespace blink |
| OLD | NEW |