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

Side by Side Diff: Source/WebCore/loader/FrameLoader.cpp

Issue 7945015: Merge 95259 - Fragment navigations should interrupt a provisional load of a different document (Closed) Base URL: http://svn.webkit.org/repository/webkit/branches/chromium/874/
Patch Set: Created 9 years, 3 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
« no previous file with comments | « no previous file | Source/WebCore/loader/HistoryController.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv ed. 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All rights reserv ed.
3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 3 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
4 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 4 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
5 * Copyright (C) 2008 Alp Toker <alp@atoker.com> 5 * Copyright (C) 2008 Alp Toker <alp@atoker.com>
6 * Copyright (C) Research In Motion Limited 2009. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2009. All rights reserved.
7 * Copyright (C) 2011 Kris Jordan <krisjordan@gmail.com> 7 * Copyright (C) 2011 Kris Jordan <krisjordan@gmail.com>
8 * 8 *
9 * Redistribution and use in source and binary forms, with or without 9 * Redistribution and use in source and binary forms, with or without
10 * modification, are permitted provided that the following conditions 10 * modification, are permitted provided that the following conditions
(...skipping 2679 matching lines...) Expand 10 before | Expand all | Expand 10 after
2690 loader->continueFragmentScrollAfterNavigationPolicy(request, shouldContinue) ; 2690 loader->continueFragmentScrollAfterNavigationPolicy(request, shouldContinue) ;
2691 } 2691 }
2692 2692
2693 void FrameLoader::continueFragmentScrollAfterNavigationPolicy(const ResourceRequ est& request, bool shouldContinue) 2693 void FrameLoader::continueFragmentScrollAfterNavigationPolicy(const ResourceRequ est& request, bool shouldContinue)
2694 { 2694 {
2695 m_quickRedirectComing = false; 2695 m_quickRedirectComing = false;
2696 2696
2697 if (!shouldContinue) 2697 if (!shouldContinue)
2698 return; 2698 return;
2699 2699
2700 // If we have a provisional request for a different document, a fragment scr oll should cancel it.
2701 if (m_provisionalDocumentLoader && !equalIgnoringFragmentIdentifier(m_provis ionalDocumentLoader->request().url(), request.url())) {
2702 m_provisionalDocumentLoader->stopLoading();
2703 setProvisionalDocumentLoader(0);
2704 }
2705
2700 bool isRedirect = m_quickRedirectComing || policyChecker()->loadType() == Fr ameLoadTypeRedirectWithLockedBackForwardList; 2706 bool isRedirect = m_quickRedirectComing || policyChecker()->loadType() == Fr ameLoadTypeRedirectWithLockedBackForwardList;
2701 loadInSameDocument(request.url(), 0, !isRedirect); 2707 loadInSameDocument(request.url(), 0, !isRedirect);
2702 } 2708 }
2703 2709
2704 bool FrameLoader::shouldScrollToAnchor(bool isFormSubmission, const String& http Method, FrameLoadType loadType, const KURL& url) 2710 bool FrameLoader::shouldScrollToAnchor(bool isFormSubmission, const String& http Method, FrameLoadType loadType, const KURL& url)
2705 { 2711 {
2706 // Should we do anchor navigation within the existing content? 2712 // Should we do anchor navigation within the existing content?
2707 2713
2708 // We don't do this if we are submitting a form with method other than "GET" , explicitly reloading, 2714 // We don't do this if we are submitting a form with method other than "GET" , explicitly reloading,
2709 // currently displaying a frameset, or if the URL does not have a fragment. 2715 // currently displaying a frameset, or if the URL does not have a fragment.
(...skipping 615 matching lines...) Expand 10 before | Expand all | Expand 10 after
3325 windowRect.setHeight(features.height + (windowRect.height() - pageSize.h eight())); 3331 windowRect.setHeight(features.height + (windowRect.height() - pageSize.h eight()));
3326 page->chrome()->setWindowRect(windowRect); 3332 page->chrome()->setWindowRect(windowRect);
3327 3333
3328 page->chrome()->show(); 3334 page->chrome()->show();
3329 3335
3330 created = true; 3336 created = true;
3331 return frame; 3337 return frame;
3332 } 3338 }
3333 3339
3334 } // namespace WebCore 3340 } // namespace WebCore
OLDNEW
« no previous file with comments | « no previous file | Source/WebCore/loader/HistoryController.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698