Changeset 48994 in webkit
- Timestamp:
- Oct 1, 2009 1:12:40 PM (14 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r48993 r48994 1 2009-10-01 Adam Barth <abarth@webkit.org> 2 3 Reviewed by Darin Adler. 4 5 Remove FrameLoader::schedule* APIs 6 https://bugs.webkit.org/show_bug.cgi?id=29950 7 8 Change clients of FrameLoader::schedule* to call redirectScheduler 9 directly. 10 11 No behavior change. 12 13 * bindings/js/JSDOMWindowCustom.cpp: 14 (WebCore::JSDOMWindow::setLocation): 15 (WebCore::createWindow): 16 (WebCore::JSDOMWindow::open): 17 * bindings/js/JSDocumentCustom.cpp: 18 (WebCore::JSDocument::setLocation): 19 * bindings/js/JSLocationCustom.cpp: 20 (WebCore::navigateIfAllowed): 21 (WebCore::JSLocation::reload): 22 * bindings/v8/V8Utilities.cpp: 23 (WebCore::navigateIfAllowed): 24 * bindings/v8/custom/V8DOMWindowCustom.cpp: 25 (WebCore::createWindow): 26 (WebCore::CALLBACK_FUNC_DECL): 27 * bindings/v8/custom/V8LocationCustom.cpp: 28 (WebCore::CALLBACK_FUNC_DECL): 29 * dom/Document.cpp: 30 (WebCore::Document::implicitClose): 31 (WebCore::Document::processHttpEquiv): 32 * html/HTMLTokenizer.cpp: 33 (WebCore::HTMLTokenizer::write): 34 * loader/FrameLoader.cpp: 35 (WebCore::FrameLoader::requestFrame): 36 (WebCore::FrameLoader::submitForm): 37 (WebCore::FrameLoader::receivedFirstData): 38 * loader/FrameLoader.h: 39 * loader/appcache/ApplicationCacheGroup.cpp: 40 (WebCore::ApplicationCacheGroup::selectCache): 41 * page/History.cpp: 42 (WebCore::History::back): 43 (WebCore::History::forward): 44 (WebCore::History::go): 45 1 46 2009-10-01 Beth Dakin <bdakin@apple.com> 2 47 -
trunk/WebCore/bindings/js/JSDOMWindowCustom.cpp
r48960 r48994 590 590 if (!protocolIsJavaScript(url) || allowsAccessFrom(exec)) { 591 591 // We want a new history item if this JS was called via a user gesture 592 frame-> loader()->scheduleLocationChange(url, lexicalFrame->loader()->outgoingReferrer(), !lexicalFrame->script()->anyPageIsProcessingUserGesture(), false, processingUserGesture(exec));592 frame->redirectScheduler()->scheduleLocationChange(url, lexicalFrame->loader()->outgoingReferrer(), !lexicalFrame->script()->anyPageIsProcessingUserGesture(), false, processingUserGesture(exec)); 593 593 } 594 594 } … … 782 782 newFrame->loader()->changeLocation(completedURL, referrer, false, false, userGesture); 783 783 else if (!url.isEmpty()) 784 newFrame-> loader()->scheduleLocationChange(completedURL.string(), referrer, !lexicalFrame->script()->anyPageIsProcessingUserGesture(), false, userGesture);784 newFrame->redirectScheduler()->scheduleLocationChange(completedURL.string(), referrer, !lexicalFrame->script()->anyPageIsProcessingUserGesture(), false, userGesture); 785 785 } 786 786 … … 839 839 String referrer = dynamicFrame->loader()->outgoingReferrer(); 840 840 841 frame-> loader()->scheduleLocationChange(completedURL, referrer, !lexicalFrame->script()->anyPageIsProcessingUserGesture(), false, userGesture);841 frame->redirectScheduler()->scheduleLocationChange(completedURL, referrer, !lexicalFrame->script()->anyPageIsProcessingUserGesture(), false, userGesture); 842 842 } 843 843 return toJS(exec, frame->domWindow()); -
trunk/WebCore/bindings/js/JSDocumentCustom.cpp
r47752 r48994 89 89 90 90 bool userGesture = activeFrame->script()->processingUserGesture(); 91 frame-> loader()->scheduleLocationChange(str, activeFrame->loader()->outgoingReferrer(), !activeFrame->script()->anyPageIsProcessingUserGesture(), false, userGesture);91 frame->redirectScheduler()->scheduleLocationChange(str, activeFrame->loader()->outgoingReferrer(), !activeFrame->script()->anyPageIsProcessingUserGesture(), false, userGesture); 92 92 } 93 93 -
trunk/WebCore/bindings/js/JSLocationCustom.cpp
r48619 r48994 197 197 198 198 if (!protocolIsJavaScript(url) || allowsAccessFromFrame(exec, frame)) 199 frame-> loader()->scheduleLocationChange(url.string(), lexicalFrame->loader()->outgoingReferrer(), lockHistory, lockBackForwardList, processingUserGesture(exec));199 frame->redirectScheduler()->scheduleLocationChange(url.string(), lexicalFrame->loader()->outgoingReferrer(), lockHistory, lockBackForwardList, processingUserGesture(exec)); 200 200 } 201 201 … … 327 327 328 328 if (!protocolIsJavaScript(frame->loader()->url())) 329 frame-> loader()->scheduleRefresh(processingUserGesture(exec));329 frame->redirectScheduler()->scheduleRefresh(processingUserGesture(exec)); 330 330 return jsUndefined(); 331 331 } -
trunk/WebCore/bindings/v8/V8Utilities.cpp
r48610 r48994 106 106 107 107 if (!protocolIsJavaScript(url) || ScriptController::isSafeScript(frame)) 108 frame-> loader()->scheduleLocationChange(url.string(), callingFrame->loader()->outgoingReferrer(), lockHistory, lockBackForwardList, processingUserGesture());108 frame->redirectScheduler()->scheduleLocationChange(url.string(), callingFrame->loader()->outgoingReferrer(), lockHistory, lockBackForwardList, processingUserGesture()); 109 109 } 110 110 -
trunk/WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp
r48978 r48994 516 516 newFrame->loader()->changeLocation(completedUrl, referrer, false, false, userGesture); 517 517 else if (!url.isEmpty()) 518 newFrame-> loader()->scheduleLocationChange(completedUrl.string(), referrer, false, userGesture);518 newFrame->redirectScheduler()->scheduleLocationChange(completedUrl.string(), referrer, false, userGesture); 519 519 } 520 520 … … 674 674 String referrer = enteredFrame->loader()->outgoingReferrer(); 675 675 676 frame-> loader()->scheduleLocationChange(completedUrl, referrer, false, userGesture);676 frame->redirectScheduler()->scheduleLocationChange(completedUrl, referrer, false, userGesture); 677 677 } 678 678 return V8DOMWrapper::convertToV8Object(V8ClassIndex::DOMWINDOW, frame->domWindow()); -
trunk/WebCore/bindings/v8/custom/V8LocationCustom.cpp
r48619 r48994 275 275 276 276 if (!protocolIsJavaScript(frame->loader()->url())) 277 frame-> loader()->scheduleRefresh(processingUserGesture());277 frame->redirectScheduler()->scheduleRefresh(processingUserGesture()); 278 278 return v8::Undefined(); 279 279 } -
trunk/WebCore/dom/Document.cpp
r48912 r48994 1665 1665 } 1666 1666 1667 bool wasLocationChangePending = frame() && frame()-> loader()->isScheduledLocationChangePending();1667 bool wasLocationChangePending = frame() && frame()->redirectScheduler()->locationChangePending(); 1668 1668 bool doload = !parsing() && m_tokenizer && !m_processingLoadEvent && !wasLocationChangePending; 1669 1669 … … 1732 1732 // If they wanna cheat, we can too. -dwh 1733 1733 1734 if (frame()-> loader()->isScheduledLocationChangePending() && elapsedTime() < cLayoutScheduleThreshold) {1734 if (frame()->redirectScheduler()->locationChangePending() && elapsedTime() < cLayoutScheduleThreshold) { 1735 1735 // Just bail out. Before or during the onload we were shifted to another page. 1736 1736 // The old i-Bench suite does this. When this happens don't bother painting or laying out. … … 2161 2161 else 2162 2162 url = completeURL(url).string(); 2163 frame-> loader()->scheduleHTTPRedirection(delay, url);2163 frame->redirectScheduler()->scheduleRedirect(delay, url); 2164 2164 } 2165 2165 } else if (equalIgnoringCase(equiv, "set-cookie")) { … … 2175 2175 if (frameLoader->shouldInterruptLoadForXFrameOptions(content, url())) { 2176 2176 frameLoader->stopAllLoaders(); 2177 frame Loader->scheduleLocationChange(blankURL(), String());2177 frame->redirectScheduler()->scheduleLocationChange(blankURL(), String()); 2178 2178 } 2179 2179 } -
trunk/WebCore/html/HTMLTokenizer.cpp
r48701 r48994 1674 1674 State state = m_state; 1675 1675 1676 while (!m_src.isEmpty() && (!frame || !frame-> loader()->isScheduledLocationChangePending())) {1676 while (!m_src.isEmpty() && (!frame || !frame->redirectScheduler()->locationChangePending())) { 1677 1677 if (!continueProcessing(processedCount, startTime, state)) 1678 1678 break; -
trunk/WebCore/loader/FrameLoader.cpp
r48958 r48994 461 461 Frame* frame = ownerElement->contentFrame(); 462 462 if (frame) 463 frame-> loader()->scheduleLocationChange(url.string(), m_outgoingReferrer, true, true, isProcessingUserGesture());463 frame->redirectScheduler()->scheduleLocationChange(url.string(), m_outgoingReferrer, true, true, isProcessingUserGesture()); 464 464 else 465 465 frame = loadSubframe(ownerElement, url, frameName, m_outgoingReferrer); … … 596 596 addHTTPOriginIfNeeded(frameRequest.resourceRequest(), outgoingOrigin()); 597 597 598 targetFrame-> loader()->scheduleFormSubmission(frameRequest, lockHistory, event, formState);598 targetFrame->redirectScheduler()->scheduleFormSubmission(frameRequest, lockHistory, event, formState); 599 599 } 600 600 … … 907 907 url = m_frame->document()->completeURL(url).string(); 908 908 909 scheduleHTTPRedirection(delay, url);909 m_frame->redirectScheduler()->scheduleRedirect(delay, url); 910 910 } 911 911 … … 1375 1375 } 1376 1376 1377 bool FrameLoader::isScheduledLocationChangePending() const1378 {1379 return m_frame->redirectScheduler()->locationChangePending();1380 }1381 1382 void FrameLoader::scheduleHTTPRedirection(double delay, const String& url)1383 {1384 m_frame->redirectScheduler()->scheduleRedirect(delay, url);1385 }1386 1387 1377 void RedirectScheduler::scheduleRedirect(double delay, const String& url) 1388 1378 { … … 1413 1403 } 1414 1404 return false; 1415 }1416 1417 void FrameLoader::scheduleLocationChange(const String& url, const String& referrer, bool lockHistory, bool lockBackForwardList, bool wasUserGesture)1418 {1419 m_frame->redirectScheduler()->scheduleLocationChange(url, referrer, lockHistory, lockBackForwardList, wasUserGesture);1420 1405 } 1421 1406 … … 1447 1432 } 1448 1433 1449 void FrameLoader::scheduleFormSubmission(const FrameLoadRequest& frameRequest,1450 bool lockHistory, PassRefPtr<Event> event, PassRefPtr<FormState> formState)1451 {1452 m_frame->redirectScheduler()->scheduleFormSubmission(frameRequest, lockHistory, event, formState);1453 }1454 1455 1434 void RedirectScheduler::scheduleFormSubmission(const FrameLoadRequest& frameRequest, 1456 1435 bool lockHistory, PassRefPtr<Event> event, PassRefPtr<FormState> formState) … … 1467 1446 1468 1447 schedule(new ScheduledRedirection(frameRequest, lockHistory, mustLockBackForwardList(m_frame), event, formState, duringLoad)); 1469 }1470 1471 void FrameLoader::scheduleRefresh(bool wasUserGesture)1472 {1473 m_frame->redirectScheduler()->scheduleRefresh(wasUserGesture);1474 1448 } 1475 1449 … … 1502 1476 ASSERT_NOT_REACHED(); 1503 1477 return false; 1504 }1505 1506 void FrameLoader::scheduleHistoryNavigation(int steps)1507 {1508 m_frame->redirectScheduler()->scheduleHistoryNavigation(steps);1509 1478 } 1510 1479 -
trunk/WebCore/loader/FrameLoader.h
r48958 r48994 122 122 123 123 void scheduleRedirect(double delay, const String& url); 124 void scheduleLocationChange(const String& url, const String& referrer, bool lockHistory , bool lockBackForwardList, bool wasUserGesture);124 void scheduleLocationChange(const String& url, const String& referrer, bool lockHistory = true, bool lockBackForwardList = true, bool userGesture = false); 125 125 void scheduleFormSubmission(const FrameLoadRequest&, bool lockHistory, PassRefPtr<Event>, PassRefPtr<FormState>); 126 void scheduleRefresh(bool wasUserGesture);126 void scheduleRefresh(bool userGesture = false); 127 127 void scheduleHistoryNavigation(int steps); 128 128 … … 303 303 KURL baseURL() const; 304 304 305 bool isScheduledLocationChangePending() const;306 void scheduleHTTPRedirection(double delay, const String& url);307 void scheduleLocationChange(const String& url, const String& referrer, bool lockHistory = true, bool lockBackForwardList = true, bool userGesture = false);308 void scheduleRefresh(bool userGesture = false);309 void scheduleHistoryNavigation(int steps);310 311 305 bool canGoBackOrForward(int distance) const; 312 306 void goBackOrForward(int distance); … … 524 518 void dispatchDidReceiveContentLength(DocumentLoader*, unsigned long identifier, int length); 525 519 void dispatchDidFinishLoading(DocumentLoader*, unsigned long identifier); 526 527 void scheduleFormSubmission(const FrameLoadRequest&, bool lockHistory, PassRefPtr<Event>, PassRefPtr<FormState>);528 520 529 521 void loadWithDocumentLoader(DocumentLoader*, FrameLoadType, PassRefPtr<FormState>); // Calls continueLoadAfterNavigationPolicy -
trunk/WebCore/loader/appcache/ApplicationCacheGroup.cpp
r48701 r48994 159 159 // as part of the initial load. 160 160 // The navigation will not result in the same resource being loaded, because "foreign" entries are never picked during navigation. 161 frame-> loader()->scheduleLocationChange(documentLoader->url(), frame->loader()->referrer(), true);161 frame->redirectScheduler()->scheduleLocationChange(documentLoader->url(), frame->loader()->referrer(), true); 162 162 } 163 163 -
trunk/WebCore/page/History.cpp
r30434 r48994 58 58 if (!m_frame) 59 59 return; 60 m_frame-> loader()->scheduleHistoryNavigation(-1);60 m_frame->redirectScheduler()->scheduleHistoryNavigation(-1); 61 61 } 62 62 … … 65 65 if (!m_frame) 66 66 return; 67 m_frame-> loader()->scheduleHistoryNavigation(1);67 m_frame->redirectScheduler()->scheduleHistoryNavigation(1); 68 68 } 69 69 … … 72 72 if (!m_frame) 73 73 return; 74 m_frame-> loader()->scheduleHistoryNavigation(distance);74 m_frame->redirectScheduler()->scheduleHistoryNavigation(distance); 75 75 } 76 76
Note: See TracChangeset
for help on using the changeset viewer.