2015-11-03 Geoffrey Garen <ggaren@apple.com>
[WebKit-https.git] / Source / WebKit2 / ChangeLog
1 2015-11-03  Geoffrey Garen  <ggaren@apple.com>
2
3         Provide a way to turn off const in WebKit2.
4
5         Reviewed by Sam Weinig.
6
7         * Shared/WebProcessCreationParameters.cpp:
8         (WebKit::WebProcessCreationParameters::encode):
9         (WebKit::WebProcessCreationParameters::decode):
10         * Shared/WebProcessCreationParameters.h:
11         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
12         (WebKit::WebProcessPool::platformInitializeWebProcess):
13         * WebProcess/WebProcess.cpp:
14         (WebKit::WebProcess::initializeWebProcess):
15
16 2015-11-03  Alex Christensen  <achristensen@webkit.org>
17
18         Create a NetworkSession for each SessionID
19         https://bugs.webkit.org/show_bug.cgi?id=150857
20
21         Reviewed by Anders Carlsson.
22
23         This patch renames SessionTracker::session to storageSession and makes a parallel
24         structure for NetworkSessions.  NetworkSession and NetworkStorageSession should eventually
25         become the same class in WebCore.  Because not everybody uses NetworkSessions yet,
26         we keep them separate but created, destroyed, and managed together.
27
28         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
29         (WebKit::storageSession):
30         * NetworkProcess/NetworkProcess.cpp:
31         (WebKit::NetworkProcess::fetchWebsiteData):
32         (WebKit::NetworkProcess::deleteWebsiteData):
33         (WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
34         * NetworkProcess/NetworkResourceLoader.cpp:
35         (WebKit::NetworkResourceLoader::startNetworkLoad):
36         (WebKit::NetworkResourceLoader::abort):
37         * NetworkProcess/NetworkResourceLoader.h:
38         * NetworkProcess/NetworkSession.h:
39         (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
40         (WebKit::NetworkDataTask::client):
41         (WebKit::NetworkDataTask::clearClient):
42         (WebKit::NetworkingDataTask::client): Deleted.
43         (WebKit::NetworkingDataTask::clearClient): Deleted.
44         (WebKit::NetworkSession::~NetworkSession): Deleted.
45         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
46         (WebKit::configurationForType):
47         (WebKit::defaultNetworkSession):
48         (WebKit::NetworkSession::defaultSession):
49         (WebKit::NetworkSession::NetworkSession):
50         (WebKit::NetworkSession::~NetworkSession):
51         (WebKit::NetworkSession::createDataTaskWithRequest):
52         (WebKit::NetworkSession::dataTaskForIdentifier):
53         (WebKit::NetworkDataTask::NetworkDataTask):
54         (WebKit::NetworkDataTask::~NetworkDataTask):
55         (WebKit::NetworkDataTask::cancel):
56         (WebKit::NetworkDataTask::resume):
57         (WebKit::NetworkDataTask::taskIdentifier):
58         (WebKit::NetworkSession::create): Deleted.
59         (WebKit::NetworkSession::singleton): Deleted.
60         (WebKit::NetworkingDataTask::NetworkingDataTask): Deleted.
61         (WebKit::NetworkingDataTask::~NetworkingDataTask): Deleted.
62         (WebKit::NetworkingDataTask::suspend): Deleted.
63         (WebKit::NetworkingDataTask::resume): Deleted.
64         (WebKit::NetworkingDataTask::taskIdentifier): Deleted.
65         * NetworkProcess/mac/RemoteNetworkingContext.mm:
66         (WebKit::RemoteNetworkingContext::storageSession):
67         (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
68         * Shared/SessionTracker.cpp:
69         (WebKit::staticStorageSessionMap):
70         (WebKit::identifierBase):
71         (WebKit::SessionTracker::storageSessionMap):
72         (WebKit::SessionTracker::getIdentifierBase):
73         (WebKit::SessionTracker::storageSession):
74         (WebKit::staticSessionMap):
75         (WebKit::SessionTracker::networkSession):
76         (WebKit::SessionTracker::sessionID):
77         (WebKit::SessionTracker::setSession):
78         (WebKit::SessionTracker::destroySession):
79         (WebKit::SessionTracker::sessionMap): Deleted.
80         (WebKit::SessionTracker::session): Deleted.
81         * Shared/SessionTracker.h:
82         * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
83         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
84         (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
85         (WebKit::WebFrameNetworkingContext::storageSession):
86         * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
87         (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
88         (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
89         (WebKit::WebFrameNetworkingContext::storageSession):
90
91 2015-11-03  Ryuan Choi  <ryuan.choi@navercorp.com>
92
93         [CoordinatedGraphics] invisible webview should not paint the content
94         https://bugs.webkit.org/show_bug.cgi?id=150662
95
96         Reviewed by Darin Adler.
97
98         Suspend or resume the painting instead of just initializing m_isPaintingSuspended 
99         for invisible webview not to paint the content until visibility is changed.
100
101         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
102         (WebKit::CoordinatedDrawingArea::CoordinatedDrawingArea):
103
104 2015-11-03  Anders Carlsson  <andersca@apple.com>
105
106         Simplify -[_WKRemoteObjectRegistry _invokeMethod:]
107         https://bugs.webkit.org/show_bug.cgi?id=150844
108
109         Reviewed by Tim Horton.
110
111         * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
112         (-[_WKRemoteObjectRegistry _invokeMethod:]):
113         (-[_WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]): Deleted.
114         * Shared/API/Cocoa/_WKRemoteObjectRegistryInternal.h:
115
116 2015-11-02  Anders Carlsson  <andersca@apple.com>
117
118         CTTE the responsiveness timer getter
119         https://bugs.webkit.org/show_bug.cgi?id=150825
120
121         Reviewed by Daniel Bates.
122
123         * UIProcess/API/C/mac/WKPagePrivateMac.mm:
124         (-[WKObservablePageState _webProcessIsResponsive]):
125         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
126         (-[WKBrowsingContextController _webProcessIsResponsive]):
127         * UIProcess/API/Cocoa/WKWebView.mm:
128         (-[WKWebView _webProcessIsResponsive]):
129         * UIProcess/WebPageProxy.cpp:
130         (WebKit::WebPageProxy::reattachToWebProcessForReload):
131         (WebKit::WebPageProxy::reattachToWebProcessWithItem):
132         (WebKit::WebPageProxy::tryClose):
133         (WebKit::WebPageProxy::loadRequest):
134         (WebKit::WebPageProxy::loadFile):
135         (WebKit::WebPageProxy::loadData):
136         (WebKit::WebPageProxy::loadHTMLString):
137         (WebKit::WebPageProxy::loadAlternateHTMLString):
138         (WebKit::WebPageProxy::loadPlainTextString):
139         (WebKit::WebPageProxy::loadWebArchiveData):
140         (WebKit::WebPageProxy::navigateToPDFLinkWithSimulatedClick):
141         (WebKit::WebPageProxy::stopLoading):
142         (WebKit::WebPageProxy::reload):
143         (WebKit::WebPageProxy::goForward):
144         (WebKit::WebPageProxy::goBack):
145         (WebKit::WebPageProxy::goToBackForwardItem):
146         (WebKit::WebPageProxy::dispatchViewStateChange):
147         (WebKit::WebPageProxy::handleMouseEvent):
148         (WebKit::WebPageProxy::sendWheelEvent):
149         (WebKit::WebPageProxy::handleKeyboardEvent):
150         (WebKit::WebPageProxy::handleGestureEvent):
151         (WebKit::WebPageProxy::handleTouchEventSynchronously):
152         (WebKit::WebPageProxy::handleTouchEvent):
153         (WebKit::WebPageProxy::closePage):
154         (WebKit::WebPageProxy::runJavaScriptAlert):
155         (WebKit::WebPageProxy::runJavaScriptConfirm):
156         (WebKit::WebPageProxy::runJavaScriptPrompt):
157         (WebKit::WebPageProxy::runBeforeUnloadConfirmPanel):
158         (WebKit::WebPageProxy::runOpenPanel):
159         (WebKit::WebPageProxy::showPopupMenu):
160         (WebKit::WebPageProxy::internalShowContextMenu):
161         (WebKit::WebPageProxy::didReceiveEvent):
162         (WebKit::WebPageProxy::stopResponsivenessTimer):
163         (WebKit::WebPageProxy::runModal):
164         (WebKit::WebPageProxy::updateBackingStoreDiscardableState):
165         * UIProcess/WebProcessProxy.h:
166         (WebKit::WebProcessProxy::responsivenessTimer):
167
168 2015-11-03  Carlos Garcia Campos  <cgarcia@igalia.com>
169
170         Unreviewed. Update OptionsGTK.cmake and NEWS for 2.11.1 release.
171
172         * gtk/NEWS: Add release notes for 2.11.1.
173
174 2015-11-03  Alex Christensen  <achristensen@webkit.org>
175
176         Use the same cookie storage as WebCore when using NETWORK_SESSION
177         https://bugs.webkit.org/show_bug.cgi?id=150833
178
179         Reviewed by Antti Koivisto.
180
181         This fixes 12 tests when using NETWORK_SESSION.
182
183         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
184         (WebKit::NetworkSession::NetworkSession):
185
186 2015-11-03  Alex Christensen  <achristensen@webkit.org>
187
188         Clean up NETWORK_SESSION code after r191848
189         https://bugs.webkit.org/show_bug.cgi?id=150829
190
191         Reviewed by Darin Adler.
192
193         * NetworkProcess/NetworkResourceLoader.cpp:
194         (WebKit::NetworkResourceLoader::didReceiveData):
195         (WebKit::NetworkResourceLoader::didCompleteWithError):
196         * NetworkProcess/NetworkSession.h:
197         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
198         (WebKit::NetworkSession::NetworkSession):
199         (WebKit::NetworkSession::createDataTaskWithRequest):
200         (WebKit::NetworkSession::dataTaskForIdentifier):
201
202 2015-11-02  Carlos Garcia Campos  <cgarcia@igalia.com>
203
204         Unreviewed. Fix GTK+ build after r191924.
205
206         * UIProcess/API/gtk/WebKitWebView.cpp:
207
208 2015-11-02  Alex Christensen  <achristensen@webkit.org>
209
210         Fix CMake build after r191922.
211
212         * PlatformMac.cmake:
213
214 2015-11-02  Andy Estes  <aestes@apple.com>
215
216         Try again to fix the iOS build.
217
218         * Shared/mac/PDFKitImports.mm:
219
220 2015-11-02  Tim Horton  <timothy_horton@apple.com>
221
222         Try to fix the iOS build
223
224         * Shared/mac/PDFKitImports.h:
225
226 2015-11-02  Tim Horton  <timothy_horton@apple.com>
227
228         Address a misssed review comment in r191922
229
230         * WebProcess/Plugins/PDF/DeprecatedPDFPlugin.mm:
231         (WebKit::PDFPlugin::nextMatchForString):
232
233 2015-11-02  Anders Carlsson  <andersca@apple.com>
234
235         Add KVO-compliant _webProcessIsResponsive property to WKWebView and _WKObservablePageState
236         https://bugs.webkit.org/show_bug.cgi?id=150818
237         rdar://problem/22372131
238
239         Reviewed by Tim Horton.
240
241         * UIProcess/API/C/mac/WKPagePrivateMac.h:
242         * UIProcess/API/C/mac/WKPagePrivateMac.mm:
243         (-[WKObservablePageState _webProcessIsResponsive]):
244         * UIProcess/API/Cocoa/PageLoadStateObserver.h:
245         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
246         (-[WKBrowsingContextController _webProcessIsResponsive]):
247         * UIProcess/API/Cocoa/WKWebView.mm:
248         (-[WKWebView _webProcessIsResponsive]):
249         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
250         * UIProcess/Cocoa/NavigationState.h:
251         * UIProcess/Cocoa/NavigationState.mm:
252         (WebKit::NavigationState::willChangeWebProcessIsResponsive):
253         (WebKit::NavigationState::didChangeWebProcessIsResponsive):
254         * UIProcess/PageLoadState.cpp:
255         (WebKit::PageLoadState::willChangeProcessIsResponsive):
256         (WebKit::PageLoadState::didChangeProcessIsResponsive):
257         * UIProcess/PageLoadState.h:
258         * UIProcess/ResponsivenessTimer.cpp:
259         (WebKit::ResponsivenessTimer::ResponsivenessTimer):
260         (WebKit::ResponsivenessTimer::timerFired):
261         (WebKit::ResponsivenessTimer::stop):
262         * UIProcess/ResponsivenessTimer.h:
263         * UIProcess/WebPageProxy.cpp:
264         (WebKit::WebPageProxy::willChangeProcessIsResponsive):
265         (WebKit::WebPageProxy::didChangeProcessIsResponsive):
266         * UIProcess/WebPageProxy.h:
267         * UIProcess/WebProcessProxy.cpp:
268         (WebKit::WebProcessProxy::WebProcessProxy):
269         (WebKit::WebProcessProxy::didBecomeUnresponsive):
270         (WebKit::WebProcessProxy::didBecomeResponsive):
271         (WebKit::WebProcessProxy::willChangeIsResponsive):
272         (WebKit::WebProcessProxy::didChangeIsResponsive):
273         * UIProcess/WebProcessProxy.h:
274
275 2015-11-02  Tim Horton  <timothy_horton@apple.com>
276
277         PDFPlugin should take advantage of threaded scrolling
278         https://bugs.webkit.org/show_bug.cgi?id=150037
279
280         Reviewed by Anders Carlsson.
281
282         Duplicate PDFPlugin, creating PDFPlugin (the modern version), and
283         DeprecatedPDFPlugin (containing the code that used to be in PDFPlugin
284         prior to this patch).
285
286         The new PDFPlugin differs from the old one in a few significant ways,
287         and we need to keep both alive for the time being. Significant differences
288         include:
289
290         - PDFPlugin is no longer a ScrollableArea
291         - PDFPlugin no longer hosts layers owned by PDFKit; instead, it draws
292           into the page tiles, allowing WebCore's threaded scrolling to do its job
293         - PDFPlugin now resizes itself to the size of the document
294         - PDFPlugin doesn't handle zooming itself, it just delegates to the page
295         - PDFLayerController has large and incompatible API changes
296         - PDFPlugin now implements more of the HUD behavior, but it's still
297           painted by PDFLayerController (into a view-relative PageOverlay)
298
299         [ File list elided because it's long and useless. ]
300
301 2015-11-02  Andy Estes  <aestes@apple.com>
302
303         [Cocoa] Add tvOS and watchOS to SUPPORTED_PLATFORMS
304         https://bugs.webkit.org/show_bug.cgi?id=150819
305
306         Reviewed by Dan Bernstein.
307
308         This tells Xcode to include these platforms in its Devices dropdown, making it possible to build in the IDE.
309
310         * Configurations/Base.xcconfig:
311
312 2015-11-02  Anders Carlsson  <andersca@apple.com>
313
314         Begin work on supporting reply blocks in _WKRemoteObjectRegistry
315         https://bugs.webkit.org/show_bug.cgi?id=150739
316
317         Reviewed by Tim Horton.
318
319         * Platform/spi/Cocoa/BlockSPI.h:
320         Add SPI header.
321
322         * Shared/API/Cocoa/RemoteObjectInvocation.h:
323         (WebKit::RemoteObjectInvocation::ReplyInfo::ReplyInfo):
324         (WebKit::RemoteObjectInvocation::replyInfo):
325         * Shared/API/Cocoa/RemoteObjectInvocation.mm:
326         (WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
327         (WebKit::RemoteObjectInvocation::encode):
328         (WebKit::RemoteObjectInvocation::decode):
329         Add an optional ReplyInfo struct to RemoteObjectInvocation.
330
331         * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
332         (generateReplyIdentifier):
333         Helper function to generate a reply identifier.
334
335         (-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
336         Do some block parameter validation.
337
338         * WebKit2.xcodeproj/project.pbxproj:
339
340 2015-11-02  Brent Fulgham  <bfulgham@apple.com>
341
342         [iOS] Another unreviewed sandbox update.
343
344         * Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb: Change copyright.
345
346 2015-11-02  Brent Fulgham  <bfulgham@apple.com>
347
348         [iOS] Unreviewed sandbox update.
349
350         Correcting copyright information.
351
352         * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
353
354 2015-11-02  Tim Horton  <timothy_horton@apple.com>
355
356         Get rid of WKWebView's inner WKView (WKView being inside WKWebView leads to weird API issues)
357         https://bugs.webkit.org/show_bug.cgi?id=150174
358
359         Reviewed by Anders Carlsson.
360
361         * UIProcess/API/Cocoa/WKWebView.mm:
362         (-[WKWebView initWithFrame:configuration:]):
363         (-[WKWebView dealloc]):
364         (-[WKWebView allowsLinkPreview]):
365         (-[WKWebView setAllowsLinkPreview:]):
366         (-[WKWebView acceptsFirstResponder]):
367         (-[WKWebView becomeFirstResponder]):
368         (-[WKWebView resignFirstResponder]):
369         (-[WKWebView viewWillStartLiveResize]):
370         (-[WKWebView viewDidEndLiveResize]):
371         (-[WKWebView isFlipped]):
372         (-[WKWebView intrinsicContentSize]):
373         (-[WKWebView prepareContentInRect:]):
374         (-[WKWebView setFrameSize:]):
375         (-[WKWebView renewGState]):
376         (-[WKWebView writeSelectionToPasteboard:types:]):
377         (-[WKWebView centerSelectionInVisibleArea:]):
378         (-[WKWebView validRequestorForSendType:returnType:]):
379         (-[WKWebView readSelectionFromPasteboard:]):
380         (-[WKWebView changeFont:]):
381         (-[WKWebView validateUserInterfaceItem:]):
382         (-[WKWebView startSpeaking:]):
383         (-[WKWebView stopSpeaking:]):
384         (-[WKWebView showGuessPanel:]):
385         (-[WKWebView checkSpelling:]):
386         (-[WKWebView changeSpelling:]):
387         (-[WKWebView toggleContinuousSpellChecking:]):
388         (-[WKWebView isGrammarCheckingEnabled]):
389         (-[WKWebView setGrammarCheckingEnabled:]):
390         (-[WKWebView toggleGrammarChecking:]):
391         (-[WKWebView toggleAutomaticSpellingCorrection:]):
392         (-[WKWebView orderFrontSubstitutionsPanel:]):
393         (-[WKWebView toggleSmartInsertDelete:]):
394         (-[WKWebView isAutomaticQuoteSubstitutionEnabled]):
395         (-[WKWebView setAutomaticQuoteSubstitutionEnabled:]):
396         (-[WKWebView toggleAutomaticQuoteSubstitution:]):
397         (-[WKWebView isAutomaticDashSubstitutionEnabled]):
398         (-[WKWebView setAutomaticDashSubstitutionEnabled:]):
399         (-[WKWebView toggleAutomaticDashSubstitution:]):
400         (-[WKWebView isAutomaticLinkDetectionEnabled]):
401         (-[WKWebView setAutomaticLinkDetectionEnabled:]):
402         (-[WKWebView toggleAutomaticLinkDetection:]):
403         (-[WKWebView isAutomaticTextReplacementEnabled]):
404         (-[WKWebView setAutomaticTextReplacementEnabled:]):
405         (-[WKWebView toggleAutomaticTextReplacement:]):
406         (-[WKWebView uppercaseWord:]):
407         (-[WKWebView lowercaseWord:]):
408         (-[WKWebView capitalizeWord:]):
409         (-[WKWebView _wantsKeyDownForEvent:]):
410         (-[WKWebView scrollWheel:]):
411         (-[WKWebView swipeWithEvent:]):
412         (-[WKWebView mouseMoved:]):
413         (-[WKWebView mouseDown:]):
414         (-[WKWebView mouseUp:]):
415         (-[WKWebView mouseDragged:]):
416         (-[WKWebView mouseEntered:]):
417         (-[WKWebView mouseExited:]):
418         (-[WKWebView otherMouseDown:]):
419         (-[WKWebView otherMouseDragged:]):
420         (-[WKWebView otherMouseUp:]):
421         (-[WKWebView rightMouseDown:]):
422         (-[WKWebView rightMouseDragged:]):
423         (-[WKWebView rightMouseUp:]):
424         (-[WKWebView pressureChangeWithEvent:]):
425         (-[WKWebView acceptsFirstMouse:]):
426         (-[WKWebView shouldDelayWindowOrderingForEvent:]):
427         (-[WKWebView doCommandBySelector:]):
428         (-[WKWebView insertText:]):
429         (-[WKWebView insertText:replacementRange:]):
430         (-[WKWebView inputContext]):
431         (-[WKWebView performKeyEquivalent:]):
432         (-[WKWebView keyUp:]):
433         (-[WKWebView keyDown:]):
434         (-[WKWebView flagsChanged:]):
435         (-[WKWebView setMarkedText:selectedRange:replacementRange:]):
436         (-[WKWebView unmarkText]):
437         (-[WKWebView selectedRange]):
438         (-[WKWebView hasMarkedText]):
439         (-[WKWebView markedRange]):
440         (-[WKWebView attributedSubstringForProposedRange:actualRange:]):
441         (-[WKWebView characterIndexForPoint:]):
442         (-[WKWebView firstRectForCharacterRange:actualRange:]):
443         (-[WKWebView selectedRangeWithCompletionHandler:]):
444         (-[WKWebView markedRangeWithCompletionHandler:]):
445         (-[WKWebView hasMarkedTextWithCompletionHandler:]):
446         (-[WKWebView attributedSubstringForProposedRange:completionHandler:]):
447         (-[WKWebView firstRectForCharacterRange:completionHandler:]):
448         (-[WKWebView characterIndexForPoint:completionHandler:]):
449         (-[WKWebView validAttributesForMarkedText]):
450         (-[WKWebView draggedImage:endedAt:operation:]):
451         (-[WKWebView draggingEntered:]):
452         (-[WKWebView draggingUpdated:]):
453         (-[WKWebView draggingExited:]):
454         (-[WKWebView prepareForDragOperation:]):
455         (-[WKWebView performDragOperation:]):
456         (-[WKWebView _hitTest:dragTypes:]):
457         (-[WKWebView _windowResizeMouseLocationIsInVisibleScrollerThumb:]):
458         (-[WKWebView viewWillMoveToWindow:]):
459         (-[WKWebView viewDidMoveToWindow]):
460         (-[WKWebView drawRect:]):
461         (-[WKWebView isOpaque]):
462         (-[WKWebView mouseDownCanMoveWindow]):
463         (-[WKWebView viewDidHide]):
464         (-[WKWebView viewDidUnhide]):
465         (-[WKWebView viewDidChangeBackingProperties]):
466         (-[WKWebView _activeSpaceDidChange:]):
467         (-[WKWebView accessibilityFocusedUIElement]):
468         (-[WKWebView accessibilityIsIgnored]):
469         (-[WKWebView accessibilityHitTest:]):
470         (-[WKWebView accessibilityAttributeValue:]):
471         (-[WKWebView hitTest:]):
472         (-[WKWebView conversationIdentifier]):
473         (-[WKWebView quickLookWithEvent:]):
474         (-[WKWebView addTrackingRect:owner:userData:assumeInside:]):
475         (-[WKWebView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]):
476         (-[WKWebView _addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]):
477         (-[WKWebView removeTrackingRect:]):
478         (-[WKWebView _removeTrackingRects:count:]):
479         (-[WKWebView view:stringForToolTip:point:userData:]):
480         (-[WKWebView pasteboardChangedOwner:]):
481         (-[WKWebView pasteboard:provideDataForType:]):
482         (-[WKWebView namesOfPromisedFilesDroppedAtDestination:]):
483         (-[WKWebView wantsUpdateLayer]):
484         (-[WKWebView updateLayer]):
485         (-[WKWebView setAllowsBackForwardNavigationGestures:]):
486         (-[WKWebView allowsBackForwardNavigationGestures]):
487         (-[WKWebView smartMagnifyWithEvent:]):
488         (-[WKWebView setMagnification:centeredAtPoint:]):
489         (-[WKWebView setMagnification:]):
490         (-[WKWebView magnification]):
491         (-[WKWebView setAllowsMagnification:]):
492         (-[WKWebView allowsMagnification]):
493         (-[WKWebView magnifyWithEvent:]):
494         (-[WKWebView rotateWithEvent:]):
495         (-[WKWebView _web_superInputContext]):
496         (-[WKWebView _web_superQuickLookWithEvent:]):
497         (-[WKWebView _web_superSwipeWithEvent:]):
498         (-[WKWebView _web_superMagnifyWithEvent:]):
499         (-[WKWebView _web_superSmartMagnifyWithEvent:]):
500         (-[WKWebView _web_superRemoveTrackingRect:]):
501         (-[WKWebView _web_superAccessibilityAttributeValue:]):
502         (-[WKWebView _web_superDoCommandBySelector:]):
503         (-[WKWebView _web_superPerformKeyEquivalent:]):
504         (-[WKWebView _web_superKeyDown:]):
505         (-[WKWebView _web_superHitTest:]):
506         (-[WKWebView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
507         (-[WKWebView _web_prepareForImmediateActionAnimation]):
508         (-[WKWebView _web_cancelImmediateActionAnimation]):
509         (-[WKWebView _web_completeImmediateActionAnimation]):
510         (-[WKWebView _web_didChangeContentSize:]):
511         (-[WKWebView _web_dismissContentRelativeChildWindows]):
512         (-[WKWebView _web_dismissContentRelativeChildWindowsWithAnimation:]):
513         (-[WKWebView _web_gestureEventWasNotHandledByWebCore:]):
514         (-[WKWebView _setEditable:]):
515         (-[WKWebView _remoteObjectRegistry]):
516         (-[WKWebView _layoutMode]):
517         (-[WKWebView _setLayoutMode:]):
518         (-[WKWebView _setViewScale:]):
519         (-[WKWebView _drawsTransparentBackground]):
520         (-[WKWebView _setDrawsTransparentBackground:]):
521         (-[WKWebView _inspectorAttachmentView]):
522         (-[WKWebView _setInspectorAttachmentView:]):
523         (-[WKWebView _windowOcclusionDetectionEnabled]):
524         (-[WKWebView _setWindowOcclusionDetectionEnabled:]):
525         (-[WKWebView _setOverrideDeviceScaleFactor:]):
526         (-[WKWebView _overrideDeviceScaleFactor]):
527         (-[WKWebView _setTopContentInset:]):
528         (-[WKWebView _topContentInset]):
529         (-[WKWebView _pageExtendedBackgroundColor]):
530         (-[WKWebView _immediateActionAnimationControllerForHitTestResult:withType:userData:]):
531         (-[WKWebView _setAutomaticallyAdjustsContentInsets:]):
532         (-[WKWebView _automaticallyAdjustsContentInsets]):
533         (-[WKWebView _setMinimumLayoutWidth:]):
534         (-[WKWebView resizeSubviewsWithOldSize:]): Deleted.
535         (-[WKWebView _ignoresNonWheelEvents]): Deleted.
536         (-[WKWebView _setIgnoresNonWheelEvents:]): Deleted.
537         (-[WKWebView _setIntrinsicContentSize:]): Deleted.
538         * UIProcess/API/Cocoa/WKWebViewInternal.h:
539         * UIProcess/API/mac/WKView.mm:
540         (-[WKView _web_superInputContext]):
541         (-[WKView _web_superQuickLookWithEvent:]):
542         (-[WKView _web_superSwipeWithEvent:]):
543         (-[WKView _web_superMagnifyWithEvent:]):
544         (-[WKView _web_superSmartMagnifyWithEvent:]):
545         (-[WKView _web_superRemoveTrackingRect:]):
546         (-[WKView _web_superAccessibilityAttributeValue:]):
547         (-[WKView _web_superDoCommandBySelector:]):
548         (-[WKView _web_superPerformKeyEquivalent:]):
549         (-[WKView _web_superKeyDown:]):
550         (-[WKView _web_superHitTest:]):
551         (-[WKView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
552         (-[WKView _web_prepareForImmediateActionAnimation]):
553         (-[WKView _web_cancelImmediateActionAnimation]):
554         (-[WKView _web_completeImmediateActionAnimation]):
555         (-[WKView _web_didChangeContentSize:]):
556         (-[WKView _web_dismissContentRelativeChildWindows]):
557         (-[WKView _web_dismissContentRelativeChildWindowsWithAnimation:]):
558         (-[WKView _web_gestureEventWasNotHandledByWebCore:]):
559         (-[WKView _superInputContext]): Deleted.
560         (-[WKView _superQuickLookWithEvent:]): Deleted.
561         (-[WKView _superSwipeWithEvent:]): Deleted.
562         (-[WKView _superMagnifyWithEvent:]): Deleted.
563         (-[WKView _superSmartMagnifyWithEvent:]): Deleted.
564         (-[WKView _superRemoveTrackingRect:]): Deleted.
565         (-[WKView _superAccessibilityAttributeValue:]): Deleted.
566         (-[WKView _superDoCommandBySelector:]): Deleted.
567         (-[WKView _superPerformKeyEquivalent:]): Deleted.
568         (-[WKView _superKeyDown:]): Deleted.
569         (-[WKView _superHitTest:]): Deleted.
570         (-[WKView _addFontPanelObserver]): Deleted.
571         * UIProcess/API/mac/WKViewInternal.h:
572         * UIProcess/Cocoa/WebViewImpl.h:
573         * UIProcess/Cocoa/WebViewImpl.mm:
574         (WebKit::WebViewImpl::hitTest):
575         (WebKit::WebViewImpl::updateSecureInputState):
576         (WebKit::WebViewImpl::notifyInputContextAboutDiscardedComposition):
577         (WebKit::WebViewImpl::executeSavedCommandBySelector):
578         (WebKit::WebViewImpl::dismissContentRelativeChildWindowsWithAnimation):
579         (WebKit::WebViewImpl::dismissContentRelativeChildWindowsWithAnimationFromViewOnly):
580         (WebKit::WebViewImpl::quickLookWithEvent):
581         (WebKit::WebViewImpl::prepareForImmediateActionAnimation):
582         (WebKit::WebViewImpl::cancelImmediateActionAnimation):
583         (WebKit::WebViewImpl::completeImmediateActionAnimation):
584         (WebKit::WebViewImpl::didChangeContentSize):
585         (WebKit::WebViewImpl::accessibilityAttributeValue):
586         (WebKit::WebViewImpl::removeTrackingRect):
587         (WebKit::WebViewImpl::swipeWithEvent):
588         (WebKit::WebViewImpl::magnifyWithEvent):
589         (WebKit::WebViewImpl::smartMagnifyWithEvent):
590         (WebKit::WebViewImpl::gestureEventWasNotHandledByWebCore):
591         (WebKit::WebViewImpl::doCommandBySelector):
592         (WebKit::WebViewImpl::inputContext):
593         (WebKit::WebViewImpl::performKeyEquivalent):
594         (WebKit::WebViewImpl::keyDown):
595         * UIProcess/mac/PageClientImpl.mm:
596         (WebKit::PageClientImpl::setDragImage):
597         (WebKit::PageClientImpl::intrinsicContentSizeDidChange): Deleted.
598         (WebKit::PageClientImpl::immediateActionAnimationControllerForHitTestResult): Deleted.
599         Plop.
600
601 2015-11-02  Anders Carlsson  <andersca@apple.com>
602
603         Remove unused API client callback code
604         https://bugs.webkit.org/show_bug.cgi?id=150813
605
606         Reviewed by Tim Horton.
607
608         * UIProcess/API/APILoaderClient.h:
609         (API::LoaderClient::interactionOccurredWhileProcessUnresponsive): Deleted.
610         * UIProcess/API/C/WKPage.cpp:
611         (WKPageSetPageLoaderClient): Deleted.
612         * UIProcess/ResponsivenessTimer.cpp:
613         (WebKit::ResponsivenessTimer::timerFired):
614         * UIProcess/ResponsivenessTimer.h:
615         * UIProcess/WebPageProxy.cpp:
616         (WebKit::WebPageProxy::interactionOccurredWhileProcessUnresponsive): Deleted.
617         * UIProcess/WebPageProxy.h:
618         * UIProcess/WebProcessProxy.cpp:
619         (WebKit::WebProcessProxy::interactionOccurredWhileUnresponsive): Deleted.
620         * UIProcess/WebProcessProxy.h:
621
622 2015-10-31  Andy Estes  <aestes@apple.com>
623
624         Replace iOS-only WebKitSystemInterface calls with SPI
625         https://bugs.webkit.org/show_bug.cgi?id=150763
626
627         Reviewed by Darin Adler.
628
629         * Platform/ios/AccessibilityIOS.h: Added.
630         * Platform/ios/AccessibilityIOS.mm: Added.
631         (WebKit::newAccessibilityRemoteToken): Upstreamed the implementation of WKAXRemoteToken() from WebKitSystemInterface.
632         * Shared/WebPreferencesDefinitions.h: Used Settings::defaultMinimumZoomFontSize() instead of WKGetMinimumZoomFontSize().
633         * Shared/WebPreferencesStore.cpp:
634         * UIProcess/API/Cocoa/WKWebView.mm:
635         (shouldAllowPictureInPictureMediaPlayback): Used dyld_get_program_sdk_version() instead of iosExecutableWasLinkedOnOrAfterVersion().
636         (-[WKWebView _takeViewSnapshot]): Used screenScaleFactor() instead of WKGetScreenScaleFactor().
637         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
638         (-[WKWebViewConfiguration init]): Used deviceClass() instead of WKGetDeviceClass().
639         * UIProcess/ios/WKContentView.mm:
640         (-[WKContentView _commonInitializationWithProcessPool:configuration:]): Used screenScaleFactor() instead of WKGetScaleFactorForScreen().
641         (-[WKContentView _updateForScreen:]): Ditto.
642         (storeAccessibilityRemoteConnectionInformation): Upstreamed the implementation of WKAXStoreRemoteConnectionInformation() from WebKitSystemInterface.
643         (-[WKContentView _accessibilityRegisterUIProcessTokens]): Used newAccessibilityRemoteToken() and storeAccessibilityRemoteConnectionInformation() instead of WKAXRemoteToken() and WKAXStoreRemoteConnectionInformation().
644         * UIProcess/ios/WKContentViewInteraction.mm:
645         * UIProcess/ios/WebPageProxyIOS.mm:
646         (WebKit::WebPageProxy::screenSize): Used screenSize() instead of WKGetScreenSize().
647         (WebKit::WebPageProxy::availableScreenSize): Used availableScreenSize() instead of WKGetAvailableScreenSize().
648         (WebKit::WebPageProxy::textAutosizingWidth): Used screenSize() instead of WKGetScreenSize().
649         * WebKit2.xcodeproj/project.pbxproj:
650         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
651         (InitWebCoreSystemInterface): Deleted.
652         * WebProcess/WebPage/ios/WebPageIOS.mm:
653         (WebKit::WebPage::platformInitializeAccessibility): Used newAccessibilityRemoteToken() instead of WKAXRemoteToken().
654
655 2015-11-02  Commit Queue  <commit-queue@webkit.org>
656
657         Unreviewed, rolling out r191902.
658         https://bugs.webkit.org/show_bug.cgi?id=150811
659
660         This change broke iOS builders (Requested by ryanhaddad on
661         #webkit).
662
663         Reverted changeset:
664
665         "Replace iOS-only WebKitSystemInterface calls with SPI"
666         https://bugs.webkit.org/show_bug.cgi?id=150763
667         http://trac.webkit.org/changeset/191902
668
669 2015-10-31  Andy Estes  <aestes@apple.com>
670
671         Replace iOS-only WebKitSystemInterface calls with SPI
672         https://bugs.webkit.org/show_bug.cgi?id=150763
673
674         Reviewed by Darin Adler.
675
676         * Platform/ios/AccessibilityIOS.h: Added.
677         * Platform/ios/AccessibilityIOS.mm: Added.
678         (WebKit::newAccessibilityRemoteToken): Upstreamed the implementation of WKAXRemoteToken() from WebKitSystemInterface.
679         * Shared/WebPreferencesDefinitions.h: Used Settings::defaultMinimumZoomFontSize() instead of WKGetMinimumZoomFontSize().
680         * Shared/WebPreferencesStore.cpp:
681         * UIProcess/API/Cocoa/WKWebView.mm:
682         (shouldAllowPictureInPictureMediaPlayback): Used dyld_get_program_sdk_version() instead of iosExecutableWasLinkedOnOrAfterVersion().
683         (-[WKWebView _takeViewSnapshot]): Used screenScaleFactor() instead of WKGetScreenScaleFactor().
684         * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
685         (-[WKWebViewConfiguration init]): Used deviceClass() instead of WKGetDeviceClass().
686         * UIProcess/ios/WKContentView.mm:
687         (-[WKContentView _commonInitializationWithProcessPool:configuration:]): Used screenScaleFactor() instead of WKGetScaleFactorForScreen().
688         (-[WKContentView _updateForScreen:]): Ditto.
689         (storeAccessibilityRemoteConnectionInformation): Upstreamed the implementation of WKAXStoreRemoteConnectionInformation() from WebKitSystemInterface.
690         (-[WKContentView _accessibilityRegisterUIProcessTokens]): Used newAccessibilityRemoteToken() and storeAccessibilityRemoteConnectionInformation() instead of WKAXRemoteToken() and WKAXStoreRemoteConnectionInformation().
691         * UIProcess/ios/WKContentViewInteraction.mm:
692         * UIProcess/ios/WebPageProxyIOS.mm:
693         (WebKit::WebPageProxy::screenSize): Used screenSize() instead of WKGetScreenSize().
694         (WebKit::WebPageProxy::availableScreenSize): Used availableScreenSize() instead of WKGetAvailableScreenSize().
695         (WebKit::WebPageProxy::textAutosizingWidth): Used screenSize() instead of WKGetScreenSize().
696         * WebKit2.xcodeproj/project.pbxproj:
697         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
698         (InitWebCoreSystemInterface): Deleted.
699         * WebProcess/WebPage/ios/WebPageIOS.mm:
700         (WebKit::WebPage::platformInitializeAccessibility): Used newAccessibilityRemoteToken() instead of WKAXRemoteToken().
701
702 2015-11-02  Yongjun Zhang  <yongjun_zhang@apple.com>
703
704         Add objC delegate callback for webProcessDidBecomeResponsive and webProcessDidBecomeUnresponsive.
705         https://bugs.webkit.org/show_bug.cgi?id=150778
706
707         Add methods into WKNavigationDelegatePrivate to notify WebKit client when web process becomes unresponsive
708         or responsive, which is reported by WebKit::ResponsivenessTimer.
709
710         Reviewed by Darin Adler.
711
712         * UIProcess/API/APINavigationClient.h: Add two new method processDidBecomeResponsive and processDidBecomeUnresponsive
713             to NavigationClient; they are called when WebKit::ResponsivenessTimer update its client's state.
714         (API::NavigationClient::processDidBecomeResponsive):
715         (API::NavigationClient::processDidBecomeUnresponsive):
716         * UIProcess/API/Cocoa/WKNavigationDelegatePrivate.h: Add two new delegate method to WKNavigationDelegatePrivate:
717             _webViewWebProcessDidBecomeResponsive: and _webViewWebProcessDidBecomeUnresponsive:
718         * UIProcess/Cocoa/NavigationState.h: Add new overriding methods processDidBecomeResponsive and processDidBecomeUnresponsive.
719             Also add a bool member for each method to indicate if the delegate has implement the related method.
720         * UIProcess/Cocoa/NavigationState.mm:
721         (WebKit::NavigationState::setNavigationDelegate): Update the new bool members based on the delegate.
722         (WebKit::NavigationState::NavigationClient::processDidBecomeResponsive): Send the delegate message to navigationDelegate
723             if _webViewWebProcessDidBecomeResponsive: is implemented.
724         (WebKit::NavigationState::NavigationClient::processDidBecomeUnresponsive): Ditto.
725         * UIProcess/WebPageProxy.cpp:
726         (WebKit::WebPageProxy::processDidBecomeUnresponsive): Call navigationClient's processDidBecomeUnresponsive if the page proxy
727             has navigationClient.
728         (WebKit::WebPageProxy::processDidBecomeResponsive):  Call navigationClient's processDidBecomeResponsive if the page proxy
729             has navigationClient.
730
731 2015-11-02  Beth Dakin  <bdakin@apple.com>
732
733         Tapping and holding a link should have a share option
734         https://bugs.webkit.org/show_bug.cgi?id=150693
735
736         Reviewed by Dan Bernstein.
737
738         This is a follow-up to the original change. This change fixes non-ascii URLs. 
739         They should maintain their non-ascii characters when they are shared.
740
741         * UIProcess/ios/WKContentViewInteraction.mm:
742         (-[WKContentView actionSheetAssistant:shareElementWithURL:rect:]):
743         * UIProcess/ios/WKPDFView.mm:
744         (-[WKPDFView actionSheetAssistant:shareElementWithURL:rect:]):
745
746 2015-11-02  Youenn Fablet  <youenn.fablet@crf.canon.fr>
747
748         Rename JSDOMWrapper.impl to JSDOMWrapper.wrapped
749         https://bugs.webkit.org/show_bug.cgi?id=150613
750
751         Reviewed by Darin Adler.
752
753         * WebProcess/WebPage/WebFrame.cpp:
754         (WebKit::WebFrame::frameForContext): Renaming impl() to wrapped().
755         (WebKit::WebFrame::counterValue): Ditto.
756
757 2015-11-02  Carlos Garcia Campos  <cgarcia@igalia.com>
758
759         [GLIB] Remove support for GSocket main loop sources from GMainLoopSource
760         https://bugs.webkit.org/show_bug.cgi?id=150772
761
762         Reviewed by Žan Doberšek.
763
764         Add GSocketMonitor class to be used by Connection to monitor the
765         availability of the socket file descriptor instead of using a
766         GMainLoopSource.
767
768         * Platform/IPC/Connection.h:
769         * Platform/IPC/glib/GSocketMonitor.cpp: Added.
770         (IPC::GSocketMonitor::~GSocketMonitor):
771         (IPC::GSocketMonitor::socketSourceCallback):
772         (IPC::GSocketMonitor::start):
773         (IPC::GSocketMonitor::stop):
774         * Platform/IPC/glib/GSocketMonitor.h: Added.
775         * Platform/IPC/unix/ConnectionUnix.cpp:
776         (IPC::Connection::platformInvalidate):
777         (IPC::Connection::open):
778         * PlatformGTK.cmake:
779
780 2015-11-01  Carlos Garcia Campos  <cgarcia@igalia.com>
781
782         [GTK] Use RunLoop in WorkQueue implementation
783         https://bugs.webkit.org/show_bug.cgi?id=150770
784
785         Reviewed by Darin Adler.
786
787         * Platform/IPC/unix/ConnectionUnix.cpp:
788         (IPC::Connection::open): Get the main context from the WorkQueue Runloop.
789
790 2015-11-01  Yusuke Suzuki  <utatane.tea@gmail.com>
791
792         [ES6] Support Generator Syntax
793         https://bugs.webkit.org/show_bug.cgi?id=150769
794
795         Reviewed by Geoffrey Garen.
796
797         Added ENABLE_ES6_GENERATORS flag.
798
799         * Configurations/FeatureDefines.xcconfig:
800
801 2015-11-01  Brent Fulgham  <bfulgham@apple.com>
802
803         Use convenience function in sandbox profile
804         https://bugs.webkit.org/show_bug.cgi?id=150732
805         <rdar://problem/23287894>
806
807         Reviewed by Alexey Proskuryakov.
808
809         * Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb: Switch to
810         the 'awd-log-directory' convenience function.
811
812 2015-11-01  Joonghun Park  <jh718.park@samsung.com>
813
814         [EFL] Fix inappropriate move semantics use in parseAndRemoveEnvironments function
815         https://bugs.webkit.org/show_bug.cgi?id=150544
816
817         Reviewed by Darin Adler.
818
819         In parseAndRemoveEnvironments function, it declares its paramerter type as rvalue.
820         But in ProcessLauncher::launchProcess(), the argument of
821         parseAndRemoveEnvironments still be used after the call of the function.
822         Currently the rvalue is not assigned to any other variable in parseAndRemoveEnvironments,
823         so it doesn't lead to runtime error but use of move semantic
824         is not appropriate semantically in this case.
825
826         * UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:
827         (WebKit::parseAndRemoveEnvironments):
828         (WebKit::ProcessLauncher::launchProcess):
829
830 2015-11-01  Commit Queue  <commit-queue@webkit.org>
831
832         Unreviewed, rolling out r191831.
833         https://bugs.webkit.org/show_bug.cgi?id=150774
834
835         The new test fails (Requested by ap on #webkit).
836
837         Reverted changeset:
838
839         "Begin work on supporting reply blocks in
840         _WKRemoteObjectRegistry"
841         https://bugs.webkit.org/show_bug.cgi?id=150739
842         http://trac.webkit.org/changeset/191831
843
844 2015-11-01  Philip Chimento  <philip.chimento@gmail.com>
845
846         [GTK] Fix combinations of PLATFORM(GTK) and OS(DARWIN)
847         https://bugs.webkit.org/show_bug.cgi?id=144560
848
849         Reviewed by Darin Adler.
850
851         * NetworkProcess/NetworkProcess.cpp:
852         (WebKit::NetworkProcess::createNetworkConnectionToWebProcess):
853         Change order of OS(DARWIN) and USE(UNIX_DOMAIN_SOCKETS) checks,
854         so that we can use Unix domain sockets even on Darwin for the GTK
855         platform.
856         * Platform/IPC/Attachment.cpp: Add USE(UNIX_DOMAIN_SOCKETS) check
857         to OS(DARWIN) check, in order to support GTK platform on OSX.
858         * Platform/IPC/Attachment.h: Change order of OS(DARWIN) and
859         USE(UNIX_DOMAIN_SOCKETS) checks throughout.
860         (IPC::Attachment::size):
861         (IPC::Attachment::releaseFileDescriptor):
862         (IPC::Attachment::fileDescriptor):
863         (IPC::Attachment::disposition):
864         (IPC::Attachment::port): 
865         * Platform/IPC/Connection.h: Ditto.
866         (IPC::Connection::identifierIsNull):
867         (IPC::Connection::Identifier::Identifier): 
868         (IPC::Connection::xpcConnection): 
869         * Platform/IPC/unix/ConnectionUnix.cpp: Only use SOCK_SEQPACKET
870         if the platform is not GTK, because otherwise the PLATFORM(GTK)
871         check below is never reached.
872         * Platform/SharedMemory.h: Change order of OS(DARWIN) and
873         USE(UNIX_DOMAIN_SOCKETS) checks.
874         * PluginProcess/PluginProcess.cpp: Ditto.
875         (WebKit::PluginProcess::createWebProcessConnection):
876         * Shared/API/c/WKBase.h: Don't include WKBaseMac.h if building
877         GTK.
878         * UIProcess/API/C/WKNativeEvent.h: Don't use Apple API if
879         building GTK.
880         * UIProcess/Launcher/ProcessLauncher.cpp: Change to
881         OS(DARWIN) && !PLATFORM(GTK), in the absence of a better platform
882         macro such as USE(MACH).
883         (WebKit::ProcessLauncher::didFinishLaunchingProcess):
884         * UIProcess/Launcher/ProcessLauncher.h: Ditto.
885         * UIProcess/Network/NetworkProcessProxy.cpp: Change order of
886         OS(DARWIN) and PLATFORM(GTK) checks.
887         (WebKit::NetworkProcessProxy::networkProcessCrashedOrFailedToLaunch):
888         (WebKit::NetworkProcessProxy::didCreateNetworkConnectionToWebProcess):
889         * UIProcess/Plugins/PluginProcessProxy.cpp: Ditto.
890         (WebKit::PluginProcessProxy::pluginProcessCrashedOrFailedToLaunch):
891         (WebKit::PluginProcessProxy::didCreateWebProcessConnection):
892         * WebProcess/Plugins/PluginProcessConnectionManager.cpp: Ditto.
893         (WebKit::PluginProcessConnectionManager::getPluginProcessConnection):
894         * WebProcess/WebPage/WebInspector.cpp: Ditto.
895         (WebKit::WebInspector::createInspectorPage):
896         * WebProcess/WebPage/WebInspectorUI.cpp: Ditto.
897         (WebKit::WebInspectorUI::establishConnection):
898         * WebProcess/WebProcess.cpp: Ditto.
899         (WebKit::WebProcess::ensureNetworkProcessConnection):
900
901 2015-11-01  Carlos Garcia Campos  <cgarcia@igalia.com>
902
903         [GTK] Use RunLoop::Timer in PluginInfoCache
904         https://bugs.webkit.org/show_bug.cgi?id=150757
905
906         Reviewed by Darin Adler.
907
908         Use RunLoop::Timer instead of GMainLoopSource to save the cache
909         contents in an idle. Also remove the mutex, since RunLoop::Timer
910         is thread safe and saveToFile() is private and only called by the
911         main thread loop. Also removed the code to save the file in the
912         destructor since PluginInfoCache is a singleton and never
913         destroyed. It's very unlikely that the program finished before the
914         cache is saved, but even if that happens it would be harmless, the
915         cache will be saved at some point the next time.
916
917         * UIProcess/Plugins/gtk/PluginInfoCache.cpp:
918         (WebKit::PluginInfoCache::PluginInfoCache):
919         (WebKit::PluginInfoCache::updatePluginInfo):
920         (WebKit::PluginInfoCache::~PluginInfoCache):
921         (WebKit::PluginInfoCache::saveToFile):
922         * UIProcess/Plugins/gtk/PluginInfoCache.h:
923
924 2015-11-01  Carlos Garcia Campos  <cgarcia@igalia.com>
925
926         [GTK] Use a RunLoop::Timer to schedule rendering frames in accelerated compositing mode
927         https://bugs.webkit.org/show_bug.cgi?id=150756
928
929         Reviewed by Darin Adler.
930
931         Use a RunLoop::Timer instead of a GMainLoopSource for the
932         accelerated compositing render loop to improve the performance,
933         since RunLoop::Timer uses a persistent source.
934         All the logic to schedule rames has been moved to a helper
935         internal class RenderFrameScheduler.
936
937         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
938         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::RenderFrameScheduler):
939         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::~RenderFrameScheduler):
940         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::start):
941         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::stop):
942         (WebKit::shouldSkipNextFrameBecauseOfContinousImmediateFlushes):
943         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::nextFrame):
944         (WebKit::LayerTreeHostGtk::RenderFrameScheduler::renderFrame):
945         (WebKit::LayerTreeHostGtk::LayerTreeHostGtk):
946         (WebKit::LayerTreeHostGtk::renderFrame):
947         (WebKit::LayerTreeHostGtk::scheduleLayerFlush):
948         (WebKit::LayerTreeHostGtk::cancelPendingLayerFlush):
949         (WebKit::LayerTreeHostGtk::layerFlushTimerFired): Deleted.
950         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
951
952 2015-10-31  Andreas Kling  <akling@apple.com>
953
954         Add a debug overlay with information about web process resource usage.
955         <https://webkit.org/b/150599>
956
957         Reviewed by Darin Adler.
958
959         Add WK2 preferences SPI for showing/hiding the resource usage overlay.
960
961         * Shared/WebPreferencesDefinitions.h:
962         * UIProcess/API/C/WKPreferences.cpp:
963         (WKPreferencesSetResourceUsageOverlayVisible):
964         (WKPreferencesGetResourceUsageOverlayVisible):
965         * UIProcess/API/C/WKPreferencesRefPrivate.h:
966         * UIProcess/API/Cocoa/WKPreferences.mm:
967         (-[WKPreferences _resourceUsageOverlayVisible]):
968         (-[WKPreferences _setResourceUsageOverlayVisible:]):
969         * UIProcess/API/Cocoa/WKPreferencesPrivate.h:
970         * WebProcess/WebPage/WebPage.cpp:
971         (WebKit::WebPage::updatePreferences):
972
973 2015-10-31  Alex Christensen  <achristensen@webkit.org>
974
975         Share more code between NETWORK_SESSION and non-NETWORK_SESSION NetworkResourceLoaders
976         https://bugs.webkit.org/show_bug.cgi?id=150742
977
978         Reviewed by Darin Adler.
979
980         r191457 added enough code to NetworkResourceLoader to load most resources successfully if there are no errors.
981         It passed about 80% of LayoutTests/http and crashed sometimes.
982         This passes about 95% of LayoutTests/http and does not crash on any of the LayoutTests/http.
983         It should not change behavior of the non-NETWORK_SESSION code which is currently the default in trunk.
984
985         * NetworkProcess/NetworkResourceLoader.cpp:
986         (WebKit::NetworkResourceLoader::abort):
987         (WebKit::NetworkResourceLoader::sharedDidReceiveResponse):
988         (WebKit::NetworkResourceLoader::sharedDidReceiveBuffer):
989         (WebKit::NetworkResourceLoader::sharedDidFinishLoading):
990         (WebKit::NetworkResourceLoader::sharedDidFail):
991         (WebKit::NetworkResourceLoader::sharedWillSendRedirectedRequest):
992         (WebKit::NetworkResourceLoader::willPerformHTTPRedirection):
993         (WebKit::NetworkResourceLoader::didReceiveChallenge):
994         (WebKit::NetworkResourceLoader::didReceiveResponse):
995         (WebKit::NetworkResourceLoader::didReceiveData):
996         (WebKit::NetworkResourceLoader::didCompleteWithError):
997         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
998         (WebKit::NetworkResourceLoader::didReceiveBuffer):
999         (WebKit::NetworkResourceLoader::didFinishLoading):
1000         (WebKit::NetworkResourceLoader::didFail):
1001         (WebKit::NetworkResourceLoader::willSendRequestAsync):
1002         * NetworkProcess/NetworkResourceLoader.h:
1003         * NetworkProcess/NetworkSession.h:
1004         (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
1005
1006 2015-10-28  Wenson Hsieh  <wenson_hsieh@apple.com>
1007
1008         Inner height behavior when the keyboard is shown should match on WKWebView and MobileSafari
1009         https://bugs.webkit.org/show_bug.cgi?id=150634
1010         <rdar://problem/23202254>
1011
1012         Reviewed by Benjamin Poulain.
1013
1014         Make WKWebView match behavior in Safari by not firing resize events and changing the inner height when showing
1015         or hiding the keyboard. Previously, the WKWebView would do both of the above because we use the scroll view's
1016         contentInset property when no unobscured insets are explicitly set for the WKWebView. To fix this, when updating
1017         the visible content rect of a WKWebView for computing the inner height, we readjust the computed bottom inset
1018         to not take the keyboard height into account. To know how much we need to readjust the inset by, we store the
1019         total amount by which the scroll view's bottom inset has been adjusted due to the keyboard.
1020
1021         We perform this readjustment in _updateVisibleContentRects rather than in _computedContentInset since some users
1022         of _computedContentInset may still expect the bottom inset to account for the keyboard height. However, when
1023         updating visible content rects, we should not account for the keyboard height since we don't want the inner height
1024         to change when showing or hiding the keyboard.
1025
1026         Lastly, while calling _adjustForAutomaticKeyboardInfo, we may end up calling _updateVisibleContentRects. This call
1027         is unnecessary since we call it again immediately after _adjustForAutomaticKeyboardInfo, and it also complicates
1028         the readjustment logic, so it makes sense to prevent the update from happening altogether while we are adjusting
1029         the scroll view's insets due to keyboard changes. Altogether, these changes mean that the computed inner height
1030         will no longer be adjusted for the keyboard height on WKWebViews, matching the behavior observed on mobile Safari.
1031
1032         Test: LayoutTests/fast/events/ios/keyboard-should-not-trigger-resize.html
1033
1034         * UIProcess/API/Cocoa/WKWebView.mm:
1035         (-[WKWebView _updateVisibleContentRects]):
1036         (-[WKWebView _keyboardChangedWithInfo:adjustScrollView:]):
1037
1038 2015-10-30  Anders Carlsson  <andersca@apple.com>
1039
1040         Begin work on supporting reply blocks in _WKRemoteObjectRegistry
1041         https://bugs.webkit.org/show_bug.cgi?id=150739
1042
1043         Reviewed by Tim Horton.
1044
1045         * Platform/spi/Cocoa/BlockSPI.h:
1046         Add SPI header.
1047
1048         * Shared/API/Cocoa/RemoteObjectInvocation.h:
1049         (WebKit::RemoteObjectInvocation::ReplyInfo::ReplyInfo):
1050         (WebKit::RemoteObjectInvocation::replyInfo):
1051         * Shared/API/Cocoa/RemoteObjectInvocation.mm:
1052         (WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
1053         (WebKit::RemoteObjectInvocation::encode):
1054         (WebKit::RemoteObjectInvocation::decode):
1055         Add an optional ReplyInfo struct to RemoteObjectInvocation.
1056
1057         * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
1058         (generateReplyIdentifier):
1059         Helper function to generate a reply identifier.
1060
1061         (-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
1062         Do some block parameter validation.
1063
1064         * WebKit2.xcodeproj/project.pbxproj:
1065
1066 2015-10-30  Beth Dakin  <bdakin@apple.com>
1067
1068         Link preview doesn't work on XHTML pages with Content-Type header as 
1069         ‘application/xhtml+xml’
1070         https://bugs.webkit.org/show_bug.cgi?id=150740
1071         -and corresponding-
1072         rdar://problem/23063585
1073
1074         Reviewed by Tim Horton.
1075
1076         For XHTML pages, the element names are lowercase. This patch uses 
1077         equalIgnoringCase to fix the bug.
1078         * UIProcess/ios/WKContentViewInteraction.mm:
1079         (-[WKContentView _actionForLongPress]):
1080         (-[WKContentView _interactionShouldBeginFromPreviewItemController:forPosition:]):
1081         (-[WKContentView _dataForPreviewItemController:atPosition:type:]):
1082
1083 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1084
1085         WKView being inside WKWebView leads to weird API issues
1086         https://bugs.webkit.org/show_bug.cgi?id=150174
1087
1088         Reviewed by Anders Carlsson.
1089
1090         * UIProcess/API/mac/WKView.mm:
1091         (-[WKView initWithFrame:processGroup:browsingContextGroup:relatedToView:]):
1092         (-[WKView prepareContentInRect:]):
1093         (-[WKView initWithFrame:processPool:configuration:webView:]):
1094         (-[WKView pageRef]):
1095         (-[WKView _web_immediateActionAnimationControllerForHitTestResultInternal:withType:userData:]):
1096         (-[WKView dealloc]): Deleted.
1097         * UIProcess/Cocoa/WebViewImpl.h:
1098         (WebKit::WebViewImpl::page):
1099         * UIProcess/Cocoa/WebViewImpl.mm:
1100         (-[WKWindowVisibilityObserver initWithView:impl:]):
1101         (-[WKWindowVisibilityObserver dealloc]):
1102         (-[WKWindowVisibilityObserver _activeSpaceDidChange:]):
1103         (WebKit::WebViewImpl::WebViewImpl):
1104         (WebKit::WebViewImpl::~WebViewImpl):
1105         (WebKit::WebViewImpl::setDrawsBackground):
1106         (WebKit::WebViewImpl::drawsBackground):
1107         (WebKit::WebViewImpl::setDrawsTransparentBackground):
1108         (WebKit::WebViewImpl::drawsTransparentBackground):
1109         (WebKit::WebViewImpl::isOpaque):
1110         (WebKit::WebViewImpl::acceptsFirstMouse):
1111         (WebKit::WebViewImpl::becomeFirstResponder):
1112         (WebKit::WebViewImpl::resignFirstResponder):
1113         (WebKit::WebViewImpl::viewWillStartLiveResize):
1114         (WebKit::WebViewImpl::viewDidEndLiveResize):
1115         (WebKit::WebViewImpl::updateWindowAndViewFrames):
1116         (WebKit::WebViewImpl::setFixedLayoutSize):
1117         (WebKit::WebViewImpl::fixedLayoutSize):
1118         (WebKit::WebViewImpl::isUsingUISideCompositing):
1119         (WebKit::WebViewImpl::setDrawingAreaSize):
1120         (WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate):
1121         (WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate):
1122         (WebKit::WebViewImpl::updateLayer):
1123         (WebKit::WebViewImpl::drawRect):
1124         (WebKit::WebViewImpl::dispatchSetTopContentInset):
1125         (WebKit::WebViewImpl::prepareContentInRect):
1126         (WebKit::WebViewImpl::updateViewExposedRect):
1127         (WebKit::WebViewImpl::setMinimumSizeForAutoLayout):
1128         (WebKit::WebViewImpl::minimumSizeForAutoLayout):
1129         (WebKit::WebViewImpl::setShouldExpandToViewHeightForAutoLayout):
1130         (WebKit::WebViewImpl::shouldExpandToViewHeightForAutoLayout):
1131         (WebKit::WebViewImpl::setIntrinsicContentSize):
1132         (WebKit::WebViewImpl::setViewScale):
1133         (WebKit::WebViewImpl::viewScale):
1134         (WebKit::WebViewImpl::supportsArbitraryLayoutModes):
1135         (WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
1136         (WebKit::WebViewImpl::windowDidOrderOffScreen):
1137         (WebKit::WebViewImpl::windowDidOrderOnScreen):
1138         (WebKit::WebViewImpl::windowDidBecomeKey):
1139         (WebKit::WebViewImpl::windowDidResignKey):
1140         (WebKit::WebViewImpl::windowDidMiniaturize):
1141         (WebKit::WebViewImpl::windowDidDeminiaturize):
1142         (WebKit::WebViewImpl::windowDidChangeBackingProperties):
1143         (WebKit::WebViewImpl::windowDidChangeScreen):
1144         (WebKit::WebViewImpl::windowDidChangeLayerHosting):
1145         (WebKit::WebViewImpl::windowDidChangeOcclusionState):
1146         (WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent):
1147         (WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb):
1148         (WebKit::WebViewImpl::viewDidMoveToWindow):
1149         (WebKit::WebViewImpl::viewDidChangeBackingProperties):
1150         (WebKit::WebViewImpl::viewDidHide):
1151         (WebKit::WebViewImpl::viewDidUnhide):
1152         (WebKit::WebViewImpl::activeSpaceDidChange):
1153         (WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
1154         (WebKit::WebViewImpl::setUnderlayColor):
1155         (WebKit::WebViewImpl::underlayColor):
1156         (WebKit::WebViewImpl::pageExtendedBackgroundColor):
1157         (WebKit::WebViewImpl::setOverlayScrollbarStyle):
1158         (WebKit::WebViewImpl::overlayScrollbarStyle):
1159         (WebKit::WebViewImpl::endDeferringViewInWindowChanges):
1160         (WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
1161         (WebKit::WebViewImpl::prepareForMoveToWindow):
1162         (WebKit::WebViewImpl::updateSecureInputState):
1163         (WebKit::WebViewImpl::setPluginComplexTextInputState):
1164         (WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
1165         (WebKit::WebViewImpl::handleAcceptedAlternativeText):
1166         (WebKit::WebViewImpl::pressureChangeWithEvent):
1167         (WebKit::WebViewImpl::isEditable):
1168         (WebKit::WebViewImpl::executeEditCommandForSelector):
1169         (WebKit::WebViewImpl::writeSelectionToPasteboard):
1170         (WebKit::WebViewImpl::readSelectionFromPasteboard):
1171         (WebKit::WebViewImpl::validRequestorForSendAndReturnTypes):
1172         (WebKit::WebViewImpl::centerSelectionInVisibleArea):
1173         (WebKit::WebViewImpl::updateFontPanelIfNeeded):
1174         (WebKit::WebViewImpl::changeFontFromFontPanel):
1175         (WebKit::WebViewImpl::validateUserInterfaceItem):
1176         (WebKit::WebViewImpl::startSpeaking):
1177         (WebKit::WebViewImpl::showGuessPanel):
1178         (WebKit::WebViewImpl::checkSpelling):
1179         (WebKit::WebViewImpl::changeSpelling):
1180         (WebKit::WebViewImpl::toggleContinuousSpellChecking):
1181         (WebKit::WebViewImpl::setGrammarCheckingEnabled):
1182         (WebKit::WebViewImpl::toggleGrammarChecking):
1183         (WebKit::WebViewImpl::toggleAutomaticSpellingCorrection):
1184         (WebKit::WebViewImpl::toggleSmartInsertDelete):
1185         (WebKit::WebViewImpl::setAutomaticQuoteSubstitutionEnabled):
1186         (WebKit::WebViewImpl::toggleAutomaticQuoteSubstitution):
1187         (WebKit::WebViewImpl::setAutomaticDashSubstitutionEnabled):
1188         (WebKit::WebViewImpl::toggleAutomaticDashSubstitution):
1189         (WebKit::WebViewImpl::setAutomaticLinkDetectionEnabled):
1190         (WebKit::WebViewImpl::toggleAutomaticLinkDetection):
1191         (WebKit::WebViewImpl::setAutomaticTextReplacementEnabled):
1192         (WebKit::WebViewImpl::toggleAutomaticTextReplacement):
1193         (WebKit::WebViewImpl::uppercaseWord):
1194         (WebKit::WebViewImpl::lowercaseWord):
1195         (WebKit::WebViewImpl::capitalizeWord):
1196         (WebKit::WebViewImpl::preferencesDidChange):
1197         (WebKit::WebViewImpl::dismissContentRelativeChildWindowsFromViewOnly):
1198         (WebKit::WebViewImpl::quickLookWithEvent):
1199         (WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
1200         (WebKit::WebViewImpl::didChangeContentSize):
1201         (WebKit::WebViewImpl::setIgnoresNonWheelEvents):
1202         (WebKit::WebViewImpl::updateRemoteAccessibilityRegistration):
1203         (WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):
1204         (WebKit::WebViewImpl::stringForToolTip):
1205         (WebKit::WebViewImpl::setInspectorAttachmentView):
1206         (WebKit::WebViewImpl::remoteObjectRegistry):
1207         (WebKit::WebViewImpl::browsingContextController):
1208         (WebKit::WebViewImpl::draggedImage):
1209         (WebKit::WebViewImpl::draggingEntered):
1210         (WebKit::WebViewImpl::draggingUpdated):
1211         (WebKit::WebViewImpl::draggingExited):
1212         (WebKit::WebViewImpl::performDragOperation):
1213         (WebKit::WebViewImpl::takeViewSnapshot):
1214         (WebKit::WebViewImpl::saveBackForwardSnapshotForCurrentItem):
1215         (WebKit::WebViewImpl::saveBackForwardSnapshotForItem):
1216         (WebKit::WebViewImpl::setAllowsBackForwardNavigationGestures):
1217         (WebKit::WebViewImpl::setMagnification):
1218         (WebKit::WebViewImpl::magnification):
1219         (WebKit::WebViewImpl::scrollWheel):
1220         (WebKit::WebViewImpl::swipeWithEvent):
1221         (WebKit::WebViewImpl::magnifyWithEvent):
1222         (WebKit::WebViewImpl::rotateWithEvent):
1223         (WebKit::WebViewImpl::doCommandBySelector):
1224         (WebKit::WebViewImpl::insertText):
1225         (WebKit::WebViewImpl::selectedRangeWithCompletionHandler):
1226         (WebKit::WebViewImpl::markedRangeWithCompletionHandler):
1227         (WebKit::WebViewImpl::hasMarkedTextWithCompletionHandler):
1228         (WebKit::WebViewImpl::attributedSubstringForProposedRange):
1229         (WebKit::WebViewImpl::firstRectForCharacterRange):
1230         (WebKit::WebViewImpl::characterIndexForPoint):
1231         (WebKit::WebViewImpl::inputContext):
1232         (WebKit::WebViewImpl::unmarkText):
1233         (WebKit::WebViewImpl::setMarkedText):
1234         (WebKit::WebViewImpl::performKeyEquivalent):
1235         (WebKit::WebViewImpl::keyUp):
1236         (WebKit::WebViewImpl::keyDown):
1237         (WebKit::WebViewImpl::flagsChanged):
1238         (WebKit::WebViewImpl::executeSavedKeypressCommands):
1239         (WebKit::WebViewImpl::selectedRange):
1240         (WebKit::WebViewImpl::hasMarkedText):
1241         (WebKit::WebViewImpl::markedRange):
1242         (WebKit::WebViewImpl::setContentPreparationRect): Deleted.
1243         (WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResultFromViewOnly): Deleted.
1244         (WebKit::WebViewImpl::destroyRemoteObjectRegistry): Deleted.
1245         * UIProcess/WebPageProxy.h:
1246         (WebKit::WebPageProxy::scrollPinningBehavior):
1247         (WebKit::WebPageProxy::overlayScrollbarStyle):
1248         * UIProcess/WebProcessPool.cpp:
1249         (WebKit::WebProcessPool::createWebPage):
1250         * UIProcess/WebProcessPool.h:
1251         * UIProcess/mac/PageClientImpl.h:
1252         * UIProcess/mac/PageClientImpl.mm:
1253         (WebKit::PageClientImpl::PageClientImpl):
1254         (WebKit::PageClientImpl::createDrawingAreaProxy):
1255         (WebKit::PageClientImpl::viewSize):
1256         (WebKit::PageClientImpl::activeView):
1257         (WebKit::PageClientImpl::activeWindow):
1258         (WebKit::PageClientImpl::isViewFocused):
1259         (WebKit::PageClientImpl::makeFirstResponder):
1260         (WebKit::PageClientImpl::isViewVisible):
1261         (WebKit::PageClientImpl::colorSpace):
1262         (WebKit::PageClientImpl::processDidExit):
1263         (WebKit::PageClientImpl::pageClosed):
1264         (WebKit::PageClientImpl::didRelaunchProcess):
1265         (WebKit::PageClientImpl::preferencesDidChange):
1266         (WebKit::PageClientImpl::toolTipChanged):
1267         (WebKit::PageClientImpl::didCommitLoadForMainFrame):
1268         (WebKit::PageClientImpl::didChangeContentSize):
1269         (WebKit::PageClientImpl::setCursor):
1270         (WebKit::PageClientImpl::registerEditCommand):
1271         (WebKit::PageClientImpl::registerInsertionUndoGrouping):
1272         (WebKit::PageClientImpl::clearAllEditCommands):
1273         (WebKit::PageClientImpl::canUndoRedo):
1274         (WebKit::PageClientImpl::executeUndoRedo):
1275         (WebKit::PageClientImpl::setDragImage):
1276         (WebKit::PageClientImpl::setPromisedDataForImage):
1277         (WebKit::PageClientImpl::setPromisedDataForAttachment):
1278         (WebKit::PageClientImpl::updateSecureInputState):
1279         (WebKit::PageClientImpl::resetSecureInputState):
1280         (WebKit::PageClientImpl::notifyInputContextAboutDiscardedComposition):
1281         (WebKit::PageClientImpl::convertToDeviceSpace):
1282         (WebKit::PageClientImpl::convertToUserSpace):
1283         (WebKit::PageClientImpl::screenToRootView):
1284         (WebKit::PageClientImpl::rootViewToScreen):
1285         (WebKit::PageClientImpl::doneWithKeyEvent):
1286         (WebKit::PageClientImpl::createPopupMenuProxy):
1287         (WebKit::PageClientImpl::createContextMenuProxy):
1288         (WebKit::PageClientImpl::createColorPicker):
1289         (WebKit::PageClientImpl::setTextIndicator):
1290         (WebKit::PageClientImpl::clearTextIndicator):
1291         (WebKit::PageClientImpl::setTextIndicatorAnimationProgress):
1292         (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
1293         (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
1294         (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
1295         (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
1296         (WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
1297         (WebKit::PageClientImpl::acceleratedCompositingRootLayer):
1298         (WebKit::PageClientImpl::takeViewSnapshot):
1299         (WebKit::PageClientImpl::selectionDidChange):
1300         (WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
1301         (WebKit::PageClientImpl::gestureEventWasNotHandledByWebCore):
1302         (WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
1303         (WebKit::PageClientImpl::setPluginComplexTextInputState):
1304         (WebKit::PageClientImpl::didPerformDictionaryLookup):
1305         (WebKit::PageClientImpl::dismissContentRelativeChildWindows):
1306         (WebKit::PageClientImpl::showCorrectionPanel):
1307         (WebKit::PageClientImpl::recordAutocorrectionResponse):
1308         (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
1309         (WebKit::PageClientImpl::intrinsicContentSizeDidChange):
1310         (WebKit::PageClientImpl::executeSavedCommandBySelector):
1311         (WebKit::PageClientImpl::showDictationAlternativeUI):
1312         (WebKit::PageClientImpl::closeFullScreenManager):
1313         (WebKit::PageClientImpl::isFullScreen):
1314         (WebKit::PageClientImpl::enterFullScreen):
1315         (WebKit::PageClientImpl::exitFullScreen):
1316         (WebKit::PageClientImpl::beganEnterFullScreen):
1317         (WebKit::PageClientImpl::beganExitFullScreen):
1318         (WebKit::PageClientImpl::didFirstVisuallyNonEmptyLayoutForMainFrame):
1319         (WebKit::PageClientImpl::didFinishLoadForMainFrame):
1320         (WebKit::PageClientImpl::didFailLoadForMainFrame):
1321         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
1322         (WebKit::PageClientImpl::removeNavigationGestureSnapshot):
1323         (WebKit::PageClientImpl::boundsOfLayerInLayerBackedWindowCoordinates):
1324         (WebKit::PageClientImpl::didPerformImmediateActionHitTest):
1325         (WebKit::PageClientImpl::immediateActionAnimationControllerForHitTestResult):
1326         (WebKit::PageClientImpl::showPlatformContextMenu):
1327         (WebKit::PageClientImpl::refView):
1328         (WebKit::PageClientImpl::derefView):
1329         (WebKit::PageClientImpl::startWindowDrag):
1330         (WebKit::PageClientImpl::platformWindow):
1331         (WebKit::PageClientImpl::inspectorAttachmentView):
1332         (WebKit::PageClientImpl::remoteObjectRegistry):
1333         * UIProcess/mac/WebColorPickerMac.h:
1334         * UIProcess/mac/WebColorPickerMac.mm:
1335         (WebKit::WebColorPickerMac::create):
1336         (WebKit::WebColorPickerMac::WebColorPickerMac):
1337         (-[WKColorPopoverMac initWithFrame:inView:]):
1338         * UIProcess/mac/WebContextMenuProxyMac.h:
1339         * UIProcess/mac/WebContextMenuProxyMac.mm:
1340         (WebKit::WebContextMenuProxyMac::WebContextMenuProxyMac):
1341         * UIProcess/mac/WebPopupMenuProxyMac.h:
1342         (WebKit::WebPopupMenuProxyMac::create):
1343         * UIProcess/mac/WebPopupMenuProxyMac.mm:
1344         (WebKit::WebPopupMenuProxyMac::WebPopupMenuProxyMac):
1345         Move ownership of WebPageProxy and PageClientImpl to WebViewImpl.
1346
1347 2015-10-30  Alex Christensen  <achristensen@webkit.org>
1348
1349         Fix Mac CMake build after rr191810.
1350
1351         * PlatformMac.cmake:
1352         Add RemoteObjectInvocation.mm.
1353
1354 2015-10-30  Anders Carlsson  <andersca@apple.com>
1355
1356         Add a separate object that represents a remote object invocation
1357         https://bugs.webkit.org/show_bug.cgi?id=150639
1358
1359         Reviewed by Tim Horton.
1360
1361         * Shared/API/Cocoa/RemoteObjectInvocation.h: Copied from Source/WebKit2/Shared/API/Cocoa/RemoteObjectRegistry.h.
1362         (WebKit::RemoteObjectInvocation::interfaceIdentifier):
1363         (WebKit::RemoteObjectInvocation::encodedInvocation):
1364         * Shared/API/Cocoa/RemoteObjectInvocation.mm: Copied from Source/WebKit2/Shared/API/Cocoa/RemoteObjectRegistry.mm.
1365         (WebKit::RemoteObjectInvocation::RemoteObjectInvocation):
1366         (WebKit::RemoteObjectInvocation::encode):
1367         (WebKit::RemoteObjectInvocation::decode):
1368         * Shared/API/Cocoa/RemoteObjectRegistry.h:
1369         * Shared/API/Cocoa/RemoteObjectRegistry.messages.in:
1370         * Shared/API/Cocoa/RemoteObjectRegistry.mm:
1371         (WebKit::RemoteObjectRegistry::sendInvocation):
1372         (WebKit::RemoteObjectRegistry::invokeMethod):
1373         * Shared/API/Cocoa/_WKRemoteObjectRegistry.mm:
1374         (-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
1375         (-[_WKRemoteObjectRegistry _invokeMethod:]):
1376         * Shared/API/Cocoa/_WKRemoteObjectRegistryInternal.h:
1377         * WebKit2.xcodeproj/project.pbxproj:
1378
1379 2015-10-30  Beth Dakin  <bdakin@apple.com>
1380
1381         Another speculative build fix.
1382
1383         * UIProcess/API/Cocoa/_WKElementAction.h:
1384
1385 2015-10-30  Beth Dakin  <bdakin@apple.com>
1386
1387         Speculative build fix.
1388
1389         * Platform/spi/ios/UIKitSPI.h:
1390         * UIProcess/ios/WKContentViewInteraction.mm:
1391
1392 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1393
1394         WKView being inside WKWebView leads to weird API issues
1395         https://bugs.webkit.org/show_bug.cgi?id=150174
1396
1397         Reviewed by Anders Carlsson.
1398
1399         * UIProcess/API/mac/WKView.mm:
1400         (-[WKView mouseMoved:]):
1401         (-[WKView mouseDown:]):
1402         (-[WKView mouseUp:]):
1403         (-[WKView mouseDragged:]):
1404         (-[WKView mouseEntered:]):
1405         (-[WKView mouseExited:]):
1406         (-[WKView otherMouseDown:]):
1407         (-[WKView otherMouseDragged:]):
1408         (-[WKView otherMouseUp:]):
1409         (-[WKView rightMouseDown:]):
1410         (-[WKView rightMouseDragged:]):
1411         (-[WKView rightMouseUp:]):
1412         (-[WKView _updateViewExposedRect]): Deleted.
1413         * UIProcess/Cocoa/WebViewImpl.h:
1414         * UIProcess/Cocoa/WebViewImpl.mm:
1415         (WebKit::WebViewImpl::mouseMoved):
1416         (WebKit::WebViewImpl::mouseDown):
1417         (WebKit::WebViewImpl::mouseUp):
1418         (WebKit::WebViewImpl::mouseDragged):
1419         Move mouse event handling.
1420
1421 2015-10-30  Beth Dakin  <bdakin@apple.com>
1422
1423         Tapping and holding a link should have a share option
1424         https://bugs.webkit.org/show_bug.cgi?id=150693
1425         -and corresponding-
1426         rdar://problem/21319702
1427
1428         Reviewed by Tim Horton.
1429
1430         New _WKElementActionType called _WKElementActionTypeShare.
1431         * UIProcess/API/Cocoa/_WKElementAction.h:
1432         * UIProcess/API/Cocoa/_WKElementAction.mm:
1433         (+[_WKElementAction _elementActionWithType:customTitle:assistant:]):
1434
1435         _WKElementActionTypeShare is part of the default actions for links.
1436         * UIProcess/ios/WKActionSheetAssistant.h:
1437         * UIProcess/ios/WKActionSheetAssistant.mm:
1438         (-[WKActionSheetAssistant defaultActionsForLinkSheet:]):
1439
1440         Handle the sharing part!
1441         * UIProcess/ios/WKContentViewInteraction.mm:
1442         (-[WKContentView actionSheetAssistant:shareElementWithURL:rect:]):
1443
1444         To support this in PDF, PDF need to create a _webSelectionAssistant.
1445         * UIProcess/ios/WKPDFView.mm:
1446         (-[WKPDFView web_initWithFrame:webView:]):
1447         (-[WKPDFView actionSheetAssistant:openElementAtLocation:]):
1448         (-[WKPDFView actionSheetAssistant:shareElementWithURL:rect:]):
1449         (-[WKPDFView actionSheetAssistant:shouldIncludeAppLinkActionsForElement:]):
1450
1451 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1452
1453         WKView being inside WKWebView leads to weird API issues
1454         https://bugs.webkit.org/show_bug.cgi?id=150174
1455
1456         Reviewed by Anders Carlsson.
1457
1458         * UIProcess/API/mac/WKView.mm:
1459         (-[WKView _wantsKeyDownForEvent:]):
1460         (-[WKView acceptsFirstMouse:]):
1461         (-[WKView shouldDelayWindowOrderingForEvent:]):
1462         (-[WKView validAttributesForMarkedText]):
1463         (-[WKView _windowResizeMouseLocationIsInVisibleScrollerThumb:]):
1464         (-[WKView drawRect:]):
1465         (-[WKView isOpaque]):
1466         (-[WKView mouseDownCanMoveWindow]):
1467         (-[WKView viewDidHide]):
1468         (-[WKView viewDidUnhide]):
1469         (-[WKView _activeSpaceDidChange:]):
1470         (-[WKView hitTest:]):
1471         (-[WKView wantsUpdateLayer]):
1472         (-[WKView canChangeFrameLayout:]):
1473         (-[WKView printOperationWithPrintInfo:forFrame:]):
1474         (+[WKView hideWordDefinitionWindow]):
1475         * UIProcess/Cocoa/WebViewImpl.h:
1476         (WebKit::WebViewImpl::wantsUpdateLayer):
1477         (WebKit::WebViewImpl::mouseDownCanMoveWindow):
1478         (WebKit::WebViewImpl::wantsKeyDownForEvent):
1479         (WebKit::WebViewImpl::layerHostingView): Deleted.
1480         * UIProcess/Cocoa/WebViewImpl.mm:
1481         (WebKit::WebViewImpl::isOpaque):
1482         (WebKit::WebViewImpl::acceptsFirstMouse):
1483         (WebKit::WebViewImpl::drawRect):
1484         (WebKit::WebViewImpl::canChangeFrameLayout):
1485         (WebKit::WebViewImpl::printOperationWithPrintInfo):
1486         (WebKit::WebViewImpl::shouldDelayWindowOrderingForEvent):
1487         (WebKit::WebViewImpl::windowResizeMouseLocationIsInVisibleScrollerThumb):
1488         (WebKit::WebViewImpl::viewDidHide):
1489         (WebKit::WebViewImpl::viewDidUnhide):
1490         (WebKit::WebViewImpl::activeSpaceDidChange):
1491         (WebKit::WebViewImpl::hitTest):
1492         (WebKit::WebViewImpl::hideWordDefinitionWindow):
1493         (WebKit::WebViewImpl::validAttributesForMarkedText):
1494         Printing and random bits.
1495
1496 2015-10-30  Anders Carlsson  <andersca@apple.com>
1497
1498         REGRESSION (r191691): Unexpected "Share" context menu when right clicking around inspector
1499         https://bugs.webkit.org/show_bug.cgi?id=150699
1500         rdar://problem/23324522
1501
1502         Reviewed by Tim Horton.
1503
1504         Don't create a share menu item if we have nothing to share.
1505
1506         * UIProcess/mac/WebContextMenuProxyMac.mm:
1507         (WebKit::WebContextMenuProxyMac::createShareMenuItem):
1508
1509 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1510
1511         Initialize some new WebViewImpl members
1512
1513         * UIProcess/Cocoa/WebViewImpl.h:
1514         Oh well.
1515
1516 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1517
1518         Fix the build
1519
1520         * UIProcess/API/mac/WKView.mm:
1521
1522 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1523
1524         Fix the build
1525
1526         * UIProcess/Cocoa/WebViewImpl.h:
1527         * UIProcess/Cocoa/WebViewImpl.mm:
1528         (WebKit::WebViewImpl::collectKeyboardLayoutCommandsForEvent):
1529
1530 2015-10-30  Tim Horton  <timothy_horton@apple.com>
1531
1532         WKView being inside WKWebView leads to weird API issues
1533         https://bugs.webkit.org/show_bug.cgi?id=150174
1534
1535         Reviewed by Darin Adler.
1536
1537         * UIProcess/API/mac/WKView.mm:
1538         (-[WKView doCommandBySelector:]):
1539         (-[WKView insertText:]):
1540         (-[WKView insertText:replacementRange:]):
1541         (-[WKView inputContext]):
1542         (-[WKView performKeyEquivalent:]):
1543         (-[WKView keyUp:]):
1544         (-[WKView keyDown:]):
1545         (-[WKView flagsChanged:]):
1546         (-[WKView setMarkedText:selectedRange:replacementRange:]):
1547         (-[WKView unmarkText]):
1548         (-[WKView selectedRange]):
1549         (-[WKView hasMarkedText]):
1550         (-[WKView markedRange]):
1551         (-[WKView attributedSubstringForProposedRange:actualRange:]):
1552         (-[WKView characterIndexForPoint:]):
1553         (-[WKView firstRectForCharacterRange:actualRange:]):
1554         (-[WKView selectedRangeWithCompletionHandler:]):
1555         (-[WKView markedRangeWithCompletionHandler:]):
1556         (-[WKView hasMarkedTextWithCompletionHandler:]):
1557         (-[WKView attributedSubstringForProposedRange:completionHandler:]):
1558         (-[WKView firstRectForCharacterRange:completionHandler:]):
1559         (-[WKView characterIndexForPoint:completionHandler:]):
1560         (-[WKView _superPerformKeyEquivalent:]):
1561         (-[WKView _superKeyDown:]):
1562         (extractUnderlines): Deleted.
1563         (-[WKView _collectKeyboardLayoutCommandsForEvent:to:]): Deleted.
1564         (-[WKView _interpretKeyEvent:completionHandler:]): Deleted.
1565         (-[WKView NO_RETURN_DUE_TO_ASSERT]): Deleted.
1566         (-[WKView _interpretKeyEvent:savingCommandsTo:]): Deleted.
1567         (-[WKView _executeSavedKeypressCommands]): Deleted.
1568         (-[WKView _doneWithKeyEvent:eventWasHandled:]): Deleted.
1569         * UIProcess/API/mac/WKViewInternal.h:
1570         * UIProcess/Cocoa/WebViewImpl.h:
1571         * UIProcess/Cocoa/WebViewImpl.mm:
1572         (WebKit::WebViewImpl::doneWithKeyEvent):
1573         (WebKit::extractUnderlines):
1574         (WebKit::WebViewImpl::collectKeyboardLayoutCommandsForEvent):
1575         (WebKit::WebViewImpl::interpretKeyEvent):
1576         (WebKit::WebViewImpl::doCommandBySelector):
1577         (WebKit::WebViewImpl::insertText):
1578         (WebKit::WebViewImpl::selectedRangeWithCompletionHandler):
1579         (WebKit::WebViewImpl::markedRangeWithCompletionHandler):
1580         (WebKit::WebViewImpl::hasMarkedTextWithCompletionHandler):
1581         (WebKit::WebViewImpl::attributedSubstringForProposedRange):
1582         (WebKit::WebViewImpl::firstRectForCharacterRange):
1583         (WebKit::WebViewImpl::characterIndexForPoint):
1584         (WebKit::WebViewImpl::inputContext):
1585         (WebKit::WebViewImpl::unmarkText):
1586         (WebKit::WebViewImpl::setMarkedText):
1587         (WebKit::WebViewImpl::selectedRange):
1588         (WebKit::WebViewImpl::hasMarkedText):
1589         (WebKit::WebViewImpl::markedRange):
1590         (WebKit::WebViewImpl::performKeyEquivalent):
1591         (WebKit::WebViewImpl::keyUp):
1592         (WebKit::WebViewImpl::keyDown):
1593         (WebKit::WebViewImpl::flagsChanged):
1594         (WebKit::WebViewImpl::executeSavedKeypressCommands):
1595         * UIProcess/mac/PageClientImpl.mm:
1596         (WebKit::PageClientImpl::doneWithKeyEvent):
1597         Move NSTextInputClient implementation.
1598
1599 2015-10-30  Carlos Garcia Campos  <cgarcia@igalia.com>
1600
1601         [GTK] Move the socket polling off the WorkQueue
1602         https://bugs.webkit.org/show_bug.cgi?id=150593
1603
1604         Reviewed by Anders Carlsson.
1605
1606         Create the socket poll source in Connection::open and attach it to
1607         the connection work queue context.
1608
1609         * Platform/IPC/Connection.h:
1610         * Platform/IPC/unix/ConnectionUnix.cpp:
1611         (IPC::Connection::platformInvalidate):
1612         (IPC::Connection::open):
1613
1614 2015-10-30  Carlos Garcia Campos  <cgarcia@igalia.com>
1615
1616         [GTK] Use RunLoop::Timer instead of GMainLoopSource
1617         https://bugs.webkit.org/show_bug.cgi?id=150592
1618
1619         Reviewed by Žan Doberšek.
1620
1621         * Shared/Downloads/soup/DownloadSoup.cpp:
1622         (WebKit::DownloadClient::DownloadClient):
1623         (WebKit::DownloadClient::didReceiveData):
1624         (WebKit::DownloadClient::handleResponseLater):
1625         * UIProcess/gtk/GestureController.cpp:
1626         (WebKit::GestureController::DragGesture::begin):
1627         (WebKit::GestureController::DragGesture::update):
1628         (WebKit::GestureController::DragGesture::end):
1629         (WebKit::GestureController::DragGesture::longPressFired):
1630         (WebKit::GestureController::DragGesture::DragGesture):
1631         (WebKit::GestureController::ZoomGesture::scaleChanged):
1632         (WebKit::GestureController::ZoomGesture::ZoomGesture):
1633         * UIProcess/gtk/GestureController.h:
1634
1635 2015-10-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1636
1637         [GTK] Use a persistent main loop source in RunLoop glib implementation
1638         https://bugs.webkit.org/show_bug.cgi?id=150590
1639
1640         Reviewed by Žan Doberšek.
1641
1642         Use RunLoop::dispatch() instead of
1643         GMainLoopSource::scheduleAndDeleteOnDestroy in a couple of simple
1644         cases.
1645
1646         * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
1647         (WebKit::NetworkCache::runTaskInQueue):
1648         * UIProcess/gtk/DragAndDropHandler.cpp:
1649         (WebKit::DragAndDropHandler::dragLeave):
1650
1651 2015-10-29  Alex Christensen  <achristensen@webkit.org>
1652
1653         Make WebCore a framework in Mac CMake build
1654         https://bugs.webkit.org/show_bug.cgi?id=150702
1655
1656         Reviewed by Geoffrey Garen.
1657
1658         * PlatformMac.cmake:
1659
1660 2015-10-29  Alex Christensen  <achristensen@webkit.org>
1661
1662         EFL build fix after r191749
1663
1664         * CMakeLists.txt:
1665         Only Mac should include the Cocoa directory.
1666
1667 2015-10-29  Tim Horton  <timothy_horton@apple.com>
1668
1669         WKView being inside WKWebView leads to weird API issues
1670         https://bugs.webkit.org/show_bug.cgi?id=150174
1671
1672         Reviewed by Anders Carlsson.
1673
1674         * Platform/spi/mac/AppKitSPI.h:
1675         * UIProcess/API/mac/WKView.mm:
1676         (-[WKView validRequestorForSendType:returnType:]):
1677         (-[WKView readSelectionFromPasteboard:]):
1678         (-[WKView changeFont:]):
1679         (-[WKView startSpeaking:]):
1680         (-[WKView stopSpeaking:]):
1681         (-[WKView showGuessPanel:]):
1682         (-[WKView checkSpelling:]):
1683         (-[WKView changeSpelling:]):
1684         (-[WKView toggleContinuousSpellChecking:]):
1685         (-[WKView isGrammarCheckingEnabled]):
1686         (-[WKView setGrammarCheckingEnabled:]):
1687         (-[WKView toggleGrammarChecking:]):
1688         (-[WKView toggleAutomaticSpellingCorrection:]):
1689         (-[WKView orderFrontSubstitutionsPanel:]):
1690         (-[WKView toggleSmartInsertDelete:]):
1691         (-[WKView isAutomaticQuoteSubstitutionEnabled]):
1692         (-[WKView setAutomaticQuoteSubstitutionEnabled:]):
1693         (-[WKView toggleAutomaticQuoteSubstitution:]):
1694         (-[WKView isAutomaticDashSubstitutionEnabled]):
1695         (-[WKView setAutomaticDashSubstitutionEnabled:]):
1696         (-[WKView toggleAutomaticDashSubstitution:]):
1697         (-[WKView isAutomaticLinkDetectionEnabled]):
1698         (-[WKView setAutomaticLinkDetectionEnabled:]):
1699         (-[WKView toggleAutomaticLinkDetection:]):
1700         (-[WKView isAutomaticTextReplacementEnabled]):
1701         (-[WKView setAutomaticTextReplacementEnabled:]):
1702         (-[WKView toggleAutomaticTextReplacement:]):
1703         (-[WKView uppercaseWord:]):
1704         (-[WKView lowercaseWord:]):
1705         (-[WKView capitalizeWord:]):
1706         * UIProcess/Cocoa/WebViewImpl.h:
1707         * UIProcess/Cocoa/WebViewImpl.mm:
1708         (WebKit::WebViewImpl::readSelectionFromPasteboard):
1709         (WebKit::WebViewImpl::validRequestorForSendAndReturnTypes):
1710         (WebKit::WebViewImpl::changeFontFromFontPanel):
1711         (WebKit::WebViewImpl::startSpeaking):
1712         (WebKit::WebViewImpl::stopSpeaking):
1713         (WebKit::WebViewImpl::showGuessPanel):
1714         (WebKit::WebViewImpl::checkSpelling):
1715         (WebKit::WebViewImpl::changeSpelling):
1716         (WebKit::WebViewImpl::toggleContinuousSpellChecking):
1717         (WebKit::WebViewImpl::isGrammarCheckingEnabled):
1718         (WebKit::WebViewImpl::setGrammarCheckingEnabled):
1719         (WebKit::WebViewImpl::toggleGrammarChecking):
1720         (WebKit::WebViewImpl::toggleAutomaticSpellingCorrection):
1721         (WebKit::WebViewImpl::orderFrontSubstitutionsPanel):
1722         (WebKit::WebViewImpl::toggleSmartInsertDelete):
1723         (WebKit::WebViewImpl::isAutomaticQuoteSubstitutionEnabled):
1724         (WebKit::WebViewImpl::setAutomaticQuoteSubstitutionEnabled):
1725         (WebKit::WebViewImpl::toggleAutomaticQuoteSubstitution):
1726         (WebKit::WebViewImpl::isAutomaticDashSubstitutionEnabled):
1727         (WebKit::WebViewImpl::setAutomaticDashSubstitutionEnabled):
1728         (WebKit::WebViewImpl::toggleAutomaticDashSubstitution):
1729         (WebKit::WebViewImpl::isAutomaticLinkDetectionEnabled):
1730         (WebKit::WebViewImpl::setAutomaticLinkDetectionEnabled):
1731         (WebKit::WebViewImpl::toggleAutomaticLinkDetection):
1732         (WebKit::WebViewImpl::setAutomaticTextReplacementEnabled):
1733         (WebKit::WebViewImpl::toggleAutomaticTextReplacement):
1734         (WebKit::WebViewImpl::uppercaseWord):
1735         (WebKit::WebViewImpl::lowercaseWord):
1736         (WebKit::WebViewImpl::capitalizeWord):
1737         Move spellcheck and related bits.
1738
1739 2015-10-29  Eric Carlson  <eric.carlson@apple.com>
1740
1741         Revert inadvertent changes
1742         https://bugs.webkit.org/show_bug.cgi?id=150694
1743
1744         Reviewed by Tim Horton.
1745
1746         * WebProcess/com.apple.WebProcess.sb.in:
1747
1748 2015-10-29  Alex Christensen  <achristensen@webkit.org>
1749
1750         CMake build fix.
1751
1752         * CMakeLists.txt:
1753         * PlatformMac.cmake:
1754         I mistakenly added some mac-specific files to the shared CMakeLists.txt.  This puts them in the right place.
1755         * UIProcess/WebPageProxy.cpp:
1756         (WebKit::WebPageProxy::viewWillStartLiveResize):
1757         (WebKit::WebPageProxy::viewDidLeaveWindow):
1758         (WebKit::WebPageProxy::didEndColorPicker):
1759         Add preprocessor enable checks.
1760
1761 2015-10-29  Tim Horton  <timothy_horton@apple.com>
1762
1763         WKView being inside WKWebView leads to weird API issues
1764         https://bugs.webkit.org/show_bug.cgi?id=150174
1765
1766         Reviewed by Darin Adler.
1767
1768         * UIProcess/API/mac/WKView.mm:
1769         (-[WKView browsingContextController]):
1770         (-[WKView validateUserInterfaceItem:]):
1771         (-[WKView saveBackForwardSnapshotForCurrentItem]):
1772         (-[WKView saveBackForwardSnapshotForItem:]):
1773         (-[WKView updateLayer]):
1774         (-[WKView minimumSizeForAutoLayout]):
1775         (-[WKView setMinimumSizeForAutoLayout:]):
1776         (-[WKView shouldExpandToViewHeightForAutoLayout]):
1777         (-[WKView setShouldExpandToViewHeightForAutoLayout:]):
1778         (-[WKView underlayColor]):
1779         (-[WKView setUnderlayColor:]):
1780         (-[WKView _setOverlayScrollbarStyle:]):
1781         (-[WKView _overlayScrollbarStyle]):
1782         (-[WKView _pageExtendedBackgroundColor]):
1783         (-[WKView forceAsyncDrawingAreaSizeUpdate:]):
1784         (-[WKView waitForAsyncDrawingAreaSizeUpdate]):
1785         (-[WKView isUsingUISideCompositing]):
1786         (createSelectorExceptionMap): Deleted.
1787         (commandNameForSelector): Deleted.
1788         (menuItem): Deleted.
1789         (toolbarItem): Deleted.
1790         (-[WKView _setUserInterfaceItemState:enabled:state:]): Deleted.
1791         * UIProcess/Cocoa/WebViewImpl.h:
1792         * UIProcess/Cocoa/WebViewImpl.mm:
1793         (WebKit::WebViewImpl::createDrawingAreaProxy):
1794         (WebKit::WebViewImpl::isUsingUISideCompositing):
1795         (WebKit::WebViewImpl::forceAsyncDrawingAreaSizeUpdate):
1796         (WebKit::WebViewImpl::waitForAsyncDrawingAreaSizeUpdate):
1797         (WebKit::WebViewImpl::updateLayer):
1798         (WebKit::WebViewImpl::setMinimumSizeForAutoLayout):
1799         (WebKit::WebViewImpl::minimumSizeForAutoLayout):
1800         (WebKit::WebViewImpl::setShouldExpandToViewHeightForAutoLayout):
1801         (WebKit::WebViewImpl::shouldExpandToViewHeightForAutoLayout):
1802         (WebKit::WebViewImpl::setUnderlayColor):
1803         (WebKit::WebViewImpl::underlayColor):
1804         (WebKit::WebViewImpl::pageExtendedBackgroundColor):
1805         (WebKit::WebViewImpl::setOverlayScrollbarStyle):
1806         (WebKit::WebViewImpl::overlayScrollbarStyle):
1807         (WebKit::createSelectorExceptionMap):
1808         (WebKit::commandNameForSelector):
1809         (WebKit::WebViewImpl::executeSavedCommandBySelector):
1810         (WebKit::WebViewImpl::executeEditCommandForSelector):
1811         (WebKit::menuItem):
1812         (WebKit::toolbarItem):
1813         (WebKit::WebViewImpl::validateUserInterfaceItem):
1814         (WebKit::WebViewImpl::setUserInterfaceItemState):
1815         (WebKit::WebViewImpl::browsingContextController):
1816         (WebKit::WebViewImpl::saveBackForwardSnapshotForCurrentItem):
1817         (WebKit::WebViewImpl::saveBackForwardSnapshotForItem):
1818         (WebKit::WebViewImpl::executeEditCommand): Deleted.
1819         Move UI validation and a grab-bag of other things.
1820
1821 2015-10-29  Alex Christensen  <achristensen@webkit.org>
1822
1823         Fix Mac CMake build
1824         https://bugs.webkit.org/show_bug.cgi?id=150686
1825
1826         Reviewed by Filip Pizlo.
1827
1828         * CMakeLists.txt:
1829         * PlatformMac.cmake:
1830
1831 2015-10-29  Commit Queue  <commit-queue@webkit.org>
1832
1833         Unreviewed, rolling out r191728.
1834         https://bugs.webkit.org/show_bug.cgi?id=150668
1835
1836         Caused a lot of timeouts in layout tests (Requested by KaL on
1837         #webkit).
1838
1839         Reverted changeset:
1840
1841         "[GTK] Use a persistent main loop source in RunLoop glib
1842         implementation"
1843         https://bugs.webkit.org/show_bug.cgi?id=150590
1844         http://trac.webkit.org/changeset/191728
1845
1846 2015-10-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1847
1848         [GTK] Use a persistent main loop source in RunLoop glib implementation
1849         https://bugs.webkit.org/show_bug.cgi?id=150590
1850
1851         Reviewed by Žan Doberšek.
1852
1853         Use RunLoop::dispatch() instead of
1854         GMainLoopSource::scheduleAndDeleteOnDestroy in a couple of simple
1855         cases.
1856
1857         * NetworkProcess/cache/NetworkCacheIOChannelSoup.cpp:
1858         (WebKit::NetworkCache::runTaskInQueue):
1859         * UIProcess/gtk/DragAndDropHandler.cpp:
1860         (WebKit::DragAndDropHandler::dragLeave):
1861
1862 2015-10-28  Tim Horton  <timothy_horton@apple.com>
1863
1864         Fix the build
1865
1866         * UIProcess/mac/PageClientImpl.mm:
1867         (WebKit::PageClientImpl::startWindowDrag):
1868         (WebKit::PageClientImpl::platformWindow):
1869
1870 2015-10-28  Tim Horton  <timothy_horton@apple.com>
1871
1872         WKView being inside WKWebView leads to weird API issues
1873         https://bugs.webkit.org/show_bug.cgi?id=150174
1874
1875         Reviewed by Anders Carlsson.
1876
1877         * UIProcess/API/C/mac/WKPagePrivateMac.mm:
1878         (WKPageGetObjectRegistry):
1879         * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1880         (-[WKBrowsingContextController _remoteObjectRegistry]):
1881         * UIProcess/API/mac/WKView.mm:
1882         (-[WKView dealloc]):
1883         (-[WKView _inspectorAttachmentView]):
1884         (-[WKView _setInspectorAttachmentView:]):
1885         (-[WKView windowOcclusionDetectionEnabled]):
1886         (-[WKView setWindowOcclusionDetectionEnabled:]):
1887         (-[WKView _setTotalHeightOfBanners:]):
1888         (-[WKView _totalHeightOfBanners]):
1889         (-[WKView initWithFrame:processPool:configuration:webView:]): Deleted.
1890         (-[WKView _remoteObjectRegistry]): Deleted.
1891         (-[WKView _startWindowDrag]): Deleted.
1892         * UIProcess/API/mac/WKViewInternal.h:
1893         * UIProcess/Cocoa/WebViewImpl.h:
1894         (WebKit::WebViewImpl::setWindowOcclusionDetectionEnabled):
1895         (WebKit::WebViewImpl::windowOcclusionDetectionEnabled):
1896         (WebKit::WebViewImpl::setTotalHeightOfBanners):
1897         (WebKit::WebViewImpl::totalHeightOfBanners):
1898         * UIProcess/Cocoa/WebViewImpl.mm:
1899         (WebKit::WebViewImpl::window):
1900         (WebKit::WebViewImpl::setInspectorAttachmentView):
1901         (WebKit::WebViewImpl::inspectorAttachmentView):
1902         (WebKit::WebViewImpl::remoteObjectRegistry):
1903         (WebKit::WebViewImpl::destroyRemoteObjectRegistry):
1904         * UIProcess/PageClient.h:
1905         * UIProcess/WebPageProxy.h:
1906         * UIProcess/mac/PageClientImpl.h:
1907         * UIProcess/mac/PageClientImpl.mm:
1908         (WebKit::PageClientImpl::isViewVisible):
1909         (WebKit::PageClientImpl::createColorPicker):
1910         (WebKit::PageClientImpl::startWindowDrag):
1911         (WebKit::PageClientImpl::platformWindow):
1912         (WebKit::PageClientImpl::inspectorAttachmentView):
1913         (WebKit::PageClientImpl::remoteObjectRegistry):
1914         * UIProcess/mac/WebInspectorProxyMac.mm:
1915         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1916         (WebKit::WebInspectorProxy::platformCanAttach):
1917         (WebKit::WebInspectorProxy::platformBringToFront):
1918         (WebKit::WebInspectorProxy::inspectedViewFrameDidChange):
1919         (WebKit::WebInspectorProxy::platformInspectedWindowHeight):
1920         (WebKit::WebInspectorProxy::platformInspectedWindowWidth):
1921         (WebKit::WebInspectorProxy::platformAttach):
1922         (WebKit::WebInspectorProxy::platformDetach):
1923         (WebKit::WebInspectorProxy::platformStartWindowDrag):
1924         * UIProcess/mac/WebPageProxyMac.mm:
1925         (WebKit::WebPageProxy::startWindowDrag):
1926         (WebKit::WebPageProxy::platformWindow):
1927         (WebKit::WebPageProxy::inspectorAttachmentView):
1928         (WebKit::WebPageProxy::remoteObjectRegistry):
1929         (WebKit::WebPageProxy::wkView): Deleted.
1930         Get rid of the wkView() getters on PageClientImpl and WebPageProxy, because
1931         those can't be a thing in the brave new world. Instead, plumb the four
1932         callers through PageClient to WebViewImpl.
1933
1934         Also, move a few more things (banners, window occlusion).
1935
1936 2015-10-27  Anders Carlsson  <andersca@apple.com>
1937
1938         Stub out more of the context menu SPI
1939         https://bugs.webkit.org/show_bug.cgi?id=150606
1940
1941         Reviewed by Dan Bernstein.
1942
1943         Add a delegate method that will allow the client to modify the menu. Also,
1944         add an empty _WKContextMenuElementInfo class and its _WKElementInfo superclass.
1945
1946         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
1947         * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h: Added.
1948         * UIProcess/API/Cocoa/_WKContextMenuElementInfo.mm: Added.
1949         * UIProcess/API/Cocoa/_WKElementInfo.h: Added.
1950         * UIProcess/API/Cocoa/_WKElementInfo.mm: Added.
1951         * UIProcess/Cocoa/UIDelegate.h:
1952         * UIProcess/Cocoa/UIDelegate.mm:
1953         (WebKit::UIDelegate::setDelegate):
1954         (WebKit::UIDelegate::ContextMenuClient::menuFromProposedMenu):
1955         (WebKit::UIDelegate::UIClient::createNewPage):
1956         * UIProcess/mac/WebContextMenuProxyMac.mm:
1957         (WebKit::WebContextMenuProxyMac::showContextMenu):
1958         * WebKit2.xcodeproj/project.pbxproj:
1959
1960 2015-10-28  Anders Carlsson  <andersca@apple.com>
1961
1962         Stop using ContextMenuItem::shareMenuItem in the UI process
1963         https://bugs.webkit.org/show_bug.cgi?id=150578
1964
1965         Reviewed by Tim Horton.
1966
1967         * UIProcess/mac/WebContextMenuProxyMac.h:
1968         * UIProcess/mac/WebContextMenuProxyMac.mm:
1969         (WebKit::WebContextMenuProxyMac::createShareMenuItem):
1970         (WebKit::WebContextMenuProxyMac::createContextMenuItem):
1971         (WebKit::WebContextMenuProxyMac::shareMenuItem): Deleted.
1972
1973 2015-10-28  Tim Horton  <timothy_horton@apple.com>
1974
1975         WKView being inside WKWebView leads to weird API issues
1976         https://bugs.webkit.org/show_bug.cgi?id=150174
1977
1978         Reviewed by Anders Carlsson.
1979
1980         * UIProcess/API/mac/WKView.mm:
1981         (-[WKView _superDoCommandBySelector:]):
1982         (-[WKView _createDrawingAreaProxy]): Deleted.
1983         (-[WKView _processDidExit]): Deleted.
1984         (-[WKView _pageClosed]): Deleted.
1985         (-[WKView _didRelaunchProcess]): Deleted.
1986         (-[WKView _convertToDeviceSpace:]): Deleted.
1987         (-[WKView _convertToUserSpace:]): Deleted.
1988         (-[WKView _executeSavedCommandBySelector:]): Deleted.
1989         (-[WKResponderChainSink initWithResponderChain:]): Deleted.
1990         (-[WKResponderChainSink detach]): Deleted.
1991         (-[WKResponderChainSink didReceiveUnhandledCommand]): Deleted.
1992         (-[WKResponderChainSink noResponderFor:]): Deleted.
1993         (-[WKResponderChainSink doCommandBySelector:]): Deleted.
1994         (-[WKResponderChainSink tryToPerform:with:]): Deleted.
1995         * UIProcess/API/mac/WKViewInternal.h:
1996         * UIProcess/Cocoa/WebViewImpl.h:
1997         * UIProcess/Cocoa/WebViewImpl.mm:
1998         (-[WKResponderChainSink initWithResponderChain:]):
1999         (-[WKResponderChainSink detach]):
2000         (-[WKResponderChainSink didReceiveUnhandledCommand]):
2001         (-[WKResponderChainSink noResponderFor:]):
2002         (-[WKResponderChainSink doCommandBySelector:]):
2003         (-[WKResponderChainSink tryToPerform:with:]):
2004         (WebKit::WebViewImpl::createDrawingAreaProxy):
2005         (WebKit::WebViewImpl::processDidExit):
2006         (WebKit::WebViewImpl::pageClosed):
2007         (WebKit::WebViewImpl::didRelaunchProcess):
2008         (WebKit::WebViewImpl::executeSavedCommandBySelector):
2009         (WebKit::WebViewImpl::resetGestureController): Deleted.
2010         * UIProcess/mac/PageClientImpl.mm:
2011         (WebKit::PageClientImpl::createDrawingAreaProxy):
2012         (WebKit::PageClientImpl::processDidExit):
2013         (WebKit::PageClientImpl::pageClosed):
2014         (WebKit::PageClientImpl::didRelaunchProcess):
2015         (WebKit::PageClientImpl::convertToDeviceSpace):
2016         (WebKit::PageClientImpl::convertToUserSpace):
2017         (WebKit::PageClientImpl::executeSavedCommandBySelector):
2018         Move most of the rest of WKViewInternal.h's methods to WebViewImpl.
2019
2020 2015-10-28  Alex Christensen  <achristensen@webkit.org>
2021
2022         Compile and link with CMake on Mac
2023         https://bugs.webkit.org/show_bug.cgi?id=150632
2024
2025         Reviewed by Tim Horton.
2026
2027         * CMakeLists.txt:
2028         * PlatformEfl.cmake:
2029         * PlatformGTK.cmake:
2030         * PlatformMac.cmake:
2031
2032 2015-10-27  Anders Carlsson  <andersca@apple.com>
2033
2034         Stub out more of the context menu SPI
2035         https://bugs.webkit.org/show_bug.cgi?id=150606
2036
2037         Reviewed by Dan Bernstein.
2038
2039         Add a delegate method that will allow the client to modify the menu. Also,
2040         add an empty _WKContextMenuElementInfo class and its _WKElementInfo superclass.
2041
2042         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h:
2043         * UIProcess/API/Cocoa/_WKContextMenuElementInfo.h: Added.
2044         * UIProcess/API/Cocoa/_WKContextMenuElementInfo.mm: Added.
2045         * UIProcess/API/Cocoa/_WKElementInfo.h: Added.
2046         * UIProcess/API/Cocoa/_WKElementInfo.mm: Added.
2047         * UIProcess/Cocoa/UIDelegate.h:
2048         * UIProcess/Cocoa/UIDelegate.mm:
2049         (WebKit::UIDelegate::setDelegate):
2050         (WebKit::UIDelegate::ContextMenuClient::menuFromProposedMenu):
2051         (WebKit::UIDelegate::UIClient::createNewPage):
2052         * UIProcess/mac/WebContextMenuProxyMac.mm:
2053         (WebKit::WebContextMenuProxyMac::showContextMenu):
2054         * WebKit2.xcodeproj/project.pbxproj:
2055
2056 2015-10-28  Chris Dumez  <cdumez@apple.com>
2057
2058         Use RunLoopTimer in DataURLDecoder to avoid issues related to runloops
2059         https://bugs.webkit.org/show_bug.cgi?id=150609
2060         <rdar://problem/22702894>
2061
2062         Reviewed by Antti Koivisto.
2063
2064         Move addSchedulePair() call to Page::platformInitialize() so that
2065         RunLoopTimer can be used by any Page, even those that don't have
2066         a WebPage wrapper.
2067
2068         * WebProcess/WebPage/mac/WebPageMac.mm:
2069         (WebKit::WebPage::platformInitialize): Deleted.
2070
2071 2015-10-27  Tim Horton  <timothy_horton@apple.com>
2072
2073         Fix the 32-bit build.
2074
2075         * UIProcess/Cocoa/WebViewImpl.mm:
2076         (WebKit::WebViewImpl::dragImageForView):
2077
2078 2015-10-27  Tim Horton  <timothy_horton@apple.com>
2079
2080         Fix the build.
2081
2082         * UIProcess/Cocoa/WebViewImpl.mm:
2083
2084 2015-10-27  Tim Horton  <timothy_horton@apple.com>
2085
2086         WKView being inside WKWebView leads to weird API issues
2087         https://bugs.webkit.org/show_bug.cgi?id=150174
2088
2089         Reviewed by Anders Carlsson.
2090
2091         * UIProcess/API/mac/WKView.mm:
2092         (-[WKView mouseDown:]):
2093         (-[WKView mouseUp:]):
2094         (-[WKView acceptsFirstMouse:]):
2095         (-[WKView shouldDelayWindowOrderingForEvent:]):
2096         (-[WKView pasteboardChangedOwner:]):
2097         (-[WKView pasteboard:provideDataForType:]):
2098         (-[WKView namesOfPromisedFilesDroppedAtDestination:]):
2099         (-[WKView _startWindowDrag]):
2100         (-[WKView _setMouseDownEvent:]): Deleted.
2101         (-[WKView _colorSpace]): Deleted.
2102         (-[WKView _dragImageForView:withImage:at:linkDrag:]): Deleted.
2103         (matchesExtensionOrEquivalent): Deleted.
2104         (-[WKView _setFileAndURLTypes:withExtension:withTitle:withURL:withVisibleURL:forPasteboard:]): Deleted.
2105         (-[WKView _setPromisedDataForImage:withFileName:withExtension:withTitle:withURL:withVisibleURL:withArchive:forPasteboard:]): Deleted.
2106         (-[WKView _setPromisedDataForAttachment:withExtension:withTitle:withURL:withVisibleURL:forPasteboard:]): Deleted.
2107         (fileExists): Deleted.
2108         (pathWithUniqueFilenameForPath): Deleted.
2109         (-[WKView spellCheckerDocumentTag]): Deleted.
2110         (-[WKView handleAcceptedAlternativeText:]): Deleted.
2111         (-[WKView initWithFrame:processPool:configuration:webView:]): Deleted.
2112         * UIProcess/API/mac/WKViewInternal.h:
2113         * UIProcess/Cocoa/WebViewImpl.h:
2114         * UIProcess/Cocoa/WebViewImpl.mm:
2115         (WebKit::WebViewImpl::handleAcceptedAlternativeText):
2116         (WebKit::WebViewImpl::spellCheckerDocumentTag):
2117         (WebKit::WebViewImpl::startWindowDrag):
2118         (WebKit::WebViewImpl::dragImageForView):
2119         (WebKit::matchesExtensionOrEquivalent):
2120         (WebKit::WebViewImpl::setFileAndURLTypes):
2121         (WebKit::WebViewImpl::setPromisedDataForImage):
2122         (WebKit::WebViewImpl::setPromisedDataForAttachment):
2123         (WebKit::WebViewImpl::pasteboardChangedOwner):
2124         (WebKit::WebViewImpl::provideDataForPasteboard):
2125         (WebKit::fileExists):
2126         (WebKit::pathWithUniqueFilenameForPath):
2127         (WebKit::WebViewImpl::namesOfPromisedFilesDroppedAtDestination):
2128         (WebKit::WebViewImpl::setLastMouseDownEvent):
2129         * UIProcess/mac/CorrectionPanel.h:
2130         * UIProcess/mac/CorrectionPanel.mm:
2131         (WebKit::CorrectionPanel::show):
2132         (WebKit::CorrectionPanel::recordAutocorrectionResponse):
2133         (WebKit::CorrectionPanel::handleAcceptedReplacement):
2134         * UIProcess/mac/PageClientImpl.mm:
2135         (WebKit::PageClientImpl::colorSpace):
2136         (WebKit::PageClientImpl::setDragImage):
2137         (WebKit::PageClientImpl::setPromisedDataForImage):
2138         (WebKit::PageClientImpl::setPromisedDataForAttachment):
2139         (WebKit::PageClientImpl::showCorrectionPanel):
2140         (WebKit::PageClientImpl::recordAutocorrectionResponse):
2141         (WebKit::PageClientImpl::showDictationAlternativeUI):
2142         Move some pasteboard and spellcheck code.
2143
2144 2015-10-27  Wenson Hsieh  <wenson_hsieh@apple.com>
2145
2146         Implement viewport-width-based fast-click heuristic
2147         https://bugs.webkit.org/show_bug.cgi?id=150604
2148         <rdar://problem/23267308>
2149
2150         Reviewed by Simon Fraser.
2151
2152         Implement a new fast-click heuristic that applies to viewports with width = device-width. The basic rules are
2153         as follows: when a page has viewport width = device-width and is at initial zoom scale, we disable double-tapping
2154         in favor of fast-clicking. However, if the viewport scale is not the initial scale, we allow double tapping. For
2155         fast-clicking to remain useful after the user pinch-zooms, we change our double-tap to zoom out behavior to zoom
2156         to the initial scale rather than the minimum scale. For unscalable viewports, we default to fast-clicking behavior,
2157         and for all other viewports not at device-width, we double-tap to zoom and scroll as normal.
2158
2159         This patch removes some logic previously used for our scroll- and zoom-based fast-clicking heuristic, and adds
2160         information about the viewport width and initial scale to RemoteLayerTreeTransactions. This information is then
2161         used by the UI process to determine whether double tapping should be disabled or enabled.
2162
2163         The fast-click heuristic can be turned off through user default preferences, and a tap highlight for debugging
2164         fast-clicking can also be enabled through a user default preference. A red highlight indicates that a single-
2165         tap was slow, whereas a green highlight indicates a fast single-tap.
2166
2167         * Shared/mac/RemoteLayerTreeTransaction.h:
2168         (WebKit::RemoteLayerTreeTransaction::initialScaleFactor):
2169         (WebKit::RemoteLayerTreeTransaction::setInitialScaleFactor):
2170         (WebKit::RemoteLayerTreeTransaction::viewportMetaTagWidth):
2171         (WebKit::RemoteLayerTreeTransaction::setViewportMetaTagWidth):
2172         * Shared/mac/RemoteLayerTreeTransaction.mm:
2173         (WebKit::RemoteLayerTreeTransaction::encode):
2174         (WebKit::RemoteLayerTreeTransaction::decode):
2175         * UIProcess/API/Cocoa/WKWebView.mm:
2176         (-[WKWebView initWithFrame:configuration:]):
2177         (-[WKWebView _processDidExit]):
2178         (-[WKWebView _didCommitLayerTree:]):
2179         (-[WKWebView _zoomToInitialScaleWithOrigin:animated:]):
2180         (-[WKWebView _allowsDoubleTapGestures]):
2181         (-[WKWebView _setViewportMetaTagWidth:]): Deleted.
2182         (-[WKWebView _contentZoomScale]): Deleted.
2183         (-[WKWebView _viewportMetaTagWidth]): Deleted.
2184         (-[WKWebView _viewportIsUserScalable]): Deleted.
2185         * UIProcess/API/Cocoa/WKWebViewInternal.h:
2186         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
2187         * UIProcess/PageClient.h:
2188         * UIProcess/WebPageProxy.h:
2189         * UIProcess/WebPageProxy.messages.in:
2190         * UIProcess/ios/PageClientImplIOS.h:
2191         * UIProcess/ios/PageClientImplIOS.mm:
2192         (WebKit::PageClientImpl::disableDoubleTapGesturesDuringTapIfNecessary):
2193         (WebKit::PageClientImpl::didChangeViewportMetaTagWidth): Deleted.
2194         (WebKit::PageClientImpl::disableDoubleTapGesturesUntilTapIsFinishedIfNecessary): Deleted.
2195         * UIProcess/ios/SmartMagnificationController.h:
2196         * UIProcess/ios/SmartMagnificationController.mm:
2197         (WebKit::SmartMagnificationController::didCollectGeometryForSmartMagnificationGesture):
2198         * UIProcess/ios/WKContentView.h:
2199         * UIProcess/ios/WKContentView.mm:
2200         (-[WKContentView _zoomToInitialScaleWithOrigin:]):
2201         * UIProcess/ios/WKContentViewInteraction.h:
2202         * UIProcess/ios/WKContentViewInteraction.mm:
2203         (-[WKContentView setupInteraction]):
2204         (-[WKContentView _showTapHighlight]):
2205         (-[WKContentView _didGetTapHighlightForRequest:color:quads:topLeftRadius:topRightRadius:bottomLeftRadius:bottomRightRadius:]):
2206         (-[WKContentView _mayDisableDoubleTapGesturesDuringSingleTap]):
2207         (-[WKContentView _disableDoubleTapGesturesDuringTapIfNecessary:]):
2208         (-[WKContentView _finishInteraction]):
2209         (-[WKContentView _endPotentialTapAndEnableDoubleTapGesturesIfNecessary]):
2210         (-[WKContentView _tapHighlightColorForFastClick:]):
2211         (-[WKContentView _setDoubleTapGesturesEnabled:]):
2212         (-[WKContentView _fastClickZoomThreshold]): Deleted.
2213         (-[WKContentView _allowDoubleTapToZoomForCurrentZoomScale:andTargetZoomScale:]): Deleted.
2214         (-[WKContentView _disableDoubleTapGesturesUntilTapIsFinishedIfNecessary:allowsDoubleTapZoom:targetRect:isReplaced:minimumScale:maximumScale:]): Deleted.
2215         * UIProcess/ios/WebPageProxyIOS.mm:
2216         (WebKit::WebPageProxy::disableDoubleTapGesturesDuringTapIfNecessary):
2217         (WebKit::WebPageProxy::viewportMetaTagWidthDidChange): Deleted.
2218         (WebKit::WebPageProxy::disableDoubleTapGesturesUntilTapIsFinishedIfNecessary): Deleted.
2219         * WebProcess/WebPage/ViewGestureGeometryCollector.h:
2220         * WebProcess/WebPage/WebPage.cpp:
2221         (WebKit::WebPage::willCommitLayerTree):
2222         * WebProcess/WebPage/ios/WebPageIOS.mm:
2223         (WebKit::WebPage::potentialTapAtPosition):
2224         (WebKit::WebPage::viewportPropertiesDidChange): Deleted.
2225
2226 2015-10-27  Tim Horton  <timothy_horton@apple.com>
2227
2228         WKView being inside WKWebView leads to weird API issues
2229         https://bugs.webkit.org/show_bug.cgi?id=150174
2230
2231         Reviewed by Anders Carlsson.
2232
2233         * UIProcess/API/mac/WKView.mm:
2234         (-[WKView _superAccessibilityAttributeValue:]):
2235         (-[WKView accessibilityFocusedUIElement]):
2236         (-[WKView accessibilityIsIgnored]):
2237         (-[WKView accessibilityHitTest:]):
2238         (-[WKView accessibilityAttributeValue:]):
2239         (-[WKView _processDidExit]):
2240         (-[WKView _pageClosed]):
2241         (-[WKView _updateRemoteAccessibilityRegistration:]): Deleted.
2242         (-[WKView enableAccessibilityIfNecessary]): Deleted.
2243         (-[WKView _toolTipChangedFrom:to:]): Deleted.
2244         (-[WKView _setAccessibilityWebProcessToken:]): Deleted.
2245         (-[WKView _hasFullScreenWindowController]): Deleted.
2246         (-[WKView _fullScreenWindowController]): Deleted.
2247         (-[WKView _closeFullScreenWindowController]): Deleted.
2248         (-[WKView _setSuppressVisibilityUpdates:]): Deleted.
2249         (-[WKView _suppressVisibilityUpdates]): Deleted.
2250         (-[WKView _primaryTrackingArea]): Deleted.
2251         (-[WKView _setPrimaryTrackingArea:]): Deleted.
2252         (-[WKView initWithFrame:processPool:configuration:webView:]): Deleted.
2253         * UIProcess/API/mac/WKViewInternal.h:
2254         * UIProcess/Cocoa/WebViewImpl.h:
2255         (WebKit::WebViewImpl::accessibilityIsIgnored):
2256         (WebKit::WebViewImpl::primaryTrackingArea):
2257         * UIProcess/Cocoa/WebViewImpl.mm:
2258         (WebKit::trackingAreaOptions):
2259         (WebKit::WebViewImpl::WebViewImpl):
2260         (WebKit::WebViewImpl::setAccessibilityWebProcessToken):
2261         (WebKit::WebViewImpl::updateRemoteAccessibilityRegistration):
2262         (WebKit::WebViewImpl::accessibilityFocusedUIElement):
2263         (WebKit::WebViewImpl::accessibilityHitTest):
2264         (WebKit::WebViewImpl::enableAccessibilityIfNecessary):
2265         (WebKit::WebViewImpl::accessibilityAttributeValue):
2266         (WebKit::WebViewImpl::setPrimaryTrackingArea):
2267         (WebKit::WebViewImpl::toolTipChanged):
2268         * UIProcess/mac/PageClientImpl.mm:
2269         (WebKit::PageClientImpl::toolTipChanged):
2270         (WebKit::PageClientImpl::accessibilityWebProcessTokenReceived):
2271         (WebKit::PageClientImpl::recommendedScrollbarStyleDidChange):
2272         (WebKit::PageClientImpl::closeFullScreenManager):
2273         (WebKit::PageClientImpl::isFullScreen):
2274         (WebKit::PageClientImpl::enterFullScreen):
2275         (WebKit::PageClientImpl::exitFullScreen):
2276         (WebKit::PageClientImpl::beganEnterFullScreen):
2277         (WebKit::PageClientImpl::beganExitFullScreen):
2278         Move accessibility code, and fold in some internal-only methods.
2279
2280 2015-10-27  Tim Horton  <timothy_horton@apple.com>
2281
2282         WKView being inside WKWebView leads to weird API issues
2283         https://bugs.webkit.org/show_bug.cgi?id=150174
2284
2285         Reviewed by Anders Carlsson.
2286
2287         * UIProcess/API/mac/WKView.mm:
2288         (-[WKView scrollWheel:]):
2289         (-[WKView swipeWithEvent:]):
2290         (-[WKView _superSwipeWithEvent:]):
2291         (-[WKView _superMagnifyWithEvent:]):
2292         (-[WKView _superSmartMagnifyWithEvent:]):
2293         (-[WKView _processDidExit]):
2294         (-[WKView setAllowsBackForwardNavigationGestures:]):
2295         (-[WKView allowsBackForwardNavigationGestures]):
2296         (-[WKView setAllowsMagnification:]):
2297         (-[WKView allowsMagnification]):
2298         (-[WKView magnifyWithEvent:]):
2299         (-[WKView rotateWithEvent:]):
2300         (-[WKView _gestureEventWasNotHandledByWebCore:]):
2301         (-[WKView smartMagnifyWithEvent:]):
2302         (-[WKView setMagnification:centeredAtPoint:]):
2303         (-[WKView setMagnification:]):
2304         (-[WKView magnification]):
2305         (-[WKView _setCustomSwipeViews:]):
2306         (-[WKView _setCustomSwipeViewsTopContentInset:]):
2307         (-[WKView _tryToSwipeWithEvent:ignoringPinnedState:]):
2308         (-[WKView _setDidMoveSwipeSnapshotCallback:]):
2309         (-[WKView _ensureGestureController]): Deleted.
2310         (takeWindowSnapshot): Deleted.
2311         (-[WKView _takeViewSnapshot]): Deleted.
2312         (-[WKView _wheelEventWasNotHandledByWebCore:]): Deleted.
2313         (-[WKView _didFirstVisuallyNonEmptyLayoutForMainFrame]): Deleted.
2314         (-[WKView _didFinishLoadForMainFrame]): Deleted.
2315         (-[WKView _didFailLoadForMainFrame]): Deleted.
2316         (-[WKView _didSameDocumentNavigationForMainFrame:]): Deleted.
2317         (-[WKView _removeNavigationGestureSnapshot]): Deleted.
2318         * UIProcess/API/mac/WKViewInternal.h:
2319         * UIProcess/Cocoa/WebViewImpl.h:
2320         (WebKit::WebViewImpl::gestureController):
2321         (WebKit::WebViewImpl::allowsBackForwardNavigationGestures):
2322         (WebKit::WebViewImpl::allowsMagnification):
2323         * UIProcess/Cocoa/WebViewImpl.mm:
2324         (WebKit::takeWindowSnapshot):
2325         (WebKit::WebViewImpl::takeViewSnapshot):
2326         (WebKit::WebViewImpl::ensureGestureController):
2327         (WebKit::WebViewImpl::resetGestureController):
2328         (WebKit::WebViewImpl::setAllowsBackForwardNavigationGestures):
2329         (WebKit::WebViewImpl::setAllowsMagnification):
2330         (WebKit::WebViewImpl::setMagnification):
2331         (WebKit::WebViewImpl::magnification):
2332         (WebKit::WebViewImpl::setCustomSwipeViews):
2333         (WebKit::WebViewImpl::setCustomSwipeViewsTopContentInset):
2334         (WebKit::WebViewImpl::tryToSwipeWithEvent):
2335         (WebKit::WebViewImpl::setDidMoveSwipeSnapshotCallback):
2336         (WebKit::WebViewImpl::scrollWheel):
2337         (WebKit::WebViewImpl::swipeWithEvent):
2338         (WebKit::WebViewImpl::magnifyWithEvent):
2339         (WebKit::WebViewImpl::smartMagnifyWithEvent):
2340         (WebKit::WebViewImpl::rotateWithEvent):
2341         (WebKit::WebViewImpl::gestureEventWasNotHandledByWebCore):
2342         (WebKit::WebViewImpl::gestureEventWasNotHandledByWebCoreFromViewOnly):
2343         * UIProcess/mac/PageClientImpl.mm:
2344         (WebKit::PageClientImpl::takeViewSnapshot):
2345         (WebKit::PageClientImpl::wheelEventWasNotHandledByWebCore):
2346         (WebKit::PageClientImpl::didFirstVisuallyNonEmptyLayoutForMainFrame):
2347         (WebKit::PageClientImpl::didFinishLoadForMainFrame):
2348         (WebKit::PageClientImpl::didFailLoadForMainFrame):
2349         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
2350         (WebKit::PageClientImpl::removeNavigationGestureSnapshot):
2351         Move swipe, zoom, rotate, and snapshotting code.
2352
2353 2015-10-27  Zhuo Li  <zachli@apple.com>
2354
2355         Add WebKit API to clear data type Search Field Recent Searches.
2356         https://bugs.webkit.org/show_bug.cgi?id=150019.
2357
2358         Reviewed by Anders Carlsson.
2359
2360         * Shared/WebsiteData/WebsiteDataTypes.h: Add data type Search Field Recent Searches.
2361         * UIProcess/API/Cocoa/WKWebsiteDataRecord.mm:
2362         (dataTypesToString): Ditto.
2363         * UIProcess/API/Cocoa/WKWebsiteDataRecordInternal.h:
2364         (WebKit::toWebsiteDataTypes): Ditto.
2365         (WebKit::toWKWebsiteDataTypes): Ditto.
2366         * UIProcess/API/Cocoa/WKWebsiteDataRecordPrivate.h: Ditto.
2367         * UIProcess/WebsiteData/WebsiteDataStore.cpp:
2368         (WebKit::WebsiteDataStore::removeData): Handle the case when data type is Search
2369         Field Recent Searches.
2370         * UIProcess/WebsiteData/WebsiteDataStore.h: Add a private function for removing
2371         recent searches based on time.
2372         * UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
2373         (WebKit::WebsiteDataStoreCocoa::platformRemoveRecentSearches): Call the removing
2374         recent searches logic in WebCore.
2375         * UIProcess/efl/WebPageProxyEfl.cpp:
2376         (WebKit::WebsiteDataStore::platformRemoveRecentSearches): Not implemented.
2377         * UIProcess/gtk/WebPageProxyGtk.cpp:
2378         (WebKit::WebsiteDataStore::platformRemoveRecentSearches): Not implemented.
2379
2380 2015-10-26  Brady Eidson  <beidson@apple.com>
2381
2382         Make IDBKeyData from a struct to a class.
2383         https://bugs.webkit.org/show_bug.cgi?id=150576
2384
2385         Reviewed by Alex Christensen.
2386
2387         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
2388         * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
2389         * DatabaseProcess/IndexedDB/IDBSerialization.h:
2390         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2391         (WebKit::UniqueIDBDatabase::putRecordInBackingStore):
2392         * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
2393         * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
2394         * DatabaseProcess/IndexedDB/sqlite/SQLiteIDBCursor.cpp:
2395         (WebKit::buildIndexStatement):
2396         (WebKit::buildObjectStoreStatement):
2397         (WebKit::SQLiteIDBCursor::establishStatement):
2398         (WebKit::SQLiteIDBCursor::createSQLiteStatement):
2399         (WebKit::SQLiteIDBCursor::resetAndRebindStatement):
2400         (WebKit::SQLiteIDBCursor::iterate):
2401         * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2402         (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createIndex):
2403         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2404         (WebKit::WebIDBServerConnection::didPutRecord):
2405         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
2406         * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
2407
2408 2015-10-26  Philip Chimento  <philip.chimento@gmail.com>
2409
2410         [GTK] [Stable] InstallMissingMediaPluginsPermissionRequest not defined when building without GStreamer
2411         https://bugs.webkit.org/show_bug.cgi?id=148607
2412
2413         Unreviewed, build fix.
2414
2415         * UIProcess/gstreamer/InstallMissingMediaPluginsPermissionRequest.h:
2416         Add a stub for the InstallMissingMediaPluginsPermissionRequest class
2417         for the case when video is disabled or not using GStreamer. It's OK
2418         that this class does nothing, because the associated C API contains
2419         an assert_not_reached if video is disabled. We just need to define
2420         the symbol so that the function signature will compile.
2421
2422 2015-10-26  Anders Carlsson  <andersca@apple.com>
2423
2424         Pipe custom context menu handling through to the UIDelegate object
2425         https://bugs.webkit.org/show_bug.cgi?id=150572
2426
2427         Reviewed by Tim Horton.
2428
2429         * UIProcess/API/APIContextMenuClient.h:
2430         (API::ContextMenuClient::menuFromProposedMenu):
2431         * UIProcess/API/Cocoa/WKWebView.mm:
2432         (-[WKWebView setUIDelegate:]):
2433         * UIProcess/Cocoa/UIDelegate.h:
2434         * UIProcess/Cocoa/UIDelegate.mm:
2435         (WebKit::UIDelegate::createContextMenuClient):
2436         (WebKit::UIDelegate::ContextMenuClient::ContextMenuClient):
2437         (WebKit::UIDelegate::ContextMenuClient::~ContextMenuClient):
2438         (WebKit::UIDelegate::ContextMenuClient::menuFromProposedMenu):
2439         * UIProcess/mac/WebContextMenuProxyMac.mm:
2440         (WebKit::WebContextMenuProxyMac::showContextMenu):
2441
2442 2015-10-26  Tim Horton  <timothy_horton@apple.com>
2443
2444         WKView being inside WKWebView leads to weird API issues
2445         https://bugs.webkit.org/show_bug.cgi?id=150174
2446
2447         Reviewed by Anders Carlsson.
2448
2449         * UIProcess/API/mac/WKView.mm:
2450         (-[WKView mouseDown:]):
2451         (-[WKView mouseDragged:]):
2452         (-[WKView draggedImage:endedAt:operation:]):
2453         (-[WKView draggingEntered:]):
2454         (-[WKView draggingUpdated:]):
2455         (-[WKView draggingExited:]):
2456         (-[WKView prepareForDragOperation:]):
2457         (-[WKView performDragOperation:]):
2458         (-[WKView _hitTest:dragTypes:]):
2459         (-[WKView initWithFrame:processPool:configuration:webView:]):
2460         (-[WKView applicationFlags:]): Deleted.
2461         (maybeCreateSandboxExtensionFromPasteboard): Deleted.
2462         (createSandboxExtensionsForFileUpload): Deleted.
2463         (-[WKView _registerDraggedTypes]): Deleted.
2464         * UIProcess/Cocoa/WebViewImpl.h:
2465         (WebKit::WebViewImpl::ignoresMouseDraggedEvents):
2466         * UIProcess/Cocoa/WebViewImpl.mm:
2467         (WebKit::WebViewImpl::setIgnoresMouseDraggedEvents):
2468         (WebKit::WebViewImpl::draggedImage):
2469         (WebKit::applicationFlagsForDrag):
2470         (WebKit::WebViewImpl::draggingEntered):
2471         (WebKit::WebViewImpl::draggingUpdated):
2472         (WebKit::WebViewImpl::draggingExited):
2473         (WebKit::WebViewImpl::prepareForDragOperation):
2474         (WebKit::maybeCreateSandboxExtensionFromPasteboard):
2475         (WebKit::createSandboxExtensionsForFileUpload):
2476         (WebKit::WebViewImpl::performDragOperation):
2477         (WebKit::WebViewImpl::hitTestForDragTypes):
2478         (WebKit::WebViewImpl::registerDraggedTypes):
2479         Move some drag-related things to WebViewImpl.
2480
2481 2015-10-26  Anders Carlsson  <andersca@apple.com>
2482
2483         Pipe custom context menu handling through to the UIDelegate object
2484         https://bugs.webkit.org/show_bug.cgi?id=150572
2485
2486         Reviewed by Tim Horton.
2487
2488         * UIProcess/API/APIContextMenuClient.h:
2489         (API::ContextMenuClient::menuFromProposedMenu):
2490         * UIProcess/API/Cocoa/WKWebView.mm:
2491         (-[WKWebView setUIDelegate:]):
2492         * UIProcess/Cocoa/UIDelegate.h:
2493         * UIProcess/Cocoa/UIDelegate.mm:
2494         (WebKit::UIDelegate::createContextMenuClient):
2495         (WebKit::UIDelegate::ContextMenuClient::ContextMenuClient):
2496         (WebKit::UIDelegate::ContextMenuClient::~ContextMenuClient):
2497         (WebKit::UIDelegate::ContextMenuClient::menuFromProposedMenu):
2498         * UIProcess/mac/WebContextMenuProxyMac.mm:
2499         (WebKit::WebContextMenuProxyMac::showContextMenu):
2500
2501 2015-10-26  Alex Christensen  <achristensen@webkit.org>
2502
2503         Build fix when using NETWORK_SESSION after r191457.
2504
2505         * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
2506         (-[NetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
2507         Use resourceResponse.
2508
2509 2015-10-26  Anders Carlsson  <andersca@apple.com>
2510
2511         Remove more dead context menu code
2512         https://bugs.webkit.org/show_bug.cgi?id=150569
2513
2514         Reviewed by Tim Horton.
2515
2516         * UIProcess/API/APIContextMenuClient.h:
2517         (API::ContextMenuClient::contextMenuDismissed): Deleted.
2518         * UIProcess/API/C/WKPage.cpp:
2519         (WKPageSetPageContextMenuClient): Deleted.
2520
2521 2015-10-26  Anders Carlsson  <andersca@apple.com>
2522
2523         Remove dead context menu code
2524         https://bugs.webkit.org/show_bug.cgi?id=150567
2525
2526         Reviewed by Tim Horton.
2527
2528         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
2529         (WebKit::WebContextMenuClient::getCustomMenuFromDefaultItems): Deleted.
2530         * WebProcess/WebCoreSupport/WebContextMenuClient.h:
2531
2532 2015-10-26  Tim Horton  <timothy_horton@apple.com>
2533
2534         Don't expose the whitelist/blacklist in _WKUserStyleSheet
2535         https://bugs.webkit.org/show_bug.cgi?id=150566
2536
2537         Reviewed by Anders Carlsson.
2538
2539         * UIProcess/API/Cocoa/_WKUserStyleSheet.h:
2540         * UIProcess/API/Cocoa/_WKUserStyleSheet.mm:
2541         (-[_WKUserStyleSheet initWithSource:forMainFrameOnly:]):
2542         (toWTFStrings): Deleted.
2543         (-[_WKUserStyleSheet initWithSource:whitelistedURLPatterns:blacklistedURLPatterns:forMainFrameOnly:]): Deleted.
2544         (-[_WKUserStyleSheet whitelistedURLPatterns]): Deleted.
2545         (-[_WKUserStyleSheet blacklistedURLPatterns]): Deleted.
2546
2547 2015-10-25  Carlos Garcia Campos  <cgarcia@igalia.com>
2548
2549         Unreviewed. Fix GTK+ build after r191543.
2550
2551         * UIProcess/API/gtk/WebKitWebView.cpp:
2552         (webkit_web_view_run_javascript):
2553         (resourcesStreamReadCallback):
2554
2555 2015-10-24  Tim Horton  <timothy_horton@apple.com>
2556
2557         Add a way to add user style sheets to WKUserContentController
2558         https://bugs.webkit.org/show_bug.cgi?id=150531
2559         <rdar://problem/23191691>
2560
2561         Reviewed by Darin Adler.
2562
2563         * Shared/API/APIObject.h:
2564         * Shared/Cocoa/APIObject.mm:
2565         (API::Object::newObject):
2566         Boilerplate for a new API::UserStyleSheet.
2567
2568         * UIProcess/API/APIUserStyleSheet.cpp: Added.
2569         (API::generateIdentifier):
2570         (API::UserStyleSheet::generateUniqueURL):
2571         * UIProcess/API/APIUserStyleSheet.h: Added.
2572         Added API::UserStyleSheet, borrowing URL generation code from API::UserScript.
2573
2574         * UIProcess/API/Cocoa/WKUserContentController.mm:
2575         (-[WKUserContentController _addUserStyleSheet:]):
2576         (-[WKUserContentController _removeAllUserStyleSheets]):
2577         Forward add and remove-all to WebUserContentControllerProxy.
2578
2579         * UIProcess/API/Cocoa/WKUserContentControllerPrivate.h:
2580         * UIProcess/API/Cocoa/_WKUserStyleSheet.h: Added.
2581         * UIProcess/API/Cocoa/_WKUserStyleSheet.mm: Added.
2582         (toWTFStrings):
2583         (-[_WKUserStyleSheet initWithSource:whitelistedURLPatterns:blacklistedURLPatterns:forMainFrameOnly:]):
2584         (-[_WKUserStyleSheet source]):
2585         (-[_WKUserStyleSheet isForMainFrameOnly]):
2586         (-[_WKUserStyleSheet copyWithZone:]):
2587         (-[_WKUserStyleSheet _apiObject]):
2588         * UIProcess/API/Cocoa/_WKUserStyleSheetInternal.h: Added.
2589         (API::wrapper):
2590         * WebKit2.xcodeproj/project.pbxproj:
2591         Add the new modern API object (as SPI for now).
2592
2593 2015-10-24  Tim Horton  <timothy_horton@apple.com>
2594
2595         Expose more information about the exception in WKErrorJavaScriptExceptionOccurred errors
2596         https://bugs.webkit.org/show_bug.cgi?id=150525
2597
2598         Reviewed by Darin Adler.
2599
2600         * Scripts/webkit/messages.py:
2601         (headers_for_type):
2602         * Shared/WebCoreArgumentCoders.cpp:
2603         (IPC::ArgumentCoder<ExceptionDetails>::encode):
2604         (IPC::ArgumentCoder<ExceptionDetails>::decode):
2605         * Shared/WebCoreArgumentCoders.h:
2606         Learn how to en/decode ExceptionDetails.
2607
2608         * UIProcess/API/C/WKPage.cpp:
2609         (WKPageRunJavaScriptInMainFrame):
2610         * UIProcess/WebPageProxy.cpp:
2611         (WebKit::WebPageProxy::runJavaScriptInMainFrame):
2612         (WebKit::WebPageProxy::scriptValueCallback):
2613         * UIProcess/WebPageProxy.h:
2614         * UIProcess/WebPageProxy.messages.in:
2615         * WebProcess/WebPage/WebPage.cpp:
2616         (WebKit::WebPage::runJavaScriptInMainFrame):
2617         Plumb ExceptionDetails back through runJavaScriptInMainFrame, across the
2618         process boundary.
2619
2620         * UIProcess/API/Cocoa/WKError.mm:
2621         (localizedDescriptionForErrorCode):
2622         * UIProcess/API/Cocoa/WKErrorInternal.h:
2623         * UIProcess/API/Cocoa/WKErrorPrivate.h:
2624         Expose localizedDescriptionForErrorCode so that WKWebView can do special
2625         things with its error.
2626         Add new private userInfo keys for exception info.
2627
2628         * UIProcess/API/Cocoa/WKWebView.mm:
2629         (-[WKWebView evaluateJavaScript:completionHandler:]):
2630         Fill in the NSError userInfo with the exception info.
2631
2632 2015-10-24  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
2633
2634         [EFL] Fix a wrong enum variable use
2635         https://bugs.webkit.org/show_bug.cgi?id=150522
2636
2637         Reviewed by Csaba Osztrogonác.
2638
2639         * UIProcess/API/efl/EwkView.cpp:
2640         (EwkView::requestPopupMenu):
2641         Use kWKPopupItemTextDirectionLTR instead of EWK_TEXT_DIRECTION_LEFT_TO_RIGHT.
2642
2643 2015-10-24  Dan Bernstein  <mitz@apple.com>
2644
2645         [Cocoa] _WKFormInputSession should provide access to the focused element info
2646         https://bugs.webkit.org/show_bug.cgi?id=150512
2647
2648         Reviewed by Tim Horton.
2649
2650         * UIProcess/API/Cocoa/_WKFormInputSession.h: Added focusedElementInfo property to the
2651           protocol.
2652
2653         * UIProcess/ios/WKContentViewInteraction.mm:
2654         (-[WKFormInputSession initWithContentView:focusedElementInfo:userObject:]): Added the
2655           focusedElementInfo argument, used to initialize a new ivar.
2656         (-[WKFormInputSession focusedElementInfo]): Added this getter for the new
2657           _WKFormInputSession property.
2658         (-[WKContentView _startAssistingNode:userIsInteracting:blurPreviousNode:userObject:]):
2659           Create the WKFocusedElementInfo unconditionally and pass it to the new WKFormInputSession
2660           initializer.
2661
2662 2015-10-24  Dan Bernstein  <mitz@apple.com>
2663
2664         [iOS] Allow clients to specify a custom input view to be used for a form input session
2665         https://bugs.webkit.org/show_bug.cgi?id=150395
2666
2667         Reviewed by Tim Horton.
2668
2669         * UIProcess/API/Cocoa/_WKFormInputSession.h: Added customInputView property to the protocol.
2670
2671         * UIProcess/ios/WKContentViewInteraction.mm:
2672         (-[WKFormInputSession customInputView]): Added this getter.
2673         (-[WKFormInputSession setCustomInputView:]): Added this setter, which reloads the input
2674           views when the custom input view changes.
2675         (-[WKContentView inputView]): Changed to return the custom view from the input session if
2676           there is one.
2677
2678 2015-10-23  Alex Christensen  <achristensen@webkit.org>
2679
2680         Fix CMake compile error and add correct null check
2681         https://bugs.webkit.org/show_bug.cgi?id=150520
2682
2683         Reviewed by Simon Fraser.
2684
2685         * UIProcess/API/Cocoa/WKWebView.mm:
2686         (-[WKWebView _doAfterNextPresentationUpdate:]):
2687
2688 2015-10-23  Alex Christensen  <achristensen@webkit.org>
2689
2690         Progress towards CMake on Mac
2691         https://bugs.webkit.org/show_bug.cgi?id=150517
2692
2693         Reviewed by Tim Horton.
2694
2695         * CMakeLists.txt:
2696         * PlatformEfl.cmake:
2697         * PlatformGTK.cmake:
2698         * PlatformMac.cmake:
2699         * WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp: Removed.
2700         * WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Removed.
2701
2702 2015-10-23  Tim Horton  <timothy_horton@apple.com>
2703
2704         WKView being inside WKWebView leads to weird API issues
2705         https://bugs.webkit.org/show_bug.cgi?id=150174
2706
2707         * UIProcess/Cocoa/WebViewImpl.h:
2708         Whoops.
2709
2710 2015-10-23  Tim Horton  <timothy_horton@apple.com>
2711
2712         WKView being inside WKWebView leads to weird API issues
2713         https://bugs.webkit.org/show_bug.cgi?id=150174
2714
2715         Reviewed by Anders Carlsson.
2716
2717         * UIProcess/API/mac/WKView.mm:
2718         (-[WKView hitTest:]):
2719         (-[WKView _processDidExit]):
2720         (-[WKView _setThumbnailView:]):
2721         (-[WKView _thumbnailView]):
2722         (-[WKFlippedView isFlipped]): Deleted.
2723         (-[WKView dealloc]): Deleted.
2724         (-[WKView _setAcceleratedCompositingModeRootLayer:]): Deleted.
2725         (-[WKView _acceleratedCompositingModeRootLayer]): Deleted.
2726         (-[WKView _updateThumbnailViewLayer]): Deleted.
2727         (-[WKView _reparentLayerTreeInThumbnailView]): Deleted.
2728         * UIProcess/API/mac/WKViewInternal.h:
2729         * UIProcess/Cocoa/WebViewImpl.h:
2730         (WebKit::WebViewImpl::acceleratedCompositingRootLayer):
2731         (WebKit::WebViewImpl::layerHostingView):
2732         (WebKit::WebViewImpl::thumbnailView):
2733         * UIProcess/Cocoa/WebViewImpl.mm:
2734         (-[WKFlippedView isFlipped]):
2735         (WebKit::WebViewImpl::~WebViewImpl):
2736         (WebKit::WebViewImpl::setAcceleratedCompositingRootLayer):
2737         (WebKit::WebViewImpl::setThumbnailView):
2738         (WebKit::WebViewImpl::reparentLayerTreeInThumbnailView):
2739         (WebKit::WebViewImpl::updateThumbnailViewLayer):
2740         * UIProcess/mac/PageClientImpl.mm:
2741         (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
2742         (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
2743         (WebKit::PageClientImpl::updateAcceleratedCompositingMode):
2744         (WebKit::PageClientImpl::setAcceleratedCompositingRootLayer):
2745         (WebKit::PageClientImpl::acceleratedCompositingRootLayer):
2746         Move accelerated compositing and thumbnail view code.
2747
2748 2015-10-23  Tim Horton  <timothy_horton@apple.com>
2749
2750         WKView being inside WKWebView leads to weird API issues
2751         https://bugs.webkit.org/show_bug.cgi?id=150174
2752
2753         Reviewed by Anders Carlsson.
2754
2755         * UIProcess/API/mac/WKView.mm:
2756         (-[WKView _superRemoveTrackingRect:]):
2757         (-[WKView addTrackingRect:owner:userData:assumeInside:]):
2758         (-[WKView _addTrackingRect:owner:userData:assumeInside:useTrackingNum:]):
2759         (-[WKView _addTrackingRects:owner:userDataList:assumeInsideList:trackingNums:count:]):
2760         (-[WKView removeTrackingRect:]):
2761         (-[WKView _removeTrackingRects:count:]):
2762         (-[WKView view:stringForToolTip:point:userData:]):
2763         (-[WKView _toolTipChangedFrom:to:]):
2764         (-[WKView _setAcceleratedCompositingModeRootLayer:]): Deleted.
2765         (-[WKView _acceleratedCompositingModeRootLayer]): Deleted.
2766         (takeWindowSnapshot): Deleted.
2767         * UIProcess/Cocoa/WebViewImpl.h:
2768         * UIProcess/Cocoa/WebViewImpl.mm:
2769         (WebKit::WebViewImpl::addTrackingRect):
2770         (WebKit::WebViewImpl::addTrackingRectWithTrackingNum):
2771         (WebKit::WebViewImpl::addTrackingRectsWithTrackingNums):
2772         (WebKit::WebViewImpl::removeTrackingRect):
2773         (WebKit::WebViewImpl::removeTrackingRects):
2774         (WebKit::WebViewImpl::sendToolTipMouseExited):
2775         (WebKit::WebViewImpl::sendToolTipMouseEntered):
2776         (WebKit::WebViewImpl::stringForToolTip):
2777         (WebKit::WebViewImpl::toolTipChanged):
2778         Move tooltip code.
2779
2780 2015-10-23  Tim Horton  <timothy_horton@apple.com>
2781
2782         WKView being inside WKWebView leads to weird API issues
2783         https://bugs.webkit.org/show_bug.cgi?id=150174
2784
2785         Reviewed by Anders Carlsson.
2786
2787         * UIProcess/API/mac/WKView.mm:
2788         (-[WKView _interpretKeyEvent:completionHandler:]):
2789         (-[WKView inputContext]):
2790         (-[WKView performKeyEquivalent:]):
2791         (-[WKView keyDown:]):
2792         (-[WKView _doneWithKeyEvent:eventWasHandled:]):
2793         (-[WKView _setPluginComplexTextInputState:]): Deleted.
2794         (-[WKView _disableComplexTextInputIfNecessary]): Deleted.
2795         (-[WKView _handlePluginComplexTextInputKeyDown:]): Deleted.
2796         (-[WKView _tryHandlePluginComplexTextInputKeyDown:]): Deleted.
2797         (-[WKView _tryPostProcessPluginComplexTextInputKeyDown:]): Deleted.
2798         (-[WKView _pluginFocusOrWindowFocusChanged:pluginComplexTextInputIdentifier:]): Deleted.
2799         (-[WKView _setPluginComplexTextInputState:pluginComplexTextInputIdentifier:]): Deleted.
2800         * UIProcess/API/mac/WKViewInternal.h:
2801         * UIProcess/Cocoa/WebViewImpl.h:
2802         (WebKit::WebViewImpl::pluginComplexTextInputState):
2803         (WebKit::WebViewImpl::pluginComplexTextInputIdentifier):
2804         * UIProcess/Cocoa/WebViewImpl.mm:
2805         (WebKit::WebViewImpl::setPluginComplexTextInputState):
2806         (WebKit::WebViewImpl::setPluginComplexTextInputStateAndIdentifier):
2807         (WebKit::WebViewImpl::disableComplexTextInputIfNecessary):
2808         (WebKit::WebViewImpl::handlePluginComplexTextInputKeyDown):
2809         (WebKit::WebViewImpl::tryHandlePluginComplexTextInputKeyDown):
2810         (WebKit::WebViewImpl::pluginFocusOrWindowFocusChanged):
2811         (WebKit::WebViewImpl::tryPostProcessPluginComplexTextInputKeyDown):
2812         * UIProcess/mac/PageClientImpl.mm:
2813         (WebKit::PageClientImpl::pluginFocusOrWindowFocusChanged):
2814         (WebKit::PageClientImpl::setPluginComplexTextInputState):
2815         Move a few more methods.
2816
2817 2015-10-23  Eric Carlson  <eric.carlson@apple.com>
2818
2819         [MediaStream] Fix UserMediaPermissionRequestProxy::invalidate
2820         https://bugs.webkit.org/show_bug.cgi?id=150503
2821         <rdar://problem/23235386>
2822
2823         Reviewed by Dean Jackson.
2824
2825         * UIProcess/UserMediaPermissionRequestProxy.cpp:
2826         (WebKit::UserMediaPermissionRequestProxy::UserMediaPermissionRequestProxy): m_manager is a pointer.
2827         (WebKit::UserMediaPermissionRequestProxy::allow): Return early if m_manager is null, clear it after
2828           calling the manager.
2829         (WebKit::UserMediaPermissionRequestProxy::deny): Ditto.
2830         (WebKit::UserMediaPermissionRequestProxy::invalidate): Clear m_manager.
2831         * UIProcess/UserMediaPermissionRequestProxy.h: Change m_manager from a reference to a
2832           pointer so it can be cleared.
2833
2834 2015-10-23  Claudio Saavedra  <csaavedra@igalia.com>
2835
2836         [GTK] Minor web editor fixes
2837         https://bugs.webkit.org/show_bug.cgi?id=150501
2838
2839         Reviewed by Carlos Garcia Campos.
2840
2841         * UIProcess/gtk/KeyBindingTranslator.cpp: Remove
2842         "MoveParagraphForward/Backward" as these commands do not exist in
2843         WebKit (anymore?).
2844         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
2845         (WebKit::WebEditorClient::executePendingEditorCommands):
2846         Editor::Command can take a String, no need to convert to a C char.
2847
2848 2015-10-23  Timothy Horton  <timothy_horton@apple.com>
2849
2850         Fix the build by unapplying review comments.
2851
2852         * UIProcess/Cocoa/WebViewImpl.h:
2853
2854 2015-10-23  Tim Horton  <timothy_horton@apple.com>
2855
2856         WKView being inside WKWebView leads to weird API issues
2857         https://bugs.webkit.org/show_bug.cgi?id=150174
2858
2859         Reviewed by Anders Carlsson.
2860
2861         * UIProcess/API/mac/WKView.mm:
2862         (-[WKView renewGState]):
2863         (-[WKView writeSelectionToPasteboard:types:]):
2864         (-[WKView centerSelectionInVisibleArea:]):
2865         (-[WKView scrollWheel:]):
2866         (-[WKView swipeWithEvent:]):
2867         (-[WKView mouseMoved:]):
2868         (-[WKView mouseDown:]):
2869         (-[WKView mouseUp:]):
2870         (-[WKView mouseDragged:]):
2871         (-[WKView pressureChangeWithEvent:]):
2872         (-[WKView acceptsFirstMouse:]):
2873         (-[WKView shouldDelayWindowOrderingForEvent:]):
2874         (-[WKView performKeyEquivalent:]):
2875         (-[WKView keyUp:]):
2876         (-[WKView keyDown:]):
2877         (-[WKView flagsChanged:]):
2878         (-[WKView _superQuickLookWithEvent:]):
2879         (-[WKView _addFontPanelObserver]):
2880         (-[WKView viewWillMoveToWindow:]):
2881         (-[WKView viewDidMoveToWindow]):
2882         (-[WKView viewDidChangeBackingProperties]):
2883         (-[WKView enableAccessibilityIfNecessary]):
2884         (-[WKView quickLookWithEvent:]):
2885         (-[WKView _colorSpace]):
2886         (-[WKView _didRelaunchProcess]):
2887         (-[WKView _setTextIndicator:]):
2888         (-[WKView _setTextIndicator:withLifetime:]):
2889         (-[WKView _clearTextIndicatorWithAnimation:]):
2890         (-[WKView _setTextIndicatorAnimationProgress:]):
2891         (-[WKView initWithFrame:processPool:configuration:webView:]):
2892         (-[WKView _didPerformImmediateActionHitTest:contentPreventsDefault:userData:]):
2893         (-[WKView _internalImmediateActionAnimationControllerForHitTestResult:withType:userData:]):
2894         (-[WKView _internalPrepareForImmediateActionAnimation]):
2895         (-[WKView _internalCancelImmediateActionAnimation]):
2896         (-[WKView _internalCompleteImmediateActionAnimation]):
2897         (-[WKView _internalDismissContentRelativeChildWindowsWithAnimation:]):
2898         (-[WKView beginDeferringViewInWindowChanges]):
2899         (-[WKView endDeferringViewInWindowChanges]):
2900         (-[WKView endDeferringViewInWindowChangesSync]):
2901         (-[WKView _prepareForMoveToWindow:withCompletionHandler:]):
2902         (-[WKView isDeferringViewInWindowChanges]):
2903         (-[WKView allowsLinkPreview]):
2904         (-[WKView setAllowsLinkPreview:]):
2905         (-[WKView _setIgnoresAllEvents:]):
2906         (-[WKView _setIgnoresNonWheelMouseEvents:]):
2907         (-[WKView _setIgnoresNonWheelEvents:]):
2908         (-[WKView _ignoresNonWheelEvents]):
2909         (-[WKView _ignoresAllEvents]):
2910         (-[WKView _setOverrideDeviceScaleFactor:]):
2911         (-[WKView _overrideDeviceScaleFactor]):
2912         (-[WKView _setTopContentInset:]):
2913         (-[WKView _topContentInset]):
2914         (-[WKView _dismissContentRelativeChildWindows]):
2915         (-[WKView _dismissContentRelativeChildWindowsWithAnimation:]):
2916         (-[WKView _setAutomaticallyAdjustsContentInsets:]):
2917         (-[WKView _automaticallyAdjustsContentInsets]):
2918         (-[WKWindowVisibilityObserver initWithView:]): Deleted.
2919         (-[WKWindowVisibilityObserver startObserving:]): Deleted.
2920         (-[WKWindowVisibilityObserver stopObserving:]): Deleted.
2921         (-[WKWindowVisibilityObserver _windowDidOrderOnScreen:]): Deleted.
2922         (-[WKWindowVisibilityObserver _windowDidOrderOffScreen:]): Deleted.
2923         (-[WKView dealloc]): Deleted.
2924         (-[WKView _updateWindowAndViewFrames]): Deleted.
2925         (-[WKView updateFontPanelIfNeeded]): Deleted.
2926         (-[WKView _selectionChanged]): Deleted.
2927         (-[WKView addWindowObserversForWindow:]): Deleted.
2928         (-[WKView removeWindowObservers]): Deleted.
2929         (-[WKView doWindowDidChangeScreen]): Deleted.
2930         (-[WKView _windowDidBecomeKey:]): Deleted.
2931         (-[WKView _windowDidChangeScreen:]): Deleted.
2932         (-[WKView _windowDidChangeLayerHosting:]): Deleted.
2933         (-[WKView _windowDidResignKey:]): Deleted.
2934         (-[WKView _windowDidMiniaturize:]): Deleted.
2935         (-[WKView _windowDidDeminiaturize:]): Deleted.
2936         (-[WKView _windowDidMove:]): Deleted.
2937         (-[WKView _windowDidResize:]): Deleted.
2938         (-[WKView _windowDidOrderOffScreen:]): Deleted.
2939         (-[WKView _windowDidOrderOnScreen:]): Deleted.
2940         (-[WKView _windowDidChangeBackingProperties:]): Deleted.
2941         (-[WKView _windowDidChangeOcclusionState:]): Deleted.
2942         (-[WKView _prepareForDictionaryLookup]): Deleted.
2943         (-[WKView _dictionaryLookupPopoverWillClose:]): Deleted.
2944         (-[WKView _accessibilityRegisterUIProcessTokens]): Deleted.
2945         (-[WKView _postFakeMouseMovedEventForFlagsChangedEvent:]): Deleted.
2946         (-[WKView _intrinsicDeviceScaleFactor]): Deleted.
2947         (-[WKView _preferencesDidChange]): Deleted.
2948         (-[WKView _targetWindowForMovePreparation]): Deleted.
2949         (-[WKView _updateContentInsetsIfAutomatic]): Deleted.
2950         (-[WKView observeValueForKeyPath:ofObject:change:context:]): Deleted.
2951         (-[WKView _dispatchSetTopContentInset]): Deleted.
2952         * UIProcess/API/mac/WKViewInternal.h:
2953         * UIProcess/Cocoa/WebViewImpl.h:
2954         (WebKit::WebViewImpl::automaticallyAdjustsContentInsets):
2955         (WebKit::WebViewImpl::topContentInset):
2956         (WebKit::WebViewImpl::overrideDeviceScaleFactor):
2957         (WebKit::WebViewImpl::isDeferringViewInWindowChanges):
2958         (WebKit::WebViewImpl::targetWindowForMovePreparation):
2959         (WebKit::WebViewImpl::lastPressureEvent):
2960         (WebKit::WebViewImpl::allowsLinkPreview):
2961         (WebKit::WebViewImpl::ignoresNonWheelEvents):
2962         (WebKit::WebViewImpl::ignoresAllEvents):
2963         (WebKit::WebViewImpl::createWeakPtr):
2964         * UIProcess/Cocoa/WebViewImpl.mm:
2965         (SOFT_LINK_CONSTANT_MAY_FAIL):
2966         (-[WKWindowVisibilityObserver initWithView:impl:]):
2967         (-[WKWindowVisibilityObserver dealloc]):
2968         (-[WKWindowVisibilityObserver startObserving:]):
2969         (-[WKWindowVisibilityObserver stopObserving:]):
2970         (-[WKWindowVisibilityObserver startObservingFontPanel]):
2971         (-[WKWindowVisibilityObserver startObservingLookupDismissal]):
2972         (-[WKWindowVisibilityObserver _windowDidOrderOnScreen:]):
2973         (-[WKWindowVisibilityObserver _windowDidOrderOffScreen:]):
2974         (-[WKWindowVisibilityObserver _windowDidBecomeKey:]):
2975         (-[WKWindowVisibilityObserver _windowDidResignKey:]):
2976         (-[WKWindowVisibilityObserver _windowDidMiniaturize:]):
2977         (-[WKWindowVisibilityObserver _windowDidDeminiaturize:]):
2978         (-[WKWindowVisibilityObserver _windowDidMove:]):
2979         (-[WKWindowVisibilityObserver _windowDidResize:]):
2980         (-[WKWindowVisibilityObserver _windowDidChangeBackingProperties:]):
2981         (-[WKWindowVisibilityObserver _windowDidChangeScreen:]):
2982         (-[WKWindowVisibilityObserver _windowDidChangeLayerHosting:]):
2983         (-[WKWindowVisibilityObserver _windowDidChangeOcclusionState:]):
2984         (-[WKWindowVisibilityObserver observeValueForKeyPath:ofObject:change:context:]):
2985         (-[WKWindowVisibilityObserver _dictionaryLookupPopoverWillClose:]):
2986         (-[WKEditCommandObjC initWithWebEditCommandProxy:]):
2987         (-[WKEditCommandObjC command]):
2988         (-[WKEditorUndoTargetObjC undoEditing:]):
2989         (-[WKEditorUndoTargetObjC redoEditing:]):
2990         (WebKit::WebViewImpl::WebViewImpl):
2991         (WebKit::WebViewImpl::~WebViewImpl):
2992         (WebKit::WebViewImpl::becomeFirstResponder):
2993         (WebKit::WebViewImpl::resignFirstResponder):
2994         (WebKit::WebViewImpl::renewGState):
2995         (WebKit::WebViewImpl::updateWindowAndViewFrames):
2996         (WebKit::WebViewImpl::setAutomaticallyAdjustsContentInsets):
2997         (WebKit::WebViewImpl::updateContentInsetsIfAutomatic):
2998         (WebKit::WebViewImpl::setTopContentInset):
2999         (WebKit::WebViewImpl::dispatchSetTopContentInset):
3000         (WebKit::WebViewImpl::setOverrideDeviceScaleFactor):
3001         (WebKit::WebViewImpl::intrinsicDeviceScaleFactor):
3002         (WebKit::WebViewImpl::windowDidOrderOffScreen):
3003         (WebKit::WebViewImpl::windowDidOrderOnScreen):
3004         (WebKit::WebViewImpl::windowDidBecomeKey):
3005         (WebKit::WebViewImpl::windowDidResignKey):
3006         (WebKit::WebViewImpl::windowDidMiniaturize):
3007         (WebKit::WebViewImpl::windowDidDeminiaturize):
3008         (WebKit::WebViewImpl::windowDidMove):
3009         (WebKit::WebViewImpl::windowDidResize):
3010         (WebKit::WebViewImpl::windowDidChangeBackingProperties):
3011         (WebKit::WebViewImpl::windowDidChangeScreen):
3012         (WebKit::WebViewImpl::windowDidChangeLayerHosting):
3013         (WebKit::WebViewImpl::windowDidChangeOcclusionState):
3014         (WebKit::WebViewImpl::viewWillMoveToWindow):
3015         (WebKit::WebViewImpl::viewDidMoveToWindow):
3016         (WebKit::WebViewImpl::viewDidChangeBackingProperties):
3017         (WebKit::WebViewImpl::postFakeMouseMovedEventForFlagsChangedEvent):
3018         (WebKit::WebViewImpl::colorSpace):
3019         (WebKit::WebViewImpl::beginDeferringViewInWindowChanges):
3020         (WebKit::WebViewImpl::endDeferringViewInWindowChanges):
3021         (WebKit::WebViewImpl::endDeferringViewInWindowChangesSync):
3022         (WebKit::WebViewImpl::prepareForMoveToWindow):
3023         (WebKit::WebViewImpl::pressureChangeWithEvent):
3024         (WebKit::WebViewImpl::isEditable):
3025         (WebKit::WebViewImpl::executeEditCommand):
3026         (WebKit::WebViewImpl::registerEditCommand):
3027         (WebKit::WebViewImpl::clearAllEditCommands):
3028         (WebKit::WebViewImpl::writeSelectionToPasteboard):
3029         (WebKit::WebViewImpl::centerSelectionInVisibleArea):
3030         (WebKit::WebViewImpl::selectionDidChange):
3031         (WebKit::WebViewImpl::startObservingFontPanel):
3032         (WebKit::WebViewImpl::updateFontPanelIfNeeded):
3033         (WebKit::WebViewImpl::preferencesDidChange):
3034         (WebKit::WebViewImpl::setTextIndicator):
3035         (WebKit::WebViewImpl::clearTextIndicatorWithAnimation):
3036         (WebKit::WebViewImpl::setTextIndicatorAnimationProgress):
3037         (WebKit::WebViewImpl::dismissContentRelativeChildWindows):
3038         (WebKit::WebViewImpl::quickLookWithEvent):
3039         (WebKit::WebViewImpl::prepareForDictionaryLookup):
3040         (WebKit::WebViewImpl::setAllowsLinkPreview):
3041         (WebKit::WebViewImpl::immediateActionAnimationControllerForHitTestResult):
3042         (WebKit::WebViewImpl::prepareForImmediateActionAnimation):
3043         (WebKit::WebViewImpl::cancelImmediateActionAnimation):
3044         (WebKit::WebViewImpl::completeImmediateActionAnimation):
3045         (WebKit::WebViewImpl::setIgnoresNonWheelEvents):
3046         (WebKit::WebViewImpl::setIgnoresAllEvents):
3047         (WebKit::WebViewImpl::accessibilityRegisterUIProcessTokens):
3048         * UIProcess/mac/PageClientImpl.h:
3049         * UIProcess/mac/PageClientImpl.mm:
3050         (WebKit::PageClientImpl::activeWindow):
3051         (WebKit::PageClientImpl::preferencesDidChange):
3052         (WebKit::PageClientImpl::registerEditCommand):
3053         (WebKit::PageClientImpl::clearAllEditCommands):
3054         (WebKit::PageClientImpl::selectionDidChange):
3055         (WebKit::PageClientImpl::didPerformDictionaryLookup):
3056         (-[WKEditCommandObjC initWithWebEditCommandProxy:]): Deleted.
3057         (-[WKEditCommandObjC command]): Deleted.
3058         (-[WKEditorUndoTargetObjC undoEditing:]): Deleted.
3059         (-[WKEditorUndoTargetObjC redoEditing:]): Deleted.
3060         (WebKit::PageClientImpl::PageClientImpl): Deleted.
3061         Move more things to WebViewImpl.
3062         This also introduces an unfortunate pattern that is required for things which
3063         clients override on WKView, where we have a flow like this:
3064                 - somebody (PageClient, etc.) calls WebViewImpl::x
3065                 - WebViewImpl::x does nothing except call [WKView _x]
3066                 - [WKView _x] calls WebViewImpl::xFromViewOnly, which does the real work
3067         As long as no clients call the -FromViewOnly variant, this will mean that
3068         all callers are bottlenecked through the overridable WKView method.
3069         How this works with WKWebView, I am not sure yet.
3070
3071         * UIProcess/mac/WKImmediateActionController.h:
3072         * UIProcess/mac/WKImmediateActionController.mm:
3073         (-[WKImmediateActionController initWithPage:view:viewImpl:recognizer:]):
3074         (-[WKImmediateActionController willDestroyView:]):
3075         (-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
3076         (-[WKImmediateActionController immediateActionRecognizerDidCancelAnimation:]):
3077         (-[WKImmediateActionController immediateActionRecognizerDidCompleteAnimation:]):
3078         (-[WKImmediateActionController menuItem:viewAtScreenPoint:]):
3079         (-[WKImmediateActionController menuItem:previewItemAtPoint:]):
3080         (-[WKImmediateActionController menuItem:itemFrameForPoint:]):
3081         (-[WKImmediateActionController menuItem:maxSizeForPoint:]):
3082         (-[WKImmediateActionController _animationControllerForDataDetectedText]):
3083         (-[WKImmediateActionController _animationControllerForDataDetectedLink]):
3084         (-[WKImmediateActionController _animationControllerForText]):
3085         (-[WKImmediateActionController initWithPage:view:recognizer:]): Deleted.
3086         Keep a generic NSView, use the WebViewImpl for WK*View related things.
3087
3088 2015-10-22  Joonghun Park  <jh718.park@samsung.com>
3089
3090         [GTK] Fix build break since r191471
3091         https://bugs.webkit.org/show_bug.cgi?id=150487
3092
3093         Reviewed by Žan Doberšek.
3094
3095         * UIProcess/API/gtk/WebKitContextMenuClient.cpp:
3096         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
3097         (WebKit::WebContextMenuProxyGtk::populate):
3098
3099 2015-10-22  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
3100
3101         [EFL] Build break since r191472 and r191473
3102         https://bugs.webkit.org/show_bug.cgi?id=150485
3103
3104         Unreviewed build fix.
3105
3106         * CMakeLists.txt: Remove icu include path and move page include path.
3107
3108 2015-10-22  Sam Weinig  <sam@webkit.org>
3109
3110         Navigations on the same host (but with different schemes and ports) should not trigger universal links
3111         <rdar://problem/22811325>
3112         https://bugs.webkit.org/show_bug.cgi?id=150481
3113
3114         Reviewed by Dan Bernstein.
3115
3116         Update the policy for following universal links to only take host into consideration.
3117
3118         * UIProcess/API/C/WKPage.cpp:
3119         (WKPageSetPageUIClient):
3120         * UIProcess/Cocoa/UIDelegate.mm:
3121         (WebKit::UIDelegate::UIClient::createNewPage):
3122         * UIProcess/WebPageProxy.cpp:
3123         (WebKit::WebPageProxy::decidePolicyForNavigationAction):
3124         (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
3125         (WebKit::WebPageProxy::createNewPage):
3126         (WebKit::WebPageProxy::showPage):
3127
3128 2015-10-22  Anders Carlsson  <andersca@apple.com>
3129
3130         Simplify menu creation
3131         https://bugs.webkit.org/show_bug.cgi?id=150476
3132
3133         Reviewed by Tim Horton.
3134
3135         Instead of creating vectors of NSMenuItem objects, just simply build the menu recursively.
3136
3137         * UIProcess/mac/WebContextMenuProxyMac.h:
3138         * UIProcess/mac/WebContextMenuProxyMac.mm:
3139         (WebKit::WebContextMenuProxyMac::createContextMenuFromItems):
3140         (WebKit::WebContextMenuProxyMac::createContextMenuItem):
3141         (WebKit::WebContextMenuProxyMac::showContextMenu):
3142         (WebKit::populateNSMenu): Deleted.
3143         (WebKit::nsMenuItem): Deleted.
3144         (WebKit::nsMenuItemVector): Deleted.
3145
3146 2015-10-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3147
3148         ERROR: Unhandled web process message 'StorageAreaMap:DispatchStorageEvent'
3149         https://bugs.webkit.org/show_bug.cgi?id=150315
3150
3151         Reviewed by Andreas Kling.
3152
3153         It was introduced in r184930, that keeps the session storage area
3154         maps alive in the UI process when they are destroyed by the web
3155         process. The problem is that we also keep the listeners, so that
3156         events are also dispatched to the listeners of destroyed areas,
3157         and the message handlers were removed in the web process.
3158
3159         * UIProcess/Storage/StorageManager.cpp:
3160         (WebKit::StorageManager::createTransientLocalStorageMap): Add a
3161         listener for the new storage map ID when the map is reused.
3162         (WebKit::StorageManager::destroyStorageMap): Always remove
3163         listeners of destroyed maps.
3164
3165 2015-10-22  Tim Horton  <timothy_horton@apple.com>
3166
3167         Add a SPI variant of loadData that accepts user data to WKWebView
3168         https://bugs.webkit.org/show_bug.cgi?id=150475
3169
3170         Reviewed by Anders Carlsson.
3171
3172         * UIProcess/API/Cocoa/WKWebView.mm:
3173         (-[WKWebView _loadData:MIMEType:characterEncodingName:baseURL:userData:]):
3174         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
3175
3176 2015-10-22  Alex Christensen  <achristensen@webkit.org>
3177
3178         Progress towards CMake on Mac
3179         https://bugs.webkit.org/show_bug.cgi?id=150466
3180
3181         Reviewed by Chris Dumez.
3182
3183         * CMakeLists.txt:
3184         * PlatformMac.cmake:
3185         * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
3186
3187 2015-10-22  Anders Carlsson  <andersca@apple.com>
3188
3189         NativeContextMenuItem isn't needed anymore, remove it
3190         https://bugs.webkit.org/show_bug.cgi?id=150473
3191
3192         Reviewed by Tim Horton.
3193
3194         * PlatformEfl.cmake:
3195         * PlatformGTK.cmake:
3196         * Shared/NativeContextMenuItem.h: Removed.
3197         (WebKit::NativeContextMenuItem::~NativeContextMenuItem): Deleted.
3198         (WebKit::NativeContextMenuItem::nsMenuItem): Deleted.
3199         * Shared/WebContextMenuItem.cpp:
3200         (WebKit::WebContextMenuItem::WebContextMenuItem): Deleted.
3201         * Shared/WebContextMenuItem.h:
3202         (WebKit::WebContextMenuItem::create): Deleted.
3203         (WebKit::WebContextMenuItem::nativeContextMenuItem): Deleted.
3204         * Shared/efl/NativeContextMenuItemEfl.cpp: Removed.
3205         (WebKit::NativeContextMenuItem::NativeContextMenuItem): Deleted.
3206         * Shared/gtk/NativeContextMenuItemGtk.cpp: Removed.
3207         (WebKit::NativeContextMenuItem::NativeContextMenuItem): Deleted.
3208         * Shared/mac/NativeContextMenuItem.mm: Removed.
3209         (WebKit::NativeContextMenuItem::NativeContextMenuItem): Deleted.
3210         * UIProcess/mac/WebContextMenuProxyMac.mm:
3211         (WebKit::nsMenuItem): Deleted.
3212         * WebKit2.xcodeproj/project.pbxproj:
3213
3214 2015-10-22  Anders Carlsson  <andersca@apple.com>
3215
3216         CTTE WebContextMenuItemData
3217         https://bugs.webkit.org/show_bug.cgi?id=150471
3218
3219         Reviewed by Tim Horton.
3220
3221         * Shared/API/c/WKContextMenuItem.cpp:
3222         (WKContextMenuItemGetTag):
3223         (WKContextMenuItemGetType):
3224         (WKContextMenuItemCopyTitle):
3225         (WKContextMenuItemGetEnabled):
3226         (WKContextMenuItemGetChecked):
3227         * Shared/WebContextMenuItem.cpp:
3228         (WebKit::WebContextMenuItem::create):
3229         * Shared/WebContextMenuItem.h:
3230         (WebKit::WebContextMenuItem::data):
3231         * UIProcess/API/C/WKPage.cpp:
3232         (WKPageSelectContextMenuItem):
3233         * UIProcess/mac/WebContextMenuProxyMac.mm:
3234         (WebKit::nsMenuItem):
3235         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
3236         (WKBundlePageClickMenuItem):
3237         * WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
3238         (WebKit::InjectedBundlePageContextMenuClient::getCustomMenuFromDefaultItems):
3239
3240 2015-10-22  Anders Carlsson  <andersca@apple.com>
3241
3242         Handle nil menu items.
3243
3244         * UIProcess/mac/WebContextMenuProxyMac.mm:
3245         (WebKit::nsMenuItemVector):
3246
3247 2015-10-22  Anders Carlsson  <andersca@apple.com>
3248
3249         Wait to convert the share menu item to a real share menu until after calling out to the client
3250         https://bugs.webkit.org/show_bug.cgi?id=150465
3251
3252         Reviewed by Tim Horton.
3253
3254         This will let us simplify more code in upcoming patches.
3255
3256         * UIProcess/mac/WebContextMenuProxyMac.h:
3257         * UIProcess/mac/WebContextMenuProxyMac.mm:
3258         (WebKit::nsMenuItem):
3259         (WebKit::nsMenuItemVector):
3260         (WebKit::WebContextMenuProxyMac::showContextMenu):
3261
3262 2015-10-22  Myles C. Maxfield  <mmaxfield@apple.com>
3263
3264         [Cocoa] Migrate WKSetPatternPhaseInUserSpace() and WKGetUserToBaseCTM() from WKSI
3265         https://bugs.webkit.org/show_bug.cgi?id=150460
3266
3267         Reviewed by Tim Horton.
3268
3269         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3270         (InitWebCoreSystemInterface): Deleted.
3271
3272 2015-10-22  Alex Christensen  <achristensen@webkit.org>
3273
3274         Initial NSURLSession WebResourceLoader implementation
3275         https://bugs.webkit.org/show_bug.cgi?id=150355
3276
3277         Reviewed by Antti Koivisto.
3278
3279         * NetworkProcess/NetworkConnectionToWebProcess.cpp:
3280         (WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
3281         (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
3282         * NetworkProcess/NetworkResourceLoader.cpp:
3283         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
3284         (WebKit::NetworkResourceLoader::startNetworkLoad):
3285         (WebKit::NetworkResourceLoader::setDefersLoading):
3286         (WebKit::NetworkResourceLoader::cleanup):
3287         (WebKit::NetworkResourceLoader::didConvertHandleToDownload):
3288         (WebKit::NetworkResourceLoader::abort):
3289         (WebKit::NetworkResourceLoader::willPerformHTTPRedirection):
3290         (WebKit::NetworkResourceLoader::didReceiveChallenge):
3291         (WebKit::NetworkResourceLoader::didReceiveResponse):
3292         (WebKit::NetworkResourceLoader::didReceiveData):
3293         (WebKit::NetworkResourceLoader::didCompleteWithError):
3294         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
3295         (WebKit::NetworkResourceLoader::willSendRequestAsync):
3296         (WebKit::NetworkResourceLoader::continueWillSendRequest):
3297         (WebKit::NetworkResourceLoader::continueDidReceiveResponse):
3298         (WebKit::NetworkResourceLoader::didSendData):
3299         (WebKit::NetworkResourceLoader::receivedCancellation):
3300         (WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
3301         (WebKit::NetworkResourceLoader::bufferingTimerFired):
3302         (WebKit::NetworkResourceLoader::validateCacheEntry):
3303         (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
3304         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
3305         (WebKit::NetworkResourceLoader::continueCanAuthenticateAgainstProtectionSpace):
3306         (WebKit::NetworkResourceLoader::supportsDataArray):
3307         * NetworkProcess/NetworkResourceLoader.h:
3308         (WebKit::NetworkResourceLoader::create):
3309         (WebKit::NetworkResourceLoader::currentRequest):
3310         (WebKit::NetworkResourceLoader::handle):
3311         * NetworkProcess/NetworkSession.h: Added.
3312         (WebKit::NetworkSessionTaskClient::~NetworkSessionTaskClient):
3313         (WebKit::NetworkingDataTask::client):
3314         (WebKit::NetworkingDataTask::clearClient):
3315         (WebKit::NetworkSession::~NetworkSession):
3316         * NetworkProcess/cocoa/NetworkSessionCocoa.mm: Added.
3317         (toNSURLSessionResponseDisposition):
3318         (toNSURLSessionAuthChallengeDisposition):
3319         (-[NetworkSessionDelegate initWithNetworkSession:]):
3320         (-[NetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
3321         (-[NetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
3322         (-[NetworkSessionDelegate URLSession:task:didCompleteWithError:]):
3323         (-[NetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
3324         (-[NetworkSessionDelegate URLSession:dataTask:didReceiveData:]):
3325         (WebKit::NetworkSession::create):
3326         (WebKit::NetworkSession::singleton):
3327         (WebKit::configurationForType):
3328         (WebKit::NetworkSession::NetworkSession):
3329         (WebKit::NetworkSession::createDataTaskWithRequest):
3330         (WebKit::NetworkSession::dataTaskForIdentifier):
3331         (WebKit::NetworkingDataTask::NetworkingDataTask):
3332         (WebKit::NetworkingDataTask::~NetworkingDataTask):
3333         (WebKit::NetworkingDataTask::suspend):
3334         (WebKit::NetworkingDataTask::resume):
3335         (WebKit::NetworkingDataTask::taskIdentifier):
3336         * NetworkProcess/mac/NetworkResourceLoaderMac.mm:
3337         (WebKit::NetworkResourceLoader::willCacheResponseAsync):
3338         * WebKit2.xcodeproj/project.pbxproj:
3339         * config.h:
3340
3341 2015-10-22  Philippe Normand  <pnormand@igalia.com>
3342
3343         Unreviewed, GTK build fix for disabled redirected XComposite window support.
3344
3345         * UIProcess/API/gtk/WebKitWebViewBase.cpp: Add USE(REDIRECTED_XCOMPOSITE_WINDOW) guards.
3346         * UIProcess/DrawingAreaProxyImpl.h: Mark virtual methods as override to avoid compilation warnings.
3347
3348 2015-10-22  Wenson Hsieh  <wenson_hsieh@apple.com>
3349
3350         Implement touch-action: manipulation; for iOS
3351         https://bugs.webkit.org/show_bug.cgi?id=149854
3352         <rdar://problem/23017145>
3353
3354         Reviewed by Benjamin Poulain.
3355
3356         Implements the manipulation value for the CSS property touch-action. Performs hit-testing upon receiving a potential
3357         tap to determine whether to disable double-tap gesture recognition over the duration of the tap. If so, sends a message
3358         from the web process to the UI process indicating that double-tapping should be disabled, allowing single taps to
3359         avoid the delay.
3360
3361         * WebProcess/WebPage/ios/WebPageIOS.mm:
3362         (WebKit::WebPage::potentialTapAtPosition):
3363
3364 2015-10-22  Ryosuke Niwa  <rniwa@webkit.org>
3365
3366         REGRESSION (r181972): Scroll position changes to top of youtube page when switching tabs
3367         https://bugs.webkit.org/show_bug.cgi?id=150428
3368
3369         Reviewed by Antti Koivisto.
3370
3371         Call updateFocusAppearance with RevealMode::DoNotReveal to avoid revealing the focused element.
3372
3373         * WebProcess/WebPage/WebPage.cpp:
3374         (WebKit::WebPage::restoreSelectionInFocusedEditableElement):
3375
3376 2015-10-22  Carlos Garcia Campos  <cgarcia@igalia.com>
3377
3378         Unreviewed. Fix a crash in GTk+ after r191402.
3379
3380         Since r191402 WebContextMenuProxy is no longer refcounted, and
3381         std::unique_ptr is used instead. This means that when we show the
3382         context menu for the second time in a web view, a new
3383         WebContextMenuProxy is created and the previous one is
3384         destroyed. We were setting the active context menu of the WebView
3385         in the constructor of WebContextMenuProxy, and unsetting it in the
3386         destructor. Now the constructor of the new WebContextMenuProxy
3387         happens before the destructor of the current one that unsets the
3388         WebView active context menu. This patch simply makes the web view
3389         unset its active context menu when it's unmapped and a new one
3390         hasn't been set.
3391
3392         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
3393         (activeContextMenuUnmapped):
3394         (webkitWebViewBaseSetActiveContextMenuProxy):
3395         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
3396         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
3397
3398 2015-10-22  Hunseop Jeong  <hs85.jeong@samsung.com>
3399
3400         [GTK] Try to fix the build after r191402.
3401         https://bugs.webkit.org/show_bug.cgi?id=150435
3402
3403         Reviewed by Carlos Garcia Campos.
3404
3405         * UIProcess/API/gtk/PageClientImpl.cpp:
3406         (WebKit::PageClientImpl::createPopupMenuProxy):
3407         (WebKit::PageClientImpl::createContextMenuProxy):
3408         (WebKit::PageClientImpl::createColorPicker):
3409         * UIProcess/API/gtk/PageClientImpl.h:
3410         * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
3411         (WebKit::WebContextMenuProxyGtk::populate):
3412         (WebKit::WebContextMenuProxyGtk::show):
3413         (WebKit::WebContextMenuProxyGtk::WebContextMenuProxyGtk):
3414         (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
3415         (WebKit::WebContextMenuProxyGtk::menuPositionFunction):
3416         (WebKit::WebContextMenuProxyGtk::showContextMenu): Deleted.
3417         (WebKit::WebContextMenuProxyGtk::hideContextMenu): Deleted.
3418         (WebKit::WebContextMenuProxyGtk::cancelTracking): Deleted.
3419         * UIProcess/gtk/WebContextMenuProxyGtk.h:
3420         (WebKit::WebContextMenuProxyGtk::gtkMenu):
3421         (WebKit::WebContextMenuProxyGtk::create): Deleted.
3422
3423 2015-10-21  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
3424
3425        Unreviewed EFL build fix. Remove customizeMenu implementation.
3426
3427         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
3428         (WebKit::WebContextMenuClient::customizeMenu): Deleted.
3429
3430 2015-10-21  Alex Christensen  <achristensen@webkit.org>
3431
3432         Speculative EFL build fix.
3433
3434         * WebProcess/WebCoreSupport/WebContextMenuClient.h:
3435         Remove another customizeMenu call.
3436
3437 2015-10-21  Gyuyoung Kim  <gyuyoung.kim@webkit.org>
3438
3439         [EFL][GTK][WK2] Fix build break since r191402, r191401
3440         https://bugs.webkit.org/show_bug.cgi?id=150432
3441
3442         Unreviewed EFL and GTK build fix.
3443
3444         * CMakeLists.txt:
3445         * UIProcess/CoordinatedGraphics/WebView.cpp:
3446         (WebKit::WebView::createContextMenuProxy):
3447         * UIProcess/CoordinatedGraphics/WebView.h:
3448         * UIProces