OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009, 2012 Google Inc. All rights reserved. | 2 * Copyright (C) 2009, 2012 Google Inc. All rights reserved. |
3 * Copyright (C) 2011 Apple Inc. All rights reserved. | 3 * Copyright (C) 2011 Apple Inc. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are | 6 * modification, are permitted provided that the following conditions are |
7 * met: | 7 * met: |
8 * | 8 * |
9 * * Redistributions of source code must retain the above copyright | 9 * * Redistributions of source code must retain the above copyright |
10 * notice, this list of conditions and the following disclaimer. | 10 * notice, this list of conditions and the following disclaimer. |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #include "core/frame/Settings.h" | 42 #include "core/frame/Settings.h" |
43 #include "core/html/HTMLFrameElementBase.h" | 43 #include "core/html/HTMLFrameElementBase.h" |
44 #include "core/html/HTMLMediaElement.h" | 44 #include "core/html/HTMLMediaElement.h" |
45 #include "core/html/HTMLPlugInElement.h" | 45 #include "core/html/HTMLPlugInElement.h" |
46 #include "core/input/EventHandler.h" | 46 #include "core/input/EventHandler.h" |
47 #include "core/layout/HitTestResult.h" | 47 #include "core/layout/HitTestResult.h" |
48 #include "core/loader/DocumentLoader.h" | 48 #include "core/loader/DocumentLoader.h" |
49 #include "core/loader/FrameLoadRequest.h" | 49 #include "core/loader/FrameLoadRequest.h" |
50 #include "core/loader/FrameLoader.h" | 50 #include "core/loader/FrameLoader.h" |
51 #include "core/loader/HistoryItem.h" | 51 #include "core/loader/HistoryItem.h" |
| 52 #include "core/loader/LinkLoaderClient.h" |
52 #include "core/page/Page.h" | 53 #include "core/page/Page.h" |
53 #include "core/page/WindowFeatures.h" | 54 #include "core/page/WindowFeatures.h" |
54 #include "modules/audio_output_devices/HTMLMediaElementAudioOutputDevice.h" | 55 #include "modules/audio_output_devices/HTMLMediaElementAudioOutputDevice.h" |
55 #include "modules/device_light/DeviceLightController.h" | 56 #include "modules/device_light/DeviceLightController.h" |
56 #include "modules/device_orientation/DeviceMotionController.h" | 57 #include "modules/device_orientation/DeviceMotionController.h" |
57 #include "modules/device_orientation/DeviceOrientationAbsoluteController.h" | 58 #include "modules/device_orientation/DeviceOrientationAbsoluteController.h" |
58 #include "modules/device_orientation/DeviceOrientationController.h" | 59 #include "modules/device_orientation/DeviceOrientationController.h" |
59 #include "modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h" | 60 #include "modules/encryptedmedia/HTMLMediaElementEncryptedMedia.h" |
60 #include "modules/gamepad/NavigatorGamepad.h" | 61 #include "modules/gamepad/NavigatorGamepad.h" |
61 #include "modules/mediasession/HTMLMediaElementMediaSession.h" | 62 #include "modules/mediasession/HTMLMediaElementMediaSession.h" |
62 #include "modules/mediasession/MediaSession.h" | 63 #include "modules/mediasession/MediaSession.h" |
63 #include "modules/serviceworkers/NavigatorServiceWorker.h" | 64 #include "modules/serviceworkers/NavigatorServiceWorker.h" |
| 65 #include "modules/serviceworkers/ServiceWorkerContainer.h" |
64 #include "modules/storage/DOMWindowStorageController.h" | 66 #include "modules/storage/DOMWindowStorageController.h" |
65 #include "modules/vr/NavigatorVRDevice.h" | 67 #include "modules/vr/NavigatorVRDevice.h" |
66 #include "platform/Histogram.h" | 68 #include "platform/Histogram.h" |
67 #include "platform/MIMETypeRegistry.h" | 69 #include "platform/MIMETypeRegistry.h" |
68 #include "platform/RuntimeEnabledFeatures.h" | 70 #include "platform/RuntimeEnabledFeatures.h" |
69 #include "platform/UserGestureIndicator.h" | 71 #include "platform/UserGestureIndicator.h" |
70 #include "platform/exported/WrappedResourceRequest.h" | 72 #include "platform/exported/WrappedResourceRequest.h" |
71 #include "platform/exported/WrappedResourceResponse.h" | 73 #include "platform/exported/WrappedResourceResponse.h" |
72 #include "platform/fonts/GlyphPageTreeNode.h" | 74 #include "platform/fonts/GlyphPageTreeNode.h" |
73 #include "platform/network/HTTPParsers.h" | 75 #include "platform/network/HTTPParsers.h" |
74 #include "platform/plugins/PluginData.h" | 76 #include "platform/plugins/PluginData.h" |
75 #include "public/platform/Platform.h" | 77 #include "public/platform/Platform.h" |
76 #include "public/platform/WebApplicationCacheHost.h" | 78 #include "public/platform/WebApplicationCacheHost.h" |
77 #include "public/platform/WebMediaPlayer.h" | 79 #include "public/platform/WebMediaPlayer.h" |
78 #include "public/platform/WebMimeRegistry.h" | 80 #include "public/platform/WebMimeRegistry.h" |
79 #include "public/platform/WebRTCPeerConnectionHandler.h" | 81 #include "public/platform/WebRTCPeerConnectionHandler.h" |
| 82 #include "public/platform/WebScheduler.h" |
80 #include "public/platform/WebSecurityOrigin.h" | 83 #include "public/platform/WebSecurityOrigin.h" |
81 #include "public/platform/WebURL.h" | 84 #include "public/platform/WebURL.h" |
82 #include "public/platform/WebURLError.h" | 85 #include "public/platform/WebURLError.h" |
83 #include "public/platform/WebVector.h" | 86 #include "public/platform/WebVector.h" |
84 #include "public/platform/modules/mediasession/WebMediaSession.h" | 87 #include "public/platform/modules/mediasession/WebMediaSession.h" |
85 #include "public/platform/modules/serviceworker/WebServiceWorkerProvider.h" | 88 #include "public/platform/modules/serviceworker/WebServiceWorkerProvider.h" |
86 #include "public/platform/modules/serviceworker/WebServiceWorkerProviderClient.h
" | 89 #include "public/platform/modules/serviceworker/WebServiceWorkerProviderClient.h
" |
87 #include "public/web/WebAutofillClient.h" | 90 #include "public/web/WebAutofillClient.h" |
88 #include "public/web/WebContentSettingsClient.h" | 91 #include "public/web/WebContentSettingsClient.h" |
89 #include "public/web/WebDOMEvent.h" | 92 #include "public/web/WebDOMEvent.h" |
(...skipping 940 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1030 } | 1033 } |
1031 | 1034 |
1032 void FrameLoaderClientImpl::suddenTerminationDisablerChanged(bool present, Sudde
nTerminationDisablerType type) | 1035 void FrameLoaderClientImpl::suddenTerminationDisablerChanged(bool present, Sudde
nTerminationDisablerType type) |
1033 { | 1036 { |
1034 if (m_webFrame->client()) { | 1037 if (m_webFrame->client()) { |
1035 m_webFrame->client()->suddenTerminationDisablerChanged( | 1038 m_webFrame->client()->suddenTerminationDisablerChanged( |
1036 present, static_cast<WebFrameClient::SuddenTerminationDisablerType>(
type)); | 1039 present, static_cast<WebFrameClient::SuddenTerminationDisablerType>(
type)); |
1037 } | 1040 } |
1038 } | 1041 } |
1039 | 1042 |
| 1043 namespace { |
| 1044 |
| 1045 class RegistrationCallback : public WebServiceWorkerProvider::WebServiceWorkerRe
gistrationCallbacks { |
| 1046 public: |
| 1047 explicit RegistrationCallback(LinkLoaderClient* client) : m_client(client) {
} |
| 1048 ~RegistrationCallback() override {} |
| 1049 |
| 1050 void onSuccess(WebPassOwnPtr<WebServiceWorkerRegistration::Handle> handle) o
verride |
| 1051 { |
| 1052 Platform::current()->currentThread()->scheduler()->timerTaskRunner()->po
stTask(BLINK_FROM_HERE, bind(&LinkLoaderClient::linkLoaded, m_client)); |
| 1053 } |
| 1054 |
| 1055 void onError(const WebServiceWorkerError& error) override |
| 1056 { |
| 1057 Platform::current()->currentThread()->scheduler()->timerTaskRunner()->po
stTask(BLINK_FROM_HERE, bind(&LinkLoaderClient::linkLoadingErrored, m_client)); |
| 1058 } |
| 1059 |
| 1060 private: |
| 1061 WTF_MAKE_NONCOPYABLE(RegistrationCallback); |
| 1062 |
| 1063 RawPtrWillBePersistent<LinkLoaderClient> m_client; |
| 1064 }; |
| 1065 |
| 1066 } |
| 1067 |
| 1068 void FrameLoaderClientImpl::registerServiceWorker(const KURL& scriptURL, const K
URL& scopeURL, LinkLoaderClient* client) |
| 1069 { |
| 1070 if (!client->shouldLoadLink()) |
| 1071 return; |
| 1072 |
| 1073 Document* document = m_webFrame->frame()->document(); |
| 1074 TrackExceptionState exceptionState; |
| 1075 NavigatorServiceWorker::serviceWorker(document, *m_webFrame->frame()->domWin
dow()->navigator(), exceptionState)->registerServiceWorkerImpl(document, scriptU
RL, scopeURL, adoptPtr(new RegistrationCallback(client))); |
| 1076 } |
| 1077 |
1040 } // namespace blink | 1078 } // namespace blink |
OLD | NEW |