Add step to update gtk dependencies to the buildbot
https://bugs.webkit.org/show_bug.cgi?id=73455

Reviewed by Martin Robinson.

* BuildSlaveSupport/build.webkit.org-config/master.cfg:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101527 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add adoptCF and adoptNS convenience functions to RetainPtr.h
https://bugs.webkit.org/show_bug.cgi?id=73399

Reviewed by Anders Carlsson.

* wtf/RetainPtr.h:
(WTF::adoptCF):
(WTF::adoptNS):
These adoption functions match the pattern we use in other
smart pointer classes.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101528 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add move semantics to WKRetainPtr
https://bugs.webkit.org/show_bug.cgi?id=73400

Reviewed by Anders Carlsson.

* UIProcess/API/cpp/WKRetainPtr.h:
(WebKit::WKRetainPtr::WKRetainPtr):
Add a move constructor and move enabled assignment operators
to WKRetainPtr if the compiler being used supports rvalue
references. If the compiler does not support it, we fallback
to the copy semantics we have always had.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101529 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Remove dead flexible box code
https://bugs.webkit.org/show_bug.cgi?id=73377

Reviewed by Darin Adler.

We used to use these with an earlier version of the spec where margins
set to auto were treated as flex(1).

No new tests, just removing some uncalled methods.

* rendering/RenderFlexibleBox.cpp:
* rendering/RenderFlexibleBox.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101530 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: Inspect element does not highlight element in elements panel when inspector is opened.
https://bugs.webkit.org/show_bug.cgi?id=73459

Reviewed by Pavel Feldman.

This regressed in r101503.

* inspector/InjectedScriptHost.cpp:
(WebCore::InjectedScriptHost::InjectedScriptHost):
(WebCore::InjectedScriptHost::disconnect):
(WebCore::InjectedScriptHost::inspectImpl):
* inspector/InjectedScriptHost.h:
(WebCore::InjectedScriptHost::init):
* inspector/InspectorAgent.cpp:
(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::inspect):
* inspector/InspectorAgent.h:
* inspector/InspectorController.cpp:
(WebCore::InspectorController::connectFrontend):
(WebCore::InspectorController::disconnectFrontend):
* inspector/WorkerInspectorController.cpp:
(WebCore::WorkerInspectorController::connectFrontend):
(WebCore::WorkerInspectorController::disconnectFrontend):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101531 268f45cc-cd09-0410-ab3c-d52691b4dbfc
https://bugs.webkit.org/show_bug.cgi?id=72751
WebKit2.MouseMoveAfterCrash API test is failing 

Reviewed by Sam Weinig.

Source/WebKit2: 

windowIsFocused() is too restrictive. All we need to know is that the page is 
active.
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::mouseEvent):
(WebKit::WebPage::mouseEventSyncForTesting):

Tools: 

Like DumpRenderTree, the NSWindow should act as an active window.
* TestWebKitAPI/mac/PlatformWebViewMac.mm:
(-[ActiveOffscreenWindow isKeyWindow]):
(TestWebKitAPI::PlatformWebView::PlatformWebView):



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101532 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Add a way to set OutputCapture's log level

This will be used by some unit tests I'm planning to add.

Fixes <http://webkit.org/b/73469> OutputCapture can't be used to capture DEBUG messages

Reviewed by Eric Seidel.

* Scripts/webkitpy/common/system/outputcapture.py:
(OutputCapture.__init__): Initialize our internal logging level to INFO, which was the only
level we ever used before this patch.
(OutputCapture.set_log_level): Added. This is useful for testing what log level code that is
being tested uses. Sets the log level for any current or future logging handlers.
(OutputCapture.capture_output): Use our internal logging level instead of always using INFO.

* Scripts/webkitpy/common/system/outputcapture_unittest.py: Added.
(OutputCaptureTest.setUp): Create an OutputCapture to test.
(OutputCaptureTest.log_all_levels): Helper method to log a message at each log level.
(OutputCaptureTest.assertLogged): Helper method to assert that a particular set of strings
was logged.
(OutputCaptureTest.test_initial_log_level): Test that we start out at the INFO level.
(OutputCaptureTest.test_set_log_level): Test that set_log_level correctly modifies the log
level.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101533 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Make NRWT show DRT/WTR build logs when the build fails or --verbose is passed

This will make it a lot easier to investigate build failures on the bots.

Fixes <http://webkit.org/b/71160> NRWT doesn't show build output when building DRT

Reviewed by Eric Seidel.

* Scripts/webkitpy/common/system/executive_mock.py:
(MockExecutive.run_command): Include the mock output in the ScriptError we raise since it
makes the expected output in WebKitPortTest.test_build_driver more closely mimic the output
seen in practice.

* Scripts/webkitpy/layout_tests/controllers/manager_unittest.py:
(ManagerTest.test_http_locking): Pass False for the configure_logging parameter to Printer.
The Printer was modifying the root logger in way that would cause my new tests in
WebKitPort.test_build_driver to fail. The value of the configure_logging parameter doesn't
seem important to the functioning of this test, and passing False makes Printer not modify
the root logger.

* Scripts/webkitpy/layout_tests/port/webkit.py:
(WebKitPort._run_script): Log the output of the command at the DEBUG level so it will show
up when --verbose is passed but not otherwise.
(WebKitPort._build_driver): When an error occurs, log the error message and the script's
output at the ERROR level so it will always show up.

* Scripts/webkitpy/layout_tests/port/webkit_unittest.py:
(WebKitPortTest.test_build_driver): Test that nothing is logged in the normal, successful
cases. Test that the build scripts' output is logged when --verbose is passed or the build
fails.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101534 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[wx] Add a scope for the raw bitmap access so that wx
will not make a copy when creating the wxMemoryDC.
https://bugs.webkit.org/show_bug.cgi?id=73461
        
Reviewed By Kevin Ollivier.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101535 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Use the wxGCDC(wxGraphicsContext) constructor on Mac as well
to avoid issues with the wxGCDC(wxPrinterDC) constructor.
https://bugs.webkit.org/show_bug.cgi?id=73463
        
Reviewed by Kevin Ollivier.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101536 268f45cc-cd09-0410-ab3c-d52691b4dbfc
dx causes non-BMP characters to fail to render
https://bugs.webkit.org/show_bug.cgi?id=18039
<rdar://problem/10422142>

Reviewed by Simon Fraser.

Don't split the surrogate pairs of non-BMP characters across
elements of <text> positioning lists.

Test: svg/text/non-bmp-positioning-lists.svg

* rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
(WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes):

Add a test combining non-BMP characters and positioning lists.

* platform/mac/svg/text/non-bmp-positioning-lists-expected.png: Added.
* platform/mac/svg/text/non-bmp-positioning-lists-expected.txt: Added.
* svg/text/non-bmp-positioning-lists.svg: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101537 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[wx] Ensure we always notify the popup client that the popup
was hidden, and fix handling of empty menu items.
https://bugs.webkit.org/show_bug.cgi?id=73464
        
Reviewed by Kevin Ollivier.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101538 268f45cc-cd09-0410-ab3c-d52691b4dbfc
toStringCallback and valueOfCallback do not check the entire prototype chain for convertToType callback
https://bugs.webkit.org/show_bug.cgi?id=73368

Reviewed by Darin Adler.

We need to search the entire prototype chain for the convertToType callback, rather than just calling whatever
happens to be in the first class of the chain, which potentially could be null.

<rdar://problem/10493218>

* API/JSCallbackFunction.cpp:
(JSC::JSCallbackFunction::toStringCallback):
(JSC::JSCallbackFunction::valueOfCallback):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101539 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Generate a more robust user agent string.
https://bugs.webkit.org/show_bug.cgi?id=73465
       
Reviewed by Kevin Ollivier.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101540 268f45cc-cd09-0410-ab3c-d52691b4dbfc
feImage referencing a primitive draws incorrectly
https://bugs.webkit.org/show_bug.cgi?id=71731
<rdar://problem/10408178>

Reviewed by Simon Fraser.

If the target of an <feImage> appears to be a local fragment identifier, but
it hasn't resolved yet, defer resolution instead of loading a bogus image.

Invalidate <feImage> if the xlink:href attribute changes.

Don't attempt to render an <feImage> if the referenced element is of size 0x0.

Tests: svg/filters/feImage-reference-invalidation.svg
       svg/filters/feImage-reference-svg-primitive.svg
       svg/filters/feImage-zero-size-crash.svg

* svg/SVGFEImageElement.cpp:
(WebCore::SVGFEImageElement::parseMappedAttribute):
(WebCore::SVGFEImageElement::build):

Add a test (feImage-reference-svg-primitive) that ensures that having
an <feImage> referencing an SVG primitive which is declared after it
successfully paints the referenced object.

Add a test (feImage-zero-size-crash) to see if we crash when <feImage>
references an object with 0x0 size.

Add a test (feImage-reference-invalidation) that ensures that changing the
xlink:href on an <feImage> correctly invalidates the image.

* svg/filters/feImage-reference-invalidation-expected.png: Added.
* svg/filters/feImage-reference-invalidation-expected.txt: Added.
* svg/filters/feImage-reference-svg-primitive-expected.png: Added.
* svg/filters/feImage-reference-svg-primitive-expected.txt: Added.
* svg/filters/feImage-reference-invalidation.svg: Added.
* svg/filters/feImage-reference-svg-primitive.svg: Added.
* svg/filters/feImage-zero-size-crash-expected.txt: Added.
* svg/filters/feImage-zero-size-crash.svg: Added.



git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101542 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Fix valgrind issue in SubresourceLoader::didFinishLoading
https://bugs.webkit.org/show_bug.cgi?id=72787

Hang on to CachedResource until finish() is called.

Reviewed by Nate Chapin.

Source/WebCore:

Test: fast/loader/subresource-load-failed-crash.html (under asan)

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::didFinishLoading):
(WebCore::SubresourceLoader::didFail):

LayoutTests:

* fast/loader/subresource-load-failed-crash-expected.txt: Added.
* fast/loader/subresource-load-failed-crash.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101543 268f45cc-cd09-0410-ab3c-d52691b4dbfc
[V8] Make WebCoreTestingSupport::resetInternalsObject more robust
https://bugs.webkit.org/show_bug.cgi?id=73437

Reviewed by Adam Barth.

The Qt DRT may end up calling resetInternalsObject at a time when
there's no internals object yet. In that case the looking of the internals
object in the global object fails and returns undefined. V8Internals::toNative
doesn't handle that and causing failing assertions. This patch adds a simple
check to handle this case.

* testing/v8/WebCoreTestSupport.cpp:
(WebCoreTestSupport::resetInternalsObject):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101544 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Web Inspector: [Regression] Successfully loaded XHRs are shown as canceled.
https://bugs.webkit.org/show_bug.cgi?id=72873

Reviewed by Nate Chapin.

Source/WebCore:

* loader/SubresourceLoader.cpp:
(WebCore::SubresourceLoader::cancelIfNotFinishing):
* loader/SubresourceLoader.h:
* loader/cache/CachedRawResource.cpp:
(WebCore::CachedRawResource::allClientsRemoved):

LayoutTests:

* http/tests/inspector/network/network-xhr-async.html:
* http/tests/inspector/network/network-xhr-sync.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101545 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Implement CSS3 Images cross-fade() image function
https://bugs.webkit.org/show_bug.cgi?id=52162
<rdar://problem/10209254>

Reviewed by Simon Fraser.

Fix platform layering violation by moving CachedImage invalidation code into
CSSCrossfadeValue (instead of CrossfadeGeneratedImage).

No new tests.

* css/CSSCrossfadeValue.cpp:
(WebCore::loadSubimage):
(WebCore::CSSCrossfadeValue::~CSSCrossfadeValue):
(WebCore::CSSCrossfadeValue::customCssText):
(WebCore::CSSCrossfadeValue::fixedSize):
(WebCore::CSSCrossfadeValue::isPending):
(WebCore::CSSCrossfadeValue::loadSubimages):
(WebCore::CSSCrossfadeValue::image):
(WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::imageChanged):
* css/CSSCrossfadeValue.h:
(WebCore::CSSCrossfadeValue::create):
(WebCore::CSSCrossfadeValue::setPercentage):
(WebCore::CSSCrossfadeValue::CSSCrossfadeValue):
(WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::CrossfadeSubimageObserverProxy):
(WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::~CrossfadeSubimageObserverProxy):
(WebCore::CSSCrossfadeValue::CrossfadeSubimageObserverProxy::setReady):
* platform/graphics/CrossfadeGeneratedImage.cpp:
(WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
(WebCore::CrossfadeGeneratedImage::drawCrossfade):
(WebCore::CrossfadeGeneratedImage::drawPattern):
* platform/graphics/CrossfadeGeneratedImage.h:
(WebCore::CrossfadeGeneratedImage::create):


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@101546 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2011-11-30  Alejandro G. Castro  <alex@igalia.com>

        [GTK] Add accelerated compositing compilation option
        https://bugs.webkit.org/show_bug.cgi?id=73298

        Compile whatever we have inside the USE(ACCELERATED_COMPOSITING)
        define. Fix accelerated compositing compilation in WK2, update the
        enter/exit functions.

        Reviewed by Martin Robinson.

        * UIProcess/API/gtk/PageClientImpl.cpp:
        (WebKit::PageClientImpl::enterAcceleratedCompositingMode):
        (WebKit::PageClientImpl::exitAcceleratedCompositingMode):
        * UIProcess/API/gtk/PageClientImpl.h:

2011-11-30  Alejandro G. Castro  <alex@igalia.com>

        [GTK] Add accelerated compositing compilation option
        https://bugs.webkit.org/show_bug.cgi?id=73298

        Compile whatever we have inside the USE(ACCELERATED_COMPOSITING)
        define. Add the build compilation option
        --with-accelerated-compositing and use it in the makefile.

        Reviewed by Martin Robinson.

        * GNUmakefile.am:
        * configure.ac:

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