1 2014-01-23 Jon Honeycutt <jhoneycutt@apple.com>
3 Assertion failure in WebCore::PseudoElement::didRecalcStyle()
4 <https://bugs.webkit.org/show_bug.cgi?id=126761>
5 <rdar://problem/15793540>
7 Reviewed by Andy Estes.
9 * WebProcess/WebPage/ios/WebPageIOS.mm:
10 (WebKit::WebPage::getPositionInformation):
11 Check isRenderImage() rather than isImage() before casting to
14 2014-01-23 Anders Carlsson <andersca@apple.com>
16 Move policy client into WKPage.cpp and get rid of WebPolicyClient files
17 https://bugs.webkit.org/show_bug.cgi?id=127536
19 Reviewed by Tim Horton.
21 * UIProcess/API/C/WKPage.cpp:
22 (WKPageSetPagePolicyClient):
23 * UIProcess/WebPolicyClient.cpp: Removed.
24 * UIProcess/WebPolicyClient.h: Removed.
25 * WebKit2.xcodeproj/project.pbxproj:
27 2014-01-23 Joseph Pecoraro <pecoraro@apple.com>
29 Web Inspector: Remove recompileAllJSFunctions timer in ScriptDebugServer
30 https://bugs.webkit.org/show_bug.cgi?id=127409
32 Reviewed by Geoffrey Garen.
34 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
35 (WebKit::WebInspectorFrontendClient::closeWindow):
36 * WebProcess/WebPage/WebInspector.cpp:
37 (WebKit::WebInspector::remoteFrontendDisconnected):
38 Include InspectorDisconnectReason.
40 2014-01-23 Anders Carlsson <andersca@apple.com>
42 Only WKPage should know about WebPolicyClient
43 https://bugs.webkit.org/show_bug.cgi?id=127535
45 Reviewed by Andreas Kling.
47 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
48 (setUpPagePolicyClient):
49 (-[WKBrowsingContextController setPolicyDelegate:]):
50 * UIProcess/WebInspectorProxy.cpp:
51 (WebKit::WebInspectorProxy::createInspectorPage):
53 2014-01-23 Anders Carlsson <andersca@apple.com>
55 Simplify API::LoaderClient management
56 https://bugs.webkit.org/show_bug.cgi?id=127531
58 Reviewed by Tim Horton.
60 Add default implementations to API::LoaderClient and change WebPageProxy::setLoaderClient to
61 always create a policy client, even if the loader client set is null. That way we don't have to null
62 check the loader client everywhere.
64 * UIProcess/API/APILoaderClient.h:
65 (API::LoaderClient::didStartProvisionalLoadForFrame):
66 (API::LoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
67 (API::LoaderClient::didFailProvisionalLoadWithErrorForFrame):
68 (API::LoaderClient::didCommitLoadForFrame):
69 (API::LoaderClient::didFinishDocumentLoadForFrame):
70 (API::LoaderClient::didFinishLoadForFrame):
71 (API::LoaderClient::didFailLoadWithErrorForFrame):
72 (API::LoaderClient::didSameDocumentNavigationForFrame):
73 (API::LoaderClient::didReceiveTitleForFrame):
74 (API::LoaderClient::didFirstLayoutForFrame):
75 (API::LoaderClient::didFirstVisuallyNonEmptyLayoutForFrame):
76 (API::LoaderClient::didRemoveFrameFromHierarchy):
77 (API::LoaderClient::didDisplayInsecureContentForFrame):
78 (API::LoaderClient::didRunInsecureContentForFrame):
79 (API::LoaderClient::didDetectXSSForFrame):
80 (API::LoaderClient::didLayout):
81 (API::LoaderClient::canAuthenticateAgainstProtectionSpaceInFrame):
82 (API::LoaderClient::didReceiveAuthenticationChallengeInFrame):
83 (API::LoaderClient::didStartProgress):
84 (API::LoaderClient::didChangeProgress):
85 (API::LoaderClient::didFinishProgress):
86 (API::LoaderClient::processDidBecomeUnresponsive):
87 (API::LoaderClient::interactionOccurredWhileProcessUnresponsive):
88 (API::LoaderClient::processDidBecomeResponsive):
89 (API::LoaderClient::processDidCrash):
90 (API::LoaderClient::didChangeBackForwardList):
91 (API::LoaderClient::willGoToBackForwardListItem):
92 (API::LoaderClient::pluginLoadPolicy):
93 (API::LoaderClient::didFailToInitializePlugin):
94 (API::LoaderClient::didBlockInsecurePluginVersion):
95 (API::LoaderClient::webGLLoadPolicy):
96 * UIProcess/WebPageProxy.cpp:
97 (WebKit::WebPageProxy::setLoaderClient):
98 (WebKit::WebPageProxy::didChangeBackForwardList):
99 (WebKit::WebPageProxy::willGoToBackForwardListItem):
100 (WebKit::WebPageProxy::findPlugin):
101 (WebKit::WebPageProxy::didStartProgress):
102 (WebKit::WebPageProxy::didChangeProgress):
103 (WebKit::WebPageProxy::didFinishProgress):
104 (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
105 (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
106 (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
107 (WebKit::WebPageProxy::didCommitLoadForFrame):
108 (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
109 (WebKit::WebPageProxy::didFinishLoadForFrame):
110 (WebKit::WebPageProxy::didFailLoadForFrame):
111 (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
112 (WebKit::WebPageProxy::didReceiveTitleForFrame):
113 (WebKit::WebPageProxy::didFirstLayoutForFrame):
114 (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
115 (WebKit::WebPageProxy::didLayout):
116 (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
117 (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
118 (WebKit::WebPageProxy::didRunInsecureContentForFrame):
119 (WebKit::WebPageProxy::didDetectXSSForFrame):
120 (WebKit::WebPageProxy::webGLPolicyForURL):
121 (WebKit::WebPageProxy::processDidBecomeUnresponsive):
122 (WebKit::WebPageProxy::interactionOccurredWhileProcessUnresponsive):
123 (WebKit::WebPageProxy::processDidBecomeResponsive):
124 (WebKit::WebPageProxy::processDidCrash):
125 (WebKit::WebPageProxy::canAuthenticateAgainstProtectionSpaceInFrame):
126 (WebKit::WebPageProxy::didReceiveAuthenticationChallengeProxy):
127 (WebKit::WebPageProxy::didFailToInitializePlugin):
128 (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
130 2014-01-23 Anders Carlsson <andersca@apple.com>
132 Simplify API::PolicyClient management
133 https://bugs.webkit.org/show_bug.cgi?id=127529
135 Reviewed by Tim Horton.
137 Add default implementations to API::PolicyClient and change WebPageProxy::setPolicyClient to
138 always create a policy client, even if the policy object set is null. That way we don't have to null
139 check the policy client everywhere.
141 * UIProcess/API/APIPolicyClient.h:
142 (API::PolicyClient::decidePolicyForNavigationAction):
143 (API::PolicyClient::decidePolicyForNewWindowAction):
144 (API::PolicyClient::decidePolicyForResponse):
145 (API::PolicyClient::unableToImplementPolicy):
146 * UIProcess/WebPageProxy.cpp:
147 (WebKit::WebPageProxy::setPolicyClient):
148 (WebKit::WebPageProxy::decidePolicyForNavigationAction):
149 (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
150 (WebKit::WebPageProxy::decidePolicyForResponse):
151 (WebKit::WebPageProxy::unableToImplementPolicy):
153 2014-01-23 Simon Fraser <simon.fraser@apple.com>
157 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
158 (webkitWebPageDidReceiveMessage):
160 2014-01-23 Anders Carlsson <andersca@apple.com>
162 Add an APILoaderClient base class
163 https://bugs.webkit.org/show_bug.cgi?id=127527
165 Reviewed by Tim Horton.
167 * UIProcess/API/APILoaderClient.h: Added.
168 (API::LoaderClient::~LoaderClient):
169 * UIProcess/API/C/WKPage.cpp:
170 (WKPageSetPageLoaderClient):
171 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
172 (setUpPageLoaderClient):
173 (-[WKBrowsingContextController setLoadDelegate:]):
174 (+[WKBrowsingContextController _browsingContextControllerForPageRef:]):
175 * UIProcess/WebLoaderClient.cpp:
176 (WebKit::WebLoaderClient::WebLoaderClient):
177 * UIProcess/WebLoaderClient.h:
178 * UIProcess/WebPageProxy.cpp:
179 (WebKit::WebPageProxy::setLoaderClient):
180 (WebKit::WebPageProxy::close):
181 (WebKit::WebPageProxy::didChangeBackForwardList):
182 (WebKit::WebPageProxy::willGoToBackForwardListItem):
183 (WebKit::WebPageProxy::findPlugin):
184 (WebKit::WebPageProxy::didStartProgress):
185 (WebKit::WebPageProxy::didChangeProgress):
186 (WebKit::WebPageProxy::didFinishProgress):
187 (WebKit::WebPageProxy::didStartProvisionalLoadForFrame):
188 (WebKit::WebPageProxy::didReceiveServerRedirectForProvisionalLoadForFrame):
189 (WebKit::WebPageProxy::didFailProvisionalLoadForFrame):
190 (WebKit::WebPageProxy::didCommitLoadForFrame):
191 (WebKit::WebPageProxy::didFinishDocumentLoadForFrame):
192 (WebKit::WebPageProxy::didFinishLoadForFrame):
193 (WebKit::WebPageProxy::didFailLoadForFrame):
194 (WebKit::WebPageProxy::didSameDocumentNavigationForFrame):
195 (WebKit::WebPageProxy::didReceiveTitleForFrame):
196 (WebKit::WebPageProxy::didFirstLayoutForFrame):
197 (WebKit::WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame):
198 (WebKit::WebPageProxy::didLayout):
199 (WebKit::WebPageProxy::didRemoveFrameFromHierarchy):
200 (WebKit::WebPageProxy::didDisplayInsecureContentForFrame):
201 (WebKit::WebPageProxy::didRunInsecureContentForFrame):
202 (WebKit::WebPageProxy::didDetectXSSForFrame):
203 (WebKit::WebPageProxy::webGLPolicyForURL):
204 (WebKit::WebPageProxy::processDidBecomeUnresponsive):
205 (WebKit::WebPageProxy::interactionOccurredWhileProcessUnresponsive):
206 (WebKit::WebPageProxy::processDidBecomeResponsive):
207 (WebKit::WebPageProxy::processDidCrash):
208 (WebKit::WebPageProxy::canAuthenticateAgainstProtectionSpaceInFrame):
209 (WebKit::WebPageProxy::didReceiveAuthenticationChallengeProxy):
210 (WebKit::WebPageProxy::didFailToInitializePlugin):
211 (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
212 * UIProcess/WebPageProxy.h:
213 (WebKit::WebPageProxy::loaderClient):
214 * WebKit2.xcodeproj/project.pbxproj:
216 2014-01-23 Ryuan Choi <ryuan.choi@samsung.com>
218 Build break after r162650
219 https://bugs.webkit.org/show_bug.cgi?id=127525
221 Reviewed by Anders Carlsson.
223 WKPreferences.h was renamed to WKPreferencesRef.
225 * UIProcess/API/C/WKPreferences.cpp:
227 2014-01-23 Anders Carlsson <andersca@apple.com>
229 Fix a refactoring bug that crept in and is causing the inspector to crash.
231 * UIProcess/WebPolicyClient.cpp:
232 (WebKit::WebPolicyClient::decidePolicyForResponse):
234 2014-01-23 Simon Fraser <simon.fraser@apple.com>
236 Make visibleContentRect() return actualVisibleContentRect() on iOS most of the time
237 https://bugs.webkit.org/show_bug.cgi?id=127456
239 Reviewed by Antti Koivisto.
241 On iOS, visibleContentRect() returns the entire document rect for historical
242 reasons, and actualVisibleContentRect() returns what visibleContentRect()
243 returns on other platforms.
245 In addition, actualVisibleContentRect() was returning an empty rect in WK2.
247 Reduce the confusion of #ifdefs by making visibleContentRect() behave like
248 actualVisibleContentRect() by default on iOS. Where it needs the old behavior,
249 an optional parameter, LegacyIOSDocumentVisibleRect, provides this.
251 Achieve this by having the virtual ScrollableArea::visibleContentRectInternal(),
252 which is called by non-virtual visibleContentRect() and visibleContentRectIncludingScrollbars().
254 Similarly clean up visibleHeight/visibleWidth functions by having visibleSize() be virtual,
255 with non-virtual visibleHeight() and visibleWidth().
257 ScrollableArea subclasses override visibleContentRectInternal() and visibleSize() where necessary.
259 Mechanically change all the call sites of actualVisibleContentRect() to
260 use visibleContentRect(), and the call sites of visibleContentRect()
261 to visibleContentRect(..., LegacyIOSDocumentVisibleRect), adding comments
262 where this may not be appropriate.
264 Change callers of visibleContentRect(IncludeScrollbars...) to visibleContentRectIncludingScrollbars().
266 Also add actualScrollPosition(), and clean up some actualScroll* call sites.
270 * WebProcess/Plugins/PDF/PDFPlugin.h:
271 * WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
272 (WebKit::ViewGestureGeometryCollector::collectGeometryForMagnificationGesture):
273 (WebKit::ViewGestureGeometryCollector::collectGeometryForSmartMagnificationGesture):
274 * WebProcess/WebPage/WebFrame.cpp:
275 (WebKit::WebFrame::visibleContentBounds):
276 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
277 (WebKit::TiledCoreAnimationDrawingArea::commitTransientZoom):
278 (WebKit::TiledCoreAnimationDrawingArea::applyTransientZoomToPage):
280 2014-01-23 Tim Horton <timothy_horton@apple.com>
282 [wk2] Page Overlays: Add API to clear the page overlay (and get rid of its backing store)
283 https://bugs.webkit.org/show_bug.cgi?id=127518
285 Reviewed by Anders Carlsson.
287 Add WKBundlePageOverlayClear, to allow clients of the page overlay API to
288 manually clear the page overlay's backing store, for memory, power, and performance gains.
290 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
291 (WKBundlePageOverlayClear):
292 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
293 * WebProcess/WebPage/DrawingArea.h:
294 (WebKit::DrawingArea::clearPageOverlay):
295 * WebProcess/WebPage/PageOverlay.cpp:
296 (WebKit::PageOverlay::clear):
297 * WebProcess/WebPage/PageOverlay.h:
298 Add WKBundlePageOverlayClear and plumb it through PageOverlay to the DrawingArea.
300 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
301 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
302 (WebKit::RemoteLayerTreeDrawingArea::clearPageOverlay):
303 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
304 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
305 (WebKit::TiledCoreAnimationDrawingArea::clearPageOverlay):
306 Set the layer to drawsContent=false and give it 0x0 size, effectively
307 removing its backing store.
309 2014-01-23 Anders Carlsson <andersca@apple.com>
311 Explicitly link XPC services with AppKit
312 https://bugs.webkit.org/show_bug.cgi?id=127520
313 <rdar://problem/15759718>
315 Reviewed by Mark Rowe.
317 Explicitly link XPC services that use the _NSApplicationMain run loop type with AppKit.
319 * Configurations/PluginService.32.xcconfig:
320 * Configurations/PluginService.64.xcconfig:
321 * Configurations/PluginService.Development.xcconfig:
322 * Configurations/WebContentService.Development.xcconfig:
323 * Configurations/WebContentService.xcconfig:
325 2014-01-23 Anders Carlsson <andersca@apple.com>
329 * UIProcess/API/mac/WKView.mm:
330 (-[WKView _windowDidChangeBackingProperties:]):
332 2014-01-23 Anders Carlsson <andersca@apple.com>
334 Another 32-bit build fix.
336 * UIProcess/API/mac/WKView.mm:
337 (-[WKView _windowDidChangeBackingProperties:]):
339 2014-01-23 Anders Carlsson <andersca@apple.com>
341 Clean up WKView.mm a little
342 https://bugs.webkit.org/show_bug.cgi?id=127517
344 Reviewed by Tim Horton.
346 Remove an unused ivar and migrate to API constants that were added in Lion.
348 * UIProcess/API/mac/WKView.mm:
349 (-[WKView setFrameSize:]):
350 (-[WKView addWindowObserversForWindow:]):
351 (-[WKView removeWindowObservers]):
352 (-[WKView viewDidMoveToWindow]):
353 (-[WKView _windowDidMiniaturize:]):
354 (-[WKView _windowDidResize:]):
355 (-[WKView _windowDidChangeBackingProperties:]):
357 2014-01-23 Anders Carlsson <andersca@apple.com>
359 Try to fix the 32-bit build.
361 * UIProcess/API/Cocoa/WKPreferences.mm:
363 2014-01-23 Anders Carlsson <andersca@apple.com>
365 Remove an unneeded synchronous back/forward message
366 https://bugs.webkit.org/show_bug.cgi?id=127516
368 Reviewed by Tim Horton.
370 * UIProcess/WebLoaderClient.cpp:
371 * UIProcess/WebLoaderClient.h:
372 * UIProcess/WebPageProxy.cpp:
373 (WebKit::WebPageProxy::initializeLoaderClient):
374 * UIProcess/WebPageProxy.h:
375 * UIProcess/WebPageProxy.messages.in:
376 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
377 (WebKit::WebFrameLoaderClient::shouldGoToHistoryItem):
378 * WebProcess/WebPage/WebPage.cpp:
379 (WebKit::WebPage::WebPage):
380 * WebProcess/WebPage/WebPage.h:
381 * WebProcess/WebPage/WebPage.messages.in:
383 2014-01-23 Anders Carlsson <andersca@apple.com>
385 Rename WKPreferences.h to WKPreferencesRef.h and add a stubbed out WKPreferences class
386 https://bugs.webkit.org/show_bug.cgi?id=127512
388 Reviewed by Dan Bernstein.
390 * UIProcess/API/C/WKAPICast.h:
391 * UIProcess/API/C/WKPreferencesRef.h: Renamed from Source/WebKit2/UIProcess/API/C/WKPreferences.h.
392 * UIProcess/API/C/WebKit2_C.h:
393 * UIProcess/API/Cocoa/WKPreferences.h: Added.
394 * UIProcess/API/Cocoa/WKPreferences.mm: Added.
395 * WebKit2.xcodeproj/project.pbxproj:
397 2014-01-23 Max Vujovic <mvujovic@adobe.com>
399 Remove CSS Custom Filters code and tests
400 https://bugs.webkit.org/show_bug.cgi?id=127382
402 Reviewed by Simon Fraser.
405 * Configurations/FeatureDefines.xcconfig:
406 * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
407 (IPC::ArgumentCoder<WebCore::FilterOperations>::encode):
408 (IPC::ArgumentCoder<WebCore::FilterOperations>::decode):
409 (IPC::ArgumentCoder<CoordinatedGraphicsState>::encode):
410 (IPC::ArgumentCoder<CoordinatedGraphicsState>::decode):
411 * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.h:
412 * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.cpp: Removed.
413 * Shared/CoordinatedGraphics/WebCustomFilterProgramProxy.h: Removed.
414 * Shared/WebCoreArgumentCoders.cpp:
415 (IPC::encodeFilterOperation):
416 (IPC::decodeFilterOperation):
417 * Shared/WebPreferencesStore.h:
418 * Shared/mac/RemoteLayerTreeTransaction.mm:
419 (WebKit::RemoteLayerTreeTextStream::operator<<):
420 * UIProcess/API/C/WKPreferences.cpp:
421 * UIProcess/API/C/WKPreferencesPrivate.h:
422 * WebProcess/InjectedBundle/InjectedBundle.cpp:
423 (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
424 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
425 (WebKit::CoordinatedLayerTreeHost::~CoordinatedLayerTreeHost):
426 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
427 * WebProcess/WebPage/WebPage.cpp:
428 (WebKit::WebPage::updatePreferences):
431 2014-01-23 Anders Carlsson <andersca@apple.com>
433 Add API::PolicyClient base class
434 https://bugs.webkit.org/show_bug.cgi?id=127509
436 Reviewed by Tim Horton.
438 * UIProcess/API/APIPolicyClient.h: Copied from Source/WebKit2/UIProcess/WebPolicyClient.h.
439 (API::PolicyClient::~PolicyClient):
440 * UIProcess/API/C/WKPage.cpp:
441 (WKPageSetPagePolicyClient):
442 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
443 (setUpPagePolicyClient):
444 (-[WKBrowsingContextController setPolicyDelegate:]):
445 * UIProcess/WebInspectorProxy.cpp:
446 (WebKit::WebInspectorProxy::createInspectorPage):
447 * UIProcess/WebPageProxy.cpp:
448 (WebKit::WebPageProxy::setPolicyClient):
449 (WebKit::WebPageProxy::close):
450 (WebKit::WebPageProxy::decidePolicyForNavigationAction):
451 (WebKit::WebPageProxy::decidePolicyForNewWindowAction):
452 (WebKit::WebPageProxy::decidePolicyForResponse):
453 (WebKit::WebPageProxy::unableToImplementPolicy):
454 * UIProcess/WebPageProxy.h:
455 * UIProcess/WebPolicyClient.cpp:
456 (WebKit::WebPolicyClient::WebPolicyClient):
457 (WebKit::WebPolicyClient::decidePolicyForNavigationAction):
458 (WebKit::WebPolicyClient::decidePolicyForNewWindowAction):
459 (WebKit::WebPolicyClient::decidePolicyForResponse):
460 * UIProcess/WebPolicyClient.h:
461 * WebKit2.xcodeproj/project.pbxproj:
463 2014-01-23 Anders Carlsson <andersca@apple.com>
465 Add init methods that create default configurations
466 https://bugs.webkit.org/show_bug.cgi?id=127503
468 Reviewed by Dan Bernstein.
470 * UIProcess/API/Cocoa/WKProcessClass.mm:
471 (-[WKProcessClass init]):
472 * UIProcess/API/Cocoa/WKWebView.mm:
473 (-[WKWebView initWithFrame:]):
475 2014-01-23 Brady Eidson <beidson@apple.com>
477 IDB: Implement cross-thread and IPC plumbing for 'get' support
478 https://bugs.webkit.org/show_bug.cgi?id=127501
480 Reviewed by Anders Carlsson.
482 Make the WebProcess call out to the DatabaseProcess with a get request, and handle the
483 response from the DatabaseProcess:
484 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
485 (WebKit::WebIDBServerConnection::get):
486 (WebKit::WebIDBServerConnection::didGetRecord):
487 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
488 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
490 Get the request from the WebProcess and forward it to the appropriate unique IDB database:
491 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
492 (WebKit::DatabaseProcessIDBConnection::getRecord):
493 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
494 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
496 Forward the request to the database thread, and response to the result from that thread:
497 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
498 (WebKit::UniqueIDBDatabase::getRecord):
499 (WebKit::UniqueIDBDatabase::getRecordFromBackingStore):
500 (WebKit::UniqueIDBDatabase::didGetRecordFromBackingStore):
501 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
503 IPC and asynchronous request infrastructure:
504 * Scripts/webkit2/messages.py:
507 * Shared/AsyncTask.h:
508 (WebKit::createAsyncTask):
510 * Shared/WebCoreArgumentCoders.cpp:
511 (IPC::ArgumentCoder<IDBGetResult>::encode):
512 (IPC::ArgumentCoder<IDBGetResult>::decode):
513 (IPC::ArgumentCoder<IDBKeyRangeData>::encode):
514 (IPC::ArgumentCoder<IDBKeyRangeData>::decode):
515 * Shared/WebCoreArgumentCoders.h:
517 2014-01-23 Tim Horton <timothy_horton@apple.com>
519 PDFPlugin: Use PDFPlugin even if there's an external plugin installed, if it's blocked
520 https://bugs.webkit.org/show_bug.cgi?id=127415
521 <rdar://problem/12482452>
523 Reviewed by Sam Weinig.
525 Allow use of PDFPlugin even if an external plugin is installed but blocked.
526 If an external plugin is installed and not blocked, we will continue to use that.
528 Inject a context menu item into the PDFPlugin context menu that allows the client
529 to unblock the plugin and reload the page (via the same mechanism that the
530 unavailable plugin button uses).
532 * UIProcess/API/C/WKPageLoaderClient.h:
533 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
534 (setUpPageLoaderClient):
535 * UIProcess/WebLoaderClient.cpp:
536 (WebKit::WebLoaderClient::pluginLoadPolicy):
537 * UIProcess/WebLoaderClient.h:
538 * UIProcess/WebPageProxy.cpp:
539 (WebKit::WebPageProxy::findPlugin):
540 * UIProcess/WebPageProxy.h:
541 * UIProcess/WebPageProxy.messages.in:
542 Add a new PluginLoadPolicy callback for the V4 client with
543 yet another string out-argument, to allow clients to customize the string
544 that will appear in the PDFPlugin context menu when it is used in place
547 * WebProcess/Plugins/PDF/PDFPlugin.h:
548 Add setUsedInPlaceOfBlockedPlugin(), which determines whether or not
549 we should include an item in the PDFPlugin context menu that acts identically
550 to the unavailable plugin button, allowing the client to potentially unblock
553 * WebProcess/Plugins/PDF/PDFPlugin.mm:
554 (-[WKPDFPluginContextMenuTarget initWithPDFPlugin:WebKit::]):
555 (-[WKPDFPluginContextMenuTarget useBlockedPlugin:]):
556 Added WKPDFPluginContextMenuTarget, which is the Objective-C object that the
557 aforementioned context menu item targets.
559 (WebKit::PDFPlugin::PDFPlugin):
560 By default, we won't show the extra context menu item.
562 (WebKit::PDFPlugin::handleContextMenuEvent):
563 If we were used in place of a blocked plugin, inject our additional context
564 menu item into the menu. If we were handed a custom string via setUsedInPlaceOfBlockedPlugin,
565 use that. Otherwise, use the generic string from WebCore's localized strings.
567 (WebKit::PDFPlugin::openWithPlugin):
568 Pretend that the user clicked the unavailable plugin button when they click
569 the injected context menu item.
571 (WebKit::PDFPlugin::setUsedInPlaceOfBlockedPlugin):
573 * WebProcess/WebPage/WebPage.cpp:
574 (WebKit::WebPage::createPlugin):
575 If we end up with a blocked plugin, but could have used PDFPlugin to display
576 the content, do so instead of showing the unavailable plugin indicator.
578 Pass PDFPlugin the custom context menu item title acquired from the client.
580 (WebKit::WebPage::canPluginHandleResponse):
582 2014-01-23 Tim Horton <timothy_horton@apple.com>
584 [iOS] [WK2] WKContentView has a black background
585 https://bugs.webkit.org/show_bug.cgi?id=127471
586 <rdar://problem/12287363>
588 Reviewed by Sam Weinig.
590 * UIProcess/API/ios/WKContentView.mm:
591 (-[WKContentView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
592 Instead of giving it a (black!) background to make hit-testing work, use CALayer SPI
593 to tell CA that the whole layer should be treated as opaque when it comes to hit-testing.
595 2014-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
597 [GLIB] Use GUniquePtr instead of GOwnPtr
598 https://bugs.webkit.org/show_bug.cgi?id=127431
600 Reviewed by Martin Robinson.
602 GUniquePtr is a template alias of std::unique_ptr with a custom
603 deleter that replaces GOwnPtr. GOwnPtr is still used for the cases
604 where the output pointer is needed, but it will also be replaced soon.
606 * Shared/Downloads/soup/DownloadSoup.cpp:
607 (WebKit::DownloadClient::didReceiveResponse):
608 * Shared/NativeWebKeyboardEvent.h:
609 * Shared/NativeWebMouseEvent.h:
610 * Shared/NativeWebWheelEvent.h:
611 * Shared/gtk/ArgumentCodersGtk.cpp:
612 (IPC::encodeGKeyFile):
613 (IPC::decodeGKeyFile):
616 * UIProcess/API/gtk/WebKitContextMenuItem.cpp:
617 (webkitContextMenuItemSetSubMenuFromGtkMenu):
618 * UIProcess/API/gtk/WebKitDownload.cpp:
619 (webkitDownloadDecideDestination):
620 (webkitDownloadNotifyProgress):
621 (webkitDownloadFailed):
622 * UIProcess/API/gtk/WebKitFileChooserRequest.cpp:
623 (webkit_file_chooser_request_select_files):
624 * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
625 (didReceiveWebViewMessageFromInjectedBundle):
626 (getInjectedBundleInitializationUserData):
627 * UIProcess/API/gtk/WebKitLoaderClient.cpp:
628 (didFailProvisionalLoadWithErrorForFrame):
629 (didFailLoadWithErrorForFrame):
630 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
631 (drawPagesForPrintingCompleted):
632 * UIProcess/API/gtk/WebKitURIRequest.cpp:
633 (webkit_uri_request_get_http_headers):
634 * UIProcess/API/gtk/WebKitURISchemeRequest.cpp:
635 (webkit_uri_scheme_request_get_scheme):
636 (webkit_uri_scheme_request_get_path):
637 * UIProcess/API/gtk/WebKitWebContext.cpp:
638 (injectedBundleFilename):
639 (webkit_web_context_set_favicon_database_directory):
640 * UIProcess/API/gtk/WebKitWebView.cpp:
641 (webkitWebViewLoadFail):
642 (webkitWebViewCreateJavaScriptDialog):
643 (fileChooserDialogResponseCallback):
644 (webkitWebViewLoadChanged):
645 (webkitWebViewLoadFailedWithTLSErrors):
646 (webkitWebViewPopulateContextMenu):
647 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
648 (webkitWebViewBaseButtonPressEvent):
649 (webkitWebViewBaseStartDrag):
650 * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
651 (WebKit::WebInspectorServer::platformResourceForPath):
652 * UIProcess/InspectorServer/soup/WebSocketServerSoup.cpp:
653 (WebKit::connectionCallback):
654 * UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
655 (WebKit::ProcessLauncher::launchProcess):
656 * UIProcess/gtk/WebContextGtk.cpp:
657 (WebKit::WebContext::platformDefaultApplicationCacheDirectory):
658 (WebKit::WebContext::platformDefaultDatabaseDirectory):
659 (WebKit::WebContext::platformDefaultIconDatabasePath):
660 (WebKit::WebContext::platformDefaultLocalStorageDirectory):
661 (WebKit::WebContext::platformDefaultDiskCacheDirectory):
662 * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
663 (WebKit::contextMenuItemVisibilityChanged):
664 * UIProcess/gtk/WebInspectorProxyGtk.cpp:
665 (WebKit::WebInspectorProxy::platformInspectedURLChanged):
666 * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
667 (WebKit::WebPopupMenuProxyGtk::createGtkActionForMenuItem):
668 * WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
669 * WebProcess/WebPage/gtk/WebPageGtk.cpp:
670 (WebKit::WebPage::platformInitialize):
671 * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
672 * WebProcess/gtk/WebProcessMainGtk.cpp:
673 * WebProcess/soup/WebSoupRequestManager.cpp:
674 (WebKit::WebSoupRequestManager::send):
676 2014-01-22 Simon Fraser <simon.fraser@apple.com>
678 Surround fixedVisibleContentRect code with USE(TILED_BACKING_STORE)
679 https://bugs.webkit.org/show_bug.cgi?id=127461
681 Reviewed by Andreas Kling.
683 The "fixedVisibleContentRect" code path is only used by platforms
684 which enabled TILED_BACKING_STORE, so to reduce confusion, surround
685 this code with #if USE(TILED_BACKING_STORE).
687 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
688 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
690 2014-01-22 Benjamin Poulain <bpoulain@apple.com>
692 Add a minimalistic SPI to control the layout size outside of WKView
693 https://bugs.webkit.org/show_bug.cgi?id=127403
695 Reviewed by Sam Weinig.
697 The API lets a client of WKView force the layout size. Once the size
698 is set this way, default update is disabled and the client needs to
699 update the size systematically as needed. This is done to avoid double
700 layout or flickering.
702 * UIProcess/API/Cocoa/WKViewPrivate.h:
703 * UIProcess/API/ios/WKViewIOS.mm:
704 (-[WKView _frameOrBoundsChanged]):
705 (-[WKView overrideMinimumLayoutSize:]):
707 2014-01-22 Jinwoo Song <jinwoo7.song@samsung.com>
709 [EFL][WK2] defaultTextEncodingName should be stored as a member variable of EwkSettings
710 https://bugs.webkit.org/show_bug.cgi?id=127420
712 Reviewed by Gyuyoung Kim.
714 As the defaultTextEncodingName is returned as a local WKEinaSharedString variable,
715 the stringshared data is de-refed by eina_stringshare_del().
716 To maintain the reference counter, the defaultTextEncodingName should be stored
717 as a member variable of EwkSettings class.
719 * UIProcess/API/efl/ewk_settings.cpp:
720 (ewk_settings_encoding_detector_enabled_get): Reordering.
721 (ewk_settings_default_text_encoding_name_set):
722 (ewk_settings_default_text_encoding_name_get):
723 (EwkSettings::setDefaultTextEncodingName):
724 (EwkSettings::defaultTextEncodingName):
725 * UIProcess/API/efl/ewk_settings_private.h:
726 (EwkSettings::EwkSettings): Add m_defaultTextEncodingName and setter/getter methods.
728 2014-01-22 Enrica Casucci <enrica@apple.com>
730 Support WebSelections in WK2 on iOS.
731 https://bugs.webkit.org/show_bug.cgi?id=127015
732 <rdar://problem/15211964>
734 Reviewed by Benjamin Poulain.
736 This change adds support for text only (non block mode)
737 selections in non editable content.
738 The main changes consist in hooking up the new gesture type
739 and touches to handle selection creation and interaction.
740 It also includes changes to the way first responder is handled
741 which includes the implementation of the isEditable method
742 to allow iOS to know when to show the keyboard.
744 * Shared/ios/WKGestureTypes.h:
745 * UIProcess/API/ios/WKInteractionView.mm:
746 (-[WKInteractionView isEditable]):
747 (-[WKInteractionView canBecomeFirstResponder]):
748 (-[WKInteractionView webSelectionRects]):
749 (-[WKInteractionView _highlightLongPressRecognized:]):
750 (-[WKInteractionView _singleTapRecognized:]):
751 (-[WKInteractionView inputAccessoryView]):
752 (-[WKInteractionView canPerformAction:withSender:]):
753 (-[WKInteractionView _showDictionary:]):
756 (selectionChangedWithGesture):
757 (selectionChangedWithTouch):
758 (-[WKInteractionView selectedTextRange]):
759 (-[WKInteractionView webSelectionAssistant]):
760 (-[WKInteractionView _startAssistingNode]):
761 (-[WKInteractionView _stopAssistingNode]):
762 (-[WKInteractionView _selectionChanged]):
763 * WebProcess/WebPage/ios/WebPageIOS.mm:
764 (WebKit::WebPage::selectWithGesture):
765 (WebKit::WebPage::updateSelectionWithTouches):
767 2014-01-22 Anders Carlsson <andersca@apple.com>
769 WKBrowsingContextController should not be an API wrapper around WebPageProxy
770 https://bugs.webkit.org/show_bug.cgi?id=127454
772 Reviewed by Dan Bernstein.
774 * Shared/Cocoa/APIObject.mm:
775 (API::Object::newObject):
776 * Shared/mac/ObjCObjectGraphCoders.mm:
777 (WebKit::WebContextObjCObjectGraphDecoderImpl::decode):
778 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
779 (-[WKBrowsingContextController _initWithPageRef:]):
780 (+[WKBrowsingContextController _browsingContextControllerForPageRef:]):
781 * UIProcess/API/Cocoa/WKBrowsingContextControllerInternal.h:
782 * UIProcess/API/Cocoa/WKProcessGroup.mm:
783 (didNavigateWithNavigationData):
784 (didPerformClientRedirect):
785 (didPerformServerRedirect):
786 (didUpdateHistoryTitle):
787 * UIProcess/API/ios/WKContentView.mm:
788 (-[WKContentView browsingContextController]):
789 * UIProcess/API/mac/WKView.mm:
790 (-[WKView browsingContextController]):
791 * UIProcess/ios/WebPageProxyIOS.mm:
792 (WebKit::WebPageProxy::platformInitialize):
793 * UIProcess/mac/WebPageProxyMac.mm:
794 (WebKit::WebPageProxy::platformInitialize):
796 2014-01-22 Myles C. Maxfield <mmaxfield@apple.com>
798 Remove CSS3_TEXT_DECORATION define
799 https://bugs.webkit.org/show_bug.cgi?id=127333
801 Reviewed by Simon Fraser.
803 This is required for unprefixing the text-decoration-* CSS properties.
805 * Configurations/FeatureDefines.xcconfig:
807 2014-01-22 Gavin Barraclough <barraclough@apple.com>
809 Debug mechanism to override process QoS on Mac
810 https://bugs.webkit.org/show_bug.cgi?id=127455
812 Reviewed by Anders Carlsson.
814 * NetworkProcess/NetworkProcess.messages.in:
816 * PluginProcess/PluginProcess.messages.in:
818 * Shared/ChildProcess.h:
819 * Shared/mac/ChildProcessMac.mm:
820 (WebKit::ChildProcess::setQOS):
821 - Added implementation of new message.
822 * UIProcess/Plugins/PluginProcessProxy.cpp:
823 (WebKit::PluginProcessProxy::didFinishLaunching):
824 - SetQOS for the PluginProcess.
825 * UIProcess/Plugins/PluginProcessProxy.h:
826 * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
827 (WebKit::pluginProcessLatencyQOS):
828 (WebKit::pluginProcessThroughputQOS):
829 - read NSUserDefaults.
830 * UIProcess/WebContext.cpp:
831 (WebKit::WebContext::ensureNetworkProcess):
832 - SetQOS for the NetworkProcess.
833 (WebKit::WebContext::createNewWebProcess):
834 - SetQOS for the WebProcess.
835 * UIProcess/WebContext.h:
836 * UIProcess/mac/WebContextMac.mm:
837 (WebKit::networkProcessLatencyQOS):
838 (WebKit::networkProcessThroughputQOS):
839 (WebKit::webProcessLatencyQOS):
840 (WebKit::webProcessThroughputQOS):
841 - read NSUserDefaults.
842 * WebProcess/WebProcess.messages.in:
845 2014-01-22 David Farler <dfarler@apple.com>
847 ASAN builds are broken - missing flags
848 https://bugs.webkit.org/show_bug.cgi?id=127231
850 Reviewed by Andy Estes.
852 Add missing $(ASAN_OTHER_LDFLAGS).
853 * Configurations/PluginProcessShim.xcconfig:
854 * Configurations/SecItemShim.xcconfig:
855 * Configurations/WebKit2.xcconfig:
856 * Configurations/WebProcessShim.xcconfig:
858 2014-01-22 Brady Eidson <beidson@apple.com>
860 The IDB backing store get() method shouldn't call IDB callbacks directly
861 https://bugs.webkit.org/show_bug.cgi?id=127453
863 Reviewed by Beth Dakin.
865 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
866 (WebKit::WebIDBServerConnection::get):
867 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
869 2014-01-22 Martin Hock <mhock@apple.com>
872 https://bugs.webkit.org/show_bug.cgi?id=127255
874 Reviewed by Alexey Proskuryakov.
876 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
877 (WebKit::storageSession):
878 * NetworkProcess/NetworkResourceLoader.cpp:
879 (WebKit::NetworkResourceLoader::NetworkResourceLoader):
880 (WebKit::NetworkResourceLoader::start):
881 * NetworkProcess/NetworkResourceLoader.h:
882 * NetworkProcess/RemoteNetworkingContext.h:
883 * NetworkProcess/mac/RemoteNetworkingContext.mm:
884 (WebKit::RemoteNetworkingContext::storageSession):
885 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
886 * Shared/Network/NetworkResourceLoadParameters.cpp:
887 (WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
888 (WebKit::NetworkResourceLoadParameters::encode):
889 (WebKit::NetworkResourceLoadParameters::decode):
890 * Shared/Network/NetworkResourceLoadParameters.h:
891 * Shared/SessionTracker.cpp:
892 (WebKit::staticSessionMap):
893 (WebKit::SessionTracker::sessionMap):
894 (WebKit::SessionTracker::session):
895 (WebKit::SessionTracker::setSession):
896 (WebKit::SessionTracker::destroySession):
897 * Shared/SessionTracker.h:
898 * UIProcess/API/C/WKPage.cpp:
900 * UIProcess/API/C/WKPage.h:
901 * UIProcess/API/C/WKSessionRef.cpp:
903 * UIProcess/API/C/WKSessionRef.h:
904 * UIProcess/WebPageProxy.cpp:
905 (WebKit::WebPageProxy::WebPageProxy):
906 (WebKit::WebPageProxy::setSession):
907 * UIProcess/WebPageProxy.h:
908 * WebProcess/Network/WebResourceLoadScheduler.cpp:
909 (WebKit::WebResourceLoadScheduler::scheduleLoad):
910 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
911 (WebKit::WebPlatformStrategies::loadResourceSynchronously):
912 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
913 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
914 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
915 (WebKit::WebFrameNetworkingContext::storageSession):
916 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
917 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
918 * WebProcess/WebPage/WebFrame.cpp:
919 (WebKit::WebFrame::startDownload):
920 * WebProcess/WebPage/WebPage.cpp:
921 (WebKit::WebPage::WebPage):
922 (WebKit::WebPage::sessionID):
923 (WebKit::WebPage::updatePreferences):
924 * WebProcess/WebPage/WebPage.h:
925 (WebKit::WebPage::setSessionID):
926 * WebProcess/WebPage/WebPage.messages.in:
928 2014-01-21 Brady Eidson <beidson@apple.com>
931 <rdar://problem/15779643> and https://bugs.webkit.org/show_bug.cgi?id=127401
933 Reviewed by Alexey Proskuryakov.
935 Ship putRecord requests over to the DatabaseProcess, and listen for completion from the DatabaseProcess:
936 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
937 (WebKit::WebIDBServerConnection::put):
938 (WebKit::WebIDBServerConnection::didPutRecord):
939 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
940 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
942 Pass off the putRecord request to the Unique IDBDatabase:
943 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
944 (WebKit::DatabaseProcessIDBConnection::putRecord):
945 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
946 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
948 Pass off the putRecord request to the backing store:
949 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
950 (WebKit::UniqueIDBDatabase::putRecord):
951 (WebKit::UniqueIDBDatabase::putRecordInBackingStore):
952 (WebKit::UniqueIDBDatabase::didPutRecordInBackingStore):
953 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
955 Add backing store methods related to putRecord, though only one is critical right now:
956 * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
957 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
958 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
959 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::generateKey):
960 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::keyExistsInObjectStore):
961 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::putRecord):
962 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::updateKeyGenerator):
963 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
965 Add the IDBKeyData type to IPC:
966 * Scripts/webkit2/messages.py:
969 * Shared/WebCoreArgumentCoders.cpp:
970 (IPC::ArgumentCoder<IDBKeyData>::encode):
971 (IPC::ArgumentCoder<IDBKeyData>::decode):
972 * Shared/WebCoreArgumentCoders.h:
974 * DatabaseProcess/IndexedDB/IDBSerialization.cpp:
975 (WebKit::serializeIDBKey):
976 * DatabaseProcess/IndexedDB/IDBSerialization.h:
978 Implement more cross-thread copying:
979 * Shared/WebCrossThreadCopier.cpp:
980 (WebCore::Vector<uint8_t>>::copy):
981 (WebCore::Vector<Vector<IDBKeyData>>>::copy):
982 (WebCore::ASCIILiteral>::copy):
983 * Shared/WebCrossThreadCopier.h:
985 Implement more numbers of generic AsyncTask templates:
986 * Shared/AsyncTask.h:
987 (WebKit::createAsyncTask):
989 2014-01-22 Anders Carlsson <andersca@apple.com>
991 WKProcessClass should create a WebContext
992 https://bugs.webkit.org/show_bug.cgi?id=127449
993 <rdar://problem/15885582>
995 Reviewed by Dan Bernstein.
997 * Shared/Cocoa/APIObject.mm:
998 (API::Object::newObject):
999 * UIProcess/API/Cocoa/WKBrowsingContextController.h:
1000 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
1001 * UIProcess/API/Cocoa/WKProcessClass.mm:
1002 (-[WKProcessClass initWithConfiguration:]):
1003 (-[WKProcessClass dealloc]):
1004 (-[WKProcessClass API::]):
1005 * UIProcess/API/Cocoa/WKProcessClassInternal.h: Renamed from Source/WebKit2/UIProcess/API/Cocoa/WKProcessGroupInternal.h.
1007 * UIProcess/API/Cocoa/WKProcessGroup.mm:
1008 (-[WKProcessGroup initWithInjectedBundleURL:]):
1009 * UIProcess/API/ios/WKContentView.mm:
1010 (-[WKContentView _decidePolicyForGeolocationRequestFromOrigin:frame:request:]):
1011 * WebKit2.xcodeproj/project.pbxproj:
1013 2014-01-22 Tim Horton <timothy_horton@apple.com>
1015 Crashes in DrawingAreaProxy::setExposedRect (null DrawingAreaProxy)
1016 https://bugs.webkit.org/show_bug.cgi?id=127445
1018 Reviewed by Anders Carlsson.
1020 * UIProcess/API/ios/WKContentView.mm:
1021 (-[WKContentView _updateViewExposedRect]):
1022 * UIProcess/API/mac/WKView.mm:
1023 (-[WKView _updateViewExposedRect]):
1026 2014-01-22 Anders Carlsson <andersca@apple.com>
1029 https://bugs.webkit.org/show_bug.cgi?id=127444
1030 <rdar://problem/15884418>
1032 Reviewed by Dan Bernstein.
1034 * UIProcess/API/Cocoa/WKWebView.h: Added.
1035 * UIProcess/API/Cocoa/WKWebView.mm: Added.
1036 (-[WKWebView initWithFrame:configuration:]):
1037 (-[WKWebView configuration]):
1038 * WebKit2.xcodeproj/project.pbxproj:
1040 2014-01-22 Anders Carlsson <andersca@apple.com>
1044 * UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
1046 2014-01-22 Tim Horton <timothy_horton@apple.com>
1048 [wk2] Scroll pinning state is wrong until the first scroll event
1049 https://bugs.webkit.org/show_bug.cgi?id=127437
1051 Reviewed by Simon Fraser.
1053 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1054 (WebKit::WebFrameLoaderClient::didChangeScrollOffset):
1055 * WebProcess/WebPage/WebPage.cpp:
1056 (WebKit::WebPage::updateMainFrameScrollOffsetPinning):
1057 (WebKit::WebPage::didCommitLoad):
1058 * WebProcess/WebPage/WebPage.h:
1059 Rename WebPage::didChangeScrollOffsetForMainFrame to
1060 updateMainFrameScrollOffsetPinning, which better describes what it
1061 actually does. Call it when a load is committed, so that we have valid
1062 pinning state before the first scroll event comes in.
1064 2014-01-22 Anders Carlsson <andersca@apple.com>
1066 Add WKWebViewConfiguration class
1067 https://bugs.webkit.org/show_bug.cgi?id=127436
1068 <rdar://problem/15882923>
1070 Reviewed by Tim Horton.
1072 * UIProcess/API/Cocoa/WKWebViewConfiguration.h: Added.
1073 * UIProcess/API/Cocoa/WKWebViewConfiguration.mm: Added.
1074 (-[WKWebViewConfiguration copyWithZone:]):
1075 * WebKit2.xcodeproj/project.pbxproj:
1077 2014-01-22 Alice Barraclough <alice.liu@apple.com>
1079 [WK2] add cocoa API for private browsing setting
1080 https://bugs.webkit.org/show_bug.cgi?id=127391
1082 Reviewed by Sam Weinig.
1084 * UIProcess/API/Cocoa/WKBrowsingContextGroup.h:
1085 * UIProcess/API/Cocoa/WKBrowsingContextGroup.mm:
1086 (-[WKBrowsingContextGroup privateBrowsingEnabled]):
1087 (-[WKBrowsingContextGroup setPrivateBrowsingEnabled:]):
1088 Adding some API for the private Browsing setting. Reaches through
1089 to the WKPageGroup's preferences.
1091 2014-01-22 Anders Carlsson <andersca@apple.com>
1093 Add WKProcessClass class
1094 https://bugs.webkit.org/show_bug.cgi?id=127433
1095 <rdar://problem/15882582>
1097 Reviewed by Dan Bernstein.
1099 Add a stubbed out WKProcessClass class.
1101 * Shared/API/Cocoa/WKFoundation.h:
1102 * UIProcess/API/Cocoa/WKProcessClass.h: Added.
1103 * UIProcess/API/Cocoa/WKProcessClass.mm: Added.
1104 (-[WKProcessClass initWithConfiguration:]):
1105 (-[WKProcessClass configuration]):
1106 * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm:
1107 * WebKit2.xcodeproj/project.pbxproj:
1109 2014-01-22 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
1111 [EFL][GTK] Get EFL and GTK compiling with ACCESSIBILITY disabled
1112 https://bugs.webkit.org/show_bug.cgi?id=127119
1114 Reviewed by Mario Sanchez Prada.
1116 Guarding ACCESSIBILITY code with HAVE(ACCESSIBILITY).
1118 * WebProcess/WebPage/WebPage.cpp:
1119 (WebKit::WebPage::WebPage):
1120 * WebProcess/WebPage/WebPage.h:
1121 * WebProcess/WebPage/gtk/WebPageGtk.cpp:
1122 (WebKit::WebPage::platformInitialize):
1124 2014-01-22 Martin Robinson <mrobinson@igalia.com>
1126 [GTK][CMake] Add support for building the NetworkProcess
1127 https://bugs.webkit.org/show_bug.cgi?id=127195
1129 Reviewed by Daniel Bates.
1131 * CMakeLists.txt: Add shared network process build instructions.
1132 * PlatformEfl.cmake: Move build instructions to the platform-independent file.
1133 * PlatformGTK.cmake: Add some files to the source lists.
1135 2014-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
1137 REGRESSION(r162441): [GTK] ResourceLoader is broken when there aren't user extensions
1138 https://bugs.webkit.org/show_bug.cgi?id=127422
1140 Reviewed by Anders Carlsson.
1142 * WebProcess/gtk/WebGtkExtensionManager.cpp:
1143 (WebKit::WebGtkExtensionManager::initialize): Always create the
1144 WebKitWebExtension object since it's used internally to implement
1145 the ResourceLoader client.
1147 2014-01-22 Jer Noble <jer.noble@apple.com>
1149 [Mac][WK2] Unable to play video protected by session cookies
1150 https://bugs.webkit.org/show_bug.cgi?id=127207
1152 Reviewed by Sam Weinig.
1154 Recent changes in our underlying media frameworks caused our shimmed methods
1155 in CookieStorageShim to stop being called. Insert an objective-c shim in addition
1156 to our original shim to intercept pulling cookies out of cookie storage.
1158 * Shared/mac/CookieStorageShim.mm: Renamed from Source/WebKit2/Shared/mac/CookieStorageShim.cpp.
1159 (WebKit::CookieStorageShim::initialize): Insert the shim.
1160 (-[WKNSURLSessionLocal _copyCookiesForRequestUsingAllAppropriateStorageSemantics:]):
1161 Pass through to webKitCookieStorageCopyRequestHeaderFieldsForURL().
1162 * WebKit2.xcodeproj/project.pbxproj: Rename CookieStorageShim.cpp -> .mm.
1164 2014-01-22 Yongjun Zhang <yongjun_zhang@apple.com>
1166 https://bugs.webkit.org/show_bug.cgi?id=127380
1167 Add more methods to WKWebProcessPlugInNodeHandle.
1169 Reviewed by Sam Weinig.
1171 Add a static method that creates a WKWebProcessPlugInNodeHandle from a JSValue* and a JSContext*. Also
1172 add a method to return the iframe's content frame from a WKWebProcessPlugInNodeHandle.
1174 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.h:
1175 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:
1176 (+[WKWebProcessPlugInNodeHandle nodeHandleWithJSValue:inContext:]):
1177 (-[WKWebProcessPlugInNodeHandle htmlIFrameElementContentFrame]):
1179 2014-01-22 Carlos Garcia Campos <cgarcia@igalia.com>
1181 Unreviewed. Fix GTK+ build with CUSTOM_PROTOCOL enabled after r162449.
1183 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h:
1184 Use override instead of OVERRIDE.
1186 2014-01-22 Koop Mast <kwm@FreeBSD.org>
1188 Build fixes for FreeBSD.
1189 https://bugs.webkit.org/show_bug.cgi?id=126779
1191 Reviewed by Csaba Osztrogonác.
1193 * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
1194 (WebKit::PluginProcessProxy::scanPlugin):
1196 2014-01-22 Jinwoo Song <jinwoo7.song@samsung.com>
1198 [EFL][WK2] Use std::function in the rest of EFL's WorkQueue implementation
1199 https://bugs.webkit.org/show_bug.cgi?id=127397
1201 Reviewed by Anders Carlsson.
1203 Move to using std::function and move semantics in WorkQueue::registerSocketEventHandler
1204 and DispatchQueue::setSocketEventHandler.
1206 * Platform/IPC/unix/ConnectionUnix.cpp:
1207 (IPC::Connection::open):
1208 * Platform/WorkQueue.h:
1209 * Platform/efl/DispatchQueueEfl.cpp:
1210 (DispatchQueue::setSocketEventHandler):
1211 * Platform/efl/DispatchQueueEfl.h:
1212 * Platform/efl/WorkQueueEfl.cpp:
1213 (WorkQueue::registerSocketEventHandler):
1215 2014-01-21 Tim Horton <timothy_horton@apple.com>
1217 [wk2] De-.get()ify receivers of Objective-C messages
1218 https://bugs.webkit.org/show_bug.cgi?id=127398
1220 Reviewed by Sam Weinig.
1222 RetainPtr does the right thing when you use it as the
1223 receiver of an Obj-C message, so we don't need .get().
1225 Long and useless file list elided.
1227 2014-01-21 Brady Eidson <beidson@apple.com>
1229 The IDB backing store put() method shouldn't call IDB callbacks directly
1230 https://bugs.webkit.org/show_bug.cgi?id=127399
1232 Reviewed by Beth Dakin.
1234 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
1235 (WebKit::WebIDBServerConnection::put):
1236 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
1238 2014-01-21 Anders Carlsson <andersca@apple.com>
1242 * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm:
1244 2014-01-21 Jinwoo Song <jinwoo7.song@samsung.com>
1246 [EFL][WK2] Use nanoseconds in TimerWorkItem class consistently
1247 https://bugs.webkit.org/show_bug.cgi?id=127263
1249 Reviewed by Gyuyoung Kim.
1251 After r162276 and r162300, TimerWorkItem is getting nanoseconds as parameter.
1252 So it would be better to use nanoseconds in TimerWorkItem for consistency.
1254 * Platform/efl/DispatchQueueEfl.cpp:
1255 (DispatchQueue::performTimerWork):
1256 (DispatchQueue::insertTimerWorkItem):
1257 (DispatchQueue::getNextTimeOut):
1258 * Platform/efl/DispatchQueueWorkItemEfl.h:
1259 (TimerWorkItem::create):
1260 (TimerWorkItem::expirationTimeNanoSeconds):
1261 (TimerWorkItem::hasExpired):
1262 (TimerWorkItem::TimerWorkItem):
1264 2014-01-21 Tim Horton <timothy_horton@apple.com>
1266 Don't copy ViewGestureGeometryCollector.messages.in into the WebProcess bundle.
1268 Reviewed by Simon Fraser.
1270 * WebKit2.xcodeproj/project.pbxproj:
1272 2014-01-21 Anders Carlsson <andersca@apple.com>
1274 Add a WKProcessClassConfiguration class
1275 https://bugs.webkit.org/show_bug.cgi?id=127378
1276 <rdar://problem/15875413>
1278 Reviewed by Dan Bernstein.
1280 * UIProcess/API/Cocoa/WKProcessClassConfiguration.h: Added.
1281 * UIProcess/API/Cocoa/WKProcessClassConfiguration.mm: Added.
1282 (-[WKProcessClassConfiguration copyWithZone:]):
1283 * UIProcess/API/Cocoa/WKProcessClassConfigurationPrivate.h: Added.
1284 * WebKit2.xcodeproj/project.pbxproj:
1286 2014-01-21 Tim Horton <timothy_horton@apple.com>
1288 Make ViewGestureController Obj-C++
1289 https://bugs.webkit.org/show_bug.cgi?id=127385
1291 Reviewed by Dean Jackson.
1293 * UIProcess/mac/ViewGestureController.mm: Renamed from Source/WebKit2/UIProcess/mac/ViewGestureController.cpp.
1294 * WebKit2.xcodeproj/project.pbxproj:
1296 2014-01-21 Anders Carlsson <andersca@apple.com>
1298 Make all the WebKit2 headers private and move Cocoa UIProcess API headers to a Deprecated group
1299 https://bugs.webkit.org/show_bug.cgi?id=127374
1301 Reviewed by Dan Bernstein.
1303 * WebKit2.xcodeproj/project.pbxproj:
1305 2014-01-21 Commit Queue <commit-queue@webkit.org>
1307 Unreviewed, rolling out r162452.
1308 http://trac.webkit.org/changeset/162452
1309 https://bugs.webkit.org/show_bug.cgi?id=127366
1311 broke a few tests on all Mac WebKit1 bots (Requested by
1312 thorton on #webkit).
1314 * WebProcess/WebPage/WebPage.cpp:
1315 (WebKit::WebPage::WebPage):
1316 (WebKit::WebPage::setActive):
1317 (WebKit::WebPage::setViewIsVisible):
1318 (WebKit::WebPage::setFocused):
1319 (WebKit::WebPage::setIsInWindow):
1320 (WebKit::WebPage::setViewStateInternal):
1321 (WebKit::WebPage::setIsVisuallyIdle):
1322 * WebProcess/WebPage/WebPage.h:
1324 2014-01-21 Martin Hock <mhock@apple.com>
1326 Trivial Session API cleanup.
1327 https://bugs.webkit.org/show_bug.cgi?id=127356
1329 Reviewed by Alexey Proskuryakov.
1331 * UIProcess/API/C/WKSessionRef.cpp:
1332 (WKSessionIsEphemeral):
1333 * UIProcess/API/C/WKSessionRef.h:
1335 2014-01-16 Simon Fraser <simon.fraser@apple.com>
1337 Log an error for a common cause of WebProcess early launch crashing in misconfigured development builds
1338 https://bugs.webkit.org/show_bug.cgi?id=127121
1340 Reviewed by Anders Carlsson.
1342 A common cause of early WebProcess crashes during development is a null return
1343 from CFBundleGetValueForInfoDictionaryKey(), so log and return an error in
1344 this case rather than passing a null C string to dlsym().
1346 * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm:
1347 (WebKit::BootstrapMain):
1349 2014-01-21 Tim Horton <timothy_horton@apple.com>
1351 Sort headers after the rename that happened in r162454.
1353 * UIProcess/mac/RemoteLayerTreeHost.mm:
1354 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
1356 2014-01-21 Tim Horton <timothy_horton@apple.com>
1358 Address late review naming comments after r162453.
1360 * UIProcess/API/mac/WKView.mm:
1361 And, fix the build by adding an include I accidentally missed.
1363 * UIProcess/mac/RemoteLayerTreeHost.mm:
1364 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm:
1366 2014-01-21 Tim Horton <timothy_horton@apple.com>
1368 Keep CALayer implicit animation disabling code in a single place
1369 https://bugs.webkit.org/show_bug.cgi?id=127355
1371 Reviewed by Simon Fraser.
1373 * Shared/mac/RemoteLayerTreePropertyApplier.h:
1374 * Shared/mac/RemoteLayerTreePropertyApplier.mm:
1375 Remove disableActionsForLayer.
1377 * UIProcess/API/mac/WKView.mm:
1378 (-[WKView _rootLayer]):
1379 Disable actions on the root layer. It doesn't need them, and currently
1380 isn't affected by implicit animations, but future patches which animate
1381 the root layer will benefit from this.
1383 * UIProcess/mac/RemoteLayerTreeHost.mm:
1384 (WebKit::RemoteLayerTreeHost::createLayer):
1385 Use web_disableAllActions instead of disableActionsForLayer.
1387 * WebKit2.xcodeproj/project.pbxproj:
1388 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.mm: Renamed from Source/WebKit2/WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.cpp.
1389 (PlatformCALayerRemoteCustom::PlatformCALayerRemoteCustom):
1390 (PlatformCALayerRemoteCustom::~PlatformCALayerRemoteCustom):
1391 (PlatformCALayerRemoteCustom::hostingContextID):
1392 Use web_disableAllActions instead of disableActionsForLayer.
1393 This requires making this file Obj-C++ but that's OK since it's Mac/iOS only.
1395 2014-01-21 Gavin Barraclough <barraclough@apple.com>
1397 Change Page, FocusController to use ViewState
1398 https://bugs.webkit.org/show_bug.cgi?id=126533
1400 Reviewed by Tim Horton.
1402 These classes currently maintain a set of separate fields to represent the view state;
1403 combine these into a single field, and allow WebPage to send the combined update rather
1404 than individual changes.
1406 Maintain existing interface for WebKit1 clients.
1408 * WebProcess/WebPage/WebPage.cpp:
1409 (WebKit::WebPage::WebPage):
1410 - Combined separate calls to Page::setViewState.
1411 (WebKit::WebPage::updateIsInWindow):
1412 - Simplied from setIsInWindow.
1413 (WebKit::WebPage::setViewState):
1414 - Combined separate calls to Page::setViewState.
1415 * WebProcess/WebPage/WebPage.h:
1416 - Declare updateIsInWindow.
1418 2014-01-21 Carlos Garcia Campos <cgarcia@igalia.com>
1420 [SOUP] Implement CUSTOM PROTOCOLS
1421 https://bugs.webkit.org/show_bug.cgi?id=125583
1423 Reviewed by Anders Carlsson.
1425 Add new classes to implement CustomProtocols for soup. The
1426 implementation is the same, but using the CustomProtocol API and
1427 messages. The current implementation can be removed once all ports
1428 using soup switch to using CustomProtocols.
1430 * GNUmakefile.am: Add new include paths.
1431 * GNUmakefile.list.am: Add new files to compilation.
1432 * PlatformGTK.cmake: Add new files to compilation.
1433 * Shared/API/c/soup/WKBaseSoup.h:
1434 * Shared/APIObject.h:
1435 * Shared/Network/CustomProtocols/CustomProtocolManager.h:
1436 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.cpp: Added.
1437 (WebKit::generateCustomProtocolID):
1438 (WebKit::WebSoupRequestAsyncData::WebSoupRequestAsyncData):
1439 (WebKit::WebSoupRequestAsyncData::~WebSoupRequestAsyncData):
1440 (WebKit::WebSoupRequestAsyncData::requestFailed):
1441 (WebKit::WebSoupRequestAsyncData::releaseTask):
1442 (WebKit::CustomProtocolManagerImpl::CustomProtocolManagerImpl):
1443 (WebKit::CustomProtocolManagerImpl::~CustomProtocolManagerImpl):
1444 (WebKit::CustomProtocolManagerImpl::registerScheme):
1445 (WebKit::CustomProtocolManagerImpl::supportsScheme):
1446 (WebKit::CustomProtocolManagerImpl::didFailWithError):
1447 (WebKit::CustomProtocolManagerImpl::didLoadData):
1448 (WebKit::CustomProtocolManagerImpl::didReceiveResponse):
1449 (WebKit::CustomProtocolManagerImpl::didFinishLoading):
1450 (WebKit::CustomProtocolManagerImpl::send):
1451 (WebKit::CustomProtocolManagerImpl::finish):
1452 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerImpl.h: Added.
1453 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp:
1454 (WebKit::CustomProtocolManager::CustomProtocolManager):
1455 (WebKit::CustomProtocolManager::initialize):
1456 (WebKit::CustomProtocolManager::registerScheme):
1457 (WebKit::CustomProtocolManager::supportsScheme):
1458 (WebKit::CustomProtocolManager::didFailWithError):
1459 (WebKit::CustomProtocolManager::didLoadData):
1460 (WebKit::CustomProtocolManager::didReceiveResponse):
1461 (WebKit::CustomProtocolManager::didFinishLoading):
1462 * Shared/WebProcessCreationParameters.cpp:
1463 (WebKit::WebProcessCreationParameters::encode):
1464 (WebKit::WebProcessCreationParameters::decode):
1465 * Shared/WebProcessCreationParameters.h:
1466 * UIProcess/API/C/soup/WKAPICastSoup.h:
1467 * UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.cpp: Copied from Source/WebKit2/UIProcess/soup/WebContextSoup.cpp.
1468 (WKSoupCustomProtocolRequestManagerGetTypeID):
1469 (WKSoupCustomProtocolRequestManagerSetClient):
1470 * UIProcess/API/C/soup/WKSoupCustomProtocolRequestManager.h: Added.
1471 * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
1472 * UIProcess/Network/CustomProtocols/mac/CustomProtocolManagerProxyMac.mm:
1473 (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
1474 * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp:
1475 (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
1476 (WebKit::CustomProtocolManagerProxy::startLoading):
1477 (WebKit::CustomProtocolManagerProxy::stopLoading):
1478 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.cpp: Added.
1479 (WebKit::WebSoupCustomProtocolRequestManager::supplementName):
1480 (WebKit::WebSoupCustomProtocolRequestManager::create):
1481 (WebKit::WebSoupCustomProtocolRequestManager::WebSoupCustomProtocolRequestManager):
1482 (WebKit::WebSoupCustomProtocolRequestManager::~WebSoupCustomProtocolRequestManager):
1483 (WebKit::WebSoupCustomProtocolRequestManager::initializeClient):
1484 (WebKit::WebSoupCustomProtocolRequestManager::contextDestroyed):
1485 (WebKit::WebSoupCustomProtocolRequestManager::processDidClose):
1486 (WebKit::WebSoupCustomProtocolRequestManager::refWebContextSupplement):
1487 (WebKit::WebSoupCustomProtocolRequestManager::derefWebContextSupplement):
1488 (WebKit::WebSoupCustomProtocolRequestManager::registerSchemeForCustomProtocol):
1489 (WebKit::WebSoupCustomProtocolRequestManager::unregisterSchemeForCustomProtocol):
1490 (WebKit::WebSoupCustomProtocolRequestManager::startLoading):
1491 (WebKit::WebSoupCustomProtocolRequestManager::stopLoading):
1492 (WebKit::WebSoupCustomProtocolRequestManager::didReceiveResponse):
1493 (WebKit::WebSoupCustomProtocolRequestManager::didLoadData):
1494 (WebKit::WebSoupCustomProtocolRequestManager::didFailWithError):
1495 (WebKit::WebSoupCustomProtocolRequestManager::didFinishLoading):
1496 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManager.h: Added.
1497 (WebKit::WebSoupCustomProtocolRequestManager::registeredSchemesForCustomProtocols):
1498 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.cpp: Added.
1499 (WebKit::WebSoupCustomProtocolRequestManagerClient::startLoading):
1500 (WebKit::WebSoupCustomProtocolRequestManagerClient::stopLoading):
1501 * UIProcess/Network/CustomProtocols/soup/WebSoupCustomProtocolRequestManagerClient.h: Added.
1502 * UIProcess/Network/NetworkProcessProxy.cpp:
1503 (WebKit::NetworkProcessProxy::NetworkProcessProxy):
1504 * UIProcess/WebContext.cpp:
1505 (WebKit::WebContext::WebContext):
1506 * UIProcess/WebPageProxy.cpp:
1507 * UIProcess/WebPageProxy.h:
1508 * UIProcess/WebPageProxy.messages.in:
1509 * UIProcess/WebProcessProxy.cpp:
1510 (WebKit::WebProcessProxy::WebProcessProxy):
1511 * UIProcess/gtk/WebContextGtk.cpp:
1512 (WebKit::WebContext::platformInitializeWebProcess):
1513 * UIProcess/soup/WebContextSoup.cpp:
1514 (WebKit::WebContext::platformInitializeNetworkProcess):
1515 * WebProcess/WebProcess.cpp:
1516 (WebKit::WebProcess::WebProcess):
1517 * WebProcess/soup/WebKitSoupRequestGeneric.cpp:
1518 (webkitSoupRequestGenericSendAsync):
1519 (webkitSoupRequestGenericSendFinish):
1520 * WebProcess/soup/WebKitSoupRequestGeneric.h:
1521 * WebProcess/soup/WebProcessSoup.cpp:
1522 (WebKit::WebProcess::platformInitializeWebProcess):
1524 2014-01-21 Adrian Perez de Castro <aperez@igalia.com>
1526 [GTK] Allow passing extra data to web extensions
1527 https://bugs.webkit.org/show_bug.cgi?id=125990
1529 Reviewed by Carlos Garcia Campos.
1531 Allow passing additional information to the injected bundle. On top
1532 of the string containing the path to the web extensions directory,
1533 a GVariant can be set with additional data using
1534 webkit_web_context_set_web_extensions_initialization_user_data().
1535 Also, a new initialize-web-extensions signal is emitted before
1536 launching a new WebProcess to allow setting different user data
1537 for each process. The GVariant is serialized as a string, passed
1538 to the injected bundle, and the injected bundle deserializes back
1539 the data, which is passed to web extensions which define the
1540 webkit_web_extension_initialize_with_user_data() function (for
1541 backwards compatibility, webkit_web_extension_initialize() is
1542 used as a fallback.)
1544 * UIProcess/API/gtk/WebKitInjectedBundleClient.cpp:
1545 (getInjectedBundleInitializationUserData): Define new callback
1546 function which causes emission of the initialize-web-extensions
1547 signal, and serializes the data to be passed to the web process.
1548 (attachInjectedBundleClientToContext): Set the
1549 getInjectedBundleInitializationUserData() callback.
1550 * UIProcess/API/gtk/WebKitWebContext.cpp:
1551 (webkit_web_context_class_init): Define the
1552 initialize-web-extensions signal.
1553 (webkit_web_context_set_web_extensions_directory):
1554 Web extensions directory as now member of WebKitWebContextPrivate,
1555 to be able to retrieve it later.
1556 (webkit_web_context_set_web_extensions_initialization_user_data):
1557 New API method to set the user data passed to the web extensions
1559 (webkitWebContextInitializeWebExtensions): Private function used
1560 to trigger emission of the initialize-web-extensions signal.
1561 * UIProcess/API/gtk/WebKitWebContext.h:
1562 Added prototype for new API method
1563 webkit_web_context_set_web_extensions_initialization_user_data().
1564 * UIProcess/API/gtk/WebKitWebContextPrivate.h:
1565 Prototype of the new private function.
1566 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
1567 Add new public API bits to the documentation.
1568 * WebProcess/gtk/WebGtkExtensionManager.cpp:
1569 (WebKit::WebGtkExtensionManager::initialize):
1570 Deserialize the data received from the UI process and pass it to
1571 webkit_web_extension_initialize_with_user_data() if available,
1572 keeping webkit_web_extension_initialize() as fallback.
1574 2014-01-20 Ryuan Choi <ryuan.choi@samsung.com>
1576 [EFL][WK2] Move isEwkViewEvasObject back to ewk_view.cpp
1577 https://bugs.webkit.org/show_bug.cgi?id=127261
1579 Reviewed by Gyuyoung Kim.
1581 isEwkViewEvasObject is general check routine of EFL and mainly used in
1582 ewk_view.cpp but it was in EwkView.cpp since separated EwkView.cpp from ewk_view.cpp
1584 This patch moves it to EwkView.h as inline function with small refactoring.
1585 In addition, this patch added EINA_UNLIKELY keyword in cold paths.
1587 * UIProcess/API/efl/EwkView.cpp:
1588 (defaultSmartClassInstance):
1590 (toEwkView): Moved it from bottom not to expose it to header file.
1591 * UIProcess/API/efl/EwkView.h:
1592 * UIProcess/API/efl/ewk_view.cpp:
1593 (isEwkViewEvasObject):
1596 2014-01-20 Eunmi Lee <eunmi15.lee@samsung.com>
1598 [EFL][WK2] Amount of scrolling is different from movement of touch when device pixel ratio is not 1.
1599 https://bugs.webkit.org/show_bug.cgi?id=127268
1601 Reviewed by Gyuyoung Kim.
1603 Amount of scrolling should be same with movement of touch even though
1604 device pixel ratio is not 1, so apply device pixel ratio to the new
1605 position of scrollBy().
1607 * UIProcess/API/efl/EwkView.cpp:
1608 (EwkView::scrollBy):
1610 2014-01-20 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
1612 [WK2] Setting m_pageScaleFactor directly in WebPageProxy::scalePage
1613 https://bugs.webkit.org/show_bug.cgi?id=127090
1615 Reviewed by Simon Fraser.
1617 When the client side sets the scale factor, the UIProcess will send the message to WebProcess and only after
1618 WebPageProxy::pageScaleFactorDidChange is called the desired scale factor is returned correctly by
1619 WebPageProxy::pageScaleFactor.
1620 This will avoid the client side retrieve a wrong scale factor while UIProcess and WebProcess gets synchronized.
1622 * UIProcess/WebPageProxy.cpp:
1623 (WebKit::WebPageProxy::scalePage):
1625 2014-01-20 Zan Dobersek <zdobersek@igalia.com>
1627 [GTK][WK2] Move the rest of GTK's WorkQueue implementation to std::function
1628 https://bugs.webkit.org/show_bug.cgi?id=127273
1630 Reviewed by Anders Carlsson.
1632 Move to using std::function and move semantics in WorkQueue::registerSocketEventHandler
1633 and WorkQueue::SocketEventSource.
1635 * Platform/IPC/unix/ConnectionUnix.cpp:
1636 (IPC::Connection::open):
1637 * Platform/WorkQueue.h:
1638 * Platform/gtk/WorkQueueGtk.cpp:
1639 (WorkQueue::SocketEventSource::SocketEventSource):
1640 (WorkQueue::registerSocketEventHandler):
1641 (WorkQueue::dispatchOnSource): Use std::move instead of std::forward<T>.
1642 (WorkQueue::dispatch): Ditto.
1643 (WorkQueue::dispatchAfter): Ditto.
1645 2014-01-20 Zan Dobersek <zdobersek@igalia.com>
1647 Unreviewed. Additional build fixes after r162276 and r163304.
1649 * Platform/WorkQueue.h:
1650 * Platform/gtk/WorkQueueGtk.cpp:
1651 (WorkQueue::EventSource::EventSource):
1652 (WorkQueue::dispatchOnSource):
1653 (WorkQueue::dispatch):
1654 (WorkQueue::dispatchAfter):
1656 2014-01-19 Zan Dobersek <zdobersek@igalia.com>
1658 Unreviewed GTK build fix after r162276.
1660 Updating the WorkQueue implementation to use std::function and std::chrono.
1662 * Platform/WorkQueue.h:
1663 * Platform/gtk/WorkQueueGtk.cpp:
1664 (WorkQueue::dispatchOnSource):
1665 (WorkQueue::dispatch):
1666 (WorkQueue::dispatchAfter):
1668 2014-01-19 Jinwoo Song <jinwoo7.song@samsung.com>
1670 Unreviewed debug build fix on EFL port after r162300.
1672 * Platform/efl/DispatchQueueWorkItemEfl.h:
1673 (TimerWorkItem::create):
1675 2014-01-19 Jinwoo Song <jinwoo7.song@samsung.com>
1677 [EFL][WK2] build fix after r162276
1678 https://bugs.webkit.org/show_bug.cgi?id=127259
1680 Reviewed by Anders Carlsson.
1682 * Platform/efl/DispatchQueueEfl.cpp:
1683 (DispatchQueue::performTimerWork):
1684 (DispatchQueue::getNextTimeOut):
1685 * Platform/efl/DispatchQueueWorkItemEfl.h:
1687 (WorkItem::WorkItem):
1688 (TimerWorkItem::create):
1689 (TimerWorkItem::TimerWorkItem):
1690 * Platform/efl/WorkQueueEfl.cpp:
1691 (WorkQueue::dispatch):
1692 (WorkQueue::dispatchAfter):
1694 2014-01-18 Anders Carlsson <andersca@apple.com>
1696 Replace a couple of uses of WTF::Function with std::function
1697 https://bugs.webkit.org/show_bug.cgi?id=127218
1699 Reviewed by Andreas Kling.
1701 * Platform/IPC/mac/ConnectionMac.cpp:
1702 (IPC::createDataAvailableSource):
1703 * Platform/WorkQueue.h:
1704 * Platform/mac/WorkQueueMac.cpp:
1705 (WorkQueue::dispatch):
1706 (WorkQueue::dispatchAfter):
1707 * Shared/ChildProcess.cpp:
1708 (WebKit::didCloseOnConnectionWorkQueue):
1709 * UIProcess/Storage/LocalStorageDatabase.cpp:
1710 (WebKit::LocalStorageDatabase::scheduleDatabaseUpdate):
1711 * WebProcess/WebPage/DrawingArea.cpp:
1712 (WebKit::DrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
1713 * WebProcess/WebPage/DrawingArea.h:
1714 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
1715 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1716 (WebKit::TiledCoreAnimationDrawingArea::dispatchAfterEnsuringUpdatedScrollPosition):
1718 2014-01-18 Martin Hock <mhock@apple.com>
1720 Flesh out session APIs (still not enabled at API level).
1721 https://bugs.webkit.org/show_bug.cgi?id=126918
1723 Reviewed by Alexey Proskuryakov.
1726 * GNUmakefile.list.am:
1727 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1728 (WebKit::storageSession):
1729 (WebKit::NetworkConnectionToWebProcess::startDownload):
1730 (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
1731 (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
1732 (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
1733 (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
1734 (WebKit::NetworkConnectionToWebProcess::getRawCookies):
1735 (WebKit::NetworkConnectionToWebProcess::deleteCookie):
1736 * NetworkProcess/NetworkConnectionToWebProcess.h:
1737 * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
1738 * NetworkProcess/NetworkProcess.cpp:
1739 (WebKit::NetworkProcess::initializeNetworkProcess):
1740 (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
1741 (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
1742 * NetworkProcess/NetworkProcess.h:
1743 * NetworkProcess/NetworkProcess.messages.in:
1744 * NetworkProcess/RemoteNetworkingContext.h:
1745 * NetworkProcess/mac/RemoteNetworkingContext.mm:
1746 (WebKit::RemoteNetworkingContext::storageSession):
1747 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
1748 * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
1749 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
1750 * Shared/SessionTracker.cpp: Copied from Source/WebKit2/UIProcess/APISession.cpp.
1751 (WebKit::sessionMap):
1752 (WebKit::identifierBase):
1753 (WebKit::SessionTracker::getSessionMap):
1754 (WebKit::SessionTracker::getIdentifierBase):
1755 (WebKit::SessionTracker::session):
1756 (WebKit::SessionTracker::destroySession):
1757 (WebKit::SessionTracker::setIdentifierBase):
1758 * Shared/SessionTracker.h: Copied from Source/WebKit2/UIProcess/APISession.h.
1759 (WebKit::SessionTracker::isEphemeralID):
1760 * Shared/mac/CookieStorageShim.cpp:
1761 (WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL):
1762 * UIProcess/APISession.cpp:
1764 (API::Session::defaultSession):
1765 (API::Session::legacyPrivateSession):
1766 (API::Session::Session):
1767 (API::Session::create):
1768 (API::Session::isEphemeral):
1769 (API::Session::getID):
1770 * UIProcess/APISession.h:
1771 * UIProcess/WebContext.cpp:
1772 (WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
1773 (WebKit::WebContext::createNewWebProcess):
1774 (WebKit::WebContext::createWebPage):
1775 * UIProcess/WebContext.h:
1776 * UIProcess/WebPageProxy.cpp:
1777 (WebKit::WebPageProxy::create):
1778 (WebKit::WebPageProxy::WebPageProxy):
1779 * UIProcess/WebPageProxy.h:
1780 (WebKit::WebPageProxy::sessionID):
1781 * UIProcess/WebProcessProxy.cpp:
1782 (WebKit::WebProcessProxy::createWebPage):
1783 * UIProcess/WebProcessProxy.h:
1784 * WebKit2.xcodeproj/project.pbxproj:
1785 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1786 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
1787 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1788 (WebKit::legacySessionID):
1789 (WebKit::WebPlatformStrategies::cookiesForDOM):
1790 (WebKit::WebPlatformStrategies::setCookiesFromDOM):
1791 (WebKit::WebPlatformStrategies::cookiesEnabled):
1792 (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
1793 (WebKit::WebPlatformStrategies::getRawCookies):
1794 (WebKit::WebPlatformStrategies::deleteCookie):
1795 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
1796 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1797 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
1798 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
1799 (WebKit::WebFrameNetworkingContext::storageSession):
1800 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
1801 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
1802 (WebKit::WebFrameNetworkingContext::storageSession):
1803 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
1804 * WebProcess/WebProcess.cpp:
1805 (WebKit::WebProcess::initializeWebProcess):
1806 (WebKit::WebProcess::ensurePrivateBrowsingSession):
1807 (WebKit::WebProcess::destroyPrivateBrowsingSession):
1808 * WebProcess/WebProcess.h:
1809 * WebProcess/WebProcess.messages.in:
1811 2014-01-18 Brian Burg <bburg@apple.com>
1813 Web Inspector: Page should use std::unique_ptr for InspectorController
1814 https://bugs.webkit.org/show_bug.cgi?id=127068
1816 Reviewed by Joseph Pecoraro.
1818 Convert call sites to use a InspectorController reference.
1820 * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
1821 (WebKit::WebInspectorClient::drawRect):
1822 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
1823 (WebKit::WebInspectorFrontendClient::WebInspectorFrontendClient):
1824 (WebKit::WebInspectorFrontendClient::closeWindow):
1825 * WebProcess/WebPage/WebInspector.cpp:
1826 (WebKit::WebInspector::createInspectorPage):
1827 (WebKit::WebInspector::show):
1828 (WebKit::WebInspector::close):
1829 (WebKit::WebInspector::evaluateScriptForTest):
1830 (WebKit::WebInspector::showConsole):
1831 (WebKit::WebInspector::showResources):
1832 (WebKit::WebInspector::showMainResourceForFrame):
1833 (WebKit::WebInspector::startJavaScriptDebugging):
1834 (WebKit::WebInspector::stopJavaScriptDebugging):
1835 (WebKit::WebInspector::setJavaScriptProfilingEnabled):
1836 (WebKit::WebInspector::startJavaScriptProfiling):
1837 (WebKit::WebInspector::stopJavaScriptProfiling):
1838 (WebKit::WebInspector::startPageProfiling):
1839 (WebKit::WebInspector::stopPageProfiling):
1840 (WebKit::WebInspector::dispatchMessageFromRemoteFrontend):
1841 (WebKit::WebInspector::remoteFrontendConnected):
1842 (WebKit::WebInspector::remoteFrontendDisconnected):
1844 2014-01-18 Anders Carlsson <andersca@apple.com>
1846 Remove ENABLE_THREADED_HTML_PARSER defines everywhere
1847 https://bugs.webkit.org/show_bug.cgi?id=127225
1849 Reviewed by Andreas Kling.
1851 This concludes the removal of over 8.8 million lines of threaded parser code.
1853 * Configurations/FeatureDefines.xcconfig:
1855 2014-01-18 Yongjun Zhang <yongjun_zhang@apple.com>
1857 Make WKRenderingProgressEvents a shareable API.
1858 https://bugs.webkit.org/show_bug.cgi?id=127213
1860 Reviewed by Dan Bernstein.
1862 Move WKRenderingProgressEvents from UIProcess to Shared, so that an inject bundle
1863 could also use this enum when listening to layout milestones.
1865 * Shared/API/Cocoa/WKRenderingProgressEvents.h: Added.
1867 * Shared/API/Cocoa/WKRenderingProgressEventsInternal.h: Added.
1868 (renderingProgressEvents):
1869 * UIProcess/API/Cocoa/WKBrowsingContextController.h: Move WKRenderingProgressEvents to Shared/API/Cocoa/WKRenderingProgressEvents.h.
1870 * UIProcess/API/Cocoa/WKBrowsingContextController.mm: Move renderingProgressEvents() to WKRenderingProgressEventsInternal.h.
1871 * WebKit2.xcodeproj/project.pbxproj:
1872 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Add
1873 webProcessPlugInBrowserContextController:renderingProgressDidChange: to load delegate.
1874 * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
1876 (setUpPageLoaderClient): Also listen to didLayout callback for layout milestones.
1878 2014-01-17 Commit Queue <commit-queue@webkit.org>
1880 Unreviewed, rolling out r162237 and r162241.
1881 http://trac.webkit.org/changeset/162237
1882 http://trac.webkit.org/changeset/162241
1883 https://bugs.webkit.org/show_bug.cgi?id=127216
1885 Broke lots of API tests (Requested by ap on #webkit).
1888 * GNUmakefile.list.am:
1889 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1890 (WebKit::storageSession):
1891 (WebKit::NetworkConnectionToWebProcess::startDownload):
1892 (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
1893 (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
1894 (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
1895 (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
1896 (WebKit::NetworkConnectionToWebProcess::getRawCookies):
1897 (WebKit::NetworkConnectionToWebProcess::deleteCookie):
1898 * NetworkProcess/NetworkConnectionToWebProcess.h:
1899 * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
1900 * NetworkProcess/NetworkProcess.cpp:
1901 (WebKit::NetworkProcess::initializeNetworkProcess):
1902 (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
1903 (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
1904 * NetworkProcess/NetworkProcess.h:
1905 * NetworkProcess/NetworkProcess.messages.in:
1906 * NetworkProcess/RemoteNetworkingContext.h:
1907 * NetworkProcess/mac/RemoteNetworkingContext.mm:
1908 (WebKit::privateBrowsingStorageSession):
1909 (WebKit::RemoteNetworkingContext::storageSession):
1910 (WebKit::RemoteNetworkingContext::privateBrowsingSession):
1911 (WebKit::privateBrowsingStorageSessionIdentifierBase):
1912 (WebKit::RemoteNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
1913 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
1914 (WebKit::RemoteNetworkingContext::destroyPrivateBrowsingSession):
1915 * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
1916 (WebKit::RemoteNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
1917 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
1918 (WebKit::RemoteNetworkingContext::destroyPrivateBrowsingSession):
1919 (WebKit::RemoteNetworkingContext::privateBrowsingSession):
1920 * Shared/SessionTracker.cpp: Removed.
1921 * Shared/SessionTracker.h: Removed.
1922 * UIProcess/APISession.cpp:
1923 (API::Session::Session):
1924 (API::Session::create):
1925 (API::Session::isEphemeral):
1926 * UIProcess/APISession.h:
1927 * UIProcess/WebContext.cpp:
1928 (WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
1929 (WebKit::WebContext::createNewWebProcess):
1930 (WebKit::WebContext::createWebPage):
1931 * UIProcess/WebContext.h:
1932 * UIProcess/WebPageProxy.cpp:
1933 (WebKit::WebPageProxy::create):
1934 (WebKit::WebPageProxy::WebPageProxy):
1935 * UIProcess/WebPageProxy.h:
1936 * UIProcess/WebProcessProxy.cpp:
1937 (WebKit::WebProcessProxy::createWebPage):
1938 * UIProcess/WebProcessProxy.h:
1939 * WebKit2.xcodeproj/project.pbxproj:
1940 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1941 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
1942 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1943 (WebKit::WebPlatformStrategies::cookiesForDOM):
1944 (WebKit::WebPlatformStrategies::setCookiesFromDOM):
1945 (WebKit::WebPlatformStrategies::cookiesEnabled):
1946 (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
1947 (WebKit::WebPlatformStrategies::getRawCookies):
1948 (WebKit::WebPlatformStrategies::deleteCookie):
1949 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
1950 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1951 (WebKit::privateSession):
1952 (WebKit::identifierBase):
1953 (WebKit::WebFrameNetworkingContext::setPrivateBrowsingStorageSessionIdentifierBase):
1954 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
1955 (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
1956 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
1957 (WebKit::WebFrameNetworkingContext::storageSession):
1958 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
1959 (WebKit::privateSession):
1960 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
1961 (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
1962 (WebKit::WebFrameNetworkingContext::storageSession):
1963 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
1964 * WebProcess/WebProcess.cpp:
1965 (WebKit::WebProcess::initializeWebProcess):
1966 (WebKit::WebProcess::ensurePrivateBrowsingSession):
1967 (WebKit::WebProcess::destroyPrivateBrowsingSession):
1968 * WebProcess/WebProcess.h:
1969 * WebProcess/WebProcess.messages.in:
1971 2014-01-17 Ryuan Choi <ryuan.choi@samsung.com>
1973 Unreviewed build fix on EFL port after r162237
1975 The EFL port disabled NETWORK_PROCESS yet and use -Werror=unused-function.
1977 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1978 Guarded legacySessionID with ENABLE(NETWORK_PROCESS)
1980 2014-01-17 Martin Hock <mhock@apple.com>
1982 Flesh out session APIs (still not enabled at API level).
1983 https://bugs.webkit.org/show_bug.cgi?id=126918
1985 Reviewed by Alexey Proskuryakov.
1988 * GNUmakefile.list.am:
1989 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1990 (WebKit::storageSession):
1991 (WebKit::NetworkConnectionToWebProcess::startDownload):
1992 (WebKit::NetworkConnectionToWebProcess::cookiesForDOM):
1993 (WebKit::NetworkConnectionToWebProcess::setCookiesFromDOM):
1994 (WebKit::NetworkConnectionToWebProcess::cookiesEnabled):
1995 (WebKit::NetworkConnectionToWebProcess::cookieRequestHeaderFieldValue):
1996 (WebKit::NetworkConnectionToWebProcess::getRawCookies):
1997 (WebKit::NetworkConnectionToWebProcess::deleteCookie):
1998 * NetworkProcess/NetworkConnectionToWebProcess.h:
1999 * NetworkProcess/NetworkConnectionToWebProcess.messages.in:
2000 * NetworkProcess/NetworkProcess.cpp:
2001 (WebKit::NetworkProcess::initializeNetworkProcess):
2002 (WebKit::NetworkProcess::ensurePrivateBrowsingSession):
2003 (WebKit::NetworkProcess::destroyPrivateBrowsingSession):
2004 * NetworkProcess/NetworkProcess.h:
2005 * NetworkProcess/NetworkProcess.messages.in:
2006 * NetworkProcess/RemoteNetworkingContext.h:
2007 * NetworkProcess/mac/RemoteNetworkingContext.mm:
2008 (WebKit::RemoteNetworkingContext::storageSession):
2009 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
2010 * NetworkProcess/soup/RemoteNetworkingContextSoup.cpp:
2011 (WebKit::RemoteNetworkingContext::ensurePrivateBrowsingSession):
2012 * Shared/SessionTracker.cpp: Copied from Source/WebKit2/UIProcess/APISession.cpp.
2013 (WebKit::sessionMap):
2014 (WebKit::identifierBase):
2015 (WebKit::SessionTracker::getSessionMap):
2016 (WebKit::SessionTracker::getIdentifierBase):
2017 (WebKit::SessionTracker::session):
2018 (WebKit::SessionTracker::destroySession):
2019 (WebKit::SessionTracker::setIdentifierBase):
2020 * Shared/SessionTracker.h: Copied from Source/WebKit2/UIProcess/APISession.h.
2021 (WebKit::SessionTracker::isEphemeralID):
2022 * UIProcess/APISession.cpp:
2024 (API::Session::defaultSession):
2025 (API::Session::legacyPrivateSession):
2026 (API::Session::Session):
2027 (API::Session::create):
2028 (API::Session::isEphemeral):
2029 (API::Session::getID):
2030 * UIProcess/APISession.h:
2031 * UIProcess/WebContext.cpp:
2032 (WebKit::WebContext::setAnyPageGroupMightHavePrivateBrowsingEnabled):
2033 (WebKit::WebContext::createNewWebProcess):
2034 (WebKit::WebContext::createWebPage):
2035 * UIProcess/WebContext.h:
2036 * UIProcess/WebPageProxy.cpp:
2037 (WebKit::WebPageProxy::create):
2038 (WebKit::WebPageProxy::WebPageProxy):
2039 * UIProcess/WebPageProxy.h:
2040 (WebKit::WebPageProxy::sessionID):
2041 * UIProcess/WebProcessProxy.cpp:
2042 (WebKit::WebProcessProxy::createWebPage):
2043 * UIProcess/WebProcessProxy.h:
2044 * WebKit2.xcodeproj/project.pbxproj:
2045 * WebProcess/InjectedBundle/InjectedBundle.cpp:
2046 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
2047 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2048 (WebKit::legacySessionID):
2049 (WebKit::WebPlatformStrategies::cookiesForDOM):
2050 (WebKit::WebPlatformStrategies::setCookiesFromDOM):
2051 (WebKit::WebPlatformStrategies::cookiesEnabled):
2052 (WebKit::WebPlatformStrategies::cookieRequestHeaderFieldValue):
2053 (WebKit::WebPlatformStrategies::getRawCookies):
2054 (WebKit::WebPlatformStrategies::deleteCookie):
2055 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2056 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
2057 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
2058 (WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts):
2059 (WebKit::WebFrameNetworkingContext::storageSession):
2060 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
2061 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
2062 (WebKit::WebFrameNetworkingContext::storageSession):
2063 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
2064 * WebProcess/WebProcess.cpp:
2065 (WebKit::WebProcess::initializeWebProcess):
2066 (WebKit::WebProcess::ensurePrivateBrowsingSession):
2067 (WebKit::WebProcess::destroyPrivateBrowsingSession):
2068 * WebProcess/WebProcess.h:
2069 * WebProcess/WebProcess.messages.in:
2071 2014-01-17 Andreas Kling <akling@apple.com>
2073 Remove unused TOUCH_ADJUSTMENT code.
2074 <https://webkit.org/b/127181>
2076 Reviewed by Anders Carlsson.
2078 * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp:
2079 (WebKit::WebPage::findZoomableAreaForPoint):
2081 2014-01-17 Anders Carlsson <andersca@apple.com>
2085 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2086 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2088 2014-01-17 Anders Carlsson <andersca@apple.com>
2090 Remove FrameLoaderClient::didPerformFirstNavigation()
2091 https://bugs.webkit.org/show_bug.cgi?id=127191
2093 Reviewed by Dan Bernstein.
2095 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2096 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2098 2014-01-17 Manuel Rego Casasnovas <rego@igalia.com>
2100 [GTK] Add CSS Grid Layout as experimental feature
2101 https://bugs.webkit.org/show_bug.cgi?id=127089
2103 Reviewed by Martin Robinson.
2105 Allow CSS Grid Layout to be enabled through the environment variable WEBKITGTK_EXPERIMENTAL_FEATURES.
2107 Example: WEBKITGTK_EXPERIMENTAL_FEATURES="CSS_GRID_LAYOUT=1"
2109 * UIProcess/API/gtk/WebKitSettings.cpp:
2110 (webKitSettingsConstructed): Use new experimental feature to enable or disable CSS Grid Layout.
2111 * UIProcess/gtk/ExperimentalFeatures.cpp: Add new experimental feature.
2112 * UIProcess/gtk/ExperimentalFeatures.h: Ditto.
2114 2014-01-17 Enrica Casucci <enrica@apple.com>
2116 Support WebSelections in WK2 on iOS.
2117 https://bugs.webkit.org/show_bug.cgi?id=127015
2118 <rdar://problem/15843090>
2120 Reviewed by Dan Bernstein.
2122 Removing unused variable in selectWithGesture that
2123 causes Release build to fail after r162103.
2125 * WebProcess/WebPage/ios/WebPageIOS.mm:
2126 (WebKit::WebPage::selectWithGesture):
2128 2014-01-17 Yongjun Zhang <yongjun_zhang@apple.com>
2130 https://bugs.webkit.org/show_bug.cgi?id=127138
2131 Add more delegate callback methods to WKWebProcessPlugInLoadDelegate.
2133 Reviewed by Sam Weinig.
2135 Add more WKWebProcessPlugInLoadDelegate callback methods so that a injected
2136 bundle can listen/react to more frame loading events.
2138 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInLoadDelegate.h: Add more delegate callback methods for
2139 WKWebProcessPlugInLoadDelegate.
2140 * WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
2141 (didCommitLoadForFrame):
2142 (didFinishDocumentLoadForFrame):
2143 (didFailLoadWithErrorForFrame):
2144 (didSameDocumentNavigationForFrame):
2145 (didLayoutForFrame):
2146 (setUpPageLoaderClient):
2148 2014-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
2150 [SOUP] Add stubs for CustomProtocol classes
2151 https://bugs.webkit.org/show_bug.cgi?id=126343
2153 Reviewed by Gustavo Noronha Silva.
2157 * GNUmakefile.list.am:
2158 * PlatformGTK.cmake:
2159 * Shared/Network/CustomProtocols/soup/CustomProtocolManagerSoup.cpp: Added.
2160 (WebKit::generateCustomProtocolID):
2161 (WebKit::WebSoupRequestAsyncData::WebSoupRequestAsyncData):
2162 (WebKit::WebSoupRequestAsyncData::~WebSoupRequestAsyncData):
2163 (WebKit::WebSoupRequestAsyncData::requestFailed):
2164 (WebKit::WebSoupRequestAsyncData::releaseTask):
2165 (WebKit::CustomProtocolManager::supplementName):
2166 (WebKit::CustomProtocolManager::CustomProtocolManager):
2167 (WebKit::CustomProtocolManager::initializeConnection):
2168 (WebKit::CustomProtocolManager::initialize):
2169 * Shared/Network/NetworkProcessCreationParameters.cpp:
2170 (WebKit::NetworkProcessCreationParameters::encode): Move
2171 urlSchemesRegisteredForCustomProtocols encoding out of platform
2172 ifdefs, since it's already guarded by ENABLE(CUSTOM_PROTOCOLS).
2173 (WebKit::NetworkProcessCreationParameters::decode): Ditto.
2174 * Shared/Network/NetworkProcessCreationParameters.h: Ditto.
2175 * UIProcess/Network/CustomProtocols/soup/CustomProtocolManagerProxySoup.cpp: Added.
2176 (WebKit::CustomProtocolManagerProxy::CustomProtocolManagerProxy):
2177 (WebKit::CustomProtocolManagerProxy::startLoading):
2178 (WebKit::CustomProtocolManagerProxy::stopLoading):
2180 2014-01-16 Tim Horton <timothy_horton@apple.com>
2182 On iOS, zooming in with a TileController-backed main frame makes hundreds of tiles
2183 https://bugs.webkit.org/show_bug.cgi?id=126531
2184 <rdar://problem/15745862>
2186 Reviewed by Anders Carlsson.
2188 * UIProcess/API/ios/WKContentView.mm:
2189 (-[WKContentView _updateViewExposedRect]):
2190 (-[WKContentView setViewportSize:]):
2191 (-[WKContentView didFinishScrollTo:]):
2192 (-[WKContentView didScrollTo:]):
2193 (-[WKContentView didZoomToScale:]):
2194 Because zooming is performed by the UIScrollView, we need to transform
2195 the exposedRect's offset in order to get it in FrameView-relative coordinates.
2197 * UIProcess/ios/WebPageProxyIOS.mm:
2198 (WebKit::WebPageProxy::didFinishZooming):
2199 Save the pageScaleFactor when it changes.
2201 2014-01-16 Carlos Garcia Campos <cgarcia@igalia.com>
2203 [GTK] Remove the weak pointer added to the web view in WebKitPrintOperation
2204 https://bugs.webkit.org/show_bug.cgi?id=127098
2206 Reviewed by Martin Robinson.
2208 If the print operation finishes and the web view is still alive,
2209 the weak pointer added to the view should be removed.
2211 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
2212 (_WebKitPrintOperationPrivate::~_WebKitPrintOperationPrivate):
2214 2014-01-15 Sam Weinig <sam@webkit.org>
2216 TextBreakIterator's should support Latin-1 for all iterator types (Part 3)
2217 https://bugs.webkit.org/show_bug.cgi?id=126856
2219 Reviewed by Ryosuke Niwa.
2221 Change all the TextBreakIterator creation functions to take StringViews. Remove a few
2222 now unnecessary up-conversions to UTF-16 in the process.
2224 * UIProcess/efl/TextCheckerEfl.cpp:
2225 (WebKit::nextWordOffset):
2226 (WebKit::TextChecker::checkTextOfParagraph):
2228 2014-01-16 Eunmi Lee <eunmi15.lee@samsung.com>
2230 [EFL][WK2] EwkView can not be shown without re-sizing once it is hidden.
2231 https://bugs.webkit.org/show_bug.cgi?id=127084
2233 Reviewed by Gyuyoung Kim.
2235 Visibility of EwkView can not be controlled by evas_object_show/hide
2236 because EwkView can be shown only if re-sizing is requested, so modify
2237 codes to show EwkView directly if we do not wait for re-sizing.
2238 Additionally, we have to set default value of m_pendingSurfaceResize
2239 to true for accelerated mode to prevent to show black empty view for
2240 the first request to show.
2242 * UIProcess/API/efl/EwkView.cpp:
2244 (EwkView::handleEvasObjectShow):
2246 2014-01-16 Andy Estes <aestes@apple.com>
2248 Build Fix: Use standard architectures when building for iOS
2250 Even though we don't use the plug-in services on iOS, we still need
2251 them to build (we won't install them). Be sure we specify valid iOS
2252 architectures when doing so.
2254 * Configurations/PluginService.32.xcconfig:
2255 * Configurations/PluginService.64.xcconfig:
2257 2014-01-16 Enrica Casucci <enrica@apple.com>
2259 Crash when destroying WKInteractionView.
2260 https://bugs.webkit.org/show_bug.cgi?id=127153
2261 <rdar://problem/15840761>
2263 Reviewed by Anders Carlsson.
2265 UIWKSelectionAssistant is a RetainPtr and it is being
2266 deallocated after the view and its gesture recognizers
2267 have been destroyed.
2268 The parent class UIWebSelectionAssistant assumes to be
2269 deallocated before the view is gone.
2270 We deallocate the interaction assistants explicitly to
2273 * UIProcess/API/ios/WKInteractionView.mm:
2274 (-[WKInteractionView dealloc]):
2276 2014-01-16 Brady Eidson <beidson@apple.com>
2278 IDB: delete object store support
2279 <rdar://problem/15779641> and https://bugs.webkit.org/show_bug.cgi?id=127123
2281 Reviewed by Alexey Proskuryakov.
2283 Pipe through Web -> Database -> Web process messaging for delete object store.
2284 Perform dropping the object store in the backing store.
2286 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
2287 (WebKit::DatabaseProcessIDBConnection::deleteObjectStore):
2288 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
2289 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
2291 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
2292 (WebKit::UniqueIDBDatabase::didDeleteObjectStore):
2293 (WebKit::UniqueIDBDatabase::deleteObjectStore):
2294 (WebKit::UniqueIDBDatabase::deleteObjectStoreInBackingStore):
2295 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
2297 * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
2298 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2299 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
2300 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::deleteObjectStore):
2301 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
2303 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
2304 (WebKit::WebIDBServerConnection::deleteObjectStore):
2305 (WebKit::WebIDBServerConnection::didDeleteObjectStore):
2306 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
2307 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
2309 2014-01-16 Alexey Proskuryakov <ap@apple.com>
2311 [Mac] [iOS] Add support for CFHTTPCookieStorageAcceptPolicyExclusivelyFromMainDocumentDomain
2312 https://bugs.webkit.org/show_bug.cgi?id=127139
2314 Reviewed by Brady Eidson.
2316 * Shared/HTTPCookieAcceptPolicy.h:
2317 * UIProcess/API/C/WKAPICast.h:
2318 (WebKit::toHTTPCookieAcceptPolicy):
2320 * UIProcess/API/C/WKCookieManager.h:
2321 Added the policy to appropriate switches and enums.
2323 2014-01-16 Jeffrey Pfau <jpfau@apple.com>
2325 Fix build after r162161. One FINAL was still present.
2327 * Shared/cf/KeyedDecoder.h:
2329 2014-01-16 Anders Carlsson <andersca@apple.com>
2331 Change all uses of FINAL to final now that all our compilers support it
2332 https://bugs.webkit.org/show_bug.cgi?id=127142
2334 Reviewed by Benjamin Poulain.
2336 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
2337 * NetworkProcess/RemoteNetworkingContext.h:
2338 * Shared/API/Cocoa/RemoteObjectRegistry.h:
2339 * Shared/APIArray.h:
2340 * Shared/APIString.h:
2341 * Shared/AsyncRequest.h:
2342 * Shared/AsyncTask.h:
2343 * Shared/cf/KeyedEncoder.h:
2344 * UIProcess/API/gtk/PageClientImpl.h:
2345 * UIProcess/API/mac/PageClientImpl.h:
2346 * UIProcess/efl/WebViewEfl.h:
2347 * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
2348 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
2349 * WebProcess/Plugins/PDF/PDFPlugin.h:
2350 * WebProcess/Storage/StorageAreaImpl.h:
2351 * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
2352 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
2353 * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
2355 2014-01-16 Brady Eidson <beidson@apple.com>
2357 Fix the build after r162148
2359 * Shared/cf/KeyedEncoder.h: s/OVERRIDE/override/
2361 2014-01-15 Brady Eidson <beidson@apple.com>
2363 Use KeyedCoding as a persistent storage mechanism for blobs
2364 https://bugs.webkit.org/show_bug.cgi?id=127012
2366 Reviewed by Anders Carlsson.
2368 Add a way to get the encoded buffer to save:
2369 * Shared/cf/KeyedEncoder.cpp:
2370 (WebKit::KeyedEncoder::finishEncoding):
2371 * Shared/cf/KeyedEncoder.h:
2373 Add a WebKit KeyedDecoder for CF platforms that can decode the previously encoded buffer:
2374 * Shared/cf/KeyedDecoder.cpp: Added.
2375 (WebKit::KeyedDecoder::KeyedDecoder):
2376 (WebKit::KeyedDecoder::~KeyedDecoder):
2377 (WebKit::KeyedDecoder::decodeInt64):
2378 (WebKit::KeyedDecoder::decodeUInt32):
2379 (WebKit::KeyedDecoder::decodeString):
2380 (WebKit::KeyedDecoder::beginObject):
2381 (WebKit::KeyedDecoder::endObject):
2382 (WebKit::KeyedDecoder::beginArray):
2383 (WebKit::KeyedDecoder::beginArrayElement):
2384 (WebKit::KeyedDecoder::endArrayElement):
2385 (WebKit::KeyedDecoder::endArray):
2386 * Shared/cf/KeyedDecoder.h:
2388 Create a WebKit KeyedEncoder/Decoder and use to encode/decode IDBKeyPaths:
2389 * DatabaseProcess/IndexedDB/IDBSerialization.cpp:
2390 (WebKit::serializeIDBKeyPath):
2391 (WebKit::deserializeIDBKeyPath):
2392 * DatabaseProcess/IndexedDB/IDBSerialization.h:
2394 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
2395 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
2397 * WebKit2.xcodeproj/project.pbxproj:
2399 2014-01-16 Andy Estes <aestes@apple.com>
2401 Stop copying WKOriginDataManager.cpp into WebKit2.framework
2402 https://bugs.webkit.org/show_bug.cgi?id=127100
2404 Reviewed by Sam Weinig.
2406 The file was mistakenly added to the 'All' target. Remove it.
2408 * WebKit2.xcodeproj/project.pbxproj:
2410 2014-01-16 Andy Estes <aestes@apple.com>
2412 [iOS] Install WebKit2 XPC services correctly
2413 https://bugs.webkit.org/show_bug.cgi?id=127097
2415 Reviewed by Anders Carlsson.
2417 * Configurations/PluginService.32.xcconfig: Set SKIP_INSTALL to YES on iOS.
2418 * Configurations/PluginService.64.xcconfig: Ditto.
2419 * Configurations/PluginService.Development.xcconfig: Ditto.
2420 * WebKit2.xcodeproj/project.pbxproj: Modified the "Add XPCServices symlink"
2421 build phase to only execute on OS X. Modified the
2422 "Copy XPC services for engineering builds" build phase to copy files
2423 directly to WebKit2.framework/XPCServices/ on iOS, and modified its
2424 output file paths to omit "Versions/A/" (since OS X will have a
2425 XPCServices symlink at the root of the framework bundle).
2427 2014-01-16 Roger Fong <roger_fong@apple.com>
2429 Build fix for mac following r162141.
2431 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h: Switch OVERRIDE to override.
2433 2014-01-16 Roger Fong <roger_fong@apple.com>
2435 Add support for handling WebGL load policies.
2436 https://bugs.webkit.org/show_bug.cgi?id=126935
2437 <rdar://problem/15790448>.
2439 Reviewed by Timothy Horton.
2441 Boiler plate code for getting the load policy logic from WebProcess to the UIProcess.
2443 * UIProcess/API/C/WKAPICast.h:
2444 (WebKit::toWebGLLoadPolicy):
2445 * UIProcess/API/C/WKPageLoaderClient.h: Define a new WKPageLoaderClientV4 struct.
2446 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
2447 (setUpPageLoaderClient):
2448 * UIProcess/WebLoaderClient.cpp:
2449 (WebKit::WebLoaderClient::webGLLoadPolicy):
2450 * UIProcess/WebLoaderClient.h:
2451 * UIProcess/WebPageProxy.cpp:
2452 (WebKit::WebPageProxy::webGLPolicyForURL):
2453 * UIProcess/WebPageProxy.h:
2454 * UIProcess/WebPageProxy.messages.in:
2455 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2456 (WebKit::WebFrameLoaderClient::webGLPolicyForURL):
2457 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2458 * WebProcess/WebPage/WebPage.cpp:
2459 (WebKit::WebPage::webGLPolicyForURL): We use a sendSync to get the load policy value from the UIProcess.
2460 * WebProcess/WebPage/WebPage.h:
2462 2014-01-16 Peter Molnar <pmolnar.u-szeged@partner.samsung.com>
2464 Remove workaround for compilers not supporting explicit override control
2465 https://bugs.webkit.org/show_bug.cgi?id=127111
2467 Reviewed by Anders Carlsson.
2469 Now all compilers support explicit override control, this workaround can be removed.
2471 * DatabaseProcess/DatabaseProcess.h:
2472 * DatabaseProcess/DatabaseToWebProcessConnection.h:
2473 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
2474 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
2475 * NetworkProcess/AsynchronousNetworkLoaderClient.h:
2476 * NetworkProcess/NetworkProcess.h:
2477 * NetworkProcess/NetworkProcessPlatformStrategies.h:
2478 * NetworkProcess/NetworkResourceLoader.h:
2479 * NetworkProcess/RemoteNetworkingContext.h:
2480 * NetworkProcess/SynchronousNetworkLoaderClient.h:
2481 * NetworkProcess/mac/DiskCacheMonitor.h:
2482 * PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:
2483 * PluginProcess/PluginControllerProxy.h:
2484 * PluginProcess/PluginProcess.h:
2485 * PluginProcess/WebProcessConnection.h:
2486 * Shared/API/Cocoa/RemoteObjectRegistry.h:
2487 * Shared/APIObject.h:
2488 * Shared/AsyncRequest.h:
2489 * Shared/AsyncTask.h:
2490 * Shared/Authentication/AuthenticationManager.h:
2491 * Shared/ChildProcess.h:
2492 * Shared/ChildProcessProxy.h:
2493 * Shared/CoordinatedGraphics/WebCoordinatedSurface.h:
2494 * Shared/Downloads/Download.h:
2495 * Shared/Network/CustomProtocols/CustomProtocolManager.h:
2496 * Shared/WebConnection.h:
2497 * Shared/WebResourceBuffer.h:
2498 * Shared/cf/KeyedEncoder.h:
2499 * Shared/mac/SecItemShim.h:
2500 * UIProcess/API/Cocoa/WKBrowsingContextController.mm:
2501 * UIProcess/API/gtk/PageClientImpl.h:
2502 * UIProcess/API/ios/PageClientImplIOS.h:
2503 * UIProcess/API/mac/PageClientImpl.h:
2504 * UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:
2505 * UIProcess/CoordinatedGraphics/WebView.h:
2506 * UIProcess/Databases/DatabaseProcessProxy.h:
2507 * UIProcess/Downloads/DownloadProxy.h:
2508 * UIProcess/DrawingAreaProxy.h:
2509 * UIProcess/Network/CustomProtocols/CustomProtocolManagerProxy.h:
2510 * UIProcess/Network/NetworkProcessProxy.h:
2511 * UIProcess/Notifications/WebNotificationManagerProxy.h:
2512 * UIProcess/Plugins/PluginProcessProxy.h:
2513 * UIProcess/Scrolling/RemoteScrollingTree.h:
2514 * UIProcess/Storage/StorageManager.h:
2515 * UIProcess/WebApplicationCacheManagerProxy.h:
2516 * UIProcess/WebBatteryManagerProxy.h:
2517 * UIProcess/WebConnectionToWebProcess.h:
2518 * UIProcess/WebContext.h:
2519 * UIProcess/WebCookieManagerProxy.h:
2520 * UIProcess/WebDatabaseManagerProxy.h:
2521 * UIProcess/WebFullScreenManagerProxy.h:
2522 * UIProcess/WebGeolocationManagerProxy.h:
2523 * UIProcess/WebIconDatabase.h:
2524 * UIProcess/WebInspectorProxy.h:
2525 * UIProcess/WebKeyValueStorageManager.h:
2526 * UIProcess/WebMediaCacheManagerProxy.h:
2527 * UIProcess/WebNetworkInfoManagerProxy.h:
2528 * UIProcess/WebOriginDataManagerProxy.h:
2529 * UIProcess/WebPageProxy.h:
2530 * UIProcess/WebProcessProxy.h:
2531 * UIProcess/WebResourceCacheManagerProxy.h:
2532 * UIProcess/WebVibrationProxy.h:
2533 * UIProcess/efl/PageViewportControllerClientEfl.h:
2534 * UIProcess/efl/WebViewEfl.h:
2535 * UIProcess/mac/RemoteLayerTreeDrawingAreaProxy.h:
2536 * UIProcess/mac/SecItemShimProxy.h:
2537 * UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h:
2538 * UIProcess/mac/ViewGestureController.h:
2539 * UIProcess/mac/WebColorPickerMac.h:
2540 * UIProcess/soup/WebSoupRequestManagerProxy.h:
2541 * WebProcess/ApplicationCache/WebApplicationCacheManager.h:
2542 * WebProcess/Battery/WebBatteryManager.h:
2543 * WebProcess/Cookies/WebCookieManager.h:
2544 * WebProcess/Databases/IndexedDB/WebIDBFactoryBackend.h:
2545 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
2546 * WebProcess/Databases/WebToDatabaseProcessConnection.h:
2547 * WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:
2548 * WebProcess/FileAPI/BlobRegistryProxy.h:
2549 * WebProcess/Geolocation/WebGeolocationManager.h:
2550 * WebProcess/IconDatabase/WebIconDatabaseProxy.h:
2551 * WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
2552 * WebProcess/MediaCache/WebMediaCacheManager.h:
2553 * WebProcess/Network/NetworkProcessConnection.h:
2554 * WebProcess/Network/WebResourceLoadScheduler.h:
2555 * WebProcess/Network/WebResourceLoader.h:
2556 * WebProcess/NetworkInfo/WebNetworkInfoManager.h:
2557 * WebProcess/Notifications/WebNotificationManager.h:
2558 * WebProcess/OriginData/WebOriginDataManager.h:
2559 * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2560 * WebProcess/Plugins/PDF/PDFPlugin.h:
2561 * WebProcess/Plugins/PDF/PDFPluginAnnotation.h:
2562 * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.h:
2563 * WebProcess/Plugins/PDF/PDFPluginPasswordField.h:
2564 * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h:
2565 * WebProcess/Plugins/PluginProcessConnection.h:
2566 * WebProcess/Plugins/PluginProcessConnectionManager.h:
2567 * WebProcess/Plugins/PluginProxy.h:
2568 * WebProcess/Plugins/PluginView.h:
2569 * WebProcess/ResourceCache/WebResourceCacheManager.h:
2570 * WebProcess/Scrolling/RemoteScrollingCoordinator.h:
2571 * WebProcess/Storage/StorageAreaImpl.h:
2572 * WebProcess/Storage/StorageAreaMap.h:
2573 * WebProcess/Storage/StorageNamespaceImpl.h:
2574 * WebProcess/WebConnectionToUIProcess.h:
2575 * WebProcess/WebCoreSupport/WebAlternativeTextClient.h:
2576 * WebProcess/WebCoreSupport/WebBatteryClient.h:
2577 * WebProcess/WebCoreSupport/WebChromeClient.h:
2578 * WebProcess/WebCoreSupport/WebColorChooser.h:
2579 * WebProcess/WebCoreSupport/WebContextMenuClient.h:
2580 * WebProcess/WebCoreSupport/WebDatabaseManager.h:
2581 * WebProcess/WebCoreSupport/WebDeviceProximityClient.h:
2582 * WebProcess/WebCoreSupport/WebDragClient.h:
2583 * WebProcess/WebCoreSupport/WebEditorClient.h:
2584 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
2585 * WebProcess/WebCoreSupport/WebGeolocationClient.h:
2586 * WebProcess/WebCoreSupport/WebInspectorClient.h:
2587 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
2588 * WebProcess/WebCoreSupport/WebNavigatorContentUtilsClient.h:
2589 * WebProcess/WebCoreSupport/WebNetworkInfoClient.h:
2590 * WebProcess/WebCoreSupport/WebNotificationClient.h:
2591 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2592 * WebProcess/WebCoreSupport/WebPopupMenu.h:
2593 * WebProcess/WebCoreSupport/WebProgressTrackerClient.h:
2594 * WebProcess/WebCoreSupport/WebSearchPopupMenu.h:
2595 * WebProcess/WebCoreSupport/WebVibrationClient.h:
2596 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
2597 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.h:
2598 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2599 * WebProcess/WebPage/DrawingAreaImpl.h:
2600 * WebProcess/WebPage/EventDispatcher.h:
2601 * WebProcess/WebPage/ViewGestureGeometryCollector.h:
2602 * WebProcess/WebPage/WebBackForwardListProxy.h:
2603 * WebProcess/WebPage/WebPage.h:
2604 * WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
2605 * WebProcess/WebPage/mac/GraphicsLayerCARemote.h:
2606 * WebProcess/WebPage/mac/PlatformCALayerRemote.h:
2607 * WebProcess/WebPage/mac/PlatformCALayerRemoteCustom.h:
2608 * WebProcess/WebPage/mac/PlatformCALayerRemoteTiledBacking.h:
2609 * WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
2610 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
2611 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2612 * WebProcess/WebProcess.h:
2613 * WebProcess/soup/WebSoupRequestManager.h:
2615 2014-01-16 Ian Henderson <ianh@apple.com>
2617 Expose scrollView on WKView
2618 https://bugs.webkit.org/show_bug.cgi?id=127085
2620 Reviewed by Antti Koivisto.
2622 Expose WKView's scroll view as a property. In order to support
2623 clients calling setDelegate:, we create a forwarder object that sends
2624 delegate methods to both WKView (the "internal delegate") and the
2625 publicly-exposed delegate (the "external delegate").
2627 * UIProcess/API/Cocoa/WKView.h:
2628 * UIProcess/API/ios/WKScrollView.h:
2629 * UIProcess/API/ios/WKScrollView.mm:
2630 (-[WKScrollViewDelegateForwarder initWithInternalDelegate:externalDelegate:]):
2631 (-[WKScrollViewDelegateForwarder methodSignatureForSelector:]):
2632 (-[WKScrollViewDelegateForwarder respondsToSelector:]):
2633 (-[WKScrollViewDelegateForwarder forwardInvocation:]):
2634 (-[WKScrollView setInternalDelegate:]):
2635 (-[WKScrollView setDelegate:]):
2636 (-[WKScrollView delegate]):
2637 Pretend like _externalDelegate is the real delegate to avoid exposing
2638 our internal delegate or forwarder object.
2639 (-[WKScrollView _updateDelegate]):
2640 (-[WKScrollView dealloc]):
2641 * UIProcess/API/ios/WKViewIOS.mm:
2642 (-[WKView scrollView]):
2643 (-[WKView _commonInitializationWithContextRef:pageGroupRef:relatedToPage:]):
2645 2014-01-15 Carlos Garcia Campos <cgarcia@igalia.com>
2647 [GTK][EFL][NIX] Do not use PrintContext, Frame and DocumentLoader in Errors
2648 https://bugs.webkit.org/show_bug.cgi?id=127047
2650 Reviewed by Martin Robinson.
2652 * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp:
2653 (WebKit::WebPrintOperationGtk::frameURL): Helper function to get
2654 the URL of the frame being printed.
2655 (WebKit::WebPrintOperationGtk::print): Use frameURL() as failing
2656 URL for printing errors.
2657 * WebProcess/WebPage/gtk/WebPrintOperationGtk.h:
2659 2014-01-15 Benjamin Poulain <bpoulain@apple.com>
2661 Move user agent code to WebCore and unify some code between OS X and iOS
2662 https://bugs.webkit.org/show_bug.cgi?id=127080
2664 Reviewed by Sam Weinig.
2666 * UIProcess/ios/WebPageProxyIOS.mm:
2667 (WebKit::userVisibleWebKitVersionString):
2668 (WebKit::WebPageProxy::standardUserAgent):
2669 * UIProcess/mac/WebPageProxyMac.mm:
2670 (WebKit::WebPageProxy::standardUserAgent):
2671 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2672 (InitWebCoreSystemInterface):
2674 2014-01-15 Eunmi Lee <eunmi15.lee@samsung.com>
2676 [EFL][WK2] Use timestamp when event occurs for touch events.
2677 https://bugs.webkit.org/show_bug.cgi?id=126424
2679 Reviewed by Gyuyoung Kim.
2681 Current time is used for touch event's timestamp instead of timestamp
2682 when event occurs. Timestamp of touch event is used to implement flick
2683 gesture, so it should be real value for accurate gesture processing.
2685 * UIProcess/API/efl/EwkView.cpp:
2686 Function names for handling touch events are changed to distinguish
2687 mouse events and multi events.
2688 (EwkView::setTouchEventsEnabled):
2689 (EwkView::feedTouchEvents):
2690 (EwkView::handleMouseDownForTouch):
2691 (EwkView::handleMouseUpForTouch):
2692 (EwkView::handleMouseMoveForTouch):
2693 (EwkView::handleMultiDownForTouch):
2694 (EwkView::handleMultiUpForTouch):
2695 (EwkView::handleMultiMoveForTouch):
2696 * UIProcess/API/efl/EwkView.h:
2697 * UIProcess/API/efl/GestureRecognizer.cpp:
2698 (WebKit::GestureHandler::handlePan):
2699 (WebKit::GestureRecognizer::processTouchEvent):
2700 (WebKit::GestureRecognizer::noGesture):
2701 (WebKit::GestureRecognizer::singleTapGesture):
2702 (WebKit::GestureRecognizer::doubleTapGesture):
2703 (WebKit::GestureRecognizer::panGesture):
2704 (WebKit::GestureRecognizer::pinchGesture):
2705 * UIProcess/API/efl/GestureRecognizer.h:
2707 2014-01-15 Gavin Barraclough <barraclough@apple.com>
2709 Change Page, FocusController to use ViewState
2710 https://bugs.webkit.org/show_bug.cgi?id=126533
2712 Unreviewed rollout, this caused a regression.
2714 * WebProcess/WebPage/WebPage.cpp:
2715 (WebKit::WebPage::WebPage):
2716 (WebKit::WebPage::setActive):
2717 (WebKit::WebPage::setViewIsVisible):
2718 (WebKit::WebPage::setFocused):
2719 (WebKit::WebPage::setIsInWindow):
2720 (WebKit::WebPage::setViewStateInternal):
2721 (WebKit::WebPage::setIsVisuallyIdle):
2722 * WebProcess/WebPage/WebPage.h:
2724 2014-01-15 Yongjun Zhang <yongjun_zhang@apple.com>
2726 https://bugs.webkit.org/show_bug.cgi?id=127072
2727 Don't autorelease wrapper object (WebProcessPlugInScriptWorld) for InjectedBundleScriptWorld::normalWorld().
2729 Reviewed by Geoffrey Garen.
2731 In [WKWebProcessPlugInScriptWorld normalWorld], InjectedBundleScriptWorld::normalWorld() returns a static
2732 instance, autoreleasing its wrapper object could cause a dangling pointer and crash later.
2734 * WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm:
2735 (+[WKWebProcessPlugInScriptWorld normalWorld]):
2737 2014-01-15 Andy Estes <aestes@apple.com>
2739 [iOS] Properly exclude the shim dylibs this time
2740 https://bugs.webkit.org/show_bug.cgi?id=127075
2742 Reviewed by Anders Carlsson.
2744 BaseLegacyProcess.xcconfig was setting EXCLUDED_SOURCE_FILE_NAMES in
2745 conflict with what I added in r161918, and I misspelled the setting
2746 name in two instances. Fix these two bugs.
2748 Also remove a vestigial OTHER_LDFLAGS from WebContentProcess.xcconfig
2751 * Configurations/BaseLegacyProcess.xcconfig:
2752 * Configurations/NetworkProcess.xcconfig:
2753 * Configurations/PluginProcess.xcconfig:
2754 * Configurations/WebContentProcess.xcconfig:
2756 2014-01-15 Enrica Casucci <enrica@apple.com>
2758 Support WebSelections in WK2 on iOS.
2759 https://bugs.webkit.org/show_bug.cgi?id=127015
2761 Reviewed by Benjamin Poulain.
2763 This is the first step towards adding support for selections in
2764 non editable content on iOS for WK2.
2765 In particular, this patch adds the basic plumbing to decide which
2766 gesture recognizers are enabled and adds empty stubs for the gestures
2767 that we'll need to support.
2768 There are two separate assistants for selections, one to be used
2769 in editable text (UIWKTextInteractionAssistant) and one for non editable
2770 text (UIWKSelectionAssistant) and they are mutually exclusive.
2771 UIWKSelectionAssistant is created at the time the view is created,
2772 and swapped with UIWKTextInteraction assistant
2773 only when an editable element is focused and the keyboard appears on screen.
2775 gestureRecognizerShouldBegin is the delegate call used to decide which gestures
2776 should begin based on the position the gesture occurred at.
2777 We want to avoid as much as possible synchronous calls to the WebProcess to
2778 retrieve information about the content and in order to do so, we take advantage
2779 of the order in which the gesture recognizers will trigger, based on the delay
2780 configured at initialization.
2781 The first gesture to trigger is highlightLongPress, followed by longpress in the
2782 active assistant and longpress in the WKInteractionView.
2783 There are two different scenarios for highlighlongpress based on which assistant is
2786 UIWKSelectionAssistant is active:
2787 We send a request to the WebProcess to get information on the position
2788 and we return YES, allowing the gesture to start.
2789 We delegate to the WebProcess the proper handling of highlight based on the element.
2790 When longPress gesture fires for the assistant, we assume we have received the reply to our
2791 previous request, if not we fetch the information synchronously.
2792 We are then able to make an informed decision about whether
2793 or not to start the gesture. If the reply is NO, the third and last long press
2794 gesture can be evaluated to decide whether to show the action sheet or simply generate
2797 UIWKTextInteractionAssistant is active:
2798 In this case we must have information about the position immediately and we issue
2799 a synchronous request to the WebProcess.
2800 If we are not interacting with the same node, we return NO.
2801 Then the longpress gesture fires for the assistant which performs the same check.
2802 If the node is the same, the loupe gesture will start, otherwise the last longpress
2803 gesture will be evaluated to decide about showing the action sheet or generating a
2806 * Scripts/webkit2/messages.py:
2807 * Shared/InteractionInformationAtPosition.cpp: Added.
2808 (WebKit::InteractionInformationAtPosition::encode):
2809 (WebKit::InteractionInformationAtPosition::decode):
2810 * Shared/InteractionInformationAtPosition.h: Added.
2811 (WebKit::InteractionInformationAtPosition::InteractionInformationAtPosition):
2812 * UIProcess/API/ios/PageClientImplIOS.h:
2813 * UIProcess/API/ios/PageClientImplIOS.mm:
2814 (WebKit::PageClientImpl::positionInformationDidChange):
2815 * UIProcess/API/ios/WKContentView.mm:
2816 (-[WKContentView _positionInformationDidChange:]):
2817 * UIProcess/API/ios/WKContentViewInternal.h:
2818 * UIProcess/API/ios/WKInteractionView.h:
2819 * UIProcess/API/ios/WKInteractionView.mm:
2820 (-[WKInteractionView initWithFrame:]):
2821 (-[WKInteractionView dealloc]):
2822 (-[WKInteractionView gestureRecognizer:canPreventGestureRecognizer:]):
2823 (-[WKInteractionView gestureRecognizer:canBePreventedByGestureRecognizer:]):
2825 (-[WKInteractionView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
2826 (-[WKInteractionView _showImageSheet]):
2827 (-[WKInteractionView _showLinkSheet]):
2828 (-[WKInteractionView _actionForLongPress]):
2829 (-[WKInteractionView ensurePositionInformationIsUpToDate:]):
2830 (-[WKInteractionView gestureRecognizerShouldBegin:]):
2831 (-[WKInteractionView hasSelectablePositionAtPoint:]):
2832 (-[WKInteractionView pointIsInAssistedNode:]):
2833 (-[WKInteractionView _longPressRecognized:]):
2834 (-[WKInteractionView _doubleTapRecognized:]):
2835 (-[WKInteractionView _twoFingerDoubleTapRecognized:]):
2836 (-[WKInteractionView _twoFingerPanRecognized:]):
2837 (-[WKInteractionView useSelectionAssistantWithMode:]):
2838 (-[WKInteractionView _positionInformationDidChange:]):
2839 (-[WKInteractionView interactionAssistant]):
2840 (-[WKInteractionView _startAssistingKeyboard]):
2841 (-[WKInteractionView _stopAssistingKeyboard]):
2842 * UIProcess/PageClient.h:
2843 * UIProcess/WebPageProxy.h:
2844 * UIProcess/WebPageProxy.messages.in:
2845 * UIProcess/ios/WebPageProxyIOS.mm:
2846 (WebKit::WebPageProxy::didReceivePositionInformation):
2847 (WebKit::WebPageProxy::getPositionInformation):
2848 (WebKit::WebPageProxy::requestPositionInformation):
2849 * WebKit2.xcodeproj/project.pbxproj:
2850 * WebProcess/WebPage/WebPage.h:
2851 * WebProcess/WebPage/WebPage.messages.in:
2852 * WebProcess/WebPage/ios/WebPageIOS.mm:
2853 (WebKit::WebPage::selectWithGesture):
2854 (WebKit::WebPage::getPositionInformation):
2855 (WebKit::WebPage::requestPositionInformation):
2857 2014-01-15 Yongjun Zhang <yongjun_zhang@apple.com>
2859 https://bugs.webkit.org/show_bug.cgi?id=127066
2860 Add WKBrowsingContextHandle.h to WebKit2 private headers.
2862 Reviewed by Dan Bernstein.
2864 Add WKBrowsingContextHandle.h to WebKit2 private headers so that WebKit2 client
2865 can use WKBrowsingContextHandle class.
2867 * WebKit2.xcodeproj/project.pbxproj:
2869 2014-01-15 Piotr Grad <p.grad@samsung.com>
2871 toStringVector static function definition should not be redundant.
2872 https://bugs.webkit.org/show_bug.cgi?id=126872.
2874 Reviewed by Anders Carlsson.
2876 toStringVector function was declared twice in InjectedBundle.cpp and WebPageGroup.cpp as static.
2877 In order to remove redundant definition this function was moved into API::Array.
2879 * Shared/APIArray.cpp:
2880 (API::Array::toStringVector):
2881 * Shared/APIArray.h:
2882 * UIProcess/WebPageGroup.cpp:
2883 (WebKit::WebPageGroup::addUserStyleSheet):
2884 (WebKit::WebPageGroup::addUserScript):
2885 * WebProcess/InjectedBundle/InjectedBundle.cpp:
2886 (WebKit::InjectedBundle::addUserScript):
2887 (WebKit::InjectedBundle::addUserStyleSheet):
2889 2014-01-10 Gavin Barraclough <barraclough@apple.com>
2891 REGRESSION (r158369): Some pop-up windows open at incorrect size (affects GMail, theblaze.com)
2892 https://bugs.webkit.org/show_bug.cgi?id=126289
2894 Reviewed by Anders Carlson.
2896 Partial revert of https://bugs.webkit.org/show_bug.cgi?id=123557.
2897 On window.open, update page when the UIProcess sends the create message
2899 * UIProcess/WebPageProxy.cpp:
2900 (WebKit::WebPageProxy::initializeWebPage):
2901 (WebKit::WebPageProxy::creationParameters):
2902 * UIProcess/WebPageProxy.h:
2903 - creation paraments are not preserved at window.open.
2904 * WebProcess/WebPage/WebPage.cpp:
2905 (WebKit::WebPage::reinitializeWebPage):
2906 (WebKit::WebPage::setViewState):
2907 (WebKit::WebPage::setViewStateInternal):
2908 * WebProcess/WebPage/WebPage.h:
2909 - add interface to update page.
2910 * WebProcess/WebProcess.cpp:
2911 (WebKit::WebProcess::createWebPage):
2912 - if we try to create a page that already exists, update the current page's view state.
2914 2014-01-15 Carlos Garcia Campos <cgarcia@igalia.com>
2916 [GTK] Web process sometimes crashes when printing in synchronous mode
2917 https://bugs.webkit.org/show_bug.cgi?id=126979
2919 Reviewed by Gustavo Noronha Silva.
2921 When printing synchronously in GTK+ we need to make sure that we
2922 have a list of Printers before starting the print operation. Getting
2923 the list of printers is done synchronously by GTK+, but using a
2924 nested main loop that might process IPC messages comming from the
2925 UI process like EndPrinting. When the EndPrinting message is
2926 received while the printer list is being populated, the print
2927 operation is finished unexpectely and the web process crashes. The
2928 PrinterListGtk class gets the list of printers in the constructor
2929 so we just need to ensure there's an instance alive during the
2930 synchronous print operation. In case of asynchronous printing the
2931 printer list will be created during the print operation without
2932 any risk, because the EndPrinting message is not sent until the
2933 printing callback has been received in the UI process.
2935 * GNUmakefile.list.am: Add new files to compilation.
2936 * PlatformGTK.cmake: Ditto.
2937 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2938 (WebKit::WebChromeClient::print): Ensure PrinterListGtk is created
2939 before the synchronous printing and destroyed afterwards.
2940 * WebProcess/WebPage/gtk/PrinterListGtk.cpp: Added.
2941 (WebKit::PrinterListGtk::shared): Return the singleton.
2942 (WebKit::PrinterListGtk::enumeratePrintersFunction): Callback
2943 called by gtk_enumerate_printers() when a new printer is found.
2944 (WebKit::PrinterListGtk::PrinterListGtk): Call
2945 gtk_enumerate_printers() in syhchronous mode.
2946 (WebKit::PrinterListGtk::~PrinterListGtk):
2947 (WebKit::PrinterListGtk::addPrinter): Add the printer to the list
2948 and set the default printer if needed.
2949 (WebKit::PrinterListGtk::findPrinter): Find the printer for the
2951 * WebProcess/WebPage/gtk/PrinterListGtk.h: Added.
2952 * WebProcess/WebPage/gtk/WebPrintOperationGtk.cpp: Use
2953 PrinterListGtk class to find the printer instead of calling
2954 gtk_enumerate_printers().
2956 2014-01-15 Tomas Popela <tpopela@redhat.com>
2958 [SOUP] [WK2] - Disable MemoryCache when the DOCUMENT_VIEWER cache model is set
2959 https://bugs.webkit.org/show_bug.cgi?id=126577
2961 Reviewed by Carlos Garcia Campos.
2963 As in http://trac.webkit.org/changeset/152483, but this time for
2964 WebKit2. When WEBKIT_CACHE_MODEL_DOCUMENT_VIEWER is set we need to
2965 disable the MemoryCache completely to prevent caching of the resources.
2967 * WebProcess/soup/WebProcessSoup.cpp:
2968 (WebKit::WebProcess::platformSetCacheModel):
2970 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
2972 [GTK] UI process crashes when closing the window right after printing with javascript
2973 https://bugs.webkit.org/show_bug.cgi?id=126981
2975 Reviewed by Gustavo Noronha Silva.
2977 The UI process crashes because when the page is closed, the web
2978 view is destroyed before the print operation has actually
2979 finished. Use a weak pointer to make sure the web view pointer is
2980 set to NULL when the it's destroyed and emit the finished callback
2981 always so that the user can clean up the operation even when the
2982 web view has been closed.
2984 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
2985 (drawPagesForPrintingCompleted):
2987 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
2989 [GTK] UI process crashes when the web process crashes while printing
2990 https://bugs.webkit.org/show_bug.cgi?id=126977
2992 Reviewed by Gustavo Noronha Silva.
2994 When the web process crashes, the printing callback is
2995 invalidated, so the function is called with a NULL error.
2997 * UIProcess/API/gtk/WebKitPrintOperation.cpp:
2998 (drawPagesForPrintingCompleted): Check wkError is not NULL before
3000 * UIProcess/API/gtk/WebKitWebView.cpp:
3001 (webkitWebViewPrintFrame): Set the print mode of the operation
3002 before emitting the print signal.
3004 2014-01-14 Brady Eidson <beidson@apple.com>
3006 IDB: create object store support
3007 <rdar://problem/15779639> and https://bugs.webkit.org/show_bug.cgi?id=127011
3009 Reviewed by Anders Carlsson.
3011 Add messaging/callback infrastructure for creating object stores:
3012 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.cpp:
3013 (WebKit::DatabaseProcessIDBConnection::createObjectStore):
3014 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.h:
3015 * DatabaseProcess/IndexedDB/DatabaseProcessIDBConnection.messages.in:
3017 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.cpp:
3018 (WebKit::WebIDBServerConnection::createObjectStore):
3019 (WebKit::WebIDBServerConnection::didCreateObjectStore):
3020 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.h:
3021 * WebProcess/Databases/IndexedDB/WebIDBServerConnection.messages.in:
3023 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.cpp:
3024 (WebKit::UniqueIDBDatabase::didChangeDatabaseVersion):
3025 (WebKit::UniqueIDBDatabase::didCreateObjectStore):
3026 (WebKit::UniqueIDBDatabase::didCompleteBoolRequest):
3027 (WebKit::UniqueIDBDatabase::createObjectStore):
3028 (WebKit::UniqueIDBDatabase::createObjectStoreInBackingStore):
3029 * DatabaseProcess/IndexedDB/UniqueIDBDatabase.h:
3031 * DatabaseProcess/IndexedDB/UniqueIDBDatabaseBackingStore.h:
3033 Add serialization helpers to save/restore an IDBKeyPath to/from disk:
3034 * DatabaseProcess/IndexedDB/IDBSerialization.cpp:
3035 (WebKit::serializeIDBKeyPath):
3036 (WebKit::deserializeIDBKeyPath):
3037 * DatabaseProcess/IndexedDB/IDBSerialization.h:
3039 Add object store metadata to the schema, and save/restore the metadata:
3040 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.cpp:
3041 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createAndPopulateInitialMetadata):
3042 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::extractExistingMetadata):
3043 (WebKit::UniqueIDBDatabaseBackingStoreSQLite::createObjectStore):
3044 * DatabaseProcess/IndexedDB/sqlite/UniqueIDBDatabaseBackingStoreSQLite.h:
3046 * Scripts/webkit2/messages.py:
3048 * WebKit2.xcodeproj/project.pbxproj:
3050 2014-01-14 Jae Hyun Park <jae.park@company100.net>
3052 [GTK] Unreviewed build fix after r162034
3054 * GNUmakefile.list.am:
3056 2014-01-14 Ryuan Choi <ryuan.choi@samsung.com>
3058 Unreviewed build fix for CMake based ports after r162034.
3062 2014-01-14 Jeffrey Pfau <jpfau@apple.com>
3064 Build fix after r162034
3066 Rubber-stamped by Benjamin Poulain.
3068 * WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp:
3070 2014-01-14 Anders Carlsson <andersca@apple.com>
3072 Create separate progress tracker clients
3073 https://bugs.webkit.org/show_bug.cgi?id=127025
3075 Reviewed by Sam Weinig.
3077 * WebKit2.xcodeproj/project.pbxproj:
3078 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3079 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3080 * WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp: Copied from Source/WebCore/loader/ProgressTrackerClient.h.
3081 (WebKit::WebProgressTrackerClient::WebProgressTrackerClient):
3082 (WebKit::WebProgressTrackerClient::progressTrackerDestroyed):
3083 (WebKit::WebProgressTrackerClient::progressStarted):
3084 (WebKit::WebProgressTrackerClient::progressEstimateChanged):
3085 (WebKit::WebProgressTrackerClient::progressFinished):
3086 * WebProcess/WebCoreSupport/WebProgressTrackerClient.h: Copied from Source/WebCore/loader/ProgressTrackerClient.h.
3087 * WebProcess/WebPage/WebPage.cpp:
3088 (WebKit::WebPage::WebPage):
3090 2014-01-14 Benjamin Poulain <bpoulain@apple.com>
3092 [WK2] Make WebPageProxy's setUserAgent private
3093 https://bugs.webkit.org/show_bug.cgi?id=127013
3095 Reviewed by Anders Carlsson.
3097 * UIProcess/WebPageProxy.h:
3098 The API to modify the user agent already has 3 "setters":
3100 -setApplicationNameForUserAgent
3103 The method WebPageProxy::setUserAgent() is supposed to be internal, not used directly.
3104 Using it directly would cause unexpected behaviors, for example:
3105 -Set the user agent with setUserAgent.
3106 -Set CustomUserAgent.
3107 -Reset CustomUserAgent.
3108 ->The user agent is now standardUserAgent instead of the user agent defined initially.
3110 2014-01-14 Commit Queue <commit-queue@webkit.org>
3112 Unreviewed, rolling out r162000.
3113 http://trac.webkit.org/changeset/162000
3114 https://bugs.webkit.org/show_bug.cgi?id=127009
3116 API versioning is wrong (Requested by rfong on #webkit).
3118 * UIProcess/API/C/WKAPICast.h:
3119 * UIProcess/API/C/WKPageLoaderClient.h:
3120 * UIProcess/API/C/WKPageUIClient.h:
3121 * UIProcess/WebLoaderClient.cpp:
3122 * UIProcess/WebLoaderClient.h:
3123 * UIProcess/WebPageProxy.cpp:
3124 * UIProcess/WebPageProxy.h:
3125 * UIProcess/WebPageProxy.messages.in:
3126 * UIProcess/WebUIClient.cpp:
3127 * UIProcess/WebUIClient.h:
3128 * UIProcess/mac/WebInspectorProxyMac.mm:
3129 (WebKit::WebInspectorProxy::platformCreateInspectorPage):
3130 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3131 * WebProcess/WebCoreSupport/WebChromeClient.h:
3132 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3133 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3134 * WebProcess/WebPage/WebPage.cpp:
3135 * WebProcess/WebPage/WebPage.h:
3137 2014-01-14 Csaba Osztrogonác <ossy@webkit.org>
3139 Speculative buildfix after r161999.
3141 * Shared/APIObject.h:
3143 2014-01-09 Roger Fong <roger_fong@apple.com>
3145 Add support for handling WebGL load policies.
3146 https://bugs.webkit.org/show_bug.cgi?id=126935
3147 <rdar://problem/15790448>.
3149 Reviewed by Brent Fulgham.
3151 Boiler plate code for sending messages to and from the UI and Web Process.
3153 * UIProcess/API/C/WKAPICast.h:
3154 (WebKit::toWebGLLoadPolicy):
3155 * UIProcess/API/C/WKPageLoaderClient.h:
3156 * UIProcess/API/C/WKPageUIClient.h:
3157 * UIProcess/WebLoaderClient.cpp:
3158 (WebKit::WebLoaderClient::webGLLoadPolicy):
3159 * UIProcess/WebLoaderClient.h:
3160 * UIProcess/WebPageProxy.cpp:
3161 (WebKit::WebPageProxy::webGLContextCreated):
3162 (WebKit::WebPageProxy::webGLPolicyForHost):
3163 * UIProcess/WebPageProxy.h:
3164 * UIProcess/WebPageProxy.messages.in:
3165 * UIProcess/WebUIClient.cpp:
3166 (WebKit::WebUIClient::webGLContextCreated):
3167 * UIProcess/WebUIClient.h:
3168 * UIProcess/mac/WebInspectorProxyMac.mm:
3169 (WebKit::WebInspectorProxy::platformCreateInspectorPage):
3170 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3171 (WebKit::WebChromeClient::webGLContextCreated):
3172 * WebProcess/WebCoreSupport/WebChromeClient.h:
3173 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3174 (WebKit::WebFrameLoaderClient::webGLPolicyForHost):
3175 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3176 * WebProcess/WebPage/WebPage.cpp: A sendSync is used here to get the webGLPolicyForHost message sent between the Web and UI process.
3177 In the future this will be replaced with a strategy is non-blocking.
3178 (WebKit::WebPage::getWebGLPolicyForHost):
3179 * WebProcess/WebPage/WebPage.h:
3181 2014-01-14 Mark Rowe <mrowe@apple.com>
3183 WebKit2 leaks sudden termination assertions when a page with unload handlers is closed.
3184 <https://webkit.org/b/126974> / <rdar://problem/15812954>
3186 When a page with an unload handler is loaded, the web process tells the UI process that it
3187 should disable sudden termination. However, when the page is closed the connection between
3188 the web and UI process is torn down before the web content has a chance to tell the UI
3189 process to reenable sudden termination.
3191 Reviewed by Anders Carlsson.
3193 * UIProcess/WebProcessProxy.cpp:
3194 (WebKit::WebProcessProxy::WebProcessProxy):
3195 (WebKit::WebProcessProxy::~WebProcessProxy): Balance any outstanding disableSuddenTermination calls.
3196 (WebKit::WebProcessProxy::enableSuddenTermination): Decrement the count.
3197 (WebKit::WebProcessProxy::disableSuddenTermination): Increment the count.
3198 * UIProcess/WebProcessProxy.h:
3200 2014-01-14 Joseph Pecoraro <pecoraro@apple.com>
3202 Web Inspector: For Remote Inspection link WebProcess's to their parent UIProcess
3203 https://bugs.webkit.org/show_bug.cgi?id=126995
3205 Reviewed by Timothy Hatcher.
3207 * WebProcess/WebCoreSupport/WebInspectorClient.h:
3208 * WebProcess/WebCoreSupport/WebInspectorClient.cpp:
3209 (WebKit::WebInspectorClient::parentProcessIdentifier):
3210 WebProcesses are proxies for a parent UIProcess.
3212 2014-01-14 Tim Horton <timothy_horton@apple.com>
3214 iOS WebKit2 build fixes, part 3
3216 * WebKit2.xcodeproj/project.pbxproj:
3217 Remove some files from the 'All' target that should never have been a part of it.
3219 2014-01-14 Tim Horton <timothy_horton@apple.com>
3221 iOS WebKit2 build fixes, part 2
3223 * WebKit2.xcodeproj/project.pbxproj:
3224 Add some missing files.
3226 2014-01-14 Brian J. Burg <burg@cs.washington.edu>
3228 Add ENABLE(WEB_REPLAY) feature flag to the build system
3229 https://bugs.webkit.org/show_bug.cgi?id=126949
3231 Reviewed by Joseph Pecoraro.
3233 * Configurations/FeatureDefines.xcconfig:
3235 2014-01-14 Tim Horton <timothy_horton@apple.com>
3237 Move WKView.mm to WKViewIOS.mm as 161950 was supposed to do.
3239 * UIProcess/API/ios/WKView.mm: Removed.
3240 * UIProcess/API/ios/WKViewIOS.mm: Copied from UIProcess/API/ios/WKView.mm.
3242 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
3244 [GTK] Test /webkit2/WebKitWebContext/languages crashes with network process enabled
3245 https://bugs.webkit.org/show_bug.cgi?id=126130
3247 Reviewed by Anders Carlsson.
3249 We need to notify the network process when the user preferred
3250 languages have changed to update the SoupSession accordingly.
3252 * NetworkProcess/NetworkProcess.h: Add
3253 userPreferredLanguagesChanged when using soup network backend.
3254 * NetworkProcess/NetworkProcess.messages.in: Add
3255 UserPreferredLanguagesChanged message when using soup network
3257 * NetworkProcess/soup/NetworkProcessSoup.cpp:
3258 (WebKit::NetworkProcess::userPreferredLanguagesChanged): Update
3259 the SoupSession to use the given languages.
3260 (WebKit::NetworkProcess::platformInitializeNetworkProcess): Call
3261 userPreferredLanguagesChanged() when initialization parameters
3263 (WebKit::NetworkProcess::allowSpecificHTTPSCertificateForHost):
3264 Remove unnedded WebCore prefix.
3265 (WebKit::NetworkProcess::clearCacheForAllOrigins): Simplify using
3267 * Shared/Network/NetworkProcessCreationParameters.cpp:
3268 (WebKit::NetworkProcessCreationParameters::encode): Encode the
3270 (WebKit::NetworkProcessCreationParameters::decode): Decode the
3272 * Shared/Network/NetworkProcessCreationParameters.h:
3273 * UIProcess/WebContext.cpp:
3274 (WebKit::WebContext::languageChanged): Send a message also to the
3276 * UIProcess/soup/WebContextSoup.cpp:
3277 (WebKit::WebContext::platformInitializeNetworkProcess): Set
3278 languages initial parameter.
3280 2014-01-14 Carlos Garcia Campos <cgarcia@igalia.com>
3282 [SOUP] SoupNetworkSession::setAcceptLanguages should receive a const reference
3283 https://bugs.webkit.org/show_bug.cgi?id=126966
3285 Reviewed by Gustavo Noronha Silva.
3287 * WebProcess/soup/WebProcessSoup.cpp:
3288 (WebKit::setSoupSessionAcceptLanguage): Use const Vector<String>&.
3290 2014-01-14 Andreas Kling <akling@apple.com>
3292 Remove deprecated DeferrableOneShotTimer constructor.
3293 <https://webkit.org/b/126984>
3295 Reviewed by Anders Carlsson.
3297 * WebProcess/Plugins/PluginView.h:
3298 * WebProcess/Plugins/PluginView.cpp:
3299 (WebKit::PluginView::pluginSnapshotTimerFired):
3301 Take the timer by reference so we can use the new constructor.
3303 2014-01-13 Tim Horton <timothy_horton@apple.com>
3305 iOS WebKit2 build fixes, part 1
3307 * Configurations/WebKit2.xcconfig:
3308 * NetworkProcess/NetworkResourceLoader.cpp:
3309 * NetworkProcess/NetworkResourceLoader.h:
3310 * NetworkProcess/RemoteNetworkingContext.h:
3311 * Shared/WebEventConversion.h:
3312 * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
3313 * UIProcess/API/ios/WKInteractionView.mm:
3314 (-[WKTextPosition isEqual:]):
3315 * UIProcess/API/ios/WKViewIOS.mm: Renamed from Source/WebKit2/UIProcess/API/ios/WKView.mm.
3316 * UIProcess/ios/WebPageProxyIOS.mm:
3317 * UIProcess/ios/WebProcessProxyIOS.mm:
3318 * WebKit2.xcodeproj/project.pbxproj:
3319 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
3320 * WebProcess/WebPage/WebPage.h:
3321 * WebProcess/WebPage/ios/WebPageIOS.mm:
3322 (WebKit::WebPage::elementDidFocus):
3323 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3325 2014-01-13 Jinwoo Song <jinwoo7.song@samsung.com>
3327 [EFL][WK2] Disable failing API tests
3328 https://bugs.webkit.org/show_bug.cgi?id=126960
3330 Reviewed by Gyuyoung Kim.
3332 Disable color picker test until bug 119120 is resolved.
3334 * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
3337 2014-01-13 Jinwoo Song <jinwoo7.song@samsung.com>
3339 [EFL][WK2] ewk_view_page_contents_get() API test is failing
3340 https://bugs.webkit.org/show_bug.cgi?id=126957
3342 Reviewed by Gyuyoung Kim.
3344 As the day in 'Date' field may be one digit or two digit,
3345 the data length may also be varied by one byte.
3347 * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3348 (EWK2ViewTest::PageContentsAsMHTMLCallback):
3350 2014-01-13 Commit Queue <commit-queue@webkit.org>
3352 Unreviewed, rolling out r161939.
3353 http://trac.webkit.org/changeset/161939
3354 https://bugs.webkit.org/show_bug.cgi?id=126956
3356 didn't work with mac, of course (Requested by thorton on
3359 * NetworkProcess/NetworkResourceLoader.cpp:
3360 * NetworkProcess/NetworkResourceLoader.h:
3361 * NetworkProcess/RemoteNetworkingContext.h:
3362 * Shared/WebEventConversion.h:
3363 * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
3364 * UIProcess/API/ios/WKInteractionView.mm:
3365 (-[WKTextPosition isEqual:]):
3366 * WebKit2.xcodeproj/project.pbxproj:
3367 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
3368 * WebProcess/WebPage/WebPage.h:
3369 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3371 2014-01-13 Benjamin Poulain <bpoulain@apple.com>
3373 Update WebPageProxyIOS's user agent string
3374 https://bugs.webkit.org/show_bug.cgi?id=126933
3376 Reviewed by Darin Adler.
3378 * UIProcess/ios/WebPageProxyIOS.mm:
3379 (WebKit::WebPageProxy::standardUserAgent):
3380 Send a more reasonable user agent. The previous one was forcing
3381 iOS 5.1's iPad user-agent.
3383 2014-01-13 Tim Horton <timothy_horton@apple.com>
3385 iOS WebKit2 build fixes
3387 * NetworkProcess/NetworkResourceLoader.cpp:
3388 * NetworkProcess/NetworkResourceLoader.h:
3389 Introduce/clarify some confusion about CFNETWORK vs. PLATFORM(IOS).
3391 * NetworkProcess/RemoteNetworkingContext.h:
3392 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
3393 Get rid of an override of something that doesn't exist anymore.
3395 * WebKit2.xcodeproj/project.pbxproj:
3396 Add some files. It's likely there are more missing, but this is a start.
3398 * Shared/WebEventConversion.h:
3399 * WebProcess/WebPage/WebPage.h:
3400 Use WebKitAdditions.
3402 * UIProcess/API/ios/WKGeolocationProviderIOS.mm:
3403 Something bizarre is happening with internal deprecation warnings.
3405 * UIProcess/API/ios/WKInteractionView.mm:
3406 (-[WKTextPosition isEqual:]):
3409 * WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
3410 Remove an override of something that doesn't exist anymore.
3412 2014-01-13 Andy Estes <aestes@apple.com>
3414 [iOS] Build Fix: Don't build the 'All-iOS' target on iOS. Just use 'All'.
3418 2014-01-13 Martin Robinson <mrobinson@igalia.com>
3420 [CMake] Mark all dependency include paths and libraries as advanced variables
3421 https://bugs.webkit.org/show_bug.cgi?id=126504
3423 Reviewed by Daniel Bates.
3425 * CMakeLists.txt: Mark the LIBRT_LIBRARIES variable as advanced.
3427 2014-01-13 Martin Robinson <mrobinson@igalia.com>
3429 [GTK][CMake] Circular dependency in generation of WebKitEnumTypes.h
3430 https://bugs.webkit.org/show_bug.cgi?id=126912
3432 Reviewed by Daniel Bates.
3434 * PlatformGTK.cmake: Remove the circular dependency by generating WebKitEnumTypes.h with
3435 all installed headers except for WebKitEnumTypes.h itself.
3437 2014-01-13 Andy Estes <aestes@apple.com>
3439 [iOS] Exclude shims and PluginProcess.app from the WebKit2 build
3440 https://bugs.webkit.org/show_bug.cgi?id=126936
3442 Reviewed by Daniel Bates.
3444 * Configurations/All.xcconfig: Added. Excluded PluginProcess.app from
3445 being copied into WebKit2.framework on iOS.
3446 * Configurations/NetworkProcess.xcconfig: Excluded SecItemShim.dylib
3447 from being copied into NetworkProcess.app on iOS.
3448 * Configurations/PluginProcess.xcconfig: Excluded
3449 PluginProcessShim.dylib from being copied into PluginProcess.app and
3450 set SKIP_INSTALL to YES on iOS.
3451 * Configurations/PluginProcessShim.xcconfig: Added. Linked the shim
3452 against necessary frameworks on Mac.
3453 * Configurations/SecItemShim.xcconfig: Ditto.
3454 * Configurations/WebProcessShim.xcconfig: Ditto.
3455 * Configurations/WebContentProcess.xcconfig: Excluded
3456 WebProcessShim.dylib from being copied into WebProcess.app on iOS.
3457 * PluginProcess/mac/PluginProcessShim.mm: Added #if !PLATFORM(IOS) guards.
3458 * Shared/mac/CookieStorageShimLibrary.cpp: Ditto.
3459 * WebProcess/mac/SecItemShimLibrary.mm: Ditto.
3460 * WebKit2.xcodeproj/project.pbxproj: Removed Mac-only frameworks from
3461 the shims' 'Link Binary with Libraries' build phases. Added new xcconfigs.
3463 2014-01-13 Jinwoo Song <jinwoo7.song@samsung.com>
3465 [EFL][WK2] Replace usage of DEFINE_STATIC_LOCAL with NeverDestroyed
3466 https://bugs.webkit.org/show_bug.cgi?id=126882
3468 Reviewed by Gyuyoung Kim.
3470 * Shared/efl/ProcessExecutablePathEfl.cpp:
3471 (WebKit::executablePathOfWebProcess):
3472 (WebKit::executablePathOfPluginProcess):
3473 (WebKit::executablePathOfNetworkProcess):
3474 * UIProcess/API/efl/EwkView.cpp:
3475 (wkPageToEvasObjectMap):
3476 * UIProcess/API/efl/ewk_context.cpp:
3478 * UIProcess/API/efl/ewk_page_group.cpp:
3480 * UIProcess/efl/TextCheckerClientEfl.cpp:
3481 (TextCheckerClientEfl::instance):