12014-04-21 Dan Bernstein <mitz@apple.com>
2
3 WebKit part of <rdar://problem/16631323> Page::setDefersLoading doesn’t do anything when using the Network process
4 https://bugs.webkit.org/show_bug.cgi?id=131939
5
6 Reviewed by NOBODY (OOPS!).
7
8 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
9 (WebKit::NetworkConnectionToWebProcess::setDefersLoading): Added. Forwards the message to
10 the NetworkResourceLoader.
11 * NetworkProcess/NetworkConnectionToWebProcess.h:
12
13 * NetworkProcess/NetworkConnectionToWebProcess.messages.in: Added SetDefersLoading message.
14
15 * NetworkProcess/NetworkResourceLoader.cpp:
16 (WebKit::NetworkResourceLoader::NetworkResourceLoader): Initialize new member variable
17 m_defersLoading from the new field in the loader parameters.
18 (WebKit::NetworkResourceLoader::start): Added. Like WebCore::ResourceLoader, if loading is
19 deferred, keep the request in m_deferredRequest and bail out.
20 (WebKit::NetworkResourceLoader::setDefersLoading): Added. Similar to
21 WebCore::ResourceLoader::setDefersLoading.
22 * NetworkProcess/NetworkResourceLoader.h:
23 (WebKit::NetworkResourceLoader::defersLoading):
24
25 * Shared/Network/NetworkResourceLoadParameters.cpp:
26 (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters): Initialize new field
27 defersLoading to false.
28 (WebKit::NetworkResourceLoadParameters::encode): Encode new field.
29 (WebKit::NetworkResourceLoadParameters::decode): Decode new field.
30 * Shared/Network/NetworkResourceLoadParameters.h: Added defersLoading field.
31
32 * WebProcess/Network/WebResourceLoadScheduler.cpp:
33 (WebKit::WebResourceLoadScheduler::scheduleLoad): Populate defersLoading field in the load
34 parameters.
35 (WebKit::WebResourceLoadScheduler::setDefersLoading): Send a message to the Network process.
36 * WebProcess/Network/WebResourceLoadScheduler.h:
37