Should have copy and paste items in all text menus
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2014-12-10  Timothy Horton  <timothy_horton@apple.com>
2
3         Should have copy and paste items in all text menus
4         https://bugs.webkit.org/show_bug.cgi?id=139510
5         <rdar://problem/19198388>
6
7         Reviewed by Beth Dakin.
8
9         * UIProcess/mac/WKActionMenuController.mm:
10         (-[WKActionMenuController _defaultMenuItemsForText]):
11         Add a disabled paste menu item into the read-only text menu.
12
13         (-[WKActionMenuController _defaultMenuItemsForWhitespaceInEditableArea]):
14         Add a disabled copy menu item into the editable whitespace text menu.
15
16 2014-12-10  Martin Hock  <mhock@apple.com>
17
18         [iOS] Add setting to ignore viewport scaling constraints
19         https://bugs.webkit.org/show_bug.cgi?id=139466
20         <rdar://problem/19200328>
21
22         Reviewed by Benjamin Poulain.
23
24         * Shared/WebPreferencesDefinitions.h: Add ignoreViewportScalingConstraints preference.
25         * UIProcess/API/C/WKPreferences.cpp:
26         (WKPreferencesSetIgnoreViewportScalingConstraints):
27         (WKPreferencesGetIgnoreViewportScalingConstraints):
28         * UIProcess/API/C/WKPreferencesRef.h:
29         * WebProcess/WebPage/WebPage.cpp:
30         (WebKit::WebPage::updatePreferences):
31
32 2014-12-10  Timothy Horton  <timothy_horton@apple.com>
33
34         Fix the build.
35
36         * UIProcess/API/mac/WKView.mm:
37         (-[WKView _targetWindowForMovePreparation]):
38
39 2014-12-10  Timothy Horton  <timothy_horton@apple.com>
40
41         Provide SPI to asynchronously move a WKView into a window and know when it has painted
42         https://bugs.webkit.org/show_bug.cgi?id=139460
43         <rdar://problem/19135389>
44
45         Reviewed by Anders Carlsson.
46
47         * UIProcess/API/Cocoa/WKViewPrivate.h:
48         Add _prepareForMoveToWindow:withCompletionHandler:, which internally
49         goes through the motions of being parented in that window and calls
50         the completion handler once painting is done and the view is ready
51         to be displayed (upon which we expect the view to actually move into the window).
52
53         * UIProcess/API/mac/WKView.mm:
54         (-[WKView viewWillMoveToWindow:]):
55         If we currently have a _targetWindowForMovePreparation (and are
56         pretending to be in that window), avoid performing viewWillMoveToWindow:
57         for a different window.
58
59         (-[WKView viewDidMoveToWindow]):
60         (-[WKView doWindowDidChangeScreen]):
61         (-[WKView _intrinsicDeviceScaleFactor]):
62         (-[WKView _colorSpace]):
63         (-[WKView _targetWindowForMovePreparation]):
64         If we have a _targetWindowForMovePreparation, use its properties instead
65         of self.window's.
66
67         (-[WKView _prepareForMoveToWindow:withCompletionHandler:]):
68         Simulate a move into the target window, but defer sending the view state update.
69         Then, send the view state update after registering the completion handler.
70
71         * UIProcess/API/mac/WKViewInternal.h:
72         * UIProcess/WebPageProxy.cpp:
73         (WebKit::WebPageProxy::WebPageProxy):
74         Rename m_viewStateChangeWantsReply to m_viewStateChangeWantsSynchronousReply.
75
76         (WebKit::WebPageProxy::installViewStateChangeCompletionHandler):
77         Added. Allow installing a block that will be called the next time
78         we get a didUpdateViewState back from the WebProcess after pushing the
79         current view state changes.
80
81         (WebKit::WebPageProxy::viewStateDidChange):
82         Adapt to the aforementioned rename.
83
84         (WebKit::WebPageProxy::dispatchViewStateChange):
85         Adapt to the aforementioned rename.
86         Send the view state change callback IDs along with SetViewState.
87
88         (WebKit::WebPageProxy::updateViewState):
89         Adapt to the aforementioned rename.
90
91         * UIProcess/WebPageProxy.h:
92         * UIProcess/mac/PageClientImpl.h:
93         * UIProcess/mac/PageClientImpl.mm:
94         (WebKit::PageClientImpl::activeWindow):
95         (WebKit::PageClientImpl::isViewWindowActive):
96         (WebKit::PageClientImpl::isViewVisible):
97         (WebKit::PageClientImpl::isViewVisibleOrOccluded):
98         (WebKit::PageClientImpl::isViewInWindow):
99         (WebKit::PageClientImpl::viewLayerHostingMode):
100         If we have a _targetWindowForMovePreparation, use its properties instead
101         of the WKView's window's.
102
103         * WebProcess/WebPage/DrawingArea.h:
104         (WebKit::DrawingArea::viewStateDidChange):
105         * WebProcess/WebPage/WebPage.cpp:
106         (WebKit::WebPage::reinitializeWebPage):
107         (WebKit::WebPage::setViewState):
108         * WebProcess/WebPage/WebPage.h:
109         * WebProcess/WebPage/WebPage.messages.in:
110         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
111         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
112         (WebKit::RemoteLayerTreeDrawingArea::viewStateDidChange):
113         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
114         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
115         (WebKit::TiledCoreAnimationDrawingArea::viewStateDidChange):
116         Push the callback IDs to the WebProcess, and accumulate them in TiledCoreAnimationDrawingArea.
117
118         (WebKit::TiledCoreAnimationDrawingArea::didUpdateViewStateTimerFired):
119         Call all of the callbacks after one runloop cycle, just like DidUpdateViewState.
120
121 2014-12-10  Anders Carlsson  <andersca@apple.com>
122
123         Add session storage handling to StorageNamespaceProvider
124         https://bugs.webkit.org/show_bug.cgi?id=139507
125
126         Reviewed by Tim Horton.
127
128         * WebProcess/Storage/StorageNamespaceImpl.cpp:
129         (WebKit::StorageNamespaceImpl::createSessionStorageNamespace):
130         * WebProcess/Storage/StorageNamespaceImpl.h:
131         * WebProcess/Storage/WebStorageNamespaceProvider.cpp:
132         (WebKit::WebStorageNamespaceProvider::createSessionStorageNamespace):
133         * WebProcess/Storage/WebStorageNamespaceProvider.h:
134
135 2014-12-10  Anders Carlsson  <andersca@apple.com>
136
137         Implement the rest of the transient local storage namespace code
138         https://bugs.webkit.org/show_bug.cgi?id=139505
139
140         Reviewed by Tim Horton.
141
142         * UIProcess/Storage/StorageManager.cpp:
143         (WebKit::StorageManager::TransientLocalStorageNamespace::create):
144         (WebKit::StorageManager::TransientLocalStorageNamespace::~TransientLocalStorageNamespace):
145         (WebKit::StorageManager::TransientLocalStorageNamespace::getOrCreateStorageArea):
146         (WebKit::StorageManager::TransientLocalStorageNamespace::clearStorageAreasMatchingOrigin):
147         (WebKit::StorageManager::TransientLocalStorageNamespace::clearAllStorageAreas):
148         (WebKit::StorageManager::TransientLocalStorageNamespace::TransientLocalStorageNamespace):
149         Introduce a new TransientLocalStorageNamespace that's just a glorified SecurityOrigin -> StorageArea HashMap.
150
151         (WebKit::StorageManager::StorageArea::create):
152         Change the return type to RefPtr.
153
154         (WebKit::StorageManager::deleteEntriesForOrigin):
155         (WebKit::StorageManager::deleteAllEntries):
156         (WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince):
157         Use lambdas instead of bind. Delete the transient local storage as well.
158
159         (WebKit::StorageManager::createTransientLocalStorageMap):
160         Get a transient local storage namespace and ask it for a storage area.
161
162         (WebKit::StorageManager::getOrCreateTransientLocalStorageNamespace):
163         Look up the namespace from the map and create one if it doesn't exist.
164
165         (WebKit::StorageManager::deleteEntriesForOriginInternal): Deleted.
166         (WebKit::StorageManager::deleteAllEntriesInternal): Deleted.
167
168         * UIProcess/Storage/StorageManager.h:
169
170 2014-12-10  Anders Carlsson  <andersca@apple.com>
171
172         Begin fixing transient local storage handling
173         https://bugs.webkit.org/show_bug.cgi?id=139503
174
175         Reviewed by Sam Weinig.
176
177         * UIProcess/Storage/StorageManager.cpp:
178         (WebKit::StorageManager::createTransientLocalStorageMap):
179         * UIProcess/Storage/StorageManager.h:
180         Add empty stub implementation of createTransientLocalStorageMap.
181
182         * UIProcess/Storage/StorageManager.messages.in:
183         Add CreateTransientLocalStorageMap message.
184
185         * WebProcess/Storage/StorageAreaMap.cpp:
186         (WebKit::StorageAreaMap::StorageAreaMap):
187         If we have a local storage namespace with a non-null top-level origin, create a 
188         transient local storage map.
189
190         * WebProcess/Storage/StorageNamespaceImpl.cpp:
191         (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
192         Pass a null top-level origin to the StorageNamespaceImpl constructor.
193
194         (WebKit::StorageNamespaceImpl::createTransientLocalStorageNamespace):
195         Create a new StorageNamespaceImpl, passing the top-level origin to the constructor.
196
197         (WebKit::StorageNamespaceImpl::createSessionStorageNamespace):
198         Pass a null top-level origin to the StorageNamespaceImpl constructor.
199
200         (WebKit::StorageNamespaceImpl::StorageNamespaceImpl):
201         Add a top-level origin parameter.
202
203         * WebProcess/Storage/StorageNamespaceImpl.h:
204         (WebKit::StorageNamespaceImpl::topLevelOrigin):
205         Add top-level origin member and getter.
206
207         * WebProcess/Storage/WebStorageNamespaceProvider.cpp:
208         (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace):
209         Call StorageNamespaceImpl::createTransientLocalStorageNamespace.
210
211 2014-12-10  Anders Carlsson  <andersca@apple.com>
212
213         Implement WebStorageNamespaceProvider::createLocalStorageNamespace
214         https://bugs.webkit.org/show_bug.cgi?id=139498
215
216         Reviewed by Beth Dakin.
217
218         * WebProcess/Storage/StorageNamespaceImpl.cpp:
219         (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
220         Add a new overload that takes an identifier + quota. Have the old overload call the new one.
221
222         * WebProcess/Storage/StorageNamespaceImpl.h:
223         Add new member.
224
225         * WebProcess/Storage/WebStorageNamespaceProvider.cpp:
226         (WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace):
227         Call StorageNamespaceImpl::createLocalStorageNamespace.
228
229 2014-12-10  Anders Carlsson  <andersca@apple.com>
230
231         Add a stubbed out WebStorageNamespaceProvider class to WebKit2
232         https://bugs.webkit.org/show_bug.cgi?id=139497
233
234         Reviewed by Beth Dakin.
235
236         * WebKit2.xcodeproj/project.pbxproj:
237         * WebProcess/Storage/WebStorageNamespaceProvider.cpp: Added.
238         (WebKit::storageNamespaceProviders):
239         (WebKit::WebStorageNamespaceProvider::getOrCreate):
240         (WebKit::WebStorageNamespaceProvider::WebStorageNamespaceProvider):
241         (WebKit::WebStorageNamespaceProvider::~WebStorageNamespaceProvider):
242         (WebKit::WebStorageNamespaceProvider::createLocalStorageNamespace):
243         (WebKit::WebStorageNamespaceProvider::createTransientLocalStorageNamespace):
244         * WebProcess/Storage/WebStorageNamespaceProvider.h: Added.
245
246 2014-12-10  Enrica Casucci  <enrica@apple.com>
247
248         Fix iOS builders for 8.0
249         https://bugs.webkit.org/show_bug.cgi?id=139495
250
251         Reviewed by Eric Carlson.
252
253         * UIProcess/API/Cocoa/WKWebView.mm:
254         (-[WKWebView _mayAutomaticallyShowVideoOptimized]):
255         * UIProcess/WebPageProxy.cpp:
256         (WebKit::WebPageProxy::WebPageProxy):
257         (WebKit::WebPageProxy::reattachToWebProcess):
258         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
259
260 2014-12-10  Julien Isorce  <j.isorce@samsung.com>
261
262         [GTK] Enable depth 32 for the RedirectedXCompositeWindow
263         https://bugs.webkit.org/show_bug.cgi?id=139028
264
265         On gtk/X11, the layout compositing is done in the web process.
266         If one needs to handle alpha with the rest of the application
267         then it is not enough to make to browser's window as RGBA.
268         The shared redirected window needs to be RGBA as well.
269         (The shared X composite window between UIProcess and WebProcess).
270
271         This allows an end-to-end RGBA solution when the application
272         wants to interact with the alpha channel at compositing time.
273         For example for transparent Web UI.
274
275         Reviewed by Martin Robinson.
276
277         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
278         (webkitWebViewBaseRealize):
279         (webkitWebViewBaseConstructed):
280         (webkitWebViewRenderAcceleratedCompositingResults):
281         (webkitWebViewBaseUpdatePreferences):
282         (webkitWebViewBaseCreateWebPage):
283         * UIProcess/gtk/RedirectedXCompositeWindow.cpp:
284         (WebKit::RedirectedXCompositeWindow::create):
285         (WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow):
286         * UIProcess/gtk/RedirectedXCompositeWindow.h:
287
288 2014-12-09  Claudio Saavedra  <csaavedra@igalia.com> and Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
289
290         [GTK][WK2] Add HTML5 Notifications support
291         https://bugs.webkit.org/show_bug.cgi?id=61140
292
293         Reviewed by Carlos Garcia Campos.
294
295         * PlatformGTK.cmake: add new files to the build.
296         * UIProcess/API/gtk/WebKitForwardDeclarations.h:
297         * UIProcess/API/gtk/WebKitNotification.cpp: Added. New GObject used to expose information about
298         the notification to the API.
299         (webkitNotificationGetProperty):
300         (webkit_notification_class_init):
301         (webkitNotificationCreate):
302         (webkit_notification_get_id):
303         (webkit_notification_get_title):
304         (webkit_notification_get_body):
305         * UIProcess/API/gtk/WebKitNotification.h: Added.
306         * UIProcess/API/gtk/WebKitNotificationPermissionRequest.cpp: Added. Permission request object
307         for notifications.
308         (webkitNotificationPermissionRequestAllow):
309         (webkitNotificationPermissionRequestDeny):
310         (webkit_permission_request_interface_init):
311         (webkitNotificationPermissionRequestDispose):
312         (webkit_notification_permission_request_class_init):
313         (webkitNotificationPermissionRequestCreate):
314         * UIProcess/API/gtk/WebKitNotificationPermissionRequest.h: Added.
315         * UIProcess/API/gtk/WebKitNotificationPermissionRequestPrivate.h: Added.
316         * UIProcess/API/gtk/WebKitNotificationPrivate.h: Added.
317         * UIProcess/API/gtk/WebKitNotificationProvider.cpp: Added. Notification provider that emits signals.
318         The C API allows overriding the notification providers and managers for customizing the handling of
319         notifications. We decided to go for a single manager and a single provider which provide more idiomatic
320         GObject API - signals.
321         (toNotificationProvider):
322         (showCallback):
323         (cancelCallback):
324         (WebKitNotificationProvider::~WebKitNotificationProvider):
325         (WebKitNotificationProvider::create):
326         (WebKitNotificationProvider::WebKitNotificationProvider):
327         (WebKitNotificationProvider::show):
328         (WebKitNotificationProvider::cancel):
329         * UIProcess/API/gtk/WebKitNotificationProvider.h: Added.
330         * UIProcess/API/gtk/WebKitUIClient.cpp: implemented decidePolicyForNotificationPermissionRequest.
331         * UIProcess/API/gtk/WebKitWebContext.cpp:
332         (webkitWebContextConstructed): initialize the notification provider.
333         * UIProcess/API/gtk/WebKitWebView.cpp:
334         (webkitWebViewShowNotification): default implementation for showing the notification, currently
335         using GNotification, about to be ported to libnotify.
336         (webkit_web_view_class_init): set the default implementation for the show-notification signal.
337         (webkitWebViewEmitCloseNotification): emit the close-notification signal.
338         (webkitWebViewEmitShowNotification): emit the show-notification signal.
339         * UIProcess/API/gtk/WebKitWebView.h:
340         * UIProcess/API/gtk/WebKitWebViewPrivate.h:
341         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: list new objects and methods.
342         * UIProcess/API/gtk/webkit2.h: include new headers.
343
344 2014-12-10  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
345
346         [EFL][[WK2] test_ewk2_text_checker is failed
347         https://bugs.webkit.org/show_bug.cgi?id=132982
348
349         Reviewed by Gyuyoung Kim.
350
351         Insert misspelled word to the input field using execCommand instead of
352         input.value attribute change which stops spell check, tracked by
353         https://bugs.webkit.org/show_bug.cgi?id=139473.
354
355         Since text checker API tests do not verify spellchecker itself (it's being
356         tested by LayoutTests/editing/spelling) but rather opportunity for overriding
357         its functionality this patch unskips those tests in order to API coverage.
358
359         * PlatformEfl.cmake:
360         Unskip test_ewk2_text_checker
361
362         * UIProcess/API/efl/tests/resources/spelling_test.html:
363         Use document.execCommand("InsertText", false, "aa ") instead of
364         input.value = "aa " to trigger spellchecker.
365
366 2014-12-10  Carlos Alberto Lopez Perez  <clopez@igalia.com>
367
368         REGRESSION(r177038): [SOUP] [GTK] Debug build broken
369         https://bugs.webkit.org/show_bug.cgi?id=139475
370
371         Reviewed by Martin Robinson.
372
373         * NetworkProcess/soup/NetworkProcessSoup.cpp:
374         (WebKit::NetworkProcess::clearCacheForAllOrigins): Call clearDiskCache().
375         (WebKit::NetworkProcess::clearDiskCache): Implement this for SOUP.
376         SoupCache don't seems to have API for clearing a part of the cache,
377         so add a FIXME note regarding that.
378
379 2014-12-09  Csaba Osztrogonác  <ossy@webkit.org>
380
381         URTBF after r177032.
382
383         * CMakeLists.txt:
384
385 2014-12-09  Alexey Proskuryakov  <ap@apple.com>
386
387         Kotoeri sometimes doesn't correctly process the first chanaracter in a text field in Safari 7.1 or 6.2
388         https://bugs.webkit.org/show_bug.cgi?id=139459
389         rdar://problem/19017432
390         rdar://problem/19036869
391
392         Reviewed by Enrica Casucci.
393
394         When inputContext changes, notify the application. We already did this when the context
395         changed due to plug-ins, and this used to sort of make it work on on yahoo.co.jp,
396         which has plug-ins. But that was quite unreliable, as evidenced by the reproducible
397         cases where we didn't use an input method for the first keypress.
398
399         * UIProcess/PageClient.h:
400         * UIProcess/WebPageProxy.cpp:
401         (WebKit::WebPageProxy::editorStateChanged):
402         * UIProcess/mac/PageClientImpl.h:
403         * UIProcess/mac/PageClientImpl.mm:
404         (WebKit::PageClientImpl::notifyApplicationAboutInputContextChange):
405
406 2014-12-09  Jeremy Jones  <jeremyj@apple.com>
407
408         Enable automatic optimized fullscreen mode.
409         https://bugs.webkit.org/show_bug.cgi?id=139437
410
411         Reviewed by Simon Fraser.
412
413         Anticipate the automatic transition to optimized video fullscreen mode when deciding if the page is visible.
414
415         * UIProcess/API/Cocoa/WKWebView.mm:
416         (-[WKWebView _isShowingVideoOptimized]): Renamed. Test precondition.
417         (-[WKWebView _mayAutomaticallyShowVideoOptimized]): Added.
418         (-[WKWebView _isPlayingFullscreenOptimizedVideo]): Deleted.
419         * UIProcess/API/Cocoa/WKWebViewInternal.h:
420         * UIProcess/ios/PageClientImplIOS.mm:
421         (WebKit::PageClientImpl::isViewVisible): Test for optimized modes even when not in a window.
422
423 2014-12-09  Anders Carlsson  <andersca@apple.com>
424
425         Add support for clearing the disk cache
426         https://bugs.webkit.org/show_bug.cgi?id=139458
427
428         Reviewed by Antti Koivisto.
429
430         * NetworkProcess/NetworkProcess.cpp:
431         (WebKit::NetworkProcess::deleteWebsiteData):
432         If we're asked to clear the disk cache, do so. Clearing the cache is asynchronous,
433         so we make sure not to call the completion handler right away in that case.
434
435         * NetworkProcess/NetworkProcess.h:
436         Add clearDiskCache member function.
437
438         * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
439         (WebKit::NetworkProcess::clearDiskCache):
440         Clear the disk cache, then call the completion handler.
441
442         * NetworkProcess/mac/NetworkProcessMac.mm:
443         (WebKit::NetworkProcess::clearCacheForAllOrigins):
444         Call the new clearDiskCache function.
445
446         * Shared/WebsiteData/WebsiteDataTypes.h:
447         Add WebsiteDataTypeDiskCache.
448
449         * UIProcess/API/Cocoa/_WKWebsiteDataStore.h:
450         * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
451         (toWebsiteDataTypes):
452         Handle WKWebsiteDataTypeDiskCache.
453
454 2014-12-09  Myles C. Maxfield  <mmaxfield@apple.com>
455
456         Delete Node::boundingBox()
457         https://bugs.webkit.org/show_bug.cgi?id=139333
458
459         Reviewed by Zalan Bujtas.
460
461         * Shared/WebHitTestResult.cpp:
462         (WebKit::WebHitTestResult::Data::elementBoundingBoxInWindowCoordinates):
463         Use RenderObject::absoluteBoundingBoxRect().
464         * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp:
465         (WebKit::WebPage::findZoomableAreaForPoint): Use
466         RenderObject::absoluteBoundingBoxRect().
467
468 2014-12-09  Chris Dumez  <cdumez@apple.com>
469
470         [WK2] Crash when answering notification permission request after navigating
471         https://bugs.webkit.org/show_bug.cgi?id=139429
472         <rdar://problem/18921122>
473
474         Reviewed by Andreas Kling.
475
476         When requesting a notification permission, navigating away and then
477         answering the permission, WebKit2 would crash. This is because upon
478         navigating, the request is cancelled and removed from the HashMaps
479         in NotificationPermissionRequestManager. When
480         didReceiveNotificationPermissionDecision() is later called, it would
481         look for the request identifier in m_idToOriginMap HashMap. As the
482         request was cancelled, HashMap::take() call would return null for
483         the SecurityOrigin*. This security origin pointer is then removed
484         from m_originToIDMap, but the code was failing to do a null check
485         first. Calling HashMap::remove(nullptr) would then crash.
486
487         This patch adds the missing null check and a layout test to cover
488         this case.
489
490         Test: http/tests/notifications/legacy/notification-request-permission-then-navigate.html
491         
492
493         * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
494         (WebKit::NotificationPermissionRequestManager::didReceiveNotificationPermissionDecision):
495
496 2014-12-09  Anders Carlsson  <andersca@apple.com>
497
498         Implement clearing of cookies
499         https://bugs.webkit.org/show_bug.cgi?id=139455
500
501         Reviewed by Andreas Kling.
502
503         * NetworkProcess/NetworkProcess.cpp:
504         (WebKit::NetworkProcess::deleteWebsiteData):
505         Handle deleting cookies by finding the right network storage session and deleting the cookies from it.
506         Then, send a DidDeleteWebsiteData message back.
507
508         * NetworkProcess/NetworkProcess.h:
509         Add new members.
510
511         * NetworkProcess/NetworkProcess.messages.in:
512         Add new DeleteWebsiteData message.
513
514         * Shared/WebsiteData/WebsiteDataTypes.h:
515         Move the website data types enum to its own file so it can be shared.
516
517         * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
518         (toWebsiteDataTypes):
519         Update now that WebsiteDataTypes is its own enum.
520
521         (-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]):
522         removeDataModifiedSince was renamed to removeData.
523
524         * UIProcess/Network/NetworkProcessProxy.cpp:
525         (WebKit::generateCallbackID):
526         Helper function to create a callback ID.
527
528         (WebKit::NetworkProcessProxy::~NetworkProcessProxy):
529         Assert that we have no pending callbacks.
530
531         (WebKit::NetworkProcessProxy::deleteWebsiteData):
532         Put the completion handler in our map and message the network process.
533
534         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
535         Call all completion handlers.
536
537         (WebKit::NetworkProcessProxy::didDeleteWebsiteData):
538         Grab the completion handler and call it.
539
540         * UIProcess/Network/NetworkProcessProxy.h:
541         Add new members.
542
543         * UIProcess/Network/NetworkProcessProxy.messages.in:
544         Add DidDeleteWebsiteData callback.
545
546         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
547         (WebKit::computeNetworkProcessAccessType):
548         Helper function that computes the type of process access we'd need for the given mask of
549         website data types.
550
551         (WebKit::WebsiteDataStore::removeData):
552         Gather all the network processes and message them. Use a callback aggregator object to track callbacks
553         so we'll call the completion handler once all callbacks have been invoked.
554
555         * UIProcess/WebsiteData/WebsiteDataStore.h:
556         Move WebsiteDataTypes to its own file.
557
558         * WebKit2.xcodeproj/project.pbxproj:
559         Add new files.
560
561 2014-12-09  Anders Carlsson  <andersca@apple.com>
562
563         Give WebsiteDataStore a unique ID
564         https://bugs.webkit.org/show_bug.cgi?id=139448
565
566         Reviewed by Andreas Kling.
567
568         * Shared/WebPageCreationParameters.cpp:
569         (WebKit::WebPageCreationParameters::encode):
570         (WebKit::WebPageCreationParameters::decode):
571         * Shared/WebPageCreationParameters.h:
572         * UIProcess/WebPageProxy.cpp:
573         (WebKit::WebPageProxy::creationParameters):
574         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
575         (WebKit::generateIdentifier):
576         (WebKit::WebsiteDataStore::WebsiteDataStore):
577         * UIProcess/WebsiteData/WebsiteDataStore.h:
578         (WebKit::WebsiteDataStore::identifier):
579
580 2014-12-09  Anders Carlsson  <andersca@apple.com>
581
582         Build fix.
583
584         * UIProcess/API/Cocoa/_WKWebsiteDataStore.h:
585
586 2014-12-09  Ting-Wei Lan  <lantw44@gmail.com>
587
588         [GTK] LDFLAGS is ignored when running g-ir-scanner
589         https://bugs.webkit.org/show_bug.cgi?id=138832
590
591         Reviewed by Carlos Garcia Campos.
592
593         GTK+ requires libintl on FreeBSD because there is no gettext
594         implementation in FreeBSD libc. In order to link to libintl, which is
595         not located in the default search path of the linker, we need to add
596         the required path via the linker command line. However, LDFLAGS is
597         ignored when running g-ir-scanner starting from r167873, so we have
598         to manually pick required flags from CMAKE_SHARED_LINKER_FLAGS and
599         put them in correct order to prevent g-ir-scanner from linking to
600         the installed version of libraries.
601
602         * PlatformGTK.cmake:
603
604 2014-12-09  Jeremy Jones  <jeremyj@apple.com>
605
606         Enable activating optimized fullscreen mode from standard fulscreen mode.
607         https://bugs.webkit.org/show_bug.cgi?id=139137
608
609         Reviewed by Simon Fraser.
610
611         Going from standard fullscreen mode to optimized fullscreen mode requires the ability to
612         update the fullscreen mode and a new standard-and-optimized-fullscreen mode.
613
614         * UIProcess/API/Cocoa/WKWebView.mm:
615         (-[WKWebView _isPlayingFullscreenOptimizedVideo]): 
616         Treat new standard-and-optimized as a kind of optimized.
617         * UIProcess/ios/WebVideoFullscreenManagerProxy.h: IPC fullscreen mode changes
618         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm: ditto
619         (WebKit::WebVideoFullscreenManagerProxy::fullscreenModeChanged): dito
620         * WebProcess/ios/WebVideoFullscreenManager.h: ditto
621         * WebProcess/ios/WebVideoFullscreenManager.messages.in: ditto
622         * WebProcess/ios/WebVideoFullscreenManager.mm: dito
623         (WebKit::WebVideoFullscreenManager::WebVideoFullscreenManager): ditto
624         (WebKit::WebVideoFullscreenManager::setFullscreenModeChanged): ditto
625
626 2014-12-08  Jaehun Lim  <ljaehun.lim@samsung.com>
627
628         [EFL] Use DependenciesEFL instead of Dependencies
629
630         Unreviewed, fix simple typo.
631
632         * PlatformEfl.cmake:
633
634 2014-12-08  Beth Dakin  <bdakin@apple.com>
635
636         Copy and Lookup menu items should be disabled when something is not copyable
637         https://bugs.webkit.org/show_bug.cgi?id=139423
638
639         Reviewed by Tim Horton.
640
641         Add allowsCopy to the WebHitTestResult.
642         * Shared/WebHitTestResult.cpp:
643         (WebKit::WebHitTestResult::Data::Data):
644         (WebKit::WebHitTestResult::Data::encode):
645         (WebKit::WebHitTestResult::Data::decode):
646         * Shared/WebHitTestResult.h:
647         (WebKit::WebHitTestResult::allowsCopy):
648
649         Set autoenablesItems to NO. It’s messing with our ability to control the enable/
650         disable state otherwise.
651         * UIProcess/API/mac/WKView.mm:
652         (-[WKView initWithFrame:context:configuration:webView:]):
653
654         Disable both lookup and copy when a WebHitTestResult does not allow copy.
655         * UIProcess/mac/WKActionMenuController.mm:
656
657 2014-12-08  Dan Bernstein  <mitz@apple.com>
658
659         <rdar://problem/18905383> [iOS] Crash due to null m_webPageProxyForBackForwardListForCurrentSwipe in ViewGestureController::endSwipeGesture
660         https://bugs.webkit.org/show_bug.cgi?id=138750
661
662         Reviewed by Tim Horton.
663
664         The snapshot for the current gesture was being removed mid-gesture by the callback from
665         dispatchAfterEnsuringDrawing scheduled by the previous gesture. The fix is to ignore the
666         callback for a gesture if it is made after the snapshot for that gesture has already been
667         removed (which can happen as a result of the watchdog timer firing).
668
669         * UIProcess/ios/ViewGestureControllerIOS.mm:
670         (WebKit::ViewGestureController::ViewGestureController): Initialize new member variable.
671         (WebKit::addLogEntry): Fixed the log message format.
672         (WebKit::ViewGestureController::endSwipeGesture): When dispatchAfterEnsuringDrawing() calls
673         us back, bail out if the gesture snapshot has already been removed.
674         (WebKit::ViewGestureController::removeSwipeSnapshot): Increment
675         m_gesturePendingSnapshotRemoval.
676         * UIProcess/mac/ViewGestureController.h: Added m_gesturePendingSnapshotRemoval member
677         variable.
678
679 2014-12-08  Anders Carlsson  <andersca@apple.com>
680
681         The website data store should know all its associated pages
682         https://bugs.webkit.org/show_bug.cgi?id=139411
683
684         Reviewed by Tim Horton.
685
686         * UIProcess/WebPageProxy.cpp:
687         (WebKit::WebPageProxy::WebPageProxy):
688         (WebKit::WebPageProxy::close):
689         * UIProcess/WebPageProxy.h:
690         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
691         (WebKit::WebsiteDataStore::~WebsiteDataStore):
692         (WebKit::WebsiteDataStore::addWebPage):
693         (WebKit::WebsiteDataStore::removeWebPage):
694         * UIProcess/WebsiteData/WebsiteDataStore.h:
695
696 2014-12-08  Dan Bernstein  <mitz@apple.com>
697
698         <rdar://problem/18046692> [iOS] Safari crashes at -[_NSUndoStack popAndInvoke] when trying to undo typing on closed tab
699         https://bugs.webkit.org/show_bug.cgi?id=139408
700
701         Reviewed by Anders Carlsson.
702
703         * UIProcess/ios/WKContentView.mm:
704         (-[WKContentView undoManager]): Override to initialize if necessary and return a unique undo
705         manager for this instance. This ensures that undoable operations for this webview don’t get
706         put in other undo managers, and matches UIWebView behavior.
707
708 2014-12-08  Chris Dumez  <cdumez@apple.com>
709
710         Revert r176293 & r176275
711
712         Unreviewed, revert r176293 & r176275 changing the Vector API to use unsigned type
713         instead of size_t. There is some disagreement regarding the long-term direction
714         of the API and we shouldn’t leave the API partly transitioned to unsigned type
715         while making a decision.
716
717         * Platform/IPC/ArgumentCoders.h:
718         * Platform/IPC/DataReference.h:
719
720 2014-12-08  Anders Carlsson  <andersca@apple.com>
721
722         Make deleting all cookies after a given date a little more sane
723         https://bugs.webkit.org/show_bug.cgi?id=139409
724
725         Reviewed by Antti Koivisto.
726
727         Change all the doubles to std::chrono::system_clock::time_points instead.
728
729         * Platform/IPC/ArgumentCoders.cpp:
730         (IPC::ArgumentCoder<std::chrono::system_clock::time_point>::encode):
731         (IPC::ArgumentCoder<std::chrono::system_clock::time_point>::decode):
732         * Platform/IPC/ArgumentCoders.h:
733         * Scripts/webkit/messages.py:
734         (headers_for_type):
735         * UIProcess/API/C/WKCookieManager.cpp:
736         (WKCookieManagerDeleteAllCookiesModifiedAfterDate):
737         * UIProcess/API/C/WKCookieManager.h:
738         * UIProcess/WebCookieManagerProxy.cpp:
739         (WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedSince):
740         (WebKit::WebCookieManagerProxy::deleteAllCookiesModifiedAfterDate): Deleted.
741         * UIProcess/WebCookieManagerProxy.h:
742         * WebProcess/Cookies/WebCookieManager.cpp:
743         (WebKit::WebCookieManager::deleteAllCookiesModifiedSince):
744         (WebKit::WebCookieManager::deleteAllCookiesModifiedAfterDate): Deleted.
745         * WebProcess/Cookies/WebCookieManager.h:
746         * WebProcess/Cookies/WebCookieManager.messages.in:
747
748 2014-12-08  Anders Carlsson  <andersca@apple.com>
749
750         Move the callback invocation outside of the loop.
751
752         Rubber-stamped by Tim Horton.
753
754         * UIProcess/WebKeyValueStorageManager.cpp:
755         (WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin):
756
757 2014-12-08  Anders Carlsson  <andersca@apple.com>
758
759         Add a stub implementation of WebsiteDataStore::removeDataModifiedSince
760         https://bugs.webkit.org/show_bug.cgi?id=139406
761
762         Reviewed by Antti Koivisto.
763
764         Change _WKWebsiteDataStore to call the newly added function.
765
766         * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
767         (toWebsiteDataTypes):
768         (toSystemClockTime):
769         (-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]):
770         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
771         (WebKit::WebsiteDataStore::removeDataModifiedSince):
772         * UIProcess/WebsiteData/WebsiteDataStore.h:
773
774 2014-12-08  Gwang Yoon Hwang  <yoon@igalia.com>
775
776         [GTK] Let DrawingArea manages setAcceleratedCompositingWindowId
777         https://bugs.webkit.org/show_bug.cgi?id=117230
778
779         Reviewed by Anders Carlsson.
780
781         This is a preparation patch for Threaded Coordinated Graphics.
782
783         LayerTreeHostGtk uses a native window handle to make glContext for
784         accelerated compositing. Therefore it is natural for DrawingArea to take
785         responsibility for the native window handle. And, in Coordinated
786         Graphics case, WebPage creates LayerTreeHost before receiving a native
787         window handle from UIProcess. It means we need a method to pass the
788         native window handle to already created LayerTreeHost.
789
790         This patch uses DrawingAreaProxy::setNativeSurfaceHandleForCompositing
791         instead of WebCoreProxy::setAcceleratedCompositingWindowId to set window
792         ID for accelerated compositing.
793
794         Also, this patch renames the setAcceleratedCompositingWindowId with a
795         more generic name, setNativeSurfaceHandleForCompositing.
796
797         No new tests. No change in functionality.
798
799         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
800         (webkitWebViewBaseCreateWebPage):
801         * UIProcess/DrawingAreaProxyImpl.cpp:
802         (WebKit::DrawingAreaProxyImpl::setNativeSurfaceHandleForCompositing):
803         * UIProcess/DrawingAreaProxyImpl.h:
804         * UIProcess/WebPageProxy.h:
805         * UIProcess/gtk/WebPageProxyGtk.cpp:
806         (WebKit::WebPageProxy::setAcceleratedCompositingWindowId): Deleted.
807         * WebProcess/WebPage/DrawingArea.h:
808         (WebKit::DrawingArea::nativeSurfaceHandleForCompositing):
809         * WebProcess/WebPage/DrawingArea.messages.in:
810         * WebProcess/WebPage/DrawingAreaImpl.cpp:
811         (WebKit::DrawingAreaImpl::setNativeSurfaceHandleForCompositing):
812         * WebProcess/WebPage/DrawingAreaImpl.h:
813         * WebProcess/WebPage/WebPage.h:
814         * WebProcess/WebPage/WebPage.messages.in:
815         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
816         (WebKit::LayerTreeHostGtk::glContext):
817         (WebKit::LayerTreeHostGtk::initialize):
818         * WebProcess/WebPage/gtk/WebPageGtk.cpp:
819         (WebKit::WebPage::platformInitialize):
820         (WebKit::WebPage::setAcceleratedCompositingWindowId): Deleted.
821
822 2014-12-08  Philippe Normand  <pnormand@igalia.com>
823
824         [GTK] UserMedia Permission Request API
825         https://bugs.webkit.org/show_bug.cgi?id=136449
826
827         Reviewed by Carlos Garcia Campos.
828
829         * PlatformGTK.cmake: GTK-specific new files.
830         * UIProcess/API/gtk/WebKitUIClient.cpp:  DecidePolicy handler
831         implementation for UserMediaPermissionRequest.
832         * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.cpp: Added,
833         WebKitGTK API for UserMediaPermissionRequest, very similar to the
834         one used for Geolocation.
835         (webkitUserMediaPermissionRequestAllow):
836         (webkitUserMediaPermissionRequestDeny):
837         (webkit_permission_request_interface_init):
838         (webkitUserMediaPermissionRequestDispose):
839         (webkit_user_media_permission_get_media_types):
840         (webkitUserMediaPermissionRequestGetProperty):
841         (webkit_user_media_permission_request_class_init):
842         (webkitUserMediaPermissionRequestCreate):
843         * UIProcess/API/gtk/WebKitUserMediaPermissionRequest.h: Added.
844         * UIProcess/API/gtk/WebKitUserMediaPermissionRequestPrivate.h: Added.
845         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Expose new API
846         in documentation.
847         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
848         * UIProcess/API/gtk/webkit2.h: Expose UserMediaPermissionRequest API.
849
850 2014-12-08  Anders Carlsson  <andersca@apple.com>
851
852         Add a stubbed out method for clearing out the website data store
853         https://bugs.webkit.org/show_bug.cgi?id=139404
854
855         Reviewed by Antti Koivisto.
856
857         Add stubbed out method that just calls the completion handler.
858
859         * UIProcess/API/Cocoa/_WKWebsiteDataStore.h:
860         * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
861         (-[_WKWebsiteDataStore removeDataOfTypes:modifiedSince:completionHandler:]):
862
863 2014-12-06  Antti Koivisto  <antti@apple.com>
864
865         REGRESSION (173394): Support for webcam is broken
866         https://bugs.webkit.org/show_bug.cgi?id=139313
867
868         Reviewed by Alexey Proskuryakov.
869
870         * NetworkProcess/NetworkResourceLoader.cpp:
871         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
872
873             Don't buffer when handling multipart/x-mixed-replace. Multiple calls to didReceiveResponseAsync break assumptions.
874
875 2014-12-08  Gwang Yoon Hwang  <yoon@igalia.com>
876
877         [CoordinatedGraphics] Move CoordinatedBackingStore and CoordinatedGraphicsScene to Shared
878         https://bugs.webkit.org/show_bug.cgi?id=139385
879
880         Reviewed by Martin Robinson.
881
882         For the Threaded Compositor, CoordinatedBackingStore and
883         CoordinatedGraphicsScene should be placed at the Shared instead of
884         UIProcess because it can be used in the WebProcess also.
885
886         No new tests because there is no behavior change.
887
888         * PlatformEfl.cmake:
889         * Shared/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp.
890         * Shared/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h.
891         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp.
892         * Shared/CoordinatedGraphics/CoordinatedGraphicsScene.h: Renamed from Source/WebKit2/UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h.
893
894 2014-12-08  Shivakumar JM  <shiva.jm@samsung.com>
895
896         Fix build warning in WebKit2/UIProcess module.
897         https://bugs.webkit.org/show_bug.cgi?id=139386
898
899         Reviewed by Alexey Proskuryakov.
900
901         Fix build warning by removing unused parameter name from function
902
903         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
904         (WebKit::WebsiteDataStore::WebsiteDataStore):
905
906 2014-12-07  Gwang Yoon Hwang  <yoon@igalia.com>
907
908         [CoordinatedGraphics] Change the namespace of CoordinatedBackingStore and CoordinatedGraphicsScene
909         https://bugs.webkit.org/show_bug.cgi?id=139372
910
911         Reviewed by Gyuyoung Kim.
912
913         CoordinatedBackingStore and CoordinatedGraphicsScene should be declared in the WebKit namespace
914         instead of WebCore namespace.
915
916         * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp:
917         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp:
918         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h:
919         (WebKit::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile):
920         (WebKit::CoordinatedBackingStore::rect):
921         (WebCore::CoordinatedBackingStoreTile::CoordinatedBackingStoreTile): Deleted.
922         (WebCore::CoordinatedBackingStore::rect): Deleted.
923         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
924         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h:
925         (WebKit::CoordinatedGraphicsScene::setViewBackgroundColor):
926         (WebKit::CoordinatedGraphicsScene::viewBackgroundColor):
927         (WebKit::CoordinatedGraphicsScene::layerByID):
928         (WebKit::CoordinatedGraphicsScene::rootLayer):
929         (WebCore::CoordinatedGraphicsScene::setViewBackgroundColor): Deleted.
930         (WebCore::CoordinatedGraphicsScene::viewBackgroundColor): Deleted.
931         (WebCore::CoordinatedGraphicsScene::layerByID): Deleted.
932         (WebCore::CoordinatedGraphicsScene::rootLayer): Deleted.
933         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
934         (WebKit::CoordinatedLayerTreeHostProxy::coordinatedGraphicsScene):
935         * UIProcess/CoordinatedGraphics/WKCoordinatedSceneAPICast.h:
936         (WebKit::toImpl):
937         (WebKit::toAPI):
938         (toImpl): Deleted.
939         (toAPI): Deleted.
940         * UIProcess/CoordinatedGraphics/WebView.h:
941
942 2014-12-07  Dan Bernstein  <mitz@apple.com>
943
944         Introduce and deploy a function that allocates and returns an instance of a soft-linked class
945         https://bugs.webkit.org/show_bug.cgi?id=139348
946
947         Reviewed by Anders Carlsson.
948
949         In [[getFooClass() alloc] init*], the type of the result of +alloc is id, so the compiler
950         picks an arbitrary declaration of init*, not necessarily the Foo one. This can then lead
951         to warnings or errors if the types or attributes don’t match, or to runtime errors if Foo
952         doesn’t even have the expected initializer. The new allocFooInstance() returns a Foo *, thus
953         avoiding the ambiguity.
954
955         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
956         (-[WKAirPlayRoutePicker showAirPlayPickerIPad:fromRect:]):
957         (-[WKAirPlayRoutePicker showAirPlayPickerIPhone:]):
958         (-[WKAirPlayRoutePicker show:fromRect:]):
959         * UIProcess/ios/forms/WKFileUploadPanel.mm:
960         (-[_WKVideoFileUploadItem displayImage]):
961         * UIProcess/mac/WKActionMenuController.mm:
962         (-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]):
963         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
964         (WebKit::PlatformCALayerRemoteCustom::clone):
965
966 2014-12-06  Anders Carlsson  <andersca@apple.com>
967
968         Fix build with newer versions of clang.
969         rdar://problem/18978733
970
971         Add missing overrides and casts.
972
973         * NetworkProcess/NetworkProcess.h:
974         * Shared/Downloads/DownloadAuthenticationClient.h:
975         (WebKit::DownloadAuthenticationClient::refAuthenticationClient): Deleted.
976         (WebKit::DownloadAuthenticationClient::derefAuthenticationClient): Deleted.
977         * UIProcess/API/C/WKPage.cpp:
978         (WKPageSetPageUIClient):
979         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
980         (-[WKWebViewConfiguration copyWithZone:]):
981         * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
982         (-[_WKProcessPoolConfiguration copyWithZone:]):
983         * UIProcess/Cocoa/NavigationState.h:
984         * UIProcess/Network/NetworkProcessProxy.h:
985         * UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
986         (WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateLayersAfterViewportChange): Deleted.
987         * UIProcess/WebPageProxy.h:
988         * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
989         (WebKit::WebContentProcessMainDelegate::doPreInitializationWork): Deleted.
990         (WebKit::WebContentProcessMainDelegate::getConnectionIdentifier): Deleted.
991         (WebKit::WebContentProcessMainDelegate::getClientIdentifier): Deleted.
992         (WebKit::WebContentProcessMainDelegate::getClientProcessName): Deleted.
993         * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
994         * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
995         (WebKit::InjectedBundle::initialize):
996         * WebProcess/WebCoreSupport/WebChromeClient.h:
997         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
998         * WebProcess/WebPage/WebBackForwardListProxy.h:
999         * WebProcess/WebPage/WebInspector.h:
1000         (WebKit::WebInspector::didClose): Deleted.
1001         (WebKit::WebInspector::didReceiveInvalidMessage): Deleted.
1002         * WebProcess/WebPage/WebInspectorUI.h:
1003         (WebKit::WebInspectorUI::didClose): Deleted.
1004         (WebKit::WebInspectorUI::didReceiveInvalidMessage): Deleted.
1005         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
1006         * WebProcess/WebProcess.h:
1007         * WebProcess/ios/WebVideoFullscreenManager.h:
1008
1009 2014-12-06  Anders Carlsson  <andersca@apple.com>
1010
1011         Only include TUCallSPI on Mac.
1012
1013         * Platform/mac/MenuUtilities.mm:
1014
1015 2014-12-06  Commit Queue  <commit-queue@webkit.org>
1016
1017         Unreviewed, rolling out r176905.
1018         https://bugs.webkit.org/show_bug.cgi?id=139337
1019
1020         the test case is failing in bots (Requested by anttik on
1021         #webkit).
1022
1023         Reverted changeset:
1024
1025         "REGRESSION (173394): Support for webcam is broken"
1026         https://bugs.webkit.org/show_bug.cgi?id=139313
1027         http://trac.webkit.org/changeset/176905
1028
1029 2014-12-05  Antti Koivisto  <antti@apple.com>
1030
1031         REGRESSION (173394): Support for webcam is broken
1032         https://bugs.webkit.org/show_bug.cgi?id=139313
1033
1034         Reviewed by Alexey Proskuryakov.
1035
1036         * NetworkProcess/NetworkResourceLoader.cpp:
1037         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1038
1039             Don't buffer when handling multipart/x-mixed-replace. Multiple calls to didReceiveResponseAsync break assumptions.
1040
1041 2014-12-05  Yongjun Zhang  <yongjun_zhang@apple.com>
1042
1043         Add a delegate method for didReceiveServerRedirectForProvisionalLoadForFrame.
1044         https://bugs.webkit.org/show_bug.cgi?id=139325
1045
1046         Add delegate method webProcessPlugInBrowserContextController:didReceiveServerRedirectForProvisionalLoadForFrame: into
1047         WKWebProcessPlugInLoadDelegate to listen to server side redirect in injected bundle.
1048
1049         Reviewed by Dan Bernstein.
1050
1051         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
1052         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
1053         (didReceiveServerRedirectForProvisionalLoadForFrame):
1054         (setUpPageLoaderClient):
1055
1056 2014-12-05  Csaba Osztrogonác  <ossy@webkit.org>
1057
1058         URTBF, EFL is happy now.
1059
1060         * UIProcess/API/APIWebsiteDataStore.cpp:
1061         (API::WebsiteDataStore::defaultDataStoreConfiguration):
1062         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
1063         (WebKit::WebsiteDataStore::createNonPersistent):
1064
1065 2014-12-05  Mark Lam  <mark.lam@apple.com>
1066
1067         Gardening: one more build fix for GTK builds.
1068
1069         * CMakeLists.txt:
1070
1071 2014-12-05  Csaba Osztrogonác  <ossy@webkit.org>
1072
1073         URTBF, remove duplicated entry due to parallel buildfixing.
1074
1075         * CMakeLists.txt:
1076
1077 2014-12-05  Csaba Osztrogonác  <ossy@webkit.org>
1078
1079         URTBF after r176849.
1080
1081         * CMakeLists.txt: Added WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.cpp.
1082
1083 2014-12-05  Mark Lam  <mark.lam@apple.com>
1084
1085         Gardening: another build fix for GTK builds.
1086
1087         * CMakeLists.txt:
1088
1089 2014-12-05  Mark Lam  <mark.lam@apple.com>
1090
1091         Gardening: more speculative build fix for GTK builds.
1092
1093         * CMakeLists.txt:
1094
1095 2014-12-05  Tim Horton  <timothy_horton@apple.com>
1096
1097         Use the system string for telephone number menu
1098         https://bugs.webkit.org/show_bug.cgi?id=139324
1099         <rdar://problem/18726471>
1100
1101         Reviewed by Anders Carlsson.
1102
1103         * Platform/mac/MenuUtilities.mm:
1104         (WebKit::menuItemTitleForTelephoneNumberGroup):
1105         Make use of the SPI to retrieve the string if it exists.
1106
1107 2014-12-05  Tim Horton  <timothy_horton@apple.com>
1108
1109         If the action menu hit test times out, a menu with a single separator appears
1110         https://bugs.webkit.org/show_bug.cgi?id=139320
1111         <rdar://problem/19158331>
1112
1113         Reviewed by Beth Dakin.
1114
1115         * UIProcess/mac/WKActionMenuController.h:
1116         * UIProcess/mac/WKActionMenuController.mm:
1117         (-[WKActionMenuController menuNeedsUpdate:]):
1118         (-[WKActionMenuController _defaultMenuItems]):
1119         Add a new "TimedOut" state, which we get into if the sync wait for
1120         didPerformActionMenuHitTest times out. In this case, we'll drop the
1121         separator item and give up on the menu. This way, the menu will never
1122         have just a single separator item at the end of menuNeedsUpdate:.
1123
1124 2014-12-05  Mark Lam  <mark.lam@apple.com>
1125
1126         Gardening: speculative build fix for GTK builds.
1127
1128         * CMakeLists.txt:
1129
1130 2014-12-05  Anders Carlsson  <andersca@apple.com>
1131
1132         Fix build.
1133
1134         * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm:
1135         (API::WebsiteDataStore::defaultDataStoreConfiguration):
1136
1137 2014-12-05  Anders Carlsson  <andersca@apple.com>
1138
1139         Give all web pages a website data store
1140         https://bugs.webkit.org/show_bug.cgi?id=139317
1141
1142         Reviewed by Tim Horton.
1143
1144         * UIProcess/API/Cocoa/WKWebView.mm:
1145         (-[WKWebView initWithFrame:configuration:]):
1146         Set the website data store on the window.
1147
1148         * UIProcess/WebContext.cpp:
1149         (WebKit::websiteDataStoreConfiguration):
1150         Helper function that will create the default website data store configuration for a context.
1151
1152         (WebKit::WebContext::WebContext):
1153         Create a new, per-context data store.
1154
1155         (WebKit::WebContext::createWebPage):
1156         If we don't have a data store filled in, use the default per-context one.
1157
1158         * UIProcess/WebContext.h:
1159         * UIProcess/WebPageProxy.h:
1160
1161 2014-12-05  Anders Carlsson  <andersca@apple.com>
1162
1163         Move the website data store code to a new file
1164         https://bugs.webkit.org/show_bug.cgi?id=139312
1165
1166         Reviewed by Tim Horton.
1167
1168         It's weird to have all the website data code in the API class, so move it to a new file.
1169
1170         * UIProcess/API/APIWebsiteDataStore.cpp:
1171         (API::WebsiteDataStore::WebsiteDataStore):
1172         (API::WebsiteDataStore::isNonPersistent):
1173         (API::generateNonPersistentSessionID): Deleted.
1174         * UIProcess/API/APIWebsiteDataStore.h:
1175         * UIProcess/API/Cocoa/WKWebView.mm:
1176         (-[WKWebView initWithFrame:configuration:]):
1177         * UIProcess/WebsiteData/WebsiteDataStore.cpp: Copied from Source/WebKit2/UIProcess/API/APIWebsiteDataStore.cpp.
1178         (WebKit::generateNonPersistentSessionID):
1179         (WebKit::WebsiteDataStore::createNonPersistent):
1180         (WebKit::WebsiteDataStore::create):
1181         (WebKit::WebsiteDataStore::WebsiteDataStore):
1182         (WebKit::WebsiteDataStore::~WebsiteDataStore):
1183         * UIProcess/WebsiteData/WebsiteDataStore.h: Copied from Source/WebKit2/UIProcess/API/APIWebsiteDataStore.h.
1184         (WebKit::WebsiteDataStore::isNonPersistent):
1185         (WebKit::WebsiteDataStore::sessionID):
1186         * WebKit2.xcodeproj/project.pbxproj:
1187
1188 2014-12-05  Tim Horton  <timothy_horton@apple.com>
1189
1190         Keyboard input should be disabled in the preview popover
1191         https://bugs.webkit.org/show_bug.cgi?id=139219
1192         <rdar://problem/19052381>
1193
1194         Reviewed by Anders Carlsson.
1195
1196         * UIProcess/API/mac/WKView.mm:
1197         (-[WKView performKeyEquivalent:]):
1198         (-[WKView keyUp:]):
1199         (-[WKView keyDown:]):
1200         (-[WKView flagsChanged:]):
1201         There are two implementations of each of these methods in this file.
1202         Adjust the ones that the original patch missed.
1203
1204 2014-12-05  Antti Koivisto  <antti@apple.com>
1205
1206         In NetworkResourceLoader always bail out after abort()
1207         https://bugs.webkit.org/show_bug.cgi?id=139299
1208
1209         Reviewed by Alexey Proskuryakov.
1210
1211         Invoking abort() may kill the current object. Take care to bail out after it.
1212
1213         * NetworkProcess/NetworkResourceLoader.cpp:
1214         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1215         (WebKit::NetworkResourceLoader::didReceiveBuffer):
1216         (WebKit::NetworkResourceLoader::didFinishLoading):
1217
1218             Either make sure sendAbortingOnFailure() is called last in callbacks or the results is explicitly tested.
1219
1220         (WebKit::NetworkResourceLoader::bufferingTimerFired):
1221         (WebKit::NetworkResourceLoader::sendBufferMaybeAborting):
1222
1223             Rename and return a boolean to indicate if load should continue.
1224
1225         (WebKit::NetworkResourceLoader::sendBuffer): Deleted.
1226         * NetworkProcess/NetworkResourceLoader.h:
1227
1228 2014-12-05  Anders Carlsson  <andersca@apple.com>
1229
1230         Don't use PLATFORM(IOS) in non-project headers.
1231
1232         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1233         (-[WKWebViewConfiguration _allowsAlternateFullscreen]):
1234         * UIProcess/API/Cocoa/WKWebViewConfigurationPrivate.h:
1235
1236 2014-12-05  Sam Weinig  <sam@webkit.org>
1237
1238         WKBundleCSSStyleDeclarationRef needs to be a real API::Object
1239         https://bugs.webkit.org/show_bug.cgi?id=139291
1240
1241         Reviewed by Dan Bernstein.
1242
1243         Change WKBundleCSSStyleDeclarationRef from being a WebCore::CSSStyleDeclaration, to
1244         being a real API::Object.  WKRetain and WKRelease require this.
1245
1246         * Shared/APIObject.h:
1247         * WebKit2.xcodeproj/project.pbxproj:
1248         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
1249         * WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.cpp: Added.
1250         (WebKit::domHandleCache):
1251         (WebKit::InjectedBundleCSSStyleDeclarationHandle::getOrCreate):
1252         (WebKit::InjectedBundleCSSStyleDeclarationHandle::InjectedBundleCSSStyleDeclarationHandle):
1253         (WebKit::InjectedBundleCSSStyleDeclarationHandle::~InjectedBundleCSSStyleDeclarationHandle):
1254         * WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.h: Added.
1255         * WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
1256         (WebKit::InjectedBundlePageEditorClient::shouldApplyStyle):
1257
1258 2014-12-05  Anders Carlsson  <andersca@apple.com>
1259
1260         Oops, didn't mean to commit this.
1261
1262         * Shared/API/Cocoa/WKFoundation.h:
1263
1264 2014-12-05  Anders Carlsson  <andersca@apple.com>
1265
1266         Add an API::WebsiteDataStore object and use it for _WKWebsiteDataStore
1267         https://bugs.webkit.org/show_bug.cgi?id=139304
1268
1269         Reviewed by Tim Horton.
1270
1271         * Shared/APIObject.h:
1272         * Shared/Cocoa/APIObject.mm:
1273         (API::Object::newObject):
1274         Make _WKWebsiteDataStore a wrapper for API::WebsiteDataStore instead of API::Session.
1275
1276         * UIProcess/API/APIWebsiteDataStore.cpp: Added.
1277         (API::generateNonPersistentSessionID):
1278         (API::WebsiteDataStore::defaultDataStore):
1279         (API::WebsiteDataStore::createNonPersistentDataStore):
1280         (API::WebsiteDataStore::WebsiteDataStore):
1281         (API::WebsiteDataStore::~WebsiteDataStore):
1282         (API::WebsiteDataStore::isNonPersistent):
1283         Add new WebsiteDataStore implementation. Currently it only contains the WebCore Session ID, but more will be
1284         added to it in upcoming commits.
1285
1286         * UIProcess/API/APIWebsiteDataStore.h:
1287         Add header.
1288
1289         * UIProcess/API/Cocoa/APIWebsiteDataStoreCocoa.mm: Added.
1290         (API::WebsiteDataStore::defaultDataStoreConfiguration):
1291         Platform specific file that returns the default data store configuration.
1292
1293         * UIProcess/API/Cocoa/WKWebView.mm:
1294         (-[WKWebView initWithFrame:configuration:]):
1295         Set the session ID from the website data store.
1296
1297         * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
1298         (+[_WKWebsiteDataStore defaultDataStore]):
1299         (+[_WKWebsiteDataStore nonPersistentDataStore]):
1300         (-[_WKWebsiteDataStore dealloc]):
1301         (-[_WKWebsiteDataStore isNonPersistent]):
1302         (-[_WKWebsiteDataStore _apiObject]):
1303         Update now that we wrap an API::WebsiteDataStore instead.
1304
1305         * UIProcess/API/Cocoa/_WKWebsiteDataStoreInternal.h:
1306         (WebKit::wrapper):
1307         Update for API::Session -> API::WebsiteDataStore change.
1308
1309         * WebKit2.xcodeproj/project.pbxproj:
1310         Add new files.
1311
1312 2014-12-05  David Kilzer  <ddkilzer@apple.com>
1313
1314         FeatureDefines.xcconfig: Workaround bug in Xcode 5.1.1 when defining ENABLE_WEB_REPLAY
1315         <http://webkit.org/b/139286>
1316
1317         Reviewed by Daniel Bates.
1318
1319         * Configurations/FeatureDefines.xcconfig: Switch back to using
1320         PLATFORM_NAME to workaround a bug in Xcode 5.1.1 on 10.8.
1321
1322 2014-12-05  Anders Carlsson  <andersca@apple.com>
1323
1324         Make WebPageProxy hold on to a SessionID instead of an API:Session
1325         https://bugs.webkit.org/show_bug.cgi?id=139302
1326
1327         Reviewed by Sam Weinig.
1328
1329         This is in preparation for adding API::WebsiteDataStore. Currently we have to keep the
1330         Session ID and the WebsiteDataStore separate because we still need to support toggling private browsing.
1331
1332         * UIProcess/API/C/WKPage.cpp:
1333         (WKPageSetSession):
1334         * UIProcess/API/C/WKSessionRef.cpp:
1335         (WKSessionCreate):
1336         * UIProcess/API/Cocoa/WKWebView.mm:
1337         (-[WKWebView initWithFrame:configuration:]):
1338         * UIProcess/API/Cocoa/_WKWebsiteDataStore.mm:
1339         (+[_WKWebsiteDataStore nonPersistentDataStore]):
1340         * UIProcess/APISession.cpp:
1341         (API::generateID):
1342         (API::Session::Session):
1343         (API::Session::createEphemeral):
1344         (API::Session::legacyPrivateSession): Deleted.
1345         (API::Session::create): Deleted.
1346         * UIProcess/APISession.h:
1347         * UIProcess/WebContext.cpp:
1348         (WebKit::WebContext::createWebPage):
1349         * UIProcess/WebPageProxy.cpp:
1350         (WebKit::WebPageProxy::WebPageProxy):
1351         (WebKit::WebPageProxy::setSessionID):
1352         (WebKit::WebPageProxy::creationParameters):
1353         (WebKit::WebPageProxy::setSession): Deleted.
1354         * UIProcess/WebPageProxy.h:
1355         (WebKit::WebPageProxy::sessionID):
1356
1357 2014-12-05  Eric Carlson  <eric.carlson@apple.com>
1358
1359         [iOS] allow host application to opt-out of alternate fullscreen pt. 2
1360         https://bugs.webkit.org/show_bug.cgi?id=139227
1361
1362         Reviewed by Jer Noble and Anders Carlsson.
1363
1364         * UIProcess/ios/WebVideoFullscreenManagerProxy.h: Add bool param to setupFullscreenWithID.
1365         * UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in: Ditto.
1366         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
1367         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID): Ditto.
1368
1369         * WebProcess/ios/WebVideoFullscreenManager.mm:
1370         (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): Pass new parameter
1371             to SetupFullscreenWithID.
1372
1373 2014-12-04  Anders Carlsson  <andersca@apple.com>
1374
1375         Add missing includes in preparation for making toAPI require that it's passed an API::Object
1376         https://bugs.webkit.org/show_bug.cgi?id=139278
1377
1378         Reviewed by Tim Horton.
1379
1380         * UIProcess/API/C/WKAuthenticationChallenge.cpp:
1381         * UIProcess/API/C/WKAuthenticationDecisionListener.cpp:
1382         * UIProcess/API/C/WKContext.cpp:
1383         * UIProcess/API/C/WKDownload.cpp:
1384         * UIProcess/API/C/WKFrame.cpp:
1385         * UIProcess/API/C/WKGeolocationManager.cpp:
1386         * UIProcess/API/C/WKInspector.cpp:
1387         * UIProcess/API/C/WKPage.cpp:
1388         * UIProcess/GenericCallback.h:
1389         * UIProcess/Notifications/WebNotificationProvider.cpp:
1390         * UIProcess/WebContextConnectionClient.cpp:
1391         * UIProcess/WebContextInjectedBundleClient.cpp:
1392         * UIProcess/WebCookieManagerProxyClient.cpp:
1393         * UIProcess/WebDatabaseManagerProxyClient.cpp:
1394         * UIProcess/WebFindClient.cpp:
1395         * UIProcess/WebFormClient.cpp:
1396         * UIProcess/WebIconDatabaseClient.cpp:
1397         * UIProcess/WebPageContextMenuClient.cpp:
1398         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1399         * WebProcess/InjectedBundle/API/c/WKBundleDOMWindowExtension.cpp:
1400         * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1401         * WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
1402         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
1403         * WebProcess/InjectedBundle/InjectedBundleClient.cpp:
1404         * WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
1405         * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1406         * WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
1407         * WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
1408         * WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
1409
1410 2014-12-04  Anders Carlsson  <andersca@apple.com>
1411
1412         Make API::String copy the underlying strings if needed, for thread safety
1413         https://bugs.webkit.org/show_bug.cgi?id=139261
1414
1415         Reviewed by Sam Weinig.
1416
1417         * Shared/API/c/WKString.cpp:
1418         (WKStringCreateWithUTF8CString):
1419         (WKStringCreateWithJSString):
1420         (WKStringCopyJSString):
1421         Move the implementations from API::String and directly into the API functions.
1422
1423         * Shared/APIString.h:
1424         Add a create overload that takes an rvalue reference. Call it from the create overload
1425         that takes an lvalue reference, but explicitly copy the string.
1426         We call isolatedCopy() again on the string in the rvalue reference overload, but that is a no-op
1427         if the string can be sent to another thread. Add assertions in the String constructor that we can
1428         send the string to another thread.
1429
1430 2014-12-04  Beth Dakin  <bdakin@apple.com>
1431
1432         Clients disabling action menus sometimes still invoke action menu behaviors
1433         https://bugs.webkit.org/show_bug.cgi?id=139270
1434         -and corresponding-
1435         rdar://problem/19147218
1436
1437         Reviewed by Tim Horton.
1438
1439         By default, we will keep a single item in the action menu up until the point where 
1440         _state == ActionMenuState::Ready. So by checking _state here, we are preventing 
1441         clients from opting out of our choice to wait. Ideally we would always still wait 
1442         for the Ready state, but this will get the best behavior in the mean time.
1443         * UIProcess/mac/WKActionMenuController.mm:
1444         (-[WKActionMenuController _updateActionMenuItems]):
1445
1446 2014-12-04  Antti Koivisto  <antti@apple.com>
1447
1448         REGRESSION (r173468): Cannot step in WebInspector
1449         https://bugs.webkit.org/show_bug.cgi?id=139260
1450
1451         Reviewed by Alexey Proskuryakov.
1452
1453         Inspector defers all loads and starts a nested runloop when it hits a breakpoint. When continuing it undefers the loads.
1454         If the script execution was triggered from the didFinishLoading callback of the main resource then the main resource would
1455         already be in the finished state in the network process side and setDefersLoading(false) message would end up restarting its load.
1456         Since loads are not meant to restart the generated callbacks would assert or crash the web process when handled in the next
1457         nested inspector runloop.
1458
1459         Fix by taking care that cleaned up NetworkResourceLoaders are always removed from the loader map of
1460         the NetworkConnectionToWebProcess and so can't end up handling late messages.
1461
1462         No test, this requires JS debugger to trigger.
1463
1464         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1465         (WebKit::NetworkConnectionToWebProcess::didCleanupResourceLoader):
1466
1467             This is now the only way to remove resource loaders.
1468             It is called from NetworkResourceLoader::cleanup only.
1469
1470         (WebKit::NetworkConnectionToWebProcess::didClose):
1471         (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
1472
1473             Calling abort  removes the resource loader (since it calls cleanup) so no need to do it explicitly anymore.
1474
1475         * NetworkProcess/NetworkConnectionToWebProcess.h:
1476         * NetworkProcess/NetworkResourceLoader.cpp:
1477         (WebKit::NetworkResourceLoader::start):
1478
1479             We are guaranteed to be reffed by NetworkConnectionToWebProcess until cleanup so the explicit ref/deref can be removed.
1480
1481         (WebKit::NetworkResourceLoader::cleanup):
1482
1483             Call to NetworkConnectionToWebProcess::didCleanupResourceLoader to make the loader unreachable.
1484
1485         * NetworkProcess/NetworkResourceLoader.h:
1486         (WebKit::NetworkResourceLoader::identifier):
1487
1488 2014-12-04  Timothy Horton  <timothy_horton@apple.com>
1489
1490         Fix the 32-bit build.
1491
1492         * UIProcess/API/mac/WKView.mm:
1493         (-[WKView _setTextIndicator:fadeOut:animationCompletionHandler:]):
1494
1495 2014-12-04  Tim Horton  <timothy_horton@apple.com>
1496
1497         TextIndicator::createWithSelectionInFrame does synchronous IPC in WebKit2
1498         https://bugs.webkit.org/show_bug.cgi?id=139252
1499         <rdar://problem/19140827>
1500
1501         Reviewed by Anders Carlsson.
1502
1503         It turns out contentsToScreen requires sync IPC in Mac WebKit2, which we
1504         really don't want to be doing here (especially since the UI process will often
1505         be sitting in waitForAndDispatchImmediately waiting for didPerformActionMenuHitTest).
1506
1507         Go back to keeping TextIndicator rects in "window" coordinates and do the conversion
1508         in each of the WebKits instead of trying to share that code.
1509
1510         * Shared/WebCoreArgumentCoders.cpp:
1511         (IPC::ArgumentCoder<TextIndicatorData>::encode):
1512         (IPC::ArgumentCoder<TextIndicatorData>::decode):
1513         * UIProcess/API/mac/WKView.mm:
1514         (-[WKView _setTextIndicator:fadeOut:animationCompletionHandler:]):
1515         * WebProcess/WebPage/FindController.cpp:
1516         (WebKit::FindController::updateFindIndicator):
1517         (WebKit::FindController::drawRect):
1518         Adjust to the WebCore changes.
1519
1520 2014-12-04  Anders Carlsson  <andersca@apple.com>
1521
1522         Simplify StorageManager callback functions
1523         https://bugs.webkit.org/show_bug.cgi?id=139257
1524
1525         Reviewed by Antti Koivisto.
1526
1527         * UIProcess/Storage/StorageManager.cpp:
1528         (WebKit::StorageManager::getOrigins):
1529         (WebKit::StorageManager::getStorageDetailsByOrigin):
1530         (WebKit::callCallbackFunction): Deleted.
1531         (WebKit::StorageManager::getOriginsInternal): Deleted.
1532         (WebKit::StorageManager::getStorageDetailsByOriginInternal): Deleted.
1533         * UIProcess/Storage/StorageManager.h:
1534         * UIProcess/WebKeyValueStorageManager.cpp:
1535         (WebKit::WebKeyValueStorageManager::getKeyValueStorageOrigins):
1536         (WebKit::WebKeyValueStorageManager::getStorageDetailsByOrigin):
1537         (WebKit::didGetKeyValueStorageOrigins): Deleted.
1538         (WebKit::didGetStorageDetailsByOrigin): Deleted.
1539
1540 2014-12-04  Csaba Osztrogonác  <ossy@webkit.org>
1541
1542         URTBF after r176794.
1543
1544         * UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
1545         (WebKit::fileCreationTime):
1546         (WebKit::fileModificationTime):
1547
1548 2014-12-03  Anders Carlsson  <andersca@apple.com>
1549
1550         Add a way to delete local storage origins modified after a given date
1551         https://bugs.webkit.org/show_bug.cgi?id=139249
1552
1553         Reviewed by Tim Horton.
1554
1555         Also change LocalStorageDatabaseTracker to hold on to WTF::Optional time_t values
1556         instead of treating missing values as zero.
1557
1558         * UIProcess/LocalStorageDetails.h:
1559         * UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
1560         (WebKit::fileCreationTime):
1561         (WebKit::fileModificationTime):
1562         (WebKit::LocalStorageDatabaseTracker::deleteDatabasesModifiedSince):
1563         (WebKit::LocalStorageDatabaseTracker::details):
1564         * UIProcess/Storage/LocalStorageDatabaseTracker.h:
1565         * UIProcess/Storage/StorageManager.cpp:
1566         (WebKit::StorageManager::deleteLocalStorageOriginsModifiedSince):
1567         * UIProcess/Storage/StorageManager.h:
1568         * UIProcess/WebKeyValueStorageManager.cpp:
1569         (WebKit::didGetStorageDetailsByOrigin):
1570
1571 2014-12-04  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
1572
1573         [EFL][WK2] Add ewk API to allow accepting a specific TLS certificate for a specific host
1574         https://bugs.webkit.org/show_bug.cgi?id=131160
1575
1576         Reviewed by Gyuyoung Kim.
1577
1578         * UIProcess/API/efl/ewk_context.cpp:
1579         (EwkContext::allowSpecificHTTPSCertificateForHost):
1580         (ewk_context_tls_certificate_for_host_allow):
1581         * UIProcess/API/efl/ewk_context.h:
1582         * UIProcess/API/efl/ewk_context_private.h:
1583         * UIProcess/API/efl/tests/test_ewk2_ssl.cpp:
1584
1585 2014-12-03  Commit Queue  <commit-queue@webkit.org>
1586
1587         Unreviewed, rolling out r176457.
1588         https://bugs.webkit.org/show_bug.cgi?id=139247
1589
1590         More iOS breakage (Requested by andersca on #webkit).
1591
1592         Reverted changeset:
1593
1594         "Fix iOS build."
1595         http://trac.webkit.org/changeset/176457
1596
1597 2014-12-03  Beth Dakin  <bdakin@apple.com>
1598
1599         <input> elements get whitespace action menu instead of editable text menu
1600         https://bugs.webkit.org/show_bug.cgi?id=139241
1601         -and corresponding-
1602         rdar://problem/19072083
1603
1604         Reviewed by Sam Weinig.
1605
1606         Add isOverTextInsideFormControlElement to WebHitTestResult.
1607         * Shared/WebHitTestResult.cpp:
1608         (WebKit::WebHitTestResult::Data::Data):
1609         (WebKit::WebHitTestResult::Data::encode):
1610         (WebKit::WebHitTestResult::Data::decode):
1611         * Shared/WebHitTestResult.h:
1612         (WebKit::WebHitTestResult::isOverTextInsideFormControlElement):
1613
1614         Offer the text menus for text inside form controls.
1615         * UIProcess/mac/WKActionMenuController.mm:
1616         (-[WKActionMenuController _defaultMenuItems]):
1617
1618         We should disallow shadow content in the hit test. This is the default and it is 
1619         how context menus behave. We originally wanted to text inside shadow content so 
1620         that we could find the text, but the new function I added to HitTestResult will 
1621         allow that.
1622         * WebProcess/WebPage/mac/WebPageMac.mm:
1623
1624         Adjust to the fact that we don’t hit test shadow content any more.
1625         (WebKit::WebPage::performActionMenuHitTestAtLocation):
1626         (WebKit::WebPage::lookupTextAtLocation):
1627         (WebKit::WebPage::focusAndSelectLastActionMenuHitTestResult):
1628
1629 2014-12-03  Commit Queue  <commit-queue@webkit.org>
1630
1631         Unreviewed, rolling out r176489.
1632         https://bugs.webkit.org/show_bug.cgi?id=139242
1633
1634         More iOS breakage (Requested by andersca on #webkit).
1635
1636         Reverted changeset:
1637
1638         "Unreviewed, iOS build fix after r176452."
1639         http://trac.webkit.org/changeset/176489
1640
1641 2014-12-03  Tim Horton  <timothy_horton@apple.com>
1642
1643         Implement action menus for tel: URLs
1644         https://bugs.webkit.org/show_bug.cgi?id=139240
1645         <rdar://problem/19115662>
1646
1647         Reviewed by Anders Carlsson.
1648
1649         * Shared/API/c/WKActionMenuTypes.h:
1650         Add a new type.
1651
1652         * UIProcess/mac/WKActionMenuController.mm:
1653         (-[WKActionMenuController _defaultMenuItemsForDataDetectableLink]):
1654         Rename this function as it will work for both mailto and tel URLs.
1655         Adjust it to use contextForView:.
1656
1657         (-[WKActionMenuController _clearActionMenuState]):
1658         (-[WKActionMenuController menuNeedsUpdate:]):
1659         (-[WKActionMenuController _defaultMenuItems]):
1660         Don't check the menu type when going to interact with _currentActionContext.
1661         We'll only have a _currentActionContext if we have a data detected item,
1662         and there are multiple menu types that end up using DDActionContext.
1663
1664 2014-12-03  Commit Queue  <commit-queue@webkit.org>
1665
1666         Unreviewed, rolling out r176452 and r176559.
1667         https://bugs.webkit.org/show_bug.cgi?id=139239
1668
1669         Broke iOS (Requested by andersca on #webkit).
1670
1671         Reverted changesets:
1672
1673         "Remove alignment code from IPC coders"
1674         https://bugs.webkit.org/show_bug.cgi?id=138963
1675         http://trac.webkit.org/changeset/176452
1676
1677         "[WK2] SecComp buildfix after r176452"
1678         https://bugs.webkit.org/show_bug.cgi?id=139081
1679         http://trac.webkit.org/changeset/176559
1680
1681 2014-12-03  Tim Horton  <timothy_horton@apple.com>
1682
1683         Keyboard input should be disabled in the preview popover
1684         https://bugs.webkit.org/show_bug.cgi?id=139219
1685         <rdar://problem/19052381>
1686
1687         Reviewed by Anders Carlsson.
1688
1689         Make sure that keyboard input, Quick Look, etc. are blocked in preview popovers
1690         and WKThumbnailViews. Also block the fake mouseMove events that originate in
1691         the Web process upon scrolling, because we were missing those despite blocking
1692         ordinary mouseMove events.
1693
1694         * UIProcess/API/Cocoa/WKViewPrivate.h:
1695         * UIProcess/API/mac/WKView.mm:
1696         Rename _ignoresNonWheelMouseEvents to _ignoresNonWheelEvents, because it will
1697         apply not only to mouse events but also key events, Quick Look events, menu
1698         preparation events, swipe events, etc.
1699
1700         Add _ignoresAllEvents, which means the same thing as _ignoresNonWheelEvents
1701         with the addition of ignoring scrollWheel events.
1702
1703         (-[WKView scrollWheel:]):
1704         (-[WKView swipeWithEvent:]):
1705         (-[WKView mouseMoved:]):
1706         (-[WKView mouseDown:]):
1707         (-[WKView mouseUp:]):
1708         (-[WKView mouseDragged:]):
1709         Adjust to the new name.
1710
1711         (-[WKView performKeyEquivalent:]):
1712         (-[WKView keyUp:]):
1713         (-[WKView keyDown:]):
1714         (-[WKView flagsChanged:]):
1715         (-[WKView quickLookWithEvent:]):
1716         (-[WKView prepareForMenu:withEvent:]):
1717         (-[WKView willOpenMenu:withEvent:]):
1718         (-[WKView didCloseMenu:withEvent:]):
1719         Block all of these events as well as those we were previously blocking.
1720
1721         (-[WKView _setIgnoresAllEvents:]):
1722         (-[WKView _setIgnoresNonWheelMouseEvents:]):
1723         (-[WKView _setIgnoresNonWheelEvents:]):
1724         (-[WKView _ignoresNonWheelEvents]):
1725         (-[WKView _ignoresAllEvents]):
1726         * UIProcess/API/mac/WKViewInternal.h:
1727         Adjust to the new names and the addition of ignoresAllEvents.
1728
1729         * UIProcess/mac/WKActionMenuController.mm:
1730         (-[WKPagePreviewViewController loadView]):
1731         Adjust to the new name.
1732
1733         (-[WKActionMenuController prepareForMenu:withEvent:]):
1734         Move bailing from prepareForMenu: up to WKView.
1735
1736         * UIProcess/API/Cocoa/WKWebView.mm:
1737         (-[WKWebView _ignoresNonWheelEvents]):
1738         (-[WKWebView _setIgnoresNonWheelEvents:]):
1739         (-[WKWebView _ignoresNonWheelMouseEvents]): Deleted.
1740         (-[WKWebView _setIgnoresNonWheelMouseEvents:]): Deleted.
1741         * UIProcess/API/Cocoa/WKWebViewInternal.h:
1742         Adjust to the new name (without "mouse" in it).
1743
1744         * UIProcess/API/Cocoa/_WKThumbnailView.mm:
1745         (-[_WKThumbnailView _viewWasUnparented]):
1746         (-[_WKThumbnailView _viewWasParented]):
1747         Explicitly tell WKView to disable event handling while thumbnailed,
1748         instead of having WKView special-case thumbnail views internally.
1749
1750         * UIProcess/WebPageProxy.cpp:
1751         (WebKit::WebPageProxy::setShouldDispatchFakeMouseMoveEvents):
1752         * UIProcess/WebPageProxy.h:
1753         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1754         (WebKit::WebChromeClient::shouldDispatchFakeMouseMoveEvents):
1755         * WebProcess/WebCoreSupport/WebChromeClient.h:
1756         * WebProcess/WebPage/WebPage.cpp:
1757         (WebKit::WebPage::WebPage):
1758         * WebProcess/WebPage/WebPage.h:
1759         (WebKit::WebPage::shouldDispatchFakeMouseMoveEvents):
1760         (WebKit::WebPage::setShouldDispatchFakeMouseMoveEvents):
1761         * WebProcess/WebPage/WebPage.messages.in:
1762         Plumb shouldDispatchFakeMouseMoveEvents from the UI process to the Web process
1763         and through to WebKit2's ChromeClient implementation.
1764
1765 2014-12-03  Anders Carlsson  <andersca@apple.com>
1766
1767         Remove ENABLE_UI_PROCESS_STORAGE define, it's always 1.
1768
1769         Rubber-stamped by Beth Dakin.
1770
1771         * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1772         (WebKit::WebPlatformStrategies::localStorageNamespace):
1773         (WebKit::WebPlatformStrategies::transientLocalStorageNamespace):
1774         (WebKit::WebPlatformStrategies::sessionStorageNamespace):
1775
1776 2014-12-03  Anders Carlsson  <andersca@apple.com>
1777
1778         Use an @autoreleasepool instead of NSAutoreleasePool.
1779
1780         Rubber-stamped by Tim Horton.
1781
1782         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1783         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
1784
1785 2014-12-03  Dan Bernstein  <mitz@apple.com>
1786
1787         REGRESSION(r176687): Caused webkit2 test assertion failure crashes in WebKit::WebPage::willStartDrag()
1788         https://bugs.webkit.org/show_bug.cgi?id=139224
1789
1790         Reviewed by Alexey Proskuryakov.
1791
1792         * WebProcess/WebPage/WebPage.cpp:
1793         (WebKit::WebPage::mouseEventSyncForTesting): Wait for the UI process to start dragging if
1794         needed before handling the event.
1795
1796 2014-12-03  Michael Catanzaro  <mcatanzaro@igalia.com>
1797
1798         [GTK] outdated comment
1799         https://bugs.webkit.org/show_bug.cgi?id=137801
1800
1801         Reviewed by Carlos Garcia Campos.
1802
1803         Remove a comment that is no longer correct.
1804
1805         * NetworkProcess/gtk/NetworkProcessMainGtk.cpp:
1806
1807 2014-12-02  Conrad Shultz  <conrad_shultz@apple.com>
1808
1809         Don't block menu highlighting when presenting a page preview
1810         https://bugs.webkit.org/show_bug.cgi?id=139217
1811
1812         Reviewed by Tim Horton.
1813
1814         * UIProcess/mac/WKActionMenuController.mm:
1815         (-[WKActionMenuController _previewURLFromActionMenu:]):
1816         Defer popover presentation to the next turn of the runloop.
1817
1818 2014-12-02  Timothy Horton  <timothy_horton@apple.com>
1819
1820         Fix the build.
1821
1822         * UIProcess/mac/WebContextMac.mm:
1823
1824 2014-12-02  Dan Bernstein  <mitz@apple.com>
1825
1826         <rdar://problem/18441138> [iOS] Text selection in WKWebView with WKSelectionGranularityCharacter only works in the most recent WKWebView to load
1827         https://bugs.webkit.org/show_bug.cgi?id=139211
1828
1829         Reviewed by Anders Carlsson.
1830
1831         * UIProcess/ios/WKContentViewInteraction.mm:
1832         (-[WKContentView becomeFirstResponder]): Override to activate the text selection for when
1833         becoming first resopnder.
1834         (-[WKContentView resignFirstResponder]): Deactiavte the text selection when resigning first
1835         responder. This ensures that if another WKWebView becomes first responder, and it uses
1836         block selection, we don’t end up with two active selection views.
1837         (-[WKContentView useSelectionAssistantWithMode:]): Only activate the text selection if this
1838         is the first responder. This ensures that loading content into a non-first-responder
1839         WKWebView doesn‘t deactivate the text selection in the current first responder.
1840
1841 2014-12-02  Alexey Proskuryakov  <ap@apple.com>
1842
1843         http/tests/appcache/main-resource-fallback-for-network-error-crash.html can break subsequent tests
1844         https://bugs.webkit.org/show_bug.cgi?id=139149
1845
1846         Reviewed by Anders Carlsson.
1847
1848         This changes API behavior. I think that it's OK, because existing behavior made no sense.
1849         We used to delete caches from disk, but they were still active in memory. Now we also
1850         obsolete them in memory, so documents that use a cache still work, but new ones don't
1851         pick one up.
1852
1853         * WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:
1854         (WebKit::WebApplicationCacheManager::deleteAllEntries): Use the new WebCore function
1855         that properly deletes caches.
1856
1857 2014-12-02  Tim Horton  <timothy_horton@apple.com>
1858
1859         Remove a SnowLeopard-era quirk for QuickLook
1860         https://bugs.webkit.org/show_bug.cgi?id=139208
1861         <rdar://problem/19121822>
1862
1863         Reviewed by Alexey Proskuryakov.
1864
1865         * Shared/WebProcessCreationParameters.cpp:
1866         (WebKit::WebProcessCreationParameters::encode):
1867         (WebKit::WebProcessCreationParameters::decode):
1868         * Shared/WebProcessCreationParameters.h:
1869         * UIProcess/mac/WebContextMac.mm:
1870         (WebKit::WebContext::platformInitializeWebProcess):
1871         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1872         (WebKit::WebFrameLoaderClient::needsQuickLookResourceCachingQuirks): Deleted.
1873         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
1874         * WebProcess/WebProcess.cpp:
1875         (WebKit::WebProcess::WebProcess):
1876         * WebProcess/WebProcess.h:
1877         (WebKit::WebProcess::needsQuickLookResourceCachingQuirks): Deleted.
1878         * WebProcess/cocoa/WebProcessCocoa.mm:
1879         (WebKit::WebProcess::platformInitializeWebProcess):
1880
1881 2014-12-02  Beth Dakin  <bdakin@apple.com>
1882
1883         Build fix.
1884
1885         * UIProcess/mac/WKActionMenuController.mm:
1886         (-[WKActionMenuController _defaultMenuItemsForLink]):
1887
1888 2014-12-02  Beth Dakin  <bdakin@apple.com>
1889
1890         More build fix.
1891
1892         * UIProcess/mac/WKActionMenuController.mm:
1893         (-[WKActionMenuController _defaultMenuItemsForLink]):
1894
1895 2014-12-02  Dan Bernstein  <mitz@apple.com>
1896
1897         REGRESSION: Dragging selected text changes the selection
1898         https://bugs.webkit.org/show_bug.cgi?id=139110
1899
1900         Reviewed by Simon Fraser.
1901
1902         After it sent the UI process the message to start dragging, the Web process handled mouse
1903         move events that had already been in flight, interpreting them as a drag to start a new
1904         selection. This is fixed by ignoring any mouse events received after asking the UI process
1905         to start dragging.
1906
1907         * UIProcess/mac/WebPageProxyMac.mm:
1908         (WebKit::WebPageProxy::setDragImage): Send the new DidStartDrag message back to the Web
1909         process, so that it stops ignoring mouse events.
1910
1911         * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
1912         (WebKit::WebDragClient::startDrag): Call the new WebPage::willStartDrag, so that it starts
1913         ignoring mouse events.
1914
1915         * WebProcess/WebPage/WebPage.cpp:
1916         (WebKit::WebPage::WebPage): Initialize new member variable.
1917         (WebKit::WebPage::mouseEvent): Don’t handle the event if we have asked the UI process to
1918         start dragging.
1919
1920         * WebProcess/WebPage/WebPage.h:
1921         (WebKit::WebPage::willStartDrag): Added. Sets new member variable m_isStartingDrag to true.
1922         (WebKit::WebPage::didStartDrag): Added. Handles the message from the UI process by setting
1923         m_isStartingDrag back to false.
1924
1925         * WebProcess/WebPage/WebPage.messages.in: Added DidStartDrag.
1926
1927 2014-12-02  Beth Dakin  <bdakin@apple.com>
1928
1929         Should use standardQuickLookMenuItem for apps that don't implement customizations
1930         https://bugs.webkit.org/show_bug.cgi?id=139193
1931         -and corresponding-
1932         rdar://problem/18944696
1933
1934         Reviewed by Anders Carlsson.
1935
1936         New SPI will allow clients to opt-out of the standardQuickLookMenuItem. By 
1937         default, opt in.
1938         * UIProcess/API/Cocoa/WKViewPrivate.h:
1939         * UIProcess/API/mac/WKView.mm:
1940         (-[WKView _shouldUseStandardQuickLookPreview]):
1941         * UIProcess/mac/WKActionMenuController.mm:
1942
1943         Use [NSMenuItem standardQuickLookMenuItem] unless the client has requested 
1944         otherwise.
1945         (-[WKActionMenuController _defaultMenuItemsForLink]):
1946
1947         Delegate methods to set up the standardQuickLookMenuItem.
1948         (-[WKActionMenuController menuItem:viewAtScreenPoint:]):
1949         (-[WKActionMenuController menuItem:previewItemAtPoint:]):
1950         (-[WKActionMenuController menuItem:preferredEdgeForPoint:]):
1951
1952 2014-12-02  Tim Horton  <timothy_horton@apple.com>
1953
1954         TextIndicator can get stuck (especially if we don't get LUNotificationPopoverWillClose when we should)
1955         https://bugs.webkit.org/show_bug.cgi?id=139175
1956         <rdar://problem/19072236>
1957
1958         Reviewed by Beth Dakin.
1959
1960         * UIProcess/API/mac/WKView.mm:
1961         (-[WKView scrollWheel:]):
1962         (-[WKView mouseDown:]):
1963         Work around <rdar://problem/19086993> by always explicitly clearing the
1964         active text indicator in mouseDown: and scrollWheel:.
1965         This way, even if you manage to get a text indicator that outlives the
1966         Look Up popover (or find-in-page, or whatever), it will be dismissed
1967         by clicking or scrolling the view.
1968
1969 2014-12-02  Anders Carlsson  <andersca@apple.com>
1970
1971         Remove visited link handling from PageGroup
1972         https://bugs.webkit.org/show_bug.cgi?id=139185
1973
1974         Reviewed by Sam Weinig.
1975
1976         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1977         (WebKit::WebChromeClient::populateVisitedLinks): Deleted.
1978         * WebProcess/WebCoreSupport/WebChromeClient.h:
1979
1980 2014-12-01  Anders Carlsson  <andersca@apple.com>
1981
1982         Remove WKBundleRemoveAllVisitedLinks
1983         https://bugs.webkit.org/show_bug.cgi?id=139163
1984
1985         Reviewed by Sam Weinig.
1986
1987         WKBundleRemoveAllVisitedLinks has been a no-op since at least Yosemite; get rid of it.
1988
1989         * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1990         (WKBundleRemoveAllVisitedLinks): Deleted.
1991         * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1992         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1993         (WebKit::InjectedBundle::removeAllVisitedLinks): Deleted.
1994         * WebProcess/InjectedBundle/InjectedBundle.h:
1995
1996 2014-12-02  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
1997
1998         Fix class was previously declared as a struct warnings
1999         https://bugs.webkit.org/show_bug.cgi?id=139131
2000
2001         Reviewed by Csaba Osztrogonác.
2002
2003         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2004         * UIProcess/CoordinatedGraphics/WebViewClient.h:
2005
2006 2014-12-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2007
2008         [EFL] ewk_view_scale_set() doesn't work correctly
2009         https://bugs.webkit.org/show_bug.cgi?id=139109
2010
2011         Reviewed by Csaba Osztrogonác.
2012
2013         When ewk_view_scale_set() is called, it has only updated a scale factor which is maintained by WebPageProxy.
2014         It causes WebPageProxy unsynchronized with PageViewportController's scale factor. That's why wrong scale
2015         behavior has occured through ewk_view_scale_set(). Besides zooming has similar problem as well.
2016
2017         Thus this patch updates m_pageScaleFactor of PageViewportController as well as prohibits to change the scale
2018         factor through viewport meta tag update. Because ewk_view_scale_set() means that user wants to set a specific
2019         value to scale factor of current viewport.
2020
2021         * UIProcess/API/efl/EwkView.cpp:
2022         (EwkView::updateScaleToPageViewportController):
2023             Set m_initiallyFitToViewport to false. And call didChangeContentsVisibility() with new scale and scale position.
2024
2025         * UIProcess/API/efl/EwkView.h:
2026         * UIProcess/API/efl/ewk_view.cpp:
2027         (ewk_view_scale_set):
2028         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
2029         (TEST_F):
2030         * UIProcess/CoordinatedGraphics/PageViewportController.cpp:
2031         (WebKit::PageViewportController::didCommitLoad):
2032             Set m_initiallyFitToViewport to true in order to fit content to viewport size by default.
2033             Initizlize content position with (0, 0).
2034
2035         (WebKit::PageViewportController::pageTransitionViewportReady):
2036            Do not update scale when m_initiallyFitToViewport is false.
2037
2038         (WebKit::PageViewportController::syncVisibleContents):
2039            Return false when syncVisibleContents is failed.
2040
2041         (WebKit::PageViewportController::didChangeViewportAttributes):
2042            Do not update scale when m_initiallyFitToViewport is false.
2043
2044         (WebKit::PageViewportController::applyScaleAfterRenderingContents):
2045             If syncVisibleContents() is failed, m_pageScaleFactor should be restored with previous value.
2046             If not, new scale factor isn't applied though, PageViewportController uses it as own scale factor.
2047
2048         (WebKit::PageViewportController::updateMinimumScaleToFit):
2049            Do not update scale when m_initiallyFitToViewport is false or m_hadUserInteraction is true.
2050
2051         * UIProcess/CoordinatedGraphics/PageViewportController.h:
2052         (WebKit::PageViewportController::setInitiallyFitToViewport):
2053
2054 2014-11-20  Jeffrey Pfau  <jpfau@apple.com>
2055
2056         Add cancelable version of willSendRequest
2057         https://bugs.webkit.org/show_bug.cgi?id=138987
2058
2059         Reviewed by Anders Carlsson.
2060
2061         * WebProcess/Network/WebResourceLoader.cpp:
2062         (WebKit::WebResourceLoader::willSendRequest):
2063
2064 2014-12-01  Conrad Shultz  <conrad_shultz@apple.com>
2065
2066         Clients need a way to explicitly set the title of a page preview
2067         https://bugs.webkit.org/show_bug.cgi?id=139161
2068
2069         Reviewed by Beth Dakin.
2070
2071         This implicitly assumes that only one page preview can be associate with a given WKView at a time.
2072
2073         * UIProcess/API/Cocoa/WKViewPrivate.h:
2074         * UIProcess/API/mac/WKView.mm:
2075         (-[WKView _setPreviewTitle:]):
2076         Wrap -[WKActionMenuController setPreviewTitle:]
2077
2078         * UIProcess/mac/WKActionMenuController.h:
2079         * UIProcess/mac/WKActionMenuController.mm:
2080         Add ivars for the title and the title text field (previously not independently exposed).
2081         (-[WKPagePreviewViewController previewTitle]):
2082         Accessor.
2083         (-[WKPagePreviewViewController setPreviewTitle:]):
2084         Accessor; set the text field's string value.
2085         (-[WKPagePreviewViewController loadView]):
2086         Adopt the _titleTextField ivar; assume that if a client has explicitly set the previewTitle then we don't
2087         need to ask for it again.
2088         (-[WKActionMenuController setPreviewTitle:]):
2089         Wrap -[WKPagePreviewViewController setPreviewTitle:].
2090
2091 2014-12-01  Anders Carlsson  <andersca@apple.com>
2092
2093         Make WebKit2 work slightly better with garbage collection
2094         https://bugs.webkit.org/show_bug.cgi?id=139159
2095         <rdar://problem/19108390>
2096
2097         Reviewed by Dan Bernstein.
2098
2099         * Shared/Cocoa/APIObject.mm:
2100         (API::Object::ref):
2101         (API::Object::deref):
2102         Call CFRetain/CFRelease to prevent the memory from being collected.
2103
2104         (API::Object::newObject):
2105         Call CFRetain under GC so we'll prevent memory from being collected prematurely.
2106
2107 2014-12-01  Tim Horton  <timothy_horton@apple.com>
2108
2109         Implement yellow highlight for WebKit1 data detectors
2110         https://bugs.webkit.org/show_bug.cgi?id=138956
2111         <rdar://problem/18992185>
2112
2113         Reviewed by Beth Dakin.
2114
2115         * Shared/WebCoreArgumentCoders.cpp:
2116         (IPC::ArgumentCoder<TextIndicatorData>::encode):
2117         (IPC::ArgumentCoder<TextIndicatorData>::decode):
2118         * WebProcess/WebPage/FindController.cpp:
2119         (WebKit::FindController::updateFindIndicator):
2120         (WebKit::FindController::drawRect):
2121         Adjust to the fact that TextIndicator keeps screen-relative rects.
2122
2123 2014-12-01  Anders Carlsson  <andersca@apple.com>
2124
2125         Remove old site specific quirks code that was added in 2009
2126         https://bugs.webkit.org/show_bug.cgi?id=139141
2127
2128         Reviewed by Antti Koivisto.
2129
2130         * NetworkProcess/RemoteNetworkingContext.h:
2131         * NetworkProcess/mac/RemoteNetworkingContext.mm:
2132         (WebKit::RemoteNetworkingContext::needsSiteSpecificQuirks): Deleted.
2133         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2134         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
2135         (WebKit::WebFrameNetworkingContext::needsSiteSpecificQuirks): Deleted.
2136
2137 2014-12-01  Joseph Pecoraro  <pecoraro@apple.com>
2138
2139         Web Inspector: Crash in WebInspectorClient::hideHighlight when page is destroyed
2140         https://bugs.webkit.org/show_bug.cgi?id=139136
2141
2142         Reviewed by Simon Fraser.
2143
2144         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
2145         (WebKit::WebInspectorClient::hideHighlight):
2146         Speculatively fix by null-checking the main frame which
2147         can be null during page destruction.
2148
2149 2014-11-30  Jaehun Lim  <ljaehun.lim@samsung.com>
2150
2151         [EFL] Add eldbus to the library list
2152         https://bugs.webkit.org/show_bug.cgi?id=139120
2153
2154         Reviewed by Gyuyoung Kim.
2155
2156         Fix undefined reference errors for eldbus APIs.
2157
2158         * PlatformEfl.cmake:
2159
2160 2014-11-29  Anders Carlsson  <andersca@apple.com>
2161
2162         Crash when calling WKPageClose on the originated page from within createNewPage callback
2163         https://bugs.webkit.org/show_bug.cgi?id=139099
2164         <rdar://problem/19052564>
2165
2166         Reviewed by Sam Weinig.
2167
2168         Null check the namespace ID.
2169
2170         * UIProcess/Storage/StorageManager.cpp:
2171         (WebKit::StorageManager::cloneSessionStorageNamespaceInternal):
2172
2173 2014-11-28  Tim Horton  <timothy_horton@apple.com>
2174
2175         Stale userData is handed to WKView _actionMenuItemsForHitTestResult under prepareForMenu
2176         https://bugs.webkit.org/show_bug.cgi?id=139069
2177         <rdar://problem/19075587>
2178
2179         Reviewed by Sam Weinig.
2180
2181         * UIProcess/mac/WKActionMenuController.mm:
2182         (-[WKActionMenuController wkView:willHandleMouseDown:]):
2183         (-[WKActionMenuController didCloseMenu:withEvent:]):
2184         (-[WKActionMenuController _clearActionMenuState]):
2185         Previously, _userData was not being cleared in didCloseMenu, so a subsequent
2186         action menu invocation would end up sending stale userData to _actionMenuItemsForHitTestResult.
2187
2188         Additionally, factor all of the cleanup code out into _clearActionMenuState,
2189         and call it from both wkView:willHandleMouseDown: and didCloseMenu:withEvent:.
2190
2191 2014-11-26  Timothy Horton  <timothy_horton@apple.com>
2192
2193         DataDetectors PageOverlay callbacks are never called
2194         https://bugs.webkit.org/show_bug.cgi?id=139067
2195         <rdar://problem/19086676>
2196
2197         Reviewed by Anders Carlsson.
2198
2199         * Shared/mac/ActionMenuHitTestResult.mm:
2200         (WebKit::ActionMenuHitTestResult::encode):
2201         (WebKit::ActionMenuHitTestResult::decode):
2202         Encode/decode the PageOverlay ID.
2203
2204 2014-11-28  Simon Fraser  <simon.fraser@apple.com>
2205
2206         Allow clients of the WKRenderLayerRef C SPI to connect layer trees across frame boundaries
2207         https://bugs.webkit.org/show_bug.cgi?id=139021
2208
2209         Reviewed by Dan Bernstein.
2210         
2211         Add WKRenderLayerGetFrameContentsLayer which returns a WKRenderLayerRef for
2212         the content document of a RenderWidget, if its has one (e.g. frames, iframes
2213         and <object> with document contents).
2214
2215         * Shared/API/c/WKRenderLayer.cpp:
2216         (WKRenderLayerGetFrameContentsLayer):
2217         * Shared/API/c/WKRenderLayer.h:
2218         * Shared/UserMessageCoders.h:
2219         (WebKit::UserMessageEncoder::baseEncode):
2220         (WebKit::UserMessageDecoder::baseDecode):
2221         * Shared/WebRenderLayer.cpp:
2222         (WebKit::WebRenderLayer::create):
2223         (WebKit::WebRenderLayer::WebRenderLayer):
2224         * Shared/WebRenderLayer.h:
2225         (WebKit::WebRenderLayer::frameContentsLayer):
2226
2227 2014-11-28  Csaba Osztrogonác  <ossy@webkit.org>
2228
2229         [WK2] SecComp buildfix after r176452
2230         https://bugs.webkit.org/show_bug.cgi?id=139081
2231
2232         Reviewed by Antti Koivisto.
2233
2234         * Shared/linux/SeccompFilters/SeccompBroker.cpp:
2235         (WebKit::SeccompBrokerClient::dispatch):
2236         (WebKit::SeccompBroker::runLoop):
2237
2238 2014-11-28  Csaba Osztrogonác  <ossy@webkit.org>
2239
2240         Fix -Wc++11-narrowing error in SeccompFilters.cpp
2241         https://bugs.webkit.org/show_bug.cgi?id=139079
2242
2243         Reviewed by Carlos Garcia Campos.
2244
2245         * Shared/linux/SeccompFilters/SeccompFilters.cpp:
2246         (WebKit::SeccompFilters::addRule):
2247         * Shared/linux/SeccompFilters/SeccompFilters.h:
2248
2249 2014-11-28  Csaba Osztrogonác  <ossy@webkit.org>
2250
2251         [WK2] SecComp buildfix after r168605 and r168999
2252         https://bugs.webkit.org/show_bug.cgi?id=139080
2253
2254         Reviewed by Carlos Garcia Campos.
2255
2256         * Shared/linux/SeccompFilters/SyscallPolicy.cpp:
2257         (WebKit::SyscallPolicy::addDefaultWebProcessPolicy):
2258
2259 2014-11-27  Ryuan Choi  <ryuan.choi@navercorp.com>
2260
2261         [EFL] Remove E_Dbus dependency
2262         https://bugs.webkit.org/show_bug.cgi?id=136355
2263
2264         Reviewed by Gyuyoung Kim.
2265
2266         * UIProcess/API/efl/ewk_main.cpp: Added init/shutdown for eldbus.
2267         (WebKit::EwkMain::initialize):
2268         (WebKit::EwkMain::finalize):
2269         (WebKit::EwkMain::shutdownInitializedEFLModules):
2270
2271 2014-11-25  Anders Carlsson  <andersca@apple.com>
2272
2273         Remove user content handling from PageGroup
2274         https://bugs.webkit.org/show_bug.cgi?id=139051
2275
2276         Reviewed by Antti Koivisto.
2277
2278         * WebProcess/InjectedBundle/InjectedBundle.cpp:
2279         (WebKit::InjectedBundle::addUserScript):
2280         (WebKit::InjectedBundle::addUserStyleSheet):
2281         (WebKit::InjectedBundle::removeUserScript):
2282         (WebKit::InjectedBundle::removeUserStyleSheet):
2283         (WebKit::InjectedBundle::removeUserScripts):
2284         (WebKit::InjectedBundle::removeUserStyleSheets):
2285         (WebKit::InjectedBundle::removeAllUserContent):
2286         Talk to the user content controller from the passed in WebPageGroupProxy.
2287
2288         * WebProcess/WebPage/WebPage.cpp:
2289         (WebKit::WebPage::WebPage):
2290         Create the WebPageGroupProxy before creating the page so we can get its user content controller and
2291         pass it to the page configuration if necessary.
2292         
2293         * WebProcess/WebPage/WebPageGroupProxy.cpp:
2294         (WebKit::WebPageGroupProxy::userContentController):
2295         New function that lazily creates a user content controller. We don't want to create this eagerly since
2296         it's not used with the modern API.
2297
2298         (WebKit::WebPageGroupProxy::addUserStyleSheet):
2299         (WebKit::WebPageGroupProxy::addUserScript):
2300         (WebKit::WebPageGroupProxy::removeAllUserStyleSheets):
2301         (WebKit::WebPageGroupProxy::removeAllUserScripts):
2302         (WebKit::WebPageGroupProxy::removeAllUserContent):
2303         Call through to the user content controller.
2304
2305         * WebProcess/WebPage/WebPageGroupProxy.h:
2306         Add an m_userContentController member.
2307
2308 2014-11-25  Ting-Wei Lan  <lantw44@gmail.com>
2309
2310         [GTK] Use LD_LIBRARY_PATH to make g-ir-scanner use the newly-built
2311         version of libraries when running the temporary executable
2312         https://bugs.webkit.org/show_bug.cgi?id=138833
2313
2314         Reviewed by Carlos Garcia Campos.
2315
2316         This patch modifies LD_LIBRARY_PATH to make sure the dynamic linker
2317         find the correct version of libraries when running the temporary
2318         executable to generate the .gir file.
2319
2320         * PlatformGTK.cmake:
2321
2322 2014-11-25  Csaba Osztrogonác  <ossy@webkit.org>
2323
2324         [EFL] REGRESSION(r176514): It made performance tests fail
2325         https://bugs.webkit.org/show_bug.cgi?id=139037
2326
2327         Reviewed by Gyuyoung Kim.
2328
2329         * WebProcess/efl/WebProcessMainEfl.cpp: Don't try to load/shutdown eail if eailLibraryPath() is empty.
2330
2331 2014-11-24  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2332
2333         Remove Qt cruft related to tap higlighting
2334         https://bugs.webkit.org/show_bug.cgi?id=139030
2335
2336         Reviewed by Andreas Kling.
2337
2338         * CMakeLists.txt:
2339         * WebProcess/WebPage/TapHighlightController.cpp: Removed.
2340         * WebProcess/WebPage/TapHighlightController.h: Removed.
2341
2342 2014-11-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2343
2344         Unreviewed, EFL build fix since r176530.
2345
2346         * UIProcess/CoordinatedGraphics/WebView.cpp: Replace pointer with reference.
2347         (WebKit::WebView::processDidExit):
2348
2349 2014-11-24  Benjamin Poulain  <bpoulain@apple.com>
2350
2351         [WK2] Remove some bad stuff from WebPageProxy
2352         https://bugs.webkit.org/show_bug.cgi?id=138896
2353
2354         Reviewed by Sam Weinig.
2355
2356         The state loadStateAtProcessExit does not seem to be used anywhere.
2357
2358         The state urlAtProcessExit only exists to forward the url from
2359         WebPageProxy::resetStateAfterProcessExited() to the coordinated graphics code
2360         WebView::processDidExit().
2361
2362         * UIProcess/CoordinatedGraphics/WebView.cpp:
2363         (WebKit::WebView::processDidExit):
2364         * UIProcess/WebPageProxy.cpp:
2365         (WebKit::WebPageProxy::WebPageProxy):
2366         (WebKit::WebPageProxy::resetStateAfterProcessExited):
2367         * UIProcess/WebPageProxy.h:
2368         (WebKit::WebPageProxy::urlAtProcessExit): Deleted.
2369         (WebKit::WebPageProxy::loadStateAtProcessExit): Deleted.
2370
2371 2014-11-24  Ryuan Choi  <ryuan.choi@navercorp.com>
2372
2373         [EFL] REGRESSION(176066): It made all performance tests fail
2374         https://bugs.webkit.org/show_bug.cgi?id=138865
2375
2376         Reviewed by Csaba Osztrogonác.
2377
2378         Since r176066, there are crash because evas_gl_surface is destroyed with
2379         invalid evas_gl instance after evas_gl is destroyed.
2380
2381         * UIProcess/API/efl/EwkView.cpp:
2382         (EwkView::~EwkView):
2383
2384 2014-11-24  Alberto Garcia  <berto@igalia.com>
2385
2386         Webkit2 doesnt build on powerpc 32 bits
2387         https://bugs.webkit.org/show_bug.cgi?id=130837
2388
2389         Reviewed by Carlos Garcia Campos.
2390
2391         Check if libatomic is needed in order to use std::atomic, and add
2392         it to the list of WebKit2 libraries.
2393
2394         * PlatformGTK.cmake:
2395
2396 2014-11-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2397
2398         Unreviewed. Update OptionsGTK.cmake and NEWS for 2.7.2 release.
2399
2400         * gtk/NEWS: Add release notes for 2.7.2.
2401
2402 2014-11-24  Krzysztof Czech  <k.czech@samsung.com>
2403
2404         [EFL] Utilize Eail library to support accessibility in EFL
2405         https://bugs.webkit.org/show_bug.cgi?id=137742
2406
2407         Reviewed by Gyuyoung Kim.
2408
2409         Initialize EAIL module so that all the listeners and atk-bridge started properly.
2410         Dynamic loading of EAIL help us to avoid elementary dependencies in WebKit.
2411
2412         * WebProcess/efl/WebProcessMainEfl.cpp:
2413         (eailLibraryPath): reads path provided by ACCESSIBILITY_EAIL_LIBRARY_PATH variable.
2414         (eail):
2415
2416 2014-11-24  Carlos Garcia Campos  <cgarcia@igalia.com>
2417
2418         [GTK] WebKitWebView is created with the wrong web context when using webkit_web_view_new_with_related_view()
2419         https://bugs.webkit.org/show_bug.cgi?id=139023
2420
2421         Reviewed by Sergio Villar Senin.
2422
2423         The WebKitWebContext is a construct only property, so it's always
2424         set to the default value when not provided, during the
2425         construction. When a related-view is used to create a new web view
2426         we should ensure that the same web context is used for the new web
2427         view, instead of the default. We should also ignore any web
2428         context given as construct parameter if a related view is alos provided.
2429
2430         * UIProcess/API/gtk/WebKitWebView.cpp:
2431         (webkitWebViewConstructed): Do not set the context to the default
2432         one when not given during construction.
2433         (webkitWebViewSetProperty): Only use the default web context when
2434         not provided as construct parameter and there isn't a related view.
2435
2436 2014-11-23  Carlos Garcia Campos  <cgarcia@igalia.com>
2437
2438         [GTK] Add API to override the default local storage directory
2439         https://bugs.webkit.org/show_bug.cgi?id=138828
2440
2441         Reviewed by Gustavo Noronha Silva.
2442
2443         Add WebKitWebContext:local-storage-directory construct-only
2444         property. If not provided the default will be used.
2445
2446         * UIProcess/API/gtk/WebKitWebContext.cpp:
2447         (webkitWebContextGetProperty):
2448         (webkitWebContextSetProperty):
2449         (webkitWebContextConstructed):
2450         (webkit_web_context_class_init):
2451
2452 2014-11-23  Conrad Shultz  <conrad_shultz@apple.com>
2453
2454         Page previews should have titles
2455         https://bugs.webkit.org/show_bug.cgi?id=139020
2456
2457         Reviewed by Tim Horton.
2458
2459         * UIProcess/API/Cocoa/WKViewPrivate.h:
2460         Declare -_titleForPreviewOfURL:.
2461
2462         * UIProcess/API/mac/WKView.mm:
2463         (-[WKView _titleForPreviewOfURL:]):
2464         Stub implementation.
2465
2466         * UIProcess/mac/WKActionMenuController.mm:
2467         (+[WKPagePreviewViewController previewPadding]):
2468         Account for the title height.
2469         (-[WKPagePreviewViewController loadView]):
2470         Set correct autoresize masks on some views; create and configure a title view that is
2471         horizontally and vertically centered.
2472         (-[WKActionMenuController pagePreviewViewController:titleForPreviewOfURL:]):
2473         WKPagePreviewViewControllerDelegate method; wrap -[WKView _titleForPreviewOfURL:].
2474
2475 2014-11-22  Simon Fraser  <simon.fraser@apple.com>
2476
2477         Extend WKRenderObject and WKRenderLayer with some more useful data
2478         https://bugs.webkit.org/show_bug.cgi?id=139006
2479
2480         Reviewed by Sam Weinig.
2481         
2482         Implement WKRenderLayerGetBackingStoreMemoryEstimate,
2483         WKRenderObjectCopyTextSnippet and WKRenderObjectGetTextLength for improved
2484         RenderLayer and RenderTree display in clients of the C SPI.        
2485
2486         * Shared/API/c/WKRenderLayer.cpp:
2487         (WKRenderLayerGetBackingStoreMemoryEstimate):
2488         * Shared/API/c/WKRenderLayer.h:
2489         * Shared/API/c/WKRenderObject.cpp:
2490         (WKRenderObjectCopyTextSnippet):
2491         (WKRenderObjectGetTextLength):
2492         * Shared/API/c/WKRenderObject.h:
2493         * Shared/UserMessageCoders.h:
2494         (WebKit::UserMessageEncoder::baseEncode):
2495         (WebKit::UserMessageDecoder::baseDecode):
2496         * Shared/WebRenderLayer.cpp:
2497         (WebKit::WebRenderLayer::create):
2498         (WebKit::WebRenderLayer::WebRenderLayer):
2499         * Shared/WebRenderLayer.h:
2500         (WebKit::WebRenderLayer::backingStoreMemoryEstimate):
2501         * Shared/WebRenderObject.cpp:
2502         (WebKit::WebRenderObject::create):
2503         (WebKit::WebRenderObject::WebRenderObject):
2504         * Shared/WebRenderObject.h:
2505         (WebKit::WebRenderObject::textSnippet):
2506         (WebKit::WebRenderObject::textLength):
2507
2508 2014-11-21  Jer Noble  <jer.noble@apple.com>
2509
2510         Support multiple signatures of diagnostic logging.
2511         https://bugs.webkit.org/show_bug.cgi?id=138690
2512
2513         Reviewed by Anders Carlsson.
2514
2515         Extend the existing WKBundlePageDiagnosticLoggingClient interface by deprecating
2516         the original logDiagnosticMessage client method in V1 and adding three new,
2517         explicit client methods.
2518
2519         * CMakeLists.txt:
2520         * WebKit2.xcodeproj/project.pbxproj:
2521         * WebProcess/InjectedBundle/API/c/WKBundlePageDiagnosticLoggingClient.h:
2522         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:
2523         (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessageDeprecated):
2524             Renamed from logDiagnosticMessage().
2525         (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage): Pass to the client.
2526         (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessageWithResult): Ditto.
2527         (WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessageWithValue): Ditto.
2528         * WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.h:
2529         * WebProcess/WebCoreSupport/WebChromeClient.h:
2530         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2531         (WebKit::WebChromeClient::logDiagnosticMessage): Deleted.
2532         * WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp: Added.
2533         (WebKit::WebDiagnosticLoggingClient::WebDiagnosticLoggingClient): Simple constructor.
2534         (WebKit::WebDiagnosticLoggingClient::~WebDiagnosticLoggingClient): Simple destructor.
2535         (WebKit::WebDiagnosticLoggingClient::logDiagnosticMessage): Pass to the injected bundle.
2536         (WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithResult): Ditto.
2537         (WebKit::WebDiagnosticLoggingClient::logDiagnosticMessageWithValue): Ditto.
2538         * WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.h: Added.
2539         * WebProcess/WebPage/WebPage.cpp:
2540         (WebKit::WebPage::WebPage): Initialize the new client.
2541
2542 2014-11-21  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2543
2544         Unreviewed, EFL build fix since r176459.
2545
2546         r176459 removed Timer parameter in timer callbacks only for Mac port.
2547         So this patch applies it to remaining classes for EFL port.
2548
2549         * UIProcess/API/efl/EwkView.cpp:
2550         (EwkView::EwkView):
2551         (EwkView::displayTimerFired):
2552         * UIProcess/API/efl/EwkView.h:
2553         * UIProcess/efl/TextCheckerClientEfl.cpp:
2554         (TextCheckerClientEfl::TextCheckerClientEfl):
2555         (TextCheckerClientEfl::languagesUpdateTimerFired):
2556         (TextCheckerClientEfl::spellCheckingSettingChangeTimerFired):
2557         * UIProcess/efl/TextCheckerClientEfl.h:
2558         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2559         (WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
2560         (WebKit::CoordinatedLayerTreeHost::layerFlushTimerFired):
2561         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2562
2563 2014-11-21  Chris Dumez  <cdumez@apple.com>
2564
2565         Unreviewed, iOS build fix after r176462.
2566
2567         Fix include path to TextIndicator.h to include WebCore/
2568         as it was moved.
2569
2570         * UIProcess/ios/PageClientImplIOS.mm:
2571
2572 2014-11-21  Chris Dumez  <cdumez@apple.com>
2573
2574         Unreviewed, iOS build fix after r176452.
2575
2576         dencodeFixedLengthData() now only takes 2 arguments instead of
2577         3.
2578
2579         * Shared/ios/QuickLookDocumentData.cpp:
2580         (WebKit::QuickLookDocumentData::decode):
2581
2582 2014-11-21  Zalan Bujtas  <zalan@apple.com>
2583
2584         Simple line layout: Add "show simple line layout debug borders" setting to MiniBrowser.
2585         https://bugs.webkit.org/show_bug.cgi?id=138981
2586
2587         Reviewed by Simon Fraser.
2588
2589         * UIProcess/API/Cocoa/WKPreferences.mm:
2590         (-[WKPreferences _simpleLineLayoutDebugBordersEnabled]):
2591         (-[WKPreferences _setSimpleLineLayoutDebugBordersEnabled:]):
2592         * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
2593
2594 2014-11-21  Eric Carlson  <eric.carlson@apple.com>
2595
2596         WebVideoFullscreenManagerProxy must clear pointers when invalidated
2597         https://bugs.webkit.org/show_bug.cgi?id=138982
2598
2599         Reviewed by Jer Noble.
2600
2601         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
2602         (WebKit::WebVideoFullscreenManagerProxy::~WebVideoFullscreenManagerProxy): Call invalidate.
2603         (WebKit::WebVideoFullscreenManagerProxy::invalidate): Set WebVideoFullscreenModel and
2604             WebVideoFullscreenChangeObserver to NULL.
2605
2606 2014-11-21  Timothy Horton  <timothy_horton@apple.com>
2607
2608         Fix the build.
2609
2610         * UIProcess/API/mac/WKView.mm:
2611         (-[WKView mouseDown:]):
2612
2613 2014-11-21  Beth Dakin  <bdakin@apple.com>
2614
2615         The preview action menu item should not have a title
2616         https://bugs.webkit.org/show_bug.cgi?id=138989
2617         -and corresponding-
2618         rdar://problem/19061959
2619
2620         Reviewed by Anders Carlsson.
2621
2622         * UIProcess/mac/WKActionMenuController.mm:
2623         (-[WKActionMenuController _createActionMenuItemForTag:]):
2624
2625 2014-11-21  Conrad Shultz  <conrad_shultz@apple.com>
2626
2627         Page previews should have a margin.
2628         https://bugs.webkit.org/show_bug.cgi?id=138990
2629
2630         Reviewed by Beth Dakin.
2631
2632         Enclose the WKWebView (or client-supplied preview view) in a container slightly larger
2633         than the preview view. Adjust sizing code to accommodate the margin.
2634
2635         * UIProcess/mac/WKActionMenuController.mm:
2636         (+[WKPagePreviewViewController previewPadding]):
2637         Return the total amount of fixed padding surrounding the preview
2638         (-[WKPagePreviewViewController loadView]):
2639         Store the actual previewView in an ivar so that clients can distinguish it from the container
2640         view; wrap the preview in a container view; set frames appropriately.
2641         (-[WKActionMenuController _createPreviewPopover]):
2642         Update to reflect method rename; supplement the popover size with the fixed padding.
2643         (-[WKActionMenuController _preferredPopoverSizeWithPreviewPadding:]):
2644         Renamed from -_preferredPopoverSize; account for the fixed padding when computing the preferred size.
2645         (-[WKActionMenuController _clearPreviewPopover]):
2646         Use the previewView ivar instead of the view controller's view.
2647         (-[WKActionMenuController pagePreviewViewControllerWasClicked:]):
2648         Ditto.
2649         (-[WKActionMenuController _preferredPopoverSize]): Deleted.
2650
2651 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2652
2653         REGRESSION (r176415): Can get stuck, unable to invoke any DataDetectors popovers
2654         https://bugs.webkit.org/show_bug.cgi?id=138955
2655         <rdar://problem/19056442>
2656
2657         Reviewed by Anders Carlsson.
2658
2659         * UIProcess/API/mac/WKView.mm:
2660         (-[WKView mouseDown:]):
2661         * UIProcess/mac/WKActionMenuController.h:
2662         * UIProcess/mac/WKActionMenuController.mm:
2663         (-[WKActionMenuController wkView:willHandleMouseDown:]):
2664         (-[WKActionMenuController didCloseMenu:withEvent:]):
2665         (-[WKActionMenuController menuNeedsUpdate:]):
2666         Keep track of whether we have called shouldUseActionsWithContext: on a
2667         DDActionContext; if we get a mouseDown without having seen didCloseMenu:
2668         (and thus don't properly pair the shouldUseActionsWithContext: with a didUseActions),
2669         tear down the old DDActionContext before proceeding.
2670
2671 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2672
2673         REGRESSION (r176351): Parts of apple.com/contact aren't Lookup-able
2674         ​https://bugs.webkit.org/show_bug.cgi?id=138960
2675         <rdar://problem/19056715>
2676
2677         Reviewed by Anders Carlsson.
2678
2679         * UIProcess/mac/WKActionMenuController.mm:
2680         (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
2681         (-[WKActionMenuController _defaultMenuItemsForMailtoLink]): Deleted.
2682         Use DataDetectors SPI instead of an explicit blacklist.
2683
2684 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2685
2686         Crashes while encoding a TextIndicator with no contentImageWithHighlight
2687         https://bugs.webkit.org/show_bug.cgi?id=138984
2688         <rdar://problem/19063717>
2689
2690         Reviewed by Sam Weinig.
2691
2692         * Shared/WebCoreArgumentCoders.cpp:
2693         (IPC::ArgumentCoder<TextIndicatorData>::encode):
2694         (IPC::ArgumentCoder<TextIndicatorData>::decode):
2695         encodeImage doesn't deal with null images, so handle that case gracefully.
2696
2697 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2698
2699         REGRESSION (r176351): Parts of apple.com/contact aren't Lookup-able
2700         https://bugs.webkit.org/show_bug.cgi?id=138960
2701         <rdar://problem/19056715>
2702
2703         Reviewed by Beth Dakin.
2704
2705         * UIProcess/mac/WKActionMenuController.mm:
2706         (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
2707         Blacklist contact results, because they don't have useful menus. If we
2708         bail before setting up _currentActionContext, we'll still allow fallthrough
2709         to ordinary text actions, avoiding mysterious failure when a contact is detected.
2710
2711         This doesn't break the case that r176351 was intended to fix,
2712         because in that case we were detecting e.g. addresses.
2713
2714 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2715
2716         Move TextIndicator{Window} to WebCore
2717         https://bugs.webkit.org/show_bug.cgi?id=138954
2718         <rdar://problem/18992185>
2719
2720         Some adjustments by Csaba Osztrogonác.
2721         Reviewed by Anders Carlsson.
2722
2723         * CMakeLists.txt:
2724         Remove TextIndicator.cpp.
2725
2726         * Scripts/webkit/messages.py:
2727         (struct_or_class):
2728         (headers_for_type):
2729         Tell messages.py that TextIndicatorData is a struct, and comes from TextIndicator.h.
2730
2731         * Shared/WebCoreArgumentCoders.h:
2732         * Shared/WebCoreArgumentCoders.cpp:
2733         (IPC::ArgumentCoder<TextIndicatorData>::encode):
2734         (IPC::ArgumentCoder<TextIndicatorData>::decode):
2735         Add argument coders for TextIndicatorData.
2736
2737         * Shared/DictionaryPopupInfo.h:        
2738         * Shared/mac/ActionMenuHitTestResult.h:
2739         * Shared/mac/ActionMenuHitTestResult.mm:
2740         * UIProcess/API/gtk/PageClientImpl.h:
2741         * UIProcess/API/gtk/PageClientImpl.cpp:
2742         * UIProcess/API/mac/WKView.mm:
2743         * UIProcess/API/mac/WKViewInternal.h:
2744         * UIProcess/CoordinatedGraphics/WebView.h:
2745         * UIProcess/CoordinatedGraphics/WebView.cpp:
2746         * UIProcess/PageClient.h:
2747         * UIProcess/WebPageProxy.cpp:
2748         * UIProcess/WebPageProxy.h:
2749         * UIProcess/WebPageProxy.messages.in:
2750         * UIProcess/ios/PageClientImplIOS.h:
2751         * UIProcess/ios/WKContentView.h:
2752         * UIProcess/mac/PageClientImpl.h:
2753         * UIProcess/mac/PageClientImpl.mm:
2754         * UIProcess/mac/WKActionMenuController.mm:
2755         * WebKit2.xcodeproj/project.pbxproj:
2756         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
2757         * WebProcess/WebPage/FindController.cpp:
2758         * WebProcess/WebPage/WebPage.h:
2759         * WebProcess/WebPage/ios/WebPageIOS.mm:
2760         * WebProcess/WebPage/mac/WebPageMac.mm:
2761         Adjust to TextIndicator and TextIndicatorWindow's new home.
2762
2763 2014-11-21  Tim Horton  <timothy_horton@apple.com>
2764
2765         REGRESSION (r176238): Mailto links are getting preloaded, which results in a compose window
2766         https://bugs.webkit.org/show_bug.cgi?id=138972
2767
2768         Reviewed by Beth Dakin.
2769
2770         * UIProcess/mac/WKActionMenuController.mm:
2771         (-[WKActionMenuController willOpenMenu:withEvent:]):
2772         Only preload links.
2773
2774 2014-11-21  Anders Carlsson  <andersca@apple.com>
2775
2776         Remove the Timer parameters from timer callbacks
2777         https://bugs.webkit.org/show_bug.cgi?id=138974
2778
2779         Reviewed by Antti Koivisto.
2780
2781         * NetworkProcess/NetworkResourceLoader.cpp:
2782         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2783         (WebKit::NetworkResourceLoader::bufferingTimerFired):
2784         * NetworkProcess/NetworkResourceLoader.h:
2785         * Shared/WebMemorySampler.cpp:
2786         (WebKit::WebMemorySampler::WebMemorySampler):
2787         (WebKit::WebMemorySampler::sampleTimerFired):
2788         (WebKit::WebMemorySampler::stopTimerFired):
2789         * Shared/WebMemorySampler.h:
2790         * Shared/mac/RemoteLayerBackingStoreCollection.h:
2791         * Shared/mac/RemoteLayerBackingStoreCollection.mm:
2792         (WebKit::RemoteLayerBackingStoreCollection::RemoteLayerBackingStoreCollection):
2793         (WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired):
2794         * WebProcess/Plugins/PluginView.cpp:
2795         (WebKit::PluginView::PluginView):
2796         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2797         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2798         (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
2799         (WebKit::RemoteLayerTreeDrawingArea::layerFlushTimerFired):
2800         * WebProcess/WebProcess.cpp:
2801         (WebKit::WebProcess::WebProcess):
2802         (WebKit::WebProcess::processSuspensionCleanupTimerFired):
2803         (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired):
2804         * WebProcess/WebProcess.h:
2805
2806 2014-11-21  Anders Carlsson  <andersca@apple.com>
2807
2808         Remove the Timer parameters from timer callbacks
2809         https://bugs.webkit.org/show_bug.cgi?id=138974
2810
2811         Reviewed by Antti Koivisto.
2812
2813         * NetworkProcess/NetworkResourceLoader.cpp:
2814         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2815         (WebKit::NetworkResourceLoader::bufferingTimerFired):
2816         * NetworkProcess/NetworkResourceLoader.h:
2817         * Shared/WebMemorySampler.cpp:
2818         (WebKit::WebMemorySampler::WebMemorySampler):
2819         (WebKit::WebMemorySampler::sampleTimerFired):
2820         (WebKit::WebMemorySampler::stopTimerFired):
2821         * Shared/WebMemorySampler.h:
2822         * Shared/mac/RemoteLayerBackingStoreCollection.h:
2823         * Shared/mac/RemoteLayerBackingStoreCollection.mm:
2824         (WebKit::RemoteLayerBackingStoreCollection::RemoteLayerBackingStoreCollection):
2825         (WebKit::RemoteLayerBackingStoreCollection::volatilityTimerFired):
2826         * WebProcess/Plugins/PluginView.cpp:
2827         (WebKit::PluginView::PluginView):
2828         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2829         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
2830         (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
2831         (WebKit::RemoteLayerTreeDrawingArea::layerFlushTimerFired):
2832         * WebProcess/WebProcess.cpp:
2833         (WebKit::WebProcess::WebProcess):
2834         (WebKit::WebProcess::processSuspensionCleanupTimerFired):
2835         (WebKit::WebProcess::nonVisibleProcessCleanupTimerFired):
2836         * WebProcess/WebProcess.h:
2837
2838 2014-11-21  Antti Koivisto  <antti@apple.com>
2839
2840         Fix iOS build.
2841
2842         * Shared/ios/QuickLookDocumentData.cpp:
2843         (WebKit::QuickLookDocumentData::encode):
2844
2845 2014-11-21  Antti Koivisto  <antti@apple.com>
2846
2847         Remove alignment code from IPC coders
2848         https://bugs.webkit.org/show_bug.cgi?id=138963
2849
2850         Reviewed by Anders Carlsson.
2851
2852         Alignment code achieves nothing except making the messages somewhat bigger.
2853
2854         * Platform/IPC/ArgumentCoders.cpp:
2855         (IPC::ArgumentCoder<CString>::encode):
2856         (IPC::ArgumentCoder<CString>::decode):
2857         (IPC::ArgumentCoder<String>::encode):
2858         (IPC::decodeStringText):
2859         * Platform/IPC/ArgumentCoders.h:
2860         (IPC::SimpleArgumentCoder::encode):
2861         (IPC::SimpleArgumentCoder::decode):
2862         * Platform/IPC/ArgumentDecoder.cpp:
2863         (IPC::ArgumentDecoder::initialize):
2864         (IPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
2865         (IPC::ArgumentDecoder::decodeFixedLengthData):
2866         (IPC::ArgumentDecoder::decodeVariableLengthByteArray):
2867         (IPC::ArgumentDecoder::decodeNumber):
2868         (IPC::ArgumentDecoder::decode):
2869         (IPC::roundUpToAlignment): Deleted.
2870         (IPC::alignedBufferIsLargeEnoughToContain): Deleted.
2871         (IPC::ArgumentDecoder::alignBufferPosition): Deleted.
2872         (IPC::decodeValueFromBuffer): Deleted.
2873         * Platform/IPC/ArgumentDecoder.h:
2874         (IPC::ArgumentDecoder::isInvalid):
2875         (IPC::ArgumentDecoder::markInvalid):
2876         (IPC::ArgumentDecoder::bufferIsLargeEnoughToContain):
2877         * Platform/IPC/ArgumentEncoder.cpp:
2878         (IPC::ArgumentEncoder::ArgumentEncoder):
2879         (IPC::ArgumentEncoder::grow):
2880         (IPC::ArgumentEncoder::encodeFixedLengthData):
2881         (IPC::ArgumentEncoder::encodeVariableLengthByteArray):
2882         (IPC::ArgumentEncoder::encode):
2883         * Platform/IPC/ArgumentEncoder.h:
2884         (IPC::ArgumentEncoder::buffer):
2885         (IPC::ArgumentEncoder::mutableBuffer):
2886         * Platform/IPC/DataReference.cpp:
2887         (IPC::SharedBufferDataReference::encode):
2888         * Platform/IPC/MessageEncoder.cpp:
2889         (IPC::MessageEncoder::setIsSyncMessage):
2890         (IPC::MessageEncoder::setShouldDispatchMessageWhenWaitingForSyncReply):
2891         * Platform/IPC/mac/ConnectionMac.mm:
2892         (IPC::Connection::sendOutgoingMessage):
2893
2894 2014-11-21  Anders Carlsson  <andersca@apple.com>
2895
2896         Make memoryCache() return a reference
2897         https://bugs.webkit.org/show_bug.cgi?id=138939
2898
2899         Reviewed by Antti Koivisto.
2900
2901         * WebProcess/Network/NetworkProcessConnection.cpp:
2902         (WebKit::NetworkProcessConnection::didCacheResource):
2903         * WebProcess/ResourceCache/WebResourceCacheManager.cpp:
2904         (WebKit::WebResourceCacheManager::getCacheOrigins):
2905         (WebKit::WebResourceCacheManager::clearCacheForOrigin):
2906         * WebProcess/WebProcess.cpp:
2907         (WebKit::WebProcess::terminate):
2908         (WebKit::WebProcess::didClose):
2909         (WebKit::WebProcess::clearResourceCaches):
2910         (WebKit::getWebCoreMemoryCacheStatistics):
2911         (WebKit::WebProcess::setMemoryCacheDisabled):
2912         * WebProcess/cocoa/WebProcessCocoa.mm:
2913         (WebKit::WebProcess::platformSetCacheModel):
2914         * WebProcess/soup/WebProcessSoup.cpp:
2915         (WebKit::WebProcess::platformSetCacheModel):
2916
2917 2014-11-21  Daniel Bates  <dabates@apple.com>
2918
2919         [iOS] WebKit2 fails to build with public SDK due to missing SPI from CFNetwork, QuartzCore, MediaPlayer, XPC
2920         https://bugs.webkit.org/show_bug.cgi?id=138930
2921
2922         Reviewed by Anders Carlsson.
2923
2924         * NetworkProcess/mac/NetworkResourceLoaderMac.mm: Remove forward declaration for NSCachedURLResponse
2925         methods as this functionality was incorporated into CFNetworkSPI.h, which is included by this file.
2926         * Platform/mac/LayerHostingContext.mm: Moved QuartzCore forward declarations from this file to file
2927         QuartzCoreSPI.h and included header QuartzCoreSPI.h.
2928         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h: Include header XPCSPI.h.
2929         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm: Remove forward declarations of
2930         XPC SPI since these declarations are part of XCPSPI.h, which is included by header XPCServiceEntryPoint.h.
2931         * UIProcess/API/Cocoa/WKWebView.mm: Remove unnecessary include of header QuartzCore/CARenderServer.h
2932         as it will be included by header QuartzCoreSPI.h.
2933         * UIProcess/Network/NetworkProcessProxy.cpp: Include header XPCSPI.h when building for iOS with
2934         USE(XPC_SERVICES) enabled.
2935         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Include header MediaPlayerSPI.h instead of including
2936         MediaPlayer private headers directly. Also sort the list of #import directives.
2937
2938 2014-11-20  Dan Bernstein  <mitz@apple.com>
2939
2940         Build fix.
2941
2942         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
2943         (-[WKAirPlayRoutePicker showAirPlayPickerIPad:fromRect:]): Cast the return value of
2944         [getMPAudioVideoRoutingPopoverControllerClass() alloc] to resolve ambiguity about which
2945         -initWithType: we are calling.
2946         (-[WKAirPlayRoutePicker showAirPlayPickerIPhone:]): Cast to resolve ambiguity.
2947         (-[WKAirPlayRoutePicker show:fromRect:]): Cast for consistency.
2948
2949 2014-11-20  Benjamin Poulain  <bpoulain@apple.com>
2950
2951         Remove the remaining vestiges of minimal-ui
2952         https://bugs.webkit.org/show_bug.cgi?id=138890
2953
2954         Reviewed by Sam Weinig.
2955
2956         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2957         (WebKit::WebFrameLoaderClient::dispatchDidFinishDocumentLoad):
2958         * WebProcess/WebPage/WebPage.cpp:
2959         (WebKit::WebPage::didCommitLoad):
2960         (WebKit::WebPage::didFinishDocumentLoad): Deleted.
2961         * WebProcess/WebPage/WebPage.h:
2962         * WebProcess/WebPage/ios/WebPageIOS.mm:
2963         (WebKit::WebPage::savePageState):
2964         (WebKit::WebPage::restorePageState):
2965         (WebKit::WebPage::viewportConfigurationChanged):
2966         (WebKit::WebPage::updateViewportSizeForCSSViewportUnits):
2967
2968 2014-11-20  Beth Dakin  <bdakin@apple.com>
2969
2970         Preview popover needs minimum and maximum sizes
2971         https://bugs.webkit.org/show_bug.cgi?id=138943
2972         -and corresponding-
2973         rdar://problem/18904651
2974
2975         Reviewed by Tim Horton.
2976
2977         Quick follow-up to get the right screen.
2978         * UIProcess/mac/WKActionMenuController.mm:
2979         (-[WKActionMenuController largestPopoverSize]):
2980
2981 2014-11-20  Beth Dakin  <bdakin@apple.com>
2982
2983         Preview popover needs minimum and maximum sizes
2984         https://bugs.webkit.org/show_bug.cgi?id=138943
2985         -and corresponding-
2986         rdar://problem/18904651
2987
2988         Reviewed by Tim Horton.
2989
2990         This patch enforces minimum and maximum popover sizes. If the popover needs to be 
2991         sized up to be above the minimum, it will end up covering some of the 
2992         _hitTestResult, so we should compute a new origin rect based on the original 
2993         event location. 
2994         * UIProcess/mac/WKActionMenuController.h:
2995         * UIProcess/mac/WKActionMenuController.mm:
2996         (-[WKActionMenuController prepareForMenu:withEvent:]):
2997         (-[WKActionMenuController _previewURLFromActionMenu:]):
2998         (-[WKActionMenuController _createPreviewPopover]):
2999         (-[WKActionMenuController largestPopoverSize]):
3000         (-[WKActionMenuController _preferredPopoverSize]):
3001         (-[WKActionMenuController _preferredSizeForPopoverPresentedFromOriginRect:]): Deleted.
3002
3003 2014-11-20  Conrad Shultz  <conrad_shultz@apple.com>
3004
3005         Clicks on previews can be recognized multiple times
3006         https://bugs.webkit.org/show_bug.cgi?id=138944
3007
3008         Reviewed by Tim Horton.
3009
3010         * UIProcess/mac/WKActionMenuController.mm:
3011         (-[WKPagePreviewViewController _clickRecognized:]):
3012         Only dispatch the delegate message on the appropriate gesture recognizer state transition.
3013
3014 2014-11-20  Conrad Shultz  <conrad_shultz@apple.com>
3015
3016         Clients should be able to customize preview click behavior
3017         https://bugs.webkit.org/show_bug.cgi?id=138940
3018
3019         Reviewed by Tim Horton.
3020
3021         * UIProcess/API/Cocoa/WKViewPrivate.h:
3022         Declare -_handleClickInPreviewView:URL:.
3023
3024         * UIProcess/API/mac/WKView.mm:
3025         (-[WKView _handleClickInPreviewView:URL:]):
3026         Extracted from -[WKActionMenuController pagePreviewViewControllerWasClicked:].
3027
3028         * UIProcess/mac/WKActionMenuController.mm:
3029         (-[WKActionMenuController pagePreviewViewControllerWasClicked:]):
3030         Extract code to -[WKView _handleClickInPreviewView:URL:].
3031
3032 2014-11-20  Csaba Osztrogonác  <ossy@webkit.org>
3033
3034         URTBF after r176420 to fix non Apple builds.
3035
3036         * WebProcess/WebProcess.cpp:
3037         (WebKit::WebProcess::shouldPlugInAutoStartFromOrigin):
3038
3039 2014-11-20  Anders Carlsson  <andersca@apple.com>
3040
3041         WebPlugInClient::m_webPage can never be null, use a reference
3042         https://bugs.webkit.org/show_bug.cgi?id=138937
3043
3044         Reviewed by Andreas Kling.
3045
3046         * WebProcess/WebCoreSupport/WebPlugInClient.cpp:
3047         (WebKit::WebPlugInClient::WebPlugInClient):
3048         (WebKit::WebPlugInClient::shouldAutoStartFromOrigin):
3049         * WebProcess/WebCoreSupport/WebPlugInClient.h:
3050         * WebProcess/WebPage/WebPage.cpp:
3051         (WebKit::WebPage::WebPage):
3052         * WebProcess/WebProcess.cpp:
3053         (WebKit::WebProcess::shouldPlugInAutoStartFromOrigin):
3054         * WebProcess/WebProcess.h:
3055
3056 2014-11-20  Tim Horton  <timothy_horton@apple.com>
3057
3058         TextIndicator should have getters for TextIndicator::Data properties
3059         https://bugs.webkit.org/show_bug.cgi?id=138920
3060
3061         Reviewed by Beth Dakin.
3062
3063         Instead of having clients reach into the data(), add getters.
3064         Remove frameRect(), which is identical to the textBoundingRectInWindowCoordinates getter.
3065         Remove declarations for draw/drawContentImage, which were already removed.
3066
3067         * Shared/TextIndicator.cpp:
3068         (WebKit::TextIndicator::frameRect): Deleted.
3069         * Shared/TextIndicator.h:
3070         (WebKit::TextIndicator::textBoundingRectInWindowCoordinates):
3071         (WebKit::TextIndicator::textRectsInBoundingRectCoordinates):
3072         (WebKit::TextIndicator::contentImageScaleFactor):
3073         (WebKit::TextIndicator::contentImageWithHighlight):
3074         (WebKit::TextIndicator::contentImage):
3075         * UIProcess/mac/TextIndicatorWindow.mm:
3076         (-[WKTextIndicatorView initWithFrame:textIndicator:margin:]):
3077         (-[WKTextIndicatorView presentWithCompletionHandler:]):
3078         (WebKit::TextIndicatorWindow::setTextIndicator):
3079
3080 2014-11-20  Tim Horton  <timothy_horton@apple.com>
3081
3082         Cancel DataDetectors menu earlier if we know it can't be presented
3083         https://bugs.webkit.org/show_bug.cgi?id=138922
3084         <rdar://problem/18950441>
3085
3086         Reviewed by Beth Dakin.
3087
3088         * UIProcess/mac/WKActionMenuController.mm:
3089         (-[WKActionMenuController willOpenMenu:withEvent:]):
3090         If we end up with a menu with no items, don't change selection or anything.
3091
3092         (-[WKActionMenuController menuNeedsUpdate:]):
3093         Move our call to shouldUseActionsWithContext earlier, to menuNeedsUpdate,
3094         and use a bigger hammer (removeAllItems).
3095
3096 2014-11-20  Tim Horton  <timothy_horton@apple.com>
3097
3098         Don't use a TextIndicator BounceAndCrossfade transition if the selection highlight is never shown
3099         https://bugs.webkit.org/show_bug.cgi?id=138919
3100         <rdar://problem/19042207>
3101
3102         Reviewed by Beth Dakin.
3103
3104         * Shared/TextIndicator.h:
3105         (WebKit::TextIndicator::presentationTransition):
3106         (WebKit::TextIndicator::setPresentationTransition):
3107         Add getter and setter pair.
3108
3109         * UIProcess/mac/WKActionMenuController.mm:
3110         (-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
3111         If the selection highlight will never be shown because there's only a single menu item,
3112         use a normal bounce animation instead of bounce + crossfade.
3113
3114 2014-11-20  Beth Dakin  <bdakin@apple.com>
3115
3116         Invalid message WebPageProxy.DidPerformDictionaryLookup on Google stocks result
3117         https://bugs.webkit.org/show_bug.cgi?id=138568
3118         -and corresponding-
3119         rdar://problem/18904600
3120
3121         Reviewed by Tim Horton.
3122
3123         Skip images for lookup.
3124         * WebProcess/WebPage/mac/WebPageMac.mm:
3125         (WebKit::WebPage::performDictionaryLookupForRange):
3126
3127 2014-11-20  Daniel Bates  <dabates@apple.com>
3128
3129         [iOS] Add more ENABLE({TOUCH_EVENTS, IOS_TOUCH_EVENTS})-guards in WebKit2
3130         https://bugs.webkit.org/show_bug.cgi?id=138928
3131
3132         Reviewed by Simon Fraser.
3133
3134         * UIProcess/ios/WKContentViewInteraction.h:
3135         * UIProcess/ios/WKContentViewInteraction.mm:
3136         (-[WKContentView setupInteraction]):
3137         * WebProcess/WebPage/WebPage.cpp:
3138         (WebKit::WebPage::didCommitLoad):
3139         * WebProcess/WebPage/WebPage.h:
3140         * WebProcess/WebPage/ios/WebPageIOS.mm:
3141         (WebKit::WebPage::sendTapHighlightForNodeIfNecessary):
3142
3143 2014-11-20  Anders Carlsson  <andersca@apple.com>
3144
3145         Add -[WKWebView loadData:MIMEType:textEncodingName:baseURL:]
3146         https://bugs.webkit.org/show_bug.cgi?id=138929
3147         <rdar://problem/18683802>
3148
3149         Reviewed by Dan Bernstein.
3150
3151         Also, re-implement -[WKWebView loadHTMLString:baseURL:] in terms of this newly added function
3152         and assume a UTF-8 encoding. This matches what Legacy WebKit does.
3153
3154         * UIProcess/API/Cocoa/WKWebView.h:
3155         * UIProcess/API/Cocoa/WKWebView.mm:
3156         (-[WKWebView loadHTMLString:baseURL:]):
3157         (-[WKWebView loadData:MIMEType:textEncodingName:baseURL:]):
3158         * UIProcess/WebPageProxy.cpp:
3159         (WebKit::WebPageProxy::loadData):
3160         * UIProcess/WebPageProxy.h:
3161
3162 2014-11-20  Antti Koivisto  <antti@apple.com>
3163
3164         Remove alignment code from cache coders
3165         https://bugs.webkit.org/show_bug.cgi?id=138927
3166
3167         Failed to land this file.
3168
3169         * NetworkProcess/cache/NetworkCacheCoders.cpp:
3170         (WebKit::NetworkCacheCoder<CString>::encode):
3171         (WebKit::NetworkCacheCoder<CString>::decode):
3172         (WebKit::NetworkCacheCoder<String>::encode):
3173         (WebKit::decodeStringText):
3174         (WebKit::NetworkCacheCoder<WebCore::CertificateInfo>::encode):
3175         (WebKit::NetworkCacheCoder<WebCore::CertificateInfo>::decode):
3176         * NetworkProcess/cache/NetworkCacheCoders.h:
3177
3178 2014-11-20  Antti Koivisto  <antti@apple.com>
3179
3180         Remove alignment code from cache coders
3181         https://bugs.webkit.org/show_bug.cgi?id=138927
3182
3183         Reviewed by Anders Carlsson.
3184
3185         Alignment code doesn't do anything useful, wastes space and produces wrong results
3186         if the encoder and decoder buffers don't have the same 8-byte alignment.
3187
3188         * NetworkProcess/cache/NetworkCacheDecoder.cpp:
3189         (WebKit::NetworkCacheDecoder::NetworkCacheDecoder):
3190         (WebKit::NetworkCacheDecoder::bufferIsLargeEnoughToContain):
3191         (WebKit::NetworkCacheDecoder::decodeFixedLengthData):
3192         (WebKit::NetworkCacheDecoder::decodeNumber):
3193         (WebKit::roundUpToAlignment): Deleted.
3194         (WebKit::alignedBufferIsLargeEnoughToContain): Deleted.
3195         (WebKit::NetworkCacheDecoder::alignBufferPosition): Deleted.
3196         * NetworkProcess/cache/NetworkCacheDecoder.h:
3197         (WebKit::NetworkCacheDecoder::currentOffset):
3198         (WebKit::NetworkCacheDecoder::isInvalid):
3199         (WebKit::NetworkCacheDecoder::markInvalid):
3200         (WebKit::NetworkCacheDecoder::bufferIsLargeEnoughToContain):
3201         * NetworkProcess/cache/NetworkCacheEncoder.cpp:
3202         (WebKit::NetworkCacheEncoder::grow):
3203         (WebKit::NetworkCacheEncoder::encodeFixedLengthData):
3204         (WebKit::NetworkCacheEncoder::encodeNumber):
3205         (WebKit::roundUpToAlignment): Deleted.
3206         * NetworkProcess/cache/NetworkCacheEncoder.h:
3207
3208 2014-11-20  Csaba Osztrogonác  <ossy@webkit.org>
3209
3210         [GTK] URTBF after r176363.
3211
3212         * UIProcess/API/gtk/PageClientImpl.cpp:
3213         (WebKit::PageClientImpl::setTextIndicator):
3214         * UIProcess/API/gtk/PageClientImpl.h:
3215
3216 2014-11-19  Yongjun Zhang  <yongjun_zhang@apple.com>
3217
3218         Don't track sub-resources that are started after main frame progress has completed.
3219         https://bugs.webkit.org/show_bug.cgi?id=138582
3220
3221         Reviewed by Sam Weinig.
3222
3223         After main frame progress has finished, starting loading a sub-resource shouldn't affect
3224         UI process's view of page loading status (i.e., the page has already completed loading
3225         and the progress shouldn't change). To achive that, don't track the subresources that
3226         are started after the main frame has finished, except for those triggered by user interaction.
3227
3228         * WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp:  Notify WebPage that the main frame progress
3229             has started or finished.
3230         (WebKit::WebProgressTrackerClient::progressStarted):
3231         (WebKit::WebProgressTrackerClient::progressFinished):
3232         * WebProcess/WebPage/WebPage.cpp:
3233         (WebKit::WebPage::WebPage):
3234         (WebKit::WebPage::addResourceRequest): Don't track the resource request if it is initiated after
3235             the main frame is loaded and it is not triggered by user interaction.
3236         (WebKit::WebPage::removeResourceRequest):
3237         * WebProcess/WebPage/WebPage.h: Rename m_networkResourceRequestIdentifiers to m_trackedNetworkResourceRequestIdentifiers.
3238         (WebKit::WebPage::setMainFrameProgressCompleted):
3239
3240 2014-11-19  Sun-woo Nam  <sunny.nam@samsung.com>
3241
3242         [EFL] Fix build failure since r176363.
3243         https://bugs.webkit.org/show_bug.cgi?id=138903
3244
3245         Reviewed by Gyuyoung Kim.
3246
3247         The parameter for animation on setTextIndicator() was removed on 'PageClient' class.
3248
3249         * UIProcess/CoordinatedGraphics/WebView.cpp:
3250         (WebKit::WebView::setTextIndicator):
3251         * UIProcess/CoordinatedGraphics/WebView.h:
3252
3253 2014-11-19  Timothy Horton  <timothy_horton@apple.com>
3254
3255         Try to fix the iOS build
3256
3257         * WebProcess/WebPage/ios/WebPageIOS.mm:
3258         (WebKit::WebPage::performDictionaryLookupForSelection):
3259         (WebKit::WebPage::performDictionaryLookupForRange):
3260
3261 2014-11-19  Timothy Horton  <timothy_horton@apple.com>
3262
3263         Fix the 32-bit build
3264
3265         * UIProcess/mac/TextIndicatorWindow.mm:
3266         (WebKit::TextIndicatorWindow::setTextIndicator):
3267
3268 2014-11-19  Tim Horton  <timothy_horton@apple.com>
3269
3270         Add an optional entry transition (from selection highlight) to TextIndicator
3271         https://bugs.webkit.org/show_bug.cgi?id=138856
3272         <rdar://problem/18840128>
3273
3274         Reviewed by Anders Carlsson.
3275
3276         * Shared/TextIndicator.cpp:
3277         (WebKit::outsetIndicatorRectIncludingShadow):
3278         (WebKit::TextIndicator::createWithRange):
3279         (WebKit::snapshotSelectionWithHighlight):
3280         (WebKit::TextIndicator::createWithSelectionInFrame):
3281         (WebKit::TextIndicator::frameRect):
3282         (WebKit::TextIndicator::Data::encode):
3283         (WebKit::TextIndicator::Data::decode):
3284         Remove TextIndicator::draw and related functions; drawing is handled entirely
3285         by the TextIndicatorWindow now, and TextIndicator just stores the required data.
3286
3287         Unify outsetIndicatorRectIncludingShadow.
3288
3289         Add an argument to createWithRange/createWithSelectionInFrame to indicate
3290         if the TextIndicator should transition from the selection highlight to
3291         the yellow bubble.
3292
3293         If we're doing the transition, paint the selection into a second bitmap,
3294         without forcing the text to black and without hiding the blue highlight.
3295
3296         Encode/decode the second bitmap.
3297
3298         * Shared/TextIndicator.h:
3299         * UIProcess/mac/TextIndicatorWindow.h:
3300         * UIProcess/mac/TextIndicatorWindow.mm:
3301         (-[WKTextIndicatorView initWithFrame:textIndicator:margin:transitionFromSelectionColor:]):
3302         (-[WKTextIndicatorView presentWithCompletionHandler:]):
3303         (-[WKTextIndicatorView hideWithCompletionHandler:]):
3304         (-[WKTextIndicatorView isFlipped]):
3305         (WebKit::TextIndicatorWindow::TextIndicatorWindow):
3306         (WebKit::TextIndicatorWindow::setTextIndicator):
3307         (WebKit::TextIndicatorWindow::closeWindow):
3308         (WebKit::TextIndicatorWindow::startFadeOutTimerFired):
3309         Re-implement the bounce animation using CoreAnimation instead of
3310         the WKSI-based WKWindowBounceAnimation*.
3311
3312         * WebProcess/WebPage/WebPage.h:
3313         * WebProcess/WebPage/mac/WebPageMac.mm:
3314         (WebKit::WebPage::performDictionaryLookupForSelection):
3315         (WebKit::WebPage::performDictionaryLookupOfCurrentSelection):
3316         (WebKit::WebPage::performDictionaryLookupForRange):
3317         (WebKit::WebPage::performActionMenuHitTestAtLocation):
3318         * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
3319         Use the aforementioned transition animation for performDictionaryLookupOfCurrentSelection,
3320         the context menu lookup item, and for Data Detectors.
3321
3322 2014-11-19  Anders Carlsson  <andersca@apple.com>
3323
3324         Add a version of API::Data::createWithoutCopying that takes an NSData
3325         https://bugs.webkit.org/show_bug.cgi?id=138893
3326
3327         Reviewed by Dan Bernstein.
3328
3329         * Shared/APIData.h:
3330         * Shared/Cocoa/APIDataCocoa.mm: Added.
3331         (API::Data::createWithoutCopying):
3332         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
3333         (-[WKBrowsingContextController loadData:MIMEType:textEncodingName:baseURL:userData:]):
3334         (releaseNSData): Deleted.
3335         * WebKit2.xcodeproj/project.pbxproj:
3336         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
3337         (-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]):
3338
3339 2014-11-19  Beth Dakin  <bdakin@apple.com>
3340
3341         Invoking an action menu on a selection should result in the text menu
3342         https://bugs.webkit.org/show_bug.cgi?id=138892
3343         -and corresponding-
3344         rdar://problem/18996776
3345
3346         Reviewed by Tim Horton.
3347
3348         * UIProcess/mac/WKActionMenuController.mm:
3349         (-[WKActionMenuController _defaultMenuItems]):
3350
3351 2014-11-19  Anders Carlsson  <andersca@apple.com>
3352
3353         Fix iOS build.
3354
3355         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
3356
3357 2014-11-19  Anders Carlsson  <andersca@apple.com>
3358
3359         Rename two Cocoa-only .cpp files to .mm.
3360
3361         Rubber-stamped by Sam Weinig.
3362
3363         * Shared/APIWebArchive.mm: Renamed from Source/WebKit2/Shared/APIWebArchive.cpp.
3364         * Shared/APIWebArchiveResource.mm: Renamed from Source/WebKit2/Shared/APIWebArchiveResource.cpp.
3365         * WebKit2.xcodeproj/project.pbxproj:
3366
3367 2014-11-19  Beth Dakin  <bdakin@apple.com>
3368
3369         Data detected results with no menu items should not fall through to regular text 
3370         action menus
3371         https://bugs.webkit.org/show_bug.cgi?id=138887
3372         -and corresponding-
3373         rdar://problem/18971616
3374
3375         Reviewed by Tim Horton.
3376
3377         * UIProcess/mac/WKActionMenuController.mm:
3378         (-[WKActionMenuController _defaultMenuItems]):
3379
3380 2014-11-19  Daniel Bates  <dabates@apple.com>
3381
3382         [iOS] Make WebKit build with public iOS SDK
3383         https://bugs.webkit.org/show_bug.cgi?id=136863
3384
3385         Reviewed by David Kilzer.
3386
3387         * NetworkProcess/cocoa/NetworkProcessCocoa.mm: Moved CFNetwork forward declarations
3388         from this file to file CFNetworkSPI.h and included header CFNetworkSPI.h.
3389         * NetworkProcess/mac/NetworkDiskCacheMonitor.mm: Ditto.
3390         * NetworkProcess/mac/NetworkResourceLoaderMac.mm: Ditto.
3391         * UIProcess/API/Cocoa/WKProcessPool.mm: Ditto.
3392         * UIProcess/mac/WebContextMac.mm: Ditto.
3393         * WebProcess/cocoa/WebProcessCocoa.mm: Ditto.
3394
3395 2014-11-19  Anders Carlsson  <andersca@apple.com>
3396
3397         Add APIs for customizing the user agent
3398         https://bugs.webkit.org/show_bug.cgi?id=138881
3399         rdar://problem/17233981
3400
3401         Reviewed by Dan Bernstein.
3402
3403         * UIProcess/API/Cocoa/WKWebView.h:
3404         * UIProcess/API/Cocoa/WKWebView.mm:
3405         (-[WKWebView initWithFrame:configuration:]):
3406         (-[WKWebView customUserAgent]):
3407         (-[WKWebView setCustomUserAgent:]):
3408         (-[WKWebView _customUserAgent]):
3409         (-[WKWebView _setCustomUserAgent:]):
3410         * UIProcess/API/Cocoa/WKWebViewConfiguration.h:
3411         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
3412         (LazyInitialized::set):
3413         (-[WKWebViewConfiguration copyWithZone:]):
3414         (defaultApplicationNameForUserAgent):
3415         (-[WKWebViewConfiguration applicationNameForUserAgent]):
3416         (-[WKWebViewConfiguration setApplicationNameForUserAgent:]):
3417
3418 2014-11-19  Simon Fraser  <simon.fraser@apple.com>
3419
3420         [WK2 UI-side compositing] Initialize RemoteLayerTreeTransaction properties which are unset on Mac
3421         https://bugs.webkit.org/show_bug.cgi?id=138877
3422
3423         Reviewed by Tim Horton.
3424         
3425         These data members are unused on Mac, but still encoded, so initialize them with
3426         reasonable values.
3427
3428         * Shared/mac/RemoteLayerTreeTransaction.mm:
3429         (WebKit::RemoteLayerTreeTransaction::RemoteLayerTreeTransaction):
3430
3431 2014-11-19  Enrica Casucci  <enrica@apple.com>
3432
3433         Refactor iOS selection gestures.
3434         https://bugs.webkit.org/show_bug.cgi?id=138720
3435         rdar://problem/18964359
3436
3437         Reviewed by Benjamin Poulain.
3438
3439         This is a first step towards refactoring the selection gestures code.
3440         It introduces more general selection movement functions that can be used to build
3441         the gestures.
3442
3443         * UIProcess/WebPageProxy.h:
3444         * UIProcess/ios/WKContentViewInteraction.h:
3445         * UIProcess/ios/WKContentViewInteraction.mm:
3446         (toWKTextGranularity):
3447         (toWKSelectionDirection):
3448         (-[WKContentView selectPositionAtPoint:completionHandler:]):
3449         (-[WKContentView selectPositionAtBoundary:inDirection:fromPoint:completionHandler:]):
3450         (-[WKContentView selectTextWithGranularity:atPoint:completionHandler:]):
3451         (-[WKContentView beginSelectionInDirection:completionHandler:]):
3452         (-[WKContentView updateSelectionWithExtentPoint:completionHandler:]):
3453         (-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
3454         * UIProcess/ios/WebPageProxyIOS.mm:
3455         (WebKit::WebPageProxy::selectTextWithGranularityAtPoint):
3456         (WebKit::WebPageProxy::selectPositionAtBoundaryWithDirection):
3457         (WebKit::WebPageProxy::selectPositionAtPoint):
3458         (WebKit::WebPageProxy::beginSelectionInDirection):
3459         (WebKit::WebPageProxy::updateSelectionWithExtentPoint):
3460         * WebProcess/WebPage/WebPage.cpp:
3461         (WebKit::WebPage::WebPage):
3462         * WebProcess/WebPage/WebPage.h:
3463         * WebProcess/WebPage/WebPage.messages.in:
3464         * WebProcess/WebPage/ios/WebPageIOS.mm:
3465         (WebKit::WebPage::selectWithGesture):
3466         (WebKit::WebPage::visiblePositionInFocusedNodeForPoint):
3467         (WebKit::WebPage::selectPositionAtPoint):
3468         (WebKit::WebPage::selectPositionAtBoundaryWithDirection):
3469         (WebKit::WebPage::selectTextWithGranularityAtPoint):
3470         (WebKit::WebPage::beginSelectionInDirection):
3471         (WebKit::WebPage::updateSelectionWithExtentPoint):
3472
3473 2014-11-19  Simon Fraser  <simon.fraser@apple.com>
3474
3475         [WK2 UI-side Compositing] Fix the position and scroll indicator of the UI-side tiled scrolling indicator
3476         https://bugs.webkit.org/show_bug.cgi?id=138876
3477
3478         Reviewed by Beth Dakin.
3479         
3480         Fix the position of the tiled scrolling indicator in MiniBrowser by taking top
3481         content offset into account.
3482         
3483         On Mac, pass the current scroll position back to the UI process via the RemoteLayerTreeTransaction
3484         so that we can use it to show the correctly scroll offset in the indicator. This is temporary until
3485         Mac does UI-side scrolling.
3486
3487         * Shared/mac/RemoteLayerTreeTransaction.h:
3488         (WebKit::RemoteLayerTreeTransaction::scrollPosition):
3489         (WebKit::RemoteLayerTreeTransaction::setScrollPosition):
3490         * Shared/mac/RemoteLayerTreeTransaction.mm:
3491         (WebKit::RemoteLayerTreeTransaction::encode):
3492         (WebKit::RemoteLayerTreeTransaction::decode):
3493         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
3494         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
3495         (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
3496         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation):
3497         (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):
3498         * WebProcess/WebPage/WebPage.cpp:
3499         (WebKit::WebPage::willCommitLayerTree):
3500
3501 2014-11-19  Michael Catanzaro  <mcatanzaro@igalia.com>
3502
3503         [GTK] Error in documentation of webkit_print_operation_get_page_setup()
3504         https://bugs.webkit.org/show_bug.cgi?id=138868
3505
3506         Reviewed by Carlos Garcia Campos.
3507
3508         Fix copypaste error in documentation of
3509         webkit_print_operation_get_page_setup().
3510
3511         * UIProcess/API/gtk/WebKitPrintOperation.cpp:
3512