⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Jun 2, 2012:

11:29 PM Changeset in webkit [119354] by aestes@apple.com
  • 2 edits in trunk/Source/WebCore

ZNK7WebCore4Node27traverseNextAncestorSiblingEv should be exported even if ENABLE(FULLSCREEN_API) is false
https://bugs.webkit.org/show_bug.cgi?id=88184

Reviewed by Dan Bernstein.

Node::traverseNextAncestorSibling() is called in several inline
functions defined in ContainerNode.h (a private header), so its symbol
needs to be exported regardless of whether full-screen API is enabled.

  • WebCore.exp.in:
10:06 PM Changeset in webkit [119353] by wangxianzhu@chromium.org
  • 15 edits
    2 adds in trunk

SVGImageCache leaks image data
https://bugs.webkit.org/show_bug.cgi?id=87792

Source/WebCore:

There are two functions to remove a client from a CachedImage:

  • CachedResource::removeClient()
  • CachedImage::removeClientForRenderer().

It's easy to make error to call the former which will leak the cached
image buffers in SVGImageCache.

This change combined the two by adding the virtual
CachedResource::didRemoveClient(). CachedImage will do SVGImageCache
cleanup in the function.

Reviewed by Nikolas Zimmermann.

Test: svg/as-image/svg-image-leak-cached-data.html

  • loader/cache/CachedFont.h:

(WebCore::CachedFontClient::resourceClientType): Added 'const'.

  • loader/cache/CachedImage.cpp:

(WebCore):
(WebCore::CachedImage::didRemoveClient): Removes the client from SVGImageCache.
(WebCore::CachedImage::lookupOrCreateImageForRenderer):

  • loader/cache/CachedImage.h:

(CachedImage):
(WebCore::CachedImageClient::resourceClientType): Added 'const'.

  • loader/cache/CachedRawResource.h:

(WebCore::CachedRawResourceClient::resourceClientType): Added 'const'.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::removeClient): Added invocation of didRemoveClient().

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::didRemoveClient): Added for subclasses to do additional works.

  • loader/cache/CachedResourceClient.h:

(WebCore::CachedResourceClient::resourceClientType): Added 'const'.

  • loader/cache/CachedSVGDocument.h:

(WebCore::CachedSVGDocumentClient::resourceClientType): Added 'const'.

  • loader/cache/CachedStyleSheetClient.h:

(WebCore::CachedStyleSheetClient::resourceClientType): Added 'const'.

  • rendering/style/StyleCachedImage.cpp:

(WebCore::StyleCachedImage::removeClient):

  • rendering/style/StyleCachedImageSet.cpp:

(WebCore::StyleCachedImageSet::removeClient):

  • svg/graphics/SVGImageCache.cpp:

(WebCore::SVGImageCache::~SVGImageCache): Added checking for leaks.
(WebCore::SVGImageCache::removeClientFromCache):
(WebCore::SVGImageCache::setRequestedSizeAndScales):
(WebCore::SVGImageCache::requestedSizeAndScales):
(WebCore::SVGImageCache::lookupOrCreateBitmapImageForClient):

  • svg/graphics/SVGImageCache.h:

(WebCore):
(SVGImageCache):

LayoutTests:

Reviewed by Nikolas Zimmermann.

New test case.

  • svg/as-image/svg-image-leak-cached-data-expected.txt: Added.
  • svg/as-image/svg-image-leak-cached-data.html: Added.
9:10 PM Changeset in webkit [119352] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Remove the failing expectation on fast/forms/textarea-scrollbar-height.html since it has been passing.

  • platform/chromium/TestExpectations:
8:45 PM Changeset in webkit [119351] by ggaren@apple.com
  • 3 edits in trunk/Source/WebKit2

2012-06-02 Geoffrey Garen <ggaren@apple.com>

Try to fix the Windows build.

  • win/WebKit2.def:
  • win/WebKit2CFLite.def:
8:35 PM Changeset in webkit [119350] by rniwa@webkit.org
  • 1 edit
    3 adds in trunk/LayoutTests

Add back files inadvertently removed in r119323.

7:46 PM Changeset in webkit [119349] by aestes@apple.com
  • 20 edits in trunk/Source/WebKit2

[WebKit2] Use USE(), ENABLE(), and HAVE() macros in more places
https://bugs.webkit.org/show_bug.cgi?id=88182

Reviewed by Sam Weinig.

Use USE(APPKIT):

  • Shared/mac/NativeWebKeyboardEventMac.mm:
  • Shared/mac/NativeWebMouseEventMac.mm:
  • Shared/mac/NativeWebWheelEventMac.mm:
  • Shared/mac/WebEventFactory.h:
  • UIProcess/API/mac/WKTextInputWindowController.h:
  • UIProcess/API/mac/WKTextInputWindowController.mm:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:

Use ENABLE(NETSCAPE_PLUGIN_API):

  • UIProcess/API/C/WKPluginSiteDataManager.cpp:

(WKPluginSiteDataManagerClearSiteData):
(WKPluginSiteDataManagerClearAllSiteData):

Use USE(AUTOCORRECTION_PANEL):

  • UIProcess/API/mac/PageClientImpl.h:
  • UIProcess/API/mac/PageClientImpl.mm:

(WebKit::PageClientImpl::showCorrectionPanel):
(WebKit::PageClientImpl::dismissCorrectionPanel):
(WebKit::PageClientImpl::dismissCorrectionPanelSoon):

  • UIProcess/mac/CorrectionPanel.mm:

Use HAVE(HOSTED_CORE_ANIMATION):

  • UIProcess/mac/WebContextMac.mm:

Put ENABLE(FULLSCREEN_API) in the right place:

  • UIProcess/mac/WebFullScreenManagerProxyMac.mm:

Remove unnecessary use of USE(APPKIT):

  • UIProcess/mac/WebPageProxyMac.mm:

Use USE(SECURITY_FRAMEWORK):

  • WebProcess/Authentication/mac/AuthenticationManager.mac.mm:

Use ENABLE(CONTEXT_MENUS):

  • WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:

Use USE(SECURITY_FRAMEWORK):

  • WebProcess/WebProcess.h:

Remove unnecessary use of USE(SECURITY_FRAMEWORK):

  • WebProcess/mac/WebProcessMac.mm:
7:38 PM Changeset in webkit [119348] by rniwa@webkit.org
  • 3 edits in trunk/Source/WebCore

Windows build fix after r119330. Unnest the class for now.

  • dom/SelectorQuery.cpp:

(WebCore::SelectorQueryCacheEntry::SelectorQueryCacheEntry):
(WebCore::SelectorQueryCache::add):

  • dom/SelectorQuery.h:

(SelectorQueryCacheEntry):
(WebCore::SelectorQueryCacheEntry::selectorQuery):
(WebCore):
(SelectorQueryCache):

7:33 PM Changeset in webkit [119347] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove a duplicate INIT() from WebSystemInterface.mm
https://bugs.webkit.org/show_bug.cgi?id=88181

Reviewed by Anders Carlsson.

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

7:23 PM Changeset in webkit [119346] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove unnecessary import of <Cocoa/Cocoa.h>
https://bugs.webkit.org/show_bug.cgi?id=88180

Reviewed by Sam Weinig.

  • UIProcess/mac/WKFullKeyboardAccessWatcher.h:
5:53 PM Changeset in webkit [119345] by aestes@apple.com
  • 2 edits in trunk/Source/WebKit2

Ensure cpu_type_t is defined by including <mach/machine.h>
https://bugs.webkit.org/show_bug.cgi?id=88178

Reviewed by Anders Carlsson.

  • Shared/Plugins/PluginModuleInfo.h:
5:47 PM Changeset in webkit [119344] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

InjectedBundles' sandbox extensions don't do what we think they do
https://bugs.webkit.org/show_bug.cgi?id=88177

Reviewed by Anders Carlsson.

This cannot be tested with our current infrastructure (or any modifications of the
infrastructure I can think of) since it relies on the bundle being put outside
the build directory where WebKit is put.

  • WebProcess/InjectedBundle/mac/InjectedBundleMac.cpp:

(WebKit::InjectedBundle::load):
Use SandboxExtension::consumePermanently() rather than consume(), otherwise,
nulling out the SandboxExtension a few lines later invalidates the extension
we just consumed.

5:41 PM Changeset in webkit [119343] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

If the DFG bytecode parser detects that op_method_check has gone polymorphic, it
shouldn't revert all the way to GetById/GetByIdFlush
https://bugs.webkit.org/show_bug.cgi?id=88176

Reviewed by Geoffrey Garen.

Refactored the code so that the op_method_check case of the parser gracefully falls
through to all of the goodness of the normal op_get_by_id case.

  • dfg/DFGByteCodeParser.cpp:

(ByteCodeParser):
(JSC::DFG::ByteCodeParser::handleGetById):
(DFG):
(JSC::DFG::ByteCodeParser::parseBlock):

3:58 PM Changeset in webkit [119342] by fpizlo@apple.com
  • 18 edits in trunk/Source/JavaScriptCore

DFG CSE should be able to eliminate unnecessary flushes of arguments and captured variables
https://bugs.webkit.org/show_bug.cgi?id=87929

Reviewed by Geoffrey Garen.

Slight speed-up on V8. Big win (up to 50%) on programs that inline very small functions.

This required a bunch of changes:

  • The obvious change is making CSE essentially ignore whether or not the set of operations between the Flush and the SetLocal can exit, and instead focus on whether or not that set of operations can clobber the world or access local variables. This code is now refactored to return a set of flags indicating any of these events, and the CSE decides what to do based on those flags. If the set of operations is non-clobbering and non-accessing, then the Flush is turned into a Phantom on the child of the SetLocal. This expands the liveness of the relevant variable but virtually guarantees that it will be register allocated and not flushed to the stack. So, yeah, this patch is a lot of work to save a few stores to the stack.


  • Previously, CheckArgumentsNotCreated was optimized "lazily" in that you only knew if it was a no-op if you were holding onto a CFA abstract state. But this would make the CSE act pessimistically, since it doesn't use the CFA. Hence, this patch changes the constant folding phase into something more broad; it now fixes up CheckArgumentsNotCreated nodes by turning them into phantoms if it knows that they are no-ops.


  • Arguments simplification was previously relying on this very strange PhantomArguments node, which had two different meanings: for normal execution it meant the empty value but for OSR exit it meant that the arguments should be reified. This produces problems when set SetLocals to the captured arguments registers are CSE'd away, since we'd be triggering reification of arguments without having initialized the arguments registers to empty. The cleanest solution was to fix PhantomArguments to have one meaning: namely, arguments reification on OSR exit. Hence, this patch changes arguments simplification to change SetLocal of CreateArguments on the arguments registers to be a SetLocal of Empty.


  • Argument value recoveries were previously derived from the value source of the arguments at the InlineStart. But that relies on all SetLocals to arguments having been flushed. It's possible that we could have elided the SetLocal to the arguments at the callsite because there were subsequent SetLocals to the arguments inside of the callee, in which case the InlineStart would get the wrong information. Hence, this patch changes argument value recovery computation to operate over the ArgumentPositions directly.


  • But that doesn't actually work, because previously, there was no way to link an InlineStart back to the corresponding ArgumentPositions, at least not without some ugliness. So this patch instates the rule that the m_argumentPositions vector consists of disjoint subsequences such that each subsequence corresponds to an inline callsite and can be identified by its first index, and within each subsequence are the ArgumentPositions of all of the arguments ordered by argument index. This required flipping the order in which ArgumentPositions are added to the vector, and giving InlineStart an operand that indicates the start of that inline callsite's ArgumentPosition subsequence.


  • This patch also revealed a nasty bug in the reification of arguments in inline call frames on OSR exit. Since the reification was happening after the values of virtual registers were recovered, the value recoveries of the inline arguments were wrong. Hence using operationCreateInlinedArguments is wrong. For example a value recovery might say that you have to box a double, but if we had already boxed it then boxing it a second time will result in garbage. The specific case of this bug was this patch uncovered was that now it is possible for an inline call frame to not have any valid value recoveries for any inline arguments, if the optimization elides all argument flushes, while at the same time optimizing away arguments creation. Then OSR exit would try to recover the arguments using the inline call frame, which had bogus information, and humorous crashes would ensue. This patch fixes this issue by moving arguments reification to after call frame reification, so that arguments reification can always use operationCreateArguments instead of operationCreateInlinedArguments.


  • This patch may turn a Flush into a Phantom. That's kind of the whole point. But that broke forward speculation checks, which knew to look for a Flush prior to a SetLocal but didn't know that there could alternatively be a Phantom in place of the Flush. This patch fixes that by augmenting the forward speculation check logic.


  • Finally, in the process of having fun with all of the above, I realized that my DFG validation was not actually running on every phase like I had originally designed it to. In fact it was only running just after bytecode parsing. I initially tried to make it run in every phase but found that this causes some tests to timeout (specifically the evil fuzzing ones), so I decided on a compromise where: (i) in release mode validation never runs, (ii) in debug mode validation will run just after parsing and just before the backend, and (iii) it's possible with a simple switch to enable validation to run on every phase.


Luckily all of the above issues were already covered by the 77 or so DFG-specific
layout tests. Hence, this patch does not introduce any new tests despite being so
meaty.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGArgumentPosition.h:

(JSC::DFG::ArgumentPosition::prediction):
(JSC::DFG::ArgumentPosition::doubleFormatState):
(JSC::DFG::ArgumentPosition::shouldUseDoubleFormat):
(ArgumentPosition):

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::InlineStackEntry::InlineStackEntry):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::SetLocalStoreEliminationResult::SetLocalStoreEliminationResult):
(SetLocalStoreEliminationResult):
(JSC::DFG::CSEPhase::setLocalStoreElimination):
(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGCommon.h:
  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):

  • dfg/DFGNode.h:

(Node):
(JSC::DFG::Node::hasArgumentPositionStart):
(JSC::DFG::Node::argumentPositionStart):

  • dfg/DFGOSRExitCompiler32_64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGOSRExitCompiler64.cpp:

(JSC::DFG::OSRExitCompiler::compileExit):

  • dfg/DFGPhase.cpp:

(DFG):

  • dfg/DFGPhase.h:

(Phase):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

3:49 PM Changeset in webkit [119341] by ggaren@apple.com
  • 8 edits in trunk/Source

DOM string cache should hash pointers, not characters
https://bugs.webkit.org/show_bug.cgi?id=88175

Reviewed by Phil Pizlo and Sam Weinig.

../JavaScriptCore:

  • heap/Weak.h:

(JSC::weakAdd):
(JSC::weakRemove): Made these function templates slightly more generic
to accommodate new client types.

../WebCore:

Dromaeo DOM Core reports no change.

http://trac.webkit.org/changeset/84934 accidentally changed from hashing
pointers to hashing characters, due to template defaults. Let's change back.

Hashing characters is not so good because:

(1) It's not memory-safe with HashMap::set(). HashMap::set() replaces
the value but not the key. Since our values own our keys, we need to
ensure object identity between key and value, or the key can be freed
prematurely. (This is impossible to demonstrate with our current
eager sweep behavior, but it shows up as crashes in layout tests if you
change to lazy sweep.)

(2) It's slower.

  • bindings/js/DOMWrapperWorld.h:

(WebCore): Override the default hash, which hashes based on characters.

2:52 PM Changeset in webkit [119340] by efidler@rim.com
  • 2 edits in trunk/Source/WebCore

Don't crash if we ask for fonts that don't exist.
https://bugs.webkit.org/show_bug.cgi?id=88106

Reviewed by Dan Bernstein.

RIM PR 161219

If the site doesn't ask for a reasonable font and the system doesn't
provide a good fallback, FontFallBackList::primaryFontData can be 0,
which can cause a crash.

  • platform/graphics/skia/FontCacheSkia.cpp:

(WebCore::FontCache::getLastResortFallbackFont):

2:30 PM Changeset in webkit [119339] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/mac

loadRequest should check for empty URLs.
https://bugs.webkit.org/show_bug.cgi?id=88154

In [WebFrame loadRequest], if the url is invalid and not nil, we transform it to file: url.
However, WebKit client could send down an empty URL that makes us transform it to file: url
as well. We should skip that as we did for nil URLs.

Patch by Yongjun Zhang <yongjun_zhang@apple.com> on 2012-06-02
Reviewed by Brady Eidson.

  • WebView/WebFrame.mm:

(-[WebFrame loadRequest:]):

1:34 PM WebKitGTK/1.8.x edited by kov@webkit.org
(diff)
1:32 PM Changeset in webkit [119338] by kov@webkit.org
  • 5 edits in releases/WebKitGTK/webkit-1.8

Merge 115763 - Ensure HTMLElementStack fails gracefully if it has a non-Element.
https://bugs.webkit.org/show_bug.cgi?id=85167

Reviewed by Adam Barth.

Source/WebCore:

Test: Added to html5lib/resources/webkit02.dat

  • html/parser/HTMLElementStack.cpp:

(WebCore::HTMLElementStack::oneBelowTop):

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processEndTag):

LayoutTests:

  • html5lib/resources/webkit02.dat:
1:31 PM Changeset in webkit [119337] by kov@webkit.org
  • 4 edits in releases/WebKitGTK/webkit-1.8

Merge 108311 - Invalid cast in WebCore::toElement / WebCore::HTMLElementStack::ElementRecord::element
https://bugs.webkit.org/show_bug.cgi?id=78975

Reviewed by Eric Seidel.

Source/WebCore:

We're supposed to set the action attribute on the form element we just
created. Previously, we assumed the newly created form element would
be on the top of the stack of open elements, but if we're in the table
body insertion mode, the form element gets treated as self closing and
is therefore popped off the stack of open elements.

Fortunately, we already cache a pointer to the most recently inserted
form element on the HTMLConstructionSite, so we can just grab the
element from there.

Test: html5lib/runner.html

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
(WebCore):

LayoutTests:

  • html5lib/resourcesl/webkit-02.dat:
1:31 PM Changeset in webkit [119336] by kov@webkit.org
  • 1 add in releases/WebKitGTK/webkit-1.8/LayoutTests/platform/gtk/fast/dom/htmlcollection-non-html-expected.txt

Rebseline for 115398.

1:31 PM Changeset in webkit [119335] by kov@webkit.org
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-1.8

Merge 115646 - loadOrRedirectSubframe should return the owner element's frame
https://bugs.webkit.org/show_bug.cgi?id=84780

Reviewed by Nate Chapin.

Source/WebCore:

Test: fast/loader/javascript-url-iframe-remove-on-navigate.html

  • loader/SubframeLoader.cpp:

(WebCore::SubframeLoader::loadOrRedirectSubframe):

LayoutTests:

  • fast/loader/javascript-url-iframe-remove-on-navigate-expected.txt: Added.
  • fast/loader/javascript-url-iframe-remove-on-navigate.html: Added.
1:30 PM Changeset in webkit [119334] by kov@webkit.org
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-1.8

Merge 115398 - Invalid cast in WebCore::HTMLCollection::isAcceptableElement
https://bugs.webkit.org/show_bug.cgi?id=84626

Reviewed by Darin Adler.

Source/WebCore:

Check if the object is an HTMLElement before casting.

Test: fast/dom/htmlcollection-non-html.html

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::isAcceptableElement):

LayoutTests:

Add tests to make sure only HTML elements are present in most HTMLCollection objects.

  • fast/dom/htmlcollection-non-html-option-expected.txt: Added.
  • fast/dom/htmlcollection-non-html.html: Added.
1:30 PM Changeset in webkit [119333] by kov@webkit.org
  • 3 edits
    2 adds in releases/WebKitGTK/webkit-1.8

Source/WebCore: Crash in CachedRawResource::didAddClient() due to missing protector.
https://bugs.webkit.org/show_bug.cgi?id=83632

Reviewed by Eric Seidel.

Test: http/tests/xmlhttprequest/access-control-repeated-failed-preflight-crash.html

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::didAddClient):

LayoutTests: Test for https://bugs.webkit.org/show_bug.cgi?id=83632.

Reviewed by Eric Seidel.

  • http/tests/xmlhttprequest/access-control-repeated-failed-preflight-crash-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-repeated-failed-preflight-crash.html: Added.
1:30 PM Changeset in webkit [119332] by kov@webkit.org
  • 3 edits
    3 adds in releases/WebKitGTK/webkit-1.8

2012-03-09 Nate Chapin <Nate Chapin>

CachedRawResource breaks when trying to load
a resource with an empty response body from cache.

Reviewed by Alexey Proskuryakov.

Test: http/tests/cache/zero-length-xhr.html

  • loader/cache/CachedRawResource.cpp: (WebCore::CachedRawResource::didAddClient): Don't exit early

if m_data is empty, we may still need to notifyFinished().

1:29 PM Changeset in webkit [119331] by kov@webkit.org
  • 7 edits in releases/WebKitGTK/webkit-1.8

Source/WebCore: Prevent CachedRawResource from sending the same data
chunk multiple times.
https://bugs.webkit.org/show_bug.cgi?id=78810

Reviewed by Adam Barth.

If a CachedRawResource receives data while a CachedRawResourceCallback
timer is active, the incremental data will be sent to the client, followed
but all data received so far, resulting in invalid data. Resolving this adds
complexity to CachedRawResource and requires making a few more CachedResource
functions virtual, so push the callback logic into CachedResource where it can
be implemented more cleanly.

Test: inspector/debugger/script-formatter-console.html

should no longer be flaky.

  • loader/cache/CachedRawResource.cpp: CachedRawResourceCallback renamed and moved to CachedResource.

(WebCore::CachedRawResource::didAddClient): More or less the same as sendCallbacks() was.

  • loader/cache/CachedRawResource.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::addClient): Check the return value of addClientToSet() to determine whether

or not to call didAddClient.

(WebCore::CachedResource::didAddClient): May be called during addClient(), or may be called on a timer.

If called on a timer, move the client between sets.

(WebCore::CachedResource::addClientToSet): Determine whether didAddClient() can be called synchronously and

return true if it can.

(WebCore::CachedResource::removeClient): Ensure we cancel pending callbacks if necessary.
(WebCore::CachedResource::CachedResourceCallback::CachedResourceCallback): Renamed and moved from CachedRawResource.

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::hasClients): Check m_clientsAwaitingCallback as well as m_clients.
(WebCore::CachedResource::CachedResourceCallback::schedule):
(WebCore::CachedResource::hasClient): Helper for calling contains() on both m_clientsAwaitingCallback and m_clients.

LayoutTests: inspector/debugger/script-formatter-console.html should
no longer be flaky.
https://bugs.webkit.org/show_bug.cgi?id=78810

Reviewed by Adam Barth.

  • platform/chromium/test_expectations.txt:
12:23 PM Changeset in webkit [119330] by haraken@chromium.org
  • 7 edits in trunk/Source/WebCore

[Performance] Optimize querySelector() by caching SelectorQuery objects
https://bugs.webkit.org/show_bug.cgi?id=87942

Reviewed by Antti Koivisto.

This patch improves performance of Node::querySelector() by 7.1x in Safari/Mac
and by 8.5x in Chromium/Linux.

Performance test: Parser/query-selector-first.html, Parser/query-selector-last.html

[query-selector-first.html]
Safari/Mac 264.97 runs/s => 1872.78 runs/s (7.06x speed-up)
Chromium/Linux 244.84 runs/s => 2071.60 runs/s (8.46x speed-up)

[query-selector-last.html]
Safari/Mac 393.73 runs/s => 466.05 runs/s (1.18x speed-up)
Chromium/Linux 401.15 runs/s => 484.45 runs/s (1.20x speed-up)

Previously Node::querySelector() and Node::querySelectorAll() had been
parsing CSS queries every time. This patch optimizes the performance by caching
parsed results onto a Document.

The cache is invalidated when any of CSS related variables is updated.
As per the current implementation of CSSParserContext::operator==(), the CSS related
variables are as follows:

  • baseURI
  • charset
  • mode
  • isHTMLDocument
  • isCSSCustomFilterEnabled
  • isCSSRegionsEnabled
  • needsSiteSpecificQuirks
  • enforcesCSSMIMETypeInNoQuirksMode

Actually, we do not need to watch all of these variables:

  • The current implementation does not watch the change of charset.

charset is always set to a null String by CSSParserContext::CSSParserContext().

  • isHTMLDocument never changes.
  • isCSSCustomFilterEnabled, isCSSRegionsEnabled, needsSiteSpecificQuirks and

enforcesCSSMIMETypeInNoQuirksMode are not flipped in a user scenario.
If someone changes them, it would be reasonable to expect them
to take the effect only on subsequent document loads.
Thus we do not need to invalidate the cache when these variables are updated.

Consequently, the condition under which we have to invalidate the cache is
that any of the following variables is updated:

  • baseURI
  • mode

Tests: fast/dom/SelectorAPI/*. No change in test results.

  • dom/SelectorQuery.h: SelectorQueryCache is a cache from CSS selectors to parsed results.

SelectorQueryCache::Entry is an entry of the cache.
SelectorQueryCache::Entry holds a SelectorQuery object and a CSSSelectorList object.
The reason why SelectorQueryCache::Entry needs to hold the CSSSelectorList object
is that the CSSSelectorList object keeps the lifetime of CSSSelector objects
in the SelectorQuery object. Since the SelectorQuery object just holds pointers
to CSSSelector objects, the CSSSelectorList object must not be destructed
before the SelectorQuery object is destructed.
(WebCore):
(SelectorDataList):
(WebCore::SelectorQuery::SelectorQuery):
(SelectorQuery):
(SelectorQueryCache):
(WebCore::SelectorQueryCache::SelectorQueryCache):
(Entry):
(WebCore::SelectorQueryCache::Entry::selectorQuery):

  • dom/SelectorQuery.cpp:

(WebCore::SelectorQuery::initialize):
(WebCore::SelectorQueryCache::Entry::Entry):
(WebCore::SelectorQueryCache::add): Returns a cached SelectorQuery object if any.
Otherwise, parses a given CSS selector, creates a SelectorQuery object,
adds the SelectorQuery object to a new entry in the cache, returns the SelectorQuery
object.
(WebCore::SelectorQueryCache::invalidate): Clears the cache.

  • dom/Document.h:

(WebCore):
(Document):

  • dom/Document.cpp:

(WebCore::Document::selectorQueryCache):
(WebCore):
(WebCore::Document::setCompatibilityMode): Invalidates the cache
when m_compatibilityMode is updated.
(WebCore::Document::updateBaseURL): Invalidates the cache
when m_baseURL is updated.

  • dom/Node.h: Changed String to AtomicString, since the key of the cache

should be AtomicString.
(Node):

  • dom/Node.cpp: Optimized the code by using the cache.

(WebCore::Node::querySelector):
(WebCore::Node::querySelectorAll):

12:05 PM Changeset in webkit [119329] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Reverted the last change.

  • WebCore.xcodeproj/project.pbxproj:
12:02 PM Changeset in webkit [119328] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Reverted the last change.

  • WebKit2.xcodeproj/project.pbxproj:
11:59 AM Changeset in webkit [119327] by mitz@apple.com
  • 2 edits in trunk/Source/WebCore

Stop treating Perl code as private headers.

  • WebCore.xcodeproj/project.pbxproj: Removed CodeGenerator.pm, generate-bindings.pl,

IDLParser.pm, IDLStructure.pm, and preprocessor.pm from the Copy Headers build phase.

11:57 AM Changeset in webkit [119326] by fischman@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] SKIP http/tests/media/video-buffered.html because it requires overly large data
https://bugs.webkit.org/show_bug.cgi?id=88172

Unreviewed gardening.

  • platform/chromium/TestExpectations:
11:54 AM Changeset in webkit [119325] by kevino@webkit.org
  • 2 edits in trunk

[wx] Unreviewed build fix. Temporarily disable DerivedSources cleanup on Windows.

11:43 AM Changeset in webkit [119324] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Stop treating two Python scripts as private headers.

  • WebKit2.xcodeproj/project.pbxproj: Removed model.py and parser.py from the Copy Headers

build phase.

9:58 AM Changeset in webkit [119323] by Csaba Osztrogonác
  • 6 edits
    37 moves
    17 adds
    5 deletes in trunk/LayoutTests

[Qt] Replace QtXmlPatterns usage with libxslt dependency
https://bugs.webkit.org/show_bug.cgi?id=76820

Unreviewed gardening.

  • fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Renamed from LayoutTests/platform/efl/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt.
  • platform/efl/fast/xsl/xslt-mismatched-tags-in-xslt-expected.png: Removed.
  • platform/gtk/fast/xsl/xslt-mismatched-tags-in-xslt-expected.png: Removed.
  • platform/gtk/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Removed.
  • platform/mac/fast/xsl/xslt-mismatched-tags-in-xslt-expected.png: Removed.
  • platform/mac/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Removed.
  • platform/qt-4.8/Skipped:
  • platform/qt-4.8/fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt: Renamed from LayoutTests/platform/qt/fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt.
  • platform/qt-4.8/fast/dom/Range/surround-contents-font-face-crash-expected.txt: Renamed from LayoutTests/platform/qt/fast/dom/Range/surround-contents-font-face-crash-expected.txt.
  • platform/qt-4.8/fast/dom/xml-parser-error-message-crash-expected.txt: Renamed from LayoutTests/platform/qt/fast/dom/xml-parser-error-message-crash-expected.txt.
  • platform/qt-4.8/fast/encoding/dumpAsText/utf-16-no-bom-expected.txt: Renamed from LayoutTests/platform/qt/fast/encoding/dumpAsText/utf-16-no-bom-expected.txt.
  • platform/qt-4.8/fast/events/xsl-onload-expected.txt: Renamed from LayoutTests/platform/qt/fast/events/xsl-onload-expected.txt.
  • platform/qt-4.8/fast/parser/xml-colon-entity-expected.txt: Renamed from LayoutTests/platform/qt/fast/parser/xml-colon-entity-expected.txt.
  • platform/qt-4.8/fast/parser/xml-declaration-missing-ending-mark-expected.txt: Renamed from LayoutTests/platform/qt/fast/parser/xml-declaration-missing-ending-mark-expected.txt.
  • platform/qt-4.8/fast/parser/xslt-with-html-expected.txt: Renamed from LayoutTests/platform/qt/fast/parser/xslt-with-html-expected.txt.
  • platform/qt-4.8/fast/xsl/subframe-location-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/subframe-location-expected.txt.
  • platform/qt-4.8/fast/xsl/transform-to-html-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/transform-to-html-expected.txt.
  • platform/qt-4.8/fast/xsl/utf8-chunks-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/utf8-chunks-expected.txt.
  • platform/qt-4.8/fast/xsl/xslt-bad-import-uri-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-bad-import-uri-expected.txt.
  • platform/qt-4.8/fast/xsl/xslt-doc-noenc-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-doc-noenc-expected.txt.
  • platform/qt-4.8/fast/xsl/xslt-entity-enc-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-entity-enc-expected.txt.
  • platform/qt-4.8/fast/xsl/xslt-entity-expected.png: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-entity-expected.png.
  • platform/qt-4.8/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-mismatched-tags-in-xslt-expected.txt.
  • platform/qt-4.8/fast/xsl/xslt-recursion-expected.txt: Renamed from LayoutTests/platform/qt/fast/xsl/xslt-recursion-expected.txt.
  • platform/qt-4.8/http/tests/misc/location-test-xsl-style-sheet-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/misc/location-test-xsl-style-sheet-expected.txt.
  • platform/qt-4.8/http/tests/security/contentSecurityPolicy/xsl-allowed-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/contentSecurityPolicy/xsl-allowed-expected.txt.
  • platform/qt-4.8/http/tests/security/contentSecurityPolicy/xsl-img-blocked-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/contentSecurityPolicy/xsl-img-blocked-expected.txt.
  • platform/qt-4.8/http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2-expected.txt.
  • platform/qt-4.8/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.png: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.png.
  • platform/qt-4.8/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/first-party-cookie-allow-xslt-expected.txt.
  • platform/qt-4.8/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.png: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.png.
  • platform/qt-4.8/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/cookies/third-party-cookie-blocking-xslt-expected.txt.
  • platform/qt-4.8/http/tests/security/xss-DENIED-xml-external-entity-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xml-external-entity-expected.txt.
  • platform/qt-4.8/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt.
  • platform/qt-4.8/http/tests/security/xss-DENIED-xsl-external-entity-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xsl-external-entity-expected.txt.
  • platform/qt-4.8/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt: Renamed from LayoutTests/platform/qt/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt.
  • platform/qt-4.8/svg/custom/bug45331-expected.png: Renamed from LayoutTests/platform/qt/svg/custom/bug45331-expected.png.
  • platform/qt-4.8/svg/custom/bug45331-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/bug45331-expected.txt.
  • platform/qt-4.8/svg/custom/bug78807-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/bug78807-expected.txt.
  • platform/qt-4.8/svg/custom/use-invalid-html-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/use-invalid-html-expected.txt.
  • platform/qt-4.8/svg/custom/use-invalid-style-expected.txt: Renamed from LayoutTests/platform/qt/svg/custom/use-invalid-style-expected.txt.
  • platform/qt-4.8/svg/hixie/error/dumpAsText/004-expected.txt: Renamed from LayoutTests/platform/qt/svg/hixie/error/dumpAsText/004-expected.txt.
  • platform/qt-4.8/svg/hixie/error/dumpAsText/005-expected.txt: Renamed from LayoutTests/platform/qt/svg/hixie/error/dumpAsText/005-expected.txt.
  • platform/qt-5.0-wk1/Skipped:
  • platform/qt-5.0/Skipped:
  • platform/qt-5.0/http/tests/security/xss-DENIED-xsl-document-redirect-expected.txt: Added.
  • platform/qt-5.0/http/tests/security/xss-DENIED-xsl-external-entity-redirect-expected.txt: Added.
  • platform/qt-arm/Skipped:
  • platform/qt/Skipped:
7:53 AM Changeset in webkit [119322] by tonikitoo@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART III)
https://bugs.webkit.org/show_bug.cgi?id=88019

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

Enter 'pure-with-mouse-conversion' mode when going fullscreen, so
that it prevents user from scrolling the WebPage, pinch zooming,
touch-and-hold, enter selection mode, etc ...

Internally reviewed by Gen Mak.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):

  • Api/WebPage_p.h:

(WebPagePrivate):

7:52 AM Changeset in webkit [119321] by tonikitoo@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART II)
https://bugs.webkit.org/show_bug.cgi?id=88019

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

When an element goes fullscreen, its wrapper/container obeys all
BlackBerry specific fixed position customizations: we fixed
against Y, but not X. Then, in order to have the wrapper element
properly positioned when entering fullscreen mode, we
temporarily scroll x to 0.

The original x scroll position is restored when we leave
fullscreen.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::WebPagePrivate):
(BlackBerry::WebKit::WebPagePrivate::enterFullScreenForElement):
(BlackBerry::WebKit::WebPagePrivate::exitFullScreenForElement):

  • Api/WebPage_p.h:

(WebPagePrivate):

7:52 AM Changeset in webkit [119320] by tonikitoo@webkit.org
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] browser video player fullscreen mode (portrait) - out of screen/focus - cannot navigate or use the buttons on the screen (PART I)
https://bugs.webkit.org/show_bug.cgi?id=88019
PR #158266

Reviewed by George Staikos.
Patch by Antonio Gomes <agomes@rim.com>

The way elements go fullscreen with the new FULLSCREEN_API
is that they get cloned and added to an out-of-DOM wrapper
element. The wrapper is a normal fixed position element and
then zoom in/out accordingly to how other layers do: following
WebPage's scale.

When going fullscreen, we have to take the current WebPage scale
into account in order to properly fit the element to the screen,
regardless the web page scale.

  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore):
(WebCore::ChromeClientBlackBerry::fullScreenRendererChanged):

  • WebCoreSupport/ChromeClientBlackBerry.h:

(ChromeClientBlackBerry):

7:48 AM Changeset in webkit [119319] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed fix after r119255.

  • platform/qt/svg/css/getComputedStyle-basic-expected.txt:
7:01 AM Changeset in webkit [119318] by zeno.albisser@nokia.com
  • 20 edits in trunk

Fix and enable WebGL for WebKit2 on Qt.
https://bugs.webkit.org/show_bug.cgi?id=86214

Source/WebCore:

Make GraphicsContext3DPrivate use GraphicsSurfaces
for WK2. The GraphicsContext3D then uses the existing
RenderBuffer for multisample rendering.
When WebGraphicsLayer::syncCompositingState is being
executed, the canvas is being synced as well. This means
that the RenderBuffer contents are being blit onto
a GraphicsSurface, and the GraphicsSurface token is
being sent to the UIProcess.
The WebLayerTreeRenderer then creates a
TextureMapperSurfaceBackingStore for the canvas and
passes the GraphicsSurface token as an argument.
The token can then be used to identify the GraphicsSurface
from the UIProcess side.

Reviewed by Noam Rosenthal.

  • platform/graphics/GraphicsContext3D.h:

Added createGraphicsSurfaces function. This is currently only
being used by the Qt port.

  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::reshape):
Calling the createGraphicsSurfaces function when the GraphicsContext3D
is reshaped. This is currently only relevant for the Qt port.

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(GraphicsContext3DPrivate):
Added m_frontBufferGraphicsSurface, m_backBufferGraphicsSurface
and m_surfaceFlags members.
(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
In case of WK2, create a QOpenGLContext and two GraphicsSurface
for sharing the WebGL content with the UIProcess. One GraphicsSurface
is being used as the front, the other one as the backbuffer.
Creating a QOpenGLContext currently requires showing a QWindow.
For the moment we therefore create a minimal QWindow and place
it offscreen.
(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):
This new function is called from the WebGraphicsLayer,
to blit the multisample framebuffer and copy its contents
onto the GraphicsSurface.
(WebCore::GraphicsContext3DPrivate::createGraphicsSurfaces):
Whenever the GraphicsContext3D is being reshaped,
new GraphicsSurfaces must be created with the updated dimensions.
(WebCore::GraphicsContext3D::createGraphicsSurfaces):

  • platform/graphics/texmap/TextureMapperPlatformLayer.h:

Added a new virtual function copyToGraphicsSurface.
(TextureMapperPlatformLayer):
(WebCore::TextureMapperPlatformLayer::copyToGraphicsSurface):

Source/WebKit2:

Added glue code to make use of GraphicsSurface
as a backend for the webgl-canvas in case of WK2.

Reviewed by Noam Rosenthal.

  • UIProcess/API/qt/qwebpreferences.cpp:

(QWebPreferencesPrivate::testAttribute):
(QWebPreferencesPrivate::setAttribute):
(QWebPreferences::webGLEnabled):
(QWebPreferences::setWebGLEnabled):

  • UIProcess/API/qt/qwebpreferences_p.h:
  • UIProcess/API/qt/qwebpreferences_p_p.h:

Added WebGLEnabled enum to allow enabling/disabling of
WebGL using QWebPreferences.

  • UIProcess/LayerTreeHostProxy.cpp:

(WebKit::LayerTreeHostProxy::syncCanvas):
Dispatch syncCanvas calls to the apropriate
WebLayerTreeRenderer.

  • UIProcess/LayerTreeHostProxy.h:

(LayerTreeHostProxy):

  • UIProcess/LayerTreeHostProxy.messages.in:
  • UIProcess/WebLayerTreeRenderer.h:

(WebLayerTreeRenderer):

  • UIProcess/WebLayerTreeRenderer.cpp:

(WebKit::WebLayerTreeRenderer::syncCanvas):
(WebKit::WebLayerTreeRenderer::deleteLayer):
(WebKit::WebLayerTreeRenderer::purgeGLResources):
Create a TextureMapperSurfaceBackingStore for the canvas
if necessary and pass or update the graphicsSurfaceToken
for to be used with the backing store.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::WebGraphicsLayer):
(WebCore):
(WebCore::WebGraphicsLayer::setContentsToCanvas):
(WebCore::WebGraphicsLayer::syncCanvas):
Copy the multisample framebuffer contents onto the GraphicsSurface.
Notify the UIProcess of the availability of a new texture.
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
Sync the canvas as well.

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:

Added a pure virtual function syncCanvas.
This is guarded by PLATFORM(QT).
(WebGraphicsLayerClient):
(WebGraphicsLayer):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::syncLayerChildren):
(WebKit):
(WebKit::LayerTreeHostQt::syncCanvas):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:

(LayerTreeHostQt):

Tools:

Enable WebGL by default for Qt MiniBrowser.

Reviewed by Noam Rosenthal.

  • MiniBrowser/qt/qml/BrowserWindow.qml:
2:46 AM Changeset in webkit [119317] by rniwa@webkit.org
  • 3 edits
    6 moves in trunk

Tools: Teach svn-apply how to apply changes in test_expectations.txt to TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=88164

Reviewed by Kentaro Hara.

Just like r74856, adjust git/svn headers from test_expectations.txt to TestExpectations.
Also replace all occurrences of /test_expectations.txt: by /TestExpectations: in change log entries.

  • Scripts/VCSUtils.pm:

(adjustPathForRecentRenamings):
(fixChangeLogPatch):

LayoutTests: Rename test_expectations.txt to TestExpectations.

  • platform/chromium/TestExpectations: Copied from LayoutTests/platform/chromium/test_expectations.txt.
  • platform/chromium/test_expectations.txt: Removed.
  • platform/efl/TestExpectations: Copied from LayoutTests/platform/efl/test_expectations.txt.
  • platform/efl/test_expectations.txt: Removed.
  • platform/gtk/TestExpectations: Copied from LayoutTests/platform/gtk/test_expectations.txt.
  • platform/gtk/test_expectations.txt: Removed.
  • platform/mac/TestExpectations: Copied from LayoutTests/platform/mac/test_expectations.txt.
  • platform/mac/test_expectations.txt: Removed.
  • platform/qt/TestExpectations: Copied from LayoutTests/platform/qt/test_expectations.txt.
  • platform/qt/test_expectations.txt: Removed.
  • platform/win/TestExpectations: Copied from LayoutTests/platform/win/test_expectations.txt.
  • platform/win/test_expectations.txt: Removed.
1:15 AM Changeset in webkit [119316] by tony@chromium.org
  • 55 edits in trunk

Rename the flexbox CSS propery values from start to flex-start and end to flex-end
https://bugs.webkit.org/show_bug.cgi?id=88152

Reviewed by Ojan Vafai.

Source/WebCore:

The spec changed. This is to differentiate from start/end which will
depend on writing mode direction, rather than flex direction.

No new tests, just updated the existing values.

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EAlignItems):
(WebCore::CSSPrimitiveValue::operator EJustifyContent):
(WebCore::CSSPrimitiveValue::operator EAlignContent):

  • css/CSSValueKeywords.in:
  • rendering/RenderFlexibleBox.cpp:

(WebCore::initialJustifyContentOffset):
(WebCore::alignmentForChild):
(WebCore::initialAlignContentOffset):
(WebCore::RenderFlexibleBox::alignFlexLines):
(WebCore::RenderFlexibleBox::alignChildren):

  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:

LayoutTests:

Rename start to flex-start and end to flex-end.

  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/css-properties.html:
  • css3/flexbox/flex-align-column.html:
  • css3/flexbox/flex-align-end.html:
  • css3/flexbox/flex-align-vertical-writing-mode.html:
  • css3/flexbox/flex-align.html:
  • css3/flexbox/flex-pack.html:
  • css3/flexbox/line-wrapping.html:
  • css3/flexbox/multiline-align.html:
  • css3/flexbox/multiline-column-auto.html:
  • css3/flexbox/multiline-line-pack-horizontal-column-expected.txt:
  • css3/flexbox/multiline-line-pack-horizontal-column.html:
  • css3/flexbox/multiline-line-pack.html:
  • css3/flexbox/multiline-pack-expected.txt:
  • css3/flexbox/multiline-pack.html:
  • css3/flexbox/multiline-reverse-wrap-baseline.html:
  • css3/flexbox/multiline-reverse-wrap-overflow.html:
  • css3/flexbox/multiline-shrink-to-fit.html:
  • css3/flexbox/multiline.html:
  • css3/flexbox/nested-stretch.html:
  • css3/flexbox/orthogonal-flex-directions.html:
  • platform/chromium-linux-x86/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-leopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win-vista/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/svg/css/getComputedStyle-basic-expected.txt:
  • platform/mac/svg/css/getComputedStyle-basic-expected.txt:
  • platform/qt/svg/css/getComputedStyle-basic-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
12:12 AM Changeset in webkit [119315] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Use 'Ok' and 'Cancel' buttons in JavaScript confirm box.
https://bugs.webkit.org/show_bug.cgi?id=76190
Based on Johannes Obermayrs (johannesobermayr@gmx.de) patch.
See: http://www.javascripter.net/faq/confirm.htm
Fixes: https://bugs.kde.org/show_bug.cgi?id=287629

Patch by Zoltan Arvai <zarvai@inf.u-szeged.hu> on 2012-06-02
Reviewed by Simon Hausmann.

  • Api/qwebpage.cpp:

(QWebPage::javaScriptConfirm):

Jun 1, 2012:

11:44 PM Changeset in webkit [119314] by rniwa@webkit.org
  • 19 edits in trunk/Tools

Rename test_expectations.txt to TestExpectations
https://bugs.webkit.org/show_bug.cgi?id=86690

Reviewed by Dirk Pranke.

Make webkitpy aware of both test_expectations.txt and TestExpectations while we rename files.
We can the code to read test_expectations.txt once we've successfully transitioned.

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationParser._check_path_does_not_exist):
(TestExpectationParser._tokenize):
(TestExpectations): Removed TEST_LIST, which is not used anywhere.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.path_to_test_expectations_file): Moved from WebKitPort and ChromiumPort. Returns the path to
test_expectations.txt if one exists and the path to TestExpectations otherwise.

  • Scripts/webkitpy/layout_tests/port/base_unittest.py:

(PortTest.test_virtual_methods): path_to_test_expectations_file and test_expectations are no longer
virtual.

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort.path_from_chromium_base):

  • Scripts/webkitpy/layout_tests/port/chromium_android.py:

(ChromiumAndroidPort.test_expectations):

  • Scripts/webkitpy/layout_tests/port/test.py:

(add_unit_tests_to_mock_filesystem): Use TestExpectations instead of test_expectations.txt.
(TestPort.init):

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitPort.baseline_search_path):
(WebKitPort.test_expectations):

  • Scripts/webkitpy/layout_tests/port/webkit_unittest.py: Added some test cases. We should move these

tests to base as a follow up.
(WebKitPortTest.test_path_to_test_expectations_file):
(test_test_expectations):
(test_legacy_test_expectations):

  • Scripts/webkitpy/style/checker.py:

(CheckerDispatcher.should_skip_without_warning): Replace the check for legacy drt_expectations.txt
with one for TestExpectations.

  • Scripts/webkitpy/style/checkers/test_expectations.py:

(TestExpectationsChecker): Accept both test_expectations.txt and TestExpectations in warning outputs.

  • Scripts/webkitpy/style/checkers/test_expectations_unittest.py:

(TestExpectationsTestCase._expect_port_for_expectations_path): Test both TestExpectations and
test_expectations.txt.
(TestExpectationsTestCase.test_determine_port_from_expectations_path):
(TestExpectationsTestCase.assert_lines_lint):

  • Scripts/webkitpy/tool/commands/queries.py:

(PrintExpectations.init):

  • Scripts/webkitpy/tool/commands/rebaseline.py:

(RebaselineExpectations):

  • Scripts/webkitpy/tool/steps/commit.py:

(Commit._check_test_expectations):

  • Scripts/webkitpy/tool/steps/commit_unittest.py:

(CommitTest._test_check_test_expectations): Extracted from test_check_test_expectations.
(CommitTest.test_check_test_expectations): For TestExpectations.
(CommitTest.test_check_legacy_test_expectations): For test_expectations.txt

  • TestResultServer/static-dashboards/dashboard_base.js:

(requestExpectationsFile): Look for TestExpectations first, and fallback to test_expectations.txt.
Error only when neither exists.

  • TestResultServer/static-dashboards/flakiness_dashboard.js:

(processMissingAndExtraExpectations):
(htmlForTestsWithExpectationsButNoFailures):

  • TestResultServer/static-dashboards/flakiness_dashboard_unittests.js:
11:07 PM Changeset in webkit [119313] by commit-queue@webkit.org
  • 61 edits
    1 copy
    1 add in trunk/Source

[chromium] Software compositor initialization and base classes
https://bugs.webkit.org/show_bug.cgi?id=87920

Patch by Alexandre Elias <aelias@google.com> on 2012-06-01
Reviewed by James Robinson.

Source/Platform:

Add a new setting to force software compositing. In this mode,
no GraphicsContext3D should ever be created.

  • chromium/public/WebLayerTreeView.h:

(WebKit::WebLayerTreeView::Settings::Settings):
(Settings):

Source/WebCore:

This introduces new wrapper class CCGraphicsContext and base class
CCRenderer which will be used for software compositing support.
If no GraphicsContext3D is available, early return for now.

No new tests. (No-op change in 3d mode.)

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::BitmapCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:

(Texture):
(BitmapCanvasLayerTextureUpdater):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:

(Texture):
(BitmapSkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/CanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::Texture::updateRect):
(WebCore::FrameBufferSkPictureCanvasLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/FrameBufferSkPictureCanvasLayerTextureUpdater.h:

(Texture):
(FrameBufferSkPictureCanvasLayerTextureUpdater):

  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerTextureUpdater::Texture::updateRect):
(WebCore::ImageLayerTextureUpdater::updateTextureRect):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore):

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::CCRenderer::toGLMatrix):
(WebCore):
(WebCore::LayerRendererChromium::create):
(WebCore::CCRenderer::CCRenderer):
(WebCore::LayerRendererChromium::LayerRendererChromium):
(WebCore::LayerRendererChromium::copyPlaneToTexture):
(WebCore::LayerRendererChromium::drawHeadsUpDisplay):
(WebCore::LayerRendererChromium::getFramebufferTexture):
(WebCore::LayerRendererChromium::bindFramebufferToTexture):

  • platform/graphics/chromium/LayerRendererChromium.h:

(CCRenderer):
(WebCore::CCRenderer::~CCRenderer):
(WebCore::CCRenderer::ccContext):
(WebCore::CCRenderer::settings):
(WebCore::CCRenderer::viewportSize):
(WebCore::CCRenderer::viewportWidth):
(WebCore::CCRenderer::viewportHeight):
(WebCore::CCRenderer::projectionMatrix):
(WebCore::CCRenderer::windowMatrix):
(WebCore::CCRenderer::sharedGeometryQuad):
(WebCore):
(LayerRendererChromium):

  • platform/graphics/chromium/LayerTextureSubImage.cpp:

(WebCore::LayerTextureSubImage::upload):
(WebCore::LayerTextureSubImage::uploadWithTexSubImage):
(WebCore::LayerTextureSubImage::uploadWithMapTexSubImage):

  • platform/graphics/chromium/LayerTextureSubImage.h:

(WebCore):
(LayerTextureSubImage):

  • platform/graphics/chromium/LayerTextureUpdater.h:

(WebCore):
(Texture):

  • platform/graphics/chromium/ManagedTexture.cpp:

(WebCore::ManagedTexture::bindTexture):
(WebCore::ManagedTexture::framebufferTexture2D):

  • platform/graphics/chromium/ManagedTexture.h:

(WebCore):
(ManagedTexture):

  • platform/graphics/chromium/RenderSurfaceChromium.cpp:
  • platform/graphics/chromium/TextureCopier.cpp:

(WebCore::AcceleratedTextureCopier::copyTexture):

  • platform/graphics/chromium/TextureCopier.h:

(TextureCopier):
(AcceleratedTextureCopier):

  • platform/graphics/chromium/TextureUploader.h:

(TextureUploader):

  • platform/graphics/chromium/ThrottledTextureUploader.cpp:

(WebCore::ThrottledTextureUploader::uploadTexture):

  • platform/graphics/chromium/ThrottledTextureUploader.h:

(ThrottledTextureUploader):

  • platform/graphics/chromium/cc/CCGraphicsContext.h: Copied from Source/WebCore/platform/graphics/chromium/CanvasLayerTextureUpdater.h.

(WebCore):
(CCGraphicsContext):
(WebCore::CCGraphicsContext::create2D):
(WebCore::CCGraphicsContext::create3D):
(WebCore::CCGraphicsContext::context3D):
(WebCore::CCGraphicsContext::CCGraphicsContext):

  • platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:

(WebCore::CCHeadsUpDisplay::draw):

  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::willDraw):
(WebCore::CCLayerImpl::bindContentsTexture):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

(WebCore):
(CCLayerImpl):

  • platform/graphics/chromium/cc/CCLayerTreeHost.cpp:

(WebCore::CCLayerTreeHost::createContext):
(WebCore::CCLayerTreeHost::context):

  • platform/graphics/chromium/cc/CCLayerTreeHost.h:

(CCLayerTreeHostClient):
(WebCore::CCSettings::CCSettings):
(CCSettings):
(CCLayerTreeHost):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::context):
(WebCore::CCLayerTreeHostImpl::initializeLayerRenderer):

  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:

(CCLayerTreeHostImpl):
(WebCore::CCLayerTreeHostImpl::layerRenderer):

  • platform/graphics/chromium/cc/CCProxy.h:

(WebCore):
(CCProxy):

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:

(WebCore::CCScrollbarLayerImpl::willDraw):

  • platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:

(CCScrollbarLayerImpl):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:

(WebCore::CCSingleThreadProxy::context):
(WebCore::CCSingleThreadProxy::initializeContext):
(WebCore::CCSingleThreadProxy::recreateContext):

  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:

(CCSingleThreadProxy):

  • platform/graphics/chromium/cc/CCTextureUpdater.cpp:

(WebCore::CCTextureUpdater::update):

  • platform/graphics/chromium/cc/CCTextureUpdater.h:

(CCTextureUpdater):

  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::context):
(WebCore::CCThreadProxy::initializeContext):
(WebCore::CCThreadProxy::recreateContext):
(WebCore::CCThreadProxy::beginFrame):
(WebCore::CCThreadProxy::initializeContextOnImplThread):
(WebCore::CCThreadProxy::recreateContextOnImplThread):

  • platform/graphics/chromium/cc/CCThreadProxy.h:

(CCThreadProxy):

  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:

(WebCore::CCVideoLayerImpl::willDraw):
(WebCore::CCVideoLayerImpl::willDrawInternal):
(WebCore::CCVideoLayerImpl::reserveTextures):

  • platform/graphics/chromium/cc/CCVideoLayerImpl.h:

(CCVideoLayerImpl):

Source/WebKit/chromium:

Add a new setting to force software compositing. In this mode,
no GraphicsContext3D should ever be created.

  • public/WebSettings.h:
  • src/WebLayerTreeView.cpp:

(WebKit::WebLayerTreeView::Settings::operator CCSettings):
(WebKit::WebLayerTreeView::context):

  • src/WebLayerTreeViewImpl.cpp:
  • src/WebSettingsImpl.cpp:

(WebKit::WebSettingsImpl::WebSettingsImpl):
(WebKit::WebSettingsImpl::setForceSoftwareCompositing):
(WebKit):

  • src/WebSettingsImpl.h:

(WebSettingsImpl):
(WebKit::WebSettingsImpl::forceSoftwareCompositing):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
(WebKit::WebViewImpl::createCompositorGraphicsContext3D):
(WebKit::WebViewImpl::createContext3D):

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKitTests::CCLayerTreeHostImplTest::createContext):
(WebKitTests::TEST_F):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommitWithPartialUpdate::drawLayersOnCCThread):

  • tests/CCTiledLayerTestCommon.cpp:

(WebKitTests::FakeLayerTextureUpdater::Texture::updateRect):

  • tests/CCTiledLayerTestCommon.h:

(Texture):
(WebKitTests::FakeTextureCopier::copyTexture):
(WebKitTests::FakeTextureUploader::uploadTexture):

  • tests/Canvas2DLayerChromiumTest.cpp:

(Canvas2DLayerChromiumTest::fullLifecycleTest):

  • tests/FakeCCLayerTreeHostClient.h:
  • tests/LayerRendererChromiumTest.cpp:

(FakeLayerRendererChromium::FakeLayerRendererChromium):
(LayerRendererChromiumTest::LayerRendererChromiumTest):
(LayerRendererChromiumTest):
(TEST):

  • tests/TextureCopierTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:

(WTF::TEST):

10:47 PM Changeset in webkit [119312] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Suppress text diff on http/tests/media/video-buffered.html on Chromium Leopard as
it has been failing on Leopard since it was re-enabled in http://trac.webkit.org/changeset/119268.
The failure is tracked by the bug 88160.

  • platform/chromium/test_expectations.txt:
8:20 PM Changeset in webkit [119311] by commit-queue@webkit.org
  • 19 edits
    2 deletes in trunk/Source

Unreviewed, rolling out r119283, r119287, and r119291.
http://trac.webkit.org/changeset/119283
http://trac.webkit.org/changeset/119287
http://trac.webkit.org/changeset/119291
https://bugs.webkit.org/show_bug.cgi?id=88159

Not only broke compilation in the initial commit but also
broke LayerChromiumTest.basicCreateAndDestroy (Requested by
rniwa on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-01

Source/WebCore:

  • WebCore.gypi:
  • platform/graphics/chromium/AnimationTranslationUtil.cpp: Removed.
  • platform/graphics/chromium/AnimationTranslationUtil.h: Removed.
  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::addAnimation):

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::addAnimation):

  • platform/graphics/chromium/LayerChromium.h:

(LayerChromium):

  • platform/graphics/chromium/LinkHighlight.cpp:

(WebCore::LinkHighlight::LinkHighlight):

  • platform/graphics/chromium/cc/CCAnimationCurve.h:

(CCTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:

(WebCore::CCTransformKeyframe::create):
(WebCore::CCTransformKeyframe::CCTransformKeyframe):
(WebCore::CCTransformKeyframe::value):
(WebCore::CCTransformKeyframe::clone):
(WebCore::CCKeyframedTransformAnimationCurve::getValue):

  • platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:

(CCTransformKeyframe):
(CCKeyframedTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCLayerAnimationController.cpp:

(WebCore::CCLayerAnimationController::addAnimation):
(WebCore):
(WebCore::CCLayerAnimationController::add):
(WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
(WebCore::CCLayerAnimationController::replaceImplThreadAnimations):
(WebCore::CCLayerAnimationController::tickAnimations):

  • platform/graphics/chromium/cc/CCLayerAnimationController.h:

(CCLayerAnimationControllerClient):
(CCLayerAnimationController):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

Source/WebKit/chromium:

  • tests/CCAnimationTestCommon.cpp:

(WebCore::addOpacityTransition):
(WebCore::addAnimatedTransform):
(WebKitTests::FakeTransformTransition::getValue):

  • tests/CCAnimationTestCommon.h:
  • tests/CCKeyframedAnimationCurveTest.cpp:
  • tests/CCLayerAnimationControllerTest.cpp:
  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):

  • tests/GraphicsLayerChromiumTest.cpp:

(WebKitTests::MockGraphicsLayerClient::notifyAnimationStarted):
(WebKitTests::MockGraphicsLayerClient::notifySyncRequired):
(WebKitTests::MockGraphicsLayerClient::paintContents):
(WebKitTests::MockGraphicsLayerClient::showDebugBorders):
(WebKitTests::MockGraphicsLayerClient::showRepaintCounter):
(WebKitTests::TEST):

8:17 PM Changeset in webkit [119310] by leviw@chromium.org
  • 2 edits in trunk/Source/WebCore

Large number constant in TransformationMatrix::projectPoint overflows FractionalLayoutUnits with sub-pixel layout enabled
https://bugs.webkit.org/show_bug.cgi?id=87896

Reviewed by James Robinson.

kLargeNumber is meant to avoid overflowing when projecting a point through a transform. Unfortunately,
due to FractionalLayoutUnit's diminished range compared to integers, we were overflowing anyways. This
change adjusts our large number by the same value, but adjusted for our denominator.

This was originally missed because transforms/3d is marked as pass/fail in Chromium's test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=66989 tracks removing this problem.

No new tests. Covered by transforms/3d/hit-testing/perspective-clipped.html

  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::TransformationMatrix::projectPoint):

7:47 PM Changeset in webkit [119309] by wangxianzhu@chromium.org
  • 4 edits in trunk

Remove dependency from ImageDiff to WTF
https://bugs.webkit.org/show_bug.cgi?id=88147

Reviewed by Adam Barth.

Source/WTF:

  • WTF.gyp/WTF.gyp:

Tools:

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
7:09 PM Changeset in webkit [119308] by dpranke@chromium.org
  • 5 edits in trunk/Tools

NRWT seems to leak (more?) temp dirs
https://bugs.webkit.org/show_bug.cgi?id=88126

Re-land r119297 with chromium fix (weren't calling the
super() method if not in --test-shell mode in start().
Add unit tests to chromium_unittest as well to check.

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumDriver.start):

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitDriver.del):
(WebKitDriver._start):
(WebKitDriver.run_test):

  • Scripts/webkitpy/layout_tests/port/webkit_unittest.py:

(WebKitDriverTest.test_check_for_driver_crash):
(WebKitDriverTest.test_stop_cleans_up_properly):
(WebKitDriverTest):
(WebKitDriverTest.test_two_starts_cleans_up_properly):

  • Scripts/webkitpy/layout_tests/port/chromium_unittest.py:

(ChromiumDriverTest.test_stop_cleans_up_properly):
(ChromiumDriverTest.test_two_starts_cleans_up_properly):

6:38 PM Changeset in webkit [119307] by timothy_horton@apple.com
  • 7 edits in trunk/Source/WebCore

Cleanup GeneratorGeneratedImage/Gradient changes from r117858
https://bugs.webkit.org/show_bug.cgi?id=88063

Reviewed by Simon Fraser.

No new tests, code cleanup.

  • platform/graphics/Generator.h:

(WebCore::Generator::hash): hash() should be const.

  • platform/graphics/GeneratorGeneratedImage.cpp:

(WebCore::GeneratorGeneratedImage::drawPattern): Minor cleanup.

  • platform/graphics/Gradient.cpp:

(WebCore::Gradient::Gradient): Rename m_hashCache to m_cachedHash.
(WebCore::Gradient::addColorStop): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::sortStopsIfNecessary): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setSpreadMethod): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setGradientSpaceTransform): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::hash): Use intHash instead of the pair hasher. Add compile time size checks
for structures being passed to StringHasher.

  • platform/graphics/Gradient.h:

(WebCore::Gradient::setP0): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setP1): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setStartRadius): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::setEndRadius): Rename clearHashCache to invalidateHash.
(WebCore::Gradient::invalidateHash): Rename clearHashCache to invalidateHash.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::scalesMatch): Added. Determine if the scale of two AffineTransforms match.
(WebCore::GraphicsContext::isCompatibleWithBuffer): Make use of scalesMatch to simplify the logic.

6:26 PM Changeset in webkit [119306] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Skip more asserting tests on Windows.

  • platform/win/Skipped:
6:26 PM Changeset in webkit [119305] by timothy_horton@apple.com
  • 2 edits in trunk/Tools

Lots of "failed download-built-product" on Apple bots
https://bugs.webkit.org/show_bug.cgi?id=88158

Reviewed by Jessie Berlin.

Disable mergeRequests on all Apple builders. This is a speculative fix.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
6:00 PM Changeset in webkit [119304] by rniwa@webkit.org
  • 3 edits in trunk/Tools

Unreviewed, rolling out r119297.
http://trac.webkit.org/changeset/119297
https://bugs.webkit.org/show_bug.cgi?id=88156

May have broken Chromium bots (Requested by rniwa on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-01

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitDriver.del):
(WebKitDriver.run_test):

  • Scripts/webkitpy/layout_tests/port/webkit_unittest.py:

(WebKitDriverTest.test_check_for_driver_crash):
(WebKitDriverTest.test_stop_cleans_up_properly):

5:22 PM Changeset in webkit [119303] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG CFA should know that PutByVal can clobber the world
https://bugs.webkit.org/show_bug.cgi?id=88155

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

LayoutTests:

  • fast/js/dfg-putbyval-cfa-clobber-expected.txt: Added.
  • fast/js/dfg-putbyval-cfa-clobber.html: Added.
  • fast/js/script-tests/dfg-putbyval-cfa-clobber.js: Added.

(foo.bar):
(foo):

5:09 PM Changeset in webkit [119302] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Remove RefInfo class
https://bugs.webkit.org/show_bug.cgi?id=87904

Patch by Raymond Toy <Raymond Toy> on 2012-06-01
Reviewed by Chris Rogers.

No new tests; covered by existing tests.

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::~AudioBufferSourceNode): Clear
panner node.
(WebCore::AudioBufferSourceNode::totalPitchRate):
(WebCore::AudioBufferSourceNode::setPannerNode): Use
RefTypeConnection counting for panner node.
(WebCore):
(WebCore::AudioBufferSourceNode::clearPannerNode): New function to

clear panner node in AudioBufferSourceNode.

(WebCore::AudioBufferSourceNode::finish): Clear panner node when done.

  • Modules/webaudio/AudioBufferSourceNode.h:

(AudioBufferSourceNode): Add virtual finish(), m_pannerNode is not
a RefPtr anymore.

  • Modules/webaudio/AudioContext.cpp:

(WebCore::AudioContext::addDeferredFinishDeref): Remove unneeded RefTyp.
(WebCore::AudioContext::handleDeferredFinishDerefs): Remove
unneeded RefType.

  • Modules/webaudio/AudioContext.h:

(AudioContext): Update addDeferredFinishDeref signature.

  • Modules/webaudio/AudioNode.cpp:

(WebCore::AudioNode::deref): Update call to addDeferredFinishDeref.

  • Modules/webaudio/AudioScheduledSourceNode.h:

(AudioScheduledSourceNode): Make finish() virtual.

4:54 PM Changeset in webkit [119301] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG CFA should mark basic blocks as having constants if local accesses yield constants
https://bugs.webkit.org/show_bug.cgi?id=88153

Reviewed by Gavin Barraclough.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

4:47 PM Changeset in webkit [119300] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG arguments simplification phase uses a node.codeOrigin after appending a node
https://bugs.webkit.org/show_bug.cgi?id=88151

Reviewed by Geoffrey Garen.

The right thing to do is to save the CodeOrigin before appending to the graph.

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

4:18 PM Changeset in webkit [119299] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG should not emit unnecessary speculation checks when performing an int32 to double conversion on
a value that is proved to be a number, predicted to be an int32, but not proved to be an int32
https://bugs.webkit.org/show_bug.cgi?id=88146

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileInt32ToDouble):

LayoutTests:

  • fast/js/dfg-int32-to-double-on-known-number-expected.txt: Added.
  • fast/js/dfg-int32-to-double-on-known-number.html: Added.
  • fast/js/script-tests/dfg-int32-to-double-on-known-number.js: Added.

(foo.bar):
(foo):

4:18 PM Changeset in webkit [119298] by tony@chromium.org
  • 60 edits in trunk

rename -webkit-flex-pack and -webkit-flex-line-pack to -webkit-justify-content and -webkit-align-content
https://bugs.webkit.org/show_bug.cgi?id=88113

Reviewed by Ojan Vafai.

Source/WebCore:

This recently changed in the spec:
http://dev.w3.org/csswg/css3-flexbox/#justify-content-property
http://dev.w3.org/csswg/css3-flexbox/#align-content-property

No new tests, updated existing tests.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):
(WebCore::isKeywordPropertyID):
(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EJustifyContent):
(WebCore::CSSPrimitiveValue::operator EAlignContent):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems):
(WebCore::initialJustifyContentOffset):
(WebCore::justifyContentSpaceBetweenChildren):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::layoutColumnReverse):
(WebCore::initialAlignContentOffset):
(WebCore::alignContentSpaceBetweenChildren):
(WebCore::RenderFlexibleBox::alignFlexLines):

  • rendering/RenderFlexibleBox.h:
  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleFlexibleBoxData.cpp:

(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):

  • rendering/style/StyleFlexibleBoxData.h:

(StyleFlexibleBoxData):

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

(StyleRareNonInheritedData):

LayoutTests:

Find and replace for the CSS keywords.

  • css3/flexbox/columns-auto-size.html:
  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/css-properties.html:
  • css3/flexbox/flex-pack.html:
  • css3/flexbox/multiline-align.html:
  • css3/flexbox/multiline-column-auto.html:
  • css3/flexbox/multiline-line-pack-expected.txt:
  • css3/flexbox/multiline-line-pack-horizontal-column-expected.txt:
  • css3/flexbox/multiline-line-pack-horizontal-column.html:
  • css3/flexbox/multiline-line-pack.html:
  • css3/flexbox/multiline-pack-expected.txt:
  • css3/flexbox/multiline-pack.html:
  • css3/flexbox/multiline-reverse-wrap-overflow.html:
  • css3/flexbox/multiline-shrink-to-fit.html:
  • css3/flexbox/multiline.html:
  • css3/flexbox/nested-stretch.html:
  • css3/flexbox/position-absolute-child.html:
  • css3/flexbox/true-centering.html:
  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-linux-x86/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-leopard/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-mac-leopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-mac/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win-vista/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/gtk/svg/css/getComputedStyle-basic-expected.txt:
  • platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/mac/svg/css/getComputedStyle-basic-expected.txt:
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/qt/svg/css/getComputedStyle-basic-expected.txt:
  • platform/win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
4:11 PM Changeset in webkit [119297] by dpranke@chromium.org
  • 3 edits in trunk/Tools

nrwt seems to leak tmpdirs
https://bugs.webkit.org/show_bug.cgi?id=88126

Reviewed by Ojan Vafai.

Fix leak possibly introduced in r118979 - we now will
make sure we clean up any stale temp directories during the
start routine and attempt to clean up again in del. It
turns out that asserting in del logs a message but is
caught by the runtime, so it's mostly useless.

  • Scripts/webkitpy/layout_tests/port/webkit.py:

(WebKitDriver.del):
(WebKitDriver._start):
(WebKitDriver.run_test):

  • Scripts/webkitpy/layout_tests/port/webkit_unittest.py:

(WebKitDriverTest.test_check_for_driver_crash):
(WebKitDriverTest.test_stop_cleans_up_properly):
(WebKitDriverTest):
(WebKitDriverTest.test_two_starts_cleans_up_properly):

4:09 PM Changeset in webkit [119296] by ap@apple.com
  • 6 edits
    1 delete in trunk/LayoutTests

Make cookie tests debuggable by merging scripts into HTML
https://bugs.webkit.org/show_bug.cgi?id=88143

Reviewed by Anders Carlsson.

  • http/tests/cookies/double-quoted-value-with-semi-colon.html:
  • http/tests/cookies/multiple-cookies.html:
  • http/tests/cookies/script-tests: Removed.
  • http/tests/cookies/script-tests/TEMPLATE.html: Removed.
  • http/tests/cookies/script-tests/double-quoted-value-with-semi-colon.js: Removed.
  • http/tests/cookies/script-tests/multiple-cookies.js: Removed.
  • http/tests/cookies/script-tests/simple-cookies-expired.js: Removed.
  • http/tests/cookies/script-tests/simple-cookies-max-age.js: Removed.
  • http/tests/cookies/script-tests/single-quoted-value.js: Removed.
  • http/tests/cookies/simple-cookies-expired.html:
  • http/tests/cookies/simple-cookies-max-age.html:
  • http/tests/cookies/single-quoted-value.html:
3:59 PM Changeset in webkit [119295] by jberlin@webkit.org
  • 1 edit
    48 adds in trunk/LayoutTests

[Win] Windows 7 Release Testers report many compositing failures
https://bugs.webkit.org/show_bug.cgi?id=88040

Part 2 of adding expected (failing?) results to get the bots greener.

  • platform/win/compositing/images: Added.
  • platform/win/compositing/images/clip-on-directly-composited-image-expected.txt: Added.
  • platform/win/compositing/images/direct-image-background-color-expected.txt: Added.
  • platform/win/compositing/images/direct-pdf-image-expected.txt: Added.
  • platform/win/compositing/images/direct-svg-image-expected.txt: Added.
  • platform/win/compositing/layer-creation/fixed-position-out-of-view-expected.txt: Added.
  • platform/win/compositing/layer-creation/overflow-scroll-overlap-expected.txt: Added.
  • platform/win/compositing/layer-creation/overlap-animation-expected.txt: Added.
  • platform/win/compositing/layer-creation/overlap-child-layer-expected.txt: Added.
  • platform/win/compositing/layer-creation/overlap-clipping-expected.txt: Added.
  • platform/win/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt: Added.
  • platform/win/compositing/layer-creation/overlap-transformed-layer-expected.txt: Added.
  • platform/win/compositing/layer-creation/overlap-transforms-expected.txt: Added.
  • platform/win/compositing/layer-creation/rotate3d-overlap-expected.txt: Added.
  • platform/win/compositing/layer-creation/scroll-partial-update-expected.txt: Added.
  • platform/win/compositing/layer-creation/spanOverlapsCanvas-expected.txt: Added.
  • platform/win/compositing/layer-creation/stacking-context-overlap-expected.txt: Added.
  • platform/win/compositing/layer-creation/stacking-context-overlap-nested-expected.txt: Added.
  • platform/win/compositing/layer-creation/translatez-overlap-expected.txt: Added.
  • platform/win/compositing/masks: Added.
  • platform/win/compositing/masks/direct-image-mask-expected.txt: Added.
  • platform/win/compositing/masks/masked-ancestor-expected.txt: Added.
  • platform/win/compositing/masks/multiple-masks-expected.txt: Added.
  • platform/win/compositing/masks/simple-composited-mask-expected.txt: Added.
  • platform/win/compositing/overflow/ancestor-overflow-expected.txt
  • platform/win/compositing/overflow/clip-descendents-expected.txt: Added.
  • platform/win/compositing/overflow/content-gains-scrollbars-expected.txt: Added.
  • platform/win/compositing/overflow/content-loses-scrollbars-expected.txt: Added.
  • platform/win/compositing/overflow/overflow-compositing-descendant-expected.txt: Added.
  • platform/win/compositing/overflow/overflow-positioning-expected.txt: Added.
  • platform/win/compositing/overflow/overflow-scrollbar-layers-expected.txt: Added.
  • platform/win/compositing/overflow/resize-painting-expected.txt: Added.
  • platform/win/compositing/rtl: Added.
  • platform/win/compositing/rtl/rtl-absolute-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-absolute-overflow-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-absolute-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-absolute-overflow-scrolled-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-fixed-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-fixed-overflow-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-fixed-overflow-scrolled-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-iframe-relative-expected.txt: Added.
  • platform/win/compositing/rtl/rtl-relative-expected.txt: Added.
  • platform/win/compositing/tiling/crash-reparent-tiled-layer-expected.txt: Added.
  • platform/win/compositing/visibility: Added.
  • platform/win/compositing/visibility/layer-visible-content-expected.txt: Added.
  • platform/win/compositing/visibility/visibility-image-layers-dynamic-expected.txt: Added.
3:53 PM Changeset in webkit [119294] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Overflow scrolling doesn't need to create a stacking context is the overflow is hidden
https://bugs.webkit.org/show_bug.cgi?id=88057

Reviewed by James Robinson.

This patch causes us to match the iOS implementation of this feature.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

3:50 PM Changeset in webkit [119293] by mrowe@apple.com
  • 4 edits in branches/safari-536-branch/Source

Versioning.

3:44 PM Changeset in webkit [119292] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG constant folding search for the last local access skips the immediately previous local access
https://bugs.webkit.org/show_bug.cgi?id=88141

Source/JavaScriptCore:

Reviewed by Michael Saboff.

If you use a loop in the style of:

for (i = start; i--;)

then you need to remember that the first value of 'i' that the loop body will see is 'start - 1'.
Hence the following is probably wrong:

for (i = start - 1; i--;)

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

LayoutTests:

Reviewed by Michael Saboff.

  • fast/js/dfg-obvious-constant-cfa-expected.txt: Added.
  • fast/js/dfg-obvious-constant-cfa.html: Added.
  • fast/js/script-tests/dfg-obvious-constant-cfa.js: Added.

(bar.baz):
(bar):

3:43 PM Changeset in webkit [119291] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Use fully qualified name for Fixed to avoid the collision with "typedef SInt32 Fixed" in MacTypes.h

  • tests/GraphicsLayerChromiumTest.cpp:

(WebKitTests::TEST_F):

3:34 PM Changeset in webkit [119290] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix the return value checking in SelectPopupClient
https://bugs.webkit.org/show_bug.cgi?id=88130

Patch by Crystal Zhang <haizhang@rim.com> on 2012-06-01
Reviewed by Rob Buis.

In SelectPopupClient, return '1' means selected, '0' means not selected,
the ASCII value of '0' is 48, not 32, use '0' to be more readable.

  • WebCoreSupport/SelectPopupClient.cpp:

(WebCore::SelectPopupClient::setValueAndClosePopup):

3:32 PM Changeset in webkit [119289] by rniwa@webkit.org
  • 1 edit
    4 adds in trunk/LayoutTests

Chromium rebaseline after r119274.

  • platform/chromium-linux/fast/reflections/reflection-with-zoom-expected.png: Added.
  • platform/chromium-mac-leopard/fast/reflections/reflection-with-zoom-expected.png: Added.
  • platform/chromium-mac/fast/reflections/reflection-with-zoom-expected.png: Added.
  • platform/chromium-win/fast/reflections/reflection-with-zoom-expected.png: Added.
3:15 PM Changeset in webkit [119288] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Fix a typo in the expected result for the test added in r119281.119281

  • fast/js/dfg-cse-cfa-discrepancy-expected.txt:
3:14 PM Changeset in webkit [119287] by jamesr@google.com
  • 5 edits in trunk/Source

[chromium] Unreviewed compile fix for r119283

For the record, Dana Jensens <danakj@chromium.org> wrote this slightly faster than I did.

Source/WebCore:

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::bounds):

  • platform/graphics/chromium/cc/CCLayerImpl.h:

(WebCore::CCLayerImpl::bounds):

Source/WebKit/chromium:

  • tests/CCAnimationTestCommon.h:
3:11 PM Changeset in webkit [119286] by ap@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/cookies/simple-cookies-expired.html and simple-cookies-max-age.html are failing
https://bugs.webkit.org/show_bug.cgi?id=82749

I don't see any failures locally (other than sometimes as flakiness in all cookie
tests), and the bug report doesnt' have any information about what was wrong.

  • platform/mac/Skipped: Re-enable to see what happens.
2:59 PM Changeset in webkit [119285] by jberlin@webkit.org
  • 3 edits
    48 adds in trunk/LayoutTests

[Win] Windows 7 Release Testers report many compositing failures
https://bugs.webkit.org/show_bug.cgi?id=88040

Part 1 of adding expected (failing?) results to get the bots greener.

  • platform/win/compositing/geometry/flipped-writing-mode-expected.txt: Added.
  • platform/win/compositing/geometry/foreground-layer-expected.txt: Added.
  • platform/win/compositing/geometry/foreground-offset-change-expected.txt: Added.
  • platform/win/compositing/geometry/horizontal-scroll-composited-expected.txt: Added.
  • platform/win/compositing/geometry/layer-due-to-layer-children-deep-expected.txt: Added.
  • platform/win/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt: Added.
  • platform/win/compositing/geometry/layer-due-to-layer-children-expected.txt: Added.
  • platform/win/compositing/geometry/layer-due-to-layer-children-switch-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-clipping-ancestor-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-opacity-transition-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-overflow-repaint-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-positioned-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-transformed-expected.txt: Added.
  • platform/win/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt: Added.
  • platform/win/compositing/geometry/outline-change-expected.txt: Added.
  • platform/win/compositing/geometry/partial-layout-update-expected.txt: Added.
  • platform/win/compositing/geometry/preserve-3d-switching-expected.txt: Added.
  • platform/win/compositing/geometry/root-layer-update-expected.txt: Added.
  • platform/win/compositing/geometry/tall-page-composited-expected.txt: Added.
  • platform/win/compositing/geometry/transfrom-origin-on-zero-size-layer-expected.txt: Added.
  • platform/win/compositing/geometry/vertical-scroll-composited-expected.txt: Added.
  • platform/win/compositing/geometry/video-opacity-overlay-expected.txt: Added.
  • platform/win/compositing/iframes/become-composited-nested-iframes-expected.txt: Added.
  • platform/win/compositing/iframes/become-overlapped-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/composited-iframe-alignment-expected.txt: Added.
  • platform/win/compositing/iframes/composited-iframe-scroll-expected.txt: Added.
  • platform/win/compositing/iframes/composited-parent-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/connect-compositing-iframe-delayed-expected.txt: Added.
  • platform/win/compositing/iframes/connect-compositing-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/connect-compositing-iframe2-expected.txt: Added.
  • platform/win/compositing/iframes/connect-compositing-iframe3-expected.txt: Added.
  • platform/win/compositing/iframes/enter-compositing-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/iframe-content-flipping-expected.txt: Added.
  • platform/win/compositing/iframes/iframe-copy-on-scroll-expected.txt: Added.
  • platform/win/compositing/iframes/iframe-in-composited-layer-expected.txt: Added.
  • platform/win/compositing/iframes/iframe-resize-expected.txt: Added.
  • platform/win/compositing/iframes/iframe-size-from-zero-expected.txt: Added.
  • platform/win/compositing/iframes/invisible-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/invisible-nested-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/invisible-nested-iframe-hide-expected.txt: Added.
  • platform/win/compositing/iframes/invisible-nested-iframe-show-expected.txt:
  • platform/win/compositing/iframes/layout-on-compositing-change-expected.txt: Added.
  • platform/win/compositing/iframes/nested-iframe-scrolling-expected.txt: Added.
  • platform/win/compositing/iframes/overlapped-iframe-expected.txt: Added.
  • platform/win/compositing/iframes/overlapped-iframe-iframe-expected.txt:
  • platform/win/compositing/iframes/page-cache-layer-tree-expected.txt: Added.
  • platform/win/compositing/iframes/resizer-expected.txt: Added.
  • platform/win/compositing/iframes/scrolling-iframe-expected.txt: Added.
2:53 PM Changeset in webkit [119284] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening, adding a TEXT expectation for http/tests/media/video-buffered.html
after it started failing in r119268.

  • platform/gtk/test_expectations.txt:
2:46 PM Changeset in webkit [119283] by commit-queue@webkit.org
  • 18 edits
    2 adds in trunk/Source

[chromium] Accelerated animations should use WebTransformOperations
https://bugs.webkit.org/show_bug.cgi?id=87686

Patch by Ian Vollick <vollick@chromium.org> on 2012-06-01
Reviewed by James Robinson.

CCTransformKeyframe new owns a WebTransformOperations rather than a
TransformOperations. LayerChromium's API has been changed so that
LayerChromium::addAnimation should take only a CCActiveAnimation.
GraphicsLayerChromium is new responsible for translating to
WebTransformOperations and creating CCActiveAnimations. Tests that use
the public API (that is, they call addAnimation with KeyframeValueList
and Animation arguments) have been moved to GraphicsLayerChromiumTest.

Source/WebCore:

Unit tests:

GraphicsLayerChromiumTest.createOpacityAnimation
GraphicsLayerChromiumTest.createTransformAnimation
GraphicsLayerChromiumTest.createTransformAnimationWithBigRotation
GraphicsLayerChromiumTest.createTransformAnimationWithSingularMatrix
GraphicsLayerChromiumTest.createReversedAnimation
GraphicsLayerChromiumTest.createAlternatingAnimation
GraphicsLayerChromiumTest.createReversedAlternatingAnimation

  • WebCore.gypi:
  • platform/graphics/chromium/AnimationTranslationUtil.cpp: Added.

(WebCore):
(WebCore::toWebTransformOperations):
(WebCore::appendKeyframe):
(WebCore::CCKeyframedTransformAnimationCurve):
(WebCore::createActiveAnimation):

  • platform/graphics/chromium/AnimationTranslationUtil.h: Added.

(WebCore):

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::addAnimation):

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::addAnimation):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore):
(LayerChromium):

  • platform/graphics/chromium/LinkHighlight.cpp:

(WebCore::LinkHighlight::LinkHighlight):

  • platform/graphics/chromium/cc/CCAnimationCurve.h:

(CCTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCKeyframedAnimationCurve.cpp:

(WebCore::CCTransformKeyframe::create):
(WebCore::CCTransformKeyframe::CCTransformKeyframe):
(WebCore::CCTransformKeyframe::value):
(WebCore::CCTransformKeyframe::clone):
(WebCore::CCKeyframedTransformAnimationCurve::getValue):

  • platform/graphics/chromium/cc/CCKeyframedAnimationCurve.h:

(CCTransformKeyframe):
(CCKeyframedTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCLayerAnimationController.cpp:

(WebCore::CCLayerAnimationController::removeAnimation):
(WebCore):
(WebCore::CCLayerAnimationController::addAnimation):
(WebCore::CCLayerAnimationController::getActiveAnimation):
(WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
(WebCore::CCLayerAnimationController::replaceImplThreadAnimations):
(WebCore::CCLayerAnimationController::tickAnimations):

  • platform/graphics/chromium/cc/CCLayerAnimationController.h:

(CCLayerAnimationControllerClient):
(CCLayerAnimationController):

Source/WebKit/chromium:

  • tests/CCAnimationTestCommon.cpp:

(WebCore::addOpacityTransition):
(WebCore::addAnimatedTransform):
(WebKitTests::FakeTransformTransition::getValue):

  • tests/CCAnimationTestCommon.h:
  • tests/CCKeyframedAnimationCurveTest.cpp:

(WebCore::TEST):

  • tests/CCLayerAnimationControllerTest.cpp:

(WebKitTests::TEST):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTestLayerAddedWithAnimation::beginTest):

  • tests/GraphicsLayerChromiumTest.cpp:

(MockLayerTreeHostClient):
(WebKitTests):
(MockLayerTreeHost):
(WebKitTests::MockLayerTreeHost::create):
(WebKitTests::MockLayerTreeHost::createLayerTreeHostImpl):
(WebKitTests::MockLayerTreeHost::MockLayerTreeHost):
(GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::~GraphicsLayerChromiumTest):
(WebKitTests::GraphicsLayerChromiumTest::expectTranslateX):
(WebKitTests::TEST_F):

2:34 PM Changeset in webkit [119282] by fpizlo@apple.com
  • 2 edits in trunk/LayoutTests

DFG constant folding should be OK with GetLocal of captured variables having a constant
https://bugs.webkit.org/show_bug.cgi?id=88137

Fix a typo that Gavin found but that I failed to fix in previous commit.

  • fast/js/script-tests/dfg-cse-cfa-discrepancy.js:
2:32 PM Changeset in webkit [119281] by fpizlo@apple.com
  • 3 edits
    3 adds in trunk

DFG constant folding should be OK with GetLocal of captured variables having a constant
https://bugs.webkit.org/show_bug.cgi?id=88137

Reviewed by Gavin Barraclough.

Source/JavaScriptCore:

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::run):

LayoutTests:

  • fast/js/dfg-cse-cfa-discrepancy-expected.txt: Added.
  • fast/js/dfg-cse-cfa-discrepancy.html: Added.
  • fast/js/script-tests/dfg-cse-cfa-discrepancy.js: Added.

(foo.bar.baz):
(foo.bar):
(foo):

2:26 PM Changeset in webkit [119280] by msaboff@apple.com
  • 4 edits in trunk

WebFrame::_stringByEvaluatingJavaScriptFromString methods don't handle nil string
https://bugs.webkit.org/show_bug.cgi?id=88109

Reviewed by Geoffrey Garen.

Source/WebKit/mac:

Added short circuit return when the NSString to evaluate is nil.

  • WebView/WebFrame.mm:

(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):

Tools:

Additional test case.

  • TestWebKitAPI/Tests/mac/StringByEvaluatingJavaScriptFromString.mm:

(TestWebKitAPI::TEST):

2:04 PM Changeset in webkit [119279] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

[Win] ASSERT(enclosingIntRect(rendererMappedResult) == enclosingIntRect(FloatQuad(result).boundingBox()))
failed in RenderGeometryMap::absoluteRect
https://bugs.webkit.org/show_bug.cgi?id=88128

Add affected tests to the Windows Skipped list.

  • platform/win/Skipped:

Also, fix the line endings for this file.

2:00 PM Changeset in webkit [119278] by zandobersek@gmail.com
  • 1 edit
    6 adds in trunk/LayoutTests

Unreviewed GTK gardening, adding new baselines after r119256.

  • platform/gtk/fast/viewport/viewport-legacy-handheldfriendly-expected.txt: Added.
  • platform/gtk/fast/viewport/viewport-legacy-mobileoptimized-2-expected.txt: Added.
  • platform/gtk/fast/viewport/viewport-legacy-mobileoptimized-3-expected.txt: Added.
  • platform/gtk/fast/viewport/viewport-legacy-mobileoptimized-expected.txt: Added.
  • platform/gtk/fast/viewport/viewport-legacy-ordering-5-expected.txt: Added.
  • platform/gtk/fast/viewport/viewport-legacy-ordering-6-expected.txt: Added.
1:47 PM Changeset in webkit [119277] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Layout Test fast/dom/HTMLMeterElement/meter-element-crash.html is failing
https://bugs.webkit.org/show_bug.cgi?id=88131

Unreviewed addition to Chromium test expectations.

  • platform/chromium/test_expectations.txt:
1:23 PM Changeset in webkit [119276] by mihaip@chromium.org
  • 5 edits in trunk

Improve synchronous XHR disabling
https://bugs.webkit.org/show_bug.cgi?id=88032

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::setSyncXHRInDocumentsEnabled): Fix a
copy-and-paste error

  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::open): Improves the disabled message, as
suggested in a comment after r118599 was put in the commit queue.

LayoutTests:

Update with new error message.

  • fast/xmlhttprequest/xmlhttprequest-sync-disabled-expected.txt:
1:22 PM Changeset in webkit [119275] by caio.oliveira@openbossa.org
  • 2 edits in trunk/Source/WebKit/qt

[Qt] Fix QObject bridge tests in Qt5 after (not so) recent QVariant changes
https://bugs.webkit.org/show_bug.cgi?id=88127

Reviewed by Noam Rosenthal.

We were checking for invalid QVariants in a very odd way. Since in Qt5 the
userType of invalid changed to not be Void, this broke the tests for QtWebKit
with Qt5. Replace those checks with QVariant::isValid() calls.

  • tests/qobjectbridge/tst_qobjectbridge.cpp:

(tst_QObjectBridge::evalJS):
(tst_QObjectBridge::evalJSV):

1:20 PM Changeset in webkit [119274] by Beth Dakin
  • 4 edits
    3 adds in trunk

https://bugs.webkit.org/show_bug.cgi?id=87774
REGRESSION (r105515): reflection masks are truncated at zoom levels < 1
-and corresponding-
<rdar://problem/11387506>

Reviewed by Simon Fraser.

Source/WebCore:

paintNinePieceImage() expects un-zoomed results from
calculateImageIntrinsicDimensions(). This was previously addressed by having
paintNinePieceImage() divide the effective zoom out of the result from
calculateImageIntrinsicDimensions(). However, that results in buggy behavior for
generated images and images with percentage sizes. In the end it seems best to
just send a parameter to calculateImageIntrinsicDimensions() indicating whether
the caller wants the result to be scaled by the effective zoom when appropriate.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):
(WebCore::RenderBoxModelObject::calculateFillTileSize):
(WebCore::RenderBoxModelObject::paintNinePieceImage):

  • rendering/RenderBoxModelObject.h:

(RenderBoxModelObject):

LayoutTests:

  • fast/reflections/reflection-with-zoom.html: Added.
  • platform/mac/fast/reflections/reflection-with-zoom-expected.png: Added.
  • platform/mac/fast/reflections/reflection-with-zoom-expected.txt: Added.
1:15 PM Changeset in webkit [119273] by schenney@chromium.org
  • 2 edits in trunk/LayoutTests

Another Chromium test expectation update per the bug 88124.

Unreviewed Chromium test expectations fix.

  • platform/chromium/test_expectations.txt:
1:15 PM Changeset in webkit [119272] by jchaffraix@webkit.org
  • 6 edits in trunk/Source/WebCore

Prepare table collapsed border computation to support mixed directionality on row group
https://bugs.webkit.org/show_bug.cgi?id=88110

Reviewed by Ojan Vafai.

No expected change in behavior.

One big issue with supporting mixed directionality inside a table is that the start / end
borders don't align between table parts anymore: the start border of a ltr table will have
to match the end border of a rtl row group for the purpose of collapsed border computation.

This change adds the concept of adjoining borders in the table direction so that we can safely
hide which exact borders we pick up for the collapsed border computation.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::calcBorderStart):
(WebCore::RenderTable::calcBorderEnd):
Refactored those functions to use proper naming along with the new APIs. The name 'adjoining' is
used extensively as we cannot make any assumptions on which borders we will get.

(WebCore::RenderTable::recalcBordersInRowDirection):
Added a FIXME found during testing.

  • rendering/RenderTableCell.h:

(WebCore::RenderTableCell::borderAdjoiningTableStart):
(WebCore::RenderTableCell::borderAdjoiningTableEnd):

  • rendering/RenderTableRow.h:

(WebCore::RenderTableRow::borderAdjoiningTableStart):
(WebCore::RenderTableRow::borderAdjoiningTableEnd):

  • rendering/RenderTableSection.h:

(WebCore::RenderTableSection::borderAdjoiningTableStart):
(WebCore::RenderTableSection::borderAdjoiningTableEnd):
Those functions are the same at the moment to match the existing code. They
will be changed to use the proper directionality in a follow up patch.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::firstRowCellAdjoiningTableStart):
(WebCore::RenderTableSection::firstRowCellAdjoiningTableEnd):
Those functions return the cells that is adjoining a table edge. Due to us flipping
the cells at layout to match the section's direction, those functions will need to
account for mixed direction in determining the right cell to consider.

1:13 PM Changeset in webkit [119271] by timothy_horton@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed rebaseline of svg/css/getComputedStyle-basic for mac.

  • platform/mac/svg/css/getComputedStyle-basic-expected.txt:
1:08 PM Changeset in webkit [119270] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

Indenting a paragraph that begins with a link 3 times breaks the paragraph into two paragraphs
https://bugs.webkit.org/show_bug.cgi?id=87428

Patch by Shezan Baig <shezbaig.wk@gmail.com> on 2012-06-01
Reviewed by Ryosuke Niwa.

Source/WebCore:

Fix the way lastNode (our insertion point) is updated whenever
traverseNextSibling moves up to a new parent, so that the relative
depth between the next sibling and the original start node is
maintained in the clone. The divergence in depth broke the paragraph
into two paragraphs because the next sibling was inserted outside the
blockquote that was created for the indentation.

Note that the topNode is not required anymore because it is no longer
used anywhere.

Tests: editing/execCommand/indent-nested-inlines-1.html

editing/execCommand/indent-nested-inlines-2.html

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):

LayoutTests:

Adding two tests for indenting nested inlines.

  • editing/execCommand/indent-nested-inlines-1-expected.txt: Added.
  • editing/execCommand/indent-nested-inlines-1.html: Added.
  • editing/execCommand/indent-nested-inlines-2-expected.txt: Added.
  • editing/execCommand/indent-nested-inlines-2.html: Added.
1:00 PM Changeset in webkit [119269] by Simon Hausmann
  • 5 edits in trunk

[Qt] Use -Werror only in developer builds

Rubber-stamped by Tor Arne Vestbø.

In production builds -Werror with custom toolchains and wierd system
headers, -Werror is of no use and just creates confusion. So use it
only if Qt is configured with -developer-build.

.:

  • Source/api.pri: qt_developer_build determination moved to default_pre.prf

Tools:

  • qmake/mkspecs/features/default_pre.prf: Move qt_developer_build determination here...
  • qmake/mkspecs/features/unix/default_post.prf: ... so that we can use it here to do -Werror

only if qt_developer_build is set.

12:58 PM Changeset in webkit [119268] by fischman@chromium.org
  • 4 edits in trunk/LayoutTests

[chromium] Unskip http/tests/media/video-buffered.html
https://bugs.webkit.org/show_bug.cgi?id=87568

Reviewed by Eric Carlson.

  • http/tests/media/video-buffered-expected.txt:
  • http/tests/media/video-buffered.html:
  • platform/chromium/test_expectations.txt:
12:57 PM Changeset in webkit [119267] by caio.oliveira@openbossa.org
  • 4 edits
    1 copy
    2 adds in trunk

[Qt] Move QObject bridge related tests from tst_qwebframe to tst_qobjectbridge
https://bugs.webkit.org/show_bug.cgi?id=88117

Reviewed by Noam Rosenthal.

.:

  • Source/tests.pri: Add new entry for tst_qobjectbridge.

Source/WebKit/qt:

Five tests (classEnums, classConstructor, transferInvokable, findObject and
findChildren) were removed since they contained commented code since the file was
added back in 2008. The QObject bridge tests were probably inspired in similar
tests for QtScript, so many features not yet implemented were present in QtWebKit
tests but commented.

Other minor changes:

  • Moved MyEnumTestQObject near the only test function that uses it.
  • Removed unnecessary Q_INVOKABLE from setBrushProperty.
  • Removed some bits of dead / commented code.
  • tests/qobjectbridge/qobjectbridge.pro: Added.
  • tests/qobjectbridge/tst_qobjectbridge.cpp: Copied from Source/WebKit/qt/tests/qwebframe/tst_qwebframe.cpp.

Kept only the tests related to QObject bridge implementation.

  • tests/qwebframe/tst_qwebframe.cpp:

(tst_QWebFrame):
(tst_QWebFrame::init):
(tst_QWebFrame::cleanup):

12:52 PM Changeset in webkit [119266] by jochen@chromium.org
  • 2 edits in trunk/Tools

[watchlist] Add myself to loader and v8 bindings changes
https://bugs.webkit.org/show_bug.cgi?id=88112

Reviewed by Adam Barth.

  • Scripts/webkitpy/common/config/watchlist:
12:41 PM Changeset in webkit [119265] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Another Chromium test expectation update per the bug 88124.

  • platform/chromium/test_expectations.txt:
12:39 PM Changeset in webkit [119264] by zhajiang@rim.com
  • 2 edits in trunk/Tools

Adding Jacky Jiang to committers.py
https://bugs.webkit.org/show_bug.cgi?id=88122

Reviewed by Rob Buis.

Adding myself to committers.py as a Committer.

  • Scripts/webkitpy/common/config/committers.py:
12:38 PM Changeset in webkit [119263] by ap@apple.com
  • 3 edits in branches/safari-536-branch/LayoutTests

Update test results after r119025

  • platform/mac/mathml/presentation/mo-stretch-expected.txt: Clearly incorrect results were landed for this test, not sure how that happened (I cannot find these wrong results anywhere in trunk history).
  • platform/mac/tables/mozilla/bugs/bug4527-expected.txt: Looks like this test was not updated with others. The only observable difference is a slightly smaller width of an input field, which matches what one could expect from the change.
12:32 PM Changeset in webkit [119262] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Chromium test expectation update.

  • platform/chromium/test_expectations.txt:
12:32 PM Changeset in webkit [119261] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/11335622> and https://bugs.webkit.org/show_bug.cgi?id=88119
REGRESSION (r99448) Zero-sized plug-ins no longer get an NPP_SetWindow call

Followup to r119260

Rubber-stamped by Anders Carlsson.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::callSetWindow): Set the m_hasCalledSetWindow here...
(WebKit::NetscapePlugin::geometryDidChange): ...instead of here.

12:24 PM Changeset in webkit [119260] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/11335622> and https://bugs.webkit.org/show_bug.cgi?id=88119
REGRESSION (r99448) Zero-sized plug-ins no longer get an NPP_SetWindow call

Reviewed by Oliver Hunt.

Add a flag to NetscapePlugin to track whether or not NPP_SetWindow has ever been called.
Check this flag in geometryDidChange to make sure every plug-in gets the call at least once.

"Everybody gets one. Tell him, Peter."
"Apparently everybody gets one."
"Bingo."

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::NetscapePlugin):
(WebKit::NetscapePlugin::geometryDidChange):

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

(NetscapePlugin):

12:00 PM Changeset in webkit [119259] by commit-queue@webkit.org
  • 7 edits in trunk

getComputedStyle for background shorthand property does not return background-origin and background-clip.
https://bugs.webkit.org/show_bug.cgi?id=86155

Patch by Joe Thomas <joethomas@motorola.com> on 2012-06-01
Reviewed by Tony Chang.

Added background-origin and background-clip CSS Property values to the background shorthand CSSValueList.

Source/WebCore:

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::getBackgroundShorthandValue):

LayoutTests:

  • fast/backgrounds/background-shorthand-with-backgroundSize-style-expected.txt:
  • fast/backgrounds/background-shorthand-with-backgroundSize-style.html:
  • fast/css/getComputedStyle/getComputedStyle-background-shorthand-expected.txt:
  • fast/css/getComputedStyle/getComputedStyle-background-shorthand.html:
11:55 AM Changeset in webkit [119258] by pilgrim@chromium.org
  • 14 edits
    1 delete in trunk/Source

[Chromium] Call clipboard methods directly
https://bugs.webkit.org/show_bug.cgi?id=88038

Reviewed by Adam Barth.

Part of a refactoring series. See tracking bug 82948.

Source/Platform:

  • chromium/public/WebClipboard.h:

(WebKit::WebClipboard::sequenceNumber):

Source/WebCore:

  • WebCore.gypi:
  • platform/Pasteboard.h:

(Pasteboard):

  • platform/chromium/ChromiumDataObject.cpp:

(WebCore::ChromiumDataObject::createFromPasteboard):

  • platform/chromium/ChromiumDataObjectItem.cpp:

(WebCore::ChromiumDataObjectItem::getAsFile):
(WebCore::ChromiumDataObjectItem::internalGetAsString):

  • platform/chromium/ClipboardUtilitiesChromium.cpp:

(WebCore::currentPasteboardBuffer):

  • platform/chromium/ClipboardUtilitiesChromium.h:

(WebCore):

  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::writeSelection):
(WebCore::Pasteboard::writePlainText):
(WebCore::Pasteboard::writeURL):
(WebCore::Pasteboard::writeImage):
(WebCore::Pasteboard::writeClipboard):
(WebCore::Pasteboard::canSmartReplace):
(WebCore::Pasteboard::plainText):
(WebCore::Pasteboard::documentFragment):

  • platform/chromium/PasteboardPrivate.h: Removed.
  • platform/chromium/PlatformSupport.h:

(WebCore):
(PlatformSupport):

Source/WebKit/chromium:

  • src/AssertMatchingEnums.cpp:
  • src/PlatformSupport.cpp:

(WebCore::getCookieJar):

11:33 AM Changeset in webkit [119257] by jberlin@webkit.org
  • 2 edits in trunk/Tools

Fix Windows build.

  • TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp:
11:24 AM Changeset in webkit [119256] by commit-queue@webkit.org
  • 6 edits
    26 adds in trunk

Improve handling of legacy viewport meta tags
https://bugs.webkit.org/show_bug.cgi?id=55874

Patch by Hugo Parente Lima <Hugo Parente Lima> on 2012-06-01
Reviewed by Adam Barth.

Source/WebCore:

We now support MobileOptimized and HandheldFriendly as well.

We set width equal to device-width for HandheldFriendly and
for MobileOptimized, the content value of MobileOptimized is
ignored and the initial-scale set to 1 to fit Android behavior.

The prioritizing is done the same way as on Windows Phone 7:

XHTML Mobile Profile found
HandheldFriendly
MobileOptimized (overrides HandheldFriendly)
Viewport (overrides all above)

Original patch by Kenneth Rohde Christiansen.

Tests: fast/viewport/viewport-legacy-handheldfriendly.html

fast/viewport/viewport-legacy-mobileoptimized-2.html
fast/viewport/viewport-legacy-mobileoptimized-3.html
fast/viewport/viewport-legacy-mobileoptimized.html
fast/viewport/viewport-legacy-ordering-1.html
fast/viewport/viewport-legacy-ordering-2.html
fast/viewport/viewport-legacy-ordering-3.html
fast/viewport/viewport-legacy-ordering-4.html
fast/viewport/viewport-legacy-ordering-5.html
fast/viewport/viewport-legacy-ordering-6.html
fast/viewport/viewport-legacy-ordering-7.html
fast/viewport/viewport-legacy-ordering-8.html
fast/viewport/viewport-legacy-ordering-9.html

  • dom/Document.cpp:

(WebCore::Document::setDocType):
(WebCore::Document::processViewport): Add an origin parameter to
tell what is changing the viewport.

  • dom/Document.h:

(Document):

  • dom/ViewportArguments.h:
  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::process):

LayoutTests:

Add tests and expected results.

  • fast/viewport/viewport-legacy-handheldfriendly-expected.txt: Added.
  • fast/viewport/viewport-legacy-handheldfriendly.html: Added.
  • fast/viewport/viewport-legacy-mobileoptimized-2-expected.txt: Added.
  • fast/viewport/viewport-legacy-mobileoptimized-2.html: Added.
  • fast/viewport/viewport-legacy-mobileoptimized-3-expected.txt: Added.
  • fast/viewport/viewport-legacy-mobileoptimized-3.html: Added.
  • fast/viewport/viewport-legacy-mobileoptimized-expected.txt: Added.
  • fast/viewport/viewport-legacy-mobileoptimized.html: Added.
  • fast/viewport/viewport-legacy-ordering-1-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-1.html: Added.
  • fast/viewport/viewport-legacy-ordering-2-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-2.html: Added.
  • fast/viewport/viewport-legacy-ordering-3-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-3.html: Added.
  • fast/viewport/viewport-legacy-ordering-4-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-4.html: Added.
  • fast/viewport/viewport-legacy-ordering-5-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-5.html: Added.
  • fast/viewport/viewport-legacy-ordering-6-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-6.html: Added.
  • fast/viewport/viewport-legacy-ordering-7-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-7.html: Added.
  • fast/viewport/viewport-legacy-ordering-8-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-8.html: Added.
  • fast/viewport/viewport-legacy-ordering-9-expected.txt: Added.
  • fast/viewport/viewport-legacy-ordering-9.html: Added.
11:10 AM Changeset in webkit [119255] by tony@chromium.org
  • 43 edits in trunk

rename -webkit-flex-order to -webkit-order
https://bugs.webkit.org/show_bug.cgi?id=88104

Reviewed by Ojan Vafai.

Source/WebCore:

This recently changed in the spec:
http://dev.w3.org/csswg/css3-flexbox/#order-property

No new tests, just updated existing results.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore):
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSProperty.cpp:

(WebCore::CSSProperty::isInheritedProperty):

  • css/CSSPropertyNames.in:
  • css/StyleBuilder.cpp:

(WebCore::StyleBuilder::StyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::OrderIterator::OrderIterator):
(WebCore::RenderFlexibleBox::OrderIterator::next):
(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::repositionLogicalHeightDependentFlexItems):
(WebCore::RenderFlexibleBox::layoutFlexItems):
(WebCore::RenderFlexibleBox::computeMainAxisPreferredSizes):
(WebCore::RenderFlexibleBox::computeNextFlexLine):
(WebCore::RenderFlexibleBox::packFlexLines):
(WebCore::RenderFlexibleBox::alignChildren):
(WebCore::RenderFlexibleBox::flipForRightToLeftColumn):
(WebCore::RenderFlexibleBox::flipForWrapReverse):

  • rendering/RenderFlexibleBox.h:
  • rendering/style/RenderStyle.h:
  • rendering/style/StyleFlexibleBoxData.cpp:

(WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
(WebCore::StyleFlexibleBoxData::operator==):

  • rendering/style/StyleFlexibleBoxData.h:

(StyleFlexibleBoxData):

  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

(StyleRareNonInheritedData):

LayoutTests:

Just a find and replace for the new property name.

  • css3/flexbox/css-properties-expected.txt:
  • css3/flexbox/css-properties.html:
  • css3/flexbox/flex-order.html:
  • fast/css/getComputedStyle/computed-style-expected.txt:
  • fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-linux-x86/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-leopard/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-mac-leopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac-snowleopard/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-mac/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-mac/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win-vista/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win-xp/svg/css/getComputedStyle-basic-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/chromium-win/svg/css/getComputedStyle-basic-expected.txt:
  • platform/gtk/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/gtk/svg/css/getComputedStyle-basic-expected.txt:
  • platform/mac/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/mac/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/mac/svg/css/getComputedStyle-basic-expected.txt:
  • platform/qt/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • platform/qt/svg/css/getComputedStyle-basic-expected.txt:
  • platform/win/fast/css/getComputedStyle/computed-style-expected.txt:
  • platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
  • svg/css/getComputedStyle-basic-expected.txt:
10:50 AM Changeset in webkit [119254] by fmalita@chromium.org
  • 2 edits
    1 copy
    1 move
    2 adds in trunk/LayoutTests

[Chromium] Unreviewed. Adding Win and Mac baselines after r119241.

Patch by Florin Malita <fmalita@chromium.org> on 2012-06-01

  • platform/chromium-mac/svg/repaint/text-mask-update-expected.png: Added.
  • platform/chromium-mac/svg/repaint/text-mask-update-expected.txt: Copied from LayoutTests/platform/chromium-linux/svg/repaint/text-mask-update-expected.txt.
  • platform/chromium-win/svg/repaint/text-mask-update-expected.png: Added.
  • platform/chromium-win/svg/repaint/text-mask-update-expected.txt: Renamed from LayoutTests/platform/chromium-linux/svg/repaint/text-mask-update-expected.txt.
  • platform/chromium/test_expectations.txt:
10:31 AM Changeset in webkit [119253] by jberlin@webkit.org
  • 5 edits
    2 adds in trunk/LayoutTests

[Win] 9 plugin tests fail/time out
https://bugs.webkit.org/show_bug.cgi?id=88107

Skip the ones that time out and add/update platform-specific results for the the ones that
fail to get the bots greener.

  • platform/win/Skipped:
  • platform/win/plugins/get-value-netscape-window-expected.txt:
  • platform/win/plugins/netscape-dom-access-and-reload-expected.txt: Added.
  • platform/win/plugins/npn-invalidate-rect-invalidates-window-expected.txt:
  • platform/win/plugins/window-geometry-initialized-before-set-window-expected.txt:
  • platform/win/plugins/geturlnotify-during-document-teardown-expected.txt
10:26 AM Changeset in webkit [119252] by zeno.albisser@nokia.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after r119247.

Do not include TextureMapperGL.h when not building
with GRAPHICS_SURFACE.

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:
10:16 AM Changeset in webkit [119251] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] WebLayerTreeRenderer::setContentsSize called synchronously
https://bugs.webkit.org/show_bug.cgi?id=88091

Patch by Dinu Jacob <dinu.jacob@nokia.com> on 2012-06-01
Reviewed by Noam Rosenthal.

Do not call WebLayerTreeRenderer::setContentsSize synchronously
from LayerTreeHostProxy.

  • UIProcess/LayerTreeHostProxy.cpp:

(WebKit::LayerTreeHostProxy::setContentsSize):

10:09 AM Changeset in webkit [119250] by jberlin@webkit.org
  • 2 edits in trunk/Tools

Windows WK2 MouseMoveAfterCrash API test failing
https://bugs.webkit.org/show_bug.cgi?id=69982

Disable the test on Windows to get the bots greener.

  • TestWebKitAPI/Tests/WebKit2/MouseMoveAfterCrash.cpp:

(TestWebKitAPI::TEST):

10:05 AM Changeset in webkit [119249] by mario@webkit.org
  • 3 edits
    4 adds in trunk/Source/WebCore

[GTK] Add a new and reusable Geoclue-based geolocation provider in WebCore
https://bugs.webkit.org/show_bug.cgi?id=87800

Reviewed by Carlos Garcia Campos.

Added new and reusable Geoclue-based geolocation provider to WebCore.

  • GNUmakefile.am:
  • GNUmakefile.list.am:
  • platform/geoclue/GeolocationProviderGeoclue.cpp: Added.

(getPositionCallback):
(positionChangedCallback):
(GeolocationProviderGeoclue::GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::~GeolocationProviderGeoclue):
(GeolocationProviderGeoclue::startUpdating):
(GeolocationProviderGeoclue::stopUpdating):
(GeolocationProviderGeoclue::setEnableHighAccuracy):
(GeolocationProviderGeoclue::setGeoclueClient):
(GeolocationProviderGeoclue::setGeocluePosition):
(GeolocationProviderGeoclue::updateClientRequirements):
(GeolocationProviderGeoclue::positionChanged):
(GeolocationProviderGeoclue::errorOccured):

  • platform/geoclue/GeolocationProviderGeoclue.h: Added.

(WebCore):
(GeolocationProviderGeoclue):

  • platform/geoclue/GeolocationProviderGeoclueClient.h: Added.

(WebCore):
(GeolocationProviderGeoclueClient):

10:04 AM Changeset in webkit [119248] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Qt] Remove deprecated Q_GLOBAL_STATIC_WITH_INITIALIZER
https://bugs.webkit.org/show_bug.cgi?id=88100

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-01
Reviewed by Tor Arne Vestbø.

It will be deprecated on Qt5.

  • platform/text/qt/TextBreakIteratorInternalICUQt.cpp:

(WebCore):

10:02 AM Changeset in webkit [119247] by zeno.albisser@nokia.com
  • 7 edits in trunk/Source/WebCore

Make TextureMapper work with GraphicsSurface.
https://bugs.webkit.org/show_bug.cgi?id=87738

Add TextureMapperSurfaceBackingStore, a new backing store
that allows to import textures from a GraphicsSurface.
On Mac the GraphicsSurface is backed by an IOSurface
which must be used with a GL_TEXTURE_RECTANGLE_ARB texture.
Therefore it is also necessary to add new shader programs
for directly painting these textures on screen.

Reviewed by Noam Rosenthal.

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

Add a new TextureMapperBackingStore implementation that can directly
reuse textures as they are being passed from the GraphicsSurface.
(WebCore::TextureMapperSurfaceBackingStore::setGraphicsSurface):
(WebCore::TextureMapperSurfaceBackingStore::texture):
(WebCore::TextureMapperSurfaceBackingStore::paintToTextureMapper):

  • platform/graphics/texmap/TextureMapperBackingStore.h:

(GraphicsSurfaceData):
(WebCore::GraphicsSurfaceData::setSurface):
(WebCore::GraphicsSurfaceData::GraphicsSurfaceData):
(TextureMapperSurfaceBackingStore):
(WebCore::TextureMapperSurfaceBackingStore::create):
(WebCore::TextureMapperSurfaceBackingStore::~TextureMapperSurfaceBackingStore):
(WebCore::TextureMapperSurfaceBackingStore::TextureMapperSurfaceBackingStore):

  • platform/graphics/texmap/TextureMapperGL.cpp:

Add a drawing function for textures of type GL_TEXTURE_RECTANGLE_ARB.
(WebCore::TextureMapperGL::drawTextureRectangleARB):

  • platform/graphics/texmap/TextureMapperShaderManager.cpp:

(WebCore::TextureMapperShaderManager::getShaderProgram):
(WebCore::TextureMapperShaderProgramSimple::create):
(WebCore::TextureMapperShaderProgramSimple::initialize):
(WebCore::TextureMapperShaderProgramSolidColor::create):
(WebCore::TextureMapperShaderProgramSolidColor::initialize):
(WebCore::TextureMapperShaderProgramRectSimple::create):
(WebCore::TextureMapperShaderProgramRectSimple::fragmentShaderSource):
(WebCore::TextureMapperShaderProgramOpacityAndMask::create):
(WebCore::TextureMapperShaderProgramOpacityAndMask::initialize):
(WebCore::TextureMapperShaderProgramRectOpacityAndMask::create):
(WebCore::TextureMapperShaderProgramRectOpacityAndMask::fragmentShaderSource):

  • platform/graphics/texmap/TextureMapperShaderManager.h:

Add new shader programs that can be used with GL_TEXTURE_RECTANGLE_ARB textures.
This is mainly necessary, because this type of texture uses non-normalized coordinates.
Further move the calls to initializeProgram() from the constructor into a separate
initialize() function, as initializeProgram() calls vertexShaderSource() (and friends)
and we should not call virtual functions in the constructor.
(WebCore::TextureMapperShaderProgram::initialize):
(TextureMapperShaderProgramSimple):
(WebCore::TextureMapperShaderProgramSimple::TextureMapperShaderProgramSimple):
(TextureMapperShaderProgramRectSimple):
(WebCore::TextureMapperShaderProgramRectSimple::TextureMapperShaderProgramRectSimple):
(TextureMapperShaderProgramOpacityAndMask):
(WebCore::TextureMapperShaderProgramOpacityAndMask::TextureMapperShaderProgramOpacityAndMask):
(TextureMapperShaderProgramRectOpacityAndMask):
(WebCore::TextureMapperShaderProgramRectOpacityAndMask::TextureMapperShaderProgramRectOpacityAndMask):
(TextureMapperShaderProgramSolidColor):
(WebCore::TextureMapperShaderProgramSolidColor::TextureMapperShaderProgramSolidColor):

9:57 AM Changeset in webkit [119246] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Skip some plugin tests that crash/assert on Windows.

  • platform/win/Skipped:
9:50 AM Changeset in webkit [119245] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] Set QWebKitTest::isScalable default as false
https://bugs.webkit.org/show_bug.cgi?id=88095

Patch by Dinu Jacob <dinu.jacob@nokia.com> on 2012-06-01
Reviewed by Tor Arne Vestbø.

Set QWebKitTest::isScalable default as false

  • UIProcess/API/qt/qwebkittest.cpp:

(QWebKitTest::isScalable):

9:41 AM Changeset in webkit [119244] by pdr@google.com
  • 2 edits
    2 copies in branches/chromium/1084

Merge 117365 - Crash if SVG gradient stop has display: none set

9:35 AM Changeset in webkit [119243] by commit-queue@webkit.org
  • 19 edits in trunk

[EFL] EFL port does not enable WEB_INTENTS_TAG flag
https://bugs.webkit.org/show_bug.cgi?id=86866

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-01
Reviewed by Adam Barth.

.:

Enable WEB_INTENTS_TAG flag by default on EFL port.

  • Source/cmake/OptionsEfl.cmake:
  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/WebCore:

Fix compilation error when WEB_INTENTS_TAG flag is enabled.
HTMLElement::insertedInto() takes a ContainerNode* in argument, not a
Node*.

Test: webintents/intent-tag.html

  • CMakeLists.txt:
  • html/HTMLIntentElement.cpp:

(WebCore::HTMLIntentElement::insertedInto):

  • html/HTMLIntentElement.h:

(HTMLIntentElement):

Source/WebKit/efl:

Implement registerIntentService() in EFL's FrameLoaderClient.
Emit a "intent,service,register" signal on the frame when a new Web
Intent service registers.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore):
(WebCore::FrameLoaderClientEfl::registerIntentService):

  • WebCoreSupport/FrameLoaderClientEfl.h:

(FrameLoaderClientEfl):

  • ewk/ewk_frame.cpp:

(ewk_frame_intent_service_register):

  • ewk/ewk_frame.h:
  • ewk/ewk_frame_private.h:

Tools:

Catch new "intent,service,register" signal on the frame and print out
information about the Web Intent service in EFL's DumpRenderTree.

  • DumpRenderTree/efl/DumpRenderTreeChrome.cpp:

(DumpRenderTreeChrome::createView):
(DumpRenderTreeChrome::onFrameCreated):
(DumpRenderTreeChrome::onFrameIntentServiceRegistration):

  • DumpRenderTree/efl/DumpRenderTreeChrome.h:

(DumpRenderTreeChrome):

LayoutTests:

Unskip webintents/intent-tag.html now that the WEB_INTENTS_TAG flag is
enabled by default on EFL port.

  • platform/efl/test_expectations.txt:
9:19 AM Changeset in webkit [119242] by commit-queue@webkit.org
  • 7 edits in trunk

[cairo] Pixel artifacts can be seen on reflections
https://bugs.webkit.org/show_bug.cgi?id=85483

Source/WebCore:

Antialiased clipping in the simple rectangular clip method
leads to edge artifacts when transformations are applied to the layer.
Explicitly disabling antialiased clipping for this function solves this issue.
Comparing Cairo GraphicsContext to Qt and Skia GC, it seems that these
backends do not expect the platform context to clip antialiased in this
case either.

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-06-01
Reviewed by Martin Robinson.

No new tests, covered by fast/css/transformed-mask.html.

  • platform/graphics/cairo/GraphicsContextCairo.cpp:

(WebCore::GraphicsContext::clip):

LayoutTests:

Patch by Dominik Röttsches <dominik.rottsches@intel.com> on 2012-06-01
Reviewed by Martin Robinson.

Rebaselining the relevant test case for GTK and EFL.

  • platform/efl/fast/css/transformed-mask-expected.png:
  • platform/efl/fast/css/transformed-mask-expected.txt:
  • platform/efl/test_expectations.txt:
  • platform/gtk/fast/css/transformed-mask-expected.png:
9:03 AM Changeset in webkit [119241] by fmalita@chromium.org
  • 5 edits
    3 adds in trunk

http://shinydemos.com/clock/ doesn't seem to work
https://bugs.webkit.org/show_bug.cgi?id=79682

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Test: svg/repaint/text-mask-update.svg

Currently, parent resources are not invalidated when SVGInlineText nodes
are added or removed. Adjusting SVGResourcesCache::clientWasAddedToTree()
and SVGResourcesCache::clientWillBeRemovedFromTree() to cover this case.

  • rendering/svg/SVGResourcesCache.cpp:

(WebCore::SVGResourcesCache::clientWasAddedToTree):
(WebCore::SVGResourcesCache::clientWillBeRemovedFromTree):

LayoutTests:

  • platform/chromium-linux/svg/repaint/text-mask-update-expected.png: Added.
  • platform/chromium-linux/svg/repaint/text-mask-update-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
  • platform/mac/test_expectations.txt:
  • svg/repaint/text-mask-update.svg: Added.
9:03 AM Changeset in webkit [119240] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

The ChangeLog parser cannot handle reviewers with initials in their name
https://bugs.webkit.org/show_bug.cgi?id=87864

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-06-01
Reviewed by Ryosuke Niwa.

Add support in the ChangeLog parser for reviewer names that have
initials in them.

  • Scripts/webkitpy/common/checkout/changelog.py:

(ChangeLogEntry): Add a new group of regular expressions that need a backreference
in the replacement string. This allows for matching the word characters before a
period, without totally throwing them away.
(ChangeLogEntry._parse_reviewer_text): Use the new regular expression.

  • Scripts/webkitpy/common/checkout/changelog_unittest.py:

(test_fuzzy_reviewer_match_initial): Add a test for a reviewer name that has an initial.

9:00 AM Changeset in webkit [119239] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Add end editing handling into AutofillManager
https://bugs.webkit.org/show_bug.cgi?id=88071

Patch by Jonathan Dong <Jonathan Dong> on 2012-06-01
Reviewed by Rob Buis.

RIM PR: 160857
Implemented EditorClientBlackBerry::textFieldDidEndEditing
to notify AutofillManager to send the dismissing autofill
dialog notification to webpage client.

No new tests since there is no behavior changes.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::notifyDismissAutofillDialog):
(WebKit):

  • Api/WebPageClient.h:
  • Api/WebPage_p.h:

(WebPagePrivate):

  • WebCoreSupport/AutofillManager.cpp:

(WebCore::AutofillManager::textFieldDidEndEditing):
(WebCore):

  • WebCoreSupport/AutofillManager.h:

(AutofillManager):

  • WebCoreSupport/EditorClientBlackBerry.cpp:

(WebCore::EditorClientBlackBerry::textFieldDidEndEditing):

8:56 AM Changeset in webkit [119238] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/efl

[EFL] ewk_intent_data_get() is not needed and can be removed
https://bugs.webkit.org/show_bug.cgi?id=88072

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-01
Reviewed by Adam Barth.

Remove ewk_intent_data_get() method from Ewk_Intent. Intent data is
serialized and does not need to be publicly exposed. The browser only
needs action and type to match with services.

  • ewk/ewk_intent.cpp:

(_Ewk_Intent):
(ewk_intent_action_get):
(ewk_intent_type_get):
(ewk_intent_service_get):
(ewk_intent_free):

  • ewk/ewk_intent.h:
8:49 AM Changeset in webkit [119237] by commit-queue@webkit.org
  • 18 edits in trunk

[EFL] EFL's LayoutTestController needs to implement deliverWebIntent
https://bugs.webkit.org/show_bug.cgi?id=86865

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-01
Reviewed by Adam Barth.

Source/WebKit:

Add "${WEBCORE_DIR}/dom/default" to include directories in
CMakeLists.txt.

  • CMakeLists.txt:

Source/WebKit/efl:

Add method on Ewk_Frame to deliver an intent.
Add helper function to DumpRenderTreeSupportEfl to deliver a Web
Intent.

  • WebCoreSupport/DumpRenderTreeSupportEfl.cpp:

(DumpRenderTreeSupportEfl::deliverWebIntent):

  • WebCoreSupport/DumpRenderTreeSupportEfl.h:
  • ewk/ewk_frame.cpp:

(ewk_frame_intent_deliver):

  • ewk/ewk_frame.h:

Tools:

Add deliverWebIntent method to LayoutTestController and provide
implementation for EFL port.

  • DumpRenderTree/LayoutTestController.cpp:

(deliverWebIntentCallback):
(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:

(LayoutTestController):

  • DumpRenderTree/blackberry/LayoutTestControllerBlackBerry.cpp:

(LayoutTestController::deliverWebIntent):

  • DumpRenderTree/efl/LayoutTestControllerEfl.cpp:

(LayoutTestController::deliverWebIntent):

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::deliverWebIntent):

  • DumpRenderTree/mac/LayoutTestControllerMac.mm:

(LayoutTestController::deliverWebIntent):

  • DumpRenderTree/win/LayoutTestControllerWin.cpp:

(LayoutTestController::deliverWebIntent):

  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:

(LayoutTestController::deliverWebIntent):

LayoutTests:

Unskip webintents/web-intents-delivery.html now that Web intent
delivery is implemented on EFL port.

  • platform/efl/test_expectations.txt:
8:47 AM Changeset in webkit [119236] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Bridge Apps - Apps do not redraw correctly after orientation change
https://bugs.webkit.org/show_bug.cgi?id=88033

Reviewed by Rob Buis.
Patch by Jacky Jiang <zhajiang@rim.com>

PR: 142961
When bridge apps were in carousel mode, the backing store was inactive
as its memory had been released. When we rotated the device, we would
call WebPagPrivate:setViewportSize and resume screen and backing store
to render and blit visible contents. As backing store was inactive and
the window usage was GLES2Usage, we were neither doing backing store
rendering nor direct rendering. Therefore, we drew layers directly
based on the invalid texture contents when blitting contents if
accelerated compositing was enabled.
This patch forces compositing mode to let the accelerated compositing
layer take care of the rendering which can update texture contents
before drawing when backing store is inactive and is openGL compositing.

Reviewed internally by George Staikos and Arvid Nilsson.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::resumeScreenAndBackingStoreUpdates):

8:45 AM Changeset in webkit [119235] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Don't set scroll position twice in HistoryController::restoreScrollPositionAndViewState
https://bugs.webkit.org/show_bug.cgi?id=88068

Patch by John Mellor <johnme@chromium.org> on 2012-06-01
Reviewed by Adam Barth.

In the case where pageScaleFactor changes, we were calling
setScrollPosition with an incorrect scroll position (i.e. a scroll
position scaled by the pageScaleFactor we hadn't yet applied), then
fixing it by setting the pageScaleFactor and scroll position together,
overwriting the old scroll position. It's cleaner to just set the
pageScaleFactor and scroll position together.

No new tests as this isn't expected to change the ultimate behavior, just clean up how it happens.

  • loader/HistoryController.cpp:

(WebCore::HistoryController::restoreScrollPositionAndViewState):

8:43 AM Changeset in webkit [119234] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt] Remove QtViewportInteractionEngine::pageItemSizeChanged.
https://bugs.webkit.org/show_bug.cgi?id=88082

Patch by Allan Sandfeld Jensen <allan.jensen@nokia.com> on 2012-06-01
Reviewed by Kenneth Rohde Christiansen.

The function was causing flickering, and after testing it was verified
that it was no longer needed either.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):

  • UIProcess/qt/QtViewportInteractionEngine.h:

(QtViewportInteractionEngine):

8:38 AM Changeset in webkit [119233] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r119228.
http://trac.webkit.org/changeset/119228
https://bugs.webkit.org/show_bug.cgi?id=88098

Caused the EFL debug bot to crash. (Requested by rakuco on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-01

Source/WebKit/efl:

  • ewk/ewk_main.cpp:

(ewk_init):

LayoutTests:

  • platform/efl/test_expectations.txt:
8:34 AM Changeset in webkit [119232] by commit-queue@webkit.org
  • 7 edits in trunk/Source

[Qt] Remove deprecated to/fromAscii()
https://bugs.webkit.org/show_bug.cgi?id=88086

Patch by Thiago Marcos P. Santos <thiago.santos@intel.com> on 2012-06-01
Reviewed by Simon Hausmann.

Replacing to/fromAscii with to/fromLatin1 since it
is deprecated on Qt5.

Source/WebCore:

  • bridge/qt/qt_class.cpp:

(JSC::Bindings::QtClass::fallbackObject):

  • platform/network/qt/ResourceRequestQt.cpp:

(WebCore::ResourceRequest::toNetworkRequest):

Source/WebKit/qt:

  • WebCoreSupport/InspectorClientQt.cpp:

(WebCore):

  • WebCoreSupport/InspectorServerQt.cpp:

(WebCore::InspectorServerRequestHandlerQt::tcpReadyRead):

  • tests/qdeclarativewebview/tst_qdeclarativewebview.cpp:

(tst_QDeclarativeWebView::settings):

8:21 AM Changeset in webkit [119231] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[Qt][WK2] Contents not rendered in MiniBrowser for some pages
https://bugs.webkit.org/show_bug.cgi?id=87922

Patch by Dinu Jacob <dinu.jacob@nokia.com> on 2012-06-01
Reviewed by Kenneth Rohde Christiansen.

Set drawing area visible contents rect if new visible contents rect is different from
the previous one.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::informVisibleContentChange):

  • UIProcess/qt/QtViewportInteractionEngine.h:

(QtViewportInteractionEngine):

7:36 AM Changeset in webkit [119230] by Csaba Osztrogonác
  • 2 edits
    2 adds in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt-5.0-wk2/Skipped:
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-and-transform-expected.txt: Added.
  • platform/qt-5.0-wk2/compositing/layer-creation/fixed-position-under-transform-expected.txt: Added.
7:27 AM Changeset in webkit [119229] by apavlov@chromium.org
  • 4 edits in trunk/LayoutTests

Web Inspector: Prepare styles-new-API.html results format for a more complex CSS model
https://bugs.webkit.org/show_bug.cgi?id=88090

Reviewed by Antti Koivisto.

  • inspector/styles/resources/styles-new-API.css:
  • inspector/styles/styles-new-API-expected.txt:
  • inspector/styles/styles-new-API.html:
7:23 AM Changeset in webkit [119228] by commit-queue@webkit.org
  • 4 edits in trunk

[EFL] [DRT] editing/execCommand/paste-and-match-style-event.html crashes
https://bugs.webkit.org/show_bug.cgi?id=86961

Patch by Christophe Dumez <Christophe Dumez> on 2012-06-01
Reviewed by Csaba Osztrogonác.

Source/WebKit/efl:

Call ecore_x_init() in ewk_init() to initialize the ecore_x library.
This avoids crashing upong calling WebCore::systemBeep() which uses
ecore_x_bell() internally.

  • ewk/ewk_main.cpp:

(ewk_init):

LayoutTests:

Unskip editing/execCommand/paste-and-match-style-event.html now that
it is no longer crashing thanks to ecore_x library init.

  • platform/efl/test_expectations.txt:
7:14 AM Changeset in webkit [119227] by mitz@apple.com
  • 4 edits
    2 adds in trunk

Layout not updated after setting -webkit-line-clamp to none
https://bugs.webkit.org/show_bug.cgi?id=88049

Reviewed by Abhishek Arya.

Source/WebCore:

Test: fast/flexbox/line-clamp-removed-dynamically.html

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::styleWillChange): Added. Calls clearLineClamp if
line-clamp will change to none.
(WebCore::RenderDeprecatedFlexibleBox::clearLineClamp): Added. Marks possibly-clamped
children for layout and clears truncation from blocks.

  • rendering/RenderDeprecatedFlexibleBox.h:

LayoutTests:

  • fast/flexbox/line-clamp-removed-dynamically-expected.html: Added.
  • fast/flexbox/line-clamp-removed-dynamically.html: Added.
6:53 AM Changeset in webkit [119226] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r119213.
http://trac.webkit.org/changeset/119213
https://bugs.webkit.org/show_bug.cgi?id=88084

This patch broke two tests on all platform except Chromium.
The authors are unavailable. (Requested by zherczeg on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-01

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::collectMatchingRulesForList):

6:51 AM Changeset in webkit [119225] by kkristof@inf.u-szeged.hu
  • 5 edits in trunk/Source/WebCore

Unreviewed, rolling out r119219.
http://trac.webkit.org/changeset/119219
https://bugs.webkit.org/show_bug.cgi?id=88088

This patch broke two tests on GTK/Qt. The authors are
unavailable. (Requested by kkristof on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-06-01

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::closeAndRemoveChild):
(WebCore::FrameLoader::detachFromParent):

  • page/Frame.cpp:

(WebCore::Frame::willDetachPage):

  • page/Frame.h:

(Frame):
(WebCore::Frame::detachFromPage):
(WebCore):

  • page/Page.cpp:

(WebCore::Page::~Page):

6:47 AM Changeset in webkit [119224] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Add Closure compiler annotations to WorkerConsole
https://bugs.webkit.org/show_bug.cgi?id=88073

Patch by Alexei Filippov <alexeif@chromium.org> on 2012-06-01
Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshotWorker.js:

(WebInspector.WorkerConsole.prototype.log):
(WebInspector.WorkerConsole.prototype.error):
(WebInspector.WorkerConsole.prototype.info):

5:57 AM Changeset in webkit [119223] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit/efl

[EFL] New signals in ewk_view to enable global history delegate functionality
https://bugs.webkit.org/show_bug.cgi?id=86343

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2012-06-01
Reviewed by Kenneth Rohde Christiansen.

Global history delegate is an interface for WebKit clients to manage their own global history store.
The new ewk_view signals do the following:
1) report that a navigation happened within the view and give the navigation details.
2) report that view performed a client redirect and give source and destination uris.
3) report that view performed a server redirect and give source and destination uris.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::updateGlobalHistoryRedirectLinks): implementation added.
(WebCore::FrameLoaderClientEfl::updateGlobalHistory): implementation added.

  • ewk/ewk_view.h: Added new signals and data types.
5:52 AM Changeset in webkit [119222] by vestbo@webkit.org
  • 2 edits in trunk/Source/WTF

[Qt] Save one copy when going from 8-bit WTF::String to QString

Asking for characters() of an 8-bit string will make a 16-bit copy internally
in WTF::String. Since we're going to copy the data to QStringData anyways, which
is 16-bit, we can do the conversion ourselves and save one copy.

Reviewed by Simon Hausmann.

5:50 AM Changeset in webkit [119221] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, skip new failing and crashing tests.

  • platform/qt-5.0-wk2/Skipped:
  • platform/qt/Skipped:
5:32 AM Changeset in webkit [119220] by kenneth@webkit.org
  • 6 edits in trunk/Source/WebKit2

[Qt] Move suspension to QtViewportInteractionEngine
https://bugs.webkit.org/show_bug.cgi?id=88078

Reviewed by Simon Hausmann.

Next step is to take care of visibility changes.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::onComponentComplete):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate):

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::ViewportUpdateDeferrer::ViewportUpdateDeferrer):
(WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
(WebKit::QtViewportInteractionEngine::suspendPageContent):
(WebKit):
(WebKit::QtViewportInteractionEngine::resumePageContent):

  • UIProcess/qt/QtViewportInteractionEngine.h:

(QtViewportInteractionEngine):

5:30 AM Changeset in webkit [119219] by morrita@google.com
  • 5 edits in trunk/Source/WebCore

Frame::willDetachPage() shouldn't be called more than once.
https://bugs.webkit.org/show_bug.cgi?id=88056

Reviewed by Ryosuke Niwa.

This change moved willDetachPage() to private and calls it from
detachFromParent(). Also, it checks m_page and call
willDetachPage() only once, if m_page is available.

No new tests. Covered by existing suites.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::closeAndRemoveChild):
(WebCore::FrameLoader::detachFromParent):

  • page/Frame.cpp:

(WebCore::Frame::detachFromPage):
(WebCore):
(WebCore::Frame::willDetachPage):

  • page/Frame.h:

(Frame):

  • page/Page.cpp:

(WebCore::Page::~Page):

5:26 AM Changeset in webkit [119218] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][W2] Qml Error in ViewportInfoItem.qml in MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=87999

Patch by Dinu Jacob <dinu.jacob@nokia.com> on 2012-06-01
Reviewed by Kenneth Rohde Christiansen.

Return default viewport attributes rather than invalid QVariant.

  • UIProcess/API/qt/qwebkittest.cpp:

(QWebKitTest::contentsScale):
(QWebKitTest::devicePixelRatio):
(QWebKitTest::initialScale):
(QWebKitTest::minimumScale):
(QWebKitTest::maximumScale):
(QWebKitTest::isScalable):
(QWebKitTest::layoutSize):

5:25 AM Changeset in webkit [119217] by vestbo@webkit.org
  • 4 edits in trunk/Source/WTF

[Qt] Make conversion from QString to WTF::String (and back again) ~free

https://bugs.webkit.org/show_bug.cgi?id=87847

Instead of copying the QString data when converting to a WTF::String we
make the WTF::String adopt the QString data by introducing a new buffer
ownership type, and pointing the internal WTF::StringImpl 16-bit data
member to the string data managed by QStringData.

We make sure to reference the QStringData when adopting, so that the
data will stay alive, and then dereference it when the WTF::StringImpl
is deleted, which will free the QStringData (either straight away, if
we're the only one holding a reference still, or later, when the ref
count goes to 0).

In the case of going back from a WTF::String to a QString we can cheat
a bit (avoid a copy), if we know that the WTF::String was adopted from
a QString, since it's then just a matter of having the QString adopt
the existing QStringData (just like a regular QString copy).

If the WTF::String buffer is not owned by QStringData, eg a regular
8-bit or 16-bit string/substring, we have to fall back to copying,
as before (though there are potential optimization tricks we can
apply here later on).

Reviewed by Gavin Barraclough.

  • wtf/qt/StringQt.cpp:
  • wtf/text/StringImpl.cpp:
  • wtf/text/StringImpl.h:
5:21 AM Changeset in webkit [119216] by pierre.rossi@gmail.com
  • 4 edits in trunk

[Qt] Support drawing a pattern with a translation.
https://bugs.webkit.org/show_bug.cgi?id=87025

Source/WebCore:

Drawing an SVG pattern that has its x or y attribute set
works by setting a transform on the Pattern.
We would ignore this by only taking into account the texture and
target rect.

Reviewed by Kenneth Rohde Christiansen.

test: svg/W3C-SVG-1.1-SE/pservers-pattern-04-f.svg

  • platform/graphics/qt/GraphicsContextQt.cpp:

(WebCore::drawRepeatPattern): refactored to take into account the translation set on the brush.
(WebCore::GraphicsContext::fillRect):

LayoutTests:

Reviewed by Kenneth Rohde Christiansen.

  • platform/qt-5.0/svg/W3C-SVG-1.1-SE/pservers-pattern-04-f-expected.png: fix the expected pixel result
4:56 AM Changeset in webkit [119215] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Gardening failure case on EFL build bot
https://bugs.webkit.org/show_bug.cgi?id=88067

Unreviewed EFL gardening after r119196.

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-01

  • platform/efl/test_expectations.txt:
4:55 AM Changeset in webkit [119214] by peter@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

  • DEPS:
4:53 AM Changeset in webkit [119213] by yosin@chromium.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r109729) [Form] Rendering of select/optgroup/option combination is too slow.
https://bugs.webkit.org/show_bug.cgi?id=88059

Reviewed by Kent Tamura.

This patch changes to share RenderStyle object among the "option"
elements to improve rendering performance and reducing memory usage
of RenderStyle.

No new tests. This patch doesn't change behavior but rendering performance.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::canShareStyleWithElement): Check attribute value
mismatching for "option" element.

4:26 AM Changeset in webkit [119212] by apavlov@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: [REGRESSION] Bad layout of "Override device metrics" controls in the Settings dialog
https://bugs.webkit.org/show_bug.cgi?id=88074

Reviewed by Yury Semikhatsky.

The "Override device metrics" controls are placed in a table, which gets too narrow. Give it a
"white-space: nowrap" to avoid wrapping individual cells.

  • inspector/front-end/SettingsScreen.js:

(WebInspector.SettingsScreen.prototype._createDeviceMetricsElement):

  • inspector/front-end/elementsPanel.css:
  • inspector/front-end/inspector.css:

(.nowrap):

4:18 AM Changeset in webkit [119211] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Make Qt Creator aware of files in webkitpy/perl for easy editing

Reviewed by Simon Hausmann.

4:12 AM Changeset in webkit [119210] by kenneth@webkit.org
  • 6 edits in trunk/Source/WebKit2

[Qt] Clean up our viewport handling mess
https://bugs.webkit.org/show_bug.cgi?id=87977

Reviewed by Simon Hausmann.

Consolidated functionality from QQuickWebViewPrivate* into
ViewportInteractionEngine that belongs there, in preparation for
renaming ViewportInteractionEngine in the future.

Remove unneeded methods and move others to private.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewFlickablePrivate::QQuickWebViewFlickablePrivate):
(QQuickWebViewFlickablePrivate::onComponentComplete):
(QQuickWebViewFlickablePrivate::didChangeViewportProperties):
(QQuickWebViewFlickablePrivate::updateViewportSize):
(QQuickWebViewFlickablePrivate::_q_resume):
(QQuickWebViewFlickablePrivate::pageDidRequestScroll):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:

(QQuickWebViewPrivate):
(QQuickWebViewFlickablePrivate):

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::ViewportUpdateDeferrer::~ViewportUpdateDeferrer):
(WebKit::QtViewportInteractionEngine::QtViewportInteractionEngine):
(WebKit::QtViewportInteractionEngine::viewportAttributesChanged):
(WebKit::QtViewportInteractionEngine::pageContentsSizeChanged):
(WebKit::QtViewportInteractionEngine::pageItemPositionChanged):
(WebKit::QtViewportInteractionEngine::pageContentPositionRequested):
(WebKit::QtViewportInteractionEngine::visibleContentsRect):
(WebKit):
(WebKit::QtViewportInteractionEngine::informVisibleContentChange):
(WebKit::QtViewportInteractionEngine::viewportItemSizeChanged):

  • UIProcess/qt/QtViewportInteractionEngine.h:

(WebKit):
(QtViewportInteractionEngine):

3:50 AM Changeset in webkit [119209] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[EFL] Move input element's spinner style tests to test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=88054

Unreviewed EFL gardening.

Patch by Alexander Shalamov <alexander.shalamov@intel.com> on 2012-06-01

  • platform/efl/test_expectations.txt:
3:45 AM Changeset in webkit [119208] by commit-queue@webkit.org
  • 8 edits
    2 adds
    1 delete in trunk/Source

[EFL] Implement PlatformStrategies
https://bugs.webkit.org/show_bug.cgi?id=86946

Source/WebCore:

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-01
Reviewed by Carlos Garcia Campos.

  • PlatformEfl.cmake: Add PlatformStrategies.cpp file to the build system.

Also, remove PluginDataEfl.cpp because the same functionality is now
implemented in PlatformStrategiesEfl.cpp.

Source/WebKit:

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-01
Reviewed by Carlos Garcia Campos.

  • PlatformEfl.cmake: Add PlatformStrategiesEfl file to the build

system.

Source/WebKit/efl:

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-01
Reviewed by Carlos Garcia Campos.

Enable PLATFORM_STRATEGIES for EFL platform.

  • WebCoreSupport/PlatformStrategiesEfl.cpp: Added, code was moved

from platform/PluginDataEfl.
(PlatformStrategiesEfl::initialize): Initialize platform strategies.
(PlatformStrategiesEfl::PlatformStrategiesEfl):
(PlatformStrategiesEfl::createCookiesStrategy): Return this.
(PlatformStrategiesEfl::createPluginStrategy): Ditto.
(PlatformStrategiesEfl::createVisitedLinkStrategy): Ditto.
(PlatformStrategiesEfl::createPasteboardStrategy): Return 0, since
PasteboardStrategy is only used by mac code for now.
(PlatformStrategiesEfl::notifyCookiesChanged):
(PlatformStrategiesEfl::refreshPlugins): Refresh the plugin
database. Code executes only when NETSCAPE_PLUGIN_API is ON.
(PlatformStrategiesEfl::getPluginInfo): Initialize plugins and
populate the given vector with plugins information. Code executes
only when NETSCAPE_PLUGIN_API is ON.
(PlatformStrategiesEfl::isLinkVisited): Return whether the given
hash is a visited link of the page group.
(PlatformStrategiesEfl::addVisitedLink): Add the given hash to the
page group visited links.

  • WebCoreSupport/PlatformStrategiesEfl.h: Added.

(PlatformStrategiesEfl):

  • ewk/ewk_main.cpp: Initialize PlatformStrategiesEfl.

(_ewk_init_body):

Source/WTF:

Patch by Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com> on 2012-06-01
Reviewed by Carlos Garcia Campos.

  • wtf/Platform.h: Enable PLATFORM_STRATEGIES for EFL platform.
3:39 AM Changeset in webkit [119207] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

ASSERT(m_fontSelector->document()) is bogus and should be removed
https://bugs.webkit.org/show_bug.cgi?id=88053

Reviewed by Abhishek Arya.

This ASSERT was introduced in http://trac.webkit.org/changeset/97402
together with a branch that handled the case of the ASSERT firing.
This ASSERT fires when running tests on Android (which runs with
ASSERTs enabled). The ASSERT appears to be bogus, so this patch removes
it.

  • css/CSSSegmentedFontFace.cpp:

(WebCore::CSSSegmentedFontFace::getFontData):

3:37 AM Changeset in webkit [119206] by Csaba Osztrogonác
  • 15 edits in trunk/LayoutTests

[Qt] Unreviewed gardening, update expected files.

  • platform/qt-5.0/fast/forms/HTMLOptionElement_label06-expected.png:
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label06-expected.txt:
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label07-expected.png:
  • platform/qt-5.0/fast/forms/HTMLOptionElement_label07-expected.txt:
  • platform/qt-5.0/fast/forms/form-element-geometry-expected.png:
  • platform/qt-5.0/fast/forms/form-element-geometry-expected.txt:
  • platform/qt-5.0/fast/forms/menulist-separator-painting-expected.png:
  • platform/qt-5.0/fast/forms/menulist-separator-painting-expected.txt:
  • platform/qt-5.0/fast/forms/select-baseline-expected.png:
  • platform/qt-5.0/fast/forms/select-baseline-expected.txt:
  • platform/qt-5.0/fast/forms/selectlist-minsize-expected.png:
  • platform/qt-5.0/fast/forms/selectlist-minsize-expected.txt:
  • platform/qt-5.0/fast/replaced/three-selects-break-expected.png:
  • platform/qt-5.0/fast/replaced/three-selects-break-expected.txt:
2:40 AM Changeset in webkit [119205] by yosin@chromium.org
  • 4 edits in trunk/Source

[Platform][Decimal] UInt128::operator/= calls makeUInt128 with wrong argument order
https://bugs.webkit.org/show_bug.cgi?id=88044

Reviewed by Kent Tamura.

Source/WebCore:

This patch fixed wrong argument of makeUInt128 in UInt128::operator/= to get right
result for decimal multiplication.

Test: WebKit/chromium/tests/DecimalTest.cpp: Add new a new test case.

  • platform/Decimal.cpp:

(WebCore::DecimalPrivate::UInt128::operator/=):

Source/WebKit/chromium:

  • tests/DecimalTest.cpp:

(TEST_F): Add a new test for multiplication.

2:26 AM Changeset in webkit [119204] by abarth@webkit.org
  • 7 edits
    9 adds in trunk

sandbox directive in X-WebKit-CSP header unable to create a unique origin
https://bugs.webkit.org/show_bug.cgi?id=88014

Reviewed by Ryosuke Niwa.

Source/WebCore:

We process the HTTP headers for a response after we create a document
object for the response. Previously, the SecurityOrigin of a document
was determined when the document was created, which meant that the
sandbox directive in CSP couldn't create a unique origin.

In this patch, we transition to a unique origin when we start enforcing
the SandboxOrigin bit. This patch is more complicated than you might
expect because we redundantly store the SecurityOrigin object in
DOMWindow. Removing that redundant state is
https://bugs.webkit.org/show_bug.cgi?id=75793.

The CSP sandbox directive is defined in
http://dvcs.w3.org/hg/content-security-policy/raw-file/tip/csp-1.0-specification.html
by reference to
http://www.whatwg.org/specs/web-apps/current-work/#forced-sandboxing-flag-set.
The relation between sandbox and unique origin arises from
http://www.whatwg.org/specs/web-apps/current-work/#origin-0.

Test: http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-control.html

http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header.html
http/tests/security/contentSecurityPolicy/sandbox-in-http-header-control.html
http/tests/security/contentSecurityPolicy/sandbox-in-http-header.html

  • dom/Document.cpp:

(WebCore::Document::didUpdateSecurityOrigin):
(WebCore::Document::initContentSecurityPolicy):

  • dom/Document.h:

(Document):

  • dom/SecurityContext.cpp:

(WebCore::SecurityContext::enforceSandboxFlags):
(WebCore):
(WebCore::SecurityContext::didUpdateSecurityOrigin):

  • dom/SecurityContext.h:

(SecurityContext):

LayoutTests:

  • http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-control.html: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header.html: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-in-http-header-control-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-in-http-header-control.html: Added.
  • http/tests/security/contentSecurityPolicy/resources/sandbox.php: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-in-http-header-expected.txt: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-in-http-header.html: Added.
  • http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-control-expected.txt: Added.
2:03 AM Changeset in webkit [119203] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: expose MemoryCache statistics in the inspector protocol
https://bugs.webkit.org/show_bug.cgi?id=87984

Reviewed by Pavel Feldman.

Added MemoryCache statistics to Memory.getProcessMemoryDistribution command
result. Corresponding sector is added to the memory pie-chart.

  • inspector/InspectorMemoryAgent.cpp:

(MemoryBlockName):
(WebCore):
(WebCore::addMemoryBlockFor):
(WebCore::memoryCacheInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryBlockViewProperties._initialize):

1:54 AM Changeset in webkit [119202] by zandobersek@gmail.com
  • 2 edits
    3 adds in trunk/LayoutTests

Unreviewed GTK gardening, add missing text and image baselines for
fast/images/png-suite/test.html. Add MISSING expectations for two
placeholder-in-text-area tests - the placeholder text does not appear
in text areas (known bug).

  • platform/gtk/fast/images/png-suite: Added.
  • platform/gtk/fast/images/png-suite/test-expected.png: Added.
  • platform/gtk/fast/images/png-suite/test-expected.txt: Added.
  • platform/gtk/test_expectations.txt:
1:34 AM Changeset in webkit [119201] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: add RenderArena sizes to the memory pie-chart
https://bugs.webkit.org/show_bug.cgi?id=87971

Reviewed by Pavel Feldman.

Added allocated and used sizes of page render arenas to the memory
report returned by the InspectorMemoryAgent. Total allocated size of
the inspected page's render arenas will be displayed on the memory
pie-chart.

  • inspector/InspectorMemoryAgent.cpp:

(MemoryBlockName):
(WebCore):
(WebCore::renderTreeInfo):
(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.MemoryBlockViewProperties._initialize):

1:32 AM Changeset in webkit [119200] by zandobersek@gmail.com
  • 2 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening after r119196.

  • platform/gtk/fast/dom/gc-attribute-node-expected.txt: Added.
  • platform/gtk/test_expectations.txt: Also mark fast/replaced/border-radius-clip.html as flaky.
1:29 AM Changeset in webkit [119199] by tkent@chromium.org
  • 3 edits
    2 copies in branches/chromium/1132

Merge 118721 - Form controls in <fieldset disabled> should not be validated.
https://bugs.webkit.org/show_bug.cgi?id=87381

Reviewed by Hajime Morita.

Source/WebCore:

We need to use disabeld() instead of m_disabled to calculate
willValidate property. Also, we need to update willValidate if
necessary.

Test: fast/forms/fieldset/validation-in-fieldset.html

  • html/HTMLFieldSetElement.cpp:

(WebCore::HTMLFieldSetElement::disabledAttributeChanged):

  • Do not traverse this.
  • Calls ancestorDisabledStateWasChanged() instead of setNeedsStyleRecalc() because we'd like to do additional tasks.
  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::ancestorDisabledStateWasChanged):
Added. Just calls disabledAttributeChanged().
(WebCore::HTMLFormControlElement::parseAttribute):
Do not call setNeedsWillValidateCheck() whenever an attribute is updated.
It should be called only if disabled or readonly attribute is updated.
(WebCore::HTMLFormControlElement::disabledAttributeChanged):
Add setNeedsWillValidateCheck(). It was moved from parseAttribute().
(WebCore::HTMLFormControlElement::insertedInto):
Invalidate ancestor information.
(WebCore::HTMLFormControlElement::recalcWillValidate):
Use disabled() instead of m_disabled. disabled() takes care of
ancestor's disabled state.

  • html/HTMLFormControlElement.h:

(HTMLFormControlElement):

LayoutTests:

  • fast/forms/fieldset/validation-in-fieldset-expected.txt: Added.
  • fast/forms/fieldset/validation-in-fieldset.html: Added.

TBR=tkent@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10451107

1:23 AM Changeset in webkit [119198] by yurys@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: change type of injected script id from long to int
https://bugs.webkit.org/show_bug.cgi?id=87837

Reviewed by Pavel Feldman.

Changed injected script id type from long to int so that we don't
lose precision when sending the id over the protocol.

  • bindings/js/JSInjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::createInjectedScript):
(WebCore::InjectedScriptManager::injectedScriptFor):

  • bindings/v8/custom/V8InjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::createInjectedScript):
(WebCore::InjectedScriptManager::injectedScriptFor):

  • inspector/InjectedScriptManager.cpp:

(WebCore::InjectedScriptManager::injectedScriptForId):
(WebCore::InjectedScriptManager::injectedScriptIdFor):
(WebCore::InjectedScriptManager::injectScript):

  • inspector/InjectedScriptManager.h:

(InjectedScriptManager):

  • inspector/PageRuntimeAgent.cpp:

(WebCore::PageRuntimeAgent::notifyContextCreated):

1:17 AM Changeset in webkit [119197] by yurys@chromium.org
  • 6 edits
    1 add in trunk/Source/WebCore

Web Inspector: draw pie-chart based on memory data received from backend
https://bugs.webkit.org/show_bug.cgi?id=87737

Reviewed by Pavel Feldman.

Added pie chart for memory data received from inspector memory agent.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/front-end/NativeMemorySnapshotView.js:

(WebInspector.NativeMemorySnapshotView):
(WebInspector.NativeMemoryProfileType):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked.didReceiveMemorySnapshot):
(WebInspector.NativeMemoryProfileType.prototype.buttonClicked):
(WebInspector.NativeMemoryProfileHeader):
(WebInspector.MemoryBlockViewProperties):
(WebInspector.MemoryBlockViewProperties._initialize):
(WebInspector.MemoryBlockViewProperties._forMemoryBlock):
(WebInspector.NativeMemoryPieChart):
(WebInspector.NativeMemoryPieChart.prototype.onResize):
(WebInspector.NativeMemoryPieChart.prototype._updateSize):
(WebInspector.NativeMemoryPieChart.prototype._addBlockLabels):
(WebInspector.NativeMemoryPieChart.prototype._paint.paintPercentAndLabel):
(WebInspector.NativeMemoryPieChart.prototype._paint):
(WebInspector.NativeMemoryPieChart.prototype._clear):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/nativeMemoryProfiler.css: Added.

(.memory-pie-chart-container):
(.memory-pie-chart):
(.memory-blocks-list .swatch):
(.memory-blocks-list):
(.memory-blocks-list .item):

Note: See TracTimeline for information about the timeline view.