Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(158)

Side by Side Diff: Source/web/tests/WebFrameTest.cpp

Issue 1056983004: OverscrollGlow for mainThread-{BLINK CHANGES} (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: modified logic/tests Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 219 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 registerMockedHttpURLLoad("nodeimage.html"); 230 registerMockedHttpURLLoad("nodeimage.html");
231 webViewHelper->initializeAndLoad(m_baseURL + "nodeimage.html"); 231 webViewHelper->initializeAndLoad(m_baseURL + "nodeimage.html");
232 webViewHelper->webView()->resize(WebSize(640, 480)); 232 webViewHelper->webView()->resize(WebSize(640, 480));
233 webViewHelper->webView()->layout(); 233 webViewHelper->webView()->layout();
234 RefPtrWillBeRawPtr<LocalFrame> frame = toLocalFrame(webViewHelper->webVi ewImpl()->page()->mainFrame()); 234 RefPtrWillBeRawPtr<LocalFrame> frame = toLocalFrame(webViewHelper->webVi ewImpl()->page()->mainFrame());
235 ASSERT(frame); 235 ASSERT(frame);
236 Element* element = frame->document()->getElementById(testcase.c_str()); 236 Element* element = frame->document()->getElementById(testcase.c_str());
237 return frame->nodeImage(*element); 237 return frame->nodeImage(*element);
238 } 238 }
239 239
240 WebGestureEvent generateEvent(WebInputEvent::Type type, int deltaX = 0, int deltaY = 0)
241 {
242 WebGestureEvent event;
243 event.type = type;
244 event.x = 100;
245 event.y = 100;
246 if (type == WebInputEvent::GestureScrollUpdate) {
247 event.data.scrollUpdate.deltaX = deltaX;
248 event.data.scrollUpdate.deltaY = deltaY;
249 }
250 return event;
251 }
252
253 void ScrollBegin(FrameTestHelpers::WebViewHelper* webViewHelper)
254 {
255 webViewHelper->webViewImpl()->handleInputEvent(generateEvent(WebInputEve nt::GestureScrollBegin));
256 }
257
258 void ScrollUpdate(FrameTestHelpers::WebViewHelper* webViewHelper, float delt aX, float deltaY)
259 {
260 webViewHelper->webViewImpl()->handleInputEvent(generateEvent(WebInputEve nt::GestureScrollUpdate, deltaX, deltaY));
261 }
262
263 void ScrollEnd(FrameTestHelpers::WebViewHelper* webViewHelper)
264 {
265 webViewHelper->webViewImpl()->handleInputEvent(generateEvent(WebInputEve nt::GestureScrollEnd));
266 }
267
240 std::string m_baseURL; 268 std::string m_baseURL;
241 std::string m_notBaseURL; 269 std::string m_notBaseURL;
242 std::string m_chromeURL; 270 std::string m_chromeURL;
243 }; 271 };
244 272
245 TEST_F(WebFrameTest, ContentText) 273 TEST_F(WebFrameTest, ContentText)
246 { 274 {
247 registerMockedHttpURLLoad("iframes_test.html"); 275 registerMockedHttpURLLoad("iframes_test.html");
248 registerMockedHttpURLLoad("visible_iframe.html"); 276 registerMockedHttpURLLoad("visible_iframe.html");
249 registerMockedHttpURLLoad("invisible_iframe.html"); 277 registerMockedHttpURLLoad("invisible_iframe.html");
(...skipping 5958 matching lines...) Expand 10 before | Expand all | Expand 10 after
6208 6236
6209 // Verify that the main frame is scrollable upon exiting fullscreen. 6237 // Verify that the main frame is scrollable upon exiting fullscreen.
6210 webViewImpl->didExitFullScreen(); 6238 webViewImpl->didExitFullScreen();
6211 webViewImpl->layout(); 6239 webViewImpl->layout();
6212 ASSERT_FALSE(Fullscreen::isFullScreen(*document)); 6240 ASSERT_FALSE(Fullscreen::isFullScreen(*document));
6213 webScrollLayer = webViewImpl->compositor()->scrollLayer()->platformLayer(); 6241 webScrollLayer = webViewImpl->compositor()->scrollLayer()->platformLayer();
6214 ASSERT_TRUE(webScrollLayer->userScrollableHorizontal()); 6242 ASSERT_TRUE(webScrollLayer->userScrollableHorizontal());
6215 ASSERT_TRUE(webScrollLayer->userScrollableVertical()); 6243 ASSERT_TRUE(webScrollLayer->userScrollableVertical());
6216 } 6244 }
6217 6245
6246 TEST_F(WebFrameTest, OverscrollGlowAnimation)
6247 {
6248 FakeCompositingWebViewClient client;
6249 registerMockedHttpURLLoad("mainthread-scrolling.html");
6250 FrameTestHelpers::WebViewHelper webViewHelper;
6251 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "main thread-scrolling.html", true, 0, &client, configureAndroid);
6252 webViewImpl->settings()->setThreadedScrollingEnabled(false);
majidvp 2015/05/14 21:08:39 Do you really need this?
MuVen 2015/05/26 09:58:35 Not requried.
6253 webViewImpl->layout();
6254
6255 ScrollBegin(&webViewHelper);
6256
6257 ScrollUpdate(&webViewHelper, 0, -13);
6258 FloatSize unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame( )->eventHandler().unusedDeltaForTesting();
6259 FloatSize accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrame Impl()->frame()->eventHandler().accumulatedRootOverscrollForTesting();
6260 EXPECT_EQ(0, unUsedDelta.width());
6261 EXPECT_EQ(13, unUsedDelta.height());
6262 EXPECT_EQ(0, accumulatedRootOverscroll.width());
6263 EXPECT_EQ(13, accumulatedRootOverscroll.height());
6264
6265 ScrollUpdate(&webViewHelper, 0, -13);
6266 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6267 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6268 EXPECT_EQ(0, unUsedDelta.width());
6269 EXPECT_EQ(13, unUsedDelta.height());
6270 EXPECT_EQ(0, accumulatedRootOverscroll.width());
6271 EXPECT_EQ(26, accumulatedRootOverscroll.height());
6272
6273 ScrollUpdate(&webViewHelper, -20, -13);
6274 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6275 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6276 EXPECT_EQ(20, unUsedDelta.width());
6277 EXPECT_EQ(13, unUsedDelta.height());
6278 EXPECT_EQ(20, accumulatedRootOverscroll.width());
6279 EXPECT_EQ(39, accumulatedRootOverscroll.height());
6280
6281 ScrollEnd(&webViewHelper);
6282 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6283 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6284 EXPECT_EQ(0, unUsedDelta.width());
6285 EXPECT_EQ(0, unUsedDelta.height());
6286 EXPECT_EQ(0, accumulatedRootOverscroll.width());
6287 EXPECT_EQ(0, accumulatedRootOverscroll.height());
6288 }
6289
6290 TEST_F(WebFrameTest, OverscrollGlowAnimationForInnerScroll)
6291 {
6292 FakeCompositingWebViewClient client;
6293 registerMockedHttpURLLoad("mainthread-inner-overscroll.html");
6294 FrameTestHelpers::WebViewHelper webViewHelper;
6295 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "main thread-inner-overscroll.html", true, 0, &client, configureAndroid);
6296 webViewImpl->settings()->setThreadedScrollingEnabled(false);
6297 webViewImpl->layout();
6298
6299 ScrollBegin(&webViewHelper);
6300
6301 ScrollUpdate(&webViewHelper, 0, 13);
6302 FloatSize unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame( )->eventHandler().unusedDeltaForTesting();
6303 FloatSize accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrame Impl()->frame()->eventHandler().accumulatedRootOverscrollForTesting();
6304 EXPECT_EQ(0, unUsedDelta.width());
6305 EXPECT_EQ(-13, unUsedDelta.height());
6306 EXPECT_EQ(0, accumulatedRootOverscroll.width());
6307 EXPECT_EQ(-13, accumulatedRootOverscroll.height());
6308
6309 ScrollUpdate(&webViewHelper, 0, 13);
6310 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6311 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6312 EXPECT_EQ(0, unUsedDelta.width());
6313 EXPECT_EQ(-13, unUsedDelta.height());
6314 EXPECT_EQ(0, accumulatedRootOverscroll.width());
6315 EXPECT_EQ(-26, accumulatedRootOverscroll.height());
6316
6317 ScrollUpdate(&webViewHelper, 13, 13);
6318 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6319 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6320 EXPECT_EQ(-13, unUsedDelta.width());
6321 EXPECT_EQ(-13, unUsedDelta.height());
6322 EXPECT_EQ(-13, accumulatedRootOverscroll.width());
6323 EXPECT_EQ(-39, accumulatedRootOverscroll.height());
6324
6325 ScrollUpdate(&webViewHelper, 13, 0);
6326 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6327 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6328 EXPECT_EQ(-13, unUsedDelta.width());
6329 EXPECT_EQ(0, unUsedDelta.height());
6330 EXPECT_EQ(-26, accumulatedRootOverscroll.width());
6331 EXPECT_EQ(-39, accumulatedRootOverscroll.height());
6332
6333 ScrollEnd(&webViewHelper);
6334 unUsedDelta = webViewHelper.webViewImpl()->mainFrameImpl()->frame()->eventHa ndler().unusedDeltaForTesting();
6335 accumulatedRootOverscroll = webViewHelper.webViewImpl()->mainFrameImpl()->fr ame()->eventHandler().accumulatedRootOverscrollForTesting();
6336 EXPECT_EQ(0, unUsedDelta.width());
6337 EXPECT_EQ(0, unUsedDelta.height());
6338 EXPECT_EQ(0, accumulatedRootOverscroll.width());
6339 EXPECT_EQ(0, accumulatedRootOverscroll.height());
6340 }
6341
6218 TEST_F(WebFrameTest, FullscreenMainFrame) 6342 TEST_F(WebFrameTest, FullscreenMainFrame)
6219 { 6343 {
6220 FakeCompositingWebViewClient client; 6344 FakeCompositingWebViewClient client;
6221 registerMockedHttpURLLoad("fullscreen_div.html"); 6345 registerMockedHttpURLLoad("fullscreen_div.html");
6222 FrameTestHelpers::WebViewHelper webViewHelper; 6346 FrameTestHelpers::WebViewHelper webViewHelper;
6223 int viewportWidth = 640; 6347 int viewportWidth = 640;
6224 int viewportHeight = 480; 6348 int viewportHeight = 480;
6225 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full screen_div.html", true, 0, &client, configureAndroid); 6349 WebViewImpl* webViewImpl = webViewHelper.initializeAndLoad(m_baseURL + "full screen_div.html", true, 0, &client, configureAndroid);
6226 webViewImpl->resize(WebSize(viewportWidth, viewportHeight)); 6350 webViewImpl->resize(WebSize(viewportWidth, viewportHeight));
6227 webViewImpl->layout(); 6351 webViewImpl->layout();
(...skipping 1177 matching lines...) Expand 10 before | Expand all | Expand 10 after
7405 7529
7406 EXPECT_EQ(parent, firstFrame->parent()); 7530 EXPECT_EQ(parent, firstFrame->parent());
7407 EXPECT_EQ(parent, secondFrame->parent()); 7531 EXPECT_EQ(parent, secondFrame->parent());
7408 EXPECT_EQ(parent, thirdFrame->parent()); 7532 EXPECT_EQ(parent, thirdFrame->parent());
7409 EXPECT_EQ(parent, fourthFrame->parent()); 7533 EXPECT_EQ(parent, fourthFrame->parent());
7410 7534
7411 view->close(); 7535 view->close();
7412 } 7536 }
7413 7537
7414 } // namespace blink 7538 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698