One esc to exit fullscreen and pointer lock
[WebKit-https.git] / Source / WebKit2 / ChangeLog-2014-02-20
1 2014-02-20  Beth Dakin  <bdakin@apple.com>
2
3         WKPage's setBackgroundExtendsBeyondPage API should be exposed through WKView and 
4         WKWebView
5         https://bugs.webkit.org/show_bug.cgi?id=129120
6
7         Reviewed by Anders Carlsson.
8
9         While we’re in this code, fix up the pageExtendedBackgroundColor to match.
10         * UIProcess/API/Cocoa/WKViewPrivate.h:
11         * UIProcess/API/Cocoa/WKWebView.mm:
12         (-[WKWebView _pageExtendedBackgroundColor]):
13         (-[WKWebView _setBackgroundExtendsBeyondPage:]):
14         (-[WKWebView _backgroundExtendsBeyondPage]):
15         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
16         * UIProcess/API/ios/WKViewIOS.mm:
17         (-[WKView _pageExtendedBackgroundColor]):
18         (-[WKView _setBackgroundExtendsBeyondPage:]):
19         (-[WKView _backgroundExtendsBeyondPage]):
20
21 2014-02-20  Dean Jackson  <dino@apple.com>
22
23         Add an unresolved WebGLPolicy and an API to resolve it
24         https://bugs.webkit.org/show_bug.cgi?id=129109
25
26         Reviewed by Anders Carlsson.
27
28         Add a third WebGLLoadPolicy which is "pending" allowing the page
29         to go ahead with creating the WebGLRenderingContext and resolve the policy
30         at a later time. Add a new API resolveWebGLLoadPolicy to do the resolution.
31
32         * UIProcess/API/APILoaderClient.h:
33         (API::LoaderClient::webGLLoadPolicy): New return value.
34         (API::LoaderClient::resolveWebGLLoadPolicy): New method definition.
35         * UIProcess/API/C/WKAPICast.h:
36         (WebKit::toWebGLLoadPolicy): Change names of return types.
37         * UIProcess/API/C/WKPage.cpp:
38         (WKPageSetPageLoaderClient): New stubs.
39         * UIProcess/API/C/WKPageLoaderClient.h: New policy type kWKWebGLLoadPolicyPending.
40         * UIProcess/WebPageProxy.cpp:
41         (WebKit::WebPageProxy::resolveWebGLPolicyForURL): New method.
42         * UIProcess/WebPageProxy.h:
43         * UIProcess/WebPageProxy.messages.in: New message.
44         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
45         (WebKit::WebFrameLoaderClient::webGLPolicyForURL):
46         (WebKit::WebFrameLoaderClient::resolveWebGLPolicyForURL):
47         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
48         * WebProcess/WebPage/WebPage.cpp:
49         (WebKit::WebPage::webGLPolicyForURL):
50         (WebKit::WebPage::resolveWebGLPolicyForURL):
51         * WebProcess/WebPage/WebPage.h:
52
53 2014-02-20  Anders Carlsson  <andersca@apple.com>
54
55         Make it possible to reply asynchronously to JavaScript panels and alerts
56         https://bugs.webkit.org/show_bug.cgi?id=129116
57
58         Reviewed by Dan Bernstein.
59
60         * Scripts/webkit2/LegacyMessageReceiver-expected.cpp:
61         (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send):
62         (Messages::WebPage::TestMultipleAttributes::DelayedReply::send):
63         * Scripts/webkit2/MessageReceiver-expected.cpp:
64         (Messages::WebPage::GetPluginProcessConnection::DelayedReply::send):
65         (Messages::WebPage::TestMultipleAttributes::DelayedReply::send):
66         * Scripts/webkit2/messages.py:
67         (generate_message_handler):
68         * UIProcess/API/APIUIClient.h:
69         (API::UIClient::runJavaScriptAlert):
70         (API::UIClient::runJavaScriptConfirm):
71         (API::UIClient::runJavaScriptPrompt):
72         * UIProcess/API/C/WKPage.cpp:
73         (WKPageSetPageUIClient):
74         * UIProcess/WebPageProxy.cpp:
75         (WebKit::WebPageProxy::runJavaScriptAlert):
76         (WebKit::WebPageProxy::runJavaScriptConfirm):
77         (WebKit::WebPageProxy::runJavaScriptPrompt):
78         * UIProcess/WebPageProxy.h:
79         * UIProcess/WebPageProxy.messages.in:
80
81 2014-02-20  Enrique Ocaña González  <eocanha@igalia.com>
82
83         WebKitGTK+ should stop using COMPILE_ASSERT_MATCHING_ENUM macros
84         https://bugs.webkit.org/show_bug.cgi?id=127800
85
86         Reviewed by Martin Robinson.
87
88         * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp: Defined and applied type conversions.
89         (webkit_authentication_request_get_scheme):
90         * UIProcess/API/gtk/WebKitCookieManager.cpp: Defined and applied type conversions.
91         (toWebKitCookieAcceptPolicy):
92         (toHTTPCookieAcceptPolicy):
93         (webkit_cookie_manager_set_persistent_storage):
94         (webkit_cookie_manager_set_accept_policy):
95         (webkitCookieManagerGetAcceptPolicyCallback):
96         * UIProcess/API/gtk/WebKitCredential.cpp: Defined and applied type conversions.
97         (toWebKitCredentialPersistence):
98         (toWebCoreCredentialPersistence):
99         (webkit_credential_new):
100         (webkit_credential_get_persistence):
101         * UIProcess/API/gtk/WebKitDownload.cpp: Defined and applied type conversions.
102         (webkitDownloadFailed):
103         * UIProcess/API/gtk/WebKitError.cpp: Defined and applied type conversions.
104         * UIProcess/API/gtk/WebKitFindController.cpp: Defined and applied type conversions.
105         (toWebKitFindOptions):
106         (webKitFindControllerPerform):
107         (webkit_find_controller_search_next):
108         (webkit_find_controller_search_previous):
109         * UIProcess/API/gtk/WebKitFindController.h: Added new private fields to the enum, needed to match conversions.
110         * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp: Defined and applied type conversions.
111         (didReceiveWebViewMessageFromInjectedBundle):
112         * UIProcess/API/gtk/WebKitLoaderClient.cpp: Defined and applied type conversions.
113         (didFailProvisionalLoadWithErrorForFrame):
114         (didFailLoadWithErrorForFrame):
115         * UIProcess/API/gtk/WebKitNavigationPolicyDecision.cpp: Defined and applied type conversions.
116         * UIProcess/API/gtk/WebKitPolicyClient.cpp: Defined and applied type conversions.
117         (toWebKitNavigationType):
118         (decidePolicyForNavigationAction):
119         (decidePolicyForNewWindowAction):
120         * UIProcess/API/gtk/WebKitPrintOperation.cpp: Defined and applied type conversions.
121         (drawPagesForPrintingCompleted):
122         * UIProcess/API/gtk/WebKitPrivate.cpp: Defined and applied type conversions.
123         (toWebKitError):
124         (toWebCoreError):
125         * UIProcess/API/gtk/WebKitPrivate.h: Defined and applied type conversions.
126         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp: Defined and applied type conversions.
127         (webkit_uri_scheme_request_finish_error):
128         * UIProcess/API/gtk/WebKitWebContext.cpp: Defined and applied type conversions.
129         (toWebKitProcessModel):
130         (webkit_web_context_set_process_model):
131         (webkit_web_context_get_process_model):
132         * UIProcess/API/gtk/WebKitWebView.cpp: Defined and applied type conversions.
133         (toSnapshotRegion):
134         (webkit_web_view_get_snapshot):
135         * UIProcess/API/gtk/WebKitWebViewGroup.cpp: Defined and applied type conversions.
136         (toWebCoreUserContentInjectedFrames):
137         (webkit_web_view_group_add_user_style_sheet):
138
139 2014-02-20  Csaba Osztrogonác  <ossy@webkit.org>
140
141         Get rid of redundant Platform.h includes
142         https://bugs.webkit.org/show_bug.cgi?id=128817
143
144         Reviewed by Brent Fulgham.
145
146         * config.h:
147
148 2014-02-19  Alexey Proskuryakov  <ap@apple.com>
149
150         Build fix.
151
152         * UIProcess/API/C/WKPage.cpp: (WKPageGetBytecodeProfile): Updated a recently added
153         instance of ScriptCallback.
154
155 2014-02-18  Alexey Proskuryakov  <ap@apple.com>
156
157         [WK2] IPC callback classes should not be tightly coupled to C API
158         https://bugs.webkit.org/show_bug.cgi?id=129030
159
160         Reviewed by Anders Carlsson.
161
162         Changed CallbackBase subclasses to take an std::function (with context captured inside).
163         Instead of C API objects, these callback functions take implementation ones.
164         There are VoidAPICallback and GenericAPICallback helpers for the common case of C API.
165
166         * Shared/SecurityOriginData.h:
167         * UIProcess/API/C/WKApplicationCacheManager.cpp:
168         (WKApplicationCacheManagerGetApplicationCacheOrigins):
169         * UIProcess/API/C/WKContext.cpp:
170         (WKContextGetStatistics):
171         (WKContextGetStatisticsWithOptions):
172         * UIProcess/API/C/WKCookieManager.cpp:
173         (WKCookieManagerGetHostnamesWithCookies):
174         (WKCookieManagerGetHTTPCookieAcceptPolicy):
175         * UIProcess/API/C/WKDatabaseManager.cpp:
176         (WKDatabaseManagerGetDatabasesByOrigin):
177         (WKDatabaseManagerGetDatabaseOrigins):
178         * UIProcess/API/C/WKFrame.cpp:
179         (WKFrameGetMainResourceData):
180         (WKFrameGetResourceData):
181         (WKFrameGetWebArchive):
182         * UIProcess/API/C/WKKeyValueStorageManager.cpp:
183         (WKKeyValueStorageManagerGetKeyValueStorageOrigins):
184         (WKKeyValueStorageManagerGetStorageDetailsByOrigin):
185         * UIProcess/API/C/WKMediaCacheManager.cpp:
186         (WKMediaCacheManagerGetHostnamesWithMediaCache):
187         * UIProcess/API/C/WKOriginDataManager.cpp:
188         (WKOriginDataManagerGetOrigins):
189         * UIProcess/API/C/WKPage.cpp:
190         (WKPageRunJavaScriptInMainFrame):
191         (WKPageRenderTreeExternalRepresentation):
192         (WKPageGetSourceForFrame):
193         (WKPageGetContentsAsString):
194         (WKPageGetSelectionAsWebArchiveData):
195         (WKPageGetContentsAsMHTMLData):
196         (WKPageForceRepaint):
197         (WKPageValidateCommand):
198         (WKPageComputePagesForPrinting):
199         (WKPageDrawPagesToPDF):
200         * UIProcess/API/C/WKPluginSiteDataManager.cpp:
201         (WKPluginSiteDataManagerGetSitesWithData):
202         (WKPluginSiteDataManagerClearSiteData):
203         (WKPluginSiteDataManagerClearAllSiteData):
204         * UIProcess/API/C/WKResourceCacheManager.cpp:
205         (WKResourceCacheManagerGetCacheOrigins):
206         * UIProcess/API/gtk/WebKitCookieManager.cpp:
207         (webkit_cookie_manager_get_accept_policy):
208         (webkit_cookie_manager_get_domains_with_cookies):
209         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
210         (drawPagesForPrintingCompleted):
211         (webkitPrintOperationPrintPagesForFrame):
212         * UIProcess/API/gtk/WebKitWebResource.cpp:
213         (resourceDataCallback):
214         (webkit_web_resource_get_data):
215         * UIProcess/API/gtk/WebKitWebView.cpp:
216         (webkit_web_view_can_execute_editing_command):
217         (webkitWebViewRunJavaScriptCallback):
218         (webkit_web_view_run_javascript):
219         (resourcesStreamReadCallback):
220         (getContentsAsMHTMLDataCallback):
221         (webkit_web_view_save):
222         (webkit_web_view_save_to_file):
223         * UIProcess/API/ios/WKInteractionView.mm:
224         (-[WKInteractionView _define:]):
225         (selectionChangedWithGesture):
226         (selectionChangedWithTouch):
227         (-[WKInteractionView changeSelectionWithGestureAt:withGesture:withState:]):
228         (-[WKInteractionView changeSelectionWithTouchAt:withSelectionTouch:baseIsStart:]):
229         (-[WKInteractionView changeSelectionWithTouchesFrom:to:withGesture:withState:]):
230         (-[WKInteractionView requestAutocorrectionRectsForString:withCompletionHandler:]):
231         (-[WKInteractionView applyAutocorrection:toString:withCompletionHandler:]):
232         (-[WKInteractionView requestAutocorrectionContextWithCompletionHandler:]):
233         * UIProcess/API/mac/WKPrintingView.mm:
234         (pageDidDrawToImage):
235         (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
236         (pageDidComputePageRects):
237         (-[WKPrintingView _askPageToComputePageRects]):
238         (-[WKPrintingView _drawPreview:]):
239         * UIProcess/API/mac/WKView.mm:
240         (-[WKView validateUserInterfaceItem:]):
241         (-[WKView startSpeaking:]):
242         * UIProcess/AutoCorrectionCallback.h:
243         (WebKit::AutocorrectionDataCallback::create):
244         (WebKit::AutocorrectionDataCallback::performCallbackWithReturnValue):
245         (WebKit::AutocorrectionDataCallback::invalidate):
246         (WebKit::AutocorrectionDataCallback::AutocorrectionDataCallback):
247         (WebKit::AutocorrectionContextCallback::create):
248         (WebKit::AutocorrectionContextCallback::performCallbackWithReturnValue):
249         (WebKit::AutocorrectionContextCallback::invalidate):
250         (WebKit::AutocorrectionContextCallback::AutocorrectionContextCallback):
251         * UIProcess/GenericCallback.h:
252         (WebKit::CallbackBase::CallbackBase):
253         (WebKit::CallbackBase::generateCallbackID):
254         (WebKit::VoidCallback::create):
255         (WebKit::VoidCallback::performCallback):
256         (WebKit::VoidCallback::invalidate):
257         (WebKit::VoidCallback::VoidCallback):
258         (WebKit::VoidAPICallback::create):
259         (WebKit::GenericCallback::create):
260         (WebKit::GenericCallback::performCallbackWithReturnValue):
261         (WebKit::GenericCallback::invalidate):
262         (WebKit::GenericCallback::GenericCallback):
263         (WebKit::GenericAPICallback::create):
264         (WebKit::ComputedPagesCallback::create):
265         (WebKit::ComputedPagesCallback::performCallbackWithReturnValue):
266         (WebKit::ComputedPagesCallback::invalidate):
267         (WebKit::ComputedPagesCallback::ComputedPagesCallback):
268         (WebKit::ImageCallback::create):
269         (WebKit::ImageCallback::performCallbackWithReturnValue):
270         (WebKit::ImageCallback::invalidate):
271         (WebKit::ImageCallback::ImageCallback):
272         * UIProcess/Plugins/WebPluginSiteDataManager.h:
273         * UIProcess/StatisticsRequest.h:
274         * UIProcess/WebApplicationCacheManagerProxy.h:
275         * UIProcess/WebContext.h:
276         * UIProcess/WebCookieManagerProxy.h:
277         * UIProcess/WebDatabaseManagerProxy.h:
278         * UIProcess/WebFrameProxy.h:
279         * UIProcess/WebKeyValueStorageManager.h:
280         * UIProcess/WebMediaCacheManagerProxy.h:
281         * UIProcess/WebOriginDataManagerProxy.h:
282         * UIProcess/WebPageProxy.h:
283         (WebKit::ValidateCommandCallback::create):
284         (WebKit::ValidateCommandCallback::performCallbackWithReturnValue):
285         (WebKit::ValidateCommandCallback::invalidate):
286         (WebKit::ValidateCommandCallback::ValidateCommandCallback):
287         (WebKit::GestureCallback::create):
288         (WebKit::GestureCallback::performCallbackWithReturnValue):
289         (WebKit::GestureCallback::invalidate):
290         (WebKit::GestureCallback::GestureCallback):
291         (WebKit::TouchesCallback::create):
292         (WebKit::TouchesCallback::performCallbackWithReturnValue):
293         (WebKit::TouchesCallback::invalidate):
294         (WebKit::TouchesCallback::TouchesCallback):
295         * UIProcess/WebResourceCacheManagerProxy.h:
296         * UIProcess/mac/WKFullScreenWindowController.mm:
297         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
298
299 2014-02-19  Simon Fraser  <simon.fraser@apple.com>
300
301         Avoid sending redundant layer properties to the UI process, and avoid allocation of RemoteLayerBackingStore unless we need it
302         https://bugs.webkit.org/show_bug.cgi?id=129076
303
304         Reviewed by Tim Horton.
305         
306         Normally we rely on GraphicsLayerCA to avoid redundant property
307         setting on PlatformCALayers, but for contents layers GraphicsLayerCA
308         sets properties on every update.
309         
310         Make PlatformCALayerRemote more efficient in this case by not
311         setting dirty flags for unchanged property sets.
312         
313         Also avoid creation of RemoteLayerBackingStore unless we
314         actually need one.
315
316         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
317         (PlatformCALayerRemote::ensureBackingStore):
318         (PlatformCALayerRemote::updateBackingStore):
319         (PlatformCALayerRemote::setBounds):
320         (PlatformCALayerRemote::setPosition):
321         (PlatformCALayerRemote::setAnchorPoint):
322         (PlatformCALayerRemote::setMasksToBounds):
323         (PlatformCALayerRemote::setAcceleratesDrawing):
324         (PlatformCALayerRemote::setBorderWidth):
325         (PlatformCALayerRemote::setBorderColor):
326         (PlatformCALayerRemote::setContentsScale):
327         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
328
329 2014-02-19  Simon Fraser  <simon.fraser@apple.com>
330
331         [UI-Side Compositing] 6% of main thread time spent copying LayerProperties when adding to hash table
332         https://bugs.webkit.org/show_bug.cgi?id=129074
333
334         Reviewed by Tim Horton.
335         
336         Make RemoteLayerTreeTransaction::LayerProperties smaller and not copied by
337         value everywhere.
338         
339         Put some big members into unique_ptrs, and store unique_ptrs
340         in the hash of layerID to properties.
341         
342         Clean up member variable order of LayerProperties to improve packing.
343         
344         Also have applyPropertiesToLayer() take references to things to avoid
345         copies.
346         
347         * Shared/mac/RemoteLayerTreePropertyApplier.h:
348         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
349         (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer):
350         * Shared/mac/RemoteLayerTreeTransaction.h:
351         (WebKit::RemoteLayerTreeTransaction::changedLayers):
352         * Shared/mac/RemoteLayerTreeTransaction.mm:
353         (WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
354         (WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
355         (WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
356         (WebKit::RemoteLayerTreeTransaction::encode):
357         (WebKit::RemoteLayerTreeTransaction::decode):
358         (WebKit::RemoteLayerTreeTransaction::layerPropertiesChanged):
359         (WebKit::dumpChangedLayers):
360         * UIProcess/mac/RemoteLayerTreeHost.h:
361         * UIProcess/mac/RemoteLayerTreeHost.mm:
362         (WebKit::RemoteLayerTreeHost::updateLayerTree):
363         (WebKit::RemoteLayerTreeHost::createLayer):
364         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
365         (PlatformCALayerRemote::create):
366         (PlatformCALayerRemote::PlatformCALayerRemote):
367         (PlatformCALayerRemote::clone):
368         (PlatformCALayerRemote::recursiveBuildTransaction):
369         (PlatformCALayerRemote::ensureBackingStore):
370         (PlatformCALayerRemote::setNeedsDisplay):
371         (PlatformCALayerRemote::transform):
372         (PlatformCALayerRemote::setTransform):
373         (PlatformCALayerRemote::sublayerTransform):
374         (PlatformCALayerRemote::setSublayerTransform):
375         (PlatformCALayerRemote::setFilters):
376         (PlatformCALayerRemote::enumerateRectsBeingDrawn):
377         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
378
379 2014-02-19  Benjamin Poulain  <bpoulain@apple.com>
380
381         Remove -[WKContentView setViewportSize:]
382         https://bugs.webkit.org/show_bug.cgi?id=129071
383
384         Reviewed by Enrica Casucci.
385
386         I forgot to clean that up.
387
388         * UIProcess/API/ios/WKContentView.h:
389         * UIProcess/API/ios/WKContentView.mm:
390
391 2014-02-19  Oliver Hunt  <oliver@apple.com>
392
393         Add WK2 SPI to get bytecode profile from web process
394         https://bugs.webkit.org/show_bug.cgi?id=129069
395
396         Reviewed by Anders Carlsson.
397
398         Simple patch to allow asynchronous fetching of the
399         bytecode profiler output from the WebProcess.
400
401         * UIProcess/API/C/WKPage.cpp:
402         (WKPageGetBytecodeProfile):
403         * UIProcess/API/C/WKPagePrivate.h:
404         * UIProcess/WebPageProxy.cpp:
405         (WebKit::WebPageProxy::getBytecodeProfile):
406         * UIProcess/WebPageProxy.h:
407         * WebProcess/WebPage/WebPage.cpp:
408         (WebKit::WebPage::getBytecodeProfile):
409         * WebProcess/WebPage/WebPage.h:
410         * WebProcess/WebPage/WebPage.messages.in:
411
412 2014-02-19  Beth Dakin  <bdakin@apple.com>
413
414         Build fix.
415
416         * UIProcess/API/Cocoa/WKWebView.mm:
417         (-[WKWebView pageExtendedBackgroundColor]):
418
419 2014-02-19  Beth Dakin  <bdakin@apple.com>
420
421         UIProcess needs to know the color of the page's extended background
422         https://bugs.webkit.org/show_bug.cgi?id=129004
423
424         Reviewed by Simon Fraser and Brent Fulgham.
425
426         New method on WKWebView and WKView will return the page’s extended background 
427         color.
428         * UIProcess/API/Cocoa/WKViewPrivate.h:
429         * UIProcess/API/Cocoa/WKWebView.mm:
430         (-[WKWebView pageExtendedBackgroundColor]):
431         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
432         * UIProcess/API/ios/WKViewIOS.mm:
433         (-[WKView pageExtendedBackgroundColor]):
434
435         The color is stored in the WebPageProxy, and the ChromeClient sends a message to 
436         the WebPageProxy with the new color whenever it changes.
437         * UIProcess/WebPageProxy.cpp:
438         (WebKit::WebPageProxy::pageExtendedBackgroundColorDidChange):
439         * UIProcess/WebPageProxy.h:
440         (WebKit::WebPageProxy::pageExtendedBackgroundColor):
441         * UIProcess/WebPageProxy.messages.in:
442         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
443         (WebKit::WebChromeClient::pageExtendedBackgroundColorDidChange):
444         * WebProcess/WebCoreSupport/WebChromeClient.h:
445
446 2014-02-19  Tim Horton  <timothy_horton@apple.com>
447
448         [wk2] REGRESSION (r162710): Open tab urls not restored after switching to new Safari build
449         https://bugs.webkit.org/show_bug.cgi?id=128536
450         <rdar://problem/15911839>
451
452         Reviewed by Dan Bernstein.
453
454         * UIProcess/cf/WebBackForwardListCF.cpp:
455         (WebKit::extractBackForwardListEntriesFromArray):
456         Don't fail to extract an entry if it doesn't have a snapshot UUID.
457
458         * UIProcess/cf/WebPageProxyCF.cpp:
459         It turns out that this was the wrong version to bump, and we don't support
460         reading different versions of the session state data.
461
462 2014-02-19  Brady Eidson  <beidson@apple.com>
463
464         Add FeatureDefines for image controls
465         https://bugs.webkit.org/show_bug.cgi?id=129022
466
467         Reviewed by Jer Noble.
468
469         * Configurations/FeatureDefines.xcconfig:
470
471 2014-02-19  Brady Eidson  <beidson@apple.com>
472
473         Add settings/preferences for enabling image controls
474         https://bugs.webkit.org/show_bug.cgi?id=129027
475
476         Reviewed by Jer Noble.
477
478         * Shared/WebPreferencesStore.h:
479
480         * WebProcess/WebPage/WebPage.cpp:
481         (WebKit::WebPage::updatePreferences):
482
483 2014-02-19  Dan Bernstein  <mitz@apple.com>
484
485         Simplify PLATFORM(MAC) && !PLATFORM(IOS) and similar expressions
486         https://bugs.webkit.org/show_bug.cgi?id=129029
487
488         Reviewed by Mark Rowe.
489
490         * PluginProcess/PluginProcess.cpp:
491         (WebKit::PluginProcess::netscapePluginModule):
492         * Shared/API/c/WKDeprecatedFunctions.cpp:
493         * Shared/WebPreferencesStore.h:
494         * UIProcess/API/Cocoa/WKWebView.mm:
495         (-[WKWebView initWithFrame:configuration:]):
496         * UIProcess/PageClient.h:
497         * UIProcess/Scrolling/RemoteScrollingTree.cpp:
498         * UIProcess/Scrolling/RemoteScrollingTree.h:
499         * UIProcess/WebContext.h:
500         * UIProcess/WebInspectorProxy.h:
501         * UIProcess/WebPageProxy.cpp:
502         (WebKit::WebPageProxy::didChangeBackForwardList):
503         (WebKit::WebPageProxy::pageDidScroll):
504         (WebKit::WebPageProxy::resetStateAfterProcessExited):
505         (WebKit::WebPageProxy::creationParameters):
506         * UIProcess/WebPageProxy.h:
507         * UIProcess/WebPageProxy.messages.in:
508         * UIProcess/mac/WebContextMac.mm:
509         (WebKit::WebContext::platformInitializeWebProcess):
510         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
511         (WKBundlePageSetTopOverhangImage):
512         (WKBundlePageSetBottomOverhangImage):
513         * WebProcess/WebPage/PageBanner.h:
514         * WebProcess/WebPage/WebPage.cpp:
515         (WebKit::WebPage::setDeviceScaleFactor):
516         (WebKit::WebPage::mainFrameDidLayout):
517         (WebKit::WebPage::beginPrinting):
518         (WebKit::WebPage::drawRectToImage):
519         (WebKit::WebPage::drawPagesToPDF):
520         * WebProcess/WebPage/WebPage.messages.in:
521         * config.h:
522
523 2014-02-18  Dan Bernstein  <mitz@apple.com>
524
525         PLATFORM(MAC) is true when building for iOS
526         https://bugs.webkit.org/show_bug.cgi?id=129025
527
528         Reviewed by Mark Rowe.
529
530         * Shared/Network/NetworkProcessCreationParameters.cpp: Changed PLATFORM(MAC) to
531         PLATFORM(COCOA) now that the former does not include iOS.
532         (WebKit::NetworkProcessCreationParameters::encode):
533         (WebKit::NetworkProcessCreationParameters::decode):
534         * Shared/Network/NetworkProcessCreationParameters.h: Ditto.
535         * WebKit2Prefix.h: Ditto.
536
537 2014-02-18  Simon Fraser  <simon.fraser@apple.com>
538
539         Clean up WKContentView initialization
540         https://bugs.webkit.org/show_bug.cgi?id=129016
541
542         Reviewed by Benjamin Poulain.
543         
544         WKContentView had too many initializers and duplicated init
545         code. Clean up by removing all but one initializer and and
546         doing all the setup in it.
547
548         * UIProcess/API/ios/WKContentView.h:
549         * UIProcess/API/ios/WKContentView.mm:
550         * UIProcess/API/ios/WKViewIOS.mm:
551         (-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
552
553 2014-02-18  Tim Horton  <timothy_horton@apple.com>
554
555         Another 32-bit build fix.
556
557         * UIProcess/API/mac/WKView.mm:
558         (-[WKView _acceleratedCompositingModeRootLayer]):
559
560 2014-02-18  Tim Horton  <timothy_horton@apple.com>
561
562         More more WK_API_ENABLED after r164337.
563
564         * UIProcess/API/mac/PageClientImpl.mm:
565         (WebKit::PageClientImpl::activeView):
566
567 2014-02-18  Tim Horton  <timothy_horton@apple.com>
568
569         Can't use #if inside a macro, so we'll duplicate the macro for now.
570
571         Build fix for all of Mac.
572
573         * UIProcess/API/mac/WKView.mm:
574
575 2014-02-18  Tim Horton  <timothy_horton@apple.com>
576
577         Don't build WKThumbnailView on iOS; it won't build.
578
579         * Configurations/WebKit2.xcconfig:
580
581 2014-02-18  Tim Horton  <timothy_horton@apple.com>
582
583         More WK_API_ENABLED after r164337.
584
585         * UIProcess/API/mac/WKView.mm:
586         (-[WKView dealloc]):
587         (-[WKView scrollWheel:]):
588         (-[WKView mouseMoved:]):
589         (-[WKView mouseDown:]):
590         (-[WKView mouseUp:]):
591         (-[WKView mouseDragged:]):
592         (-[WKView _setAcceleratedCompositingModeRootLayer:]):
593         * UIProcess/API/mac/WKViewInternal.h:
594
595 2014-02-18  Simon Fraser  <simon.fraser@apple.com>
596
597         Remove UIWKRemoteView
598         https://bugs.webkit.org/show_bug.cgi?id=129015
599
600         Reviewed by Dan Bernstein.
601         
602         Remove UIWKRemoteView which is unused.
603
604         * Configurations/WebKit2.xcconfig:
605         * UIProcess/API/ios/UIWKRemoteView.h: Removed.
606         * UIProcess/API/ios/UIWKRemoteView.mm: Removed.
607         * WebKit2.xcodeproj/project.pbxproj:
608
609 2014-02-18  Tim Horton  <timothy_horton@apple.com>
610
611         32-bit build fix after r164337
612
613         * UIProcess/API/Cocoa/WKThumbnailView.mm:
614         Address a review comment. We'll get this for free.
615
616         * UIProcess/API/mac/PageClientImpl.mm:
617         (WebKit::PageClientImpl::activeView):
618         Build fix.
619
620 2014-02-18  Tim Horton  <timothy_horton@apple.com>
621
622         Add a way to efficiently thumbnail WKViews
623         https://bugs.webkit.org/show_bug.cgi?id=128831
624         <rdar://problem/15669655>
625
626         Reviewed by Dan Bernstein.
627
628         * UIProcess/API/Cocoa/WKThumbnailView.h: Added.
629         * UIProcess/API/Cocoa/WKThumbnailView.mm: Added.
630         (-[WKThumbnailView initWithFrame:fromWKView:]):
631         (-[WKThumbnailView _viewWasUnparented]):
632         (-[WKThumbnailView _viewWasParented]):
633         (-[WKThumbnailView viewDidMoveToWindow]):
634         (-[WKThumbnailView setScale:]):
635         (-[WKThumbnailView setThumbnailLayer:]):
636         (-[WKThumbnailView thumbnailLayer]):
637         * UIProcess/API/Cocoa/WKThumbnailViewInternal.h: Added.
638         Add WKThumbnailView.
639         Clients of this private API will call initWithFrame:fromWKView:,
640         giving the WKView they wish to borrow contents from.
641         They can also call setScale: to set the scale that will be used to render
642         the content in an implementation-defined set of cases (currently, we will
643         use the low resolution scale for WKViews which were not parented when the
644         WKThumbnailView was created; parented WKViews will use the existing scale).
645
646         * UIProcess/API/mac/PageClientImpl.mm:
647         (WebKit::PageClientImpl::isViewWindowActive):
648         (WebKit::PageClientImpl::isViewVisible):
649         (WebKit::PageClientImpl::isViewVisibleOrOccluded):
650         (WebKit::PageClientImpl::isViewInWindow):
651         (WebKit::PageClientImpl::viewLayerHostingMode):
652         If the WKView has an actively-parented WKThumbnailView attached to it,
653         we should determine view visibility/etc. using that view instead of the WKView.
654
655         * UIProcess/API/mac/WKView.mm:
656         (-[WKView dealloc]):
657         WKThumbnailView holds on to the WKView, and clears WKView's backpointer
658         when it leaves the window, so we should never see WKView get deallocated
659         with a live thumbnail view.
660
661         (-[WKView scrollWheel:]):
662         (-[WKView mouseMoved:]):
663         (-[WKView mouseDown:]):
664         (-[WKView mouseUp:]):
665         (-[WKView mouseDragged:]):
666         Don't handle events while thumbnailed.
667
668         (-[WKView _setAcceleratedCompositingModeRootLayer:]):
669         Forward root layer changes to the installed thumbnail view.
670
671         (-[WKView _acceleratedCompositingModeRootLayer]):
672         _acceleratedCompositingModeRootLayer should return the same layer
673         that was set via _setAcceleratedCompositingModeRootLayer:, not its parent.
674
675         (-[WKView _setThumbnailView:]):
676         (-[WKView _thumbnailView]):
677         Install/uninstall a WKThumbnailView. Hand it our root layer if installing,
678         or recover it from the departing thumbnail view if uninstalling.
679
680         * UIProcess/API/mac/WKViewInternal.h:
681         Add in a missing RetainPtr.h include that I missed earlier and causes trouble.
682         Add WKView _thumbnailView and _setThumbnailView:.
683
684         * UIProcess/WebPageProxy.cpp:
685         (WebKit::WebPageProxy::setThumbnailScale):
686         * UIProcess/WebPageProxy.h:
687         (WebKit::WebPageProxy::mayStartMediaWhenInWindow):
688
689         * UIProcess/mac/ViewGestureControllerMac.mm:
690         (WebKit::ViewGestureController::beginSwipeGesture):
691         (WebKit::ViewGestureController::handleSwipeGesture):
692         Swipe was accidentally depending on a mistake in WKView's
693         _acceleratedCompositingModeRootLayer where it was returning the wrong layer.
694         The actual root layer doesn't have a size, so we should use the drawing
695         area's size instead.
696
697         * WebKit2.xcodeproj/project.pbxproj:
698         Add some new files.
699
700         * WebProcess/WebPage/WebPage.cpp:
701         (WebKit::WebPage::didCommitLoad):
702         If we reset the page scale because a load was committed, we should
703         reset the stored thumbnail-scale-less page scale so that we don't restore
704         the wrong scale when leaving thumbnailing.
705
706         (WebKit::WebPage::WebPage):
707         (WebKit::WebPage::setThumbnailScale):
708         * WebProcess/WebPage/WebPage.h:
709         * WebProcess/WebPage/WebPage.messages.in:
710         Apply the thumbnail scale to the page. If we're currently not in
711         thumbnail scaling mode, save the current page scale and scroll position
712         so we can restore them once we leave thumbnail mode again.
713         Transform the DrawingArea so that the page appears at the same
714         position and size, but scaled.
715
716         * WebProcess/WebPage/DrawingArea.h:
717         (WebKit::DrawingArea::setTransform):
718         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
719         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
720         (WebKit::TiledCoreAnimationDrawingArea::setTransform):
721         Add a DrawingArea method to apply an arbitrary transform to the drawing area.
722
723         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
724         (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
725         (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayNeedsDisplay):
726         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
727         (WebKit::TiledCoreAnimationDrawingArea::suspendPainting):
728         (WebKit::TiledCoreAnimationDrawingArea::resumePainting):
729         (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
730         (WebKit::TiledCoreAnimationDrawingArea::updateLayerHostingContext):
731         (WebKit::TiledCoreAnimationDrawingArea::createPageOverlayLayer):
732         (WebKit::TiledCoreAnimationDrawingArea::didCommitChangesForLayer):
733         (WebKit::TiledCoreAnimationDrawingArea::updateDebugInfoLayer):
734         (WebKit::TiledCoreAnimationDrawingArea::adjustTransientZoom):
735         Remove the word "compositing" in a bunch of places where it isn't needed.
736         Rename m_rootLayer to m_hostingLayer, and repurpose m_rootLayer to store
737         the root compositing layer actually passed in via setRootCompositingLayer.
738         Rename m_pendingRootCompositingLayer to m_pendingRootLayer.
739
740 2014-02-18  Anders Carlsson  <andersca@apple.com>
741
742         Add SPI for enabling/disabling private browsing
743         https://bugs.webkit.org/show_bug.cgi?id=129012
744
745         Reviewed by Tim Horton.
746
747         * UIProcess/API/Cocoa/WKWebView.mm:
748         (-[WKWebView _privateBrowsingEnabled]):
749         (-[WKWebView _setPrivateBrowsingEnabled:]):
750         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
751
752 2014-02-18  Anders Carlsson  <andersca@apple.com>
753
754         Add more SPI methods to WKWebView
755         https://bugs.webkit.org/show_bug.cgi?id=129011
756
757         Reviewed by Tim Horton.
758
759         * UIProcess/API/Cocoa/WKWebView.mm:
760         (-[WKWebView _webProcessIdentifier]):
761         (-[WKWebView _sessionState]):
762         (releaseNSData):
763         (-[WKWebView _restoreFromSessionState:]):
764         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
765
766 2014-02-18  Anders Carlsson  <andersca@apple.com>
767
768         Add more new SPI methods
769         https://bugs.webkit.org/show_bug.cgi?id=129009
770
771         Reviewed by Tim Horton.
772
773         * UIProcess/API/Cocoa/WKWebView.mm:
774         (-[WKWebView _certificateChain]):
775         (-[WKWebView _committedURL]):
776         (-[WKWebView _applicationNameForUserAgent]):
777         (-[WKWebView _setApplicationNameForUserAgent:]):
778         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
779
780 2014-02-18  Anders Carlsson  <andersca@apple.com>
781
782         Make reload SPI for now
783         https://bugs.webkit.org/show_bug.cgi?id=129007
784
785         Reviewed by Simon Fraser.
786
787         * UIProcess/API/Cocoa/WKWebView.h:
788         * UIProcess/API/Cocoa/WKWebView.mm:
789         (-[WKWebView _reload]):
790         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
791
792 2014-02-18  Anders Carlsson  <andersca@apple.com>
793
794         Add -[WKWebView reload]
795         https://bugs.webkit.org/show_bug.cgi?id=129005
796
797         Reviewed by Tim Horton.
798
799         * UIProcess/API/Cocoa/WKWebView.h:
800         * UIProcess/API/Cocoa/WKWebView.mm:
801         (-[WKWebView reload]):
802
803 2014-02-18  Anders Carlsson  <andersca@apple.com>
804
805         Add SPI for allowing HTTPS certificates
806         https://bugs.webkit.org/show_bug.cgi?id=129002
807
808         Reviewed by Dan Bernstein.
809
810         * UIProcess/API/Cocoa/WKProcessClass.mm:
811         (-[WKProcessClass _setAllowsSpecificHTTPSCertificate:forHost:]):
812         * UIProcess/API/Cocoa/WKProcessClassInternal.h:
813         * UIProcess/API/Cocoa/WKProcessClassPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKProcessClassInternal.h.
814         * WebKit2.xcodeproj/project.pbxproj:
815
816 2014-02-18  Anders Carlsson  <andersca@apple.com>
817
818         Add SPI for getting the original URL from a WKNavigationAction
819         https://bugs.webkit.org/show_bug.cgi?id=128997
820
821         Reviewed by Tim Horton.
822
823         * UIProcess/API/Cocoa/WKNavigationActionInternal.h:
824         * UIProcess/API/Cocoa/WKNavigationActionPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKNavigationActionInternal.h.
825         * UIProcess/Cocoa/NavigationState.mm:
826         (WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
827         * WebKit2.xcodeproj/project.pbxproj:
828
829 2014-02-18  Anders Carlsson  <andersca@apple.com>
830
831         Add more WKWebView SPI
832         https://bugs.webkit.org/show_bug.cgi?id=128994
833
834         Reviewed by Tim Horton.
835
836         * UIProcess/API/Cocoa/WKHistoryDelegatePrivate.h:
837         * UIProcess/API/Cocoa/WKWebView.mm:
838         (-[WKWebView _unreachableURL]):
839         (-[WKWebView _loadAlternateHTMLString:baseURL:forUnreachableURL:]):
840         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
841
842 2014-02-18  Anders Carlsson  <andersca@apple.com>
843
844         Fix build.
845
846         * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm:
847         (-[WKProcessClassConfiguration description]):
848
849 2014-02-18  Sam Weinig  <sam@webkit.org>
850
851         Temporarily remove support for setting the maximumDecodedImageSize. It is causing assertions.
852
853         * Shared/WebPreferencesStore.h:
854         * WebProcess/WebPage/WebPage.cpp:
855         (WebKit::WebPage::updatePreferences):
856
857 2014-02-18  Dan Bernstein  <mitz@apple.com>
858
859         [Cocoa] Implement -description in some API objects
860         https://bugs.webkit.org/show_bug.cgi?id=128956
861
862         Reviewed by Anders Carlsson.
863
864         * Shared/API/Cocoa/WKRemoteObjectInterface.mm:
865         Changed category name to have the framework’s prefix.
866         (-[WKRemoteObjectInterface description]): Added.
867         * UIProcess/API/Cocoa/WKFrameInfo.mm:
868         (-[WKFrameInfo description]): Added.
869         * UIProcess/API/Cocoa/WKNavigationAction.mm:
870         (-[WKNavigationAction description]): Added.
871         * UIProcess/API/Cocoa/WKNavigationResponse.mm:
872         (-[WKNavigationResponse description]): Added.
873         * UIProcess/API/Cocoa/WKProcessClass.mm:
874         (-[WKProcessClass description]): Added.
875         * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm:
876         (-[WKProcessClassConfiguration description]): Added.
877         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
878         (-[WKWebViewConfiguration description]): Added.
879
880 2014-02-17  ChangSeok Oh  <changseok.oh@collabora.com>
881
882         Unreviewed gtk build fix.
883
884         * GNUmakefile.list.am: Remove WebHistoryClient.cpp/h after r164230.
885
886 2014-02-17  Ricky Mondello  <rmondello@apple.com>
887
888         Expose a way to clear cookies modified after a given date
889         https://bugs.webkit.org/show_bug.cgi?id=128845
890
891         Reviewed by Alexey Proskuryakov.
892
893         * UIProcess/API/C/WKCookieManager.cpp:
894         (WKCookieManagerDeleteAllCookiesModifiedAfterDate): Added. Call out to the CookieManager.
895         * UIProcess/API/C/WKCookieManager.h: Declare WKCookieManagerDeleteAllCookiesModifiedAfterDate.
896         * UIProcess/WebCookieManagerProxy.cpp:
897         (WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedAfterDate): Added. Dispatch message to the
898             Network Process.
899         * UIProcess/WebCookieManagerProxy.h: Declare deleteAllCookiesModifiedAfterDate.
900         * WebProcess/Cookies/WebCookieManager.cpp:
901         (WebKit::WebCookieManager::deleteAllCookiesModifiedAfterDate): Added. Call out to WebCore to finish the job.
902         * WebProcess/Cookies/WebCookieManager.h: Declare deleteAllCookiesModifiedAfterDate.
903         * WebProcess/Cookies/WebCookieManager.messages.in: Add new message.
904
905 2014-02-17  Ryuan Choi  <ryuan.choi@samsung.com>
906
907         [EFL][WK2] Move and make WKColorPickerResultListener to EFL specific interface
908         https://bugs.webkit.org/show_bug.cgi?id=119120
909
910         Reviewed by Gyuyoung Kim.
911
912         WKColorPickerResultListener and related files are only used in EFL since added.
913         Indeed, it does not work since refactored common logic for ColorPicker in WebPageProxy.
914
915         This patch moved them to EFL specfic and refactor to work well.
916
917         * CMakeLists.txt: Moved WebColorPickerResultListenerProxy.cpp to PlatformEfl.cmake.
918         * GNUmakefile.list.am: Removed ColorPickerResultListener related files which are only for Efl from source list.
919         * PlatformEfl.cmake: Added ColorPickerResultListenerProxy related files and newly added files into source list.
920         * UIProcess/API/APIUIClient.h:
921         * UIProcess/API/C/WKPage.cpp:
922         (WKPageSetPageUIClient):
923         * UIProcess/API/C/efl/WKColorPickerResultListener.cpp: Renamed from Source/WebKit2/UIProcess/API/C/WKColorPickerResultListener.cpp.
924         (WKColorPickerResultListenerGetTypeID):
925         (WKColorPickerResultListenerSetColor):
926         * UIProcess/API/C/efl/WKColorPickerResultListener.h: Renamed from Source/WebKit2/UIProcess/API/C/WKColorPickerResultListener.h.
927         * UIProcess/API/C/efl/WKViewEfl.cpp: Introduced WKColorPickerClient and setter.
928         (WKViewSetColorPickerClient):
929         * UIProcess/API/C/efl/WKViewEfl.h:
930         * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp: Enabled test case for color picker.
931         (TEST_F):
932         * UIProcess/WebPageProxy.cpp: Removed unnecessary WebColorPickerResultListenerProxy dependency.
933         * UIProcess/WebPageProxy.h: Ditto.
934         * UIProcess/efl/PageUIClientEfl.cpp: Removed color picker callbacks of PageUIClient.
935         (WebKit::PageUIClientEfl::PageUIClientEfl):
936         * UIProcess/efl/PageUIClientEfl.h:
937         * UIProcess/efl/ViewClientEfl.cpp: Registered callbacks of WKColorPickerClient.
938         (WebKit::ViewClientEfl::showColorPicker):
939         (WebKit::ViewClientEfl::endColorPicker):
940         (WebKit::ViewClientEfl::ViewClientEfl):
941         (WebKit::ViewClientEfl::~ViewClientEfl):
942         * UIProcess/efl/ViewClientEfl.h:
943         * UIProcess/efl/WebColorPickerClient.cpp: Copied from Source/WebKit2/UIProcess/efl/ViewClientEfl.h.
944         (WebKit::WebColorPickerClient::showColorPicker):
945         (WebKit::WebColorPickerClient::endPicker):
946         * UIProcess/efl/WebColorPickerClient.h: Added.
947         * UIProcess/efl/WebColorPickerEfl.cpp: Copied from Source/WebKit2/UIProcess/efl/ViewClientEfl.h.
948         (WebKit::WebColorPickerEfl::WebColorPickerEfl):
949         (WebKit::WebColorPickerEfl::endPicker):
950         (WebKit::WebColorPickerEfl::showColorPicker):
951         (WebKit::WebColorPickerEfl::setSelectedColor):
952         (WebKit::WebColorPickerEfl::didChooseColor):
953         * UIProcess/efl/WebColorPickerEfl.h: Copied from Source/WebKit2/UIProcess/efl/ViewClientEfl.h.
954         (WebKit::WebColorPickerEfl::create):
955         (WebKit::WebColorPickerEfl::~WebColorPickerEfl):
956         * UIProcess/efl/WebColorPickerResultListenerProxy.cpp: Renamed from Source/WebKit2/UIProcess/WebColorPickerResultListenerProxy.cpp.
957         (WebKit::WebColorPickerResultListenerProxy::WebColorPickerResultListenerProxy):
958         (WebKit::WebColorPickerResultListenerProxy::~WebColorPickerResultListenerProxy):
959         (WebKit::WebColorPickerResultListenerProxy::invalidate):
960         (WebKit::WebColorPickerResultListenerProxy::setColor):
961         * UIProcess/efl/WebColorPickerResultListenerProxy.h: Renamed from Source/WebKit2/UIProcess/WebColorPickerResultListenerProxy.h.
962         (WebKit::WebColorPickerResultListenerProxy::create):
963         * UIProcess/efl/WebViewEfl.cpp:
964         (WebKit::WebViewEfl::initializeColorPickerClient):
965         (WebKit::WebViewEfl::createColorPicker):
966         * UIProcess/efl/WebViewEfl.h:
967         (WebKit::WebViewEfl::colorPickerClient):
968         * WebKit2.xcodeproj/project.pbxproj: Removed ColorPickerResultListener related files which are only for Efl from source list.
969
970 2014-02-17  Sam Weinig  <sam@webkit.org>
971
972         [iOS, WebKit2] Add settings and correct default values for settings important on iOS
973         https://bugs.webkit.org/show_bug.cgi?id=128947
974
975         Reviewed by Simon Fraser.
976
977         * Shared/WebPreferencesStore.cpp:
978         * Shared/WebPreferencesStore.h:
979         * WebProcess/WebPage/WebPage.cpp:
980         (WebKit::WebPage::updatePreferences):
981
982 2014-02-17  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
983
984         [CoordinatedGraphics][EFL] Remove view_source functions.
985         https://bugs.webkit.org/show_bug.cgi?id=128945
986
987         Reviewed by Anders Carlsson.
988
989         EFL port has been broken since r164254 because of removing view source files in WK2.
990         This patch is to follow to remove remained view source functions.
991
992         * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
993         * UIProcess/API/C/CoordinatedGraphics/WKView.h:
994         * UIProcess/API/efl/ewk_view.cpp:
995         * UIProcess/API/efl/ewk_view.h:
996         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
997         * UIProcess/CoordinatedGraphics/WebView.cpp:
998         * UIProcess/CoordinatedGraphics/WebView.h:
999
1000 2014-02-17  Tim Horton  <timothy_horton@apple.com>
1001
1002         [iOS][wk2] Custom layers are sometimes put on-screen without being parented
1003         https://bugs.webkit.org/show_bug.cgi?id=128935
1004         <rdar://problem/16022336>
1005
1006         Reviewed by Sam Weinig.
1007
1008         * Platform/mac/LayerHostingContext.mm:
1009         (WebKit::LayerHostingContext::createForExternalHostingProcess):
1010         Give an explicit and unlikely display ID, so that the layer will never
1011         be brought on-screen unless explicitly parented.
1012
1013 2014-02-17  Anders Carlsson  <andersca@apple.com>
1014
1015         Add history delegate to WKWebView
1016         https://bugs.webkit.org/show_bug.cgi?id=128930
1017
1018         Reviewed by Dan Bernstein.
1019
1020         * UIProcess/API/Cocoa/WKHistoryDelegatePrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h.
1021         * UIProcess/API/Cocoa/WKProcessClass.mm:
1022         (-[WKProcessClass initWithConfiguration:]):
1023         * UIProcess/API/Cocoa/WKWebView.mm:
1024         (-[WKWebView _historyDelegate]):
1025         (-[WKWebView _setHistoryDelegate:]):
1026         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1027         * UIProcess/Cocoa/HistoryClient.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h.
1028         * UIProcess/Cocoa/HistoryClient.mm: Added.
1029         (WebKit::HistoryClient::HistoryClient):
1030         (WebKit::HistoryClient::~HistoryClient):
1031         (WebKit::HistoryClient::didNavigateWithNavigationData):
1032         (WebKit::HistoryClient::didPerformClientRedirect):
1033         (WebKit::HistoryClient::didPerformServerRedirect):
1034         (WebKit::HistoryClient::didUpdateHistoryTitle):
1035         (WebKit::HistoryClient::populateVisitedLinks):
1036         (WebKit::HistoryClient::shouldTrackVisitedLinks):
1037         * UIProcess/Cocoa/NavigationState.h:
1038         * UIProcess/Cocoa/NavigationState.mm:
1039         (WebKit::navigationStates):
1040         (WebKit::NavigationState::NavigationState):
1041         (WebKit::NavigationState::~NavigationState):
1042         (WebKit::NavigationState::fromWebPage):
1043         (WebKit::NavigationState::historyDelegate):
1044         (WebKit::NavigationState::setHistoryDelegate):
1045         (WebKit::NavigationState::didNavigateWithNavigationData):
1046         (WebKit::NavigationState::didPerformClientRedirect):
1047         (WebKit::NavigationState::didPerformServerRedirect):
1048         (WebKit::NavigationState::didUpdateHistoryTitle):
1049         * WebKit2.xcodeproj/project.pbxproj:
1050
1051 2014-02-17  Sam Weinig  <sam@webkit.org>
1052
1053         [WebKit2] Merge WebProcessMac and WebProcessIOS into WebProcessCocoa
1054         https://bugs.webkit.org/show_bug.cgi?id=128939
1055
1056         Reviewed by Dan Bernstein.
1057
1058         * WebKit2.xcodeproj/project.pbxproj:
1059         Add/remove files/groups.
1060
1061         * WebProcess/WebProcess.h:
1062         Change stopRunLoop() to be AppKit only.
1063
1064         * WebProcess/cocoa: Added.
1065         * WebProcess/cocoa/WebProcessCocoa.mm: Copied from Source/WebKit2/WebProcess/mac/WebProcessMac.mm.
1066         (WebKit::WebProcess::platformInitializeWebProcess):
1067         (WebKit::WebProcess::initializeProcessName):
1068         (WebKit::WebProcess::platformInitializeProcess):
1069         (WebKit::WebProcess::initializeSandbox):
1070         (WebKit::WebProcess::updateActivePages):
1071         * WebProcess/ios/WebProcessIOS.mm: Removed.
1072         * WebProcess/mac/WebProcessMac.mm: Removed.
1073         Copy mac/WebProcessMac.mm to cocoa/WebProcessCocoa.mm, and add #if USE(APPKIT) where appropriate.
1074
1075 2014-02-17  Anders Carlsson  <andersca@apple.com>
1076
1077         Stop using isMainThread() in WebKit2
1078         https://bugs.webkit.org/show_bug.cgi?id=128940
1079         <rdar://problem/15963666>
1080
1081         Reviewed by Enrica Casucci.
1082
1083         Since isMainThread() has a different meaning when the web thread is enabled on iOS,
1084         just use RunLoop::isMain() to check if we're executing on the main thread.
1085
1086         * DatabaseProcess/DatabaseProcess.cpp:
1087         (WebKit::DatabaseProcess::ensurePathExists):
1088         (WebKit::DatabaseProcess::postDatabaseTask):
1089         (WebKit::DatabaseProcess::performNextDatabaseTask):
1090         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
1091         (WebKit::UniqueIDBDatabase::shutdown):
1092         (WebKit::UniqueIDBDatabase::shutdownBackingStore):
1093         (WebKit::UniqueIDBDatabase::didShutdownBackingStore):
1094         (WebKit::UniqueIDBDatabase::deleteDatabase):
1095         (WebKit::UniqueIDBDatabase::getOrEstablishIDBDatabaseMetadata):
1096         (WebKit::UniqueIDBDatabase::openBackingStoreAndReadMetadata):
1097         (WebKit::UniqueIDBDatabase::didOpenBackingStoreAndReadMetadata):
1098         (WebKit::UniqueIDBDatabase::postTransactionOperation):
1099         (WebKit::UniqueIDBDatabase::didCompleteTransactionOperation):
1100         (WebKit::UniqueIDBDatabase::changeDatabaseVersion):
1101         (WebKit::UniqueIDBDatabase::createObjectStore):
1102         (WebKit::UniqueIDBDatabase::deleteObjectStore):
1103         (WebKit::UniqueIDBDatabase::clearObjectStore):
1104         (WebKit::UniqueIDBDatabase::createIndex):
1105         (WebKit::UniqueIDBDatabase::deleteIndex):
1106         (WebKit::UniqueIDBDatabase::putRecord):
1107         (WebKit::UniqueIDBDatabase::getRecord):
1108         (WebKit::UniqueIDBDatabase::openCursor):
1109         (WebKit::UniqueIDBDatabase::cursorAdvance):
1110         (WebKit::UniqueIDBDatabase::cursorIterate):
1111         (WebKit::UniqueIDBDatabase::count):
1112         (WebKit::UniqueIDBDatabase::deleteRange):
1113         (WebKit::UniqueIDBDatabase::openBackingStoreTransaction):
1114         (WebKit::UniqueIDBDatabase::beginBackingStoreTransaction):
1115         (WebKit::UniqueIDBDatabase::commitBackingStoreTransaction):
1116         (WebKit::UniqueIDBDatabase::resetBackingStoreTransaction):
1117         (WebKit::UniqueIDBDatabase::rollbackBackingStoreTransaction):
1118         (WebKit::UniqueIDBDatabase::changeDatabaseVersionInBackingStore):
1119         (WebKit::UniqueIDBDatabase::createObjectStoreInBackingStore):
1120         (WebKit::UniqueIDBDatabase::deleteObjectStoreInBackingStore):
1121         (WebKit::UniqueIDBDatabase::clearObjectStoreInBackingStore):
1122         (WebKit::UniqueIDBDatabase::createIndexInBackingStore):
1123         (WebKit::UniqueIDBDatabase::deleteIndexInBackingStore):
1124         (WebKit::UniqueIDBDatabase::putRecordInBackingStore):
1125         (WebKit::UniqueIDBDatabase::getRecordFromBackingStore):
1126         (WebKit::UniqueIDBDatabase::openCursorInBackingStore):
1127         (WebKit::UniqueIDBDatabase::absoluteDatabaseDirectory):
1128         (WebKit::UniqueIDBDatabase::postMainThreadTask):
1129         (WebKit::UniqueIDBDatabase::performNextMainThreadTask):
1130         (WebKit::UniqueIDBDatabase::postDatabaseTask):
1131         (WebKit::UniqueIDBDatabase::performNextDatabaseTask):
1132         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
1133         (WebKit::generateDatabaseId):
1134         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::UniqueIDBDatabaseBackingStoreSQLite):
1135         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite):
1136         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
1137         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
1138         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::openSQLiteDatabaseAtPath):
1139         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getOrEstablishMetadata):
1140         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::establishTransaction):
1141         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::beginTransaction):
1142         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::commitTransaction):
1143         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::resetTransaction):
1144         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::rollbackTransaction):
1145         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::changeDatabaseVersion):
1146         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
1147         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteObjectStore):
1148         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::clearObjectStore):
1149         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex):
1150         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteIndex):
1151         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::generateKeyNumber):
1152         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::updateKeyGeneratorNumber):
1153         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::keyExistsInObjectStore):
1154         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord):
1155         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::putIndexRecord):
1156         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord):
1157         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRecord):
1158         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteRange):
1159         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRecordFromObjectStore):
1160         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getKeyRangeRecordFromObjectStore):
1161         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::count):
1162         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::openCursor):
1163         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::advanceCursor):
1164         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::iterateCursor):
1165         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::notifyCursorsOfChanges):
1166         * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
1167         (WebKit::NetworkBlobRegistry::shared):
1168         * NetworkProcess/HostRecord.cpp:
1169         (WebKit::HostRecord::scheduleResourceLoader):
1170         (WebKit::HostRecord::addLoaderInProgress):
1171         (WebKit::HostRecord::removeLoader):
1172         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1173         (WebKit::NetworkResourceLoadScheduler::removeLoader):
1174         (WebKit::NetworkResourceLoadScheduler::receivedRedirect):
1175         (WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders):
1176         * NetworkProcess/NetworkResourceLoader.cpp:
1177         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
1178         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1179         (WebKit::NetworkResourceLoader::start):
1180         (WebKit::NetworkResourceLoader::cleanup):
1181         (WebKit::NetworkResourceLoader::abort):
1182         (WebKit::NetworkResourceLoader::willSendRequestAsync):
1183         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
1184         * NetworkProcess/NetworkResourceLoader.h:
1185         (WebKit::NetworkResourceLoader::setHostRecord):
1186         (WebKit::NetworkResourceLoader::hostRecord):
1187         * NetworkProcess/mac/DiskCacheMonitor.mm:
1188         (WebKit::DiskCacheMonitor::DiskCacheMonitor):
1189         * Shared/AsyncRequest.cpp:
1190         (WebKit::generateRequestID):
1191         * Shared/Authentication/AuthenticationManager.cpp:
1192         (WebKit::generateAuthenticationChallengeID):
1193         (WebKit::AuthenticationManager::establishIdentifierForChallenge):
1194         (WebKit::AuthenticationManager::useCredentialForChallenge):
1195         (WebKit::AuthenticationManager::continueWithoutCredentialForChallenge):
1196         (WebKit::AuthenticationManager::cancelChallenge):
1197         * Shared/Downloads/mac/DownloadMac.mm:
1198         (dispatchOnMainThread):
1199         * Shared/Plugins/NPObjectProxy.cpp:
1200         (WebKit::NPObjectProxy::~NPObjectProxy):
1201         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
1202         (WebKit::getPluginInfoFromCarbonResources):
1203         * Shared/SessionTracker.cpp:
1204         (WebKit::staticSessionMap):
1205         (WebKit::storageSessionToID):
1206         (WebKit::identifierBase):
1207         (WebKit::SessionTracker::destroySession):
1208         (WebKit::SessionTracker::setIdentifierBase):
1209         * UIProcess/APISession.cpp:
1210         (API::generateID):
1211         (API::Session::defaultSession):
1212         (API::Session::legacyPrivateSession):
1213         * WebProcess/Cookies/WebCookieManager.cpp:
1214         (WebKit::WebCookieManager::dispatchCookiesDidChange):
1215         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
1216         (WebKit::WebIDBFactoryBackend::open):
1217         (WebKit::WebIDBFactoryBackend::deleteDatabase):
1218         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
1219         (WebKit::generateServerConnectionIdentifier):
1220         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1221         (WebKit::WebFrameNetworkingContext::storageSession):
1222         * WebProcess/WebPage/EventDispatcher.cpp:
1223         (WebKit::EventDispatcher::dispatchWheelEvent):
1224
1225 2014-02-17  Anders Carlsson  <andersca@apple.com>
1226
1227         Remove view source code
1228         https://bugs.webkit.org/show_bug.cgi?id=127233
1229
1230         Reviewed by Antti Koivisto.
1231
1232         * UIProcess/WebPageProxy.cpp:
1233         (WebKit::WebPageProxy::WebPageProxy):
1234         * UIProcess/WebPageProxy.h:
1235         * WebProcess/WebPage/WebPage.cpp:
1236         * WebProcess/WebPage/WebPage.h:
1237         * WebProcess/WebPage/WebPage.messages.in:
1238
1239 2014-02-17  Sergio Correia  <sergio.correia@openbossa.org>
1240
1241         Replace uses of PassOwnPtr/OwnPtr with std::unique_ptr in WebCore/inspector
1242         https://bugs.webkit.org/show_bug.cgi?id=128681
1243
1244         Reviewed by Timothy Hatcher.
1245
1246         Another step towards getting rid of PassOwnPtr/OwnPtr, now targeting
1247         WebCore/inspector/*. Besides files in there, a few other files in
1248         JavaScriptCore/inspector, WebKit/, WebKit2/WebProcess/WebCoreSupport/
1249         and WebCore/testing were touched.
1250
1251         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
1252
1253 2014-02-17  Michał Pakuła vel Rutka  <m.pakula@samsung.com>
1254
1255         Unreviewed EFL build fix attempt
1256
1257         * CMakeLists.txt: Remove WebHistoryClient.cpp after r164230.
1258
1259 2014-02-17  Anders Carlsson  <andersca@apple.com>
1260
1261         WebKitGTK+ should stop calling functions to set the view source mode
1262         https://bugs.webkit.org/show_bug.cgi?id=128919
1263
1264         Reviewed by Carlos Garcia Campos.
1265
1266         This is a first step towards getting rid of the view source mode from WebCore. 
1267         View source shouldn't be a mode on the web page and can be implemented in other ways by
1268         embedding apps. Furthermore, the inspector has an excellent view source mode.
1269
1270         * UIProcess/API/gtk/WebKitWebView.cpp:
1271         (webkit_web_view_set_view_mode):
1272         (webkit_web_view_get_view_mode):
1273         Turn these into no-ops.
1274
1275 2014-02-17  Anders Carlsson  <andersca@apple.com>
1276
1277         Turn the history client into a fancy API::HistoryClient abstract base class
1278         https://bugs.webkit.org/show_bug.cgi?id=128917
1279
1280         Reviewed by Andreas Kling.
1281
1282         * UIProcess/API/APIHistoryClient.h: Renamed from Source/WebKit2/UIProcess/WebHistoryClient.h.
1283         (API::HistoryClient::~HistoryClient):
1284         (API::HistoryClient::didNavigateWithNavigationData):
1285         (API::HistoryClient::didPerformClientRedirect):
1286         (API::HistoryClient::didPerformServerRedirect):
1287         (API::HistoryClient::didUpdateHistoryTitle):
1288         (API::HistoryClient::populateVisitedLinks):
1289         (API::HistoryClient::shouldTrackVisitedLinks):
1290         * UIProcess/API/C/WKContext.cpp:
1291         (WKContextSetHistoryClient):
1292         * UIProcess/WebContext.cpp:
1293         (WebKit::WebContext::WebContext):
1294         (WebKit::WebContext::setHistoryClient):
1295         (WebKit::WebContext::createNewWebProcess):
1296         (WebKit::WebContext::populateVisitedLinks):
1297         * UIProcess/WebContext.h:
1298         (WebKit::WebContext::historyClient):
1299         * UIProcess/WebHistoryClient.cpp: Removed.
1300         * UIProcess/WebPageProxy.h:
1301         * UIProcess/WebProcessProxy.cpp:
1302         * WebKit2.xcodeproj/project.pbxproj:
1303
1304 2014-02-17  Dan Bernstein  <mitz@apple.com>
1305
1306         Try to fix iOS Debug builds without breaking Release builds.
1307
1308         * WebProcess/WebPage/PageBanner.cpp:
1309         * WebProcess/WebPage/PageBanner.h:
1310
1311 2014-02-16  Dan Bernstein  <mitz@apple.com>
1312
1313         Speculative iOS build fix.
1314
1315         * WebProcess/WebPage/mac/PageBannerMac.mm:
1316
1317 2014-02-16  Dan Bernstein  <mitz@apple.com>
1318
1319         Speculative iOS build fix.
1320
1321         * WebProcess/WebPage/PageBanner.h:
1322
1323 2014-02-16  Dan Bernstein  <mitz@apple.com>
1324
1325         Stop using PLATFORM(MAC) in Source except where it means “OS X but not iOS”
1326         https://bugs.webkit.org/show_bug.cgi?id=128885
1327
1328         Reviewed by Anders Carlsson.
1329
1330         * Configurations/WebKit2.xcconfig: Removed PageBannerMac.mm and WKBundlePageBannerMac.mm
1331         from EXCLUDED_SOURCE_FILE_NAMES_iphoneos, now that these files are guarded with
1332         !PLATFORM(IOS).
1333         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp: Changed PLATFORM(MAC) to
1334         PLATFORM(COCOA).
1335         (WKBundleFrameCopyWebArchiveFilteringSubframes):
1336         * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm: Guarded with !PLATFORM(IOS).
1337         * WebProcess/InjectedBundle/InjectedBundle.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1338         (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
1339         * WebProcess/InjectedBundle/InjectedBundle.h: Changed PLATFORM(MAC) to USE(FOUNDATION)
1340         around use of NSBundle.
1341         * WebProcess/InjectedBundle/InjectedBundleUserMessageCoders.h: Changed PLATFORM(MAC) to
1342         PLATFORM(COCOA).
1343         (WebKit::InjectedBundleUserMessageEncoder::encode):
1344         (WebKit::InjectedBundleUserMessageDecoder::decode):
1345         * WebProcess/Network/WebResourceLoader.cpp: Ditto.
1346         (WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
1347         * WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: Ditto.
1348         (WebKit::NPN_GetValue):
1349         (WebKit::NPN_SetValue):
1350         (WebKit::initializeBrowserFuncs):
1351         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp: Ditto.
1352         (WebKit::NetscapePlugin::NetscapePlugin):
1353         (WebKit::NetscapePlugin::supportsSnapshotting):
1354         * WebProcess/Plugins/Netscape/NetscapePlugin.h: Ditto.
1355         * WebProcess/Plugins/Plugin.cpp: Ditto.
1356         (WebKit::Plugin::Parameters::encode):
1357         (WebKit::Plugin::Parameters::decode):
1358         * WebProcess/Plugins/Plugin.h: Ditto.
1359         * WebProcess/Plugins/PluginController.h: Ditto.
1360         * WebProcess/Plugins/PluginProcessConnectionManager.cpp: Changed PLATFORM(MAC) to
1361         USE(DARWIN) around use of Mach-based IPC.
1362         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
1363         * WebProcess/Plugins/PluginProxy.cpp: Chanegd PLATFORM(MAC) to PLATFORM(COCOA).
1364         * WebProcess/Plugins/PluginProxy.h: Ditto.
1365         * WebProcess/Plugins/PluginProxy.messages.in: Ditto.
1366         * WebProcess/Plugins/PluginView.cpp: Ditto.
1367         (WebKit::PluginView::destroyPluginAndReset):
1368         (WebKit::PluginView::viewStateDidChange):
1369         (WebKit::PluginView::didInitializePlugin):
1370         (WebKit::PluginView::invalidateRect):
1371         (WebKit::PluginView::pluginSnapshotTimerFired):
1372         * WebProcess/Plugins/PluginView.h: Ditto.
1373         * WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp: Ditto.
1374         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Ditto.
1375         (WebKit::WebChromeClient::windowRect):
1376         * WebProcess/WebCoreSupport/WebChromeClient.h: Ditto.
1377         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp: Ditto.
1378         * WebProcess/WebCoreSupport/WebContextMenuClient.h: Ditto.
1379         * WebProcess/WebCoreSupport/WebDragClient.cpp: Ditto.
1380         * WebProcess/WebCoreSupport/WebDragClient.h: Ditto.
1381         * WebProcess/WebCoreSupport/WebEditorClient.cpp: Ditto.
1382         (WebKit::WebEditorClient::shouldEraseMarkersAfterChangeSelection):
1383         * WebProcess/WebCoreSupport/WebEditorClient.h: Ditto.
1384         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: Ditto.
1385         (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
1386         (WebKit::WebFrameLoaderClient::createPlugin):
1387         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: Ditto.
1388         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp: Ditto.
1389         * WebProcess/WebCoreSupport/WebPlatformStrategies.h: Ditto.
1390         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm: Removed PLATFORM(MAC).
1391         (InitWebCoreSystemInterface):
1392         * WebProcess/WebPage/DrawingArea.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1393         (WebKit::DrawingArea::create):
1394         * WebProcess/WebPage/DrawingArea.h: Ditto.
1395         * WebProcess/WebPage/DrawingArea.messages.in: Ditto.
1396         * WebProcess/WebPage/EventDispatcher.cpp: Ditto.
1397         (WebKit::EventDispatcher::wheelEvent):
1398         * WebProcess/WebPage/LayerTreeHost.h: Ditto.
1399         * WebProcess/WebPage/PageBanner.cpp: Added !PLATFORM(IOS)
1400         * WebProcess/WebPage/PageBanner.h: Ditto.
1401         * WebProcess/WebPage/WebFrame.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1402         * WebProcess/WebPage/WebFrame.h: Ditto.
1403         * WebProcess/WebPage/WebInspector.cpp: Ditto.
1404         (WebKit::WebInspector::WebInspector):
1405         * WebProcess/WebPage/WebInspector.h: Ditto.
1406         * WebProcess/WebPage/WebPage.cpp: Ditto.
1407         (WebKit::WebPage::WebPage):
1408         (WebKit::isContextClick):
1409         (WebKit::WebPage::getSelectionAsWebArchiveData):
1410         (WebKit::WebPage::getWebArchiveOfFrame):
1411         (WebKit::WebPage::updatePreferences):
1412         (WebKit::WebPage::sendSetWindowFrame):
1413         (WebKit::WebPage::beginPrinting):
1414         (WebKit::WebPage::computePagesForPrinting):
1415         * WebProcess/WebPage/WebPage.h: Ditto.
1416         * WebProcess/WebPage/WebPage.messages.in: Ditto.
1417         * WebProcess/WebPage/mac/PageBannerMac.mm: Guarded with !PLATFORM(IOS).
1418         * WebProcess/WebProcess.cpp:
1419         (WebKit::WebProcess::WebProcess): Changed PLATFORM(MAC) to PLATFORM(COCOA).
1420         (WebKit::WebProcess::initializeWebProcess): Ditto.
1421         (WebKit::WebProcess::ensureNetworkProcessConnection): Changed PLATFORM(MAC) to OS(DARWIN).
1422         (WebKit::WebProcess::ensurePrivateBrowsingSession): Changed PLATFORM(MAC) to
1423         PLATFORM(COCOA).
1424         (WebKit::WebProcess::destroyPrivateBrowsingSession): Ditto.
1425         (WebKit::WebProcess::ensureWebToDatabaseProcessConnection): Changed PLATFORM(MAC) to
1426         OS(DARWIN).
1427         (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired): Changed PLATFORM(MAC) to
1428         PLATFORM(COCOA)
1429         * WebProcess/WebProcess.h: Ditto.
1430         * WebProcess/WebProcess.messages.in: Removed PLATFORM(MAC) guard around
1431         SetProcessSuppressionEnabled. Changed it to PLATFORM(COCOA) around SetQOS.
1432
1433 2014-02-15  Alexey Proskuryakov  <ap@apple.com>
1434
1435         [Mac] All WebKit clients should encrypt WebCrypto keys automatically
1436         https://bugs.webkit.org/show_bug.cgi?id=128852
1437
1438         Reviewed by Oliver Hunt.
1439
1440         * UIProcess/WebPageProxy.cpp:
1441         (WebKit::WebPageProxy::wrapCryptoKey):
1442         (WebKit::WebPageProxy::unwrapCryptoKey):
1443         Call the default implementation if key is not provided by a client.
1444
1445 2014-02-15  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
1446
1447         [EFL][WK2] Stop calling mktemp(3).
1448         https://bugs.webkit.org/show_bug.cgi?id=128826
1449
1450         Reviewed by Gyuyoung Kim.
1451
1452         mktemp(3) is an insecure function and should be avoided at all costs.
1453         Replace its usage with mkdtemp(3): instead of just getting a file name
1454         that is supposed to be random and unused, we now create a directory
1455         with a random name and then put whatever files we need there with fixed
1456         names.
1457
1458         * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
1459         (TEST_F):
1460         * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
1461         (TEST_F):
1462
1463 2014-02-15  Dan Bernstein  <mitz@apple.com>
1464
1465         Stop using PLATFORM(MAC) in WebKit2/UIProcess except where it means “OS X but not iOS”
1466         https://bugs.webkit.org/show_bug.cgi?id=128868
1467
1468         Reviewed by Anders Carlsoon.
1469
1470         * UIProcess/API/C/WKPage.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1471         * UIProcess/Databases/DatabaseProcessProxy.cpp:
1472         (WebKit::DatabaseProcessProxy::didCreateDatabaseToWebProcessConnection): Changed
1473         PLATFORM(MAC) to OS(DARWIN) around use of Mach-based IPC.
1474         * UIProcess/DrawingAreaProxy.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA)
1475         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
1476         * UIProcess/DrawingAreaProxy.h: Ditto.
1477         * UIProcess/DrawingAreaProxy.messages.in: Ditto.
1478         * UIProcess/Launcher/ProcessLauncher.cpp:
1479         (WebKit::ProcessLauncher::didFinishLaunchingProcess): Changed PLATFORM(MAC) to OS(DARWIN)
1480         around use of Mach API.
1481         * UIProcess/Launcher/ProcessLauncher.h: Ditto.
1482         * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h: Changed PLATFORM(MAC) to
1483         PLATFORM(COCOA)
1484         * UIProcess/Network/NetworkProcessProxy.cpp:
1485         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch): Changed PLATFORM(MAC)
1486         to OS(DARWIN).
1487         (WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess): Ditto.
1488         (WebKit::NetworkProcessProxy::didFinishLaunching): Changed PLATFORM(MAC) to PLATFORM(COCOA)
1489         around process suppression call.
1490         * UIProcess/Network/NetworkProcessProxy.h: Ditto.
1491         * UIProcess/PageClient.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1492         * UIProcess/Plugins/PluginInfoStore.cpp: Ditto.
1493         * UIProcess/Plugins/PluginProcessManager.h: Ditto.
1494         * UIProcess/Plugins/PluginProcessProxy.cpp:
1495         (WebKit::PluginProcessProxy::PluginProcessProxy): Ditto.
1496         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch): Changed PLATFORM(MAC)
1497         to OS(DARWIN).
1498         (WebKit::PluginProcessProxy::didClose): Changed PLATFORM(MAC) to PLATFORM(COCOA).
1499         (WebKit::PluginProcessProxy::didFinishLaunching): Changed PLATFORM(MAC) to OS(DARWIN) around
1500         use of Mach-based IPC, and to PLATFORM(COCOA) around SetQOS.
1501         (WebKit::PluginProcessProxy::didCreateWebProcessConnection): Changed PLATFORM(MAC) to
1502         OS(DARWIN).
1503         * UIProcess/Plugins/PluginProcessProxy.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1504         * UIProcess/Plugins/PluginProcessProxy.messages.in: Ditto.
1505         * UIProcess/TextChecker.h: Ditto.
1506         * UIProcess/WebContext.cpp: Ditto.
1507         (WebKit::WebContext::ensureNetworkProcess):
1508         (WebKit::WebContext::createNewWebProcess):
1509         (WebKit::WebContext::setHTTPPipeliningEnabled):
1510         (WebKit::WebContext::httpPipeliningEnabled):
1511         (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
1512         * UIProcess/WebContext.h: Ditto.
1513         * UIProcess/WebContext.messages.in: Ditto.
1514         * UIProcess/WebContextUserMessageCoders.h: Ditto.
1515         (WebKit::WebContextUserMessageEncoder::encode):
1516         (WebKit::WebContextUserMessageDecoder::decode):
1517         * UIProcess/WebCookieManagerProxy.cpp: Ditto.
1518         (WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy):
1519         * UIProcess/WebCookieManagerProxy.h: Ditto.
1520         * UIProcess/WebFormSubmissionListenerProxy.h: Ditto.
1521         * UIProcess/WebFramePolicyListenerProxy.h: Ditto.
1522         * UIProcess/WebInspectorProxy.h: Added !PLATFORM(IOS) around members reltated to managing
1523         the inspector window and its view.
1524         * UIProcess/WebPageProxy.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1525         (WebKit::WebPageProxy::WebPageProxy):
1526         (WebKit::WebPageProxy::initializeWebPage):
1527         (WebKit::WebPageProxy::recordNavigationSnapshot):
1528         (WebKit::WebPageProxy::canShowMIMEType):
1529         (WebKit::canCoalesce):
1530         (WebKit::coalesce):
1531         (WebKit::WebPageProxy::findPlugin):
1532         (WebKit::WebPageProxy::editorStateChanged):
1533         (WebKit::WebPageProxy::contextMenuItemSelected):
1534         (WebKit::WebPageProxy::didReceiveEvent):
1535         (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
1536         * UIProcess/WebPageProxy.h: Ditto.
1537         * UIProcess/WebPageProxy.messages.in: Ditto.
1538         * UIProcess/WebProcessProxy.cpp: Ditto.
1539         (WebKit::WebProcessProxy::WebProcessProxy):
1540         (WebKit::WebProcessProxy::createWebPage):
1541         (WebKit::WebProcessProxy::addExistingWebPage):
1542         (WebKit::WebProcessProxy::removeWebPage):
1543         (WebKit::WebProcessProxy::didFinishLaunching):
1544         (WebKit::WebProcessProxy::pageSuppressibilityChanged):
1545         (WebKit::WebProcessProxy::pagePreferencesChanged):
1546         * UIProcess/WebProcessProxy.h: Ditto.
1547         * UIProcess/cf/WebPreferencesCF.cpp: Removed this file which was not used in any
1548         configuration.
1549         * UIProcess/ios/WebInspectorProxyIOS.mm: Removed functions that no longer need to be
1550         implemented for iOS.
1551         * WebKit2.xcodeproj/project.pbxproj: Removed reference to WebPreferencesCF.cpp.
1552
1553 2014-02-15  Jeremy Jones  <jeremyj@apple.com>
1554
1555         messages.py doesn't handle parameters with more than one level of scope.
1556         https://bugs.webkit.org/show_bug.cgi?id=128573
1557
1558         Reviewed by Simon Fraser.
1559
1560         Support .messages.in header include generation for parameter types with more than 1 level of scope.
1561
1562         Add a test case and update expected results.
1563
1564         * Scripts/webkit2/LegacyMessageReceiver-expected.cpp:
1565         (WebKit::WebPage::didReceiveWebPageMessage):
1566         * Scripts/webkit2/LegacyMessages-expected.h:
1567         (Messages::WebPage::SetVideoLayerID::receiverName):
1568         (Messages::WebPage::SetVideoLayerID::name):
1569         (Messages::WebPage::SetVideoLayerID::SetVideoLayerID):
1570         (Messages::WebPage::SetVideoLayerID::arguments):
1571         * Scripts/webkit2/MessageReceiver-expected.cpp:
1572         (WebKit::WebPage::didReceiveMessage):
1573         * Scripts/webkit2/Messages-expected.h:
1574         (Messages::WebPage::SetVideoLayerID::receiverName):
1575         (Messages::WebPage::SetVideoLayerID::name):
1576         (Messages::WebPage::SetVideoLayerID::SetVideoLayerID):
1577         (Messages::WebPage::SetVideoLayerID::arguments):
1578         * Scripts/webkit2/messages.py:
1579         (headers_for_type):
1580         * Scripts/webkit2/messages_unittest.py:
1581         * Scripts/webkit2/test-legacy-messages.in:
1582         * Scripts/webkit2/test-messages.in:
1583
1584 2014-02-14  Carlos Garcia Campos  <cgarcia@igalia.com>
1585
1586         [GTK] Fix marshaller used in WebKitWebPage::document-loaded signal
1587         https://bugs.webkit.org/show_bug.cgi?id=128808
1588
1589         Reviewed by Sergio Villar Senin.
1590
1591         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1592         (webkit_web_page_class_init): Use g_cclosure_marshal_VOID__VOID
1593         instead of g_cclosure_marshal_VOID__OBJECT.
1594
1595 2014-02-14  Anders Carlsson  <andersca@apple.com>
1596
1597         Add SPI for monitoring web process crashes
1598         https://bugs.webkit.org/show_bug.cgi?id=128851
1599
1600         Reviewed by Beth Dakin.
1601
1602         * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
1603         * UIProcess/Cocoa/NavigationState.h:
1604         * UIProcess/Cocoa/NavigationState.mm:
1605         (WebKit::NavigationState::setNavigationDelegate):
1606         (WebKit::NavigationState::LoaderClient::processDidCrash):
1607
1608 2014-02-14  Anders Carlsson  <andersca@apple.com>
1609
1610         Add SPI for authentication 
1611         https://bugs.webkit.org/show_bug.cgi?id=128847
1612
1613         Reviewed by Dan Bernstein.
1614
1615         * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h:
1616         * UIProcess/Cocoa/NavigationState.h:
1617         * UIProcess/Cocoa/NavigationState.mm:
1618         (WebKit::NavigationState::setNavigationDelegate):
1619         (WebKit::NavigationState::LoaderClient::canAuthenticateAgainstProtectionSpaceInFrame):
1620         (WebKit::NavigationState::LoaderClient::didReceiveAuthenticationChallengeInFrame):
1621
1622 2014-02-14  Anders Carlsson  <andersca@apple.com>
1623
1624         Add WKBackForwardListDidChangeNotification 
1625         https://bugs.webkit.org/show_bug.cgi?id=128839
1626
1627         Reviewed by Dan Bernstein.
1628
1629         Also, make LoaderClient::didChangeBackForwardList take a Vector of WebBackForwardListItems
1630         instead of a pointer to a Vector of API::Objects.
1631
1632         * Shared/API/Cocoa/WKFoundation.h:
1633         * UIProcess/API/APILoaderClient.h:
1634         (API::LoaderClient::didChangeBackForwardList):
1635         * UIProcess/API/C/WKPage.cpp:
1636         (WKPageSetPageLoaderClient):
1637         * UIProcess/API/Cocoa/WKBackForwardList.h:
1638         * UIProcess/API/Cocoa/WKBackForwardList.mm:
1639         * UIProcess/Cocoa/NavigationState.h:
1640         * UIProcess/Cocoa/NavigationState.mm:
1641         (WebKit::NavigationState::LoaderClient::didChangeBackForwardList):
1642         * UIProcess/WebBackForwardList.cpp:
1643         (WebKit::WebBackForwardList::addItem):
1644         (WebKit::WebBackForwardList::goToItem):
1645         (WebKit::WebBackForwardList::clear):
1646         * UIProcess/WebPageProxy.cpp:
1647         (WebKit::WebPageProxy::didChangeBackForwardList):
1648         * UIProcess/WebPageProxy.h:
1649
1650 2014-02-12  Jer Noble  <jer.noble@apple.com>
1651
1652         [iOS][WK2] Always enable AVKit in WK2
1653         https://bugs.webkit.org/show_bug.cgi?id=128686
1654
1655         Reviewed by Simon Fraser.
1656
1657         Enable AVKit in iOS WK2 by default. This enables <video> element full screen in WK2.
1658
1659         * WebProcess/WebPage/WebPage.cpp:
1660         (WebKit::WebPage::updatePreferences):
1661
1662 2014-02-14  Benjamin Poulain  <bpoulain@apple.com>
1663
1664         [WK2][iOS] Add WKContentObservation support when dispatching synthetic mouse events
1665         https://bugs.webkit.org/show_bug.cgi?id=128715
1666
1667         Reviewed by Darin Adler.
1668
1669         * WebProcess/WebPage/ios/WebPageIOS.mm:
1670         (WebKit::WebPage::handleTap):
1671
1672 2014-02-14  Benjamin Poulain  <bpoulain@apple.com>
1673
1674         <rdar://problem/15994340> WK2: Cannot scroll to the bottom of the page when the keyboard is on the screen
1675         https://bugs.webkit.org/show_bug.cgi?id=128710
1676
1677         Reviewed by Enrica Casucci.
1678
1679         WKView/WKWebView needs to adapt the UIScrollView insets to leave some space for the keyboard.
1680
1681         * UIProcess/API/Cocoa/WKWebView.mm:
1682         (-[WKWebView initWithFrame:configuration:]):
1683         (-[WKWebView dealloc]):
1684         (-[WKWebView _keyboardChangedWithInfo:adjustScrollView:]):
1685         (-[WKWebView _keyboardWillChangeFrame:]):
1686         (-[WKWebView _keyboardDidChangeFrame:]):
1687         (-[WKWebView _keyboardWillShow:]):
1688         (-[WKWebView _keyboardWillHide:]):
1689         * UIProcess/API/ios/WKContentView.h:
1690         * UIProcess/API/ios/WKContentView.mm:
1691         (-[WKContentView isAssistingNode]):
1692         * UIProcess/API/ios/WKInteractionView.h:
1693         * UIProcess/API/ios/WKViewIOS.mm:
1694         (-[WKView dealloc]):
1695         (-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
1696         (-[WKView _keyboardChangedWithInfo:adjustScrollView:]):
1697         (-[WKView _keyboardWillChangeFrame:]):
1698         (-[WKView _keyboardDidChangeFrame:]):
1699         (-[WKView _keyboardWillShow:]):
1700         (-[WKView _keyboardWillHide:]):
1701
1702 2014-02-14  Dan Bernstein  <mitz@apple.com>
1703
1704         Stop using PLATFORM(MAC) in WebKit2/PluginProcess except where it means “OS X but not iOS”
1705         https://bugs.webkit.org/show_bug.cgi?id=128802
1706
1707         Reviewed by Darin Adler.
1708
1709         * PluginProcess/PluginControllerProxy.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1710         (WebKit::PluginControllerProxy::PluginControllerProxy):
1711         (WebKit::PluginControllerProxy::paint):
1712         * PluginProcess/PluginControllerProxy.h: Ditto.
1713         * PluginProcess/PluginControllerProxy.messages.in: Ditto.
1714         * PluginProcess/PluginProcess.cpp:
1715         (WebKit::PluginProcess::PluginProcess): Ditto.
1716         (WebKit::PluginProcess::netscapePluginModule): Added && !PLATFORM(IOS) around Mac-specific
1717         quirk.
1718         (WebKit::PluginProcess::createWebProcessConnection): Changed PLATFORM(MAC) to OS(DARWIN)
1719         around use of Mach-based IPC.
1720         * PluginProcess/PluginProcess.h: Changed PLATFORM(MAC) to PLATFORM(COCOA), and to
1721         USE(APPKIT) around override of stopRunLoop, which is implemented using AppKit.
1722         * PluginProcess/PluginProcess.messages.in: Removed PLATFORM(MAC) guard around
1723         SetProcessSuppressionEnabled. Changed it to PLATFORM(COCOA) around SetQOS.
1724         * PluginProcess/WebProcessConnection.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1725         (WebKit::WebProcessConnection::createPluginInternal):
1726         (WebKit::WebProcessConnection::createPlugin):
1727
1728 2014-02-14  Anders Carlsson  <andersca@apple.com>
1729
1730         Add -[WKWebView estimatedProgress]
1731         https://bugs.webkit.org/show_bug.cgi?id=128830
1732
1733         Reviewed by Dan Bernstein.
1734
1735         * UIProcess/API/Cocoa/WKWebView.h:
1736         * UIProcess/API/Cocoa/WKWebView.mm:
1737         (-[WKWebView estimatedProgress]):
1738         * UIProcess/Cocoa/NavigationState.mm:
1739         (WebKit::NavigationState::willChangeEstimatedProgress):
1740         (WebKit::NavigationState::didChangeEstimatedProgress):
1741
1742 2014-02-13  Simon Fraser  <simon.fraser@apple.com>
1743
1744         Give ScrollingTree(State)Nodes a reference to another layer, which is used for moving overflow:scroll contents around
1745         https://bugs.webkit.org/show_bug.cgi?id=128790
1746
1747         Reviewed by Beth Dakin.
1748
1749         Have scrolling tree nodes and state nodes track another layer, the
1750         "scrolled contents layer", for accelerated overflow:scroll.
1751         
1752         When making ScrollingTreeScrollingNodes for overflow:scroll, the node's
1753         layer will point to the composited element's primary layer, and its
1754         scrolledContentsLayer to the layer that gets moved around by scrolling.
1755         
1756         Do some other cleanup on AsyncScrollingCoordinator, removing
1757         functions that just called through to nodes.
1758
1759         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
1760         (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
1761
1762 2014-02-14  Anders Carlsson  <andersca@apple.com>
1763
1764         Add -[WKWebView _handle]
1765         https://bugs.webkit.org/show_bug.cgi?id=128828
1766
1767         Reviewed by Dan Bernstein.
1768
1769         * UIProcess/API/Cocoa/WKWebView.mm:
1770         (-[WKWebView _handle]):
1771         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1772
1773 2014-02-13  Dan Bernstein  <mitz@apple.com>
1774
1775         [Cocoa] Expose the bundle form client
1776         https://bugs.webkit.org/show_bug.cgi?id=128792
1777
1778         Reviewed by Anders Carlsson.
1779
1780         * WebKit2.xcodeproj/project.pbxproj: Added new file.
1781         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Added.
1782         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
1783         (didFocusTextField): Implemented this WKBundlePageFormClient callback by calling the form
1784         delegate.
1785         (setUpFormClient): Added. Initializes the form client with the above function.
1786         (-[WKWebProcessPlugInBrowserContextController _formDelegate]): Added this getter.
1787         (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Added. Initializes or
1788         clears the form client.
1789         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
1790         Declared _formDelegate property.
1791
1792 2014-02-13  Dan Bernstein  <mitz@apple.com>
1793
1794         [Cocoa] Add a way to get the page from a frame in the injected bundle
1795         https://bugs.webkit.org/show_bug.cgi?id=128791
1796
1797         Reviewed by Anders Carlsson.
1798
1799         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
1800         (-[WKWebProcessPlugInFrame _browserContextController]): Added.
1801         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h: Declared
1802         _browserContextController property.
1803
1804 2014-02-13  Anders Carlsson  <andersca@apple.com>
1805
1806         Add -[WKWebView stopLoading:]
1807         https://bugs.webkit.org/show_bug.cgi?id=128784
1808
1809         Reviewed by Dan Bernstein.
1810
1811         * UIProcess/API/Cocoa/WKWebView.h:
1812         * UIProcess/API/Cocoa/WKWebView.mm:
1813         (-[WKWebView stopLoading:]):
1814
1815 2014-02-13  Anders Carlsson  <andersca@apple.com>
1816
1817         Add -[WKWebView activeURL]
1818         https://bugs.webkit.org/show_bug.cgi?id=128777
1819
1820         Reviewed by Dan Bernstein.
1821
1822         * UIProcess/API/Cocoa/WKWebView.h:
1823         * UIProcess/API/Cocoa/WKWebView.mm:
1824         (-[WKWebView activeURL]):
1825         * UIProcess/Cocoa/NavigationState.mm:
1826         (WebKit::NavigationState::willChangeActiveURL):
1827         (WebKit::NavigationState::didChangeActiveURL):
1828
1829 2014-02-13  Anders Carlsson  <andersca@apple.com>
1830
1831         Add -[WKWebView goToBackForwardListItem:]
1832         https://bugs.webkit.org/show_bug.cgi?id=128773
1833
1834         Reviewed by Andreas Kling.
1835
1836         * UIProcess/API/Cocoa/WKWebView.h:
1837         * UIProcess/API/Cocoa/WKWebView.mm:
1838         (-[WKWebView goToBackForwardListItem:]):
1839
1840 2014-02-13  Anders Carlsson  <andersca@apple.com>
1841
1842         Make WKWebViewConfigurationPrivate.h private
1843         https://bugs.webkit.org/show_bug.cgi?id=128761
1844
1845         Reviewed by Tim Horton.
1846
1847         * WebKit2.xcodeproj/project.pbxproj:
1848
1849 2014-02-13  Myles C. Maxfield  <mmaxfield@apple.com>
1850
1851         During a copy, position:fixed gets converted to position:absolute even if only part of the document is selected
1852         https://bugs.webkit.org/show_bug.cgi?id=128688
1853
1854         Reviewed by Ryosuke Niwa.
1855
1856         Renames the ConvertPositionStyleOnCopy setting to ShouldConvertPositionStyleOnCopy
1857
1858         * Shared/WebPreferencesStore.h:
1859         * UIProcess/API/C/WKPreferences.cpp:
1860         (WKPreferencesSetShouldConvertPositionStyleOnCopy):
1861         (WKPreferencesGetShouldConvertPositionStyleOnCopy):
1862         * UIProcess/API/C/WKPreferencesPrivate.h:
1863         * WebProcess/WebPage/WebPage.cpp:
1864         (WebKit::WebPage::updatePreferences):
1865
1866 2014-02-12  Timothy Hatcher  <timothy@apple.com>
1867
1868         Enable inspection of recently used IndexedDB databases.
1869
1870         https://bugs.webkit.org/show_bug.cgi?id=128687
1871
1872         Reviewed by Brady Eidson & Joseph Pecoraro.
1873
1874         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.cpp:
1875         (WebKit::sharedRecentDatabaseNameMap):
1876         (WebKit::combinedSecurityOriginIdentifier):
1877         (WebKit::WebIDBFactoryBackend::WebIDBFactoryBackend):
1878         (WebKit::WebIDBFactoryBackend::getDatabaseNames):
1879         (WebKit::WebIDBFactoryBackend::open):
1880         (WebKit::WebIDBFactoryBackend::deleteDatabase):
1881         Keep track of recently used database names per security-origin pair.
1882         Implement getDatabaseNames to return the recently used names.
1883
1884         * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
1885         Fix up the arguments passed to getDatabaseNames.
1886
1887 2014-02-13  Anders Carlsson  <andersca@apple.com>
1888
1889         Fix build.
1890
1891         * UIProcess/API/Cocoa/WKWebView.mm:
1892         (layoutMilestones):
1893
1894 2014-02-13  Anders Carlsson  <andersca@apple.com>
1895
1896         Add rendering progress events SPI
1897         https://bugs.webkit.org/show_bug.cgi?id=128752
1898
1899         Reviewed by Dan Bernstein.
1900
1901         * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewPrivate.h.
1902         * UIProcess/API/Cocoa/WKWebView.mm:
1903         (-[WKWebView _observedRenderingProgressEvents]):
1904         (layoutMilestones):
1905         (-[WKWebView _setObservedRenderingProgressEvents:]):
1906         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
1907         (NS_OPTIONS):
1908         * UIProcess/Cocoa/NavigationState.h:
1909         * UIProcess/Cocoa/NavigationState.mm:
1910         (WebKit::NavigationState::setNavigationDelegate):
1911         (WebKit::renderingProgressEvents):
1912         (WebKit::NavigationState::LoaderClient::didLayout):
1913         * WebKit2.xcodeproj/project.pbxproj:
1914
1915 2014-02-13  Anders Carlsson  <andersca@apple.com>
1916
1917         Disable XPC for plug-ins that need executable heap
1918         https://bugs.webkit.org/show_bug.cgi?id=128744
1919         <rdar://problem/15962958>
1920
1921         Reviewed by Dan Bernstein.
1922
1923         When switching to XPC for plug-ins, we accidentally broke the "feature"
1924         where plug-ins can ask for the heap to be executable. 
1925         
1926         This breaks Silverlight, so just disable XPC for any plug-ins that need this.
1927         <rdar://problem/16059483> tracks fixing this in the XPC service.
1928
1929         * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
1930         (WebKit::PluginProcessProxy::pluginNeedsExecutableHeap):
1931         Only return true for 32-bit plug-ins, since we don't know any 64-bit plug-ins
1932         that require this feature.
1933
1934         (WebKit::PluginProcessProxy::platformGetLaunchOptions):
1935         Set launchOptions.useXPC to false if launchOptions.executableHeap is true.
1936
1937 2014-02-12  Antti Koivisto  <antti@apple.com>
1938
1939         Return immediately from DestroyPlugin IPC call
1940         https://bugs.webkit.org/show_bug.cgi?id=128712
1941
1942         Reviewed by Anders Carlsson.
1943         
1944         In some cases we spend a lot of time waiting for synchronous IPC for plugin termination to complete. Reduce
1945         the delay by returning from IPC immediately when the plugin process receives it. Just using asynchrounous
1946         IPC might introduce undesirable arbitrary delay between the IPC call returning and the destruction actually
1947         starting.
1948
1949         * PluginProcess/WebProcessConnection.cpp:
1950         (WebKit::WebProcessConnection::destroyPlugin):
1951         * PluginProcess/WebProcessConnection.h:
1952         * PluginProcess/WebProcessConnection.messages.in:
1953
1954 2014-02-12  Anders Carlsson  <andersca@apple.com>
1955
1956         Pass the related page in the WebPageConfiguration struct
1957         https://bugs.webkit.org/show_bug.cgi?id=128714
1958
1959         Reviewed by Darin Adler.
1960
1961         * UIProcess/API/Cocoa/WKWebView.mm:
1962         (-[WKWebView initWithFrame:configuration:]):
1963         * UIProcess/API/ios/WKContentView.h:
1964         * UIProcess/API/ios/WKContentView.mm:
1965         (-[WKContentView initWithFrame:context:WebKit::configuration:WebKit::]):
1966
1967 2014-02-12  Anders Carlsson  <andersca@apple.com>
1968
1969         Add relatedWebView property to WKWebViewConfiguration
1970         https://bugs.webkit.org/show_bug.cgi?id=128707
1971
1972         Reviewed by Dan Bernstein.
1973
1974         * UIProcess/API/Cocoa/WKWebView.mm:
1975         (-[WKWebView initWithFrame:configuration:]):
1976         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1977         (-[WKWebViewConfiguration copyWithZone:]):
1978         (-[WKWebViewConfiguration relatedWebView]):
1979         (-[WKWebViewConfiguration setRelatedWebView:]):
1980         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h: Copied from Source/WebKit2/UIProcess/API/Cocoa/WKWebViewConfiguration.mm.
1981         * WebKit2.xcodeproj/project.pbxproj:
1982
1983 2014-02-12  Alexey Proskuryakov  <ap@apple.com>
1984
1985         [WK2] Add a C API to get WebCrypto master key from a client
1986         https://bugs.webkit.org/show_bug.cgi?id=128702
1987
1988         Reviewed by Anders Carlsson.
1989
1990         Added a new version of WKContextClient, with a function that returns the key.
1991
1992         * UIProcess/API/C/WKContext.h:
1993         * UIProcess/WebContextClient.cpp:
1994         (WebKit::WebContextClient::copyWebCryptoMasterKey):
1995         * UIProcess/WebContextClient.h:
1996         * UIProcess/WebPageProxy.cpp:
1997         (WebKit::WebPageProxy::wrapCryptoKey):
1998         (WebKit::WebPageProxy::unwrapCryptoKey):
1999         * UIProcess/mac/WebPageProxyMac.mm:
2000
2001 2014-02-12  Anders Carlsson  <andersca@apple.com>
2002
2003         Add destinationFrame property to WKNavigationAction
2004         https://bugs.webkit.org/show_bug.cgi?id=128700
2005
2006         Reviewed by Tim Horton.
2007
2008         * UIProcess/API/Cocoa/WKNavigationAction.h:
2009         * UIProcess/API/Cocoa/WKNavigationAction.mm:
2010         (-[WKNavigationAction destinationFrame]):
2011         (-[WKNavigationAction setDestinationFrame:]):
2012         * UIProcess/API/Cocoa/WKNavigationActionInternal.h:
2013         * UIProcess/Cocoa/NavigationState.mm:
2014         (WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):
2015
2016 2014-02-12  Anders Carlsson  <andersca@apple.com>
2017
2018         Forward declare WKNavigation in WKNavigationDelegate.h
2019         https://bugs.webkit.org/show_bug.cgi?id=128699
2020
2021         Reviewed by Tim Horton.
2022
2023         * UIProcess/API/Cocoa/WKNavigationDelegate.h:
2024
2025 2014-02-12  Anders Carlsson  <andersca@apple.com>
2026
2027         Expose scrollView on the WKWebView
2028         https://bugs.webkit.org/show_bug.cgi?id=128697
2029
2030         Reviewed by Dan Bernstein.
2031
2032         * UIProcess/API/Cocoa/WKWebView.h:
2033
2034 2014-02-12  Anders Carlsson  <andersca@apple.com>
2035
2036         Better iOS build fix.
2037
2038         * UIProcess/WebPageProxy.cpp:
2039         (WebKit::WebPageProxy::wrapCryptoKey):
2040         (WebKit::WebPageProxy::unwrapCryptoKey):
2041         Make these functions cross platform.
2042
2043         * UIProcess/mac/WebPageProxyMac.mm:
2044
2045 2014-02-12  Andy Estes  <aestes@apple.com>
2046
2047         Fix the iOS build after r163976
2048
2049         Moved WebPageProxy::{wrap,unwrap}CryptoKey() to a new file built by
2050         both Mac and iOS.
2051
2052         * UIProcess/Cocoa/WebPageProxyCocoa.mm: Added.
2053         (WebKit::WebPageProxy::wrapCryptoKey):
2054         (WebKit::WebPageProxy::unwrapCryptoKey):
2055         * UIProcess/mac/WebPageProxyMac.mm:
2056         * WebKit2.xcodeproj/project.pbxproj:
2057
2058 2014-02-12  Anders Carlsson  <andersca@apple.com>
2059
2060         Fix build.
2061
2062         * UIProcess/API/Cocoa/WKProcessClass.h:
2063
2064 2014-02-12  Benjamin Poulain  <bpoulain@apple.com>
2065
2066         [WK2][iOS] Add back the special viewport for the old xhtml mobile doctype
2067         https://bugs.webkit.org/show_bug.cgi?id=128639
2068
2069         Reviewed by Andreas Kling.
2070
2071         * WebProcess/WebCoreSupport/WebChromeClient.h:
2072         * WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
2073         (WebKit::WebChromeClient::didReceiveMobileDocType):
2074         * WebProcess/WebPage/WebPage.h:
2075         * WebProcess/WebPage/ios/WebPageIOS.mm:
2076         (WebKit::WebPage::didReceiveMobileDocType):
2077
2078 2014-02-12  Anders Carlsson  <andersca@apple.com>
2079
2080         WKProcessClass.h and WKNavigationResponse.h should be public headers
2081         https://bugs.webkit.org/show_bug.cgi?id=128683
2082
2083         Reviewed by Dan Bernstein.
2084
2085         * WebKit2.xcodeproj/project.pbxproj:
2086
2087 2014-02-12  Alexey Proskuryakov  <ap@apple.com>
2088
2089         Wrap WebCrypto keys in SerializedScriptValue
2090         https://bugs.webkit.org/show_bug.cgi?id=128680
2091
2092         Reviewed by Anders Carlsson.
2093
2094         Retrieve a master key (placeholder code for now), and use it to wrap key data.
2095
2096         * UIProcess/WebPageProxy.cpp:
2097         (WebKit::WebPageProxy::wrapCryptoKey):
2098         (WebKit::WebPageProxy::unwrapCryptoKey):
2099         * UIProcess/mac/WebPageProxyMac.mm:
2100         (WebKit::WebPageProxy::wrapCryptoKey):
2101         (WebKit::WebPageProxy::unwrapCryptoKey):
2102
2103 2014-02-12  Zan Dobersek  <zdobersek@igalia.com>
2104
2105         [CoordinatedGraphics] Move CoordinatedGraphicsScene, CoordinatedLayerTreeHostProxy to std::function
2106         https://bugs.webkit.org/show_bug.cgi?id=128473
2107
2108         Reviewed by Anders Carlsson.
2109
2110         Move the CoordinatedLayerTreeHostProxy class to using std::function instead of WTF::Functional. C++11
2111         lambdas are used to construct the update functions, with the CoordinatedGraphicsScene refcount-protected
2112         throughout the lifetime of the function wrapper.
2113
2114         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
2115         (WebKit::CoordinatedLayerTreeHostProxy::dispatchUpdate):
2116         (WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
2117         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
2118         (WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor):
2119         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2120
2121 2014-02-12  Dan Bernstein  <mitz@apple.com>
2122
2123         Stop using PLATFORM(MAC) in WebKit2/{Database,Network}Process except where it means “OS X but not iOS”
2124         https://bugs.webkit.org/show_bug.cgi?id=128659
2125
2126         Reviewed by Anders Carlsson.
2127
2128         * DatabaseProcess/DatabaseProcess.cpp:
2129         (WebKit::DatabaseProcess::createDatabaseToWebProcessConnection): Changed PLATFORM(MAC) to
2130         OS(DARWIN) around use of Mach-based IPC.
2131         Changed PLATFORM(MAC) to PLATFORM(COCOA) elsewhere in this file.
2132         * NetworkProcess/NetworkProcess.cpp: Ditto.
2133         (WebKit::NetworkProcess::NetworkProcess):
2134         (WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
2135         * NetworkProcess/NetworkProcess.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2136         * NetworkProcess/NetworkProcess.messages.in: Removed PLATFORM(MAC) guard around
2137         SetProcessSuppressionEnabled. Changed it to PLATFORM(COCOA) around SetQOS.
2138         * NetworkProcess/NetworkResourceLoader.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA)
2139         (WebKit::NetworkResourceLoader::continueWillSendRequest):
2140         * NetworkProcess/NetworkResourceLoader.h: Ditto.
2141         * NetworkProcess/RemoteNetworkingContext.h: Ditto, matching WebCore::NetworkingContext.
2142
2143 2014-02-11  Brent Fulgham  <bfulgham@apple.com>
2144
2145         Remove some unintended copies in ranged for loops
2146         https://bugs.webkit.org/show_bug.cgi?id=128644
2147
2148         Reviewed by Anders Carlsson.
2149
2150         * Shared/WebCrossThreadCopier.cpp:
2151         (WebCore::Vector<Vector<IDBKeyData>>>::copy): Each iteration copies a vector of
2152         vectors, 
2153         * Shared/mac/RemoteLayerBackingStore.mm:
2154         (RemoteLayerBackingStore::enumerateRectsBeingDrawn): Avoid copying a FloatRect
2155         on each iteration.
2156         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
2157         (WebKit::RemoteLayerTreePropertyApplier::applyPropertiesToLayer): Avoid copying
2158         a LayerProperty object each iteration.
2159         * UIProcess/GeolocationPermissionRequestManagerProxy.cpp:
2160         (WebKit::GeolocationPermissionRequestManagerProxy::invalidateRequests): Avoid
2161         copying a pair<int64_t, pointer> each iteration.
2162         * UIProcess/Notifications/NotificationPermissionRequestManagerProxy.cpp:
2163         (WebKit::NotificationPermissionRequestManagerProxy::invalidateRequests): Ditto
2164         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
2165         (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers): Ditto
2166         * UIProcess/WebContext.cpp:
2167         (WebKit::WebContext::postMessageToInjectedBundle): Avoid creating/destroying a
2168         RefPtr each loop iteration.
2169         * UIProcess/WebPageProxy.cpp:
2170         (WebKit::WebPageProxy::shouldStartTrackingTouchEvents): Avoid copying a WebPlatformTouchPoint
2171         object each cycle.
2172         * UIProcess/mac/RemoteLayerTreeHost.mm:
2173         (WebKit::RemoteLayerTreeHost::updateLayerTree): Avoid copying a pair each iteration.
2174         * UIProcess/mac/WindowServerConnection.mm:
2175         (WebKit::WindowServerConnection::WindowServerConnection): Avoid copying the struct
2176         of occlusionNotificationHandlers each iteration.
2177         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2178         (WebKit::WebIDBServerConnection::put): Avoid copying a vector-of-vectors each
2179         iteration.
2180         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
2181         (PlatformCALayerRemote::recursiveBuildTransaction): Avoid creating/destroying a
2182         RefPtr each loop iteration.
2183
2184 2014-02-12  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
2185
2186         Update the HTML Media Capture implementation.
2187         https://bugs.webkit.org/show_bug.cgi?id=118465
2188
2189         Reviewed by Darin Adler.
2190
2191         Make the implementation in WebKit compatible with the 2013-05-09
2192         version of the spec, which makes the "capture" attribute a boolean
2193         instead of an enum.
2194
2195         * Shared/WebOpenPanelParameters.cpp:
2196         (WebKit::WebOpenPanelParameters::capture): Return a bool.
2197         * Shared/WebOpenPanelParameters.h: Ditto.
2198         * UIProcess/API/C/WKOpenPanelParameters.cpp:
2199         (WKOpenPanelParametersCopyCapture): Deprecate, the implementation is
2200         incompatible with the current version of the spec.
2201         (WKOpenPanelParametersGetCaptureEnabled): Add and return a bool.
2202         * UIProcess/API/C/WKOpenPanelParameters.h:
2203
2204 2014-02-12  Alberto Garcia  <berto@igalia.com>
2205
2206         [GTK] Fails to build if configure is run with its absolute path
2207         https://bugs.webkit.org/show_bug.cgi?id=126693
2208
2209         Reviewed by Gustavo Noronha Silva.
2210
2211         When creating links to the WebKit2 headers in the source tree
2212         don't expect $(WebKit2) to be a relative path.
2213
2214         * GNUmakefile.am:
2215
2216 2014-02-11  Filip Pizlo  <fpizlo@apple.com>
2217
2218         JIT should be enabled (regression from addition of JIT enabled setting)
2219         https://bugs.webkit.org/show_bug.cgi?id=128653
2220
2221         Reviewed by Tim Horton.
2222
2223         * UIProcess/mac/WebContextMac.mm:
2224         (WebKit::registerUserDefaultsIfNeeded):
2225
2226 2014-02-11  Ryosuke Niwa  <rniwa@webkit.org>
2227
2228         Remove one of includes added in r163943 and r163939.
2229
2230         * WebProcess/WebPage/WebPage.h:
2231
2232 2014-02-11  Dan Bernstein  <mitz@apple.com>
2233
2234         <rdar://problem/16044438>: WebKit2.framework (with *Process.app) exists at the top level of the simulator
2235         https://bugs.webkit.org/show_bug.cgi?id=128650
2236
2237         Reviewed by Mark Rowe.
2238
2239         * Configurations/All-iOS.xcconfig: Removed this unused file.
2240         * Configurations/All.xcconfig: Set SKIP_INSTALL to YES for this aggregate target, so that
2241         its Copy Files build phase, intended only for engineering builds, doesn’t copy into the
2242         (wrong) install location.
2243
2244 2014-02-11  Ryosuke Niwa  <rniwa@webkit.org>
2245
2246         EFL build fix after r163919.
2247
2248         * WebProcess/WebPage/WebPage.h:
2249
2250 2014-02-11  Jaehun Lim  <ljaehun.lim@samsung.com>
2251
2252         Unreviewed build fix after r163919
2253
2254         WKGestureTypes.h needs PLATFORM(IOS) guard.
2255
2256         * WebProcess/WebPage/WebPage.h:
2257
2258 2014-02-11  Zalan Bujtas  <zalan@apple.com>
2259
2260         Subpixel rendering: Make GraphicsLayerClient::paintContents's clip rect subpixel based.
2261         https://bugs.webkit.org/show_bug.cgi?id=128460
2262
2263         Reviewed by Simon Fraser.
2264
2265         GraphicsClient::paintContents takes clipRect as FloatRect now so that we can paint on
2266         subpixel position.
2267
2268         No change in functionality.
2269
2270         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
2271         (WebKit::LayerTreeHostGtk::paintContents):
2272         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
2273         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2274         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2275         (WebKit::RemoteLayerTreeDrawingArea::paintContents):
2276         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2277         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2278         (WebKit::TiledCoreAnimationDrawingArea::paintContents):
2279
2280 2014-02-11  Sam Weinig  <sam@webkit.org>
2281
2282         [WebKit2, JSC] Add user default to disable the JIT
2283         https://bugs.webkit.org/show_bug.cgi?id=128643
2284
2285         Reviewed by Filip Pizlo.
2286
2287         * Shared/WebProcessCreationParameters.cpp:
2288         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
2289         (WebKit::WebProcessCreationParameters::encode):
2290         (WebKit::WebProcessCreationParameters::decode):
2291         * Shared/WebProcessCreationParameters.h:
2292         * UIProcess/mac/WebContextMac.mm:
2293         (WebKit::registerUserDefaultsIfNeeded):
2294         (WebKit::WebContext::platformInitializeWebProcess):
2295         * WebProcess/mac/WebProcessMac.mm:
2296         (WebKit::WebProcess::platformInitializeWebProcess):
2297
2298 2014-02-11  Ryosuke Niwa  <rniwa@webkit.org>
2299
2300         Frame::rectForSelection shouldn't instantiate FrameSelection
2301         https://bugs.webkit.org/show_bug.cgi?id=128587
2302
2303         Reviewed by Enrica Casucci.
2304
2305         * WebProcess/WebCoreSupport/WebEditorClient.h:
2306         * WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
2307
2308 2014-02-11  Enrica Casucci  <enrica@apple.com>
2309
2310         Support WebSelections in WK2 on iOS.
2311         https://bugs.webkit.org/show_bug.cgi?id=127015
2312         <rdar://problem/15211964>
2313
2314         Reviewed by Benjamin Poulain.
2315
2316         First step towards implementing block selections on iOS.
2317         The main logic is in rangeForWebSelectionAtPosition that
2318         decides whether we create a text or a block selection.
2319
2320         * Shared/ios/WKGestureTypes.h:
2321         * UIProcess/API/ios/WKInteractionView.mm:
2322         (toUIWKSelectionFlags):
2323         (selectionChangedWithGesture):
2324         * WebProcess/WebPage/WebPage.h:
2325         * WebProcess/WebPage/ios/WebPageIOS.mm:
2326         (WebKit::WebPage::rangeForWebSelectionAtPosition):
2327         (WebKit::WebPage::selectWithGesture):
2328         (WebKit::WebPage::getPositionInformation):
2329
2330 2014-02-10  Myles C. Maxfield  <mmaxfield@apple.com>
2331
2332         Convert position:sticky and position:fixed properties to position:static and position:absolute upon copy
2333         https://bugs.webkit.org/show_bug.cgi?id=128194
2334
2335         Reviewed by Simon Fraser.
2336
2337         * Shared/WebPreferencesStore.h:
2338         * UIProcess/API/C/WKPreferences.cpp:
2339         (WKPreferencesSetConvertPositionStyleOnCopy):
2340         (WKPreferencesGetConvertPositionStyleOnCopy):
2341         * UIProcess/API/C/WKPreferencesPrivate.h: Opt-in to new behavior
2342         * WebProcess/WebPage/WebPage.cpp:
2343         (WebKit::WebPage::updatePreferences):
2344
2345 2014-02-11  Benjamin Poulain  <bpoulain@apple.com>
2346
2347         [WK2] Rename screenToWindow to screenToRootView and windowToScreen to rootViewToScreen
2348         https://bugs.webkit.org/show_bug.cgi?id=128575
2349
2350         Reviewed by Darin Adler.
2351
2352         In WebKit2, screenToRootView and rootViewToScreen were named screenToWindow and windowToScreen.
2353         Those names were fine on ports were FrameView correspond to the scrollview, but they do not apply on iOS.
2354
2355         This patch renames screenToWindow and windowToScreen to their more generic WebCore counterpart.
2356
2357         * UIProcess/API/gtk/PageClientImpl.cpp:
2358         (WebKit::PageClientImpl::screenToRootView):
2359         (WebKit::PageClientImpl::rootViewToScreen):
2360         * UIProcess/API/gtk/PageClientImpl.h:
2361         * UIProcess/API/ios/PageClientImplIOS.h:
2362         * UIProcess/API/ios/PageClientImplIOS.mm:
2363         (WebKit::PageClientImpl::screenToRootView):
2364         (WebKit::PageClientImpl::rootViewToScreen):
2365         * UIProcess/API/mac/PageClientImpl.h:
2366         * UIProcess/API/mac/PageClientImpl.mm:
2367         (WebKit::PageClientImpl::screenToRootView):
2368         (WebKit::PageClientImpl::rootViewToScreen):
2369         * UIProcess/CoordinatedGraphics/WebView.cpp:
2370         (WebKit::WebView::screenToRootView):
2371         (WebKit::WebView::rootViewToScreen):
2372         * UIProcess/CoordinatedGraphics/WebView.h:
2373         * UIProcess/PageClient.h:
2374         * UIProcess/WebPageProxy.cpp:
2375         (WebKit::WebPageProxy::screenToRootView):
2376         (WebKit::WebPageProxy::rootViewToScreen):
2377         * UIProcess/WebPageProxy.h:
2378         * UIProcess/WebPageProxy.messages.in:
2379         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2380         (WebKit::WebChromeClient::screenToRootView):
2381         (WebKit::WebChromeClient::rootViewToScreen):
2382         * WebProcess/WebPage/WebPage.cpp:
2383         (WebKit::WebPage::screenToRootView):
2384         (WebKit::WebPage::rootViewToScreen):
2385         * WebProcess/WebPage/WebPage.h:
2386         * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
2387         (-[WKAccessibilityWebPageObject _convertScreenPointToRootView:]):
2388         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
2389
2390 2014-02-11  Andy Estes  <aestes@apple.com>
2391
2392         [Mac] connection:willStopBufferingData: no longer exists in NSURLConnectionDelegate
2393         https://bugs.webkit.org/show_bug.cgi?id=128583
2394
2395         Reviewed by Anders Carlsson.
2396
2397         The delegate method was removed in Snow Leopard.
2398
2399         * NetworkProcess/NetworkResourceLoader.cpp:
2400         * NetworkProcess/NetworkResourceLoader.h:
2401
2402 2014-02-11  Brady Eidson  <beidson@apple.com>
2403
2404         IndexedDB tests on some bots are flakey (timeouts)
2405         <rdar://problem/16038745> and https://bugs.webkit.org/show_bug.cgi?id=128612
2406
2407         Reviewed by Sam Weinig.
2408
2409         When messing with JSC VM’s and such, always use APIEntryShim instead of JSLockHolder.
2410         *ESPECIALLY* when dealing with multiple threads.
2411
2412         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2413         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite): 
2414         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex):
2415
2416 2014-02-11  Dan Bernstein  <mitz@apple.com>
2417
2418         Stop using PLATFORM(MAC) in WebKit2/Shared except where it means “OS X but not iOS”
2419         https://bugs.webkit.org/show_bug.cgi?id=128582
2420
2421         Reviewed by Darin Adler.
2422
2423         * Shared/API/c/WKContextMenuItem.cpp: Removed workaround for Mac Safari 6 compatibility.
2424         (WKContextMenuItemGetTag):
2425         * Shared/API/c/WKDeprecatedFunctions.cpp: Added && !PLATFORM(IOS), because these functions
2426         are not needed on iOS.
2427         * Shared/API/c/WKSharedAPICast.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2428         (WebKit::toAPI):
2429         (WebKit::toImpl):
2430         * Shared/APIObject.h: Ditto.
2431         * Shared/ChildProcess.cpp: Ditto.
2432         * Shared/ChildProcess.h: Changed PLATFORM(MAC) to PLATFORM(COCOA) around
2433         setApplicationIsDaemon and setQOS. Changed it to USE(APPKIT) around stopNSAppRunLoop.
2434         * Shared/CommandLine.h: Changed PLATFORM(MAC) to OS(UNIX) around parse().
2435         * Shared/DictionaryPopupInfo.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2436         (WebKit::DictionaryPopupInfo::encode):
2437         (WebKit::DictionaryPopupInfo::decode):
2438         * Shared/DictionaryPopupInfo.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2439         * Shared/Downloads/Download.h: Ditto.
2440         * Shared/DrawingAreaInfo.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2441         * Shared/FontInfo.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2442         (WebKit::FontInfo::encode):
2443         (WebKit::FontInfo::decode):
2444         * Shared/FontInfo.h: Ditto.
2445         * Shared/LayerTreeContext.h: Ditto.
2446         * Shared/NativeWebKeyboardEvent.h: Changed PLATFORM(MAC) to USE(APPKIT) around
2447         forward-declaration of NSView.
2448         * Shared/NativeWebMouseEvent.h: Ditto.
2449         * Shared/NativeWebWheelEvent.h: Ditto.
2450         * Shared/Network/CustomProtocols/Cocoa: Renamed from mac.
2451         * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerCocoa.mm: Renamed from CustomProtocolManagerMac.mm.
2452         * Shared/Network/CustomProtocols/Cocoa/CustomProtocolManagerMac.mm: Removed.
2453         * Shared/Network/CustomProtocols/CustomProtocolManager.h: Changed PLATFORM(MAC) to
2454         PLATFORM(COCOA).
2455         * Shared/Network/CustomProtocols/mac: Removed.
2456         * Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm: Removed.
2457         * Shared/PlatformPopupMenuData.cpp:  Changed PLATFORM(MAC) to PLATFORM(COCOA).
2458         (WebKit::PlatformPopupMenuData::encode):
2459         (WebKit::PlatformPopupMenuData::decode):
2460         * Shared/PlatformPopupMenuData.h: Ditto.
2461         * Shared/Plugins/Netscape/PluginInformation.cpp: Ditto.
2462         * Shared/Plugins/PluginModuleInfo.h: Ditto.
2463         * Shared/Plugins/PluginProcessCreationParameters.cpp: Ditto.
2464         (WebKit::PluginProcessCreationParameters::encode):
2465         (WebKit::PluginProcessCreationParameters::decode):
2466         * Shared/Plugins/PluginProcessCreationParameters.h: Ditto.
2467         * Shared/PrintInfo.h: Changed PLATFORM(MAC) to USE(APPKIT) around forward declaration of
2468         NSPrintInfo.
2469         * Shared/SandboxInitializationParameters.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2470         * Shared/TextCheckerState.h: Changed PLATFORM(MAC) to USE(APPKIT).
2471         * Shared/WebArchive.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
2472         * Shared/WebArchive.h: Ditto.
2473         * Shared/WebArchiveResource.cpp: Ditto.
2474         * Shared/WebArchiveResource.h: Ditto.
2475         * Shared/WebCoreArgumentCoders.cpp: Ditto.
2476         (IPC::ArgumentCoder<ResourceResponse>::encode):
2477         (IPC::ArgumentCoder<ResourceResponse>::decode):
2478         * Shared/WebCoreArgumentCoders.h: Ditto.
2479         * Shared/WebEvent.h: Ditto.
2480         * Shared/WebEventConversion.cpp: Ditto.
2481         (WebKit::WebKit2PlatformWheelEvent::WebKit2PlatformWheelEvent):
2482         * Shared/WebKit2Initialize.cpp: Ditto.
2483         (WebKit::InitializeWebKit2):
2484         * Shared/WebPageCreationParameters.cpp: Ditto.
2485         (WebKit::WebPageCreationParameters::encode):
2486         (WebKit::WebPageCreationParameters::decode):
2487         * Shared/WebPageCreationParameters.h: Ditto.
2488         * Shared/WebPreferencesStore.h: Ditto.
2489         * Shared/WebProcessCreationParameters.cpp: Ditto.
2490         (WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
2491         (WebKit::WebProcessCreationParameters::encode):
2492         (WebKit::WebProcessCreationParameters::decode):
2493         * Shared/WebProcessCreationParameters.h: Ditto.
2494         * Shared/WebWheelEvent.cpp: Ditto.
2495         (WebKit::WebWheelEvent::WebWheelEvent):
2496         (WebKit::WebWheelEvent::encode):
2497         (WebKit::WebWheelEvent::decode):
2498         * Shared/cf/ArgumentCodersCF.cpp: Changed PLATFORM(MAC) to USE(FOUNDATION).
2499         (IPC::decode):
2500         * Shared/mac/CommandLineMac.cpp: Removed.
2501         * Shared/mac/PDFKitImports.h: Removed PLATFORM(MAC)
2502         * Shared/posix: Added.
2503         * Shared/posix/CommandLinePOSIX.cpp: Renamed from mac/CommandLineMac.cpp and removed
2504         comment.
2505         * WebKit2.xcodeproj/project.pbxproj: Updated for moves and renames.
2506
2507 2014-02-11  Brady Eidson  <beidson@apple.com>
2508
2509         IDB: storage/indexeddb/mozilla/cursor-update-updates-indexes.html ASSERTs
2510         <rdar://problem/16034112> and https://bugs.webkit.org/show_bug.cgi?id=128581
2511
2512         Reviewed by Alexey Proskuryakov.
2513
2514         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2515         (WebKit::UniqueIDBDatabase::getRecordFromBackingStore): Always store keyPath for Index get results.
2516
2517 2014-02-11  Alberto Garcia  <berto@igalia.com>
2518
2519         O_CLOEXEC in shm_open does not work on FreeBSD
2520         https://bugs.webkit.org/show_bug.cgi?id=128572
2521
2522         Reviewed by Darin Adler.
2523
2524         The O_CLOEXEC is not supported by shm_open() and is also not
2525         necessary since FD_CLOEXEC is already set by default when the new
2526         file descriptor is created.
2527
2528         * Platform/unix/SharedMemoryUnix.cpp:
2529         (WebKit::SharedMemory::create):
2530
2531 2014-02-10  Commit Queue  <commit-queue@webkit.org>
2532
2533         Unreviewed, rolling out r163856.
2534         http://trac.webkit.org/changeset/163856
2535         https://bugs.webkit.org/show_bug.cgi?id=128585
2536
2537         The build fix depends on r163848, which has been reverted
2538         (Requested by notbenjamin on #webkit).
2539
2540         * UIProcess/ios/TextCheckerIOS.mm:
2541         (WebKit::TextChecker::checkTextOfParagraph):
2542         (WebKit::TextChecker::checkSpellingOfString):
2543         (WebKit::TextChecker::checkGrammarOfString):
2544
2545 2014-02-10  Alexey Proskuryakov  <ap@apple.com>
2546
2547         Add hooks for wrapping CryptoKeys in SerializedScriptValue
2548         https://bugs.webkit.org/show_bug.cgi?id=128567
2549
2550         Reviewed by Anders Carlsson.
2551
2552         * UIProcess/WebPageProxy.cpp:
2553         (WebKit::WebPageProxy::wrapCryptoKey):
2554         (WebKit::WebPageProxy::unwrapCryptoKey):
2555         * UIProcess/WebPageProxy.h:
2556         * UIProcess/WebPageProxy.messages.in:
2557         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2558         (WebKit::WebChromeClient::wrapCryptoKey):
2559         (WebKit::WebChromeClient::unwrapCryptoKey):
2560         * WebProcess/WebCoreSupport/WebChromeClient.h:
2561         Dummy implementation, to be filled in later.
2562
2563 2014-02-10  Dan Bernstein  <mitz@apple.com>
2564
2565         Stop using PLATFORM(MAC) in WebKit2/platform except where it means “OS X but not iOS”
2566         https://bugs.webkit.org/show_bug.cgi?id=128513
2567
2568         Reviewed by Dean Jackson.
2569
2570         * Platform/IPC/Connection.cpp:
2571         (IPC::Connection::waitForSyncReply): Changed PLATFORM(MAC) to PLATFORM(COCOA) around use of
2572         RunLoop::runForDuration, matching the guard around that function.
2573         * Platform/Logging.cpp: Deleted unused definition of logLevelString.
2574         * Platform/Module.cpp:
2575         (WebKit::Module::Module): Changed PLATFORM(MAC) to USE(CF).
2576         * Platform/Module.h: Changed PLATFORM(MAC) to USE(CF), since the “Mac” implementation is
2577         just a CFBundle-based implementation.
2578         * Platform/PlatformProcessIdentifier.h: Changed PLATFORM(MAC) to PLATFORM(COCOA). Arguably
2579         this should be OS(DARWIN) && !PLATFORM(EFL) && !PLATFORM(GTK).
2580         * Platform/cf: Added.
2581         * Platform/cf/ModuleCF.cpp: Renamed from Platform/mac/ModuleMac.mm. This file did not
2582         contain any Objective-C code.
2583         * Platform/foundation: Added.
2584         * Platform/foundation/LoggingFoundation.mm: Renamed from Platform/mac/Logging.mac.mm.
2585         * Platform/mac/Logging.mac.mm: Removed.
2586         * Platform/mac/ModuleMac.mm: Removed.
2587         * WebKit2.xcodeproj/project.pbxproj: Updated for renames.
2588
2589 2014-02-10  Commit Queue  <commit-queue@webkit.org>
2590
2591         Unreviewed, rolling out r163848.
2592         http://trac.webkit.org/changeset/163848
2593         https://bugs.webkit.org/show_bug.cgi?id=128580
2594
2595         Caused a lot of crashes on tests (Requested by ap on #webkit).
2596
2597         * Shared/APIString.h:
2598         * UIProcess/TextChecker.h:
2599         * UIProcess/WebPageProxy.cpp:
2600         (WebKit::WebPageProxy::checkTextOfParagraph):
2601         (WebKit::WebPageProxy::checkSpellingOfString):
2602         (WebKit::WebPageProxy::checkGrammarOfString):
2603         * UIProcess/mac/TextCheckerMac.mm:
2604         (WebKit::TextChecker::checkTextOfParagraph):
2605         (WebKit::TextChecker::checkSpellingOfString):
2606         (WebKit::TextChecker::checkGrammarOfString):
2607
2608 2014-02-10  Brady Eidson  <beidson@apple.com>
2609
2610         IDB: storage/indexeddb/mozilla/object-store-inline-autoincrement-key-added-on-put.html fails
2611         <rdar://problem/16033286> and https://bugs.webkit.org/show_bug.cgi?id=128574
2612
2613         Reviewed by Maciej Stachowiak.
2614
2615         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2616         (WebKit::UniqueIDBDatabase::getRecordFromBackingStore): If there is no value in an object-store get,
2617           don’t return *any* results.
2618
2619 2014-02-10  Benjamin Poulain  <bpoulain@apple.com>
2620
2621         Fix the iOS build after r163848
2622
2623         * UIProcess/ios/TextCheckerIOS.mm:
2624         (WebKit::TextChecker::checkTextOfParagraph):
2625         (WebKit::TextChecker::checkSpellingOfString):
2626         (WebKit::TextChecker::checkGrammarOfString):
2627
2628 2014-02-10  Brady Eidson  <beidson@apple.com>
2629
2630         IDB: storage/indexeddb/mozilla/indexes.html fails
2631         <rdar://problem/16031590> and https://bugs.webkit.org/show_bug.cgi?id=128563
2632
2633         Reviewed by Tim Horton.
2634
2635         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2636         (WebKit::UniqueIDBDatabase::getRecordFromBackingStore): Pass the cursor type to the backing store.
2637
2638         * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
2639         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2640         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::getIndexRecord): If it’s a key-only cursor,
2641           return only the key result.
2642         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
2643
2644         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
2645         (WebKit::getIndexStatement): Fix index statement selection so ascending, unique cursors sort correctly.
2646
2647 2014-02-10  Anders Carlsson  <andersca@apple.com>
2648
2649         Remove a couple of deprecatedCharacters() from WebKit2
2650         https://bugs.webkit.org/show_bug.cgi?id=128569
2651
2652         Reviewed by Andreas Kling.
2653
2654         * Shared/APIString.h:
2655         * UIProcess/TextChecker.h:
2656         * UIProcess/WebPageProxy.cpp:
2657         (WebKit::WebPageProxy::checkTextOfParagraph):
2658         (WebKit::WebPageProxy::checkSpellingOfString):
2659         (WebKit::WebPageProxy::checkGrammarOfString):
2660         * UIProcess/mac/TextCheckerMac.mm:
2661         (WebKit::TextChecker::checkTextOfParagraph):
2662         (WebKit::TextChecker::checkSpellingOfString):
2663         (WebKit::TextChecker::checkGrammarOfString):
2664
2665 2014-02-10  Filip Pizlo  <fpizlo@apple.com>
2666
2667         Rename Operations.h to JSCInlines.h
2668         https://bugs.webkit.org/show_bug.cgi?id=128543
2669
2670         Rubber stamped by Geoffrey Garen.
2671
2672         * Shared/linux/WebMemorySamplerLinux.cpp:
2673         * UIProcess/WebContext.cpp:
2674         * WebProcess/WebPage/WebPage.cpp:
2675         * WebProcess/efl/WebProcessMainEfl.cpp:
2676
2677 2014-02-10  Benjamin Poulain  <bpoulain@apple.com>
2678
2679         [WK2] Add support for image document viewport configuration
2680         https://bugs.webkit.org/show_bug.cgi?id=128565
2681
2682         Reviewed by Simon Fraser.
2683
2684         * UIProcess/API/ios/PageClientImplIOS.mm:
2685         (WebKit::PageClientImpl::screenToWindow):
2686         (WebKit::PageClientImpl::windowToScreen):
2687         Add the implementation for ImageDocument.
2688
2689         * WebProcess/WebPage/WebPage.cpp:
2690         (WebKit::WebPage::didCommitLoad):
2691         Use the right default settings when dealing with image documents.
2692
2693 2014-02-10  Simon Fraser  <simon.fraser@apple.com>
2694
2695         Show a debug tile map indicator for UI-side compositing
2696         https://bugs.webkit.org/show_bug.cgi?id=128553
2697
2698         Reviewed by Tim Horton.
2699         
2700         Implement a tiled scrolling indicator for UI-side compositing.
2701         
2702         The indicator is created by making another RemoteLayerTreeHost,
2703         and decoding the transaction in it a second time to create a cloned
2704         layer tree. In that clone commit, we modify some layer properties to
2705         make things easier to see.
2706         
2707         The cloned layer tree is hosted in the root layer of the main
2708         RemoteLayerTreeHost.
2709         
2710         RemoteLayerTreeHost was changed to not need a pointer to the WebPageProxy,
2711         which it only used in the "root layer changed" case; instead, it now just
2712         returns a bool from updateLayerTree() in that situation.
2713
2714         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp: Explanatory comment.
2715         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
2716         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
2717         (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
2718         (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
2719         (WebKit::RemoteLayerTreeDrawingAreaProxy::setExposedRect):
2720         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation):
2721         (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicatorPosition):
2722         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorScale):
2723         (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):
2724         (WebKit::RemoteLayerTreeDrawingAreaProxy::showDebugIndicator):
2725         * UIProcess/mac/RemoteLayerTreeHost.h:
2726         (WebKit::RemoteLayerTreeHost::rootLayer):
2727         (WebKit::RemoteLayerTreeHost::setIsDebugLayerTreeHost):
2728         (WebKit::RemoteLayerTreeHost::isDebugLayerTreeHost):
2729         * UIProcess/mac/RemoteLayerTreeHost.mm:
2730         (WebKit::RemoteLayerTreeHost::RemoteLayerTreeHost):
2731         (WebKit::RemoteLayerTreeHost::updateLayerTree):
2732         (WebKit::RemoteLayerTreeHost::createLayer):
2733
2734 2014-02-10  Simon Fraser  <simon.fraser@apple.com>
2735
2736         Put a delegatesScrolling flag on WebPageProxy so that the UI process knows when scrolling is delegated
2737         https://bugs.webkit.org/show_bug.cgi?id=128429
2738
2739         Reviewed by Sam Weinig.
2740         
2741         Add delegatesScrolling() which defaults to false, but is set to true for iOS
2742         by WKContentView.
2743
2744         * UIProcess/API/ios/WKContentView.mm:
2745         (-[WKContentView initWithFrame:configuration:]):
2746         (-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
2747         * UIProcess/WebPageProxy.cpp:
2748         (WebKit::WebPageProxy::WebPageProxy):
2749         * UIProcess/WebPageProxy.h:
2750         (WebKit::WebPageProxy::setDelegatesScrolling):
2751         (WebKit::WebPageProxy::delegatesScrolling):
2752
2753 2014-02-10  Gavin Barraclough  <barraclough@apple.com>
2754
2755         Remove WKPageSetVisibilityState
2756         https://bugs.webkit.org/show_bug.cgi?id=128551
2757
2758         Reviewed by Anders Carlsson.
2759
2760         Made prerender state automatic. We should move this further
2761         up into WebCore, but this requires refactoring for the Page
2762         construction order.
2763
2764         * Shared/API/c/WKDeprecatedFunctions.cpp:
2765         (WKPageSetVisibilityState):
2766             - deprecated.
2767         * UIProcess/API/C/WKPage.cpp:
2768             - removed WKPageSetVisibilityState.
2769         * UIProcess/API/C/WKPage.h:
2770             - removed WKPageSetVisibilityState.
2771         * UIProcess/WebPageProxy.cpp:
2772             - removed setVisibilityStatePrerender.
2773         * UIProcess/WebPageProxy.h:
2774             - removed setVisibilityStatePrerender.
2775         * WebProcess/WebPage/WebPage.cpp:
2776         (WebKit::WebPage::WebPage):
2777             - removed setVisibilityStatePrerender.
2778             - When creating a Page, automatically set the prerender state.
2779         * WebProcess/WebPage/WebPage.h:
2780             - removed setVisibilityStatePrerender.
2781         * WebProcess/WebPage/WebPage.messages.in:
2782             - removed SetVisibilityStatePrerender.
2783
2784 2014-02-10  Brady Eidson  <beidson@apple.com>
2785
2786         IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails
2787         <rdar://problem/16029319> and https://bugs.webkit.org/show_bug.cgi?id=128487
2788
2789         Missed one piece of review feedback before landing.
2790
2791         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2792         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite):
2793
2794 2014-02-10  Brady Eidson  <beidson@apple.com>
2795
2796         IDB: storage/indexeddb/mozilla/object-store-remove-values.html fails
2797         <rdar://problem/16029319> and https://bugs.webkit.org/show_bug.cgi?id=128487
2798
2799         Reviewed by Tim Horton.
2800
2801         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
2802         (WebKit::DatabaseProcessIDBConnection::disconnectedFromWebProcess):
2803         (WebKit::DatabaseProcessIDBConnection::getOrEstablishIDBDatabaseMetadata): Update logging.
2804         (WebKit::DatabaseProcessIDBConnection::deleteDatabase): If deleteDatabase succeeds,
2805           also disconnect from the UniqueIDBDatabase so it can be cleaned up properly.
2806         (WebKit::DatabaseProcessIDBConnection::close): New message from the WebProcess to handle
2807           clean closures.
2808         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
2809         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
2810
2811         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2812         (WebKit::UniqueIDBDatabase::shutdown): Move most of the cleanup to didShutdownBackingStore.
2813         (WebKit::UniqueIDBDatabase::didShutdownBackingStore): Execute all remaining mainThreadTasks
2814           (as they represent real results from the backing store thread). 
2815         (WebKit::UniqueIDBDatabase::deleteDatabase): Add an ASSERT.
2816         (WebKit::UniqueIDBDatabase::performNextMainThreadTask): Call through to performNextMainThreadTaskWithoutAdoptRef.
2817         (WebKit::UniqueIDBDatabase::performNextMainThreadTaskWithoutAdoptRef): Execute a task,
2818           returning true if there are more tasks left to execute.
2819         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
2820
2821         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2822         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::~UniqueIDBDatabaseBackingStoreSQLite): Properly
2823           handle JSC cleanup.
2824
2825         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2826         (WebKit::WebIDBServerConnection::close): Implement this.
2827
2828 2014-02-10  Benjamin Poulain  <bpoulain@apple.com>
2829
2830         [iOS][WK2] Add empty definition for an API allowing clients to define obscured edges over the scrollview
2831         https://bugs.webkit.org/show_bug.cgi?id=128396
2832
2833         Reviewed by Simon Fraser.
2834
2835         ObscuredInset defines the area of the scrollview unusable for positioning content.
2836         The API is unused in this patch.
2837
2838         * UIProcess/API/Cocoa/WKViewPrivate.h:
2839         * UIProcess/API/Cocoa/WKWebView.mm:
2840         (-[WKWebView _obscuredInset]):
2841         (-[WKWebView _setObscuredInset:]):
2842         (-[WKWebView _commitObscuredInset]):
2843         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
2844         * UIProcess/API/ios/WKViewIOS.mm:
2845         (-[WKView _obscuredInset]):
2846         (-[WKView _setObscuredInset:]):
2847         (-[WKView _commitObscuredInset]):
2848
2849 2014-02-10  Martin Hock  <mhock@apple.com>
2850
2851         Add API for accessing session ephemerality from a page bundle
2852         https://bugs.webkit.org/show_bug.cgi?id=128410
2853
2854         Reviewed by Alexey Proskuryakov.
2855
2856         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2857         (WKBundlePageIsUsingEphemeralSession):
2858         * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2859         * WebProcess/WebPage/WebPage.cpp:
2860         (WebKit::WebPage::isUsingEphemeralSession):
2861         * WebProcess/WebPage/WebPage.h:
2862
2863 2014-02-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2864
2865         [GTK] Create the inspector view using the same web process as the inspected page
2866         https://bugs.webkit.org/show_bug.cgi?id=128539
2867
2868         Reviewed by Martin Robinson.
2869
2870         * UIProcess/API/C/gtk/WKView.cpp:
2871         (WKViewCreate): Pass nullptr as the related page.
2872         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2873         (webkitWebViewBaseCreate): Add related page argument and pass it
2874         to webkitWebViewBaseCreateWebPage() instead of nullptr.
2875         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
2876         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
2877         (WebKit::WebInspectorProxy::platformCreateInspectorPage): Pass
2878         m_page as related page to webkitWebViewBaseCreate().
2879
2880 2014-02-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2881
2882         [GLIB] Add GUniqueOutPtr and use it instead of GOwnPtr
2883         https://bugs.webkit.org/show_bug.cgi?id=127554
2884
2885         Reviewed by Gustavo Noronha Silva.
2886
2887         Use GUniqueOutPtr instead of GOwnPtr.
2888
2889         * NetworkProcess/soup/NetworkProcessSoup.cpp:
2890         (WebKit::getCacheDiskFreeSize):
2891         * Shared/Downloads/soup/DownloadSoup.cpp:
2892         (WebKit::DownloadClient::didReceiveResponse):
2893         (WebKit::DownloadClient::didReceiveData):
2894         (WebKit::DownloadClient::didFinishLoading):
2895         * UIProcess/API/gtk/WebKitFaviconDatabase.cpp:
2896         (processPendingIconsForPageURL):
2897         (webkit_favicon_database_get_favicon):
2898         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
2899         (webkitURISchemeRequestReadCallback):
2900         * UIProcess/API/gtk/WebKitWebView.cpp:
2901         (gotFaviconCallback):
2902         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
2903         (WebKit::WebInspectorServer::platformResourceForPath):
2904         * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
2905         (WebKit::ProcessLauncher::launchProcess):
2906         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
2907         (WebKit::PluginProcessProxy::scanPlugin):
2908         * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
2909         * WebProcess/soup/WebProcessSoup.cpp:
2910         (WebKit::getCacheDiskFreeSize):
2911
2912 2014-02-10  Tim Horton  <timothy_horton@apple.com>
2913
2914         [iOS][wk2] WebKit2 View Gestures (Swipe): Forward swipe gesture 
2915         https://bugs.webkit.org/show_bug.cgi?id=128523
2916         <rdar://problem/16020378>
2917
2918         Reviewed by Darin Adler.
2919
2920         We can't install the gesture recognizer on a view that's going to be
2921         reparented during the swipe, because the gesture will be cancelled.
2922         Install the recognizer on the WKView and move the WKView's scrollview
2923         child around instead.
2924
2925         * UIProcess/API/ios/WKViewIOS.mm:
2926         (-[WKView setAllowsBackForwardNavigationGestures:]):
2927         We'll install the gesture recognizer on the WKView, but swipe the scrollview.
2928
2929         * UIProcess/ios/ViewGestureControllerIOS.mm:
2930         (-[WKSwipeTransitionController initWithViewGestureController:gestureRecognizerView:]):
2931         Clarify that WKSwipeTransitionController gets handed only the view to install the gesture recognizer on.
2932         (-[WKSwipeTransitionController gestureRecognizerForInteractiveTransition:WithTarget:action:]):
2933         Use public enum values so we can get rid of one private header.
2934
2935         (WebKit::ViewGestureController::installSwipeHandler):
2936         Separate out the gesture recognizer view from the one that gets swiped.
2937
2938         (WebKit::ViewGestureController::beginSwipeGesture):
2939         Record a snapshot before beginning the swipe. This is important for the back-then-forward
2940         swipe case, and matches the behavior of the Mac implementation.
2941
2942         (WebKit::ViewGestureController::endSwipeGesture):
2943         * UIProcess/mac/ViewGestureController.h:
2944         Slight geometry adjustments due to the change in targetted view.
2945
2946 2014-02-10  Filip Pizlo  <fpizlo@apple.com>
2947
2948         JSC environment variables should override other mechanisms for setting options
2949         https://bugs.webkit.org/show_bug.cgi?id=128511
2950
2951         Reviewed by Geoffrey Garen.
2952
2953         * WebProcess/mac/WebProcessMac.mm:
2954         (WebKit::WebProcess::platformInitializeWebProcess):
2955
2956 2014-02-10  Carlos Garcia Campos  <cgarcia@igalia.com>
2957
2958         [GTK] Add API to create a webview related to another one
2959         https://bugs.webkit.org/show_bug.cgi?id=128498
2960
2961         Reviewed by Gustavo Noronha Silva.
2962
2963         Add webkit_web_view_new_with_related_view() to create a new
2964         WebView sharing the same web process as the given one.
2965
2966         * UIProcess/API/gtk/WebKitWebContext.cpp:
2967         (webkitWebContextCreatePageForWebView): Use the given related
2968         WebView to pass a related WebPageProxy to webkitWebViewBaseCreateWebPage().
2969         * UIProcess/API/gtk/WebKitWebContextPrivate.h:
2970         * UIProcess/API/gtk/WebKitWebView.cpp:
2971         (webkitWebViewConstructed): Pass the related web view to webkitWebContextCreatePageForWebView().
2972         (webkitWebViewSetProperty):
2973         (webkit_web_view_class_init): Add related-view construct-only property.
2974         (webkit_web_view_new_with_related_view): New public method to
2975         create a web view with a related one.
2976         * UIProcess/API/gtk/WebKitWebView.h:
2977         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
2978         (webkitWebViewBaseCreate): Pass nullptr as related page to webkitWebViewBaseCreateWebPage().
2979         (webkitWebViewBaseCreateWebPage): Use the given related
2980         WebPageProxy to initialize the web page configuration.
2981         * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
2982         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
2983
2984 2014-02-10  Lukasz Bialek  <l.bialek@samsung.com>
2985
2986         [EFL] Spelling unit tests should use ecore_main_loop_iterate()
2987         https://bugs.webkit.org/show_bug.cgi?id=127427
2988
2989         Reviewed by Gyuyoung Kim.
2990
2991         r148670 gets rid of EFL's idlers in a favor of timers to load languages.
2992         ecore_main_loop_iterate() can be used now.
2993
2994         Add function that loads spellchecking languages and waits for loading
2995         to be finished:
2996         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:
2997         (EWK2UnitTest::EWK2UnitTestBase::waitForLanguageLoading):
2998         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
2999
3000         Apply added function to tests that should wait for languages to be loaded:
3001         * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
3002         (EWK2TextCheckerTest::resetCallbacksExecutionStats):
3003         (TEST_F):
3004
3005 2014-02-09  Carlos Garnacho  <carlosg@gnome.org>
3006
3007         [GTK] Implement support touch events
3008         https://bugs.webkit.org/show_bug.cgi?id=98931
3009
3010         Reviewed by Carlos Garcia Campos.
3011
3012         In GTK+ >= 3.4.0, GdkEventTouch is available to inform about multitouch events. Use these to implement
3013         touch events on this platform. If a touch is left unhandled and is the "pointer emulating" one, mouse
3014         events will be generated as a fallback.
3015
3016         * GNUmakefile.list.am:
3017         * PlatformGTK.cmake:
3018         * Shared/gtk/NativeWebTouchEventGtk.cpp:
3019         * Shared/NativeWebTouchEvent.h:
3020         (WebKit::NativeWebTouchEvent::nativeEvent):
3021         (WebKit::NativeWebTouchEvent::touchContext): Add GTK+ implementation of NativeWebTouchEvent.
3022         * Shared/gtk/WebEventFactory.cpp:
3023         (WebKit::touchPhaseFromEvents):
3024         (WebKit::WebEventFactory::createWebTouchEvent): Add methods to generate WebTouchEvents out
3025         of GdkEventTouch events, a GtkTouchContextHelper object is used to hold information about all current
3026         touches, in order to build information about all individual touchpoints.
3027         * Shared/gtk/WebEventFactory.h:
3028         * UIProcess/API/gtk/PageClientImpl.cpp:
3029         (WebKit::PageClientImpl::doneWithTouchEvent): Implement pointer emulation. If a touch event was unhandled
3030         in DOM and pertains to the touch sequence that emulates pointer events. The event gets transformed to its
3031         mouse event counterpart and handled by the widget again.
3032         * UIProcess/API/gtk/PageClientImpl.h:
3033         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3034         (webkitWebViewBaseRealize): Listen for touch events
3035         (webkitWebViewBaseTouchEvent):
3036         (webkit_web_view_base_class_init): Add implementation for the touch_events() handler, this merely
3037         lets the pageProxy handle the NativeWebTouchEvent we create to wrap the GdkEvent received.
3038
3039 2014-02-09  Commit Queue  <commit-queue@webkit.org>
3040
3041         Unreviewed, rolling out r162768.
3042         http://trac.webkit.org/changeset/162768
3043         https://bugs.webkit.org/show_bug.cgi?id=128495
3044
3045         Causes crashes on GTK WK2 in three fast/forms tests.
3046         (Requested by zdobersek on #webkit).
3047
3048         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
3049         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
3050
3051 2014-02-08  Brady Eidson  <beidson@apple.com>
3052
3053         IDB: storage/indexeddb/mozilla/object-cursors.html fails
3054         <rdar://problem/16020585> and https://bugs.webkit.org/show_bug.cgi?id=128479
3055
3056         Reviewed by Dan Bernstein.
3057
3058         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
3059         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata): Update the IndexInfo
3060           table schema to allow for indexes with the same id/name as previous indexes.
3061           But with different object stores, of course.
3062
3063 2014-02-08  Brady Eidson  <beidson@apple.com>
3064
3065         IDB: storage/indexeddb/mozilla/index-prev-no-duplicate.html fails
3066         <rdar://problem/16018918> and https://bugs.webkit.org/show_bug.cgi?id=128444
3067
3068         Reviewed by Dan Bernstein.
3069
3070         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
3071         (WebKit::getIndexStatement): Return different statements for unique cursors that will
3072           sort the values in reverse of the cursor direction, matching expected IndexedDB behavior.
3073         (WebKit::SQLiteIDBCursor::establishStatement):
3074
3075         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
3076         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::uncheckedPutIndexRecord): Insert the values as
3077           strings since we need the collation function to be called for proper sorting.
3078
3079 2014-02-08  Ryosuke Niwa  <rniwa@webkit.org>
3080
3081         Cleanup the interface of FrameSelection
3082         https://bugs.webkit.org/show_bug.cgi?id=128481
3083
3084         Reviewed by Andreas Kling.
3085
3086         * WebProcess/WebPage/FindController.cpp:
3087         (WebKit::FindController::getFindIndicatorBitmapAndRect):
3088         (WebKit::FindController::drawRect):
3089         * WebProcess/WebPage/WebPage.cpp:
3090         (WebKit::WebPage::scaledSnapshotWithOptions):
3091
3092 2014-02-08  Brady Eidson  <beidson@apple.com>
3093
3094         IDB: storage/indexeddb/mozilla/cursors.html fails
3095         <rdar://problem/16017998> and https://bugs.webkit.org/show_bug.cgi?id=128423
3096
3097         Reviewed by Dan Bernstein.
3098
3099         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
3100         (WebKit::SQLiteIDBCursor::internalAdvanceOnce): Store the primary key for object store cursors.
3101         (WebKit::SQLiteIDBCursor::iterate): We’re not supposed to check for equality to the target key.
3102           Depending on the direction of the cursor we should check for the next highest or next lowest key.
3103
3104 2014-02-08  Dan Bernstein  <mitz@apple.com>
3105
3106         Remove client-drawn highlights (-webkit-highlight, WebHTMLHighlighter)
3107         https://bugs.webkit.org/show_bug.cgi?id=128456
3108
3109         Reviewed by Anders Carlsson.
3110
3111         * WebProcess/WebCoreSupport/WebChromeClient.cpp: Removed customHighlightRect and
3112         paintCustomHighlight.
3113         * WebProcess/WebCoreSupport/WebChromeClient.h:
3114
3115 2014-02-08  Darin Adler  <darin@apple.com>
3116
3117         Change TextIterator to use StringView, preparing to wean it from deprecatedCharacters
3118         https://bugs.webkit.org/show_bug.cgi?id=128233
3119
3120         Reviewed by Anders Carlsson.
3121
3122         * WebProcess/InjectedBundle/API/mac/WKDOMTextIterator.mm:
3123         (-[WKDOMTextIterator currentTextPointer]): Call TextIterator::deprecatedTextIteratorCharacters.
3124
3125         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
3126         (WebKit::WebEditorClient::checkSpellingOfString): Use StringView.
3127         (WebKit::WebEditorClient::checkGrammarOfString): Ditto.
3128         * WebProcess/WebCoreSupport/WebEditorClient.h: Ditto.
3129
3130 2014-02-08  Piotr Grad  <p.grad@samsung.com>
3131
3132         [GTK] Build break in WebKitWebViewBase.cpp::webkitWebViewBaseCreateWebPage
3133         https://bugs.webkit.org/show_bug.cgi?id=128449
3134
3135         Reviewed by Carlos Garcia Campos.
3136
3137         Parameter passed to context->createWebPage was inproper.
3138
3139         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3140         (webkitWebViewBaseCreateWebPage):
3141
3142 2014-02-08  Dan Bernstein  <mitz@apple.com>
3143
3144         Font size-related preference values should be CGFloats backed by doubles
3145         https://bugs.webkit.org/show_bug.cgi?id=128445
3146
3147         Reviewed by Filip Pizlo.
3148
3149         * Shared/WebPreferencesStore.h: Changed minimumFontSize, minimumLogicalFontSize,
3150         defaultFontSize, and defaultFixedFontSize into double-value preferences.
3151         * UIProcess/API/Cocoa/WKPreferences.h: Changed minimumFontSize into CGFloat.
3152         * UIProcess/API/Cocoa/WKPreferences.mm:
3153         (-[WKPreferences minimumFontSize]): Changed return type.
3154         (-[WKPreferences setMinimumFontSize:]): Changed parameter type.
3155         * WebProcess/WebPage/WebPage.cpp:
3156         (WebKit::WebPage::updatePreferences): Changed to use double getters.
3157
3158 2014-02-08  Adrian Perez de Castro  <aperez@igalia.com>
3159
3160         [GTK] Make process model names properly meaningful
3161         https://bugs.webkit.org/show_bug.cgi?id=128389
3162
3163         Reviewed by Carlos Garcia Campos.
3164
3165         The name WEBKIT_PROCESS_MODEL_ONE_SECONDARY_PROCESS_PER_WEB_VIEW
3166         is misleading because there are situations in which web views may
3167         share the same web process even when multi-process mode is enabled;
3168         for example when opening a related view and both interact using JS.
3169
3170         * UIProcess/API/gtk/WebKitWebContext.cpp:
3171         (webkit_web_context_set_process_model):
3172         (webkit_web_context_get_process_model):
3173         Update names of WebKitProcessModel enum values.
3174         * UIProcess/API/gtk/WebKitWebContext.h:
3175         Ditto.
3176
3177 2014-02-08  Piotr Grad  <p.grad@samsung.com>
3178
3179         [GTK] Build break in WebKitSettings
3180         https://bugs.webkit.org/show_bug.cgi?id=128446
3181
3182         Reviewed by Ryosuke Niwa.
3183
3184         Argument for WebPreferences::create was missing
3185
3186         * UIProcess/API/gtk/WebKitSettings.cpp:
3187         (_WebKitSettingsPrivate::_WebKitSettingsPrivate):
3188
3189 2014-02-07  Jinwoo Song  <jinwoo7.song@samsung.com>
3190
3191         Unreviewed EFL WebKit2 build fix after r163671.
3192
3193         * UIProcess/CoordinatedGraphics/WebView.cpp:
3194         (WebKit::WebView::WebView): Use WebPageConfiguration in creating WebPage.
3195
3196 2014-02-07  Gavin Barraclough  <barraclough@apple.com>
3197
3198         Add better comments to code that boosts the NetworkProcess
3199         https://bugs.webkit.org/show_bug.cgi?id=128431
3200
3201         Rubber stamped by Tim Horton
3202
3203         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
3204         (WebKit::XPCServiceEventHandler):
3205         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
3206         (WebKit::XPCServiceEventHandler):
3207         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
3208         (WebKit::connectToService):
3209
3210 2014-02-07  Tim Horton  <timothy_horton@apple.com>
3211
3212        Build fix.
3213
3214         * UIProcess/API/ios/WKContentView.mm:
3215         (-[WKContentView initWithFrame:configuration:]):
3216
3217 2014-02-07  Anders Carlsson  <andersca@apple.com>
3218
3219         Pass the preferences through from the WKWebViewConfiguration object
3220         https://bugs.webkit.org/show_bug.cgi?id=128430
3221
3222         Reviewed by Tim Horton.
3223
3224         * UIProcess/API/Cocoa/WKPreferences.h:
3225         * UIProcess/API/Cocoa/WKPreferences.mm:
3226         (-[WKPreferences init]):
3227         Don't return nil if [super init] returns a valid object.
3228
3229         (-[WKPreferences minimumFontSize]):
3230         (-[WKPreferences setMinimumFontSize:]):
3231         Change this property to be unsigned.
3232
3233         * UIProcess/API/Cocoa/WKPreferencesInternal.h:
3234         Use @package.
3235
3236         * UIProcess/API/Cocoa/WKWebView.mm:
3237         (-[WKWebView initWithFrame:configuration:]):
3238         Set up a WebKit::WebPageConfiguration and use the new -[WKView initWithFrame:context:configuration:] method.
3239
3240         * UIProcess/API/ios/WKContentView.mm:
3241         (-[WKContentView initWithFrame:configuration:]):
3242         Set the preferences.
3243
3244         * UIProcess/API/mac/WKView.mm:
3245         (-[WKView initWithFrame:context:configuration:]):
3246         Add a new initializer that takes a WebContext and a WebPageConfiguration.
3247
3248         (-[WKView _registerDraggedTypes]):
3249         This shouldn't be in the private category.
3250         
3251         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
3252         Call the new initializer.
3253
3254         * UIProcess/API/mac/WKViewInternal.h:
3255
3256 2014-02-07  Tim Horton  <timothy_horton@apple.com>
3257
3258         Fix the WebKit2 build after r163671.
3259
3260         * UIProcess/API/ios/WKContentView.mm:
3261         (-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
3262
3263 2014-02-07  Gavin Barraclough  <barraclough@apple.com>
3264
3265         Remove isInitialState flag from Page::setViewState
3266         https://bugs.webkit.org/show_bug.cgi?id=128428
3267
3268         Reviewed by Sam Weinig.
3269
3270         * WebProcess/WebPage/WebPage.cpp:
3271         (WebKit::WebPage::WebPage):
3272             - don't pass isInitialState to setViewState.
3273         (WebKit::WebPage::reinitializeWebPage):
3274             - if the viewState changes this should fire a visibility event.
3275         (WebKit::WebPage::setViewState):
3276             - merged with setViewStateInternal.
3277         * WebProcess/WebPage/WebPage.h:
3278             - removed setViewStateInternal.
3279
3280 2014-02-07  Simon Fraser  <simon.fraser@apple.com>
3281
3282         Encode requestedScrollPosition on ScrollingStateScrollingNodes to send to the UI process
3283         https://bugs.webkit.org/show_bug.cgi?id=128416
3284
3285         Reviewed by Tim Horton.
3286         
3287         Encode and decode requestedScrollPosition() and requestedScrollPositionRepresentsProgrammaticScroll(),
3288         which can't use the macros because the setter takes both arguments.
3289         
3290         The UI process needs this to notice programmatic scrolls.
3291
3292         * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
3293         (ArgumentCoder<ScrollingStateScrollingNode>::encode):
3294         (ArgumentCoder<ScrollingStateScrollingNode>::decode):
3295
3296 2014-02-07  Simon Fraser  <simon.fraser@apple.com>
3297
3298         Add typesafe casts for DrawingAreaProxy classes
3299         https://bugs.webkit.org/show_bug.cgi?id=128419
3300
3301         Reviewed by Andreas Kling.
3302         
3303         Add typesafe casts, and use one in RemoteScrollingCoordinatorProxy::layerTreeHost().
3304
3305         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
3306         (WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):
3307         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
3308         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
3309         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3310         (WebKit::WebChromeClient::contentsSizeChanged):
3311         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
3312
3313 2014-02-06  Filip Pizlo  <fpizlo@apple.com>
3314
3315         More FTL build scaffolding
3316         https://bugs.webkit.org/show_bug.cgi?id=128330
3317
3318         Reviewed by Geoffrey Garen.
3319
3320         * Configurations/FeatureDefines.xcconfig:
3321
3322 2014-02-07  Tim Horton  <timothy_horton@apple.com>
3323
3324         Move allowsBackForwardNavigationGestures back to private because apparently our build systems are broken.
3325
3326         * UIProcess/API/Cocoa/WKView.h:
3327         * UIProcess/API/Cocoa/WKViewPrivate.h:
3328         * UIProcess/API/mac/WKView.mm:
3329         (-[WKView setAllowsBackForwardNavigationGestures:]):
3330         (-[WKView allowsBackForwardNavigationGestures]):
3331
3332 2014-02-07  Anders Carlsson  <andersca@apple.com>
3333
3334         Simplify web page creation
3335         https://bugs.webkit.org/show_bug.cgi?id=128425
3336
3337         Reviewed by Andreas Kling.
3338
3339         Add a WebPageConfiguration class and stick the page group, preferences, session etc there
3340         instead of adding more and more parameters to the WebPageProxy constructor.
3341
3342         Make WebContext::createWebPage fill in the missing pieces in the WebPageConfiguration object.
3343
3344         * UIProcess/API/ios/WKContentView.mm:
3345         (-[WKContentView initWithFrame:configuration:]):
3346         (-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
3347         * UIProcess/API/mac/WKView.mm:
3348         (-[WKView initWithFrame:contextRef:pageGroupRef:relatedToPage:]):
3349         * UIProcess/WebContext.cpp:
3350         (WebKit::WebContext::createWebPage):
3351         * UIProcess/WebContext.h:
3352         * UIProcess/WebPageProxy.cpp:
3353         (WebKit::WebPageProxy::create):
3354         (WebKit::WebPageProxy::WebPageProxy):
3355         * UIProcess/WebPageProxy.h:
3356         * UIProcess/WebProcessProxy.cpp:
3357         (WebKit::WebProcessProxy::createWebPage):
3358         * UIProcess/WebProcessProxy.h:
3359
3360 2014-02-07  Tim Horton  <timothy_horton@apple.com>
3361
3362         Build fix. Wrong section of the file.