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

Side by Side Diff: third_party/WebKit/Source/core/loader/FrameLoader.h

Issue 1475863005: [Async][WIP] Call FrameLoader::checkCompleted() asynchronously to avoid sync body.onload() Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 4 years, 10 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) 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights reserved. 2 * Copyright (C) 2006, 2007, 2008, 2009, 2011 Apple Inc. All rights reserved.
3 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/) 3 * Copyright (C) 2008, 2009 Torch Mobile Inc. All rights reserved. (http://www.t orchmobile.com/)
4 * Copyright (C) Research In Motion Limited 2009. All rights reserved. 4 * Copyright (C) Research In Motion Limited 2009. All rights reserved.
5 * Copyright (C) 2011 Google Inc. All rights reserved. 5 * Copyright (C) 2011 Google Inc. All rights reserved.
6 * 6 *
7 * Redistribution and use in source and binary forms, with or without 7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions 8 * modification, are permitted provided that the following conditions
9 * are met: 9 * are met:
10 * 10 *
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after
146 146
147 SecurityContext::InsecureRequestsPolicy insecureRequestsPolicy() const; 147 SecurityContext::InsecureRequestsPolicy insecureRequestsPolicy() const;
148 SecurityContext::InsecureNavigationsSet* insecureNavigationsToUpgrade() cons t; 148 SecurityContext::InsecureNavigationsSet* insecureNavigationsToUpgrade() cons t;
149 149
150 Frame* opener(); 150 Frame* opener();
151 void setOpener(LocalFrame*); 151 void setOpener(LocalFrame*);
152 152
153 void detach(); 153 void detach();
154 154
155 void finishedParsing(); 155 void finishedParsing();
156 void checkCompleted(); 156 void checkCompleted(int n);
157 void checkCompletedNow(int n);
157 158
158 void receivedMainResourceRedirect(const KURL& newURL); 159 void receivedMainResourceRedirect(const KURL& newURL);
159 160
160 // This prepares the FrameLoader for the next commit. It will dispatch 161 // This prepares the FrameLoader for the next commit. It will dispatch
161 // unload events, abort XHR requests and detach the document. Returns true 162 // unload events, abort XHR requests and detach the document. Returns true
162 // if the frame is ready to receive the next commit, or false otherwise. 163 // if the frame is ready to receive the next commit, or false otherwise.
163 bool prepareForCommit(); 164 bool prepareForCommit();
164 165
165 void commitProvisionalLoad(); 166 void commitProvisionalLoad();
166 167
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 207
207 enum class HistoryNavigationType { 208 enum class HistoryNavigationType {
208 DifferentDocument, 209 DifferentDocument,
209 Fragment, 210 Fragment,
210 HistoryApi 211 HistoryApi
211 }; 212 };
212 void setHistoryItemStateForCommit(HistoryCommitType, HistoryNavigationType); 213 void setHistoryItemStateForCommit(HistoryCommitType, HistoryNavigationType);
213 214
214 void loadInSameDocument(const KURL&, PassRefPtr<SerializedScriptValue> state Object, FrameLoadType, HistoryLoadType, ClientRedirectPolicy); 215 void loadInSameDocument(const KURL&, PassRefPtr<SerializedScriptValue> state Object, FrameLoadType, HistoryLoadType, ClientRedirectPolicy);
215 216
216 void scheduleCheckCompleted();
217
218 void detachDocumentLoader(RefPtrWillBeMember<DocumentLoader>&); 217 void detachDocumentLoader(RefPtrWillBeMember<DocumentLoader>&);
219 218
220 RawPtrWillBeMember<LocalFrame> m_frame; 219 RawPtrWillBeMember<LocalFrame> m_frame;
221 220
222 // FIXME: These should be OwnPtr<T> to reduce build times and simplify 221 // FIXME: These should be OwnPtr<T> to reduce build times and simplify
223 // header dependencies unless performance testing proves otherwise. 222 // header dependencies unless performance testing proves otherwise.
224 // Some of these could be lazily created for memory savings on devices. 223 // Some of these could be lazily created for memory savings on devices.
225 mutable FrameLoaderStateMachine m_stateMachine; 224 mutable FrameLoaderStateMachine m_stateMachine;
226 225
227 OwnPtrWillBeMember<ProgressTracker> m_progressTracker; 226 OwnPtrWillBeMember<ProgressTracker> m_progressTracker;
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
276 Timer<FrameLoader> m_didAccessInitialDocumentTimer; 275 Timer<FrameLoader> m_didAccessInitialDocumentTimer;
277 276
278 SandboxFlags m_forcedSandboxFlags; 277 SandboxFlags m_forcedSandboxFlags;
279 278
280 bool m_dispatchingDidClearWindowObjectInMainWorld; 279 bool m_dispatchingDidClearWindowObjectInMainWorld;
281 }; 280 };
282 281
283 } // namespace blink 282 } // namespace blink
284 283
285 #endif // FrameLoader_h 284 #endif // FrameLoader_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/loader/FrameFetchContext.cpp ('k') | third_party/WebKit/Source/core/loader/FrameLoader.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698