1 2013-09-12 Anders Carlsson <andersca@apple.com>
3 SharedBuffer::createNSData should return a RetainPtr<NSData>
4 https://bugs.webkit.org/show_bug.cgi?id=121237
6 Reviewed by Darin Adler.
8 Update for WebCore changes.
10 * UIProcess/API/mac/WKView.mm:
11 (-[WKView writeSelectionToPasteboard:types:]):
12 (-[WKView _setPromisedData:WebCore::withFileName:withExtension:withTitle:withURL:withVisibleURL:withArchive:WebCore::forPasteboard:]):
13 (-[WKView namesOfPromisedFilesDroppedAtDestination:]):
15 2013-09-12 Anders Carlsson <andersca@apple.com>
17 SharedBuffer::createCFData should return RetainPtr<CFDataRef>
18 https://bugs.webkit.org/show_bug.cgi?id=121230
20 Reviewed by Darin Adler.
22 * NetworkProcess/mac/NetworkResourceLoaderMac.mm:
23 (WebKit::NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer):
24 * Shared/WebArchiveResource.cpp:
25 (WebKit::WebArchiveResource::data):
27 2013-09-12 Zalan Bujtas <zalan@apple.com>
29 REGRESSION: Inline PDF that are cached fail to appear in iframe.
30 https://bugs.webkit.org/show_bug.cgi?id=75449
32 Reviewed by Darin Adler.
34 Make sure 'frame is from page cache' flag is set for subframes too.
36 WebFrameLoaderClient::m_frameCameFromPageCache == true forces plugins
37 to be loaded manually. It ensures that the plugin raw data is fetched again
38 while the containing frame is being restored from the page cache.
39 (Plugins get destroyed when the frame goes to page cache.)
41 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
42 (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
43 This gets called only on the frame where the actual history navigation happens.
44 (WebKit::WebFrameLoaderClient::didRestoreFromPageCache):
45 This gets called for all the restored frames.
47 2013-09-11 Simon Fraser <simon.fraser@apple.com>
49 Make sure that layout is up-to-date when moving a WKView into a window, to avoid !needsLayout() assertions in RenderView::paint()
50 https://bugs.webkit.org/show_bug.cgi?id=121196
52 Reviewed by Tim Horton.
54 When a WKView was moved into a window, it was possible for us to paint
55 without ensuring that layout is up-to-date. Fix this by having
56 WebPage::setIsInWindow() update layout if we are moving to a window.
58 * WebProcess/WebPage/WebPage.cpp:
59 (WebKit::WebPage::setIsInWindow):
61 2013-09-11 Mario Sanchez Prada <mario.prada@samsung.com>
63 [GTK] Remove Gail dependency from build system for GTK3
64 https://bugs.webkit.org/show_bug.cgi?id=119673
66 Reviewed by Gustavo Noronha Silva.
68 * GNUmakefile.am: Removed GAIL_LIBS.
70 2013-09-11 Alberto Garcia <berto@igalia.com>
72 [WK2] [GTK] LayerTreeHostGtk: don't set m_isValid to false if glContext() returns null
73 https://bugs.webkit.org/show_bug.cgi?id=120892
75 Reviewed by Martin Robinson.
77 If the GL context cannot be created then m_isValid is set to false
78 during the initialization of LayerTreeHostGtk.
80 This is not really necessary since the rest of the code already
81 deals with that situation, so it doesn't have any effect other
82 than breaking the assertion in invalidate().
84 * WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:
85 (WebKit::LayerTreeHostGtk::initialize):
87 2013-09-11 Commit Queue <commit-queue@webkit.org>
89 Unreviewed, rolling out r154899.
90 http://trac.webkit.org/changeset/154899
91 https://bugs.webkit.org/show_bug.cgi?id=121162
93 It didn't fix the problem and broke other unit tests
94 (Requested by KaL on #webkit).
96 * UIProcess/API/gtk/tests/WebViewTest.cpp:
97 (WebViewTest::resizeView):
99 2013-09-11 Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com>
101 WTF::OwnPtr should behave similarly with the rest of WTF smart pointers
102 https://bugs.webkit.org/show_bug.cgi?id=120773
104 Reviewed by Anders Carlsson.
106 Before the change OwnPtr could take either the pointer type or the pointed-to type, which was bad
107 for the following reasons:
108 - It distinguished OwnPtr behaviour from other WTF smart pointer classes behaviour (so it was confusing for the Client).
109 - It was potential error-prone as it actually modified the type given by the Client in opaque way.
111 * UIProcess/API/efl/ewk_database_manager.cpp:
112 (getDatabaseOriginsCallback):
113 * UIProcess/API/efl/ewk_storage_manager.cpp:
114 (getStorageOriginsCallback):
116 2013-09-11 ChangSeok Oh <changseok.oh@collabora.com>
118 Unreviewed build fix.
120 * GNUmakefile.list.am: Duplicated NetscapePluginModuleNone.cpp & NetscapePluginNone.cpp.
121 They cause build breaks of multiple definitions when targeting wayland build.
123 2013-09-11 Gyuyoung Kim <gyuyoung.kim@samsung.com>
125 Generate more HTML type checks and casting
126 https://bugs.webkit.org/show_bug.cgi?id=121080
128 Reviewed by Andreas Kling.
130 Clean-up remained functions of HTML elements using auto-generated isFooElement(),
131 and replace toFooElement() with ELEMENT_TYPE_CASTS() macro.
133 Besides this patch clean-up unnecessary checks which are being supported by
134 auto-generated isFooElement().
136 * WebProcess/WebPage/WebFrame.cpp:
137 (WebKit::WebFrame::containsAnyFormControls):
139 2013-09-10 Marcelo Morais <m.morais@samsung.com>
141 [EFL] WebInspector: Move to new webinspector
142 https://bugs.webkit.org/show_bug.cgi?id=119559
144 Reviewed by Gyuyoung Kim.
146 Loading the new Web Inspector page instead of the old inspector.
147 Co-Author: Andre Loureiro <andre.vl@samsung.com>
149 * UIProcess/efl/WebInspectorProxyEfl.cpp:
150 (WebKit::WebInspectorProxy::inspectorPageURL):
152 2013-09-10 Sergio Villar Senin <svillar@igalia.com>
154 [WK2][GTK] Frequent crashes when showing context menus in Debug builds
155 https://bugs.webkit.org/show_bug.cgi?id=121099
157 Reviewed by Carlos Garcia Campos.
159 Disconnect signal handlers when destroying the context menu proxy
160 object. This avoids use-after-free crashes when opening several
161 context menus in a row.
163 * UIProcess/gtk/WebContextMenuProxyGtk.cpp:
164 (WebKit::WebContextMenuProxyGtk::append):
165 (WebKit::WebContextMenuProxyGtk::~WebContextMenuProxyGtk):
166 * UIProcess/gtk/WebContextMenuProxyGtk.h:
168 2013-09-10 Allan Sandfeld Jensen <allan.jensen@digia.com>
170 [Qt] make use of qtHaveModule()
171 https://bugs.webkit.org/show_bug.cgi?id=121090
173 Reviewed by Jocelyn Turcotte.
174 Patch by Oswald Buddenhagen <oswald.buddenhagen@digia.com>
176 Use qtHaveModule instead of our own haveQtModule.
180 2013-09-10 Carlos Garcia Campos <cgarcia@igalia.com>
182 [GTK] /webkit2/WebKitWebView/default-menu fails when GtkSettings:gtk-show-input-method-menu is disabled
183 https://bugs.webkit.org/show_bug.cgi?id=121088
185 Reviewed by Xan Lopez.
187 * UIProcess/API/gtk/tests/TestContextMenu.cpp: Always check
188 Unicode submenu is present in default context menu for editable
191 2013-09-09 Dean Jackson <dino@apple.com>
193 [WebGL] Allow multithreaded OpenGL contexts
194 https://bugs.webkit.org/show_bug.cgi?id=121062
196 Reviewed by Simon Fraser.
198 Expose a new preference "multithreadedWebGLEnabled".
200 * Shared/WebPreferencesStore.h:
201 * UIProcess/API/C/WKPreferences.cpp:
202 (WKPreferencesSetMultithreadedWebGLEnabled):
203 (WKPreferencesGetMultithreadedWebGLEnabled):
204 * UIProcess/API/C/WKPreferencesPrivate.h:
205 * WebProcess/WebPage/WebPage.cpp:
206 (WebKit::WebPage::updatePreferences):
209 2013-09-09 Dean Jackson <dino@apple.com>
211 Enable WebGL for OS X nightlies
212 https://bugs.webkit.org/show_bug.cgi?id=121040
214 Reviewed by Beth Dakin.
216 * Shared/WebPreferencesStore.h: Set initial value to true.
218 2013-09-08 Anders Carlsson <andersca@apple.com>
220 Begin moving off of TypeTraits.h
221 https://bugs.webkit.org/show_bug.cgi?id=121006
223 Reviewed by Darin Adler.
225 Convert uses of WTF type traits to STL type traits.
227 * Platform/CoreIPC/ArgumentCoder.h:
228 * Platform/CoreIPC/ArgumentCoders.h:
229 * Platform/CoreIPC/ArgumentDecoder.h:
230 * Platform/CoreIPC/ArgumentEncoder.h:
231 * Platform/CoreIPC/Arguments.h:
232 * Shared/API/c/WKSharedAPICast.h:
235 2013-09-09 Gustavo Noronha Silva <gns@gnome.org>
237 Unreviewed build fix.
239 * GNUmakefile.list.am: Typo - left-over \ from a copy/paste, most likely.
241 2013-09-09 Anton Obzhirov <a.obzhirov@samsung.com>
243 [GTK] Cancel the current active WebKitAuthenticationRequest on load failed
244 https://bugs.webkit.org/show_bug.cgi?id=120350
246 Reviewed by Carlos Garcia Campos.
248 The default dialog does not get closed and the authentication is not cancelled
249 if loading fails or is stopped on a page which requires HTTP authentication.
251 This patch cancels the authentication request on load failed
252 and adds new authentication cancelled signal in WebKitAuthenticationRequest
253 to allow the application handling of authentication UI.
255 * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
256 (authenticationCancelled):
257 (webkitAuthenticationDialogInitialize):
258 (webkitAuthenticationDialogDispose):
259 (webkitAuthenticationDialogNew):
260 * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
261 * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:
262 (webkit_authentication_request_class_init):
263 (webkit_authentication_request_cancel):
264 * UIProcess/API/gtk/WebKitWebView.cpp:
265 (webkitWebViewAuthenticate):
266 (webkitWebViewLoadFailed):
267 (webkitWebViewHandleAuthenticationChallenge):
268 (webkitWebViewCancelAuthenticationRequest):
269 * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
270 (testWebViewAuthenticationLoadCancelled):
273 2013-09-09 Brian Holt <brian.holt@samsung.com>
275 [GTK][WK2] Update ContextMenu Download API
276 https://bugs.webkit.org/show_bug.cgi?id=120763
278 Reviewed by Carlos Garcia Campos.
280 Mark the new Download items in the Context Menu with the Since
281 tag, and include a unit test for Context Menu audio.
283 * UIProcess/API/gtk/WebKitContextMenuActions.h:
284 * UIProcess/API/gtk/tests/TestContextMenu.cpp:
285 (testContextMenuDefaultMenu):
287 2013-09-08 Christophe Dumez <ch.dumez@sisa.samsung.com>
289 [wk2] REGRESSION (r154673): PDF scrolling moves very slowly
290 https://bugs.webkit.org/show_bug.cgi?id=120542
292 Reviewed by Tim Horton.
294 Handle 'wheel' events in addition to 'mousewheel'. This fixes
297 * WebProcess/Plugins/PluginView.cpp:
298 (WebKit::PluginView::handleEvent):
300 2013-09-08 Anders Carlsson <andersca@apple.com>
302 Move WTF::notFound to Vector.h and delete NotFound.h
303 https://bugs.webkit.org/show_bug.cgi?id=120990
305 Reviewed by Sam Weinig.
307 * Shared/EditorState.h:
309 2013-09-07 Anders Carlsson <andersca@apple.com>
311 Get rid of PassOwnArrayPtr
312 https://bugs.webkit.org/show_bug.cgi?id=120964
314 Reviewed by Andreas Kling.
316 Remove unneeded includes.
318 * Shared/ImmutableArray.h:
319 * WebProcess/InjectedBundle/InjectedBundle.cpp:
321 2013-09-06 Ryosuke Niwa <rniwa@webkit.org>
323 Range::ownerDocument should return Document&
324 https://bugs.webkit.org/show_bug.cgi?id=120908
326 Reviewed by Andreas Kling.
328 * WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
329 (-[WKDOMRange textRects]):
331 2013-09-05 Ryuan Choi <ryuan.choi@samsung.com>
333 [CMAKE] Add c++0x into CXX_FLAGS as a default
334 https://bugs.webkit.org/show_bug.cgi?id=120812
336 Unreviewed build fix for EFL ports.
338 * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h: Added constexpr for in-class initialization.
339 * UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestEnvironment.cpp: Added space between strings.
340 (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTestPageUrl):
341 (EWK2UnitTest::EWK2UnitTestEnvironment::defaultTheme):
342 (EWK2UnitTest::EWK2UnitTestEnvironment::urlForResource):
344 2013-09-05 Alexey Proskuryakov <ap@apple.com>
346 WKFullScreenWindowController extends lifetime of WKView, deleting it at a wrong time
347 https://bugs.webkit.org/show_bug.cgi?id=120792
348 <rdar://problem/14884666>
350 Reviewed by Jer Noble.
352 * UIProcess/API/mac/WKView.mm: (-[WKView fullScreenWindowController]):
353 Use a newly minted initializer for the controller.
355 * UIProcess/mac/WKFullScreenWindowController.h: Removed unused web view accessors.
356 Changed the class to take web view at initialization time.
358 * UIProcess/mac/WKFullScreenWindowController.mm:
359 (-[WKFullScreenWindowController initWithWindow:webView:]): Initialize the controller
361 (-[WKFullScreenWindowController dealloc]): WebView is now a raw pointer, no need
363 (-[WKFullScreenWindowController close]): Make sure to not leave a dangling WKView
364 pointer (this method is indirectly but inevitably called when WKView is deallocated).
366 2013-09-05 Anders Carlsson <andersca@apple.com>
368 Replace uses of CLANG_PRAGMA with #pragma
370 Rubber-stamped by Andreas Kling.
372 This file is only compiled by clang anyway.
374 * WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
375 (WebKit::InjectedBundle::load):
377 2013-09-05 Anders Carlsson <andersca@apple.com>
379 GCAssertions.h should use STL type traits and static_assert
380 https://bugs.webkit.org/show_bug.cgi?id=120785
382 Reviewed by Andreas Kling.
384 Update for JavaScriptCore changes.
386 * WebProcess/Plugins/Netscape/JSNPMethod.cpp:
388 2013-09-05 Alberto Garcia <berto@igalia.com>
390 [WK2] [GTK] Remove the test to disable AC under Wayland from WebKitWebViewGroup
391 https://bugs.webkit.org/show_bug.cgi?id=120762
393 Reviewed by Gustavo Noronha Silva.
395 The code to disable AC under Wayland is not run if we're using
396 WebKitTestRunner, so it would be better to move it to
399 However it's not really necessary to do that, instead it's much
400 simpler to disable accelerated compositing in all cases unless we
401 know we can support it.
403 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
404 (webkitWebViewBaseUpdatePreferences):
405 * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
406 (webkitWebViewGroupAttachSettingsToPageGroup):
408 2013-09-04 Alberto Garcia <berto@igalia.com>
410 [WK2][GTK] ASSERTION in WebKit::LayerTreeHostGtk::invalidate
411 https://bugs.webkit.org/show_bug.cgi?id=117733
413 Reviewed by Martin Robinson.
415 If the GL context cannot be created then an invalid
416 LayerTreeHostGtk object will be returned.
418 This patch disables accelerated compositing if the system doesn't
421 * UIProcess/API/gtk/WebKitWebView.cpp:
422 (webkitWebViewUpdateSettings):
423 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
424 (webkitWebViewBaseUpdatePreferences):
425 (webkitWebViewBaseCreateWebPage):
426 * UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
428 2013-09-04 Commit Queue <commit-queue@webkit.org>
430 Unreviewed, rolling out r154989.
431 http://trac.webkit.org/changeset/154989
432 https://bugs.webkit.org/show_bug.cgi?id=120678
434 This patch might broke apps using webkitgtk not from the main
435 thread (Requested by msanchez on #webkit).
437 * UIProcess/API/gtk/WebKitWebView.cpp:
438 (webkitWebViewRunAsModal):
439 * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
440 (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
442 2013-09-04 Zan Dobersek <zdobersek@igalia.com>
444 [GTK] Add support for the Wayland build target
445 https://bugs.webkit.org/show_bug.cgi?id=120627
447 Reviewed by Gustavo Noronha Silva.
449 * GNUmakefile.list.am: Build X11-specific NetscapePluginModule and NetscapePlugin classes if building the X11 target,
450 fall back to the generic, empty classes otherwise.
451 * PluginProcess/unix/PluginProcessMainUnix.cpp:
452 (WebKit::PluginProcessMainUnix): Guard the NetscapePluginModule::scanPlugin() invocation with PLUGIN_ARCHITECTURE(X11),
453 it's at the moment specific to the X11 implementation of the Netscape plugins.
454 * UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp: Guard PluginProcessProxy::scanPlugin() with PLUGIN_ARCHITECTURE(X11),
455 just like it's guarded in the PluginProcessProxy class declaration.
456 * UIProcess/cairo/BackingStoreCairo.cpp: Additionally guard <gdk/gdkx.h> and WidgetBackingStoreGtkX11 inclusion and use
457 with PLATFORM(X11), this code should only be built when building the X11 target.
458 (WebKit::createBackingStoreForGTK):
459 * UIProcess/gtk/WebPageProxyGtk.cpp: Guard the createPluginContainer() and windowedPluginGeometryDidChange() methods and their
460 helper functions and objects with PLUGIN_ARCHITECTURE(X11), just like they're guarded in the WebPageProxy class declaration.
461 * config.h: Only define PLUGIN_ARCHITECTURE_X11 to 1 if we're actually building the X11 target.
463 2013-09-03 Darin Adler <darin@apple.com>
465 REGRESSION (r154967) window resize is very choppy
466 https://bugs.webkit.org/show_bug.cgi?id=120653
468 Reviewed by Andreas Kling.
470 Andreas Kling spotted the bad change.
472 * Platform/CoreIPC/Connection.cpp:
473 (CoreIPC::Connection::waitForMessage): Roll out this incorrect change.
474 The code here is not the same as a call to take.
476 2013-09-03 Anton Obzhirov <a.obzhirov@samsung.com>
478 [GTK] gdk threads deprecated functions calls should be refactored
479 https://bugs.webkit.org/show_bug.cgi?id=120070
481 Reviewed by Mario Sanchez Prada.
483 Removed deprecated functions gdk_threads_leave()/gdk_threads_enter() functions since
484 there is no more checks for threads lock in GTK 3.6.
486 * UIProcess/API/gtk/WebKitWebView.cpp:
487 (webkitWebViewRunAsModal):
488 * UIProcess/gtk/WebPopupMenuProxyGtk.cpp:
489 (WebKit::WebPopupMenuProxyGtk::showPopupMenu):
491 2013-09-03 Brian Holt <brian.holt@samsung.com>
493 [GTK] [WK2] TestContextMenu default-menu fails
494 https://bugs.webkit.org/show_bug.cgi?id=120459
496 Reviewed by Gustavo Noronha Silva.
498 Add context menu items for downloading media elements.
500 * UIProcess/API/gtk/WebKitContextMenuActions.cpp:
501 (webkitContextMenuActionGetActionTag):
502 (webkitContextMenuActionGetForContextMenuItem):
503 (webkitContextMenuActionGetLabel):
504 * UIProcess/API/gtk/WebKitContextMenuActions.h:
505 * UIProcess/API/gtk/tests/TestContextMenu.cpp:
507 2013-09-02 Darin Adler <darin@apple.com>
509 Cut down on double hashing and code needlessly using hash table iterators
510 https://bugs.webkit.org/show_bug.cgi?id=120611
512 Reviewed by Andreas Kling.
514 * Platform/CoreIPC/Connection.cpp:
515 (CoreIPC::Connection::waitForMessage): Use take instead of find/remove.
517 * UIProcess/WebPreferences.cpp:
518 (WebKit::WebPreferences::removePageGroup): Use the return value from remove
519 instead of find/remove.
521 * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
522 (WebKit::GeolocationPermissionRequestManager::cancelRequestForGeolocation):
523 (WebKit::GeolocationPermissionRequestManager::didReceiveGeolocationPermissionDecision):
524 Use take instead of find/remove.
526 * WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
527 (WebKit::NetscapePlugin::frameDidFinishLoading): Use take instead of find/remove.
528 (WebKit::NetscapePlugin::frameDidFail): Use take instead of find/remove.
530 * WebProcess/WebPage/WebBackForwardListProxy.cpp:
531 (WebKit::WebBackForwardListProxy::removeItem): Use take instead of find/remove.
533 * WebProcess/WebPage/WebPage.cpp:
534 (WebKit::WebPage::didFinishCheckingText): Use take instead of get/remove so we
536 (WebKit::WebPage::didCancelCheckingText): Ditto.
537 (WebKit::WebPage::stopExtendingIncrementalRenderingSuppression): Use the return
538 value from remove instead of contains/remove so we hash only once.
540 2013-09-02 Darin Adler <darin@apple.com>
542 [Mac] No need for HardAutorelease, which is same as CFBridgingRelease
543 https://bugs.webkit.org/show_bug.cgi?id=120569
545 Reviewed by Andy Estes.
547 * Platform/mac/StringUtilities.mm:
548 (WebKit::nsStringFromWebCoreString): Use CFBridgingRelease. Also
549 changed condition to be a little cleaner and use a constant string for empty
550 strings as well as null strings.
552 * UIProcess/API/mac/WKBrowsingContextController.mm:
553 (autoreleased): Switched from autorelease to CFBridgingRelease for strings,
554 which eliminates a type cast and makes this work under GC, although I don't
555 think we should compile WebKit2 for GC.
557 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
558 (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
559 Use CFBridgingRelease.
561 2013-09-02 Csaba Osztrogonác <ossy@webkit.org>
563 REGRESSION(r154909): caused many crashes on Qt WK2, EFL WK2
564 https://bugs.webkit.org/show_bug.cgi?id=120600
566 Reviewed by Andreas Kling.
568 * Shared/CoordinatedGraphics/CoordinatedGraphicsArgumentCoders.cpp:
569 (CoreIPC::::decode): keyTime should be double here too.
571 2013-09-01 Alexey Proskuryakov <ap@apple.com>
573 [WK2][Mac] Drag and drop tests interfere with user's UI
574 https://bugs.webkit.org/show_bug.cgi?id=120538
576 Reviewed by Dan Bernstein.
578 * UIProcess/API/mac/WKView.mm: (-[WKView _setDragImage:at:linkDrag:]): Make it possible
579 to override drag initiation in subclasses. It is a bit unfortunate that this exposes
580 a deprecated API that we call, but probably not unfortunate enough to invent a new
581 scary looking name for the same function, and conditionally call that if implemented
584 2013-08-31 Santosh Mahto <santosh.ma@samsung.com>
586 warning: unused parameter point and area in EwkView.cpp:1390
587 https://bugs.webkit.org/show_bug.cgi?id=120545
589 Reviewed by Darin Adler.
591 * UIProcess/API/efl/EwkView.cpp:
592 (EwkView::didFindZoomableArea): Added UNUSED_PARAM.
594 2013-08-31 Jae Hyun Park <jae.park@company100.net>
596 Remove unused variable in LayerTreeHost
597 https://bugs.webkit.org/show_bug.cgi?id=118950
599 Reviewed by Anders Carlsson.
601 m_waitingForUIProcess has been renamed to m_isWaitingForRenderer as of
602 r152183, and it is a private variable in CoordinatedLayerTreeHost. Thus,
603 we don't need m_waitingForUIProcess in LayerTreeHost.
605 * WebProcess/WebPage/LayerTreeHost.h:
607 2013-08-30 Brian Holt <brian.holt@samsung.com>
609 [GTK] [WK2] TestWebKitWebView snapshot fails
610 https://bugs.webkit.org/show_bug.cgi?id=120404
612 Reviewed by Darin Adler.
614 Fixed the snapshot test failure caused by GTK no longer allowing
615 widgets to resize. Instead, resize the WebView by resizing the
616 window and waiting for the event to complete asynchronously.
618 * UIProcess/API/gtk/tests/WebViewTest.cpp:
619 (WebViewTest::resizeView):
621 2013-08-30 Csaba Osztrogonác <ossy@webkit.org>
623 Add USE(PROTECTION_SPACE_AUTH_CALLBACK) guards to canAuthenticateAgainstProtectionSpace()
624 https://bugs.webkit.org/show_bug.cgi?id=120351
626 Reviewed by Darin Adler.
628 * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
629 * NetworkProcess/AsynchronousNetworkLoaderClient.h:
630 * NetworkProcess/NetworkLoaderClient.h:
631 * NetworkProcess/SynchronousNetworkLoaderClient.cpp:
632 * NetworkProcess/SynchronousNetworkLoaderClient.h:
634 2013-08-30 Gabor Abraham <abrhm@inf.u-szeged.hu>
636 Fix, remove unused parameter in UIProcess/WebColorPicker.cpp.
637 https://bugs.webkit.org/show_bug.cgi?id=120525
639 Reviewed by Darin Adler.
641 * UIProcess/WebColorPicker.cpp:
642 (WebKit::WebColorPicker::showColorPicker):
644 2013-08-30 Tamas Czene <tczene@inf.u-szeged.hu>
646 Resolve unused parameter warning in WebPlatformStrategies.cpp
647 https://bugs.webkit.org/show_bug.cgi?id=120515
649 Reviewed by Darin Adler.
651 * WebProcess/WebPage/TapHighlightController.cpp:
652 (WebKit::TapHighlightController::drawRect):
654 2013-08-30 Tamas Czene <tczene@inf.u-szeged.hu>
656 Resolve unused parameter warning in FindController.cpp
657 https://bugs.webkit.org/show_bug.cgi?id=120516
659 Reviewed by Darin Adler.
661 * WebProcess/WebPage/FindController.cpp:
662 (WebKit::FindController::drawRect):
664 2013-08-30 Tamas Czene <tczene@inf.u-szeged.hu>
666 Resolve unused parameter warning in WKBundlePageOverlay.cpp
667 https://bugs.webkit.org/show_bug.cgi?id=120521
669 Reviewed by Andreas Kling.
671 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
672 (WKBundlePageOverlayFractionFadedIn):
674 2013-08-30 Antti Koivisto <antti@apple.com>
676 Remove code behind ENABLE(DIALOG_ELEMENT)
677 https://bugs.webkit.org/show_bug.cgi?id=120467
679 Reviewed by Darin Adler.
681 * Configurations/FeatureDefines.xcconfig:
683 2013-08-29 Sam Weinig <sam@webkit.org>
685 Add ENABLE gaurds for Promises
686 https://bugs.webkit.org/show_bug.cgi?id=120488
688 Reviewed by Andreas Kling.
690 * Configurations/FeatureDefines.xcconfig:
692 2013-08-29 Zan Dobersek <zdobersek@igalia.com>
694 [Automake] libWebCoreDOM.la could use a better name
695 https://bugs.webkit.org/show_bug.cgi?id=120232
697 Reviewed by Martin Robinson.
699 * GNUmakefile.am: libWebCoreDOM has a new name - libGObjectDOMBindings.
701 2013-08-29 Joseph Pecoraro <pecoraro@apple.com>
703 Web Inspector: Download Web Archive of Inspected Page
704 https://bugs.webkit.org/show_bug.cgi?id=119774
706 Reviewed by Timothy Hatcher.
708 Update to support InspectorFrontendHost.save's new base64Encoded
709 parameter. It means the incoming content is binary data, not a string.
711 * UIProcess/WebInspectorProxy.cpp:
712 (WebKit::WebInspectorProxy::save):
713 * UIProcess/WebInspectorProxy.h:
714 * UIProcess/WebInspectorProxy.messages.in:
715 * UIProcess/efl/WebInspectorProxyEfl.cpp:
716 (WebKit::WebInspectorProxy::platformSave):
717 * UIProcess/gtk/WebInspectorProxyGtk.cpp:
718 (WebKit::WebInspectorProxy::platformSave):
719 * UIProcess/mac/WebInspectorProxyMac.mm:
720 (WebKit::WebInspectorProxy::platformSave):
721 * UIProcess/qt/WebInspectorProxyQt.cpp:
722 (WebKit::WebInspectorProxy::platformSave):
723 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
724 (WebKit::WebInspectorFrontendClient::save):
725 * WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
726 * WebProcess/WebPage/WebInspector.cpp:
727 (WebKit::WebInspector::save):
728 * WebProcess/WebPage/WebInspector.h:
730 2013-08-29 Brian Holt <brian.holt@samsung.com>
732 [GTK] [WK2] TestWebKitWebView page-visibility fails
733 https://bugs.webkit.org/show_bug.cgi?id=120406
735 Reviewed by Gustavo Noronha Silva.
737 Removed the webkit prefix for document visibility properties.
739 * UIProcess/API/gtk/tests/TestWebKitWebView.cpp:
740 (testWebViewPageVisibility):
742 2013-08-28 Chris Curtis <chris_curtis@apple.com>
744 https://bugs.webkit.org/show_bug.cgi?id=119548
745 Refactoring Exception throws.
747 Reviewed by Geoffrey Garen.
749 Moved setting an exception into the vm, These functions changed to use the new functionality.
751 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
752 (WebKit::JSNPObject::callMethod):
753 (WebKit::JSNPObject::callObject):
754 (WebKit::JSNPObject::callConstructor):
755 (WebKit::JSNPObject::throwInvalidAccessError):
756 * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
757 (WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
759 2013-08-28 Anders Carlsson <andersca@apple.com>
761 Allow the Flash plug-in to open its preference pane
762 https://bugs.webkit.org/show_bug.cgi?id=120431
763 <rdar://problem/14857039>
765 Reviewed by Andreas Kling.
767 Forward the -[NSWorkspace openFile:] call to the UI process and allow opening
768 the Flash preference pane (if Flash asks for it).
770 * PluginProcess/PluginProcess.h:
771 * PluginProcess/mac/PluginProcessMac.mm:
772 (WebKit::replacedNSWorkspace_openFile):
773 (WebKit::initializeCocoaOverrides):
774 (WebKit::PluginProcess::openFile):
775 * UIProcess/Plugins/PluginProcessProxy.h:
776 * UIProcess/Plugins/PluginProcessProxy.messages.in:
777 * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
778 (WebKit::PluginProcessProxy::openURL):
779 (WebKit::shouldOpenFile):
780 (WebKit::PluginProcessProxy::openFile):
782 2013-08-28 Tamas Czene <tczene@inf.u-szeged.hu>
784 [wk2] Resolve unused parameters in WebPlatformStrategies.cpp
785 https://bugs.webkit.org/show_bug.cgi?id=120410
787 Reviewed by Darin Adler.
789 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
790 (WebKit::WebPlatformStrategies::getPluginInfo):
791 (WebKit::WebPlatformStrategies::transientLocalStorageNamespace):
793 2013-08-28 Tamas Czene <tczene@inf.u-szeged.hu>
795 [wk2] Resolve unused parameter warnings in the WebProcess.cpp
796 https://bugs.webkit.org/show_bug.cgi?id=120412
798 Reviewed by Darin Adler.
800 * WebProcess/WebProcess.cpp:
801 (WebKit::WebProcess::startMemorySampler):
803 2013-08-28 Darin Adler <darin@apple.com>
805 Eliminate Pasteboard::generalPasteboard
806 https://bugs.webkit.org/show_bug.cgi?id=120392
808 Reviewed by Anders Carlsson.
810 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
811 (WebKit::WebEditorClient::updateGlobalSelection):
812 Use createForGlobalSelection instead of generalPasteboard and setSelectionMode.
814 2013-08-28 Ábrahám Gábor <abrhm@inf.u-szeged.hu>
816 Fix unused variable warning.
817 https://bugs.webkit.org/show_bug.cgi?id=120396
819 Reviewed by Allan Sandfeld Jensen.
821 Fix unused variable compiler warning in PageOverlay.h
823 * WebProcess/WebPage/PageOverlay.h:
824 (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
825 (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
828 2013-08-28 Zan Dobersek <zdobersek@igalia.com>
830 [GTK][WK2] Only set up a RedirectedXCompositeWindow if running under an X11 display
831 https://bugs.webkit.org/show_bug.cgi?id=120321
833 Reviewed by Gustavo Noronha Silva.
835 Only set up the RedirectedXCompositeWindow member of the WebKitWebViewBasePrivate struct
836 if we're running under an X11 display. This is now done in the webkitWebViewBaseConstructed
837 function rather than the constructor, which is removed.
839 This allows for the UIProcess to run in a Wayland environment even when built with accelerated
840 compositing enabled. Of course, at the moment there's no support yet for accelerated compositing
841 under Wayland, so we fall back to rendering the backing store. No changes are introduced to
842 the behavior under X11 - accelerated compositing will be used where possible, if supported.
844 * UIProcess/API/gtk/WebKitWebViewBase.cpp:
845 (webkitWebViewBaseConstructed):
847 2013-08-28 Zan Dobersek <zdobersek@igalia.com>
849 [GTK][WK2] Disable accelerated compositing under Wayland
850 https://bugs.webkit.org/show_bug.cgi?id=120347
852 Reviewed by Martin Robinson.
854 Accelerated compositing is not yet supported under the Wayland display protocol,
855 so it should be disabled. Since it is enabled by default and the GTK WK2 API does
856 not provide any way to change that, it's enough to disable it when attaching the
857 WebKitSettings object to the WebPageGroup if running under Wayland.
859 * UIProcess/API/gtk/WebKitWebViewGroup.cpp:
860 (webkitWebViewGroupAttachSettingsToPageGroup):
862 2013-08-28 Alexandre Abreu <alexandre.abreu@canonical.com>
864 Add a 'isMainFrame' parameter to QWebNavigationRequest.
865 https://bugs.webkit.org/show_bug.cgi?id=118860
867 Reviewed by Simon Hausmann.
869 * UIProcess/API/qt/qwebnavigationrequest.cpp:
870 (QWebNavigationRequestPrivate::QWebNavigationRequestPrivate):
871 (QWebNavigationRequest::QWebNavigationRequest):
872 (QWebNavigationRequest::navigationType):
873 (QWebNavigationRequest::isMainFrame):
874 * UIProcess/API/qt/qwebnavigationrequest_p.h:
875 * UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp:
876 * UIProcess/qt/QtWebPagePolicyClient.cpp:
877 (WebKit::QtWebPagePolicyClient::decidePolicyForNavigationAction):
878 * UIProcess/qt/QtWebPagePolicyClient.h:
880 2013-08-27 Luciano Wolf <luciano.wolf@openbossa.org>
882 100% cpu usage for "transition: opacity" animation
883 https://bugs.webkit.org/show_bug.cgi?id=120012
885 Reviewed by Noam Rosenthal.
887 Schedule animation timer after scheduling a layer flush. This way it
888 won't overwrite animation timer with "0", thus avoiding 100% cpu usage.
890 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
891 (WebKit::CoordinatedLayerTreeHost::scheduleAnimation):
893 2013-08-27 Csaba Osztrogonác <ossy@webkit.org>
895 [WK2][Soup] Add WebFrameNetworkingContext::webFrameLoaderClient() after r154490
896 https://bugs.webkit.org/show_bug.cgi?id=120353
898 Reviewed by Alexey Proskuryakov.
900 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
901 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
902 (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
903 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
905 2013-08-26 Santosh Mahto <santosh.ma@samsung.com>
907 Fixing compilation warning "unused parameter" in WebPageProxy.cpp
908 https://bugs.webkit.org/show_bug.cgi?id=120205
910 Reviewed by Anders Carlsson.
912 * UIProcess/WebPageProxy.cpp:
913 (WebKit::WebPageProxy::findPlugin):
914 (WebKit::WebPageProxy::didBlockInsecurePluginVersion):
915 Added UNUSED_PARAM to avoid warning.
917 2013-08-23 Andy Estes <aestes@apple.com>
919 Fix issues found by the Clang Static Analyzer
920 https://bugs.webkit.org/show_bug.cgi?id=120230
922 Reviewed by Darin Adler.
924 * UIProcess/API/mac/WKBrowsingContextController.mm:
925 (autoreleased): Don't leak CFURLs when in Objective-C GC.
926 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
927 (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
928 Don't leak CFStrings when in Objective-C GC.
930 2013-08-26 Csaba Osztrogonác <ossy@webkit.org>
932 [WK2] Buildfix for non Mac platforms
933 https://bugs.webkit.org/show_bug.cgi?id=120294
935 Reviewed by Darin Adler.
937 * NetworkProcess/AsynchronousNetworkLoaderClient.cpp:
938 (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
939 * NetworkProcess/NetworkResourceLoader.h:
941 2013-08-26 Alexey Proskuryakov <ap@apple.com>
943 [Mac] can-read-in-dragstart-event.html and can-read-in-copy-and-cut-events.html fail
944 https://bugs.webkit.org/show_bug.cgi?id=113094
946 Reviewed by Darin Adler.
948 Return new pasteboard change count from all functions that change it.
950 * UIProcess/WebContext.h:
951 * UIProcess/WebContext.messages.in:
952 * UIProcess/mac/WebContextMac.mm:
953 (WebKit::WebContext::pasteboardCopy):
954 (WebKit::WebContext::addPasteboardTypes):
955 (WebKit::WebContext::setPasteboardTypes):
956 (WebKit::WebContext::setPasteboardPathnamesForType):
957 (WebKit::WebContext::setPasteboardStringForType):
958 (WebKit::WebContext::setPasteboardBufferForType):
959 * WebProcess/Plugins/PDF/PDFPlugin.mm:
960 (WebKit::PDFPlugin::writeItemsToPasteboard):
961 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
962 (WebKit::WebPlatformStrategies::copy):
963 (WebKit::WebPlatformStrategies::changeCount):
964 (WebKit::WebPlatformStrategies::addTypes):
965 (WebKit::WebPlatformStrategies::setTypes):
966 (WebKit::WebPlatformStrategies::setBufferForType):
967 (WebKit::WebPlatformStrategies::setPathnamesForType):
968 (WebKit::WebPlatformStrategies::setStringForType):
969 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
971 2013-08-26 Andreas Kling <akling@apple.com>
973 Unreviewed build fix.
975 * WebProcess/WebPage/WebFrame.cpp:
976 (WebKit::WebFrame::createWithCoreMainFrame):
977 (WebKit::WebFrame::createSubframe):
979 2013-08-26 Pratik Solanki <psolanki@apple.com>
981 PageGroup::groupSettings() should return a reference
982 https://bugs.webkit.org/show_bug.cgi?id=120319
984 Reviewed by Andreas Kling.
986 PageGroup::m_groupSettings is never NULL so we can just return a reference from groupSettings().
988 * WebProcess/Storage/StorageNamespaceImpl.cpp:
989 (WebKit::StorageNamespaceImpl::createLocalStorageNamespace):
991 2013-08-26 Andreas Kling <akling@apple.com>
993 WebCore: Let Page create the main Frame.
994 <https://webkit.org/b/119964>
996 Reviewed by Anders Carlsson.
998 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
999 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1000 (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
1002 This starts out with a null WebFrame* pointer now.
1004 (WebKit::WebFrameLoaderClient::setWebFrame):
1006 WebFrame hooks itself up through this as soon as it's constructed.
1008 (WebKit::WebFrameLoaderClient::frameLoaderDestroyed):
1010 Tweak an out-of-date comment. The ref() we're balancing out comes from
1013 * WebProcess/WebPage/WebFrame.cpp:
1014 (WebKit::WebFrame::createWithCoreMainFrame):
1016 Rewrote createMainFrame() as createWithCoreMainFrame(). The new method wraps
1017 an existing WebCore::Frame instead of creating a new one.
1019 (WebKit::WebFrame::createSubframe):
1021 Merged WebFrame::init() into here since the logic isn't shared with main
1022 Frame creation anymore.
1024 (WebKit::WebFrame::create):
1025 (WebKit::WebFrame::WebFrame):
1027 Call WebFrameLoaderClient::setWebFrame(this).
1029 * WebProcess/WebPage/WebFrame.h:
1031 WebFrame::m_frameLoaderClient is now an OwnPtr rather than an inline member.
1032 This way it can be created before the WebFrame.
1034 * WebProcess/WebPage/WebPage.cpp:
1035 (WebKit::WebPage::WebPage):
1037 Set up a WebFrameLoaderClient and pass it to the Page constructor along with
1038 the other PageClients.
1040 2013-08-24 Carlos Garcia Campos <cgarcia@igalia.com>
1042 [GTK] Add WebKit2 API for isolated worlds
1043 https://bugs.webkit.org/show_bug.cgi?id=103377
1045 Reviewed by Anders Carlsson.
1047 * GNUmakefile.list.am: Add new files to compilation.
1048 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
1049 * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
1050 (testWebExtensionWindowObjectCleared):
1051 (scriptDialogCallback):
1052 (runJavaScriptInIsolatedWorldFinishedCallback):
1053 (testWebExtensionIsolatedWorld):
1055 * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
1057 (windowObjectCleared):
1059 (methodCallCallback):
1060 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
1061 (webkit_frame_get_javascript_context_for_script_world): New public
1062 method to tget the JavaScript execution context for a given script
1064 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
1065 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
1066 (scriptWorlds): Global WebKitScriptWorld map.
1067 (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
1068 (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
1069 given injected bundle script world.
1070 (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
1071 bundle script world wrapped by the given WebKitScriptWorld.
1072 (webkitScriptWorldWindowObjectCleared): Emit
1073 WebKitScriptWorld::window-object-cleared signal.
1074 (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
1075 the given injected bundle script world.
1076 (createDefaultScriptWorld): Create the default WebKitScriptWorld
1077 wrapping the normal world.
1078 (webkit_script_world_get_default): Return the default WebKitScriptWorld.
1079 (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
1080 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
1081 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
1082 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1083 (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
1084 (webkitWebPageCreate): Add implementation for callback
1085 didClearWindowObjectForFrame in injected bundle loader client.
1086 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1087 Include WebKitScriptWorld.h.
1089 2013-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
1091 [WebKit2] Offsets for WKBundlePageLoaderClient in APIClientTraits are wrong
1092 https://bugs.webkit.org/show_bug.cgi?id=120268
1094 Reviewed by Anders Carlsson.
1096 * Shared/APIClientTraits.cpp: Use always the first member of every
1097 version as the offset of the version.
1099 2013-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
1101 [GTK] Add missing initializer for pluginLoadPolicy in WKPageLoaderClient
1102 https://bugs.webkit.org/show_bug.cgi?id=120289
1104 Reviewed by Philippe Normand.
1106 * UIProcess/API/gtk/WebKitLoaderClient.cpp:
1107 (attachLoaderClientToView): Add initializer for pluginLoadPolicy
1108 and rename the comment of the previous one as
1109 pluginLoadPolicy_deprecatedForUseWithV2.
1111 2013-08-26 Carlos Garcia Campos <cgarcia@igalia.com>
1113 [GTK] webkitCredentialGetCredential returns a temporary in g_return_val_if_fail
1114 https://bugs.webkit.org/show_bug.cgi?id=120287
1116 Reviewed by Philippe Normand.
1118 * UIProcess/API/gtk/WebKitCredential.cpp:
1119 (webkitCredentialGetCredential): Use ASSERT() instead of
1120 g_return_val_if_fail() since this is a private function.
1122 2013-08-25 Zan Dobersek <zdobersek@igalia.com>
1124 Unreviewed GTK build fix after r154565.
1126 * UIProcess/API/gtk/tests/TestInspector.cpp: Include the Vector header.
1127 * UIProcess/API/gtk/tests/TestResources.cpp: Ditto.
1129 2013-08-24 Darin Adler <darin@apple.com>
1131 Frame::tree should return a reference instead of a pointer
1132 https://bugs.webkit.org/show_bug.cgi?id=120259
1134 Reviewed by Andreas Kling.
1136 * WebProcess/Plugins/PluginView.cpp:
1137 (WebKit::PluginView::performJavaScriptURLRequest):
1138 * WebProcess/Storage/StorageAreaMap.cpp:
1139 (WebKit::StorageAreaMap::dispatchSessionStorageEvent):
1140 (WebKit::StorageAreaMap::dispatchLocalStorageEvent):
1141 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1142 (WebKit::WebFrameLoaderClient::createFrame):
1143 * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
1144 (WebKit::WebContextMenuClient::searchWithSpotlight):
1145 * WebProcess/WebPage/FindController.cpp:
1146 (WebKit::frameWithSelection):
1147 (WebKit::FindController::rectsForTextMatches):
1148 * WebProcess/WebPage/WebFrame.cpp:
1149 (WebKit::WebFrame::init):
1150 (WebKit::WebFrame::contentsAsString):
1151 (WebKit::WebFrame::name):
1152 (WebKit::WebFrame::childFrames):
1153 * WebProcess/WebPage/WebPage.cpp:
1154 (WebKit::WebPage::clearMainFrameName):
1155 (WebKit::WebPage::setDrawsBackground):
1156 (WebKit::WebPage::setDrawsTransparentBackground):
1157 (WebKit::WebPage::setWindowResizerSize):
1158 (WebKit::frameWithSelection):
1159 (WebKit::WebPage::unmarkAllMisspellings):
1160 (WebKit::WebPage::unmarkAllBadGrammar):
1161 (WebKit::pageContainsAnyHorizontalScrollbars):
1162 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
1163 (WebKit::TiledCoreAnimationDrawingArea::forceRepaint):
1164 Use tree(). instead of tree()->.
1166 2013-08-24 Commit Queue <commit-queue@webkit.org>
1168 Unreviewed, rolling out r154545.
1169 http://trac.webkit.org/changeset/154545
1170 https://bugs.webkit.org/show_bug.cgi?id=120252
1172 Broke WebKit2 API tests (Requested by andersca on #webkit).
1174 * GNUmakefile.list.am:
1175 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
1176 * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
1178 * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
1179 (methodCallCallback):
1180 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
1181 (webkit_frame_get_javascript_global_context):
1182 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
1183 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Removed.
1184 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Removed.
1185 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Removed.
1186 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1187 (webkitWebPageCreate):
1188 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1190 2013-08-24 Carlos Garcia Campos <cgarcia@igalia.com>
1192 [GTK] Add WebKit2 API for isolated worlds
1193 https://bugs.webkit.org/show_bug.cgi?id=103377
1195 Reviewed by Anders Carlsson.
1197 * GNUmakefile.list.am: Add new files to compilation.
1198 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
1199 * UIProcess/API/gtk/tests/TestWebExtensions.cpp:
1200 (testWebExtensionWindowObjectCleared):
1201 (scriptDialogCallback):
1202 (runJavaScriptInIsolatedWorldFinishedCallback):
1203 (testWebExtensionIsolatedWorld):
1205 * UIProcess/API/gtk/tests/WebExtensionTest.cpp:
1207 (windowObjectCleared):
1209 (methodCallCallback):
1210 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp:
1211 (webkit_frame_get_javascript_context_for_script_world): New public
1212 method to tget the JavaScript execution context for a given script
1214 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h:
1215 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.cpp: Added.
1216 (scriptWorlds): Global WebKitScriptWorld map.
1217 (_WebKitScriptWorldPrivate::~_WebKitScriptWorldPrivate):
1218 (webkitScriptWorldGet): Get the WebKitScriptWorld wrapping the
1219 given injected bundle script world.
1220 (webkitScriptWorldGetInjectedBundleScriptWorld): Get the injected
1221 bundle script world wrapped by the given WebKitScriptWorld.
1222 (webkitScriptWorldWindowObjectCleared): Emit
1223 WebKitScriptWorld::window-object-cleared signal.
1224 (webkitScriptWorldCreate): Create a new WebKitScriptWorld wrapping
1225 the given injected bundle script world.
1226 (createDefaultScriptWorld): Create the default WebKitScriptWorld
1227 wrapping the normal world.
1228 (webkit_script_world_get_default): Return the default WebKitScriptWorld.
1229 (webkit_script_world_new): Create a new isolated WebKitScriptWorld.
1230 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorld.h: Added.
1231 * WebProcess/InjectedBundle/API/gtk/WebKitScriptWorldPrivate.h: Added.
1232 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1233 (didClearWindowObjectForFrame): Call webkitScriptWorldWindowObjectCleared().
1234 (webkitWebPageCreate): Add implementation for callback
1235 didClearWindowObjectForFrame in injected bundle loader client.
1236 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1237 Include WebKitScriptWorld.h.
1239 2013-08-24 Carlos Garcia Campos <cgarcia@igalia.com>
1241 [GTK] Expose WebKitFrame in WebKit2GTK+ web extensions API
1242 https://bugs.webkit.org/show_bug.cgi?id=119743
1244 Reviewed by Anders Carlsson.
1246 * GNUmakefile.list.am: Add new files to compilation.
1247 * Shared/APIClientTraits.cpp: Update for new interface version.
1248 * Shared/APIClientTraits.h: Ditto.
1249 * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add WebKitFrame
1251 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new public
1253 * UIProcess/API/gtk/docs/webkit2gtk.types: Add
1254 webkit_frame_get_type.
1255 * UIProcess/API/gtk/tests/FrameTest.cpp: Added.
1256 (WebKitFrameTest::create):
1257 (WebKitFrameTest::webPageFromArgs):
1258 (WebKitFrameTest::testMainFrame):
1259 (WebKitFrameTest::testURI):
1260 (WebKitFrameTest::testJavaScriptContext):
1261 (WebKitFrameTest::runTest):
1263 * UIProcess/API/gtk/tests/GNUmakefile.am: Add new test files.
1264 * UIProcess/API/gtk/tests/TestFrame.cpp: Added.
1265 (webkitFrameTestRun):
1266 (testWebKitFrameMainFrame):
1267 (testWebKitFrameURI):
1268 (testWebKitFrameJavaScriptContext):
1271 * WebProcess/InjectedBundle/API/c/WKBundlePage.h: Add
1272 willDestroyFrame callback to the injected bundle loader client, to
1273 notify the client when a frame is about to be destroyed.
1274 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.cpp: Added.
1275 (webkit_frame_class_init):
1276 (webkitFrameCreate):
1277 (webkit_frame_is_main_frame):
1278 (webkit_frame_get_uri):
1279 (webkit_frame_get_javascript_global_context):
1280 * WebProcess/InjectedBundle/API/gtk/WebKitFrame.h: Added.
1281 * WebProcess/InjectedBundle/API/gtk/WebKitFramePrivate.h: Added.
1282 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1283 (webkitFrameGetOrCreate): Helper function to create a WebKitFrame
1284 wrapping the given WebFrame or returning the wrapper if it already
1286 (willDestroyFrame): Remove the WebKitFrame wrapping the given
1287 WebFrame if it exists.
1288 (webkitWebPageCreate): Add willDestroyFrame implementation to
1289 injected bundle loader client.
1290 (webkit_web_page_get_main_frame): Return the main frame of the
1292 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.h:
1293 * WebProcess/InjectedBundle/API/gtk/webkit-web-extension.h:
1294 Include WebKitFrame.h.
1295 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
1296 (WebKit::InjectedBundlePageLoaderClient::willDestroyFrame): New
1297 callback to be called when a frame is about to be destroyed.
1298 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
1299 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1300 (WebKit::WebFrameLoaderClient::frameLoaderDestroyed): Call
1301 willDestroyFrame callback of injected bundle loader client.
1302 * WebProcess/qt/QtBuiltinBundlePage.cpp:
1303 (WebKit::QtBuiltinBundlePage::QtBuiltinBundlePage): Add
1304 willDestroyFrame callback.
1306 2013-08-24 Antti Koivisto <antti@apple.com>
1308 Revert accidental change.
1312 * WebProcess/com.apple.WebProcess.sb.in:
1314 2013-08-23 Beth Dakin <bdakin@apple.com>
1316 REGRESSION (r132545): Some PDFs generated by WebKit are blank when viewed in
1318 https://bugs.webkit.org/show_bug.cgi?id=120240
1320 <rdar://problem/14634453>
1322 Reviewed by Anders Carlsson.
1324 Hook up new WebSystemInterface API to find out if the current context is the PDF
1327 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
1328 (InitWebCoreSystemInterface):
1330 2013-08-23 Alexey Proskuryakov <ap@apple.com>
1332 [WK2] Assertion failures when loading XSL stylesheets with NetworkProcess
1333 https://bugs.webkit.org/show_bug.cgi?id=120186
1334 <rdar://problem/14080273>
1336 Reviewed by Brady Eidson.
1338 Covered by many existing tests.
1340 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1341 (WebKit::WebPlatformStrategies::loadResourceSynchronously): Pass frame ID and page ID.
1342 They are mostly needed for authentication, which is not supported with sync requests,
1343 but it will be supported some day.
1345 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.h:
1346 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1347 (WebKit::WebFrameNetworkingContext::webFrameLoaderClient):
1348 Added a way to get frame loader client from WebKit NetworkingContext subclass.
1350 2013-08-22 Carlos Garcia Campos <cgarcia@igalia.com>
1352 [GTK] Wrong interface version used in WebKitWebPage for loader client
1353 https://bugs.webkit.org/show_bug.cgi?id=120199
1355 Reviewed by Gustavo Noronha Silva.
1357 * WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:
1358 (webkitWebPageCreate): Use kWKBundlePageLoaderClientCurrentVersion
1359 instead of kWKBundlePageResourceLoadClientCurrentVersion in loader
1360 client initialization.
1362 2013-08-22 Simon Cooper <scooper@apple.com>
1364 Need to disable FakeSYSVSHM when sandboxing is not enabled
1365 https://bugs.webkit.org/show_bug.cgi?id=120182
1366 <rdar://problem/14814461>
1368 Reviewed by Alexey Proskuryakov.
1370 When not in a sandbox do not enable the FakeSYSVSHIM. This
1371 allows LocalConnection to work when Flash Player is run in
1374 * PluginProcess/mac/PluginProcessShim.mm:
1375 (WebKit::shim_disabled):
1377 2013-08-22 Andy Estes <aestes@apple.com>
1379 <https://webkit.org/b/120180> Fix issues with OTHER_LDFLAGS in various .xcconfig files
1381 Reviewed by David Kilzer.
1383 Adding ld flags for ASAN overwrote the unexported symbol flags we were
1384 previously specifying. Since the unexported symbol ld flags are only
1385 needed for the framework target, move them to WebKit2.xcconfig where we
1386 can add them to OTHER_LDFLAGS along with the ASAN values inherited from
1387 DebugRelease.xcconfig (and other values).
1389 * Configurations/Base.xcconfig: Removed the unexported symbol ld flags.
1390 * Configurations/WebKit2.xcconfig: ... and moved them here.
1392 2013-08-21 Tim Horton <timothy_horton@apple.com>
1394 Another null-deref under WebDragClient::startDrag
1395 https://bugs.webkit.org/show_bug.cgi?id=120145
1396 <rdar://problem/14650652>
1398 Reviewed by Simon Fraser.
1400 convertImageToBitmap can legitimately return null, so don't dereference it.
1402 * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
1403 (WebKit::WebDragClient::startDrag):
1405 2013-08-21 Beth Dakin <bdakin@apple.com>
1407 <https://webkit.org/b/120140> Clients expect didFirstLayout-related calls to
1408 happen before didLayout
1410 Reviewed by Anders Carlsson.
1412 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1413 (WebKit::WebFrameLoaderClient::dispatchDidLayout):
1415 2013-08-21 Alexey Proskuryakov <ap@apple.com>
1417 REGRESSION (r145458?): WebProcess doesn't respect UI process localization
1418 https://bugs.webkit.org/show_bug.cgi?id=120096
1420 Reviewed by Darin Adler.
1422 We used to get into a situation where CFBundle thought that we had no good localization,
1423 and used one passed as default. This is never the case with mixed localizations,
1424 so default is just ignored now.
1426 I think that the previous behavior was a bit of a hack. As WebProcess is not localized,
1427 it's more honest to say that we want mixed localizations, and force the language
1428 to match UI process localization.
1430 * Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessEntryPoint.h:
1431 (WebKit::ChildProcessMain): Don't set default localization, it's not taken into
1432 consideration unless all other attempts to compute bundle localization fail.
1434 * UIProcess/Launcher/mac/ProcessLauncherMac.mm: (WebKit::createProcess): Pass
1435 UI process localization as -AppleLanguages argument, so that Core Foundation uses
1436 that instead of actual user languages. We want to match UI process localization.
1438 2013-08-20 Gavin Barraclough <barraclough@apple.com>
1440 https://bugs.webkit.org/show_bug.cgi?id=120093
1441 Remove getOwnPropertyDescriptor trap
1443 Reviewed by Geoff Garen.
1445 All implementations of this method are now called via the method table, and equivalent in behaviour.
1446 Remove all duplicate implementations (and the method table trap), and add a single member function implementation on JSObject.
1448 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1449 * WebProcess/Plugins/Netscape/JSNPObject.h:
1450 - remove getOwnPropertyDescriptor
1452 2013-08-20 Pratik Solanki <psolanki@apple.com>
1454 <https://webkit.org/b/120029> Document::markers() should return a reference
1456 Reviewed by Andreas Kling.
1458 Document::m_markers is never NULL so return a reference from Document::markers(). Also mark
1459 m_markers as const and initialize it in member initialization.
1461 * WebProcess/WebPage/FindController.cpp:
1462 (WebKit::FindController::rectsForTextMatches):
1463 * WebProcess/WebPage/WebPage.cpp:
1464 (WebKit::WebPage::unmarkAllMisspellings):
1465 (WebKit::WebPage::unmarkAllBadGrammar):
1467 2013-08-20 Gavin Barraclough <barraclough@apple.com>
1469 https://bugs.webkit.org/show_bug.cgi?id=120053
1470 Remove custom getOwnPropertyDescriptor for JSNPObject
1472 Reviewed by Oliver Hunt.
1474 Think this is the last one!
1476 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1477 - Remove custom getOwnPropertyDescriptor implementation.
1479 2013-08-20 Anton Obzhirov <a.obzhirov@samsung.com>
1481 <https://webkit.org/b/119487> [Gtk] Cancel authentication on load failed
1483 Reviewed by Martin Robinson.
1485 Added callback to handle load-failed event in default authentication dialog.
1486 Authentication request gets cancelled and the dialog widget gets destroyed.
1488 * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
1490 (webkitAuthenticationDialogInitialize):
1491 (webkitAuthenticationDialogDispose):
1492 (webkit_authentication_dialog_class_init):
1493 (webkitAuthenticationDialogNew):
1494 * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
1495 * UIProcess/API/gtk/WebKitWebView.cpp:
1496 (webkitWebViewAuthenticate):
1498 2013-08-20 Allan Sandfeld Jensen <allan.jensen@digia.com>
1500 [Qt][WK2] Doesn't build without Plugin-process
1501 https://bugs.webkit.org/show_bug.cgi?id=120060
1503 Reviewed by Jocelyn Turcotte.
1505 Disable netscape plugin api in WebKit2 when the plugin architecture is unsupported for WebKit2.
1509 2013-08-19 Ryosuke Niwa <rniwa@webkit.org>
1511 <https://webkit.org/b/120049> Delete code for Snow Leopard
1513 Reviewed by Benjamin Poulain.
1515 * NetworkProcess/mac/NetworkProcessMac.mm:
1516 (WebKit::overrideSystemProxies):
1517 (WebKit::NetworkProcess::platformInitializeNetworkProcess):
1520 2013-08-19 Beth Dakin <bdakin@apple.com>
1522 <https://webkit.org/b/120027> AXObjectCache's
1523 accessibilityEnhancedUserInterfaceEnabled should be initialized on process
1526 Reviewed by Sam Weinig.
1528 Right now we only call AXObjectCache::setEnhancedAccessibility() when AppKit sends
1529 us a notification indicating that the value has changed. We should not have to
1530 rely on that to properly initialize this value. It should be done with the
1531 WebProcessCreationParamters.
1533 * Shared/WebProcessCreationParameters.cpp:
1534 (WebKit::WebProcessCreationParameters::encode):
1535 (WebKit::WebProcessCreationParameters::decode):
1536 * Shared/WebProcessCreationParameters.h:
1537 * UIProcess/mac/WebContextMac.mm:
1538 (WebKit::WebContext::platformInitializeWebProcess):
1539 * WebProcess/mac/WebProcessMac.mm:
1540 (WebKit::WebProcess::platformInitializeWebProcess):
1542 2013-08-19 Pratik Solanki <psolanki@apple.com>
1544 <https://webkit.org/b/119918> Frame::selection() should return a reference
1546 Reviewed by Darin Adler.
1548 m_selection is never NULL so return a reference from Frame::selection(). Also removed some
1549 unnecessary null checks and assert diff ts exposed as a result.
1551 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1552 (WebKit::WebEditorClient::updateGlobalSelection):
1553 * WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:
1554 (WebKit::collapseSelection):
1555 (WebKit::WebEditorClient::updateGlobalSelection):
1556 * WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
1557 (WebKit::WebContextMenuClient::lookUpInDictionary):
1558 (WebKit::WebContextMenuClient::searchWithSpotlight):
1559 * WebProcess/WebPage/FindController.cpp:
1560 (WebKit::frameWithSelection):
1561 (WebKit::FindController::updateFindUIAfterPageScroll):
1562 (WebKit::FindController::getFindIndicatorBitmapAndRect):
1563 (WebKit::FindController::getImageForFindMatch):
1564 (WebKit::FindController::selectFindMatch):
1565 (WebKit::FindController::updateFindIndicator):
1566 (WebKit::FindController::drawRect):
1567 * WebProcess/WebPage/WebPage.cpp:
1568 (WebKit::WebPage::editorState):
1569 (WebKit::WebPage::scaledSnapshotWithOptions):
1570 (WebKit::WebPage::centerSelectionInVisibleArea):
1571 (WebKit::frameWithSelection):
1572 (WebKit::WebPage::clearSelection):
1573 (WebKit::WebPage::confirmComposition):
1574 (WebKit::WebPage::setComposition):
1575 (WebKit::WebPage::currentSelectionAsRange):
1576 * WebProcess/WebPage/mac/WebPageMac.mm:
1577 (WebKit::WebPage::setComposition):
1578 (WebKit::WebPage::insertText):
1579 (WebKit::WebPage::insertDictatedText):
1580 (WebKit::WebPage::getMarkedRange):
1581 (WebKit::WebPage::getSelectedRange):
1582 (WebKit::WebPage::getAttributedSubstringFromRange):
1583 (WebKit::WebPage::characterIndexForPoint):
1584 (WebKit::convertToRange):
1585 (WebKit::WebPage::performDictionaryLookupAtLocation):
1586 (WebKit::WebPage::readSelectionFromPasteboard):
1587 (WebKit::WebPage::getStringSelectionForPasteboard):
1588 (WebKit::WebPage::getDataSelectionForPasteboard):
1590 2013-08-18 Darin Adler <darin@apple.com>
1592 <https://webkit.org/b/119989> Make use of Node::ownerDocument a compile time error
1594 Reviewed by Sam Weinig.
1596 * WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
1597 (WebKit::PDFPluginChoiceAnnotation::createAnnotationElement): Use document instead of
1599 * WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
1600 (WebKit::PDFPluginTextAnnotation::createAnnotationElement): Ditto.
1602 2013-08-18 Dan Bernstein <mitz@apple.com>
1604 Fix clean engineering builds after r154251.
1606 * WebKit2.xcodeproj/project.pbxproj: Removed references to the OfflineStorage XPC services
1607 from the “Copy XPC services for engineering builds” build phase.
1609 2013-08-18 Gavin Barraclough <barraclough@apple.com>
1611 https://bugs.webkit.org/show_bug.cgi?id=119972
1612 Add attributes field to PropertySlot
1614 Reviewed by Geoff Garen.
1616 For all JSC types, this makes getOwnPropertyDescriptor redundant.
1617 There will be a bit more hacking required in WebCore to remove GOPD whilst maintaining current behaviour.
1618 (Current behaviour is in many ways broken, particularly in that GOPD & GOPS are inconsistent, but we should fix incrementally).
1620 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
1621 (WebKit::JSNPObject::getOwnPropertySlot):
1622 (WebKit::JSNPObject::getOwnPropertyDescriptor):
1623 - Pass attributes to PropertySlot::set* methods.
1625 2013-08-16 Sam Weinig <sam@webkit.org>
1627 <https://webkit.org/b/119911> Remove the unused OfflineStorageProcess
1629 Reviewed by Darin Adler.
1631 * Configurations/OfflineStorageProcess.xcconfig: Removed.
1632 * Configurations/OfflineStorageService.Development.xcconfig: Removed.
1633 * Configurations/OfflineStorageService.xcconfig: Removed.
1634 * DerivedSources.make:
1635 * OfflineStorageProcess: Removed.
1636 * OfflineStorageProcess/EntryPoint: Removed.
1637 * OfflineStorageProcess/EntryPoint/mac: Removed.
1638 * OfflineStorageProcess/EntryPoint/mac/LegacyProcess: Removed.
1639 * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/Info.plist: Removed.
1640 * OfflineStorageProcess/EntryPoint/mac/LegacyProcess/OfflineStorageProcessMain.mm: Removed.
1641 * OfflineStorageProcess/EntryPoint/mac/XPCService: Removed.
1642 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService: Removed.
1643 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development: Removed.
1644 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService.Development/Info.plist: Removed.
1645 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageService/Info.plist: Removed.
1646 * OfflineStorageProcess/EntryPoint/mac/XPCService/OfflineStorageServiceEntryPoint.mm: Removed.
1647 * OfflineStorageProcess/OfflineStorageProcess.cpp: Removed.
1648 * OfflineStorageProcess/OfflineStorageProcess.h: Removed.
1649 * OfflineStorageProcess/OfflineStorageProcess.messages.in: Removed.
1650 * OfflineStorageProcess/mac: Removed.
1651 * OfflineStorageProcess/mac/OfflineStorageProcessMac.mm: Removed.
1652 * OfflineStorageProcess/mac/com.apple.WebKit.OfflineStorage.sb: Removed.
1653 * Scripts/webkit2/messages.py:
1654 * Shared/OfflineStorage: Removed.
1655 * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.cpp: Removed.
1656 * Shared/OfflineStorage/OfflineStorageProcessCreationParameters.h: Removed.
1657 * WebKit2.xcodeproj/project.pbxproj:
1660 2013-08-17 Darin Adler <darin@apple.com>
1662 <https://webkit.org/b/119941> Make Page::dragController return a reference
1664 Reviewed by Andreas Kling.
1666 * WebProcess/WebPage/WebPage.cpp:
1667 (WebKit::WebPage::performDragControllerAction):
1668 (WebKit::WebPage::dragEnded):
1671 2013-08-17 David Kilzer <ddkilzer@apple.com>
1673 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]
1674 <http://webkit.org/b/119935>
1675 <rdar://problem/14764131>
1677 Reviewed by Darin Adler.
1679 * UIProcess/Plugins/WebPluginSiteDataManager.h: Fix typo
1680 introduced in r78647.
1682 2013-08-16 Pratik Solanki <psolanki@apple.com>
1684 <https://webkit.org/b/119852> Frame::scriptController() should return a reference
1686 Reviewed by Andreas Kling.
1688 m_script is never NULL so we can just return a reference. Also remove some pointless null
1689 checks as a result of doing this.
1691 * WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
1692 (WebKit::NPRuntimeObjectMap::globalObject):
1693 * WebProcess/Plugins/PluginView.cpp:
1694 (WebKit::PluginView::performJavaScriptURLRequest):
1695 (WebKit::PluginView::windowScriptNPObject):
1696 (WebKit::PluginView::pluginElementNPObject):
1697 * WebProcess/WebPage/WebFrame.cpp:
1698 (WebKit::WebFrame::jsContext):
1699 (WebKit::WebFrame::jsContextForWorld):
1700 (WebKit::WebFrame::jsWrapperForWorld):
1701 * WebProcess/WebPage/WebInspector.cpp:
1702 (WebKit::WebInspector::didSave):
1703 (WebKit::WebInspector::didAppend):
1704 * WebProcess/WebPage/WebPage.cpp:
1705 (WebKit::WebPage::runJavaScriptInMainFrame):
1707 2013-08-16 Brady Eidson <beidson@apple.com>
1709 (NetworkProcess) Sync XHRs should load using async ResourceHandles, not ResourceHandle::loadResourceSynchronously
1710 https://bugs.webkit.org/show_bug.cgi?id=119493
1712 Reviewed by Alexey Proskuryakov.
1714 This patch does the following:
1715 - Consolidates SchedulableLoader and NetworkResourceLoader into one class.
1716 - Removes SyncNetworkResourceLoader.
1717 - Adds a NetworkLoaderClient interface that customizes certain behaviors of the NetworkResourceLoader.
1718 - Implements a SynchronousNetworkLoaderClient and AsynchronousNetworkLoaderClient for the two different types of loads.
1720 The AsynchronousNetworkLoaderClient results in messaging back progress to the WebProcess as the load progresses.
1721 The SynchronousNetworkLoaderClient accumulates the response, data, and error to be communicated back to the WebProcess
1722 only when the load is complete.
1724 Update small swaths of code to reflect that NetworkResourceLoader is the One True Loader (tm):
1725 * NetworkProcess/HostRecord.cpp:
1726 (WebKit::HostRecord::scheduleResourceLoader):
1727 (WebKit::HostRecord::addLoaderInProgress):
1728 (WebKit::removeLoaderFromQueue):
1729 (WebKit::HostRecord::removeLoader):
1730 (WebKit::HostRecord::servePendingRequestsForQueue):
1731 (WebKit::HostRecord::limitsRequests):
1732 * NetworkProcess/HostRecord.h:
1734 * NetworkProcess/NetworkConnectionToWebProcess.cpp:
1735 (WebKit::NetworkConnectionToWebProcess::didClose):
1736 (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
1737 (WebKit::NetworkConnectionToWebProcess::removeLoadIdentifier):
1738 * NetworkProcess/NetworkConnectionToWebProcess.h:
1740 * NetworkProcess/NetworkProcess.cpp:
1741 * NetworkProcess/NetworkResourceLoadScheduler.cpp:
1742 (WebKit::NetworkResourceLoadScheduler::scheduleLoader):
1743 (WebKit::NetworkResourceLoadScheduler::removeLoader):
1744 (WebKit::NetworkResourceLoadScheduler::receivedRedirect):
1745 (WebKit::NetworkResourceLoadScheduler::removeScheduledLoaders):
1746 (WebKit::NetworkResourceLoadScheduler::scheduleRemoveLoader):
1747 * NetworkProcess/NetworkResourceLoadScheduler.h:
1749 Combine ScheduleableLoader and NetworkResourceLoader into NetworkResourceLoader:
1750 * NetworkProcess/NetworkResourceLoader.cpp:
1751 (WebKit::NetworkResourceLoader::NetworkResourceLoader):
1752 (WebKit::NetworkResourceLoader::~NetworkResourceLoader):
1753 (WebKit::NetworkResourceLoader::isSynchronous):
1754 (WebKit::NetworkResourceLoader::start):
1755 (WebKit::NetworkResourceLoader::didReceiveResponseAsync):
1756 (WebKit::NetworkResourceLoader::didReceiveBuffer):
1757 (WebKit::NetworkResourceLoader::didFinishLoading):
1758 (WebKit::NetworkResourceLoader::didFail):
1759 (WebKit::NetworkResourceLoader::willSendRequestAsync):
1760 (WebKit::NetworkResourceLoader::continueWillSendRequest):
1761 (WebKit::NetworkResourceLoader::didSendData):
1762 (WebKit::NetworkResourceLoader::shouldUseCredentialStorage):
1763 (WebKit::NetworkResourceLoader::didReceiveAuthenticationChallenge):
1764 (WebKit::NetworkResourceLoader::consumeSandboxExtensions):
1765 (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
1766 (WebKit::NetworkResourceLoader::canAuthenticateAgainstProtectionSpaceAsync):
1767 * NetworkProcess/NetworkResourceLoader.h:
1768 (WebKit::NetworkResourceLoader::create):
1769 (WebKit::NetworkResourceLoader::connectionToWebProcess):
1770 (WebKit::NetworkResourceLoader::priority):
1771 (WebKit::NetworkResourceLoader::request):
1772 (WebKit::NetworkResourceLoader::isLoadingMainResource):
1773 (WebKit::NetworkResourceLoader::setHostRecord):
1774 (WebKit::NetworkResourceLoader::hostRecord):
1775 (WebKit::NetworkResourceLoader::sendAbortingOnFailure):
1777 Add an abstract NetworkLoaderClient to adapt a load to be either synchronous or asynchronous:
1778 * NetworkProcess/NetworkLoaderClient.h:
1779 (WebKit::NetworkLoaderClient::~NetworkLoaderClient):
1780 (WebKit::NetworkLoaderClient::isSynchronous):
1781 (WebKit::NetworkLoaderClient::NetworkLoaderClient):
1783 The asynchronous loader client, primarily to message progress back to the WebProcess as it happens:
1784 * NetworkProcess/AsynchronousNetworkLoaderClient.cpp: Added.
1785 (WebKit::AsynchronousNetworkLoaderClient::AsynchronousNetworkLoaderClient):
1786 (WebKit::AsynchronousNetworkLoaderClient::willSendRequest):
1787 (WebKit::AsynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1788 (WebKit::AsynchronousNetworkLoaderClient::didReceiveResponse):
1789 (WebKit::AsynchronousNetworkLoaderClient::didReceiveBuffer):
1790 (WebKit::AsynchronousNetworkLoaderClient::didSendData):
1791 (WebKit::AsynchronousNetworkLoaderClient::didFinishLoading):
1792 (WebKit::AsynchronousNetworkLoaderClient::didFail):
1793 * NetworkProcess/AsynchronousNetworkLoaderClient.h:
1794 (WebKit::AsynchronousNetworkLoaderClient::create):
1796 The synchronous loader client, primarily to accumulate results of the load to send back to the WebProcess all at once:
1797 * NetworkProcess/SynchronousNetworkLoaderClient.cpp: Added.
1798 (WebKit::SynchronousNetworkLoaderClient::SynchronousNetworkLoaderClient):
1799 (WebKit::SynchronousNetworkLoaderClient::~SynchronousNetworkLoaderClient):
1800 (WebKit::SynchronousNetworkLoaderClient::willSendRequest):
1801 (WebKit::SynchronousNetworkLoaderClient::canAuthenticateAgainstProtectionSpace):
1802 (WebKit::SynchronousNetworkLoaderClient::didReceiveResponse):
1803 (WebKit::SynchronousNetworkLoaderClient::didReceiveBuffer):
1804 (WebKit::SynchronousNetworkLoaderClient::didFinishLoading):
1805 (WebKit::SynchronousNetworkLoaderClient::didFail):
1806 (WebKit::SynchronousNetworkLoaderClient::sendDelayedReply):
1807 * NetworkProcess/SynchronousNetworkLoaderClient.h: Added.
1808 (WebKit::SynchronousNetworkLoaderClient::create):
1810 * NetworkProcess/SchedulableLoader.cpp: Removed.
1811 * NetworkProcess/SchedulableLoader.h: Removed.
1812 * NetworkProcess/SyncNetworkResourceLoader.cpp: Removed.
1813 * NetworkProcess/SyncNetworkResourceLoader.h: Removed.
1815 * WebKit2.xcodeproj/project.pbxproj:
1817 2013-08-16 Gabor Rapcsanyi <rgabor@webkit.org>
1819 [Qt][ARM] Unreviewed buildfix after 154127.
1821 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h: Add missing header.
1823 2013-08-15 Ryuan Choi <ryuan.choi@samsung.com>
1825 [EFL] Unreviewed build fix after r154142 and r154144.
1827 * UIProcess/WebContext.cpp:
1828 (WebKit::WebContext::useTestingNetworkSession):
1829 Fixed build break when NETWORK_PROCESS is disabled after r154144.
1831 2013-08-15 Chris Fleizach <cfleizach@apple.com>
1833 <https://webkit.org/b/119858> AX: Crash: com.apple.WebKit.WebContent at com.apple.WebKit2: WebKit::WebPage::accessibilityObjectForMainFramePlugin + 8
1835 Reviewed by Tim Horton.
1837 Ensure that the page is available before accessing it.
1839 * WebProcess/WebPage/mac/WebPageMac.mm:
1840 (WebKit::WebPage::accessibilityObjectForMainFramePlugin):
1842 2013-08-15 Alexey Proskuryakov <ap@apple.com>
1844 [WK2] NetworkProcess should use a temporary storage session for test
1845 https://bugs.webkit.org/show_bug.cgi?id=119855
1847 Reviewed by Darin Adler.
1849 We used to have a bundle API for WebKitTestRunner to do this in injected bundle, but
1850 NetworkProcess has no injected bundle.
1852 Added a WKContext API, sending the information to NetworkProcess with initialization
1853 parameters. Reworked WebProcess path to do the same for consistency - bundle API
1854 is better per se, but not when we also need to have another one.
1856 * NetworkProcess/NetworkProcess.cpp:
1857 (WebKit::NetworkProcess::initializeNetworkProcess):
1858 * Shared/Network/NetworkProcessCreationParameters.cpp:
1859 (WebKit::NetworkProcessCreationParameters::encode):
1860 (WebKit::NetworkProcessCreationParameters::decode):
1861 * Shared/Network/NetworkProcessCreationParameters.h:
1862 * Shared/WebProcessCreationParameters.cpp:
1863 (WebKit::WebProcessCreationParameters::encode):
1864 (WebKit::WebProcessCreationParameters::decode):
1865 * Shared/WebProcessCreationParameters.h:
1866 * UIProcess/API/C/WKContext.cpp:
1867 (WKContextUseTestingNetworkSession):
1868 * UIProcess/API/C/WKContextPrivate.h:
1869 * UIProcess/WebContext.cpp:
1870 (WebKit::WebContext::WebContext):
1871 (WebKit::WebContext::ensureNetworkProcess):
1872 (WebKit::WebContext::createNewWebProcess):
1873 (WebKit::WebContext::useTestingNetworkSession):
1874 * UIProcess/WebContext.h:
1875 * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
1876 * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
1877 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1878 * WebProcess/InjectedBundle/InjectedBundle.h:
1879 * WebProcess/WebProcess.cpp:
1880 (WebKit::WebProcess::initializeWebProcess):
1882 2013-08-15 Anders Carlsson <andersca@apple.com>
1884 <https://webkit.org/b/119859> Frame::loader() should return a reference
1886 Reviewed by Andreas Kling.
1888 * Shared/WebRenderLayer.cpp:
1889 (WebKit::WebRenderLayer::create):
1890 * Shared/WebRenderObject.cpp:
1891 (WebKit::WebRenderObject::create):
1892 * WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
1893 (WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):
1894 * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
1895 (WKBundleFrameGetFrameLoadState):
1896 (WKBundleFrameClearOpener):
1897 (WKBundleFrameCallShouldCloseOnWebView):
1898 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
1899 (WebKit::InjectedBundleNodeHandle::documentFrame):
1900 (WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
1901 (WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):
1902 * WebProcess/InjectedBundle/InjectedBundle.cpp:
1903 (WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):
1904 * WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
1905 (WebKit::InjectedBundleDOMWindowExtension::frame):
1906 * WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
1907 (WebKit::InjectedBundleHitTestResult::frame):
1908 (WebKit::InjectedBundleHitTestResult::targetFrame):
1909 * WebProcess/Plugins/PDF/PDFPlugin.mm:
1910 (WebKit::PDFPlugin::clickedLink):
1911 * WebProcess/Plugins/PluginView.cpp:
1913 (WebKit::PluginView::didFailToInitializePlugin):
1914 (WebKit::PluginView::performFrameLoadURLRequest):
1915 (WebKit::PluginView::userAgent):
1916 (WebKit::PluginView::loadURL):
1917 (WebKit::PluginView::cancelManualStreamLoad):
1918 (WebKit::PluginView::proxiesForURL):
1919 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
1920 (WebKit::WebChromeClient::focusedElementChanged):
1921 (WebKit::WebChromeClient::focusedFrameChanged):
1922 (WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
1923 (WebKit::WebChromeClient::closeWindowSoon):
1924 (WebKit::WebChromeClient::runJavaScriptAlert):
1925 (WebKit::WebChromeClient::runJavaScriptConfirm):
1926 (WebKit::WebChromeClient::runJavaScriptPrompt):
1927 (WebKit::WebChromeClient::unavailablePluginButtonClicked):
1928 (WebKit::WebChromeClient::print):
1929 (WebKit::WebChromeClient::exceededDatabaseQuota):
1930 (WebKit::WebChromeClient::runOpenPanel):
1931 * WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
1932 (WebKit::WebContextMenuClient::searchWithGoogle):
1933 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
1934 (WebKit::WebEditorClient::textFieldDidBeginEditing):
1935 (WebKit::WebEditorClient::textFieldDidEndEditing):
1936 (WebKit::WebEditorClient::textDidChangeInTextField):
1937 (WebKit::WebEditorClient::textDidChangeInTextArea):
1938 (WebKit::WebEditorClient::doTextFieldCommandFromEvent):
1939 (WebKit::WebEditorClient::textWillBeDeletedInTextField):
1940 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
1941 (WebKit::WebFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
1942 (WebKit::WebFrameLoaderClient::dispatchDidStartProvisionalLoad):
1943 (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
1944 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):
1945 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
1946 (WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
1947 (WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
1948 (WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):
1949 (WebKit::WebFrameLoaderClient::updateGlobalHistory):
1950 (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks):
1951 (WebKit::WebFrameLoaderClient::restoreViewState):
1952 (WebKit::WebFrameLoaderClient::createFrame):
1953 (WebKit::WebFrameLoaderClient::createJavaAppletWidget):
1954 (WebKit::WebFrameLoaderClient::objectContentType):
1955 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
1956 (WebKit::WebPlatformStrategies::getPluginInfo):
1957 * WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
1958 (WebKit::WebFrameNetworkingContext::blockedError):
1959 * WebProcess/WebPage/WebFrame.cpp:
1960 (WebKit::WebFrame::didReceivePolicyDecision):
1961 (WebKit::WebFrame::startDownload):
1962 (WebKit::WebFrame::source):
1963 (WebKit::WebFrame::contentsAsString):
1964 (WebKit::WebFrame::url):
1965 (WebKit::WebFrame::parentFrame):
1966 (WebKit::WebFrame::childFrames):
1967 (WebKit::WebFrame::stopLoading):
1968 (WebKit::WebFrame::frameForContext):
1969 (WebKit::WebFrame::provisionalURL):
1970 (WebKit::WebFrame::suggestedFilenameForResourceWithURL):
1971 (WebKit::WebFrame::mimeTypeForResourceWithURL):
1972 (WebKit::WebFrameFilter::shouldIncludeSubframe):
1973 * WebProcess/WebPage/WebPage.cpp:
1974 (WebKit::WebPage::createPlugin):
1975 (WebKit::WebPage::close):
1976 (WebKit::WebPage::tryClose):
1977 (WebKit::WebPage::loadURLRequest):
1978 (WebKit::WebPage::loadDataImpl):
1979 (WebKit::WebPage::linkClicked):
1980 (WebKit::WebPage::stopLoadingFrame):
1981 (WebKit::WebPage::stopLoading):
1982 (WebKit::WebPage::reload):
1983 (WebKit::WebPage::tryRestoreScrollPosition):
1984 (WebKit::WebPage::getMainResourceDataOfFrame):
1985 (WebKit::resourceDataForFrame):
1986 (WebKit::shouldReuseCommittedSandboxExtension):
1987 (WebKit::WebPage::SandboxExtensionTracker::didStartProvisionalLoad):
1988 (WebKit::WebPage::hasLocalDataForURL):
1989 (WebKit::WebPage::setCustomTextEncodingName):
1990 (WebKit::WebPage::canPluginHandleResponse):
1991 (WebKit::WebPage::canShowMIMEType):
1992 (WebKit::WebPage::didCommitLoad):
1993 * WebProcess/WebPage/mac/WebPageMac.mm:
1994 (WebKit::WebPage::platformHasLocalDataForURL):
1995 (WebKit::cachedResponseForURL):
1996 * WebProcess/WebProcess.cpp:
1997 (WebKit::WebProcess::downloadRequest):
1999 2013-08-14 Filip Pizlo <fpizlo@apple.com>
2001 Typed arrays should be rewritten
2002 https://bugs.webkit.org/show_bug.cgi?id=119064
2004 Reviewed by Oliver Hunt.
2006 You don't need to include JSUint8Array anymore if you just want to
2007 unwrap one; JSDOMBinding gives you all of the things you need.
2009 * WebProcess/InjectedBundle/InjectedBundle.cpp:
2011 2013-08-15 Eric Carlson <eric.carlson@apple.com>
2013 [Mac] Remove "legacy" media UI
2014 https://bugs.webkit.org/show_bug.cgi?id=119752
2016 Reviewed by Jer Noble.
2018 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2019 (InitWebCoreSystemInterface): Remove MediaControllerThemeAvailable.
2021 2013-08-14 Dean Jackson <dino@apple.com>
2023 <https://webkit.org/b/119827> Allow primary plug-in detection to run more than once if necessary
2025 Reviewed by Tim Horton.
2027 We occasionally see cases where the primary plug-in detection runs before the plugins have been added
2028 to the page, especially if they do so in response to a load event. Tweak the algorithm so that it can
2029 run an arbitrary number of times if it fails.
2031 While here, also have the detection run if there has ever been a plugin in the page as opposed to any
2032 current views. We may have snapshotted a plugin by now and deleted its view.
2034 * WebProcess/WebPage/WebPage.cpp:
2035 (WebKit::WebPage::WebPage): initialise new members.
2036 (WebKit::WebPage::addPluginView): Mark that we've seen a plugin.
2037 (WebKit::WebPage::resetPrimarySnapshottedPlugIn): Reset new members.
2038 (WebKit::WebPage::determinePrimarySnapshottedPlugIn): Exit early if we've never
2039 seen a plugin, rather than if we don't have any active views. Also, if we didn't find anything set
2040 a timer to run again (maximum of two attempts at the moment).
2041 * WebProcess/WebPage/WebPage.h: New members - m_numberOfPrimarySnapshotDetectionAttempts
2042 and m_hasSeenPlugin.
2044 2013-08-14 Dean Jackson <dino@apple.com>
2046 <https://webkit.org/b/119820> Add pluginView-related logging to WebPage
2048 Reviewed by Tim Horton.
2050 Add some more diagnostic output to help track down bugs.
2052 * WebProcess/WebPage/WebPage.cpp:
2053 (WebKit::WebPage::addPluginView): More logging.
2054 (WebKit::WebPage::removePluginView): Ditto.
2056 2013-08-14 Alexey Proskuryakov <ap@apple.com>
2058 [WK2] Sync messages with with non-default timeout sent from secondary threads always time out
2059 https://bugs.webkit.org/show_bug.cgi?id=119767
2062 Reviewed by Darin Adler.
2064 * Platform/CoreIPC/Connection.cpp: (CoreIPC::Connection::sendSyncMessageFromSecondaryThread):
2065 The argument to wait() is absolute time, not a delta. This calculation matches one
2066 in Connection::waitForMessage().
2068 2013-08-14 Tim Horton <timothy_horton@apple.com>
2070 REGRESSION (r153877): Plugin scanning slows creation of WebViews
2071 https://bugs.webkit.org/show_bug.cgi?id=119665
2072 <rdar://problem/14716549>
2074 Reviewed by Darin Adler.
2076 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2077 (WebKit::WebPlatformStrategies::refreshPlugins):
2078 Don't repopulate the plugin cache in refreshPlugins, just invalidate it.
2079 It will be repopulated the next time something tries to use it.
2081 2013-08-12 Dan Bernstein <mitz@apple.com>
2083 Fixed an off-by-(sizeof(char*) - 1) bug.
2085 Reviewed by Sam Weinig.
2087 * Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.Development.mm:
2088 (WebKit::XPCServiceEventHandler): Allocate a sufficiently large buffer.
2090 2013-08-12 Beth Dakin <bdakin@apple.com>
2092 Remove didNewFirstVisuallyNonEmptyLayout from WebKit2
2093 https://bugs.webkit.org/show_bug.cgi?id=119658
2095 Reviewed by Darin Adler.
2097 Removing this function entirely will change some functionality in the Nightlies,
2098 but we think that is an acceptable difference for the Nightlies. If is does cause
2099 a problem though, we can roll out this patch and deprecate the function instead.
2101 * UIProcess/API/C/WKPage.h:
2102 * UIProcess/WebLoaderClient.cpp:
2103 * UIProcess/WebLoaderClient.h:
2104 * UIProcess/WebPageProxy.cpp:
2105 (WebKit::WebPageProxy::initializeLoaderClient):
2106 * UIProcess/WebPageProxy.h:
2107 * UIProcess/WebPageProxy.messages.in:
2108 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
2109 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
2110 * WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.h:
2111 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
2112 (WebKit::WebFrameLoaderClient::dispatchDidLayout):
2113 * WebProcess/WebPage/WebPage.cpp:
2114 (WebKit::WebPage::initializeInjectedBundleLoaderClient):
2116 2013-08-12 Arunprasad Rajkumar <arurajku@cisco.com>
2118 [Qt] [WebKit2] Remove duplicate RAM Size calculation and reuse WTF::ramSize()
2119 https://bugs.webkit.org/show_bug.cgi?id=119663
2121 Reviewed by Sam Weinig.
2123 * WebProcess/qt/WebProcessQt.cpp:
2124 (WebKit::WebProcess::platformSetCacheModel):
2126 2013-08-12 Anton Obzhirov <a.obzhirov@samsung.com>
2128 [GTK] Don't load GAIL when using GTK 3.2 or greater
2129 https://bugs.webkit.org/show_bug.cgi?id=72735
2131 Reviewed by Carlos Garcia Campos.
2133 * UIProcess/API/gtk/tests/AccessibilityTestServer.cpp:
2136 2013-08-09 Beth Dakin <bdakin@apple.com>
2138 AX: Not able to use arrow keys to read text in a WK2 app
2139 https://bugs.webkit.org/show_bug.cgi?id=119605
2141 <rdar://problem/14281275>
2143 Reviewed by Darin Adler.
2145 Make all of these scrolling functions actually return the WebCore bools that
2146 indicate whether or not scrolling happened.
2147 * WebProcess/WebPage/WebPage.cpp:
2148 (WebKit::WebPage::scroll):
2149 (WebKit::WebPage::logicalScroll):
2150 (WebKit::WebPage::scrollBy):
2151 * WebProcess/WebPage/WebPage.h:
2152 * WebProcess/WebPage/mac/WebPageMac.mm:
2153 (WebKit::WebPage::executeKeypressCommandsInternal):
2155 This function now gives accessibility a chance to handle the event too. And it
2156 also actually tracks whether or not the event was handled by scrolling instead of
2157 assuming that it was and universally returning true.
2158 (WebKit::WebPage::performNonEditingBehaviorForSelector):
2160 2013-08-09 Brian Holt <brian.holt@samsung.com>
2162 [GTK] [WebKit2] Add an 'authenticate' signal to WebKitWebView
2163 https://bugs.webkit.org/show_bug.cgi?id=99352
2165 Reviewed by Carlos Garcia Campos.
2167 Add a new public class to the API, WebKitAuthenticationRequest, to be
2168 emitted along with a new WebKitWebView::authenticate signal to
2169 let client applications to provide their own authentication
2170 when the user is challenged with HTTP authentication. The
2171 credential is exposed through a new class WebKitCredential.
2173 * GNUmakefile.list.am:
2174 * UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:
2175 (okButtonClicked): Use new API for authentication.
2176 (cancelButtonClicked): Ditto.
2177 (webkitAuthenticationDialogInitialize):Get
2178 authenticationChallenge from request object.
2179 (webkitAuthenticationDialogNew): Ditto.
2180 * UIProcess/API/gtk/WebKitAuthenticationDialog.h:
2181 * UIProcess/API/gtk/WebKitAuthenticationRequest.cpp: Added new
2182 class representing a HTTP authentication request.
2183 (webkitAuthenticationRequestDispose):
2184 (webkit_authentication_request_class_init):
2185 (webkitAuthenticationRequestCreate):
2186 (webkitAuthenticationRequestGetAuthenticationChallenge):
2187 (webkit_authentication_request_can_save_credentials):
2188 (webkit_authentication_request_get_proposed_credential):
2189 (webkit_authentication_request_get_host):
2190 (webkit_authentication_request_get_port):
2191 (webkit_authentication_request_get_realm):
2192 (webkit_authentication_request_get_scheme):
2193 (webkit_authentication_request_is_for_proxy):
2194 (webkit_authentication_request_is_retry):
2195 (webkit_authentication_request_authenticate):
2196 (webkit_authentication_request_cancel):
2197 * UIProcess/API/gtk/WebKitAuthenticationRequest.h: Added.
2198 * UIProcess/API/gtk/WebKitAuthenticationRequestPrivate.h: Added.
2199 * UIProcess/API/gtk/WebKitCredential.cpp: Added new class to
2200 support credentials for HTTP authentication.
2201 (_WebKitCredential::_WebKitCredential):
2202 (webkitCredentialCreate):
2203 (webkitCredentialGetCredential):
2204 (webkit_credential_new):
2205 (webkit_credential_copy):
2206 (webkit_credential_free):
2207 (webkit_credential_get_username):
2208 (webkit_credential_get_password):
2209 (webkit_credential_has_password):
2210 (webkit_credential_get_persistence):
2211 * UIProcess/API/gtk/WebKitCredential.h: Added.
2212 * UIProcess/API/gtk/WebKitCredentialPrivate.h: Added.
2213 * UIProcess/API/gtk/WebKitWebView.cpp: Added authenticate signal.
2214 (webkitWebViewAuthenticate): Default signal handler for authenticate.
2215 (webkit_web_view_class_init): Ditto.
2216 (webkitWebViewHandleAuthenticationChallenge): Create an
2217 authentication request and emit it with authenticate signal.
2218 * UIProcess/API/gtk/WebKitWebView.h: Replaced reserved function
2219 pointer slot with for WebViewClass with function pointer to
2220 authenticate signal handler.
2221 * UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Added new section for
2222 the authentication request.
2223 * UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Ditto.
2224 * UIProcess/API/gtk/docs/webkit2gtk.types: Added authentication
2225 request and credential types.
2226 * UIProcess/API/gtk/tests/TestWebKitWebView.cpp: Created a new
2227 unit test for HTTP authentication. A libsoup server callback
2228 handler is installed that creates soup messages with appropriate
2229 headers and body to test HTTP authentication.
2230 (testWebViewAuthenticationRequest): Test the authentication
2231 request and credential API.
2232 (testWebViewAuthenticationCancel): Test cancelled authentication.
2233 (testWebViewAuthenticationFailure): Test repeated authentication failures.
2234 (testWebViewAuthenticationNoCredential): Test continue without
2236 (testWebViewAuthenticationStorage): Test credential storage.
2237 (testWebViewAuthenticationSuccess): Test successful authentication.
2238 (beforeAll): Added tests.
2239 * UIProcess/API/gtk/webkit2.h: Added WebKitAuthenticationRequest and
2240 WebKitCredential headers.
2242 2013-08-09 Tim Horton <timothy_horton@apple.com>
2244 PDFPlugin is disabled by default in nightlies on Mac accidentally
2245 https://bugs.webkit.org/show_bug.cgi?id=119615
2247 Rubber-stamped by Andreas Kling.
2249 Enable PDFPlugin by default on Mac at the WebKit2 level.
2251 * Shared/WebPreferencesStore.h:
2252 * UIProcess/API/C/WKPreferencesPrivate.h:
2254 2013-08-08 Tim Horton <timothy_horton@apple.com>
2256 navigator.plugins has plugins in it when plugins are disabled
2257 https://bugs.webkit.org/show_bug.cgi?id=119607
2258 <rdar://problem/14678030>
2260 Reviewed by Anders Carlsson.
2262 * UIProcess/WebProcessProxy.cpp:
2263 (WebKit::WebProcessProxy::getPlugins):
2264 Return a list of all plugins, and a list of only application plugins.
2266 * UIProcess/WebProcessProxy.h:
2267 * UIProcess/WebProcessProxy.messages.in:
2268 * WebProcess/WebCoreSupport/WebPlatformStrategies.h:
2269 * WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
2270 (WebKit::WebPlatformStrategies::getPluginInfo):
2271 Add applicationPlugin parameter to getPlugins, and storage for the returned list.
2273 (WebKit::WebPlatformStrategies::populatePluginCache):
2274 If plugins are disabled for the given page, give WebCore the list that
2275 only includes application plugins. Otherwise, give it the whole list
2276 as we are doing currently.
2278 2013-08-08 Gavin Barraclough <barraclough@apple.com>
2280 Disable suppression of plugin process for Java
2281 https://bugs.webkit.org/show_bug.cgi?id=119604
2283 Reviewed by Sam Weinig.
2285 Workaround, the Java plugin doesn't like this.
2287 * PluginProcess/mac/PluginProcessMac.mm:
2288 (WebKit::PluginProcess::platformInitializeProcess):
2289 - +1 active task count on the java plugin, to inhibit supression.
2291 2013-08-08 Dean Jackson <dino@apple.com>
2293 Add logging to the primary plugin detection
2294 https://bugs.webkit.org/show_bug.cgi?id=119594
2296 Reviewed by Tim Horton.
2298 Add some simple logging to our primary plug-in detection.
2300 * WebProcess/WebPage/WebPage.cpp:
2301 (WebKit::WebPage::determinePrimarySnapshottedPlugIn):
2303 2013-08-08 Alexey Proskuryakov <ap@apple.com>
2305 WKBundleFrameCopyProvisionalURL crashes when there is no provisional loader
2306 https://bugs.webkit.org/show_bug.cgi?id=119587
2308 Reviewed by Darin Adler.
2310 * WebProcess/WebPage/WebFrame.cpp: (WebKit::WebFrame::provisionalURL): Added a null
2311 check, like we already have in WebFrame::url().
2313 2013-08-07 Antti Koivisto <antti@apple.com>
2315 Try to fix EFL build.
2321 2013-08-06 Jer Noble <jer.noble@apple.com>
2323 Crash when entering fullscreen video playback from a WebView using WebKit2
2324 https://bugs.webkit.org/show_bug.cgi?id=119531
2326 Reviewed by Tim Horton.
2328 Initialize wkWindowSetScaledFrame and wkWindowSetAlpha when initializing WebCoreSystemInterface.
2330 * WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
2331 (InitWebCoreSystemInterface):
2333 2013-08-06 Stephanie Lewis <slewis@apple.com>
2335 Update Order Files for Safari
2336 <rdar://problem/14517392>
2340 * mac/WebKit2.order:
2342 2013-08-04 Sam Weinig <sam@webkit.org>
2344 Remove support for HTML5 MicroData
2345 https://bugs.webkit.org/show_bug.cgi?id=119480
2347 Reviewed by Anders Carlsson.
2349 * Configurations/FeatureDefines.xcconfig:
2351 2013-08-06 Eunmi Lee <eunmi15.lee@samsung.com>
2353 [EFL][WK2] Implement gesture recognizer.
2354 https://bugs.webkit.org/show_bug.cgi?id=102643
2356 Reviewed by Gyuyoung Kim.
2358 Recognize tap, pan and pinch gestures using touch events.
2359 The tap gesture is separated into single tap, double tap and
2362 This patch references the webkit NIX port.
2363 https://github.com/WebKitNix/webkitnix
2365 * PlatformEfl.cmake:
2366 * UIProcess/API/efl/EwkView.cpp:
2368 (EwkView::doneWithTouchEvent):
2369 * UIProcess/API/efl/EwkView.h:
2370 * UIProcess/API/efl/GestureRecognizer.cpp: Added.
2371 (WebKit::GestureHandler::create):
2372 (WebKit::GestureHandler::GestureHandler):
2373 (WebKit::GestureHandler::handleSingleTap):
2374 (WebKit::GestureHandler::handleDoubleTap):
2375 (WebKit::GestureHandler::handleTapAndHold):
2376 (WebKit::GestureHandler::handlePanStarted):
2377 (WebKit::GestureHandler::handlePan):
2378 (WebKit::GestureHandler::handlePanFinished):
2379 (WebKit::GestureHandler::handlePinchStarted):
2380 (WebKit::GestureHandler::handlePinch):
2381 (WebKit::GestureHandler::handlePinchFinished):
2382 (WebKit::GestureRecognizer::GestureRecognizer):
2383 (WebKit::GestureRecognizer::~GestureRecognizer):
2384 (WebKit::GestureRecognizer::processTouchEvent):
2385 (WebKit::GestureRecognizer::doubleTapTimerCallback):
2386 (WebKit::GestureRecognizer::tapAndHoldTimerCallback):
2387 (WebKit::GestureRecognizer::exceedsPanThreshold):
2388 (WebKit::GestureRecognizer::exceedsDoubleTapThreshold):
2389 (WebKit::getPointAtIndex):
2390 (WebKit::createVectorWithWKArray):
2391 (WebKit::GestureRecognizer::noGesture):
2392 (WebKit::GestureRecognizer::singleTapGesture):
2393 (WebKit::GestureRecognizer::doubleTapGesture):
2394 (WebKit::GestureRecognizer::panGesture):
2395 (WebKit::GestureRecognizer::pinchGesture):
2396 (WebKit::GestureRecognizer::reset):
2397 (WebKit::GestureRecognizer::stopTapTimers):
2398 * UIProcess/API/efl/GestureRecognizer.h: Added.
2399 (WebKit::GestureRecognizer::create):
2401 2013-07-23 David Farler <dfarler@apple.com>
2403 Provide optional OTHER_CFLAGS, OTHER_CPPFLAGS, OTHER_LDFLAGS additions for building with ASAN
2404 https://bugs.webkit.org/show_bug.cgi?id=117762
2406 Reviewed by Mark Rowe.
2408 * Configurations/DebugRelease.xcconfig:
2409 Add ASAN_OTHER_CFLAGS, CPLUSPLUSFLAGS, LDFLAGS.
2410 * Configurations/WebContentProcess.xcconfig:
2411 Add ASAN_OTHER_LDFLAGS.
2412 * Configurations/WebKit2.xcconfig:
2413 Add ASAN_OTHER_LDFLAGS.
2415 2013-08-06 Andreas Kling <akling@apple.com>
2417 REGRESSION(r151403): Resizing is extremely laggy on many sites when plugins are disallowed.
2418 <http://webkit.org/b/119516>
2419 <rdar://problem/14648086>
2421 Reviewed by Simon Fraser.
2423 The web process relies on the WindowAndViewFramesChanged mechanism for caching a copy
2424 of the window rect for fast access from DOMWindow APIs.
2426 We retain part of the optimization introduced in r151403, namely not computing the
2427 viewFrameInWindowCoordinates and accessibilityPosition unless the web process needs them.
2429 * UIProcess/API/mac/WKView.mm:
2430 (-[WKView _updateWindowAndViewFrames]):
2432 2013-07-26 Mark Rowe <mrowe@apple.com>
2434 Logging should be configurable using human-readable channel names rather than crazy bitmasks
2435 <http://webkit.org/b/119031>
2437 Implement shared logic for initializing logging channels based on human-readable channel names in WTF,
2438 and rework the WebCore, WebKit and WebKit2 logging initialization on top of it.
2440 Logging channels may now be enabled by providing a comma-separated list of channel names, with the special
2441 "all" name enabling all channels. Channel names prefixed with a leading "-" will result in the named channel
2442 being disabled. For instance, specifying "all,-history,-loading" will result in all logging channels except
2443 for history and loading being enabled.
2445 For OS X developers, this also changes the name of the user defaults used to enable logging. This is done to allow
2446 the old user defaults to remain set for those people that need to switch between version of WebKit before and
2447 after this change. Where the old user default keys were WebCoreLogLevel, WebKitLogLevel and WebKit2LogLevel,
2448 the new user default keys are WebCoreLogging, WebKitLogging and WebKit2Logging.
2450 For GTK developers, this changes the separator used in the WEBKIT_DEBUG environment variable to a comma for
2451 consistency with the other platforms and to enable more code sharing.
2453 While doing this work I've also taken the opportunity to eliminate the need to touch multiple files when
2454 adding a new logging channel. Now only the header in the relevant project needs to be updated.
2456 Reviewed by Sam Weinig.
2458 * NetworkProcess/NetworkProcess.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2459 * Platform/Logging.cpp: Use WEBKIT2_LOG_CHANNELS to define all of the channels.
2460 (WebKit::initializeLogChannelsIfNecessary): Pass the channels and the log level string to the new WTF function
2461 that handles the initialization.
2462 (WebKit::logChannelByName): Renamed to match our naming conventions. Calls through to the new WTF function
2463 to find a log channel rather than repeating the names of the log channels a further two times each.
2464 (WebKit::logLevelString): Provide a no-op implementation.
2465 * Platform/Logging.h: Declare a WEBKIT2_LOG_CHANNELS macro that can be used to apply a preprocessor macro
2466 across the set of all logging channels. Use this macro to declare the logging channels.
2467 * Platform/efl/LoggingEfl.cpp:
2468 (WebKit::logLevelString): Pull the value out of the WEBKIT_DEBUG environment variable.
2469 * Platform/gtk/LoggingGtk.cpp:
2470 (WebKit::logLevelString): Ditto.
2471 * Platform/mac/Logging.mac.mm:
2472 (WebKit::logLevelString): Pull the value out of the WebKit2Logging user default key.
2473 * Platform/qt/LoggingQt.cpp:
2474 (WebKit::logLevelString): Pull the value out of the QT_WEBKIT_LOG environment variable.
2475 * Shared/WebKit2Initialize.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2476 * UIProcess/WebContext.cpp: Switch from WebCore's InitializeLogging.h to Logging.h.
2478 2013-08-05 Anders Carlsson <andersca@apple.com>
2480 Ignore the Apple Java placeholder plug-in
2481 https://bugs.webkit.org/show_bug.cgi?id=119494
2482 <rdar://problem/14610818>
2484 Reviewed by Beth Dakin.
2486 Never attempt to load the Java placeholder plug-in.
2488 * UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
2489 (WebKit::PluginInfoStore::shouldUsePlugin):
2491 2013-08-03 Tim Horton <timothy_horton@apple.com>
2493 Unreviewed, build and style fix for r153693.
2495 * UIProcess/WebProcessProxy.cpp:
2496 * WebProcess/Plugins/PDF/PDFPlugin.h:
2497 * WebProcess/WebPage/WebPage.cpp:
2499 2013-08-03 Tim Horton <timothy_horton@apple.com>
2501 Remove SimplePDFPlugin
2502 https://bugs.webkit.org/show_bug.cgi?id=119437
2504 Reviewed by Alexey Proskuryakov.
2506 * UIProcess/WebProcessProxy.cpp:
2507 (WebKit::WebProcessProxy::getPlugins):
2508 * WebProcess/WebPage/WebPage.cpp:
2509 (WebKit::WebPage::createPlugin):
2510 Don't add SimplePDFPlugin, nor try to instantiate it.
2512 * WebProcess/Plugins/PDF/PDFPlugin.h:
2513 * WebProcess/Plugins/PDF/PDFPlugin.mm:
2514 Merge previously inherited behavior in from SimplePDFPlugin.
2516 * WebKit2.xcodeproj/project.pbxproj:
2517 * WebProcess/Plugins/PDF/SimplePDFPlugin.h: Removed.
2518 * WebProcess/Plugins/PDF/SimplePDFPlugin.mm: Removed.
2519 Remove SimplePDFPlugin.
2521 2013-08-03 Tim Horton <timothy_horton@apple.com>
2523 Remove pageOverlayShouldApplyFadeWhenPainting() and adopt composited fade for the Mac port
2524 https://bugs.webkit.org/show_bug.cgi?id=119411
2526 Reviewed by Simon Fraser.
2528 Mac is the only holdout that performs non-composited fades of page
2529 overlays. We should adopt that mechanism (as a precursor to doing a
2530 CA-accelerated fade) and remove the now-unnecessary property.
2532 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
2533 (WKBundlePageOverlayFractionFadedIn):
2534 Always return 1 (fully-faded-in) so that clients who attempt to use this
2535 to bake the fade opacity into their painting will paint at full opacity,
2536 allowing us to do the composited fade separately.
2538 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
2539 * WebProcess/WebPage/DrawingArea.h:
2540 * WebProcess/WebPage/DrawingAreaImpl.cpp:
2541 * WebProcess/WebPage/DrawingAreaImpl.h:
2542 * WebProcess/WebPage/LayerTreeHost.h:
2543 * WebProcess/WebPage/PageOverlay.cpp:
2544 (WebKit::PageOverlay::PageOverlay):
2545 (WebKit::PageOverlay::setPage):
2546 (WebKit::PageOverlay::setNeedsDisplay):
2547 (WebKit::PageOverlay::fadeAnimationTimerFired):
2548 * WebProcess/WebPage/PageOverlay.h:
2549 Remove pageOverlayShouldApplyFadeWhenPainting and fractionFadedIn().
2551 * WebProcess/WebPage/FindController.cpp:
2552 (WebKit::FindController::drawRect):
2553 Draw the find overlay without taking the PageOverlay's fade into account.
2555 * WebProcess/WebPage/TapHighlightController.cpp:
2556 (WebKit::TapHighlightController::drawRect):
2557 Remove pageOverlayShouldApplyFadeWhenPainting. Since it's always
2558 "false" for all ports now, take the second path here.
2560 * WebProcess/WebPage/mac/LayerTreeHostMac.h:
2561 * WebProcess/WebPage/mac/LayerTreeHostMac.mm:
2562 (WebKit::LayerTreeHostMac::setPageOverlayOpacity):
2563 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
2564 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
2565 (WebKit::TiledCoreAnimationDrawingArea::setPageOverlayOpacity):
2566 Implement setPageOverlayOpacity for DrawingAreaImpl
2567 and TiledCoreAnimationDrawingArea.
2569 2013-08-02 Gavin Barraclough <barraclough@apple.com>
2571 Remove no-arguments constructor to PropertySlot
2572 https://bugs.webkit.org/show_bug.cgi?id=119460
2574 Reviewed by Geoff Garen.
2576 This constructor was unsafe if getValue is subsequently called,
2577 and the property is a getter. Simplest to just remove it.
2579 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2580 (WebKit::JSNPObject::getOwnPropertyDescriptor):
2582 2013-08-02 Ruth Fong <ruth_fong@apple.com>
2584 [Forms: color] WebColorPickerMac deconstructor shouldn't assert a variable
2585 <rdar://problem/14627633> and https://bugs.webkit.org/show_bug.cgi?id=119419
2587 Reviewed by Tim Horton.
2589 * UIProcess/mac/WebColorPickerMac.mm:
2590 (WebKit::WebColorPickerMac::~WebColorPickerMac): If the m_colorPickerUI variable
2591 is not null, then properly destroy it first before destroying WebColorPickerMac object.
2593 2013-08-02 Ruth Fong <ruth_fong@apple.com>
2595 [Forms: color] The positioning of the popover color well is inverted
2596 <rdar://problem/14635621> and https://bugs.webkit.org/show_bug.cgi?id=119455
2598 Reviewed by Tim Horton.
2600 This patch converts the coordinates of the <input type='color'> element to
2601 the window's base coordinate system.
2603 * UIProcess/mac/WebColorPickerMac.mm:
2604 (-[WKColorPopoverMac initWithFrame:inView:]):
2606 2013-08-01 Ruth Fong <ruth_fong@apple.com>
2608 [Forms: color] <input type='color'> popover color well implementation
2609 <rdar://problem/14411008> and https://bugs.webkit.org/show_bug.cgi?id=119356
2611 Reviewed by Benjamin Poulain.
2613 This patch adds an popover implementation of <input type='color'>.
2615 * Configurations/FeatureDefines.xcconfig: Added and enabled INPUT_TYPE_COLOR_POPOVER.
2617 * UIProcess/API/mac/PageClientImpl.mm:
2618 (WebKit::PageClientImpl::createColorPicker): Updated to pass the
2619 coordinates of the <input type='color'> element and the WKView
2620 object for the window.
2622 * UIProcess/WebPageProxy.cpp:
2623 (WebKit::WebPageProxy::viewWillStartLiveResize): Close popover color
2624 picker when the view is resized.
2625 (WebKit::WebPageProxy::viewInWindowStateDidChange): Close popover color
2626 picker when the view is no longer in the window.
2627 (WebKit::WebPageProxy::showColorPicker): Updated to show either a color panel
2628 or a popover color picker depending on whether INPUT_TYPE_COLOR_POPOVER is enabled.
2630 * UIProcess/mac/WebColorPickerMac.h:
2631 * UIProcess/mac/WebColorPickerMac.mm:
2632 (WebKit::WebColorPickerMac::create):
2633 (WebKit::WebColorPickerMac::~WebColorPickerMac):
2634 (WebKit::WebColorPickerMac::WebColorPickerMac):
2635 (WebKit::WebColorPickerMac::endPicker):
2636 (WebKit::WebColorPickerMac::setSelectedColor):
2637 (WebKit::WebColorPickerMac::showColorPicker):
2638 Methods updated to handle both the color panel implementation and
2639 the popover implementation; also renamed m_panel to m_colorPickerUI.
2641 (-[WKColorPopoverMac initWithFrame:WebCore::inView:]):
2642 (-[WKColorPopoverMac setAndShowPicker:WebKit::withColor:]):
2643 (-[WKColorPopoverMac dealloc]):
2644 (-[WKColorPopoverMac invalidate]):
2645 (-[WKColorPopoverMac windowWillClose:]):
2646 (-[WKColorPopoverMac didChooseColor:]):
2647 (-[WKColorPopoverMac setColor:]):
2648 WKColorPopoverMac provides the popover implementation of <input type='color'>.
2650 (-[WKColorPanelMac didChooseColor:]): Updated to match the interface of
2651 WKColorPickerMac::didChooseColor.
2653 2013-08-01 Anders Carlsson <andersca@apple.com>
2655 Lots of leaks under WebContext::pluginInfoStoreDidLoadPlugins()
2656 https://bugs.webkit.org/show_bug.cgi?id=119412
2658 Reviewed by Simon Fraser.
2660 For some sick reason, the WKContextClient plugInInformationBecameAvailable callback function
2661 expects a +1 reference to the plug-in array. Isolate that hack to WebContextClient so that
2662 we don't leak the array if there is no WKContextClient.
2664 * UIProcess/WebContext.cpp:
2665 (WebKit::WebContext::pluginInfoStoreDidLoadPlugins):
2666 * UIProcess/WebContextClient.cpp:
2667 (WebKit::WebContextClient::plugInInformationBecameAvailable):
2669 2013-08-01 Kwang Yul Seo <skyul@company100.net>
2671 Remove return statement in void function
2672 https://bugs.webkit.org/show_bug.cgi?id=119379
2674 Reviewed by Darin Adler.
2676 It does not make sense to return a value in void function.
2678 * WebProcess/WebProcess.cpp:
2679 (WebKit::addCaseFoldedCharacters):
2681 2013-08-01 Kwang Yul Seo <skyul@company100.net>
2683 [WK2] Add USE(SOUP) guard in WebProcess::destroyPrivateBrowsingSession
2684 https://bugs.webkit.org/show_bug.cgi?id=119381
2686 Reviewed by Darin Adler.
2688 The is a followup to r153355. I missed to add USE(SOUP) guard in
2689 WebProcess::destroyPrivateBrowsingSession.
2691 * WebProcess/WebProcess.cpp:
2692 (WebKit::WebProcess::destroyPrivateBrowsingSession):
2694 2013-08-01 Milian Wolff <milian.wolff@kdab.com>
2696 [Qt] Enable QML handling of crashed/unresponsive QtWebProcess
2697 https://bugs.webkit.org/show_bug.cgi?id=108474
2699 Forward the processDidCrash, didRelaunchProcess, processDidBecomeUnresponsive
2700 and processDidBecomeResponsive signals to QML's WebView.experimental.
2702 Reviewed by Jocelyn Turcotte.
2704 * UIProcess/API/qt/qquickwebview.cpp:
2705 (QQuickWebViewPrivate::processDidCrash):
2706 (QQuickWebViewPrivate::didRelaunchProcess):
2707 (QQuickWebViewPrivate::processDidBecomeUnresponsive):
2708 (QQuickWebViewPrivate::processDidBecomeResponsive):
2709 * UIProcess/API/qt/qquickwebview_p.h:
2710 * UIProcess/API/qt/qquickwebview_p_p.h:
2711 (QQuickWebViewPrivate):
2713 2013-07-31 Kwang Yul Seo <skyul@company100.net>
2715 Use emptyString instead of String("")
2716 https://bugs.webkit.org/show_bug.cgi?id=119335
2718 Reviewed by Darin Adler.
2720 Use emptyString() instead of String("") because it is better style and
2721 faster. This is a followup to r116908, removing all occurrences of
2722 String("") from WebKit.
2724 * Shared/mac/WebEventFactory.mm:
2725 (WebKit::textFromEvent):
2726 (WebKit::unmodifiedTextFromEvent):
2728 2013-07-31 Ruth Fong <ruth_fong@apple.com>
2730 <input type=color> Mac UI behaviour
2731 <rdar://problem/10269922> and https://bugs.webkit.org/show_bug.cgi?id=61276
2733 Implemented <input type='color'> on Mac using the native color picker.
2735 Reviewed by Brady Eidson.
2737 Code for WebColorPickerMac is derived from Chromium's color_chooser_mac.mm:
2738 https://code.google.com/p/chromium/codesearch#chromium/src/chrome/browser/ui/cocoa/color_chooser_mac.mm
2740 * Configurations/FeatureDefines.xcconfig: Enabled INPUT_TYPE_COLOR.
2742 * UIProcess/API/mac/PageClientImpl.mm:
2743 (WebKit::PageClientImpl::createColorPicker): Replaced stub implementation
2744 and return a WebColorPickerMac object.
2746 * UIProcess/WebColorPicker.cpp:
2747 (WebKit::WebColorPicker::invalidate): Updated to call endChooser().
2748 (WebKit::WebColorPicker::showColorPicker): Added stub implementation.
2749 * UIProcess/WebColorPicker.h:
2751 * UIProcess/WebPageProxy.cpp:
2752 (WebKit::WebPageProxy::close): Removed invalidation of removed color picker objects.
2753 (WebKit::WebPageProxy::showColorPicker): Updated so that it works for
2754 multiple <input type='color'> elements on a page.
2755 (WebKit::WebPageProxy::didEndColorPicker): Removed cleanup of removed color picker objects.
2756 (WebKit::WebPageProxy::resetStateAfterProcessExited): Removed cleanup of removed color picker objects.
2758 * UIProcess/mac/WebColorPickerMac.h: Added.
2759 * UIProcess/mac/WebColorPickerMac.mm: Added.
2760 (WebKit::WebColorPickerMac::create):
2761 (WebKit::WebColorPickerMac::~WebColorPickerMac):
2762 (WebKit::WebColorPickerMac::WebColorPickerMac):
2763 (WebKit::WebColorPickerMac::endPicker):
2764 (WebKit::WebColorPickerMac::setSelectedColor):
2765 (WebKit::WebColorPickerMac::didChooseColor):
2766 (WebKit::WebColorPickerMac::showColorPicker):
2767 WebColorPickerMac contains a reference to a WKColorPanelMac object
2768 and is responsible for maintaining the color picker UI.
2770 (-[WKColorPanelMac setAndShowPicker:withColor:]):
2771 (-[WKColorPanelMac invalidate]):
2772 (-[WKColorPanelMac windowWillClose:]):
2773 (-[WKColorPanelMac didChooseColor:]):
2774 (-[WKColorPanelMac setColor:]):
2775 WKColorPanelMac is a wrapper for a NSColorPanel object and
2776 is responsible for the color picker UI.
2778 * WebKit2.xcodeproj/project.pbxproj:
2780 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
2781 (WebKit::WebChromeClient::createColorChooser): Updated to always create a
2782 WebColorChooser object.
2784 * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2785 (WebKit::WebColorChooser::reattachColorChooser): Sets the page's
2786 active color chooser to the current object and pings the UIProcess
2787 to show the color picker.
2788 (WebKit::WebColorChooser::setSelectedColor): Only sets the color in the
2789 color picker if the WebColorChooser object is the active color element.
2790 * WebProcess/WebCoreSupport/WebColorChooser.h:
2792 2013-07-30 Gavin Barraclough <barraclough@apple.com>
2794 Some cleanup in JSValue::get
2795 https://bugs.webkit.org/show_bug.cgi?id=119343
2797 Reviewed by Geoff Garen.
2799 * WebProcess/Plugins/Netscape/JSNPObject.cpp:
2800 (WebKit::JSNPObject::getOwnPropertySlot):
2801 * WebProcess/Plugins/Netscape/JSNPObject.h:
2802 - getOwnPropertySlot, JSCell -> JSObject
2804 2013-07-31 Allan Sandfeld Jensen <allan.jensen@digia.com>
2806 [Qt] Build WebKit with C++11
2807 https://bugs.webkit.org/show_bug.cgi?id=119337
2809 Reviewed by Csaba Osztrogonác.
2811 We no longer need to enable C++11 specifically for WebKit2.
2815 2013-07-30 Tim Horton <timothy_horton@apple.com>
2817 DHTML drag can result in a null-deref under WebDragClient::startDrag
2818 https://bugs.webkit.org/show_bug.cgi?id=119297
2819 <rdar://problem/14213012>
2821 Reviewed by Simon Fraser.
2823 * WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
2824 (WebKit::convertImageToBitmap):
2825 ShareableBitmap::createShareable can return null, but shouldn't dereference that.
2827 2013-07-30 Ruth Fong <ruth_fong@apple.com>
2829 Rename <input type='color'> functions in WebPageProxy, WebColorPicker
2830 <rdar://problem/14549771> and https://bugs.webkit.org/show_bug.cgi?id=119097
2832 Reviewed by Tim Horton.
2834 In bug 119025, WebColorChooserProxy was renamed WebColorPicker. This patch makes the UIProcess consistent
2835 by renaming UIProcess INPUT_TYPE_COLOR functions from ...colorChooser to ...colorPicker.
2837 * UIProcess/WebColorPicker.cpp:
2838 (WebKit::WebColorPicker::endPicker):
2839 * UIProcess/WebColorPicker.h:
2840 * UIProcess/WebColorPickerResultListenerProxy.cpp:
2841 (WebKit::WebColorPickerResultListenerProxy::setColor):
2842 * UIProcess/WebPageProxy.cpp:
2843 (WebKit::WebPageProxy::showColorPicker):
2844 (WebKit::WebPageProxy::setColorPickerColor):
2845 (WebKit::WebPageProxy::endColorPicker):
2846 (WebKit::WebPageProxy::didEndColorPicker):
2847 * UIProcess/WebPageProxy.h:
2848 * UIProcess/WebPageProxy.messages.in:
2849 * UIProcess/qt/WebColorPickerQt.cpp:
2850 (WebKit::WebColorPickerQt::createItem):
2851 (WebKit::WebColorPickerQt::notifyColorSelected):
2852 (WebKit::WebColorPickerQt::endPicker):
2853 * UIProcess/qt/WebColorPickerQt.h:
2854 * WebProcess/WebCoreSupport/WebColorChooser.cpp:
2855 (WebKit::WebColorChooser::WebColorChooser):
2856 (WebKit::WebColorChooser::setSelectedColor):
2857 (WebKit::WebColorChooser::endChooser):
2858 * WebProcess/WebPage/WebPage.cpp:
2859 (WebKit::WebPage::didEndColorPicker):
2860 * WebProcess/WebPage/WebPage.h:
2861 * WebProcess/WebPage/WebPage.messages.in:
2863 2013-07-30 Anders Carlsson <andersca@apple.com>
2865 Speculative fix for crash due to string access on multiple threads
2866 https://bugs.webkit.org/show_bug.cgi?id=119279
2867 <rdar://problem/14267833>
2869 Reviewed by Darin Adler.
2871 We can't use String::isolatedCopy for passing the local storage directory to the storage thread since
2872 that returns a String that's copied and then destroyed after the call to bind returns, leaving a small window
2873 where the refcount can be accessed simultaneously from two threads.
2875 Work around this by passing a PassRefPtr<StringImpl> to bind instead; the act of copying the PassRefPtr will
2876 clear out the original and so when the original is destroyed the underlying StringImpl pointer will be null.
2878 * UIProcess/Storage/LocalStorageDatabaseTracker.cpp:
2879 (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectory):
2880 (WebKit::LocalStorageDatabaseTracker::setLocalStorageDirectoryInternal):
2881 * UIProcess/Storage/LocalStorageDatabaseTracker.h:
2883 2013-07-30 Tim Horton <timothy_horton@apple.com>
2885 Fix typo in enum name ("SelectionInSnaphot" -> "SelectionInSnapshot")
2886 https://bugs.webkit.org/show_bug.cgi?id=119275
2888 Reviewed by Simon Fraser.
2890 * WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
2891 (WebKit::imageForRect):
2892 * WebProcess/WebPage/WebPage.cpp:
2893 (WebKit::WebPage::scaledSnapshotWithOptions):
2896 2013-07-30 Anders Carlsson <andersca@apple.com>
2898 Plug-in process crashes if plug-in is destroyed as a result of sending NPObjectMessageReceiver::Deallocate
2899 https://bugs.webkit.org/show_bug.cgi?id=119270
2900 <rdar://problem/13368226>
2902 Reviewed by Darin Adler.
2904 Normally we use the PluginDestructionProtector RAII object to prevent plug-ins from being destroyed while
2905 they're executing code. However, in the case of the NPObjectMessageReceiver::Deallocate message, we can't do this
2906 since we don't know the plug-in or connection.
2908 Instead, add a counter to Connection that keeps track of whether sendSync is currently called and defer plug-in
2909 destruction if it is. (This approach is actually more robust and we should investigate getting rid of the destruction protector).
2911 * Platform/CoreIPC/Connection.cpp:
2912 (CoreIPC::Connection::Connection):
2913 (CoreIPC::Connection::sendSyncMessage):
2914 * Platform/CoreIPC/Connection.h:
2915 (CoreIPC::Connection::inSendSync):
2916 * PluginProcess/PluginControllerProxy.cpp:
2917 (WebKit::PluginControllerProxy::destroy):
2919 2013-07-30 Tim Horton <timothy_horton@apple.com>
2921 Null deref under WebPage::scaledSnapshotWithOptions
2922 https://bugs.webkit.org/show_bug.cgi?id=119243
2923 <rdar://problem/14502050>
2925 Reviewed by Darin Adler.
2927 * WebProcess/WebPage/WebPage.cpp:
2928 (WebKit::WebPage::scaledSnapshotWithOptions):
2929 WebFrame::coreFrame() can be null (if the Frame is already torn down),
2930 so we should check it.
2932 2013-07-30 Tim Horton <timothy_horton@apple.com>
2934 Null deref under PluginView::handlesPageScaleFactor()
2935 https://bugs.webkit.org/show_bug.cgi?id=119231
2936 <rdar://problem/14440207>
2938 Reviewed by Darin Adler.
2940 Null-check the PluginView in the caller as well.
2942 * WebProcess/WebPage/WebFrame.cpp:
2943 (WebKit::WebFrame::handlesPageScaleGesture):
2945 2013-07-30 Patrick Gansterer <paroga@webkit.org>
2947 Remove unused Download*.cpp files
2948 https://bugs.webkit.org/show_bug.cgi?id=119248
2950 Reviewed by Anders Carlsson.
2952 * Shared/Downloads/cfnet/DownloadCFNet.cpp: Removed.
2953 * Shared/Downloads/curl/DownloadCurl.cpp: Removed.
2955 2013-07-30 Jeff Miller <jeffm@apple.com>
2957 Page for WKPageLoaderClient processDidCrash callback always reports a process identifier of 0
2958 https://bugs.webkit.org/show_bug.cgi?id=119269
2959 <rdar://problem/14582393>
2961 Reviewed by Anders Carlsson.
2963 * UIProcess/WebPageProxy.cpp:
2964 (WebKit::WebPageProxy::processIdentifier):
2965 Return 0 if the page is closed instead of requiring isValid().
2967 2013-07-30 Kwang Yul Seo <skyul@company100.net>
2969 [WK2] Move the implementation of WebEditorClient::checkTextOfParagraph to WebEditorClient.cpp
2970 https://bugs.webkit.org/show_bug.cgi?id=119034
2972 Reviewed by Anders Carlsson.
2974 The Mac and EFL ports use the same implementation of
2975 WebEditorClient::checkTextOfParagraph and GTK will use the same
2976 implementation too. So rather than duplicating the same code in
2977 platform specific files, move the implementation to platform agnostic
2978 WebProcess/WebCoreSupport/WebEditorClient.cpp.
2980 * WebProcess/WebCoreSupport/WebEditorClient.cpp:
2981 (WebKit::WebEditorClient::checkTextOfParagraph):
2982 * WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
2983 * WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
2985 2013-07-30 Brian Holt <brian.holt@samsung.com>
2987 [WebKit2] [Gtk] WebKitResponsePolicyDecision URI response property incorrect
2988 https://bugs.webkit.org/show_bug.cgi?id=119258
2990 Reviewed by Martin Robinson.
2992 Corrected the installed URI response property from PROP_REQUEST to
2993 PROP_RESPONSE and type from WEBKIT_TYPE_URI_REQUEST to
2994 WEBKIT_TYPE_URI_RESPONSE.
2996 * UIProcess/API/gtk/WebKitResponsePolicyDecision.cpp:
2997 (webkit_response_policy_decision_class_init):
2999 2013-07-29 Carlos Garcia Campos <cgarcia@igalia.com>
3001 Unreviewed. Fix make distcheck.
3003 * GNUmakefile.list.am: Add missing header file to compilation.
3005 2013-07-29 Tim Horton <timothy_horton@apple.com>
3007 [wk2] Flush the WebProcess’ implicit transaction when using endDeferringViewInWindowChangesSync
3008 https://bugs.webkit.org/show_bug.cgi?id=119225
3009 <rdar://problem/14568841>
3011 Reviewed by Simon Fraser.
3013 Tell CoreAnimation to flush the implicit transaction before replying
3014 when using endDeferringViewInWindowChangesSync, as that method's contract
3015 is that the WebProcess is totally ready to be in-window when it returns.
3017 * UIProcess/API/mac/WKView.mm:
3018 (-[WKView endDeferringViewInWindowChanges]):
3019 Adopt viewInWindowStateDidChange.
3021 (-[WKView endDeferringViewInWindowChangesSync]):
3022 Adopt viewInWindowStateDidChange, asking it to send a reply only if we're going to wait for one.
3024 * UIProcess/WebPageProxy.cpp:
3025 (WebKit::WebPageProxy::viewInWindowStateDidChange):
3026 (WebKit::WebPageProxy::viewStateDidChange):
3027 Pull viewInWindowStateDidChange out of viewStateDidChange.
3028 Request a reply from SetIsInWindow if we're told to.
3030 * UIProcess/WebPageProxy.h: Add WantsReplyOrNot and viewInWindowStateDidChange.
3031 * WebProcess/WebPage/WebPage.cpp:
3032 (WebKit::WebPage::didUpdateInWindowStateTimerFired):
3033 Don't build this version on Mac, we'll have a WebPageMac version.
3035 (WebKit::WebPage::setIsInWindow):
3036 Only start the timer to send the didUpdateInWindowState reply if we're asked to.
3038 * WebProcess/WebPage/WebPage.h:
3039 * WebProcess/WebPage/WebPage.messages.in:
3040 Add an argument to the SetIsInWindow message for whether the WebProcess
3041 should inform the UIProcess when SetIsInWindow completes or not.
3043 * WebProcess/WebPage/mac/WebPageMac.mm:
3044 (WebKit::WebPage::didUpdateInWindowStateTimerFired):
3045 Tell CA to flush the implicit transaction before telling the UIProcess that
3046 we're finished moving in-window.
3048 2013-07-29 Tim Horton <timothy_horton@apple.com>
3050 Null deref under PluginView::handlesPageScaleFactor()
3051 https://bugs.webkit.org/show_bug.cgi?id=119231
3052 <rdar://problem/14440207>
3054 Reviewed by Simon Fraser.
3056 * WebProcess/Plugins/PluginView.cpp:
3057 (WebKit::PluginView::handlesPageScaleFactor):
3058 * WebProcess/Plugins/PluginView.h:
3059 Null-check m_plugin and check m_isInitialized.
3060 Make pageScaleFactor() and handlesPageScaleFactor const.
3062 2013-07-29 Anders Carlsson <andersca@apple.com>
3064 Remove setUnderlayPage() and associated code
3065 https://bugs.webkit.org/show_bug.cgi?id=119220
3066 <rdar://problem/14392426>
3068 Reviewed by Jessie Berlin.
3070 This is dead code, get rid of it.
3072 * WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
3073 * WebProcess/InjectedBundle/API/c/WKBundlePage.h:
3074 * WebProcess/WebPage/WebPage.cpp:
3075 (WebKit::WebPage::close):
3076 (WebKit::WebPage::layoutIfNeeded):
3077 (WebKit::WebPage::drawRect):
3078 * WebProcess/WebPage/WebPage.h:
3080 2013-07-29 Sergio Correia <sergio.correia@openbossa.org>
3082 CoordinatedGraphics: Add API to get and set the active state of a WebView
3083 https://bugs.webkit.org/show_bug.cgi?id=119067
3085 Reviewed by Noam Rosenthal.
3087 A view being in the "active" state generally means that it is not in the
3088 "background", although this definition can vary depending on the platform
3089 under consideration.
3091 This patch adds the following APIs to WKView:
3092 - bool WKViewIsActive(WKViewRef)
3093 This API accepts a WKViewRef as parameter and returns a boolean indicating
3094 whether the given view is active.
3096 - void WKViewSetIsActive(WKViewRef, bool)
3097 This API accepts a WKViewRef and a boolean as parameteres, and it sets the
3098 active state of the given view to the given boolean argument.
3100 * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
3101 (WKViewIsActive): API added.
3102 (WKViewSetIsActive): Ditto.
3103 * UIProcess/API/C/CoordinatedGraphics/WKView.h: Export aforementioned API.
3104 * UIProcess/CoordinatedGraphics/WebView.cpp:
3105 (WebKit::WebView::initialize): Use new setActive method.
3106 (WebKit::WebView::setActive): Added method to set the active state of the
3108 (WebKit::WebView::isActive): Added method to return the active state of
3110 (WebKit::WebView::enterAcceleratedCompositingMode): Use new setActive
3112 (WebKit::WebView::exitAcceleratedCompositingMode): Ditto.
3113 * UIProcess/CoordinatedGraphics/WebView.h: Added declarations of isActive
3116 2013-07-29 Jae Hyun Park <jae.park@company100.net>
3118 Remove duplicated LayerTreeHost::supportsAcceleratedCompositing
3119 https://bugs.webkit.org/show_bug.cgi?id=118949
3121 Reviewed by Noam Rosenthal.
3123 * WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:
3124 * WebProcess/WebPage/LayerTreeHost.h:
3125 (WebKit::LayerTreeHost::supportsAcceleratedCompositing):
3127 2013-07-29 Zan Dobersek <zdobersek@igalia.com>
3129 [Automake] Remove references to non-existent *_CFLAGS and *_LIBS variables
3130 https://bugs.webkit.org/show_bug.cgi?id=119212
3132 Reviewed by Carlos Garcia Campos.
3134 * GNUmakefile.am: Remove references to GLOBALDEPS_(CFLAGS|LIBS) and CLUTTER_(CFLAGS|LIBS)
3135 variables that are not defined during the configuration process.
3137 2013-07-28 Grzegorz Czajkowski <g.czajkowski@samsung.com>
3139 [EFL][WK2] Simplify context_menu_spelling_items_availability unit test
3140 https://bugs.webkit.org/show_bug.cgi?id=119085
3142 Reviewed by Gyuyoung Kim.
3144 Use findContextMenuItem method to check whether the item
3145 appears in context menu.
3147 * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
3148 (EWK2TextCheckerTest::findContextMenuItem):
3149 Do not report failure inside the method.
3150 It doesn't allow to test the negative test cases.
3152 (EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
3153 Use findContextMenuItem method.
3155 (EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
3156 (EWK2TextCheckerTest::selectLearnSpelling):
3157 (EWK2TextCheckerTest::selectIgnoreSpelling):
3158 Verify the return value of findContextMenuItem.
3161 Reset wasContextMenuShown variable, it's needed after r152153.
3162 Use waitUntilTrue method.
3164 2013-07-27 Jacky Jiang <zhajiang@blackberry.com>
3166 Replace all uses of GraphicsLayer::create function with the one that takes a GraphicsLayerFactory
3167 https://bugs.webkit.org/show_bug.cgi?id=119186
3169 Reviewed by Anders Carlsson.
3171 * UIProcess/mac/RemoteLayerTreeHost.mm:
3172 (WebKit::RemoteLayerTreeHost::getOrCreateLayer):
3174 2013-07-27 Chris Fleizach <cfleizach@apple.com>
3176 AX: VoiceOver not working with data detection page overlays
3177 https://bugs.webkit.org/show_bug.cgi?id=118680
3179 Reviewed by Sam Weinig.
3181 Expose API in BundlePageOverlay so that accessibility attributes can be retrieved through the overlay.
3182 This requires two methods in a new callback struct. One to copy the attribute names, and the other to
3183 copy the attribute values. I've folded both parameterized and non-parameterized attribute names into one method
3184 with a boolean to determine which one should be used. The non-parameterized attributes are not used or passed to the
3185 overlay at this time as there are no clients with such a need.
3187 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
3188 (PageOverlayClientImpl::setAccessibilityClient):
3189 (PageOverlayClientImpl::PageOverlayClientImpl):
3190 (PageOverlayClientImpl::copyAccessibilityAttributeValue):
3191 (PageOverlayClientImpl::copyAccessibilityAttributeNames):
3192 (WKBundlePageOverlaySetAccessibilityClient):
3193 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
3194 * WebProcess/WebPage/PageOverlay.cpp:
3195 (WebKit::PageOverlay::copyAccessibilityAttributeValue):
3196 (WebKit::PageOverlay::copyAccessibilityAttributeNames):
3197 * WebProcess/WebPage/PageOverlay.h:
3198 (WebKit::PageOverlay::Client::copyAccessibilityAttributeValue):
3199 (WebKit::PageOverlay::Client::copyAccessibilityAttributeNames):
3200 (WebKit::PageOverlay::client):
3201 * WebProcess/WebPage/WebPage.cpp:
3202 (WebKit::WebPage::pageOverlayCopyAccessibilityAttributeValue):
3203 (WebKit::WebPage::pageOverlayCopyAccessibilityAttributesNames):
3204 * WebProcess/WebPage/WebPage.h:
3205 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
3206 (-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
3207 (-[WKAccessibilityWebPageObject _convertScreenPointToWindow:]):
3208 (-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
3210 2013-07-27 Simon Fraser <simon.fraser@apple.com>
3212 If entering fullscreen for a window fails, don't leave things in a bad state
3213 https://bugs.webkit.org/show_bug.cgi?id=119179
3215 Reviewed by Sam Weinig.
3217 On Lion, attempting to take a video fullscreen when the Safari window is already
3218 fullscreen can sometimes fail, and AppKit informs us via windowDidFailToEnterFullScreen:
3220 When this happens we have to undo the work done when entering fullscreen, to
3221 avoid leaving things in a bad state.
3223 * UIProcess/mac/WKFullScreenWindowController.mm:
3224 (-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
3226 2013-07-26 Tim Horton <timothy_horton@apple.com>
3228 Add a mode where autosizing fixes the FrameView height to at least the WKView height
3229 https://bugs.webkit.org/show_bug.cgi?id=119104
3230 <rdar://problem/14549021>
3232 Reviewed by Anders Carlsson.
3234 * Shared/WebPageCreationParameters.cpp:
3235 (WebKit::WebPageCreationParameters::encode):
3236 (WebKit::WebPageCreationParameters::decode):
3237 * Shared/WebPageCreationParameters.h:
3238 Add autoSizingShouldExpandToViewHeight parameter.
3240 * UIProcess/API/mac/WKView.mm:
3241 (-[WKView minimumWidthForAutoLayout]):
3242 (-[WKView setMinimumWidthForAutoLayout:]):
3243 Un-deprecate these as they're still useful if not sending a height.
3245 (-[WKView shouldExpandToViewHeightForAutoLayout]):
3246 (-[WKView setShouldExpandToViewHeightForAutoLayout:]):
3247 * UIProcess/API/mac/WKViewPrivate.h:
3248 New property, forward to WebPageProxy.
3250 * UIProcess/WebPageProxy.cpp:
3251 (WebKit::WebPageProxy::WebPageProxy):
3252 (WebKit::WebPageProxy::creationParameters):
3253 (WebKit::WebPageProxy::setAutoSizingShouldExpandToViewHeight):
3254 * UIProcess/WebPageProxy.h:
3255 (WebKit::WebPageProxy::autoSizingShouldExpandToViewHeight):
3256 New property, forward to WebPage.
3258 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3259 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3260 If enabled, update the FrameView's autoSizeFixedMinimumHeight.
3262 * WebProcess/WebPage/WebPage.cpp:
3263 (WebKit::WebPage::WebPage):
3264 (WebKit::WebPage::setAutoSizingShouldExpandToViewHeight):
3265 * WebProcess/WebPage/WebPage.h:
3266 (WebKit::WebPage::autoSizingShouldExpandToViewHeight):
3267 New property; if enabled, set FrameView's autoSizeFixedMinimumHeight,
3268 otherwise reset it to 0.
3270 * WebProcess/WebPage/WebPage.messages.in:
3271 * WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
3272 (WebKit::TiledCoreAnimationDrawingArea::updateIntrinsicContentSizeTimerFired):
3273 (WebKit::TiledCoreAnimationDrawingArea::updateGeometry):
3274 Retrieve intrinsic content size explicitly from the FrameView, as
3275 it may not have used it as its final contentsSize if
3276 autoSizeFixedMinimumHeight is set.
3278 Set the WebPage's size in case the load is committed so that the
3279 WebFrameLoaderClient doesn't reset us to the wrong size.
3281 Update autoSizeFixedMinimumHeight if enabled when the view size changes.
3283 2013-07-25 Andreas Kling <akling@apple.com>
3285 ChromeClient::focusedNodeChanged() should be focusedElementChanged().
3286 <http://webkit.org/b/119110>
3288 Reviewed by Anders Carlsson.
3290 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
3291 (WebKit::WebChromeClient::focusedElementChanged):
3292 * WebProcess/WebCoreSupport/WebChromeClient.h:
3294 2013-07-25 Kwang Yul Seo <skyul@company100.net>
3296 [WK2][Soup] Add private browsing support
3297 https://bugs.webkit.org/show_bug.cgi?id=118657
3299 Reviewed by Gustavo Noronha Silva.
3301 Support private browsing in WK2 by implementing private browsing
3302 related methods in WebFrameNetworkingContext.
3304 * WebProcess/InjectedBundle/InjectedBundle.cpp:
3305 (WebKit::InjectedBundle::setPrivateBrowsingEnabled):
3306 Add USE(SOUP) guard.
3308 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
3309 Add private browsing support methods. Copied from the Mac port.
3310 (WebKit::WebFrameNetworkingContext::ensurePrivateBrowsingSession):
3311 (WebKit::WebFrameNetworkingContext::destroyPrivateBrowsingSession):
3312 (WebKit::WebFrameNetworkingContext::storageSession):
3313 Check if the frame enables private browsing and return the private
3315 * WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h:
3317 * WebProcess/WebProcess.cpp:
3318 (WebKit::WebProcess::ensurePrivateBrowsingSession):
3319 Add USE(SOUP) guard.
3321 2013-07-25 Kwang Yul Seo <skyul@company100.net>
3323 Build fix: use of long long in CoreIPC::ArgumentEncoder and CoreIPC::ArgumentDecoder
3324 https://bugs.webkit.org/show_bug.cgi?id=118228
3326 Reviewed by Anders Carlsson.
3328 Build fails on some platforms where int64_t and long long are different types.
3330 * Shared/FileAPI/BlobRegistrationData.cpp:
3331 (WebKit::BlobRegistrationData::encode):
3332 Add explicit casts to int64_t.
3333 (WebKit::BlobRegistrationData::decode):
3334 Use int64_t instead of long long.
3336 2013-07-25 Anders Carlsson <andersca@apple.com>
3338 Remove lastModifiedDate from ResourceResponse
3339 https://bugs.webkit.org/show_bug.cgi?id=119092
3341 Reviewed by Andreas Kling.
3343 Update for WebCore changes.
3345 * WebProcess/Plugins/PluginView.cpp:
3346 (WebKit::lastModifiedDate):
3347 Use ResourceResponse::lastModified() to get the last modified date.
3349 (WebKit::PluginView::Stream::didReceiveResponse):
3350 Call the static lastModified function.
3352 (WebKit::PluginView::manualLoadDidReceiveResponse):
3355 2013-07-25 Carlos Garcia Campos <cgarcia@igalia.com>
3357 [GTK] Add support for running unit tests in the web process
3358 https://bugs.webkit.org/show_bug.cgi?id=118427
3360 Reviewed by Gustavo Noronha Silva.
3362 Some tests, like GObject DOM bindings API tests, run entirely in
3363 the WebProcess, so we just need to start the test from the UI
3364 process and wait until the test finishes running in the
3365 WebProcess. Tests are split in two files, one containing the
3366 actual test that runs in the WebProcess and another one to add the
3367 tests to the glib test system that works as a
3368 proxy. WebProcessTestRunner class starts a private DBus session
3369 bus and starts the tests sending a message to the WebExtension
3370 waiting until it finishes or fails. WebProcess tests are created
3371 by defining a class derived from WebProcessTest class and
3372 implementing the static create method and the virtual runTest
3373 method. The macro REGISTER_TEST is used by the web process tests
3374 to register their test cases. This patch includes the migration
3375 of the WebKitDOMNode test, all other GObject DOM bindings tests
3376 will be migrated in the same way in follow up patches.
3378 * UIProcess/API/gtk/tests/DOMNodeTest.cpp: Added.
3379 (WebKitDOMNodeTest::create): Create a new WebKitDOMNodeTest.
3380 (WebKitDOMNodeTest::webPageFromArgs): Get the pageID parameter
3381 from the arguments dictionary.
3382 (WebKitDOMNodeTest::testHierarchyNavigation):
3383 (WebKitDOMNodeTest::testInsertion):
3384 (WebKitDOMNodeTest::runTest): Run the given test.
3385 (registerTests): Register test cases.
3386 * UIProcess/API/gtk/tests/GNUmakefile.am: Add new files to
3388 * UIProcess/API/gtk/tests/TestDOMNode.cpp: Added.
3389 (testWebKitDOMNodeHierarchyNavigation):
3390 (testWebKitDOMNodeInsertion):
3393 * UIProcess/API/gtk/tests/TestMain.cpp:
3394 (main): Unset DBUS_SESSION_BUS_ADDRESS environment variable to
3395 make sure that the GLib bus singleton is initialized by the
3396 private DBus session bus created by the tests.
3397 * UIProcess/API/gtk/tests/WebProcessTest.cpp: Added.
3398 (testsMap): Initialize and get the global map of tests.
3399 (WebProcessTest::add): Add a new test to the map, keeping a
3400 function to create the test.
3401 (WebProcessTest::create): Create a test for the given name.
3402 (methodCallCallback): Handle RunTest DBus method. It creates and
3403 runs the given test.
3404 (webkit_web_extension_initialize):Register the DBus service for
3406 * UIProcess/API/gtk/tests/WebProcessTest.h: Added.
3407 * UIProcess/API/gtk/tests/WebProcessTestRunner.cpp: Added.
3408 (WebProcessTestRunner::WebProcessTestRunner): Start a private DBus
3409 session bus and get a connection to it.
3410 (WebProcessTestRunner::~WebProcessTestRunner): Stop the private
3412 (WebProcessTestRunner::proxyCreatedCallback):
3413 (WebProcessTestRunner::proxy): Create a new proxy to send messages
3414 to the WebExtension if it doesn't exists.
3415 (WebProcessTestRunner::onNameAppeared): Called when the DBus
3416 service has been registered in the WebExtension and it's safe to
3418 (WebProcessTestRunner::onNameVanished): Called when the DBus
3419 service is unregistered. This happens when the web process crash,
3420 so we just exit here, because the g_asserts in the web process
3421 have already registered the error message.
3422 (WebProcessTestRunner::testFinishedCallback): Called when the
3423 WebProcess tests has finished.
3424 (WebProcessTestRunner::runTest): Send a message to the
3425 WebExtension to start the given test and monitor the service.
3426 (WebProcessTestRunner::finishTest): Save the test result and
3427 finish the main loop.
3428 * UIProcess/API/gtk/tests/WebProcessTestRunner.h: Added.
3430 2013-05-05 Geoffrey Garen <ggaren@apple.com>
3432 Rolled back in r149527 with crash fixed.
3434 Reviewed by Oliver Hunt.
3436 Rationalized 'this' value conversion
3437 https://bugs.webkit.org/show_bug.cgi?id=115542
3439 2013-07-24 Ruth Fong <ruth_fong@apple.com>
3441 Rename WebColorChooserProxy
3442 <rdar://problem/14528039> and https://bugs.webkit.org/show_bug.cgi?id=119025
3444 Reviewed by Brady Eidson.
3446 Renamed WebColorChooserProxy to WebColorPicker since the name WebColorChoooserProxy
3447 implies that it represents the same object as WebColorChooser, which is not true.
3448 Also, renamed createColorChooserProxy to createColorPicker in WebPageProxy and
3449 platform-equivalent versions of it.
3452 * GNUmakefile.list.am:
3454 * UIProcess/API/gtk/PageClientImpl.cpp:
3455 (WebKit::PageClientImpl::createColorPicker):
3456 * UIProcess/API/gtk/PageClientImpl.h:
3457 * UIProcess/API/mac/PageClientImpl.h:
3458 * UIProcess/API/mac/PageClientImpl.mm:
3459 (WebKit::PageClientImpl::createColorPicker):
3460 * UIProcess/API/qt/raw/qrawwebview.cpp:
3461 (QRawWebViewPrivate::createColorPicker):
3462 * UIProcess/API/qt/raw/qrawwebview_p_p.h:
3463 * UIProcess/CoordinatedGraphics/WebView.cpp:
3464 (WebKit::WebView::createColorPicker):
3465 * UIProcess/CoordinatedGraphics/WebView.h:
3466 * UIProcess/PageClient.h:
3467 * UIProcess/WebColorChooserProxy.cpp: Removed.
3468 * UIProcess/WebColorChooserProxy.h: Removed.
3469 * UIProcess/WebColorPicker.cpp: Copied from Source/WebKit2/UIProcess/WebColorChooserProxy.cpp.
3470 (WebKit::WebColorPicker::WebColorPicker):
3471 (WebKit::WebColorPicker::~WebColorPicker):
3472 (WebKit::WebColorPicker::endChooser):
3473 (WebKit::WebColorPicker::setSelectedColor):
3474 * UIProcess/WebColorPicker.h: Copied from Source/WebKit2/UIProcess/WebColorChooserProxy.h.
3475 (WebKit::WebColorPicker::create):
3476 * UIProcess/WebPageProxy.cpp:
3477 (WebKit::WebPageProxy::close):
3478 (WebKit::WebPageProxy::showColorChooser):
3479 (WebKit::WebPageProxy::setColorChooserColor):
3480 (WebKit::WebPageProxy::endColorChooser):
3481 (WebKit::WebPageProxy::didEndColorChooser):
3482 (WebKit::WebPageProxy::resetStateAfterProcessExited):
3483 * UIProcess/WebPageProxy.h: Renamed m_colorChooser to m_colorPicker.
3484 * UIProcess/qt/QtPageClient.cpp:
3485 (WebKit::QtPageClient::createColorPicker):
3486 * UIProcess/qt/QtPageClient.h:
3487 * UIProcess/qt/WebColorChooserProxyQt.cpp: Removed.
3488 * UIProcess/qt/WebColorChooserProxyQt.h: Removed.
3489 * UIProcess/qt/WebColorPickerQt.cpp: Added.
3490 (WebKit::ColorChooserContextObject::ColorChooserContextObject):
3491 (WebKit::ColorChooserContextObject::currentColor):
3492 (WebKit::ColorChooserContextObject::elementRect):
3493 (WebKit::ColorChooserContextObject::accept):
3494 (WebKit::ColorChooserContextObject::reject):
3495 (WebKit::WebColorPickerQt::WebColorPickerQt):
3496 (WebKit::WebColorPickerQt::~WebColorPickerQt):
3497 (WebKit::WebColorPickerQt::createItem):
3498 (WebKit::WebColorPickerQt::createContext):
3499 (WebKit::WebColorPickerQt::setSelectedColor):
3500 (WebKit::WebColorPickerQt::notifyColorSelected):
3501 (WebKit::WebColorPickerQt::endChooser):
3502 * UIProcess/qt/WebColorPickerQt.h: Added.
3503 (WebKit::WebColorPickerQt::create):
3504 * WebKit2.xcodeproj/project.pbxproj:
3506 2013-07-24 Anders Carlsson <andersca@apple.com>
3508 Crash when calling WKPageGetProcessIdentifier after aborted process launch
3509 https://bugs.webkit.org/show_bug.cgi?id=119069
3510 <rdar://problem/14494064>
3512 Reviewed by Andreas Kling.
3514 * UIProcess/WebPageProxy.cpp:
3515 (WebKit::WebPageProxy::processIdentifier):
3516 Check if the page is closed instead of checking whether we have a process - We'll always have a process.
3518 (WebKit::WebPageProxy::isValid):
3521 * UIProcess/WebPageProxy.h:
3523 2013-07-24 Kwang Yul Seo <skyul@company100.net>
3525 [WK2][Soup] Add entry point for network process
3526 https://bugs.webkit.org/show_bug.cgi?id=110136
3528 Reviewed by Gustavo Noronha Silva.
3530 Original patch by Balazs Kelemen <kbalazs@webkit.org>.
3532 Added a common entry point for non-Mac Unix ports.
3534 * NetworkProcess/unix/NetworkProcessMainUnix.cpp: Added.
3535 (WebKit::NetworkProcessMain):
3536 * NetworkProcess/unix/NetworkProcessMainUnix.h: Added.
3537 * unix/NetworkMainUnix.cpp: Added.
3540 2013-07-24 Jessie Berlin <jberlin@apple.com>
3542 Remove WKPageGetPlugInInformation - it is not used anymore
3543 https://bugs.webkit.org/show_bug.cgi?id=119047
3545 Reviewed by Alexey Proskuryakov.
3547 Revert r151172, which fixed a crash introduced in r151043, r151054, which fixed some naming
3548 and ref-churn issues introduced in r151043, and r151043, which added
3549 WKPageGetPlugInInformation.
3551 * UIProcess/API/C/mac/WKPagePrivateMac.cpp:
3552 (WKPageIsURLKnownHSTSHost):
3553 * UIProcess/API/C/mac/WKPagePrivateMac.h:
3554 * UIProcess/Plugins/PluginProcessManager.h:
3555 * UIProcess/Plugins/mac/PluginProcessManagerMac.mm:
3556 * UIProcess/WebPageProxy.cpp:
3557 (WebKit::WebPageProxy::close):
3558 * UIProcess/WebPageProxy.h:
3559 * UIProcess/WebPageProxy.messages.in:
3560 * UIProcess/mac/WebPageProxyMac.mm:
3561 * WebProcess/Plugins/Netscape/NetscapePlugin.h:
3562 * WebProcess/Plugins/PDF/SimplePDFPlugin.h:
3563 * WebProcess/Plugins/Plugin.h:
3564 * WebProcess/Plugins/PluginProxy.h:
3565 * WebProcess/Plugins/PluginView.h:
3566 * WebProcess/WebPage/WebPage.h:
3567 * WebProcess/WebPage/WebPage.messages.in:
3568 * WebProcess/WebPage/mac/WebPageMac.mm:
3570 2013-07-24 Jessie Berlin <jberlin@apple.com>
3572 Remove WKPageGetPlugInInformation - it is not used anymore
3573 https://bugs.webkit.org/show_bug.cgi?id=119047
3575 Rubber-stamped by Alexey Proskuryakov.
3577 Revert r152328, which added a key used only in the callback info for
3578 WKPageGetPlugInInformation.
3580 * Shared/API/c/WKPluginInformation.cpp:
3581 * Shared/API/c/WKPluginInformation.h:
3582 * Shared/Plugins/Netscape/PluginInformation.cpp:
3583 * Shared/Plugins/Netscape/PluginInformation.h:
3584 * UIProcess/WebPageProxy.h:
3585 * UIProcess/WebPageProxy.messages.in:
3586 * UIProcess/mac/WebPageProxyMac.mm:
3587 (WebKit::WebPageProxy::containsPlugInCallback):
3588 * WebProcess/WebPage/mac/WebPageMac.mm:
3589 (WebKit::WebPage::containsPluginViewsWithPluginProcessToken):
3591 2013-07-24 Anton Obzhirov <a.obzhirov@samsung.com>
3593 [GTK] TestInspectorServer unit test is timing out
3594 https://bugs.webkit.org/show_bug.cgi?id=105866
3596 Reviewed by Gustavo Noronha Silva.
3598 The test failed because it couldn't find inspector resources in default folder
3599 (make install step was missing). It uses now resources available in
3600 WebKitBuild folder. WebInspectorServerGtk was refactored as well to make
3601 easier to use WEBKIT_INSPECTOR_SERVER_PATH variable.
3603 * UIProcess/API/gtk/tests/GNUmakefile.am:
3604 * UIProcess/API/gtk/tests/InspectorTestServer.cpp:
3606 * UIProcess/API/gtk/tests/TestInspectorServer.cpp:
3607 (testInspectorServerPageList):
3608 * UIProcess/InspectorServer/gtk/WebInspectorServerGtk.cpp:
3609 (WebKit::WebInspectorServer::platformResourceForPath):
3610 (WebKit::WebInspectorServer::buildPageList):
3611 (WebKit::WebInspectorServer::inspectorServerFilesPath):
3613 2013-07-23 Simon Cooper <scooper@apple.com>
3615 10.7: Java applets do not work due to sandbox violation/exception
3616 https://bugs.webkit.org/show_bug.cgi?id=118920
3617 <rdar://problem/14471541&12910934&14223830&14260729&14267679>
3619 Reviewed by Alexey Proskuryakov.
3621 Introduce versioning into the common profile and use it to fix
3622 a number of issues with Java on 10.7 and 10.8. Allow writing the
3623 com.apple.java.util.prefs preference file. This change also
3624 introduces a "/Library/Application Support/Java/PublicFiles"
3625 area which Java can read without any restrictions. Files written
3626 to this location will need to be created and written to by
3627 a privileged process.
3629 * Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
3630 * Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
3632 2013-07-23 Eunmi Lee <eunmi15.lee@samsung.com>
3634 [EFL][WK2] Add doneWithTouchEvent callback to the WKViewClient.
3635 https://bugs.webkit.org/show_bug.cgi?id=110085
3637 Reviewed by Kenneth Rohde Christiansen.
3639 Add doneWithTouchEvent callback to the WKViewClient in order to get the
3640 result of touch events in the EwkView. The result will be used to
3641 recognize gestures in the Bug 102643.
3643 APIs to get values from WKTouchEventRef and WKTouchPointRef are added
3644 because WKTypeRef is opaque to the applications.
3646 * UIProcess/API/C/CoordinatedGraphics/WKView.h:
3647 * UIProcess/API/C/efl/WKAPICastEfl.h:
3649 * UIProcess/API/C/efl/WKEventEfl.cpp:
3650 (WKTouchEventGetType):
3651 (WKTouchEventGetTouchPoints):
3652 (WKTouchEventGetModifiers):
3653 (WKTouchEventGetTimestamp):
3654 (WKTouchPointGetID):
3655 (WKTouchPointGetState):
3656 (WKTouchPointGetScreenPosition):
3657 (WKTouchPointGetPosition):
3658 (WKTouchPointGetRadius):
3659 (WKTouchPointGetRotationAngle):
3660 (WKTouchPointGetForceFactor):
3661 * UIProcess/API/C/efl/WKEventEfl.h:
3662 * UIProcess/API/efl/EwkView.cpp:
3663 (EwkView::doneWithTouchEvent):
3664 * UIProcess/API/efl/EwkView.h:
3665 * UIProcess/CoordinatedGraphics/WebView.cpp:
3666 (WebKit::WebView::doneWithTouchEvent):
3667 * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
3668 (WebKit::WebViewClient::doneWithTouchEvent):
3669 * UIProcess/CoordinatedGraphics/WebViewClient.h:
3670 * UIProcess/efl/ViewClientEfl.cpp:
3671 (WebKit::ViewClientEfl::doneWithTouchEvent):
3672 (WebKit::ViewClientEfl::ViewClientEfl):
3673 * UIProcess/efl/ViewClientEfl.h:
3675 2013-07-22 Alexey Proskuryakov <ap@apple.com>
3677 Frequent MESSAGE_CHECK failures in WebPageProxy::didReceiveEvent
3678 https://bugs.webkit.org/show_bug.cgi?id=118976
3679 <rdar://problem/14155030>
3681 Reviewed by Sam Weinig.
3683 * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::resetStateAfterProcessExited):
3684 Clear m_gestureEventQueue, just like we clear all other event queues here.
3686 2013-07-21 Anders Carlsson <andersca@apple.com>
3688 Java Updater not launched on Lion and Mountain Lion
3689 https://bugs.webkit.org/show_bug.cgi?id=118953
3690 <rdar://problem/14496721>
3692 Reviewed by Sam Weinig.
3694 On Lion and Mountain Lion, -[NSURL isEqual:] will return NO for two file URLs if one of
3695 them has "localhost" specified, even if the paths are otherwise equal. Work around this by
3696 comparing the paths directly.
3698 * UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
3699 (WebKit::isJavaUpdaterURL):
3701 2013-07-19 Morten Stenshorne <mstensho@opera.com>
3703 [GTK] Need a way to enable region based columns from the command line
3704 https://bugs.webkit.org/show_bug.cgi?id=116611
3706 Reviewed by Martin Robinson.
3708 Add an environment variable to enable experimental features.
3710 This provides a means to enable experimental features without polluting
3713 Environment variable name: WEBKITGTK_EXPERIMENTAL_FEATURES
3715 Format: WEBKITGTK_EXPERIMENTAL_FEATURES="<feature1>=1,<feature2>=1,..."
3716 Or, to enable all experimental features: WEBKITGTK_EXPERIMENTAL_FEATURES=all
3718 So far the only feature is region based columns (implement multicol using
3719 the CSS regions implementation rather than ColumnInfo & co) - REGION_BASED_COLUMNS.
3721 Example: WEBKITGTK_EXPERIMENTAL_FEATURES="REGION_BASED_COLUMNS=1"
3723 * GNUmakefile.list.am:
3724 * PlatformGTK.cmake:
3725 * UIProcess/API/gtk/WebKitSettings.cpp:
3726 (webKitSettingsConstructed):
3727 (webkit_settings_class_init):
3728 * UIProcess/gtk/ExperimentalFeatures.cpp: Added.
3731 (WebKit::ExperimentalFeatures::ExperimentalFeatures):
3732 (WebKit::ExperimentalFeatures::isEnabled):
3733 (WebKit::ExperimentalFeatures::setEnableByName):
3734 (WebKit::ExperimentalFeatures::parseEnvironment):
3735 * UIProcess/gtk/ExperimentalFeatures.h: Added.
3737 (ExperimentalFeatures):
3739 2013-07-18 Eunmi Lee <eunmi15.lee@samsung.com>
3741 [WK2] Share Qt port's codes to find zoomable area with CoordinatedGraphics.
3742 https://bugs.webkit.org/show_bug.cgi?id=118585
3744 Reviewed by Anders Carlsson.
3746 The function to find zoomable area is needed in order to implement the
3747 feature to scale for double-tap gesture. The WK2 EFL and NIX port want
3748 to use that function, so extract the code from the Qt port, make it
3749 usable in the CoordinatedGraphics and add API and callback.
3753 * UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
3754 (WKViewFindZoomableAreaForRect):
3755 * UIProcess/API/C/CoordinatedGraphics/WKView.h:
3756 * UIProcess/API/efl/EwkView.cpp:
3757 (EwkView::didFindZoomableArea):
3758 * UIProcess/API/efl/EwkView.h:
3759 * UIProcess/CoordinatedGraphics/WebPageProxyCoordinatedGraphics.cpp: Added.
3760 (WebKit::WebPageProxy::findZoomableAreaForPoint):
3761 (WebKit::WebPageProxy::didFindZoomableArea):
3762 * UIProcess/CoordinatedGraphics/WebView.cpp:
3763 (WebKit::WebView::didFindZoomableArea):
3764 (WebKit::WebView::findZoomableAreaForPoint):
3765 * UIProcess/CoordinatedGraphics/WebView.h:
3766 * UIProcess/CoordinatedGraphics/WebViewClient.cpp:
3767 (WebKit::WebViewClient::didFindZoomableArea):
3768 * UIProcess/CoordinatedGraphics/WebViewClient.h:
3769 * UIProcess/PageClient.h:
3770 * UIProcess/WebPageProxy.h:
3771 * UIProcess/WebPageProxy.messages.in:
3772 * UIProcess/efl/ViewClientEfl.cpp:
3773 (WebKit::ViewClientEfl::didFindZoomableArea):
3774 (WebKit::ViewClientEfl::ViewClientEfl):
3775 * UIProcess/efl/ViewClientEfl.h:
3776 * UIProcess/qt/WebPageProxyQt.cpp:
3777 * WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: Added.
3778 (WebKit::WebPage::findZoomableAreaForPoint):
3779 * WebProcess/WebPage/WebPage.cpp:
3780 * WebProcess/WebPage/WebPage.h:
3781 * WebProcess/WebPage/WebPage.messages.in:
3783 2013-07-18 Simon Cooper <scooper@apple.com>
3785 Flash Player: deny file-read-data /Library/Application Support/Macromedia/FlashAuthor.cfg
3786 https://bugs.webkit.org/show_bug.cgi?id=118874
3787 <rdar://problem/14271327>
3789 Reviewed by Alexey Proskuryakov.
3791 Silently deny access to FlashAuthor.cfg. This location contains
3792 files containing lists of paths that Flash Player will
3793 "allow" access to (without asking the user). Since the plugin
3794 sandbox won't permit the access to the listed paths it is better
3795 to silently block attempts to read this "whitelist".
3797 * Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
3799 2013-07-18 Tim Horton <timothy_horton@apple.com>
3801 [wk2] Ensure that the plugin layer is removed completely when the PluginProcess crashes
3802 https://bugs.webkit.org/show_bug.cgi?id=118862
3804 Reviewed by Anders Carlsson.
3806 * WebProcess/Plugins/PluginView.cpp:
3807 (WebKit::PluginView::PluginView):
3808 Add m_pluginProcessHasCrashed.
3810 (WebKit::PluginView::platformLayer):
3811 Don't return the plugin's layer if it has crashed.
3813 (WebKit::PluginView::pluginProcessCrashed):
3814 Set m_pluginProcessHasCrashed.
3815 Cause a style recalc so that we rebuild the layer tree; our layer won't be included.
3817 * WebProcess/Plugins/PluginView.h:
3818 Add m_pluginProcessHasCrashed.
3820 2013-07-18 Alexey Proskuryakov <ap@apple.com>
3822 <rdar://problem/13886443> Assertion failures in NetworkProcess in SandboxExtension::revoke when aborting SyncNetworkResourceLoader
3823 <rdar://problem/13826348> ASSERT(!m_useCount) fails in NetworkProcess at SandboxExtension::~SandboxExtension
3824 https://bugs.webkit.org/show_bug.cgi?id=118855
3826 Reviewed by Brady Eidson.
3828 * NetworkProcess/NetworkResourceLoader.cpp:
3829 (WebKit::NetworkResourceLoader::cleanup):
3830 (WebKit::NetworkResourceLoader::didFinishLoading):
3831 (WebKit::NetworkResourceLoader::didFail):
3832 Moved sandbox extension invalidation to cleanup() meaning that we won't fail to
3833 do this when aborting a loader that currently loading from network.
3835 * NetworkProcess/SchedulableLoader.cpp:
3836 (WebKit::SchedulableLoader::SchedulableLoader):
3837 (WebKit::SchedulableLoader::consumeSandboxExtensions):
3838 (WebKit::SchedulableLoader::invalidateSandboxExtensions):
3839 * NetworkProcess/SchedulableLoader.h:
3840 Keep track of whether sandbox extensions are consumed, we don't want to revoke
3841 extensions that were never consumed (as used to be the case with sync loaders,
3842 and would be with async ones after the above fix). Also, get rid of extensions
3843 immediately when invalidating, we won't need them again.
3845 2013-07-18 Tim Horton <timothy_horton@apple.com>
3847 Remove PDFViewController and WKView "custom representations"
3848 https://bugs.webkit.org/show_bug.cgi?id=118720
3850 Reviewed by Alexey Proskuryakov.
3852 PDFViewController was the only implementation of
3853 a "custom representation" for a WKView. As it has
3854 been superceded by PDFPlugin, we can remove both
3855 PDFViewController and the notion of a WKView custom
3858 * UIProcess/API/gtk/PageClientImpl.cpp:
3859 * UIProcess/API/gtk/PageClientImpl.h:
3860 * UIProcess/API/mac/PDFViewController.h: Removed.
3861 * UIProcess/API/mac/PDFViewController.mm: Removed.
3862 * UIProcess/API/mac/PageClientImpl.h:
3863 * UIProcess/API/mac/PageClientImpl.mm:
3864 * UIProcess/API/mac/WKView.mm:
3865 (-[WKView accessibilityFocusedUIElement]):
3866 (-[WKView accessibilityHitTest:]):
3867 (-[WKView accessibilityAttributeValue:]):
3868 (-[WKView printOperationWithPrintInfo:forFrame:]):
3869 * UIProcess/API/mac/WKViewInternal.h:
3870 * UIProcess/API/qt/raw/qrawwebview_p_p.h:
3871 * UIProcess/CoordinatedGraphics/WebView.cpp:
3872 * UIProcess/CoordinatedGraphics/WebView.h:
3873 * UIProcess/DrawingAreaProxy.h:
3874 * UIProcess/DrawingAreaProxyImpl.cpp:
3875 * UIProcess/DrawingAreaProxyImpl.h:
3876 * UIProcess/PageClient.h:
3877 * UIProcess/WebPageProxy.cpp:
3878 (WebKit::WebPageProxy::WebPageProxy):
3879 (WebKit::WebPageProxy::supportsTextEncoding):
3880 (WebKit::WebPageProxy::supportsTextZoom):
3881 (WebKit::WebPageProxy::setTextZoomFactor):
3882 (WebKit::WebPageProxy::setPageZoomFactor):
3883 (WebKit::WebPageProxy::setPageAndTextZoomFactors):
3884 (WebKit::WebPageProxy::findString):
3885 (WebKit::WebPageProxy::countStringMatches):
3886 (WebKit::WebPageProxy::didCommitLoadForFrame):
3887 * UIProcess/WebPageProxy.h:
3888 (WebKit::WebPageProxy::textZoomFactor):
3889 (WebKit::WebPageProxy::pageZoomFactor):
3890 * UIProcess/WebPageProxy.messages.in:
3891 * UIProcess/qt/QtPageClient.h:
3892 * WebKit2.xcodeproj/project.pbxproj:
3893 * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
3894 (WebKit::WebFrameLoaderClient::WebFrameLoaderClient):
3895 (WebKit::WebFrameLoaderClient::dispatchDidCommitLoad):
3896 (WebKit::WebFrameLoaderClient::committedLoad):
3897 (WebKit::WebFrameLoaderClient::finishedLoading):
3898 (WebKit::WebFrameLoaderClient::transitionToCommittedFromCachedFrame):
3899 (WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):
3900 * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:
3901 * WebProcess/WebPage/DrawingArea.h:
3902 * WebProcess/WebPage/DrawingArea.messages.in:
3903 * WebProcess/WebPage/DrawingAreaImpl.cpp:
3904 (WebKit::DrawingAreaImpl::setNeedsDisplayInRect):
3905 (WebKit::DrawingAreaImpl::scroll):
3906 (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
3907 (WebKit::DrawingAreaImpl::display):
3908 * WebProcess/WebPage/DrawingAreaImpl.h:
3909 * WebProcess/WebPage/WebPage.cpp:
3910 * WebProcess/WebPage/WebPage.h:
3911 * WebProcess/WebPage/mac/WebPageMac.mm:
3912 (WebKit::WebPage::platformPreferencesDidChange):
3913 * mac/WebKit2.order:
3915 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3917 [EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_color_picker.cpp
3918 https://bugs.webkit.org/show_bug.cgi?id=118797
3920 Reviewed by Christophe Dumez.
3922 Some mouseClick methods are used in test_ewk2_color_picker.cpp.
3923 But it is difficult to understand what they mean.
3924 So i would like to replace those with more meaningful method for readability.
3926 * UIProcess/API/efl/tests/test_ewk2_color_picker.cpp:
3927 (EWK2ColorPickerTest::clickButton):
3930 2013-07-18 Eunmi Lee <eunmi15.lee@samsung.com>
3932 [WK2] Replace getRect() to pixelSnappedBoundingBox().
3933 https://bugs.webkit.org/show_bug.cgi?id=118588
3935 Reviewed by Noam Rosenthal.
3937 The Node::getRect() function was removed in the
3938 http://trac.webkit.org/changeset/128006, so use
3939 pixelSnappedBoundingBox() instead.
3941 * WebProcess/WebPage/WebPage.cpp:
3942 (WebKit::WebPage::findZoomableAreaForPoint):
3944 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3946 [EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_context_menu.cpp
3947 https://bugs.webkit.org/show_bug.cgi?id=118796
3949 Reviewed by Christophe Dumez.
3951 Some mouseClick methods are used in test_ewk2_context_menu.cpp.
3952 But it is difficult to understand what they mean.
3953 So i would like to replace those with more meaningful method for readability.
3955 * UIProcess/API/efl/tests/test_ewk2_context_menu.cpp:
3956 (EWK2ContextMenuTest::testContextMenu):
3957 (EWK2ContextMenuTest::testContextMenuForRemoveAndAppend):
3958 (EWK2ContextMenuTest::testContextMenuForSubmenu):
3959 (EWK2ContextMenuTest::finishTest):
3960 (EWK2ContextMenuTest::showContextMenu):
3963 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3965 [EFL][WK2] Replace mouseClick with more meaningful method in test_ewk2_file_chooser_request.cpp
3966 https://bugs.webkit.org/show_bug.cgi?id=118792
3968 Reviewed by Christophe Dumez.
3970 Some mouseClick methods are used in test_ewk2_file_chooser_request.cpp.
3971 But it is difficult to understand what they mean.
3972 So i would like to replace those with more meaningful method for readability.
3974 * UIProcess/API/efl/tests/test_ewk2_file_chooser_request.cpp:
3975 (EWK2FileChooserRequestTest::clickFileInput):
3978 2013-07-18 Dong-Gwan Kim <donggwan.kim@samsung.com>
3980 [EFL][WK2] Move all the static methods into EWK2TextCheckerTest in test_ewk2_text_checker.cpp
3981 https://bugs.webkit.org/show_bug.cgi?id=118790
3983 Reviewed by Christophe Dumez.
3985 All the static methods should be moved to EWK2TextCheckerTest.
3987 * UIProcess/API/efl/tests/test_ewk2_text_checker.cpp:
3988 (EWK2TextCheckerTest::resetCallbacksExecutionStats):
3989 (EWK2TextCheckerTest::onTimeout):
3990 (EWK2TextCheckerTest::onSettingChange):
3991 (EWK2TextCheckerTest::onSpellDocumentTag):
3992 (EWK2TextCheckerTest::onSpellDocumentTagClose):
3993 (EWK2TextCheckerTest::onSpellingCheck):
3994 (EWK2TextCheckerTest::onSpellingForKnownWord):
3995 (EWK2TextCheckerTest::onWordGuesses):
3996 (EWK2TextCheckerTest::onWordLearn):
3997 (EWK2TextCheckerTest::onWordIgnore):
3998 (EWK2TextCheckerTest::findContextMenuItem):
3999 (EWK2TextCheckerTest::checkCorrectnessOfSpellingItems):
4000 (EWK2TextCheckerTest::toogleCheckSpellingWhileTyping):
4001 (EWK2TextCheckerTest::checkClientSuggestionsForWord):
4002 (EWK2TextCheckerTest::selectLearnSpelling):
4003 (EWK2TextCheckerTest::selectIgnoreSpelling):
4004 (EWK2TextCheckerTest::countContextMenuItems):
4005 (EWK2TextCheckerTest::clickButton):
4006 (EWK2TextCheckerTest::showContextMenu):
4007 (EWK2TextCheckerTest::selectFirstWord):
4009 2013-07-17 Tim Horton <timothy_horton@apple.com>
4011 Update blocked/missing plug-in UI
4012 https://bugs.webkit.org/show_bug.cgi?id=118347
4013 <rdar://problem/14209318>
4015 Reviewed by Sam Weinig.
4017 * Platform/CoreIPC/HandleMessage.h:
4018 (CoreIPC::callMemberFunction):
4019 Add a 6 argument -> 4 reply message handler.
4020 (It seems that FindPlugin is getting a little out of hand.)
4022 * Shared/APIClientTraits.cpp:
4023 * Shared/APIClientTraits.h:
4024 * UIProcess/API/C/WKPage.h:
4025 * UIProcess/WebLoaderClient.cpp:
4026 (WebKit::WebLoaderClient::pluginLoadPolicy):
4027 * UIProcess/WebLoaderClient.h:
4028 Add an unavailability description out-argument to a new version of
4029 pluginLoadPolicy, so clients can override the text of the unavailable
4030 plugin indicator. Bump the WKPageLoaderClient version and update APIClientTraits.
4032 * UIProcess/WebPageProxy.cpp:
4033 (WebKit::WebPageProxy::findPlugin):
4034 * UIProcess/WebPageProxy.h:
4035 * UIProcess/WebPageProxy.messages.in:
4036 Plumb the unavailability description through to the WebProcess via
4037 the FindPlugin message.
4039 * WebProcess/WebPage/WebPage.cpp:
4040 (WebKit::WebPage::createPlugin):
4041 Acquire the unavailability description from the client
4042 (via FindPlugin) and hand it to the RenderEmbeddedObject.
4044 2013-07-17 Commit Queue <commit-queue@webkit.org>
4046 Unreviewed, rolling out r152701, r152703, r152739, r152754,
4048 http://trac.webkit.org/changeset/152701
4049 http://trac.webkit.org/changeset/152703
4050 http://trac.webkit.org/changeset/152739
4051 http://trac.webkit.org/changeset/152754
4052 http://trac.webkit.org/changeset/152756
4053 https://bugs.webkit.org/show_bug.cgi?id=118821
4055 this was a buggy fix and we're going to try something
4056 different (Requested by thorton on #webkit).
4058 * Platform/CoreIPC/HandleMessage.h:
4059 * Shared/APIClientTraits.cpp:
4060 * Shared/APIClientTraits.h:
4061 * UIProcess/API/C/WKPage.h:
4062 * UIProcess/WebLoaderClient.cpp:
4063 (WebKit::WebLoaderClient::pluginLoadPolicy):
4064 * UIProcess/WebLoaderClient.h:
4065 * UIProcess/WebPageProxy.cpp:
4066 (WebKit::WebPageProxy::findPlugin):
4067 * UIProcess/WebPageProxy.h:
4068 * UIProcess/WebPageProxy.messages.in:
4069 * WebProcess/Plugins/PluginProcessConnection.cpp:
4070 (WebKit::PluginProcessConnection::didClose):
4071 * WebProcess/Plugins/PluginView.cpp:
4072 (WebKit::PluginView::pluginProcessCrashed):
4073 * WebProcess/WebCoreSupport/WebChromeClient.cpp:
4074 (WebKit::WebChromeClient::shouldUnavailablePluginMessageBeButton):
4075 * WebProcess/WebCoreSupport/WebChromeClient.h:
4076 * WebProcess/WebPage/WebPage.cpp:
4077 (WebKit::WebPage::createPlugin):
4078 (WebKit::WebPage::canPluginHandleResponse):
4080 2013-07-17 Alexey Proskuryakov <ap@apple.com>
4082 [Mac] Crashes in CFURLGetBytes under WebProcess::updateActivePages()
4083 https://bugs.webkit.org/show_bug.cgi?id=118814
4084 <rdar://problem/14173389>
4086 Reviewed by Brady Eidson.
4088 Speculative fix. It's unclear how we end up with an invalid URL when committing
4091 * WebProcess/mac/WebProcessMac.mm: (WebKit::WebProcess::updateActivePages):
4094 2013-07-17 Commit Queue <commit-queue@webkit.org>
4096 Unreviewed, rolling out r152786 and r152789.
4097 http://trac.webkit.org/changeset/152786
4098 http://trac.webkit.org/changeset/152789
4099 https://bugs.webkit.org/show_bug.cgi?id=118807
4101 overly platform specific and dirty API (and Sam says no)
4102 (Requested by thorton on #webkit).
4104 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
4105 * WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
4106 * WebProcess/WebPage/PageOverlay.cpp:
4107 * WebProcess/WebPage/PageOverlay.h:
4108 * WebProcess/WebPage/WebPage.cpp:
4109 * WebProcess/WebPage/WebPage.h:
4110 * WebProcess/WebPage/mac/WKAccessibilityWebPageObject.mm:
4112 2013-07-17 Tim Horton <timothy_horton@apple.com>