Add prioritization of ad click conversions and cleaning of sent ad click conversions
[WebKit-https.git] / Source / WebKit / ChangeLog-2014-10-07
1 2014-10-07  Chris Dumez  <cdumez@apple.com>
2
3         Unreviewed iOS build fix after r174400.
4
5         Missing explicit WebKit:: namespace.
6
7         * UIProcess/API/Cocoa/WKWebView.mm:
8         (-[WKWebView _didCommitLoadForMainFrame]):
9         (-[WKWebView _restorePageStateToExposedRect:scale:]):
10         (-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
11
12 2014-10-07  Christophe Dumez  <cdumez@apple.com>
13
14         Use is<>() / downcast<>() for RenderText / RenderTextFragment
15         https://bugs.webkit.org/show_bug.cgi?id=137476
16
17         Reviewed by Darin Adler.
18
19         Use is<>() / downcast<>() for RenderText / RenderTextFragment.
20
21         * Shared/WebRenderObject.cpp:
22         (WebKit::WebRenderObject::WebRenderObject):
23
24 2014-10-07  Christophe Dumez  <cdumez@apple.com>
25
26         [WK2] Use is<>() / downcast<>() for DrawingAreaProxy subclasses
27         https://bugs.webkit.org/show_bug.cgi?id=137477
28
29         Reviewed by Andreas Kling.
30
31         Use is<>() / downcast<>() for DrawingAreaProxy subclasses.
32
33         * Shared/cf/KeyedDecoder.cpp:
34         * UIProcess/API/Cocoa/WKWebView.mm:
35         (-[WKWebView _didCommitLoadForMainFrame]):
36         (-[WKWebView _restorePageStateToExposedRect:scale:]):
37         (-[WKWebView _restorePageStateToUnobscuredCenter:scale:]):
38         * UIProcess/Cocoa/WebPageProxyCocoa.mm:
39         * UIProcess/DrawingAreaProxy.h:
40         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
41         (WebKit::RemoteScrollingCoordinatorProxy::layerTreeHost):
42         * UIProcess/ios/WebPageProxyIOS.mm:
43         (WebKit::WebPageProxy::updateVisibleContentRects):
44         (WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):
45         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
46         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
47         * UIProcess/mac/LegacySessionStateCoding.cpp:
48         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
49         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
50
51 2014-10-06  Vivek Galatage  <vivek.vg@samsung.com>
52
53         Remove unused warning in WebPageOverlay
54         https://bugs.webkit.org/show_bug.cgi?id=137444
55
56         Reviewed by Darin Adler.
57
58         Commenting the unused parameter to supress the warning.
59
60         * WebProcess/WebPage/WebPageOverlay.h:
61         (WebKit::WebPageOverlay::Client::copyAccessibilityAttributeStringValueForPoint):
62         (WebKit::WebPageOverlay::Client::copyAccessibilityAttributeBoolValueForPoint):
63
64 2014-10-06  Ada Chan  <adachan@apple.com>
65
66         Call WKPageUIClient::isPlayingAudioDidChange() whenever audio starts/stops playing on a page.
67         https://bugs.webkit.org/show_bug.cgi?id=137050
68
69         Reviewed by Anders Carlsson.
70
71         Implement WebChromeClient::isPlayingAudioDidChange() which sends the new isPlayingAudio state
72         over to the UI process. WebPageProxy caches the isPlayingAudio state, and when that changes,
73         it calls WKPageUIClient::isPlayingAudioDidChange().
74
75         * UIProcess/API/APIUIClient.h:
76         (API::UIClient::isPlayingAudioDidChange):
77         * UIProcess/API/C/WKPage.cpp:
78         (WKPageSetPageUIClient):
79         * UIProcess/WebPageProxy.cpp:
80         (WebKit::WebPageProxy::WebPageProxy):
81         (WebKit::WebPageProxy::isPlayingAudioDidChange):
82         * UIProcess/WebPageProxy.h:
83         (WebKit::WebPageProxy::isPlayingAudio):
84         * UIProcess/WebPageProxy.messages.in:
85         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
86         (WebKit::WebChromeClient::isPlayingAudioDidChange):
87         * WebProcess/WebCoreSupport/WebChromeClient.h:
88
89 2014-10-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
90
91         [EFL] Restore previous scroll position using restoreViewState()
92         https://bugs.webkit.org/show_bug.cgi?id=136999
93
94         Reviewed by Benjamin Poulain.
95
96         There are duplicating code paths to restore previous scroll position and scale factor in
97         HistoryController::restoreScrollPositionAndViewState. EFL port has processed the two code paths.
98         It causes wrong rendering update or scroll position change when previous page's scroll position
99         is restored. Thus EFL port begins to use restoreViewState() to restore scroll position and scale factor.
100         This patch is first step to support it.
101
102         Additionally EFL port has supported to use ScrollingCoordinatorCoordinatedGraphics::requestScrollPositionUpdate()
103         since r173785. So EFL port can use the requestScrollPositionUpdate() to restore scroll position on previous page
104         instead of delegatedScrollRequested(). However setScrollPosition() can't be used there for now, because iOS port
105         should call it when delegatesScrolling is disabled. On the other hand, EFL port supports it only when delegatesScrolling
106         is enabled.
107
108         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
109         (WebKit::WebFrameLoaderClient::saveViewStateToItem):
110         Move iOS saveViewStateToItem() to common place in order to share iOS implementation with EFL port.
111
112         (WebKit::WebFrameLoaderClient::restoreViewState):
113         EFL begins to share restoreViewState() of iOS, thus move iOS restoreViewState() to common place.
114
115         * WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
116         (WebKit::WebFrameLoaderClient::saveViewStateToItem): Deleted.
117         (WebKit::WebFrameLoaderClient::restoreViewState): Deleted.
118         * WebProcess/WebPage/WebPage.h:
119         * WebProcess/WebPage/efl/WebPageEfl.cpp:
120         (WebKit::WebPage::restorePageState):
121         Call scalePage() to update previous scaleFactor and scrollPosition of historyItem both to WebProcess and UIProcess.
122
123         (WebKit::WebPage::savePageState):
124
125 2014-10-06  Chris Dumez  <cdumez@apple.com>
126
127         [Mac] We are spending too much time serializing ProtectionSpace objects
128         https://bugs.webkit.org/show_bug.cgi?id=137367
129
130         Reviewed by Dan Bernstein.
131
132         When profiling the load of nytimes.com, I noticed that we were spending
133         a lot of CPU time serializing ProtectionSpace objects (in particular
134         the NSURLProtectionSpace platform data):
135         - 5.6% of CPU time for Network Process
136         - 2.5% of CPU time for WebProcess
137
138         Serializing an NSURLProtectionSpace seems to be costly due to server
139         trust verification. We do this for every sub-resource load over HTTPS
140         due to the canAuthenticateAgainstProtectionSpace() callback for server
141         trust validation, from the NetworkProcess to the WebProcess and then to
142         the UIProcess.
143
144         This patch adds a WKContextSetCanHandleHTTPSServerTrustEvaluation(bool)
145         WK2 private API that the client can call to indicate that it cannot
146         handle HTTPS server trust evaluation and that it is thus unnecessary to
147         call the canAuthenticateAgainstProtectionSpace() callback for such
148         evaluations. This reduces the amount of IPC between the process and
149         thus the number of times we have to serialize the ProtectionSpace.
150
151         In the case of the nytimes.com load, there is no longer any
152         ProtectionSpace serialization happening as
153         canAuthenticateAgainstProtectionSpace() was only called for HTTPS
154         server trust evaluation.
155
156         * NetworkProcess/NetworkProcess.cpp:
157         (WebKit::NetworkProcess::NetworkProcess):
158         (WebKit::NetworkProcess::initializeNetworkProcess):
159         (WebKit::NetworkProcess::setCanHandleHTTPSServerTrustEvaluation):
160         * NetworkProcess/NetworkProcess.h:
161         (WebKit::NetworkProcess::canHandleHTTPSServerTrustEvaluation):
162         * NetworkProcess/NetworkProcess.messages.in:
163         * NetworkProcess/NetworkResourceLoader.cpp:
164         (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
165         * Shared/Network/NetworkProcessCreationParameters.cpp:
166         (WebKit::NetworkProcessCreationParameters::encode):
167         (WebKit::NetworkProcessCreationParameters::decode):
168         * Shared/Network/NetworkProcessCreationParameters.h:
169         * UIProcess/API/C/WKContext.cpp:
170         (WKContextSetCanHandleHTTPSServerTrustEvaluation):
171         * UIProcess/API/C/WKContextPrivate.h:
172         * UIProcess/API/Cocoa/WKProcessPool.mm:
173         (-[WKProcessPool _setCanHandleHTTPSServerTrustEvaluation:]):
174         * UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
175         * UIProcess/WebContext.cpp:
176         (WebKit::WebContext::WebContext):
177         (WebKit::WebContext::ensureNetworkProcess):
178         (WebKit::WebContext::setCanHandleHTTPSServerTrustEvaluation):
179         * UIProcess/WebContext.h:
180
181 2014-10-06  Simon Fraser  <simon.fraser@apple.com>
182
183         Don't attempt to paint into zero-sized backing store
184         https://bugs.webkit.org/show_bug.cgi?id=137465
185
186         Reviewed by Tim Horton.
187         
188         Page scale could cause the backing store for a small composited element to become empty,
189         in which case we'd try to allocate, and paint into a graphics context with no surface
190         behind it.
191         
192         Fix by bailing from RemoteLayerBackingStore::display() when checking the backing store
193         size after accounting for scale.
194
195         * Shared/mac/RemoteLayerBackingStore.h:
196         * Shared/mac/RemoteLayerBackingStore.mm:
197         (WebKit::RemoteLayerBackingStore::backingStoreSize):
198         (WebKit::RemoteLayerBackingStore::swapToValidFrontBuffer):
199         (WebKit::RemoteLayerBackingStore::display):
200
201 2014-10-06  Christophe Dumez  <cdumez@apple.com>
202
203         Use is<>() / downcast<>() for ScrollingTree subclasses
204         https://bugs.webkit.org/show_bug.cgi?id=137449
205
206         Reviewed by Ryosuke Niwa.
207
208         Use is<>() / downcast<>() for ScrollingTree subclasses.
209
210         * UIProcess/Scrolling/RemoteScrollingTree.h:
211         * WebProcess/WebPage/EventDispatcher.cpp:
212         (WebKit::EventDispatcher::addScrollingTreeForPage):
213
214 2014-10-05  Christophe Dumez  <cdumez@apple.com>
215
216         Use is<>() / downcast<>() for ScrollingCoordinator / ScrollingStateNode subclasses
217         https://bugs.webkit.org/show_bug.cgi?id=137440
218
219         Reviewed by Ryosuke Niwa.
220
221         Use is<>() / downcast<>() for ScrollingCoordinator / ScrollingStateNode subclasses.
222
223         * Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:
224         (WebKit::encodeNodeAndDescendants):
225         (WebKit::RemoteScrollingCoordinatorTransaction::decode):
226         (WebKit::RemoteScrollingTreeTextStream::dump):
227         * UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:
228         (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
229         * UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
230         (WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateBeforeChildren):
231         (WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren):
232         * UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:
233         (WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):
234         * WebProcess/Scrolling/RemoteScrollingCoordinator.h:
235         * WebProcess/WebPage/EventDispatcher.cpp:
236         (WebKit::EventDispatcher::addScrollingTreeForPage):
237         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
238         (WebKit::RemoteLayerTreeDrawingArea::flushLayers):
239         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
240         (WebKit::TiledCoreAnimationDrawingArea::updatePreferences):
241
242 2014-10-05  Ryuan Choi  <ryuan.choi@gmail.com>
243
244         [EFL] Introduce EWebKit_Extension
245         https://bugs.webkit.org/show_bug.cgi?id=134921
246
247         Reviewed by Gyuyoung Kim.
248
249         EWebKit2 does not provide the functionality to extend WebProcess.
250         Although there is ewk_context_new_with_injected_bundle_path() in ewebkit2 APIs,
251         application developers can not make bundle object without touching WK APIs
252         which ewebkit2 does not expose.
253
254         This patch introduces EWebKit_Extension, basic structure for the extension of WebProcess.
255
256         * PlatformEfl.cmake:
257         Added files for the EWebKit_Extension and install them properly.
258         * UIProcess/API/efl/ewk_context.cpp:
259         (EwkContext::EwkContext):
260         (bundlePathForExtension):
261         (EwkContext::create):
262         (EwkContext::getInjectedBundleInitializationUserData):
263         (EwkContext::setMessageFromInjectedBundleCallback):
264         (ewk_context_new_with_extensions_path):
265         Deleted because ewebkit2 does not have a way to make injected bundle.
266         Instead, Ewk_Extension will cover the same functionalities.
267         (ewk_context_new_with_injected_bundle_path): Deleted.
268         * UIProcess/API/efl/ewk_context.h:
269         * UIProcess/API/efl/ewk_context_private.h:
270         (EwkContext::extensionsPath):
271         * UIProcess/API/efl/tests/InjectedBundle/injected_bundle_sample.cpp: Removed.
272         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
273         (EWK2UnitTest::EWK2UnitTestEnvironment::extensionSample):
274         (EWK2UnitTest::EWK2UnitTestEnvironment::injectedBundleSample): Renamed injectedBundleSample to extensionSample.
275         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.h:
276         * UIProcess/API/efl/tests/extensions/extension_sample.cpp: Copied from Source/WebKit2/UIProcess/API/efl/tests/InjectedBundle/injected_bundle_sample.cpp.
277         * UIProcess/API/efl/tests/test_ewk2_context.cpp: Renamed ewk_context_new_with_injected_bundle_path to ewk_context_new_with_extensions_path.
278         (TEST_F):
279         * WebProcess/InjectedBundle/API/efl/EWebKit_Extension.h: Added.
280         * WebProcess/InjectedBundle/API/efl/ewk_extension.cpp: Added.
281         (EwkExtension::append):
282         (EwkExtension::remove):
283         (ewk_extension_client_add):
284         (ewk_extension_client_del):
285         * WebProcess/InjectedBundle/API/efl/ewk_extension.h: Added.
286         * WebProcess/InjectedBundle/API/efl/ewk_extension_private.h: Added.
287         (EwkExtension::EwkExtension):
288         (EwkExtension::~EwkExtension):
289         * WebProcess/efl/ExtensionManagerEfl.cpp: Added.
290         (WebKit::ExtensionManagerEfl::shared):
291         (WebKit::ExtensionManagerEfl::ExtensionManagerEfl):
292         (WebKit::ExtensionManagerEfl::initialize):
293         * WebProcess/efl/ExtensionManagerEfl.h: Added.
294         * WebProcess/efl/WebInjectedBundleMainEfl.cpp: Added.
295         (WKBundleInitialize):
296         * efl/ewebkit2-extension.pc.in: Added.
297
298 2014-10-05  Lorenzo Tilve  <ltilve@igalia.com>
299
300         [GTK] Fix build when DRAG_SUPPORT is disabled
301         https://bugs.webkit.org/show_bug.cgi?id=137361
302
303         Reviewed by Carlos Garcia Campos.
304
305         Flag out unbuildable code without DRAG_SUPPORT.
306
307         * Shared/gtk/ArgumentCodersGtk.cpp:
308         * Shared/gtk/ArgumentCodersGtk.h:
309         * UIProcess/API/gtk/PageClientImpl.cpp:
310         * UIProcess/API/gtk/PageClientImpl.h:
311         * UIProcess/API/gtk/WebKitWebViewBase.cpp:
312         (webkitWebViewBaseConstructed):
313         * UIProcess/PageClient.h:
314
315 2014-10-05  Carlos Garcia Campos  <cgarcia@igalia.com>
316
317         [GTK] The new web inspector can't be docked again once undocked
318         https://bugs.webkit.org/show_bug.cgi?id=121544
319
320         Reviewed by Martin Robinson.
321
322         Use a GtkHeaderBar for the inspector window to add dock buttons
323         when building with GTK+ >= 3.10.
324
325         * UIProcess/WebInspectorProxy.cpp:
326         (WebKit::WebInspectorProxy::WebInspectorProxy):
327         * UIProcess/WebInspectorProxy.h:
328         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
329         (WebKit::WebInspectorProxy::dockButtonClicked):
330         (WebKit::WebInspectorProxy::createInspectorWindow):
331         (WebKit::WebInspectorProxy::updateInspectorWindowTitle):
332         (WebKit::WebInspectorProxy::platformInspectedURLChanged):
333         (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged):
334
335 2014-10-04  Carlos Garcia Campos  <cgarcia@igalia.com>
336
337         Unreviewed. Add missing inspector files to compilation.
338
339         * PlatformGTK.cmake: Add javascript sources in
340         WebInspectorUI/UserInterface/External/Esprima to the list of
341         inspector files.
342
343 2014-10-03  Anders Carlsson  <andersca@apple.com>
344
345         Remove a workaround for a bug that's been fixed
346         https://bugs.webkit.org/show_bug.cgi?id=137411
347
348         Reviewed by Dan Bernstein.
349
350         * mac/rewrite-availability-macros.sh:
351
352 2014-10-03  Jer Noble  <jer.noble@apple.com>
353
354         Revert an accidental change introduced by r173318.
355
356         Rubber-stamped by Tim Horton.
357
358         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
359         (WebKit::TiledCoreAnimationDrawingArea::suspendPainting):
360         (WebKit::TiledCoreAnimationDrawingArea::resumePainting):
361
362 2014-10-03  Tim Horton  <timothy_horton@apple.com>
363
364         WKWebView snapshot of Daring Fireball has the wrong color in the obscured inset
365         https://bugs.webkit.org/show_bug.cgi?id=137383
366         <rdar://problem/18535439>
367
368         Reviewed by Sam Weinig.
369
370         * WebProcess/WebPage/WebPage.cpp:
371         (WebKit::WebPage::snapshotAtSize):
372         Use documentBackgroundColor instead of baseBackgroundColor if backgroundShouldExtendBeyondPage is set.
373
374 2014-10-03  Andy Estes  <aestes@apple.com>
375
376         [iOS] Highlight clicked links in WKPDFView
377         https://bugs.webkit.org/show_bug.cgi?id=137400
378
379         Reviewed by Tim Horton.
380
381         Show a _UIHighlightView on top of clicked links for 200 ms before starting the navigation. This matches the behavior of UIWebPDFView.
382
383         * UIProcess/ios/WKPDFView.mm:
384         (-[WKPDFView _createHighlightViewWithFrame:]): Created a _UIHighlightView with a color and border radius matching the values used by UIWebPDFView.
385         (-[WKPDFView annotation:wasTouchedAtPoint:controller:]): Displayed the highlight, then removed it after the navigation began.
386
387 2014-10-03  Csaba Osztrogonác  <ossy@webkit.org>
388
389         [GTK] URTBF after r174231.
390
391         * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
392         (webkit_web_page_get_dom_document):
393         * WebProcess/WebPage/DrawingAreaImpl.cpp:
394         (WebKit::DrawingAreaImpl::didInstallPageOverlay): Deleted.
395         (WebKit::DrawingAreaImpl::didUninstallPageOverlay): Deleted.
396         (WebKit::DrawingAreaImpl::setPageOverlayNeedsDisplay): Deleted.
397         (WebKit::DrawingAreaImpl::setPageOverlayOpacity): Deleted.
398         * WebProcess/WebPage/DrawingAreaImpl.h:
399         * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
400         (WebKit::LayerTreeHostGtk::createPageOverlayLayer):
401         (WebKit::LayerTreeHostGtk::destroyPageOverlayLayer):
402         (WebKit::LayerTreeHostGtk::didInstallPageOverlay): Deleted.
403         (WebKit::LayerTreeHostGtk::didUninstallPageOverlay): Deleted.
404         (WebKit::LayerTreeHostGtk::setPageOverlayNeedsDisplay): Deleted.
405         * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
406
407 2014-10-03  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
408
409         [EFL] Fix build break since r174231 and r174256
410         https://bugs.webkit.org/show_bug.cgi?id=137384
411
412         Unreviewed, EFL build fix.
413
414         r174231 and r174256 didn't consider EFL port and CoordinatedGraphics area.
415
416         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:
417         (WebKit::CoordinatedDrawingArea::mainFrameContentSizeChanged):
418         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
419         (WebKit::CoordinatedLayerTreeHost::setRootCompositingLayer):
420         (WebKit::CoordinatedLayerTreeHost::didFlushRootLayer):
421         (WebKit::CoordinatedLayerTreeHost::deviceOrPageScaleFactorChanged):
422         * WebProcess/WebPage/TapHighlightController.cpp:
423         (WebKit::TapHighlightController::highlight):
424         (WebKit::TapHighlightController::hideHighlight):
425         * WebProcess/WebPage/TapHighlightController.h: Add WebCore:: namespace prefix to PageOverlay argument type.
426
427 2014-10-02  Csaba Osztrogonác  <ossy@webkit.org>
428
429         URTBF after r174231 to fix non Apple builds.
430
431         * WebProcess/WebPage/WebPage.h:
432
433 2014-10-02  Andy Estes  <aestes@apple.com>
434
435         [iOS] Create an SPI wrapper for _UIHighlightView and use it in WKContentView
436         https://bugs.webkit.org/show_bug.cgi?id=137370
437
438         Reviewed by Tim Horton.
439
440         * UIProcess/ios/WKContentViewInteraction.mm: Included <WebCore/_UIHighlightViewSPI.h> instead of <UIKit/_UIHighlightView.h>.
441
442 2014-10-02  Andy Estes  <aestes@apple.com>
443
444         Fix the iOS build.
445
446         * WebProcess/WebPage/ios/WebPageIOS.mm:
447         (WebKit::WebPage::blurAssistedNode):
448         (WebKit::WebPage::setAssistedNodeValue):
449         (WebKit::WebPage::setAssistedNodeValueAsNumber):
450         (WebKit::WebPage::setAssistedNodeSelectedIndex):
451
452 2014-10-02  Andy Estes  <aestes@apple.com>
453
454         [iOS] Teach WKPDFView to navigate to pageNumber links
455         https://bugs.webkit.org/show_bug.cgi?id=137358
456
457         Reviewed by Tim Horton.
458
459         Treat PDF pageNumber annotations as if they were fragment navigations in an HTML document. For a given page
460         number N, create a fragment called "#pageN" and tell WebKit to navigate to it. By doing this we create history
461         entries for each pageNumber navigation and allow for proper back/forward. When navigating to a page, reset to
462         the initial scale factor and scroll to the beginning of the Nth page.
463
464         * UIProcess/API/Cocoa/WKWebView.mm:
465         (-[WKWebView _zoomToPoint:atScale:animated:]): Added an animated parameter. If animated is NO, use a duration of 0.
466         (-[WKWebView _zoomToRect:atScale:origin:animated:]): Added an animated parameter and passed it to _zoomToPoint:atScale:animated:.
467         (-[WKWebView _zoomOutWithOrigin:animated:]): Ditto.
468         (-[WKWebView _zoomToRect:withOrigin:fitEntireRect:minimumScale:maximumScale:minimumScrollDistance:]): Called _zoomToRect:atScale:origin:animated:,
469         setting animated to YES.
470         (-[WKWebView _didSameDocumentNavigationForMainFrame:]): Called web_didSameDocumentNavigation: on _customContentView.
471         (-[WKWebView _zoomToPoint:atScale:]): Deleted.
472         (-[WKWebView _zoomToRect:atScale:origin:]): Deleted.
473         (-[WKWebView _zoomOutWithOrigin:]): Deleted.
474         * UIProcess/API/Cocoa/WKWebViewInternal.h:
475         * UIProcess/Cocoa/WKWebViewContentProvider.h:
476         * UIProcess/ios/PageClientImplIOS.mm:
477         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame): Called _didSameDocumentNavigationForMainFrame on m_webView.
478         * UIProcess/ios/WKContentView.mm:
479         (-[WKContentView _zoomOutWithOrigin:]): Called _zoomOutWithOrigin:animated: on m_webView, setting animated to YES.
480         * UIProcess/ios/WKPDFPageNumberIndicator.h:
481         * UIProcess/ios/WKPDFPageNumberIndicator.mm:
482         (-[WKPDFPageNumberIndicator hide]): Added a method to hide the page number indicator.
483         * UIProcess/ios/WKPDFView.mm:
484         (-[WKPDFView web_setContentProviderData:suggestedFilename:]): Added a FIXME for restoring scroll position and page scale when loading from the back/forward list.
485         (-[WKPDFView scrollViewDidScroll:]): Stopped showing the page number indicator if a same-document navigation is occurring (to match UIWebPDFView).
486         (-[WKPDFView _updatePageNumberIndicator]): Ditto.
487         (-[WKPDFView web_didSameDocumentNavigation:]):
488         (-[WKPDFView _resetZoomAnimated:]): For same-document navigations of type kWKSameDocumentNavigationSessionStatePop, extracted the page index from the URL fragment
489         identifier, hid the page number indicator, reset the zoom (without an animation to match UIWebPDFView), and scrolled to the beginning of the given page.
490         (-[WKPDFView resetZoom:]): Called _resetZoomAnimated:, setting animated to YES.
491         (-[WKPDFView annotation:wasTouchedAtPoint:controller:]): If there is a non-zero pageNumber in the link annotation, construct a "#pageN" fragment and navigate to it.
492
493 2014-10-02  Tim Horton  <timothy_horton@apple.com>
494
495         Move PageOverlay[Controller] to WebCore
496         https://bugs.webkit.org/show_bug.cgi?id=137164
497         <rdar://problem/18508258>
498
499         Reviewed by Anders Carlsson.
500
501         * CMakeLists.txt:
502         * WebKit2.xcodeproj/project.pbxproj:
503         Make the appropriate build system changes.
504
505         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
506         Make WKBundlePageOverlayRef map to WebPageOverlay instead of PageOverlay.
507
508         * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
509         (WKBundlePageInstallPageOverlay):
510         (WKBundlePageUninstallPageOverlay):
511         (WKBundlePageInstallPageOverlayWithAnimation):
512         (WKBundlePageUninstallPageOverlayWithAnimation):
513         Forward PageOverlay installation/uninstallation to WebCore.
514
515         * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
516         (WKBundlePageOverlayGetTypeID):
517         (WKBundlePageOverlayCreate):
518         (WKBundlePageOverlaySetAccessibilityClient):
519         Use WebPageOverlay instead of PageOverlay, and references instead of pointers.
520         We forward client callbacks through from PageOverlay::Client to WebPageOverlay::Client.
521
522         (PageOverlayClientImpl::copyAccessibilityAttributeValue):
523         (PageOverlayClientImpl::copyAccessibilityAttributeNames):
524         Convert from wtf types to WebKit2 types.
525
526         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
527         (WebKit::WebChromeClient::graphicsLayerFactory):
528         If we don't have a drawing area, don't dereference it!
529
530         (WebKit::WebChromeClient::attachViewOverlayGraphicsLayer):
531         Forward attachViewOverlayGraphicsLayer to the DrawingArea.
532
533         * WebProcess/WebCoreSupport/WebChromeClient.h:
534
535         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
536         * WebProcess/WebCoreSupport/WebInspectorClient.h:
537         * WebProcess/WebPage/FindController.cpp:
538         * WebProcess/WebPage/FindController.h:
539         * WebProcess/WebPage/ios/FindControllerIOS.mm:
540         * WebProcess/WebPage/ios/FindIndicatorOverlayClientIOS.h:
541         * WebProcess/WebPage/mac/ServicesOverlayController.mm:
542         * WebProcess/WebPage/ServicesOverlayController.h:
543         Mechanical changes to adopt to the fact that PageOverlay is in WebCore now.
544
545         * WebProcess/WebPage/LayerTreeHost.h:
546         * WebProcess/WebPage/WebPage.cpp:
547         * WebProcess/WebPage/WebPage.h:
548         Remove support for WebKit2-based page overlays.
549         Return MainFrame instead of Frame from mainFrame().
550
551         * WebProcess/WebPage/WebPageOverlay.cpp: Added.
552         * WebProcess/WebPage/WebPageOverlay.h: Added.
553         (WebKit::WebPageOverlay::create):
554         (WebKit::WebPageOverlay::WebPageOverlay):
555         (WebKit::WebPageOverlay::~WebPageOverlay):
556         (WebKit::WebPageOverlay::setNeedsDisplay):
557         (WebKit::WebPageOverlay::clear):
558         (WebKit::WebPageOverlay::pageOverlayDestroyed):
559         (WebKit::WebPageOverlay::willMoveToPage):
560         (WebKit::WebPageOverlay::didMoveToPage):
561         (WebKit::WebPageOverlay::drawRect):
562         (WebKit::WebPageOverlay::mouseEvent):
563         (WebKit::WebPageOverlay::didScrollFrame):
564         (WebKit::WebPageOverlay::copyAccessibilityAttributeStringValueForPoint):
565         (WebKit::WebPageOverlay::copyAccessibilityAttributeBoolValueForPoint):
566         (WebKit::WebPageOverlay::copyAccessibilityAttributeNames):
567         WebPageOverlay exists to be our API object, but forwards everything
568         to its WebCore::PageOverlay, and implements WebCore::PageOverlay::Client, and
569         forwards client callbacks to its WebPageOverlay::Client (which
570         WKBundlePageOverlay implements).
571
572         * WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm:
573         (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
574         (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
575         Forward the three AX properties that PageOverlays are ever queried for
576         to the appropriate PageOverlayController function.
577         
578         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
579         * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
580         (WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
581         (WebKit::RemoteLayerTreeDrawingArea::updateRootLayers):
582         Factor updateRootLayers out of setRootCompositingLayer.
583
584         (WebKit::RemoteLayerTreeDrawingArea::attachViewOverlayGraphicsLayer):
585         If we attach/detach the view-relative page overlay root layer,
586         reattach the root compositing layer's children.
587
588         (WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
589         Ditto for the root compositing layer.
590
591         (WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):
592         (WebKit::RemoteLayerTreeDrawingArea::flushLayers):
593         (WebKit::RemoteLayerTreeDrawingArea::mainFrameContentSizeChanged):
594         Informing PageOverlayController of exposed rect/document size changes is now
595         WebCore's job.
596
597         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
598         * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
599         (WebKit::TiledCoreAnimationDrawingArea::TiledCoreAnimationDrawingArea):
600         (WebKit::TiledCoreAnimationDrawingArea::updateRootLayers):
601         Factor updateRootLayers out of setRootCompositingLayer.
602
603         (WebKit::TiledCoreAnimationDrawingArea::attachViewOverlayGraphicsLayer):
604         (WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
605         Make use of updateRootLayers when we attach/detach root compositing layer/view overlay layer.
606
607         (WebKit::TiledCoreAnimationDrawingArea::mainFrameContentSizeChanged):
608         (WebKit::TiledCoreAnimationDrawingArea::flushLayers):
609         (WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):
610         Informing PageOverlayController of exposed rect/document size changes is now
611         WebCore's job.
612
613         * WebProcess/WebPage/DrawingArea.h:
614         (WebKit::DrawingArea::attachViewOverlayGraphicsLayer):
615
616         * Shared/WebRenderLayer.cpp:
617         * Shared/WebRenderObject.cpp:
618         * WebProcess/InjectedBundle/API/c/WKBundleAPICast.h:
619         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
620         * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
621         * WebProcess/WebProcess.cpp:
622         Include MainFrame.h because WebPage::mainFrame returns a MainFrame now.
623
624 2014-10-02  Jeff Miller  <jeffm@apple.com>
625
626         WKDownloadCopyRequest() returns 0 until the download starts
627         https://bugs.webkit.org/show_bug.cgi?id=137322
628
629         Reviewed by Anders Carlsson.
630
631         The m_request ivar in DownloadProxy was only being initialized when didStart() was called after the
632         download starts. Since clients have access to the ResourceRequest when the DownloadProxy is created,
633         there's no reason not to pass that along to DownloadProxy::create() so it can be returned if
634         WKDownloadCopyRequest() is called before didStart().
635
636         * UIProcess/Downloads/DownloadProxy.cpp:
637         (WebKit::DownloadProxy::create):
638         Add ResourceRequest parameter, and pass it to DownloadProxy constructor.
639
640         (WebKit::DownloadProxy::DownloadProxy):
641         Initialize m_request.
642
643         * UIProcess/Downloads/DownloadProxy.h:
644         Add ResourceRequest parameter to create() and constructor.
645
646         * UIProcess/Downloads/DownloadProxyMap.cpp:
647         (WebKit::DownloadProxyMap::createDownloadProxy):
648         Add ResourceRequest parameter and pass it to DownloadProxy::create().
649
650         * UIProcess/Downloads/DownloadProxyMap.h:
651         Add ResourceRequest parameter to createDownloadProxy().
652
653         * UIProcess/Network/NetworkProcessProxy.cpp:
654         (WebKit::NetworkProcessProxy::createDownloadProxy):
655         Add ResourceRequest parameter and pass it to DownloadProxy::create().
656
657         * UIProcess/Network/NetworkProcessProxy.h:
658         Add ResourceRequest parameter to createDownloadProxy().
659
660         * UIProcess/WebContext.cpp:
661         (WebKit::WebContext::download):
662         Pass ResourceRequest to createDownloadProxy().
663
664         (WebKit::WebContext::createDownloadProxy):
665         Add ResourceRequest parameter and pass it to createDownloadProxy() functions.
666
667         * UIProcess/WebContext.h:
668         Add ResourceRequest parameter to createDownloadProxy().
669
670         * UIProcess/WebPageProxy.cpp:
671         (WebKit::WebPageProxy::receivedPolicyDecision):
672         Pass m_decidePolicyForResponseRequest to WebContext::createDownloadProxy().
673
674         * UIProcess/WebProcessProxy.cpp:
675         (WebKit::WebProcessProxy::createDownloadProxy):
676         Add ResourceRequest parameter and pass it to DownloadProxyMap::create().
677
678         * UIProcess/WebProcessProxy.h:
679         Add ResourceRequest parameter to createDownloadProxy().
680
681 2014-10-01  Christophe Dumez  <cdumez@apple.com>
682
683         Have is<>(T*) function do a null check on the pointer argument
684         https://bugs.webkit.org/show_bug.cgi?id=137333
685
686         Reviewed by Gavin Barraclough.
687
688         Have is<>(T*) function do a null check on the argument instead of a
689         simple assertion. This makes sense for 2 reasons:
690         1. It is more consistent with downcast<>(T*), which will succeed even
691            if the argument is a nullptr.
692         2. It simplifies the code a bit as it gets rid of a lot of explicit
693            null checks.
694
695         * Shared/WebRenderObject.cpp:
696         (WebKit::WebRenderObject::WebRenderObject):
697         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
698         (WebKit::InjectedBundleHitTestResult::mediaType):
699         * WebProcess/Plugins/PluginView.cpp:
700         (WebKit::PluginView::handleEvent):
701         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
702         (WebKit::WebChromeClient::focusedElementChanged):
703         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
704         (WebKit::WebEditorClient::textFieldDidBeginEditing):
705         (WebKit::WebEditorClient::textFieldDidEndEditing):
706         (WebKit::WebEditorClient::textDidChangeInTextField):
707         (WebKit::WebEditorClient::textDidChangeInTextArea):
708         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
709         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
710         * WebProcess/WebPage/WebFrame.cpp:
711         (WebKit::WebFrame::containsAnyFormElements):
712         (WebKit::WebFrame::containsAnyFormControls):
713         * WebProcess/WebPage/WebPage.cpp:
714         (WebKit::WebPage::pdfDocumentForPrintingFrame):
715         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
716         * WebProcess/WebPage/ios/WebPageIOS.mm:
717         (WebKit::WebPage::blurAssistedNode):
718         (WebKit::WebPage::setAssistedNodeValue):
719         (WebKit::WebPage::setAssistedNodeValueAsNumber):
720         (WebKit::WebPage::setAssistedNodeSelectedIndex):
721         (WebKit::WebPage::getPositionInformation):
722         (WebKit::WebPage::performActionOnElement):
723         (WebKit::isAssistableNode):
724         (WebKit::WebPage::getAssistedNodeInformation):
725
726 2014-10-02  Daniel Bates  <dabates@apple.com>
727
728         Clean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
729         https://bugs.webkit.org/show_bug.cgi?id=137277
730
731         Reviewed by Alexey Proskuryakov.
732
733         Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
734         forward declaring XPC functions.
735
736         * Platform/IPC/Connection.h:
737         * Platform/IPC/mac/ConnectionMac.mm:
738         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
739         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
740         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
741
742 2014-10-02  Ryuan Choi  <ryuan.choi@gmail.com>
743
744         [EFL][WK2] test_ewk2_view is failed
745         https://bugs.webkit.org/show_bug.cgi?id=132983
746
747         Reviewed by Gyuyoung Kim.
748
749         Enable test_ewk2_view because test cases of test_ewk2_view are passed except
750         for few tests related to device_pixel_ratio.
751         This patch adds macro guard for ailed test case to CAIRO_SURFACE_SET_DEVICE_SCALE macro.
752         In addition, fixed some warnings while building with test_ewk2_view.
753
754         * PlatformEfl.cmake: Enables test_ewk2_view.
755         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp: Added const keyword for argument to fix the warnings.
756         (EWK2UnitTest::EWK2UnitTestBase::keyDown):
757         (EWK2UnitTest::EWK2UnitTestBase::keyUp):
758         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
759         * UIProcess/API/efl/tests/test_ewk2_view.cpp:
760         (TEST_F):
761
762 2014-10-02  JinYoung Hur  <hurims@gmail.com>
763
764         Minor bug in UIClient::exceededDatabaseQuota()
765         https://bugs.webkit.org/show_bug.cgi?id=137213
766
767         Reviewed by Anders Carlsson.
768
769         Make sure not to call the completion handler twice if exceededDatabaseQuota is null.
770
771         * UIProcess/API/C/WKPage.cpp:
772         (WKPageSetPageUIClient):
773
774 2014-10-01  Mark Rowe  <mrowe@apple.com>
775
776         <https://webkit.org/b/137308> WebKit should build on OS X Yosemite for external users
777
778         Reviewed by Dan Bernstein.
779
780         * Configurations/DebugRelease.xcconfig: Use libWebKitSystemInterfaceYosemite.a on Yosemite.
781
782 2014-10-01  Commit Queue  <commit-queue@webkit.org>
783
784         Unreviewed, rolling out r174180, r174183, and r174186.
785         https://bugs.webkit.org/show_bug.cgi?id=137320
786
787         Broke the Mac MountainLion build. Will investigate offline.
788         (Requested by dydz on #webkit).
789
790         Reverted changesets:
791
792         "Clean up: Move XPC forward declarations in JavaScriptCore to
793         WTF SPI wrapper header"
794         https://bugs.webkit.org/show_bug.cgi?id=137277
795         http://trac.webkit.org/changeset/174180
796
797         "Attempt to fix the build after
798         <https://trac.webkit.org/changeset/174180>"
799         https://bugs.webkit.org/show_bug.cgi?id=137277
800         http://trac.webkit.org/changeset/174183
801
802         "Another attempt to fix the Mac build after
803         <https://trac.webkit.org/changeset/174180>"
804         https://bugs.webkit.org/show_bug.cgi?id=137277
805         http://trac.webkit.org/changeset/174186
806
807 2014-10-01  Daniel Bates  <dabates@apple.com>
808
809         Clean up: Move XPC forward declarations in JavaScriptCore to WTF SPI wrapper header
810         https://bugs.webkit.org/show_bug.cgi?id=137277
811
812         Reviewed by Alexey Proskuryakov.
813
814         Use wtf/spi/darwin/XPCSPI.h instead of including the corresponding XPC headers/
815         forward declaring XPC functions.
816
817         * Platform/IPC/Connection.h:
818         * Platform/IPC/mac/ConnectionMac.mm:
819         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
820         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
821         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
822
823 2014-10-01  Christophe Dumez  <cdumez@apple.com>
824
825         Use is<>() / downcast<>() for Event classes
826         https://bugs.webkit.org/show_bug.cgi?id=137284
827
828         Reviewed by Andreas Kling.
829
830         Use is<>() / downcast<>() for Event classes.
831
832         * WebProcess/Plugins/PluginView.cpp:
833         (WebKit::PluginView::handleEvent):
834
835 2014-10-01  Joseph Pecoraro  <pecoraro@apple.com>
836
837         [iOS] <select> with <optgroup> may change initial selected option when assisted
838         https://bugs.webkit.org/show_bug.cgi?id=137261
839
840         Reviewed by Enrica Casucci.
841
842         The initial assignemnt of _singleSelectionIndex was calculating the
843         item index (ignoring groups) instead of the row index (affected by
844         groups!). Thus if there was N groups we would select the row N
845         before the real selection.
846
847         Also avoid this entirely if this is a multiple selection picker.
848         This logic is only needed for single selection with groups.
849
850         * UIProcess/ios/forms/WKFormSelectPicker.mm:
851         (-[WKMultipleSelectPicker initWithView:]):
852
853 2014-09-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
854
855         [EFL] Rename TEST_THEME_DIR macro
856         https://bugs.webkit.org/show_bug.cgi?id=137244
857
858         Reviewed by Csaba Osztrogonác.
859
860         TEST_THEME_DIR is to get a path for default theme though, it has used TEST_ prefix.
861         DEFAULT_THEME_DIR is better than it.
862
863         * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp:
864         (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
865         (EWK2UnitTest::EWK2UnitTestEnvironment::pathForTheme):
866         * UIProcess/efl/WebInspectorProxyEfl.cpp:
867         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
868
869 2014-09-30  Christophe Dumez  <cdumez@apple.com>
870
871         Generalize is<>() / downcast<>() support to all types
872         https://bugs.webkit.org/show_bug.cgi?id=137243
873
874         Reviewed by Benjamin Poulain.
875
876         Generalize is<>() / downcast<>() support to all types, not just Nodes.
877
878         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
879         (-[WKDOMDocument createElement:]):
880         (-[WKDOMDocument createTextNode:]):
881         (-[WKDOMDocument body]):
882         * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
883         (-[WKDOMText data]):
884         (-[WKDOMText setData:]):
885
886 2014-09-30  Chris Dumez  <cdumez@apple.com>
887
888         Use is<>() / downcast<>() for Element
889         https://bugs.webkit.org/show_bug.cgi?id=137241
890
891         Reviewed by Andreas Kling.
892
893         Use is<>() / downcast<>() for Element instead of isElementNode() /
894         toElement().
895
896         * Shared/WebRenderObject.cpp:
897         (WebKit::WebRenderObject::WebRenderObject):
898         * WebProcess/InjectedBundle/API/mac/WKDOMElement.mm:
899         (-[WKDOMElement hasAttribute:]):
900         (-[WKDOMElement getAttribute:]):
901         (-[WKDOMElement setAttribute:value:]):
902         (-[WKDOMElement tagName]):
903         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
904         (WebKit::InjectedBundleNodeHandle::elementBounds):
905         * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
906         (WebKit::InjectedBundleHitTestResult::mediaType):
907         * WebProcess/WebPage/ios/WebPageIOS.mm:
908         (WebKit::WebPage::sendTapHighlightForNodeIfNecessary):
909         (WebKit::WebPage::blurAssistedNode):
910         (WebKit::WebPage::getPositionInformation):
911         (WebKit::nextFocusableElement):
912         (WebKit::WebPage::elementDidFocus):
913
914 2014-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
915
916         REGRESSION(r173929): [GTK] TestInspector fails after r173929
917         https://bugs.webkit.org/show_bug.cgi?id=137247
918
919         Reviewed by Philippe Normand.
920
921         Add WebKitWebInspector:can-attach property to notify when the
922         inspector attach availability changes.
923
924         * UIProcess/API/C/gtk/WKInspectorClientGtk.h:
925         * UIProcess/API/gtk/WebKitWebInspector.cpp:
926         (webkit_web_inspector_class_init): Add WebKitWebInspector:can-attach property.
927         (didChangeAttachAvailability): Emit notify::can-attach.
928         (webkitWebInspectorCreate): Add implementation for didChangeAttachAvailability.
929         (webkit_web_inspector_get_can_attach): Return whether the inspector can be attached.
930         * UIProcess/API/gtk/WebKitWebInspector.h:
931         * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add index of new symbols in 2.8.
932         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
933         * UIProcess/gtk/WebInspectorClientGtk.cpp:
934         (WebKit::WebInspectorClientGtk::didChangeAttachAvailability):
935         * UIProcess/gtk/WebInspectorClientGtk.h:
936         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
937         (WebKit::WebInspectorProxy::platformAttachAvailabilityChanged): Notify the client.
938
939 2014-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
940
941         [GTK] The remote web inspector shows the HTML content as plain text
942         https://bugs.webkit.org/show_bug.cgi?id=137250
943
944         Reviewed by Gustavo Noronha Silva.
945
946         Use GResource API directly to get the resource data, instead of
947         using the GFile API, and use g_content_type_guess() to get the
948         MIME Type.
949
950         * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
951         (WebKit::WebInspectorServer::platformResourceForPath):
952
953 2014-09-30  Carlos Garcia Campos  <cgarcia@igalia.com>
954
955         [GTK] Move GtkPopupMenu implementation to WebPopupMenuProxyGtk
956         https://bugs.webkit.org/show_bug.cgi?id=137193
957
958         Reviewed by Gustavo Noronha Silva.
959
960         GtkPopupMenu was in platform only to have a common implementation to
961         be shared with WebKit1. Now that it's only used by
962         WebPopupMenuProxyGtk in WebKit2, we can simplify the code by
963         merging the implementation directly into WebPopupMenuProxyGtk.
964
965         * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
966         (WebKit::WebPopupMenuProxyGtk::WebPopupMenuProxyGtk):
967         (WebKit::WebPopupMenuProxyGtk::~WebPopupMenuProxyGtk):
968         (WebKit::WebPopupMenuProxyGtk::populatePopupMenu):
969         (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
970         (WebKit::WebPopupMenuProxyGtk::hidePopupMenu):
971         (WebKit::WebPopupMenuProxyGtk::typeAheadFind):
972         (WebKit::WebPopupMenuProxyGtk::resetTypeAheadFindState):
973         (WebKit::WebPopupMenuProxyGtk::selectItemCallback):
974         (WebKit::WebPopupMenuProxyGtk::keyPressEventCallback):
975         * UIProcess/gtk/WebPopupMenuProxyGtk.h:
976         (WebKit::WebPopupMenuProxyGtk::setCurrentlySelectedMenuItem):
977
978 2014-09-29  Christophe Dumez  <cdumez@apple.com>
979
980         Use is<>() / downcast<>() for Document
981         https://bugs.webkit.org/show_bug.cgi?id=137221
982
983         Reviewed by Andreas Kling.
984
985         Use is<>() / downcast<>() for Document instead of isDocumentNode() /
986         toDocument().
987
988         * WebProcess/InjectedBundle/API/mac/WKDOMDocument.mm:
989         (-[WKDOMDocument createElement:]):
990         (-[WKDOMDocument createTextNode:]):
991         (-[WKDOMDocument body]):
992
993 2014-09-29  Commit Queue  <commit-queue@webkit.org>
994
995         Unreviewed, rolling out r174045.
996         https://bugs.webkit.org/show_bug.cgi?id=137231
997
998         Introduced a crash during page loading tests on Mac (Requested
999         by rniwa on #webkit).
1000
1001         Reverted changeset:
1002
1003         "Replace OSObjectPtr with RetainPtr/adoptOS"
1004         https://bugs.webkit.org/show_bug.cgi?id=137158
1005         http://trac.webkit.org/changeset/174045
1006
1007 2014-09-29  Anders Carlsson  <andersca@apple.com>
1008
1009         Set the TBA versions based on the PLATFORM_NAME
1010         https://bugs.webkit.org/show_bug.cgi?id=137226
1011         Follow-up fix for <rdar://problem/17761459>.
1012
1013         Reviewed by Dan Bernstein.
1014
1015         * mac/rewrite-availability-macros.sh:
1016         Turns out that MACOSX_DEPLOYMENT_TARGET is set even for iOS builds,
1017         so set the versions based on the PLATFORM_NAME environment variable.
1018
1019 2014-09-29  Dan Bernstein  <mitz@apple.com>
1020
1021         Build fix.
1022
1023         * WebProcess/WebPage/ios/WebPageIOS.mm:
1024         (WebKit::WebPage::performActionOnElement):
1025
1026 2014-09-27  Andy Estes  <aestes@apple.com>
1027
1028         [iOS] Add basic support for link navigation in WKPDFView
1029         https://bugs.webkit.org/show_bug.cgi?id=137182
1030
1031         Reviewed by Tim Horton.
1032
1033         Teach WKPDFView to navigate to URLs when PDF link annotations are tapped.
1034
1035         * UIProcess/WebPageProxy.cpp:
1036         (WebKit::WebPageProxy::navigateToURLWithSimulatedClick): Sent Messages::WebPage::NavigateToURLWithSimulatedClick.
1037         * UIProcess/WebPageProxy.h:
1038         * UIProcess/ios/WKPDFView.h:
1039         * UIProcess/ios/WKPDFView.mm:
1040         (-[WKPDFView _clearPages]): Removed self as the UIPDFAnnotationControllerDelegate.
1041         (-[WKPDFView _revalidateViews]): Added self as the UIPDFAnnotationControllerDelegate.
1042         (-[WKPDFView annotation:wasTouchedAtPoint:controller:]): Retrieved the URL from the touched annotation,
1043         computed the touched point relative to the WKPDFView and to the screen, and called
1044         navigateToURLWithSimulatedClick() after a 200 ms delay in order to show a soon-to-be-added tap highlight
1045         (this value matches the delay in UIWebPDFView).
1046         * WebProcess/WebPage/WebPage.cpp:
1047         (WebKit::WebPage::navigateToURLWithSimulatedClick): Created a fake single-click MouseEvent and called
1048         FrameLoader::urlSelected(). Creating a mouse event ensures that the navigation appears as a
1049         NavigationTypeLinkClicked in navigation policy delegates.
1050         * WebProcess/WebPage/WebPage.h:
1051         * WebProcess/WebPage/WebPage.messages.in:
1052
1053 2014-09-29  Christophe Dumez  <cdumez@apple.com>
1054
1055         Use the new is<>() / downcast<>() for Text Nodes
1056         https://bugs.webkit.org/show_bug.cgi?id=137188
1057
1058         Reviewed by Darin Adler.
1059
1060         Use the new is<>() / downcast<>() functions for Text Nodes instead of
1061         isText() / toText().
1062
1063         * WebProcess/InjectedBundle/API/mac/WKDOMText.mm:
1064         (-[WKDOMText data]):
1065         (-[WKDOMText setData:]):
1066
1067 2014-09-29  Christophe Dumez  <cdumez@apple.com>
1068
1069         Make is<>() / downcast<>() work for HTMLDocument and its subclasses
1070         https://bugs.webkit.org/show_bug.cgi?id=137169
1071
1072         Reviewed by Darin Adler.
1073
1074         Use is<>() / downcast<>() for HTMLDocument and its subclasses.
1075
1076         * WebProcess/WebPage/WebPage.cpp:
1077         (WebKit::WebPage::pdfDocumentForPrintingFrame):
1078
1079 2014-09-29  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
1080
1081         Fix !ENABLE(INSPECTOR) build after r173929
1082         https://bugs.webkit.org/show_bug.cgi?id=137210
1083
1084         Reviewed by Timothy Hatcher.
1085
1086         * UIProcess/WebProcessProxy.cpp:
1087         (WebKit::WebProcessProxy::getLaunchOptions):
1088
1089 2014-09-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1090
1091         REGRESSION(r172919): WebKitPluginProcess fails to scan GTK+2 plugins after r172919.
1092         https://bugs.webkit.org/show_bug.cgi?id=137191
1093
1094         Reviewed by Philippe Normand.
1095
1096         In r172919 I moved the GTK+ symbols mix check earlier, before the
1097         plugin is loaded and initialized. That made impossible to use the
1098         GTK3 plugin process to scan gtk2 plugins, because we need to load
1099         the plugin to get its metadata. But we don't need to initialize
1100         the plugin to check if it requires GTK2, so we can do that check
1101         in the UI process to decide which plugin process to use.
1102
1103         * Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
1104         (WebKit::NetscapePluginModule::getPluginInfoForLoadedPlugin):
1105         Remove the requires GTK2 check.
1106         (WebKit::NetscapePluginModule::scanPlugin): Don't write
1107         requires-gtk2 to stdout.
1108         * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
1109         (WebKit::pluginRequiresGtk2): Helper function to check if the
1110         given plugin path requires GTK2.
1111         (WebKit::PluginProcessProxy::scanPlugin): Check if the plugin path
1112         requires GTK2 and use WebKitPluginProcess2 in such case, or return
1113         early if GTK2 plugins are not enabled. Log error messages when
1114         something fails scanning the plugin to make it easiert to debug
1115         problems in the future.
1116
1117 2014-09-28  Myles C. Maxfield  <mmaxfield@apple.com>
1118
1119         Replace wkGetGlyphsForCharacters() with CGFontGetGlyphsForUnichars()
1120         https://bugs.webkit.org/show_bug.cgi?id=137197
1121
1122         Reviewed by Alexey Proskuryakov.
1123
1124         No new tests because there is no behavior change.
1125
1126         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1127         (InitWebCoreSystemInterface):
1128         * mac/WebKit2.order:
1129
1130 2014-09-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1131
1132         Use std::unique_ptr for ContextMenuController
1133         https://bugs.webkit.org/show_bug.cgi?id=137178
1134
1135         Reviewed by Darin Adler.
1136
1137         Switch to using std::unique_ptr instead of OwnPtr and PassOwnPtr
1138         for ContextMenuController class. Inherited class is changed by this use as well.
1139
1140         * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1141         (WebKit::WebContextMenuClient::customizeMenu):
1142         * WebProcess/WebCoreSupport/WebContextMenuClient.h:
1143
1144 2014-09-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1145
1146         Move ColorInputType class to std::unique_ptr
1147         https://bugs.webkit.org/show_bug.cgi?id=137173
1148
1149         Reviewed by Darin Adler.
1150
1151         Replace uses of PassOwnPtr in code under ColorInputType class with std::unique_ptr.
1152         Child classes follow this change as well.
1153
1154         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1155         (WebKit::WebChromeClient::createColorChooser):
1156         * WebProcess/WebCoreSupport/WebChromeClient.h:
1157
1158 2014-09-26  Sam Weinig  <sam@webkit.org>
1159
1160         Replace OSObjectPtr with RetainPtr/adoptOS
1161         https://bugs.webkit.org/show_bug.cgi?id=137158
1162
1163         Reviewed by Dan Bernstein.
1164
1165         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:
1166         (DatabaseServiceInitializer):
1167         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
1168         (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
1169         (NetworkServiceInitializer):
1170         * Platform/IPC/Connection.h:
1171         (IPC::Connection::Identifier::Identifier):
1172         * Platform/IPC/mac/ConnectionMac.mm:
1173         (IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog):
1174         (IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
1175         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
1176         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
1177         (PluginServiceInitializer):
1178         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
1179         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
1180         (WebKit::XPCServiceInitializer):
1181         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
1182         (WebKit::XPCServiceInitializerDelegate::checkEntitlements):
1183         (WebKit::XPCServiceInitializerDelegate::hasEntitlement):
1184         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
1185         (WebKit::XPCServiceEventHandler):
1186         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
1187         (WebKit::XPCServiceEventHandler):
1188         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
1189         (WebKit::connectToService):
1190         (WebKit::connectToReExecService):
1191         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
1192         (WebContentServiceInitializer):
1193
1194 2014-09-26  Christophe Dumez  <cdumez@apple.com>
1195
1196         Stop using legacy NODE_TYPE_CASTS() macro for HTML Elements
1197         https://bugs.webkit.org/show_bug.cgi?id=137137
1198
1199         Reviewed by Benjamin Poulain.
1200
1201         Use is<>() / downcast<>() where appropriate.
1202
1203         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
1204         (WebKit::PDFPluginTextAnnotation::value):
1205         * WebProcess/Plugins/PluginView.cpp:
1206         (WebKit::PluginView::initializePlugin):
1207         (WebKit::PluginView::pluginSnapshotTimerFired):
1208         (WebKit::PluginView::pluginDidReceiveUserInteraction):
1209         * WebProcess/WebPage/WebPage.cpp:
1210         (WebKit::WebPage::createPlugin):
1211         * WebProcess/WebPage/ios/WebPageIOS.mm:
1212         (WebKit::WebPage::performActionOnElement):
1213
1214 2014-09-26  Anders Carlsson  <andersca@apple.com>
1215
1216         Add API for loading local files
1217         https://bugs.webkit.org/show_bug.cgi?id=137153
1218         rdar://problem/17761459
1219
1220         Reviewed by Oliver Hunt.
1221
1222         * UIProcess/API/Cocoa/WKWebView.h:
1223         * UIProcess/API/Cocoa/WKWebView.mm:
1224         (-[WKWebView loadFileURL:allowingReadAccessToURL:]):
1225         Load the file, wrapping the navigation ID in a WKNavigation using createLoadRequestNavigation.
1226
1227         * UIProcess/WebPageProxy.cpp:
1228         (WebKit::WebPageProxy::loadFile):
1229         * UIProcess/WebPageProxy.h:
1230         Return the navigation ID (or 0 if the navigation failed).
1231
1232 2014-09-26  Timothy Hatcher  <timothy@apple.com>
1233
1234         Add WKInspector back function stubs that went missing from r173929.
1235         My changes to WKDeprecatedFunctions.cpp got lost in the shuffle.
1236
1237         * Shared/API/c/WKDeprecatedFunctions.cpp:
1238         (WKInspectorIsDebuggingJavaScript):
1239         (WKInspectorToggleJavaScriptDebugging):
1240         (WKInspectorIsProfilingJavaScript):
1241         (WKInspectorToggleJavaScriptProfiling):
1242
1243 2014-09-26  Carlos Garcia Campos  <cgarcia@igalia.com>
1244
1245         REGRESSION(r173929): Web inspector doesn't work after r173929 when INSPECTOR_SERVER is enabled
1246         https://bugs.webkit.org/show_bug.cgi?id=137150
1247
1248         Reviewed by Timothy Hatcher.
1249
1250         The inspector doesn't show any information about the inspected
1251         page because it's sending messages to a remote frontend that is
1252         not running.
1253
1254         * WebProcess/WebPage/WebInspector.cpp:
1255         (WebKit::WebInspector::WebInspector): Initialize m_remoteFrontendConnected.
1256         (WebKit::WebInspector::sendMessageToFrontend): Send
1257         SendMessageToRemoteFrontend message to the UI process when remote
1258         frontend is connected, or SendMessageToFrontend message to
1259         WebInspectorUI otherwise.
1260         (WebKit::WebInspector::remoteFrontendConnected): Set m_remoteFrontendConnected to true.
1261         (WebKit::WebInspector::remoteFrontendDisconnected): Set m_remoteFrontendConnected to false.
1262         * WebProcess/WebPage/WebInspector.h:
1263
1264 2014-09-26  Alberto Garcia  <berto@igalia.com>
1265
1266         [GTK] Don't include full path names in WebKitEnumTypes.h
1267         https://bugs.webkit.org/show_bug.cgi?id=137148
1268
1269         Reviewed by Carlos Garcia Campos.
1270
1271         Replace @filename@ with @basename@ in the template, since we don't
1272         want to include the full path name in the generated header.
1273
1274         * UIProcess/API/gtk/WebKitEnumTypes.h.template:
1275
1276 2014-09-25  Yusuke Suzuki  <utatane.tea@gmail.com>
1277
1278         Clean up unused parameter warnings
1279         https://bugs.webkit.org/show_bug.cgi?id=137107
1280
1281         Reviewed by Benjamin Poulain.
1282
1283         * Scripts/webkit/messages.py:
1284         (generate_message_handler):
1285         Sometimes generated code doesn't use `connection` parameter. So `UNUSED_PARAM(connection)` is necessary.
1286         * UIProcess/API/C/WKPage.cpp:
1287         (WKPageIsPlayingAudio):
1288
1289 2014-09-25  Christophe Dumez  <cdumez@apple.com>
1290
1291         Use is<HTML*Element>() instead of isHTML*Element() - Part 2
1292         https://bugs.webkit.org/show_bug.cgi?id=137103
1293
1294         Reviewed by Benjamin Poulain.
1295
1296         Use is<HTML*Element>() instead of isHTML*Element().
1297
1298         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1299         (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
1300         * WebProcess/WebPage/WebFrame.cpp:
1301         (WebKit::WebFrame::containsAnyFormElements):
1302         * WebProcess/WebPage/WebPage.cpp:
1303         (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
1304         * WebProcess/WebPage/ios/WebPageIOS.mm:
1305         (WebKit::WebPage::getAssistedNodeInformation):
1306
1307 2014-09-25  Anders Carlsson  <andersca@apple.com>
1308
1309         Expand WK_MAC_TBA and WK_IOS_TBA to the current deployment target version (or NA).
1310         https://bugs.webkit.org/show_bug.cgi?id=137127
1311         Part of rdar://problem/17761459.
1312
1313         Reviewed by Dan Bernstein.
1314
1315         * mac/rewrite-availability-macros.sh:
1316
1317 2014-09-25  Tim Horton  <timothy_horton@apple.com>
1318
1319         CommitLayerTree decode fails in 32-bit apps on 64-bit devices (TransformationMatrix alignment differs)
1320         https://bugs.webkit.org/show_bug.cgi?id=136444
1321         <rdar://problem/17952526>
1322
1323         Reviewed by Anders Carlsson.
1324
1325         * Shared/WebCoreArgumentCoders.cpp:
1326         (IPC::ArgumentCoder<TransformationMatrix>::encode):
1327         (IPC::ArgumentCoder<TransformationMatrix>::decode):
1328         Stop using SimpleArgumentCoder to encode/decode TransformationMatrix,
1329         because the alignment of TransformationMatrix differs between architectures,
1330         and there's no guarantee that both sides of a connection are the same architecture.
1331
1332 2014-09-25  Alberto Garcia  <berto@igalia.com>
1333
1334         Unreviewed typo fix.
1335
1336         * UIProcess/API/C/soup/WKContextSoup.cpp:
1337
1338 2014-09-25  Shivakumar JM  <shiva.jm@samsung.com>
1339
1340         [WebKit2] Fix build warning in WebKit2/WebProcess module.
1341         https://bugs.webkit.org/show_bug.cgi?id=137105
1342
1343         Reviewed by Csaba Osztrogonác.
1344
1345         Fix build warning by removing unused parameter names
1346
1347         * WebProcess/WebPage/WebInspector.h:
1348         (WebKit::WebInspector::didReceiveInvalidMessage):
1349         * WebProcess/WebPage/WebInspectorUI.h:
1350         (WebKit::WebInspectorUI::didReceiveInvalidMessage):
1351
1352 2014-09-24  Sam Weinig  <sam@webkit.org>
1353
1354         Remove incorrect use of the BKSProcessAssertionAllowSuspendOnSleep flag for process suspension in iOS WebKit2
1355         <rdar://problem/18400566>
1356         https://bugs.webkit.org/show_bug.cgi?id=137077
1357
1358         Reviewed by Anders Carlsson.
1359
1360         * UIProcess/ios/ProcessAssertionIOS.mm:
1361         Remove use of the BKSProcessAssertionAllowSuspendOnSleep which does not do what we expect, and instead
1362         causes processes to be suspended "forever" after sleep.
1363
1364 2014-09-24  Christophe Dumez  <cdumez@apple.com>
1365
1366         Use is<HTML*Element>() instead of isHTML*Element() - Part 1
1367         https://bugs.webkit.org/show_bug.cgi?id=137068
1368
1369         Reviewed by Ryosuke Niwa.
1370
1371         Start using is<HTML*Element>() instead of isHTML*Element().
1372         Remaining usages will be updated in a follow-up patch to
1373         reduce the size of the change.
1374
1375         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1376         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementValueForUser):
1377         (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutofilled):
1378         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutofilled):
1379         (WebKit::InjectedBundleNodeHandle::htmlInputElementLastChangeWasUserEdit):
1380         (WebKit::InjectedBundleNodeHandle::htmlTextAreaElementLastChangeWasUserEdit):
1381         (WebKit::InjectedBundleNodeHandle::isTextField):
1382         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1383         (WebKit::WebChromeClient::focusedElementChanged):
1384         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1385         (WebKit::WebEditorClient::textFieldDidBeginEditing):
1386         (WebKit::WebEditorClient::textFieldDidEndEditing):
1387         (WebKit::WebEditorClient::textDidChangeInTextField):
1388         (WebKit::WebEditorClient::textDidChangeInTextArea):
1389         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
1390         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
1391         * WebProcess/WebPage/WebFrame.cpp:
1392         (WebKit::WebFrame::containsAnyFormControls):
1393         * WebProcess/WebPage/ios/WebPageIOS.mm:
1394         (WebKit::WebPage::setAssistedNodeValue):
1395         (WebKit::WebPage::setAssistedNodeValueAsNumber):
1396         (WebKit::WebPage::setAssistedNodeSelectedIndex):
1397
1398 2014-09-23  Ada Chan  <adachan@apple.com>
1399
1400         Add stub implementation of WKPageIsPlayingAudio().
1401         https://bugs.webkit.org/show_bug.cgi?id=137044
1402
1403         Reviewed by Anders Carlsson.
1404
1405         Also add an isPlayingAudioDidChange callback to WKPageUIClient.
1406
1407         * UIProcess/API/C/WKPage.cpp:
1408         (WKPageIsPlayingAudio):
1409         * UIProcess/API/C/WKPagePrivate.h:
1410         * UIProcess/API/C/WKPageUIClient.h:
1411
1412 2014-09-21  Timothy Hatcher  <timothy@apple.com>
1413
1414         Make the Web Inspector use a separate web process.
1415
1416         https://bugs.webkit.org/show_bug.cgi?id=135120
1417
1418         Reviewed by Anders Carlsson.
1419
1420         * CMakeLists.txt:
1421         * DerivedSources.make:
1422         * PlatformEfl.cmake:
1423         * PlatformGTK.cmake:
1424         * WebKit2.xcodeproj/project.pbxproj:
1425         Added new WebInspectorUI files and removed WebInspectorFrontendClient.cpp.
1426
1427         * Shared/APIObject.h: Added BundleInspectorUI.
1428
1429         * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.mm:
1430         (WebKit::ChildProcessMainDelegate::getExtraInitializationData):
1431         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
1432         (WebKit::XPCServiceInitializerDelegate::getExtraInitializationData):
1433         Add support for "inspector-process" data, a boolean that is used by
1434         WebProcess::initializeProcessName.
1435
1436         * UIProcess/API/C/WKInspector.cpp:
1437         (WKInspectorIsDebuggingJavaScript):
1438         (WKInspectorToggleJavaScriptDebugging):
1439         (WKInspectorIsProfilingJavaScript):
1440         (WKInspectorToggleJavaScriptProfiling):
1441         * UIProcess/API/C/WKInspector.h:
1442         Stub out functions we don't support but need to keep for nightly compatibility.
1443
1444         * UIProcess/WebInspectorProxy.cpp:
1445         (WebKit::WebInspectorPageGroups::createInspectorPageGroup):
1446         (WebKit::WebInspectorProxy::WebInspectorProxy):
1447         (WebKit::WebInspectorProxy::invalidate):
1448         (WebKit::WebInspectorProxy::connect):
1449         (WebKit::WebInspectorProxy::showConsole):
1450         (WebKit::WebInspectorProxy::showResources):
1451         (WebKit::WebInspectorProxy::showMainResourceForFrame):
1452         (WebKit::WebInspectorProxy::attach):
1453         (WebKit::WebInspectorProxy::detach):
1454         (WebKit::WebInspectorProxy::inspectorContext):
1455         (WebKit::WebInspectorProxy::dispatchMessageFromRemoteFrontend):
1456         (WebKit::WebInspectorProxy::eagerlyCreateInspectorPage):
1457         (WebKit::WebInspectorProxy::createInspectorPage):
1458         (WebKit::WebInspectorProxy::open):
1459         (WebKit::WebInspectorProxy::didClose):
1460         (WebKit::WebInspectorProxy::attachAvailabilityChanged):
1461         * UIProcess/WebInspectorProxy.h:
1462         (WebKit::WebInspectorProxy::isConnected):
1463         (WebKit::WebInspectorProxy::canAttach):
1464         * UIProcess/WebInspectorProxy.messages.in:
1465         * UIProcess/efl/WebInspectorProxyEfl.cpp:
1466         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1467         * UIProcess/gtk/WebInspectorProxyGtk.cpp:
1468         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1469         (WebKit::WebInspectorProxy::platformAttach):
1470         * UIProcess/mac/WebInspectorProxyMac.mm:
1471         (-[WKWebInspectorProxyObjCAdapter close]):
1472         (WebKit::WebInspectorProxy::platformCreateInspectorPage):
1473         (WebKit::WebInspectorProxy::platformDidClose):
1474         (WebKit::WebInspectorProxy::platformHide):
1475         (WebKit::WebInspectorProxy::platformSave):
1476         (WebKit::WebInspectorProxy::platformAppend):
1477         (WebKit::WebInspectorProxy::platformAttach):
1478         Changed how the Inspector page is created by making it in a new WebContext for
1479         the Inspector. This removes us from the main process pool and guarantees no process
1480         sharing for our user interface. Also send new WebInspectorUI messages to the Inspector
1481         page and not the inspected page when appropriate.
1482
1483         * UIProcess/WebProcessProxy.cpp:
1484         (WebKit::WebProcessProxy::getLaunchOptions): Add "inspector-process" to extraInitializationData
1485         if the context is the Inspector context. This is used by WebProcess::initializeProcessName.
1486
1487         * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1488         (WebKit::WebInspectorClient::openInspectorFrontend):
1489         (WebKit::WebInspectorClient::closeInspectorFrontend):
1490         (WebKit::WebInspectorClient::bringFrontendToFront):
1491         * WebProcess/WebCoreSupport/WebInspectorClient.h:
1492         Remove the InspectorFrontendChannel class from WebInspectorClient and clean up a little.
1493         InspectorFrontendChannel implementation moved to WebInspector.
1494
1495         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp: Removed. Superseded by WebInspectorUI.
1496
1497         * WebProcess/WebPage/WebInspector.cpp:
1498         (WebKit::WebInspector::create):
1499         (WebKit::WebInspector::WebInspector):
1500         (WebKit::WebInspector::createInspectorPage):
1501         (WebKit::WebInspector::closeFrontend):
1502         (WebKit::WebInspector::openInNewTab):
1503         (WebKit::WebInspector::showConsole):
1504         (WebKit::WebInspector::showResources):
1505         (WebKit::WebInspector::showMainResourceForFrame):
1506         (WebKit::WebInspector::startPageProfiling):
1507         (WebKit::WebInspector::stopPageProfiling):
1508         (WebKit::WebInspector::canAttachWindow):
1509         (WebKit::WebInspector::updateDockingAvailability):
1510         (WebKit::WebInspector::sendMessageToBackend):
1511         (WebKit::WebInspector::sendMessageToFrontend):
1512         (WebKit::WebInspector::remoteFrontendConnected):
1513         (WebKit::WebInspector::remoteFrontendDisconnected):
1514         * WebProcess/WebPage/WebInspector.h:
1515         (WebKit::WebInspector::didClose):
1516         (WebKit::WebInspector::didReceiveInvalidMessage):
1517         (WebKit::WebInspector::setAttached):
1518         * WebProcess/WebPage/WebInspector.messages.in:
1519         Stop taking an optional InspectorFrontendChannel and inherit it instead. Create a connection that
1520         can be passed to the other web process for WebInspectorUI to use. Stop referencing Inspector's page
1521         directly, since it is in another process now.
1522
1523         * WebProcess/WebPage/WebInspectorUI.cpp: Added.
1524         (WebKit::WebInspectorUI::create):
1525         (WebKit::WebInspectorUI::WebInspectorUI):
1526         (WebKit::WebInspectorUI::establishConnection):
1527         (WebKit::WebInspectorUI::windowObjectCleared):
1528         (WebKit::WebInspectorUI::frontendLoaded):
1529         (WebKit::WebInspectorUI::moveWindowBy):
1530         (WebKit::WebInspectorUI::bringToFront):
1531         (WebKit::WebInspectorUI::closeWindow):
1532         (WebKit::WebInspectorUI::requestSetDockSide):
1533         (WebKit::WebInspectorUI::setDockSide):
1534         (WebKit::WebInspectorUI::changeAttachedWindowHeight):
1535         (WebKit::WebInspectorUI::changeAttachedWindowWidth):
1536         (WebKit::WebInspectorUI::setToolbarHeight):
1537         (WebKit::WebInspectorUI::openInNewTab):
1538         (WebKit::WebInspectorUI::save):
1539         (WebKit::WebInspectorUI::append):
1540         (WebKit::WebInspectorUI::inspectedURLChanged):
1541         (WebKit::WebInspectorUI::showConsole):
1542         (WebKit::WebInspectorUI::showResources):
1543         (WebKit::WebInspectorUI::showMainResourceForFrame):
1544         (WebKit::WebInspectorUI::startPageProfiling):
1545         (WebKit::WebInspectorUI::stopPageProfiling):
1546         (WebKit::WebInspectorUI::didSave):
1547         (WebKit::WebInspectorUI::didAppend):
1548         (WebKit::WebInspectorUI::sendMessageToFrontend):
1549         (WebKit::WebInspectorUI::sendMessageToBackend):
1550         (WebKit::WebInspectorUI::evaluateCommandOnLoad):
1551         (WebKit::WebInspectorUI::evaluateExpressionOnLoad):
1552         (WebKit::WebInspectorUI::evaluatePendingExpressions):
1553         * WebProcess/WebPage/WebInspectorUI.h: Added.
1554         (WebKit::WebInspectorUI::page):
1555         (WebKit::WebInspectorUI::didClose):
1556         (WebKit::WebInspectorUI::didReceiveInvalidMessage):
1557         (WebKit::WebInspectorUI::attachedBottom):
1558         (WebKit::WebInspectorUI::attachedRight):
1559         (WebKit::WebInspectorUI::detached):
1560         (WebKit::WebInspectorUI::evaluateCommandOnLoad):
1561         * WebProcess/WebPage/WebInspectorUI.messages.in: Added.
1562         * WebProcess/WebPage/efl/WebInspectorUIEfl.cpp: Added.
1563         (WebKit::WebInspectorUI::canSave):
1564         (WebKit::WebInspectorUI::localizedStringsURL):
1565         * WebProcess/WebPage/gtk/WebInspectorUIGtk.cpp: Added.
1566         (WebKit::WebInspectorUI::canSave):
1567         (WebKit::WebInspectorUI::localizedStringsURL):
1568         * WebProcess/WebPage/mac/WebInspectorUIMac.mm: Added.
1569         (WebKit::WebInspectorUI::canSave):
1570         (WebKit::WebInspectorUI::localizedStringsURL):
1571         Implement the InspectorFrontendClient and handle a connection to the inspected page's WebInspector.
1572
1573         * WebProcess/WebPage/WebPage.cpp:
1574         (WebKit::WebPage::WebPage):
1575         (WebKit::WebPage::~WebPage):
1576         (WebKit::WebPage::inspector):
1577         (WebKit::WebPage::inspectorUI):
1578         (WebKit::WebPage::didReceiveMessage):
1579         Setup as a listener for WebInspectorUI messages.
1580
1581         * WebProcess/WebPage/WebPage.h:
1582         (WebKit::WebPage::isInspectorPage): It is an Inspector page if we have a m_inspectorUI.
1583
1584         * WebProcess/cocoa/WebProcessCocoa.mm:
1585         (WebKit::WebProcess::initializeProcessName):
1586         Name the process "%@ Web Inspector" if it is an Inspector content process. Processes in that
1587         context are not shared with multiple pages.
1588
1589 2014-09-24  Dean Jackson  <dino@apple.com>
1590
1591         Add a deprecated stub for WKPreferencesSetMultithreadedWebGLEnabled (and Get)
1592         https://bugs.webkit.org/show_bug.cgi?id=137071
1593
1594         Reviewed by Brent Fulgham.
1595
1596         Put in stubs for WKPreferencesSetMultithreadedWebGLEnabled and
1597         WKPreferencesGetMultithreadedWebGLEnabled. These were removed in
1598         r173776 but are still needed for nightly builds to link
1599         (or will be once Yosemite nightlies are available).
1600
1601         * Shared/API/c/WKDeprecatedFunctions.cpp:
1602         (WKPreferencesSetMultithreadedWebGLEnabled):
1603         (WKPreferencesGetMultithreadedWebGLEnabled):
1604
1605 2014-09-24  Daniel Bates  <dabates@apple.com>
1606
1607         [iOS] Fix the iOS build after <http://trac.webkit.org/changeset/173893>
1608         (https://bugs.webkit.org/show_bug.cgi?id=137007)
1609
1610         Add closing parenthesis characters that were inadvertently removed in <http://trac.webkit.org/changeset/173893>.
1611
1612         * WebProcess/WebPage/ios/WebPageIOS.mm:
1613         (WebKit::WebPage::setAssistedNodeSelectedIndex):
1614         (WebKit::WebPage::getAssistedNodeInformation):
1615
1616 2014-09-23  Christophe Dumez  <cdumez@apple.com>
1617
1618         Unreviewed build fix after r173893.
1619
1620         Partial revert of r173893 to fix debug builds.
1621
1622         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
1623         (WebKit::PDFPluginTextAnnotation::value):
1624         * WebProcess/Plugins/PluginView.cpp:
1625         (WebKit::PluginView::initializePlugin):
1626         (WebKit::PluginView::pluginSnapshotTimerFired):
1627         (WebKit::PluginView::pluginDidReceiveUserInteraction):
1628         * WebProcess/WebPage/WebPage.cpp:
1629         (WebKit::WebPage::createPlugin):
1630
1631 2014-09-23  Chris Dumez  <cdumez@apple.com>
1632
1633         Use downcast<HTML*Element>() instead of toHTML*Element()
1634         https://bugs.webkit.org/show_bug.cgi?id=137007
1635
1636         Reviewed by Benjamin Poulain.
1637
1638         Use downcast<HTML*Element>() instead of toHTML*Element().
1639
1640         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1641         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementValueForUser):
1642         (WebKit::InjectedBundleNodeHandle::isHTMLInputElementAutofilled):
1643         (WebKit::InjectedBundleNodeHandle::setHTMLInputElementAutofilled):
1644         (WebKit::InjectedBundleNodeHandle::htmlInputElementLastChangeWasUserEdit):
1645         (WebKit::InjectedBundleNodeHandle::htmlTextAreaElementLastChangeWasUserEdit):
1646         (WebKit::InjectedBundleNodeHandle::isTextField):
1647         (WebKit::InjectedBundleNodeHandle::htmlTableCellElementCellAbove):
1648         (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
1649         * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
1650         (WebKit::PDFPluginChoiceAnnotation::commit):
1651         * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
1652         (WebKit::PDFPluginTextAnnotation::createAnnotationElement):
1653         (WebKit::PDFPluginTextAnnotation::value):
1654         * WebProcess/Plugins/PluginView.cpp:
1655         (WebKit::PluginView::initializePlugin):
1656         (WebKit::PluginView::pluginSnapshotTimerFired):
1657         (WebKit::PluginView::pluginDidReceiveUserInteraction):
1658         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1659         (WebKit::WebChromeClient::focusedElementChanged):
1660         * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1661         (WebKit::WebEditorClient::textFieldDidBeginEditing):
1662         (WebKit::WebEditorClient::textFieldDidEndEditing):
1663         (WebKit::WebEditorClient::textDidChangeInTextField):
1664         (WebKit::WebEditorClient::textDidChangeInTextArea):
1665         (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
1666         (WebKit::WebEditorClient::textWillBeDeletedInTextField):
1667         * WebProcess/WebPage/WebPage.cpp:
1668         (WebKit::WebPage::createPlugin):
1669         * WebProcess/WebPage/ios/WebPageIOS.mm:
1670         (WebKit::WebPage::setAssistedNodeValue):
1671         (WebKit::WebPage::setAssistedNodeValueAsNumber):
1672         (WebKit::WebPage::setAssistedNodeSelectedIndex):
1673         (WebKit::isAssistableNode): Deleted.
1674         (WebKit::WebPage::getAssistedNodeInformation): Deleted.
1675
1676 2014-09-23  Jer Noble  <jer.noble@apple.com>
1677
1678         REGRESSION (r171197): Clip's content is drawn behind Safari window when entering Full Screen youtube html5 first time
1679         https://bugs.webkit.org/show_bug.cgi?id=137029
1680
1681         Reviewed by Brent Fulgham.
1682
1683         In r171197, we ordered the full screen window on- and off-screen so that the fullscreen animation went to the
1684         correct screen, which introduced a subtle glitch at the beginning and end of an animation. For entering, ensure
1685         that the window is scaled to its starting size before ordering on-screen. For exiting, order the window off-
1686         screen before resetting its clipping rect.
1687
1688         * UIProcess/mac/WKFullScreenWindowController.mm:
1689         (-[WKFullScreenWindowController beganEnterFullScreenWithInitialFrame:finalFrame:]):
1690         (-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
1691
1692 2014-09-23  Joseph Pecoraro  <pecoraro@apple.com>
1693
1694         Web Inspector: Should be able to attach a debugger to a JSContext before anything is executed
1695         https://bugs.webkit.org/show_bug.cgi?id=136893
1696
1697         Reviewed by Timothy Hatcher.
1698
1699         * WebProcess/WebPage/WebInspector.cpp:
1700         (WebKit::WebInspector::remoteFrontendConnected):
1701
1702 2014-09-22  Daniel Bates  <dabates@apple.com>
1703
1704         [Cocoa] Add UI delegate callback when window.close() is called
1705         https://bugs.webkit.org/show_bug.cgi?id=137008
1706         <rdar://problem/17801001>
1707
1708         Reviewed by Anders Carlsson.
1709
1710         Implement support infrastructure to notify the UI client when window.close() is called.
1711
1712         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Added method declaration for -_webViewClose:.
1713         * UIProcess/Cocoa/UIDelegate.h: Added override declaration for API::UIClient::close().
1714         * UIProcess/Cocoa/UIDelegate.mm:
1715         (WebKit::UIDelegate::setDelegate): Wire up delegate method to Objective-C selector, -[WKUIDelegatePrivate _webViewClose:].
1716         (WebKit::UIDelegate::UIClient::close): Added; turns around and calls -[WKUIDelegatePrivate _webViewClose:] (if applicable).
1717
1718 2014-09-21  Chris Dumez  <cdumez@apple.com>
1719
1720         Generate Element casting helper functions
1721         https://bugs.webkit.org/show_bug.cgi?id=136839
1722
1723         Reviewed by Darin Adler.
1724
1725         Use JSXXX::toWrapped() instead of toXXX() function.
1726
1727         * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1728         (WebKit::InjectedBundleNodeHandle::getOrCreate):
1729         * WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
1730         (WebKit::InjectedBundleRangeHandle::getOrCreate):
1731         * WebProcess/InjectedBundle/InjectedBundle.cpp:
1732         (WebKit::InjectedBundle::webNotificationID):
1733
1734 2014-09-19  Ryosuke Niwa  <rniwa@webkit.org>
1735
1736         WebContent crash in WebKit::WebPage::expandedRangeFromHandle
1737         https://bugs.webkit.org/show_bug.cgi?id=136969
1738
1739         Reviewed by David Kilzer.
1740
1741         The crash was caused by m_currentBlockSelection and frame.selection().selection().toNormalizedRange()
1742         both being null and the subsequent lines of code assuming currentRange to be not null.
1743
1744         Replace the assertion by an early exit since the range could be null here.
1745
1746         In the future, we should figure out if there are other things we need to do in addition
1747         to checking the nullity when this race condition is hit.
1748
1749         * WebProcess/WebPage/ios/WebPageIOS.mm:
1750         (WebKit::WebPage::computeExpandAndShrinkThresholdsForHandle):
1751
1752 2014-09-19  Dean Jackson  <dino@apple.com>
1753
1754         Multithreaded WebGL is a bad idea - remove it
1755         https://bugs.webkit.org/show_bug.cgi?id=136964
1756         <rdar://problem/18399858>
1757
1758         Reviewed by Brent Fulgham.
1759
1760         Remove the setting to allow multithreaded WebGL.
1761
1762         * Shared/WebPreferencesDefinitions.h:
1763         * UIProcess/API/C/WKPreferences.cpp:
1764         (WKPreferencesSetMultithreadedWebGLEnabled): Deleted.
1765         (WKPreferencesGetMultithreadedWebGLEnabled): Deleted.
1766         * UIProcess/API/C/WKPreferencesRefPrivate.h:
1767         * WebProcess/WebPage/WebPage.cpp:
1768         (WebKit::WebPage::updatePreferences):
1769
1770 2014-09-19  Simon Fraser  <simon.fraser@apple.com>
1771
1772         Provide a default argument for the most commonly used HitTestRequest variant
1773         https://bugs.webkit.org/show_bug.cgi?id=136653
1774
1775         Reviewed by Darin Adler.
1776
1777         Make the default HitTestRequest flags be ReadOnly | Active | DisallowShadowContent
1778         and change call sites using the default flags to use a HitTestRequest temporary.
1779
1780         * WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
1781         (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
1782         * WebProcess/WebPage/ios/WebPageIOS.mm:
1783         (WebKit::WebPage::dynamicViewportSizeUpdate):
1784
1785 2014-09-19  Daniel Bates  <dabates@apple.com>
1786
1787         Always assume internal SDK when building configuration Production
1788         https://bugs.webkit.org/show_bug.cgi?id=136925
1789         <rdar://problem/18362399>
1790
1791         Reviewed by Dan Bernstein.
1792
1793         As a side effect of this change we will always enable ENABLE_TOUCH_EVENTS, ENABLE_IOS_{GESTURE, TOUCH}_EVENTS,
1794         and ENABLE_XSLT when either building configuration Production or building with the Internal SDK.
1795
1796         * Configurations/Base.xcconfig:
1797
1798 2014-09-19  Simon Fraser  <simon.fraser@apple.com>
1799
1800         Fix the Mac Mavericks build. Only iOS cares about fencing.
1801
1802         * Platform/mac/LayerHostingContext.h:
1803         * Platform/mac/LayerHostingContext.mm:
1804
1805 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1806
1807         [GTK] Missing inspector files in the tarball
1808         https://bugs.webkit.org/show_bug.cgi?id=136952
1809
1810         Reviewed by Gustavo Noronha Silva.
1811
1812         * PlatformGTK.cmake: Use APPEND instead of GLOB to add individual
1813         and generated files to the list of inspector files.
1814
1815 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1816
1817         Webkitgtk 2.5.3: tarball contains APPLE LICENSE file - stating not distributable
1818         https://bugs.webkit.org/show_bug.cgi?id=136632
1819
1820         Reviewed by Gustavo Noronha Silva.
1821
1822         * PlatformGTK.cmake: Use only the icons from the gtk directory since they are free.
1823
1824 2014-09-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1825
1826         [GTK] generate-inspector-gresource-manifest.py should receive the list of files from the makefile
1827         https://bugs.webkit.org/show_bug.cgi?id=136943
1828
1829         Reviewed by Philippe Normand.
1830
1831         * PlatformGTK.cmake: Fix the inspector file list and pass it to
1832         the generate-inspector-gresource-manifest.py script.
1833
1834 2014-09-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1835
1836         [GTK] Dot not allow to create delete-on-destroy GMainLoopSources
1837         https://bugs.webkit.org/show_bug.cgi?id=136923
1838
1839         Reviewed by Gustavo Noronha Silva.
1840
1841         * Platform/gtk/WorkQueueGtk.cpp:
1842         (WorkQueue::dispatch): Use GMainLoopSource::scheduleAndDeleteOnDestroy().
1843         (WorkQueue::dispatchAfter): Use GMainLoopSource::scheduleAfterDelayAndDeleteOnDestroy().
1844
1845 2014-09-18  Ryuan Choi  <ryuan.choi@gmail.com>
1846
1847         [EFL][CoordinatedGraphics] Remove setBackgroundColor message
1848         https://bugs.webkit.org/show_bug.cgi?id=136824
1849
1850         Reviewed by Gyuyoung Kim.
1851
1852         CoordinatedGraphics used setBackgroundColor() to draw the background of contents
1853         although tiles are not ready.
1854
1855         This patch removes setBackgroundColor() and uses pageExtendedBackgroundColor()
1856         which provides similar functionality.
1857
1858         * UIProcess/API/efl/EwkView.cpp:
1859         Enables or disables WKPageSetBackgroundExtendsBeyondPage to use pageExtendedBackgroundColor()
1860         (EwkView::EwkView):
1861         (EwkView::setBackgroundColor):
1862         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp:
1863         (WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
1864         (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext): Passed pageExtendedBackgroundColor.
1865         (WebCore::CoordinatedGraphicsScene::paintToGraphicsContext): Ditto.
1866         (WebCore::CoordinatedGraphicsScene::setBackgroundColor): Deleted.
1867         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h:
1868         (WebCore::CoordinatedGraphicsScene::setDrawsBackground): Deleted.
1869         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
1870         (WebKit::CoordinatedLayerTreeHostProxy::setBackgroundColor): Deleted.
1871         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
1872         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
1873         * UIProcess/CoordinatedGraphics/WebView.cpp:
1874         (WebKit::WebView::paintToCurrentGLContext):
1875         * UIProcess/WebPageProxy.cpp:
1876         (WebKit::WebPageProxy::pageExtendedBackgroundColorDidChange):
1877         Refactored to use const reference for the Color parameter.
1878         * UIProcess/WebPageProxy.h:
1879         * UIProcess/efl/WebViewEfl.cpp:
1880         (WebKit::WebViewEfl::paintToCairoSurface):
1881         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1882         (WebKit::WebChromeClient::pageExtendedBackgroundColorDidChange):
1883         Added PLATFORM(EFL) to pass PageExtendedBackgroundColorDidChange message.
1884         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
1885         (WebKit::CoordinatedLayerTreeHost::setBackgroundColor): Deleted.
1886         * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1887         * WebProcess/WebPage/LayerTreeHost.h:
1888         (WebKit::LayerTreeHost::setBackgroundColor): Deleted.
1889         * WebProcess/WebPage/WebPage.cpp:
1890         (WebKit::WebPage::mainFrameDidLayout):
1891
1892 2014-09-18  Jeremy Jones  <jeremyj@apple.com>
1893
1894         Improve fullscreen video rotation animation.
1895         https://bugs.webkit.org/show_bug.cgi?id=136870
1896
1897         Reviewed by Simon Fraser.
1898
1899         Remove WKCAContext from LayerHostingContext and use a fencePort to synchronize animation between processes.
1900
1901         * Platform/mac/LayerHostingContext.h: add setFencePort. Remove WKCAContext.
1902         * Platform/mac/LayerHostingContext.mm:
1903         (WebKit::LayerHostingContext::createForPort): Remove WKCAContext.
1904         (WebKit::LayerHostingContext::createForExternalHostingProcess): ditto
1905         (WebKit::LayerHostingContext::setRootLayer): ditto
1906         (WebKit::LayerHostingContext::rootLayer): ditto
1907         (WebKit::LayerHostingContext::contextID): ditto
1908         (WebKit::LayerHostingContext::invalidate): ditto
1909         (WebKit::LayerHostingContext::setColorSpace): ditto
1910         (WebKit::LayerHostingContext::colorSpace): ditto
1911         (WebKit::LayerHostingContext::setFencePort): added
1912         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
1913         (WebKit::WebVideoFullscreenManagerProxy::setVideoLayerFrame): 
1914         * WebProcess/ios/WebVideoFullscreenManager.h:
1915         * WebProcess/ios/WebVideoFullscreenManager.messages.in: add fence port parameter
1916         * WebProcess/ios/WebVideoFullscreenManager.mm: ditto
1917         (WebKit::WebVideoFullscreenManager::didSetupFullscreen): ditto
1918         (WebKit::WebVideoFullscreenManager::setVideoLayerFrameFenced): ditto
1919
1920 2014-09-18  Simon Fraser  <simon.fraser@apple.com>
1921
1922         Avoid divide by zero when we get an empty rect while snapshotting a node
1923         https://bugs.webkit.org/show_bug.cgi?id=136932
1924         rdar://problem/18383473
1925
1926         Reviewed by Dean Jackson.
1927         
1928         renderer()->paintingRootRect() can return an empty rect for some inline configurations,
1929         for example an <a> containing a floated <span>
1930         
1931         When this occurs, avoid a divide by zero and return a null snapshot image.
1932
1933         * WebProcess/WebPage/WebPage.cpp:
1934         (WebKit::WebPage::snapshotNode):
1935
1936 2014-09-18  Carlos Garcia Campos  <cgarcia@igalia.com>
1937
1938         Incorrect pending API request URL when loading an HTML string
1939         https://bugs.webkit.org/show_bug.cgi?id=136913
1940
1941         Reviewed by Alexey Proskuryakov.
1942
1943         Use about:blank as pending API request URL when the given base URL
1944         is empty, otherwise use the given base URL.
1945
1946         * UIProcess/WebPageProxy.cpp:
1947         (WebKit::WebPageProxy::loadHTMLString):
1948
1949 2014-09-18  Tim Horton  <timothy_horton@apple.com>
1950
1951         Occasional unreproducible crashes in MessageReceiverMap::dispatchMessage
1952         https://bugs.webkit.org/show_bug.cgi?id=136909
1953         <rdar://problem/17758325>
1954
1955         Reviewed by Anders Carlsson.
1956
1957         * UIProcess/API/Cocoa/WKWebView.mm:
1958         (-[WKWebView dealloc]):
1959         We're seeing some messages dispatched on the WebContext that end up
1960         attempting to call dispatchMessage on a freed MessageReceiver.
1961         The WKRemoteObjectRegistry message receiver is added to the WebContext
1962         message receiver map, but never removed, despite the WebContext easily
1963         outliving the WKWebView that owns the remote object registry.
1964
1965 2014-09-17  Rohit Kumar  <kumar.rohit@samsung.com>
1966
1967         [EFL][WK2] Use the correct enum for control key in Ewk_Event_Modifiers in ewk_navigation_policy_decision.cpp
1968         https://bugs.webkit.org/show_bug.cgi?id=136740
1969
1970         Reviewed by Gyuyoung Kim.
1971
1972         * UIProcess/API/efl/ewk_navigation_policy_decision.cpp:
1973         (toEwkEventModifiers):
1974
1975 2014-09-17  Daniel Bates  <dabates@apple.com>
1976
1977         Unreviewed, rolling out r173695.
1978
1979         Broke building third-party Legacy WebKit apps; will
1980         investigate offline
1981
1982         Reverted changeset:
1983
1984         "[iOS] Make WebCore build with public iOS SDK"
1985         https://bugs.webkit.org/show_bug.cgi?id=136487
1986         http://trac.webkit.org/changeset/173695
1987
1988 2014-09-17  Simon Fraser  <simon.fraser@apple.com>
1989
1990         Fix an issue that caused video playback to not always use high resolution streams
1991         https://bugs.webkit.org/show_bug.cgi?id=136879
1992         rdar://problem/18316542
1993
1994         Reviewed by Eric Carlson.
1995         
1996         The underlying video framework expects to be able to use -[CALayer convertRect:toLayer:nil] on
1997         the video layer to obtain information about the display resolution of the video,
1998         including the device scale factor. This doesn't work for layers in the web process,
1999         which are remotely hosted into the UI process.
2000         
2001         For now, use a workaround which involves putting a scale transform equivalent to
2002         the device scale factor on the web process layer, and the inverse scale on the 
2003         hosting layer in the UI process.
2004         
2005         We have to do this in two places, for in-page video, and for fullscreen video.
2006
2007         * Shared/mac/RemoteLayerTreeTransaction.h: Add hostingDeviceScaleFactor to the LayerCreation
2008         properties.
2009         * Shared/mac/RemoteLayerTreeTransaction.mm:
2010         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::LayerCreationProperties):
2011         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::encode):
2012         (WebKit::RemoteLayerTreeTransaction::LayerCreationProperties::decode):
2013         * UIProcess/ios/RemoteLayerTreeHostIOS.mm:
2014         (-[WKRemoteView initWithFrame:contextID:hostingDeviceScaleFactor:]): Set the inverse scale
2015         transform on the layer.
2016         (WebKit::RemoteLayerTreeHost::createLayer):
2017         (-[WKRemoteView initWithFrame:contextID:]): Deleted.
2018         * UIProcess/ios/WebVideoFullscreenManagerProxy.h:
2019         * UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
2020         * UIProcess/ios/WebVideoFullscreenManagerProxy.mm:
2021         (WebKit::WebVideoFullscreenManagerProxy::setupFullscreenWithID):
2022         * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
2023         (WebKit::PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
2024         * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
2025         (WebKit::RemoteLayerTreeContext::deviceScaleFactor):
2026         * WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:
2027         (WebKit::RemoteLayerTreeContext::layerWasCreated):
2028         * WebProcess/ios/WebVideoFullscreenManager.mm:
2029         (WebKit::WebVideoFullscreenManager::enterFullscreenForNode):
2030         (WebKit::WebVideoFullscreenManager::didSetupFullscreen):
2031
2032 2014-09-17  Gavin Barraclough  <baraclough@apple.com>
2033
2034         Aways have a PageThrottler (sometimes have a UserActivity::Impl)
2035         https://bugs.webkit.org/show_bug.cgi?id=136892
2036
2037         Reviewed by Geoffrey Garen.
2038
2039         Some instances of Page have a PageThrottler to track activity on the Page, and some do not.
2040         (Specifically, those created from WebPage in WK2 do, those related to WK1, SVG & inspector do not).
2041
2042         We do this for three reasons:
2043             * We do not need to take AppNap assertions on WK1.
2044             * Some Pages do not track their visibility correctly, and would always claim to be visible.
2045             * Page VisibilityState is not set until after construction, so if we instantiate
2046
2047         Creating the entire PageThrottler lazily has the drawback that we have to check for its existence at
2048         numerous points throughout the code, and we'll miss activity that occurs between the Page being created
2049         & the PageThrottler added to it (really a theoretical problem right now, since they're currently always
2050         created pretty much back to back).
2051
2052         Instead, Page should always have a PageThrottler, & instead make the UserActivity::Impl on the
2053         PageThrottler be added later.
2054
2055         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2056         (WebKit::NPRuntimeObjectMap::evaluate):
2057             - createPageThrottler -> enablePageThrottler
2058         * WebProcess/WebPage/WebPage.cpp:
2059         (WebKit::WebPage::WebPage):
2060         (WebKit::WebPage::mouseEvent):
2061         (WebKit::WebPage::wheelEvent):
2062         (WebKit::WebPage::keyEvent):
2063             - Page::pageThrottler now returns a reference rather than a pointer
2064
2065 2014-09-17  Daniel Bates  <dabates@apple.com>
2066
2067         [iOS] Make WebCore build with public iOS SDK
2068         https://bugs.webkit.org/show_bug.cgi?id=136487
2069
2070         Reviewed by David Kilzer.
2071
2072         Update WebKit2 source files to include the wrapper SPI headers instead of the corresponding
2073         actual SPI header(s).
2074
2075         * Platform/mac/SharedMemoryMac.cpp:
2076         * Shared/ios/NativeWebTouchEventIOS.mm:
2077         * Shared/mac/RemoteLayerBackingStore.mm:
2078         * Shared/mac/RemoteLayerTreePropertyApplier.mm:
2079         * UIProcess/API/Cocoa/WKWebView.mm:
2080         * UIProcess/ios/WKPDFPageNumberIndicator.mm:
2081         * UIProcess/ios/WKScrollView.mm:
2082         * UIProcess/ios/WebMemoryPressureHandlerIOS.mm:
2083         * UIProcess/ios/forms/WKAirPlayRoutePicker.mm:
2084         * WebProcess/WebPage/WebPage.cpp:
2085
2086 2014-09-17  Gavin Barraclough  <barraclough@apple.com>
2087
2088         DOM timer throttling for hidden plugins
2089         https://bugs.webkit.org/show_bug.cgi?id=136197
2090
2091         Reviewed by Geoff Garen & Andreas Kling.
2092
2093         For non-visible web pages we slow timers (since they can't be driving animations, etc).
2094         We should do the same for plugins.
2095
2096         * PluginProcess/WebProcessConnection.cpp:
2097         * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
2098             - remove now redundant includes.
2099         * WebProcess/Plugins/PluginView.h:
2100             - audioHardwareActivity is now virtual, override.
2101
2102 2014-09-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2103
2104         [GTK] WebKitWebView::load-failed-with-tls-errors should receive the failing URI instead of a host
2105         https://bugs.webkit.org/show_bug.cgi?id=136889
2106
2107         Reviewed by Gustavo Noronha Silva.
2108
2109         We were passing a host for two different reasons, first because
2110         it's more convenient to add an exception with
2111         webkit_web_context_allow_tls_certificate_for_host(), but also
2112         because we were assuming the active URI is the failing URI in case
2113         of failure. This assumption is correct because our current code
2114         does that, but I'm not sure we are doing it on purpose. That
2115         behaviour is not documented anywhere and it's not what WebKit2 does
2116         internaly.
2117
2118         * UIProcess/API/gtk/WebKitWebView.cpp:
2119         (webkit_web_view_class_init):
2120         (webkitWebViewLoadFailedWithTLSErrors):
2121         * UIProcess/API/gtk/WebKitWebView.h:
2122
2123 2014-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2124
2125         [GTK] Fix layering violations in PasteboardGtk
2126         https://bugs.webkit.org/show_bug.cgi?id=136802
2127
2128         Reviewed by Darin Adler.
2129
2130         * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
2131         (WebKit::WebEditorClient::updateGlobalSelection): Use new API to
2132         update the global selection.
2133
2134 2014-09-16  Carlos Garcia Campos  <cgarcia@igalia.com>
2135
2136         DragData should not depend on Clipboard, DocumentFragment, and Document
2137         https://bugs.webkit.org/show_bug.cgi?id=21358
2138
2139         Reviewed by Darin Adler.
2140
2141         * UIProcess/WebPageProxy.cpp:
2142         (WebKit::WebPageProxy::performDragControllerAction): Update to API
2143         change in DragData::asURL().
2144
2145 2014-09-16  Daniel Bates  <dabates@apple.com>
2146
2147         [iOS] Add iOS SDK name and version suffix to WebKitSystemInterface debug/release product name
2148         https://bugs.webkit.org/show_bug.cgi?id=136862
2149
2150         Reviewed by David Kilzer.
2151
2152         * Configurations/DebugRelease.xcconfig:
2153
2154 2014-09-16  Enrica Casucci  <enrica@apple.com>
2155
2156         Remove PLATFORM(IOS) from WebCore/editing (Part 3).
2157         https://bugs.webkit.org/show_bug.cgi?id=136474
2158
2159         Reviewed by Benjamin Poulain.
2160
2161         This is the updated version of the patch that was landed in r173340.
2162         This patch removes the use of PLATFORM(IOS) from TextAffinity.h
2163         and removes the assumption that EAffinity values match NSSelectionAffinity
2164         values. It also removes the includes in TextAffinity.h, creating the need to
2165         include explicitly the files when necessary.
2166
2167         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2168         * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
2169
2170 2014-09-16  Dan Bernstein  <mitz@apple.com>
2171
2172         Standardized the return type of a delegate method.
2173
2174         Rubber-stamped by Anders Carlsson.
2175
2176         * UIProcess/API/Cocoa/WKUIDelegatePrivate.h: Changed a return type from bool to BOOL.
2177
2178 2014-09-16  Tomas Popela  <tpopela@redhat.com>
2179
2180         [GTK] Typo in  webkit_security_manager_register_uri_scheme_as_empty_document documentation
2181         https://bugs.webkit.org/show_bug.cgi?id=136852
2182
2183         Reviewed by Carlos Garcia Campos.
2184
2185         * UIProcess/API/gtk/WebKitSecurityManager.cpp:
2186
2187 2014-09-13  Gavin Barraclough  <baraclough@apple.com>
2188
2189         Should call [BKSProcessAssertion invalidate]
2190         https://bugs.webkit.org/show_bug.cgi?id=136804
2191         <rdar://problem/17897780>
2192
2193         Reviewed by Darin Adler.
2194
2195         We should invalidate the process assertion before releasing it. Fortunately this is really easy,
2196         since there is a simple 1:1 relationship with ProcessAssertion, with their lifetimes matching exactly.
2197
2198         * UIProcess/ProcessAssertion.cpp:
2199         (WebKit::ProcessAssertion::~ProcessAssertion):
2200             - no-op implementation.
2201         * UIProcess/ProcessAssertion.h:
2202             - added destructor.
2203         * UIProcess/ios/ProcessAssertionIOS.mm:
2204         (WebKit::ProcessAssertion::~ProcessAssertion):
2205             - destructor invalidates the BKSProcessAssertion.
2206
2207 2014-09-15  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2208
2209         REGRESSION(r170243): [EFL][WK2] Dirty image is shown when new page is loading on fixed layout 
2210         https://bugs.webkit.org/show_bug.cgi?id=136568
2211
2212         Reviewed by Csaba Osztrogonác.
2213
2214         r170243 landed wrong didCommitNewPage() since it always returns false. It cause that
2215         PageViewportControllerClientEfl::didChangeVisibleContents() continues to draw dirty image on 0,0 coordinate.
2216         This patch fixes the problem.
2217
2218         * UIProcess/API/efl/EwkView.h:
2219         (EwkView::waitingForNewPage):
2220         (EwkView::didCommitNewPage):
2221         * UIProcess/efl/PageViewportControllerClientEfl.cpp:
2222         (WebKit::PageViewportControllerClientEfl::didChangeVisibleContents):
2223
2224 2014-09-14  Chris Dumez  <cdumez@apple.com>
2225
2226         Rename Node::childNodeCount() to countChildNodes() and avoid inefficient uses
2227         https://bugs.webkit.org/show_bug.cgi?id=136789
2228
2229         Reviewed by Darin Adler.
2230
2231         Avoid calling slow Node::countChildNodes().
2232
2233         * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp:
2234         (WebKit::WebPage::findZoomableAreaForPoint):
2235         Replace call to "node->parentNode()->childNodeCount() != 1" by
2236         "!node->parentNode()->hasOneChild()" which is equivalent but more
2237         efficient.
2238
2239 2014-09-10  Jon Honeycutt  <jhoneycutt@apple.com>
2240
2241         Re-add the request autocomplete feature
2242
2243         <https://bugs.webkit.org/show_bug.cgi?id=136730>
2244
2245         This feature was rolled out in r148731 because it was only used by
2246         Chromium. As we consider supporting this feature, roll it back in, but
2247         leave it disabled.
2248
2249         This rolls out r148731 (which removed the feature) with small changes
2250         needed to make the code build in ToT, to match modern style, to make
2251         the tests run, and to remove unused code.
2252
2253         Reviewed by Andy Estes.
2254
2255         * Configurations/FeatureDefines.xcconfig:
2256         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2257         (WebKit::WebFrameLoaderClient::didRequestAutocomplete):
2258         * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2259
2260 2014-09-12  Tim Horton  <timothy_horton@apple.com>
2261
2262         Swiping back from a Twitter image to Twitter flashes to the wrong position
2263         https://bugs.webkit.org/show_bug.cgi?id=136798
2264         <rdar://problem/18324338>
2265
2266         Reviewed by Darin Adler and Sam Weinig.
2267
2268         * UIProcess/mac/ViewGestureController.h:
2269         * UIProcess/mac/ViewGestureControllerMac.mm:
2270         (WebKit::ViewGestureController::ViewGestureController):
2271         (WebKit::ViewGestureController::didFinishLoadForMainFrame):
2272         (WebKit::ViewGestureController::didSameDocumentNavigationForMainFrame):
2273         Add a 250ms repeating timer that we start in didFinishLoadForMainFrame
2274         if we are for some reason still loading, and in didSameDocumentNavigationForMainFrame
2275         unconditionally, to match behavior of the old swipe implementation.
2276
2277         Also, do the active gesture check in both of those places so that we don't
2278         start the timer if we're in the middle of a live swipe or have already torn
2279         down the snapshot (removeSwipeSnapshotAfterRepaint does this as well, so
2280         this isn't really a behavior change).
2281
2282         (WebKit::ViewGestureController::activeLoadMonitoringTimerFired):
2283         Every time the timer fires, check if we're still loading; if not,
2284         tear down the swipe snapshot (after repainting).
2285
2286         (WebKit::ViewGestureController::removeSwipeSnapshotAfterRepaint):
2287         Stop the active load monitoring timer.
2288
2289 2014-09-12  Commit Queue  <commit-queue@webkit.org>
2290
2291         Unreviewed, rolling out r173575.
2292         https://bugs.webkit.org/show_bug.cgi?id=136790
2293
2294         Failing tests (Requested by enrica on #webkit).
2295
2296         Reverted changeset:
2297
2298         "Remove PLATFORM(IOS) from WebCore/editing (Part 3)."
2299         https://bugs.webkit.org/show_bug.cgi?id=136474
2300         http://trac.webkit.org/changeset/173575
2301
2302 2014-09-12  Enrica Casucci  <enrica@apple.com>
2303
2304         Remove PLATFORM(IOS) from WebCore/editing (Part 3).
2305         https://bugs.webkit.org/show_bug.cgi?id=136474
2306
2307         Reviewed by Benjamin Poulain.
2308
2309         This is the updated version of the patch that was landed in r173340.
2310         I changed the use of IntPoint to FloatPoint since it was causing tests
2311         to fail.
2312         This patch removes the use of PLATFORM(IOS) from TextAffinity.h
2313         and removes the assumption that EAffinity values match NSSelectionAffinity
2314         values. It also removes the includes in TextAffinity.h, creating the need to
2315         include explicitly the files when necessary. It also removes the unnecessary
2316         use of platform specific types, replacing them with WebCore types.
2317
2318         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2319         * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
2320         (-[WKAccessibilityWebPageObject accessibilityHitTest:]):
2321
2322 2014-09-12  Dan Bernstein  <mitz@apple.com>
2323
2324         [Cocoa] Message generation scripts should be installed in WebKit.framework
2325         https://bugs.webkit.org/show_bug.cgi?id=136771
2326
2327         Reviewed by Anders Carlsson.
2328
2329         * DerivedSources.make: Updated for rename of Scripts/webkit2 to Scripts/webkit.
2330         * Scripts/generate-message-receiver.py:
2331         (main): Updated for rename from webkit2 to webkit.
2332         * Scripts/generate-messages-header.py:
2333         (main): Ditto.
2334         * Scripts/webkit: Renamed from Source/WebKit2/Scripts/webkit2.
2335         * Scripts/webkit/messages.py: Updated for rename.
2336         * Scripts/webkit/parser.py: Ditto.
2337         * WebKit2.xcodeproj/project.pbxproj: Moved the Copy Message Generation Scripts build phase
2338         from the WebKit2 target to the WebKit target and changed its destination to
2339         WebKit.framework/PrivateHeaders/Scripts/webkit. Removed the Remove Compiled Python Files
2340         build phase, since compiled files no longer get copied.
2341
2342 2014-09-12  Tim Horton  <timothy_horton@apple.com>
2343
2344         Flash of page scrolled to wrong origin before restoring scroll position after swiping back to CNN front page from an article
2345         https://bugs.webkit.org/show_bug.cgi?id=136788
2346         <rdar://problem/18314597>
2347
2348         Reviewed by Sam Weinig.
2349
2350         * UIProcess/mac/ViewGestureControllerMac.mm:
2351         (WebKit::ViewGestureController::didHitRenderTreeSizeThreshold):
2352         (WebKit::ViewGestureController::didFirstVisuallyNonEmptyLayoutForMainFrame):
2353         Always wait until didFinishLoadForMainFrame or didSameDocumentNavigationForMainFrame
2354         before removing the snapshot, because otherwise we don't know if the scroll
2355         position has been restored yet.
2356
2357         We should revisit this at some point, because it should be possible to
2358         determine if the scroll position has been restored appropriately, but for
2359         now it is safest to restore the antique behavior.
2360
2361 2014-09-12  Dan Bernstein  <mitz@apple.com>
2362
2363         Build fix.
2364
2365         Reverted r173564.
2366
2367         * DerivedSources.make:
2368         * Scripts/generate-message-receiver.py:
2369         (main):
2370         * Scripts/generate-messages-header.py:
2371         (main):
2372         * Scripts/webkit: Removed.
2373         * Scripts/webkit/LegacyMessageReceiver-expected.cpp: Removed.
2374         * Scripts/webkit/LegacyMessages-expected.h: Removed.
2375         * Scripts/webkit/MessageReceiver-expected.cpp: Removed.
2376         * Scripts/webkit/MessageReceiverSuperclass-expected.cpp: Removed.
2377         * Scripts/webkit/Messages-expected.h: Removed.
2378         * Scripts/webkit/MessagesSuperclass-expected.h: Removed.
2379         * Scripts/webkit/__init__.py: Removed.
2380         * Scripts/webkit/messages.py: Removed.
2381         * Scripts/webkit/messages_unittest.py: Removed.
2382         * Scripts/webkit/model.py: Removed.
2383         * Scripts/webkit/parser.py: Removed.
2384         * Scripts/webkit/test-legacy-messages.in: Removed.
2385         * Scripts/webkit/test-messages.in: Removed.
2386         * Scripts/webkit/test-superclass-messages.in: Removed.
2387         * Scripts/webkit2: Copied from Scripts/webkit2.
2388         * WebKit2.xcodeproj/project.pbxproj:
2389
2390 2014-09-11  Andy Estes  <aestes@apple.com>
2391
2392         [WebKit2] WKImageCreateCGImage crashes when passed a null WKImage
2393         https://bugs.webkit.org/show_bug.cgi?id=136768
2394
2395         Reviewed by Tim Horton.
2396
2397         WKImageCreateFromCGImage can return null, so it only seems fair that WKImageCreateCGImage should tolerate null.
2398
2399         * Shared/API/c/cg/WKImageCG.cpp:
2400         (WKImageCreateCGImage):
2401
2402 2014-09-12  Dan Bernstein  <mitz@apple.com>
2403
2404         [Cocoa] Message generation scripts should be installed in WebKit.framework
2405         https://bugs.webkit.org/show_bug.cgi?id=136771
2406
2407         Reviewed by Anders Carlsson.
2408
2409         * DerivedSources.make: Updated for rename of Scripts/webkit2 to Scripts/webkit.
2410         * Scripts/generate-message-receiver.py:
2411         (main): Updated for rename from webkit2 to webkit.
2412         * Scripts/generate-messages-header.py:
2413         (main): Ditto.
2414         * Scripts/webkit: Renamed from Source/WebKit2/Scripts/webkit2.
2415         * Scripts/webkit/messages.py: Updated for rename.
2416         * Scripts/webkit/parser.py: Ditto.
2417         * WebKit2.xcodeproj/project.pbxproj: Moved the Copy Message Generation Scripts build phase
2418         from the WebKit2 target to the WebKit target and changed its destination to
2419         WebKit.framework/PrivateHeaders/Scripts/webkit. Removed the Remove Compiled Python Files
2420         build phase, since compiled files no longer get copied.
2421
2422 2014-09-12  Michael Catanzaro  <mcatanzaro@igalia.com>
2423
2424         [GTK] Use a nicer HTTP authentication dialog
2425         https://bugs.webkit.org/show_bug.cgi?id=136615
2426
2427         Reviewed by Carlos Garcia Campos.
2428
2429         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
2430         (webkitAuthenticationDialogInitialize): Use a nicer layout.
2431         (packTwoColumnLayoutInBox): Deleted.
2432         (createLabel): Deleted.
2433         (createEntry): Deleted.
2434
2435 2014-09-12  Carlos Garcia Campos  <cgarcia@igalia.com>
2436
2437         REGRESSION(r173423): CertificateInfo is never sent to the UI process when using shared secondary process model
2438         https://bugs.webkit.org/show_bug.cgi?id=136669
2439
2440         Reviewed by Antti Koivisto.
2441
2442         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2443         (WebKit::WebResourceLoadScheduler::scheduleLoad): Use
2444         ResourceLoader::shouldIncludeCertificateInfo() to initialize
2445         needsCertificateInfo parameter.
2446
2447 2014-09-11  Ryuan Choi  <ryuan.choi@gmail.com>
2448
2449         [EFL][CoordinatedGraphics] Move CoordinatedGraphicsScene and CoordinatedBackingStore to WebKit2
2450         https://bugs.webkit.org/show_bug.cgi?id=136770
2451
2452         Reviewed by Gyuyoung Kim.
2453
2454         CoordinatedGraphicsScene and CoordinatedBackingStore is only for UIProcess.
2455         This patch moved them from WebCore to WebKit2/UIProcess/CoordinatedGraphics/.
2456
2457         * PlatformEfl.cmake:
2458         * UIProcess/API/CoordinatedGraphics/WKCoordinatedScene.cpp:
2459         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.cpp: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp.
2460         * UIProcess/CoordinatedGraphics/CoordinatedBackingStore.h: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedBackingStore.h.
2461         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.cpp: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp.
2462         * UIProcess/CoordinatedGraphics/CoordinatedGraphicsScene.h: Renamed from Source/WebCore/platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h.
2463         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2464         * UIProcess/CoordinatedGraphics/WebView.cpp:
2465         * UIProcess/efl/WebViewEfl.cpp:
2466
2467 2014-09-11  Bear Travis  <betravis@adobe.com>
2468
2469         [CSS Font Loading] Enable CSS Font Loading on Mac
2470         https://bugs.webkit.org/show_bug.cgi?id=135473
2471
2472         Reviewed by Antti Koivisto.
2473
2474         Enable CSS Font Loading in FeatureDefines.
2475
2476         * Configurations/FeatureDefines.xcconfig:
2477
2478 2014-09-11  Youenn Fablet  <youenn.fablet@crf.canon.fr>
2479
2480         [WK2] Authentication dialog is displayed for cross-origin XHR
2481         https://bugs.webkit.org/show_bug.cgi?id=131349
2482
2483         Reviewed by Alexey Proskuryakov.
2484
2485         Precomputing client credential policy in the Web Process before sending the resource load task to the Network Process.
2486
2487         * NetworkProcess/NetworkResourceLoader.cpp:
2488         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge): Added an ASSERT to ensure that credential policy is never set to DoNotAskClientForCrossOriginCredentials.
2489         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2490         (WebKit::WebResourceLoadScheduler::scheduleLoad): Precomputing client credential policy to handle the case of cross-origin requests.
2491         * WebProcess/Network/WebResourceLoader.cpp:
2492         (WebKit::WebResourceLoader::willSendRequest): Added a TODO to check whether redirections need a specific handling.
2493
2494 2014-09-11  Carlos Garcia Campos  <cgarcia@igalia.com>
2495
2496         [GTK] Merge WebKitAuthenticationWidget into WebKitAuthenticationDialog
2497         https://bugs.webkit.org/show_bug.cgi?id=136700
2498
2499         Reviewed by Sergio Villar Senin.
2500
2501         Copy WebKitAuthenticationWidget implementation inside
2502         WebKitAuthenticationDialog using a normal GtkBox instead.
2503
2504         * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
2505         (okButtonClicked):
2506         (cancelButtonClicked):
2507         (packTwoColumnLayoutInBox):
2508         (createLabel):
2509         (createEntry):
2510         (webkitAuthenticationDialogInitialize): Remove the
2511         CredentialStorageMode parameter since it's now a member.
2512         (webkitAuthenticationDialogNew): Initialize the
2513         CredentialStorageMode member too.
2514         * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
2515
2516 2014-09-10  Antti Koivisto  <antti@apple.com>
2517
2518         NetworkResourceLoader cleanups
2519         https://bugs.webkit.org/show_bug.cgi?id=136701
2520
2521         Reviewed by Darin Adler.
2522
2523         After smashing NetworkResourceLoader together with the clients it can be made nicer.
2524
2525         * NetworkProcess/NetworkResourceLoadScheduler.cpp:
2526         (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
2527         (WebKit::NetworkResourceLoadScheduler::removeLoader):
2528         * NetworkProcess/NetworkResourceLoader.cpp:
2529         (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
2530
2531             The original request is now part of the loader.
2532
2533         (WebKit::sendReplyToSynchronousRequest):
2534         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2535
2536             Instead of copying everything out from NetworkResourceLoadParameters just include the whole thing as a const field.
2537             SanboxExtension construction moves to NetworkResourceLoadParameters::decode()
2538             Stuff that is related to starting the load moves to start().
2539
2540         (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
2541         (WebKit::NetworkResourceLoader::start):
2542         (WebKit::NetworkResourceLoader::setDefersLoading):
2543
2544             Eliminate m_deferredRequest since we now always remember the original request.
2545
2546         (WebKit::NetworkResourceLoader::cleanup):
2547         (WebKit::NetworkResourceLoader::didConvertHandleToDownload):
2548         (WebKit::NetworkResourceLoader::abort):
2549         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
2550         (WebKit::NetworkResourceLoader::didFail):
2551         (WebKit::NetworkResourceLoader::willSendRequestAsync):
2552         (WebKit::NetworkResourceLoader::continueWillSendRequest):
2553
2554             Eliminate unnecessary m_suggestedRequestForWillSendRequest.
2555
2556         (WebKit::NetworkResourceLoader::wasBlocked):
2557         (WebKit::NetworkResourceLoader::cannotShowURL):
2558         (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
2559         (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
2560         (WebKit::NetworkResourceLoader::receivedCancellation):
2561         (WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
2562         (WebKit::NetworkResourceLoader::consumeSandboxExtensions):
2563         (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
2564         (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
2565         * NetworkProcess/NetworkResourceLoader.h:
2566         (WebKit::NetworkResourceLoader::originalRequest):
2567         (WebKit::NetworkResourceLoader::currentRequest):
2568         (WebKit::NetworkResourceLoader::sessionID):
2569         (WebKit::NetworkResourceLoader::defersLoading):
2570         (WebKit::NetworkResourceLoader::isLoadingMainResource):
2571         (WebKit::NetworkResourceLoader::request): Deleted.
2572         (WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.
2573
2574             Made private and moved to cpp.
2575
2576         * NetworkProcess/mac/NetworkDiskCacheMonitor.mm:
2577         (WebKit::NetworkDiskCacheMonitor::NetworkDiskCacheMonitor):
2578
2579             Use original request instead of the current one. This might fix a bug where we didn't use file backing over redirects.
2580
2581         * Shared/Network/NetworkResourceLoadParameters.cpp:
2582         (WebKit::NetworkResourceLoadParameters::decode):
2583
2584             Decode to SanboxExtensions to the actual type rather than a handle.
2585
2586         * Shared/Network/NetworkResourceLoadParameters.h:
2587
2588 2014-09-10  Michael Catanzaro  <mcatanzaro@igalia.com>
2589
2590         [GTK] allow overwriting destination of download
2591         https://bugs.webkit.org/show_bug.cgi?id=136372
2592
2593         Reviewed by Carlos Garcia Campos.
2594
2595         * UIProcess/API/gtk/WebKitDownload.cpp:
2596         (webkitDownloadGetProperty): Added
2597         (webkit_download_class_init): Install webkitDownloadGetProperty
2598         (webkitDownloadDecideDestinationWithSuggestedFilename): Add
2599         allowOverwrite parameter and set it appropriately
2600         (webkit_download_get_allow_overwrite): Added
2601         (webkit_download_set_allow_overwrite): Added
2602         * UIProcess/API/gtk/WebKitDownload.h: New API
2603         * UIProcess/API/gtk/WebKitDownloadClient.cpp:
2604         (decideDestinationWithSuggestedFilename): Pass allowOverwrite to
2605         webkitDownloadDecideDestinationWithSuggestedFilename
2606         * UIProcess/API/gtk/WebKitDownloadPrivate.h: Add allowOverwrite
2607         parameter to webkitDownloadDecideDestinationWithSuggestedFilename
2608         * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: New API
2609
2610 2014-09-10  Rohit Kumar  <kumar.rohit@samsung.com>
2611
2612         [GTK] Clean up the WebKit build from unused parameter warning in Webkit2/UIProcess module
2613         https://bugs.webkit.org/show_bug.cgi?id=136670
2614
2615         Reviewed by Martin Robinson.
2616
2617         * UIProcess/API/gtk/PageClientImpl.cpp:
2618         (WebKit::PageClientImpl::didSameDocumentNavigationForMainFrame):
2619
2620 2014-09-09  Enrica Casucci  <enrica@apple.com>
2621
2622         REGRESSION (WebKit2): -webkit-touch-callout: none has no effect.
2623         https://bugs.webkit.org/show_bug.cgi?id=136685
2624         rdar://problem/17629840
2625
2626         Reviewed by Benjamin Poulain.
2627
2628         We need to check if the touch callout is enabled for the element before starting
2629         the long press gesture.
2630         The information about the touch callout is returned together with the rest of data
2631         returned by the InteractionInformationAtPosition.
2632
2633         * Shared/InteractionInformationAtPosition.cpp:
2634         (WebKit::InteractionInformationAtPosition::encode):
2635         (WebKit::InteractionInformationAtPosition::decode):
2636         * Shared/InteractionInformationAtPosition.h:
2637         (WebKit::InteractionInformationAtPosition::InteractionInformationAtPosition):
2638         * UIProcess/ios/WKContentViewInteraction.mm:
2639         (-[WKContentView _actionForLongPress]):
2640         * WebProcess/WebPage/ios/WebPageIOS.mm:
2641         (WebKit::WebPage::getPositionInformation):
2642
2643 2014-09-09  Benjamin Poulain  <bpoulain@apple.com>
2644
2645         Disable the "unreachable-code" warning
2646         https://bugs.webkit.org/show_bug.cgi?id=136677
2647
2648         Reviewed by Darin Adler.
2649
2650         * Configurations/Base.xcconfig:
2651
2652 2014-09-09  Dan Bernstein  <mitz@apple.com>
2653
2654         [Cocoa] -[WKBackForwardList backList] contains an unnecessary nil check
2655         https://bugs.webkit.org/show_bug.cgi?id=136680
2656
2657         Reviewed by Anders Carlsson.
2658
2659         * UIProcess/API/Cocoa/WKBackForwardList.mm:
2660         (-[WKBackForwardList backList]): Removed nil check.
2661         (-[WKBackForwardList forwardList]): Ditto.
2662
2663 2014-09-09  Tim Horton  <timothy_horton@apple.com>
2664
2665         Make DrawingArea a real MessageReceiver
2666         https://bugs.webkit.org/show_bug.cgi?id=136438
2667
2668         Reviewed by Darin Adler.
2669
2670         * WebProcess/WebPage/DrawingArea.cpp:
2671         (WebKit::DrawingArea::DrawingArea):
2672         (WebKit::DrawingArea::~DrawingArea):
2673         * WebProcess/WebPage/DrawingArea.h:
2674         * WebProcess/WebPage/DrawingArea.messages.in:
2675         * WebProcess/WebPage/WebPage.cpp:
2676         (WebKit::WebPage::WebPage):
2677         (WebKit::WebPage::~WebPage):
2678         (WebKit::WebPage::didReceiveMessage):
2679         Make DrawingArea a real MessageReceiver instead of a LegacyReceiver that
2680         jumps through WebPage to receive its messages.
2681
2682 2014-09-08  Antti Koivisto  <antti@apple.com>
2683
2684         Pass certificate info as part of ResourceResponse
2685         https://bugs.webkit.org/show_bug.cgi?id=136611
2686
2687         Reviewed by Darin Adler.
2688
2689         * NetworkProcess/NetworkResourceLoader.cpp:
2690         (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
2691
2692             Initialize the certificate info only if requested.
2693
2694         * WebProcess/Network/WebResourceLoader.cpp:
2695         (WebKit::WebResourceLoader::didReceiveResponse):
2696         (WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo): Deleted.
2697
2698             Rename didReceiveResponseWithCertificateInfo -> didReceiveResponse as it is now part of the response.
2699
2700         * WebProcess/Network/WebResourceLoader.h:
2701         * WebProcess/Network/WebResourceLoader.messages.in:
2702         * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2703
2704             Request certificate info for the main resource only.
2705
2706         (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
2707         * WebProcess/WebPage/WebFrame.cpp:
2708         (WebKit::WebFrame::certificateInfo):
2709
2710 2014-09-08  Shivakumar JM  <shiva.jm@samsung.com>
2711
2712         [WebKit2] Fix build error in WebKit2/WebProcess module
2713         https://bugs.webkit.org/show_bug.cgi?id=136667
2714
2715         Reviewed by Darin Adler.
2716
2717         Fix the build error by handling default case.
2718
2719         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2720         (WebKit::maximumBufferingTime):
2721
2722 2014-09-08  Simon Fraser  <simon.fraser@apple.com>
2723
2724         Fix the iOS build.
2725
2726         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2727         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2728
2729 2014-09-08  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2730
2731         Remove FILTERS flag
2732         https://bugs.webkit.org/show_bug.cgi?id=136571
2733
2734         Reviewed by Darin Adler.
2735
2736         * Configurations/FeatureDefines.xcconfig:
2737
2738 2014-09-08  Antti Koivisto  <antti@apple.com>
2739
2740         Buffer images on web process side
2741         https://bugs.webkit.org/show_bug.cgi?id=136631
2742
2743         Reviewed by Darin Adler.
2744
2745         We can substantially reduce IPC and decoding time for large images by allowing some buffering.
2746
2747         This patch makes us buffer image data up to 0.5s before sending it over to the web process.
2748
2749         * NetworkProcess/NetworkResourceLoader.cpp:
2750         (WebKit::NetworkResourceLoader::NetworkResourceLoader):
2751         (WebKit::NetworkResourceLoader::cleanup):
2752         (WebKit::NetworkResourceLoader::didReceiveBuffer):
2753
2754             Start the timer.
2755
2756         (WebKit::NetworkResourceLoader::didFinishLoading):
2757         (WebKit::NetworkResourceLoader::startBufferingTimerIfNeeded):
2758         (WebKit::NetworkResourceLoader::bufferingTimerFired):
2759         (WebKit::NetworkResourceLoader::sendBuffer):
2760
2761             Send the data when the timer fires or the load finishes, whichever happens first.
2762
2763         * NetworkProcess/NetworkResourceLoader.h:
2764         * Platform/IPC/ArgumentCoders.h:
2765
2766             Support encoding std::chrono::duration
2767
2768         * Shared/Network/NetworkResourceLoadParameters.cpp:
2769         (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
2770         (WebKit::NetworkResourceLoadParameters::encode):
2771         (WebKit::NetworkResourceLoadParameters::decode):
2772         * Shared/Network/NetworkResourceLoadParameters.h:
2773
2774             Pass maximimum buffering duration.
2775
2776         * WebProcess/Network/WebResourceLoadScheduler.cpp:
2777         (WebKit::maximumBufferingTime):
2778
2779             Deterimine duration from the resource type.
2780             Enabled full buffering for font resources. They are not decoded incrementally.
2781
2782         (WebKit::WebResourceLoadScheduler::scheduleLoad):
2783
2784 2014-09-08  Dan Bernstein  <mitz@apple.com>
2785
2786         HAVE(VOUCHERS) is not available outside of WebKit2
2787         https://bugs.webkit.org/show_bug.cgi?id=136637
2788
2789         Reviewed by Tim Horton.
2790
2791         * config.h: Moved the definition of HAVE_VOUCHERS from here to wtf’s Platform.h.
2792
2793 2014-09-08  Tim Horton  <timothy_horton@apple.com>
2794
2795         Try to fix the build after r173383, part 4.
2796
2797         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2798         Machine finally caught up so I could actually test the fixes!
2799
2800 2014-09-08  Tim Horton  <timothy_horton@apple.com>
2801
2802         Try to fix the build after r173383, part 3.
2803
2804         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2805
2806 2014-09-08  Dan Bernstein  <mitz@apple.com>
2807
2808         Build fix.
2809
2810         * Platform/IPC/Connection.h:
2811
2812 2014-09-06  Sam Weinig  <sam@webkit.org>
2813
2814         XPCPtr should be converted into an all purpose smart pointer for os_objects
2815         https://bugs.webkit.org/show_bug.cgi?id=136602
2816
2817         Reviewed by Darin Adler.
2818
2819         * DatabaseProcess/EntryPoint/mac/XPCService/DatabaseServiceEntryPoint.mm:
2820         (DatabaseServiceInitializer):
2821         * NetworkProcess/EntryPoint/mac/XPCService/NetworkServiceEntryPoint.mm:
2822         (WebKit::NetworkServiceInitializerDelegate::NetworkServiceInitializerDelegate):
2823         (NetworkServiceInitializer):
2824         * Platform/IPC/Connection.h:
2825         (IPC::Connection::Identifier::Identifier):
2826         * Platform/IPC/mac/ConnectionMac.mm:
2827         (IPC::ConnectionTerminationWatchdog::createConnectionTerminationWatchdog):
2828         (IPC::ConnectionTerminationWatchdog::ConnectionTerminationWatchdog):
2829         * Platform/IPC/mac/XPCPtr.h: Removed.
2830         * PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:
2831         (WebKit::PluginServiceInitializerDelegate::PluginServiceInitializerDelegate):
2832         (PluginServiceInitializer):
2833         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
2834         (WebKit::XPCServiceInitializerDelegate::XPCServiceInitializerDelegate):
2835         (WebKit::XPCServiceInitializer):
2836         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.mm:
2837         (WebKit::XPCServiceInitializerDelegate::checkEntitlements):
2838         (WebKit::XPCServiceInitializerDelegate::hasEntitlement):
2839         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2840         (WebKit::XPCServiceEventHandler):
2841         * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
2842         (WebKit::XPCServiceEventHandler):
2843         * UIProcess/Launcher/mac/ProcessLauncherMac.mm:
2844         (WebKit::connectToService):
2845         (WebKit::connectToReExecService):
2846         * WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
2847         (WebContentServiceInitializer):
2848         Update after the rename of XPCPtr to OSObjectPtr.
2849
2850 2014-09-06  Darin Adler  <darin@apple.com>
2851
2852         Make updates suggested by new version of Xcode
2853         https://bugs.webkit.org/show_bug.cgi?id=136603
2854
2855         Reviewed by Mark Rowe.
2856
2857         * Configurations/Base.xcconfig: Added CLANG_WARN_UNREACHABLE_CODE, COMBINE_HIDPI_IMAGES,
2858         and ENABLE_STRICT_OBJC_MSGSEND as suggested by the Xcode upgrade check.
2859
2860         * PluginProcess/mac/PluginProcessMac.mm:
2861         (WebKit::initializeCocoaOverrides): Changed NSConcreteTask_launch to use the same technique
2862         as the other functions in this file, doing the type casting right at the call to
2863         method_setImplementation so the global has a suitable type for making a function call,
2864         rather than relying on the abilty to call through a type without a specific argument list.
2865
2866         * UIProcess/Plugins/PluginInfoStore.cpp:
2867         (WebKit::pathExtension): Use size_t for the result of String::reverseFind rather than
2868         converting it to an int. Also don't rely on the fact that WTF's notFound becomes -1 when
2869         cast from size_t to int.
2870
2871         * WebKit2.xcodeproj/project.pbxproj: Let Xcode delete some orphaned items, and updated
2872         LastUpgradeCheck.
2873
2874 2014-09-06  Brian J. Burg  <burg@cs.washington.edu>
2875
2876         Web Inspector: convert DockSide to an enum class
2877         https://bugs.webkit.org/show_bug.cgi?id=136601
2878
2879         Reviewed by Timothy Hatcher.
2880
2881         * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
2882         (WebKit::WebInspectorFrontendClient::attachWindow):
2883         * WebProcess/WebPage/WebInspector.cpp:
2884         (WebKit::WebInspector::attachedBottom):
2885         (WebKit::WebInspector::attachedRight):
2886         (WebKit::WebInspector::detached):
2887
2888 2014-09-06  Antti Koivisto  <antti@apple.com>
2889
2890         Serialize ResourceResponses using WebKit types
2891         https://bugs.webkit.org/show_bug.cgi?id=136545
2892
2893         Reviewed by Alexey Proskuryakov.
2894
2895         Remove the WK2 serialization code for responses. It moves to the types itself in WebCore where it is
2896         close to the data being serialized and less likely to get out of sync.
2897
2898         * Shared/WebCoreArgumentCoders.cpp:
2899         (IPC::ArgumentCoder<ResourceResponse>::encode): Deleted.
2900         (IPC::ArgumentCoder<ResourceResponse>::decode): Deleted.
2901         * Shared/WebCoreArgumentCoders.h:
2902         * Shared/mac/WebCoreArgumentCodersMac.mm:
2903         (IPC::ArgumentCoder<ResourceResponse>::encodePlatformData): Deleted.
2904         (IPC::ArgumentCoder<ResourceResponse>::decodePlatformData): Deleted.
2905
2906 2014-09-06  Ryuan Choi  <ryuan.choi@gmail.com>
2907
2908         [EFL] Drop evas object cursor support
2909         https://bugs.webkit.org/show_bug.cgi?id=136324
2910
2911         Reviewed by Gyuyoung Kim.
2912
2913         Removed evas object cursor because there are some bugs.
2914         ewebkit will only support ecore_x_cursor because ewebkit is available with X, now.
2915
2916         * UIProcess/API/efl/EwkView.cpp:
2917         (EwkViewEventHandler<EVAS_CALLBACK_MOUSE_IN>::handleEvent):
2918         (EwkView::EwkView):
2919         (EwkView::updateCursor): Simplifies not to use evas object cursor.
2920         (EwkView::setCursor): Ditto.
2921         * UIProcess/API/efl/EwkView.h:
2922
2923 2014-09-05  Commit Queue  <commit-queue@webkit.org>
2924
2925         Unreviewed, rolling out r173340 and r173342.
2926         https://bugs.webkit.org/show_bug.cgi?id=136596
2927
2928         Broke many tests (Requested by ap on #webkit).
2929
2930         Reverted changesets:
2931
2932         "Remove PLATFORM(IOS) from WebCore/editing (Part 3)."
2933         https://bugs.webkit.org/show_bug.cgi?id=136474
2934         http://trac.webkit.org/changeset/173340
2935
2936         "Build fix after r173340."
2937         http://trac.webkit.org/changeset/173342
2938
2939 2014-09-05  Joseph Pecoraro  <pecoraro@apple.com>
2940
2941         Use WTFString::split(char) in more places
2942         https://bugs.webkit.org/show_bug.cgi?id=136543
2943
2944         Reviewed by Sam Weinig.
2945
2946         * Shared/Plugins/Netscape/mac/NetscapePluginModuleMac.mm:
2947         (WebKit::PluginVersion::parse):
2948         * UIProcess/gtk/WebContextGtk.cpp:
2949         (WebKit::initInspectorServer):
2950         * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
2951         (WebKit::isTransparentSilverlightBackgroundValue):
2952
2953 2014-09-05  Enrica Casucci  <enrica@apple.com>
2954
2955         Remove PLATFORM(IOS) from WebCore/editing (Part 3).
2956         https://bugs.webkit.org/show_bug.cgi?id=136474
2957
2958         Reviewed by Benjamin Poulain.
2959
2960         This patch removes the use of PLATFORM(IOS) from TextAffinity.h
2961         and removes the assumption that EAffinity values match NSSelectionAffinity
2962         values. It also removes the includes in TextAffinity.h, creating the need to
2963         include explicitly the files when necessary. It also removes the unnecessary
2964         use of platform specific types, replacing them with WebCore types.
2965
2966         * WebProcess/InjectedBundle/API/mac/WKDOMInternals.mm:
2967         * WebProcess/WebPage/WKAccessibilityWebPageObjectIOS.mm:
2968         (-[WKAccessibilityWebPageObject accessibilityHitTest:]):
2969
2970 2014-09-05  David Kilzer  <ddkilzer@apple.com>
2971
2972         JavaScriptCore should build with newer clang
2973         <http://webkit.org/b/136002>
2974         <rdar://problem/18020616>
2975
2976         Reviewed by Geoffrey Garen.
2977
2978         * Shared/API/c/WKString.cpp:
2979         (WKStringCreateWithJSString): Add NULL check to prevent
2980         WebKitTestRunner crashes that relied on the previous |this|
2981         behavior where NULL values were allowed.
2982
2983 2014-09-05  Beth Dakin  <bdakin@apple.com>
2984
2985         ScrollablArea::handleWheelEvent() should return early if the ScrollableArea is not 
2986         actually scrollable
2987         https://bugs.webkit.org/show_bug.cgi?id=136558
2988
2989         Reviewed by Simon Fraser.
2990
2991         New ScrollableArea virtual function.
2992         * WebProcess/Plugins/PDF/PDFPlugin.h:
2993
2994 2014-09-04  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2995
2996         Unreviewed, speculative build fix on GTK port since r173305.
2997
2998         * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
2999         (webkitURISchemeRequestReadCallback):
3000
3001 2014-09-03  Andy Estes  <aestes@apple.com>
3002
3003         [Cocoa] Some WebKitLegacy headers migrated from WebCore incorrectly contain WEBCORE_EXPORT
3004         https://bugs.webkit.org/show_bug.cgi?id=136521
3005
3006         Reviewed by Anders Carlsson.
3007
3008         * config.h: Included <WebCore/PlatformExportMacros.h> instead of defining WEBCORE_EXPORT.
3009
3010 2014-09-04  Maciej Stachowiak  <mjs@apple.com>
3011
3012         Remove WebCoreSystemInterface glue for otherwise unused WKSI calls
3013         https://bugs.webkit.org/show_bug.cgi?id=136527
3014
3015         Reviewed by Alexey Proskuryakov.
3016
3017         * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
3018         (InitWebCoreSystemInterface):
3019
3020 2014-09-04  Antti Koivisto  <antti@apple.com>
3021
3022         Remove ResourceResponse::m_suggestedFilename
3023         https://bugs.webkit.org/show_bug.cgi?id=136534
3024
3025         Reviewed by Alexey Proskuryakov.
3026
3027         * Shared/WebCoreArgumentCoders.cpp:
3028         (IPC::ArgumentCoder<ResourceResponse>::encode):
3029         (IPC::ArgumentCoder<ResourceResponse>::decode):
3030
3031             No more m_suggestedFilename.
3032
3033         * WebProcess/Plugins/PDF/PDFPlugin.mm:
3034         (WebKit::PDFPlugin::addArchiveResource):
3035
3036             Fake the suggested filename by using the Content-Disposition header.
3037
3038 2014-09-04  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
3039
3040         Remove CSS_FILTERS flag
3041         https://bugs.webkit.org/show_bug.cgi?id=136529
3042
3043         Reviewed by Dirk Schulze.
3044
3045         * Configurations/FeatureDefines.xcconfig:
3046         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
3047         (IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
3048         (IPC::ArgumentCoder<GraphicsLayerAnimation>::encode):
3049         (IPC::ArgumentCoder<GraphicsLayerAnimation>::decode):
3050         (IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::encode):
3051         (IPC::ArgumentCoder<CoordinatedGraphicsLayerState>::decode):
3052         * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
3053         * Shared/WebCoreArgumentCoders.cpp:
3054         * Shared/WebCoreArgumentCoders.h:
3055         * WebProcess/WebPage/mac/GraphicsLayerCARemote.cpp:
3056         (WebKit::GraphicsLayerCARemote::filtersCanBeComposited):
3057         * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
3058         * WebProcess/WebPage/mac/PlatformCAAnimationRemote.h:
3059         * WebProcess/WebPage/mac/PlatformCAAnimationRemote.mm:
3060         (WebKit::PlatformCAAnimationRemote::setFromValue):
3061         (WebKit::PlatformCAAnimationRemote::setToValue):
3062         (WebKit::PlatformCAAnimationRemote::setValues):
3063         * WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:
3064         (WebKit::PlatformCALayerRemote::updateClonedLayerProperties):
3065         (WebKit::PlatformCALayerRemote::filtersCanBeComposited):
3066         * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
3067
3068 2014-09-04  Commit Queue  <commit-queue@webkit.org>
3069
3070         Unreviewed, rolling out r173245.
3071         https://bugs.webkit.org/show_bug.cgi?id=136533
3072
3073         Broke JSC tests. (Requested by ddkilzer on #webkit).
3074
3075         Reverted changeset:
3076
3077         "JavaScriptCore should build with newer clang"
3078         https://bugs.webkit.org/show_bug.cgi?id=136002
3079         http://trac.webkit.org/changeset/173245
3080
3081 2014-09-04  Carlos Garcia Campos  <cgarcia@igalia.com>
3082
3083         Initialize m_usesNetworkProcess earlier in WebProcess::initializeWebProcess()
3084         https://bugs.webkit.org/show_bug.cgi?id=136478
3085
3086         Reviewed by Alexey Proskuryakov.
3087
3088         The soup network backend uses WebProcess::usesNetworkProcess()
3089         from WebProcess::platformSetCacheModel() and
3090         WebProcess::platformInitializeWebProcess(), both called before the
3091         m_usesNetworkProcess member has been initialized.
3092
3093         * WebProcess/WebProcess.cpp:
3094         (WebKit::WebProcess::initializeWebProcess): Move the
3095         m_usesNetworkProcess initialization at the beginning right before
3096         calling platformInitializeWebProcess().
3097         * WebProcess/cocoa/WebProcessCocoa.mm:
3098         (WebKit::WebProcess::platformSetCacheModel): Remove the early
3099         return when using the network process, since this was dead code
3100         before this change, and not really needed now that
3101         usesNetworkProcess() will return true.
3102         (WebKit::WebProcess::platformInitializeWebProcess): Remove comment
3103         that is not accurate since r171156.
3104
3105 2014-09-03  Michael Catanzaro  <mcatanzaro@igalia.com>
3106
3107         [SOUP] Race condition when downloading a file due to the intermediate temporary file
3108         https://bugs.webkit.org/show_bug.cgi?id=136423
3109
3110         Reviewed by Carlos Garcia Campos.
3111
3112         * Shared/Downloads/soup/DownloadSoup.cpp:
3113         (WebKit::DownloadClient::DownloadClient): Replace m_destinationURI with
3114         m_destinationFile and add m_createdDestination.
3115         (WebKit::DownloadClient::deleteFilesIfNeeded): Added.
3116         (WebKit::DownloadClient::downloadFailed): Call deleteFilesIfNeeded.
3117         (WebKit::DownloadClient::didReceiveResponse): Attempt to create the
3118         destination file before the intermediate file. Fail here if the file
3119         exists and overwrite is not allowed, so we don't erroneously fire the
3120         didCreateDestination event or waste time downloading the file when we
3121         know the download will fail.
3122         (WebKit::DownloadClient::didFinishLoading): Unconditionally overwrite
3123         the empty destination file.
3124         (WebKit::DownloadClient::cancel): Call deleteFilesIfNeeded.
3125         (WebKit::DownloadClient::deleteIntermediateFileInNeeded): Deleted.
3126
3127 2014-09-03  David Kilzer  <ddkilzer@apple.com>
3128
3129         JavaScriptCore should build with newer clang
3130         <http://webkit.org/b/136002>
3131         <rdar://problem/18020616>
3132
3133         Reviewed by Geoffrey Garen.
3134
3135         * Shared/API/c/WKString.cpp:
3136         (WKStringCreateWithJSString): Add NULL check to prevent
3137         WebKitTestRunner crashes that relied on the previous |this|
3138         behavior where NULL values were allowed.
3139
3140 2014-09-03  Enrica Casucci  <enrica@apple.com>
3141
3142         Remove PLATFORM(IOS) from WebCore/editing (Part 1).
3143         https://bugs.webkit.org/show_bug.cgi?id=136474
3144
3145         Reviewed by Tim Horton.
3146
3147         * UIProcess/WebEditCommandProxy.cpp:
3148         (WebKit::WebEditCommandProxy::nameForEditAction):
3149
3150 2014-09-03  Yongjun Zhang  <yongjun_zhang@apple.com>
3151
3152         https://bugs.webkit.org/show_bug.cgi?id=136395
3153         Need a way to get userAgent from WKWebView.
3154
3155         Add _userAgent property to return user agent string from WKWebView.
3156
3157         Reviewed by Anders Carlsson.
3158
3159         * UIProcess/API/Cocoa/WKWebView.mm:
3160         (-[WKWebView _userAgent]):
3161         * UIProcess/API/Cocoa/WKWebViewPrivate.h:
3162
3163 2014-09-02  Maciej Stachowiak  <mjs@apple.com>
3164
3165         Clean up naming for and slightly refactor legacy video fullscreen support
3166         https://bugs.webkit.org/show_bug.cgi?id=136446
3167
3168         Reviewed by Jer Noble.
3169
3170         Key changes:
3171         supportsFullscreenForNode(Node*) --> supportsVideoFullscreen()
3172         enterFullscreenForNode(Node*) --> enterVideoFullscreenForVideoElement(HTMLVideoElement*)
3173         exitFullscreenForNode(Node*) --> exitVideoFullscreen()
3174         
3175         The old versions had unnecessary parameters, did not clearly distinguish their purpose
3176         from enterFullscreenForElement and friends, and wrongly claimed generality to all Nodes.
3177         Also changed many other places to use HTMLVideoElement* instead of Node* or 
3178         HTMLMediaElement* when they were in fact only used for video elements and would only
3179         work for such.
3180
3181         Legacy video fullscreen in WebKit2 is only supported on iOS (for other ports that support
3182         it, it's WK1 only).
3183         
3184         * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3185         (WebKit::WebChromeClient::supportsVideoFullscreen): Adjust for renames as
3186         mentioned.
3187         (WebKit::WebChromeClient::enterVideoFullscreenForVideoElement): ditto
3188         (WebKit::WebChromeClient::exitVideoFullscreen): ditto
3189         * WebProcess/WebCoreSupport/WebChromeClient.h:
3190         * WebProcess/ios/WebVideoFullscreenManager.h:
3191         * WebProcess/ios/WebVideoFullscreenManager.mm:
3192         (WebKit::clientRectForElement): No need to be generic to node.
3193         (WebKit::WebVideoFullscreenManager::supportsVideoFullscreen): Adjust for the
3194         main refactoring. Also change m_node to m_videoElement with appropriate type change.
3195         (WebKit::WebVideoFullscreenManager::enterVideoFullscreenForVideoElement): ditto
3196         (WebKit::WebVideoFullscreenManager::exitVideoFullscreen): ditto
3197         (WebKit::WebVideoFullscreenManager::didEnterFullscreen): ditto 
3198         (WebKit::WebVideoFullscreenManager::didExitFullscreen): ditto
3199         (WebKit::WebVideoFullscreenManager::didCleanupFullscreen): ditto
3200
3201 2014-09-03  Dan Bernstein  <mitz@apple.com>
3202
3203         Get rid of HIGH_DPI_CANVAS leftovers
3204         https://bugs.webkit.org/show_bug.cgi?id=136491
3205
3206         Reviewed by Benjamin Poulain.
3207
3208         * Configurations/FeatureDefines.xcconfig: Removed definition of ENABLE_HIGH_DPI_CANVAS
3209         and removed it from FEATURE_DEFINES.
3210
3211 2014-09-02  Yongjun Zhang  <yongjun_zhang@apple.com>
3212
3213         Pass the resource identifier in willSendRequest callback.
3214         https://bugs.webkit.org/show_bug.cgi?id=136325
3215
3216         Reviewed by Dan Bernstein.
3217
3218         Add two new delegate methods webProcessPlugInBrowserContextController:frame:willSendRequestForResource:request:redirectResponse:
3219         and webProcessPlugInBrowserContextController:frame:didInitiateLoadForResource:request:pageIsProvisionallyLoading:. We will remove
3220         the old willSendRequest and didInitiateLoadForResource when clients adopt the new methods.
3221
3222         * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h:
3223         * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
3224         (willSendRequestForFrame):
3225         (didInitiateLoadForResource):
3226
3227 2014-09-02  Philippe Normand  <pnormand@igalia.com>
3228
3229         Unreviewed, GTK build fix after r173163.
3230
3231         * UIProcess/API/gtk/PageClientImpl.cpp:
3232         (WebKit::PageClientImpl::createDrawingAreaProxy):
3233         * UIProcess/DrawingAreaProxyImpl.cpp:
3234         (WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):
3235         (WebKit::DrawingAreaProxyImpl::update):
3236         (WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):
3237         (WebKit::DrawingAreaProxyImpl::incorporateUpdate):
3238         (WebKit::DrawingAreaProxyImpl::sendUpdateBackingStoreState):
3239         (WebKit::DrawingAreaProxyImpl::waitForAndDispatchDidUpdateBackingStoreState):
3240         (WebKit::DrawingAreaProxyImpl::enterAcceleratedCompositingMode):
3241         (WebKit::DrawingAreaProxyImpl::exitAcceleratedCompositingMode):
3242         (WebKit::DrawingAreaProxyImpl::updateAcceleratedCompositingMode):
3243         * UIProcess/DrawingAreaProxyImpl.h:
3244
3245 2014-09-01  Timothy Horton  <timothy_horton@apple.com>
3246
3247         Fix the iOS build.
3248
3249         * UIProcess/ios/WKContentView.mm:
3250         (-[WKContentView _createDrawingAreaProxy]):
3251         Whoops.
3252
3253 2014-09-01  Ryuan Choi  <ryuan.choi@gmail.com>
3254
3255         Build break on the EFL port since r173163
3256         https://bugs.webkit.org/show_bug.cgi?id=136443
3257
3258         Unreviewed build fix.
3259
3260         * UIProcess/BackingStore.cpp:
3261         (WebKit::BackingStore::BackingStore):
3262         * UIProcess/BackingStore.h:
3263         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.cpp:
3264         (WebKit::CoordinatedDrawingAreaProxy::CoordinatedDrawingAreaProxy):
3265         (WebKit::CoordinatedDrawingAreaProxy::updateViewport):
3266         (WebKit::CoordinatedDrawingAreaProxy::contentsRect):
3267         (WebKit::CoordinatedDrawingAreaProxy::update):
3268         (WebKit::CoordinatedDrawingAreaProxy::didUpdateBackingStoreState):
3269         (WebKit::CoordinatedDrawingAreaProxy::incorporateUpdate):
3270         (WebKit::CoordinatedDrawingAreaProxy::sendUpdateBackingStoreState):
3271         (WebKit::CoordinatedDrawingAreaProxy::waitForAndDispatchDidUpdateBackingStoreState):
3272         (WebKit::CoordinatedDrawingAreaProxy::enterAcceleratedCompositingMode):
3273         (WebKit::CoordinatedDrawingAreaProxy::exitAcceleratedCompositingMode):
3274         (WebKit::CoordinatedDrawingAreaProxy::updateAcceleratedCompositingMode):
3275         * UIProcess/CoordinatedGraphics/CoordinatedDrawingAreaProxy.h:
3276         (WebKit::CoordinatedDrawingAreaProxy::page):
3277         * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
3278         (WebKit::CoordinatedLayerTreeHostProxy::CoordinatedLayerTreeHostProxy):
3279         (WebKit::CoordinatedLayerTreeHostProxy::~CoordinatedLayerTreeHostProxy):
3280         (WebKit::CoordinatedLayerTreeHostProxy::commitCoordinatedGraphicsState):
3281         (WebKit::CoordinatedLayerTreeHostProxy::setVisibleContentsRect):
3282         (WebKit::CoordinatedLayerTreeHostProxy::renderNextFrame):
3283         (WebKit::CoordinatedLayerTreeHostProxy::purgeBackingStores):
3284         (WebKit::CoordinatedLayerTreeHostProxy::commitScrollOffset):
3285         * UIProcess/CoordinatedGraphics/WebView.cpp:
3286         (WebKit::WebView::createDrawingAreaProxy):
3287         * UIProcess/cairo/BackingStoreCairo.cpp:
3288         (WebKit::BackingStore::incorporateUpdate):
3289
3290 2014-09-01  Tim Horton  <timothy_horton@apple.com>
3291
3292         Remove two unused WebKit2 PDF-related preferences
3293         https://bugs.webkit.org/show_bug.cgi?id=136441
3294
3295         Reviewed by Dan Bernstein.
3296
3297         * Shared/WebPreferencesDefinitions.h:
3298         Move the macro arguments comment down near where the macros are being used.
3299         No need to check both PLATFORM(IOS) and PLATFORM(IOS_SIMULATOR); the second can't be true without the first.
3300         These two PDF preferences are long-unused; if we bring back their functionality,
3301         we'll bring back the preferences.
3302
3303 2014-09-01  Tim Horton  <timothy_horton@apple.com>
3304
3305         DrawingAreaProxy and friends can hold on to WebPageProxy by reference
3306         https://bugs.webkit.org/show_bug.cgi?id=136440
3307
3308         Reviewed by Dan Bernstein.
3309
3310         * UIProcess/API/mac/WKView.mm:
3311         (-[WKView _createDrawingAreaProxy]):
3312         * UIProcess/DrawingAreaProxy.cpp:
3313         (WebKit::DrawingAreaProxy::DrawingAreaProxy):
3314         (WebKit::DrawingAreaProxy::~DrawingAreaProxy):
3315         (WebKit::DrawingAreaProxy::setExposedRect):
3316         (WebKit::DrawingAreaProxy::exposedRectChangedTimerFired):
3317         * UIProcess/DrawingAreaProxy.h:
3318         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
3319         * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.mm:
3320         (WebKit::RemoteLayerTreeDrawingAreaProxy::RemoteLayerTreeDrawingAreaProxy):
3321         (WebKit::RemoteLayerTreeDrawingAreaProxy::~RemoteLayerTreeDrawingAreaProxy):
3322         (WebKit::RemoteLayerTreeDrawingAreaProxy::sizeDidChange):
3323         (WebKit::RemoteLayerTreeDrawingAreaProxy::deviceScaleFactorDidChange):
3324         (WebKit::RemoteLayerTreeDrawingAreaProxy::scaledExposedRect):
3325         (WebKit::RemoteLayerTreeDrawingAreaProxy::sendUpdateGeometry):
3326         (WebKit::RemoteLayerTreeDrawingAreaProxy::commitLayerTree):
3327         (WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidStart):
3328         (WebKit::RemoteLayerTreeDrawingAreaProxy::acceleratedAnimationDidEnd):
3329         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorLocation):
3330         (WebKit::RemoteLayerTreeDrawingAreaProxy::indicatorScale):
3331         (WebKit::RemoteLayerTreeDrawingAreaProxy::updateDebugIndicator):
3332         (WebKit::RemoteLayerTreeDrawingAreaProxy::didRefreshDisplay):
3333         (WebKit::RemoteLayerTreeDrawingAreaProxy::waitForDidUpdateViewState):
3334         (WebKit::RemoteLayerTreeDrawingAreaProxy::dispatchAfterEnsuringDrawing):
3335         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
3336         * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
3337         (WebKit::TiledCoreAnimationDrawingAreaProxy::TiledCoreAnimationDrawingAreaProxy):
3338         (WebKit::TiledCoreAnimationDrawingAreaProxy::deviceScaleFactorDidChange):
3339         (WebKit::TiledCoreAnimationDrawingAreaProxy::sizeDidChange):
3340         (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForPossibleGeometryUpdate):
3341         (WebKit::TiledCoreAnimationDrawingAreaProxy::colorSpaceDidChange):
3342         (WebKit::TiledCoreAnimationDrawingAreaProxy::minimumLayoutSizeDidChange):
3343         (WebKit::TiledCoreAnimationDrawingAreaProxy::enterAcceleratedCompositingMode):
3344         (WebKit::TiledCoreAnimationDrawingAreaProxy::updateAcceleratedCompositingMode):
3345         (WebKit::TiledCoreAnimationDrawingAreaProxy::didUpdateGeometry):
3346         (WebKit::TiledCoreAnimationDrawingAreaProxy::waitForDidUpdateViewState):
3347         (WebKit::TiledCoreAnimationDrawingAreaProxy::intrinsicContentSizeDidChange):
3348         (WebKit::TiledCoreAnimationDrawingAreaProxy::sendUpdateGeometry):
3349         (WebKit::TiledCoreAnimationDrawingAreaProxy::adjustTransientZoom):
3350         (WebKit::TiledCoreAnimationDrawingAreaProxy::commitTransientZoom):
3351
3352 2014-09-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3353
3354         [CMAKE] Build warning by INTERFACE_LINK_LIBRARIES
3355         https://bugs.webkit.org/show_bug.cgi?id=136194
3356
3357         Reviewed by Csaba Osztrogonác.
3358
3359         Set the LINK_INTERFACE_LIBRARIES target property on the top level CMakeLists.txt.
3360
3361         * CMakeLists.txt:
3362
3363 2014-09-01  Michael Catanzaro  <mcatanzaro@igalia.com>
3364
3365         [SOUP] WebKitDownload cannot overwrite existing file
3366         https://bugs.webkit.org/show_bug.cgi?id=136322
3367
3368         Reviewed by Carlos Garcia Campos.
3369
3370         * Shared/Downloads/soup/DownloadSoup.cpp: