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