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