[Fetch API] Add fetch API compile time flag
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2015-12-16  Youenn Fablet  <youenn.fablet@crf.canon.fr>
2
3         [Fetch API] Add fetch API compile time flag
4         https://bugs.webkit.org/show_bug.cgi?id=152254
5
6         Reviewed by Darin Adler.
7
8         * Configurations/FeatureDefines.xcconfig:
9
10 2015-12-15  Tim Horton  <timothy_horton@apple.com>
11
12         [Mac] Gesture Events should not have negative scale
13         https://bugs.webkit.org/show_bug.cgi?id=151065
14         <rdar://problem/23474123>
15
16         Reviewed by Anders Carlsson.
17
18         * Shared/NativeWebGestureEvent.h:
19         * Shared/mac/NativeWebGestureEventMac.mm:
20         (WebKit::distanceForTouches):
21         (WebKit::NativeWebGestureEvent::NativeWebGestureEvent):
22         Compute the distance between the two oldest touches, and use that as
23         the scale (really the gesture diameter) on the event, instead of
24         passing through AppKit's magnification (which is computed differently).
25         This matches the documented behavior of the existing gesture events on iOS.
26
27         * UIProcess/API/Cocoa/WKWebView.mm:
28         (-[WKWebView touchesBeganWithEvent:]):
29         (-[WKWebView touchesMovedWithEvent:]):
30         (-[WKWebView touchesEndedWithEvent:]):
31         (-[WKWebView touchesCancelledWithEvent:]):
32         * UIProcess/API/mac/WKView.mm:
33         (-[WKView touchesBeganWithEvent:]):
34         (-[WKView touchesMovedWithEvent:]):
35         (-[WKView touchesEndedWithEvent:]):
36         (-[WKView touchesCancelledWithEvent:]):
37         Plumb touch events through to WebViewImpl.
38
39         * UIProcess/Cocoa/WebViewImpl.h:
40         * UIProcess/Cocoa/WebViewImpl.mm:
41         (WebKit::WebViewImpl::WebViewImpl):
42         (WebKit::WebViewImpl::magnifyWithEvent):
43         (WebKit::WebViewImpl::touchesOrderedByAge):
44         (WebKit::WebViewImpl::touchesBeganWithEvent):
45         (WebKit::WebViewImpl::touchesMovedWithEvent):
46         (WebKit::WebViewImpl::touchesEndedWithEvent):
47         (WebKit::WebViewImpl::touchesCancelledWithEvent):
48         (WebKit::WebViewImpl::rotateWithEvent):
49         Keep track of the most recent incoming touches, by identifier, in age order.
50         Pass them through to NativeWebGestureEvent so it can determine the gesture diameter.
51
52 2015-12-15  Anders Carlsson  <andersca@apple.com>
53
54         Call DatabaseManager directly from WKBundle.cpp
55         https://bugs.webkit.org/show_bug.cgi?id=152317
56
57         Reviewed by Tim Horton.
58
59         This is in preparation for getting rid of some old database manager code.
60
61         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
62         (WKBundleClearAllDatabases):
63         (WKBundleSetDatabaseQuota):
64         * WebProcess/InjectedBundle/InjectedBundle.cpp:
65         (WebKit::InjectedBundle::clearAllDatabases): Deleted.
66         (WebKit::InjectedBundle::setDatabaseQuota): Deleted.
67         * WebProcess/InjectedBundle/InjectedBundle.h:
68
69 2015-12-15  Daniel Bates  <dabates@apple.com>
70
71         Guard code that uses class LayerTreeHost with USE(COORDINATED_GRAPHICS) or USE(TEXTURE_MAPPER)
72         https://bugs.webkit.org/show_bug.cgi?id=152265
73
74         Reviewed by Tim Horton.
75
76         We neither make use of LayerTreeHost on Mac nor on iOS. We should guard code that makes
77         use of this class as applicable. This also fixes the iOS Simulator build when using
78         Apple Internal software.
79
80         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Guard code that used LayerTreeHost.
81         * WebProcess/WebPage/LayerTreeHost.cpp: Guard contents of file with USE(COORDINATED_GRAPHICS) || USE(TEXTURE_MAPPER).
82         * WebProcess/WebPage/LayerTreeHost.h: Ditto.
83         * WebProcess/WebPage/WebPage.cpp:
84         (WebKit::WebPage::scalePage): Ditto.
85         (WebKit::WebPage::setDeviceScaleFactor): Ditto.
86         * WebProcess/WebPage/WebPage.h: Substitute header LayerTreeContext.h for LayerTreeHost.h since we make use
87         of the enum class LayerHostingMode.
88         * WebProcess/WebPage/ios/WebPageIOS.mm:
89         (WebKit::WebPage::updateVisibleContentRects): Remove unnecessary code; DrawingArea::layerTreeHost() always
90         returns nullptr on iOS.
91
92 2015-12-15  Zan Dobersek  <zdobersek@igalia.com>
93
94         [TexMap] Operate with a reference to the TextureMapper wherever possible
95         https://bugs.webkit.org/show_bug.cgi?id=152118
96
97         Reviewed by Martin Robinson.
98
99         Replace pointers to the TextureMapper object with references.
100
101         * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp:
102         (WebKit::CoordinatedBackingStoreTile::swapBuffers):
103         (WebKit::CoordinatedBackingStore::paintTilesToTextureMapper):
104         (WebKit::CoordinatedBackingStore::paintToTextureMapper):
105         (WebKit::CoordinatedBackingStore::drawBorder):
106         (WebKit::CoordinatedBackingStore::drawRepaintCounter):
107         (WebKit::CoordinatedBackingStore::commitTileOperations):
108         * Shared/CoordinatedGraphics/CoordinatedBackingStore.h:
109         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
110         (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
111         (WebKit::CoordinatedGraphicsScene::paintToGraphicsContext):
112         (WebKit::CoordinatedGraphicsScene::commitPendingBackingStoreOperations):
113
114 2015-12-14  YongGeol Jung  <yg48.jung@samsung.com>
115
116         [Coordinated Graphics] CSS transition effect is not shown when transformed with "%" unit.
117         https://bugs.webkit.org/show_bug.cgi?id=152278
118
119         Reviewed by Darin Adler.
120
121         boxSize is encoded as FloatSize type but decoded as IntSize type.
122         So boxSize gets invalid value after decoding.
123         Due to this layer goes to out of screen during animation.
124
125         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
126         (IPC::ArgumentCoder<TextureMapperAnimation>::decode):
127
128 2015-12-14  Dan Bernstein  <mitz@apple.com>
129
130         <rdar://problem/23886216> REGRESSION (r194022): Production builds of PluginProcess crash on launch when not installed in /System
131         https://bugs.webkit.org/show_bug.cgi?id=152291
132
133         Reviewed by Darin Adler.
134
135         * Configurations/PluginProcess.xcconfig: Added a FIXME.
136         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
137         (WebKit::addDYLDEnvironmentAdditions): Set DYLD_LIBRARY_PATH to point to where the shims
138         are. This is needed because starting in El Capitan, the processes’ main executables link
139         directly against the shims, so the dynamic linker needs to be able to find them in the
140         non-/System location. Also added a FIXME about not having to set DYLD_INSERT_LIBRARIES when
141         the main executables link the them directly.
142
143 2015-12-14  Simon Fraser  <simon.fraser@apple.com>
144
145         Dump some more data in the RemoteLayerTreeTransaction
146         https://bugs.webkit.org/show_bug.cgi?id=152283
147
148         Reviewed by Dean Jackson.
149         
150         Dump some scale factors, viewport meta tag width and render tree size.
151
152         * Shared/mac/RemoteLayerTreeTransaction.mm:
153         (WebKit::RemoteLayerTreeTransaction::description):
154
155 2015-12-14  Tim Horton  <timothy_horton@apple.com>
156
157         Frequent crash under -[WKPDFView web_setMinimumSize:]_block_invoke
158         https://bugs.webkit.org/show_bug.cgi?id=152266
159         <rdar://problem/22092676>
160
161         Reviewed by Simon Fraser.
162
163         * UIProcess/ios/WKPDFView.mm:
164         (-[WKPDFView web_setMinimumSize:]):
165         We weren't retaining the UIScrollView, but depending on it surviving
166         into this block's invocation.
167
168         We don't need to do this asynchronously anymore because the referenced
169         bug is fixed, so make it happen synchronously. This also fixes the crash
170         because there's no opportunity for the scroll view to be released.
171
172 2015-12-14  Tim Horton  <timothy_horton@apple.com>
173
174         TiledCoreAnimationDrawingAreaProxy::createFenceForGeometryUpdate() sets fence port on context twice
175         https://bugs.webkit.org/show_bug.cgi?id=152239
176         <rdar://problem/22893289>
177
178         Reviewed by Darin Adler.
179
180         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
181         (WebKit::TiledCoreAnimationDrawingAreaProxy::createFenceForGeometryUpdate):
182         No need to setFencePort; createFencePort also installs it on the creating context.
183
184 2015-12-12  Alex Christensen  <achristensen@webkit.org>
185
186         Use existing code for redirects when using NETWORK_SESSION
187         https://bugs.webkit.org/show_bug.cgi?id=152207
188         rdar://problem/23860624
189
190         Reviewed by Darin Adler.
191         
192         This fixes http/tests/cookies/set-cookie-on-redirect.html when using NETWORK_SESSION.
193
194         * NetworkProcess/NetworkLoad.cpp:
195         (WebKit::NetworkLoad::continueWillSendRequest):
196         (WebKit::NetworkLoad::convertTaskToDownload):
197         (WebKit::NetworkLoad::willPerformHTTPRedirection):
198         (WebKit::NetworkLoad::didReceiveChallenge):
199         * NetworkProcess/NetworkLoad.h:
200         * NetworkProcess/NetworkSession.h:
201
202 2015-12-13  Tim Horton  <timothy_horton@apple.com>
203
204         Adopt CGIOSurfaceContextCreateImageReference to avoid unnecessary readback
205         https://bugs.webkit.org/show_bug.cgi?id=150988
206         <rdar://problem/18993594>
207
208         Reviewed by Darin Adler.
209
210         * WebProcess/WebPage/WebFrame.cpp:
211         (WebKit::WebFrame::createSelectionSnapshot):
212         Adopt sinkIntoImage and drawConsumingImageBuffer in a few places.
213
214 2015-12-13  Dan Bernstein  <mitz@apple.com>
215
216         Another fix after r194018.
217
218         * Configurations/BaseTarget.xcconfig:
219         * Configurations/BaseXPCService.xcconfig:
220
221 2015-12-13  Dan Bernstein  <mitz@apple.com>
222
223         [Mac] Shims used by XPC services are installed inside legacy process bundles
224         https://bugs.webkit.org/show_bug.cgi?id=152233
225
226         Reviewed by Sam Weinig.
227
228         Have the shim dylibs installed in the framework’s Frameworks directory instead.
229
230         * Configurations/BaseLegacyProcess.xcconfig: Simplified now that EXCLUDED_SHIM_FILE_NAME is
231           no longer defined, because shims aren’t copied into legacy processes.
232
233         * Configurations/NetworkProcess.xcconfig: Removed definition of EXCLUDED_SHIM_FILE_NAME.
234         * Configurations/PluginProcess.xcconfig: Ditto.
235         * Configurations/WebContentProcess.xcconfig: Ditto.
236
237         * Configurations/Shim.xcconfig: Install the shims when building for OS X. Added definitions
238           of INSTALL_PATH and DYLIB_INSTALL_NAME_BASE which are now common to all shims.
239
240         * Configurations/PluginProcessShim.xcconfig: Removed definitions of INSTALL_PATH and
241           DYLIB_INSTALL_NAME_BASE from here, now that they are defined for all shims in
242           Shim.xcconfig.
243         * Configurations/SecItemShim.xcconfig: Ditto.
244         * Configurations/WebProcessShim.xcconfig:
245
246         * Configurations/WebKit.xcconfig: Added the shims to EXCLUDED_SOURCE_FILE_NAMES for iOS.
247
248         * NetworkProcess/EntryPoint/mac/XPCService/NetworkService/Info-OSX-10.9-10.10.plist: Changed
249           the value of DYLD_INSERT_LIBRARIES to point to the shim’s new location.
250         * PluginProcess/EntryPoint/mac/XPCService/PluginService.32-64-10.9-10.10.Info.plist: Ditto.
251         * WebProcess/EntryPoint/mac/XPCService/WebContentService/Info-OSX-10.9-10.10.plist: Ditto.
252
253         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
254         (WebKit::computeProcessShimPath): Changed to return the new paths, which are all inside the
255           framework’s Frameworks directory.
256
257         * WebKit2.xcodeproj/project.pbxproj:
258         - Removed references to WRAPPER_NAME from the “Copy XPC services for engineering builds”
259           build phase in the All target, becase WRAPPER_NAME is empty in an aggregate target.
260         - Removed the PlugInProcess target’s dependency on the PluginProcessShim target and its
261           Copy Plug-in Process Shim build phase.
262         - Removed the NetworkProcess target’s dependency on the SecItemShim target and its Copy
263           Sec Item Shim build phase.
264         - Removed the WebProcess target’s dependency on the WebProcessShim target and its Copy
265           WebProcessShim build phase.
266         - Made the WebKit target depend on the shim targets, and added to it a Copy Shims build
267           phase that copies the shims into the framework’s Frameworks directory.
268
269 2015-12-13  Dan Bernstein  <mitz@apple.com>
270
271         Build fix.
272
273         * Configurations/PluginProcess.xcconfig:
274
275 2015-12-13  Dan Bernstein  <mitz@apple.com>
276
277         [Mac] Shims aren’t inserted properly on Yosemite when building with the El Capitan SDK
278         https://bugs.webkit.org/show_bug.cgi?id=152229
279
280         Reviewed by Darin Adler.
281
282         * Configurations/BaseTarget.xcconfig: Defined WK_LINK_SHIM on OS X to YES or NO based on the
283           target version.
284         * Configurations/BaseXPCService.xcconfig: Define WK_XPC_SERVICE_INFOPLIST_SUFFIX to
285           "-10.9-10.10" when targeting those OS X versions.
286         * Configurations/NetworkService.xcconfig: Use WK_XPC_SERVICE_INFOPLIST_SUFFIX in the
287           definition of INFOPLIST_FILE. Use WK_LINK_SHIM in the definition of OTHER_LDFLAGS.
288         * Configurations/PluginProcess.xcconfig: Use WK_LINK_SHIM in the definition of
289           LDFLAGS_SHIM_Production for OS X.
290         * Configurations/PluginService.32.xcconfig: Use WK_XPC_SERVICE_INFOPLIST_SUFFIX in the
291           definition of INFOPLIST_FILE. Use WK_LINK_SHIM in the definition of OTHER_LDFLAGS.
292         * Configurations/PluginService.64.xcconfig: Ditto.
293         * Configurations/WebContentService.xcconfig: Ditto.
294
295 2015-12-12  Katlyn Graff  <kgraff@apple.com>
296
297         Safari background tabs should be fully suspended where possible.
298         https://bugs.webkit.org/show_bug.cgi?id=150515
299
300         Reviewed by Ryosuke Niwa.
301
302         Added a runtime flag enabling tab suspension, default off.
303
304         * Shared/WebProcessCreationParameters.cpp:
305         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
306         (WebKit::WebProcessCreationParameters::encode):
307         (WebKit::WebProcessCreationParameters::decode):
308         * Shared/WebProcessCreationParameters.h:
309         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
310         (WebKit::registerUserDefaultsIfNeeded):
311         (WebKit::WebProcessPool::platformInitializeWebProcess):
312         * WebProcess/cocoa/WebProcessCocoa.mm:
313         (WebKit::WebProcess::platformInitializeWebProcess):
314
315 2015-12-11  Eric Carlson  <eric.carlson@apple.com>
316
317         [MediaStream] Add a setting to allow the mock media capture devices to be enabled and disabled
318         https://bugs.webkit.org/show_bug.cgi?id=152197
319
320         Reviewed by Dean Jackson.
321
322         * Shared/WebPreferencesDefinitions.h:
323         * UIProcess/API/C/WKPreferences.cpp:
324         (WKPreferencesSetMockCaptureDevicesEnabled):
325         (WKPreferencesGetMockCaptureDevicesEnabled):
326         * UIProcess/API/C/WKPreferencesRefPrivate.h:
327         * UIProcess/API/Cocoa/WKPreferences.mm:
328         (-[WKPreferences _mockCaptureDevicesEnabled]):
329         (-[WKPreferences _setMockCaptureDevicesEnabled:]):
330         * WebProcess/WebPage/WebPage.cpp:
331         (WebKit::WebPage::updatePreferences):
332
333 2015-12-11  Joseph Pecoraro  <pecoraro@apple.com>
334
335         check-for-inappropriate-objc-class-names should check all class names, not just externally visible ones
336         https://bugs.webkit.org/show_bug.cgi?id=152156
337
338         Reviewed by Dan Bernstein.
339
340         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
341         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
342         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
343         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
344         (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
345         Rename internal classes with "_WK" prefix.
346
347 2015-12-10  Eric Carlson  <eric.carlson@apple.com>
348
349         [MediaStream] Expose media capture devices persistent permissions to WebCore
350         https://bugs.webkit.org/show_bug.cgi?id=152087
351
352         Reviewed by Chris Dumez.
353
354         * CMakeLists.txt: Add UserMediaPermissionCheckProxy.cpp and WKUserMediaPermissionCheck.cpp.
355
356         * Shared/API/APIObject.h: Define UserMediaPermissionCheck.
357
358         * Shared/API/c/WKBase.h: Add WKUserMediaPermissionCheckRef typedef.
359
360         * UIProcess/API/APIUIClient.h:
361         (API::UIClient::checkUserMediaPermissionForOrigin): New.
362
363         * UIProcess/API/C/WKAPICast.h: Add WKUserMediaPermissionCheckRef/UserMediaPermissionCheckProxy mapping.
364
365         * UIProcess/API/C/WKPage.cpp:
366         (WKPageSetPageUIClient): Implement checkUserMediaPermissionForOrigin.
367
368         * UIProcess/API/C/WKPageUIClient.h: Add WKCheckUserMediaPermissionCallback typedef and add
369           checkUserMediaPermissionForOrigin to WKPageUIClientV6.
370
371         * UIProcess/API/C/WKUserMediaPermissionCheck.cpp: Added.
372         (WKUserMediaPermissionCheckGetTypeID):
373         (WKUserMediaPermissionCheckSetHasPermission):
374
375         * UIProcess/API/C/WKUserMediaPermissionCheck.h: Added.
376
377         * UIProcess/UserMediaPermissionCheckProxy.cpp: Added.
378         (WebKit::UserMediaPermissionCheckProxy::UserMediaPermissionCheckProxy):
379         (WebKit::UserMediaPermissionCheckProxy::setHasPermission):
380         (WebKit::UserMediaPermissionCheckProxy::invalidate):
381         * UIProcess/UserMediaPermissionCheckProxy.h: Added.
382         (WebKit::UserMediaPermissionCheckProxy::create):
383         * UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
384         (WebKit::UserMediaPermissionRequestManagerProxy::invalidateRequests):
385         (WebKit::UserMediaPermissionRequestManagerProxy::createRequest):
386         (WebKit::UserMediaPermissionRequestManagerProxy::didReceiveUserMediaPermissionDecision):
387         (WebKit::UserMediaPermissionRequestManagerProxy::createUserMediaPermissionCheck):
388         (WebKit::UserMediaPermissionRequestManagerProxy::didCompleteUserMediaPermissionCheck):
389         * UIProcess/UserMediaPermissionRequestManagerProxy.h:
390         * UIProcess/WebPageProxy.cpp:
391         (WebKit::WebPageProxy::requestUserMediaPermissionForFrame):
392         (WebKit::WebPageProxy::checkUserMediaPermissionForFrame):
393         (WebKit::WebPageProxy::requestNotificationPermission):
394         * UIProcess/WebPageProxy.h:
395         * UIProcess/WebPageProxy.messages.in:
396
397         * WebKit2.xcodeproj/project.pbxproj: Add UserMediaPermissionCheckProxy.*, and WKUserMediaPermissionCheck.*.
398
399         * WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
400         (WebKit::UserMediaPermissionRequestManager::startUserMediaRequest): Renamed from startRequest.
401         (WebKit::UserMediaPermissionRequestManager::cancelUserMediaRequest): Renamed from cancelRequest.
402         (WebKit::UserMediaPermissionRequestManager::didReceiveUserMediaPermissionDecision): m_requestToIDMap ->
403           m_userMediaRequestToIDMap.remove.
404         (WebKit::UserMediaPermissionRequestManager::startUserMediaPermissionCheck): New, start the request.
405         (WebKit::UserMediaPermissionRequestManager::cancelUserMediaPermissionCheck): New, cancel
406           the request.
407         (WebKit::UserMediaPermissionRequestManager::didCompleteUserMediaPermissionCheck): New, 
408           all the request completion method.
409         (WebKit::UserMediaPermissionRequestManager::startRequest): Deleted.
410         (WebKit::UserMediaPermissionRequestManager::cancelRequest): Deleted.
411         * WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
412
413         * WebProcess/WebCoreSupport/WebUserMediaClient.cpp:
414         (WebKit::WebUserMediaClient::requestUserMediaAccess): startRequest -> startUserMediaRequest.
415         (WebKit::WebUserMediaClient::cancelUserMediaAccessRequest): cancelRequest -> cancelUserMediaRequest.
416         (WebKit::WebUserMediaClient::checkUserMediaPermission): New.
417         (WebKit::WebUserMediaClient::cancelUserMediaPermissionCheck): New.
418         * WebProcess/WebCoreSupport/WebUserMediaClient.h:
419
420         * WebProcess/WebPage/WebPage.cpp:
421         (WebKit::WebPage::didCompleteUserMediaPermissionCheck): New.
422         * WebProcess/WebPage/WebPage.h:
423         * WebProcess/WebPage/WebPage.messages.in: Add DidCompleteUserMediaPermissionCheck.
424
425 2015-12-10  Joseph Pecoraro  <pecoraro@apple.com>
426
427         Remote Inspector: Verify the identity of the other side of XPC connections
428         https://bugs.webkit.org/show_bug.cgi?id=152153
429
430         Reviewed by Brian Burg.
431
432         * Shared/mac/SandboxUtilities.mm:
433         * UIProcess/ApplicationStateTracker.mm:
434         Use new header.
435
436 2015-12-10  Alex Christensen  <achristensen@webkit.org>
437
438         REGRESSION (r192796) WKBundlePageResourceLoadClient should be able to setHTTPBody in willSendRequestForFrame
439         https://bugs.webkit.org/show_bug.cgi?id=152022
440         rdar://problem/23763584
441
442         Reviewed by Darin Adler.
443
444         * Shared/API/c/WKURLRequest.cpp:
445         (WKURLRequestCopyHTTPMethod):
446         (WKURLRequestCopyWithHTTPBody):
447         (WKURLRequestSetDefaultTimeoutInterval):
448         * Shared/API/c/WKURLRequest.h:
449         Make WKURLRequestCopyWithHTTPBody SPI for testing.
450         * Shared/API/c/mac/WKURLRequestNS.mm:
451         (WKURLRequestCreateWithNSURLRequest):
452         Crash if someone tries to use an NSURLRequest with HTTPBodyStream, which will not work with the network process.
453         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
454         (WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame):
455         Use an HTTP body if the client's willSendRequestForFrame returned one.
456         This is the functional change of this patch.
457
458 2015-12-10  Zan Dobersek  <zdobersek@igalia.com>
459
460         [CoordinatedGraphics] Reserve capacity for the children vector in CoordinatedGraphicsScene::setLayerChildrenIfNeeded()
461         https://bugs.webkit.org/show_bug.cgi?id=152117
462
463         Reviewed by Martin Robinson.
464
465         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
466         (WebKit::CoordinatedGraphicsScene::setLayerChildrenIfNeeded): Reserve the capacity
467         for the new Vector that will contain the same number of items as the Vector
468         on the CoordinatedGraphicsLayerState object.
469
470 2015-12-09  Daniel Bates  <dabates@apple.com>
471
472         [iOS] Bail out if the page proxy is invalid when WebPageProxy::processWillBecome{Foreground, Suspended}() are called
473         https://bugs.webkit.org/show_bug.cgi?id=151877
474
475         Reviewed by Darin Adler.
476
477         We cannot assume that a WebPageProxy is in a valid state when WebPageProxy::processWillBecome{Foreground, Suspended}()
478         are called because these callbacks may occur after the web process crashed and before a
479         WebPageProxy attaches to a new web process (and hence is considered in a valid state).
480
481         * UIProcess/WebPageProxy.cpp:
482         (WebKit::WebPageProxy::processWillBecomeSuspended): Early return if the page proxy is invalid.
483         (WebKit::WebPageProxy::processWillBecomeForeground): Ditto.
484
485 2015-12-09  Commit Queue  <commit-queue@webkit.org>
486
487         Unreviewed, rolling out r193864.
488         https://bugs.webkit.org/show_bug.cgi?id=152100
489
490         caused all inspector tests to assert in WK2 Debug (Requested
491         by brrian on #webkit).
492
493         Reverted changeset:
494
495         "Web Inspector: reproducible debug ASSERT when inspecting the
496         inspector (WK2)"
497         https://bugs.webkit.org/show_bug.cgi?id=152080
498         http://trac.webkit.org/changeset/193864
499
500 2015-12-09  Brian Burg  <bburg@apple.com>
501
502         Web Inspector: reproducible debug ASSERT when inspecting the inspector (WK2)
503         https://bugs.webkit.org/show_bug.cgi?id=152080
504
505         Reviewed by Timothy Hatcher.
506
507         We hit an assert underneath ChildProcessProxy::addMessageReceiver because
508         we tried to connect the inspector page and inspected page more than once.
509         This relationship is already set up in the constructor of WebProcessProxy.
510
511         * UIProcess/WebInspectorProxy.cpp:
512         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
513
514 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
515
516         [EFL] Need to change expectation result in ewk_settings_offline_web_application_cache_enabled API test
517         https://bugs.webkit.org/show_bug.cgi?id=152063
518
519         Reviewed by Csaba Osztrogonác.
520
521         Expect false initial value of ewk_settings_offline_web_application_cache_enabled_get()
522         because r193812 didn't enable it by default.
523
524         * UIProcess/API/efl/tests/test_ewk2_settings.cpp:
525         (TEST_F):
526
527 2015-12-09  Gwang Yoon Hwang  <yoon@igalia.com>
528
529         [ThreadedCompositor] Add support for HiDPI
530         https://bugs.webkit.org/show_bug.cgi?id=152071
531
532         Reviewed by Carlos Garcia Campos.
533
534         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:
535         (WebKit::ThreadedCompositor::setDeviceScaleFactor): Added to receive the
536         device scale factor from the layer tree host.
537         (WebKit::ThreadedCompositor::renderLayerTree):
538         Apply device scale factor before rendering the page.
539         * Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.h:
540         * WebProcess/WebPage/CoordinatedGraphics/ThreadedCoordinatedLayerTreeHost.cpp:
541         (WebKit::ThreadedCoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
542         Send a updated device scale factor to the compositing thread.
543
544 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
545
546         [CoordinatedGraphics] Remove unnecessary guards in CoordinatedDrawingArea
547         https://bugs.webkit.org/show_bug.cgi?id=152068
548
549         Reviewed by Gyuyoung Kim.
550
551         CoordinatedDrawingArea is only for UI side compositor of CoordinatedGraphics.
552         So, COORDINATED_GRAPHICS_MULTIPROCESS guards are not necessary.
553         This patch also removes COORDINATED_GRAPHICS_MULTIPROCESS guards from DrawingAreaImpl
554         because of same reason.
555
556         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
557         (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy): Deleted.
558         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
559         (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea): Deleted.
560         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
561         * WebProcess/WebPage/DrawingAreaImpl.h:
562
563 2015-12-09  Mario Sanchez Prada  <mario@endlessm.com>
564
565         [GTK] Crash in WebProcess when loading large content with custom URI schemes
566         https://bugs.webkit.org/show_bug.cgi?id=144262
567
568         Reviewed by Carlos Garcia Campos.
569
570         Properly handle scenarios where errors happen after reading the first
571         chunk of data coming from the GInputStream provided by the application.
572
573         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
574         * UIProcess/API/gtk/WebKitWebContext.cpp:
575         (webkitWebContextIsLoadingCustomProtocol): New, checks whether a load
576         is still in progress, after the startLoading method has been called.
577         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
578         (webkitURISchemeRequestReadCallback): Early return if the stream has been
579         cancelled on finish_error, so that we make sure we don't keep on reading
580         the GInputStream after that point.
581         (webkit_uri_scheme_request_finish_error): Don't send a didFailWithError
582         message to the Network process if the load is not longer in progress.
583         * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp:
584         (WebKit::CustomProtocolManagerImpl::didFailWithError): Handle the case where
585         an error is notified from the UI process after the first chunk has been read.
586         (WebKit::CustomProtocolManagerImpl::didReceiveResponse): Handle the case where
587         data might no longer be available if an error happened even before this point.
588         * WebProcess/soup/WebKitSoupRequestInputStream.h:
589         * WebProcess/soup/WebKitSoupRequestInputStream.cpp:
590         (webkitSoupRequestInputStreamDidFailWithError): Notify the custom GInputStream
591         that we no longer want to keep reading data in chunks due to a specific error.
592         (webkitSoupRequestInputStreamReadAsync): Early finish the GTask with a specific
593         error whenever webkitSoupRequestInputStreamDidFailWithError() has been called.
594
595 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
596
597         [CoordinatedGraphics][EFL] Fix unhandled web process message when launching MiniBrowser
598         https://bugs.webkit.org/show_bug.cgi?id=152048
599
600         Reviewed by Gyuyoung Kim.
601
602         WebPage should be initialized before updating preferences.
603
604         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
605         (WKViewInitialize): Deleted.
606         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
607         * UIProcess/API/efl/EwkView.cpp:
608         (EwkView::EwkView):
609         Calls WKViewSetIsActive instead of WKViewInitialize not to change the behavior
610         of EFL port.
611         * UIProcess/CoordinatedGraphics/WebView.cpp:
612         (WebKit::WebView::WebView):
613         Initialize just before creating WebPage because there is not use case to separate
614         initializing WebPage from creating in CoordinatedGraphics.
615         (WebKit::WebView::initialize): Deleted.
616         * UIProcess/CoordinatedGraphics/WebView.h:
617
618 2015-12-09  Carlos Garcia Campos  <cgarcia@igalia.com>
619
620         [GTK] Add API to handle beforeunload events
621         https://bugs.webkit.org/show_bug.cgi?id=139090
622
623         Reviewed by Gustavo Noronha Silva.
624
625         beforeunload is fired when a page is about to be closed, to ask
626         the user for confirmation. This happens when reloading a page,
627         when navigating to another page or when the page is closed by a
628         user action (a tab or window closed). In the first two cases, the
629         event is automatically fired by WebCore, but in the case of a user
630         action we need additional API to ensure the event is fired before
631         the page is closed. A new script dialog type has been added to
632         handle beforeunload events and webkit_web_view_try_close() to
633         allow applications to try to close the page.
634
635         * UIProcess/API/gtk/WebKitScriptDialog.cpp:
636         (webkit_script_dialog_confirm_set_confirmed): BeforeUnloadConfirm
637         dialogs can also be confirmed.
638         * UIProcess/API/gtk/WebKitScriptDialog.h: Add
639         WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM script dialog type.
640         * UIProcess/API/gtk/WebKitUIClient.cpp: Implement
641         canRunBeforeUnloadConfirmPanel() and runBeforeUnloadConfirmPanel().
642         * UIProcess/API/gtk/WebKitWebView.cpp:
643         (webkitWebViewCreateJavaScriptDialog): Add secondaryText optional
644         parameter for BeforeUnloadConfirm dialogs. Do not set the default
645         response if the dialog was created without buttons.
646         (webkitWebViewScriptDialog): Handle
647         WEBKIT_SCRIPT_DIALOG_BEFORE_UNLOAD_CONFIRM script dialog type to
648         create a message dialog for beforeunlos events.
649         (webkit_web_view_class_init): Update documentation of
650         WebKitWebView::close and WebKitWebView::script-dialog.
651         (webkitWebViewRunJavaScriptBeforeUnloadConfirm): Emit WebKitWebView::script-dialog.
652         (webkit_web_view_try_close): Try to close the page.
653         * UIProcess/API/gtk/WebKitWebView.h:
654         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
655         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
656
657 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
658
659         [EFL] Missing to set ignoreTLSError to NetworkProcess
660         https://bugs.webkit.org/show_bug.cgi?id=152047
661
662         Reviewed by Csaba Osztrogonác.
663
664         NetworkProcess has been enabled for all ports since r192796 though, EFL port
665         didn't send the ignoreTLSError value to NetworkProcess. This has caused failure of EFL API tests
666         related with ssl feature.
667
668         * UIProcess/efl/WebProcessPoolEfl.cpp:
669         (WebKit::WebProcessPool::setIgnoreTLSErrors):
670
671 2015-12-09  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
672
673         [EFL] REGRESSION(r193616): WKPreferences test has been failed since r193616
674         https://bugs.webkit.org/show_bug.cgi?id=151942
675
676         Reviewed by Darin Adler.
677
678         As wkpreference settings were moved from EwkView to WKPreferenceEfl, the offline-web-application-cache feature
679         is enabled by default when running API test. It seems this option should be enabled by MiniBrowser.
680
681         * UIProcess/efl/WebPreferencesEfl.cpp:
682         (WebKit::WebPreferences::platformInitializeStore): Remove to enable web application cache feature here.
683
684 2015-12-09  Ryuan Choi  <ryuan.choi@navercorp.com>
685
686         [CoordinatedGraphics] layerTreeHost always exist in CoordinatedDrawingArea
687         https://bugs.webkit.org/show_bug.cgi?id=151987
688
689         Reviewed by Darin Adler.
690
691         CoordinatedGraphics using UI side compositor always forces accelerated compositing.
692         This patch cleans up dead code for layerTreeHost which always exists.
693
694         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
695         (WebKit::CoordinatedDrawingAreaProxy::paint): Deleted.
696         (WebKit::CoordinatedDrawingAreaProxy::setBackingStoreIsDiscardable): Deleted.
697         (WebKit::CoordinatedDrawingAreaProxy::update): Deleted.
698         (WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState): Deleted.
699         (WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode): Deleted.
700         (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate): Deleted.
701         (WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode): Deleted.
702         (WebKit::CoordinatedDrawingAreaProxy::discardBackingStoreSoon): Deleted.
703         (WebKit::CoordinatedDrawingAreaProxy::discardBackingStore): Deleted.
704         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
705         (WebKit::CoordinatedDrawingAreaProxy::setBackingStoreIsDiscardable):
706         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
707         (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea): Deleted.
708         (WebKit::CoordinatedDrawingArea::layerHostDidFlushLayers): Deleted.
709         (WebKit::CoordinatedDrawingArea::scheduleCompositingLayerFlush): Deleted.
710         (WebKit::CoordinatedDrawingArea::didUpdate): Deleted.
711         (WebKit::CoordinatedDrawingArea::enterAcceleratedCompositingMode): Deleted.
712         (WebKit::CoordinatedDrawingArea::scheduleDisplay): Deleted.
713         (WebKit::CoordinatedDrawingArea::displayTimerFired): Deleted.
714         (WebKit::CoordinatedDrawingArea::display): Deleted.
715         (WebKit::shouldPaintBoundsRect): Deleted.
716         (WebKit::CoordinatedDrawingArea::attachViewOverlayGraphicsLayer): Deleted.
717         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
718
719 2015-12-08  Alex Christensen  <achristensen@webkit.org>
720
721         Progress towards implementing downloads with NetworkSession
722         https://bugs.webkit.org/show_bug.cgi?id=151883
723
724         Reviewed by Brady Eidson.
725
726         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
727         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
728         * NetworkProcess/NetworkLoad.cpp:
729         (WebKit::NetworkLoad::~NetworkLoad):
730         (WebKit::NetworkLoad::continueDidReceiveResponse):
731         (WebKit::NetworkLoad::convertTaskToDownload):
732         (WebKit::NetworkLoad::willPerformHTTPRedirection):
733         (WebKit::NetworkLoad::didReceiveChallenge):
734         (WebKit::NetworkLoad::didReceiveResponse):
735         (WebKit::NetworkLoad::didReceiveData):
736         (WebKit::NetworkLoad::didCompleteWithError):
737         (WebKit::NetworkLoad::didBecomeDownload):
738         (WebKit::NetworkLoad::didReceiveResponseAsync):
739         (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
740         * NetworkProcess/NetworkLoad.h:
741         * NetworkProcess/NetworkLoadClient.h:
742         * NetworkProcess/NetworkResourceLoader.cpp:
743         (WebKit::NetworkResourceLoader::cleanup):
744         (WebKit::NetworkResourceLoader::didConvertToDownload):
745         (WebKit::NetworkResourceLoader::abort):
746         (WebKit::NetworkResourceLoader::didConvertHandleToDownload): Deleted.
747         * NetworkProcess/NetworkResourceLoader.h:
748         * NetworkProcess/NetworkSession.h:
749         (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
750         (WebKit::NetworkSession::~NetworkSession): Deleted.
751         * NetworkProcess/cache/NetworkCacheSpeculativeLoad.h:
752         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
753         (-[NetworkSessionDelegate URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:]):
754         (-[NetworkSessionDelegate URLSession:dataTask:didBecomeDownloadTask:]):
755         (WebKit::NetworkSession::NetworkSession):
756         (WebKit::NetworkSession::~NetworkSession):
757         (WebKit::NetworkSession::createDataTaskWithRequest):
758         * Shared/Downloads/Download.h:
759         * Shared/Downloads/DownloadManager.h:
760         (WebKit::DownloadManager::isDownloading):
761         (WebKit::DownloadManager::activeDownloadCount):
762
763 2015-12-08  Joseph Pecoraro  <pecoraro@apple.com>
764
765         Create a Sandbox SPI header
766         https://bugs.webkit.org/show_bug.cgi?id=151981
767
768         Reviewed by Andy Estes.
769
770         * PluginProcess/mac/PluginProcessShim.mm:
771         * Shared/ios/ChildProcessIOS.mm:
772         * Shared/mac/ChildProcessMac.mm:
773         * Shared/mac/SandboxUtilities.mm:
774
775 2015-12-08  Eric Carlson  <eric.carlson@apple.com>
776
777         [MediaStream] Rename UserMediaClient and UserMediaController methods
778         https://bugs.webkit.org/show_bug.cgi?id=152001
779
780         Reviewed by Brady Eidson.
781
782         * WebProcess/WebCoreSupport/WebUserMediaClient.cpp:
783         (WebKit::WebUserMediaClient::pageDestroyed):
784         (WebKit::WebUserMediaClient::requestUserMediaAccess):
785         (WebKit::WebUserMediaClient::cancelUserMediaAccessRequest):
786         (WebKit::WebUserMediaClient::requestPermission): Deleted.
787         (WebKit::WebUserMediaClient::cancelRequest): Deleted.
788         * WebProcess/WebCoreSupport/WebUserMediaClient.h:
789
790 2015-12-08  Tomas Popela  <tpopela@redhat.com>
791
792         [GTK] Remove an unused variable from WebKitWebContext
793         https://bugs.webkit.org/show_bug.cgi?id=151999
794
795         Reviewed by Carlos Garcia Campos.
796
797         * UIProcess/API/gtk/WebKitWebContext.cpp:
798
799 2015-12-08  Chris Dumez  <cdumez@apple.com>
800
801         Add diagnostic logging to measure speculative revalidation accuracy
802         https://bugs.webkit.org/show_bug.cgi?id=151953
803         <rdar://problem/23092196>
804
805         Reviewed by Darin Adler.
806
807         We track the following:
808         1. Resources we knew about AND did not get requested
809            A. We did not speculate (Good)
810            B. We speculated but did not go to network (Bad)
811            C. We speculated and went to network (Very bad)
812         2. Resources we did not know about (Neutral)
813         3. Resources we knew about AND got requested
814            A. We did not speculate (Bad)
815            B. We speculated but did not go to network (Good)
816            C. We speculated and went to network (Very good)
817
818         * NetworkProcess/cache/NetworkCache.cpp:
819         (WebKit::NetworkCache::Cache::retrieve):
820         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
821         (WebKit::NetworkCache::allSpeculativeLoadingDiagnosticMessages):
822         (WebKit::NetworkCache::printSpeculativeLoadingDiagnosticMessageCounts):
823         (WebKit::NetworkCache::logSpeculativeLoadingDiagnosticMessage):
824         (WebKit::NetworkCache::SpeculativeLoadManager::ExpiringEntry::ExpiringEntry):
825         (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::PreloadedEntry):
826         (WebKit::NetworkCache::SpeculativeLoadManager::PreloadedEntry::wasRevalidated):
827         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::markLoadAsCompleted):
828         (WebKit::NetworkCache::SpeculativeLoadManager::retrieve):
829         (WebKit::NetworkCache::SpeculativeLoadManager::addPreloadedEntry):
830         (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry):
831         (WebKit::NetworkCache::SpeculativeLoadManager::preloadEntry):
832         (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation):
833         (WebKit::NetworkCache::makeSubresourcesKey): Deleted.
834         (WebKit::NetworkCache::constructRevalidationRequest): Deleted.
835         (WebKit::NetworkCache::responseNeedsRevalidation): Deleted.
836         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady): Deleted.
837         (WebKit::NetworkCache::SpeculativeLoadManager::retrieveEntryFromStorage): Deleted.
838         (WebKit::NetworkCache::SpeculativeLoadManager::satisfyPendingRequests): Deleted.
839         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h:
840
841 2015-12-08  Csaba Osztrogonác  <ossy@webkit.org>
842
843         [EFL] REGRESSION(r173394): MiniBrowser stucked in an infinite loop if NETWORK_CACHE is disabled
844         https://bugs.webkit.org/show_bug.cgi?id=137692
845
846         Reviewed by Darin Adler.
847
848         * WebProcess/Network/WebLoaderStrategy.cpp:
849         (WebKit::maximumBufferingTime): Disable caching if NETWORK_CACHE is disabled.
850
851 2015-12-08  Ryuan Choi  <ryuan.choi@navercorp.com>
852
853         [EFL] Add API to provide preferences before creating ewk_view
854         https://bugs.webkit.org/show_bug.cgi?id=151587
855
856         Reviewed by Gyuyoung Kim.
857
858         This patch adds ewk_view_configuration_settings_get to provide preferences
859         before createing ewk_view.
860
861         * PlatformEfl.cmake:
862         * UIProcess/API/efl/ewk_view_configuration.cpp:
863         (EwkViewConfiguration::EwkViewConfiguration):
864         (ewk_view_configuration_settings_get):
865         * UIProcess/API/efl/ewk_view_configuration.h:
866         * UIProcess/API/efl/ewk_view_configuration_private.h:
867         (EwkViewConfiguration::pageGroup):
868         * UIProcess/API/efl/tests/test_ewk2_view_configuration.cpp:
869         (TEST_F): Added test case for ewk_view_configuration_settings_get().
870
871 2015-12-07  Gustavo Noronha Silva  <gns@gnome.org>
872
873         [GTK] Notify WebCore when notification is clicked
874         https://bugs.webkit.org/show_bug.cgi?id=151951
875
876         Reviewed by Carlos Garcia Campos.
877
878         * UIProcess/API/gtk/WebKitNotification.cpp:
879         (webkit_notification_class_init): new clicked signal.
880         (webkit_notification_clicked): method to emit the clicked signal.
881         * UIProcess/API/gtk/WebKitNotification.h:
882         * UIProcess/API/gtk/WebKitNotificationProvider.cpp:
883         (WebKitNotificationProvider::notificationClickedCallback): handle the clicked signal and tell WebProcess about the click.
884         (WebKitNotificationProvider::show): connect to the clicked signal in addition to closed.
885         * UIProcess/API/gtk/WebKitNotificationProvider.h:
886         * UIProcess/API/gtk/WebKitWebView.cpp:
887         (notifyNotificationClicked): handle the click on our libnotify notification.
888         (webkitWebViewShowNotification): add the "default" action to our libnotify notification to be notified of the click.
889         * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
890
891 2015-12-07  Commit Queue  <commit-queue@webkit.org>
892
893         Unreviewed, rolling out r193655.
894         https://bugs.webkit.org/show_bug.cgi?id=151970
895
896         This change broke existing LayoutTests on mac-wk2 (Requested
897         by ryanhaddad on #webkit).
898
899         Reverted changeset:
900
901         "UIProcess should determine AppNap state for WebPage"
902         https://bugs.webkit.org/show_bug.cgi?id=151964
903         http://trac.webkit.org/changeset/193655
904
905 2015-12-05  Gavin Barraclough  <barraclough@apple.com>
906
907         UIProcess should determine AppNap state for WebPage
908         https://bugs.webkit.org/show_bug.cgi?id=151964
909
910         Reviewed by Anders Carlson.
911
912         Step 1 in unifying this with the iOS process suppression mechanism is to move the decision out of the WebContent process.
913
914         * UIProcess/WebPageProxy.cpp:
915         (WebKit::WebPageProxy::WebPageProxy):
916         (WebKit::WebPageProxy::dispatchViewStateChange):
917         (WebKit::WebPageProxy::setPageActivityState):
918         (WebKit::WebPageProxy::updateActivityToken):
919         (WebKit::WebPageProxy::preferencesDidChange):
920         * UIProcess/WebPageProxy.h:
921         (WebKit::WebPageProxy::isInWindow):
922         (WebKit::WebPageProxy::didUpdateViewState):
923         * UIProcess/WebPageProxy.messages.in:
924             - WebPage now propagates PageActivityState to the WebPageProxy, for use
925               determining the supression state of the WebProcess.
926         * WebProcess/WebPage/WebPage.cpp:
927         (WebKit::m_shouldDispatchFakeMouseMoveEvents):
928         (WebKit::WebPage::setPageActivityState):
929         (WebKit::WebPage::setUserActivityStarted):
930         (WebKit::WebPage::setViewState):
931         (WebKit::WebPage::updatePreferences):
932         (WebKit::WebPage::updateUserActivity): Deleted.
933         * WebProcess/WebPage/WebPage.h:
934         * WebProcess/WebPage/WebPage.messages.in:
935             - WebPage no longer determines when to update it's own UserActivity - instead,
936               let the UI process do so. As such, no longer need to track whether process
937               supression is enabled. Instead, add message to
938
939 2015-12-07  Chris Dumez  <cdumez@apple.com>
940
941         [WK2] Regression(r187691): If a page is showing an auth pane in one tab, any new tabs with same page hang until credentials are entered in first tab
942         https://bugs.webkit.org/show_bug.cgi?id=151960
943         <rdar://problem/23618112>
944
945         Reviewed by Alex Christensen.
946
947         After r187691, if a page is showing an auth pane in one tab, any new
948         tabs with same page hang until credentials are entered in first tab.
949         This is because we coalescing all authentication challenges from the
950         same domain, no matter what tab they are for. This can be confusing
951         so we now only coalesce authentication challenges within each tab,
952         by leveraging the pageID (in addition to the domain).
953
954         * Shared/Authentication/AuthenticationManager.cpp:
955         (WebKit::AuthenticationManager::shouldCoalesceChallenge):
956         (WebKit::AuthenticationManager::coalesceChallengesMatching):
957         (WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):
958         * Shared/Authentication/AuthenticationManager.h:
959
960 2015-12-07  Beth Dakin  <bdakin@apple.com>
961
962         Hook up request and show for typing candidates in WK1
963         https://bugs.webkit.org/show_bug.cgi?id=151831
964         -and corresponding-
965         <rdar://problem/23751214>
966
967         Reviewed by Enrica Casucci.
968
969         Empty client for now.
970         * WebProcess/WebCoreSupport/WebEditorClient.h:
971
972 2015-12-07  Philippe Normand  <pnormand@igalia.com>
973
974         [GTK][Mac] socketpair assertion failure
975         https://bugs.webkit.org/show_bug.cgi?id=151293
976
977         Reviewed by Carlos Garcia Campos.
978
979         * Platform/IPC/unix/ConnectionUnix.cpp: Don't use SEQPACKET sockets on Darwin.
980
981 2015-12-07  Gwang Yoon Hwang  <yoon@igalia.com>
982
983         [ThreadedCompositor] Add support for PlatformLayer.
984         https://bugs.webkit.org/show_bug.cgi?id=143299
985
986         Reviewed by Žan Doberšek.
987
988         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
989         (WebKit::CoordinatedGraphicsScene::paintToCurrentGLContext):
990         Swap pending buffers of TextureMapperPlatformLayerProxies before painting contents.
991         (WebKit::CoordinatedGraphicsScene::syncPlatformLayerIfNeeded):
992         In threaded compositor, CoordinatedGraphicsScence only cares about creation and deletion
993         of platform layers.
994
995         (WebKit::CoordinatedGraphicsScene::onNewBufferAvailable):
996         Whenever new buffer comes via TextureMapperPlatformLayerProxy, CoordinatedGraphicsScene will
997         update the scene if it is needed.
998
999 2015-12-07  Mario Sanchez Prada  <mario@endlessm.com>
1000
1001         [GTK] Allow applications to force Accelerated Compositing mode
1002         https://bugs.webkit.org/show_bug.cgi?id=150558
1003
1004         Reviewed by Carlos Garcia Campos.
1005
1006         Enable forcing Accelerated Compositing mode to be always on if
1007         a WEBKIT_FORCE_COMPOSITING_MODE environment variable is set.
1008
1009         This can be useful for controlled environments where we know that
1010         AC always on works well enough, to get smoother animations.
1011
1012         * UIProcess/gtk/WebPreferencesGtk.cpp:
1013         (WebKit::WebPreferences::platformInitializeStore): Set forceCompositingMode
1014         setting to true if the environment variable is found.
1015
1016 2015-12-07  Jon Forsberg  <jon.orebro@gmail.com>
1017
1018         [GTK] Add webkit_uri_request_get_http_method
1019         https://bugs.webkit.org/show_bug.cgi?id=151601
1020
1021         Reviewed by Martin Robinson.
1022
1023         Add a method to get the HTTP method of a WebKitURIRequest.
1024
1025         * UIProcess/API/gtk/WebKitURIRequest.cpp:
1026         (webkit_uri_request_get_http_method):
1027         * UIProcess/API/gtk/WebKitURIRequest.h:
1028         * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt:
1029
1030 2015-12-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1031
1032         [GTK] Add WebKitWebPage::console-message-sent signal to Web Extensions API
1033         https://bugs.webkit.org/show_bug.cgi?id=79918
1034
1035         Reviewed by Gustavo Noronha Silva.
1036
1037         Add WebKitConsoleMessage boxed type that is passed to the
1038         WebKitWebPage::console-message-sent signal with all the details
1039         about the message.
1040
1041         * PlatformGTK.cmake: Add new files to compilation.
1042         * UIProcess/API/gtk/docs/webkit2gtk-4.0-sections.txt: Add new symbols.
1043         * UIProcess/API/gtk/docs/webkit2gtk-4.0.types: Add webkit_console_message_get_type.
1044         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add new section to the docs.
1045         * WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h:
1046         (API::InjectedBundle::PageUIClient::willAddMessageToConsole): Add
1047         paramaters for all console message details.
1048         * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.cpp: Added.
1049         (webkit_console_message_copy):
1050         (webkit_console_message_free):
1051         (webkit_console_message_get_source):
1052         (webkit_console_message_get_level):
1053         (webkit_console_message_get_text):
1054         (webkit_console_message_get_line):
1055         (webkit_console_message_get_source_id):
1056         * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessage.h: Added.
1057         * WebProcess/InjectedBundle/API/gtk/WebKitConsoleMessagePrivate.h: Added.
1058         (_WebKitConsoleMessage::_WebKitConsoleMessage):
1059         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1060         (webkitWebPageDidSendConsoleMessage): Emit the
1061         WebKitWebPage::console-message-sent signal.
1062         (didReceiveResponseForResource): Generate a console message in
1063         case of HTTP failure >= 400 for consistency with the inspector.
1064         (didFailLoadForResource): Generate a console message in case of
1065         resource load failure for consistency with the inspector.
1066         (webkit_web_page_class_init): Add WebKitWebPage::console-message-sent signal.
1067         (webkitWebPageCreate): Set custom UI client.
1068         * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1069         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1070         (WebKit::InjectedBundlePageUIClient::willAddMessageToConsole):
1071         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.h:
1072         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1073         (WebKit::WebChromeClient::addMessageToConsole): Pass all the
1074         console message details to the ui client.
1075
1076 2015-12-07  Ryuan Choi  <ryuan.choi@navercorp.com>
1077
1078         [EFL] MiniBrowser doesn't exit when called ewk_view_try_close()
1079         https://bugs.webkit.org/show_bug.cgi?id=151934
1080
1081         Reviewed by Csaba Osztrogonác.
1082
1083         * UIProcess/API/efl/ewk_view.cpp:
1084         (ewk_view_try_close):
1085         Called window_close callback immediately when WKPageTryClose returns true.
1086         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
1087         (TEST_F): Improved test cases for try_close to test when content does not contain
1088         onbeforeunload callback.
1089
1090 2015-12-07  Jaehun Lim  <ljaehun.lim@samsung.com>
1091
1092         [EFL] Moving preference settings from EwkView to WebPreferencesEfl
1093         https://bugs.webkit.org/show_bug.cgi?id=151928
1094
1095         Reviewed by Gyuyoung Kim.
1096
1097         It implements WebPreferences::platformInitializeStore() in WebPreferencesEfl.cpp.
1098
1099         * UIProcess/API/efl/EwkView.cpp:
1100         (EwkView::EwkView):
1101         * UIProcess/efl/WebPreferencesEfl.cpp:
1102         (WebKit::WebPreferences::platformInitializeStore):
1103
1104 2015-12-04  Anders Carlsson  <andersca@apple.com>
1105
1106         Crash when secondary clicking on a link on yahoo.com
1107         https://bugs.webkit.org/show_bug.cgi?id=151900
1108         rdar://problem/23765149
1109
1110         Reviewed by Beth Dakin.
1111
1112         Don't use +[NSURL URLWithString:] since it doesn't handle invalid URLs as well as WebCore::URL.
1113
1114         * UIProcess/mac/WebContextMenuProxyMac.mm:
1115         (WebKit::WebContextMenuProxyMac::createShareMenuItem):
1116
1117 2015-12-04  Beth Dakin  <bdakin@apple.com>
1118
1119         Crash in clients using userData in 
1120         _immediateActionAnimationControllerForHitTestResult
1121         https://bugs.webkit.org/show_bug.cgi?id=151887
1122
1123         Rubber-stamped by Anders Carlsson.
1124
1125         Follow-up fix to handle null userData.
1126         * UIProcess/API/Cocoa/WKWebView.mm:
1127         (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
1128
1129 2015-12-04  Beth Dakin  <bdakin@apple.com>
1130
1131         Crash in clients using userData in 
1132         _immediateActionAnimationControllerForHitTestResult
1133         https://bugs.webkit.org/show_bug.cgi?id=151887
1134
1135         Reviewed by Sam Weinig.
1136
1137         Cast this correctly.
1138         * UIProcess/API/Cocoa/WKWebView.mm:
1139         (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
1140
1141 2015-12-04  Gavin Barraclough  <barraclough@apple.com>
1142
1143         Background state not being tracked correctly for PDFs on iOS
1144         https://bugs.webkit.org/show_bug.cgi?id=151886
1145
1146         Reviewed by Anders Carlson.
1147
1148         The problem here is that when viewing a PDF we don't have an ApplicationStateTracker.
1149         (While we do have a content view - which normally holds the ApplicationStateTracker -
1150         the content view is not in a window, and only has an ApplicationStateTracker while in a
1151         window). For now, let's give the WKPDFView an ApplicationStateTracker of its very own.
1152         In the future we may want to refactor ownership of the ApplicationStateTracker up to
1153         the WKWebView.
1154
1155         * UIProcess/API/Cocoa/WKWebView.mm:
1156         (-[WKWebView _isBackground]):
1157             - Added, checks background state of content/PDF view.
1158         * UIProcess/API/Cocoa/WKWebViewInternal.h:
1159             - expose _isBackground to PageClientImplIOS.
1160         * UIProcess/ApplicationStateTracker.h:
1161         (WebKit::ApplicationStateTracker::isInBackground):
1162         * UIProcess/ApplicationStateTracker.mm:
1163         (WebKit::isBackgroundState):
1164         (WebKit::ApplicationStateTracker::ApplicationStateTracker):
1165             - generalize WKContentView -> UIView, so this may now also be a WKPDFView.
1166         * UIProcess/ios/PageClientImplIOS.mm:
1167         (WebKit::PageClientImpl::isViewVisible):
1168             - check background state via the WKWebView.
1169         * UIProcess/ios/WKPDFView.h:
1170         * UIProcess/ios/WKPDFView.mm:
1171         (-[WKPDFView willMoveToWindow:]):
1172         (-[WKPDFView didMoveToWindow]):
1173         (-[WKPDFView isBackground]):
1174         (-[WKPDFView _applicationDidEnterBackground]):
1175         (-[WKPDFView _applicationWillEnterForeground]):
1176             - added methods to initialize ApplicationStateTracker, access background state, & callbacks to the page proxy.
1177
1178 2015-12-04  Antti Koivisto  <antti@apple.com>
1179
1180         Rename WebResourceLoadScheduler to WebLoaderStrategy
1181         https://bugs.webkit.org/show_bug.cgi?id=151854
1182
1183         Reviewed by Anders Carlsson.
1184
1185         It implements WebCore::LoaderStrategy and doesn't do any scheduling.
1186
1187         * CMakeLists.txt:
1188         * WebKit2.xcodeproj/project.pbxproj:
1189         * WebProcess/Network/NetworkProcessConnection.cpp:
1190         (WebKit::NetworkProcessConnection::didReceiveMessage):
1191         * WebProcess/Network/WebLoaderStrategy.cpp: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.cpp.
1192         (WebKit::WebLoaderStrategy::WebLoaderStrategy):
1193         (WebKit::WebLoaderStrategy::~WebLoaderStrategy):
1194         (WebKit::WebLoaderStrategy::loadResource):
1195         (WebKit::WebLoaderStrategy::schedulePluginStreamLoad):
1196         (WebKit::maximumBufferingTime):
1197         (WebKit::WebLoaderStrategy::scheduleLoad):
1198         (WebKit::WebLoaderStrategy::scheduleInternallyFailedLoad):
1199         (WebKit::WebLoaderStrategy::internallyFailedLoadTimerFired):
1200         (WebKit::WebLoaderStrategy::startLocalLoad):
1201         (WebKit::WebLoaderStrategy::remove):
1202         (WebKit::WebLoaderStrategy::setDefersLoading):
1203         (WebKit::WebLoaderStrategy::crossOriginRedirectReceived):
1204         (WebKit::WebLoaderStrategy::servePendingRequests):
1205         (WebKit::WebLoaderStrategy::suspendPendingRequests):
1206         (WebKit::WebLoaderStrategy::resumePendingRequests):
1207         (WebKit::WebLoaderStrategy::networkProcessCrashed):
1208         (WebKit::WebLoaderStrategy::loadResourceSynchronously):
1209         (WebKit::WebLoaderStrategy::createPingHandle):
1210         (WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler): Deleted.
1211         (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler): Deleted.
1212         (WebKit::WebResourceLoadScheduler::loadResource): Deleted.
1213         (WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad): Deleted.
1214         (WebKit::WebResourceLoadScheduler::scheduleLoad): Deleted.
1215         (WebKit::WebResourceLoadScheduler::scheduleInternallyFailedLoad): Deleted.
1216         (WebKit::WebResourceLoadScheduler::internallyFailedLoadTimerFired): Deleted.
1217         (WebKit::WebResourceLoadScheduler::startLocalLoad): Deleted.
1218         (WebKit::WebResourceLoadScheduler::remove): Deleted.
1219         (WebKit::WebResourceLoadScheduler::setDefersLoading): Deleted.
1220         (WebKit::WebResourceLoadScheduler::crossOriginRedirectReceived): Deleted.
1221         (WebKit::WebResourceLoadScheduler::servePendingRequests): Deleted.
1222         (WebKit::WebResourceLoadScheduler::suspendPendingRequests): Deleted.
1223         (WebKit::WebResourceLoadScheduler::resumePendingRequests): Deleted.
1224         (WebKit::WebResourceLoadScheduler::networkProcessCrashed): Deleted.
1225         (WebKit::WebResourceLoadScheduler::loadResourceSynchronously): Deleted.
1226         (WebKit::WebResourceLoadScheduler::createPingHandle): Deleted.
1227         * WebProcess/Network/WebLoaderStrategy.h: Copied from Source/WebKit2/WebProcess/Network/WebResourceLoadScheduler.h.
1228         (WebKit::WebLoaderStrategy::webResourceLoaderForIdentifier):
1229         (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier): Deleted.
1230         * WebProcess/Network/WebResourceLoadScheduler.cpp: Removed.
1231         * WebProcess/Network/WebResourceLoadScheduler.h: Removed.
1232         * WebProcess/Plugins/PluginView.cpp:
1233         (WebKit::PluginView::Stream::start):
1234         (WebKit::PluginView::Stream::cancel):
1235         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1236         (WebKit::WebPlatformStrategies::createLoaderStrategy):
1237         (WebKit::WebPlatformStrategies::createPasteboardStrategy):
1238         * WebProcess/WebProcess.cpp:
1239         (WebKit::WebProcess::WebProcess):
1240         (WebKit::WebProcess::initializeWebProcess):
1241         (WebKit::WebProcess::networkProcessConnectionClosed):
1242         (WebKit::WebProcess::webLoaderStrategy):
1243         (WebKit::WebProcess::webResourceLoadScheduler): Deleted.
1244         * WebProcess/WebProcess.h:
1245
1246 2015-12-03  Simon Fraser  <simon.fraser@apple.com>
1247
1248         Have layer memory use consult the backing store format
1249         https://bugs.webkit.org/show_bug.cgi?id=151827
1250         rdar://problem/23746497
1251
1252         Reviewed by Dean Jackson.
1253
1254         When computing the backing store memory size, take the pixel format into account,
1255         rather than assuming 4 bytes per pixel.
1256
1257         * Shared/mac/RemoteLayerBackingStore.h:
1258         * Shared/mac/RemoteLayerBackingStore.mm:
1259         (WebKit::RemoteLayerBackingStore::bytesPerPixel):
1260         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
1261         (WebKit::PlatformCALayerRemote::backingStoreBytesPerPixel):
1262         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
1263
1264 2015-12-03  Jer Noble  <jer.noble@apple.com>
1265
1266         Expose WebCore's InvisibleAutoplayNotPermitted setting to WebKit & WebKit2
1267         https://bugs.webkit.org/show_bug.cgi?id=151830
1268
1269         Reviewed by Anders Carlsson.
1270
1271         Add a new, private WKWebViewConfiguration property _invisibleAutoplayNotPermitted.
1272
1273         * Shared/WebPreferencesDefinitions.h:
1274         * UIProcess/API/Cocoa/WKWebView.mm:
1275         (-[WKWebView initWithFrame:configuration:]):
1276         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1277         (-[WKWebViewConfiguration init]):
1278         (-[WKWebViewConfiguration copyWithZone:]):
1279         (-[WKWebViewConfiguration _invisibleAutoplayNotPermitted]):
1280         (-[WKWebViewConfiguration _setInvisibleAutoplayNotPermitted:]):
1281         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
1282         * WebProcess/WebPage/WebPage.cpp:
1283         (WebKit::WebPage::updatePreferences):
1284
1285 2015-12-03  Sam Weinig  <sam@webkit.org>
1286
1287         It should be possible to use version 6 of the WKPageUIClient without adopting the new createNewPage
1288         https://bugs.webkit.org/show_bug.cgi?id=151826
1289
1290         Reviewed by Anders Carlsson.
1291
1292         * UIProcess/API/C/WKPage.cpp:
1293         (WKPageSetPageUIClient):
1294         Pick which variant of createNewPage to use based on which function pointer is available,
1295         not the version number.
1296
1297 2015-12-03  Anders Carlsson  <andersca@apple.com>
1298
1299         Remove Objective-C GC support
1300         https://bugs.webkit.org/show_bug.cgi?id=151819
1301         rdar://problem/23746991
1302
1303         Reviewed by Dan Bernstein.
1304
1305         * Configurations/Base.xcconfig:
1306         * Configurations/BaseLegacyProcess.xcconfig:
1307         * Configurations/BaseXPCService.xcconfig:
1308         * Shared/Cocoa/APIObject.mm:
1309         (API::Object::newObject): Deleted.
1310
1311 2015-12-03  Jer Noble  <jer.noble@apple.com>
1312
1313         Unreviewed build-fix; fix !HAVE(AVKIT) build after r193340.
1314
1315         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
1316         (WebKit::WebVideoFullscreenManagerProxy::applicationDidBecomeActive):
1317
1318 2015-12-03  Sam Weinig  <sam@webkit.org>
1319
1320         Need completionHandler-based WebKit C SPI for alert, confirm, and prompt
1321         <rdar://problem/23320863>
1322         https://bugs.webkit.org/show_bug.cgi?id=151708
1323
1324         (Add missing function definitions)
1325
1326         * UIProcess/API/C/WKPage.cpp:
1327         (WKPageRunJavaScriptAlertResultListenerGetTypeID):
1328         (WKPageRunJavaScriptAlertResultListenerCall):
1329         (WKPageRunJavaScriptConfirmResultListenerGetTypeID):
1330         (WKPageRunJavaScriptConfirmResultListenerCall):
1331         (WKPageRunJavaScriptPromptResultListenerGetTypeID):
1332         (WKPageRunJavaScriptPromptResultListenerCall):
1333
1334 2015-12-03  Jer Noble  <jer.noble@apple.com>
1335
1336         [iOS] Fullscreen -> PiP should resume to Fullscreen, not inline
1337         https://bugs.webkit.org/show_bug.cgi?id=150906
1338
1339         Reviewed by Simon Fraser.
1340
1341         Add methods to pass isVisible(), applicationDidBecomeActive(), and requestFullscreenMode()
1342         to and from models and interfaces.
1343
1344         * UIProcess/ios/WebPageProxyIOS.mm:
1345         (WebKit::WebPageProxy::applicationDidBecomeActive): Notify the fullscreen manager, if preset.
1346
1347         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
1348         (WebKit::WebVideoFullscreenModelContext::requestFullscreenMode): Renamed from requestExitFullscreen(); takes a mode enum.
1349         (WebKit::WebVideoFullscreenModelContext::isVisible): Added.
1350         (WebKit::WebVideoFullscreenManagerProxy::applicationDidBecomeActive): Pass to all existing interfaces.
1351         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Do not re-create the view if it already exists.
1352         (WebKit::WebVideoFullscreenManagerProxy::requestFullscreenMode): Renamed from requestExitFullscreen(); takes a mode enum.
1353         (WebKit::WebVideoFullscreenManagerProxy::isVisible): Added. Query Page::isVisible() and Page::isInWindow(), the latter because
1354                 PiP will cause Page::isVisible() to be TRUE even when the containing tab is backgrounded.
1355         (WebKit::WebVideoFullscreenModelContext::requestExitFullscreen): Deleted.
1356         (WebKit::WebVideoFullscreenManagerProxy::requestExitFullscreen): Deleted.
1357         * WebProcess/ios/WebVideoFullscreenManager.mm:
1358         (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Only resize the view if we are not already in one of
1359                 the fullscreen modes.
1360         (WebKit::WebVideoFullscreenManager::requestFullscreenMode): Renamed from requestExitFullscreen().
1361         (WebKit::WebVideoFullscreenManager::requestExitFullscreen): Deleted.
1362
1363 2015-12-02  Antti Koivisto  <antti@apple.com>
1364
1365         Move ResourceLoadScheduler to WebKit1
1366         https://bugs.webkit.org/show_bug.cgi?id=151743
1367
1368         Reviewed by Alex Christensen.
1369
1370         * NetworkProcess/NetworkProcessPlatformStrategies.cpp:
1371         (WebKit::NetworkProcessPlatformStrategies::createCookiesStrategy):
1372         (WebKit::NetworkProcessPlatformStrategies::createLoaderStrategy):
1373         (WebKit::NetworkProcessPlatformStrategies::createPasteboardStrategy):
1374         (WebKit::NetworkProcessPlatformStrategies::createPluginStrategy):
1375         (WebKit::NetworkProcessPlatformStrategies::createBlobRegistry):
1376         (WebKit::NetworkProcessPlatformStrategies::resourceLoadScheduler): Deleted.
1377         (WebKit::NetworkProcessPlatformStrategies::loadResourceSynchronously): Deleted.
1378         * NetworkProcess/NetworkProcessPlatformStrategies.h:
1379         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1380         * WebProcess/Network/WebResourceLoadScheduler.cpp:
1381         (WebKit::WebResourceLoadScheduler::~WebResourceLoadScheduler):
1382         (WebKit::WebResourceLoadScheduler::loadResource):
1383         (WebKit::WebResourceLoadScheduler::resumePendingRequests):
1384         (WebKit::WebResourceLoadScheduler::networkProcessCrashed):
1385         (WebKit::WebResourceLoadScheduler::loadResourceSynchronously):
1386         (WebKit::WebResourceLoadScheduler::createPingHandle):
1387         (WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad): Deleted.
1388         (WebKit::WebResourceLoadScheduler::setSerialLoadingEnabled): Deleted.
1389         * WebProcess/Network/WebResourceLoadScheduler.h:
1390         (WebKit::WebResourceLoadScheduler::webResourceLoaderForIdentifier):
1391         * WebProcess/Plugins/PluginView.cpp:
1392         (WebKit::PluginView::Stream::start):
1393         (WebKit::PluginView::Stream::cancel):
1394         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1395         (WebKit::WebPlatformStrategies::createLoaderStrategy):
1396         (WebKit::WebPlatformStrategies::createPasteboardStrategy):
1397         (WebKit::WebPlatformStrategies::createPluginStrategy):
1398         (WebKit::WebPlatformStrategies::createBlobRegistry):
1399         (WebKit::WebPlatformStrategies::cookiesForDOM):
1400         (WebKit::WebPlatformStrategies::deleteCookie):
1401         (WebKit::WebPlatformStrategies::refreshPlugins):
1402         (WebKit::WebPlatformStrategies::resourceLoadScheduler): Deleted.
1403         (WebKit::WebPlatformStrategies::loadResourceSynchronously): Deleted.
1404         (WebKit::WebPlatformStrategies::createPingHandle): Deleted.
1405         * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1406
1407 2015-12-02  Alex Christensen  <achristensen@webkit.org>
1408
1409         Fix authentication requests with NetworkSession and canHandleHTTPSServerTrustEvaluation true
1410         https://bugs.webkit.org/show_bug.cgi?id=151775
1411         rdar://problem/23586265
1412
1413         Reviewed by Chris Dumez.
1414
1415         In https://bugs.webkit.org/show_bug.cgi?id=150968 I copied functionality from 
1416         NetworkLoad::canAuthenticateAgainstProtectionSpaceAsync into NetworkLoad::didReceiveChallenge
1417         but I overlooked the call to m_client.canAuthenticateAgainstProtectionSpaceAsync which is needed
1418         if canHandleHTTPSServerTrustEvaluation is true.  This adds that call and moves what should happen
1419         after that to NetworkLoad::continueCanAuthenticateAgainstProtectionSpace.
1420
1421         * NetworkProcess/NetworkLoad.cpp:
1422         (WebKit::NetworkLoad::didReceiveChallenge):
1423         (WebKit::NetworkLoad::didReceiveResponse):
1424         (WebKit::NetworkLoad::continueCanAuthenticateAgainstProtectionSpace):
1425         * NetworkProcess/NetworkLoad.h:
1426         * NetworkProcess/NetworkSession.h:
1427         * Shared/Authentication/AuthenticationManager.h:
1428
1429 2015-12-01  Hunseop Jeong  <hs85.jeong@samsung.com>
1430
1431         Unreviewed, fix build after r192931.
1432
1433         * CMakeLists.txt: Remove the WKOriginDataManager in CMakeLists.txt.
1434
1435 2015-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
1436
1437         [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature
1438         https://bugs.webkit.org/show_bug.cgi?id=150792
1439
1440         Reviewed by Saam Barati.
1441
1442         * Configurations/FeatureDefines.xcconfig:
1443
1444 2015-12-01  Commit Queue  <commit-queue@webkit.org>
1445
1446         Unreviewed, rolling out r192914.
1447         https://bugs.webkit.org/show_bug.cgi?id=151734
1448
1449         JSC tests for this change are failing on 32 and 64-bit bots
1450         (Requested by ryanhaddad on #webkit).
1451
1452         Reverted changeset:
1453
1454         "[ES6] Implement LLInt/Baseline Support for ES6 Generators and
1455         enable this feature"
1456         https://bugs.webkit.org/show_bug.cgi?id=150792
1457         http://trac.webkit.org/changeset/192914
1458
1459 2015-12-01  Anders Carlsson  <andersca@apple.com>
1460
1461         Remove WKOriginDataManager
1462         https://bugs.webkit.org/show_bug.cgi?id=151723
1463
1464         Reviewed by Andy Estes.
1465
1466         * UIProcess/API/C/WKOriginDataManager.cpp: Removed.
1467         (WKOriginDataManagerGetTypeID): Deleted.
1468         (WKOriginDataManagerGetOrigins): Deleted.
1469         (WKOriginDataManagerDeleteEntriesForOrigin): Deleted.
1470         (WKOriginDataManagerDeleteEntriesModifiedBetweenDates): Deleted.
1471         (WKOriginDataManagerDeleteAllEntries): Deleted.
1472         * UIProcess/API/C/WKOriginDataManager.h: Removed.
1473         * WebKit2.xcodeproj/project.pbxproj:
1474
1475 2015-12-01  Yusuke Suzuki  <utatane.tea@gmail.com>
1476
1477         [ES6] Implement LLInt/Baseline Support for ES6 Generators and enable this feature
1478         https://bugs.webkit.org/show_bug.cgi?id=150792
1479
1480         Reviewed by Saam Barati.
1481
1482         * Configurations/FeatureDefines.xcconfig:
1483
1484 2015-12-01  Sam Weinig  <sam@webkit.org>
1485
1486         Need completionHandler-based WebKit C SPI for alert, confirm, and prompt
1487         <rdar://problem/23320863>
1488         https://bugs.webkit.org/show_bug.cgi?id=151708
1489
1490         Reviewed by Anders Carlsson.
1491
1492         Add listener based versions of alert, confirm and prompt.
1493
1494         * Shared/API/APIObject.h:
1495         * Shared/API/c/WKBase.h:
1496         * UIProcess/API/C/WKPage.cpp:
1497         (WebKit::RunJavaScriptAlertResultListener::create):
1498         (WebKit::RunJavaScriptAlertResultListener::~RunJavaScriptAlertResultListener):
1499         (WebKit::RunJavaScriptAlertResultListener::call):
1500         (WebKit::RunJavaScriptAlertResultListener::RunJavaScriptAlertResultListener):
1501         (WebKit::RunJavaScriptConfirmResultListener::create):
1502         (WebKit::RunJavaScriptConfirmResultListener::~RunJavaScriptConfirmResultListener):
1503         (WebKit::RunJavaScriptConfirmResultListener::call):
1504         (WebKit::RunJavaScriptConfirmResultListener::RunJavaScriptConfirmResultListener):
1505         (WebKit::RunJavaScriptPromptResultListener::create):
1506         (WebKit::RunJavaScriptPromptResultListener::~RunJavaScriptPromptResultListener):
1507         (WebKit::RunJavaScriptPromptResultListener::call):
1508         (WebKit::RunJavaScriptPromptResultListener::RunJavaScriptPromptResultListener):
1509         (WKPageSetPageUIClient):
1510         * UIProcess/API/C/WKPageUIClient.h:
1511
1512 2015-12-01  Anders Carlsson  <andersca@apple.com>
1513
1514         Remove WebKit2.framework
1515         https://bugs.webkit.org/show_bug.cgi?id=151715
1516
1517         Reviewed by Dan Bernstein.
1518
1519         * Configurations/WebKit2.xcconfig: Removed.
1520         * UIProcess/API/Cocoa/WebKit2.h: Removed.
1521         * WebKit2.xcodeproj/project.pbxproj:
1522         * mac/Info-WebKit2.plist: Removed.
1523         * mac/MigrateHeadersToWebKit2.make: Removed.
1524         * mac/WebKit2.m: Removed.
1525
1526 2015-12-01  Alex Christensen  <achristensen@webkit.org>
1527
1528         Use Optional for matrix inverses
1529         https://bugs.webkit.org/show_bug.cgi?id=151575
1530
1531         Reviewed by Myles C. Maxfield.
1532
1533         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
1534         (WebKit::NetscapePlugin::convertFromRootView):
1535         * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
1536         (WebKit::NetscapePlugin::convertPoint):
1537         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
1538         (WebKit::PDFPlugin::convertFromPDFViewToRootView):
1539         (WebKit::PDFPlugin::convertFromPDFViewToScreen):
1540         (WebKit::PDFPlugin::boundsOnScreen):
1541         (WebKit::PDFPlugin::geometryDidChange):
1542         * WebProcess/Plugins/PDF/PDFPlugin.mm:
1543         (WebKit::PDFPlugin::geometryDidChange):
1544
1545 2015-12-01  Tim Horton  <timothy_horton@apple.com>
1546
1547         Remove swipe snapshot before main document load if scroll position is already restored
1548         https://bugs.webkit.org/show_bug.cgi?id=151224
1549
1550         Reviewed by Darin Adler.
1551
1552         * UIProcess/Cocoa/WebViewImpl.h:
1553         * UIProcess/Cocoa/WebViewImpl.mm:
1554         (WebKit::WebViewImpl::didRestoreScrollPosition):
1555         * UIProcess/PageClient.h:
1556         * UIProcess/WebPageProxy.cpp:
1557         (WebKit::WebPageProxy::didRestoreScrollPosition):
1558         * UIProcess/WebPageProxy.h:
1559         * UIProcess/WebPageProxy.messages.in:
1560         * UIProcess/mac/PageClientImpl.h:
1561         * UIProcess/mac/PageClientImpl.mm:
1562         (WebKit::PageClientImpl::didRestoreScrollPosition):
1563         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1564         (WebKit::WebFrameLoaderClient::didRestoreScrollPosition):
1565         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1566         * WebProcess/WebPage/WebPage.cpp:
1567         (WebKit::WebPage::didRestoreScrollPosition):
1568         * WebProcess/WebPage/WebPage.h:
1569         Plumb didRestoreScrollPosition through to ViewGestureController (yikes!).
1570
1571         * UIProcess/ViewGestureController.cpp:
1572         (WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame):
1573         Cancel waiting for any more loads if we get to firstVisuallyNonEmptyLayout.
1574
1575         (WebKit::ViewGestureController::didReachMainFrameLoadTerminalState):
1576         Cancel waiting for scroll position restoration if we make it to main frame load,
1577         because there is a chance we won't be able to restore the old scroll position, and
1578         by main frame load time we've tried as hard as we're going to to restore it.
1579
1580         * UIProcess/mac/ViewGestureControllerMac.mm:
1581         (WebKit::ViewGestureController::endSwipeGesture):
1582         Make some legacy-style-only code clearer that it's legacy-style-only.
1583         Wait for scroll position restoration.
1584
1585 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1586
1587         REGRESSION(r192834): [GTK] Test /webkit2/WebKitWebView/editor-state/typing-attributes times out after r192834
1588         https://bugs.webkit.org/show_bug.cgi?id=151699
1589
1590         Reviewed by Tim Horton.
1591
1592         In r192834 the code to send EditorStateChanged message to the UI
1593         process from WebPage::didChangeSelection was removed for non-mac
1594         ports.
1595
1596         * WebProcess/WebPage/WebPage.cpp:
1597         (WebKit::WebPage::didChangeSelection): Send EditorStateChanged
1598         message to the UI process also for non-mac ports, as before r192834.
1599
1600 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1601
1602         Unreviewed. Fix timeouts in several HTTP layout tests in GTK+ after r192796.
1603
1604         In r192796, the initialization of m_ignoreTLSErrors in
1605         WebProcessPool was removed by mistake, making all HTTP tests that use
1606         HTTPS fail due to invalid certificate errors.
1607
1608         * UIProcess/WebProcessPool.h: Bring back m_ignoreTLSErrors initialization.
1609
1610 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1611
1612         REGRESSION(r192247): [GTK] ASSERTION FAILED: type == WebCore::ActionType || type == WebCore::CheckableActionType || type == WebCore::SeparatorType
1613         https://bugs.webkit.org/show_bug.cgi?id=151513
1614
1615         Reviewed by Martin Robinson.
1616
1617         This happens because we are using our own WebContextMenuItemGtk
1618         derived from WebContextMenuItemData, but using our own submenu
1619         items handling. We are using the non-submenu
1620         WebContextMenuItemData constructor to create our submenu items
1621         too, because WebContextMenuItemData always expect the submenu
1622         items to be passed to the constructor, but we have a set_submenu
1623         method in the public API. So we consider that a
1624         WebContextMenuItemGtk is SubmenuType if it has submenu items, but
1625         we use the action type internally. When converting a
1626         WebContextMenuItemGtk to a generic WebContextMenuItemData, we
1627         correctly set the type and pass the submenu items to the
1628         approriate constructor.
1629
1630         * Shared/gtk/WebContextMenuItemGtk.cpp:
1631         (WebKit::WebContextMenuItemGtk::WebContextMenuItemGtk): When
1632         constructing from a WebContextMenuItemData, set the type as
1633         ActionType when it's a submenu type.
1634         * Shared/gtk/WebContextMenuItemGtk.h:
1635         (WebKit::WebContextMenuItemGtk::type): Return SubmenuType if
1636         submenu items vector is not empty, otherwise use the parent method.
1637         * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
1638         (webkit_context_menu_item_new_with_submenu): Create the
1639         WebContextMenuItemGtk as ActionType.
1640
1641 2015-12-01  Carlos Garcia Campos  <cgarcia@igalia.com>
1642
1643         Unreviewed. Add missing inspector files to the GTK+ build.
1644
1645         * PlatformGTK.cmake: Add also Debug css files.
1646
1647 2015-11-30  Alexey Proskuryakov  <ap@apple.com>
1648
1649         Build fix for some compiler versions.
1650
1651         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Disable deprecation warnings while
1652         processing SOFT_LINK_CLASS too.
1653
1654 2015-11-30  Jiewen Tan  <jiewen_tan@apple.com>
1655
1656         Null dereference loading Blink layout test http/tests/misc/detach-during-notifyDone.html
1657         https://bugs.webkit.org/show_bug.cgi?id=149309
1658         <rdar://problem/22748363>
1659
1660         Reviewed by Brent Fulgham.
1661
1662         Callback of bundle clients could kill the documentloader. Therefore, make a copy
1663         of the navigationID before invoking the callback.
1664
1665         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1666         (WebKit::WebFrameLoaderClient::dispatchDidChangeLocationWithinPage):
1667         (WebKit::WebFrameLoaderClient::dispatchDidPushStateWithinPage):
1668         (WebKit::WebFrameLoaderClient::dispatchDidReplaceStateWithinPage):
1669         (WebKit::WebFrameLoaderClient::dispatchDidPopStateWithinPage):
1670         (WebKit::WebFrameLoaderClient::dispatchDidFailLoad):
1671         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
1672         (WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):
1673
1674 2015-11-30  Tim Horton  <timothy_horton@apple.com>
1675
1676         Get rid of the !USE(ASYNC_NSTEXTINPUTCLIENT) codepath
1677         https://bugs.webkit.org/show_bug.cgi?id=151673
1678
1679         Reviewed by Anders Carlsson.
1680
1681         * UIProcess/API/Cocoa/WKWebView.mm:
1682         * UIProcess/API/mac/WKView.mm:
1683         * UIProcess/Cocoa/WebViewImpl.h:
1684         * UIProcess/Cocoa/WebViewImpl.mm:
1685         (WebKit::WebViewImpl::resignFirstResponder): Deleted.
1686         (WebKit::WebViewImpl::interpretKeyEvent): Deleted.
1687         (WebKit::WebViewImpl::executeSavedKeypressCommands): Deleted.
1688         (WebKit::WebViewImpl::doCommandBySelector): Deleted.
1689         (WebKit::WebViewImpl::insertText): Deleted.
1690         (WebKit::WebViewImpl::inputContext): Deleted.
1691         (WebKit::WebViewImpl::selectedRange): Deleted.
1692         (WebKit::WebViewImpl::hasMarkedText): Deleted.
1693         (WebKit::WebViewImpl::unmarkText): Deleted.
1694         (WebKit::WebViewImpl::setMarkedText): Deleted.
1695         (WebKit::WebViewImpl::markedRange): Deleted.
1696         (WebKit::WebViewImpl::attributedSubstringForProposedRange): Deleted.
1697         (WebKit::WebViewImpl::characterIndexForPoint): Deleted.
1698         (WebKit::WebViewImpl::firstRectForCharacterRange): Deleted.
1699         (WebKit::WebViewImpl::performKeyEquivalent): Deleted.
1700         (WebKit::WebViewImpl::keyUp): Deleted.
1701         (WebKit::WebViewImpl::keyDown): Deleted.
1702         (WebKit::WebViewImpl::flagsChanged): Deleted.
1703         * UIProcess/PageClient.h:
1704         * UIProcess/WebPageProxy.cpp:
1705         (WebKit::WebPageProxy::WebPageProxy): Deleted.
1706         (WebKit::WebPageProxy::resetStateAfterProcessExited): Deleted.
1707         * UIProcess/WebPageProxy.h:
1708         * UIProcess/mac/PageClientImpl.h:
1709         * UIProcess/mac/PageClientImpl.mm:
1710         (WebKit::PageClientImpl::notifyApplicationAboutInputContextChange): Deleted.
1711         * UIProcess/mac/WebPageProxyMac.mm:
1712         (WebKit::WebPageProxy::setComposition): Deleted.
1713         (WebKit::WebPageProxy::confirmComposition): Deleted.
1714         (WebKit::WebPageProxy::insertText): Deleted.
1715         (WebKit::WebPageProxy::insertDictatedText): Deleted.
1716         (WebKit::WebPageProxy::getMarkedRange): Deleted.
1717         (WebKit::WebPageProxy::getSelectedRange): Deleted.
1718         (WebKit::WebPageProxy::getAttributedSubstringFromRange): Deleted.
1719         (WebKit::WebPageProxy::characterIndexForPoint): Deleted.
1720         (WebKit::WebPageProxy::firstRectForCharacterRange): Deleted.
1721         (WebKit::WebPageProxy::executeKeypressCommands): Deleted.
1722         (WebKit::WebPageProxy::cancelComposition): Deleted.
1723         (WebKit::WebPageProxy::editorStateChanged): Deleted.
1724         * WebProcess/WebPage/WebPage.cpp:
1725         (WebKit::WebPage::didChangeSelection):
1726         * WebProcess/WebPage/WebPage.h:
1727         * WebProcess/WebPage/WebPage.messages.in:
1728         * WebProcess/WebPage/mac/WebPageMac.mm:
1729         (WebKit::WebPage::setComposition): Deleted.
1730         (WebKit::WebPage::confirmComposition): Deleted.
1731         (WebKit::WebPage::insertText): Deleted.
1732         (WebKit::WebPage::insertDictatedText): Deleted.
1733         (WebKit::WebPage::getMarkedRange): Deleted.
1734         (WebKit::WebPage::getSelectedRange): Deleted.
1735         (WebKit::WebPage::getAttributedSubstringFromRange): Deleted.
1736         (WebKit::WebPage::characterIndexForPoint): Deleted.
1737         (WebKit::WebPage::firstRectForCharacterRange): Deleted.
1738         (WebKit::WebPage::executeKeypressCommands): Deleted.
1739         (WebKit::WebPage::cancelComposition): Deleted.
1740
1741 2015-11-30  Tim Horton  <timothy_horton@apple.com>
1742
1743         Remove some unused synchronous drawing SPI
1744         https://bugs.webkit.org/show_bug.cgi?id=151672
1745
1746         Reviewed by Anders Carlsson.
1747
1748         * UIProcess/API/Cocoa/WKViewPrivate.h:
1749         * UIProcess/API/mac/WKView.mm:
1750         (-[WKView forceAsyncDrawingAreaSizeUpdate:]): Deleted.
1751         (-[WKView waitForAsyncDrawingAreaSizeUpdate]): Deleted.
1752         * UIProcess/Cocoa/WebViewImpl.h:
1753         * UIProcess/Cocoa/WebViewImpl.mm:
1754         (WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate): Deleted.
1755         (WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate): Deleted.
1756
1757 2015-11-30  Tim Horton  <timothy_horton@apple.com>
1758
1759         Get rid of the legacy swipe shadow style
1760         https://bugs.webkit.org/show_bug.cgi?id=151671
1761
1762         Reviewed by Anders Carlsson.
1763
1764         * UIProcess/mac/ViewGestureControllerMac.mm:
1765         (WebKit::ViewGestureController::beginSwipeGesture): Deleted.
1766         (WebKit::ViewGestureController::handleSwipeGesture): Deleted.
1767         (WebKit::ViewGestureController::removeSwipeSnapshot): Deleted.
1768         It is no longer needed.
1769
1770 2015-11-30  Tim Horton  <timothy_horton@apple.com>
1771
1772         [iOS] Option-up and Option-down should scroll a little less than a full page
1773         https://bugs.webkit.org/show_bug.cgi?id=151538
1774         <rdar://problem/23642675>
1775
1776         Reviewed by Simon Fraser.
1777
1778         * UIProcess/ios/WKContentViewInteraction.mm:
1779         (-[WKContentView _scrollOffsetForEvent:]):
1780         (-[WKContentView _interpretKeyEvent:isCharEvent:]):
1781         Clean up the code a little, and adjust so that we *always* use pageStep
1782         instead of just scrolling by the unobscured rect when scrolling by a page.
1783         Previously, we did for the spacebar, but not for option-up and option-down.
1784
1785 2015-11-30  Brian Burg  <bburg@apple.com>
1786
1787         Web Inspector: using "Reload Web Inspector" when docked breaks dock-specific styles
1788         https://bugs.webkit.org/show_bug.cgi?id=151642
1789
1790         Reviewed by Timothy Hatcher.
1791
1792         After a frontend loads, explicitly tell it about the current dock
1793         state. This is necessary for force-reloading the inspector, since
1794         the dock state isn't sent from UIProcess in this case.
1795
1796         * WebProcess/WebPage/WebInspectorUI.cpp:
1797         (WebKit::WebInspectorUI::frontendLoaded):
1798         (WebKit::WebInspectorUI::setDockingUnavailable):
1799         * WebProcess/WebPage/WebInspectorUI.h:
1800
1801 2015-11-30  Alex Christensen  <achristensen@webkit.org>
1802
1803         Make ProcessModel always MultipleSecondaryProcesses
1804         https://bugs.webkit.org/show_bug.cgi?id=151662
1805
1806         Reviewed by Antti Koivisto.
1807
1808         Single WebProcess behavior can still be achieved by setting the maximum number of WebProcesses to 1.
1809
1810         * Shared/API/c/WKDeprecatedFunctions.cpp:
1811         (WKContextSetUsesNetworkProcess):
1812         (WKContextSetProcessModel):
1813         (WKContextGetProcessModel):
1814         (WKGraphicsContextGetCGContext):
1815         * UIProcess/API/APIProcessPoolConfiguration.cpp:
1816         (API::ProcessPoolConfiguration::createWithLegacyOptions):
1817         (API::ProcessPoolConfiguration::copy):
1818         * UIProcess/API/APIProcessPoolConfiguration.h:
1819         * UIProcess/API/C/WKAPICast.h:
1820         (WebKit::toAPI):
1821         (WebKit::toFontSmoothingLevel):
1822         (WebKit::toProcessModel): Deleted.
1823         * UIProcess/API/C/WKContext.cpp:
1824         (WKContextGetCacheModel):
1825         (WKContextSetMaximumNumberOfProcesses):
1826         (WKContextSetProcessModel): Deleted.
1827         (WKContextGetProcessModel): Deleted.
1828         * UIProcess/API/C/WKContext.h:
1829         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1830         (-[WKProcessGroup initWithInjectedBundleURL:]):
1831         * UIProcess/API/Cocoa/WKProcessPool.mm:
1832         * UIProcess/API/efl/ewk_context.cpp:
1833         (EwkContext::cacheModel):
1834         (EwkContext::setProcessModel):
1835         (EwkContext::processModel):
1836         (EwkContext::clearResourceCache):
1837         (EwkContext::jsGlobalContext):
1838         (ewk_context_message_from_extensions_callback_set):
1839         (ewk_context_process_model_set):
1840         (ewk_context_process_model_get):
1841         (ewk_context_tls_error_policy_get):
1842         (toWKProcessModel): Deleted.
1843         (toEwkProcessModel): Deleted.
1844         * UIProcess/API/gtk/WebKitWebContext.cpp:
1845         * UIProcess/ProcessModel.h: Removed.
1846         * UIProcess/WebCookieManagerProxy.cpp:
1847         (WebKit::WebCookieManagerProxy::shouldTerminate):
1848         (WebKit::WebCookieManagerProxy::refWebContextSupplement):
1849         * UIProcess/WebInspectorProxy.cpp:
1850         (WebKit::WebInspectorProxy::inspectorProcessPool):
1851         * UIProcess/WebPageProxy.cpp:
1852         (WebKit::WebPageProxy::reattachToWebProcess):
1853         * UIProcess/WebProcessPool.cpp:
1854         (WebKit::WebProcessPool::create):
1855         (WebKit::WebProcessPool::setDownloadClient):
1856         (WebKit::WebProcessPool::setMaximumNumberOfProcesses):
1857         (WebKit::WebProcessPool::processDidCachePage):
1858         (WebKit::WebProcessPool::createNewWebProcess):
1859         (WebKit::WebProcessPool::disconnectProcess):
1860         (WebKit::WebProcessPool::createWebPage):
1861         (WebKit::WebProcessPool::postMessageToInjectedBundle):
1862         (WebKit::WebProcessPool::requestWebContentStatistics):
1863         (WebKit::WebProcessPool::requestNetworkingStatistics):
1864         (WebKit::WebProcessPool::setProcessModel): Deleted.
1865         (WebKit::WebProcessPool::ensureSharedWebProcess): Deleted.
1866         * UIProcess/WebProcessPool.h:
1867         (WebKit::WebProcessPool::sendToAllProcessesRelaunchingThemIfNecessary):
1868         (WebKit::WebProcessPool::sendToOneProcess):
1869         * WebKit2.xcodeproj/project.pbxproj:
1870
1871 2015-11-30  Chris Dumez  <cdumez@apple.com>
1872
1873         [WK2][Cache] We should not speculatively revalidate transient resources
1874         https://bugs.webkit.org/show_bug.cgi?id=151402
1875         <rdar://problem/23092196>
1876
1877         Reviewed by Antti Koivisto.
1878
1879         We should not speculatively revalidate transient resources. This patch
1880         adds a simple and conservative algorithm to detect that a subresource is
1881         transient and then ignores those when doing the speculative revalidation.
1882
1883         The algorithm is question marks as transient all subresources that are
1884         not common to the 2 last loads of a main resource.
1885
1886         This is not perfect as I see the number of non-speculative revalidations
1887         going up to 11-12 from 9 in the context of the warm PLT. However, it is
1888         best to be conservative at first and we can improve this later.
1889
1890         * NetworkProcess/cache/NetworkCache.cpp:
1891         (WebKit::NetworkCache::Cache::retrieve):
1892         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.cpp:
1893         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::create):
1894         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::~PendingFrameLoad):
1895         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::registerSubresource):
1896         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::markLoadAsCompleted):
1897         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::setExistingSubresourcesEntry):
1898         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::PendingFrameLoad):
1899         (WebKit::NetworkCache::SpeculativeLoadManager::PendingFrameLoad::saveToDiskIfReady):
1900         (WebKit::NetworkCache::SpeculativeLoadManager::registerLoad):
1901         (WebKit::NetworkCache::SpeculativeLoadManager::startSpeculativeRevalidation):
1902         (WebKit::NetworkCache::SpeculativeLoadManager::retrieveSubresourcesEntry):
1903         (WebKit::NetworkCache::SpeculativeLoadManager::retrieve): Deleted.
1904         (WebKit::NetworkCache::SpeculativeLoadManager::revalidateEntry): Deleted.
1905         * NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h:
1906         * NetworkProcess/cache/NetworkCacheSubresourcesEntry.cpp:
1907         (WebKit::NetworkCache::SubresourcesEntry::encodeAsStorageRecord):
1908         (WebKit::NetworkCache::SubresourcesEntry::decodeStorageRecord):
1909         (WebKit::NetworkCache::SubresourcesEntry::SubresourcesEntry):
1910         (WebKit::NetworkCache::SubresourcesEntry::updateSubresourceKeys):
1911         * NetworkProcess/cache/NetworkCacheSubresourcesEntry.h:
1912         (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::encode):
1913         (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::decode):
1914         (WebKit::NetworkCache::SubresourcesEntry::SubresourceInfo::SubresourceInfo):
1915         (WebKit::NetworkCache::SubresourcesEntry::subresources):
1916
1917 2015-11-30  Brent Fulgham  <bfulgham@apple.com>
1918
1919         [Mac] Add font service permission to the sandbox profile
1920         https://bugs.webkit.org/show_bug.cgi?id=151509
1921         <rdar://problem/23508753>
1922
1923         Reviewed by Anders Carlsson.
1924
1925         Update the sandbox profile for Mac WebKit to allow access to the
1926         "com.apple.fonts" service.
1927
1928         * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
1929         * WebProcess/com.apple.WebProcess.sb.in:
1930
1931 2015-11-30  Alex Christensen  <achristensen@webkit.org>
1932
1933         Make usesNetworkProcess always true
1934         https://bugs.webkit.org/show_bug.cgi?id=151580
1935
1936         Reviewed by Darin Adler.
1937
1938         * NetworkProcess/mac/RemoteNetworkingContext.mm:
1939         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
1940         * Shared/API/c/WKDeprecatedFunctions.cpp:
1941         (WKInspectorToggleJavaScriptProfiling):
1942         (WKContextSetUsesNetworkProcess):
1943         (WKGraphicsContextGetCGContext):
1944         * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm:
1945         (WebKit::CustomProtocolManager::initializeConnection):
1946         (WebKit::CustomProtocolManager::initialize):
1947         * Shared/Network/CustomProtocols/CustomProtocolManager.h:
1948         * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp:
1949         (WebKit::CustomProtocolManager::initialize):
1950         * Shared/WebProcessCreationParameters.cpp:
1951         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
1952         (WebKit::WebProcessCreationParameters::encode):
1953         (WebKit::WebProcessCreationParameters::decode):
1954         * Shared/WebProcessCreationParameters.h:
1955         * UIProcess/API/APIProcessPoolConfiguration.cpp:
1956         (API::ProcessPoolConfiguration::createWithLegacyOptions):
1957         (API::ProcessPoolConfiguration::copy):
1958         * UIProcess/API/APIProcessPoolConfiguration.h:
1959         * UIProcess/API/C/WKContext.cpp:
1960         (WKContextSetJavaScriptGarbageCollectorTimerEnabled):
1961         (WKContextUseTestingNetworkSession):
1962         (WKContextSetUsesNetworkProcess): Deleted.
1963         * UIProcess/API/C/WKContextPrivate.h:
1964         * UIProcess/API/Cocoa/WKProcessGroup.mm:
1965         (-[WKProcessGroup initWithInjectedBundleURL:]):
1966         * UIProcess/API/efl/ewk_context.cpp:
1967         (EwkContext::setProcessModel):
1968         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
1969         (WebKit::WebProcessPool::updateProcessSuppressionState):
1970         (WebKit::WebProcessPool::platformInitializeWebProcess):
1971         * UIProcess/Downloads/DownloadProxy.cpp:
1972         (WebKit::DownloadProxy::cancel):
1973         (WebKit::DownloadProxy::invalidate):
1974         * UIProcess/WebCookieManagerProxy.cpp:
1975         (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy):
1976         (WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
1977         * UIProcess/WebProcessPool.cpp:
1978         (WebKit::WebProcessPool::WebProcessPool):
1979         (WebKit::m_processSuppressionDisabledForPageCounter):
1980         (WebKit::WebProcessPool::networkingProcessConnection):
1981         (WebKit::WebProcessPool::languageChanged):
1982         (WebKit::WebProcessPool::textCheckerStateChanged):
1983         (WebKit::WebProcessPool::ensureNetworkProcess):
1984         (WebKit::WebProcessPool::setAnyPageGroupMightHavePrivateBrowsingEnabled):
1985         (WebKit::WebProcessPool::createNewWebProcess):
1986         (WebKit::WebProcessPool::download):
1987         (WebKit::WebProcessPool::resumeDownload):
1988         (WebKit::WebProcessPool::setCanHandleHTTPSServerTrustEvaluation):
1989         (WebKit::WebProcessPool::setCacheModel):
1990         (WebKit::WebProcessPool::createDownloadProxy):
1991         (WebKit::WebProcessPool::addMessageReceiver):
1992         (WebKit::WebProcessPool::allowSpecificHTTPSCertificateForHost):
1993         (WebKit::WebProcessPool::setHTTPPipeliningEnabled):
1994         (WebKit::WebProcessPool::requestNetworkingStatistics):
1995         (WebKit::WebProcessPool::setUsesNetworkProcess): Deleted.
1996         (WebKit::WebProcessPool::usesNetworkProcess): Deleted.
1997         * UIProcess/WebProcessPool.h:
1998         (WebKit::WebProcessPool::sendToNetworkingProcess):
1999         (WebKit::WebProcessPool::sendToNetworkingProcessRelaunchingIfNecessary):
2000         * UIProcess/WebProcessProxy.cpp:
2001         (WebKit::WebProcessProxy::shutDown):
2002         (WebKit::WebProcessProxy::removeWebPage):
2003         (WebKit::WebProcessProxy::canTerminateChildProcess):
2004         (WebKit::WebProcessProxy::updateTextCheckerState):
2005         (WebKit::WebProcessProxy::didSaveToPageCache):
2006         (WebKit::WebProcessProxy::didSetAssertionState):
2007         (WebKit::WebProcessProxy::createDownloadProxy): Deleted.
2008         * UIProcess/WebProcessProxy.h:
2009         * UIProcess/efl/WebProcessPoolEfl.cpp:
2010         (WebKit::WebProcessPool::platformInitializeWebProcess):
2011         (WebKit::WebProcessPool::setIgnoreTLSErrors):
2012         * WebProcess/FileAPI/BlobRegistryProxy.cpp:
2013         (WebKit::BlobRegistryProxy::registerFileBlobURL):
2014         (WebKit::BlobRegistryProxy::registerBlobURL):
2015         (WebKit::BlobRegistryProxy::unregisterBlobURL):
2016         (WebKit::BlobRegistryProxy::registerBlobURLForSlice):
2017         (WebKit::BlobRegistryProxy::blobSize):
2018         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2019         (WebKit::WebPlatformStrategies::cookiesForDOM):
2020         (WebKit::WebPlatformStrategies::setCookiesFromDOM):
2021         (WebKit::WebPlatformStrategies::cookiesEnabled):
2022         (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
2023         (WebKit::WebPlatformStrategies::getRawCookies):
2024         (WebKit::WebPlatformStrategies::deleteCookie):
2025         (WebKit::WebPlatformStrategies::resourceLoadScheduler):
2026         (WebKit::WebPlatformStrategies::loadResourceSynchronously):
2027         (WebKit::WebPlatformStrategies::createPingHandle):
2028         (WebKit::WebPlatformStrategies::createBlobRegistry):
2029         * WebProcess/WebPage/WebFrame.cpp:
2030         (WebKit::WebFrame::startDownload):
2031         (WebKit::WebFrame::convertMainResourceLoadToDownload):
2032         (WebKit::WebFrame::source):
2033         * WebProcess/WebProcess.cpp:
2034         (WebKit::WebProcess::WebProcess):
2035         (WebKit::m_webSQLiteDatabaseTracker):
2036         (WebKit::WebProcess::initializeConnection):
2037         (WebKit::WebProcess::initializeWebProcess):
2038         (WebKit::WebProcess::ensureNetworkProcessConnection):
2039         (WebKit::WebProcess::destroyPrivateBrowsingSession):
2040         (WebKit::WebProcess::pluginProcessConnectionManager):
2041         (WebKit::WebProcess::shouldTerminate):
2042         (WebKit::WebProcess::setInjectedBundleParameters):
2043         (WebKit::WebProcess::networkConnection):
2044         (WebKit::WebProcess::setEnhancedAccessibility):
2045         (WebKit::WebProcess::prefetchDNS):
2046         (WebKit::WebProcess::didCreateDownload): Deleted.
2047         (WebKit::WebProcess::didDestroyDownload): Deleted.
2048         (WebKit::WebProcess::downloadProxyConnection): Deleted.
2049         (WebKit::WebProcess::downloadsAuthenticationManager): Deleted.
2050         (WebKit::WebProcess::downloadManager): Deleted.
2051         (WebKit::WebProcess::usesNetworkProcess): Deleted.
2052         (WebKit::WebProcess::downloadRequest): Deleted.
2053         (WebKit::WebProcess::resumeDownload): Deleted.
2054         (WebKit::WebProcess::cancelDownload): Deleted.
2055         * WebProcess/WebProcess.h:
2056         (WebKit::WebProcess::textCheckerState):
2057         (WebKit::WebProcess::eventDispatcher):
2058         * WebProcess/WebProcess.messages.in:
2059         * WebProcess/soup/WebProcessSoup.cpp:
2060         (WebKit::WebProcess::platformSetCacheModel):
2061         (WebKit::WebProcess::platformClearResourceCaches):
2062         (WebKit::WebProcess::platformInitializeWebProcess):
2063         (WebKit::WebProcess::platformTerminate):
2064         (WebKit::getCacheDiskFreeSize): Deleted.
2065         (WebKit::setSoupSessionAcceptLanguage): Deleted.
2066         (WebKit::languageChanged): Deleted.
2067         (WebKit::WebProcess::setIgnoreTLSErrors): Deleted.
2068         (WebKit::WebProcess::allowSpecificHTTPSCertificateForHost): Deleted.
2069
2070 2015-11-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2071
2072         [GTK] UI process crash when the screensaver DBus proxy is being created while the web view is destroyed
2073         https://bugs.webkit.org/show_bug.cgi?id=151653
2074
2075         Reviewed by Martin Robinson.
2076
2077         We correctly cancel the proxy creation, but when the async ready
2078         callback is called, the view could be destroyed already. In that
2079         case g_dbus_proxy_new_for_bus_finish() will return nullptr and
2080         fail with cancelled error, but we are using the passed web view
2081         without checking first if the creation failed or not.
2082
2083         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2084         (screenSaverProxyCreatedCallback):
2085
2086 2015-11-28  Tim Horton  <timothy_horton@apple.com>
2087
2088         Stop unnecessarily copying WKWebViewConfiguration in a few places
2089         https://bugs.webkit.org/show_bug.cgi?id=151639
2090
2091         Reviewed by Dan Bernstein.
2092
2093         * UIProcess/API/Cocoa/WKWebView.mm:
2094         (-[WKWebView initWithFrame:configuration:]):
2095         (-[WKWebView dealloc]):
2096         (-[WKWebView _contentProviderRegistry]):
2097         (-[WKWebView _selectionGranularity]):
2098         (-[WKWebView _setHasCustomContentView:loadedMIMEType:]):
2099         * UIProcess/API/Cocoa/WKWebViewInternal.h:
2100         * UIProcess/ios/PageClientImplIOS.mm:
2101         (WebKit::PageClientImpl::mimeTypesWithCustomContentProviders):
2102         * UIProcess/ios/WKContentViewInteraction.mm:
2103         (-[WKContentView setupInteraction]):
2104         (-[WKContentView _stopAssistingKeyboard]):
2105         Looking at allocation traces I noticed that we were making way more
2106         WKWebViewConfigurations than made sense; looking at backtraces I found
2107         a few internal callers of -[WKWebView configuration], which copies the
2108         configuration. There's no reason for these internal callers to make 
2109         such a copy, though.
2110
2111         I'm not exactly sure what the usual approach is here, but I added
2112         getters so WKContentViewInteraction and PageClientImplIOS can get to
2113         the values they're looking for without using the configuration property.
2114
2115 2015-11-27  Brady Eidson  <beidson@apple.com>
2116
2117         Modern IDB: Class-ify IDBGetResult making it impossible to get the data members wrong.
2118         https://bugs.webkit.org/show_bug.cgi?id=151627
2119
2120         Reviewed by Alexey Proskuryakov.
2121
2122         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2123         (WebKit::UniqueIDBDatabase::getRecordFromBackingStore):
2124         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
2125         
2126         * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
2127         
2128         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2129         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord):
2130         
2131         * Shared/WebCoreArgumentCoders.cpp:
2132         (IPC::ArgumentCoder<IDBGetResult>::encode):
2133         (IPC::ArgumentCoder<IDBGetResult>::decode):
2134         * Shared/WebCoreArgumentCoders.h:
2135         
2136         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
2137
2138 2015-11-27  Carlos Garcia Campos  <cgarcia@igalia.com>
2139
2140         [GTK] Remove the remaining uses of GMainLoopSource
2141         https://bugs.webkit.org/show_bug.cgi?id=151632
2142
2143         Reviewed by Žan Doberšek.
2144
2145         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2146         (_WebKitWebViewBasePrivate::_WebKitWebViewBasePrivate):
2147         (_WebKitWebViewBasePrivate::clearRedirectedWindowSoonTimerFired):
2148         (webkitWebViewBaseClearRedirectedWindowSoon):
2149         (webkitWebViewBaseEnterAcceleratedCompositingMode):
2150
2151 2015-11-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2152
2153         [GTK] Use the network process unconditionally
2154         https://bugs.webkit.org/show_bug.cgi?id=151541
2155
2156         Reviewed by Alex Christensen.
2157
2158         Make the shared secondary process model become multiple secondary
2159         process model with a limit of 1 web process. Use the same options
2160         when creating a context with legacy configuration (unit tests and
2161         inspector proxy).
2162
2163         * NetworkProcess/gtk/NetworkProcessMainGtk.cpp:
2164         * UIProcess/API/APIProcessPoolConfiguration.cpp:
2165         (API::ProcessPoolConfiguration::createWithLegacyOptions):
2166         * UIProcess/API/gtk/WebKitWebContext.cpp:
2167         (webkitWebContextConstructed):
2168         (webkit_web_context_set_process_model):
2169         (webkit_web_context_get_process_model):
2170         (webkit_web_context_set_web_process_count_limit):
2171         (webkit_web_context_get_web_process_count_limit):
2172         (toWebKitProcessModel): Deleted.
2173         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
2174         * UIProcess/gtk/WebProcessPoolGtk.cpp:
2175         (WebKit::WebProcessPool::setIgnoreTLSErrors):
2176         (WebKit::WebProcessPool::platformInitializeWebProcess):
2177
2178 2015-11-23  Brian Burg  <bburg@apple.com>
2179
2180         Web Inspector: inspector settings should not be shared between different inspection levels
2181         https://bugs.webkit.org/show_bug.cgi?id=151151
2182
2183         Reviewed by Timothy Hatcher.
2184
2185         In WebKit2, we already track the inspection level of WebPages in order to give inspectors
2186         different page groups. Send the inspection level to WebInspectorUI WebProcess when
2187         establishing a connection from the UIProcess. Use this number in the FrontendClient.
2188
2189         * UIProcess/WebInspectorProxy.cpp:
2190         (WebKit::WebInspectorProxy::inspectionLevel): Renamed from inspectorLevel to be consistent.
2191         (WebKit::WebInspectorProxy::inspectorPageGroupIdentifier):
2192         (WebKit::WebInspectorProxy::didRelaunchInspectorPageProcess):
2193         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
2194         (WebKit::WebInspectorProxy::createInspectorPage):
2195         (WebKit::WebInspectorProxy::inspectorLevel): Deleted.
2196         * UIProcess/WebInspectorProxy.h:
2197         * UIProcess/mac/WebInspectorProxyMac.mm:
2198         (WebKit::WebInspectorProxy::updateInspectorWindowTitle):
2199         * WebProcess/WebPage/WebInspectorUI.cpp:
2200         (WebKit::WebInspectorUI::establishConnection):
2201         * WebProcess/WebPage/WebInspectorUI.h:
2202         * WebProcess/WebPage/WebInspectorUI.messages.in:
2203
2204 2015-11-23  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2205
2206         REGRESSION(r188206): [EFL] Missing to adjust scrollbar size to ewk_view_contents_size_get API test
2207         https://bugs.webkit.org/show_bug.cgi?id=148735
2208
2209         Reviewed by Csaba Osztrogonác.
2210
2211         r189256 missed to adjust scrollbar size to other tests in ewk_view_contents_size_get() API test.
2212         In this case we need to apply scrollbar size to both width and height unlike previous fix. Because
2213         horizontal scrollbar is also shown since device pixel ratio(= 2.0) is adjusted.
2214
2215         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2216         (TEST_F):
2217
2218 2015-11-23  Alex Christensen  <achristensen@webkit.org>
2219
2220         Fix crash in ~WebProcessPool when using Geolocation with useNetworkProcess=true
2221         https://bugs.webkit.org/show_bug.cgi?id=151532
2222
2223         Reviewed by Benjamin Poulain.
2224
2225         * UIProcess/WebGeolocationManagerProxy.cpp:
2226         (WebKit::WebGeolocationManagerProxy::processPoolDestroyed):
2227         (WebKit::WebGeolocationManagerProxy::processDidClose):
2228         When a WebProcessPool is destroyed, only call stopUpdating if m_updateRequesters.clear()
2229         stopped the updating, like we do in WebGeolocationManagerProxy::removeRequester.
2230         Otherwise, call setEnableHighAccuracy if needed, also like we do in WebGeolocationManagerProxy::removeRequester.
2231
2232 2015-11-23  Brian Burg  <bburg@apple.com>
2233
2234         Web Inspector: when inspecting the inspector, add the inspection level to the title bar
2235         https://bugs.webkit.org/show_bug.cgi?id=151555
2236
2237         Reviewed by Timothy Hatcher.
2238
2239         If the inspection level says we are inspecting an inspector, include the level
2240         in the title bar to easily disambiguate it from the base level inspector.
2241
2242         * UIProcess/mac/WebInspectorProxyMac.mm:
2243         (WebKit::WebInspectorProxy::updateInspectorWindowTitle):
2244
2245 2015-11-23  Csaba Osztrogonác  <ossy@webkit.org>
2246
2247         Unreviewed speculative buildfix after r192701.
2248
2249         * PlatformMac.cmake:
2250
2251 2015-11-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2252
2253         Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.2 release.
2254
2255         * gtk/NEWS: Add release notes for 2.11.2.
2256
2257 2015-11-22  Carlos Garcia Campos  <cgarcia@igalia.com>
2258
2259         Unreviewed. Add missing inspector file to GTK+ compilation.
2260
2261         * PlatformGTK.cmake:
2262
2263 == Rolled over to ChangeLog-2015-11-21 ==