AX: Layout tests would be easier to write if AccessibilityController could find an element by id
https://bugs.webkit.org/show_bug.cgi?id=97301

Reviewed by Chris Fleizach.

Source/WebCore:

Add a method to get the DOM "id" attribute from an accessible object, only for layout tests.

Makes existing test more cross-platform:
Tests: accessibility/aria-hidden-with-elements.html

* accessibility/mac/WebAccessibilityObjectWrapper.mm:
(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

Tools:

Adds a new accessibleElementById method to AccessibilityController, to make it
easier to write cross-platform layout tests.

Implemented for Chromium and for Mac (DRT and WKTR).

* DumpRenderTree/AccessibilityController.cpp:
(getAccessibleElementByIdCallback):
(AccessibilityController::getJSClass):
* DumpRenderTree/AccessibilityController.h:
(AccessibilityController):
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* DumpRenderTree/chromium/TestRunner/AccessibilityControllerChromium.cpp:
(AccessibilityController::AccessibilityController):
(AccessibilityController::findAccessibleElementByIdRecursive):
(AccessibilityController::getAccessibleElementById):
(AccessibilityController::accessibleElementByIdGetterCallback):
* DumpRenderTree/chromium/TestRunner/AccessibilityControllerChromium.h:
(AccessibilityController):
* DumpRenderTree/gtk/AccessibilityControllerGtk.cpp:
(AccessibilityController::accessibleElementById):
* DumpRenderTree/mac/AccessibilityCommonMac.h: added
* DumpRenderTree/mac/AccessibilityCommonMac.mm: added
(+[NSString stringWithJSStringRef:]):
(-[NSString createJSStringRef]):
* DumpRenderTree/mac/AccessibilityControllerMac.mm:
(findAccessibleObjectById):
(AccessibilityController::accessibleElementById):
* DumpRenderTree/mac/AccessibilityUIElementMac.mm:
* DumpRenderTree/win/AccessibilityControllerWin.cpp:
(AccessibilityController::accessibleElementById):
* WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:
(WTR::AccessibilityController::accessibleElementById):
* WebKitTestRunner/InjectedBundle/AccessibilityController.h:
(AccessibilityController):
* WebKitTestRunner/InjectedBundle/Bindings/AccessibilityController.idl:
* WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.h: added
* WebKitTestRunner/InjectedBundle/mac/AccessibilityCommonMac.mm: added
(+[NSString stringWithJSStringRef:]):
(-[NSString createJSStringRef]):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:
(WTR::findAccessibleObjectById):
(WTR):
(WTR::AccessibilityController::accessibleElementById):
* WebKitTestRunner/InjectedBundle/mac/AccessibilityUIElementMac.mm:
* WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:

LayoutTests:

Modifies an existing test to use the new accessibleElementById
method of AccessibilityController, enabling the test to pass on
both Mac and Chromium.

* accessibility/aria-hidden-with-elements.html:
* platform/chromium/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129308 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Allow setting a custom path to where the plug-in sandbox profiles are being kept
https://bugs.webkit.org/show_bug.cgi?id=97399

Reviewed by Anders Carlsson.

Add a new default to allow controlling where to look for plug-in sandbox profiles
called "PlugInSandboxProfileDirectoryPath".

* PluginProcess/mac/PluginProcessMac.mm:
(WebKit::initializeSandbox):
Use the passed in sandboxProfileDirectoryPath instead of hard coding /usr/share/sandbox/.

(WebKit::PluginProcess::platformInitialize):
* Shared/Plugins/PluginProcessCreationParameters.cpp:
(WebKit::PluginProcessCreationParameters::encode):
(WebKit::PluginProcessCreationParameters::decode):
* Shared/Plugins/PluginProcessCreationParameters.h:
(PluginProcessCreationParameters):
* UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
(WebKit::PluginProcessProxy::platformInitializePluginProcess):
Grab the sandboxProfileDirectoryPath from standardUserDefaults and pass it to
the plug-in.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129309 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Install WebProcess XPC services into the right places
https://bugs.webkit.org/show_bug.cgi?id=97385

Reviewed by Anders Carlsson.

* Configurations/WebProcessService.xcconfig:
Update INSTALL_PATH to go into WebKit2.framework/Versions/A/XPCServices.

* Configurations/WebProcessServiceForWebKitDevelopment.xcconfig:
Since this config file is almost identical to WebProcessService.xcconfig,
just #include it and change the one thing that is different, the INFOPLIST_FILE
        
* WebKit2.xcodeproj/project.pbxproj:
Follow XPC procedure and copy the services into the right place, WebKit2.framework/Versions/A/XPCServices
in all builds except production builds where it is not necessary. Also add a symlink like everyone else
does.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129312 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Unreviewed GTK gardening.

Adding a failure expectation for http/tests/loading/redirect-with-no-location-crash.html,
the test started failing on the WebKit2 builder after it was unskipped in r129213.

* platform/gtk-wk2/TestExpectations:


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129313 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add explicit conversion operator to RetainPtr for easier use in C++11 environments
https://bugs.webkit.org/show_bug.cgi?id=97403

Reviewed by Dan Bernstein.

* wtf/Compiler.h:
Add support for COMPILER_SUPPORTS(CXX_EXPLICIT_CONVERSIONS)

* wtf/RetainPtr.h:
(RetainPtr):
(WTF::RetainPtr::get):
(WTF::RetainPtr::operator PtrType):
Add the explicit conversion operator and group all the underlying
pointer accessors together.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@129314 268f45cc-cd09-0410-ab3c-d52691b4dbfc