1 2013-08-30 Antti Koivisto <antti@apple.com>
3 Remove code behind ENABLE(DIALOG_ELEMENT)
4 https://bugs.webkit.org/show_bug.cgi?id=120467
6 Reviewed by Darin Adler.
8 * Configurations/FeatureDefines.xcconfig:
10 2013-08-29 Sam Weinig <sam@webkit.org>
12 Add ENABLE gaurds for Promises
13 https://bugs.webkit.org/show_bug.cgi?id=120488
15 Reviewed by Andreas Kling.
17 * Configurations/FeatureDefines.xcconfig:
19 2013-08-29 Zan Dobersek <zdobersek@igalia.com>
21 [Automake] libWebCoreDOM.la could use a better name
22 https://bugs.webkit.org/show_bug.cgi?id=120232
24 Reviewed by Martin Robinson.
26 * GNUmakefile.am: libWebCoreDOM has a new name - libGObjectDOMBindings.
28 2013-08-29 Joseph Pecoraro <pecoraro@apple.com>
30 Web Inspector: Download Web Archive of Inspected Page
31 https://bugs.webkit.org/show_bug.cgi?id=119774
33 Reviewed by Timothy Hatcher.
35 Update to support InspectorFrontendHost.save's new base64Encoded
36 parameter. It means the incoming content is binary data, not a string.
38 * UIProcess/WebInspectorProxy.cpp:
39 (WebKit::WebInspectorProxy::save):
40 * UIProcess/WebInspectorProxy.h:
41 * UIProcess/WebInspectorProxy.messages.in:
42 * UIProcess/efl/WebInspectorProxyEfl.cpp:
43 (WebKit::WebInspectorProxy::platformSave):
44 * UIProcess/gtk/WebInspectorProxyGtk.cpp:
45 (WebKit::WebInspectorProxy::platformSave):
46 * UIProcess/mac/WebInspectorProxyMac.mm:
47 (WebKit::WebInspectorProxy::platformSave):
48 * UIProcess/qt/WebInspectorProxyQt.cpp:
49 (WebKit::WebInspectorProxy::platformSave):
50 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
51 (WebKit::WebInspectorFrontendClient::save):
52 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
53 * WebProcess/WebPage/WebInspector.cpp:
54 (WebKit::WebInspector::save):
55 * WebProcess/WebPage/WebInspector.h:
57 2013-08-29 Brian Holt <brian.holt@samsung.com>
59 [GTK] [WK2] TestWebKitWebView page-visibility fails
60 https://bugs.webkit.org/show_bug.cgi?id=120406
62 Reviewed by Gustavo Noronha Silva.
64 Removed the webkit prefix for document visibility properties.
66 * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
67 (testWebViewPageVisibility):
69 2013-08-28 Chris Curtis <chris_curtis@apple.com>
71 https://bugs.webkit.org/show_bug.cgi?id=119548
72 Refactoring Exception throws.
74 Reviewed by Geoffrey Garen.
76 Moved setting an exception into the vm, These functions changed to use the new functionality.
78 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
79 (WebKit::JSNPObject::callMethod):
80 (WebKit::JSNPObject::callObject):
81 (WebKit::JSNPObject::callConstructor):
82 (WebKit::JSNPObject::throwInvalidAccessError):
83 * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
84 (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
86 2013-08-28 Anders Carlsson <andersca@apple.com>
88 Allow the Flash plug-in to open its preference pane
89 https://bugs.webkit.org/show_bug.cgi?id=120431
90 <rdar://problem/14857039>
92 Reviewed by Andreas Kling.
94 Forward the -[NSWorkspace openFile:] call to the UI process and allow opening
95 the Flash preference pane (if Flash asks for it).
97 * PluginProcess/PluginProcess.h:
98 * PluginProcess/mac/PluginProcessMac.mm:
99 (WebKit::replacedNSWorkspace_openFile):
100 (WebKit::initializeCocoaOverrides):
101 (WebKit::PluginProcess::openFile):
102 * UIProcess/Plugins/PluginProcessProxy.h:
103 * UIProcess/Plugins/PluginProcessProxy.messages.in:
104 * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
105 (WebKit::PluginProcessProxy::openURL):
106 (WebKit::shouldOpenFile):
107 (WebKit::PluginProcessProxy::openFile):
109 2013-08-28 Tamas Czene <tczene@inf.u-szeged.hu>
111 [wk2] Resolve unused parameters in WebPlatformStrategies.cpp
112 https://bugs.webkit.org/show_bug.cgi?id=120410
114 Reviewed by Darin Adler.
116 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
117 (WebKit::WebPlatformStrategies::getPluginInfo):
118 (WebKit::WebPlatformStrategies::transientLocalStorageNamespace):
120 2013-08-28 Tamas Czene <tczene@inf.u-szeged.hu>
122 [wk2] Resolve unused parameter warnings in the WebProcess.cpp
123 https://bugs.webkit.org/show_bug.cgi?id=120412
125 Reviewed by Darin Adler.
127 * WebProcess/WebProcess.cpp:
128 (WebKit::WebProcess::startMemorySampler):
130 2013-08-28 Darin Adler <darin@apple.com>
132 Eliminate Pasteboard::generalPasteboard
133 https://bugs.webkit.org/show_bug.cgi?id=120392
135 Reviewed by Anders Carlsson.
137 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
138 (WebKit::WebEditorClient::updateGlobalSelection):
139 Use createForGlobalSelection instead of generalPasteboard and setSelectionMode.
141 2013-08-28 Ábrahám Gábor <abrhm@inf.u-szeged.hu>
143 Fix unused variable warning.
144 https://bugs.webkit.org/show_bug.cgi?id=120396
146 Reviewed by Allan Sandfeld Jensen.
148 Fix unused variable compiler warning in PageOverlay.h
150 * WebProcess/WebPage/PageOverlay.h:
151 (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
152 (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
155 2013-08-28 Zan Dobersek <zdobersek@igalia.com>
157 [GTK][WK2] Only set up a RedirectedXCompositeWindow if running under an X11 display
158 https://bugs.webkit.org/show_bug.cgi?id=120321
160 Reviewed by Gustavo Noronha Silva.
162 Only set up the RedirectedXCompositeWindow member of the WebKitWebViewBasePrivate struct
163 if we're running under an X11 display. This is now done in the webkitWebViewBaseConstructed
164 function rather than the constructor, which is removed.
166 This allows for the UIProcess to run in a Wayland environment even when built with accelerated
167 compositing enabled. Of course, at the moment there's no support yet for accelerated compositing
168 under Wayland, so we fall back to rendering the backing store. No changes are introduced to
169 the behavior under X11 - accelerated compositing will be used where possible, if supported.
171 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
172 (webkitWebViewBaseConstructed):
174 2013-08-28 Zan Dobersek <zdobersek@igalia.com>
176 [GTK][WK2] Disable accelerated compositing under Wayland
177 https://bugs.webkit.org/show_bug.cgi?id=120347
179 Reviewed by Martin Robinson.
181 Accelerated compositing is not yet supported under the Wayland display protocol,
182 so it should be disabled. Since it is enabled by default and the GTK WK2 API does
183 not provide any way to change that, it's enough to disable it when attaching the
184 WebKitSettings object to the WebPageGroup if running under Wayland.
186 * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
187 (webkitWebViewGroupAttachSettingsToPageGroup):
189 2013-08-28 Alexandre Abreu <alexandre.abreu@canonical.com>
191 Add a 'isMainFrame' parameter to QWebNavigationRequest.
192 https://bugs.webkit.org/show_bug.cgi?id=118860
194 Reviewed by Simon Hausmann.
196 * UIProcess/API/qt/qwebnavigationrequest.cpp:
197 (QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
198 (QWebNavigationRequest::QWebNavigationRequest):
199 (QWebNavigationRequest::navigationType):
200 (QWebNavigationRequest::isMainFrame):
201 * UIProcess/API/qt/qwebnavigationrequest_p.h:
202 * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
203 * UIProcess/qt/QtWebPagePolicyClient.cpp:
204 (WebKit::QtWebPagePolicyClient::decidePolicyForNavigationAction):
205 * UIProcess/qt/QtWebPagePolicyClient.h:
207 2013-08-27 Luciano Wolf <luciano.wolf@openbossa.org>
209 100% cpu usage for "transition: opacity" animation
210 https://bugs.webkit.org/show_bug.cgi?id=120012
212 Reviewed by Noam Rosenthal.
214 Schedule animation timer after scheduling a layer flush. This way it
215 won't overwrite animation timer with "0", thus avoiding 100% cpu usage.
217 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
218 (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
220 2013-08-27 Csaba Osztrogonác <ossy@webkit.org>
222 [WK2][Soup] Add WebFrameNetworkingContext::webFrameLoaderClient() after r154490
223 https://bugs.webkit.org/show_bug.cgi?id=120353
225 Reviewed by Alexey Proskuryakov.
227 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
228 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
229 (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
230 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
232 2013-08-26 Santosh Mahto <santosh.ma@samsung.com>
234 Fixing compilation warning "unused parameter" in WebPageProxy.cpp
235 https://bugs.webkit.org/show_bug.cgi?id=120205
237 Reviewed by Anders Carlsson.
239 * UIProcess/WebPageProxy.cpp:
240 (WebKit::WebPageProxy::findPlugin):
241 (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
242 Added UNUSED_PARAM to avoid warning.
244 2013-08-23 Andy Estes <aestes@apple.com>
246 Fix issues found by the Clang Static Analyzer
247 https://bugs.webkit.org/show_bug.cgi?id=120230
249 Reviewed by Darin Adler.
251 * UIProcess/API/mac/WKBrowsingContextController.mm:
252 (autoreleased): Don't leak CFURLs when in Objective-C GC.
253 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
254 (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
255 Don't leak CFStrings when in Objective-C GC.
257 2013-08-26 Csaba Osztrogonác <ossy@webkit.org>
259 [WK2] Buildfix for non Mac platforms
260 https://bugs.webkit.org/show_bug.cgi?id=120294
262 Reviewed by Darin Adler.
264 * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
265 (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
266 * NetworkProcess/NetworkResourceLoader.h:
268 2013-08-26 Alexey Proskuryakov <ap@apple.com>
270 [Mac] can-read-in-dragstart-event.html and can-read-in-copy-and-cut-events.html fail
271 https://bugs.webkit.org/show_bug.cgi?id=113094
273 Reviewed by Darin Adler.
275 Return new pasteboard change count from all functions that change it.
277 * UIProcess/WebContext.h:
278 * UIProcess/WebContext.messages.in:
279 * UIProcess/mac/WebContextMac.mm:
280 (WebKit::WebContext::pasteboardCopy):
281 (WebKit::WebContext::addPasteboardTypes):
282 (WebKit::WebContext::setPasteboardTypes):
283 (WebKit::WebContext::setPasteboardPathnamesForType):
284 (WebKit::WebContext::setPasteboardStringForType):
285 (WebKit::WebContext::setPasteboardBufferForType):
286 * WebProcess/Plugins/PDF/PDFPlugin.mm:
287 (WebKit::PDFPlugin::writeItemsToPasteboard):
288 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
289 (WebKit::WebPlatformStrategies::copy):
290 (WebKit::WebPlatformStrategies::changeCount):
291 (WebKit::WebPlatformStrategies::addTypes):
292 (WebKit::WebPlatformStrategies::setTypes):
293 (WebKit::WebPlatformStrategies::setBufferForType):
294 (WebKit::WebPlatformStrategies::setPathnamesForType):
295 (WebKit::WebPlatformStrategies::setStringForType):
296 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
298 2013-08-26 Andreas Kling <akling@apple.com>
300 Unreviewed build fix.
302 * WebProcess/WebPage/WebFrame.cpp:
303 (WebKit::WebFrame::createWithCoreMainFrame):
304 (WebKit::WebFrame::createSubframe):
306 2013-08-26 Pratik Solanki <psolanki@apple.com>
308 PageGroup::groupSettings() should return a reference
309 https://bugs.webkit.org/show_bug.cgi?id=120319
311 Reviewed by Andreas Kling.
313 PageGroup::m_groupSettings is never NULL so we can just return a reference from groupSettings().
315 * WebProcess/Storage/StorageNamespaceImpl.cpp:
316 (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
318 2013-08-26 Andreas Kling <akling@apple.com>
320 WebCore: Let Page create the main Frame.
321 <https://webkit.org/b/119964>
323 Reviewed by Anders Carlsson.
325 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
326 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
327 (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
329 This starts out with a null WebFrame* pointer now.
331 (WebKit::WebFrameLoaderClient::setWebFrame):
333 WebFrame hooks itself up through this as soon as it's constructed.
335 (WebKit::WebFrameLoaderClient::frameLoaderDestroyed):
337 Tweak an out-of-date comment. The ref() we're balancing out comes from
340 * WebProcess/WebPage/WebFrame.cpp:
341 (WebKit::WebFrame::createWithCoreMainFrame):
343 Rewrote createMainFrame() as createWithCoreMainFrame(). The new method wraps
344 an existing WebCore::Frame instead of creating a new one.
346 (WebKit::WebFrame::createSubframe):
348 Merged WebFrame::init() into here since the logic isn't shared with main
349 Frame creation anymore.
351 (WebKit::WebFrame::create):
352 (WebKit::WebFrame::WebFrame):
354 Call WebFrameLoaderClient::setWebFrame(this).
356 * WebProcess/WebPage/WebFrame.h:
358 WebFrame::m_frameLoaderClient is now an OwnPtr rather than an inline member.
359 This way it can be created before the WebFrame.
361 * WebProcess/WebPage/WebPage.cpp:
362 (WebKit::WebPage::WebPage):
364 Set up a WebFrameLoaderClient and pass it to the Page constructor along with
365 the other PageClients.
367 2013-08-24 Carlos Garcia Campos <cgarcia@igalia.com>
369 [GTK] Add WebKit2 API for isolated worlds
370 https://bugs.webkit.org/show_bug.cgi?id=103377
372 Reviewed by Anders Carlsson.
374 * GNUmakefile.list.am: Add new files to compilation.
375 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
376 * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
377 (testWebExtensionWindowObjectCleared):
378 (scriptDialogCallback):
379 (runJavaScriptInIsolatedWorldFinishedCallback):
380 (testWebExtensionIsolatedWorld):
382 * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
384 (windowObjectCleared):
386 (methodCallCallback):
387 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
388 (webkit_frame_get_javascript_context_for_script_world): New public
389 method to tget the JavaScript execution context for a given script
391 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
392 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
393 (scriptWorlds): Global WebKitScriptWorld map.
394 (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
395 (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
396 given injected bundle script world.
397 (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
398 bundle script world wrapped by the given WebKitScriptWorld.
399 (webkitScriptWorldWindowObjectCleared): Emit
400 WebKitScriptWorld::window-object-cleared signal.
401 (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
402 the given injected bundle script world.
403 (createDefaultScriptWorld): Create the default WebKitScriptWorld
404 wrapping the normal world.
405 (webkit_script_world_get_default): Return the default WebKitScriptWorld.
406 (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
407 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
408 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
409 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
410 (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
411 (webkitWebPageCreate): Add implementation for callback
412 didClearWindowObjectForFrame in injected bundle loader client.
413 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
414 Include WebKitScriptWorld.h.
416 2013-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
418 [WebKit2] Offsets for WKBundlePageLoaderClient in APIClientTraits are wrong
419 https://bugs.webkit.org/show_bug.cgi?id=120268
421 Reviewed by Anders Carlsson.
423 * Shared/APIClientTraits.cpp: Use always the first member of every
424 version as the offset of the version.
426 2013-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
428 [GTK] Add missing initializer for pluginLoadPolicy in WKPageLoaderClient
429 https://bugs.webkit.org/show_bug.cgi?id=120289
431 Reviewed by Philippe Normand.
433 * UIProcess/API/gtk/WebKitLoaderClient.cpp:
434 (attachLoaderClientToView): Add initializer for pluginLoadPolicy
435 and rename the comment of the previous one as
436 pluginLoadPolicy_deprecatedForUseWithV2.
438 2013-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
440 [GTK] webkitCredentialGetCredential returns a temporary in g_return_val_if_fail
441 https://bugs.webkit.org/show_bug.cgi?id=120287
443 Reviewed by Philippe Normand.
445 * UIProcess/API/gtk/WebKitCredential.cpp:
446 (webkitCredentialGetCredential): Use ASSERT() instead of
447 g_return_val_if_fail() since this is a private function.
449 2013-08-25 Zan Dobersek <zdobersek@igalia.com>
451 Unreviewed GTK build fix after r154565.
453 * UIProcess/API/gtk/tests/TestInspector.cpp: Include the Vector header.
454 * UIProcess/API/gtk/tests/TestResources.cpp: Ditto.
456 2013-08-24 Darin Adler <darin@apple.com>
458 Frame::tree should return a reference instead of a pointer
459 https://bugs.webkit.org/show_bug.cgi?id=120259
461 Reviewed by Andreas Kling.
463 * WebProcess/Plugins/PluginView.cpp:
464 (WebKit::PluginView::performJavaScriptURLRequest):
465 * WebProcess/Storage/StorageAreaMap.cpp:
466 (WebKit::StorageAreaMap::dispatchSessionStorageEvent):
467 (WebKit::StorageAreaMap::dispatchLocalStorageEvent):
468 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
469 (WebKit::WebFrameLoaderClient::createFrame):
470 * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
471 (WebKit::WebContextMenuClient::searchWithSpotlight):
472 * WebProcess/WebPage/FindController.cpp:
473 (WebKit::frameWithSelection):
474 (WebKit::FindController::rectsForTextMatches):
475 * WebProcess/WebPage/WebFrame.cpp:
476 (WebKit::WebFrame::init):
477 (WebKit::WebFrame::contentsAsString):
478 (WebKit::WebFrame::name):
479 (WebKit::WebFrame::childFrames):
480 * WebProcess/WebPage/WebPage.cpp:
481 (WebKit::WebPage::clearMainFrameName):
482 (WebKit::WebPage::setDrawsBackground):
483 (WebKit::WebPage::setDrawsTransparentBackground):
484 (WebKit::WebPage::setWindowResizerSize):
485 (WebKit::frameWithSelection):
486 (WebKit::WebPage::unmarkAllMisspellings):
487 (WebKit::WebPage::unmarkAllBadGrammar):
488 (WebKit::pageContainsAnyHorizontalScrollbars):
489 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
490 (WebKit::TiledCoreAnimationDrawingArea::forceRepaint):
491 Use tree(). instead of tree()->.
493 2013-08-24 Commit Queue <commit-queue@webkit.org>
495 Unreviewed, rolling out r154545.
496 http://trac.webkit.org/changeset/154545
497 https://bugs.webkit.org/show_bug.cgi?id=120252
499 Broke WebKit2 API tests (Requested by andersca on #webkit).
501 * GNUmakefile.list.am:
502 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
503 * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
505 * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
506 (methodCallCallback):
507 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
508 (webkit_frame_get_javascript_global_context):
509 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
510 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Removed.
511 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Removed.
512 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Removed.
513 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
514 (webkitWebPageCreate):
515 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
517 2013-08-24 Carlos Garcia Campos <cgarcia@igalia.com>
519 [GTK] Add WebKit2 API for isolated worlds
520 https://bugs.webkit.org/show_bug.cgi?id=103377
522 Reviewed by Anders Carlsson.
524 * GNUmakefile.list.am: Add new files to compilation.
525 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
526 * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
527 (testWebExtensionWindowObjectCleared):
528 (scriptDialogCallback):
529 (runJavaScriptInIsolatedWorldFinishedCallback):
530 (testWebExtensionIsolatedWorld):
532 * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
534 (windowObjectCleared):
536 (methodCallCallback):
537 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
538 (webkit_frame_get_javascript_context_for_script_world): New public
539 method to tget the JavaScript execution context for a given script
541 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
542 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
543 (scriptWorlds): Global WebKitScriptWorld map.
544 (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
545 (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
546 given injected bundle script world.
547 (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
548 bundle script world wrapped by the given WebKitScriptWorld.
549 (webkitScriptWorldWindowObjectCleared): Emit
550 WebKitScriptWorld::window-object-cleared signal.
551 (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
552 the given injected bundle script world.
553 (createDefaultScriptWorld): Create the default WebKitScriptWorld
554 wrapping the normal world.
555 (webkit_script_world_get_default): Return the default WebKitScriptWorld.
556 (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
557 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
558 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
559 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
560 (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
561 (webkitWebPageCreate): Add implementation for callback
562 didClearWindowObjectForFrame in injected bundle loader client.
563 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
564 Include WebKitScriptWorld.h.
566 2013-08-24 Carlos Garcia Campos <cgarcia@igalia.com>
568 [GTK] Expose WebKitFrame in WebKit2GTK+ web extensions API
569 https://bugs.webkit.org/show_bug.cgi?id=119743
571 Reviewed by Anders Carlsson.
573 * GNUmakefile.list.am: Add new files to compilation.
574 * Shared/APIClientTraits.cpp: Update for new interface version.
575 * Shared/APIClientTraits.h: Ditto.
576 * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add WebKitFrame
578 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new public
580 * UIProcess/API/gtk/docs/webkit2gtk.types: Add
581 webkit_frame_get_type.
582 * UIProcess/API/gtk/tests/FrameTest.cpp: Added.
583 (WebKitFrameTest::create):
584 (WebKitFrameTest::webPageFromArgs):
585 (WebKitFrameTest::testMainFrame):
586 (WebKitFrameTest::testURI):
587 (WebKitFrameTest::testJavaScriptContext):
588 (WebKitFrameTest::runTest):
590 * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test files.
591 * UIProcess/API/gtk/tests/TestFrame.cpp: Added.
592 (webkitFrameTestRun):
593 (testWebKitFrameMainFrame):
594 (testWebKitFrameURI):
595 (testWebKitFrameJavaScriptContext):
598 * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add
599 willDestroyFrame callback to the injected bundle loader client, to
600 notify the client when a frame is about to be destroyed.
601 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp: Added.
602 (webkit_frame_class_init):
604 (webkit_frame_is_main_frame):
605 (webkit_frame_get_uri):
606 (webkit_frame_get_javascript_global_context):
607 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h: Added.
608 * WebProcess/InjectedBundle/API/gtk/WebKitFramePrivate.h: Added.
609 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
610 (webkitFrameGetOrCreate): Helper function to create a WebKitFrame
611 wrapping the given WebFrame or returning the wrapper if it already
613 (willDestroyFrame): Remove the WebKitFrame wrapping the given
614 WebFrame if it exists.
615 (webkitWebPageCreate): Add willDestroyFrame implementation to
616 injected bundle loader client.
617 (webkit_web_page_get_main_frame): Return the main frame of the
619 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
620 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
621 Include WebKitFrame.h.
622 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
623 (WebKit::InjectedBundlePageLoaderClient::willDestroyFrame): New
624 callback to be called when a frame is about to be destroyed.
625 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
626 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
627 (WebKit::WebFrameLoaderClient::frameLoaderDestroyed): Call
628 willDestroyFrame callback of injected bundle loader client.
629 * WebProcess/qt/QtBuiltinBundlePage.cpp:
630 (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage): Add
631 willDestroyFrame callback.
633 2013-08-24 Antti Koivisto <antti@apple.com>
635 Revert accidental change.
639 * WebProcess/com.apple.WebProcess.sb.in:
641 2013-08-23 Beth Dakin <bdakin@apple.com>
643 REGRESSION (r132545): Some PDFs generated by WebKit are blank when viewed in
645 https://bugs.webkit.org/show_bug.cgi?id=120240
647 <rdar://problem/14634453>
649 Reviewed by Anders Carlsson.
651 Hook up new WebSystemInterface API to find out if the current context is the PDF
654 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
655 (InitWebCoreSystemInterface):
657 2013-08-23 Alexey Proskuryakov <ap@apple.com>
659 [WK2] Assertion failures when loading XSL stylesheets with NetworkProcess
660 https://bugs.webkit.org/show_bug.cgi?id=120186
661 <rdar://problem/14080273>
663 Reviewed by Brady Eidson.
665 Covered by many existing tests.
667 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
668 (WebKit::WebPlatformStrategies::loadResourceSynchronously): Pass frame ID and page ID.
669 They are mostly needed for authentication, which is not supported with sync requests,
670 but it will be supported some day.
672 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
673 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
674 (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
675 Added a way to get frame loader client from WebKit NetworkingContext subclass.
677 2013-08-22 Carlos Garcia Campos <cgarcia@igalia.com>
679 [GTK] Wrong interface version used in WebKitWebPage for loader client
680 https://bugs.webkit.org/show_bug.cgi?id=120199
682 Reviewed by Gustavo Noronha Silva.
684 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
685 (webkitWebPageCreate): Use kWKBundlePageLoaderClientCurrentVersion
686 instead of kWKBundlePageResourceLoadClientCurrentVersion in loader
687 client initialization.
689 2013-08-22 Simon Cooper <scooper@apple.com>
691 Need to disable FakeSYSVSHM when sandboxing is not enabled
692 https://bugs.webkit.org/show_bug.cgi?id=120182
693 <rdar://problem/14814461>
695 Reviewed by Alexey Proskuryakov.
697 When not in a sandbox do not enable the FakeSYSVSHIM. This
698 allows LocalConnection to work when Flash Player is run in
701 * PluginProcess/mac/PluginProcessShim.mm:
702 (WebKit::shim_disabled):
704 2013-08-22 Andy Estes <aestes@apple.com>
706 <https://webkit.org/b/120180> Fix issues with OTHER_LDFLAGS in various .xcconfig files
708 Reviewed by David Kilzer.
710 Adding ld flags for ASAN overwrote the unexported symbol flags we were
711 previously specifying. Since the unexported symbol ld flags are only
712 needed for the framework target, move them to WebKit2.xcconfig where we
713 can add them to OTHER_LDFLAGS along with the ASAN values inherited from
714 DebugRelease.xcconfig (and other values).
716 * Configurations/Base.xcconfig: Removed the unexported symbol ld flags.
717 * Configurations/WebKit2.xcconfig: ... and moved them here.
719 2013-08-21 Tim Horton <timothy_horton@apple.com>
721 Another null-deref under WebDragClient::startDrag
722 https://bugs.webkit.org/show_bug.cgi?id=120145
723 <rdar://problem/14650652>
725 Reviewed by Simon Fraser.
727 convertImageToBitmap can legitimately return null, so don't dereference it.
729 * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
730 (WebKit::WebDragClient::startDrag):
732 2013-08-21 Beth Dakin <bdakin@apple.com>
734 <https://webkit.org/b/120140> Clients expect didFirstLayout-related calls to
735 happen before didLayout
737 Reviewed by Anders Carlsson.
739 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
740 (WebKit::WebFrameLoaderClient::dispatchDidLayout):
742 2013-08-21 Alexey Proskuryakov <ap@apple.com>
744 REGRESSION (r145458?): WebProcess doesn't respect UI process localization
745 https://bugs.webkit.org/show_bug.cgi?id=120096
747 Reviewed by Darin Adler.
749 We used to get into a situation where CFBundle thought that we had no good localization,
750 and used one passed as default. This is never the case with mixed localizations,
751 so default is just ignored now.
753 I think that the previous behavior was a bit of a hack. As WebProcess is not localized,
754 it's more honest to say that we want mixed localizations, and force the language
755 to match UI process localization.
757 * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
758 (WebKit::ChildProcessMain): Don't set default localization, it's not taken into
759 consideration unless all other attempts to compute bundle localization fail.
761 * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::createProcess): Pass
762 UI process localization as -AppleLanguages argument, so that Core Foundation uses
763 that instead of actual user languages. We want to match UI process localization.
765 2013-08-20 Gavin Barraclough <barraclough@apple.com>
767 https://bugs.webkit.org/show_bug.cgi?id=120093
768 Remove getOwnPropertyDescriptor trap
770 Reviewed by Geoff Garen.
772 All implementations of this method are now called via the method table, and equivalent in behaviour.
773 Remove all duplicate implementations (and the method table trap), and add a single member function implementation on JSObject.
775 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
776 * WebProcess/Plugins/Netscape/JSNPObject.h:
777 - remove getOwnPropertyDescriptor
779 2013-08-20 Pratik Solanki <psolanki@apple.com>
781 <https://webkit.org/b/120029> Document::markers() should return a reference
783 Reviewed by Andreas Kling.
785 Document::m_markers is never NULL so return a reference from Document::markers(). Also mark
786 m_markers as const and initialize it in member initialization.
788 * WebProcess/WebPage/FindController.cpp:
789 (WebKit::FindController::rectsForTextMatches):
790 * WebProcess/WebPage/WebPage.cpp:
791 (WebKit::WebPage::unmarkAllMisspellings):
792 (WebKit::WebPage::unmarkAllBadGrammar):
794 2013-08-20 Gavin Barraclough <barraclough@apple.com>
796 https://bugs.webkit.org/show_bug.cgi?id=120053
797 Remove custom getOwnPropertyDescriptor for JSNPObject
799 Reviewed by Oliver Hunt.
801 Think this is the last one!
803 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
804 - Remove custom getOwnPropertyDescriptor implementation.
806 2013-08-20 Anton Obzhirov <a.obzhirov@samsung.com>
808 <https://webkit.org/b/119487> [Gtk] Cancel authentication on load failed
810 Reviewed by Martin Robinson.
812 Added callback to handle load-failed event in default authentication dialog.
813 Authentication request gets cancelled and the dialog widget gets destroyed.
815 * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
817 (webkitAuthenticationDialogInitialize):
818 (webkitAuthenticationDialogDispose):
819 (webkit_authentication_dialog_class_init):
820 (webkitAuthenticationDialogNew):
821 * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
822 * UIProcess/API/gtk/WebKitWebView.cpp:
823 (webkitWebViewAuthenticate):
825 2013-08-20 Allan Sandfeld Jensen <allan.jensen@digia.com>
827 [Qt][WK2] Doesn't build without Plugin-process
828 https://bugs.webkit.org/show_bug.cgi?id=120060
830 Reviewed by Jocelyn Turcotte.
832 Disable netscape plugin api in WebKit2 when the plugin architecture is unsupported for WebKit2.
836 2013-08-19 Ryosuke Niwa <rniwa@webkit.org>
838 <https://webkit.org/b/120049> Delete code for Snow Leopard
840 Reviewed by Benjamin Poulain.
842 * NetworkProcess/mac/NetworkProcessMac.mm:
843 (WebKit::overrideSystemProxies):
844 (WebKit::NetworkProcess::platformInitializeNetworkProcess):
847 2013-08-19 Beth Dakin <bdakin@apple.com>
849 <https://webkit.org/b/120027> AXObjectCache's
850 accessibilityEnhancedUserInterfaceEnabled should be initialized on process
853 Reviewed by Sam Weinig.
855 Right now we only call AXObjectCache::setEnhancedAccessibility() when AppKit sends
856 us a notification indicating that the value has changed. We should not have to
857 rely on that to properly initialize this value. It should be done with the
858 WebProcessCreationParamters.
860 * Shared/WebProcessCreationParameters.cpp:
861 (WebKit::WebProcessCreationParameters::encode):
862 (WebKit::WebProcessCreationParameters::decode):
863 * Shared/WebProcessCreationParameters.h:
864 * UIProcess/mac/WebContextMac.mm:
865 (WebKit::WebContext::platformInitializeWebProcess):
866 * WebProcess/mac/WebProcessMac.mm:
867 (WebKit::WebProcess::platformInitializeWebProcess):
869 2013-08-19 Pratik Solanki <psolanki@apple.com>
871 <https://webkit.org/b/119918> Frame::selection() should return a reference
873 Reviewed by Darin Adler.
875 m_selection is never NULL so return a reference from Frame::selection(). Also removed some
876 unnecessary null checks and assert diff ts exposed as a result.
878 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
879 (WebKit::WebEditorClient::updateGlobalSelection):
880 * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
881 (WebKit::collapseSelection):
882 (WebKit::WebEditorClient::updateGlobalSelection):
883 * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
884 (WebKit::WebContextMenuClient::lookUpInDictionary):
885 (WebKit::WebContextMenuClient::searchWithSpotlight):
886 * WebProcess/WebPage/FindController.cpp:
887 (WebKit::frameWithSelection):
888 (WebKit::FindController::updateFindUIAfterPageScroll):
889 (WebKit::FindController::getFindIndicatorBitmapAndRect):
890 (WebKit::FindController::getImageForFindMatch):
891 (WebKit::FindController::selectFindMatch):
892 (WebKit::FindController::updateFindIndicator):
893 (WebKit::FindController::drawRect):
894 * WebProcess/WebPage/WebPage.cpp:
895 (WebKit::WebPage::editorState):
896 (WebKit::WebPage::scaledSnapshotWithOptions):
897 (WebKit::WebPage::centerSelectionInVisibleArea):
898 (WebKit::frameWithSelection):
899 (WebKit::WebPage::clearSelection):
900 (WebKit::WebPage::confirmComposition):
901 (WebKit::WebPage::setComposition):
902 (WebKit::WebPage::currentSelectionAsRange):
903 * WebProcess/WebPage/mac/WebPageMac.mm:
904 (WebKit::WebPage::setComposition):
905 (WebKit::WebPage::insertText):
906 (WebKit::WebPage::insertDictatedText):
907 (WebKit::WebPage::getMarkedRange):
908 (WebKit::WebPage::getSelectedRange):
909 (WebKit::WebPage::getAttributedSubstringFromRange):
910 (WebKit::WebPage::characterIndexForPoint):
911 (WebKit::convertToRange):
912 (WebKit::WebPage::performDictionaryLookupAtLocation):
913 (WebKit::WebPage::readSelectionFromPasteboard):
914 (WebKit::WebPage::getStringSelectionForPasteboard):
915 (WebKit::WebPage::getDataSelectionForPasteboard):
917 2013-08-18 Darin Adler <darin@apple.com>
919 <https://webkit.org/b/119989> Make use of Node::ownerDocument a compile time error
921 Reviewed by Sam Weinig.
923 * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
924 (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement): Use document instead of
926 * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
927 (WebKit::PDFPluginTextAnnotation::createAnnotationElement): Ditto.
929 2013-08-18 Dan Bernstein <mitz@apple.com>
931 Fix clean engineering builds after r154251.
933 * WebKit2.xcodeproj/project.pbxproj: Removed references to the OfflineStorage XPC services
934 from the “Copy XPC services for engineering builds” build phase.
936 2013-08-18 Gavin Barraclough <barraclough@apple.com>
938 https://bugs.webkit.org/show_bug.cgi?id=119972
939 Add attributes field to PropertySlot
941 Reviewed by Geoff Garen.
943 For all JSC types, this makes getOwnPropertyDescriptor redundant.
944 There will be a bit more hacking required in WebCore to remove GOPD whilst maintaining current behaviour.
945 (Current behaviour is in many ways broken, particularly in that GOPD & GOPS are inconsistent, but we should fix incrementally).
947 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
948 (WebKit::JSNPObject::getOwnPropertySlot):
949 (WebKit::JSNPObject::getOwnPropertyDescriptor):
950 - Pass attributes to PropertySlot::set* methods.
952 2013-08-16 Sam Weinig <sam@webkit.org>
954 <https://webkit.org/b/119911> Remove the unused OfflineStorageProcess
956 Reviewed by Darin Adler.
958 * Configurations/OfflineStorageProcess.xcconfig: Removed.
959 * Configurations/OfflineStorageService.Development.xcconfig: Removed.
960 * Configurations/OfflineStorageService.xcconfig: Removed.
961 * DerivedSources.make:
962 * OfflineStorageProcess: Removed.
963 * OfflineStorageProcess/EntryPoint: Removed.
964 * OfflineStorageProcess/EntryPoint/mac: Removed.
965 * OfflineStorageProcess/EntryPoint/mac/LegacyProcess: Removed.
966 * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed.
967 * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/OfflineStorageProcessMain.mm: Removed.
968 * OfflineStorageProcess/EntryPoint/mac/XPCService: Removed.
969 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService: Removed.
970 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development: Removed.
971 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development/Info.plist: Removed.
972 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService/Info.plist: Removed.
973 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageServiceEntryPoint.mm: Removed.
974 * OfflineStorageProcess/OfflineStorageProcess.cpp: Removed.
975 * OfflineStorageProcess/OfflineStorageProcess.h: Removed.
976 * OfflineStorageProcess/OfflineStorageProcess.messages.in: Removed.
977 * OfflineStorageProcess/mac: Removed.
978 * OfflineStorageProcess/mac/OfflineStorageProcessMac.mm: Removed.
979 * OfflineStorageProcess/mac/com.apple.WebKit.OfflineStorage.sb: Removed.
980 * Scripts/webkit2/messages.py:
981 * Shared/OfflineStorage: Removed.
982 * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.cpp: Removed.
983 * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.h: Removed.
984 * WebKit2.xcodeproj/project.pbxproj:
987 2013-08-17 Darin Adler <darin@apple.com>
989 <https://webkit.org/b/119941> Make Page::dragController return a reference
991 Reviewed by Andreas Kling.
993 * WebProcess/WebPage/WebPage.cpp:
994 (WebKit::WebPage::performDragControllerAction):
995 (WebKit::WebPage::dragEnded):
998 2013-08-17 David Kilzer <ddkilzer@apple.com>
1000 WebKit2 fails to build with trunk clang: error: 'WebPluginSiteDataManagerh' is used as a header guard here, followed by #define of a different macro [-Werror,-Wheader-guard]
1001 <http://webkit.org/b/119935>
1002 <rdar://problem/14764131>
1004 Reviewed by Darin Adler.
1006 * UIProcess/Plugins/WebPluginSiteDataManager.h: Fix typo
1007 introduced in r78647.
1009 2013-08-16 Pratik Solanki <psolanki@apple.com>
1011 <https://webkit.org/b/119852> Frame::scriptController() should return a reference
1013 Reviewed by Andreas Kling.
1015 m_script is never NULL so we can just return a reference. Also remove some pointless null
1016 checks as a result of doing this.
1018 * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1019 (WebKit::NPRuntimeObjectMap::globalObject):
1020 * WebProcess/Plugins/PluginView.cpp:
1021 (WebKit::PluginView::performJavaScriptURLRequest):
1022 (WebKit::PluginView::windowScriptNPObject):
1023 (WebKit::PluginView::pluginElementNPObject):
1024 * WebProcess/WebPage/WebFrame.cpp:
1025 (WebKit::WebFrame::jsContext):
1026 (WebKit::WebFrame::jsContextForWorld):
1027 (WebKit::WebFrame::jsWrapperForWorld):
1028 * WebProcess/WebPage/WebInspector.cpp:
1029 (WebKit::WebInspector::didSave):
1030 (WebKit::WebInspector::didAppend):
1031 * WebProcess/WebPage/WebPage.cpp:
1032 (WebKit::WebPage::runJavaScriptInMainFrame):
1034 2013-08-16 Brady Eidson <beidson@apple.com>
1036 (NetworkProcess) Sync XHRs should load using async ResourceHandles, not ResourceHandle::loadResourceSynchronously
1037 https://bugs.webkit.org/show_bug.cgi?id=119493
1039 Reviewed by Alexey Proskuryakov.
1041 This patch does the following:
1042 - Consolidates SchedulableLoader and NetworkResourceLoader into one class.
1043 - Removes SyncNetworkResourceLoader.
1044 - Adds a NetworkLoaderClient interface that customizes certain behaviors of the NetworkResourceLoader.
1045 - Implements a SynchronousNetworkLoaderClient and AsynchronousNetworkLoaderClient for the two different types of loads.
1047 The AsynchronousNetworkLoaderClient results in messaging back progress to the WebProcess as the load progresses.
1048 The SynchronousNetworkLoaderClient accumulates the response, data, and error to be communicated back to the WebProcess
1049 only when the load is complete.
1051 Update small swaths of code to reflect that NetworkResourceLoader is the One True Loader (tm):
1052 * NetworkProcess/HostRecord.cpp:
1053 (WebKit::HostRecord::scheduleResourceLoader):
1054 (WebKit::HostRecord::addLoaderInProgress):
1055 (WebKit::removeLoaderFromQueue):
1056 (WebKit::HostRecord::removeLoader):
1057 (WebKit::HostRecord::servePendingRequestsForQueue):
1058 (WebKit::HostRecord::limitsRequests):
1059 * NetworkProcess/HostRecord.h:
1061 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1062 (WebKit::NetworkConnectionToWebProcess::didClose):
1063 (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
1064 (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
1065 * NetworkProcess/NetworkConnectionToWebProcess.h:
1067 * NetworkProcess/NetworkProcess.cpp:
1068 * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1069 (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
1070 (WebKit::NetworkResourceLoadScheduler::removeLoader):
1071 (WebKit::NetworkResourceLoadScheduler::receivedRedirect):
1072 (WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders):
1073 (WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoader):
1074 * NetworkProcess/NetworkResourceLoadScheduler.h:
1076 Combine ScheduleableLoader and NetworkResourceLoader into NetworkResourceLoader:
1077 * NetworkProcess/NetworkResourceLoader.cpp:
1078 (WebKit::NetworkResourceLoader::NetworkResourceLoader):
1079 (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1080 (WebKit::NetworkResourceLoader::isSynchronous):
1081 (WebKit::NetworkResourceLoader::start):
1082 (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1083 (WebKit::NetworkResourceLoader::didReceiveBuffer):
1084 (WebKit::NetworkResourceLoader::didFinishLoading):
1085 (WebKit::NetworkResourceLoader::didFail):
1086 (WebKit::NetworkResourceLoader::willSendRequestAsync):
1087 (WebKit::NetworkResourceLoader::continueWillSendRequest):
1088 (WebKit::NetworkResourceLoader::didSendData):
1089 (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
1090 (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1091 (WebKit::NetworkResourceLoader::consumeSandboxExtensions):
1092 (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
1093 (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
1094 * NetworkProcess/NetworkResourceLoader.h:
1095 (WebKit::NetworkResourceLoader::create):
1096 (WebKit::NetworkResourceLoader::connectionToWebProcess):
1097 (WebKit::NetworkResourceLoader::priority):
1098 (WebKit::NetworkResourceLoader::request):
1099 (WebKit::NetworkResourceLoader::isLoadingMainResource):
1100 (WebKit::NetworkResourceLoader::setHostRecord):
1101 (WebKit::NetworkResourceLoader::hostRecord):
1102 (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
1104 Add an abstract NetworkLoaderClient to adapt a load to be either synchronous or asynchronous:
1105 * NetworkProcess/NetworkLoaderClient.h:
1106 (WebKit::NetworkLoaderClient::~NetworkLoaderClient):
1107 (WebKit::NetworkLoaderClient::isSynchronous):
1108 (WebKit::NetworkLoaderClient::NetworkLoaderClient):
1110 The asynchronous loader client, primarily to message progress back to the WebProcess as it happens:
1111 * NetworkProcess/AsynchronousNetworkLoaderClient.cpp: Added.
1112 (WebKit::AsynchronousNetworkLoaderClient::AsynchronousNetworkLoaderClient):
1113 (WebKit::AsynchronousNetworkLoaderClient::willSendRequest):
1114 (WebKit::AsynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1115 (WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
1116 (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
1117 (WebKit::AsynchronousNetworkLoaderClient::didSendData):
1118 (WebKit::AsynchronousNetworkLoaderClient::didFinishLoading):
1119 (WebKit::AsynchronousNetworkLoaderClient::didFail):
1120 * NetworkProcess/AsynchronousNetworkLoaderClient.h:
1121 (WebKit::AsynchronousNetworkLoaderClient::create):
1123 The synchronous loader client, primarily to accumulate results of the load to send back to the WebProcess all at once:
1124 * NetworkProcess/SynchronousNetworkLoaderClient.cpp: Added.
1125 (WebKit::SynchronousNetworkLoaderClient::SynchronousNetworkLoaderClient):
1126 (WebKit::SynchronousNetworkLoaderClient::~SynchronousNetworkLoaderClient):
1127 (WebKit::SynchronousNetworkLoaderClient::willSendRequest):
1128 (WebKit::SynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1129 (WebKit::SynchronousNetworkLoaderClient::didReceiveResponse):
1130 (WebKit::SynchronousNetworkLoaderClient::didReceiveBuffer):
1131 (WebKit::SynchronousNetworkLoaderClient::didFinishLoading):
1132 (WebKit::SynchronousNetworkLoaderClient::didFail):
1133 (WebKit::SynchronousNetworkLoaderClient::sendDelayedReply):
1134 * NetworkProcess/SynchronousNetworkLoaderClient.h: Added.
1135 (WebKit::SynchronousNetworkLoaderClient::create):
1137 * NetworkProcess/SchedulableLoader.cpp: Removed.
1138 * NetworkProcess/SchedulableLoader.h: Removed.
1139 * NetworkProcess/SyncNetworkResourceLoader.cpp: Removed.
1140 * NetworkProcess/SyncNetworkResourceLoader.h: Removed.
1142 * WebKit2.xcodeproj/project.pbxproj:
1144 2013-08-16 Gabor Rapcsanyi <rgabor@webkit.org>
1146 [Qt][ARM] Unreviewed buildfix after 154127.
1148 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Add missing header.
1150 2013-08-15 Ryuan Choi <ryuan.choi@samsung.com>
1152 [EFL] Unreviewed build fix after r154142 and r154144.
1154 * UIProcess/WebContext.cpp:
1155 (WebKit::WebContext::useTestingNetworkSession):
1156 Fixed build break when NETWORK_PROCESS is disabled after r154144.
1158 2013-08-15 Chris Fleizach <cfleizach@apple.com>
1160 <https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at com.apple.WebKit2: WebKit::WebPage::accessibilityObjectForMainFramePlugin + 8
1162 Reviewed by Tim Horton.
1164 Ensure that the page is available before accessing it.
1166 * WebProcess/WebPage/mac/WebPageMac.mm:
1167 (WebKit::WebPage::accessibilityObjectForMainFramePlugin):
1169 2013-08-15 Alexey Proskuryakov <ap@apple.com>
1171 [WK2] NetworkProcess should use a temporary storage session for test
1172 https://bugs.webkit.org/show_bug.cgi?id=119855
1174 Reviewed by Darin Adler.
1176 We used to have a bundle API for WebKitTestRunner to do this in injected bundle, but
1177 NetworkProcess has no injected bundle.
1179 Added a WKContext API, sending the information to NetworkProcess with initialization
1180 parameters. Reworked WebProcess path to do the same for consistency - bundle API
1181 is better per se, but not when we also need to have another one.
1183 * NetworkProcess/NetworkProcess.cpp:
1184 (WebKit::NetworkProcess::initializeNetworkProcess):
1185 * Shared/Network/NetworkProcessCreationParameters.cpp:
1186 (WebKit::NetworkProcessCreationParameters::encode):
1187 (WebKit::NetworkProcessCreationParameters::decode):
1188 * Shared/Network/NetworkProcessCreationParameters.h:
1189 * Shared/WebProcessCreationParameters.cpp:
1190 (WebKit::WebProcessCreationParameters::encode):
1191 (WebKit::WebProcessCreationParameters::decode):
1192 * Shared/WebProcessCreationParameters.h:
1193 * UIProcess/API/C/WKContext.cpp:
1194 (WKContextUseTestingNetworkSession):
1195 * UIProcess/API/C/WKContextPrivate.h:
1196 * UIProcess/WebContext.cpp:
1197 (WebKit::WebContext::WebContext):
1198 (WebKit::WebContext::ensureNetworkProcess):
1199 (WebKit::WebContext::createNewWebProcess):
1200 (WebKit::WebContext::useTestingNetworkSession):
1201 * UIProcess/WebContext.h:
1202 * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1203 * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1204 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1205 * WebProcess/InjectedBundle/InjectedBundle.h:
1206 * WebProcess/WebProcess.cpp:
1207 (WebKit::WebProcess::initializeWebProcess):
1209 2013-08-15 Anders Carlsson <andersca@apple.com>
1211 <https://webkit.org/b/119859> Frame::loader() should return a reference
1213 Reviewed by Andreas Kling.
1215 * Shared/WebRenderLayer.cpp:
1216 (WebKit::WebRenderLayer::create):
1217 * Shared/WebRenderObject.cpp:
1218 (WebKit::WebRenderObject::create):
1219 * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1220 (WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):
1221 * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1222 (WKBundleFrameGetFrameLoadState):
1223 (WKBundleFrameClearOpener):
1224 (WKBundleFrameCallShouldCloseOnWebView):
1225 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1226 (WebKit::InjectedBundleNodeHandle::documentFrame):
1227 (WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
1228 (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
1229 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1230 (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
1231 * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1232 (WebKit::InjectedBundleDOMWindowExtension::frame):
1233 * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1234 (WebKit::InjectedBundleHitTestResult::frame):
1235 (WebKit::InjectedBundleHitTestResult::targetFrame):
1236 * WebProcess/Plugins/PDF/PDFPlugin.mm:
1237 (WebKit::PDFPlugin::clickedLink):
1238 * WebProcess/Plugins/PluginView.cpp:
1240 (WebKit::PluginView::didFailToInitializePlugin):
1241 (WebKit::PluginView::performFrameLoadURLRequest):
1242 (WebKit::PluginView::userAgent):
1243 (WebKit::PluginView::loadURL):
1244 (WebKit::PluginView::cancelManualStreamLoad):
1245 (WebKit::PluginView::proxiesForURL):
1246 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1247 (WebKit::WebChromeClient::focusedElementChanged):
1248 (WebKit::WebChromeClient::focusedFrameChanged):
1249 (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
1250 (WebKit::WebChromeClient::closeWindowSoon):
1251 (WebKit::WebChromeClient::runJavaScriptAlert):
1252 (WebKit::WebChromeClient::runJavaScriptConfirm):
1253 (WebKit::WebChromeClient::runJavaScriptPrompt):
1254 (WebKit::WebChromeClient::unavailablePluginButtonClicked):
1255 (WebKit::WebChromeClient::print):
1256 (WebKit::WebChromeClient::exceededDatabaseQuota):
1257 (WebKit::WebChromeClient::runOpenPanel):
1258 * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1259 (WebKit::WebContextMenuClient::searchWithGoogle):
1260 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1261 (WebKit::WebEditorClient::textFieldDidBeginEditing):
1262 (WebKit::WebEditorClient::textFieldDidEndEditing):
1263 (WebKit::WebEditorClient::textDidChangeInTextField):
1264 (WebKit::WebEditorClient::textDidChangeInTextArea):
1265 (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
1266 (WebKit::WebEditorClient::textWillBeDeletedInTextField):
1267 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1268 (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1269 (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1270 (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1271 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1272 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1273 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1274 (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
1275 (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
1276 (WebKit::WebFrameLoaderClient::updateGlobalHistory):
1277 (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
1278 (WebKit::WebFrameLoaderClient::restoreViewState):
1279 (WebKit::WebFrameLoaderClient::createFrame):
1280 (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
1281 (WebKit::WebFrameLoaderClient::objectContentType):
1282 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1283 (WebKit::WebPlatformStrategies::getPluginInfo):
1284 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1285 (WebKit::WebFrameNetworkingContext::blockedError):
1286 * WebProcess/WebPage/WebFrame.cpp:
1287 (WebKit::WebFrame::didReceivePolicyDecision):
1288 (WebKit::WebFrame::startDownload):
1289 (WebKit::WebFrame::source):
1290 (WebKit::WebFrame::contentsAsString):
1291 (WebKit::WebFrame::url):
1292 (WebKit::WebFrame::parentFrame):
1293 (WebKit::WebFrame::childFrames):
1294 (WebKit::WebFrame::stopLoading):
1295 (WebKit::WebFrame::frameForContext):
1296 (WebKit::WebFrame::provisionalURL):
1297 (WebKit::WebFrame::suggestedFilenameForResourceWithURL):
1298 (WebKit::WebFrame::mimeTypeForResourceWithURL):
1299 (WebKit::WebFrameFilter::shouldIncludeSubframe):
1300 * WebProcess/WebPage/WebPage.cpp:
1301 (WebKit::WebPage::createPlugin):
1302 (WebKit::WebPage::close):
1303 (WebKit::WebPage::tryClose):
1304 (WebKit::WebPage::loadURLRequest):
1305 (WebKit::WebPage::loadDataImpl):
1306 (WebKit::WebPage::linkClicked):
1307 (WebKit::WebPage::stopLoadingFrame):
1308 (WebKit::WebPage::stopLoading):
1309 (WebKit::WebPage::reload):
1310 (WebKit::WebPage::tryRestoreScrollPosition):
1311 (WebKit::WebPage::getMainResourceDataOfFrame):
1312 (WebKit::resourceDataForFrame):
1313 (WebKit::shouldReuseCommittedSandboxExtension):
1314 (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
1315 (WebKit::WebPage::hasLocalDataForURL):
1316 (WebKit::WebPage::setCustomTextEncodingName):
1317 (WebKit::WebPage::canPluginHandleResponse):
1318 (WebKit::WebPage::canShowMIMEType):
1319 (WebKit::WebPage::didCommitLoad):
1320 * WebProcess/WebPage/mac/WebPageMac.mm:
1321 (WebKit::WebPage::platformHasLocalDataForURL):
1322 (WebKit::cachedResponseForURL):
1323 * WebProcess/WebProcess.cpp:
1324 (WebKit::WebProcess::downloadRequest):
1326 2013-08-14 Filip Pizlo <fpizlo@apple.com>
1328 Typed arrays should be rewritten
1329 https://bugs.webkit.org/show_bug.cgi?id=119064
1331 Reviewed by Oliver Hunt.
1333 You don't need to include JSUint8Array anymore if you just want to
1334 unwrap one; JSDOMBinding gives you all of the things you need.
1336 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1338 2013-08-15 Eric Carlson <eric.carlson@apple.com>
1340 [Mac] Remove "legacy" media UI
1341 https://bugs.webkit.org/show_bug.cgi?id=119752
1343 Reviewed by Jer Noble.
1345 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1346 (InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.
1348 2013-08-14 Dean Jackson <dino@apple.com>
1350 <https://webkit.org/b/119827> Allow primary plug-in detection to run more than once if necessary
1352 Reviewed by Tim Horton.
1354 We occasionally see cases where the primary plug-in detection runs before the plugins have been added
1355 to the page, especially if they do so in response to a load event. Tweak the algorithm so that it can
1356 run an arbitrary number of times if it fails.
1358 While here, also have the detection run if there has ever been a plugin in the page as opposed to any
1359 current views. We may have snapshotted a plugin by now and deleted its view.
1361 * WebProcess/WebPage/WebPage.cpp:
1362 (WebKit::WebPage::WebPage): initialise new members.
1363 (WebKit::WebPage::addPluginView): Mark that we've seen a plugin.
1364 (WebKit::WebPage::resetPrimarySnapshottedPlugIn): Reset new members.
1365 (WebKit::WebPage::determinePrimarySnapshottedPlugIn): Exit early if we've never
1366 seen a plugin, rather than if we don't have any active views. Also, if we didn't find anything set
1367 a timer to run again (maximum of two attempts at the moment).
1368 * WebProcess/WebPage/WebPage.h: New members - m_numberOfPrimarySnapshotDetectionAttempts
1369 and m_hasSeenPlugin.
1371 2013-08-14 Dean Jackson <dino@apple.com>
1373 <https://webkit.org/b/119820> Add pluginView-related logging to WebPage
1375 Reviewed by Tim Horton.
1377 Add some more diagnostic output to help track down bugs.
1379 * WebProcess/WebPage/WebPage.cpp:
1380 (WebKit::WebPage::addPluginView): More logging.
1381 (WebKit::WebPage::removePluginView): Ditto.
1383 2013-08-14 Alexey Proskuryakov <ap@apple.com>
1385 [WK2] Sync messages with with non-default timeout sent from secondary threads always time out
1386 https://bugs.webkit.org/show_bug.cgi?id=119767
1389 Reviewed by Darin Adler.
1391 * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
1392 The argument to wait() is absolute time, not a delta. This calculation matches one
1393 in Connection::waitForMessage().
1395 2013-08-14 Tim Horton <timothy_horton@apple.com>
1397 REGRESSION (r153877): Plugin scanning slows creation of WebViews
1398 https://bugs.webkit.org/show_bug.cgi?id=119665
1399 <rdar://problem/14716549>
1401 Reviewed by Darin Adler.
1403 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1404 (WebKit::WebPlatformStrategies::refreshPlugins):
1405 Don't repopulate the plugin cache in refreshPlugins, just invalidate it.
1406 It will be repopulated the next time something tries to use it.
1408 2013-08-12 Dan Bernstein <mitz@apple.com>
1410 Fixed an off-by-(sizeof(char*) - 1) bug.
1412 Reviewed by Sam Weinig.
1414 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
1415 (WebKit::XPCServiceEventHandler): Allocate a sufficiently large buffer.
1417 2013-08-12 Beth Dakin <bdakin@apple.com>
1419 Remove didNewFirstVisuallyNonEmptyLayout from WebKit2
1420 https://bugs.webkit.org/show_bug.cgi?id=119658
1422 Reviewed by Darin Adler.
1424 Removing this function entirely will change some functionality in the Nightlies,
1425 but we think that is an acceptable difference for the Nightlies. If is does cause
1426 a problem though, we can roll out this patch and deprecate the function instead.
1428 * UIProcess/API/C/WKPage.h:
1429 * UIProcess/WebLoaderClient.cpp:
1430 * UIProcess/WebLoaderClient.h:
1431 * UIProcess/WebPageProxy.cpp:
1432 (WebKit::WebPageProxy::initializeLoaderClient):
1433 * UIProcess/WebPageProxy.h:
1434 * UIProcess/WebPageProxy.messages.in:
1435 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
1436 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1437 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1438 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1439 (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1440 * WebProcess/WebPage/WebPage.cpp:
1441 (WebKit::WebPage::initializeInjectedBundleLoaderClient):
1443 2013-08-12 Arunprasad Rajkumar <arurajku@cisco.com>
1445 [Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
1446 https://bugs.webkit.org/show_bug.cgi?id=119663
1448 Reviewed by Sam Weinig.
1450 * WebProcess/qt/WebProcessQt.cpp:
1451 (WebKit::WebProcess::platformSetCacheModel):
1453 2013-08-12 Anton Obzhirov <a.obzhirov@samsung.com>
1455 [GTK] Don't load GAIL when using GTK 3.2 or greater
1456 https://bugs.webkit.org/show_bug.cgi?id=72735
1458 Reviewed by Carlos Garcia Campos.
1460 * UIProcess/API/gtk/tests/AccessibilityTestServer.cpp:
1463 2013-08-09 Beth Dakin <bdakin@apple.com>
1465 AX: Not able to use arrow keys to read text in a WK2 app
1466 https://bugs.webkit.org/show_bug.cgi?id=119605
1468 <rdar://problem/14281275>
1470 Reviewed by Darin Adler.
1472 Make all of these scrolling functions actually return the WebCore bools that
1473 indicate whether or not scrolling happened.
1474 * WebProcess/WebPage/WebPage.cpp:
1475 (WebKit::WebPage::scroll):
1476 (WebKit::WebPage::logicalScroll):
1477 (WebKit::WebPage::scrollBy):
1478 * WebProcess/WebPage/WebPage.h:
1479 * WebProcess/WebPage/mac/WebPageMac.mm:
1480 (WebKit::WebPage::executeKeypressCommandsInternal):
1482 This function now gives accessibility a chance to handle the event too. And it
1483 also actually tracks whether or not the event was handled by scrolling instead of
1484 assuming that it was and universally returning true.
1485 (WebKit::WebPage::performNonEditingBehaviorForSelector):
1487 2013-08-09 Brian Holt <brian.holt@samsung.com>
1489 [GTK] [WebKit2] Add an 'authenticate' signal to WebKitWebView
1490 https://bugs.webkit.org/show_bug.cgi?id=99352
1492 Reviewed by Carlos Garcia Campos.
1494 Add a new public class to the API, WebKitAuthenticationRequest, to be
1495 emitted along with a new WebKitWebView::authenticate signal to
1496 let client applications to provide their own authentication
1497 when the user is challenged with HTTP authentication. The
1498 credential is exposed through a new class WebKitCredential.
1500 * GNUmakefile.list.am:
1501 * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1502 (okButtonClicked): Use new API for authentication.
1503 (cancelButtonClicked): Ditto.
1504 (webkitAuthenticationDialogInitialize):Get
1505 authenticationChallenge from request object.
1506 (webkitAuthenticationDialogNew): Ditto.
1507 * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
1508 * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp: Added new
1509 class representing a HTTP authentication request.
1510 (webkitAuthenticationRequestDispose):
1511 (webkit_authentication_request_class_init):
1512 (webkitAuthenticationRequestCreate):
1513 (webkitAuthenticationRequestGetAuthenticationChallenge):
1514 (webkit_authentication_request_can_save_credentials):
1515 (webkit_authentication_request_get_proposed_credential):
1516 (webkit_authentication_request_get_host):
1517 (webkit_authentication_request_get_port):
1518 (webkit_authentication_request_get_realm):
1519 (webkit_authentication_request_get_scheme):
1520 (webkit_authentication_request_is_for_proxy):
1521 (webkit_authentication_request_is_retry):
1522 (webkit_authentication_request_authenticate):
1523 (webkit_authentication_request_cancel):
1524 * UIProcess/API/gtk/WebKitAuthenticationRequest.h: Added.
1525 * UIProcess/API/gtk/WebKitAuthenticationRequestPrivate.h: Added.
1526 * UIProcess/API/gtk/WebKitCredential.cpp: Added new class to
1527 support credentials for HTTP authentication.
1528 (_WebKitCredential::_WebKitCredential):
1529 (webkitCredentialCreate):
1530 (webkitCredentialGetCredential):
1531 (webkit_credential_new):
1532 (webkit_credential_copy):
1533 (webkit_credential_free):
1534 (webkit_credential_get_username):
1535 (webkit_credential_get_password):
1536 (webkit_credential_has_password):
1537 (webkit_credential_get_persistence):
1538 * UIProcess/API/gtk/WebKitCredential.h: Added.
1539 * UIProcess/API/gtk/WebKitCredentialPrivate.h: Added.
1540 * UIProcess/API/gtk/WebKitWebView.cpp: Added authenticate signal.
1541 (webkitWebViewAuthenticate): Default signal handler for authenticate.
1542 (webkit_web_view_class_init): Ditto.
1543 (webkitWebViewHandleAuthenticationChallenge): Create an
1544 authentication request and emit it with authenticate signal.
1545 * UIProcess/API/gtk/WebKitWebView.h: Replaced reserved function
1546 pointer slot with for WebViewClass with function pointer to
1547 authenticate signal handler.
1548 * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new section for
1549 the authentication request.
1550 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
1551 * UIProcess/API/gtk/docs/webkit2gtk.types: Added authentication
1552 request and credential types.
1553 * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Created a new
1554 unit test for HTTP authentication. A libsoup server callback
1555 handler is installed that creates soup messages with appropriate
1556 headers and body to test HTTP authentication.
1557 (testWebViewAuthenticationRequest): Test the authentication
1558 request and credential API.
1559 (testWebViewAuthenticationCancel): Test cancelled authentication.
1560 (testWebViewAuthenticationFailure): Test repeated authentication failures.
1561 (testWebViewAuthenticationNoCredential): Test continue without
1563 (testWebViewAuthenticationStorage): Test credential storage.
1564 (testWebViewAuthenticationSuccess): Test successful authentication.
1565 (beforeAll): Added tests.
1566 * UIProcess/API/gtk/webkit2.h: Added WebKitAuthenticationRequest and
1567 WebKitCredential headers.
1569 2013-08-09 Tim Horton <timothy_horton@apple.com>
1571 PDFPlugin is disabled by default in nightlies on Mac accidentally
1572 https://bugs.webkit.org/show_bug.cgi?id=119615
1574 Rubber-stamped by Andreas Kling.
1576 Enable PDFPlugin by default on Mac at the WebKit2 level.
1578 * Shared/WebPreferencesStore.h:
1579 * UIProcess/API/C/WKPreferencesPrivate.h:
1581 2013-08-08 Tim Horton <timothy_horton@apple.com>
1583 navigator.plugins has plugins in it when plugins are disabled
1584 https://bugs.webkit.org/show_bug.cgi?id=119607
1585 <rdar://problem/14678030>
1587 Reviewed by Anders Carlsson.
1589 * UIProcess/WebProcessProxy.cpp:
1590 (WebKit::WebProcessProxy::getPlugins):
1591 Return a list of all plugins, and a list of only application plugins.
1593 * UIProcess/WebProcessProxy.h:
1594 * UIProcess/WebProcessProxy.messages.in:
1595 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
1596 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1597 (WebKit::WebPlatformStrategies::getPluginInfo):
1598 Add applicationPlugin parameter to getPlugins, and storage for the returned list.
1600 (WebKit::WebPlatformStrategies::populatePluginCache):
1601 If plugins are disabled for the given page, give WebCore the list that
1602 only includes application plugins. Otherwise, give it the whole list
1603 as we are doing currently.
1605 2013-08-08 Gavin Barraclough <barraclough@apple.com>
1607 Disable suppression of plugin process for Java
1608 https://bugs.webkit.org/show_bug.cgi?id=119604
1610 Reviewed by Sam Weinig.
1612 Workaround, the Java plugin doesn't like this.
1614 * PluginProcess/mac/PluginProcessMac.mm:
1615 (WebKit::PluginProcess::platformInitializeProcess):
1616 - +1 active task count on the java plugin, to inhibit supression.
1618 2013-08-08 Dean Jackson <dino@apple.com>
1620 Add logging to the primary plugin detection
1621 https://bugs.webkit.org/show_bug.cgi?id=119594
1623 Reviewed by Tim Horton.
1625 Add some simple logging to our primary plug-in detection.
1627 * WebProcess/WebPage/WebPage.cpp:
1628 (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
1630 2013-08-08 Alexey Proskuryakov <ap@apple.com>
1632 WKBundleFrameCopyProvisionalURL crashes when there is no provisional loader
1633 https://bugs.webkit.org/show_bug.cgi?id=119587
1635 Reviewed by Darin Adler.
1637 * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::provisionalURL): Added a null
1638 check, like we already have in WebFrame::url().
1640 2013-08-07 Antti Koivisto <antti@apple.com>
1642 Try to fix EFL build.
1648 2013-08-06 Jer Noble <jer.noble@apple.com>
1650 Crash when entering fullscreen video playback from a WebView using WebKit2
1651 https://bugs.webkit.org/show_bug.cgi?id=119531
1653 Reviewed by Tim Horton.
1655 Initialize wkWindowSetScaledFrame and wkWindowSetAlpha when initializing WebCoreSystemInterface.
1657 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1658 (InitWebCoreSystemInterface):
1660 2013-08-06 Stephanie Lewis <slewis@apple.com>
1662 Update Order Files for Safari
1663 <rdar://problem/14517392>
1667 * mac/WebKit2.order:
1669 2013-08-04 Sam Weinig <sam@webkit.org>
1671 Remove support for HTML5 MicroData
1672 https://bugs.webkit.org/show_bug.cgi?id=119480
1674 Reviewed by Anders Carlsson.
1676 * Configurations/FeatureDefines.xcconfig:
1678 2013-08-06 Eunmi Lee <eunmi15.lee@samsung.com>
1680 [EFL][WK2] Implement gesture recognizer.
1681 https://bugs.webkit.org/show_bug.cgi?id=102643
1683 Reviewed by Gyuyoung Kim.
1685 Recognize tap, pan and pinch gestures using touch events.
1686 The tap gesture is separated into single tap, double tap and
1689 This patch references the webkit NIX port.
1690 https://github.com/WebKitNix/webkitnix
1692 * PlatformEfl.cmake:
1693 * UIProcess/API/efl/EwkView.cpp:
1695 (EwkView::doneWithTouchEvent):
1696 * UIProcess/API/efl/EwkView.h:
1697 * UIProcess/API/efl/GestureRecognizer.cpp: Added.
1698 (WebKit::GestureHandler::create):
1699 (WebKit::GestureHandler::GestureHandler):
1700 (WebKit::GestureHandler::handleSingleTap):
1701 (WebKit::GestureHandler::handleDoubleTap):
1702 (WebKit::GestureHandler::handleTapAndHold):
1703 (WebKit::GestureHandler::handlePanStarted):
1704 (WebKit::GestureHandler::handlePan):
1705 (WebKit::GestureHandler::handlePanFinished):
1706 (WebKit::GestureHandler::handlePinchStarted):
1707 (WebKit::GestureHandler::handlePinch):
1708 (WebKit::GestureHandler::handlePinchFinished):
1709 (WebKit::GestureRecognizer::GestureRecognizer):
1710 (WebKit::GestureRecognizer::~GestureRecognizer):
1711 (WebKit::GestureRecognizer::processTouchEvent):
1712 (WebKit::GestureRecognizer::doubleTapTimerCallback):
1713 (WebKit::GestureRecognizer::tapAndHoldTimerCallback):
1714 (WebKit::GestureRecognizer::exceedsPanThreshold):
1715 (WebKit::GestureRecognizer::exceedsDoubleTapThreshold):
1716 (WebKit::getPointAtIndex):
1717 (WebKit::createVectorWithWKArray):
1718 (WebKit::GestureRecognizer::noGesture):
1719 (WebKit::GestureRecognizer::singleTapGesture):
1720 (WebKit::GestureRecognizer::doubleTapGesture):
1721 (WebKit::GestureRecognizer::panGesture):
1722 (WebKit::GestureRecognizer::pinchGesture):
1723 (WebKit::GestureRecognizer::reset):
1724 (WebKit::GestureRecognizer::stopTapTimers):
1725 * UIProcess/API/efl/GestureRecognizer.h: Added.
1726 (WebKit::GestureRecognizer::create):
1728 2013-07-23 David Farler <dfarler@apple.com>
1730 Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
1731 https://bugs.webkit.org/show_bug.cgi?id=117762
1733 Reviewed by Mark Rowe.
1735 * Configurations/DebugRelease.xcconfig:
1736 Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
1737 * Configurations/WebContentProcess.xcconfig:
1738 Add ASAN_OTHER_LDFLAGS.
1739 * Configurations/WebKit2.xcconfig:
1740 Add ASAN_OTHER_LDFLAGS.
1742 2013-08-06 Andreas Kling <akling@apple.com>
1744 REGRESSION(r151403): Resizing is extremely laggy on many sites when plugins are disallowed.
1745 <http://webkit.org/b/119516>
1746 <rdar://problem/14648086>
1748 Reviewed by Simon Fraser.
1750 The web process relies on the WindowAndViewFramesChanged mechanism for caching a copy
1751 of the window rect for fast access from DOMWindow APIs.
1753 We retain part of the optimization introduced in r151403, namely not computing the
1754 viewFrameInWindowCoordinates and accessibilityPosition unless the web process needs them.
1756 * UIProcess/API/mac/WKView.mm:
1757 (-[WKView _updateWindowAndViewFrames]):
1759 2013-07-26 Mark Rowe <mrowe@apple.com>
1761 Logging should be configurable using human-readable channel names rather than crazy bitmasks
1762 <http://webkit.org/b/119031>
1764 Implement shared logic for initializing logging channels based on human-readable channel names in WTF,
1765 and rework the WebCore, WebKit and WebKit2 logging initialization on top of it.
1767 Logging channels may now be enabled by providing a comma-separated list of channel names, with the special
1768 "all" name enabling all channels. Channel names prefixed with a leading "-" will result in the named channel
1769 being disabled. For instance, specifying "all,-history,-loading" will result in all logging channels except
1770 for history and loading being enabled.
1772 For OS X developers, this also changes the name of the user defaults used to enable logging. This is done to allow
1773 the old user defaults to remain set for those people that need to switch between version of WebKit before and
1774 after this change. Where the old user default keys were WebCoreLogLevel, WebKitLogLevel and WebKit2LogLevel,
1775 the new user default keys are WebCoreLogging, WebKitLogging and WebKit2Logging.
1777 For GTK developers, this changes the separator used in the WEBKIT_DEBUG environment variable to a comma for
1778 consistency with the other platforms and to enable more code sharing.
1780 While doing this work I've also taken the opportunity to eliminate the need to touch multiple files when
1781 adding a new logging channel. Now only the header in the relevant project needs to be updated.
1783 Reviewed by Sam Weinig.
1785 * NetworkProcess/NetworkProcess.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
1786 * Platform/Logging.cpp: Use WEBKIT2_LOG_CHANNELS to define all of the channels.
1787 (WebKit::initializeLogChannelsIfNecessary): Pass the channels and the log level string to the new WTF function
1788 that handles the initialization.
1789 (WebKit::logChannelByName): Renamed to match our naming conventions. Calls through to the new WTF function
1790 to find a log channel rather than repeating the names of the log channels a further two times each.
1791 (WebKit::logLevelString): Provide a no-op implementation.
1792 * Platform/Logging.h: Declare a WEBKIT2_LOG_CHANNELS macro that can be used to apply a preprocessor macro
1793 across the set of all logging channels. Use this macro to declare the logging channels.
1794 * Platform/efl/LoggingEfl.cpp:
1795 (WebKit::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable.
1796 * Platform/gtk/LoggingGtk.cpp:
1797 (WebKit::logLevelString): Ditto.
1798 * Platform/mac/Logging.mac.mm:
1799 (WebKit::logLevelString): Pull the value out of the WebKit2Logging user default key.
1800 * Platform/qt/LoggingQt.cpp:
1801 (WebKit::logLevelString): Pull the value out of the QT_WEBKIT_LOG environment variable.
1802 * Shared/WebKit2Initialize.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
1803 * UIProcess/WebContext.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
1805 2013-08-05 Anders Carlsson <andersca@apple.com>
1807 Ignore the Apple Java placeholder plug-in
1808 https://bugs.webkit.org/show_bug.cgi?id=119494
1809 <rdar://problem/14610818>
1811 Reviewed by Beth Dakin.
1813 Never attempt to load the Java placeholder plug-in.
1815 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
1816 (WebKit::PluginInfoStore::shouldUsePlugin):
1818 2013-08-03 Tim Horton <timothy_horton@apple.com>
1820 Unreviewed, build and style fix for r153693.
1822 * UIProcess/WebProcessProxy.cpp:
1823 * WebProcess/Plugins/PDF/PDFPlugin.h:
1824 * WebProcess/WebPage/WebPage.cpp:
1826 2013-08-03 Tim Horton <timothy_horton@apple.com>
1828 Remove SimplePDFPlugin
1829 https://bugs.webkit.org/show_bug.cgi?id=119437
1831 Reviewed by Alexey Proskuryakov.
1833 * UIProcess/WebProcessProxy.cpp:
1834 (WebKit::WebProcessProxy::getPlugins):
1835 * WebProcess/WebPage/WebPage.cpp:
1836 (WebKit::WebPage::createPlugin):
1837 Don't add SimplePDFPlugin, nor try to instantiate it.
1839 * WebProcess/Plugins/PDF/PDFPlugin.h:
1840 * WebProcess/Plugins/PDF/PDFPlugin.mm:
1841 Merge previously inherited behavior in from SimplePDFPlugin.
1843 * WebKit2.xcodeproj/project.pbxproj:
1844 * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Removed.
1845 * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Removed.
1846 Remove SimplePDFPlugin.
1848 2013-08-03 Tim Horton <timothy_horton@apple.com>
1850 Remove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the Mac port
1851 https://bugs.webkit.org/show_bug.cgi?id=119411
1853 Reviewed by Simon Fraser.
1855 Mac is the only holdout that performs non-composited fades of page
1856 overlays. We should adopt that mechanism (as a precursor to doing a
1857 CA-accelerated fade) and remove the now-unnecessary property.
1859 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
1860 (WKBundlePageOverlayFractionFadedIn):
1861 Always return 1 (fully-faded-in) so that clients who attempt to use this
1862 to bake the fade opacity into their painting will paint at full opacity,
1863 allowing us to do the composited fade separately.
1865 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1866 * WebProcess/WebPage/DrawingArea.h:
1867 * WebProcess/WebPage/DrawingAreaImpl.cpp:
1868 * WebProcess/WebPage/DrawingAreaImpl.h:
1869 * WebProcess/WebPage/LayerTreeHost.h:
1870 * WebProcess/WebPage/PageOverlay.cpp:
1871 (WebKit::PageOverlay::PageOverlay):
1872 (WebKit::PageOverlay::setPage):
1873 (WebKit::PageOverlay::setNeedsDisplay):
1874 (WebKit::PageOverlay::fadeAnimationTimerFired):
1875 * WebProcess/WebPage/PageOverlay.h:
1876 Remove pageOverlayShouldApplyFadeWhenPainting and fractionFadedIn().
1878 * WebProcess/WebPage/FindController.cpp:
1879 (WebKit::FindController::drawRect):
1880 Draw the find overlay without taking the PageOverlay's fade into account.
1882 * WebProcess/WebPage/TapHighlightController.cpp:
1883 (WebKit::TapHighlightController::drawRect):
1884 Remove pageOverlayShouldApplyFadeWhenPainting. Since it's always
1885 "false" for all ports now, take the second path here.
1887 * WebProcess/WebPage/mac/LayerTreeHostMac.h:
1888 * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
1889 (WebKit::LayerTreeHostMac::setPageOverlayOpacity):
1890 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
1891 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1892 (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayOpacity):
1893 Implement setPageOverlayOpacity for DrawingAreaImpl
1894 and TiledCoreAnimationDrawingArea.
1896 2013-08-02 Gavin Barraclough <barraclough@apple.com>
1898 Remove no-arguments constructor to PropertySlot
1899 https://bugs.webkit.org/show_bug.cgi?id=119460
1901 Reviewed by Geoff Garen.
1903 This constructor was unsafe if getValue is subsequently called,
1904 and the property is a getter. Simplest to just remove it.
1906 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1907 (WebKit::JSNPObject::getOwnPropertyDescriptor):
1909 2013-08-02 Ruth Fong <ruth_fong@apple.com>
1911 [Forms: color] WebColorPickerMac deconstructor shouldn't assert a variable
1912 <rdar://problem/14627633> and https://bugs.webkit.org/show_bug.cgi?id=119419
1914 Reviewed by Tim Horton.
1916 * UIProcess/mac/WebColorPickerMac.mm:
1917 (WebKit::WebColorPickerMac::~WebColorPickerMac): If the m_colorPickerUI variable
1918 is not null, then properly destroy it first before destroying WebColorPickerMac object.
1920 2013-08-02 Ruth Fong <ruth_fong@apple.com>
1922 [Forms: color] The positioning of the popover color well is inverted
1923 <rdar://problem/14635621> and https://bugs.webkit.org/show_bug.cgi?id=119455
1925 Reviewed by Tim Horton.
1927 This patch converts the coordinates of the <input type='color'> element to
1928 the window's base coordinate system.
1930 * UIProcess/mac/WebColorPickerMac.mm:
1931 (-[WKColorPopoverMac initWithFrame:inView:]):
1933 2013-08-01 Ruth Fong <ruth_fong@apple.com>
1935 [Forms: color] <input type='color'> popover color well implementation
1936 <rdar://problem/14411008> and https://bugs.webkit.org/show_bug.cgi?id=119356
1938 Reviewed by Benjamin Poulain.
1940 This patch adds an popover implementation of <input type='color'>.
1942 * Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.
1944 * UIProcess/API/mac/PageClientImpl.mm:
1945 (WebKit::PageClientImpl::createColorPicker): Updated to pass the
1946 coordinates of the <input type='color'> element and the WKView
1947 object for the window.
1949 * UIProcess/WebPageProxy.cpp:
1950 (WebKit::WebPageProxy::viewWillStartLiveResize): Close popover color
1951 picker when the view is resized.
1952 (WebKit::WebPageProxy::viewInWindowStateDidChange): Close popover color
1953 picker when the view is no longer in the window.
1954 (WebKit::WebPageProxy::showColorPicker): Updated to show either a color panel
1955 or a popover color picker depending on whether INPUT_TYPE_COLOR_POPOVER is enabled.
1957 * UIProcess/mac/WebColorPickerMac.h:
1958 * UIProcess/mac/WebColorPickerMac.mm:
1959 (WebKit::WebColorPickerMac::create):
1960 (WebKit::WebColorPickerMac::~WebColorPickerMac):
1961 (WebKit::WebColorPickerMac::WebColorPickerMac):
1962 (WebKit::WebColorPickerMac::endPicker):
1963 (WebKit::WebColorPickerMac::setSelectedColor):
1964 (WebKit::WebColorPickerMac::showColorPicker):
1965 Methods updated to handle both the color panel implementation and
1966 the popover implementation; also renamed m_panel to m_colorPickerUI.
1968 (-[WKColorPopoverMac initWithFrame:WebCore::inView:]):
1969 (-[WKColorPopoverMac setAndShowPicker:WebKit::withColor:]):
1970 (-[WKColorPopoverMac dealloc]):
1971 (-[WKColorPopoverMac invalidate]):
1972 (-[WKColorPopoverMac windowWillClose:]):
1973 (-[WKColorPopoverMac didChooseColor:]):
1974 (-[WKColorPopoverMac setColor:]):
1975 WKColorPopoverMac provides the popover implementation of <input type='color'>.
1977 (-[WKColorPanelMac didChooseColor:]): Updated to match the interface of
1978 WKColorPickerMac::didChooseColor.
1980 2013-08-01 Anders Carlsson <andersca@apple.com>
1982 Lots of leaks under WebContext::pluginInfoStoreDidLoadPlugins()
1983 https://bugs.webkit.org/show_bug.cgi?id=119412
1985 Reviewed by Simon Fraser.
1987 For some sick reason, the WKContextClient plugInInformationBecameAvailable callback function
1988 expects a +1 reference to the plug-in array. Isolate that hack to WebContextClient so that
1989 we don't leak the array if there is no WKContextClient.
1991 * UIProcess/WebContext.cpp:
1992 (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
1993 * UIProcess/WebContextClient.cpp:
1994 (WebKit::WebContextClient::plugInInformationBecameAvailable):
1996 2013-08-01 Kwang Yul Seo <skyul@company100.net>
1998 Remove return statement in void function
1999 https://bugs.webkit.org/show_bug.cgi?id=119379
2001 Reviewed by Darin Adler.
2003 It does not make sense to return a value in void function.
2005 * WebProcess/WebProcess.cpp:
2006 (WebKit::addCaseFoldedCharacters):
2008 2013-08-01 Kwang Yul Seo <skyul@company100.net>
2010 [WK2] Add USE(SOUP) guard in WebProcess::destroyPrivateBrowsingSession
2011 https://bugs.webkit.org/show_bug.cgi?id=119381
2013 Reviewed by Darin Adler.
2015 The is a followup to r153355. I missed to add USE(SOUP) guard in
2016 WebProcess::destroyPrivateBrowsingSession.
2018 * WebProcess/WebProcess.cpp:
2019 (WebKit::WebProcess::destroyPrivateBrowsingSession):
2021 2013-08-01 Milian Wolff <milian.wolff@kdab.com>
2023 [Qt] Enable QML handling of crashed/unresponsive QtWebProcess
2024 https://bugs.webkit.org/show_bug.cgi?id=108474
2026 Forward the processDidCrash, didRelaunchProcess, processDidBecomeUnresponsive
2027 and processDidBecomeResponsive signals to QML's WebView.experimental.
2029 Reviewed by Jocelyn Turcotte.
2031 * UIProcess/API/qt/qquickwebview.cpp:
2032 (QQuickWebViewPrivate::processDidCrash):
2033 (QQuickWebViewPrivate::didRelaunchProcess):
2034 (QQuickWebViewPrivate::processDidBecomeUnresponsive):
2035 (QQuickWebViewPrivate::processDidBecomeResponsive):
2036 * UIProcess/API/qt/qquickwebview_p.h:
2037 * UIProcess/API/qt/qquickwebview_p_p.h:
2038 (QQuickWebViewPrivate):
2040 2013-07-31 Kwang Yul Seo <skyul@company100.net>
2042 Use emptyString instead of String("")
2043 https://bugs.webkit.org/show_bug.cgi?id=119335
2045 Reviewed by Darin Adler.
2047 Use emptyString() instead of String("") because it is better style and
2048 faster. This is a followup to r116908, removing all occurrences of
2049 String("") from WebKit.
2051 * Shared/mac/WebEventFactory.mm:
2052 (WebKit::textFromEvent):
2053 (WebKit::unmodifiedTextFromEvent):
2055 2013-07-31 Ruth Fong <ruth_fong@apple.com>
2057 <input type=color> Mac UI behaviour
2058 <rdar://problem/10269922> and https://bugs.webkit.org/show_bug.cgi?id=61276
2060 Implemented <input type='color'> on Mac using the native color picker.
2062 Reviewed by Brady Eidson.
2064 Code for WebColorPickerMac is derived from Chromium's color_chooser_mac.mm:
2065 https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/cocoa/color_chooser_mac.mm
2067 * Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
2069 * UIProcess/API/mac/PageClientImpl.mm:
2070 (WebKit::PageClientImpl::createColorPicker): Replaced stub implementation
2071 and return a WebColorPickerMac object.
2073 * UIProcess/WebColorPicker.cpp:
2074 (WebKit::WebColorPicker::invalidate): Updated to call endChooser().
2075 (WebKit::WebColorPicker::showColorPicker): Added stub implementation.
2076 * UIProcess/WebColorPicker.h:
2078 * UIProcess/WebPageProxy.cpp:
2079 (WebKit::WebPageProxy::close): Removed invalidation of removed color picker objects.
2080 (WebKit::WebPageProxy::showColorPicker): Updated so that it works for
2081 multiple <input type='color'> elements on a page.
2082 (WebKit::WebPageProxy::didEndColorPicker): Removed cleanup of removed color picker objects.
2083 (WebKit::WebPageProxy::resetStateAfterProcessExited): Removed cleanup of removed color picker objects.
2085 * UIProcess/mac/WebColorPickerMac.h: Added.
2086 * UIProcess/mac/WebColorPickerMac.mm: Added.
2087 (WebKit::WebColorPickerMac::create):
2088 (WebKit::WebColorPickerMac::~WebColorPickerMac):
2089 (WebKit::WebColorPickerMac::WebColorPickerMac):
2090 (WebKit::WebColorPickerMac::endPicker):
2091 (WebKit::WebColorPickerMac::setSelectedColor):
2092 (WebKit::WebColorPickerMac::didChooseColor):
2093 (WebKit::WebColorPickerMac::showColorPicker):
2094 WebColorPickerMac contains a reference to a WKColorPanelMac object
2095 and is responsible for maintaining the color picker UI.
2097 (-[WKColorPanelMac setAndShowPicker:withColor:]):
2098 (-[WKColorPanelMac invalidate]):
2099 (-[WKColorPanelMac windowWillClose:]):
2100 (-[WKColorPanelMac didChooseColor:]):
2101 (-[WKColorPanelMac setColor:]):
2102 WKColorPanelMac is a wrapper for a NSColorPanel object and
2103 is responsible for the color picker UI.
2105 * WebKit2.xcodeproj/project.pbxproj:
2107 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2108 (WebKit::WebChromeClient::createColorChooser): Updated to always create a
2109 WebColorChooser object.
2111 * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2112 (WebKit::WebColorChooser::reattachColorChooser): Sets the page's
2113 active color chooser to the current object and pings the UIProcess
2114 to show the color picker.
2115 (WebKit::WebColorChooser::setSelectedColor): Only sets the color in the
2116 color picker if the WebColorChooser object is the active color element.
2117 * WebProcess/WebCoreSupport/WebColorChooser.h:
2119 2013-07-30 Gavin Barraclough <barraclough@apple.com>
2121 Some cleanup in JSValue::get
2122 https://bugs.webkit.org/show_bug.cgi?id=119343
2124 Reviewed by Geoff Garen.
2126 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2127 (WebKit::JSNPObject::getOwnPropertySlot):
2128 * WebProcess/Plugins/Netscape/JSNPObject.h:
2129 - getOwnPropertySlot, JSCell -> JSObject
2131 2013-07-31 Allan Sandfeld Jensen <allan.jensen@digia.com>
2133 [Qt] Build WebKit with C++11
2134 https://bugs.webkit.org/show_bug.cgi?id=119337
2136 Reviewed by Csaba Osztrogonác.
2138 We no longer need to enable C++11 specifically for WebKit2.
2142 2013-07-30 Tim Horton <timothy_horton@apple.com>
2144 DHTML drag can result in a null-deref under WebDragClient::startDrag
2145 https://bugs.webkit.org/show_bug.cgi?id=119297
2146 <rdar://problem/14213012>
2148 Reviewed by Simon Fraser.
2150 * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
2151 (WebKit::convertImageToBitmap):
2152 ShareableBitmap::createShareable can return null, but shouldn't dereference that.
2154 2013-07-30 Ruth Fong <ruth_fong@apple.com>
2156 Rename <input type='color'> functions in WebPageProxy, WebColorPicker
2157 <rdar://problem/14549771> and https://bugs.webkit.org/show_bug.cgi?id=119097
2159 Reviewed by Tim Horton.
2161 In bug 119025, WebColorChooserProxy was renamed WebColorPicker. This patch makes the UIProcess consistent
2162 by renaming UIProcess INPUT_TYPE_COLOR functions from ...colorChooser to ...colorPicker.
2164 * UIProcess/WebColorPicker.cpp:
2165 (WebKit::WebColorPicker::endPicker):
2166 * UIProcess/WebColorPicker.h:
2167 * UIProcess/WebColorPickerResultListenerProxy.cpp:
2168 (WebKit::WebColorPickerResultListenerProxy::setColor):
2169 * UIProcess/WebPageProxy.cpp:
2170 (WebKit::WebPageProxy::showColorPicker):
2171 (WebKit::WebPageProxy::setColorPickerColor):
2172 (WebKit::WebPageProxy::endColorPicker):
2173 (WebKit::WebPageProxy::didEndColorPicker):
2174 * UIProcess/WebPageProxy.h:
2175 * UIProcess/WebPageProxy.messages.in:
2176 * UIProcess/qt/WebColorPickerQt.cpp:
2177 (WebKit::WebColorPickerQt::createItem):
2178 (WebKit::WebColorPickerQt::notifyColorSelected):
2179 (WebKit::WebColorPickerQt::endPicker):
2180 * UIProcess/qt/WebColorPickerQt.h:
2181 * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2182 (WebKit::WebColorChooser::WebColorChooser):
2183 (WebKit::WebColorChooser::setSelectedColor):
2184 (WebKit::WebColorChooser::endChooser):
2185 * WebProcess/WebPage/WebPage.cpp:
2186 (WebKit::WebPage::didEndColorPicker):
2187 * WebProcess/WebPage/WebPage.h:
2188 * WebProcess/WebPage/WebPage.messages.in:
2190 2013-07-30 Anders Carlsson <andersca@apple.com>
2192 Speculative fix for crash due to string access on multiple threads
2193 https://bugs.webkit.org/show_bug.cgi?id=119279
2194 <rdar://problem/14267833>
2196 Reviewed by Darin Adler.
2198 We can't use String::isolatedCopy for passing the local storage directory to the storage thread since
2199 that returns a String that's copied and then destroyed after the call to bind returns, leaving a small window
2200 where the refcount can be accessed simultaneously from two threads.
2202 Work around this by passing a PassRefPtr<StringImpl> to bind instead; the act of copying the PassRefPtr will
2203 clear out the original and so when the original is destroyed the underlying StringImpl pointer will be null.
2205 * UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
2206 (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectory):
2207 (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectoryInternal):
2208 * UIProcess/Storage/LocalStorageDatabaseTracker.h:
2210 2013-07-30 Tim Horton <timothy_horton@apple.com>
2212 Fix typo in enum name ("SelectionInSnaphot" -> "SelectionInSnapshot")
2213 https://bugs.webkit.org/show_bug.cgi?id=119275
2215 Reviewed by Simon Fraser.
2217 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2218 (WebKit::imageForRect):
2219 * WebProcess/WebPage/WebPage.cpp:
2220 (WebKit::WebPage::scaledSnapshotWithOptions):
2223 2013-07-30 Anders Carlsson <andersca@apple.com>
2225 Plug-in process crashes if plug-in is destroyed as a result of sending NPObjectMessageReceiver::Deallocate
2226 https://bugs.webkit.org/show_bug.cgi?id=119270
2227 <rdar://problem/13368226>
2229 Reviewed by Darin Adler.
2231 Normally we use the PluginDestructionProtector RAII object to prevent plug-ins from being destroyed while
2232 they're executing code. However, in the case of the NPObjectMessageReceiver::Deallocate message, we can't do this
2233 since we don't know the plug-in or connection.
2235 Instead, add a counter to Connection that keeps track of whether sendSync is currently called and defer plug-in
2236 destruction if it is. (This approach is actually more robust and we should investigate getting rid of the destruction protector).
2238 * Platform/CoreIPC/Connection.cpp:
2239 (CoreIPC::Connection::Connection):
2240 (CoreIPC::Connection::sendSyncMessage):
2241 * Platform/CoreIPC/Connection.h:
2242 (CoreIPC::Connection::inSendSync):
2243 * PluginProcess/PluginControllerProxy.cpp:
2244 (WebKit::PluginControllerProxy::destroy):
2246 2013-07-30 Tim Horton <timothy_horton@apple.com>
2248 Null deref under WebPage::scaledSnapshotWithOptions
2249 https://bugs.webkit.org/show_bug.cgi?id=119243
2250 <rdar://problem/14502050>
2252 Reviewed by Darin Adler.
2254 * WebProcess/WebPage/WebPage.cpp:
2255 (WebKit::WebPage::scaledSnapshotWithOptions):
2256 WebFrame::coreFrame() can be null (if the Frame is already torn down),
2257 so we should check it.
2259 2013-07-30 Tim Horton <timothy_horton@apple.com>
2261 Null deref under PluginView::handlesPageScaleFactor()
2262 https://bugs.webkit.org/show_bug.cgi?id=119231
2263 <rdar://problem/14440207>
2265 Reviewed by Darin Adler.
2267 Null-check the PluginView in the caller as well.
2269 * WebProcess/WebPage/WebFrame.cpp:
2270 (WebKit::WebFrame::handlesPageScaleGesture):
2272 2013-07-30 Patrick Gansterer <paroga@webkit.org>
2274 Remove unused Download*.cpp files
2275 https://bugs.webkit.org/show_bug.cgi?id=119248
2277 Reviewed by Anders Carlsson.
2279 * Shared/Downloads/cfnet/DownloadCFNet.cpp: Removed.
2280 * Shared/Downloads/curl/DownloadCurl.cpp: Removed.
2282 2013-07-30 Jeff Miller <jeffm@apple.com>
2284 Page for WKPageLoaderClient processDidCrash callback always reports a process identifier of 0
2285 https://bugs.webkit.org/show_bug.cgi?id=119269
2286 <rdar://problem/14582393>
2288 Reviewed by Anders Carlsson.
2290 * UIProcess/WebPageProxy.cpp:
2291 (WebKit::WebPageProxy::processIdentifier):
2292 Return 0 if the page is closed instead of requiring isValid().
2294 2013-07-30 Kwang Yul Seo <skyul@company100.net>
2296 [WK2] Move the implementation of WebEditorClient::checkTextOfParagraph to WebEditorClient.cpp
2297 https://bugs.webkit.org/show_bug.cgi?id=119034
2299 Reviewed by Anders Carlsson.
2301 The Mac and EFL ports use the same implementation of
2302 WebEditorClient::checkTextOfParagraph and GTK will use the same
2303 implementation too. So rather than duplicating the same code in
2304 platform specific files, move the implementation to platform agnostic
2305 WebProcess/WebCoreSupport/WebEditorClient.cpp.
2307 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2308 (WebKit::WebEditorClient::checkTextOfParagraph):
2309 * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
2310 * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
2312 2013-07-30 Brian Holt <brian.holt@samsung.com>
2314 [WebKit2] [Gtk] WebKitResponsePolicyDecision URI response property incorrect
2315 https://bugs.webkit.org/show_bug.cgi?id=119258
2317 Reviewed by Martin Robinson.
2319 Corrected the installed URI response property from PROP_REQUEST to
2320 PROP_RESPONSE and type from WEBKIT_TYPE_URI_REQUEST to
2321 WEBKIT_TYPE_URI_RESPONSE.
2323 * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
2324 (webkit_response_policy_decision_class_init):
2326 2013-07-29 Carlos Garcia Campos <cgarcia@igalia.com>
2328 Unreviewed. Fix make distcheck.
2330 * GNUmakefile.list.am: Add missing header file to compilation.
2332 2013-07-29 Tim Horton <timothy_horton@apple.com>
2334 [wk2] Flush the WebProcess’ implicit transaction when using endDeferringViewInWindowChangesSync
2335 https://bugs.webkit.org/show_bug.cgi?id=119225
2336 <rdar://problem/14568841>
2338 Reviewed by Simon Fraser.
2340 Tell CoreAnimation to flush the implicit transaction before replying
2341 when using endDeferringViewInWindowChangesSync, as that method's contract
2342 is that the WebProcess is totally ready to be in-window when it returns.
2344 * UIProcess/API/mac/WKView.mm:
2345 (-[WKView endDeferringViewInWindowChanges]):
2346 Adopt viewInWindowStateDidChange.
2348 (-[WKView endDeferringViewInWindowChangesSync]):
2349 Adopt viewInWindowStateDidChange, asking it to send a reply only if we're going to wait for one.
2351 * UIProcess/WebPageProxy.cpp:
2352 (WebKit::WebPageProxy::viewInWindowStateDidChange):
2353 (WebKit::WebPageProxy::viewStateDidChange):
2354 Pull viewInWindowStateDidChange out of viewStateDidChange.
2355 Request a reply from SetIsInWindow if we're told to.
2357 * UIProcess/WebPageProxy.h: Add WantsReplyOrNot and viewInWindowStateDidChange.
2358 * WebProcess/WebPage/WebPage.cpp:
2359 (WebKit::WebPage::didUpdateInWindowStateTimerFired):
2360 Don't build this version on Mac, we'll have a WebPageMac version.
2362 (WebKit::WebPage::setIsInWindow):
2363 Only start the timer to send the didUpdateInWindowState reply if we're asked to.
2365 * WebProcess/WebPage/WebPage.h:
2366 * WebProcess/WebPage/WebPage.messages.in:
2367 Add an argument to the SetIsInWindow message for whether the WebProcess
2368 should inform the UIProcess when SetIsInWindow completes or not.
2370 * WebProcess/WebPage/mac/WebPageMac.mm:
2371 (WebKit::WebPage::didUpdateInWindowStateTimerFired):
2372 Tell CA to flush the implicit transaction before telling the UIProcess that
2373 we're finished moving in-window.
2375 2013-07-29 Tim Horton <timothy_horton@apple.com>
2377 Null deref under PluginView::handlesPageScaleFactor()
2378 https://bugs.webkit.org/show_bug.cgi?id=119231
2379 <rdar://problem/14440207>
2381 Reviewed by Simon Fraser.
2383 * WebProcess/Plugins/PluginView.cpp:
2384 (WebKit::PluginView::handlesPageScaleFactor):
2385 * WebProcess/Plugins/PluginView.h:
2386 Null-check m_plugin and check m_isInitialized.
2387 Make pageScaleFactor() and handlesPageScaleFactor const.
2389 2013-07-29 Anders Carlsson <andersca@apple.com>
2391 Remove setUnderlayPage() and associated code
2392 https://bugs.webkit.org/show_bug.cgi?id=119220
2393 <rdar://problem/14392426>
2395 Reviewed by Jessie Berlin.
2397 This is dead code, get rid of it.
2399 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
2400 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2401 * WebProcess/WebPage/WebPage.cpp:
2402 (WebKit::WebPage::close):
2403 (WebKit::WebPage::layoutIfNeeded):
2404 (WebKit::WebPage::drawRect):
2405 * WebProcess/WebPage/WebPage.h:
2407 2013-07-29 Sergio Correia <sergio.correia@openbossa.org>
2409 CoordinatedGraphics: Add API to get and set the active state of a WebView
2410 https://bugs.webkit.org/show_bug.cgi?id=119067
2412 Reviewed by Noam Rosenthal.
2414 A view being in the "active" state generally means that it is not in the
2415 "background", although this definition can vary depending on the platform
2416 under consideration.
2418 This patch adds the following APIs to WKView:
2419 - bool WKViewIsActive(WKViewRef)
2420 This API accepts a WKViewRef as parameter and returns a boolean indicating
2421 whether the given view is active.
2423 - void WKViewSetIsActive(WKViewRef, bool)
2424 This API accepts a WKViewRef and a boolean as parameteres, and it sets the
2425 active state of the given view to the given boolean argument.
2427 * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
2428 (WKViewIsActive): API added.
2429 (WKViewSetIsActive): Ditto.
2430 * UIProcess/API/C/CoordinatedGraphics/WKView.h: Export aforementioned API.
2431 * UIProcess/CoordinatedGraphics/WebView.cpp:
2432 (WebKit::WebView::initialize): Use new setActive method.
2433 (WebKit::WebView::setActive): Added method to set the active state of the
2435 (WebKit::WebView::isActive): Added method to return the active state of
2437 (WebKit::WebView::enterAcceleratedCompositingMode): Use new setActive
2439 (WebKit::WebView::exitAcceleratedCompositingMode): Ditto.
2440 * UIProcess/CoordinatedGraphics/WebView.h: Added declarations of isActive
2443 2013-07-29 Jae Hyun Park <jae.park@company100.net>
2445 Remove duplicated LayerTreeHost::supportsAcceleratedCompositing
2446 https://bugs.webkit.org/show_bug.cgi?id=118949
2448 Reviewed by Noam Rosenthal.
2450 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
2451 * WebProcess/WebPage/LayerTreeHost.h:
2452 (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
2454 2013-07-29 Zan Dobersek <zdobersek@igalia.com>
2456 [Automake] Remove references to non-existent *_CFLAGS and *_LIBS variables
2457 https://bugs.webkit.org/show_bug.cgi?id=119212
2459 Reviewed by Carlos Garcia Campos.
2461 * GNUmakefile.am: Remove references to GLOBALDEPS_(CFLAGS|LIBS) and CLUTTER_(CFLAGS|LIBS)
2462 variables that are not defined during the configuration process.
2464 2013-07-28 Grzegorz Czajkowski <g.czajkowski@samsung.com>
2466 [EFL][WK2] Simplify context_menu_spelling_items_availability unit test
2467 https://bugs.webkit.org/show_bug.cgi?id=119085
2469 Reviewed by Gyuyoung Kim.
2471 Use findContextMenuItem method to check whether the item
2472 appears in context menu.
2474 * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
2475 (EWK2TextCheckerTest::findContextMenuItem):
2476 Do not report failure inside the method.
2477 It doesn't allow to test the negative test cases.
2479 (EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
2480 Use findContextMenuItem method.
2482 (EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
2483 (EWK2TextCheckerTest::selectLearnSpelling):
2484 (EWK2TextCheckerTest::selectIgnoreSpelling):
2485 Verify the return value of findContextMenuItem.
2488 Reset wasContextMenuShown variable, it's needed after r152153.
2489 Use waitUntilTrue method.
2491 2013-07-27 Jacky Jiang <zhajiang@blackberry.com>
2493 Replace all uses of GraphicsLayer::create function with the one that takes a GraphicsLayerFactory
2494 https://bugs.webkit.org/show_bug.cgi?id=119186
2496 Reviewed by Anders Carlsson.
2498 * UIProcess/mac/RemoteLayerTreeHost.mm:
2499 (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
2501 2013-07-27 Chris Fleizach <cfleizach@apple.com>
2503 AX: VoiceOver not working with data detection page overlays
2504 https://bugs.webkit.org/show_bug.cgi?id=118680
2506 Reviewed by Sam Weinig.
2508 Expose API in BundlePageOverlay so that accessibility attributes can be retrieved through the overlay.
2509 This requires two methods in a new callback struct. One to copy the attribute names, and the other to
2510 copy the attribute values. I've folded both parameterized and non-parameterized attribute names into one method
2511 with a boolean to determine which one should be used. The non-parameterized attributes are not used or passed to the
2512 overlay at this time as there are no clients with such a need.
2514 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
2515 (PageOverlayClientImpl::setAccessibilityClient):
2516 (PageOverlayClientImpl::PageOverlayClientImpl):
2517 (PageOverlayClientImpl::copyAccessibilityAttributeValue):
2518 (PageOverlayClientImpl::copyAccessibilityAttributeNames):
2519 (WKBundlePageOverlaySetAccessibilityClient):
2520 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
2521 * WebProcess/WebPage/PageOverlay.cpp:
2522 (WebKit::PageOverlay::copyAccessibilityAttributeValue):
2523 (WebKit::PageOverlay::copyAccessibilityAttributeNames):
2524 * WebProcess/WebPage/PageOverlay.h:
2525 (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
2526 (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
2527 (WebKit::PageOverlay::client):
2528 * WebProcess/WebPage/WebPage.cpp:
2529 (WebKit::WebPage::pageOverlayCopyAccessibilityAttributeValue):
2530 (WebKit::WebPage::pageOverlayCopyAccessibilityAttributesNames):
2531 * WebProcess/WebPage/WebPage.h:
2532 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
2533 (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
2534 (-[WKAccessibilityWebPageObject _convertScreenPointToWindow:]):
2535 (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
2537 2013-07-27 Simon Fraser <simon.fraser@apple.com>
2539 If entering fullscreen for a window fails, don't leave things in a bad state
2540 https://bugs.webkit.org/show_bug.cgi?id=119179
2542 Reviewed by Sam Weinig.
2544 On Lion, attempting to take a video fullscreen when the Safari window is already
2545 fullscreen can sometimes fail, and AppKit informs us via windowDidFailToEnterFullScreen:
2547 When this happens we have to undo the work done when entering fullscreen, to
2548 avoid leaving things in a bad state.
2550 * UIProcess/mac/WKFullScreenWindowController.mm:
2551 (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
2553 2013-07-26 Tim Horton <timothy_horton@apple.com>
2555 Add a mode where autosizing fixes the FrameView height to at least the WKView height
2556 https://bugs.webkit.org/show_bug.cgi?id=119104
2557 <rdar://problem/14549021>
2559 Reviewed by Anders Carlsson.
2561 * Shared/WebPageCreationParameters.cpp:
2562 (WebKit::WebPageCreationParameters::encode):
2563 (WebKit::WebPageCreationParameters::decode):
2564 * Shared/WebPageCreationParameters.h:
2565 Add autoSizingShouldExpandToViewHeight parameter.
2567 * UIProcess/API/mac/WKView.mm:
2568 (-[WKView minimumWidthForAutoLayout]):
2569 (-[WKView setMinimumWidthForAutoLayout:]):
2570 Un-deprecate these as they're still useful if not sending a height.
2572 (-[WKView shouldExpandToViewHeightForAutoLayout]):
2573 (-[WKView setShouldExpandToViewHeightForAutoLayout:]):
2574 * UIProcess/API/mac/WKViewPrivate.h:
2575 New property, forward to WebPageProxy.
2577 * UIProcess/WebPageProxy.cpp:
2578 (WebKit::WebPageProxy::WebPageProxy):
2579 (WebKit::WebPageProxy::creationParameters):
2580 (WebKit::WebPageProxy::setAutoSizingShouldExpandToViewHeight):
2581 * UIProcess/WebPageProxy.h:
2582 (WebKit::WebPageProxy::autoSizingShouldExpandToViewHeight):
2583 New property, forward to WebPage.
2585 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2586 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
2587 If enabled, update the FrameView's autoSizeFixedMinimumHeight.
2589 * WebProcess/WebPage/WebPage.cpp:
2590 (WebKit::WebPage::WebPage):
2591 (WebKit::WebPage::setAutoSizingShouldExpandToViewHeight):
2592 * WebProcess/WebPage/WebPage.h:
2593 (WebKit::WebPage::autoSizingShouldExpandToViewHeight):
2594 New property; if enabled, set FrameView's autoSizeFixedMinimumHeight,
2595 otherwise reset it to 0.
2597 * WebProcess/WebPage/WebPage.messages.in:
2598 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2599 (WebKit::TiledCoreAnimationDrawingArea::updateIntrinsicContentSizeTimerFired):
2600 (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
2601 Retrieve intrinsic content size explicitly from the FrameView, as
2602 it may not have used it as its final contentsSize if
2603 autoSizeFixedMinimumHeight is set.
2605 Set the WebPage's size in case the load is committed so that the
2606 WebFrameLoaderClient doesn't reset us to the wrong size.
2608 Update autoSizeFixedMinimumHeight if enabled when the view size changes.
2610 2013-07-25 Andreas Kling <akling@apple.com>
2612 ChromeClient::focusedNodeChanged() should be focusedElementChanged().
2613 <http://webkit.org/b/119110>
2615 Reviewed by Anders Carlsson.
2617 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2618 (WebKit::WebChromeClient::focusedElementChanged):
2619 * WebProcess/WebCoreSupport/WebChromeClient.h:
2621 2013-07-25 Kwang Yul Seo <skyul@company100.net>
2623 [WK2][Soup] Add private browsing support
2624 https://bugs.webkit.org/show_bug.cgi?id=118657
2626 Reviewed by Gustavo Noronha Silva.
2628 Support private browsing in WK2 by implementing private browsing
2629 related methods in WebFrameNetworkingContext.
2631 * WebProcess/InjectedBundle/InjectedBundle.cpp:
2632 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
2633 Add USE(SOUP) guard.
2635 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
2636 Add private browsing support methods. Copied from the Mac port.
2637 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
2638 (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
2639 (WebKit::WebFrameNetworkingContext::storageSession):
2640 Check if the frame enables private browsing and return the private
2642 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
2644 * WebProcess/WebProcess.cpp:
2645 (WebKit::WebProcess::ensurePrivateBrowsingSession):
2646 Add USE(SOUP) guard.
2648 2013-07-25 Kwang Yul Seo <skyul@company100.net>
2650 Build fix: use of long long in CoreIPC::ArgumentEncoder and CoreIPC::ArgumentDecoder
2651 https://bugs.webkit.org/show_bug.cgi?id=118228
2653 Reviewed by Anders Carlsson.
2655 Build fails on some platforms where int64_t and long long are different types.
2657 * Shared/FileAPI/BlobRegistrationData.cpp:
2658 (WebKit::BlobRegistrationData::encode):
2659 Add explicit casts to int64_t.
2660 (WebKit::BlobRegistrationData::decode):
2661 Use int64_t instead of long long.
2663 2013-07-25 Anders Carlsson <andersca@apple.com>
2665 Remove lastModifiedDate from ResourceResponse
2666 https://bugs.webkit.org/show_bug.cgi?id=119092
2668 Reviewed by Andreas Kling.
2670 Update for WebCore changes.
2672 * WebProcess/Plugins/PluginView.cpp:
2673 (WebKit::lastModifiedDate):
2674 Use ResourceResponse::lastModified() to get the last modified date.
2676 (WebKit::PluginView::Stream::didReceiveResponse):
2677 Call the static lastModified function.
2679 (WebKit::PluginView::manualLoadDidReceiveResponse):
2682 2013-07-25 Carlos Garcia Campos <cgarcia@igalia.com>
2684 [GTK] Add support for running unit tests in the web process
2685 https://bugs.webkit.org/show_bug.cgi?id=118427
2687 Reviewed by Gustavo Noronha Silva.
2689 Some tests, like GObject DOM bindings API tests, run entirely in
2690 the WebProcess, so we just need to start the test from the UI
2691 process and wait until the test finishes running in the
2692 WebProcess. Tests are split in two files, one containing the
2693 actual test that runs in the WebProcess and another one to add the
2694 tests to the glib test system that works as a
2695 proxy. WebProcessTestRunner class starts a private DBus session
2696 bus and starts the tests sending a message to the WebExtension
2697 waiting until it finishes or fails. WebProcess tests are created
2698 by defining a class derived from WebProcessTest class and
2699 implementing the static create method and the virtual runTest
2700 method. The macro REGISTER_TEST is used by the web process tests
2701 to register their test cases. This patch includes the migration
2702 of the WebKitDOMNode test, all other GObject DOM bindings tests
2703 will be migrated in the same way in follow up patches.
2705 * UIProcess/API/gtk/tests/DOMNodeTest.cpp: Added.
2706 (WebKitDOMNodeTest::create): Create a new WebKitDOMNodeTest.
2707 (WebKitDOMNodeTest::webPageFromArgs): Get the pageID parameter
2708 from the arguments dictionary.
2709 (WebKitDOMNodeTest::testHierarchyNavigation):
2710 (WebKitDOMNodeTest::testInsertion):
2711 (WebKitDOMNodeTest::runTest): Run the given test.
2712 (registerTests): Register test cases.
2713 * UIProcess/API/gtk/tests/GNUmakefile.am: Add new files to
2715 * UIProcess/API/gtk/tests/TestDOMNode.cpp: Added.
2716 (testWebKitDOMNodeHierarchyNavigation):
2717 (testWebKitDOMNodeInsertion):
2720 * UIProcess/API/gtk/tests/TestMain.cpp:
2721 (main): Unset DBUS_SESSION_BUS_ADDRESS environment variable to
2722 make sure that the GLib bus singleton is initialized by the
2723 private DBus session bus created by the tests.
2724 * UIProcess/API/gtk/tests/WebProcessTest.cpp: Added.
2725 (testsMap): Initialize and get the global map of tests.
2726 (WebProcessTest::add): Add a new test to the map, keeping a
2727 function to create the test.
2728 (WebProcessTest::create): Create a test for the given name.
2729 (methodCallCallback): Handle RunTest DBus method. It creates and
2730 runs the given test.
2731 (webkit_web_extension_initialize):Register the DBus service for
2733 * UIProcess/API/gtk/tests/WebProcessTest.h: Added.
2734 * UIProcess/API/gtk/tests/WebProcessTestRunner.cpp: Added.
2735 (WebProcessTestRunner::WebProcessTestRunner): Start a private DBus
2736 session bus and get a connection to it.
2737 (WebProcessTestRunner::~WebProcessTestRunner): Stop the private
2739 (WebProcessTestRunner::proxyCreatedCallback):
2740 (WebProcessTestRunner::proxy): Create a new proxy to send messages
2741 to the WebExtension if it doesn't exists.
2742 (WebProcessTestRunner::onNameAppeared): Called when the DBus
2743 service has been registered in the WebExtension and it's safe to
2745 (WebProcessTestRunner::onNameVanished): Called when the DBus
2746 service is unregistered. This happens when the web process crash,
2747 so we just exit here, because the g_asserts in the web process
2748 have already registered the error message.
2749 (WebProcessTestRunner::testFinishedCallback): Called when the
2750 WebProcess tests has finished.
2751 (WebProcessTestRunner::runTest): Send a message to the
2752 WebExtension to start the given test and monitor the service.
2753 (WebProcessTestRunner::finishTest): Save the test result and
2754 finish the main loop.
2755 * UIProcess/API/gtk/tests/WebProcessTestRunner.h: Added.
2757 2013-05-05 Geoffrey Garen <ggaren@apple.com>
2759 Rolled back in r149527 with crash fixed.
2761 Reviewed by Oliver Hunt.
2763 Rationalized 'this' value conversion
2764 https://bugs.webkit.org/show_bug.cgi?id=115542
2766 2013-07-24 Ruth Fong <ruth_fong@apple.com>
2768 Rename WebColorChooserProxy
2769 <rdar://problem/14528039> and https://bugs.webkit.org/show_bug.cgi?id=119025
2771 Reviewed by Brady Eidson.
2773 Renamed WebColorChooserProxy to WebColorPicker since the name WebColorChoooserProxy
2774 implies that it represents the same object as WebColorChooser, which is not true.
2775 Also, renamed createColorChooserProxy to createColorPicker in WebPageProxy and
2776 platform-equivalent versions of it.
2779 * GNUmakefile.list.am:
2781 * UIProcess/API/gtk/PageClientImpl.cpp:
2782 (WebKit::PageClientImpl::createColorPicker):
2783 * UIProcess/API/gtk/PageClientImpl.h:
2784 * UIProcess/API/mac/PageClientImpl.h:
2785 * UIProcess/API/mac/PageClientImpl.mm:
2786 (WebKit::PageClientImpl::createColorPicker):
2787 * UIProcess/API/qt/raw/qrawwebview.cpp:
2788 (QRawWebViewPrivate::createColorPicker):
2789 * UIProcess/API/qt/raw/qrawwebview_p_p.h:
2790 * UIProcess/CoordinatedGraphics/WebView.cpp:
2791 (WebKit::WebView::createColorPicker):
2792 * UIProcess/CoordinatedGraphics/WebView.h:
2793 * UIProcess/PageClient.h:
2794 * UIProcess/WebColorChooserProxy.cpp: Removed.
2795 * UIProcess/WebColorChooserProxy.h: Removed.
2796 * UIProcess/WebColorPicker.cpp: Copied from Source/WebKit2/UIProcess/WebColorChooserProxy.cpp.
2797 (WebKit::WebColorPicker::WebColorPicker):
2798 (WebKit::WebColorPicker::~WebColorPicker):
2799 (WebKit::WebColorPicker::endChooser):
2800 (WebKit::WebColorPicker::setSelectedColor):
2801 * UIProcess/WebColorPicker.h: Copied from Source/WebKit2/UIProcess/WebColorChooserProxy.h.
2802 (WebKit::WebColorPicker::create):
2803 * UIProcess/WebPageProxy.cpp:
2804 (WebKit::WebPageProxy::close):
2805 (WebKit::WebPageProxy::showColorChooser):
2806 (WebKit::WebPageProxy::setColorChooserColor):
2807 (WebKit::WebPageProxy::endColorChooser):
2808 (WebKit::WebPageProxy::didEndColorChooser):
2809 (WebKit::WebPageProxy::resetStateAfterProcessExited):
2810 * UIProcess/WebPageProxy.h: Renamed m_colorChooser to m_colorPicker.
2811 * UIProcess/qt/QtPageClient.cpp:
2812 (WebKit::QtPageClient::createColorPicker):
2813 * UIProcess/qt/QtPageClient.h:
2814 * UIProcess/qt/WebColorChooserProxyQt.cpp: Removed.
2815 * UIProcess/qt/WebColorChooserProxyQt.h: Removed.
2816 * UIProcess/qt/WebColorPickerQt.cpp: Added.
2817 (WebKit::ColorChooserContextObject::ColorChooserContextObject):
2818 (WebKit::ColorChooserContextObject::currentColor):
2819 (WebKit::ColorChooserContextObject::elementRect):
2820 (WebKit::ColorChooserContextObject::accept):
2821 (WebKit::ColorChooserContextObject::reject):
2822 (WebKit::WebColorPickerQt::WebColorPickerQt):
2823 (WebKit::WebColorPickerQt::~WebColorPickerQt):
2824 (WebKit::WebColorPickerQt::createItem):
2825 (WebKit::WebColorPickerQt::createContext):
2826 (WebKit::WebColorPickerQt::setSelectedColor):
2827 (WebKit::WebColorPickerQt::notifyColorSelected):
2828 (WebKit::WebColorPickerQt::endChooser):
2829 * UIProcess/qt/WebColorPickerQt.h: Added.
2830 (WebKit::WebColorPickerQt::create):
2831 * WebKit2.xcodeproj/project.pbxproj:
2833 2013-07-24 Anders Carlsson <andersca@apple.com>
2835 Crash when calling WKPageGetProcessIdentifier after aborted process launch
2836 https://bugs.webkit.org/show_bug.cgi?id=119069
2837 <rdar://problem/14494064>
2839 Reviewed by Andreas Kling.
2841 * UIProcess/WebPageProxy.cpp:
2842 (WebKit::WebPageProxy::processIdentifier):
2843 Check if the page is closed instead of checking whether we have a process - We'll always have a process.
2845 (WebKit::WebPageProxy::isValid):
2848 * UIProcess/WebPageProxy.h:
2850 2013-07-24 Kwang Yul Seo <skyul@company100.net>
2852 [WK2][Soup] Add entry point for network process
2853 https://bugs.webkit.org/show_bug.cgi?id=110136
2855 Reviewed by Gustavo Noronha Silva.
2857 Original patch by Balazs Kelemen <kbalazs@webkit.org>.
2859 Added a common entry point for non-Mac Unix ports.
2861 * NetworkProcess/unix/NetworkProcessMainUnix.cpp: Added.
2862 (WebKit::NetworkProcessMain):
2863 * NetworkProcess/unix/NetworkProcessMainUnix.h: Added.
2864 * unix/NetworkMainUnix.cpp: Added.
2867 2013-07-24 Jessie Berlin <jberlin@apple.com>
2869 Remove WKPageGetPlugInInformation - it is not used anymore
2870 https://bugs.webkit.org/show_bug.cgi?id=119047
2872 Reviewed by Alexey Proskuryakov.
2874 Revert r151172, which fixed a crash introduced in r151043, r151054, which fixed some naming
2875 and ref-churn issues introduced in r151043, and r151043, which added
2876 WKPageGetPlugInInformation.
2878 * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
2879 (WKPageIsURLKnownHSTSHost):
2880 * UIProcess/API/C/mac/WKPagePrivateMac.h:
2881 * UIProcess/Plugins/PluginProcessManager.h:
2882 * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
2883 * UIProcess/WebPageProxy.cpp:
2884 (WebKit::WebPageProxy::close):
2885 * UIProcess/WebPageProxy.h:
2886 * UIProcess/WebPageProxy.messages.in:
2887 * UIProcess/mac/WebPageProxyMac.mm:
2888 * WebProcess/Plugins/Netscape/NetscapePlugin.h:
2889 * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
2890 * WebProcess/Plugins/Plugin.h:
2891 * WebProcess/Plugins/PluginProxy.h:
2892 * WebProcess/Plugins/PluginView.h:
2893 * WebProcess/WebPage/WebPage.h:
2894 * WebProcess/WebPage/WebPage.messages.in:
2895 * WebProcess/WebPage/mac/WebPageMac.mm:
2897 2013-07-24 Jessie Berlin <jberlin@apple.com>
2899 Remove WKPageGetPlugInInformation - it is not used anymore
2900 https://bugs.webkit.org/show_bug.cgi?id=119047
2902 Rubber-stamped by Alexey Proskuryakov.
2904 Revert r152328, which added a key used only in the callback info for
2905 WKPageGetPlugInInformation.
2907 * Shared/API/c/WKPluginInformation.cpp:
2908 * Shared/API/c/WKPluginInformation.h:
2909 * Shared/Plugins/Netscape/PluginInformation.cpp:
2910 * Shared/Plugins/Netscape/PluginInformation.h:
2911 * UIProcess/WebPageProxy.h:
2912 * UIProcess/WebPageProxy.messages.in:
2913 * UIProcess/mac/WebPageProxyMac.mm:
2914 (WebKit::WebPageProxy::containsPlugInCallback):
2915 * WebProcess/WebPage/mac/WebPageMac.mm:
2916 (WebKit::WebPage::containsPluginViewsWithPluginProcessToken):
2918 2013-07-24 Anton Obzhirov <a.obzhirov@samsung.com>
2920 [GTK] TestInspectorServer unit test is timing out
2921 https://bugs.webkit.org/show_bug.cgi?id=105866
2923 Reviewed by Gustavo Noronha Silva.
2925 The test failed because it couldn't find inspector resources in default folder
2926 (make install step was missing). It uses now resources available in
2927 WebKitBuild folder. WebInspectorServerGtk was refactored as well to make
2928 easier to use WEBKIT_INSPECTOR_SERVER_PATH variable.
2930 * UIProcess/API/gtk/tests/GNUmakefile.am:
2931 * UIProcess/API/gtk/tests/InspectorTestServer.cpp:
2933 * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
2934 (testInspectorServerPageList):
2935 * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
2936 (WebKit::WebInspectorServer::platformResourceForPath):
2937 (WebKit::WebInspectorServer::buildPageList):
2938 (WebKit::WebInspectorServer::inspectorServerFilesPath):
2940 2013-07-23 Simon Cooper <scooper@apple.com>
2942 10.7: Java applets do not work due to sandbox violation/exception
2943 https://bugs.webkit.org/show_bug.cgi?id=118920
2944 <rdar://problem/14471541&12910934&14223830&14260729&14267679>
2946 Reviewed by Alexey Proskuryakov.
2948 Introduce versioning into the common profile and use it to fix
2949 a number of issues with Java on 10.7 and 10.8. Allow writing the
2950 com.apple.java.util.prefs preference file. This change also
2951 introduces a "/Library/Application Support/Java/PublicFiles"
2952 area which Java can read without any restrictions. Files written
2953 to this location will need to be created and written to by
2954 a privileged process.
2956 * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
2957 * Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
2959 2013-07-23 Eunmi Lee <eunmi15.lee@samsung.com>
2961 [EFL][WK2] Add doneWithTouchEvent callback to the WKViewClient.
2962 https://bugs.webkit.org/show_bug.cgi?id=110085
2964 Reviewed by Kenneth Rohde Christiansen.
2966 Add doneWithTouchEvent callback to the WKViewClient in order to get the
2967 result of touch events in the EwkView. The result will be used to
2968 recognize gestures in the Bug 102643.
2970 APIs to get values from WKTouchEventRef and WKTouchPointRef are added
2971 because WKTypeRef is opaque to the applications.
2973 * UIProcess/API/C/CoordinatedGraphics/WKView.h:
2974 * UIProcess/API/C/efl/WKAPICastEfl.h:
2976 * UIProcess/API/C/efl/WKEventEfl.cpp:
2977 (WKTouchEventGetType):
2978 (WKTouchEventGetTouchPoints):
2979 (WKTouchEventGetModifiers):
2980 (WKTouchEventGetTimestamp):
2981 (WKTouchPointGetID):
2982 (WKTouchPointGetState):
2983 (WKTouchPointGetScreenPosition):
2984 (WKTouchPointGetPosition):
2985 (WKTouchPointGetRadius):
2986 (WKTouchPointGetRotationAngle):
2987 (WKTouchPointGetForceFactor):
2988 * UIProcess/API/C/efl/WKEventEfl.h:
2989 * UIProcess/API/efl/EwkView.cpp:
2990 (EwkView::doneWithTouchEvent):
2991 * UIProcess/API/efl/EwkView.h:
2992 * UIProcess/CoordinatedGraphics/WebView.cpp:
2993 (WebKit::WebView::doneWithTouchEvent):
2994 * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
2995 (WebKit::WebViewClient::doneWithTouchEvent):
2996 * UIProcess/CoordinatedGraphics/WebViewClient.h:
2997 * UIProcess/efl/ViewClientEfl.cpp:
2998 (WebKit::ViewClientEfl::doneWithTouchEvent):
2999 (WebKit::ViewClientEfl::ViewClientEfl):
3000 * UIProcess/efl/ViewClientEfl.h:
3002 2013-07-22 Alexey Proskuryakov <ap@apple.com>
3004 Frequent MESSAGE_CHECK failures in WebPageProxy::didReceiveEvent
3005 https://bugs.webkit.org/show_bug.cgi?id=118976
3006 <rdar://problem/14155030>
3008 Reviewed by Sam Weinig.
3010 * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessExited):
3011 Clear m_gestureEventQueue, just like we clear all other event queues here.
3013 2013-07-21 Anders Carlsson <andersca@apple.com>
3015 Java Updater not launched on Lion and Mountain Lion
3016 https://bugs.webkit.org/show_bug.cgi?id=118953
3017 <rdar://problem/14496721>
3019 Reviewed by Sam Weinig.
3021 On Lion and Mountain Lion, -[NSURL isEqual:] will return NO for two file URLs if one of
3022 them has "localhost" specified, even if the paths are otherwise equal. Work around this by
3023 comparing the paths directly.
3025 * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
3026 (WebKit::isJavaUpdaterURL):
3028 2013-07-19 Morten Stenshorne <mstensho@opera.com>
3030 [GTK] Need a way to enable region based columns from the command line
3031 https://bugs.webkit.org/show_bug.cgi?id=116611
3033 Reviewed by Martin Robinson.
3035 Add an environment variable to enable experimental features.
3037 This provides a means to enable experimental features without polluting
3040 Environment variable name: WEBKITGTK_EXPERIMENTAL_FEATURES
3042 Format: WEBKITGTK_EXPERIMENTAL_FEATURES="<feature1>=1,<feature2>=1,..."
3043 Or, to enable all experimental features: WEBKITGTK_EXPERIMENTAL_FEATURES=all
3045 So far the only feature is region based columns (implement multicol using
3046 the CSS regions implementation rather than ColumnInfo & co) - REGION_BASED_COLUMNS.
3048 Example: WEBKITGTK_EXPERIMENTAL_FEATURES="REGION_BASED_COLUMNS=1"
3050 * GNUmakefile.list.am:
3051 * PlatformGTK.cmake:
3052 * UIProcess/API/gtk/WebKitSettings.cpp:
3053 (webKitSettingsConstructed):
3054 (webkit_settings_class_init):
3055 * UIProcess/gtk/ExperimentalFeatures.cpp: Added.
3058 (WebKit::ExperimentalFeatures::ExperimentalFeatures):
3059 (WebKit::ExperimentalFeatures::isEnabled):
3060 (WebKit::ExperimentalFeatures::setEnableByName):
3061 (WebKit::ExperimentalFeatures::parseEnvironment):
3062 * UIProcess/gtk/ExperimentalFeatures.h: Added.
3064 (ExperimentalFeatures):
3066 2013-07-18 Eunmi Lee <eunmi15.lee@samsung.com>
3068 [WK2] Share Qt port's codes to find zoomable area with CoordinatedGraphics.
3069 https://bugs.webkit.org/show_bug.cgi?id=118585
3071 Reviewed by Anders Carlsson.
3073 The function to find zoomable area is needed in order to implement the
3074 feature to scale for double-tap gesture. The WK2 EFL and NIX port want
3075 to use that function, so extract the code from the Qt port, make it
3076 usable in the CoordinatedGraphics and add API and callback.
3080 * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
3081 (WKViewFindZoomableAreaForRect):
3082 * UIProcess/API/C/CoordinatedGraphics/WKView.h:
3083 * UIProcess/API/efl/EwkView.cpp:
3084 (EwkView::didFindZoomableArea):
3085 * UIProcess/API/efl/EwkView.h:
3086 * UIProcess/CoordinatedGraphics/WebPageProxyCoordinatedGraphics.cpp: Added.
3087 (WebKit::WebPageProxy::findZoomableAreaForPoint):
3088 (WebKit::WebPageProxy::didFindZoomableArea):
3089 * UIProcess/CoordinatedGraphics/WebView.cpp:
3090 (WebKit::WebView::didFindZoomableArea):
3091 (WebKit::WebView::findZoomableAreaForPoint):
3092 * UIProcess/CoordinatedGraphics/WebView.h:
3093 * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
3094 (WebKit::WebViewClient::didFindZoomableArea):
3095 * UIProcess/CoordinatedGraphics/WebViewClient.h:
3096 * UIProcess/PageClient.h:
3097 * UIProcess/WebPageProxy.h:
3098 * UIProcess/WebPageProxy.messages.in:
3099 * UIProcess/efl/ViewClientEfl.cpp:
3100 (WebKit::ViewClientEfl::didFindZoomableArea):
3101 (WebKit::ViewClientEfl::ViewClientEfl):
3102 * UIProcess/efl/ViewClientEfl.h:
3103 * UIProcess/qt/WebPageProxyQt.cpp:
3104 * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: Added.
3105 (WebKit::WebPage::findZoomableAreaForPoint):
3106 * WebProcess/WebPage/WebPage.cpp:
3107 * WebProcess/WebPage/WebPage.h:
3108 * WebProcess/WebPage/WebPage.messages.in:
3110 2013-07-18 Simon Cooper <scooper@apple.com>
3112 Flash Player: deny file-read-data /Library/Application Support/Macromedia/FlashAuthor.cfg
3113 https://bugs.webkit.org/show_bug.cgi?id=118874
3114 <rdar://problem/14271327>
3116 Reviewed by Alexey Proskuryakov.
3118 Silently deny access to FlashAuthor.cfg. This location contains
3119 files containing lists of paths that Flash Player will
3120 "allow" access to (without asking the user). Since the plugin
3121 sandbox won't permit the access to the listed paths it is better
3122 to silently block attempts to read this "whitelist".
3124 * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
3126 2013-07-18 Tim Horton <timothy_horton@apple.com>
3128 [wk2] Ensure that the plugin layer is removed completely when the PluginProcess crashes
3129 https://bugs.webkit.org/show_bug.cgi?id=118862
3131 Reviewed by Anders Carlsson.
3133 * WebProcess/Plugins/PluginView.cpp:
3134 (WebKit::PluginView::PluginView):
3135 Add m_pluginProcessHasCrashed.
3137 (WebKit::PluginView::platformLayer):
3138 Don't return the plugin's layer if it has crashed.
3140 (WebKit::PluginView::pluginProcessCrashed):
3141 Set m_pluginProcessHasCrashed.
3142 Cause a style recalc so that we rebuild the layer tree; our layer won't be included.
3144 * WebProcess/Plugins/PluginView.h:
3145 Add m_pluginProcessHasCrashed.
3147 2013-07-18 Alexey Proskuryakov <ap@apple.com>
3149 <rdar://problem/13886443> Assertion failures in NetworkProcess in SandboxExtension::revoke when aborting SyncNetworkResourceLoader
3150 <rdar://problem/13826348> ASSERT(!m_useCount) fails in NetworkProcess at SandboxExtension::~SandboxExtension
3151 https://bugs.webkit.org/show_bug.cgi?id=118855
3153 Reviewed by Brady Eidson.
3155 * NetworkProcess/NetworkResourceLoader.cpp:
3156 (WebKit::NetworkResourceLoader::cleanup):
3157 (WebKit::NetworkResourceLoader::didFinishLoading):
3158 (WebKit::NetworkResourceLoader::didFail):
3159 Moved sandbox extension invalidation to cleanup() meaning that we won't fail to
3160 do this when aborting a loader that currently loading from network.
3162 * NetworkProcess/SchedulableLoader.cpp:
3163 (WebKit::SchedulableLoader::SchedulableLoader):
3164 (WebKit::SchedulableLoader::consumeSandboxExtensions):
3165 (WebKit::SchedulableLoader::invalidateSandboxExtensions):
3166 * NetworkProcess/SchedulableLoader.h:
3167 Keep track of whether sandbox extensions are consumed, we don't want to revoke
3168 extensions that were never consumed (as used to be the case with sync loaders,
3169 and would be with async ones after the above fix). Also, get rid of extensions
3170 immediately when invalidating, we won't need them again.
3172 2013-07-18 Tim Horton <timothy_horton@apple.com>
3174 Remove PDFViewController and WKView "custom representations"
3175 https://bugs.webkit.org/show_bug.cgi?id=118720
3177 Reviewed by Alexey Proskuryakov.
3179 PDFViewController was the only implementation of
3180 a "custom representation" for a WKView. As it has
3181 been superceded by PDFPlugin, we can remove both
3182 PDFViewController and the notion of a WKView custom
3185 * UIProcess/API/gtk/PageClientImpl.cpp:
3186 * UIProcess/API/gtk/PageClientImpl.h:
3187 * UIProcess/API/mac/PDFViewController.h: Removed.
3188 * UIProcess/API/mac/PDFViewController.mm: Removed.
3189 * UIProcess/API/mac/PageClientImpl.h:
3190 * UIProcess/API/mac/PageClientImpl.mm:
3191 * UIProcess/API/mac/WKView.mm:
3192 (-[WKView accessibilityFocusedUIElement]):
3193 (-[WKView accessibilityHitTest:]):
3194 (-[WKView accessibilityAttributeValue:]):
3195 (-[WKView printOperationWithPrintInfo:forFrame:]):
3196 * UIProcess/API/mac/WKViewInternal.h:
3197 * UIProcess/API/qt/raw/qrawwebview_p_p.h:
3198 * UIProcess/CoordinatedGraphics/WebView.cpp:
3199 * UIProcess/CoordinatedGraphics/WebView.h:
3200 * UIProcess/DrawingAreaProxy.h:
3201 * UIProcess/DrawingAreaProxyImpl.cpp:
3202 * UIProcess/DrawingAreaProxyImpl.h:
3203 * UIProcess/PageClient.h:
3204 * UIProcess/WebPageProxy.cpp:
3205 (WebKit::WebPageProxy::WebPageProxy):
3206 (WebKit::WebPageProxy::supportsTextEncoding):
3207 (WebKit::WebPageProxy::supportsTextZoom):
3208 (WebKit::WebPageProxy::setTextZoomFactor):
3209 (WebKit::WebPageProxy::setPageZoomFactor):
3210 (WebKit::WebPageProxy::setPageAndTextZoomFactors):
3211 (WebKit::WebPageProxy::findString):
3212 (WebKit::WebPageProxy::countStringMatches):
3213 (WebKit::WebPageProxy::didCommitLoadForFrame):
3214 * UIProcess/WebPageProxy.h:
3215 (WebKit::WebPageProxy::textZoomFactor):
3216 (WebKit::WebPageProxy::pageZoomFactor):
3217 * UIProcess/WebPageProxy.messages.in:
3218 * UIProcess/qt/QtPageClient.h:
3219 * WebKit2.xcodeproj/project.pbxproj:
3220 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3221 (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
3222 (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
3223 (WebKit::WebFrameLoaderClient::committedLoad):
3224 (WebKit::WebFrameLoaderClient::finishedLoading):
3225 (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
3226 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3227 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3228 * WebProcess/WebPage/DrawingArea.h:
3229 * WebProcess/WebPage/DrawingArea.messages.in:
3230 * WebProcess/WebPage/DrawingAreaImpl.cpp:
3231 (WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
3232 (WebKit::DrawingAreaImpl::scroll):
3233 (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
3234 (WebKit::DrawingAreaImpl::display):
3235 * WebProcess/WebPage/DrawingAreaImpl.h:
3236 * WebProcess/WebPage/WebPage.cpp:
3237 * WebProcess/WebPage/WebPage.h:
3238 * WebProcess/WebPage/mac/WebPageMac.mm:
3239 (WebKit::WebPage::platformPreferencesDidChange):
3240 * mac/WebKit2.order:
3242 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3244 [EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_color_picker.cpp
3245 https://bugs.webkit.org/show_bug.cgi?id=118797
3247 Reviewed by Christophe Dumez.
3249 Some mouseClick methods are used in test_ewk2_color_picker.cpp.
3250 But it is difficult to understand what they mean.
3251 So i would like to replace those with more meaningful method for readability.
3253 * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
3254 (EWK2ColorPickerTest::clickButton):
3257 2013-07-18 Eunmi Lee <eunmi15.lee@samsung.com>
3259 [WK2] Replace getRect() to pixelSnappedBoundingBox().
3260 https://bugs.webkit.org/show_bug.cgi?id=118588
3262 Reviewed by Noam Rosenthal.
3264 The Node::getRect() function was removed in the
3265 http://trac.webkit.org/changeset/128006, so use
3266 pixelSnappedBoundingBox() instead.
3268 * WebProcess/WebPage/WebPage.cpp:
3269 (WebKit::WebPage::findZoomableAreaForPoint):
3271 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3273 [EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_context_menu.cpp
3274 https://bugs.webkit.org/show_bug.cgi?id=118796
3276 Reviewed by Christophe Dumez.
3278 Some mouseClick methods are used in test_ewk2_context_menu.cpp.
3279 But it is difficult to understand what they mean.
3280 So i would like to replace those with more meaningful method for readability.
3282 * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
3283 (EWK2ContextMenuTest::testContextMenu):
3284 (EWK2ContextMenuTest::testContextMenuForRemoveAndAppend):
3285 (EWK2ContextMenuTest::testContextMenuForSubmenu):
3286 (EWK2ContextMenuTest::finishTest):
3287 (EWK2ContextMenuTest::showContextMenu):
3290 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3292 [EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_file_chooser_request.cpp
3293 https://bugs.webkit.org/show_bug.cgi?id=118792
3295 Reviewed by Christophe Dumez.
3297 Some mouseClick methods are used in test_ewk2_file_chooser_request.cpp.
3298 But it is difficult to understand what they mean.
3299 So i would like to replace those with more meaningful method for readability.
3301 * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
3302 (EWK2FileChooserRequestTest::clickFileInput):
3305 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3307 [EFL][WK2] Move all the static methods into EWK2TextCheckerTest in test_ewk2_text_checker.cpp
3308 https://bugs.webkit.org/show_bug.cgi?id=118790
3310 Reviewed by Christophe Dumez.
3312 All the static methods should be moved to EWK2TextCheckerTest.
3314 * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
3315 (EWK2TextCheckerTest::resetCallbacksExecutionStats):
3316 (EWK2TextCheckerTest::onTimeout):
3317 (EWK2TextCheckerTest::onSettingChange):
3318 (EWK2TextCheckerTest::onSpellDocumentTag):
3319 (EWK2TextCheckerTest::onSpellDocumentTagClose):
3320 (EWK2TextCheckerTest::onSpellingCheck):
3321 (EWK2TextCheckerTest::onSpellingForKnownWord):
3322 (EWK2TextCheckerTest::onWordGuesses):
3323 (EWK2TextCheckerTest::onWordLearn):
3324 (EWK2TextCheckerTest::onWordIgnore):
3325 (EWK2TextCheckerTest::findContextMenuItem):
3326 (EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
3327 (EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
3328 (EWK2TextCheckerTest::checkClientSuggestionsForWord):
3329 (EWK2TextCheckerTest::selectLearnSpelling):
3330 (EWK2TextCheckerTest::selectIgnoreSpelling):
3331 (EWK2TextCheckerTest::countContextMenuItems):
3332 (EWK2TextCheckerTest::clickButton):
3333 (EWK2TextCheckerTest::showContextMenu):
3334 (EWK2TextCheckerTest::selectFirstWord):
3336 2013-07-17 Tim Horton <timothy_horton@apple.com>
3338 Update blocked/missing plug-in UI
3339 https://bugs.webkit.org/show_bug.cgi?id=118347
3340 <rdar://problem/14209318>
3342 Reviewed by Sam Weinig.
3344 * Platform/CoreIPC/HandleMessage.h:
3345 (CoreIPC::callMemberFunction):
3346 Add a 6 argument -> 4 reply message handler.
3347 (It seems that FindPlugin is getting a little out of hand.)
3349 * Shared/APIClientTraits.cpp:
3350 * Shared/APIClientTraits.h:
3351 * UIProcess/API/C/WKPage.h:
3352 * UIProcess/WebLoaderClient.cpp:
3353 (WebKit::WebLoaderClient::pluginLoadPolicy):
3354 * UIProcess/WebLoaderClient.h:
3355 Add an unavailability description out-argument to a new version of
3356 pluginLoadPolicy, so clients can override the text of the unavailable
3357 plugin indicator. Bump the WKPageLoaderClient version and update APIClientTraits.
3359 * UIProcess/WebPageProxy.cpp:
3360 (WebKit::WebPageProxy::findPlugin):
3361 * UIProcess/WebPageProxy.h:
3362 * UIProcess/WebPageProxy.messages.in:
3363 Plumb the unavailability description through to the WebProcess via
3364 the FindPlugin message.
3366 * WebProcess/WebPage/WebPage.cpp:
3367 (WebKit::WebPage::createPlugin):
3368 Acquire the unavailability description from the client
3369 (via FindPlugin) and hand it to the RenderEmbeddedObject.
3371 2013-07-17 Commit Queue <commit-queue@webkit.org>
3373 Unreviewed, rolling out r152701, r152703, r152739, r152754,
3375 http://trac.webkit.org/changeset/152701
3376 http://trac.webkit.org/changeset/152703
3377 http://trac.webkit.org/changeset/152739
3378 http://trac.webkit.org/changeset/152754
3379 http://trac.webkit.org/changeset/152756
3380 https://bugs.webkit.org/show_bug.cgi?id=118821
3382 this was a buggy fix and we're going to try something
3383 different (Requested by thorton on #webkit).
3385 * Platform/CoreIPC/HandleMessage.h:
3386 * Shared/APIClientTraits.cpp:
3387 * Shared/APIClientTraits.h:
3388 * UIProcess/API/C/WKPage.h:
3389 * UIProcess/WebLoaderClient.cpp:
3390 (WebKit::WebLoaderClient::pluginLoadPolicy):
3391 * UIProcess/WebLoaderClient.h:
3392 * UIProcess/WebPageProxy.cpp:
3393 (WebKit::WebPageProxy::findPlugin):
3394 * UIProcess/WebPageProxy.h:
3395 * UIProcess/WebPageProxy.messages.in:
3396 * WebProcess/Plugins/PluginProcessConnection.cpp:
3397 (WebKit::PluginProcessConnection::didClose):
3398 * WebProcess/Plugins/PluginView.cpp:
3399 (WebKit::PluginView::pluginProcessCrashed):
3400 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3401 (WebKit::WebChromeClient::shouldUnavailablePluginMessageBeButton):
3402 * WebProcess/WebCoreSupport/WebChromeClient.h:
3403 * WebProcess/WebPage/WebPage.cpp:
3404 (WebKit::WebPage::createPlugin):
3405 (WebKit::WebPage::canPluginHandleResponse):
3407 2013-07-17 Alexey Proskuryakov <ap@apple.com>
3409 [Mac] Crashes in CFURLGetBytes under WebProcess::updateActivePages()
3410 https://bugs.webkit.org/show_bug.cgi?id=118814
3411 <rdar://problem/14173389>
3413 Reviewed by Brady Eidson.
3415 Speculative fix. It's unclear how we end up with an invalid URL when committing
3418 * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::updateActivePages):
3421 2013-07-17 Commit Queue <commit-queue@webkit.org>
3423 Unreviewed, rolling out r152786 and r152789.
3424 http://trac.webkit.org/changeset/152786
3425 http://trac.webkit.org/changeset/152789
3426 https://bugs.webkit.org/show_bug.cgi?id=118807
3428 overly platform specific and dirty API (and Sam says no)
3429 (Requested by thorton on #webkit).
3431 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
3432 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
3433 * WebProcess/WebPage/PageOverlay.cpp:
3434 * WebProcess/WebPage/PageOverlay.h:
3435 * WebProcess/WebPage/WebPage.cpp:
3436 * WebProcess/WebPage/WebPage.h:
3437 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
3439 2013-07-17 Tim Horton <timothy_horton@apple.com>
3441 AX: VoiceOver not working with data detection page overlays
3442 https://bugs.webkit.org/show_bug.cgi?id=118680
3444 Reviewed by Anders Carlsson.
3446 Bump the API version after r152786.
3448 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
3450 2013-07-17 Simon Cooper <scooper@apple.com>
3452 YouTube webcam capture (Flash Plug-in) in Safari can't see built-in camera
3453 https://bugs.webkit.org/show_bug.cgi?id=118787
3454 <rdar://problem/14418799>
3456 Reviewed by Alexey Proskuryakov.
3458 Add support for built-in cameras, including the original iSight.
3460 * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
3461 * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
3463 2013-07-17 Chris Fleizach <cfleizach@apple.com>
3465 AX: VoiceOver not working with data detection page overlays
3466 https://bugs.webkit.org/show_bug.cgi?id=118680
3468 Reviewed by Tim Horton.
3470 Expose API methods so that a client implementing data detectors is able to respond
3471 to the needs of accessibility clients like VoiceOver.
3473 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
3474 (PageOverlayClientImpl::supportsDataDetection):
3475 (PageOverlayClientImpl::dataDetectorExistsAtPoint):
3476 (PageOverlayClientImpl::dataDetectorCopyTypeAtPoint):
3477 (PageOverlayClientImpl::showDataDetectorMenuAtPoint):
3478 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
3479 * WebProcess/WebPage/PageOverlay.cpp:
3480 (WebKit::PageOverlay::supportsDataDetection):
3481 (WebKit::PageOverlay::dataDetectorExistsAtPoint):
3482 (WebKit::PageOverlay::dataDetectorCopyTypeAtPoint):
3483 (WebKit::PageOverlay::dataDetectorOpenMenuAtPoint):
3484 * WebProcess/WebPage/PageOverlay.h:
3485 (WebKit::PageOverlay::Client::supportsDataDetection):
3486 (WebKit::PageOverlay::Client::dataDetectorExistsAtPoint):
3487 (WebKit::PageOverlay::Client::dataDetectorCopyTypeAtPoint):
3488 (WebKit::PageOverlay::Client::showDataDetectorMenuAtPoint):
3489 * WebProcess/WebPage/WebPage.cpp:
3490 (WebKit::WebPage::pageOverlayOpenDataDetectorMenuAtPoint):
3491 (WebKit::WebPage::pageOverlayDataDetectorCopyTypeAtPoint):
3492 (WebKit::WebPage::pageOverlayDataDetectorExistsAtPoint):
3493 (WebKit::WebPage::pageOverlaySupportsDataDetection):
3494 * WebProcess/WebPage/WebPage.h:
3495 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
3496 (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
3497 (-[WKAccessibilityWebPageObject _convertScreenPointToWindow:]):
3498 (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
3500 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3502 [EFL][WK2] EWK2CookieManagerTest should be defined by inheriting from EWK2UnitTestBase.
3503 https://bugs.webkit.org/show_bug.cgi?id=118721
3505 Reviewed by Christophe Dumez.
3507 It should be defined as relevant test class specific to each test file for more readability.
3508 It could be helpful to remove unnecessary static methods.
3510 * UIProcess/API/efl/tests/test_ewk2_cookie_manager.cpp:
3513 (EWK2CookieManagerTest::getAcceptPolicy):
3514 (EWK2CookieManagerTest::getHostnamesWithCookies):
3515 (EWK2CookieManagerTest::freeHostNames):
3516 (EWK2CookieManagerTest::countHostnamesWithCookies):
3519 2013-07-16 Balazs Kelemen <kbalazs@webkit.org>
3521 [CMake] Undefined references should be detected at build time
3522 https://bugs.webkit.org/show_bug.cgi?id=110236
3524 Reviewed by Christophe Dumez.
3526 Add library dependencies that were not defined explicitly before.
3529 * PlatformEfl.cmake:
3531 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3533 [EFL][WK2] EWK2WindowFeaturesTest should be defined by inheriting from EWK2UnitTestBase.
3534 https://bugs.webkit.org/show_bug.cgi?id=118780
3536 Reviewed by Christophe Dumez.
3538 It should be defined as relevant test class specific to each test file for more readability.
3539 It could be helpful to remove unnecessary static methods.
3541 * UIProcess/API/efl/tests/test_ewk2_window_features.cpp:
3542 (EWK2WindowFeaturesTest::createDefaultWindow):
3543 (EWK2WindowFeaturesTest::createWindow):
3546 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3548 [EFL][WK2] EWK2ViewTest should be defined by inheriting from EWK2UnitTestBase.
3549 https://bugs.webkit.org/show_bug.cgi?id=118779
3551 Reviewed by Christophe Dumez.
3553 It should be defined as relevant test class specific to each test file for more readability.
3554 It could be helpful to remove unnecessary static methods.
3556 * UIProcess/API/efl/tests/test_ewk2_view.cpp:
3557 (EWK2ViewTest::onLoadFinishedForRedirection):
3558 (EWK2ViewTest::serverCallbackNavigation):
3559 (EWK2ViewTest::onFormAboutToBeSubmitted):
3560 (EWK2ViewTest::fullScreenCallback):
3561 (EWK2ViewTest::fullScreenExitCallback):
3562 (EWK2ViewTest::checkAlert):
3563 (EWK2ViewTest::checkConfirm):
3564 (EWK2ViewTest::checkPrompt):
3565 (EWK2ViewTest::onTextFound):
3566 (EWK2ViewTest::onVibrate):
3567 (EWK2ViewTest::onCancelVibration):
3568 (EWK2ViewTest::loadVibrationHTMLString):
3569 (EWK2ViewTest::onContentsSizeChangedPortrait):
3570 (EWK2ViewTest::onContentsSizeChangedLandscape):
3571 (EWK2ViewTest::PageContentsAsMHTMLCallback):
3572 (EWK2ViewTest::PageContentsAsStringCallback):
3575 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3577 [EFL][WK2] EWK2StorageManagerTest should be defined by inheriting from EWK2UnitTestBase.
3578 https://bugs.webkit.org/show_bug.cgi?id=118777
3580 Reviewed by Christophe Dumez.
3582 It should be defined as relevant test class specific to each test file for more readability.
3583 It could be helpful to remove unnecessary static methods.
3585 * UIProcess/API/efl/tests/test_ewk2_storage_manager.cpp:
3586 (EWK2StorageManagerTest::OriginData::OriginData):
3587 (EWK2StorageManagerTest::getStorageOriginsCallback):
3588 (EWK2StorageManagerTest::timerCallback):
3589 (EWK2StorageManagerTest::checkOrigin):
3592 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3594 [EFL][WK2] EWK2PopupMenuTest should be defined by inheriting from EWK2UnitTestBase.
3595 https://bugs.webkit.org/show_bug.cgi?id=118775
3597 Reviewed by Christophe Dumez.
3599 It should be defined as relevant test class specific to each test file for more readability.
3600 It could be helpful to remove unnecessary static methods.
3602 * UIProcess/API/efl/tests/test_ewk2_popup_menu.cpp:
3603 (EWK2PopupMenuTest::checkBasicPopupMenuItem):
3604 (EWK2PopupMenuTest::selectItemAfterDelayed):
3605 (EWK2PopupMenuTest::showPopupMenu):
3608 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3610 [EFL][WK2] EWK2FileChooserRequestTest should be defined by inheriting from EWK2UnitTestBase.
3611 https://bugs.webkit.org/show_bug.cgi?id=118773
3613 Reviewed by Christophe Dumez.
3615 It should be defined as relevant test class specific to each test file for more readability.
3616 It could be helpful to remove unnecessary static methods.
3618 * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
3619 (EWK2FileChooserRequestTest::onFileChooserRequest):
3620 (EWK2FileChooserRequestTest::compareStrings):
3621 (EWK2FileChooserRequestTest::freeStringList):
3624 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3626 [EFL][WK2] EWK2FaviconDatabaseTest should be defined by inheriting from EWK2UnitTestBase.
3627 https://bugs.webkit.org/show_bug.cgi?id=118772
3629 Reviewed by Christophe Dumez.
3631 It should be defined as relevant test class specific to each test file for more readability.
3632 It could be helpful to remove unnecessary static methods.
3634 * UIProcess/API/efl/tests/test_ewk2_favicon_database.cpp:
3635 (EWK2FaviconDatabaseTest::serverCallback):
3636 (EWK2FaviconDatabaseTest::requestFaviconData):
3639 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3641 [EFL][WK2] EWK2EinaSharedStringTest should be defined by inheriting from EWK2UnitTestBase.
3642 https://bugs.webkit.org/show_bug.cgi?id=118771
3644 Reviewed by Christophe Dumez.
3646 It should be defined as relevant test class specific to each test file for more readability.
3647 It could be helpful to remove unnecessary static methods.
3649 * UIProcess/API/efl/tests/test_ewk2_eina_shared_string.cpp:
3650 (EWK2EinaSharedStringTest::checkString):
3653 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3655 [EFL][WK2] EWK2DownloadJobTest should be defined by inheriting from EWK2UnitTestBase.
3656 https://bugs.webkit.org/show_bug.cgi?id=118769
3658 Reviewed by Christophe Dumez.
3660 It should be defined as relevant test class specific to each test file for more readability.
3661 It could be helpful to remove unnecessary static methods.
3663 * UIProcess/API/efl/tests/test_ewk2_download_job.cpp:
3664 (EWK2DownloadJobTest::fileExists):
3665 (EWK2DownloadJobTest::serverCallback):
3666 (EWK2DownloadJobTest::on_download_requested):
3667 (EWK2DownloadJobTest::on_download_cancelled):
3668 (EWK2DownloadJobTest::on_download_failed):
3669 (EWK2DownloadJobTest::on_download_finished):
3672 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3674 [EFL][WK2] EWK2AuthRequestTest should be defined by inheriting from EWK2UnitTestBase.
3675 https://bugs.webkit.org/show_bug.cgi?id=118766
3677 Reviewed by Christophe Dumez.
3679 It should be defined as relevant test class specific to each test file for more readability.
3680 It could be helpful to remove unnecessary static methods.
3682 * UIProcess/API/efl/tests/test_ewk2_auth_request.cpp:
3683 (EWK2AuthRequestTest::serverCallback):
3684 (EWK2AuthRequestTest::onAuthenticationRequest):
3685 (EWK2AuthRequestTest::onLoadFinished):
3688 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3690 [EFL][WK2] EWK2ContextMenuTest should be defined by inheriting from EWK2UnitTestBase.
3691 https://bugs.webkit.org/show_bug.cgi?id=118767
3693 Reviewed by Christophe Dumez.
3695 It should be defined as relevant test class specific to each test file for more readability.
3696 It could be helpful to remove unnecessary static methods.
3698 * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
3699 (EWK2ContextMenuTest::checkBasicContextMenuItem):
3700 (EWK2ContextMenuTest::customItemSelected):
3701 (EWK2ContextMenuTest::showContextMenu):
3702 (EWK2ContextMenuTest::showContextMenuForRemoveAndAppend):
3703 (EWK2ContextMenuTest::showContextMenuForSubmenu):
3704 (EWK2ContextMenuTest::hideContextMenu):
3707 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3709 [EFL][WK2] EWK2ContextTest should be defined by inheriting from EWK2UnitTestBase.
3710 https://bugs.webkit.org/show_bug.cgi?id=118763
3712 Reviewed by Christophe Dumez.
3714 It should be defined as relevant test class specific to each test file for more readability.
3715 It could be helpful to remove unnecessary static methods.
3717 * UIProcess/API/efl/tests/test_ewk2_context.cpp:
3718 (EWK2ContextTest::schemeRequestCallback):
3721 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3723 [EFL][WK2] EWK2DatabaseManagerTest should be defined by inheriting from EWK2UnitTestBase
3724 https://bugs.webkit.org/show_bug.cgi?id=118726
3726 Reviewed by Christophe Dumez.
3728 It should be defined as relevant test class specific to each test file for more readability.
3729 It could be helpful to remove unnecessary static methods.
3731 * UIProcess/API/efl/tests/test_ewk2_database_manager.cpp:
3732 (EWK2DatabaseManagerTest::OriginData::OriginData):
3733 (EWK2DatabaseManagerTest::databaseOriginsCallback):
3734 (EWK2DatabaseManagerTest::timerCallback):
3737 2013-07-17 Dong-Gwan Kim <donggwan.kim@samsung.com>
3739 [EFL][WK2] EWK2ColorPickerTest should be defined by inheriting from EWK2UnitTestBase.
3740 https://bugs.webkit.org/show_bug.cgi?id=118762
3742 Reviewed by Christophe Dumez.
3744 It should be defined as relevant test class specific to each test file for more readability.
3745 It could be helpful to remove unnecessary static methods.
3747 * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
3748 (EWK2ColorPickerTest::onColorPickerDone):
3749 (EWK2ColorPickerTest::setColorPickerColor):
3750 (EWK2ColorPickerTest::showColorPicker):
3751 (EWK2ColorPickerTest::hideColorPicker):
3752 (EWK2ColorPickerTest::hideColorPickerByRemovingElement):
3755 2013-07-16 Gordon Sheridan <gordon_sheridan@apple.com>
3757 setPluginUnavailabilityReason can destroy renderObject before obscurity check
3758 https://bugs.webkit.org/show_bug.cgi?id=118770
3759 <rdar://problem/14462331>
3761 Reviewed by Tim Horton.
3763 * WebProcess/WebPage/WebPage.cpp:
3764 (WebKit::WebPage::createPlugin):
3765 Moved obscurity check to before renderObject is potentially destroyed.
3767 2013-07-16 Alexey Proskuryakov <ap@apple.com>
3769 REGRESSION (r150291): Chinese predictive input pop-up disappears on twitter.com
3770 https://bugs.webkit.org/show_bug.cgi?id=118739
3771 <rdar://problem/14300350>
3773 Reviewed by Daniel Bates.
3775 EditorState tracking on UI side is very fragile. This is a targeted fix just for
3776 this specific scenario.
3778 The issue was that we had a stale m_temporarilyClosedComposition flag, which was
3779 making UI process believe that a composition was closed from WebProcess side,
3780 and notify input method about that. It shouldn't have been a problem, because there
3781 is no composition at this point indeed, but this extra call is a problem for
3782 predictive input, which works in a somewhat unconventional way (<rdar://problem/14458297>).
3784 * UIProcess/mac/WebPageProxyMac.mm:
3785 (WebKit::WebPageProxy::insertText): Reset m_temporarilyClosedComposition flag when
3786 getting new EditorState in response to performing this action. There is certainly
3787 no composition after insertText, and all interested parties are on the same page
3790 2013-07-16 Jessie Berlin <jberlin@apple.com>
3792 Fix some NSDictionary misuse pointed out by the clang static analyzer
3793 https://bugs.webkit.org/show_bug.cgi?id=118736
3795 Reviewed by Anders Carlsson.
3797 * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
3798 (WebKit::WebEditorClient::documentFragmentFromAttributedString):
3799 Do not put a key with a nil value pair into the NSDictionary.
3801 2013-07-16 Michael Brüning <michael.bruning@digia.com>
3803 [Qt] Replace Nokia with Qt Project in service name.
3804 https://bugs.webkit.org/show_bug.cgi?id=118729
3806 Reviewed by Simon Hausmann.
3808 * UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
3809 (WebKit::ProcessLauncher::launchProcess):
3811 2013-07-16 Dong-Gwan Kim <donggwan.kim@samsung.com>
3813 EWK2BackForwardListTest should be defined by inheriting from EWK2UnitTestBase.
3814 https://bugs.webkit.org/show_bug.cgi?id=118717
3816 Reviewed by Christophe Dumez.
3818 * UIProcess/API/efl/tests/test_ewk2_back_forward_list.cpp:
3819 (EWK2BackForwardListTest::checkItem):
3820 (EWK2BackForwardListTest::urlFromTitle):
3821 (EWK2BackForwardListTest::freeEinaList):
3824 2013-07-16 Kangil Han <kangil.han@samsung.com>
3826 Use toHTMLSelectElement and dismiss isHTMLSelectElement
3827 https://bugs.webkit.org/show_bug.cgi?id=118714
3829 Reviewed by Ryosuke Niwa.
3831 To avoid direct use of static_cast, this patch introduces toHTMLIFrameElement for code cleanup.
3832 Additionally, this patch removes isHTMLSelectElement because not all element subclasses can be checked by a combination of tag names.
3834 * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
3835 (WebKit::PDFPluginChoiceAnnotation::commit):
3837 2013-07-16 Dong-Gwan Kim <donggwan.kim@samsung.com>
3839 Replace mouseClick with more meaningful method in test_ewk2_text_checker.cpp
3840 https://bugs.webkit.org/show_bug.cgi?id=118699
3842 Reviewed by Christophe Dumez.
3844 Many mouseClick methods are used in test_ewk2_text_checker.cpp.
3845 But it is difficult to understand what they mean.
3846 So i would like to replace those with more meaningful method for readability.
3848 * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
3849 (EWK2TextCheckerTest::clickSelectAllWordsWithSpellcheckButton):
3850 (EWK2TextCheckerTest::clickSelectAllWordsWithoutSpellcheckButton):
3851 (EWK2TextCheckerTest::clickSelectSubWordWithSpellcheckButton):
3852 (EWK2TextCheckerTest::showContextMenuWithFirstLineText):
3853 (EWK2TextCheckerTest::showContextMenuWithSecondLineText):
3854 (EWK2TextCheckerTest::selectFirstWordInFirstLineText):
3855 (EWK2TextCheckerTest::selectFirstWordInSecondLineText):
3858 2013-07-15 Kangil Han <kangil.han@samsung.com>
3860 Introduce toHTMLIFrameElement
3861 https://bugs.webkit.org/show_bug.cgi?id=118672
3863 Reviewed by Ryosuke Niwa.
3865 To avoid direct use of static_cast, this patch introduces toHTMLIFrameElement for code cleanup.
3867 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
3868 (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
3870 2013-07-15 Tim Horton <timothy_horton@apple.com>
3872 Update blocked/missing plug-in UI
3873 https://bugs.webkit.org/show_bug.cgi?id=118347
3874 <rdar://problem/14209318>
3876 Reviewed by Sam Weinig.
3877 Patch by Antoine Quint, Anders Carlsson, Sam Weinig, and myself.
3879 * Platform/CoreIPC/HandleMessage.h:
3880 (CoreIPC::callMemberFunction):
3881 Add a 6 argument -> 4 reply message handler.
3882 (It seems that FindPlugin is getting a little out of hand.)
3884 * Shared/APIClientTraits.cpp:
3885 * Shared/APIClientTraits.h:
3886 * UIProcess/API/C/WKPage.h:
3887 * UIProcess/WebLoaderClient.cpp:
3888 (WebKit::WebLoaderClient::pluginLoadPolicy):
3889 * UIProcess/WebLoaderClient.h:
3890 Add an unavailability description out-argument to a new version of
3891 pluginLoadPolicy, so clients can override the text of the unavailable
3892 plugin indicator. Bump the WKPageLoaderClient version and update APIClientTraits.
3894 * UIProcess/WebPageProxy.cpp:
3895 (WebKit::WebPageProxy::findPlugin):
3896 * UIProcess/WebPageProxy.h:
3897 * UIProcess/WebPageProxy.messages.in:
3898 Plumb the unavailability description through to the WebProcess via
3899 the FindPlugin message.
3901 * WebProcess/Plugins/PluginProcessConnection.cpp:
3902 (WebKit::PluginProcessConnection::didClose):
3903 Make a strongly referencing copy of the list of PluginProxies, so we can
3904 throw them away without the HashMap being mutated underneath us (see the comment).
3906 * WebProcess/Plugins/PluginView.cpp:
3907 (WebKit::PluginView::pluginProcessCrashed):
3908 Invalidate the plug-in's widget before setting the plugin unavailability reason,
3909 because doing so would cause the plug-in's renderer to be torn down, making
3912 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3913 (WebKit::WebChromeClient::shouldUnavailablePluginMessageIncludeButton):
3914 * WebProcess/WebCoreSupport/WebChromeClient.h:
3915 Rename from shouldUnavailablePluginMessageBeButton to
3916 shouldUnavailablePluginMessageIncludeButton for accuracy.
3918 * WebProcess/WebPage/WebPage.cpp:
3919 (WebKit::WebPage::createPlugin):
3920 Acquire the unavailability description from the client
3921 (via FindPlugin) and hand it to the RenderEmbeddedObject.
3922 (WebKit::WebPage::canPluginHandleResponse):
3923 Re-acquire the plugin's renderer, in case setPluginUnavailabilityReason destroyed it.
3925 2013-07-15 Simon Cooper <scooper@apple.com>
3927 PluginProcess deny file-read-data /Library/Application Support/Macromedia/FlashPlayerTrust
3928 https://bugs.webkit.org/show_bug.cgi?id=118690
3929 <rdar://problem/14255963>
3931 Reviewed by Dean Jackson.
3933 Silently deny access to FlashPlayerTrust. This location contains
3934 files containing lists of paths that Flash Player will
3935 "allow" access to (without asking the user). Since the plugin
3936 sandbox won't permit the access to the listed paths it is better
3937 to silently block attempts to read these "whitelists". The
3938 "whitelists" are created by other Adobe "installer" like
3941 * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
3943 2013-07-14 Jon Lee <jonlee@apple.com>
3945 Calling Notification.requestPermission() without a callback crashes
3946 https://bugs.webkit.org/show_bug.cgi?id=118654
3947 <rdar://problem/14293352>
3949 Reviewed by Alexey Proskuryakov.
3951 When requestPermission() is called, we short-circuit if we know the permission was already set.
3952 The callback handler gets invoked. But now that callbacks are optional, we need to check to make
3953 sure a callback was provided.
3955 * WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
3956 (WebKit::NotificationPermissionRequestManager::startRequest): Check for the callback.
3958 2013-07-15 Anton Obzhirov <a.obzhirov@samsung.com>
3960 [GTK] Remote inspector server should send an error page if resources not found
3961 https://bugs.webkit.org/show_bug.cgi?id=117137
3963 Reviewed by Gustavo Noronha Silva.
3965 Sometimes it is difficult to understand why remote inspector fails to deliver the content.
3966 This patch gives an option to show error page with some basic explanation.
3968 * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
3969 (WebKit::WebInspectorServer::platformResourceForPath):
3971 2013-07-15 Simon Pena <simon.pena@samsung.com>
3973 [GTK] [WK2] Check if the keyEventQueue is empty in WebPageProxy::getEditorCommandsForKeyEvent
3974 https://bugs.webkit.org/show_bug.cgi?id=118530
3976 Reviewed by Carlos Garcia Campos.
3978 When a key event is started in the WebProcess (e.g. in the inspector)
3979 it doesn't have an associated GdkEvent queued. Adding a check in
3980 WebPageProxy::getEditorCommandsForKeyEvent ensures there's always a queued
3981 key event to process.
3983 In GTK-WK2, inspector-protocol/input/dispatchKeyEvent.html no longer crashes once
3984 this fix is in place.
3986 * UIProcess/gtk/WebPageProxyGtk.cpp:
3987 (WebKit::WebPageProxy::getEditorCommandsForKeyEvent): Ensure m_keyEventQueue is
3990 2013-07-15 Alberto Garcia <berto@igalia.com>
3992 [WK2][GTK] SIGSEV in webkitWebViewBaseSizeAllocate
3993 https://bugs.webkit.org/show_bug.cgi?id=118052
3995 Reviewed by Carlos Garcia Campos.
3997 We don't need to check whether the drawing area is empty or not in
3998 order to set needsResizeOnMap.
4000 It can also happen that the drawing area pointer is null (if
4001 e.g. the web process crashes), which is the reason for this
4004 A test to prevent this was added in r88646 but was later moved to
4005 resizeWebKitWebViewBaseFromAllocation().
4007 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
4008 (webkitWebViewBaseSizeAllocate):
4010 2013-07-10 Roger Fong <roger_fong@apple.com>
4012 Plugins that don't support snapshotting should not all autostart.
4013 https://bugs.webkit.org/show_bug.cgi?id=118572
4014 <rdar://problem/14324391>.
4016 Reviewed by Dean Jackson.
4018 * WebProcess/Plugins/PluginView.cpp:
4019 (WebKit::PluginView::shouldNotAddLayer): This method determines whether or not we should add the plugin's layer to the tree.
4020 It should not be added if the plugin is in it's snapshotted state but does not actually support snapshotting.
4021 (WebKit::PluginView::pluginSnapshotTimerFired): If the plugin does not support snapshotting go straight
4022 to the the DisplayingSnapshot state.
4023 * WebProcess/Plugins/PluginView.h:
4025 2013-07-11 Jessie Berlin <jberlin@apple.com>
4027 WebResourceCacheManager::cfURLCacheHostNamesWithCallback leaks an array (pointed out by the
4028 clang static analyzer)
4029 https://bugs.webkit.org/show_bug.cgi?id=118533
4031 Reviewed by Anders Carlsson.
4033 * WebProcess/ResourceCache/cf/WebResourceCacheManagerCFNet.cpp:
4034 (WebKit::WebResourceCacheManager::cfURLCacheHostNamesWithCallback):
4036 2013-07-11 Sergio Correia <sergio.correia@openbossa.org>
4038 Use GOwnPtr in PluginProcessProxyUnix to manage stdOut variable
4039 https://bugs.webkit.org/show_bug.cgi?id=118568
4041 Reviewed by Martin Robinson.
4043 * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp:
4044 (WebKit::PluginProcessProxy::scanPlugin):
4046 2013-07-11 Timothy Hatcher <timothy@apple.com>
4048 Revert r152267 and soft link WebInspectorUI.framework again.
4050 https://bugs.webkit.org/show_bug.cgi?id=118544
4052 Reviewed by David Kilzer.
4054 * Configurations/WebKit2.xcconfig:
4055 * UIProcess/mac/WebInspectorProxyMac.mm:
4056 (WebKit::inspectorReallyUsesWebKitUserInterface):
4057 * WebKit2.xcodeproj/project.pbxproj:
4058 * WebProcess/WebPage/mac/WebInspectorMac.mm:
4059 (WebKit::inspectorReallyUsesWebKitUserInterface):
4061 2013-07-11 Jae Hyun Park <jae.park@company100.net>
4063 [Coordinated Graphics] Parameter of commitSceneState should be const
4064 https://bugs.webkit.org/show_bug.cgi?id=118564
4066 Reviewed by Noam Rosenthal.
4068 Parameter of commitSceneState should be const as there should not be any
4069 modifications to the passed CoordinatedGraphicsState.
4071 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
4072 (WebKit::CoordinatedLayerTreeHost::commitSceneState):
4073 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
4075 2013-07-10 Mark Rowe <mrowe@apple.com>
4077 <rdar://problem/14395759> PluginProcess sometimes logs an error about being unable to load WebKit2.framework.
4079 Reviewed by Alexey Proskuryakov.
4081 * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
4082 (WebKit::PluginProcessProxy::createPropertyListFile): Ensure that any environment variables
4083 specified in dynamic linker load commands are passed to the subprocess that we spawn to create
4084 the MIME type property list.
4086 2013-07-10 Brady Eidson <beidson@apple.com>
4088 Some Java plugin instances can deadlock with the WebProcess on NPP_Destroy.
4089 <rdar://problem/14286390> and https://bugs.webkit.org/show_bug.cgi?id=118535
4091 Reviewed by Alexey Proskuryakov.
4093 * Shared/Plugins/NPObjectProxy.cpp:
4094 (WebKit::NPObjectProxy::~NPObjectProxy): ASSERT this is the main thread.
4095 (WebKit::NPObjectProxy::NP_Deallocate): If this isn't the main thread, call it again on the main thread.
4097 2013-07-10 Sergio Correia <sergio.correia@openbossa.org>