Timeline



Apr 26, 2013:

11:43 PM Changeset in webkit [149236] by ggaren@apple.com
  • 16 edits
    2 adds in trunk

Source/JavaScriptCore: Re-landing <http://trac.webkit.org/changeset/148999>

Filled out more cases of branch folding in bytecode when emitting
expressions into a branching context
https://bugs.webkit.org/show_bug.cgi?id=115057

Reviewed by Phil Pizlo.

We can't fold the number == 1 case to boolean because all non-zero numbers
down-cast to true, but only 1 is == to true.

Source/WTF: Filled out more cases of branch folding in bytecode when emitting expressions into a branching context
https://bugs.webkit.org/show_bug.cgi?id=115057

Reviewed by Filip Pizlo.

Added a helper constructor for TriState so clients can make one without
branching or making assumptions about the integer values of TriStates.

  • wtf/TriState.h:

(WTF::triState):
(WTF):

LayoutTests: Re-landing <http://trac.webkit.org/changeset/148999>

Filled out more cases of branch folding in bytecode when emitting
expressions into a branching context
https://bugs.webkit.org/show_bug.cgi?id=115057

Reviewed by Phil Pizlo.

Added a more exhaustive correctness test.

  • fast/js/branch-fold-correctness-expected.txt: Added.
  • fast/js/branch-fold-correctness.html: Added.
11:33 PM Changeset in webkit [149235] by fpizlo@apple.com
  • 2 edits in branches/dfgFourthTier/Source/JavaScriptCore

Fix indentation of SymbolTable.h

Rubber stamped by Mark Hahnenberg.

  • runtime/SymbolTable.h:
11:28 PM Changeset in webkit [149234] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Correct indentation of SymbolTable.h

Rubber stamped by Mark Hahnenberg.

  • runtime/SymbolTable.h:
10:44 PM Changeset in webkit [149233] by fpizlo@apple.com
  • 16 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: CFA should defend against results seeming inconsistent due to a watchpoint firing during compilation
https://bugs.webkit.org/show_bug.cgi?id=115083

Reviewed by Geoffrey Garen.

This ruggedizes our racyness with respect to watchpoints. We want to be able to assert,
in some places, that a watchpoint-based optimization has only occurred if the
watchpoint set was still valid. But currently we *can* soundly do watchpoint-based
optimizations even for invalid watchpoints, so long as we recorded in the IR that we
had done so; this will then lead to the code being insta-jettisoned after compilation
completes. Obviously, we don't want this to happen often - but we do want to allow it
precisely in the case of watchpoint races.

This adds the ability to assert that we hadn't over-watchpointed ourselves, with and
exemption for races.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::setFuturePossibleStructure):
(JSC::DFG::AbstractValue::filterFuturePossibleStructure):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::addStructureTransitionCheck):
(JSC::DFG::ByteCodeParser::parseResolveOperations):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):

  • dfg/DFGDesiredWatchpoints.h:

(GenericDesiredWatchpoints):
(JSC::DFG::GenericDesiredWatchpoints::isStillValid):
(JSC::DFG::GenericDesiredWatchpoints::shouldAssumeMixedState):
(JSC::DFG::GenericDesiredWatchpoints::isValidOrMixed):
(JSC::DFG::DesiredWatchpoints::isStillValid):
(JSC::DFG::DesiredWatchpoints::shouldAssumeMixedState):
(JSC::DFG::DesiredWatchpoints::isValidOrMixed):
(DesiredWatchpoints):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::canOptimizeStringObjectAccess):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::masqueradesAsUndefinedWatchpointIsStillValid):
(Graph):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::addLazily):
(JITCompiler):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectEquality):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):
(JSC::DFG::SpeculativeJIT::masqueradesAsUndefinedWatchpointIsStillValid):
(JSC::DFG::SpeculativeJIT::speculationWatchpointForMasqueradesAsUndefined):
(JSC::DFG::SpeculativeJIT::speculateStringObjectForStructure):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::nonSpeculativeNonPeepholeCompareNull):
(JSC::DFG::SpeculativeJIT::nonSpeculativePeepholeBranchNull):
(JSC::DFG::SpeculativeJIT::compileObjectEquality):
(JSC::DFG::SpeculativeJIT::compileObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compilePeepHoleObjectToObjectOrOtherEquality):
(JSC::DFG::SpeculativeJIT::compileObjectOrOtherLogicalNot):
(JSC::DFG::SpeculativeJIT::emitObjectOrOtherBranch):
(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLCompile.cpp:

(JSC::FTL::compile):

  • ftl/FTLState.h:

(State):

10:30 PM Changeset in webkit [149232] by jer.noble@apple.com
  • 5 edits
    3 adds in trunk

Video playback has corruption on the edges of the video
https://bugs.webkit.org/show_bug.cgi?id=115216

Reviewed by Simon Fraser.

Source/WebCore:

Test: media/video-poster-background.html

RenderImage correctly answers foregroundIsKnownToBeOpaqueInRect() method
when a poster image is displayed, but once the video begins playing and
the poster image is no longer displayed, RenderImage will continue to
answer 'true' even when the video does not occupy the entire render box.
Override foregroundIsKnownToBeOpaqueInRect() in order to more correctly
answer the question for the video layer.

  • rendering/RenderImage.h: Make foregroundIsKnownToBeOpaqueInRect() protected

(vs. private).

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::foregroundIsKnownToBeOpaqueInRect): Added. Return

true if the rect parameter is entirely contained by the video box.

  • rendering/RenderVideo.h:

LayoutTests:

  • media/content/test.jpg: Added.
  • media/video-poster-background-expected.html: Added.
  • media/video-poster-background.html: Added.
9:41 PM Changeset in webkit [149231] by ryuan.choi@samsung.com
  • 2 edits in trunk/Tools

[EFL] Build break using jhbuild on ubuntu 13.04
https://bugs.webkit.org/show_bug.cgi?id=115225

Reviewed by Gyuyoung Kim.

libxslt in Ubuntu 13.04 requires libxml 2.9.0 or higher and
libxml 2.9.0 has a bug to make regression which r138422 mentioned.
So this patch bumped libxml version to 2.9.1.

  • efl/jhbuild.modules:
6:31 PM Changeset in webkit [149230] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[WK2][EFL] Build break after r149212
https://bugs.webkit.org/show_bug.cgi?id=115294

Patch by Yael Aharon <yael.aharon@intel.com> on 2013-04-26
Reviewed by Simon Fraser.
r144672 bumped up the revision of WKContextClient API, and introduced a version array
APIClientTraits<WKContextClient>::interfaceSizesByVersion .
In r149212, the version was bumped back down and the version array was emptied but not removed.
This causes a warning "array subscript is below array bounds", and in EFL the warning is
treated as error.

  • Shared/APIClientTraits.cpp:

(WebKit):

  • Shared/APIClientTraits.h:
5:51 PM Changeset in webkit [149229] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skipping some more tests that still need rebaselining after disabling subpixel layout on mac.
http://bugs.webkit.org/show_bug.cgi?id=115292

5:51 PM Changeset in webkit [149228] by jpfau@apple.com
  • 2 edits in trunk/Tools

delete-stale-build-files does not clear .d files
http://bugs.webkit.org/show_bug.cgi?id=115293

Reviewed by Ryosuke Niwa.

  • BuildSlaveSupport/delete-stale-build-files:

(main): Add .d to the file type list

5:38 PM Changeset in webkit [149227] by roger_fong@apple.com
  • 2 edits in trunk/WebKitLibraries

Disable sub-pixel-layout on Apple Windows port, VS2005 edition.

  • win/tools/vsprops/FeatureDefines.vsprops:
5:35 PM Changeset in webkit [149226] by hmuller@adobe.com
  • 12 edits in trunk/Source/WebCore

[CSS Exclusions] ExclusionShape bounding box methods should return LayoutRects
https://bugs.webkit.org/show_bug.cgi?id=115117

Reviewed by Dirk Schulze.

Redefined the ExclusionShape API in terms of LayoutUnits, instead of floats: all of the
ExclusionShape methods now have LayoutUnit parameters and return LayoutUnit values.
This is more natural, since the callers work exclusively in LayoutUnits.

This is strictly a refactoring, no new tests were needed.

  • rendering/ExclusionPolygon.cpp:

(WebCore::ExclusionPolygon::getExcludedIntervals):
(WebCore::ExclusionPolygon::getIncludedIntervals):
(WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop):

  • rendering/ExclusionPolygon.h:
  • rendering/ExclusionRectangle.cpp:

(WebCore::ExclusionRectangle::getExcludedIntervals):
(WebCore::ExclusionRectangle::getIncludedIntervals):
(WebCore::ExclusionRectangle::firstIncludedIntervalLogicalTop):

  • rendering/ExclusionRectangle.h:
  • rendering/ExclusionShape.cpp:

(WebCore::ExclusionShape::createExclusionShape):

  • rendering/ExclusionShape.h:

(LineSegment):
(ExclusionShape):

  • rendering/ExclusionShapeInfo.cpp:

(WebCore):
(WebCore::::computedShape):

  • rendering/ExclusionShapeInfo.h:

(WebCore):
(WebCore::ExclusionShapeInfo::shapeLogicalTop):
(WebCore::ExclusionShapeInfo::shapeLogicalBottom):
(ExclusionShapeInfo):

  • rendering/ExclusionShapeInsideInfo.cpp:

(WebCore::ExclusionShapeInsideInfo::adjustLogicalLineTop):

  • rendering/ExclusionShapeInsideInfo.h:
  • rendering/ExclusionShapeOutsideInfo.h:
5:17 PM Changeset in webkit [149225] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Nil-check the results of -[AVPlayerItemVideoOutput copyPixelBufferForItemTime:itemTimeForDisplay:].
https://bugs.webkit.org/show_bug.cgi?id=115265

Reviewed by Eric Carlson.

copyPixelBufferForItemTime:itemTimeForDisplay: can return nil, even
when hasNewPixelBufferForItemTime: returns YES. Check the results
before passing the buffer on to VTPixelTransferSessionTransferImage()
which does not NULL-check its parameters.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createPixelBuffer):

5:09 PM Changeset in webkit [149224] by roger_fong@apple.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Skipping some tests that still need rebaselining after disabling subpixel layout on mac.
http://bugs.webkit.org/show_bug.cgi?id=115292

4:45 PM Changeset in webkit [149223] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Uninflate caret rect.
http://bugs.webkit.org/show_bug.cgi?id=114997.
<rdar://problem/12629007>.

Reviewed by Timothy Horton.

Inflation was causing painting errors with focus rings.
It is no longer needed after disabling subpixel layout.

  • editing/FrameSelection.cpp:

(WebCore::repaintCaretForLocalRect):

4:40 PM Changeset in webkit [149222] by roger_fong@apple.com
  • 3 edits
    66 adds in trunk/LayoutTests

Unreviewed. More rebaselines for mac after disabling sub-pixel layout.

4:40 PM Changeset in webkit [149221] by roger_fong@apple.com
  • 2 edits in trunk/WebKitLibraries

Disable sub-pixel-layout on Apple Windows port.

  • win/tools/vsprops/FeatureDefines.props:
4:17 PM Changeset in webkit [149220] by roger_fong@apple.com
  • 216 edits
    1 delete in trunk

Make Apple Windows VS2010 build results into and get dependencies from 32 suffixed folders.
Make the DebugSuffix configuration use _debug dependencies.

4:06 PM Changeset in webkit [149219] by mrobinson@webkit.org
  • 5 edits in trunk/Source/WebKit2

[GTK] Add methods to add a user style sheet to the WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=99081

Reviewed by Carlos Garcia Campos, Gustavo Noronha Silva, and Benjamin Poulain.

Add methods to WebKitWebViewGroup to add and remove user style sheets.
This allows clients to inject style sheets into pages with a set of
rules for when those style sheets apply.

  • UIProcess/API/gtk/WebKitWebViewGroup.cpp:

(toImmutableArray): Added this helper which converts the GList* parameters into
ImmutableArrays for use with the WebKit2 internal API.
(webkit_web_view_group_add_user_style_sheet): Added new API for adding a style sheet.
(webkit_web_view_group_remove_all_user_style_sheets): Add new API for clearing out all style sheets.

  • UIProcess/API/gtk/WebKitWebViewGroup.h: Added new method declarations.
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Added new API to the documentation.
  • UIProcess/API/gtk/tests/TestWebKitWebViewGroup.cpp: Added a test for the new API.

(isStyleSheetInjectedForURLAtPath): Function to check whether the style sheet has been injected for a given URL.
(fillURLListFromPaths): Helper which converts paths passed via varargs into a whitelist or blacklist.
(removeOldInjectedStyleSheetsAndResetLists): Function to start afresh.
(testWebViewGroupInjectedStyleSheet): The actual test.
(serverCallback): Server callback for use with the test. We cannot use loadHTML or
loadAlternateHTML, because that checks the whitelist and blacklist against about:blank.
(beforeAll): Initialize the server and new test.
(afterAll): Clean up the server.

3:29 PM Changeset in webkit [149218] by roger_fong@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix.

  • platform/LayoutUnit.h:

(WebCore::LayoutUnit::LayoutUnit):

3:22 PM Changeset in webkit [149217] by ap@apple.com
  • 8 edits in trunk/Source/WebKit2

2013-04-26 Simon Cooper <scooper@apple.com>

Permit ~/Library or ~/Library/Preferences to be symlinks
https://bugs.webkit.org/show_bug.cgi?id=115142
<rdar://problem/12953603>

Reviewed by Alexey Proskuryakov.

Pass in two new parameters which are the resolved paths to ~/Library
and ~/Library/Preferences. Added new expansion functions and
substituted the new functions for home-regex, home-subpath and
home-literal for places referencing resources in "~/Library" or
"~/Library/Preferences".

  • Resources/PlugInSandboxProfiles/com.apple.QuickTime Plugin.plugin.sb:
  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb:
  • Resources/PlugInSandboxProfiles/com.apple.ist.ds.appleconnect.webplugin.sb:
  • Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
  • Resources/PlugInSandboxProfiles/com.microsoft.SilverlightPlugin.sb:
  • Resources/PlugInSandboxProfiles/com.oracle.java.JavaAppletPlugin.sb:
  • Shared/mac/ChildProcessMac.mm: (WebKit::ChildProcess::initializeSandbox):
3:20 PM Changeset in webkit [149216] by msaboff@apple.com
  • 4 edits in trunk/Source/WebCore

WebCore ObjC bridge is missing support for bool type
https://bugs.webkit.org/show_bug.cgi?id=115276

Reviewed by Geoffrey Garen.

Added code to handle conversion between ObjC and JS booleans.

  • bridge/objc/objc_instance.mm:

(ObjcInstance::invokeObjcMethod):

  • bridge/objc/objc_utility.h:
  • bridge/objc/objc_utility.mm:

(JSC::Bindings::convertValueToObjcValue):
(JSC::Bindings::convertObjcValueToValue):
(JSC::Bindings::objcValueTypeForType):

3:15 PM Changeset in webkit [149215] by mrowe@apple.com
  • 1 edit in tags/Safari-537.39.1/Source/WebKit/mac/WebCoreSupport/WebEditorClient.mm

Build fix.

3:15 PM Changeset in webkit [149214] by mrowe@apple.com
  • 4 edits in tags/Safari-537.39.1/Source

Versioning.

3:09 PM Changeset in webkit [149213] by mrowe@apple.com
  • 1 copy in tags/Safari-537.39.1

New tag.

2:54 PM Changeset in webkit [149212] by ap@apple.com
  • 4 edits in trunk/Source/WebKit2

[WK2] WKContextClient doesn't need to be versioned yet
https://bugs.webkit.org/show_bug.cgi?id=115279

Reviewed by Anders Carlsson.

  • Shared/APIClientTraits.cpp:
  • Shared/APIClientTraits.h:
  • UIProcess/API/C/WKContext.h:
2:39 PM Changeset in webkit [149211] by andersca@apple.com
  • 8 edits in trunk/Source/WebKit2

Downloads need to be converted from the NSURLConnection, not canceled and restarted, when using the NetworkProcess
https://bugs.webkit.org/show_bug.cgi?id=115277
<rdar://problem/12890184>

Reviewed by Sam Weinig.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::convertMainResourceLoadToDownload):
Ask the download manager to convert the main resource load to a download.

  • NetworkProcess/NetworkConnectionToWebProcess.messages.in:

Add new message.

  • NetworkProcess/NetworkResourceLoader.h:

(WebKit::NetworkResourceLoader::handle):
Add getter.

  • Shared/Downloads/mac/DownloadMac.mm:

(dispatchOnMainThread):
Helper function that ensures that a given block is called on the main thread.

(-[WKDownloadAsDelegate downloadDidBegin:]):
(-[WKDownloadAsDelegate download:didReceiveAuthenticationChallenge:]):
(-[WKDownloadAsDelegate download:didReceiveResponse:]):
(-[WKDownloadAsDelegate download:didReceiveDataOfLength:]):
(-[WKDownloadAsDelegate download:shouldDecodeSourceDataOfMIMEType:]):
(-[WKDownloadAsDelegate download:decideDestinationWithSuggestedFilename:]):
(-[WKDownloadAsDelegate download:didCreateDestination:]):
(-[WKDownloadAsDelegate downloadDidFinish:]):
(-[WKDownloadAsDelegate download:didFailWithError:]):
Use dispatchOnMainThread.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::receivedPolicyDecision):
Remove code that cancels the current load and starts a new download.

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::convertMainResourceLoadToDownload):
Send the ConvertMainResourceLoadToDownload message to the network process.

2:25 PM Changeset in webkit [149210] by roger_fong@apple.com
  • 865 edits
    359 adds
    262 deletes in trunk/LayoutTests

Unreviewed. Rebaseline a bunch of tests and run optimize-baselines after disabling sub-pixel layout on mac.
https://bugs.webkit.org/show_bug.cgi?id=114999.

2:19 PM Changeset in webkit [149209] by roger_fong@apple.com
  • 9 edits in trunk/Source

Disable sub-pixel layout on mac.
https://bugs.webkit.org/show_bug.cgi?id=114999.

Reviewed by Simon Fraser.

  • Configurations/FeatureDefines.xcconfig:
  • WebCore.exp.in:

Export symbol needed to be added for IntRect(const LayoutRect&) constructor,
which is now being used in pixelSnappedIntRect(const LayoutRect&) in LayoutRect.h after disabling sub-pixel layout.

2:13 PM Changeset in webkit [149208] by Simon Fraser
  • 2 edits in trunk/Source/WebKit2

Inspector window is often blank when opened
https://bugs.webkit.org/show_bug.cgi?id=115220
<rdar://problem/13735496>

Reviewed by Tim Horton.

After disabling tiled scrolling and accelerated drawing in r149006, the
Inspector window was often missing its content after opening. This only
happened when the user has a preference on disk to use accelerated drawing
in the Inspector.

The missing content was caused by a failure to connect the correct contextID
for remote layer hosting. On window creation, we hook up a context using
WindowServer layer hosting (the default), but then switch back to app-hosted
layers for the Inspector window. This switching happens in didUpdateBackingStoreState(),
but that can be re-entered via its call to sendUpdateBackingStoreState(). In
that cause, on unwinding the stack it would call enterAcceleratedCompositingMode()
with a stale layerTreeContext.

Fix by moving the code that exits/enters accelerated compositing mode to before
the call to sendUpdateBackingStoreState() that can cause re-entrancy. That avoids
use of a possibly stale layerTreeContext.

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::didUpdateBackingStoreState):

2:13 PM Changeset in webkit [149207] by Simon Fraser
  • 4 edits in trunk/Source

Layer-backed WebViews don't repaint content outside the visible area
https://bugs.webkit.org/show_bug.cgi?id=115275

Reviewed by Beth Dakin.

Source/WebCore:

Export ScrollView::setPaintsEntireContents(bool).

  • WebCore.exp.in:

Source/WebKit/mac:

When a client of WebView makes the WebView be layer-backed, then
AppKit propagaes the layer-backing down to the WebHTMLView (but
no further).

In this situation, we had a bug where content that was not
in the visible content rect would not get repainted, because
WebCore clips repaints to the visible rect.

Fix by calling ScrollView::setPaintsEntireContents(bool) from
-[WebHTMLView setLayer:], saying that we need
to paint the entire contents if we have a layer.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView setLayer:]):

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

[BlackBerry] Check for valid element in elementTouched
https://bugs.webkit.org/show_bug.cgi?id=115205

Patch by Nima Ghanavatian <nghanavatian@blackberry.com> on 2013-04-26
Reviewed by Rob Buis.

Internally reviewed by Genevieve Mak.

PR 331546
We might receive a null ptr from nodeAsElementIfApplicable which
is passed in here. Check to make sure it's valid before using.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::elementTouched):

1:12 PM Changeset in webkit [149205] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Make stack tracing more robust
https://bugs.webkit.org/show_bug.cgi?id=115272

Reviewed by Geoffrey Garen.

CallFrame already handles stack walking confusion robustly,
so we should make sure that the actual walk handles that as well.

  • interpreter/Interpreter.cpp:

(JSC::getCallerInfo):

12:42 PM Changeset in webkit [149204] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Crashes under ResourceHandle::continueDidReceiveResponse when loading blobs
https://bugs.webkit.org/show_bug.cgi?id=115273

Reviewed by Anders Carlsson.

Covered by multiple existing tests (when using NetworkProcess), including:

  • http/tests/fileapi/blob-url-in-subframe.html
  • http/tests/fileapi/create-blob-url-from-data-url.html
  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::continueDidReceiveResponse): Work around BlobResourceHandle badness.
12:09 PM Changeset in webkit [149203] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Change RenderMeter::valueRatio() visibility to public
https://bugs.webkit.org/show_bug.cgi?id=115266

This function is currently unused.
However, it is necessary to implement a RenderTheme capable of rendering Meter elements.

Patch by Daker Fernandes Pinheiro <daker.pinheiro@openbossa.org> on 2013-04-26
Reviewed by Alexis Menard.

No new tests, because no behaviour is changed.

  • rendering/RenderMeter.h:

(RenderMeter):

12:08 PM Changeset in webkit [149202] by timothy@apple.com
  • 6 edits
    1 add in trunk/Source

Add Runtime.parse to the Inspector protocol.

This will be used to parse console expressions for errors
before evaluating them fully.

https://webkit.org/b/115242

Reviewed by Oliver Hunt.

  • ForwardingHeaders/parser/ParserError.h: Added.
  • inspector/Inspector.json:
  • inspector/InspectorRuntimeAgent.cpp:

(WebCore::InspectorRuntimeAgent::parse):

  • inspector/InspectorRuntimeAgent.h:

(InspectorRuntimeAgent):

12:04 PM Changeset in webkit [149201] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix the copyright years after r149057

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-26

  • page/DiagnosticLoggingKeys.cpp: I accidentally removed a year from

the copyright in r149057.

11:57 AM Changeset in webkit [149200] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Web Inspector: Crash due to null items from getDOMStorageItems
https://bugs.webkit.org/show_bug.cgi?id=115176

Patch by Konrad Piascik <kpiascik@blackberry.com> on 2013-04-26
Reviewed by Joseph Pecoraro.

Source/WebCore:

findStorageArea was returning a null storageArea causing the items
input paramater to not be set. This was happening without any error
being set at all. Set an error to prevent a crash when we try to
convert the result to a JSON string.

Added tests to check if session and local storage are empty that
they are still functional.

  • inspector/InspectorDOMStorageAgent.cpp:

(WebCore::InspectorDOMStorageAgent::getDOMStorageItems):

LayoutTests:

Tests to check that if local and session storage are empty
that they still work corerctly.

  • inspector/storage-panel-dom-storage-empty-expected.txt: Added.
  • inspector/storage-panel-dom-storage-empty.html: Added.
11:40 AM Changeset in webkit [149199] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

[WK2] Remove NetworkResourceLoader::cleanupOnMainThread
https://bugs.webkit.org/show_bug.cgi?id=115268

Reviewed by Brady Eidson.

All cleanup() callers are now on main thread, and this indirection only complicates debugging.

  • NetworkProcess/NetworkResourceLoader.cpp: (WebKit::NetworkResourceLoader::connectionToWebProcessDidClose): (WebKit::NetworkResourceLoader::abortInProgressLoad): (WebKit::NetworkResourceLoader::didFinishLoading): (WebKit::NetworkResourceLoader::didFail):
  • NetworkProcess/NetworkResourceLoader.h:
11:24 AM Changeset in webkit [149198] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[WebKit2] CustomProtocolManager's m_registeredSchemes HashSet can be accessed by multiple threads
https://bugs.webkit.org/show_bug.cgi?id=115267

Reviewed by Alexey Proskuryakov.

  • Shared/Network/CustomProtocols/CustomProtocolManager.h: Added a Mutex to protect m_registeredSchemes.
  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(WebKit::CustomProtocolManager::registerScheme): Acquired the mutex before accessing m_registeredSchemes.
(WebKit::CustomProtocolManager::unregisterScheme): Ditto.
(WebKit::CustomProtocolManager::supportsScheme): Ditto.

11:10 AM Changeset in webkit [149197] by eric.carlson@apple.com
  • 2 edits in trunk/LayoutTests

[Mac] media/track/track-mode.html sometimes trigger InvalidStateError
https://bugs.webkit.org/show_bug.cgi?id=115045

Reviewed by Alexey Proskuryakov.

  • media/track/track-mode.html: Don't assume that the video element is ready for seeking

after a 100ms timeout.

10:51 AM Changeset in webkit [149196] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Blobs are not associated with connection when there are no sandbox extensions
https://bugs.webkit.org/show_bug.cgi?id=115264

Reviewed by Brady Eidson.

Covered by multiple fast/files tests when using NetworkProcess.

  • NetworkProcess/FileAPI/NetworkBlobRegistry.cpp: (WebKit::NetworkBlobRegistry::registerBlobURL): Fixed a logic error.
10:41 AM Changeset in webkit [149195] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[GTK] Clean up the TestWebKitAPI GNUmakefile.am
https://bugs.webkit.org/show_bug.cgi?id=115233

Reviewed by Martin Robinson.

Specify unconditional, non-installable program targets in one declaration. Only conditionally specify
WebKit2-specific targets, not the complete target setups (i.e. targets' sources, cppflags listings etc.).
Add missing unit test source files to the TestWTF program, namely HashSet.cpp and MetaAllocator.cpp.
Specify the TestWTF program's CXXFLAGS to be the same as the global cxxflags as the source files need to
be compiled with the -fno-rtti flag that's present in the global_cxxflags variable.

  • TestWebKitAPI/GNUmakefile.am:
9:55 AM Changeset in webkit [149194] by aestes@apple.com
  • 11 edits
    3 copies
    2 adds in trunk

[WebKit2] Loading a resource from a custom protocol in a synchronous XHR times out
https://bugs.webkit.org/show_bug.cgi?id=115223

Reviewed by Darin Adler.

Source/WebKit2:

When WebKit performs a synchronous load on the Mac, it spins a nested
run loop in a mode that only accepts input from the NSURLConnection
performing the load. When the load is for a custom protocol in WebKit2,
we proxy it to the UI process via CoreIPC messages, but the response
messages from the UI process are never processed as long as the run
loop is in a non-common mode (and we wouldn't want to process messages
that could re-enter WebCore in the middle of loading, anyway). Since
these messages never make it back to the NSURLConnection handling the
request, the connection eventually times out.

Fix this by using a work queue to handle custom protocol messages in
the networking process. The work queue can process incoming custom
protocol messages while the main thread is blocked.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initializeConnection): Called
initializeConnection() on all the NetworkProcess's supplements.

  • Shared/ChildProcessSupplement.h: Added a base class for

NetworkProcessSupplement and WebProcessSupplement which defines
initializeConnection and provides an empty default implementation.
(WebKit::ChildProcessSupplement::~ChildProcessSupplement):
(WebKit::ChildProcessSupplement::initializeConnection):

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:
  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(WebKit::CustomProtocolManager::CustomProtocolManager): Instantiated a
work queue for message processing.
(WebKit::CustomProtocolManager::initializeConnection): Added the work
queue as a message receiver on the CoreIPC connection.
(WebKit::CustomProtocolManager::initialize): If we're in the web
process and the network process is being used, unregister and destroy
the work queue we previously created. It'd be better to not create it
in the first place, but we have to register our work queue with the
CoreIPC connection before it is established, which is before the UI
process has told us whether the network process is in use.

  • Shared/Network/NetworkProcessSupplement.h: Inherited from

ChildProcessSupplement.

  • WebKit2.xcodeproj/project.pbxproj: Added ChildProcessSupplement.h.
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeConnection): Called
initializeConnection() on all the WebProcess's supplements.

  • WebProcess/WebProcessSupplement.h: Inherited from

ChildProcessSupplement.

Tools:

Added an API test.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added new files.
  • TestWebKitAPI/Tests/CustomProtocolsSyncXHRTest.mm: Added.

(TestWebKitAPI::TEST): Tested that a synchronous XHR does not time out
when it loads a request with a custom protocol.

  • TestWebKitAPI/Tests/WebKit2/custom-protocol-sync-xhr.html: Added.
  • TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm: Moved the

NSURLProtocol subclass to TestProtocol.{h, mm} and did some
miscellaneous cleanup.

  • TestWebKitAPI/mac/TestProtocol.h: Copied from Source/WebKit2/WebProcess/WebProcessSupplement.h.
  • TestWebKitAPI/mac/TestProtocol.mm: Copied from Tools/TestWebKitAPI/Tests/WebKit2ObjC/CustomProtocolsTest.mm.

(+[TestProtocol canInitWithRequest:]):
(+[TestProtocol canonicalRequestForRequest:]):
(+[TestProtocol requestIsCacheEquivalent:toRequest:]):
(+[TestProtocol scheme]):
(-[TestProtocol startLoading]):
(-[TestProtocol stopLoading]):

9:24 AM Changeset in webkit [149193] by mrobinson@webkit.org
  • 49 edits in trunk

Remove the remaining Skia #ifdefs
https://bugs.webkit.org/show_bug.cgi?id=114886

Reviewed by Benjamin Poulain.

Source/WebCore:

  • html/HTMLCanvasElement.cpp: Remove Skia #ifdef references.
  • platform/graphics/BitmapImage.cpp: Ditto.
  • platform/graphics/FloatPoint.h: Ditto.
  • platform/graphics/FloatRect.h: Ditto.
  • platform/graphics/FontCache.h: Ditto.
  • platform/graphics/Gradient.cpp: Ditto.
  • platform/graphics/Gradient.h: Ditto.
  • platform/graphics/GraphicsContext.cpp: Ditto.
  • platform/graphics/GraphicsContext.h: Ditto.
  • platform/graphics/GraphicsContext3D.h: Ditto.
  • platform/graphics/ImageBuffer.cpp: Ditto.
  • platform/graphics/ImageBuffer.h: Ditto.
  • platform/graphics/ImageBufferData.h: Ditto.
  • platform/graphics/IntPoint.h: Ditto.
  • platform/graphics/IntRect.h: Ditto.
  • platform/graphics/NativeImagePtr.h: Ditto.
  • platform/graphics/Path.h: Ditto.
  • platform/graphics/Pattern.cpp: Ditto.
  • platform/graphics/Pattern.h: Ditto.
  • platform/graphics/filters/FEBlend.h: Ditto.
  • platform/graphics/filters/FEColorMatrix.h: Ditto.
  • platform/graphics/filters/FEComponentTransfer.h: Ditto.
  • platform/graphics/filters/FEComposite.h: Ditto.
  • platform/graphics/filters/FEConvolveMatrix.h: Ditto.
  • platform/graphics/filters/FEDisplacementMap.h: Ditto.
  • platform/graphics/filters/FEGaussianBlur.h: Ditto.
  • platform/graphics/filters/FELighting.h: Ditto.
  • platform/graphics/filters/FEMorphology.h: Ditto.
  • platform/graphics/filters/FEOffset.h: Ditto.
  • platform/graphics/filters/FilterEffect.cpp: Ditto.
  • platform/graphics/filters/FilterEffect.h: Ditto.
  • platform/graphics/transforms/AffineTransform.h: Ditto.
  • platform/graphics/transforms/TransformationMatrix.h: Ditto.
  • platform/image-decoders/ImageDecoder.cpp: Ditto.
  • platform/image-decoders/ImageDecoder.h: Ditto.
  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Ditto.
  • platform/image-decoders/webp/WEBPImageDecoder.cpp: Ditto.
  • platform/mac/LocalCurrentGraphicsContext.h: Ditto.
  • platform/mac/LocalCurrentGraphicsContext.mm: Ditto.
  • rendering/svg/RenderSVGResourceSolidColor.cpp: Ditto.
  • svg/graphics/SVGImage.cpp: Ditto.
  • svg/graphics/SVGImage.h: Ditto.

Source/WebKit/blackberry:

  • Api/WebPage.cpp: Remove Skia #ifdef references.
  • WebCoreSupport/AboutDataUseFeatures.in: Ditto.

Source/WTF:

  • wtf/Platform.h:

Tools:

  • DumpRenderTree/blackberry/PixelDumpSupportBlackBerry.cpp:

(createBitmapContextFromWebView): Remove Skia #ifdef references.

9:16 AM Changeset in webkit [149192] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[GTK] Compilation of ProcessLauncherGtk.cpp fails due to unresolved symbols
https://bugs.webkit.org/show_bug.cgi?id=115240

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2013-04-26
Reviewed by Martin Robinson.

  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp: Includes sys/socket.h if OS is Linux
9:15 AM Changeset in webkit [149191] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

Sort jsc-test-list

$ sort -f -o LayoutTests/fast/js/jsc-test-list LayoutTests/fast/js/jsc-test-list

  • fast/js/jsc-test-list: Sort case-insensitively.
9:15 AM Changeset in webkit [149190] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

Upstream iOS changes to jsc-test-list

Reviewed by Michael Saboff.

  • fast/js/jsc-test-list: Add tests.
9:12 AM Changeset in webkit [149189] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip two failing tests.

  • platform/qt/TestExpectations:
9:08 AM Changeset in webkit [149188] by allan.jensen@digia.com
  • 2 edits in trunk/Source/WebCore

Assert in JSC::Heap::unprotect when closing facebook.com web site
https://bugs.webkit.org/show_bug.cgi?id=115058

Reviewed by Darin Adler.

Grab a JSLock before calling RootObject::invalidate().

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::~ScriptController):

8:17 AM Changeset in webkit [149187] by eric.carlson@apple.com
  • 6 edits in trunk/Source/WebCore

[Mac] in-band cues sometimes have incorrect duration
https://bugs.webkit.org/show_bug.cgi?id=115200

Reviewed by Jer Noble.

No new tests, this is not possible to test in DRT.

  • html/track/InbandTextTrack.cpp:

(WebCore::InbandTextTrack::addGenericCue): Don't add completed cues to the map.
(WebCore::InbandTextTrack::removeGenericCue): Log when a cue is removed from the track.

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::InbandTextTrackPrivateAVF): Initialize m_pendingCueStatus.
(WebCore::InbandTextTrackPrivateAVF::processCue): Never call update() on a cue that is delivered

while seeking.

(WebCore::InbandTextTrackPrivateAVF::beginSeeking): Flush all incomplete cues, remember that

we are seeking.

(WebCore::InbandTextTrackPrivateAVF::resetCueValues):

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
  • platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:

(WebCore::MediaPlayerPrivateAVFoundation::seek): Call track->beginSeeking() instead of resetCueValues().
(WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Call track->endSeeking().

  • platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:

(WebCore::InbandTextTrackPrivateAVFObjC::kind): Include class name in Kind enum values to

avoid compile error.

8:14 AM Changeset in webkit [149186] by akling@apple.com
  • 21 edits in trunk/Source/WebCore

Remove wxWebKit from WebCore.
<http://webkit.org/b/115255>

Reviewed by Anders Carlsson.

  • DerivedSources.make:
  • WebCorePrefix.h:
  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::JSInspectorFrontendHost::port):

  • config.h:
  • html/HTMLFormElement.cpp:
  • platform/ContextMenu.h:

(ContextMenu):

  • platform/ContextMenuItem.h:
  • platform/Cursor.h:
  • platform/DragData.h:
  • platform/DragImage.h:
  • platform/FileSystem.h:
  • platform/PlatformExportMacros.h:
  • platform/PlatformKeyboardEvent.h:

(PlatformKeyboardEvent):

  • platform/PlatformMenuDescription.h:
  • platform/PlatformMouseEvent.h:

(PlatformMouseEvent):

  • platform/PlatformWheelEvent.h:

(PlatformWheelEvent):

  • platform/ScrollView.cpp:
  • platform/ScrollView.h:

(ScrollView):

  • platform/Widget.h:
  • platform/win/SharedTimerWin.cpp:
8:13 AM Changeset in webkit [149185] by commit-queue@webkit.org
  • 6 edits
    3 adds in trunk

use-after-free removing a frame from its parent in a beforeload event of an OBJECT element
https://bugs.webkit.org/show_bug.cgi?id=113964

Source/WebCore:

Object elements have the tendecny to modify or even fully remove
the containing Document inside beforeload callback. While Document is removed,
RenderArena gets destroyed. Retained RenderWidgets fails to function with NULL arena.

Protect RendereArena from getting wiped out, when Document is removed
during FrameView::updateWidget().

Patch by Zalan Bujtas <Alan Bujtas> on 2013-04-26
Reviewed by Antti Koivisto.

Test: fast/frames/crash-remove-iframe-during-object-beforeload.html

  • dom/Document.cpp:

(WebCore::Document::attach):

  • dom/Document.h:

(Document):

  • page/FrameView.cpp:

(WebCore::FrameView::updateWidgets):

  • rendering/RenderArena.h:

(RenderArena):
(WebCore::RenderArena::create):

LayoutTests:

Patch by Zalan Bujtas <Alan Bujtas> on 2013-04-26
Reviewed by Antti Koivisto.

  • fast/frames/crash-remove-iframe-during-object-beforeload-expected.txt: Added.
  • fast/frames/crash-remove-iframe-during-object-beforeload.html: Added.
  • fast/frames/resources/remove-this-during-object-beforeload.html: Added.
7:56 AM Changeset in webkit [149184] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Source/WTF

Add move semantics to RefPtr
https://bugs.webkit.org/show_bug.cgi?id=115033

Reviewed by Anders Carlsson.

Add move constructors and move assignment operators to RefPtr when
COMPILER_SUPPORTS(CXX_RVALUE_REFERENCES).
This obviates unnecessary reffing/ureffing when RefPtr is created
or assigned from rvalue references.

  • wtf/RefPtr.h:

(RefPtr):
(WTF::RefPtr::RefPtr):
(WTF::RefPtr::operator=):

7:32 AM Changeset in webkit [149183] by mhahnenberg@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r149165): It made many tests crash on 32 bit
https://bugs.webkit.org/show_bug.cgi?id=115227

Reviewed by Csaba Osztrogonác.

m_reservation is uninitialized when ENABLE(SUPER_REGION) is false.

  • heap/SuperRegion.cpp:

(JSC::SuperRegion::~SuperRegion):

6:59 AM Changeset in webkit [149182] by mary.wu@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Should check if it's cached resource before download
https://bugs.webkit.org/show_bug.cgi?id=115101

Reviewed by Rob Buis.

Since main resource maybe cached, if user want to save the resource, we first check
if it's cached. If yes, don't need to initiate a fresh load again, but get the
cached resource data out to save.

RIM bug# 324003, internally reviewed by Charles Wei.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::convertMainResourceLoadToDownload):

6:20 AM Changeset in webkit [149181] by zandobersek@gmail.com
  • 3 edits
    20 adds in trunk/LayoutTests

[GTK] Enable Web Audio layout tests on WK2, provide platform-specific expected output
https://bugs.webkit.org/show_bug.cgi?id=114513

Reviewed by Philippe Normand.

Unskip the Web Audio layout tests for GTK WK2 and generate platform-specific baselines for the tests.
The audio baselines are not audibly different from the generic baselines, but it can be expected that
different backends won't produce the same binary output.

The remaining failures are marked as such in the TestExpectations, each failure having the appropriate
bug handle covering the issue. The tests are still skipped for GTK WK1 as DumpRenderTree is still missing
infrastructure support for running these tests.

  • platform/gtk-wk1/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/gtk/webaudio/audiobuffersource-loop-points-expected.wav: Added.
  • platform/gtk/webaudio/audiobuffersource-playbackrate-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/aac/vbr-128kbps-44khz-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/mp3/128kbps-44khz-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/vorbis/vbr-128kbps-44khz-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/vorbis/vbr-70kbps-44khz-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/vorbis/vbr-96kbps-44khz-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/wav/24bit-22khz-resample-expected.wav: Added.
  • platform/gtk/webaudio/codec-tests/wav/24bit-44khz-expected.wav: Added.
  • platform/gtk/webaudio/oscillator-custom-expected.wav: Added.
  • platform/gtk/webaudio/oscillator-sawtooth-expected.wav: Added.
  • platform/gtk/webaudio/oscillator-sine-expected.wav: Added.
  • platform/gtk/webaudio/oscillator-square-expected.wav: Added.
  • platform/gtk/webaudio/oscillator-triangle-expected.wav: Added.
6:16 AM Changeset in webkit [149180] by mary.wu@torchmobile.com.cn
  • 5 edits in trunk

[BlackBerry] Clean up load interface in WebPage
https://bugs.webkit.org/show_bug.cgi?id=113267

Reviewed by Rob Buis.

Source/WebKit/blackberry:

Remove unused loadExtended(), combine load() and download() api in WebPage.
RIM Bug# 315535, internally reviewed by Joe Mason.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::load):

  • Api/WebPage.h:

Tools:

Update DumpRenderTree with change of load() interface in WebPage.
RIM Bug# 315535, internally reviewed by Joe Mason.

  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(BlackBerry::WebKit::DumpRenderTree::runTest):

6:09 AM Changeset in webkit [149179] by Claudio Saavedra
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed gardnering. Unskip passing test.

  • platform/gtk/TestExpectations: Unskip http/tests/inspector/compiler-source-mapping-debug.html
6:07 AM Changeset in webkit [149178] by akling@apple.com
  • 8 edits
    3 deletes in trunk/Source/WTF

Remove wxWebKit from WTF.
<http://webkit.org/b/115249>

Reviewed by Antti Koivisto.

  • wscript: Removed.
  • wtf/ArrayBufferView.h:

(ArrayBufferView):

  • wtf/CurrentTime.cpp:
  • wtf/DisallowCType.h:
  • wtf/ExportMacros.h:
  • wtf/FeatureDefines.h:
  • wtf/Platform.h:
  • wtf/text/WTFString.h:

(String):

  • wtf/wx/MainThreadWx.cpp: Removed.
  • wtf/wx/StringWx.cpp: Removed.
6:03 AM Changeset in webkit [149177] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Optimize function and interface object length computation in bindings generator
https://bugs.webkit.org/show_bug.cgi?id=115247

Reviewed by Kentaro Hara.

Introduce new GetFunctionLength() function that efficiently compute the length
of a function (i.e. its number of mandatory parameters).

We now call GetFunctionLength() instead of GenerateFunctionParametersCheck()
whenever we care only interested in the function length and not the actual
expression for checking the parameters. This is much more efficient as
GenerateFunctionParametersCheck() does a lot more processing than we need in
this case.

No new tests, no behavior change.

  • bindings/scripts/CodeGeneratorJS.pm:

(GetFunctionLength):
(GenerateImplementation):
(GenerateConstructorHelperMethods):

6:02 AM Changeset in webkit [149176] by zandobersek@gmail.com
  • 1 edit
    1 delete in trunk/Tools

Remove the HeapGraphSerializer unit test
https://bugs.webkit.org/show_bug.cgi?id=115231

Reviewed by Andreas Kling.

Remove the HeapGraphSerializer unit test. The code it was testing was removed in r148921,
specifically the Source/WebCore/inspector/HeapGraphSerializer.(cpp|h) files.

  • TestWebKitAPI/Tests/WebCore/HeapGraphSerializerTest.cpp: Removed.
5:09 AM FeatureFlags edited by akling@apple.com
(diff)
4:48 AM Changeset in webkit [149175] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Web Audio: Remove reduplicative addInput() in AnalyserNode.
<http://webkit.org/b/115244>

From Blink r149155 by <james.wei@intel.com>:

The parent class BasicInspectorNode already called addInput() and addOutput().
So it is reduplicative to call them in AnalyserNode.

  • Modules/webaudio/AnalyserNode.cpp:

(WebCore::AnalyserNode::AnalyserNode):

  • Modules/webaudio/AudioBasicInspectorNode.cpp:

(WebCore::AudioBasicInspectorNode::AudioBasicInspectorNode):

  • Modules/webaudio/AudioBasicInspectorNode.h:

(AudioBasicInspectorNode):

  • Modules/webaudio/MediaStreamAudioDestinationNode.cpp:

(WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):

3:30 AM Changeset in webkit [149174] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Add unit test cases for ewk_settings APIs
https://bugs.webkit.org/show_bug.cgi?id=114897

Patch by Jose Lejin PJ <jose.lejin@gmail.com> on 2013-04-26
Reviewed by Gyuyoung Kim.

Added unit tests for ewk_settings APIs.

  • tests/test_ewk_setting.cpp:

(TEST_F):

2:42 AM Changeset in webkit [149173] by allan.jensen@digia.com
  • 20 edits
    4 adds in trunk

Mouseenter and mouseleave events not supported
https://bugs.webkit.org/show_bug.cgi?id=18930

Reviewed by David Hyatt.

Source/WebCore:

Implements mouseenter and mouseleave events from W3C DOM Level 3 Events.
These event are already supported by all other major browsers.

To avoid performance regressions the new events are only dispatched when
there are event listeners for them.

Tests: fast/events/mouseenter-mouseleave-capture.html

fast/events/mouseenter-mouseleave.html

  • bindings/scripts/CodeGenerator.pm:
  • dom/Document.cpp:

(WebCore::Document::prepareMouseEvent):
(WebCore::Document::updateHoverActiveState):

  • dom/Document.h:

(Document):

  • dom/Document.idl:
  • dom/Element.h:

(Element):

  • dom/Element.idl:
  • dom/EventListenerMap.cpp:

(WebCore::EventListenerMap::containsCapturing):

  • dom/EventListenerMap.h:

(EventListenerMap):

  • dom/EventNames.h:
  • dom/EventTarget.h:

(EventTarget):
(WebCore::EventTarget::hasCapturingEventListeners):

  • dom/MouseEvent.cpp:

(WebCore::MouseEvent::create):
(WebCore::MouseEvent::toElement):
(WebCore::MouseEvent::fromElement):

  • html/HTMLAttributeNames.in:
  • html/HTMLElement.cpp:

(WebCore::HTMLElement::eventNameForAttributeName):

  • page/DOMWindow.h:

(DOMWindow):

  • page/DOMWindow.idl:
  • svg/SVGElement.cpp:

(WebCore::SVGElement::parseAttribute):

  • svg/SVGElementInstance.h:

(SVGElementInstance):

  • svg/SVGElementInstance.idl:

LayoutTests:

To new tests that mouseenter and mouseleave works in both bubbling and capture phase.

  • fast/events/mouseenter-mouseleave-capture-expected.txt: Added.
  • fast/events/mouseenter-mouseleave-capture.html: Added.
  • fast/events/mouseenter-mouseleave-expected.txt: Added.
  • fast/events/mouseenter-mouseleave.html: Added.
2:36 AM Changeset in webkit [149172] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Fix SH4 build broken since r149159.
https://bugs.webkit.org/show_bug.cgi?id=115229

Add BranchTruncateType enum in SH4 port and handle it in branchTruncateDoubleToInt32.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-04-26
Reviewed by Allan Sandfeld Jensen.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchTruncateDoubleToInt32):

2:16 AM Changeset in webkit [149171] by Christophe Dumez
  • 5 edits in trunk/LayoutTests

[Qt] REGRESSION(r149001): It made two fast/dom/DeviceMotion tests fail.
https://bugs.webkit.org/show_bug.cgi?id=115235

Reviewed by Kentaro Hara.

Update window-property.html test cases for DeviceMotion and DeviceOrientation.
The global constructors are no longer enumerable after r149001.

  • fast/dom/DeviceMotion/script-tests/window-property.js:
  • fast/dom/DeviceMotion/window-property-expected.txt:
  • fast/dom/DeviceOrientation/script-tests/window-property.js:
  • fast/dom/DeviceOrientation/window-property-expected.txt:
12:38 AM WebKitIDL edited by Christophe Dumez
Drop Supplemental in favor of partial interfaces due to r149170 (diff)
12:35 AM WebKitIDL edited by Christophe Dumez
[Callback] only applies to parameters, not interfaces (diff)
12:29 AM Changeset in webkit [149170] by Christophe Dumez
  • 33 edits in trunk/Source/WebCore

Add support for Web IDL partial interfaces to the bindings generator
https://bugs.webkit.org/show_bug.cgi?id=115228

Reviewed by Kentaro Hara.

Add support for Web IDL partial interfaces to the bindings generator:
http://dev.w3.org/2006/webapi/WebIDL/#dfn-partial-interface

Also drop support for the the WebKit-specific [Supplemental] extended
attribute and use partial interfaces instead in existing IDL files.

No new tests, no behavior change.

  • Modules/battery/NavigatorBattery.idl:
  • Modules/filesystem/DOMWindowFileSystem.idl:
  • Modules/filesystem/DataTransferItemFileSystem.idl:
  • Modules/filesystem/HTMLInputElementFileSystem.idl:
  • Modules/filesystem/WorkerContextFileSystem.idl:
  • Modules/gamepad/NavigatorGamepad.idl:
  • Modules/geolocation/NavigatorGeolocation.idl:
  • Modules/indexeddb/DOMWindowIndexedDatabase.idl:
  • Modules/indexeddb/WorkerContextIndexedDatabase.idl:
  • Modules/mediastream/DOMWindowMediaStream.idl:
  • Modules/mediastream/NavigatorMediaStream.idl:
  • Modules/navigatorcontentutils/NavigatorContentUtils.idl:
  • Modules/networkinfo/NavigatorNetworkInfoConnection.idl:
  • Modules/notifications/DOMWindowNotifications.idl:
  • Modules/notifications/WorkerContextNotifications.idl:
  • Modules/quota/DOMWindowQuota.idl:
  • Modules/quota/NavigatorStorageQuota.idl:
  • Modules/quota/WorkerNavigatorStorageQuota.idl:
  • Modules/speech/DOMWindowSpeech.idl:
  • Modules/speech/DOMWindowSpeechSynthesis.idl:
  • Modules/vibration/NavigatorVibration.idl:
  • Modules/webaudio/DOMWindowWebAudio.idl:
  • Modules/webdatabase/DOMWindowWebDatabase.idl:
  • Modules/webdatabase/WorkerContextWebDatabase.idl:
  • Modules/websockets/DOMWindowWebSocket.idl:
  • Modules/websockets/WorkerContextWebSocket.idl:
  • bindings/scripts/IDLAttributes.txt:
  • bindings/scripts/IDLParser.pm:

(parsePartialDefinition):

  • bindings/scripts/generate-bindings.pl:
  • bindings/scripts/preprocess-idls.pl:

(getPartialInterfaceNameFromIDLFile):

  • bindings/scripts/test/TestSupplemental.idl:
  • page/DOMWindowPagePopup.idl:

Apr 25, 2013:

11:50 PM Changeset in webkit [149169] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebKit2

[GTK] Plugin process broken due to a missing symbol
https://bugs.webkit.org/show_bug.cgi?id=114901

Reviewed by Gustavo Noronha Silva.

Work around the missing symbols in the WebKitPluginProcess by specifying the required libraries
multiple times in the program's LDADD list. Libtool fights fiercely to avoid duplicate static library
references among the linker arguments (even if using the --preserve-dup-deps flag) so the required libraries
are specified in various ways.

The unresolved symbols in object files are no longer ignored as this can lead to further trouble (for instance
this patch also adds a few missing source files to the list of WebKitPluginProcess sources). The Freetype and
gamepad dependencies' libraries are also added to the binary's LDADD list.

  • GNUmakefile.am:
  • GNUmakefile.list.am: Add a few missing files to the build.
11:23 PM Changeset in webkit [149168] by mihnea@adobe.com
  • 4 edits
    2 adds in trunk

[CSS Regions] Hit testing is broken for absolutely positioned regions that have overflow: hidden
https://bugs.webkit.org/show_bug.cgi?id=113874

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/regions/hit-test-abspos-overflow-region.html

When a region is an out-of-flow positioned object with an overflow clip, we need
to make sure that hit testing works also for cases other than foreground (content)
hit testing. This patch moves the previous hit testing code, that delegated foreground
hit testing to the region's flow thread hit testing, into the hitTestContent method,
now that RenderRegion is RenderBlock based.

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::hitTestContents):

  • rendering/RenderRegion.h:

(RenderRegion):

LayoutTests:

Add test for hit-testing of border of an out-of-flow region with overflow: hidden.

  • fast/regions/hit-test-abspos-overflow-region-expected.txt: Added.
  • fast/regions/hit-test-abspos-overflow-region.html: Added.
9:51 PM Changeset in webkit [149167] by rniwa@webkit.org
  • 4 edits
    2 adds in trunk

Copy and paste can strip !important CSS rules due to a bug in mergeStyleFromRules
https://bugs.webkit.org/show_bug.cgi?id=115217

Reviewed by Darin Adler.

Source/WebCore:

The bug was caused by mergeStyleFromRules overriding "important" style rules with "unimportant" inline styles.
Fixed the bug by using addParsedProperty, which respects !important, in MutableStylePropertySet's
mergeAndOverrideOnConflict, which was only used in editing code. Now that we've fixed this function, we can use
it in ViewportStyleResolver::addViewportRule as well.

Test: editing/pasteboard/copy-paste-with-important-rules.html

  • css/StylePropertySet.cpp:

(WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict): Fixed to respect !important.

  • css/ViewportStyleResolver.cpp:

(WebCore::ViewportStyleResolver::addViewportRule): Use mergeAndOverrideOnConflict now that the code is identical.

LayoutTests:

Added a regression test.

  • editing/pasteboard/copy-paste-with-important-rules-expected.txt: Added.
  • editing/pasteboard/copy-paste-with-important-rules.html: Added.
9:50 PM Changeset in webkit [149166] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Remove support for Chromium from build/update scripts
https://bugs.webkit.org/show_bug.cgi?id=115218

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-25
Reviewed by Darin Adler.

  • Scripts/build-webkit:

(writeCongrats):

  • Scripts/update-webkit:
7:47 PM Changeset in webkit [149165] by mhahnenberg@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

SuperRegion doesn't call deallocate() on its PageReservation
https://bugs.webkit.org/show_bug.cgi?id=115208

Reviewed by Geoffrey Garen.

It should. This doesn't cause us to leak physical memory, but it does cause us to leak virtual
address space (and probably mach ports), which is also bad :-( FixedVMPoolExecutableAllocator
also has this bug, but it doesn't matter much because there's only one instance of that class
throughout the entire lifetime of the process, whereas each VM has its own SuperRegion.

  • heap/SuperRegion.cpp:

(JSC::SuperRegion::~SuperRegion):

  • heap/SuperRegion.h:

(SuperRegion):

  • jit/ExecutableAllocatorFixedVMPool.cpp:

(FixedVMPoolExecutableAllocator):
(JSC::FixedVMPoolExecutableAllocator::~FixedVMPoolExecutableAllocator):

7:30 PM Changeset in webkit [149164] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

Remove support for Chromium from api-test
https://bugs.webkit.org/show_bug.cgi?id=115211

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-25
Reviewed by Dirk Pranke.

  • Scripts/build-api-tests:
  • Scripts/run-api-tests:

(isSupportedPlatform):

6:38 PM Changeset in webkit [149163] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Get rid of Chromium in build-dumprendertree
https://bugs.webkit.org/show_bug.cgi?id=115212

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-25
Reviewed by Dirk Pranke.

  • Scripts/build-dumprendertree:
6:18 PM Changeset in webkit [149162] by fpizlo@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

DFG doesn't support to_jsnumber
https://bugs.webkit.org/show_bug.cgi?id=115129

Reviewed by Geoffrey Garen.

Based on Oliver's patch. Implements to_jsnumber as Identity(Number:@thingy), and then does
an optimization in Fixup to turn Identity(Number:) into Identity(Int32:) if the predictions
tell us to. Identity is later turned into Phantom.

Also fixed BackPropMask, which appeared to have NodeDoesNotExit included in it. That's
wrong; NodeDoesNotExit is not a backward propagation property.

Also fixed Identity to be marked as CanExit (i.e. not NodeDoesNotExit).

This more than doubles the FPS on ammo.

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGCapabilities.h:

(JSC::DFG::canCompileOpcode):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(FixupPhase):
(JSC::DFG::FixupPhase::observeUseKindOnNode):
(JSC::DFG::FixupPhase::observeUseKindOnEdge):

  • dfg/DFGNodeFlags.h:

(DFG):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

5:50 PM Changeset in webkit [149161] by mrowe@apple.com
  • 4 edits in trunk/Source

Versioning.

5:49 PM Changeset in webkit [149160] by mrowe@apple.com
  • 1 copy in tags/Safari-537.39

New tag.

5:41 PM Changeset in webkit [149159] by oliver@apple.com
  • 21 edits
    12 adds in trunk

Add support for Math.imul
https://bugs.webkit.org/show_bug.cgi?id=115143

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Add support for Math.imul, a thunk generator for Math.imul,
and an intrinsic.

Fairly self explanatory set of changes, DFG intrinsics simply
leverages the existing ValueToInt32 nodes.

  • create_hash_table:
  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGBackwardsPropagationPhase.cpp:

(JSC::DFG::BackwardsPropagationPhase::propagate):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleIntrinsic):

  • dfg/DFGCSEPhase.cpp:

(JSC::DFG::CSEPhase::performNodeCSE):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNodeType.h:

(DFG):

  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileArithIMul):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • jit/ThunkGenerators.cpp:

(JSC::imulThunkGenerator):
(JSC):

  • jit/ThunkGenerators.h:

(JSC):

  • runtime/Intrinsic.h:
  • runtime/MathObject.cpp:

(JSC):
(JSC::mathProtoFuncIMul):

  • runtime/VM.cpp:

(JSC::thunkGeneratorForIntrinsic):

LayoutTests:

Add a bunch of tests for Math.imul

  • fast/js/Object-getOwnPropertyNames-expected.txt:
  • fast/js/imul-expected.txt: Added.
  • fast/js/imul.html: Added.
  • fast/js/regress/imul-double-only-expected.txt: Added.
  • fast/js/regress/imul-double-only.html: Added.
  • fast/js/regress/imul-int-only-expected.txt: Added.
  • fast/js/regress/imul-int-only.html: Added.
  • fast/js/regress/imul-mixed-expected.txt: Added.
  • fast/js/regress/imul-mixed.html: Added.
  • fast/js/regress/script-tests/imul-double-only.js: Added.

(f):

  • fast/js/regress/script-tests/imul-int-only.js: Added.

(f):

  • fast/js/regress/script-tests/imul-mixed.js: Added.

(f):

  • fast/js/script-tests/Object-getOwnPropertyNames.js:
  • fast/js/script-tests/imul.js: Added.

(testIMul):

5:40 PM Changeset in webkit [149158] by fpizlo@apple.com
  • 15 edits in trunk/Source

Unreviewed, roll out http://trac.webkit.org/changeset/148999
It broke http://kripken.github.io/ammo.js/examples/new/ammo.html

Source/JavaScriptCore:

(JSC::BytecodeGenerator::emitNewArray):
(JSC::BytecodeGenerator::emitThrowReferenceError):
(JSC::BytecodeGenerator::emitReadOnlyExceptionIfNeeded):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::shouldEmitProfileHooks):
(BytecodeGenerator):

  • bytecompiler/NodesCodegen.cpp:

(JSC):
(JSC::NullNode::emitBytecode):
(JSC::BooleanNode::emitBytecode):
(JSC::NumberNode::emitBytecode):
(JSC::StringNode::emitBytecode):
(JSC::IfNode::emitBytecode):
(JSC::IfElseNode::emitBytecode):

  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createIfStatement):
(ASTBuilder):

  • parser/NodeConstructors.h:

(JSC):
(JSC::NullNode::NullNode):
(JSC::BooleanNode::BooleanNode):
(JSC::NumberNode::NumberNode):
(JSC::StringNode::StringNode):
(JSC::IfNode::IfNode):
(JSC::IfElseNode::IfElseNode):

  • parser/Nodes.h:

(JSC::ExpressionNode::isPure):
(JSC::ExpressionNode::isSubtract):
(StatementNode):
(NullNode):
(JSC::NullNode::isNull):
(BooleanNode):
(JSC::BooleanNode::isPure):
(NumberNode):
(JSC::NumberNode::value):
(JSC::NumberNode::isPure):
(StringNode):
(JSC::StringNode::isPure):
(JSC::StringNode::isString):
(BinaryOpNode):
(IfNode):
(JSC):
(IfElseNode):
(ContinueNode):
(BreakNode):

  • parser/Parser.cpp:

(JSC::::parseIfStatement):

  • parser/ResultType.h:

(ResultType):

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::pureToBoolean):

  • runtime/JSCell.h:

(JSCell):

  • runtime/JSCellInlines.h:

(JSC):

Source/WTF:

  • wtf/TriState.h:
5:33 PM Changeset in webkit [149157] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

StylePropertySet::getPropertyShorthand() should return a String.
<http://webkit.org/b/115213>

Reviewed by Anders Carlsson.

Return a String directly from getPropertyShorthand() instead of forcing clients
to call getPropertyNameString().

  • css/PropertySetCSSStyleDeclaration.cpp:

(WebCore::PropertySetCSSStyleDeclaration::getPropertyShorthand):

  • css/StylePropertySet.cpp:

(WebCore::StylePropertySet::getPropertyShorthand):

  • css/StylePropertySet.h:

(StylePropertySet):

5:27 PM Changeset in webkit [149156] by Chris Fleizach
  • 13 edits in trunk

WEB SPEECH: language support does not work as expected
https://bugs.webkit.org/show_bug.cgi?id=115119

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Make the Mac platform synthesizer have access to all the voices installed on the system.

  • WebCore.exp.in:
  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Source/WebKit/mac:

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

WebKitLibraries:

  • WebKitSystemInterface.h:
4:33 PM Changeset in webkit [149155] by Chris Fleizach
  • 11 edits
    2 adds in trunk

Source/WebCore: <meter> element not exposed to accessibility
https://bugs.webkit.org/show_bug.cgi?id=109023
rdar://problem/13658964

Reviewed by Tim Horton.

Makes the <meter> element appear in the AX tree by reusing the
AccessibilityProgressIndicator element to handle either progress or meter
elements.

Test: accessibility/meter-element.html

  • accessibility/AXObjectCache.cpp:

(WebCore::createFromRenderer):
(WebCore::AXObjectCache::getOrCreate):

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::canHaveChildren):
(WebCore::AccessibilityNodeObject::visibleText):

  • accessibility/AccessibilityProgressIndicator.cpp:

(WebCore::AccessibilityProgressIndicator::AccessibilityProgressIndicator):
(WebCore::AccessibilityProgressIndicator::create):
(WebCore::AccessibilityProgressIndicator::valueForRange):
(WebCore::AccessibilityProgressIndicator::maxValueForRange):
(WebCore::AccessibilityProgressIndicator::minValueForRange):
(WebCore::AccessibilityProgressIndicator::progressElement):
(WebCore::AccessibilityProgressIndicator::meterElement):

  • accessibility/AccessibilityProgressIndicator.h:

(AccessibilityProgressIndicator):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::firstChild):
(WebCore::AccessibilityRenderObject::lastChild):

These methods are modified to handle when there is no rendered children, but there are Node
children. The node children are desired when calculating text within a node, for example.

LayoutTests: <meter> element not exposed to accessibility
https://bugs.webkit.org/show_bug.cgi?id=109023

Reviewed by Tim Horton.

  • accessibility/meter-element-expected.txt: Added.
  • accessibility/meter-element.html: Added.
  • platform/mac/accessibility/role-subrole-roledescription-expected.txt:
  • platform/mac/accessibility/role-subrole-roledescription.html:
4:10 PM Changeset in webkit [149154] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

PreciseJumpTargets should treat loop_hint as a jump target
https://bugs.webkit.org/show_bug.cgi?id=115209

Reviewed by Mark Hahnenberg.

I didn't add a test but I turned this into a release assertion. Running Octane is enough
to trigger it.

  • bytecode/PreciseJumpTargets.cpp:

(JSC::computePreciseJumpTargets):

  • dfg/DFGByteCodeParser.cpp:

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

4:06 PM Changeset in webkit [149153] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[CSS Shaders] Remove the meshType from the CustomFilterOperation
https://bugs.webkit.org/show_bug.cgi?id=102529

Patch by Qiankun Miao <qiankun.miao@intel.com> on 2013-04-25
Reviewed by Dean Jackson.

No new tests, no new functionality.

MeshType can be accessed from program, so remove the m_meshType
related code in CustomFilterOperation.

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):

  • platform/graphics/filters/CustomFilterOperation.cpp:

(WebCore::CustomFilterOperation::CustomFilterOperation):
(WebCore::CustomFilterOperation::blend):

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore::CustomFilterOperation::create):
(WebCore::CustomFilterOperation::meshType):
(CustomFilterOperation):
(WebCore::CustomFilterOperation::operator==):

  • platform/graphics/texmap/coordinated/CoordinatedCustomFilterOperation.h:

(WebCore::CoordinatedCustomFilterOperation::CoordinatedCustomFilterOperation):

3:52 PM Changeset in webkit [149152] by commit-queue@webkit.org
  • 10 edits
    9 adds in trunk

Source/JavaScriptCore: Fix problems with processing negative zero on DFG.
https://bugs.webkit.org/show_bug.cgi?id=113862

Patch by Roman Zhuykov <zhroma@ispras.ru> on 2013-04-25
Reviewed by Filip Pizlo.

Fix NodeNeedsNegZero flag propagation in BackwardPropagationPhase.
Function arithNodeFlags should not mask NodeNeedsNegZero flag for ArithNegate and DoubleAsInt32
nodes and this flag should be always used to decide where we need to generate nezative-zero checks.
Remove unnecessary negative-zero checks from integer ArithDiv on ARM.
Also remove such checks from integer ArithMod on ARM and X86, and make them always to
check not only "modulo_result == 0" but also "dividend < 0".
Generate faster code for case when ArithMod operation divisor is constant power of 2 on ARMv7
in the same way as on ARMv7s, and add negative-zero checks into this code when needed.
Change speculationCheck ExitKind from Overflow to NegativeZero where applicable.

This shows 30% speedup of math-spectral-norm, and 5% speedup
on SunSpider overall on ARMv7 Linux.

  • assembler/MacroAssemblerARM.h:

(JSC::MacroAssemblerARM::branchConvertDoubleToInt32):

  • assembler/MacroAssemblerARMv7.h:

(JSC::MacroAssemblerARMv7::branchConvertDoubleToInt32):

  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::branchConvertDoubleToInt32):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchConvertDoubleToInt32):

  • assembler/MacroAssemblerX86Common.h:

(JSC::MacroAssemblerX86Common::branchConvertDoubleToInt32):

  • dfg/DFGBackwardsPropagationPhase.cpp:

(JSC::DFG::BackwardsPropagationPhase::isNotNegZero):
(JSC::DFG::BackwardsPropagationPhase::isNotPosZero):
(JSC::DFG::BackwardsPropagationPhase::propagate):

  • dfg/DFGNode.h:

(JSC::DFG::Node::arithNodeFlags):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileDoubleAsInt32):
(JSC::DFG::SpeculativeJIT::compileSoftModulo):
(JSC::DFG::SpeculativeJIT::compileArithNegate):

LayoutTests: Arithmetic operations with negative zero should be optimized correclty.
https://bugs.webkit.org/show_bug.cgi?id=113862

Patch by Roman Zhuykov <zhroma@ispras.ru> on 2013-04-25
Reviewed by Filip Pizlo.

  • fast/js/regress/negative-zero-divide-expected.txt: Added.
  • fast/js/regress/negative-zero-divide.html: Added.
  • fast/js/regress/negative-zero-modulo-expected.txt: Added.
  • fast/js/regress/negative-zero-modulo.html: Added.
  • fast/js/regress/negative-zero-negate-expected.txt: Added.
  • fast/js/regress/negative-zero-negate.html: Added.
  • fast/js/regress/script-tests/negative-zero-divide.js: Added.

(foo):

  • fast/js/regress/script-tests/negative-zero-modulo.js: Added.

(foo):

  • fast/js/regress/script-tests/negative-zero-negate.js: Added.

(foo):

3:51 PM Changeset in webkit [149151] by tkent@chromium.org
  • 7 edits in trunk

Ignore invalid regular expressions for input[pattern].
https://bugs.webkit.org/show_bug.cgi?id=115204

Reviewed by Darin Adler.

Source/WebCore:

According to the specification, we should not proceed regular expression
matching if a pattern attribute value is an invalid regular
expression. We had a bug that invalid expressions such as
pattern=")foo(" made RegularExpression objects successfully.

http://www.whatwg.org/specs/web-apps/current-work/multipage/common-input-element-attributes.html#the-pattern-attribute

If an input element has a pattern attribute specified, and the
attribute's value, when compiled as a JavaScript regular expression with
the global, ignoreCase, and multiline flags disabled (see ECMA262
Edition 5, sections 15.10.7.2 through 15.10.7.4), compiles successfully,
then the resulting regular expression is the element's compiled pattern
regular expression. If the element has no such attribute, or if the
value doesn't compile successfully, then the element has no compiled
pattern regular expression.

This imports a part of Blink r148951.

Tests: Update fast/forms/ValidityState-patternMismatch.html

  • html/BaseTextInputType.cpp:

(WebCore::BaseTextInputType::patternMismatch):
Check correctness of pattern attribute value before wrapping with parentheses.

  • platform/text/RegularExpression.cpp:

(WebCore::RegularExpression::isValid): Added.

  • platform/text/RegularExpression.h:

(RegularExpression): Declare isValid.

LayoutTests:

  • fast/forms/ValidityState-patternMismatch-expected.txt:
  • fast/forms/ValidityState-patternMismatch.html:
3:50 PM Changeset in webkit [149150] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Fix 32bit build

3:37 PM Changeset in webkit [149149] by Simon Fraser
  • 2 edits in trunk/Source/WebKit/mac

Build fix for smart compliers.

Reviewed by Tim Horton.

[NSDictionary dictionaryWithObjectsAndKeys:] returns an NSDictionary,
not a NSMutableDictionary.

  • WebCoreSupport/WebEditorClient.mm:

(WebEditorClient::updateSpellingUIWithGrammarString):

3:25 PM Changeset in webkit [149148] by ap@apple.com
  • 8 edits in trunk/Tools

Pass relatedPage when creating a page in WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=115206

Reviewed by Geoffrey Garen.

To make sure that window.open() opens in the same process even when using multiple processes.

  • WebKitTestRunner/PlatformWebView.h:
  • WebKitTestRunner/TestController.cpp: (WTR::TestController::createOtherPage): (WTR::TestController::createWebViewWithOptions):
  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp: (WTR::PlatformWebView::PlatformWebView):
  • WebKitTestRunner/gtk/PlatformWebViewGtk.cpp: (WTR::PlatformWebView::PlatformWebView):
  • WebKitTestRunner/mac/PlatformWebViewMac.mm: (-[TestRunnerWKView initWithFrame:contextRef:pageGroupRef:relatedToPage:useTiledDrawing:]): (WTR::PlatformWebView::PlatformWebView):
  • WebKitTestRunner/qt/PlatformWebViewQt.cpp: (WTR::PlatformWebView::PlatformWebView):
  • WebKitTestRunner/win/PlatformWebViewWin.cpp: (WTR::PlatformWebView::PlatformWebView):
3:23 PM Changeset in webkit [149147] by andersca@apple.com
  • 5 edits in trunk/Source/WebKit2

Rename DecidePolicyForResponse message to DecidePolicyForResponseSync
https://bugs.webkit.org/show_bug.cgi?id=115207

Reviewed by Beth Dakin.

In preparation for adding a new async DecidePolicyForResponse message,
rename the current one to DecidePolicyForResponseSync. Also split out the async part
into a separate WebPageProxy::decidePolicyForResponse member function.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::receivedPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForResponse):
(WebKit::WebPageProxy::decidePolicyForResponseSync):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForResponse):

3:17 PM Changeset in webkit [149146] by oliver@apple.com
  • 4 edits in trunk/Source

Stack guards are too conservative
https://bugs.webkit.org/show_bug.cgi?id=115147

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

Increase stack guard to closer to old size.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::StackPolicy::StackPolicy):

Source/WTF:

Use getrlimit on darwin to get the stack size for the main thread.

  • wtf/StackBounds.cpp:

(WTF::StackBounds::initialize):

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

[BlackBerry] Selection overlay on non-composited iframes are incorrectly positioned.
https://bugs.webkit.org/show_bug.cgi?id=115197

Patch by Andrew Lo <anlo@rim.com> on 2013-04-25
Reviewed by Rob Buis.

When drawing the selection overlay, the rects to
paint when selecting text on non-composited sub-frames
need to be adjusted by the frame position.

  • WebKitSupport/SelectionOverlay.cpp:

(BlackBerry::WebKit::SelectionOverlay::paintContents):

2:29 PM Changeset in webkit [149144] by Antoine Quint
  • 2 edits in trunk/Source/WebCore

Glyphs may fail to render when using SVG font
https://bugs.webkit.org/show_bug.cgi?id=115193

Reviewed by Simon Fraser.

Calling SimpleFontData::applyTransforms() when the font used is
an SVG font makes little sense since Core Text doesn’t know or
understand SVG fonts and would be passed some other, unrelated
platform font.

  • platform/graphics/SimpleFontData.h:

(WebCore::SimpleFontData::applyTransforms):

2:21 PM Changeset in webkit [149143] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Fix autocompletion for Benjamin. The Bugzilla email address must come first.

  • Scripts/webkitpy/common/config/contributors.json:
2:02 PM Changeset in webkit [149142] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

Media elements shouldn't resume playback when a page is restored from the back/forward cache if the WKView isn't in a window
https://bugs.webkit.org/show_bug.cgi?id=115191

Reviewed by Eric Carlson.

If a page is suspended, then resumed when its WebView or WKView has been removed from a window,
the page's media elements will unpause. Check whether media is allowed to start during resume()
via Page::canMediaStart() and if not, register for mediaCanStart notifications. Then, in
mediaCanStart() if the media is force-paused, unpause it.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::suspend):
(WebCore::HTMLMediaElement::resume):
(WebCore::HTMLMediaElement::mediaCanStart):

  • html/HTMLMediaElement.h:

(WebCore::HTMLMediaElement::pageConsentRequiredForResume):

2:01 PM Changeset in webkit [149141] by ap@apple.com
  • 2 edits in trunk/LayoutTests

Update a comment, mentioning a newly filed bug.

  • platform/wk2/TestExpectations:
1:37 PM Changeset in webkit [149140] by akling@apple.com
  • 7 edits in trunk/Source

Remove ENABLE(PARSED_STYLE_SHEET_CACHING) and make it always-on.

Rubber-stamped by Anders Koivisto.

Source/WebCore:

  • PlatformWinCE.cmake:
  • accessibility/AccessibilityObject.h:
  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setCSSStyleSheet):

Source/WebKit:

  • PlatformWinCE.cmake:

Source/WebKit/blackberry:

  • WebCoreSupport/AboutDataEnableFeatures.in:

Source/WTF:

  • wtf/FeatureDefines.h:
1:26 PM Changeset in webkit [149139] by Patrick Gansterer
  • 5 edits in trunk/Source

Remove OS(WINCE) from AccessibilityObject.h
https://bugs.webkit.org/show_bug.cgi?id=115192

Reviewed by Andreas Kling.

Use the same files like the the other PLATFORM(WIN) ports use.

Source/WebCore:

  • PlatformWinCE.cmake:
  • accessibility/AccessibilityObject.h:

(AccessibilityObject):

Source/WebKit:

  • PlatformWinCE.cmake:
1:11 PM Changeset in webkit [149138] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Add definition of GlyphBufferGlyph for BlackBerry
https://bugs.webkit.org/show_bug.cgi?id=115183

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-04-25
Reviewed by Xan Lopez.

BlackBerry uses an unsigned int.

  • platform/graphics/GlyphBuffer.h:

(WebCore):

1:02 PM Changeset in webkit [149137] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Make scroll position adjustment work with pages with fixed position elements.
https://bugs.webkit.org/show_bug.cgi?id=115178

Patch by Iris Wu <shuwu@blackberry.com> on 2013-04-25
Reviewed by Rob Buis.

PR 308796

Currently the position WebPage::adjustDocumentScrollPosition adjusts is the top
left point of the viewport.
On the page with fixed position elements, we want it to adjust the position beneath
the fixed elements so it can be always visible.

The basic idea is:

  1. Detect if there are fixed position elements before going through ProximityDetector.
  2. If the fixed element exists, calculate its the size and the actual visible position

beneath it.

  1. Pass the position to ProximityDetector. Then according to the new position we get,

calculate the top left position of the viewport (final scroll position).

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::fixedElementSizeDelta):
(WebKit):

  • Api/WebPage.h:
  • Api/WebPageCompositor.cpp:

(BlackBerry::WebKit::WebPageCompositorPrivate::findFixedElementRect):
(WebKit):

  • Api/WebPageCompositor_p.h:

(WebPageCompositorPrivate):

1:00 PM Changeset in webkit [149136] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Stack guards are too conservative
https://bugs.webkit.org/show_bug.cgi?id=115147

Reviewed by Geoffrey Garen.

Reduce the limits and simplify the decision making.

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::StackPolicy::StackPolicy):

12:56 PM Changeset in webkit [149135] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Enable balanced page group load deferrer behaviour.
https://bugs.webkit.org/show_bug.cgi?id=115189

Patch by Mike Lattanzio <mlattanzio@blackberry.com> on 2013-04-25
Reviewed by Rob Buis.

Prevent a possible deadlock by enabling balanced deferrers.
Internally reviewed by: Joe Mason
PR 329986

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::init):

12:54 PM Changeset in webkit [149134] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

JSC: Fix interpreter misbehavior in builds with JIT disabled
https://bugs.webkit.org/show_bug.cgi?id=115190

Patch by Nick Diego Yamane <nick.yamane@openbossa.org> on 2013-04-25
Reviewed by Oliver Hunt.

Commit http://trac.webkit.org/changeset/147858 modified
some details on how JS stack traces are built. The method
"getLineNumberForCallFrame", renamed in that changeset to
"getBytecodeOffsetForCallFrame" is always returning `0' when
JIT is disabled

How to reproduce:

  • Build webkit with JIT disabled
  • Open MiniBrowser, for example, with http://google.com
  • In a debug build, WebProcess will hit the following ASSERT: Source/JavaScriptCore/bytecode/UnlinkedCodeBlock.cpp:279 ASSERT(low);
  • interpreter/Interpreter.cpp:

(JSC::getBytecodeOffsetForCallFrame):

12:50 PM Changeset in webkit [149133] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix. Forgot to merge args.

  • Scripts/webkitpy/tool/bot/irc_command.py:

(Hi.execute):

12:44 PM Changeset in webkit [149132] by rniwa@webkit.org
  • 2 edits in trunk/Tools

webkitbot should recognize its own nickname in greetings.
https://bugs.webkit.org/show_bug.cgi?id=115196

Reviewed by Andreas Kling.

Make webkitbot recognize other forms of its nick. Also be tolerant of spaces between the nick and !.

  • Scripts/webkitpy/tool/bot/irc_command.py:

(Hi.execute):

12:31 PM Changeset in webkit [149131] by Joseph Pecoraro
  • 21 edits
    2 adds
    2 deletes in trunk

ScriptExecutionContext log exception should include a column number
https://bugs.webkit.org/show_bug.cgi?id=114315

Reviewed by Oliver Hunt.

Source/WebCore:

Test: inspector/console/console-exception-stack-traces.html

  • bindings/js/ScriptCallStackFactory.h:
  • bindings/js/ScriptCallStackFactory.cpp:

(WebCore::createScriptCallStackFromException):
Generate a ScriptCallStack from an exception. Use the vm.exceptionStack
if available, and fallback to the exception object where needed.

  • bindings/js/JSDOMBinding.cpp:

(WebCore::reportException):
Always include a non-empty call stack with exceptions.
Where not provided, fallback to the exception object.

  • dom/Document.h:
  • dom/Document.cpp:

(WebCore::Document::logExceptionToConsole):

  • dom/ScriptExecutionContext.h:
  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::PendingException::PendingException):
(ScriptExecutionContext::PendingException):
(WebCore::ScriptExecutionContext::reportException):

  • workers/DefaultSharedWorkerRepository.cpp:
  • workers/SharedWorkerContext.cpp:

(WebCore::SharedWorkerContext::logExceptionToConsole):

  • workers/SharedWorkerContext.h:
  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::logExceptionToConsole):

  • workers/WorkerContext.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerExceptionTask::performTask):
Plumb columnNumber through as needed.

LayoutTests:

  • inspector/console/console-exception-stack-traces-expected.txt: Added.
  • inspector/console/console-exception-stack-traces.html: Added.

Verifies that exceptions have stack traces and match a console.trace stack.

  • http/tests/inspector-enabled/console-exception-while-no-inspector-expected.txt: Removed.
  • http/tests/inspector-enabled/console-exception-while-no-inspector.html: Removed.

We now save exception backtraces even if the inspector is not open.

  • fast/dom/javascript-url-exception-isolation-expected.txt
  • fast/events/remove-target-with-shadow-in-drag-expected.txt
  • fast/events/set-attribute-listener-window-onerror-crash-expected.txt
  • inspector-protocol/media-query-listener-exception-expected.txt:
  • inspector/console/console-uncaught-exception-expected.txt:
  • inspector/console/console-uncaught-exception-in-eval-expected.txt:

Update results that now include backtraces or different data. Most better, some worse.

12:02 PM WebKitIDL edited by Christophe Dumez
[Callback] only applies to parameters, not interfaces (diff)
11:59 AM Changeset in webkit [149130] by oliver@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Make checkSyntax take a VM instead of an ExecState

RS=Tim

11:57 AM WebKitIDL edited by Christophe Dumez
Update [Callback] extended attribute doc due to r149113 (diff)
11:50 AM Changeset in webkit [149129] by gman@chromium.org
  • 5 edits in trunk/Source/WebCore

Fix build files so WebGLDebugXXX extensions can be used if enabled.
https://bugs.webkit.org/show_bug.cgi?id=113976

Reviewed by Dean Jackson.

No new tests as no new functionality.

  • DerivedSources.make:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSWebGLRenderingContextCustom.cpp:
11:35 AM Changeset in webkit [149128] by msaboff@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

32 Bit: Crash due to RegExpTest nodes not setting result type to Boolean
https://bugs.webkit.org/show_bug.cgi?id=115188

Reviewed by Geoffrey Garen.

Changed the RegExpTest node to set the AbstractValue to boolean, since that
what it is.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

11:33 AM Changeset in webkit [149127] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

cloneChildNodes looks for deleteButtonController in each level of recursion
https://bugs.webkit.org/show_bug.cgi?id=115146

Reviewed by Andreas Kling.

Obtain the delete button controller upfront, and shallow copy descendents of each child
so that we don't look for the delete button controller inside cloneNode called on each child.

Performance Tests: DOM/CloneNodes.html

  • dom/ContainerNode.cpp:

(WebCore::cloneChildNodesAvoidingDeleteButon): Extracted.
(WebCore::ContainerNode::cloneChildNodes):

11:32 AM Changeset in webkit [149126] by rniwa@webkit.org
  • 8 edits in trunk

HTMLOptionsCollection's namedItem and name getter should return the first item
https://bugs.webkit.org/show_bug.cgi?id=115150

Reviewed by Andreas Kling.

Source/WebCore:

Following the resolution in http://lists.whatwg.org/pipermail/whatwg-whatwg.org/2012-December/038355.html,
the spefication has been updated to only return the first item when there are multiple items of the same name
in HTMLOptionsCollection; this new behavior matches that of Firefox and Opera (Presto).

Implement this new behavior to remove the custom binding code and use the fast path in namedItem and name
getter of HTMLOptionsCollection. (Obtaining all items for a given name is expensive!).

Tests: fast/dom/HTMLSelectElement/named-options.html

fast/dom/html-collections-named-getter.html

  • bindings/js/JSHTMLOptionsCollectionCustom.cpp:

(WebCore): Removed the custom bindings for name getter and namedItem.

  • html/HTMLOptionsCollection.idl:

LayoutTests:

Changed the expectations of the tests.

  • fast/dom/HTMLSelectElement/named-options-expected.txt:
  • fast/dom/HTMLSelectElement/script-tests/named-options.js:
  • fast/dom/html-collections-named-getter-expected.txt:
  • fast/dom/html-collections-named-getter.html:
11:31 AM Changeset in webkit [149125] by Joseph Pecoraro
  • 59 edits
    1 move
    3 adds
    1 delete in trunk

Web Inspector: ConsoleMessage should include line and column number where possible
https://bugs.webkit.org/show_bug.cgi?id=114929

Source/WebCore:

  • adds "m_column" to WebCore::ConsoleMessage
  • adds "column" to Console.ConsoleMessage in the inspector protocol
  • set the column number for console.* functions (Console.cpp)
  • set the column number for XSLT errors (XSLTProcessor)
  • plumb columnNumber everywhere else it is needed, set it to 0 and file bugs for all cases missing columnNumber that could provide it.

Reviewed by Timothy Hatcher.

Test: inspector/console/console-url-line-column.html

inspector/console/console-messages-stack-traces.html

  • inspector/ConsoleMessage.h:
  • inspector/ConsoleMessage.cpp:

(WebCore::ConsoleMessage::ConsoleMessage):
(WebCore::ConsoleMessage::autogenerateMetadata):
(WebCore::ConsoleMessage::addToFrontend):
(WebCore::ConsoleMessage::isEqual):
Add m_column and set it where appropriate.

  • inspector/Inspector.json:

Add column property to Console.ConsoleMessage.

  • page/Console.cpp:

(WebCore::internalAddMessage):
(WebCore::Console::profile):
Set columnNumber like lineNumber from the last stack frame.
(WebCore::Console::groupEnd):
Line and column are unused in this message type, set both to 0.

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::parseErrorFunc):

  • xml/XSLTProcessorQt.cpp:

(WebCore::XSLTMessageHandler::handleMessage):
Add real column numbers, the XSLT handlers already had it available.

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • css/CSSParser.cpp:

(WebCore::CSSParser::logError):

  • dom/ScriptExecutionContext.h:
  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::addConsoleMessage):

  • dom/Document.cpp:

(WebCore::Document::logExceptionToConsole):
(WebCore::Document::addMessage):

  • dom/Document.h:
  • inspector/InspectorConsoleAgent.cpp:

(WebCore::InspectorConsoleAgent::addMessageToConsole):
(WebCore::InspectorConsoleAgent::stopTiming):
(WebCore::InspectorConsoleAgent::didFinishXHRLoading):
(WebCore::InspectorConsoleAgent::didReceiveResponse):
(WebCore::InspectorConsoleAgent::didFailLoading):

  • inspector/InspectorConsoleAgent.h:
  • inspector/InspectorConsoleInstrumentation.h:

(WebCore::InspectorInstrumentation::addMessageToConsole):
(WebCore::InspectorInstrumentation::addStartProfilingMessageToConsole):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
(WebCore::InspectorInstrumentation::addStartProfilingMessageToConsoleImpl):
(WebCore::InspectorInstrumentation::addProfileImpl):

  • inspector/InspectorInstrumentation.h:

(InspectorInstrumentation):

  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::addProfile):
(WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
(WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
(WebCore::InspectorProfilerAgent::start):
(WebCore::InspectorProfilerAgent::stop):

  • inspector/InspectorProfilerAgent.h:

(InspectorProfilerAgent):

  • loader/EmptyClients.h:

(WebCore::EmptyChromeClient::addMessageToConsole):

  • page/ChromeClient.h:

(WebCore::ChromeClient::addMessageToConsole):

  • page/ContentSecurityPolicy.cpp:

(WebCore::ContentSecurityPolicy::logToConsole):

  • page/PageConsole.cpp:

(WebCore::PageConsole::addMessage):

  • page/PageConsole.h:
  • workers/DefaultSharedWorkerRepository.cpp:

(SharedWorkerProxy):
(WebCore::postExceptionTask):
(WebCore::SharedWorkerProxy::postExceptionToWorkerObject):
(WebCore::postConsoleMessageTask):
(WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):

  • workers/SharedWorkerContext.cpp:

(WebCore::SharedWorkerContext::logExceptionToConsole):

  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::logExceptionToConsole):
(WebCore::WorkerContext::addConsoleMessage):
(WebCore::WorkerContext::addMessage):
(WebCore::WorkerContext::addMessageToWorkerConsole):

  • workers/WorkerContext.h:
  • workers/WorkerMessagingProxy.cpp:

(WebCore::WorkerExceptionTask::create):
(WebCore::WorkerExceptionTask::WorkerExceptionTask):
(WebCore::WorkerExceptionTask::performTask):
(WorkerExceptionTask):
(WebCore::WorkerMessagingProxy::postExceptionToWorkerObject):
(WebCore::postConsoleMessageTask):
(WebCore::WorkerMessagingProxy::postConsoleMessageToWorkerObject):

  • workers/WorkerMessagingProxy.h:

(WorkerMessagingProxy):

  • workers/WorkerReportingProxy.h:

(WorkerReportingProxy):
Plumb columnNumber through where appropriate. File bugs where missing.

Source/WebKit/blackberry:

Reviewed by Timothy Hatcher.

  • Api/DumpRenderTreeClient.h:
  • Api/WebPageClient.h:
  • WebCoreSupport/ChromeClientBlackBerry.cpp:

(WebCore::ChromeClientBlackBerry::addMessageToConsole):

  • WebCoreSupport/ChromeClientBlackBerry.h:

(ChromeClientBlackBerry):

Source/WebKit/efl:

Reviewed by Timothy Hatcher.

  • WebCoreSupport/ChromeClientEfl.cpp:

(WebCore::ChromeClientEfl::addMessageToConsole):

  • WebCoreSupport/ChromeClientEfl.h:

(ChromeClientEfl):

Source/WebKit/gtk:

Reviewed by Timothy Hatcher.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::ChromeClient::addMessageToConsole):

  • WebCoreSupport/ChromeClientGtk.h:

(ChromeClient):

Source/WebKit/mac:

Reviewed by Timothy Hatcher.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

(WebChromeClient::addMessageToConsole):

Source/WebKit/qt:

Reviewed by Timothy Hatcher.

  • WebCoreSupport/ChromeClientQt.cpp:

(WebCore::ChromeClientQt::addMessageToConsole):

  • WebCoreSupport/ChromeClientQt.h:

Source/WebKit/win:

Reviewed by Timothy Hatcher.

  • WebCoreSupport/WebChromeClient.cpp:

(WebChromeClient::addMessageToConsole):

  • WebCoreSupport/WebChromeClient.h:

Source/WebKit/wince:

Reviewed by Timothy Hatcher.

  • WebCoreSupport/ChromeClientWinCE.cpp:

(WebKit::ChromeClientWinCE::addMessageToConsole):

  • WebCoreSupport/ChromeClientWinCE.h:

Source/WebKit2:

Reviewed by Timothy Hatcher.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::addMessageToConsole):

  • WebProcess/WebCoreSupport/WebChromeClient.h:

LayoutTests:

Update a test that was outputting the url and line number of console
method calls, to output the column number as well. Added a test that
verifies that console API messages have stack traces if appropriate.

Reviewed by Timothy Hatcher.

  • inspector/console/console-url-and-line-expected.txt: Removed.
  • inspector/console/console-url-line-column-expected.txt: Added.
  • inspector/console/console-url-line-column.html: Renamed from LayoutTests/inspector/console/console-url-and-line.html.
  • inspector/console/console-messages-stack-traces-expected.txt: Added.
  • inspector/console/console-messages-stack-traces.html: Added.
11:29 AM Changeset in webkit [149124] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Get rid of return in void method
https://bugs.webkit.org/show_bug.cgi?id=115186

Patch by Konrad Piascik <kpiascik@blackberry.com> on 2013-04-25
Reviewed by Rob Buis.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPage::setForcedTextEncoding):

11:19 AM Changeset in webkit [149123] by allan.jensen@digia.com
  • 5 edits in trunk/Source

[Qt] Animated opacity does not trigger accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=115107

Reviewed by Simon Fraser.

Source/WebCore:

Add extra option to also trigger compositing on animated opacity.

  • page/ChromeClient.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):

Source/WebKit/qt:

We should trigger compositing on animated opacity as it is always faster on Qt.

  • WebCoreSupport/ChromeClientQt.cpp:

VideoTrigger removed because we have already disabled AC for video in qwebsettings.

11:09 AM Changeset in webkit [149122] by Alexandru Chiculita
  • 1 edit in trunk/Tools/Scripts/webkitpy/common/config/contributors.json

Unreviewed. Adding myself to the reviwers list.

10:59 AM Changeset in webkit [149121] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

Thread safety issues in WKCustomProtocol.
<rdar://problem/13247304> and https://bugs.webkit.org/show_bug.cgi?id=115185

Reviewed by Alexey Proskuryakov.

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:
  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(WebKit::CustomProtocolManager::addCustomProtocol): Protect m_customProtocolMap with its mutex.
(WebKit::CustomProtocolManager::removeCustomProtocol): Ditto.
(WebKit::CustomProtocolManager::didFailWithError):
(WebKit::CustomProtocolManager::didLoadData):
(WebKit::CustomProtocolManager::didReceiveResponse):
(WebKit::CustomProtocolManager::didFinishLoading):
(WebKit::CustomProtocolManager::protocolForID): Protect m_customProtocolMap with its mutex, and return

a RetainPtr instead of a raw pointer.

10:48 AM Changeset in webkit [149120] by commit-queue@webkit.org
  • 4 edits
    3 adds in trunk

Sec-WebSocket-Extensions header field must not appear more than once in an HTTP response.
https://bugs.webkit.org/show_bug.cgi?id=115128

Patch by Lamarque V. Souza <Lamarque.Souza@basyskom.com> on 2013-04-25
Reviewed by Alexey Proskuryakov.

Source/WebCore:

According to WebSocket specification Sec-WebSocket-Extensions header field
must not appear more than once in an HTTP response. It is ok if it appears
more than once in client request. Also add a check for invalid UTF-8
characters when parsing Sec-WebSocket-Extensions quoted string.

Test: http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header.html

  • Modules/websockets/WebSocketExtensionParser.cpp:

(WebCore::WebSocketExtensionParser::consumeQuotedString): Return false if there is
invalid character in the quoted string being parsed.

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::WebSocketHandshake::readHTTPHeaders): Check if Sec-WebSocket-Extensions
appears more than once in header response. Abort handshake if it does.

LayoutTests:

  • http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header-expected.txt: Added.
  • http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header.html: Added.
  • http/tests/websocket/tests/hybi/handshake-fail-by-more-extensions-header_wsh.py: Added.
10:31 AM Changeset in webkit [149119] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebKit2

Further build fixes: correct two more misnames of WebProcessShim.dyld.

  • WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:

(WebKit::WebContentProcessMainDelegate::doPreInitializationWork):

  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
10:12 AM Changeset in webkit [149118] by mrobinson@webkit.org
  • 2 edits in trunk/Source/WebKit2

Make gobject-introspection warnings non-fatal
https://bugs.webkit.org/show_bug.cgi?id=115184

Reviewed by Carlos Garcia Campos.

  • GNUmakefile.am: Make it so that gobject-introspection errors do not fail the buld

until we get to a point where gobject-introspection gives consistent warnings.

9:46 AM Changeset in webkit [149117] by Carlos Garcia Campos
  • 14 edits
    4 adds in trunk/Source/WebKit2

[GTK] Add WebKitWebViewGroup to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=111265

Reviewed by Anders Carlsson.

In the current API the settings are always shared by all web
views, because they are always created on the default page
group. This makes impossible to have different settings on
different web views. Expose the page group in the API,
so that users can create web views on a group different than the
default one to have their own settings.

  • GNUmakefile.list.am: Add new files to compilation.
  • UIProcess/API/gtk/WebKitSettings.cpp:

(webkitSettingsGetPreferences): Helper private method to get the
WebPreferences wrapped by a WebKitSettings object.

  • UIProcess/API/gtk/WebKitSettingsPrivate.h:
  • UIProcess/API/gtk/WebKitWebContext.cpp:

(_WebKitWebContextPrivate): Add a default WebKitWebViewGroup.
(webkitWebContextCreatePageForWebView): Create the WebPageProxy
with the WebPageGroup of the given WebKitWebViewGroup.
(webkitWebContextGetDefaultWebViewGroup): Helper private method to
get the default WebKitWebViewGroup.

  • UIProcess/API/gtk/WebKitWebContextPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(_WebKitWebViewPrivate): Add a WebKitWebViewGroup in case the view
is created with a group.
(webkitWebViewUpdateSettings): Keep a reference of the group
settings to be able to disconnect the signals when the settings
object is replaced in the view group and connect to the signals
for the custom settings.
(webkitWebViewSettingsChanged): Disconnect the signals for the
previous settings and set the new settings.
(webkitWebViewDisconnectSettingsChangedSignalHandler): Disconnect
notify::settings signal of WebKitWebViewGroup.
(webkitWebViewConstructed): Pass the current WebKitWebViewGroup to
webkitWebContextCreatePageForWebView().
(webkitWebViewSetProperty): Add setter for group property.
(webkitWebViewGetProperty): Add getter for group property.
(webkitWebViewDispose): Call
webkitWebViewDisconnectSettingsChangedSignalHandler().
(webkit_web_view_class_init): Add WebKitWebView:group property.
(webkitWebViewHandleAuthenticationChallenge): Use
webkit_web_view_get_settings().
(webkit_web_view_new_with_group): Create a new web view with the
given WebKitWebViewGroup.
(webkit_web_view_get_group): Return the current WebKitWebViewGroup
or the default one if the view was not created with
webkit_web_view_new_with_group().
(webkit_web_view_set_settings): Set the settings of the current
WebKitWebViewGroup.
(webkit_web_view_get_settings): Get the settings of the current
WebKitWebViewGroup.
(webkit_web_view_set_zoom_level): Use
webkit_web_view_get_settings().
(webkit_web_view_get_zoom_level): Ditto.

  • UIProcess/API/gtk/WebKitWebView.h:
  • UIProcess/API/gtk/WebKitWebViewGroup.cpp: Added.

(_WebKitWebViewGroupPrivate):
(webkitWebViewGroupSetProperty):
(webkitWebViewGroupGetProperty):
(webkitWebViewGroupConstructed):
(webkit_web_view_group_class_init):
(webkitWebViewGroupAttachSettingsToPageGroup): Set the
WebPreferences of the current WebKitSettings to the WebPageGroup.
(webkitWebViewGroupCreate): Create a new WebKitWebViewGroup for
the given WebPageGroup.
(webkitWebViewGroupGetPageGroup): Helper private method to get the
WebPageGroup wrapped by the WebKitWebViewGroup.
(webkit_web_view_group_new): Create a new WebKitWebViewGroup.
(webkit_web_view_group_get_name): Return the name of a
WebKitWebViewGroup.
(webkit_web_view_group_get_settings): Get the settings of a
WebKitWebViewGroup.
(webkit_web_view_group_set_settings): Set new settings of a
WebKitWebViewGroup.

  • UIProcess/API/gtk/WebKitWebViewGroup.h: Added.

(_WebKitWebViewGroup):
(_WebKitWebViewGroupClass):

  • UIProcess/API/gtk/WebKitWebViewGroupPrivate.h: Added.
  • UIProcess/API/gtk/docs/webkit2gtk-docs.sgml: Add

WebKitWebViewGroup section.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
  • UIProcess/API/gtk/docs/webkit2gtk.types: Add

webkit_web_view_group_get_type.

  • UIProcess/API/gtk/tests/GNUmakefile.am: Add new files to

compilation.

  • UIProcess/API/gtk/tests/TestWebKitWebView.cpp:

(testWebViewSettings): We can't watch settings in the default view
group anymore, because they are not released with the web view but
with the web context that is freed after the Test destructor.

  • UIProcess/API/gtk/tests/TestWebKitWebViewGroup.cpp: Added.

(testWebViewGroupDefault):
(testWebViewGroupNewGroup):
(testWebViewNewWithGroup):
(testWebViewGroupSettings):
(beforeAll):
(afterAll):

  • UIProcess/API/gtk/webkit2.h: Include WebKitWebViewGroup.h.
9:39 AM Changeset in webkit [149116] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[Windows] Compile fix.
https://bugs.webkit.org/show_bug.cgi?id=115170

Patch by peavo@outlook.com <peavo@outlook.com> on 2013-04-25
Reviewed by Filip Pizlo.

Forward declare function, instead of including intrin.h.

  • wtf/Atomics.h:
9:32 AM Changeset in webkit [149115] by rakuco@webkit.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r148758): Remove WTFLogAlways call from IconLoader.
https://bugs.webkit.org/show_bug.cgi?id=115182

Reviewed by Dan Bernstein.

The call added in r148758 was apparently a leftover from some debugging
session, and it makes the Interactive/window-resize.html performance
test randomly fail on Qt and EFL due to WTFLogAlways writing to stderr.

  • loader/icon/IconLoader.cpp:

(WebCore::IconLoader::notifyFinished):

9:18 AM Changeset in webkit [149114] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

REGRESSION(r137994): Random crashes occur with SH4 JSC.
https://bugs.webkit.org/show_bug.cgi?id=115167.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-04-25
Reviewed by Oliver Hunt.

Since r137994, uncommited pages could be inside the area of memory in
parameter of the cacheFlush function. That's why we have to flush each
page separately to avoid a fail of the whole flush, if an uncommited page
is in the area.

This patch is very similar to changeset 145194 made for ARMv7 architecture,
see https://bugs.webkit.org/show_bug.cgi?id=111441 for further information.

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::cacheFlush):

8:55 AM Changeset in webkit [149113] by Christophe Dumez
  • 32 edits in trunk/Source/WebCore

Add support for Web IDL callback interfaces to the bindings generator
https://bugs.webkit.org/show_bug.cgi?id=115179

Reviewed by Kentaro Hara.

Add support in the bindings generator for Web IDL callback interfaces:
http://dev.w3.org/2006/webapi/WebIDL/#dfn-callback-interface

Drop support for the WebKit-specific [Callback] extended attributes
on Web IDL interfaces and update existing IDL files to use proper
callback interfaces instead.

No new tests, no behavior change.

  • Modules/filesystem/EntriesCallback.idl:
  • Modules/filesystem/EntryCallback.idl:
  • Modules/filesystem/ErrorCallback.idl:
  • Modules/filesystem/FileCallback.idl:
  • Modules/filesystem/FileSystemCallback.idl:
  • Modules/filesystem/FileWriterCallback.idl:
  • Modules/filesystem/MetadataCallback.idl:
  • Modules/geolocation/PositionCallback.idl:
  • Modules/geolocation/PositionErrorCallback.idl:
  • Modules/mediastream/NavigatorUserMediaErrorCallback.idl:
  • Modules/mediastream/NavigatorUserMediaSuccessCallback.idl:
  • Modules/mediastream/RTCErrorCallback.idl:
  • Modules/mediastream/RTCSessionDescriptionCallback.idl:
  • Modules/mediastream/RTCStatsCallback.idl:
  • Modules/notifications/NotificationPermissionCallback.idl:
  • Modules/quota/StorageErrorCallback.idl:
  • Modules/quota/StorageQuotaCallback.idl:
  • Modules/quota/StorageUsageCallback.idl:
  • Modules/webaudio/AudioBufferCallback.idl:
  • Modules/webdatabase/DatabaseCallback.idl:
  • Modules/webdatabase/SQLStatementCallback.idl:
  • Modules/webdatabase/SQLStatementErrorCallback.idl:
  • Modules/webdatabase/SQLTransactionCallback.idl:
  • Modules/webdatabase/SQLTransactionErrorCallback.idl:
  • Modules/webdatabase/SQLTransactionSyncCallback.idl:
  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateInterface):

  • bindings/scripts/IDLParser.pm:

(parseCallbackRestOrInterface):

  • bindings/scripts/test/TestCallback.idl:
  • dom/RequestAnimationFrameCallback.idl:
  • dom/StringCallback.idl:
  • html/VoidCallback.idl:
8:17 AM Changeset in webkit [149112] by mikhail.pozdnyakov@intel.com
  • 2 edits in trunk/Source/WTF

Use std::move in AtomicString
https://bugs.webkit.org/show_bug.cgi?id=115102

Reviewed by Anders Carlsson.

Use std::move in AtomicString instead of direct casting to rvalue references.

  • wtf/text/AtomicString.h:

(AtomicString):
(WTF::AtomicString::AtomicString):
(WTF::AtomicString::operator=):

7:52 AM Changeset in webkit [149111] by commit-queue@webkit.org
  • 8 edits
    1 copy in trunk

[GStreamer] Add audio/speex MIME type as supported
https://bugs.webkit.org/show_bug.cgi?id=115032

Patch by Adrian Perez de Castro <Adrian Perez de Castro> on 2013-04-25
Reviewed by Philippe Normand.

Source/WebCore:

GStreamer has support for the Speex codec (http://www.speex.org).
Speex streams may be embedded in a Ogg container, or standalone.
The case of the Ogg container is already covered by the "*/ogg"
MIME types declared as supported by the GStreamer media playing
code, but for standalone streams to work, "audio/speex" has to
be added.

With this, and the needed GStreamer plugin installed, the GTK+
launcher is able to correctly play Speex streams served with
"Content-type: audio/speex".

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

LayoutTests:

Speex (http://www.speex.org) streams can be embedded into Ogg
Ogg containers, so add a check for it in the test case.

  • media/media-can-play-ogg-expected.txt:
  • media/media-can-play-ogg.html:
  • platform/blackberry/media/media-can-play-ogg-expected.txt:
  • platform/mac/media/media-can-play-ogg-expected.txt:
  • platform/qt-linux/media/media-can-play-ogg-expected.txt:
  • platform/win/media/media-can-play-ogg-expected.txt:
7:33 AM Changeset in webkit [149110] by akling@apple.com
  • 9 edits in trunk/Source/WebCore

Add FINAL decorators to the InlineBox class hierarchy.
<http://webkit.org/b/115177>

Reviewed by Antti Koivisto.

From Blink r148628 by <cevans@chromium.org>:

FINAL is a macro in wtf/Compiler.h that does the correct thing if the compiler does not support "final")
The approach used is as simple as possible whilst being thorough.
So, leaf classes have FINAL applied to the whole class whereas intermediary classes have FINAL applied to relevant methods.

FINAL allows a compiler to devirtualize call sites and turn them into direct calls. As you might expect, this is perf positive:
(clang on Linux):

  • line_layout.html goes from 120 runs/s -> 123 runs/2, +2.5%
  • html5-full-render.html goes from 3176ms -> 3162ms, +0.4%

I have confidence that the former result is statistically significant (as the numbers are very very stable) but not the latter.

  • rendering/EllipsisBox.h:
  • rendering/InlineFlowBox.h:
  • rendering/InlineTextBox.h:
  • rendering/RootInlineBox.h:
  • rendering/TrailingFloatsRootInlineBox.h:
  • rendering/svg/SVGInlineFlowBox.h:
  • rendering/svg/SVGInlineTextBox.h:
  • rendering/svg/SVGRootInlineBox.h:
7:19 AM Changeset in webkit [149109] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Tools/gtk/install-dependencies added ragel dependency
https://bugs.webkit.org/show_bug.cgi?id=115163

Patch by Xavier Castano <xcastanho@igalia.com> on 2013-04-25
Reviewed by Xan Lopez.

The install-dependencies script was missing a dependency on ragel
which is expected when building HarfBuzz.

  • gtk/install-dependencies: Added a dependency on ragel for both

apt and yum.

7:05 AM Changeset in webkit [149108] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Remove pango from optional jhbuild dependencies
https://bugs.webkit.org/show_bug.cgi?id=115162

Patch by Eduardo Lima Mitev <elima@igalia.com> on 2013-04-25
Reviewed by Martin Robinson.

Pango is not needed since revision r148293 that lowers the pango
dependency to 1.30, which is available in most distributions.

  • gtk/jhbuild-optional.modules: Removes description of pango module.
6:46 AM Changeset in webkit [149107] by jer.noble@apple.com
  • 5 edits in trunk/Source/WebKit2

Unreviewed build fix: Fix the name of DyldInterpose.h in
SecItemShimLibrary.mm, fix the name of WebProcessShim.dyld in
WebContentServiceEntryPoint.mm, and stop linking against libWTF.a
directly (which means removing ASSERTs from
CookieStorageShimLibrary.cpp).

  • Shared/mac/CookieStorageShimLibrary.cpp:

(WebKit::shimCFHTTPCookieStorageCopyRequestHeaderFieldsForURL):
(WebKit::WebKitCookieStorageShimInitialize):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):

  • WebProcess/mac/SecItemShimLibrary.mm:
6:43 AM Changeset in webkit [149106] by akling@apple.com
  • 4 edits
    4 adds in trunk

CSS parser: Add error recovery while parsing @-webkit-keyframes key values.
<http://webkit.org/b/115175>

Source/WebCore:

From Blink r148714 by <apavlov@chromium.org>:

If not a percentage, "from", or "to" value is used in a key list, the rule is erroneous,
and due to the absense of recovery, the parser skips the following, valid CSS rule.

On a related note, keyframes, whose selectors contain invalid keys, should be discarded
altogether, according to <http://www.w3.org/TR/css3-animations/#keyframes>

Tests: animations/keyframes-invalid-keys.html

fast/css/webkit-keyframes-errors.html

  • css/CSSGrammar.y.in:
  • css/CSSParser.cpp:

(WebCore::CSSParser::rewriteSpecifiers):

LayoutTests:

From Blink r148714 by <apavlov@chromium.org>.

  • animations/keyframes-invalid-keys-expected.txt: Added.
  • animations/keyframes-invalid-keys.html: Added.
  • fast/css/webkit-keyframes-errors-expected.html: Added.
  • fast/css/webkit-keyframes-errors.html: Added.
6:23 AM Changeset in webkit [149105] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

REGRESSION (r147797): Animations slideshows of images on www.thesuperficial.com are slow
https://bugs.webkit.org/show_bug.cgi?id=115172

Reviewed by Andreas Kling.

On this page ads dynamically loaded to subframes on slideshow navigation switch us to state where we throttle layer flushes.

Fix by ignoring any subframe-originated loads when determining throttling.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadProgressingStatusChanged):

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::isMainLoadProgressing):

Rename, ignore subframe originated loads. Subframe loads that are initiated during the main load still count.

  • loader/ProgressTracker.h:

(ProgressTracker):

  • page/FrameView.cpp:

(WebCore::FrameView::updateLayerFlushThrottlingInAllFrames):

  • page/FrameView.h:

(FrameView):

  • rendering/RenderLayerBacking.cpp:

(WebCore::computeTileCoverage):

6:10 AM Changeset in webkit [149104] by kadam@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip some failing tests after r148996.

  • platform/qt/TestExpectations:
6:04 AM Changeset in webkit [149103] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove Chromium-specific cases from FeatureList.pm
https://bugs.webkit.org/show_bug.cgi?id=115169

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-25
Reviewed by Andreas Kling.

  • Scripts/webkitperl/FeatureList.pm:
5:56 AM Changeset in webkit [149102] by akling@apple.com
  • 4 edits
    2 adds in trunk

SVG: Fix viewBox animations on shapes with non-scaling-stroke.
<http://webkit.org/b/115173>

Source/WebCore:

From Blink r149058 by <pdr@chromium.org>:

Previously hasAttribute() to determine if a viewBox was set in the transform
code for non-scaling-strokes. hasAttribute() should not be used in this case,
as it will return false if the attribute is not set but the value is animating.

This patch switches to checking if the viewBox is empty instead of checking for
the presence of the attribute.

Test: svg/stroke/animated-non-scaling-stroke.html

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::localCoordinateSpaceTransform):

  • svg/SVGSVGElement.h:

(WebCore::SVGSVGElement::hasEmptyViewBox):

LayoutTests:

From Blink r149058 by <pdr@chromium.org>.

  • svg/stroke/animated-non-scaling-stroke-expected.html: Added.
  • svg/stroke/animated-non-scaling-stroke.html: Added.
5:32 AM Changeset in webkit [149101] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Remove isPluginElement hack in Document::setFocusedNode()
<http://webkit.org/b/115171>

From Blink r148800 by <tkent@chromium.org>:

This hack is no longer necessary because r147591 made isFocusable for plugin
elements work correctly.

  • dom/Document.cpp:

(WebCore::Document::setFocusedNode):

5:13 AM Changeset in webkit [149100] by kadam@inf.u-szeged.hu
  • 4 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip now passing tests.

  • platform/qt-5.0-wk1/TestExpectations:
  • platform/qt-5.0-wk2/TestExpectations:
  • platform/qt/TestExpectations:
3:49 AM Changeset in webkit [149099] by kadam@inf.u-szeged.hu
  • 23 edits
    22 copies
    8 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Organize expected files after r149095.

  • platform/qt-5.0-wk1/editing/deleting/delete-by-word-002-expected.txt: Copied from LayoutTests/platform/qt/editing/deleting/delete-by-word-002-expected.txt.
  • platform/qt-5.0-wk1/editing/deleting/delete-cell-contents-expected.txt: Copied from LayoutTests/platform/qt/editing/deleting/delete-cell-contents-expected.txt.
  • platform/qt-5.0-wk1/editing/execCommand/button-expected.txt: Copied from LayoutTests/platform/qt/editing/execCommand/button-expected.txt.
  • platform/qt-5.0-wk1/editing/execCommand/createLink-expected.txt: Copied from LayoutTests/platform/qt/editing/execCommand/createLink-expected.txt.
  • platform/qt-5.0-wk1/editing/execCommand/indent-pre-expected.txt: Copied from LayoutTests/platform/qt/editing/execCommand/indent-pre-expected.txt.
  • platform/qt-5.0-wk1/editing/execCommand/unlink-expected.txt: Copied from LayoutTests/platform/qt/editing/execCommand/unlink-expected.txt.
  • platform/qt-5.0-wk1/editing/input/emacs-ctrl-o-expected.txt: Copied from LayoutTests/platform/qt/editing/input/emacs-ctrl-o-expected.txt.
  • platform/qt-5.0-wk1/editing/inserting/insert-before-link-1-expected.txt: Copied from LayoutTests/platform/qt/editing/inserting/insert-before-link-1-expected.txt.
  • platform/qt-5.0-wk1/editing/pasteboard/display-block-on-spans-expected.txt: Copied from LayoutTests/platform/qt/editing/pasteboard/display-block-on-spans-expected.txt.
  • platform/qt-5.0-wk1/editing/pasteboard/emacs-cntl-y-001-expected.txt: Copied from LayoutTests/platform/qt/editing/pasteboard/emacs-cntl-y-001-expected.txt.
  • platform/qt-5.0-wk1/editing/pasteboard/merge-end-list-2-expected.txt: Copied from LayoutTests/platform/qt/editing/pasteboard/merge-end-list-2-expected.txt.
  • platform/qt-5.0-wk1/editing/pasteboard/merge-end-table-2-expected.txt: Copied from LayoutTests/platform/qt/editing/pasteboard/merge-end-table-2-expected.txt.
  • platform/qt-5.0-wk1/editing/pasteboard/page-zoom-expected.txt: Copied from LayoutTests/platform/qt/editing/pasteboard/page-zoom-expected.txt.
  • platform/qt-5.0-wk1/editing/selection/extend-selection-word-expected.txt: Copied from LayoutTests/platform/qt/editing/selection/extend-selection-word-expected.txt.
  • platform/qt-5.0-wk1/editing/style/apply-through-end-of-document-expected.txt: Copied from LayoutTests/platform/qt/editing/style/apply-through-end-of-document-expected.txt.
  • platform/qt-5.0-wk1/editing/style/remove-underline-across-paragraph-expected.txt: Copied from LayoutTests/platform/qt/editing/style/remove-underline-across-paragraph-expected.txt.
  • platform/qt-5.0-wk1/editing/style/remove-underline-across-paragraph-in-bold-expected.txt: Copied from LayoutTests/platform/qt/editing/style/remove-underline-across-paragraph-in-bold-expected.txt.
  • platform/qt-5.0-wk1/editing/style/remove-underline-expected.txt: Copied from LayoutTests/platform/qt/editing/style/remove-underline-expected.txt.
  • platform/qt-5.0-wk1/editing/style/remove-underline-from-stylesheet-expected.txt: Copied from LayoutTests/platform/qt/editing/style/remove-underline-from-stylesheet-expected.txt.
  • platform/qt-5.0-wk1/editing/style/remove-underline-in-bold-expected.txt: Copied from LayoutTests/platform/qt/editing/style/remove-underline-in-bold-expected.txt.
  • platform/qt-5.0-wk1/editing/style/unbold-in-bold-expected.txt: Copied from LayoutTests/platform/qt/editing/style/unbold-in-bold-expected.txt.
  • platform/qt-5.0-wk1/editing/undo/replace-text-in-node-preserving-markers-crash-expected.txt: Copied from LayoutTests/platform/qt/editing/undo/replace-text-in-node-preserving-markers-crash-expected.txt.
  • platform/qt/editing/deleting/delete-by-word-002-expected.txt:
  • platform/qt/editing/deleting/delete-cell-contents-expected.txt:
  • platform/qt/editing/execCommand/button-expected.txt:
  • platform/qt/editing/execCommand/createLink-expected.txt:
  • platform/qt/editing/execCommand/indent-pre-expected.txt:
  • platform/qt/editing/execCommand/unlink-expected.txt:
  • platform/qt/editing/input/emacs-ctrl-o-expected.txt:
  • platform/qt/editing/inserting/insert-before-link-1-expected.txt:
  • platform/qt/editing/pasteboard/display-block-on-spans-expected.txt:
  • platform/qt/editing/pasteboard/emacs-cntl-y-001-expected.txt:
  • platform/qt/editing/pasteboard/merge-end-list-2-expected.txt:
  • platform/qt/editing/pasteboard/merge-end-table-2-expected.txt:
  • platform/qt/editing/pasteboard/page-zoom-expected.txt:
  • platform/qt/editing/selection/extend-selection-word-expected.txt:
  • platform/qt/editing/style/apply-through-end-of-document-expected.txt:
  • platform/qt/editing/style/remove-underline-across-paragraph-expected.txt:
  • platform/qt/editing/style/remove-underline-across-paragraph-in-bold-expected.txt:
  • platform/qt/editing/style/remove-underline-expected.txt:
  • platform/qt/editing/style/remove-underline-from-stylesheet-expected.txt:
  • platform/qt/editing/style/remove-underline-in-bold-expected.txt:
  • platform/qt/editing/style/unbold-in-bold-expected.txt:
  • platform/qt/editing/undo/replace-text-in-node-preserving-markers-crash-expected.txt:
2:51 AM Changeset in webkit [149098] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

EventSource: Synchronous loader callback not handled properly
https://bugs.webkit.org/show_bug.cgi?id=115104

Source/WebCore:

When attempting a cross-origin request towards a non-HTTP URL, an early verification
of the protocol scheme will cause didFailAccessControlCheck to be called synchronously
before the loader has even finished being created. This special case was not handled
properly, since we tried to cancel a non-existing loader, which resulted in a crash.
In addition to checking whether a request is in flight before trying to cancel it,
this change also schedules the initial creation of the loader to happen asynchronously
when an EventSource is constructed, so that a script can register for the error event
before it is dispatched (as a result of passing a non-HTTP URL to the constructor).

Patch by Per-Erik Brodin <per-erik.brodin@ericsson.com> on 2013-04-25
Reviewed by Alexey Proskuryakov.

Test: http/tests/eventsource/eventsource-cors-non-http.html

  • page/EventSource.cpp:

(WebCore::EventSource::EventSource):
(WebCore::EventSource::create):
(WebCore::EventSource::scheduleInitialConnect):
(WebCore):
(WebCore::EventSource::scheduleReconnect):
(WebCore::EventSource::connectTimerFired):
(WebCore::EventSource::close):
(WebCore::EventSource::abortConnectionAttempt):

  • page/EventSource.h:

(EventSource):

LayoutTests:

Patch by Per-Erik Brodin <per-erik.brodin@ericsson.com> on 2013-04-25
Reviewed by Alexey Proskuryakov.

  • http/tests/eventsource/eventsource-cors-non-http-expected.txt: Added.
  • http/tests/eventsource/eventsource-cors-non-http.html: Added.
2:43 AM Changeset in webkit [149097] by Patrick Gansterer
  • 2 edits in trunk/Source/WTF

Unreviewed WinCE build fix after r148888.

  • wtf/Atomics.h: WinCE version of intrin.h is called cmnintrin.h.
2:42 AM Changeset in webkit [149096] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Unreviewed WinCE build fix after r148545.

  • page/wince/FrameWinCE.cpp:
1:01 AM Changeset in webkit [149095] by kadam@inf.u-szeged.hu
  • 7 edits
    21 adds in trunk/LayoutTests

[Qt] Unreviewed gardening. Added platform specific expected files after r148987.

  • platform/qt/editing/deleting/delete-by-word-002-expected.txt: Added.
  • platform/qt/editing/deleting/delete-cell-contents-expected.txt: Added.
  • platform/qt/editing/execCommand/button-expected.txt: Added.
  • platform/qt/editing/execCommand/createLink-expected.txt: Added.
  • platform/qt/editing/execCommand/indent-pre-expected.txt: Added.
  • platform/qt/editing/execCommand/unlink-expected.txt: Added.
  • platform/qt/editing/input/emacs-ctrl-o-expected.png:
  • platform/qt/editing/input/emacs-ctrl-o-expected.txt:
  • platform/qt/editing/inserting/insert-before-link-1-expected.txt: Added.
  • platform/qt/editing/pasteboard/display-block-on-spans-expected.txt: Added.
  • platform/qt/editing/pasteboard/emacs-cntl-y-001-expected.png:
  • platform/qt/editing/pasteboard/emacs-cntl-y-001-expected.txt:
  • platform/qt/editing/pasteboard/merge-end-list-2-expected.txt: Added.
  • platform/qt/editing/pasteboard/merge-end-table-2-expected.txt: Added.
  • platform/qt/editing/pasteboard/page-zoom-expected.txt: Added.
  • platform/qt/editing/selection/extend-selection-word-expected.txt: Added.
  • platform/qt/editing/selection/selection-extend-should-not-move-across-caret-on-mac-expected.txt: Added.
  • platform/qt/editing/style/apply-through-end-of-document-expected.txt: Added.
  • platform/qt/editing/style/make-text-writing-direction-inline-win-expected.txt: Added.
  • platform/qt/editing/style/remove-underline-across-paragraph-expected.txt: Added.
  • platform/qt/editing/style/remove-underline-across-paragraph-in-bold-expected.txt: Added.
  • platform/qt/editing/style/remove-underline-expected.txt: Added.
  • platform/qt/editing/style/remove-underline-from-stylesheet-expected.txt: Added.
  • platform/qt/editing/style/remove-underline-in-bold-expected.txt: Added.
  • platform/qt/editing/style/unbold-in-bold-expected.png:
  • platform/qt/editing/style/unbold-in-bold-expected.txt:
  • platform/qt/editing/undo/replace-text-in-node-preserving-markers-crash-expected.txt: Added.
12:50 AM Changeset in webkit [149094] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

Unreviewed, rolling out r149032.
http://trac.webkit.org/changeset/149032
https://bugs.webkit.org/show_bug.cgi?id=115151

EFL WK1 API test has been broken after r149032 (Requested by
gyuyoung on #webkit).

  • tests/test_ewk_setting.cpp:

(TEST_F):

Apr 24, 2013:

11:42 PM Changeset in webkit [149093] by tkent@chromium.org
  • 5 edits in trunk

Back references don't work in pattern attribute
https://bugs.webkit.org/show_bug.cgi?id=105875

Reviewed by Geoffrey Garen.

Source/WebCore:

This imports a part of Blink r148951.

Tests: Update fast/forms/ValidityState-patternMismatch.html

  • html/BaseTextInputType.cpp:

(WebCore::BaseTextInputType::patternMismatch):
Don't use capturing parentheses. They affected back references in
pattern attribute values.

LayoutTests:

  • fast/forms/ValidityState-patternMismatch-expected.txt:
  • fast/forms/ValidityState-patternMismatch.html:
10:41 PM Changeset in webkit [149092] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove checking chromium from run-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=115139

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-24
Reviewed by Benjamin Poulain.

  • Scripts/run-webkit-tests:

(useNewRunWebKitTests):

10:30 PM Changeset in webkit [149091] by timothy_horton@apple.com
  • 5 edits in trunk/Source

PDFPlugin: Cursor should become an i-beam when over selectable text
https://bugs.webkit.org/show_bug.cgi?id=115018
<rdar://problem/12645012>

Reviewed by Alexey Proskuryakov.

  • WebProcess/Plugins/PDF/PDFPlugin.h:

Add updateCursor(), the UpdateCursorMode and HitTestResult enums, and
storage for the last PDF hit test result.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::updateCursor):
Hit test the PDF. If there is a word under the cursor, use the I-beam cursor,
otherwise, use the default pointer cursor. This approximates PDFKit's behavior,
though does not match it precisely in the case of annotations.
Only send the cursor update to the UIProcess if it is a change, or if
we're explicitly asked to update.
(WebKit::PDFPlugin::handleMouseEvent):
If we're processing a mouse moved event, update the cursor if needed.
(WebKit::PDFPlugin::handleMouseEnterEvent):
If the cursor just moved over the PDFPlugin, force-update the cursor,
even if it matches the previously-set cursor (because something else
likely updated the cursor while it was not over the PDFPlugin).

  • WebCore.exp.in: Export the I-beam and arrow cursors.
9:56 PM Changeset in webkit [149090] by roger_fong@apple.com
  • 1 edit
    559 adds
    297 deletes in trunk/LayoutTests

Roll out AppleWin re-baselines from r149088.

7:59 PM Changeset in webkit [149089] by mark.lam@apple.com
  • 11 edits in trunk/Source/JavaScriptCore

Add watchdog timer polling for the DFG.
https://bugs.webkit.org/show_bug.cgi?id=115134.

Reviewed by Geoffrey Garen.

The strategy is to add a speculation check to the DFG generated code to
test if the watchdog timer has fired or not. If the watchdog timer has
fired, the generated code will do an OSR exit to the baseline JIT, and
let it handle servicing the watchdog timer.

If the watchdog is not enabled, this speculation check will not be
emitted.

  • API/tests/testapi.c:

(currentCPUTime_callAsFunction):
(extendTerminateCallback):
(main):

  • removed try/catch statements so that we can test the watchdog on the DFG.
  • added JS bindings to a native currentCPUTime() function so that the timeout tests can be more accurate.
  • also shortened the time values so that the tests can complete sooner.
  • bytecode/ExitKind.h:
  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGByteCodeParser.cpp:

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

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:

(JSC::DFG::PredictionPropagationPhase::propagate):

  • dfg/DFGSpeculativeJIT32_64.cpp:

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

  • dfg/DFGSpeculativeJIT64.cpp:

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

  • runtime/Watchdog.cpp:

(JSC::Watchdog::setTimeLimit):

7:44 PM Changeset in webkit [149088] by roger_fong@apple.com
  • 103 edits
    2046 adds
    1760 deletes in trunk/LayoutTests

Unreviewed optimize-baselines for mac and win.

7:09 PM Changeset in webkit [149087] by Simon Fraser
  • 17 edits in trunk/Tools

Pixel tests in SVG are all broken in WK2
https://bugs.webkit.org/show_bug.cgi?id=114218

Reviewed by Darin Adler.

Window snapshots in WebKitTestRunner on Mac are window-sized
(800x600), which is wrong for the W3C SVG tests that require a
480x360 snapshot.

Fix by resizing the window, as well as the web view in
PlatformWebView::resizeTo() so that window snapshots are correctly
sized.

Also do some drive-by cleanup of the window size constants in both
DRT and WTR to remove magic numbers, and make the code more similar.

  • DumpRenderTree/TestRunner.cpp:

(TestRunner::setShouldPaintBrokenImage):

  • DumpRenderTree/TestRunner.h:
  • DumpRenderTree/efl/DumpRenderTree.cpp:
  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(webInspectorShowWindow):

  • DumpRenderTree/mac/DumpRenderTree.mm:

(createWebViewAndOffscreenWindow):
(sizeWebViewForCurrentTest):

  • DumpRenderTree/mac/DumpRenderTreeMac.h:
  • DumpRenderTree/mac/PixelDumpSupportMac.mm:

(createPagedBitmapContext):

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp:

(DumpRenderTree::DumpRenderTree):
(DumpRenderTree::open):

  • DumpRenderTree/qt/TestRunnerQt.cpp:
  • DumpRenderTree/qt/TestRunnerQt.h:
  • DumpRenderTree/win/DumpRenderTree.cpp:

(sizeWebViewForCurrentTest):

  • DumpRenderTree/wx/DumpRenderTreeWx.cpp:
  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::resetStateToConsistentValues):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::sizeWebViewForCurrentTest):

  • WebKitTestRunner/mac/PlatformWebViewMac.mm:

(WTR::PlatformWebView::PlatformWebView):
(WTR::PlatformWebView::resizeTo):

6:32 PM Changeset in webkit [149086] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Page Overlays shouldn't waste time flushing layers if we're not going to use it
https://bugs.webkit.org/show_bug.cgi?id=115145

Reviewed by Simon Fraser.

Don't flush the page overlay layer when it's installed - it starts out
with paintContents=false, so we don't really need a CALayer yet. We'll
flush later if need be.

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::didInstallPageOverlay):

6:32 PM Changeset in webkit [149085] by fpizlo@apple.com
  • 5 edits
    1 add in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: AbstractValue methods that deal with watchpoints should have access to Graph, so that in debug mode, Graph can track the history of watchpoint states and detect races
https://bugs.webkit.org/show_bug.cgi?id=115084

Reviewed by Geoffrey Garen.

The idea is that as part of https://bugs.webkit.org/show_bug.cgi?id=115083, I'll have
Graph record the initial state of a watchpoint at the time that we decide to take
advantage of it; then I will use this to disable any watchpoint-related assertions
in debug mode. Note that this "watchpoint cache" will only be maintained in debug
mode, so there will be no release performance implications. But to do this, I need to
ensure that all of the places that reason about watchpoints have access to Graph.
For example, I'll want AbstractValue::setFuturePossibleStructure to record the state
of the watchpoint in Graph so that subsequent assertions can check if the watchpoint's
state had changed since that decision was made.

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::executeEffects):
(JSC::DFG::AbstractState::mergeStateAtTail):

  • dfg/DFGAbstractState.h:

(JSC::DFG::AbstractState::trySetConstant):

  • dfg/DFGAbstractValue.cpp: Added.

(DFG):
(JSC::DFG::AbstractValue::setMostSpecific):
(JSC::DFG::AbstractValue::set):
(JSC::DFG::AbstractValue::filter):
(JSC::DFG::AbstractValue::setFuturePossibleStructure):
(JSC::DFG::AbstractValue::filterFuturePossibleStructure):
(JSC::DFG::AbstractValue::dump):

  • dfg/DFGAbstractValue.h:

(DFG):
(AbstractValue):
(JSC::DFG::AbstractValue::setType):
(JSC::DFG::AbstractValue::filterByValue):

6:27 PM Changeset in webkit [149084] by Simon Fraser
  • 3 edits
    2 adds in trunk

Garbage at the top of http://www.technologyreview.com after scrolling
https://bugs.webkit.org/show_bug.cgi?id=114825

Source/WebCore:

Reviewed by Tim Horton.

Garbage pixels are caused by GraphicsLayerCA setting a layer to be opaque,
but then not painting anything into it. On this page, the element is
toggled to be visibility:hidden on scrolling, but RenderLayer::backgroundIsKnownToBeOpaqueInRect()
failed to consider that as something that can cause backgrounds not to be opaque.

For the bug to happen, some subtle interactions with r142012 come into play
for the layer to remain visible, hence the slightly complex testcase.

Test: compositing/contents-opaque/visibility-hidden.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):

LayoutTests:

Reviewed by Tim Horton.

Test that sets visibility:hidden on an element with some complex
configuration of layer children, and dumps the layer tree to check
that the contents are not marked as opaque.

  • compositing/contents-opaque/visibility-hidden-expected.txt: Added.
  • compositing/contents-opaque/visibility-hidden.html: Added.
6:27 PM Changeset in webkit [149083] by Simon Fraser
  • 2 edits in trunk/Source/WebCore

Dump layer opaqueness in the Compositing log output
https://bugs.webkit.org/show_bug.cgi?id=115132

Reviewed by Tim Horton.

It's useful to see whether we consider layers to be opaque in the Compositing
log channel output, so dump it.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::logLayerInfo):

6:26 PM Changeset in webkit [149082] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Special thunks for math functions should work on ARMv7
https://bugs.webkit.org/show_bug.cgi?id=115144

Reviewed by Gavin Barraclough and Oliver Hunt.

The only hard bit here was ensuring that we implemented the very special
"cheap C call" convention on ARMv7.

  • assembler/AbstractMacroAssembler.h:

(JSC::isARMv7s):
(JSC):
(JSC::isX86):

  • dfg/DFGCommon.h:
  • jit/SpecializedThunkJIT.h:

(SpecializedThunkJIT):
(JSC::SpecializedThunkJIT::callDoubleToDoublePreservingReturn):

  • jit/ThunkGenerators.cpp:

(JSC::floorThunkGenerator):
(JSC::ceilThunkGenerator):
(JSC::roundThunkGenerator):
(JSC::expThunkGenerator):
(JSC::logThunkGenerator):

5:51 PM Changeset in webkit [149081] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Add efl to JSInspectorFrontendHost::port()
https://bugs.webkit.org/show_bug.cgi?id=115137

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-24
Reviewed by Timothy Hatcher.

No new tests, because there is no change in behavior.

  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::JSInspectorFrontendHost::port):

5:44 PM Changeset in webkit [149080] by kangil.han@samsung.com
  • 3 edits in trunk/Source/WebCore

Function parameter quotePair can be passed by reference
https://bugs.webkit.org/show_bug.cgi?id=115089

Reviewed by Alexey Proskuryakov.

Minor performance patch.

  • rendering/style/QuotesData.cpp:

(WebCore::QuotesData::addPair):

  • rendering/style/QuotesData.h:

(QuotesData):

5:17 PM Changeset in webkit [149079] by beidson@apple.com
  • 10 edits in trunk/Source/WebCore

Implementors of CachedResource subclasses should be forced to decide if encoded data can be replaced.
https://bugs.webkit.org/show_bug.cgi?id=115140

Reviewed by Beth Dakin.

No new tests (No behavior change).

This makes mayTryReplaceEncodedData() return false in CachedResource, but overrides to true
in all CachedResource subclasses besides CachedFont (which already has an implementation).

  • loader/cache/CachedCSSStyleSheet.h:
  • loader/cache/CachedImage.h:
  • loader/cache/CachedRawResource.h:
  • loader/cache/CachedResource.h:
  • loader/cache/CachedSVGDocument.h:
  • loader/cache/CachedScript.h:
  • loader/cache/CachedShader.h:
  • loader/cache/CachedTextTrack.h:
  • loader/cache/CachedXSLStyleSheet.h:
5:10 PM Changeset in webkit [149078] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Misc bugfix and cleaning in sh4 base JIT.
https://bugs.webkit.org/show_bug.cgi?id=115022.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-04-24
Reviewed by Oliver Hunt.

Remove unused add32() and sub32() with scratchreg parameter to avoid
confusion as this function prototype means another behaviour.
Remove unused "void push(Address)" function which seems quite buggy.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::and32): Cosmetic change.
(JSC::MacroAssemblerSH4::lshift32): Cosmetic change.
(JSC::MacroAssemblerSH4::or32): Cosmetic change.
(JSC::MacroAssemblerSH4::xor32): Cosmetic change.
(MacroAssemblerSH4):
(JSC::MacroAssemblerSH4::load32): Cosmetic change.
(JSC::MacroAssemblerSH4::load8Signed): Fix invalid offset upper limit
when using r0 register and cosmetic changes.
(JSC::MacroAssemblerSH4::load8): Reuse load8Signed to avoid duplication.
(JSC::MacroAssemblerSH4::load16): Fix invalid offset upper limit when
using r0 register, fix missing offset shift and cosmetic changes.
(JSC::MacroAssemblerSH4::store32): Cosmetic change.
(JSC::MacroAssemblerSH4::branchAdd32): Store result value before branch.

4:46 PM Changeset in webkit [149077] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Further unreviewed build fix; CFNetwork.framework is the one which Lion
refuses to link against.

  • WebKit2.xcodeproj/project.pbxproj:
4:32 PM Changeset in webkit [149076] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix; link against CoreServices.framework instead of against
CoreFoundation.framework directly, to make the linker happy on Lion.

  • WebKit2.xcodeproj/project.pbxproj:
4:31 PM Changeset in webkit [149075] by ddkilzer@apple.com
  • 2 edits in trunk/LayoutTests

Fix invalid test names in jsc-test-list
<http://webkit.org/b/115136>

Reviewed by Geoffrey Garen.

This shell script finds all the invalid tests listed in
LayoutTests/fast/js/jsc-test-list:

$ for F in cat LayoutTests/fast/js/jsc-test-list; do if [ ! -f LayoutTests/$F.html ]; then echo $F; fi; done
fast/js/dfg-double-addition-simplify-to-int.html
fast/js/dfg-mul-big-integers-with-small-integer-and-bitor
fast/js/dfg-mul-big-integers-with-small-integer-and-detect-overflow
fast/js/dfg-mul-big-integers-with-small-integer
fast/js/dfg-value-to-int32-with-side-effects

  • fast/js/jsc-test-list: Fix invalid test names by removing

*.html suffix or stray "s" characters.

4:20 PM Changeset in webkit [149074] by jer.noble@apple.com
  • 9 edits
    3 copies
    2 adds in trunk/Source/WebKit2

WWDC session videos don’t play at developer.apple.com
https://bugs.webkit.org/show_bug.cgi?id=114858

Reviewed by Eric Carlson. Rubber stamped by Brady Eidson.

AVFoundation uses CFNetwork to store and retrieve cookies from the global store.
However, in the case where network access happens in the NetworkProcess, session
cookies are stored in-memory, and are not accessable in the WebProcess. Until such
a time as AVFoundation can provide an API which would allow us to provide cookies
for a specific request, we will interpose the CFNetwork method which they use to
retrieve the cookie string from the cookie store for their pending request.

Duplicate the previous SecItemShim target to a new, WebProcessShim target. This
target includes the SecItemShim functionality, but will add a new shim for cookie
retrieval:

  • Shared/mac/CookieStorageShimLibrary.h: Added

(CookieStorageShimCallbacks):

  • Shared/mac/CookieStorageShimLibrary.cpp: Added.

(WebKit::ShimProtector::ShimProtector): A simple stack-based counter class.
(WebKit::ShimProtector::~ShimProtector):
(WebKit::ShimProtector::count):
(WebKit::shimCFHTTPCookieStorageCopyRequestHeaderFieldsForURL): Interpose

the CFNetwork call, and pass to the registered callback.

(WebKit::WebKitCookieStorageShimInitialize): Register the callbacks.

Add a helper singleton class which will talk to the shim through the
registered callbacks:

  • Shared/mac/CookieStorageShim.h: Added

(WebKit::CookieStorageShim::CookieStorageShim):

  • Shared/mac/CookieStorageShim.cpp: Added.

(WebKit::webKitCookieStorageCopyRequestHeaderFieldsForURL): Pass the request

over to the NetworkProcess.

(WebKit::CookieStorageShim::shared): Simple singleton.
(WebKit::CookieStorageShim::initialize): Call the library initializer.

Initialize the shim only when the WebProcess is delegating network loading
to the NetworkProcess:

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

Rename the WebProcess's shim from SecItemShim -> WebProcessShim:

  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:

(WebKit::addDYLDEnvironmentAdditions):

  • WebProcess/EntryPoint/mac/LegacyProcess/WebContentProcessMain.mm:

(WebKit::WebContentProcessMainDelegate::doPreInitializationWork):

  • WebProcess/EntryPoint/mac/XPCService/WebContentService/Info.plist:
  • WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:

(WebContentServiceInitializer):

As the DYLD_INTERPOSE macro is used in multiple files now, put it in its
own header:

  • Shared/mac/DyldInterpose.h: Added.
  • PluginProcess/mac/PluginProcessShim.mm:
  • WebProcess/mac/SecItemShimLibrary.mm:

Add new files to the project:

  • WebKit2.xcodeproj/project.pbxproj:
3:50 PM Changeset in webkit [149073] by bw80.lee@samsung.com
  • 4 edits in trunk

[EFL] Fix build error after r148963.
https://bugs.webkit.org/show_bug.cgi?id=115126

Reviewed by Laszlo Gombos.

Generate forwarding headers for 'CoordinatedGraphics' to generate WKView.h

Source/WebKit2:

  • PlatformEfl.cmake:

Tools:

  • TestWebKitAPI/PlatformEfl.cmake:
3:42 PM Changeset in webkit [149072] by Patrick Gansterer
  • 13 edits in trunk/Source/JavaScriptCore

[WIN] Remove pthread from Visual Studio files in JavaScriptCore
https://bugs.webkit.org/show_bug.cgi?id=114864

Reviewed by Brent Fulgham.

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

DFG should keep the operand to create_this alive if it's emitting code for create_this
https://bugs.webkit.org/show_bug.cgi?id=115133

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

The DFG must model bytecode liveness, or else OSR exit is going to have a really bad time.

  • dfg/DFGByteCodeParser.cpp:

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

LayoutTests:

Reviewed by Mark Hahnenberg.

This test crashes prior to my change.

  • fast/js/dfg-allocation-profile-watch-point-exit-expected.txt: Added.
  • fast/js/dfg-allocation-profile-watch-point-exit.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-allocation-profile-watch-point-exit.js: Added.

(Foo):
(foo):

3:35 PM Changeset in webkit [149070] by beidson@apple.com
  • 5 edits in trunk/Source/WebCore

Once a custom font is cached to disk, it starts failing to render until the page is refreshed.
<rdar://problem/13622998> and https://bugs.webkit.org/show_bug.cgi?id=115131

Reviewed by Alexey Proskuryakov.

No new tests (Not a tested config, nor are disk cache issues currently testable).

  • loader/cache/CachedResource.h:

(WebCore::CachedResource:: mayTryReplaceEncodedData): Allow subclasses to refuse encoded data replacement.

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::tryReplaceEncodedData): Only try if shouldTryReplaceEncodedData() is true.

  • loader/cache/CachedFont.cpp:

(WebCore::CachedFont::CachedFont):
(WebCore::CachedFont::ensureCustomFontData):
(WebCore::CachedFont::mayTryReplaceEncodedData): Return false if the custom font data has ever been created.

  • loader/cache/CachedFont.h:
3:22 PM Changeset in webkit [149069] by jpfau@apple.com
  • 2 edits in branches/safari-536.30-branch/LayoutTests

<rdar://problem/12952167> 11G56: “AVF Info: …” logged to stdout

  • platform/mac-lion/Skipped: Skipped all tests that were failing due to AVF info being printed.
3:05 PM Changeset in webkit [149068] by ap@apple.com
  • 5 edits in trunk/LayoutTests

fast/js/global-constructors.html was deleted in r149001, removing it from
TextExpectations too.

  • platform/mac/TestExpectations:
  • platform/qt-arm/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
2:43 PM Changeset in webkit [149067] by roger_fong@apple.com
  • 13 edits in trunk

Have VS2010 WebKit solution look in WebKit_Libraries/lib32 for dependencies.

2:37 PM Changeset in webkit [149066] by Beth Dakin
  • 12 edits in trunk/Source/WebCore

Vertical overlay scrollbar in iframes fades in and out rapidly when you scroll in
a circle
https://bugs.webkit.org/show_bug.cgi?id=115124
-and corresponding-
<rdar://problem/13168957>

Reviewed by Anders Carlsson.

With http://trac.webkit.org/changeset/119834 we started calling
ScrollbarPainterController's contentAreaScrolled/contentAreaScrolledInDirection
API on a zero-delay timer instead of calling it right away. This prevented some
crashes that we saw whenever this was called during a layout. However, that delay,
combined with the particulars of contentAreaScrolledInDirection cause this bug
where sometimes the scrollbars in an iframe will fade out very noticeably when
scrolling in a circle.

This change makes it so we will only use the zero-delay timer if the
ScrollableArea is not currently handling a wheel event. If it IS handling a wheel
event, then we will send the notifications to AppKit right away. I confirmed that
this change did not reintroduce the old crashes.

Keep track of whether we are currently handling a wheel event with the new member
variable m_isHandlingWheelEvent.

  • page/EventHandler.cpp:

(WebCore::EventHandler::EventHandler):
(WebCore::EventHandler::handleWheelEvent):

  • page/EventHandler.h:

(WebCore::EventHandler::isHandlingWheelEvent):
(EventHandler):

To prevent layering violations, the ScrollableArea sub-classes will have to access
this information from the EventHandler.

  • page/FrameView.cpp:

(WebCore::FrameView::isHandlingWheelEvent):

  • page/FrameView.h:
  • platform/ScrollableArea.h:

(WebCore::ScrollableArea::isHandlingWheelEvent):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::isHandlingWheelEvent):

  • rendering/RenderLayer.h:

(RenderLayer):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::isHandlingWheelEvent):

  • rendering/RenderListBox.h:

sendContentAreaScrolledSoon() can be private. Also add new function
sendContentAreaScrolled().

  • platform/mac/ScrollAnimatorMac.h:

(ScrollAnimatorMac):

If the ScrollableArea is handling a wheel event, call
sendContentAreaScrolled(), otherwise call sendContentAreaScrolledSoon()

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
(WebCore::ScrollAnimatorMac::sendContentAreaScrolled):

Re-factored to use sendContentAreaScrolled()
(WebCore::ScrollAnimatorMac::sendContentAreaScrolledTimerFired):

2:35 PM Changeset in webkit [149065] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix a merge error in r149007 (was missing a null check added in r148777).

  • rendering/LogicalSelectionOffsetCaches.h:

(WebCore::containingBlockForAbsolutePosition):

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

Crash when trying to determine the length of an invalid message
https://bugs.webkit.org/show_bug.cgi?id=115127
<rdar://problem/13700736>

Reviewed by Beth Dakin.

Use message instead of incomingMessage since incomingMessage will always be null.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::processIncomingMessage):

1:38 PM Changeset in webkit [149063] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

Battery API won't return updated battery status until client calls didChangeBatteryStatus
https://bugs.webkit.org/show_bug.cgi?id=114891

Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-04-24
Reviewed by Rob Buis.

The BatteryStatus object in BatteryManager won't get updated until BatteryClient calls
didChangeBatteryStatus in BatteryController. Any attempts to call webkitBattery.charged()
or other get functions will always return the default values until the next battery status
change object gets passed to the controller.

We need to update the manager when we attach it to the controller, and update all
existing managers when the controller receives it's first battery status object.

  • Modules/battery/BatteryController.cpp:

(WebCore::BatteryController::addListener):
(WebCore::BatteryController::updateBatteryStatus):

  • Modules/battery/BatteryManager.cpp:

(WebCore::BatteryManager::didChangeBatteryStatus):
(WebCore::BatteryManager::updateBatteryStatus):
(WebCore):

  • Modules/battery/BatteryManager.h:

(BatteryManager):

1:11 PM Changeset in webkit [149062] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebCore

Clean up unused code in ViewportArguments.h
https://bugs.webkit.org/show_bug.cgi?id=115121

Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-04-24.
Reviewed by Benjamin Poulain.

The target-densityDPI emulation implementation has been removed by
r147893, so clean up the remaining code as well.

  • dom/ViewportArguments.h:
1:03 PM Changeset in webkit [149061] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

ElementData should use 'unsigned' attribute indices.
<http://webkit.org/b/115103>

Reviewed by Antti Koivisto.

Switch to using 'unsigned' for attribute indices. This gives consistent behavior
on 32/64-bit, and the underlying storage is already limited by Vector's 32-bit capacity.

Added an ElementData::attributeNotFound constant (-1) since we can't use WTF::notFound.

  • dom/Element.cpp:

(WebCore::Element::detachAttribute):
(WebCore::Element::removeAttribute):
(WebCore::Element::setAttribute):
(WebCore::Element::setSynchronizedLazyAttribute):
(WebCore::Element::setAttributeInternal):
(WebCore::Element::setAttributeNode):
(WebCore::Element::removeAttributeNode):
(WebCore::Element::removeAttributeInternal):
(WebCore::UniqueElementData::removeAttribute):
(WebCore::ElementData::getAttributeItemIndexSlowCase):

  • dom/Element.h:

(ElementData):
(UniqueElementData):
(Element):
(WebCore::Element::getAttributeItemIndex):
(WebCore::Element::attributeCount):
(WebCore::ElementData::length):
(WebCore::ElementData::getAttributeItem):
(WebCore::ElementData::getAttributeItemIndex):

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::removeNamedItem):
(WebCore::NamedNodeMap::removeNamedItemNS):
(WebCore::NamedNodeMap::length):

  • dom/NamedNodeMap.h:

(NamedNodeMap):

1:00 PM Changeset in webkit [149060] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

ElementData::attributeItem() should bounds-check the index.
<http://webkit.org/b/115076>

Reviewed by Antti Koivisto.

Switch the ASSERT_WITH_SECURITY_IMPLICATION to a RELEASE_ASSERT.

  • dom/Element.h:

(WebCore::ElementData::attributeItem):

12:59 PM Changeset in webkit [149059] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Setting an inline style property to "" shouldn't cause style recalc unless the property was present.
<http://webkit.org/b/115122>

Reviewed by Antti Koivisto.

StylePropertySet::setProperty() handles empty strings by removing the property entirely.
If there was no property to remove, it shouldn't claim that it changed something, as that
will cause the CSSOM wrapper to mark the element for style recalc.

A common idiom that triggers this is excessive use of { element.style.display = ; }

  • css/StylePropertySet.cpp:

(WebCore::MutableStylePropertySet::setProperty):

12:50 PM Changeset in webkit [149058] by rniwa@webkit.org
  • 3 edits
    2 adds in trunk

Moving word boundaries backwards fails when there is a text node starting with an apostrophe
https://bugs.webkit.org/show_bug.cgi?id=115070

Reviewed by Alexey Proskuryakov.

Source/WebCore:

The bug was caused by previousBoundary erroneously assuming that we don't need any more context if a word
boundary is found at the beginning of a string. For example, when "I'll" is split into two text nodes,
"I" and "'ll", there is a word boundary between "'" and "ll" in "'ll" so we need to examine the whole "I'll".

Fixed the bug by obtaining more context when the character starts exactly at offset 1 in a text node to
work around this bug. In the long term, we probably need to provide Foundation of the entire context since in
languages like Hebrew and some of European languages, there could be many accents and combining characters
between split into multiple text nodes as one variant is seen in the newly added test case.

Test: editing/selection/previous-word-boundary-across-text-nodes.html

  • editing/VisibleUnits.cpp:

(WebCore::previousBoundary):

LayoutTests:

Added a test case for moving bacwkards with a word granurality across multiple text nodes.
Some test cases still fail since this patch only implements a work around.

  • editing/selection/previous-word-boundary-across-text-nodes-expected.txt: Added.
  • editing/selection/previous-word-boundary-across-text-nodes.html: Added.
12:46 PM Changeset in webkit [149057] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Do not use static string in DiagnosticLoggingKeys
https://bugs.webkit.org/show_bug.cgi?id=115093

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-24
Reviewed by Andreas Kling.

The code is not hot enough to justify keeping the memory around.
This removes 3kb from the binary on x86_64.

  • page/DiagnosticLoggingKeys.cpp:

(WebCore::DiagnosticLoggingKeys::mediaLoadedKey):
(WebCore::DiagnosticLoggingKeys::mediaLoadingFailedKey):
(WebCore::DiagnosticLoggingKeys::pluginLoadedKey):
(WebCore::DiagnosticLoggingKeys::pluginLoadingFailedKey):
(WebCore::DiagnosticLoggingKeys::pageContainsPluginKey):
(WebCore::DiagnosticLoggingKeys::pageContainsAtLeastOnePluginKey):
(WebCore::DiagnosticLoggingKeys::pageContainsMediaEngineKey):
(WebCore::DiagnosticLoggingKeys::pageContainsAtLeastOneMediaEngineKey):
(WebCore::DiagnosticLoggingKeys::passKey):
(WebCore::DiagnosticLoggingKeys::failKey):
(WebCore::DiagnosticLoggingKeys::noopKey):

  • page/DiagnosticLoggingKeys.h:

(DiagnosticLoggingKeys):

12:38 PM Changeset in webkit [149056] by benjamin@webkit.org
  • 22 edits in trunk/Source/WebCore

Remove wxWebKit #ifdefs from WebCore/platform/graphics
https://bugs.webkit.org/show_bug.cgi?id=115081

Reviewed by Geoffrey Garen.

  • platform/graphics/BitmapImage.h:

(BitmapImage):

  • platform/graphics/Color.h:

(Color):

  • platform/graphics/FloatRect.h:

(FloatRect):

  • platform/graphics/FloatSize.h:

(FloatSize):

  • platform/graphics/FontPlatformData.h:
  • platform/graphics/GlyphBuffer.h:

(WebCore):
(WebCore::GlyphBuffer::glyphAt):
(WebCore::GlyphBuffer::add):

  • platform/graphics/Gradient.h:
  • platform/graphics/GraphicsContext.h:

(GraphicsContext):

  • platform/graphics/Image.cpp:

(WebCore::Image::drawTiled):

  • platform/graphics/ImageBufferData.h:
  • platform/graphics/IntPoint.h:

(IntPoint):

  • platform/graphics/IntRect.h:
  • platform/graphics/IntSize.h:

(IntSize):

  • platform/graphics/NativeImagePtr.h:

(WebCore):

  • platform/graphics/Path.h:
  • platform/graphics/Pattern.h:
  • platform/graphics/SimpleFontData.h:

(SimpleFontData):
(WebCore::SimpleFontData::widthForGlyph):

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::ComplexTextController::collectComplexTextRuns):

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):

  • platform/graphics/transforms/AffineTransform.h:

(AffineTransform):

  • platform/graphics/transforms/TransformationMatrix.h:

(TransformationMatrix):

12:36 PM Changeset in webkit [149055] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Remove wxWebKit #ifdefs from WebCore/plugins
https://bugs.webkit.org/show_bug.cgi?id=115080

Reviewed by Geoffrey Garen.

  • plugins/PluginView.h:

(PluginView):

  • plugins/mac/PluginViewMac.mm:

(WebCore::nativeWindowFor):
(WebCore::cgHandleFor):
(WebCore::topLevelOffsetFor):
(WebCore::PluginView::platformStart):

  • plugins/win/PluginViewWin.cpp:

(windowHandleForPageClient):
(WebCore::PluginView::handleMouseEvent):
(WebCore::PluginView::platformStart):
(WebCore::PluginView::snapshot):

12:35 PM Changeset in webkit [149054] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebCore

Remove wxWebKit #ifdefs from WebCore/page
https://bugs.webkit.org/show_bug.cgi?id=115079

Reviewed by Geoffrey Garen.

  • page/FrameView.cpp:

(WebCore::FrameView::wheelEvent):

  • page/Settings.cpp:

(WebCore):

  • page/Settings.h:

(Settings):

12:34 PM Changeset in webkit [149053] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Use post-branch store for RefCountedBase::derefBase
https://bugs.webkit.org/show_bug.cgi?id=115078

Reviewed by Andreas Kling.

  • wtf/RefCounted.h:

(WTF::RefCountedBase::derefBase): This makes the assembly easier to follow.

11:34 AM Changeset in webkit [149052] by Carlos Garcia Campos
  • 5 edits in trunk

[GTK] Use stamp files for generate-forwarding-headers makefile rules
https://bugs.webkit.org/show_bug.cgi?id=115118

Reviewed by Martin Robinson.

Source/WebKit2:

Use a stamp file for the WebKit2 forwarding generator rule. Also
fix the rule dependencies that pointed to a non existent variable.

  • GNUmakefile.am:

Tools:

Use a stamp file for the TestWebKitAPI and WebKitTestRunner
forwarding generator rules and don't call it for soup since there
aren't soup directories in TestWebKitAPI and WebKitTestRunner.

  • TestWebKitAPI/GNUmakefile.am:
  • WebKitTestRunner/GNUmakefile.am:
11:33 AM Changeset in webkit [149051] by Chris Fleizach
  • 12 edits
    2 adds in trunk

AX: WAI-ARIA landmarks no longer speak type of landmark on iOS
https://bugs.webkit.org/show_bug.cgi?id=114547

Reviewed by David Kilzer.

Source/WebCore:

We want iOS to speak the landmark type.
I've moved the landmark role description to the base Mac class and exposed
these localized strings to iOS (the ones used to return landmark descriptions).

I've also updated the accessibilityLabel to account for landmark type, but also
handle multiple label sources more gracefully by appending commas, which changed a few
tests in minor ways.

Test: platform/iphone-simulator/accessibility/landmark-type.html

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityLabel]):

  • accessibility/mac/WebAccessibilityObjectWrapperBase.h:
  • accessibility/mac/WebAccessibilityObjectWrapperBase.mm:

(-[WebAccessibilityObjectWrapperBase ariaLandmarkRoleDescription]):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper roleDescription]):

  • platform/LocalizedStrings.cpp:

(WebCore):
(WebCore::AXButtonActionVerb):
(WebCore::AXRadioButtonActionVerb):
(WebCore::AXTextFieldActionVerb):
(WebCore::AXCheckedCheckBoxActionVerb):
(WebCore::AXUncheckedCheckBoxActionVerb):
(WebCore::AXLinkActionVerb):
(WebCore::AXMenuListPopupActionVerb):
(WebCore::AXMenuListActionVerb):

  • platform/LocalizedStrings.h:

(WebCore):

LayoutTests:

  • platform/iphone-simulator/accessibility/landmark-type-expected.txt: Added.
  • platform/iphone-simulator/accessibility/landmark-type.html: Added.
  • platform/iphone-simulator/accessibility/link-with-images-text-expected.txt:
  • platform/iphone-simulator/accessibility/link-with-images-text.html:

Minor change to accomodate trimming of white space.

  • platform/iphone-simulator/accessibility/math-expected.txt:
  • platform/iphone-simulator/accessibility/math.html:

Math objects now include "math" as the landmark type.

11:16 AM Changeset in webkit [149050] by ggaren@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

32-bit build fix.

Unreviewed.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePeepHoleBooleanBranch): Explicitly
truncate to 32-bit to avoid compiler warnings. It's safe to truncate
because the payload of a boolean is the low bits on both 64-bit and 32-bit.

11:06 AM Changeset in webkit [149049] by zandobersek@gmail.com
  • 2 edits in trunk/Source/WebKit2

[GTK][WK2] Implement LayerTreeHostGtk::pageBackgroundTransparencyChanged
https://bugs.webkit.org/show_bug.cgi?id=115094

Reviewed by Tim Horton.

The method was introduced in r149004 (and a stub implementation for the GTK port added in r149017).
Implement the method for the GTK port in the same manner it is implemented under the Mac port,
calling setContentsOpaque on the non-composited content layer.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::pageBackgroundTransparencyChanged):

10:50 AM Changeset in webkit [149048] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[GTK] Update build dependencies
https://bugs.webkit.org/show_bug.cgi?id=115111

Patch by Simon Pena <simon.pena@samsung.com> on 2013-04-24
Reviewed by Martin Robinson.

The install-dependencies script was missing a dependency on EGL,
which is expected when building Cairo.

  • gtk/install-dependencies: Added a dependency on libegl1-mesa

for both apt and yum.

10:43 AM Changeset in webkit [149047] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

CSS attribute selectors cause unnecessary style recalc when setting attribute to same value.
<http://webkit.org/b/115116>
<rdar://problem/13727709>

Reviewed by Simon Fraser.

The logic that dirties the style if there's a relevant attribute selector in the document
shouldn't run if the attribute is being overwritten with an identical value.
Move this into willModifyAttribute() instead, since we need access to both the old and the new value.

This reduces unnecessary style recalculation in Mac App Store content.

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):
(WebCore::Element::willModifyAttribute):

10:07 AM Changeset in webkit [149046] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Remove the Chromium-specific helper from run_webkit_tests.py
https://bugs.webkit.org/show_bug.cgi?id=114996

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-24
Reviewed by Dirk Pranke.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args):

9:12 AM Changeset in webkit [149045] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk/Tools

[EFL][WK2]: Fix WKViewClientWebProcessCallbacks WK2 API test
https://bugs.webkit.org/show_bug.cgi?id=114850

Patch by Sergio Correia <Sergio Correia> on 2013-04-24
Reviewed by Andreas Kling.

Revision r148312 fixed WebPageProxy cleanup and also changed the process
termination semantics when requested by the user so that a client is not
notified of a crash anymore, since there was no crash anyway.

That change broke WKViewClientWebProcessCallbacks WK2 API test, since it
relied on being notified of a crash after calling WKPageTerminate(). As
a result of not being notified of such non-existent crash, the test would
timeout right after making the terminate call.

This patch adds an InjectedBundle to be used for simulating a crash, by
calling abort() upon receiving a "Crash" message, and thus we are able to
keep testing the crash callback.

This patch also re-enables the WKViewClientWebProcessCallbacks test, which
had been disabled in revisions r148858 and r148855, since it was failing.

  • TestWebKitAPI/PlatformEfl.cmake:
  • TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKit2/efl/WKViewClientWebProcessCallbacks_Bundle.cpp: Added.

(TestWebKitAPI):
(WKViewClientWebProcessCallbacksTest):
(TestWebKitAPI::WKViewClientWebProcessCallbacksTest::WKViewClientWebProcessCallbacksTest):
(TestWebKitAPI::WKViewClientWebProcessCallbacksTest::didReceiveMessage):

9:08 AM Changeset in webkit [149044] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

2013-04-24 Simon Cooper <scooper@apple.com>

<rdar://problem/13614117> Refine the Flash Player profile
https://bugs.webkit.org/show_bug.cgi?id=115016

Reviewed by Alexey Proskuryakov.

Add some refinements to the Flash Player profile. Make a non-/ home
directory work. Fixes that allow file uploading via user selected files.

  • Resources/PlugInSandboxProfiles/com.macromedia.Flash Player.plugin.sb:
8:59 AM Changeset in webkit [149043] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Do not clear focus on a node when tapping on form controls
https://bugs.webkit.org/show_bug.cgi?id=115055

Patch by Nima Ghanavatian <nghanavatian@blackberry.com> on 2013-04-24
Reviewed by Rob Buis.

Internally reviewed by Genevieve Mak.

PR316069
To allow for rich text editors to apply styles on an input field
or highlighted text, we must maintain focus on the current element
when tapping on form elements. Moving the code that clears this
context to trigger off TouchHold instead of TouchPress.

  • WebKitSupport/TouchEventHandler.cpp:

(BlackBerry::WebKit::TouchEventHandler::doFatFingers):

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

[BlackBerry] Fixes the San Angeles demo on khronos.org
https://bugs.webkit.org/show_bug.cgi?id=115106

Patch by Jonathan Feldstein <jfeldstein@blackberry.com> on 2013-04-24
Reviewed by Rob Buis
Internally Reviewed by Jeremy Nicholl and Arvid Nilsson

Fixes a bug in which the currently bound vertex array object's vertex array
state was being modified as opposed to the default vertex array state.

  • platform/graphics/blackberry/EGLImageLayerWebKitThread.cpp:

(EGLImageLayerWebKitThread::blitToFrontBuffer):

8:48 AM Changeset in webkit [149041] by ggaren@apple.com
  • 8 edits in trunk

Filled out more cases of branch folding in the DFG
https://bugs.webkit.org/show_bug.cgi?id=115088

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

No change on the benchmarks we track, but a 3X speedup on a
microbenchmark that uses these techniques.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock): (!/=)= and (!/=)== can constant
fold all types, not just numbers, because true constants have no
side effects when type-converted at runtime.

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNode.h:

(JSC::DFG::Node::shouldSpeculateBoolean): Added support for fixing up
boolean uses, like we do for other types like number.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compilePeepHoleBooleanBranch):
(JSC::DFG::SpeculativeJIT::compilePeepHoleBranch):
(JSC::DFG::SpeculativeJIT::compare):
(JSC::DFG::SpeculativeJIT::compileStrictEq):
(JSC::DFG::SpeculativeJIT::compileBooleanCompare): Peephole fuse
boolean compare and/or compare-branch, now that we have the types for
them.

  • dfg/DFGSpeculativeJIT.h: Updated declarations.

LayoutTests:

  • fast/js/regress/script-tests/branch-fold.js:

(g): Added some boolean and constant-folded cases.

8:44 AM Changeset in webkit [149040] by thakis@chromium.org
  • 4 edits
    2 deletes in trunk/Source/WebCore

Fold RenderThemeMacShared into RenderThemeMac
https://bugs.webkit.org/show_bug.cgi?id=115086

Reviewed by Anders Carlsson.

No intended functionality change.

  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderThemeMac.h:

(RenderThemeMac):
(WebCore::RenderThemeMac::supportsControlTints):
(WebCore::RenderThemeMac::scrollbarControlSizeForPart):
(WebCore::RenderThemeMac::supportsSelectionForegroundColors):
(WebCore::RenderThemeMac::supportsClosedCaptioning):
(WebCore::RenderThemeMac::updateActiveState):

  • rendering/RenderThemeMac.mm:

(-[WebCoreRenderThemeNotificationObserver initWithTheme:WebCore::]):
(-[WebCoreRenderThemeNotificationObserver systemColorsDidChange:]):
(-[WebCoreTextFieldCell _coreUIDrawOptionsWithFrame:inView:includeFocus:]):
(WebCore::RenderThemeMac::RenderThemeMac):
(WebCore::RenderThemeMac::~RenderThemeMac):
(WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
(WebCore):
(WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
(WebCore::RenderThemeMac::platformActiveListBoxSelectionBackgroundColor):
(WebCore::RenderThemeMac::platformActiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeMac::platformInactiveListBoxSelectionForegroundColor):
(WebCore::RenderThemeMac::platformFocusRingColor):
(WebCore::RenderThemeMac::platformInactiveListBoxSelectionBackgroundColor):
(WebCore::toFontWeight):
(WebCore::RenderThemeMac::systemFont):
(WebCore::convertNSColorToColor):
(WebCore::menuBackgroundColor):
(WebCore::RenderThemeMac::platformColorsDidChange):
(WebCore::RenderThemeMac::systemColor):
(WebCore::RenderThemeMac::usesTestModeFocusRingColor):
(WebCore::RenderThemeMac::isControlStyled):
(WebCore::RenderThemeMac::adjustRepaintRect):
(WebCore::RenderThemeMac::inflateRect):
(WebCore::RenderThemeMac::convertToPaintingRect):
(WebCore::RenderThemeMac::updateCheckedState):
(WebCore::RenderThemeMac::updateEnabledState):
(WebCore::RenderThemeMac::updateFocusedState):
(WebCore::RenderThemeMac::updatePressedState):
(WebCore::RenderThemeMac::controlSupportsTints):
(WebCore::RenderThemeMac::controlSizeForFont):
(WebCore::RenderThemeMac::setControlSize):
(WebCore::RenderThemeMac::sizeForFont):
(WebCore::RenderThemeMac::sizeForSystemFont):
(WebCore::RenderThemeMac::setSizeFromFont):
(WebCore::RenderThemeMac::setFontFromControlSize):
(WebCore::RenderThemeMac::controlSizeForSystemFont):
(WebCore::RenderThemeMac::paintTextField):
(WebCore::RenderThemeMac::adjustTextFieldStyle):
(WebCore::RenderThemeMac::paintCapsLockIndicator):
(WebCore::RenderThemeMac::paintTextArea):
(WebCore::RenderThemeMac::adjustTextAreaStyle):
(WebCore::RenderThemeMac::popupButtonMargins):
(WebCore::RenderThemeMac::popupButtonSizes):
(WebCore::RenderThemeMac::popupButtonPadding):
(WebCore::RenderThemeMac::paintMenuList):
(WebCore::RenderThemeMac::meterSizeForBounds):
(WebCore::RenderThemeMac::paintMeter):
(WebCore::RenderThemeMac::supportsMeter):
(WebCore::RenderThemeMac::levelIndicatorStyleFor):
(WebCore::RenderThemeMac::levelIndicatorFor):
(WebCore::RenderThemeMac::progressBarSizes):
(WebCore::RenderThemeMac::progressBarMargins):
(WebCore::RenderThemeMac::minimumProgressBarHeight):
(WebCore::RenderThemeMac::animationRepeatIntervalForProgressBar):
(WebCore::RenderThemeMac::animationDurationForProgressBar):
(WebCore::RenderThemeMac::adjustProgressBarStyle):
(WebCore::RenderThemeMac::paintProgressBar):
(WebCore::TopGradientInterpolate):
(WebCore::BottomGradientInterpolate):
(WebCore::MainGradientInterpolate):
(WebCore::TrackGradientInterpolate):
(WebCore::RenderThemeMac::paintMenuListButtonGradients):
(WebCore::RenderThemeMac::paintMenuListButton):
(WebCore::menuListButtonSizes):
(WebCore::RenderThemeMac::adjustMenuListStyle):
(WebCore::RenderThemeMac::popupInternalPaddingLeft):
(WebCore::RenderThemeMac::popupInternalPaddingRight):
(WebCore::RenderThemeMac::popupInternalPaddingTop):
(WebCore::RenderThemeMac::popupInternalPaddingBottom):
(WebCore::RenderThemeMac::adjustMenuListButtonStyle):
(WebCore::RenderThemeMac::setPopupButtonCellState):
(WebCore::RenderThemeMac::menuListSizes):
(WebCore::RenderThemeMac::minimumMenuListSize):
(WebCore::RenderThemeMac::adjustSliderTrackStyle):
(WebCore::RenderThemeMac::paintSliderTrack):
(WebCore::RenderThemeMac::adjustSliderThumbStyle):
(WebCore::RenderThemeMac::paintSliderThumb):
(WebCore::RenderThemeMac::paintSearchField):
(WebCore::RenderThemeMac::setSearchCellState):
(WebCore::RenderThemeMac::searchFieldSizes):
(WebCore::RenderThemeMac::setSearchFieldSize):
(WebCore::RenderThemeMac::adjustSearchFieldStyle):
(WebCore::RenderThemeMac::paintSearchFieldCancelButton):
(WebCore::RenderThemeMac::cancelButtonSizes):
(WebCore::RenderThemeMac::adjustSearchFieldCancelButtonStyle):
(WebCore::RenderThemeMac::resultsButtonSizes):
(WebCore::RenderThemeMac::adjustSearchFieldDecorationStyle):
(WebCore::RenderThemeMac::paintSearchFieldDecoration):
(WebCore::RenderThemeMac::adjustSearchFieldResultsDecorationStyle):
(WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
(WebCore::RenderThemeMac::adjustSearchFieldResultsButtonStyle):
(WebCore::RenderThemeMac::paintSearchFieldResultsButton):
(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):
(WebCore::RenderThemeMac::sliderTickSize):
(WebCore::RenderThemeMac::sliderTickOffsetFromTrackCenter):
(WebCore::RenderThemeMac::adjustSliderThumbSize):
(WebCore::RenderThemeMac::shouldShowPlaceholderWhenFocused):
(WebCore::RenderThemeMac::popupButton):
(WebCore::RenderThemeMac::search):
(WebCore::RenderThemeMac::searchMenuTemplate):
(WebCore::RenderThemeMac::sliderThumbHorizontal):
(WebCore::RenderThemeMac::sliderThumbVertical):
(WebCore::RenderThemeMac::textField):
(WebCore::RenderThemeMac::fileListNameForWidth):

  • rendering/RenderThemeMacShared.h: Removed.
  • rendering/RenderThemeMacShared.mm: Removed.
8:38 AM CoordinatedGraphicsSystem edited by allan.jensen@digia.com
(diff)
8:36 AM Changeset in webkit [149039] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK][AC] Visible rect doesn't update after resizing a window.
https://bugs.webkit.org/show_bug.cgi?id=115096

Patch by ChangSeok Oh <ChangSeok Oh> on 2013-04-24
Reviewed by Gustavo Noronha Silva.

Once we set actor's a clip rect, we should update the rect when resizing the actor.

No new tests since no new functionality.

  • platform/graphics/clutter/GraphicsLayerClutter.cpp:

(WebCore::GraphicsLayerClutter::setSize):

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

[GTK][AC] Fix unexpected clear of ClutterContent.
https://bugs.webkit.org/show_bug.cgi?id=115099

Patch by ChangSeok Oh <ChangSeok Oh> on 2013-04-24
Reviewed by Gustavo Noronha Silva.

adoptGRef doesn't increase a reference count. So if a actor has a valid ClutterContent,
it would be cleared unexpectedly by smart pointer when escaping a function.

No new tests, no functionality changed.

  • platform/graphics/clutter/GraphicsLayerActor.cpp:

(graphicsLayerActorUpdateTexture):

8:30 AM Changeset in webkit [149037] by akling@apple.com
  • 2 edits in trunk/Source/WebKit/win

Wild build fix attempt.

  • WebCoreSupport/WebChromeClient.h:

(WebChromeClient):

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

[WebKit2] Add CoordinatedGraphics to the list of platforms in generate-forwarding-headers.pl
https://bugs.webkit.org/show_bug.cgi?id=115098

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-04-24
Reviewed by Martin Robinson.

r148963 introduced a new WKView.h header in a directory not listed
as a platform prefix in generate-forwarding-headers.pl.

  • Scripts/generate-forwarding-headers.pl: Replace unused chromium

plaform prefix with CoordinatedGraphics that is used now.

8:15 AM Changeset in webkit [149035] by jberlin@webkit.org
  • 7 edits
    1 delete in trunk/Source/WebKit

Assertion failure (crash in release) attempting to delete database storage in WK1 without
creating a WebView first
https://bugs.webkit.org/show_bug.cgi?id=115065

Reviewed by Brady Eidson.

Source/WebKit:

  • WebKit.xcodeproj/project.pbxproj:

Remove WebDatabaseManagerInternal.h.

Source/WebKit/mac:

Make sure the WebPlatformStrategies is initialized before using the WebDatabaseManager.

  • Storage/WebDatabaseManager.mm:

(-[WebDatabaseManager init]):
Move the logic from WebKitInitializeDatabasesIfNecessary here, and add a call to
WebPlatformStrategies::initializeIfNecessary.

  • Storage/WebDatabaseManagerInternal.h: Removed.
  • WebCoreSupport/WebPlatformStrategies.h:

(WebPlatformStrategies):
Change "initialize" to "initalizeIfNecessary".

  • WebCoreSupport/WebPlatformStrategies.mm:

(WebPlatformStrategies::initializeIfNecessary):
Only call setPlatformStrategies once.

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
Updated for the name change from initialize to initializeIfNecessary.
Instead of calling WebKitInitializeDatabasesIfNecessary, call [WebDatabaseManager
sharedWebDatabaseManager].
(+[WebView _setLoadResourcesSerially:]):
Updated for the name change from initialize to initializeIfNecessary.

7:27 AM Changeset in webkit [149034] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

DOMFileSystemBase: fix multiple definitions in the BlackBerry port
https://bugs.webkit.org/show_bug.cgi?id=114950

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-04-24
Reviewed by Xan Lopez.

The following methods are already defined in DOMFileSystemBlackBerry.cpp:

crackFileSystemURL()
createFileSystemURL()
isValidType()
supportsToURL()

  • Modules/filesystem/DOMFileSystemBase.cpp:

(WebCore):

7:10 AM Changeset in webkit [149033] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[BlackBerry] Add support for JPEG image quality during encoding.
https://bugs.webkit.org/show_bug.cgi?id=105773

Patch by George Staikos <gstaikos@rim.com> on 2013-04-24
Reviewed by Xan Lopez.

PR 271611
Internally reviewed by Liam Quinn.

Pass the quality flag into the encoder, with a default of 65

Covered by existing tests.

  • platform/image-encoders/JPEGImageEncoder.cpp:

(WebCore::compressRGBABigEndianToJPEG):

  • platform/image-encoders/JPEGImageEncoder.h:

(WebCore):

6:54 AM Changeset in webkit [149032] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL] Add unit test cases for ewk_settings APIs
https://bugs.webkit.org/show_bug.cgi?id=114897

Patch by Jose Lejin PJ <jose.lejin@gmail.com> on 2013-04-24
Reviewed by Gyuyoung Kim.

Added unit tests for ewk_settings APIs.

  • tests/test_ewk_setting.cpp:

(TEST_F):

6:11 AM Changeset in webkit [149031] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

Fix cast-align WebCore/platform/graphics/GraphicsContext3D.cpp on ARM
https://bugs.webkit.org/show_bug.cgi?id=115036

Reviewed by Benjamin Poulain.

  • platform/graphics/GraphicsContext3D.cpp:

(WebCore):

6:03 AM Changeset in webkit [149030] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Rebaseline fast/js/constructor-length.html for EFL port after
r148997.

  • platform/efl/fast/js/constructor-length-expected.txt:
5:33 AM Changeset in webkit [149029] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Remove unnecessary MutableStylePropertySet casts.
<http://webkit.org/b/115075>

Reviewed by Geoffrey Garen.

Get rid of some now-unneeded static_casts that were left from the StylePropertySet
refactoring last weekend.

  • css/StylePropertySet.cpp:

(WebCore::MutableStylePropertySet::setProperty):

  • editing/EditingStyle.cpp:

(WebCore::EditingStyle::triStateOfStyle):
(WebCore::EditingStyle::removeStyleFromRulesAndContext):

5:17 AM Changeset in webkit [149028] by kangil.han@samsung.com
  • 2 edits in trunk/Source/WebCore

[Minor code cleanup] Remove duplicated condition check
https://bugs.webkit.org/show_bug.cgi?id=115082

Reviewed by Andreas Kling.

areRectsPartiallyAligned() has duplicated condition check, so remove it.

  • page/SpatialNavigation.cpp:

(WebCore::areRectsPartiallyAligned):

5:01 AM Changeset in webkit [149027] by Christophe Dumez
  • 2 edits in trunk/Tools

[EFL][WK2] WebKitTestRunner failures due to IconDatabase assertions
https://bugs.webkit.org/show_bug.cgi?id=115095

Reviewed by Antonio Gomes.

Use different subfolders under DumpRenderTree Temp folder for every
functionality (icon database, cache, localstorage, ...). This makes
sure there is no conflict between the functionalities.

In EFL's case, libsoup cache was causing problems for the icon
database if sharing the same folder.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):

4:21 AM Changeset in webkit [149026] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

[EFL] Fix build warnings caused by missing images attributes for default buttons
https://bugs.webkit.org/show_bug.cgi?id=114955

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2013-04-24
Reviewed by Gyuyoung Kim.

Added default image for each button from mediacontrol catalog.

No new tests, because there is no change in behavior.

  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/fullscreen_button.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/mute_button.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/playpause_button.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/seekbackwardbutton/seekbackward_button.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/seekforwardbutton/seekforward_button.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/toggle_captions_button.edc:
3:54 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
3:53 AM WebKitGTK/2.0.x edited by Manuel Rego Casasnovas
(diff)
3:50 AM Changeset in webkit [149025] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Web Inspector: Add number to list from remote web inspector.
https://bugs.webkit.org/show_bug.cgi?id=115014

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-24
Reviewed by Benjamin Poulain.

  • UIProcess/InspectorServer/front-end/inspectorPageIndex.html:
3:48 AM Changeset in webkit [149024] by commit-queue@webkit.org
  • 23 edits in trunk/LayoutTests

[EFL] Rebaselining after r148944
https://bugs.webkit.org/show_bug.cgi?id=115085

Unreviewed gardening.

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-24

  • platform/efl/TestExpectations:
  • platform/efl/fast/table/giantRowspan-expected.txt:
  • platform/efl/fast/table/giantRowspan2-expected.png:
  • platform/efl/fast/table/giantRowspan2-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug133756-1-expected.png:
  • platform/efl/tables/mozilla/bugs/bug133756-1-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug133756-2-expected.png:
  • platform/efl/tables/mozilla/bugs/bug133756-2-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug220536-expected.png:
  • platform/efl/tables/mozilla/bugs/bug220536-expected.txt:
  • platform/efl/tables/mozilla/bugs/bug8858-expected.png:
  • platform/efl/tables/mozilla/bugs/bug8858-expected.txt:
  • platform/efl/tables/mozilla/core/bloomberg-expected.png:
  • platform/efl/tables/mozilla/core/bloomberg-expected.txt:
  • platform/efl/tables/mozilla/core/row_span-expected.png:
  • platform/efl/tables/mozilla/core/row_span-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug131020-3-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
  • platform/efl/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
2:01 AM Changeset in webkit [149023] by abucur@adobe.com
  • 3 edits in trunk/LayoutTests

Fix test style issues following the commit of
https://bugs.webkit.org/show_bug.cgi?id=114412

Unreviewed gardening.

  • css3/compositing/effect-background-blend-mode-color.html:
  • css3/compositing/effect-background-blend-mode-color2.html:
1:44 AM Changeset in webkit [149022] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

--minimal build fails with error: Source/WebKit2/Platform/CoreIPC/ArgumentCoder.h:44:36: error: decode is not a member of WebCore::TextCheckingResult
https://bugs.webkit.org/show_bug.cgi?id=114367

Patch by Vlad Vasilyeu <vasvlad@gmail.com> on 2013-04-24
Reviewed by Benjamin Poulain.

Include WebCoreArgumentCoders.h to WebEditorClientEfl.cpp from
WebKit2/Shared/ for successfully building with option --minimal

  • WebProcess/WebCoreSupport/efl/WebEditorClientEfl.cpp:
1:23 AM Changeset in webkit [149021] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix with gstreamer 0.10.x after r147555.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webKitWebAudioSrcLoop):

1:11 AM Changeset in webkit [149020] by mrowe@apple.com
  • 6 edits
    6 copies in trunk

Roll depsHHHHChangeLogs.

1:09 AM Changeset in webkit [149019] by anilsson@rim.com
  • 5 edits in trunk/Source/WebCore

[BlackBerry] Remove the setContentsToColor flavor of LayerTiler::TextureJob
https://bugs.webkit.org/show_bug.cgi?id=115092

Reviewed by Carlos Garcia Campos.

With the Skia backend, we had an optimization to detect solid color
layers. The Skia code has been purged, but these bits remained. With
BlackBerry::Platform::Graphics::PlatformGraphicsContext, only the solid
color will be drawn anyway, so we don't need to detect such layers at
the WebCore level. Fixed by removing the setContentsToColor flavor of
LayerTiler::TextureJob.

BlackBerry::WebKit::WebOverlay still uses
TextureCacheCompositingThread::textureForColor() so that one can stay
for now.

This was dead code so no new tests.

  • platform/graphics/blackberry/LayerTile.cpp:
  • platform/graphics/blackberry/LayerTile.h:

(LayerTile):

  • platform/graphics/blackberry/LayerTiler.cpp:

(WebCore::LayerTiler::processTextureJob):
(WebCore::LayerTiler::performTileJob):

  • platform/graphics/blackberry/LayerTiler.h:

(WebCore::LayerTiler::TextureJob::setContents):
(TextureJob):

12:43 AM Changeset in webkit [149018] by zandobersek@gmail.com
  • 4 edits in trunk/Source

[GTK] Move image decoders, some other GStreamer, Cairo and Soup sources to libPlatform
https://bugs.webkit.org/show_bug.cgi?id=115050

Reviewed by Martin Robinson.

Source/Platform:

  • GNUmakefile.am: Add the image-decoders directory and its subdirectories to the list of header inclusion directories.

List the Cairo, GStreamer and Libsoup cppflags under the cppflags libPlatform uses for compiling its sources.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.list.am: Move the image decoders source files and a couple of GStreamer, Cairo and Libsoup source

files under the libPlatform's list of files to build. All of these are already free of platform layer violations.

12:25 AM Changeset in webkit [149017] by Claudio Saavedra
  • 3 edits in trunk/Source/WebKit2

Build break after r149004
https://bugs.webkit.org/show_bug.cgi?id=115091

Reviewed by Csaba Osztrogonác.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::pageBackgroundTransparencyChanged):
(WebKit): Add dummy method for new virtual method.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h:

(LayerTreeHostGtk): Ditto.

Apr 23, 2013:

8:18 PM Changeset in webkit [149016] by fpizlo@apple.com
  • 5 edits
    3 adds in trunk

DFG CFA filters CheckFunction in a really weird way, and assumes that the function's structure won't change
https://bugs.webkit.org/show_bug.cgi?id=115077

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

The filtering did three things that are unusual:

1) AbstractValue::filterByValue() assumed that the passed value's structure wouldn't change, in

the sense that at it assumed it could use that value's *current* structure to do structure
filtering. Filtering by structure only makes sense if you can prove that the given value will
always have that structure (for example by either using a watchpoing or emitting code that
checks that structure at run-time).


2) AbstractValue::filterByValue() and the CheckFunction case in AbstractState::executeEffects()

tried to invalidate the CFA based on whether the filtration led to an empty value. This is
well-intentioned, but it's not how the CFA currently works. It's inconsistent with other
parts of the CFA. We shouldn't introduce this feature into just one kind of filtration and
not have it elsewhere.


3) The attempt to detect when the value was empty was actually implemented incorrectly. It

relied on AbstractValue::validate(). That method says that a concrete value does not belong
to the abstract value if it has a different structure. This makes sense for the other place
where AbstractValue::validate() is called: during OSR entry, where we are talking about a
JSValue that we see *right now*. It doesn't make sense in the CFA, since in the CFA any
value we observe in the code is a value whose structure may change when the code starts
running, and so we cannot use the value's current structure to infer things about the code
when it starts running.


I fixed the above problems by (1) changing filterByValue() to not filter the structure, (2)
changing filterByValue() and the CheckFunction case to not invalidate the CFA, and (3)
making sure that nobody else was misusing AbstractValue::validate() (they weren't).

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::executeEffects):

  • dfg/DFGAbstractValue.h:

(JSC::DFG::AbstractValue::filterByValue):

LayoutTests:

Reviewed by Oliver Hunt.

This hilarious test fails prior to the rest of this patch.

  • fast/js/dfg-check-function-change-structure-expected.txt: Added.
  • fast/js/dfg-check-function-change-structure.html: Added.
  • fast/js/jsc-test-list:
  • fast/js/script-tests/dfg-check-function-change-structure.js: Added.

(foo):
(bar):

6:59 PM Changeset in webkit [149015] by tkent@chromium.org
  • 5 edits
    2 deletes in trunk/Source/WebCore

Remove TextFieldDecoration feature
https://bugs.webkit.org/show_bug.cgi?id=115068

Reviewed by Andreas Kling.

Only Chromium port used this feature.

  • dom/Element.h: Remove isTextFieldDecoration.
  • html/InputType.cpp:

(WebCore::InputType::destroyShadowSubtree):
Update a comment.

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::createShadowSubtree):
Remove call sites of willAddTextFieldDecorationsTo and addTextFieldDecorationsTo.

  • html/shadow/TextFieldDecorationElement.cpp: Removed.
  • html/shadow/TextFieldDecorationElement.h: Removed.
  • page/ChromeClient.h:

(ChromeClient): Remove willAddTextFieldDecorationsTo and
addTextFieldDecorationsTo

6:23 PM Changeset in webkit [149014] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Default ParserError() initialiser doesn't initialise all fields
https://bugs.webkit.org/show_bug.cgi?id=115074

Reviewed by Joseph Pecoraro.

Only the jsc command prompt depended on this, but we'll fix it to
be on the safe side.

  • parser/ParserError.h:

(JSC::ParserError::ParserError):

6:10 PM Changeset in webkit [149013] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Micro-optimize Length::initFromLength().
<http://webkit.org/b/115073>

From Blink r148621 by <timloh@chromium.org>:

This appears to improve html5-full-render by 1-2% on my system (gcc 4.6.3) by using memcpy
instead of copying members (and branching to copy the union).

  • platform/Length.h:

(WebCore::Length::initFromLength):

6:06 PM Changeset in webkit [149012] by tkent@chromium.org
  • 2 edits in trunk/Source/WebCore

Add missing copyright header to ColorChooserClient.h
https://bugs.webkit.org/show_bug.cgi?id=115067

Reviewed by Andreas Kling.

  • platform/ColorChooserClient.h:

This was added in 2011 by a Google employee.
http://trac.webkit.org/changeset/103168

5:55 PM Changeset in webkit [149011] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Call the correct superclass in RenderSlider::layout().
<http://webkit.org/b/115071>

From Blink r147850 by <cbiesinger@chromium.org>:

The superclass is RenderFlexibleBox, not RenderBlock.

  • rendering/RenderSlider.cpp:

(WebCore::RenderSlider::layout):

5:53 PM Changeset in webkit [149010] by commit-queue@webkit.org
  • 5 edits
    6 adds in trunk

Add platform support for -webkit-background-blend-mode to CG context with background color
https://bugs.webkit.org/show_bug.cgi?id=114412

Patch by Mihai Tica <mitica@adobe.com> on 2013-04-23
Reviewed by Darin Adler.

Source/WebCore:

Tests: css3/compositing/effect-background-blend-mode-color.html, css3/compositing/effect-background-blend-mode-color2.html

This patch adds support for blending on background colors to the Core Graphics port of WebKit.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::fillRoundedRect):

  • platform/graphics/GraphicsContext.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintFillLayerExtended):

LayoutTests:

Adding pixel tests for -webkit-background-blend-mode with bg-color
effect-background-blend-mode-color.html uses accelerated compositing
effect-background-blend-mode-color2.html uses software rendering

  • css3/compositing/effect-background-blend-mode-color-expected.txt: Added.
  • css3/compositing/effect-background-blend-mode-color.html: Added.
  • platform/mac/css3/compositing/effect-background-blend-mode-color-expected.png: Added.
  • css3/compositing/effect-background-blend-mode-color2-expected.txt: Added.
  • css3/compositing/effect-background-blend-mode-color2.html: Added.
  • platform/mac/css3/compositing/effect-background-blend-mode-color2-expected.png: Added.
5:33 PM Changeset in webkit [149009] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove an unused member variable erroneously added in r149007.

  • rendering/LogicalSelectionOffsetCaches.h:

(WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):
(LogicalSelectionOffsetCaches):

5:20 PM Changeset in webkit [149008] by ryuan.choi@samsung.com
  • 3 edits in trunk/Source/WebKit2

[EFL][WK2] Build break after r149004
https://bugs.webkit.org/show_bug.cgi?id=115066

Reviewed by Tim Horton.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::pageBackgroundTransparencyChanged):
Added dummy method for new virtual method.

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:

(CoordinatedLayerTreeHost): Ditto.

5:18 PM Changeset in webkit [149007] by rniwa@webkit.org
  • 9 edits
    1 add in trunk/Source/WebCore

logicalLeftSelectionGap and logicalRightSelectionGap call availableLogicalWidth() multiple times
https://bugs.webkit.org/show_bug.cgi?id=113479

Reviewed by David Hyatt.

Introduced LogicalSelectionOffsetCaches to cache the containing blocks and their logical left and right
selection offsets in computing selection gaps. An instance of this class stores the containing block for
each position type and caches their logical selection offsets when none of their block ancestors up until
its nearest selection root do no have any floating objects or regions and exclusions.

When blockSelectionGaps recurses to another level, it creates a new cache instance by "inheriting"
(like RenderStyle) from the old cache, overriding those containing blocks that are replaced by "this".

This eliminates the need to traverse containing block ancestors in RenderBlock::logicalLeftSelectionOffset
and RenderBlock::logicalRightSelectionOffset, and improves WebKit's performance by roughly 20%.

Performance Tests: Interactive/SelectAll.html

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/LogicalSelectionOffsetCaches.h: Added.

(WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject): Moved from RenderObject.h.
(WebCore::isNonRenderBlockInline): Ditto.
(WebCore::containingBlockForFixedPosition): Extracted from RenderObject::containingBlock.
(WebCore::containingBlockForAbsolutePosition): Ditto.
(WebCore::containingBlockForObjectInFlow): Ditto.

(WebCore::LogicalSelectionOffsetCaches): Added.
(WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::ContainingBlockInfo): Added.
(WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::setBlock): Added. m_hasFloatsOrRegions is
or'ed with itself when ContainingBlockInfo is copy constructed since m_hasFloatsOrRegions needs be true
for a block when any of its containing block ancestors have floats or regions.
(WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::block): Added.
(WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::cache): Added.
(WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::logicalLeftSelectionOffset): Added. Caches
the logical selection offset if it hasn't.
(WebCore::LogicalSelectionOffsetCaches::ContainingBlockInfo::logicalRightSelectionOffset): Ditto.

(WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches): The first constructor is used
for a selection root. The second one is used for inheriting from another cache. In the latter case,
copy all containing block information except ones that need to be overridden by this block.
(WebCore::LogicalSelectionOffsetCaches::containingBlockInfo): Returns a ContainingBlockInfo based on
object's position value.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::selectionGapRectsForRepaint):
(WebCore::RenderBlock::paintSelection):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::inlineSelectionGaps):
(WebCore::RenderBlock::blockSelectionGaps): Exit before instantiating a new LogicalSelectionOffsetCaches
if there is no child to recurse.
(WebCore::RenderBlock::blockSelectionGap):
(WebCore::RenderBlock::logicalLeftSelectionGap):
(WebCore::RenderBlock::logicalRightSelectionGap):
(WebCore::RenderBlock::logicalLeftSelectionOffset): Use LogicalSelectionOffsetCaches to get its containing
block and its logical selection offset.
(WebCore::RenderBlock::logicalRightSelectionOffset): Ditto.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock): Extracted code into LogicalSelectionOffsetCaches.h.

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::lineSelectionGap):

  • rendering/RootInlineBox.h:

(WebCore::RootInlineBox):

4:44 PM Changeset in webkit [149006] by Simon Fraser
  • 3 edits in trunk/Source/WebKit2

Turn off tiled drawing in the Web Inspector
https://bugs.webkit.org/show_bug.cgi?id=115064

Reviewed by Tim Horton.

We get little benefit from making the Web Inspector use tiled drawing;
it doesn't scroll the main frame, so doesn't benefit from the ScrollingCoordinator.
Not using tiled drawing also means that we won't make compositing
layers for position: -webkit-sticky, which avoids a number of issues
with compositing layer proliferation in the inspector.

Also turn off accelerated drawing, since that pref will force a single
compositing layer.

  • UIProcess/WebInspectorProxy.cpp:

(WebKit::createInspectorPageGroup):

  • UIProcess/mac/WebInspectorProxyMac.mm:
4:35 PM Changeset in webkit [149005] by eric.carlson@apple.com
  • 5 edits in trunk/Source/WebCore

[Mac] forced subtitle track should change when audio track language changes
https://bugs.webkit.org/show_bug.cgi?id=115043

Reviewed by Jer Noble.

No new tests, it isn't possible to test this automatically because there is currently no way
to enable/disable audio tracks.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::configureTextTrackGroup): Set m_forcedOrAutomaticSubtitleTrackLanguage.
(WebCore::HTMLMediaElement::mediaPlayerCharacteristicChanged): Call markCaptionAndSubtitleTracksAsUnconfigured

after a delay if the language of the primary audio track changes.

(WebCore::HTMLMediaElement::setClosedCaptionsVisible): markCaptionAndSubtitleTracksAsUnconfigured API change.
(WebCore::HTMLMediaElement::markCaptionAndSubtitleTracksAsUnconfigured): Take parameter to allow

the reconfiguration to happen after a delay to avoid doing it during a callback from the
media engine. Clear the ConfigureTextTracks bit in m_pendingActionFlags to cancel any pending
asynch configuration.

  • html/HTMLMediaElement.h:
  • page/CaptionUserPreferencesMac.mm:

(WebCore::CaptionUserPreferencesMac::textTrackSelectionScore): Clean up logic.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Call characteristicChanged when

the primary audio track language changes.

4:02 PM Changeset in webkit [149004] by Simon Fraser
  • 6 edits in trunk/Source/WebKit2

When the web page transparency changes, DrawingAreaImpl needs to know about it
https://bugs.webkit.org/show_bug.cgi?id=115062

Reviewed by Tim Horton.

The non-composited contents layer owned by LayerTreeHostMac needs to
be marked as opaque or not depending on whether the WebPage draws
a background (or transparent background). It computed this at creation,
but did not dynamically update the state. Fix it so it does.

This fixes cases of garbage pixels in the Web Inspector toolbar area
in some configurations.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::pageBackgroundTransparencyChanged):

  • WebProcess/WebPage/DrawingAreaImpl.h:

(DrawingAreaImpl):

  • WebProcess/WebPage/LayerTreeHost.h:
  • WebProcess/WebPage/mac/LayerTreeHostMac.h:
  • WebProcess/WebPage/mac/LayerTreeHostMac.mm:

(WebKit::LayerTreeHostMac::pageBackgroundTransparencyChanged):

3:43 PM Changeset in webkit [149003] by hmuller@adobe.com
  • 3 edits in trunk/Source/WebCore

[CSS Exclusions] Improve ExclusionPolygon smart pointer safety
https://bugs.webkit.org/show_bug.cgi?id=114984

Reviewed by Dirk Schulze.

Assign newly allocated objects to PassOwnPtrs as early as possible to reduce the
chances of future leaks. No new tests were added, this change adds no new functionality.

  • rendering/ExclusionPolygon.cpp:

(WebCore::computeShapePaddingBounds):
(WebCore::computeShapeMarginBounds):
(WebCore::ExclusionPolygon::shapePaddingBounds):
(WebCore::ExclusionPolygon::shapeMarginBounds):

  • rendering/ExclusionShape.cpp:

(WebCore::ExclusionShape::createExclusionShape):

3:36 PM Changeset in webkit [149002] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Revert "Throttle resize events during live window resize."
<http://webkit.org/b/114292>
<rdar://problem/13411454>
<rdar://problem/13694839>

Reviewed by Geoffrey Garen.

It appears that this caused more glitches than it helped resize performance.

  • page/FrameView.h:
  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::sendResizeEvent):

Turn the null-check of m_frame into an assertion since this method is
no longer called asynchronously.

(WebCore::FrameView::willEndLiveResize):

Ninja fix: call up to the closest superclass implementation.

3:34 PM Changeset in webkit [149001] by Christophe Dumez
  • 10 edits
    1 copy
    1 move
    4 adds
    13 deletes in trunk

Global constructors should be configurable and not enumerable
https://bugs.webkit.org/show_bug.cgi?id=110573

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Update JSObject::deleteProperty() so that mark to set the property
value to undefined if it is in static hashtable of properties. The
previous code was not doing anything in this case and this meant
we could not remove builtin DOMWindow properties such as
"ProgressEvent" even if marked as Deletable.

  • runtime/JSObject.cpp:

(JSC::JSObject::deleteProperty):

  • runtime/Lookup.h:

(JSC):
(JSC::putEntry):
(JSC::lookupPut):

Source/WebCore:

Update JSC Code generator so that global constructors now have the following
attributes:
{ Writable?: true, Enumerable?: false, Configurable?: true }
instead of previously:
{ Writable?: true, Enumerable?: true, Configurable?: false }

The new behavior is according to the Web IDL specification (section 4.4):
http://dev.w3.org/cvsweb/~checkout~/2006/webapi/WebIDL/Overview.html?rev=1.617;content-type=text%2Fhtml#es-interfaces

This also matches the behavior of Firefox.

Tests: fast/js/global-constructors-attributes.html

fast/js/global-constructors-deletable.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateAttributesHashTable):

LayoutTests:

Add new tests to make sure that the global constructors have the
right attributes and to check that they are 'Deletable'.

  • canvas/philip/tests/type.delete-expected.txt: Removed.
  • canvas/philip/tests/type.delete.html: Removed. It was checking that global constructor

could NOT be deleted, which is no longer according to the Web IDL specification.

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • fast/dom/script-tests/constructed-objects-prototypes.js: Update test to hardcode a few

global constructors as they are no longer enumerable.

  • fast/js/getOwnPropertyDescriptor-expected.txt:
  • fast/js/global-constructors.html: Removed. It was relying on the global constructors

to be 'Enumerable', which is not to the latest Web IDL specification.

  • fast/js/global-constructors-attributes-expected.txt: Added.
  • fast/js/global-constructors-attributes.html: Added.
  • fast/js/global-constructors-deletable-expected.txt: Added.
  • fast/js/global-constructors-deletable.html: Added.
  • fast/js/global-constructors-expected.txt: Removed.
  • fast/js/resources/getOwnPropertyDescriptor.js:
  • fast/js/script-tests/global-constructors-attributes.js: Added.
  • fast/js/script-tests/global-constructors-deletable.js: Added.
  • fast/js/script-tests/global-constructors.js: Removed.
  • platform/efl/fast/dom/constructed-objects-prototypes-expected.txt: Removed.
  • platform/efl/fast/js/global-constructors-expected.txt: Removed.
  • platform/gtk/fast/dom/constructed-objects-prototypes-expected.txt: Removed.
  • platform/gtk/fast/js/global-constructors-expected.txt: Removed.
  • platform/mac/fast/js/global-constructors-expected.txt: Removed.
  • platform/qt/fast/dom/constructed-objects-prototypes-expected.txt: Removed.
  • platform/qt/fast/js/global-constructors-expected.txt: Removed.
  • platform/win/fast/dom/constructed-objects-prototypes-expected.txt: Removed.
  • platform/win/fast/js/global-constructors-expected.txt: Removed.
3:23 PM Changeset in webkit [149000] by dgrogan@chromium.org
  • 2 edits in trunk/Tools

Unreviewed. Remove myself from watchlist.

  • Scripts/webkitpy/common/config/watchlist:
3:18 PM Changeset in webkit [148999] by ggaren@apple.com
  • 16 edits
    3 adds in trunk

Source/JavaScriptCore: Filled out more cases of branch folding in bytecode when emitting
expressions into a branching context
https://bugs.webkit.org/show_bug.cgi?id=115057

Reviewed by Filip Pizlo.

This covers a few cases like:

  • while (true) { }
  • while (1) { }
  • if (x) break;
  • if (x) continue;
  • if (boolean_expr == boolean_const) { }
  • if (boolean_expr == 1_or_0) { }
  • if (bitop == 1_or_0) { }

This also works, but will bring shame on your family:

  • while ("hello world") { }

No change on the benchmarks we track, but a 2.5X speedup on a microbenchmark
that uses these techniques.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitNewArray):
(JSC::BytecodeGenerator::emitThrowReferenceError):
(JSC::BytecodeGenerator::emitReadOnlyExceptionIfNeeded):

  • bytecompiler/BytecodeGenerator.h:

(JSC::BytecodeGenerator::shouldEmitDebugHooks): Updated ancillary code
for interface simplifications.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ConstantNode::emitBytecodeInConditionContext): Constants can
jump unconditionally when used within a condition context.

(JSC::ConstantNode::emitBytecode):
(JSC::StringNode::jsValue): Gave constants a common base class so I
could implement their codegen just once.

(JSC::BinaryOpNode::emitBytecodeInConditionContext):
(JSC::canFoldToBranch):
(JSC::BinaryOpNode::tryFoldToBranch): Fold (!/=)= and (!/=)== where
appropriate. A lot of cases are not appropriate because of the surprising
type conversion semantics of ==. For example, if (number == true) { } is
not the same as if (number) { } because the former will up-convert true
to number and then do numeric comparison.

(JSC::singleStatement):
(JSC::IfElseNode::tryFoldBreakAndContinue):
(JSC::IfElseNode::emitBytecode):
(JSC::ContinueNode::trivialTarget):
(JSC::BreakNode::trivialTarget): Fold "if (expression) break" and
"if (expression) continue" into direct jumps from expression.

  • parser/ASTBuilder.h:

(ASTBuilder):
(JSC::ASTBuilder::createIfStatement):

  • parser/NodeConstructors.h:

(JSC::ConstantNode::ConstantNode):
(JSC):
(JSC::NullNode::NullNode):
(JSC::BooleanNode::BooleanNode):
(JSC::NumberNode::NumberNode):
(JSC::StringNode::StringNode):
(JSC::IfElseNode::IfElseNode):

  • parser/Nodes.h:

(JSC::ExpressionNode::isConstant):
(JSC::ExpressionNode::isBoolean):
(JSC::StatementNode::isBreak):
(JSC::StatementNode::isContinue):
(ConstantNode):
(JSC::ConstantNode::isPure):
(JSC::ConstantNode::isConstant):
(NullNode):
(JSC::NullNode::jsValue):
(JSC::BooleanNode::value):
(JSC::BooleanNode::isBoolean):
(JSC::BooleanNode::jsValue):
(JSC::NumberNode::value):
(NumberNode):
(JSC::NumberNode::jsValue):
(StringNode):
(BinaryOpNode):
(IfElseNode):
(ContinueNode):
(JSC::ContinueNode::isContinue):
(BreakNode):
(JSC::BreakNode::isBreak):

  • parser/Parser.cpp:

(JSC::::parseIfStatement):

  • parser/ResultType.h:

(JSC::ResultType::definitelyIsBoolean):
(ResultType):

  • runtime/JSCJSValueInlines.h:

(JSC::JSValue::pureToBoolean):

  • runtime/JSCell.h:
  • runtime/JSCellInlines.h:

(JSC::JSCell::pureToBoolean): Updated for interface changes above.

Source/WTF: Filled out more cases of branch folding in bytecode when emitting expressions into a branching context
https://bugs.webkit.org/show_bug.cgi?id=115057

Reviewed by Filip Pizlo.

Added a helper constructor for TriState so clients can make one without
branching or making assumptions about the integer values of TriStates.

  • wtf/TriState.h:

(WTF::triState):
(WTF):

LayoutTests: Filled out more cases of branch folding in bytecode when emitting expressions into a branching context
https://bugs.webkit.org/show_bug.cgi?id=115057

Reviewed by Filip Pizlo.

Added a performance test for interesting branch types.

  • fast/js/regress/branch-fold-expected.txt: Added.
  • fast/js/regress/branch-fold.html: Added.
  • fast/js/regress/script-tests/branch-fold.js: Added.
3:01 PM Changeset in webkit [148998] by Simon Fraser
  • 4 edits
    4 adds in trunk

Don't create compositing layers for sticky position unless using the ScrollingCoordinator
https://bugs.webkit.org/show_bug.cgi?id=115060

Source/WebCore:

Reviewed by Tim Horton.

Creating compositing layers for sticky position elements is only useful
when we're using a ScrollingCoordinator, so don't create them if
we're not in a frame that uses a scrolling coordinator.

Tests: compositing/layer-creation/no-compositing-for-sticky.html

platform/mac-wk2/tiled-drawing/sticky/sticky-layers.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingForPosition):

LayoutTests:

Reviewed by Tim Horton.

Tests that we create layers for sticky position when in tiled drawing mode,
and that we have no layers when not.

  • compositing/layer-creation/no-compositing-for-sticky-expected.txt: Added.
  • compositing/layer-creation/no-compositing-for-sticky.html: Added.
  • platform/mac-wk2/tiled-drawing/sticky/sticky-layers-expected.txt: Added.
  • platform/mac-wk2/tiled-drawing/sticky/sticky-layers.html: Added.
2:59 PM Changeset in webkit [148997] by Christophe Dumez
  • 34 edits
    1 copy
    2 adds in trunk

'length' property of DOM bindings functions returns wrong value
https://bugs.webkit.org/show_bug.cgi?id=110569

Reviewed by Geoffrey Garen.

Source/WebCore:

Make the 'length' property of Function objects and Interface
objects behave according to the latest Web IDL specification
editor draft:
http://dev.w3.org/2006/webapi/WebIDL/#es-interface-call
http://dev.w3.org/2006/webapi/WebIDL/#es-operations

As a result, only mandatory arguments are taken into account
when computing the value for the 'length' property. This
behavior is consistent with Firefox and Blink.

Tests: fast/js/constructor-length.html

fast/js/function-length.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(GenerateConstructorHelperMethods):
Update the JSC code generator to only account for mandatory parameters
when computing the value for the 'length' property of Function objects
and constructors.

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObjectConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetterConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructorConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTargetConstructor::finishCreation):
(WebCore):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestExceptionConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorConstructor::finishCreation):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
(WebCore):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore):
Rebaseline bindings tests results.

  • fileapi/Blob.idl:

Remove 'ConstructorParameters=2' extended attribute as the correct value
is 0, given that a Blob can be constructed without parameter.

  • html/canvas/DataView.idl:

Update ConstructorParameters extended attribute value from 3 to 1 as only
one of the 3 parameters is mandatory.

  • html/canvas/Float32Array.idl:
  • html/canvas/Float64Array.idl:
  • html/canvas/Int16Array.idl:
  • html/canvas/Int32Array.idl:
  • html/canvas/Int8Array.idl:
  • html/canvas/Uint16Array.idl:
  • html/canvas/Uint32Array.idl:
  • html/canvas/Uint8Array.idl:
  • html/canvas/Uint8ClampedArray.idl:

Remove 'ConstructorParameters=1' extended attribute from interfaces using
'ConstructorTemplate=TypedArray' as the bindings generator now properly
compute the number of constructor parameters for such interfaces.

  • page/WebKitPoint.idl:

Remove 'ConstructorParameters=2' extended attribute as the correct value
should be 0, given that a WebKitPoint can be constructed without parameters.

LayoutTests:

Update fast/js/constructor-length.html test case now that only
mandatory arguments are considered for the constructor length.

Also add a new fast/js/function-length.html test to make sure
that the 'length' property of Function objects from DOM
bindings behaves according to the Web IDL specification as
this was not covered by existing tests.

  • fast/files/blob-constructor-expected.txt: Rebaseline.
  • fast/files/script-tests/blob-constructor.js: Update test now that Blob constructor

length is 0 instead of 2.

  • fast/js/constructor-length.html:
  • fast/js/function-length-expected.txt: Added.
  • fast/js/function-length.html: Added.
  • platform/blackberry/fast/js/constructor-length-expected.txt: Rebaseline.
  • platform/efl/TestExpectations: Unskip fast/js/constructor-length.html for EFL port.
  • platform/efl/fast/js/constructor-length-expected.txt: Copied from LayoutTests/platform/mac/fast/js/constructor-length-expected.txt.
  • platform/gtk/fast/js/constructor-length-expected.txt: Rebaseline.
  • platform/mac/fast/js/constructor-length-expected.txt: Rebaseline.
  • platform/qt/fast/js/constructor-length-expected.txt: Rebaseline.
2:58 PM Changeset in webkit [148996] by commit-queue@webkit.org
  • 6 edits in trunk

NRWT: confusing warning about a line being in a Skipped file when it is really just listed
in _missing_symbol_to_skipped_tests in base.py
https://bugs.webkit.org/show_bug.cgi?id=108884

Patch by Jessie Berlin <jberlin@apple.com> on 2013-04-23
Reviewed by Tim Horton.

Tools:

Remove symbol-based skipped list detection.

  • Scripts/webkitpy/port/base.py:

(Port._missing_feature_to_skipped_tests):
(Port._skipped_tests_for_unsupported_features):

  • Scripts/webkitpy/port/port_testcase.py:

(PortTestCase.test_path_to_test_expectations_file):

LayoutTests:

Explicitly skip the mhtml tests on the Mac and Win ports.

  • platform/mac/TestExpectations:
  • platform/win/TestExpectations:
2:56 PM Changeset in webkit [148995] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r148922): Crash opening web archives or loading web pages
https://bugs.webkit.org/show_bug.cgi?id=115061
<rdar://problem/13714228>

Reviewed by Sam Weinig.

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
Calling ResourceLoader::didReceiveResponse can cause the WebResourceLoader object to go away,
so protect it here and guard against a null core loader.

2:35 PM Changeset in webkit [148994] by benjamin@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebKit

Remove the WebKit layer of wxWebKit
https://bugs.webkit.org/show_bug.cgi?id=115006

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-23
Reviewed by Anders Carlsson.

The wxWebKit port is no longer actively maintained by Kevin
on webkit.org. Remove the code until new maintainers resume the work.

  • wx/WebBrowserShell.cpp: Removed.
  • wx/WebBrowserShell.h: Removed.
  • wx/WebDOMSelection.cpp: Removed.
  • wx/WebDOMSelection.h: Removed.
  • wx/WebEdit.cpp: Removed.
  • wx/WebEdit.h: Removed.
  • wx/WebFrame.cpp: Removed.
  • wx/WebFrame.h: Removed.
  • wx/WebFramePrivate.h: Removed.
  • wx/WebKitDefines.h: Removed.
  • wx/WebKitSupport/ChromeClientWx.cpp: Removed.
  • wx/WebKitSupport/ChromeClientWx.h: Removed.
  • wx/WebKitSupport/ContextMenuClientWx.cpp: Removed.
  • wx/WebKitSupport/ContextMenuClientWx.h: Removed.
  • wx/WebKitSupport/DragClientWx.cpp: Removed.
  • wx/WebKitSupport/DragClientWx.h: Removed.
  • wx/WebKitSupport/EditCommandWx.h: Removed.
  • wx/WebKitSupport/EditorClientWx.cpp: Removed.
  • wx/WebKitSupport/EditorClientWx.h: Removed.
  • wx/WebKitSupport/FrameLoaderClientWx.cpp: Removed.
  • wx/WebKitSupport/FrameLoaderClientWx.h: Removed.
  • wx/WebKitSupport/FrameNetworkingContextWx.h: Removed.
  • wx/WebKitSupport/InspectorClientWx.cpp: Removed.
  • wx/WebKitSupport/InspectorClientWx.h: Removed.
  • wx/WebSettings.cpp: Removed.
  • wx/WebSettings.h: Removed.
  • wx/WebView.cpp: Removed.
  • wx/WebView.h: Removed.
  • wx/WebViewPrivate.h: Removed.
  • wx/bindings/python/samples/simple.py: Removed.
  • wx/bindings/python/webview.i: Removed.
  • wx/bindings/python/wscript: Removed.
  • wx/wscript: Removed.
2:24 PM Changeset in webkit [148993] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

Minor String usage fixes in WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=115021

Reviewed by Andreas Kling.

Use ASCIILiteral when possible + minor fixes.

  • platform/ContentType.cpp:

(WebCore::ContentType::codecs):

  • platform/ContentType.h:

(ContentType):

  • platform/Decimal.cpp:

(WebCore::Decimal::toString):

  • platform/KURL.cpp:

(WebCore::KURL::setProtocol):

2:18 PM Changeset in webkit [148992] by krit@webkit.org
  • 4 edits
    6 adds in trunk

Pick up color and mat values in custom shaders
https://bugs.webkit.org/show_bug.cgi?id=115046

Reviewed by Dean Jackson.

Source/WebCore:

The custom filter functions accept color values and mat2-4 functions
as parameter types. These were implemented in CSS already.
This patch picks up the values and applies them as uniforms to the
custom shader program.

Tests: css3/filters/custom/custom-filter-color.html

css3/filters/custom/custom-filter-matN.html

  • platform/graphics/filters/CustomFilterRenderer.cpp:

(WebCore::CustomFilterRenderer::bindProgramColorParameters): Set uniform for color values.
(WebCore):
(WebCore::CustomFilterRenderer::bindProgramMatrixParameters): Set uniform for mat2-4 values.
(WebCore::CustomFilterRenderer::bindProgramParameters): Call color and matrix functions.

  • platform/graphics/filters/CustomFilterRenderer.h:

(WebCore):
(CustomFilterRenderer):

LayoutTests:

Test that the CSS defined color values and mat2-4 functions get
set as uniforms in shader programs.

  • css3/filters/custom/custom-filter-color-expected.html: Added.
  • css3/filters/custom/custom-filter-color.html: Added.
  • css3/filters/custom/custom-filter-matN-expected.html: Added.
  • css3/filters/custom/custom-filter-matN.html: Added.
2:04 PM Changeset in webkit [148991] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Web process crashes at WebPage::determinePrimarySnapshottedPlugInTimerFired + 8
https://bugs.webkit.org/show_bug.cgi?id=115056
<rdar://problem/13719543>

Reviewed by Simon Fraser.

Stop the primary plugin detection timer if the WebPage is torn down.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

1:58 PM Changeset in webkit [148990] by zhajiang@rim.com
  • 2 edits in trunk/Source/WebCore

Remove redundant code in ViewportArguments::resolve
https://bugs.webkit.org/show_bug.cgi?id=115054

Patch by Jacky Jiang <zhajiang@blackberry.com>.
Reviewed by Kenneth Rohde Christiansen.

Remove redundant code "result.orientation = orientation;".

  • dom/ViewportArguments.cpp:

(WebCore::ViewportArguments::resolve):

1:54 PM Changeset in webkit [148989] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Simplify the baseline JIT loop hint call site.
https://bugs.webkit.org/show_bug.cgi?id=115052.

Reviewed by Geoffrey Garen.

Moved the watchdog timer check after the JIT optimization check. This
ensures that the JIT opimization counter is incremented on every loop
hint even if the watchdog timer fires.

Removed the code that allows the JIT OSR to happen if the watchdog
timer fires but does not result in a termination. It is extremely rare
that the JIT optimization counter would trigger an OSR on the same pass
as when the watchdog timer fire. If it does happen, we'll simply hold
off on servicing the watchdog timer until the next pass (because it's
not time critical).

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_loop_hint):
(JSC::JIT::emitSlow_op_loop_hint):

1:51 PM Changeset in webkit [148988] by Simon Fraser
  • 3 edits
    2 adds in trunk

Tiled layers clipped inside nested transform/preserve-3d hierarchies
https://bugs.webkit.org/show_bug.cgi?id=115044

Source/WebCore:

Reviewed by Dean Jackson.

The optimization added in r139479 to call move() for integral translation
transforms hit a bug in TransformState::move(). If m_accumulatedTransform is
not null, we have to apply it.

Test: compositing/visible-rect/flipped-preserve-3d.html

  • platform/graphics/transforms/TransformState.cpp:

(WebCore::TransformState::move):

LayoutTests:

Reviewed by Dean Jackson.

Testcase that dumps visible rects for tiled layers inside nested
transformed/preserve-3d hierarchies.

  • compositing/visible-rect/flipped-preserve-3d-expected.txt: Added.
  • compositing/visible-rect/flipped-preserve-3d.html: Added.
1:39 PM Changeset in webkit [148987] by Claudio Saavedra
  • 8 edits
    22 adds in trunk

Ctrl+Shift+Right in Windows should select the spacing after the word
https://bugs.webkit.org/show_bug.cgi?id=110487

Reviewed by Ryosuke Niwa.

Source/WebCore:

Tests: editing/deleting/smart-editing-disabled-win.html

editing/execCommand/remove-format-multiple-elements-win.html
editing/execCommand/toggle-link-win.html
editing/execCommand/toggle-unlink-win.html
editing/selection/extend-selection-enclosing-block-win.html
editing/style/make-text-writing-direction-inline-win.html
editing/style/push-down-font-styles-win.html
editing/style/push-down-implicit-styles-around-list-win.html

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::nextWordPositionForPlatform): New method
that takes platform-specific editing behaviour in order to decide
what the next word position is, that is, for Windows, skip
spacing, for all other platforms, behave as currently.
(WebCore::FrameSelection::modifyExtendingRight):
(WebCore::FrameSelection::modifyExtendingForward):
(WebCore::FrameSelection::modifyMovingForward):
(WebCore::FrameSelection::modifyExtendingLeft): Use the new method
in all of the above.

  • editing/FrameSelection.h: Declare the new method.

LayoutTests:

  • editing/deleting/smart-editing-disabled-win-expected.txt: Added.
  • editing/deleting/smart-editing-disabled-win.html: Added.
  • editing/execCommand/query-command-state-expected.txt:
  • editing/execCommand/remove-format-multiple-elements-win-expected.txt: Added.
  • editing/execCommand/remove-format-multiple-elements-win.html: Added.
  • editing/execCommand/script-tests/query-command-state.js:

(runTests): Update to reflect new editing behavior in Windows.

  • editing/execCommand/script-tests/remove-format-multiple-elements-win.js: Added.
  • editing/execCommand/script-tests/toggle-link-win.js: Added.
  • editing/execCommand/script-tests/toggle-unlink-win.js: Added.
  • editing/execCommand/toggle-link-win-expected.txt: Added.
  • editing/execCommand/toggle-link-win.html: Added.
  • editing/execCommand/toggle-unlink-win-expected.txt: Added.
  • editing/execCommand/toggle-unlink-win.html: Added.
  • editing/selection/extend-selection-enclosing-block-win-expected.txt: Added.
  • editing/selection/extend-selection-enclosing-block-win.html: Added.
  • editing/selection/resources/extend-selection.js:

(extendSelectionWithinBlockWin): Method to test behavior in windows.
(extendAndLogSelectionWithinBlock): Add test support for Windows.

  • editing/selection/selection-extend-should-not-move-across-caret-on-mac.html:

Add test support for Windows editing behavior.

  • editing/style/make-text-writing-direction-inline-win-expected.txt: Added.
  • editing/style/make-text-writing-direction-inline-win.html: Added.
  • editing/style/push-down-font-styles-win-expected.txt: Added.
  • editing/style/push-down-font-styles-win.html: Added.
  • editing/style/push-down-implicit-styles-around-list-win-expected.txt: Added.
  • editing/style/push-down-implicit-styles-around-list-win.html: Added.
  • editing/style/script-tests/make-text-writing-direction-inline-win.js: Added.
  • editing/style/script-tests/push-down-font-styles-win.js: Added.
  • editing/style/script-tests/push-down-implicit-styles-around-list-win.js: Added.
1:24 PM Changeset in webkit [148986] by zoltan@webkit.org
  • 2 edits in trunk/LayoutTests

[Qt] REGRESSION (r148975) shape-inside-percentage.html and shape-inside-overflow-fixed-dimensions.html are failing after r148975
https://bugs.webkit.org/show_bug.cgi?id=115053

Unreviewed gardening.

  • platform/qt/TestExpectations: Skip failing tests.
1:17 PM Changeset in webkit [148985] by roger_fong@apple.com
  • 4 edits in trunk/Source

AppleWin build fix.

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • WTF.vcproj/WTF.vcproj:
12:59 PM Changeset in webkit [148984] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Inline SelectorQuery::matches, SelectorQuery::queryAll, SelectorQuery::queryFirst
https://bugs.webkit.org/show_bug.cgi?id=115012

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-23
Reviewed by Andreas Kling.

Each of these function has a single call site:
-SelectorQuery::matches from Element::webkitMatchesSelector.
-SelectorQuery::queryAll from Node::querySelectorAll.
-SelectorQuery::queryFirst from Node::querySelector.

Having a dedicated method to jump to was a little overkill.

  • dom/SelectorQuery.cpp:
  • dom/SelectorQuery.h:

(WebCore::SelectorQuery::matches):
(WebCore::SelectorQuery::queryAll):
(WebCore::SelectorQuery::queryFirst):

12:51 PM Changeset in webkit [148983] by benjamin@webkit.org
  • 1 edit
    7 deletes in trunk/Source/WebCore

Remove wxWebKit's folders from WebCore
https://bugs.webkit.org/show_bug.cgi?id=115007

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-23
Reviewed by Andreas Kling.

The wxWebKit port is no longer actively maintained by Kevin
on webkit.org. Remove the code until new maintainers resume the work.

  • accessibility/wx/AccessibilityObjectWx.cpp: Removed.
  • editing/wx/EditorWx.cpp: Removed.
  • page/wx/DragControllerWx.cpp: Removed.
  • page/wx/EventHandlerWx.cpp: Removed.
  • platform/graphics/wx/ColorWx.cpp: Removed.
  • platform/graphics/wx/FloatRectWx.cpp: Removed.
  • platform/graphics/wx/FontCacheWx.cpp: Removed.
  • platform/graphics/wx/FontCustomPlatformData.cpp: Removed.
  • platform/graphics/wx/FontCustomPlatformData.h: Removed.
  • platform/graphics/wx/FontPlatformData.h: Removed.
  • platform/graphics/wx/FontPlatformDataWx.cpp: Removed.
  • platform/graphics/wx/FontPlatformDataWxMac.mm: Removed.
  • platform/graphics/wx/FontWx.cpp: Removed.
  • platform/graphics/wx/GlyphMapWx.cpp: Removed.
  • platform/graphics/wx/GradientWx.cpp: Removed.
  • platform/graphics/wx/GraphicsContextWx.cpp: Removed.
  • platform/graphics/wx/IconWx.cpp: Removed.
  • platform/graphics/wx/ImageBufferDataWx.h: Removed.
  • platform/graphics/wx/ImageBufferWx.cpp: Removed.
  • platform/graphics/wx/ImageWx.cpp: Removed.
  • platform/graphics/wx/IntPointWx.cpp: Removed.
  • platform/graphics/wx/IntRectWx.cpp: Removed.
  • platform/graphics/wx/IntSizeWx.cpp: Removed.
  • platform/graphics/wx/PathWx.cpp: Removed.
  • platform/graphics/wx/SimpleFontDataWx.cpp: Removed.
  • platform/graphics/wx/TransformationMatrixWx.cpp: Removed.
  • platform/image-decoders/wx/ImageDecoderWx.cpp: Removed.
  • platform/wx/ClipboardWx.cpp: Removed.
  • platform/wx/ClipboardWx.h: Removed.
  • platform/wx/ContextMenuItemWx.cpp: Removed.
  • platform/wx/ContextMenuWx.cpp: Removed.
  • platform/wx/CursorWx.cpp: Removed.
  • platform/wx/DragDataWx.cpp: Removed.
  • platform/wx/DragImageWx.cpp: Removed.
  • platform/wx/EventLoopWx.cpp: Removed.
  • platform/wx/FileSystemWx.cpp: Removed.
  • platform/wx/KeyEventWin.cpp: Removed.
  • platform/wx/KeyboardEventWx.cpp: Removed.
  • platform/wx/LanguageWx.cpp: Removed.
  • platform/wx/LocalDC.h: Removed.
  • platform/wx/LocalizedStringsWx.cpp: Removed.
  • platform/wx/LoggingWx.cpp: Removed.
  • platform/wx/MimeTypeRegistryWx.cpp: Removed.
  • platform/wx/MouseEventWx.cpp: Removed.
  • platform/wx/MouseWheelEventWx.cpp: Removed.
  • platform/wx/PasteboardWx.cpp: Removed.
  • platform/wx/PopupMenuWx.cpp: Removed.
  • platform/wx/PopupMenuWx.h: Removed.
  • platform/wx/RenderThemeWx.cpp: Removed.
  • platform/wx/RunLoopWx.cpp: Removed.
  • platform/wx/SSLKeyGeneratorWx.cpp: Removed.
  • platform/wx/ScreenWx.cpp: Removed.
  • platform/wx/ScrollViewWx.cpp: Removed.
  • platform/wx/ScrollbarThemeWx.cpp: Removed.
  • platform/wx/ScrollbarThemeWx.h: Removed.
  • platform/wx/SearchPopupMenuWx.cpp: Removed.
  • platform/wx/SearchPopupMenuWx.h: Removed.
  • platform/wx/SharedBufferWx.cpp: Removed.
  • platform/wx/SharedTimerWx.cpp: Removed.
  • platform/wx/SoundWx.cpp: Removed.
  • platform/wx/SystemTimeWx.cpp: Removed.
  • platform/wx/TemporaryLinkStubs.cpp: Removed.
  • platform/wx/TextBreakIteratorInternalICUWx.cpp: Removed.
  • platform/wx/WidgetWx.cpp: Removed.
  • platform/wx/wxcode/cairo/non-kerned-drawing.cpp: Removed.
  • platform/wx/wxcode/fontprops.cpp: Removed.
  • platform/wx/wxcode/fontprops.h: Removed.
  • platform/wx/wxcode/gdiplus/non-kerned-drawing.cpp: Removed.
  • platform/wx/wxcode/gtk/fontprops.cpp: Removed.
  • platform/wx/wxcode/gtk/non-kerned-drawing.cpp: Removed.
  • platform/wx/wxcode/gtk/scrollbar_render.cpp: Removed.
  • platform/wx/wxcode/mac/carbon/fontprops.mm: Removed.
  • platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: Removed.
  • platform/wx/wxcode/mac/carbon/scrollbar_render.cpp: Removed.
  • platform/wx/wxcode/non-kerned-drawing.h: Removed.
  • platform/wx/wxcode/scrollbar_render.h: Removed.
  • platform/wx/wxcode/win/fontprops.cpp: Removed.
  • platform/wx/wxcode/win/non-kerned-drawing.cpp: Removed.
  • platform/wx/wxcode/win/scrollbar_render.cpp: Removed.
  • plugins/wx/PluginDataWx.cpp: Removed.
12:44 PM Changeset in webkit [148982] by roger_fong@apple.com
  • 3 edits in trunk/Source/WebCore

AppleWin VS2010 build fix.

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
12:29 PM WebKitGTK/2.0.x edited by kov@webkit.org
gcc-related build fixes (diff)
12:28 PM Changeset in webkit [148981] by benjamin@webkit.org
  • 2 edits in trunk/Source/WTF

Remove unused code of RefCounted after chromium removal
https://bugs.webkit.org/show_bug.cgi?id=115009

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-23
Reviewed by Ryosuke Niwa.

  • wtf/RefCounted.h:

(WTF::RefCountedBase::refCount):
(RefCountedBase):
It looks like addressOfCount() is no longer needed.
Also change the type back to unsigned as it make more sense.

12:21 PM Changeset in webkit [148980] by benjamin@webkit.org
  • 10 edits
    4 deletes in trunk/Tools

Remove wxWebKit support from the Tools
https://bugs.webkit.org/show_bug.cgi?id=115005

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-23
Reviewed by Andreas Kling.

The wxWebKit port is no longer actively maintained by Kevin
on webkit.org. Remove the code until new maintainers resume the work.

  • DumpRenderTree/DumpRenderTree.h:
  • DumpRenderTree/config.h:
  • DumpRenderTree/wscript: Removed.
  • DumpRenderTree/wx/DumpRenderTreeWx.cpp: Removed.
  • DumpRenderTree/wx/DumpRenderTreeWx.h: Removed.
  • DumpRenderTree/wx/GCControllerWx.cpp: Removed.
  • DumpRenderTree/wx/TestRunnerWx.cpp: Removed.
  • DumpRenderTree/wx/WorkQueueItemWx.cpp: Removed.
  • Scripts/build-dumprendertree:
  • Scripts/build-jsc:

(buildMyProject):

  • Scripts/build-webkit:
  • Scripts/old-run-webkit-tests:
  • Scripts/run-launcher:
  • Scripts/webkitdirs.pm:

(argumentsForConfiguration):
(determineConfigurationProductDir):
(determinePassedArchitecture):
(builtDylibPathForName):
(determineIsQt):
(isAppleWebKit):
(launcherPath):
(launcherName):
(checkRequiredSystemConfig):

  • Scripts/webkitpy/common/config/contributionareas.py:
  • waf/build/build_utils.py: Removed.
  • waf/build/settings.py: Removed.
  • waf/build/waf_extensions.py: Removed.
  • waf/build/wxpresets.py: Removed.
  • wx/browser/browser.cpp: Removed.
  • wx/browser/wscript: Removed.
  • wx/install-unix-extras: Removed.
  • wx/packaging/build-debian-installer.py: Removed.
  • wx/packaging/build-mac-installer.py: Removed.
  • wx/packaging/build-win-installer.py: Removed.
  • wx/packaging/debian/changelog: Removed.
  • wx/packaging/debian/compat: Removed.
  • wx/packaging/debian/control: Removed.
  • wx/packaging/debian/copyright: Removed.
  • wx/packaging/debian/python-webkitwx.install: Removed.
  • wx/packaging/debian/rules: Removed.
  • wx/packaging/wxWebKitInstaller.iss.in: Removed.
12:15 PM Changeset in webkit [148979] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WTF

RetainPtr.h should compile with -Wshorten-64-to-32
<http://webkit.org/b/115047>

Reviewed by Anders Carlsson.

Fixes the following warning:

RetainPtr.h:318:20: error: implicit conversion loses integer precision: 'CFHashCode' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]

return CFHash(o.get());

  • wtf/RetainPtr.h:

(WTF::RetainPtrObjectHash::hash): Cast return value of CFHash()
to unsigned. This has no effect on 32-bit architectures, but
takes the lower 32-bits of the CFHashCode (unsigned long) on
64-bit architectures, which is what happens implicitly now.

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

[BlackBerry] Invalid assert in InputHandler::requestCheckingOfString()
https://bugs.webkit.org/show_bug.cgi?id=114952

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-04-23
Reviewed by Rob Buis.

Do not assume that Batch requests are only created whe input field
is focused, the Editor can also create Batch requests when pasting
a selection.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::requestCheckingOfString):
Remove invalid assert.

12:09 PM Changeset in webkit [148977] by commit-queue@webkit.org
  • 7 edits
    3 deletes in trunk/LayoutTests

Remove fast/js/i18n-bindings-locale.html
https://bugs.webkit.org/show_bug.cgi?id=115024

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-23
Reviewed by Geoffrey Garen.

Remove V8-i18n-extension test(r78095) from all ports.

  • fast/js/i18n-bindings-locale-expected.txt: Removed.
  • fast/js/i18n-bindings-locale.html: Removed.
  • fast/js/script-tests/i18n-bindings-locale.js: Removed.
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
11:57 AM Changeset in webkit [148976] by roger_fong@apple.com
  • 4 edits in trunk/Source/WebCore

AppleWin build fix.

  • inspector/InspectorAllInOne.cpp:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::create):
(WebCore):

  • inspector/InspectorMemoryAgent.h:

(InspectorMemoryAgent):

11:23 AM Changeset in webkit [148975] by zoltan@webkit.org
  • 17 edits
    2 adds in trunk

[CSS Exclusions] shape-inside overflow should be pushed to the outside of the content box
https://bugs.webkit.org/show_bug.cgi?id=114526

Reviewed by David Hyatt.

Source/WebCore:

The specification has changed to define shape-outside as the inverse of an exclusion. Overflowing content
should not overlap the shape, and it should be pushed outside the content box. This change affects several
tests, but only one new has been added. In this change I'm not intended to include the behavior change for
shape-inside on CSS Regions, I'm going to fix that in a follow up patch.

Tests: fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions.html: Modified.

fast/exclusions/shape-inside/shape-inside-bottom-edge.html: Modified.
fast/exclusions/shape-inside/shape-inside-empty.html: Modified.
fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions.html: Added.
fast/exclusions/shape-inside/shape-inside-overflow.html: Modified.
fast/exclusions/shape-inside/shape-inside-percentage.html: Modified.
fast/exclusions/shape-inside/shape-inside-rounded-rectangle-004.html: Modified.

  • rendering/ExclusionShapeInfo.h:

(WebCore::ExclusionShapeInfo::clearSegments): Shape-outside's code uses shape-inside codepaths, when that happens we need to provide a
way to reset the m_segments member.
(WebCore::ExclusionShapeInfo::shapeContainingBlockHeight): The containing block's height is stored in m_shapeLogicalHeight, I added a
function to get this value when we need it to calculate the content box's bottom position.
(ExclusionShapeInfo):
(WebCore::ExclusionShapeInfo::lineOverlapsShapeBounds):
(WebCore::ExclusionShapeInfo::lineWithinShapeBounds): Add function to test whether a whole line is within a shape or not.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange): Overflowing content should start under the content box.
(WebCore::RenderBlock::LineBreaker::nextLineBreak): Since we use shape-inside codepaths for shape-outside in layoutRunsAndFloatsInRange function
and for shape-outside is not a requirement to check the line's bottom position is within the shape we might end up with some extra segments here.
In this case we should clear segments, since we don't want to apply any horizontal offsets on the overflowing content.

LayoutTests:

Update and add tests for the new behavior.

  • fast/exclusions/resources/rounded-rectangle.js:

(generateString): Modify the function to not generate overflow content.

  • fast/exclusions/shape-inside/shape-inside-bottom-edge-expected.html:
  • fast/exclusions/shape-inside/shape-inside-bottom-edge.html:
  • fast/exclusions/shape-inside/shape-inside-empty-expected.html:
  • fast/exclusions/shape-inside/shape-inside-empty.html:
  • fast/exclusions/shape-inside/shape-inside-overflow-expected.html:
  • fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html: Added.
  • fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions.html: Added.
  • fast/exclusions/shape-inside/shape-inside-overflow.html:
  • fast/exclusions/shape-inside/shape-inside-percentage-expected.html:
  • fast/exclusions/shape-inside/shape-inside-percentage.html:
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-004-expected.html:
  • fast/exclusions/shape-inside/shape-inside-rounded-rectangle-004.html:
  • fast/regions/shape-inside/shape-inside-on-additional-regions-expected.html:
  • fast/regions/shape-inside/shape-inside-on-additional-regions.html: This test is not intented to test the overflow behavior from

shape-inside on regions, so I set the shape's height to the container's height.

11:00 AM Changeset in webkit [148974] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Objective-C API: Update public header documentation
https://bugs.webkit.org/show_bug.cgi?id=114841

Reviewed by Geoffrey Garen.

Added documentation for the newly added object lifetime-related stuff.

  • API/JSManagedValue.h:
  • API/JSVirtualMachine.h:
10:50 AM Changeset in webkit [148973] by robert@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

checkLayout() should error out if no data-expected* attributes were found
https://bugs.webkit.org/show_bug.cgi?id=114900

Reviewed by Ojan Vafai.

If checkLayout() doesn't find any attributes checking the node's layout then error out
instead of assuming the test has passed. This will ensure data-* attributes containing
typos don't register as a pass.

  • fast/check-layout-error-no-attributes-expected.txt: Added.
  • fast/check-layout-error-no-attributes.html: Added.
  • resources/check-layout.js:

(.):

10:08 AM Changeset in webkit [148972] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Simplify BackForwardListBlackBerry::clear
https://bugs.webkit.org/show_bug.cgi?id=115029

Patch by Xan Lopez <xlopez@igalia.com> on 2013-04-23
Reviewed by Carlos Garcia Campos.

Simplify the implementation of the clear method. Instead of asking
the WebCore implementation to search each item and delete it, set
the capacity of the list to zero directly, which will do the same
thing but more efficiently.

No change in behavior, no new tests.

  • WebCoreSupport/BackForwardListBlackBerry.cpp:

(WebCore::BackForwardListBlackBerry::clear):

9:20 AM Changeset in webkit [148971] by zeno.albisser@digia.com
  • 2 edits in trunk/Tools

[Qt] Fix test_build_check for Qt on Mac after r148075.
https://bugs.webkit.org/show_bug.cgi?id=115038

Reviewed by Csaba Osztrogonác.

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(RunTest.test_build_check):

run-webkit-tests is supposed to fail, if it is run on a different
platform than specified on the command line.
However, Qt allows exactly this for Qt-platforms to allow comparing
of test results of different baselines.
Before r148075 "chromium-linux-x86" was used for testing.
This patch changes the port_name to gtk when running the test on mac.

9:13 AM Changeset in webkit [148970] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Avoid computing style twice when element has no existing style
https://bugs.webkit.org/show_bug.cgi?id=115042

Reviewed by Andreas Kling.

We currently compute element style twice if we end up having to reattach, first in recalcStyle and then
again during attach(). We can easily avoid this in common case where the element has no existing style
(usually because it is display:none).

  • dom/Element.cpp:

(WebCore::Element::recalcStyle):

Don't compute the style and diff if there is no existing style. There is nothing to diff against.
Instead just call reattach() directly, we ended up doing that anyway with the existing code.

9:03 AM Changeset in webkit [148969] by commit-queue@webkit.org
  • 5 edits in trunk

[BlackBerry] Do not access BackForwardListImpl from DRT
https://bugs.webkit.org/show_bug.cgi?id=115041

Patch by Xan Lopez <xlopez@igalia.com> on 2013-04-23
Reviewed by Carlos Garcia Campos.

Source/WebKit/blackberry:

Export the necessary functionality in our BackForwardList port
client in order for DRT to work.

  • WebCoreSupport/BackForwardListBlackBerry.cpp:

(WebCore::BackForwardListBlackBerry::backListWithLimit):
(WebCore):
(WebCore::BackForwardListBlackBerry::forwardListWithLimit):
(WebCore::BackForwardListBlackBerry::capacity):

  • WebCoreSupport/BackForwardListBlackBerry.h:

(BackForwardListBlackBerry):

Tools:

Use the right class to access the bflist functionality.

  • DumpRenderTree/blackberry/DumpRenderTree.cpp:

(BlackBerry::WebKit::dumpBackForwardListForWebView):

8:53 AM Changeset in webkit [148968] by commit-queue@webkit.org
  • 11 edits in trunk

WebSocket: Return type of send() should be void if hybi-10 protocol is chosen
https://bugs.webkit.org/show_bug.cgi?id=65850

Patch by Lamarque V. Souza <Lamarque.Souza@basyskom.com> on 2013-04-23
Reviewed by Alexey Proskuryakov.

Source/WebCore:

WebSocket API draft changed the return type of send() from boolean to void based on Simon
Pieters' post to WHATWG. Firefox 8 and IE 10 already follow the specification, hence it should
make sense for us to do the same when hybi protocol is used.

Original patch by Yuta Kitamura <yutak@chromium.org>

Tests: http/tests/websocket/tests/hybi/bufferedAmount-after-close.html (updated)

http/tests/websocket/tests/hybi/send-after-close-on-unload.html (updated)

  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::send):

  • Modules/websockets/WebSocket.h:
  • Modules/websockets/WebSocket.idl:

LayoutTests:

Update tests and test results because WebSocket.send() now returns undefined when
the hybi WebSocket protocol is used.

  • http/tests/websocket/tests/hybi/bufferedAmount-after-close-expected.txt:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy-expected.txt:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close-in-busy.html:
  • http/tests/websocket/tests/hybi/bufferedAmount-after-close.html:
  • http/tests/websocket/tests/hybi/send-after-close-on-unload-expected.txt:
  • http/tests/websocket/tests/hybi/send-after-close-on-unload.html:
8:11 AM Changeset in webkit [148967] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

ScrollbarThemeComposite depends on Page/FrameView/ChromeClient
https://bugs.webkit.org/show_bug.cgi?id=21361

Reviewed by Andreas Kling.

Remove unused header includes.

  • platform/ScrollbarThemeComposite.cpp:
8:08 AM Changeset in webkit [148966] by Carlos Garcia Campos
  • 16 edits in trunk

[GTK] Add webkit_uri_request_get_http_headers to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=112160

Reviewed by Andreas Kling.

Source/WebCore:

  • platform/network/soup/GOwnPtrSoup.cpp:

(WTF::SoupMessageHeaders): Add freeOwnedGPtr implementation for
SoupMessageHeaders.
(WTF):

  • platform/network/soup/GOwnPtrSoup.h:

(WTF):

  • platform/network/soup/ResourceRequest.h:

(ResourceRequest):

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessageHeaders): New function
to update the given SoupMessageHeaders with the ResourceRequest
headers.
(WebCore::ResourceRequest::updateFromSoupMessageHeaders): New
function to update the ResourceRequest headers with the given
SoupMessageHeaders.
(WebCore::ResourceRequest::updateSoupMessage): Use
updateSoupMessageHeaders() to update the headers.
(WebCore::ResourceRequest::toSoupMessage): Ditto.
(WebCore::ResourceRequest::updateFromSoupMessage): Use
updateFromSoupMessageHeaders to update the headers.

Source/WebKit2:

It allows to load requests with custom headers, or to update the
headers of a request before being sent to the server in the
WebKitWebPage::send-request callback.

  • UIProcess/API/gtk/WebKitURIRequest.cpp:

(_WebKitURIRequestPrivate): Add SoupMessageHeaders.
(webkit_uri_request_get_http_headers): Return the HTTP headers of
the request as a SoupMessageHeaders if the request is HTTP. A new
SoupMessageHeaders is created on demand using the existing headers
of the request.
(webkitURIRequestGetResourceRequest): Instead of returning a const
reference of the internal ResourceRequest, set a request passed as
a reference and update its HTTP headers using the
SoupMessageHeaders if present.

  • UIProcess/API/gtk/WebKitURIRequest.h:
  • UIProcess/API/gtk/WebKitURIRequestPrivate.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_load_request): Update to the new
webkitURIRequestGetResourceRequest API.

  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add

webkit_uri_request_get_http_headers symbol.

  • UIProcess/API/gtk/tests/TestLoaderClient.cpp:

(testWebPageURI):
(testURIRequestHTTPHeaders):
(serverCallback):
(beforeAll):

  • WebProcess/InjectedBundle/API/gtk/WebKitWebPage.cpp:

(willSendRequestForFrame): Update to the new
webkitURIRequestGetResourceRequest API.

Tools:

  • MiniBrowser/gtk/GNUmakefile.am: Add missing libsoup flags to

CPPFLAGS.

7:55 AM Changeset in webkit [148965] by akling@apple.com
  • 3 edits
    2 adds in trunk

Clear StyleResolver state before returning from styleForElement().
<http://webkit.org/b/115035>

Reviewed by Antti Koivisto.

From Blink r148687 by <inferno@chromium.org>.

Source/WebCore:

A cached element pointer in the resolver state was causing confusion because
in some cases a subsequent call to styleForElement() would use a pointer to
a different object that is at the same memory address as the previous one.

Test: fast/css/reload-non-styled-element-crash.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::styleForElement):

LayoutTests:

  • fast/css/reload-non-styled-element-crash-expected.txt: Added.
  • fast/css/reload-non-styled-element-crash.html: Added.
7:54 AM Changeset in webkit [148964] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

XSSAuditor performance regression due to threaded parser changes.
<http://webkit.org/b/115037>
<rdar://problem/13716069>

Reviewed by Anders Carlsson.

From Blink r148792 by <abarth@chromium.org>:

The refactoring we did for the threaded parser introduced a performance
regression in innerHTML because we'd boot up the XSSAuditor for fragment
parsing. This CL returns to our earlier behavior of not booting up the
XSSAuditor when parsing fragments.

  • html/parser/HTMLDocumentParser.cpp:

(WebCore::HTMLDocumentParser::HTMLDocumentParser):

  • html/parser/XSSAuditor.cpp:

(WebCore::XSSAuditor::initForFragment):

  • html/parser/XSSAuditor.h:

(XSSAuditor):

7:45 AM Changeset in webkit [148963] by mikhail.pozdnyakov@intel.com
  • 7 edits
    6 moves
    5 adds in trunk

[WK2] Make EFL WKView API shareable between ports
https://bugs.webkit.org/show_bug.cgi?id=114734

Reviewed by Anders Carlsson.

Source/WebKit2:

EFL-independent part of WKView API (and its implementation) is now
shareable between ports that use Coordinated Graphics and put to
CoordinatedGraphics folders.

  • PlatformEfl.cmake:
  • UIProcess/API/C/CoordinatedGraphics/WKView.cpp: Renamed from Source/WebKit2/UIProcess/API/C/efl/WKView.cpp.

(WKViewCreate):
(WKViewInitialize):
(WKViewGetSize):
(WKViewSetSize):
(WKViewSetViewClient):
(WKViewIsFocused):
(WKViewSetIsFocused):
(WKViewIsVisible):
(WKViewSetIsVisible):
(WKViewGetContentScaleFactor):
(WKViewSetContentScaleFactor):
(WKViewGetContentPosition):
(WKViewSetContentPosition):
(WKViewSetUserViewportTranslation):
(WKViewUserViewportToContents):
(WKViewPaintToCurrentGLContext):
(WKViewGetPage):
(WKViewSetDrawsBackground):
(WKViewGetDrawsBackground):
(WKViewSetDrawsTransparentBackground):
(WKViewGetDrawsTransparentBackground):
(WKViewSetThemePath):
(WKViewSuspendActiveDOMObjectsAndAnimations):
(WKViewResumeActiveDOMObjectsAndAnimations):
(WKViewSetShowsAsSource):
(WKViewGetShowsAsSource):
(WKViewExitFullScreen):

  • UIProcess/API/C/CoordinatedGraphics/WKView.h: Renamed from Source/WebKit2/UIProcess/API/C/efl/WKView.h.
  • UIProcess/API/C/efl/WKViewEfl.cpp: Added.

(WKViewPaintToCairoSurface):
(WKViewCreateSnapshot):

  • UIProcess/API/C/efl/WKViewEfl.h: Added.
  • UIProcess/API/efl/EwkView.cpp:

(EwkView::EwkView):

  • UIProcess/API/efl/EwkView.h:
  • UIProcess/CoordinatedGraphics/WebView.cpp: Renamed from Source/WebKit2/UIProcess/efl/WebView.cpp.

(WebKit):
(WebKit::WebView::WebView):
(WebKit::WebView::~WebView):
(WebKit::WebView::initialize):
(WebKit::WebView::setSize):
(WebKit::WebView::setFocused):
(WebKit::WebView::setVisible):
(WebKit::WebView::setUserViewportTranslation):
(WebKit::WebView::userViewportToContents):
(WebKit::WebView::paintToCurrentGLContext):
(WebKit::WebView::setThemePath):
(WebKit::WebView::setDrawsBackground):
(WebKit::WebView::drawsBackground):
(WebKit::WebView::setDrawsTransparentBackground):
(WebKit::WebView::drawsTransparentBackground):
(WebKit::WebView::suspendActiveDOMObjectsAndAnimations):
(WebKit::WebView::resumeActiveDOMObjectsAndAnimations):
(WebKit::WebView::setShowsAsSource):
(WebKit::WebView::showsAsSource):
(WebKit::WebView::exitFullScreen):
(WebKit::WebView::initializeClient):
(WebKit::WebView::didChangeContentsSize):
(WebKit::WebView::transformFromScene):
(WebKit::WebView::transformToScene):
(WebKit::WebView::coordinatedGraphicsScene):
(WebKit::WebView::updateViewportSize):
(WebKit::WebView::dipSize):
(WebKit::WebView::createDrawingAreaProxy):
(WebKit::WebView::setViewNeedsDisplay):
(WebKit::WebView::displayView):
(WebKit::WebView::scrollView):
(WebKit::WebView::viewSize):
(WebKit::WebView::isViewWindowActive):
(WebKit::WebView::isViewFocused):
(WebKit::WebView::isViewVisible):
(WebKit::WebView::isViewInWindow):
(WebKit::WebView::processDidCrash):
(WebKit::WebView::didRelaunchProcess):
(WebKit::WebView::pageClosed):
(WebKit::WebView::toolTipChanged):
(WebKit::WebView::setCursor):
(WebKit::WebView::setCursorHiddenUntilMouseMoves):
(WebKit::WebView::registerEditCommand):
(WebKit::WebView::clearAllEditCommands):
(WebKit::WebView::canUndoRedo):
(WebKit::WebView::executeUndoRedo):
(WebKit::WebView::screenToWindow):
(WebKit::WebView::windowToScreen):
(WebKit::WebView::doneWithKeyEvent):
(WebKit::WebView::doneWithTouchEvent):
(WebKit::WebView::createPopupMenuProxy):
(WebKit::WebView::createContextMenuProxy):
(WebKit::WebView::createColorChooserProxy):
(WebKit::WebView::setFindIndicator):
(WebKit::WebView::enterAcceleratedCompositingMode):
(WebKit::WebView::exitAcceleratedCompositingMode):
(WebKit::WebView::updateAcceleratedCompositingMode):
(WebKit::WebView::didCommitLoadForMainFrame):
(WebKit::WebView::didFinishLoadingDataForCustomRepresentation):
(WebKit::WebView::customRepresentationZoomFactor):
(WebKit::WebView::setCustomRepresentationZoomFactor):
(WebKit::WebView::flashBackingStoreUpdates):
(WebKit::WebView::findStringInCustomRepresentation):
(WebKit::WebView::countStringMatchesInCustomRepresentation):
(WebKit::WebView::updateTextInputState):
(WebKit::WebView::handleDownloadRequest):
(WebKit::WebView::convertToDeviceSpace):
(WebKit::WebView::convertToUserSpace):
(WebKit::WebView::didChangeViewportProperties):
(WebKit::WebView::pageDidRequestScroll):
(WebKit::WebView::didRenderFrame):
(WebKit::WebView::pageTransitionViewportReady):

  • UIProcess/CoordinatedGraphics/WebView.h: Renamed from Source/WebKit2/UIProcess/efl/WebView.h.

(WebCore):
(WebKit):
(WebView):
(WebKit::WebView::size):
(WebKit::WebView::isFocused):
(WebKit::WebView::isVisible):
(WebKit::WebView::setContentScaleFactor):
(WebKit::WebView::contentScaleFactor):
(WebKit::WebView::setContentPosition):
(WebKit::WebView::contentPosition):
(WebKit::WebView::pageRef):
(WebKit::WebView::page):

  • UIProcess/CoordinatedGraphics/WebViewClient.cpp: Renamed from Source/WebKit2/UIProcess/efl/WebViewClient.cpp.

(WebKit):
(WebKit::WebViewClient::viewNeedsDisplay):
(WebKit::WebViewClient::didChangeContentsSize):
(WebKit::WebViewClient::webProcessCrashed):
(WebKit::WebViewClient::webProcessDidRelaunch):
(WebKit::WebViewClient::didChangeContentsPosition):
(WebKit::WebViewClient::didRenderFrame):
(WebKit::WebViewClient::didCompletePageTransition):
(WebKit::WebViewClient::didChangeViewportAttributes):
(WebKit::WebViewClient::didChangeTooltip):

  • UIProcess/CoordinatedGraphics/WebViewClient.h: Renamed from Source/WebKit2/UIProcess/efl/WebViewClient.h.

(WebCore):
(WebKit):

  • UIProcess/efl/WebViewEfl.cpp: Added.

(WebKit):
(WebKit::WebView::create):
(WebKit::WebViewEfl::WebViewEfl):
(WebKit::WebViewEfl::setEwkView):
(WebKit::WebViewEfl::paintToCairoSurface):
(WebKit::WebViewEfl::createPopupMenuProxy):
(WebKit::WebViewEfl::createContextMenuProxy):
(WebKit::WebViewEfl::setCursor):
(WebKit::WebViewEfl::updateTextInputState):
(WebKit::WebViewEfl::handleDownloadRequest):

  • UIProcess/efl/WebViewEfl.h: Added.

(WebKit):
(WebViewEfl):
(WebKit::WebViewEfl::ewkView):

Tools:

  • TestWebKitAPI/PlatformEfl.cmake:
  • WebKitTestRunner/efl/PlatformWebViewEfl.cpp:

Updated project files accordingly to updated WKView API files
structure.

7:23 AM Changeset in webkit [148962] by akling@apple.com
  • 2 edits in trunk/Tools

Add Benjamin Poulain's @apple.com address to his entry. Unreviewed.

  • Scripts/webkitpy/common/config/contributors.json:
7:21 AM Changeset in webkit [148961] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Speed up ElementData::getAttributeItem(), which is hot.
<http://webkit.org/b/115031>

Reviewed by Antti Koivisto.

From Blink r148622 by <cevans@chromium.org>.

The previous version had a couple of issues:

  • Incurred new WTF::Vector::operator[] checks.
  • Had a branch in _every_ loop iteration that checked whether the storage was Vector or array[] backed.

Both these issues are fixed, and CloneNodes.html seems reliably at +2%.
I also believe GetElement.html is maybe +1%.

For WebKit, also applied the same optimization to getAttributeItemIndex().

  • dom/Element.h:

(WebCore::ElementData::attributeBase):
(WebCore::ElementData::getAttributeItemIndex):
(WebCore::ElementData::getAttributeItem):
(WebCore::ElementData::attributeItem):

5:07 AM Changeset in webkit [148960] by allan.jensen@digia.com
  • 1 edit
    4 adds in trunk/LayoutTests

Baselines for fast/css/image-rendering.html

Unreviewed gardening.

  • fast/css/image-rendering-expected.png: Added.
  • fast/css/image-rendering-expected.txt: Added.
  • platform/gtk-wk1/fast/css/image-rendering-expected.txt: Added.
4:58 AM Changeset in webkit [148959] by charles.wei@torchmobile.com.cn
  • 3 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Need to send out change event for date/color picker
https://bugs.webkit.org/show_bug.cgi?id=114942

Reviewed by Carlos Garcia Campos.

We need to instruct the FormControlElements to send out 'change' event
when the user makes the selection and closes the PagePopup for date/color.

  • WebCoreSupport/ColorPickerClient.cpp:

(WebCore::ColorPickerClient::setValueAndClosePopup):

  • WebCoreSupport/DatePickerClient.cpp:

(WebCore::DatePickerClient::setValueAndClosePopup):

3:29 AM Changeset in webkit [148958] by allan.jensen@digia.com
  • 1 edit
    1 delete in trunk/LayoutTests

Remove the text expecation again to force the bots to fail and generate png expectations.

Unreviewed ungardening.

  • fast/css/image-rendering-expected.txt: Removed.
3:00 AM Changeset in webkit [148957] by zandobersek@gmail.com
  • 20 edits in trunk/LayoutTests

Unreviewed GTK gardening. Rebaselining after r148944.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/table/giantRowspan-expected.txt:
  • platform/gtk/fast/table/giantRowspan2-expected.png:
  • platform/gtk/fast/table/giantRowspan2-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug133756-1-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug133756-2-expected.png:
  • platform/gtk/tables/mozilla/bugs/bug133756-2-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug220536-expected.png:
  • platform/gtk/tables/mozilla/bugs/bug220536-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug8858-expected.txt:
  • platform/gtk/tables/mozilla/core/bloomberg-expected.png:
  • platform/gtk/tables/mozilla/core/bloomberg-expected.txt:
  • platform/gtk/tables/mozilla/core/row_span-expected.png:
  • platform/gtk/tables/mozilla/core/row_span-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
  • platform/gtk/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
2:50 AM Changeset in webkit [148956] by Antoine Quint
  • 23 edits
    2 adds in trunk

Initial advance of text runs should be taken into account
https://bugs.webkit.org/show_bug.cgi?id=114949

Reviewed by Darin Adler.

Source/WebCore:

Keep track of complex text runs' initial advance by adding a new
member to GlyphBuffer and adding the initial advance of any non-first
text run to the advance of the last glyph added for the previous text run.
Additionally, we now correctly handle advance values in the y-axis.

Test: fast/text/complex-initial-advance.html

  • WebCore.exp.in:

Add support for new WebKitSystemInterface API.

  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::drawGlyphBuffer):
Take into account the buffer's initial advance in the y-axis to adjust
the point at which to draw the buffers. Additionally, keep track of advances
on the y-axis as well as the x-axis (which we already were doing) as we iterate
through glyphs and adjust the start point.
(WebCore::Font::drawEmphasisMarks):
Adopt change of GlyphBuffer::advanceAt() return type.

  • platform/graphics/GlyphBuffer.h:

Removing the WINCE-specific GlyphBufferAdvance struct since heights are now necessary.
(WebCore::GlyphBufferAdvance::GlyphBufferAdvance):
New default constructor for GlyphBufferAdvance to support the m_initialAdvance member.
(WebCore::GlyphBuffer::setInitialAdvance):
(WebCore::GlyphBuffer::initialAdvance):
New APIs to get and set the initial advance for a glyph buffer.
(WebCore::GlyphBuffer::advanceAt):
Return a GlyphBufferAdvance rather than a float which used to be only
the glyph buffer's x-axis advance. This is necessary to handle deltas
on the y-axis as well (see WebCore::Font::drawGlyphBuffer).

  • platform/graphics/GlyphBuffer.h:

(GlyphBuffer):
(WebCore::GlyphBuffer::setInitialAdvance):

  • platform/graphics/WidthIterator.cpp:

(WebCore::WidthIterator::advanceInternal):
(WebCore::WidthIterator::advanceOneCharacter):
Adopt change of GlyphBuffer::advanceAt() return type.

  • platform/graphics/cairo/FontCairo.cpp:

(WebCore::Font::drawGlyphs):
Adopt change of GlyphBuffer::advanceAt() return type.

  • platform/graphics/mac/ComplexTextController.cpp:

(WebCore::ComplexTextController::advance):
When processing the first text run, set that run's initial advance as
the glyph buffer's initial advance.
(WebCore::ComplexTextController::adjustGlyphsAndAdvances):
Represent the initial advance for a text run by adjusting the advance
of the last glyph of the previous text run in the glyph buffer.

  • platform/graphics/mac/ComplexTextController.h:

(WebCore::ComplexTextController::ComplexTextRun::initialAdvance):
(ComplexTextRun):
New API to read the inital advance of a complex text run.

  • platform/graphics/mac/ComplexTextControllerCoreText.mm:

(WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun):
Obtain the text run's initial advance via the new wkCTRunGetInitialAdvance
WebKitSystemInterface API.

  • platform/graphics/qt/FontQt.cpp:

(WebCore::Font::drawGlyphs):
Adopt change of GlyphBuffer::advanceAt() return type.

  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:

Add support for the new wkCTRunGetInitialAdvance WebKitSystemInterface API.

  • platform/wx/wxcode/cairo/non-kerned-drawing.cpp:

(WebCore::drawTextWithSpacing):
Adopt change of GlyphBuffer::advanceAt() return type.

  • rendering/svg/SVGTextRunRenderingContext.cpp:

(WebCore::SVGTextRunRenderingContext::drawSVGGlyphs):
Adopt change of GlyphBuffer::advanceAt() return type.

Source/WebKit/mac:

Adding support for new method CTRunGetInitialAdvance in WebKitSystemInterface.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

Source/WebKit2:

Adding support for new method CTRunGetInitialAdvance in WebKitSystemInterface.

  • WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

WebKitLibraries:

  • WebKitSystemInterface.h:
  • libWebKitSystemInterfaceLion.a:
  • libWebKitSystemInterfaceMountainLion.a:

LayoutTests:

  • fast/text/complex-initial-advance-expected.html: Added.
  • fast/text/complex-initial-advance.html: Added.
2:42 AM Changeset in webkit [148955] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Adding failure expectations for two DOM4 constructors tests

that started failing after enabling the subpixel layout due to LayoutUnit overflows.

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

[EFL] EFL gardening
https://bugs.webkit.org/show_bug.cgi?id=115013

Remove editing/selection/doubleclick-whitespace-crash.html and
editing/selection/doubleclick-whitespace-img-crash.html from TestExpectations
after r144221.

Unreviewed, EFL gardening.

Patch by Jinwoo Song <jinwoo7.song@samsung.com> on 2013-04-23

  • platform/efl-wk2/TestExpectations:
2:02 AM Changeset in webkit [148953] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

[Texmap] Don't paint to an intermediate surface when the result is going to be clipped out completely.
https://bugs.webkit.org/show_bug.cgi?id=115015

Patch by Noam Rosenthal <Noam Rosenthal> on 2013-04-23
Reviewed by Allan Sandfeld Jensen.

Maintain a clipBounds rectangle in TextureMapper, and test it against the bounds of an intermediate
surface before it is painted.
This allows us to opt out completely of painting into the surface if the result is going to be optimized
out by the GPU clipping.

Covered by tests in compositing/overlap-blending.

  • platform/graphics/texmap/TextureMapper.h:

(TextureMapper):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapperGL::clipBounds):
(WebCore):

  • platform/graphics/texmap/TextureMapperGL.h:
  • platform/graphics/texmap/TextureMapperImageBuffer.h:
  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::paintUsingOverlapRegions):

1:58 AM Changeset in webkit [148952] by commit-queue@webkit.org
  • 8 edits in trunk/Source

[Coordinated Graphics] Remove the lockAnimations code path
https://bugs.webkit.org/show_bug.cgi?id=114899

Source/WebCore:

Patch by Noam Rosenthal <Noam Rosenthal> on 2013-04-23
Reviewed by Benjamin Poulain.

Remove locking/unlocking animations and checks for the lock state.
The animation locking has been tested to create not-so-smooth animations,
while the use case where the composited animations run out of sync from
the non-composited animations is very rare and unnoticeable.

No new tests, removing functionality that wasn't tested in the first place.

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::CoordinatedGraphicsScene):
(WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
(WebCore::CoordinatedGraphicsScene::commitSceneState):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:

(CoordinatedGraphicsScene):

Source/WebKit2:

Remove locking/unlocking animations and checks for the lock state.
The animation locking has been tested to create not-so-smooth animations,
while the use case where the composited animations run out of sync from
the non-composited animations is very rare and unnoticeable.

Patch by Noam Rosenthal <Noam Rosenthal> on 2013-04-23
Reviewed by Benjamin Poulain.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.cpp:
  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.messages.in:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::flushPendingLayerChanges):
(WebKit::CoordinatedLayerTreeHost::performScheduledLayerFlush):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.h:
1:33 AM Changeset in webkit [148951] by allan.jensen@digia.com
  • 3 edits in trunk/Source/WebKit/qt

[Qt][WK1] MemoryCache is not cleaned by default
https://bugs.webkit.org/show_bug.cgi?id=111443

Reviewed by Jocelyn Turcotte.

Enable deletion of dead resources in the memory cache as long as the MemoryCache is enabled.

This can be disabled or tuned using the dynamic property "_q_deadDecodedDataDeletionInterval".
The default is set to match that of most other ports and WK2 with cache in WebBrowsing mode.

  • Api/qwebsettings.cpp:

(QWebSettings::setObjectCacheCapacities):

  • WebCoreSupport/InitWebCoreQt.cpp:

(WebCore::initializeWebCoreQt):

1:31 AM Changeset in webkit [148950] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Changing failure mark to skip after r148948.

  • platform/qt/TestExpectations:
1:17 AM Changeset in webkit [148949] by allan.jensen@digia.com
  • 11 edits
    3 moves
    7 adds
    3 deletes in trunk

Respect image-rendering setting for determing image-rendering quality
https://bugs.webkit.org/show_bug.cgi?id=113405

Reviewed by Benjamin Poulain.

Source/WebCore:

Remove the CSS4 values as they are not ready for implementation yet.
We still parse the -webkit-crisp-edges and SVG compatibility values to
be closer to the the partial support in Gecko and Presto.

Tests: fast/css/image-rendering-canvas.html

fast/css/image-rendering-parsing.html
fast/css/image-rendering.html
fast/css/optimize-contrast-image.html

  • css/CSSParser.cpp:

(WebCore::isValidKeywordPropertyAndValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EImageRendering):

  • css/CSSValueKeywords.in:
  • css/SVGCSSParser.cpp:

(WebCore::CSSParser::parseSVGValue):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::ImageQualityController::shouldPaintAtLowQuality):

  • rendering/RenderHTMLCanvas.cpp:

(WebCore::RenderHTMLCanvas::paintReplaced):

  • rendering/style/RenderStyleConstants.h:

Tools:

Remove CSS4 Images option. It is not ready for implementation.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Moved the two tests of image-rendering out of CSS3 since it was removed from the final recommendation.
Added tests of the supported values, and upgraded one test to a reference test so that it now tests
that -webkit-optimize-contrast gets converted to and treated as -webkit-crisp-edges.

Baselines for fast/css/image-rendering.html will be uploaded later when the bots have generated them.

  • css3/images/optimize-contrast-image-expected.png: Removed.
  • css3/images/optimize-contrast-image-expected.txt: Removed.
  • fast/css/image-rendering-canvas-expected.png: Renamed from LayoutTests/css3/images/optimize-contrast-canvas-expected.png.
  • fast/css/image-rendering-canvas-expected.txt: Renamed from LayoutTests/css3/images/optimize-contrast-canvas-expected.txt.
  • fast/css/image-rendering-canvas.html: Renamed from LayoutTests/css3/images/optimize-contrast-canvas.html.
  • fast/css/image-rendering-expected.txt: Added.
  • fast/css/image-rendering-parsing-expected.txt: Added.
  • fast/css/image-rendering-parsing.html: Renamed from LayoutTests/fast/css/image-set-parsing.html.
  • fast/css/image-rendering.html: Added.
  • fast/css/optimize-contrast-image-expected.html: Added.
  • fast/css/optimize-contrast-image.html: Renamed from LayoutTests/css3/images/optimize-contrast-image.html.
  • fast/css/script-tests/image-rendering-parsing.js: Added.

(testImageRendering):

1:07 AM Changeset in webkit [148948] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations:
12:48 AM Changeset in webkit [148947] by rniwa@webkit.org
  • 3 edits
    3 deletes in trunk

Unreviewed, rolling out r148923.
http://trac.webkit.org/changeset/148923
https://bugs.webkit.org/show_bug.cgi?id=115020

The patch causes multiple failures in CSS, canvas tests
(Requested by zdobersek on #webkit).

Source/WebCore:

  • platform/graphics/cairo/PlatformContextCairo.cpp:

(WebCore::PlatformContextCairo::drawSurfaceToContext):

LayoutTests:

  • fast/canvas/script-tests/shadow-image.js: Removed.
  • fast/canvas/shadow-image-expected.txt: Removed.
  • fast/canvas/shadow-image.html: Removed.
12:01 AM Changeset in webkit [148946] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Unskip several test cases that are no longer crashing after r148945.

  • platform/efl/TestExpectations:

Apr 22, 2013:

11:51 PM Changeset in webkit [148945] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[EFL] Assertion Failures in Coordinated Graphics after r148433
https://bugs.webkit.org/show_bug.cgi?id=114731

Patch by Noam Rosenthal <Noam Rosenthal> on 2013-04-22
Reviewed by Gyuyoung Kim.

The assert is incorrect. In some cases in coordinated graphics we may have a backing store
and drawsContent would be set to false.

No new tests.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::paintSelf):

11:36 PM Changeset in webkit [148944] by commit-queue@webkit.org
  • 29 edits
    2 adds in trunk

table's text aligned on top instead of center because of rowspan
https://bugs.webkit.org/show_bug.cgi?id=18092

Patch by Suchit Agrawal <a.suchit@samsung.com> on 2013-04-22
Reviewed by Beth Dakin.

Source/WebCore:

Last row in the rowspan is not getting the height of rowspan cell because there is not
enough rows present below rowspan cell and we are strictly applying height of rowspan
to the row which should lay last in the rowspan based of rowspan value.

When row contains rowspan cell and it is last row of the table then
rowspan height is adding to last row of the table.

Test: fast/table/Rowspan-value-more-than-number-of-rows-present.html

It calculates logical height of the rows in the table.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::calcRowLogicalHeight):

LayoutTests:

Added test cases, based on rowspan issue.

  • fast/table/Rowspan-value-more-than-number-of-rows-present-expected.txt: Added.
  • fast/table/Rowspan-value-more-than-number-of-rows-present.html: Added.

Test cases need to do rebaseline in efl, gtk and mac platforms.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:

Test case results are updated in qt platform.

  • platform/qt/fast/table/giantRowspan-expected.png:
  • platform/qt/fast/table/giantRowspan-expected.txt:
  • platform/qt/fast/table/giantRowspan2-expected.png:
  • platform/qt/fast/table/giantRowspan2-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug133756-1-expected.png:
  • platform/qt/tables/mozilla/bugs/bug133756-1-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug133756-2-expected.png:
  • platform/qt/tables/mozilla/bugs/bug133756-2-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug220536-expected.png:
  • platform/qt/tables/mozilla/bugs/bug220536-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug8858-expected.txt:
  • platform/qt/tables/mozilla/core/bloomberg-expected.png:
  • platform/qt/tables/mozilla/core/bloomberg-expected.txt:
  • platform/qt/tables/mozilla/core/row_span-expected.png:
  • platform/qt/tables/mozilla/core/row_span-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug23847-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug65372-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/bug65372-expected.txt:
  • tables/mozilla/core/bloomberg-expected.txt:
  • tables/mozilla/core/row_span-expected.txt:
  • tables/mozilla_expected_failures/bugs/bug131020-3-expected.txt:
  • tables/mozilla_expected_failures/bugs/bug23847-expected.txt:
9:52 PM Changeset in webkit [148943] by mihnea@adobe.com
  • 4 edits
    4 adds in trunk

[CSS Regions] Region's float parent doesn't size according to region size but to content node size
https://bugs.webkit.org/show_bug.cgi?id=111332

Reviewed by David Hyatt.

Source/WebCore:

Tests: fast/regions/intrinsic-sized-regions.html

fast/regions/region-with-float-parent.html

The patch ensures that the computation of region's preferred widths
takes into account the region width/min-width if these values are specified.
Also implemented the computation of intrinsic widths for a region,
based on the min/max preferred widths of the associated flow thread.

  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::computeIntrinsicLogicalWidths):
(WebCore):
(WebCore::RenderRegion::computePreferredLogicalWidths):

  • rendering/RenderRegion.h:

(RenderRegion):

LayoutTests:

Added tests for intrinsic and preferred width computation for region.

  • fast/regions/intrinsic-sized-regions-expected.txt: Added.
  • fast/regions/intrinsic-sized-regions.html: Added.
  • fast/regions/region-with-float-parent-expected.txt: Added.
  • fast/regions/region-with-float-parent.html: Added.
9:47 PM Changeset in webkit [148942] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Fix a typo in MacroAssemblerARMv7.h.
https://bugs.webkit.org/show_bug.cgi?id=115011.

Reviewed by Geoffrey Garen.

  • assembler/ARMAssembler.h: Fix a comment.
  • assembler/ARMv7Assembler.h: Added some comments.
  • assembler/MacroAssemblerARMv7.h:
    • ARMAssembler::PL should be ARMv7Assembler::ConditionPL.
8:32 PM Changeset in webkit [148941] by Patrick Gansterer
  • 3 edits in trunk/Source/WTF

[CMake] Move NullPtr.cpp from PlatformWinCE.cmake to CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=114557

Reviewed by Laszlo Gombos.

This file is not specific to Windwos CE. Move it the the general
CMakeLists.txt so other ports can use it to. It does not affect
ports which do not need it, since it contains a preprocessor guard.

  • wtf/CMakeLists.txt:
  • wtf/PlatformWinCE.cmake:
7:33 PM Changeset in webkit [148940] by jberlin@webkit.org
  • 4 edits in trunk/Source/WebKit

Speculative Windows build fix.

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/win:

  • WebKit.vcproj/WebKitExports.def.in:
7:03 PM Changeset in webkit [148939] by jberlin@webkit.org
  • 7 edits in trunk/LayoutTests

Remove references to the inspector/profiler/memory-instrumentation tests removed in r148921

Rubber-stamped by Benjamin Poulain.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
  • platform/wincairo/TestExpectations:
6:10 PM Changeset in webkit [148938] by weinig@apple.com
  • 5 edits in trunk/Source/WebKit2

Need WebKit SPI to detect whether a page contains form controls
<rdar://problem/13686661>
https://bugs.webkit.org/show_bug.cgi?id=115003

Reviewed by Beth Dakin.

  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:

(WKBundleFrameContainsAnyFormControls):

  • WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::containsAnyFormControls):

  • WebProcess/WebPage/WebFrame.h:
5:43 PM Changeset in webkit [148937] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] REGRESSION (r142806): "Just Leaking" Console errors on launch
https://bugs.webkit.org/show_bug.cgi?id=115002
<rdar://problem/13254212>

Reviewed by Sam Weinig.

  • Shared/EntryPointUtilities/mac/LegacyProcess/ChildProcessMain.mm: (WebKit::BootstrapMain): Added an autorelease pool for code that uses Objective-C.
5:16 PM Changeset in webkit [148936] by fpizlo@apple.com
  • 7 edits in branches/dfgFourthTier/Source/JavaScriptCore

fourthTier: Create an equivalent of Structure::get() that can work from a compilation thread
https://bugs.webkit.org/show_bug.cgi?id=114987

Reviewed by Geoffrey Garen.

This completes the work started by r148570. That patch made it possible to do
Structure::get() without modifying Structure. This patch takes this further, and
makes this thread-safe (for non-uncacheable-dictionaries) via
Structure::getConcurrently(). This method not only doesn't modify Structure, but
also ensures that any concurrent attempts to add to, remove from, or steal the
table from that structure doesn't mess up the result of the call. The call may
return invalidOffset even if a property is *just* about to be added, but it will
never do the reverse: if it returns a property then you can be sure that the
structure really does have that property and always will have it.

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):
(JSC::GetByIdStatus::computeForChain):
(JSC::GetByIdStatus::computeFor):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFromLLInt):
(JSC::PutByIdStatus::computeFor):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::isStringPrototypeMethodSane):

  • runtime/PropertyMapHashTable.h:

(PropertyTable):
(JSC::PropertyTable::findConcurrently):
(JSC):
(JSC::PropertyTable::add):
(JSC::PropertyTable::remove):
(JSC::PropertyTable::reinsert):
(JSC::PropertyTable::rehash):

  • runtime/PropertyTable.cpp:

(JSC::PropertyTable::PropertyTable):

  • runtime/Structure.cpp:

(JSC::Structure::findStructuresAndMapForMaterialization):
(JSC::Structure::getConcurrently):

  • runtime/Structure.h:

(Structure):

  • runtime/StructureInlines.h:

(JSC::Structure::getConcurrently):

5:16 PM Changeset in webkit [148935] by mrobinson@webkit.org
  • 3 edits in trunk/Source/WebKit/gtk

Try to fix the build after enabling gobject-introspection

  • GNUmakefile.am: Disable --warn-error for WebKit1 until we can work out all gir failures.
  • webkit/webkitwebplugin.cpp: Skip this API for introspection because it return a GSList

of pointer (non-boxed) types.

5:10 PM Changeset in webkit [148934] by mrowe@apple.com
  • 2 edits in trunk/Tools

<http://webkit.org/b/114989> Add a user default to allow use of the Safari binary rather than SafariForWebKitDevelopment

Reviewed by Anders Carlsson.

  • Scripts/webkitdirs.pm:

(skipSafariExecutableEntitlementChecks): Look for the SkipSafariExecutableEntitlementChecks default in the
/Library/Preferences/org.webkit.BuildConfiguration preference domain.
(safariPathFromSafariBundle): If the user default is set asking us to skip the entitlement checks, return
the path to the regular Safari binary.

4:50 PM Changeset in webkit [148933] by jberlin@webkit.org
  • 4 edits in trunk/Source/WebCore

Debug build fix.

Rubber-stamped by Ryosuke Niwa.

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::InspectorMemoryAgent):

  • inspector/InspectorMemoryAgent.h:

(WebCore):
(WebCore::InspectorMemoryAgent::create):
(InspectorMemoryAgent):

4:42 PM Changeset in webkit [148932] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Address review feedback I forgot to address in r148929
https://bugs.webkit.org/show_bug.cgi?id=114480

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::willSendRequest): Rework the "what" comment into a more useful "why" comment.

4:40 PM Changeset in webkit [148931] by ryuan.choi@samsung.com
  • 2 edits in trunk/Tools

Unreviewed Efl build fix after r148921

  • TestWebKitAPI/CMakeLists.txt:
4:34 PM Changeset in webkit [148930] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Second Mac debug build fix after r148921

Unreviewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-22

  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::InspectorMemoryAgent):

  • inspector/InspectorMemoryAgent.h:

(InspectorMemoryAgent):

4:28 PM Changeset in webkit [148929] by beidson@apple.com
  • 5 edits
    14 adds in trunk

REGRESSION (r141136): Wiki "Random article" function very broken.
<rdar://problem/13229985> and https://bugs.webkit.org/show_bug.cgi?id=114480

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Test: http/tests/navigation/redirect-to-random-url-versus-memory-cache.html

If we are performing a conditional GET to revalidate a resource and there's a redirect,
check to see if the redirect is to a different URL than the final URL of the resource.

If the URLs differ then we should make the redirect-request unconditional and do a normal load.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::willSendRequest):

  • platform/network/ResourceRequestBase.cpp:

(WebCore::ResourceRequestBase::makeUnconditional):

  • platform/network/ResourceRequestBase.h:

(ResourceRequestBase):

LayoutTests:

  • http/tests/navigation/redirect-to-random-url-versus-memory-cache-expected.txt: Added.
  • http/tests/navigation/redirect-to-random-url-versus-memory-cache.html: Added.
  • http/tests/navigation/resources/randomredirects/0.php: Added.
  • http/tests/navigation/resources/randomredirects/1.php: Added.
  • http/tests/navigation/resources/randomredirects/2.php: Added.
  • http/tests/navigation/resources/randomredirects/3.php: Added.
  • http/tests/navigation/resources/randomredirects/4.php: Added.
  • http/tests/navigation/resources/randomredirects/5.php: Added.
  • http/tests/navigation/resources/randomredirects/6.php: Added.
  • http/tests/navigation/resources/randomredirects/7.php: Added.
  • http/tests/navigation/resources/randomredirects/8.php: Added.
  • http/tests/navigation/resources/randomredirects/9.php: Added.
  • http/tests/navigation/resources/randomredirects/randomredirect.php: Added.
4:27 PM Changeset in webkit [148928] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit/win

Another Windows build fix after r148921

Unreviewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-22

  • AccessibleBase.cpp: Add missing header include.
4:26 PM Changeset in webkit [148927] by Lucas Forschler
  • 2 edits in branches/safari-536.30-branch/LayoutTests

Skip svg/custom/mask-invalidation.svg on Mac
<rdar://problem/13711076>

Patch by David Farler <dfarler@apple.com> on 2013-04-22

  • platform/mac/Skipped:

Skip svg/custom/mask-invalidation.svg

4:25 PM Changeset in webkit [148926] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Add branchAdd32 missing implementation in SH4 base JIT.
This should fix SH4 build, broken since r148893.
https://bugs.webkit.org/show_bug.cgi?id=114993.

Patch by Julien Brianceau <jbrianceau@nds.com> on 2013-04-22
Reviewed by Oliver Hunt.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchAdd32):
(MacroAssemblerSH4):

4:12 PM Changeset in webkit [148925] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

Mac debug build fix after r148921

Unreviewed.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-22

  • page/animation/CompositeAnimation.cpp:
4:08 PM Changeset in webkit [148924] by benjamin@webkit.org
  • 3 edits in trunk/Source/JavaScriptCore

Windows build fix after r148921

Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-04-22

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:
4:06 PM Changeset in webkit [148923] by mrobinson@webkit.org
  • 3 edits
    3 adds in trunk

[Cairo] Canvas-shadow behavior is not being as expected
https://bugs.webkit.org/show_bug.cgi?id=108897

Patch by Rashmi Shyamasundar <rashmi.s2@samsung.com> on 2013-04-22
Reviewed by Martin Robinson.

Source/WebCore:

Use the pattern-extend-mode "CAIRO_EXTEND_NONE" instead of "CAIRO_EXTEND_PAD" in
PlatformContextCairo::drawSurfaceToContext().

In the function PlatformContextCairo::drawSurfaceToContext(), a pattern is being
created from the source surface and this pattern is drawn onto the destination
context. There is no gradient involved. Hence the extend mode for filling the
pattern should be "CAIRO_EXTEND_NONE". If we use the extend mode
"CAIRO_EXTEND_PAD" in PlatformContextCairo::drawSurfaceToContext(), the original
image area is also filled with the shadow color which is not the expected behavior.

Test: fast/canvas/canvas-image-shadow.html

  • platform/graphics/cairo/PlatformContextCairo.cpp:

(WebCore::PlatformContextCairo::drawSurfaceToContext):

LayoutTests:

Test to verify the shadow of an image drawn on canvas.
This test uses an image whose size is smaller than,
the size of the rectangle which should be filled with the image.

  • fast/canvas/canvas-image-shadow-expected.txt: Added.
  • fast/canvas/canvas-image-shadow.html: Added.
  • fast/canvas/green.png: Added.
  • fast/canvas/script-tests/canvas-image-shadow.js: Added.

(draw):

3:56 PM Changeset in webkit [148922] by andersca@apple.com
  • 11 edits in trunk/Source/WebKit2

Web process should decide when to continue main resource loads
https://bugs.webkit.org/show_bug.cgi?id=114995

Reviewed by Sam Weinig.

Main resource loads can be converted to downloads, so we need the ability to let the web process decide when
to continue loading after a response has been received.

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::didReceiveResponseAsync):
For non-main resources, just call continueDidReceiveResponse directly; there's no need to ping-pong to the web process in that case.

(WebKit::NetworkResourceLoader::continueDidReceiveResponse):
Just call ResourceHandle::continueDidReceiveResponse.

  • NetworkProcess/NetworkResourceLoader.messages.in:

Add ContinueDidReceiveResponse message.

  • NetworkProcess/SchedulableLoader.cpp:

(WebKit::SchedulableLoader::SchedulableLoader):
Initialize m_isLoadingMainResource.

  • NetworkProcess/SchedulableLoader.h:

(WebKit::SchedulableLoader::isLoadingMainResource):
Add getter.

(SchedulableLoader):
Move m_shouldClearReferrerOnHTTPSToHTTPRedirect next to the rest of the booleans.

  • Shared/Network/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):

  • Shared/Network/NetworkResourceLoadParameters.h:

(NetworkResourceLoadParameters):
Add isMainResource flag.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleSubresourceLoad):
Pass the cached resource to scheduleLoad.

(WebKit::WebResourceLoadScheduler::schedulePluginStreamLoad):
Pass null to scheduleLoad.

(WebKit::WebResourceLoadScheduler::scheduleLoad):
Initialize isMainResource.

  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::didReceiveResponseWithCertificateInfo):
If this is a main resource load, send back a ContinueDidReceiveResponse message.

3:52 PM Changeset in webkit [148921] by benjamin@webkit.org
  • 395 edits
    30 deletes in trunk

Remove the memory instrumentation code
https://bugs.webkit.org/show_bug.cgi?id=114931

Reviewed by Andreas Kling.

.:

  • Source/autotools/symbols.filter:

Source/JavaScriptCore:

  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreExports.def:
  • JavaScriptCore.vcxproj/JavaScriptCoreExportGenerator/JavaScriptCoreExports.def.in:

Source/WebCore:

The Memory Instrumentation code is unfinished and has already
become out of sync the objects it is supposed to represent.

The current approach does not seem maintainable, it is better to
remove it before someone gets hurt.

By removing the code, the binary become 1240976 bytes smaller.
Yep, almost 1 Mb, bringing WebCore to the size it has 5 months ago :)

  • MostWebCoreFiles: remove the support for memory instrumentation.

Source/WebKit:

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:

Source/WebKit/mac:

  • WebView/WebRenderLayer.mm:

Source/WebKit/win:

  • WebKit.vcproj/WebKitExports.def.in:

Source/WTF:

On Mac x86_64, the code removal cause the binary to be
9224 bytes smaller.

  • GNUmakefile.list.am:
  • WTF.pro:
  • WTF.vcproj/WTF.vcproj:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/Forward.h:
  • wtf/ListHashSet.h:

(ListHashSet):
(ListHashSetNodeAllocator):
(WTF::ListHashSetNodeAllocator::pool):
(WTF::ListHashSetNodeAllocator::pastPool):

  • wtf/MemoryInstrumentation.cpp: Removed.
  • wtf/MemoryInstrumentation.h: Removed.
  • wtf/MemoryInstrumentationArrayBufferView.h: Removed.
  • wtf/MemoryInstrumentationHashCountedSet.h: Removed.
  • wtf/MemoryInstrumentationHashMap.h: Removed.
  • wtf/MemoryInstrumentationHashSet.h: Removed.
  • wtf/MemoryInstrumentationListHashSet.h: Removed.
  • wtf/MemoryInstrumentationSequence.h: Removed.
  • wtf/MemoryInstrumentationString.h: Removed.
  • wtf/MemoryInstrumentationVector.h: Removed.
  • wtf/MemoryObjectInfo.h: Removed.
  • wtf/text/AtomicString.h:
  • wtf/text/StringImpl.h:

(WTF::StringImpl::isASCIILiteral):

  • wtf/text/WTFString.h:

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp: Removed.

LayoutTests:

  • inspector/profiler/memory-instrumentation-cached-images-expected.txt: Removed.
  • inspector/profiler/memory-instrumentation-cached-images.html: Removed.
  • inspector/profiler/memory-instrumentation-canvas-expected.txt: Removed.
  • inspector/profiler/memory-instrumentation-canvas.html: Removed.
  • inspector/profiler/memory-instrumentation-external-array-expected.txt: Removed.
  • inspector/profiler/memory-instrumentation-external-array.html: Removed.
  • inspector/profiler/memory-instrumentation-external-string-expected.txt: Removed.
  • inspector/profiler/memory-instrumentation-external-string.html: Removed.
  • inspector/profiler/memory-instrumentation-test.js: Removed.
3:39 PM Changeset in webkit [148920] by betravis@adobe.com
  • 3 edits
    2 adds in trunk

Do not reuse ExclusionShapeInsideInfo in a recursive region layout
https://bugs.webkit.org/show_bug.cgi?id=114467

Reviewed by David Hyatt.

Source/WebCore:

Elements that respect shape-inside that have inline children should not reuse an
ExclusionShapeInsideInfo for their children's layout. This patch adds the test
for regions. See the details for non-region layout in bug 104582.
https://bugs.webkit.org/show_bug.cgi?id=104582

Test: fast/regions/shape-inside/shape-inside-recursive-layout.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutExclusionShapeInsideInfo): Do not look up a region's
ExclusionShapeInsideInfo if a block is already respecting shape-inside.

LayoutTests:

Test that for various types of inline containers do not reuse
ExclusionShapeInsideInfo when laying out their children.

  • fast/regions/shape-inside/shape-inside-recursive-layout-expected.html: Added.
  • fast/regions/shape-inside/shape-inside-recursive-layout.html: Added.
3:36 PM Changeset in webkit [148919] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

Plugin Snapshotting: Don't consume insane amounts of time detecting the primary plugin
https://bugs.webkit.org/show_bug.cgi?id=114994
<rdar://problem/13696269>

Reviewed by Anders Carlsson.

On some pages, we currently waste a lot of time on every subframe load
and every addPluginView doing primary plugin detection. This patch
attempts to address this via a few minor changes:

  • Only allow detection after the main frame's didFinishLoad comes, instead of the first subframe.
  • Only explicitly detect on the main frame's didFinishLoad (not subframes).
  • Coalesce calls to determinePrimarySnapshottedPlugIn from both addPluginView

(in case JS is adding lots of plugins in a loop) and didFinishLoad.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::addPluginView): Coalesce calls to determinePrimarySnapshottedPlugIn.
(WebKit::WebPage::didFinishLoad):
Coalesce calls to determinePrimarySnapshottedPlugIn.
Bail on subframe loads, we're only interested in the main frame being complete.
(WebKit::WebPage::determinePrimarySnapshottedPlugInTimerFired):
Call determinePrimarySnapshottedPlugIn.

  • WebProcess/WebPage/WebPage.h:

Add m_determinePrimarySnapshottedPlugInTimer and determinePrimarySnapshottedPlugInTimerFired

3:29 PM Changeset in webkit [148918] by jberlin@webkit.org
  • 2 edits in trunk/LayoutTests

Fix r148773.

  • platform/mac-lion/TestExpectations:
3:21 PM Changeset in webkit [148917] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13334446> [Mac] Tweak sandbox profiles.

Reviewed by Anders Carlsson.

Unbreak Lion, which doesn't provide detailed control over IPC.

  • WebProcess/com.apple.WebProcess.sb.in:
3:15 PM Changeset in webkit [148916] by mrobinson@webkit.org
  • 9 edits in trunk

[GTK] Enable introspection always for developer builds
https://bugs.webkit.org/show_bug.cgi?id=114983

Reviewed by Gustavo Noronha Silva.

.:

  • Source/autotools/SetupAutoconfHeader.m4: No longer expose the ENABLE_INTROSPECTION

autoconf header variable. It isn't used and it means that when introspection is enabled
or disabled, there is an unnecessary full rebuild.

Source/WebKit/gtk:

  • GNUmakefile.am: Make warnings during gir scanning cause the build to fail. Eliminate

warnings about deprecated API that the g-ir-scanner uses when generating
the scanner program. Use --quiet to avoid printing lots of output to
non-verbose builds.

Source/WebKit2:

  • GNUmakefile.am: Make warnings during gir scanning cause the build to fail. Eliminate

warnings about deprecated API that the g-ir-scanner uses when generating
the scanner program. Use --quiet.

Tools:

  • Scripts/webkitdirs.pm:

(runAutogenForAutotoolsProjectIfNecessary): Always enable introspection
when using build-webkit.

  • gtk/jhbuildrc: Enable documentation for all jhbuild modules and explicitly

choose the memory gsettings backend while in the jhbuild. This eliminates
warnings from programs that fall back to the memory backend.

3:07 PM Changeset in webkit [148915] by betravis@adobe.com
  • 3 edits in trunk/LayoutTests

[css exclusions] shape-inside-recursive-layout.html should not yet test display: inline-grid
https://bugs.webkit.org/show_bug.cgi?id=114986

Reviewed by Dirk Schulze.

Because the inline-grid value is not yet supported, the test case is falling back to
display: block. This causes an incorrect layout, as block and inline content react to
shape-inside differently.

  • fast/exclusions/shape-inside/shape-inside-recursive-layout-expected.html:
  • fast/exclusions/shape-inside/shape-inside-recursive-layout.html:
2:54 PM Changeset in webkit [148914] by mrobinson@webkit.org
  • 6 edits in trunk/Source

[GTK] Fix remaining introspection warnings
https://bugs.webkit.org/show_bug.cgi?id=114980

Reviewed by Gustavo Noronha Silva.

Source/WebCore:

  • bindings/gobject/WebKitDOMCustom.h: Add scope and transfer annotations and flesh

out gtkdoc for completeness.

  • bindings/gobject/WebKitDOMEventTarget.h:

(_WebKitDOMEventTargetIface): Ditto and also align virtual method names with those used
for the concrete ones.

Source/WebKit/gtk:

  • webkit/webkitspellchecker.h:

(_WebKitSpellCheckerInterface): Align the name of the check_spelling_of_string virtual
method with the concrete method to avoid a g-ir-scanner warning.

  • webkit/webkitversion.h.in: Skip WEBKITGTK_API_VERSION for introspection because it

doesn't follow the appropriate namespace name.

2:45 PM Changeset in webkit [148913] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Make it easier to extend NetworkResourceLoadParameters
https://bugs.webkit.org/show_bug.cgi?id=114992

Reviewed by Sam Weinig.

Turn NetworkResourceLoadParameters into a struct which matches all our other parameter classes in WebKit2. Fill in the struct manually
instead of having a constructor with 9 parameters.

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):

  • NetworkProcess/SchedulableLoader.cpp:

(WebKit::SchedulableLoader::SchedulableLoader):

  • Shared/Network/NetworkResourceLoadParameters.cpp:

(WebKit::NetworkResourceLoadParameters::NetworkResourceLoadParameters):
(WebKit::NetworkResourceLoadParameters::encode):
(WebKit::NetworkResourceLoadParameters::decode):

  • Shared/Network/NetworkResourceLoadParameters.h:

(NetworkResourceLoadParameters):

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::scheduleLoad):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::loadResourceSynchronously):

2:19 PM Changeset in webkit [148912] by timothy_horton@apple.com
  • 11 edits
    2 adds in trunk/Source

PDFPlugin: Support unlocking encrypted PDFs
https://bugs.webkit.org/show_bug.cgi?id=114938
<rdar://problem/12872888>

Reviewed by Alexey Proskuryakov and Oliver Hunt.

If we try to load an encrypted PDF, we need to provide a sane mechanism
through which the user can provide the password. Add a slightly-below-center
password field to match PDFKit's normal behavior.

  • WebKit2.xcodeproj/project.pbxproj: Add PDFPluginPasswordField.{h,mm}
  • WebProcess/Plugins/PDF/PDFLayerControllerDetails.h: Add attemptToUnlockWithPassword:
  • WebProcess/Plugins/PDF/PDFPlugin.h:

Add createPasswordEntryForm, attemptToUnlockPDF, m_passwordField.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(annotationStyle): Make #annotationContainer a flexbox that centers its contents.
This won't affect the normal absolutely-positioned form fields, but the inline
password field will be centered vertically and horizontally.

(WebKit::PDFPlugin::pdfDocumentDidLoad):
If the document is locked when loaded, create a password field.

(WebKit::PDFPlugin::createPasswordEntryForm):
Create a PDFPluginPasswordField and attach it to the document.

(WebKit::PDFPlugin::attemptToUnlockPDF):
Try to unlock the PDF with the given password. If this succeeds, remove
the password field and relayout the scroll view.

(WebKit::PDFPlugin::calculateSizes):
Make the document 0x0 if it is locked, preventing scrolling.

(WebKit::PDFPlugin::handleMouseEvent):
Don't pass mouse events to PDFLayerController while it is locked,
as it has no useful events to provide, and will try to present a
dialog asking for the password if we let a click through.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.h:

(WebKit::PDFPluginAnnotation::eventListener): Added.

  • WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:

(WebKit::PDFPluginAnnotation::handleEvent):
Move event-handling code here from PDFPluginAnnotationEventListener::handleEvent
so that subclasses can override this instead of having to have their own
event listeners (this is also why we now expose eventListener()).

(WebKit::PDFPluginAnnotation::PDFPluginAnnotationEventListener::handleEvent):
Forward the event to our owning PDFPluginAnnotation.

  • WebProcess/Plugins/PDF/PDFPluginPasswordField.h: Added.

(WebKit::PDFPluginPasswordField::PDFPluginPasswordField):

  • WebProcess/Plugins/PDF/PDFPluginPasswordField.mm: Added.

(WebKit::PDFPluginPasswordField::create):
(WebKit::PDFPluginPasswordField::~PDFPluginPasswordField):
Unregister for keyup.

(WebKit::PDFPluginPasswordField::createAnnotationElement):
Register for keyup, and set our element's class to "password".

(WebKit::PDFPluginPasswordField::updateGeometry):
Added. Override updateGeometry and do nothing, as the password field
has a geometry defined by CSS instead of by the PDF content.

(WebKit::PDFPluginPasswordField::handleEvent):
If the enter/return key is pressed, attempt to unlock the PDF. Also,
we do not call either of our superclass' implementations of handleEvent,
because blurring the password field should not destroy it, and tabbing
between fields has no relevance when there can only be one field.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.h:

(WebKit::PDFPluginTextAnnotation::PDFPluginTextAnnotationEventListener):
Removed. We now share our superclass' event listener.

(WebKit::PDFPluginTextAnnotation::textAnnotation): Const.

  • WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:

(WebKit::PDFPluginTextAnnotation::~PDFPluginTextAnnotation):
PDFPluginTextAnnotation no longer has its own event listener,
so there's nothing left to clear here. Just make sure to unregister
our event from PDFPluginAnnotation's shared event listener!

(WebKit::PDFPluginTextAnnotation::createAnnotationElement):
Ensure that we can create a PDFPluginTextAnnotation with a null annotation.

(WebKit::PDFPluginTextAnnotation::commit): Use value().
(WebKit::PDFPluginTextAnnotation::value):
Factor retrieving the value of the form control out of commit().

(WebKit::PDFPluginTextAnnotation::handleEvent):
Call up to PDFPluginAnnotation's handler so that defocus destroys the annotation.

Export HTMLNames::typeAttr.

  • WebCore.exp.in:
1:46 PM Changeset in webkit [148911] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Slow/beachballing when using the find bar on a page with plug-ins
https://bugs.webkit.org/show_bug.cgi?id=114990
<rdar://problem/12832313>

Reviewed by Tim Horton.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::notifyWidget):
Call shouldCreateTransientPaintingSnapshot().

(WebKit::PluginView::shouldCreateTransientPaintingSnapshot):
Don't create a painting snapshot if we're asked to paint the find indicator.

  • WebProcess/Plugins/PluginView.h:

Add new member function.

1:40 PM Changeset in webkit [148910] by ap@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/13334446> [Mac] Tweak sandbox profiles.

Reviewed by Sam Weinig.

  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • WebProcess/com.apple.WebProcess.sb.in:
1:39 PM Changeset in webkit [148909] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Update about:config lists
https://bugs.webkit.org/show_bug.cgi?id=114967

Patch by Eli Fidler <efidler@blackberry.com> on 2013-04-22
Reviewed by Rob Buis.

  • WebCoreSupport/AboutDataEnableFeatures.in:
  • WebCoreSupport/AboutDataHaveFeatures.in:
  • WebCoreSupport/AboutDataUseFeatures.in:
1:39 PM Changeset in webkit [148908] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Use-after-free in CompositeEditCommand::cloneParagraphUnderNewElement
https://bugs.webkit.org/show_bug.cgi?id=114911

Reviewed by Oliver Hunt.

Back ported https://src.chromium.org/viewvc/blink?revision=148680&view=revision.

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):

1:29 PM Changeset in webkit [148907] by eric.carlson@apple.com
  • 4 edits
    2 adds in trunk

[Mac] "automatic" track selection should only select a track that matches user language
https://bugs.webkit.org/show_bug.cgi?id=114976

Reviewed by Jer Noble.

Source/WebCore:

Test: media/track/track-automatic-subtitles.html

  • page/CaptionUserPreferencesMac.mm:

(WebCore::CaptionUserPreferencesMac::textTrackSelectionScore): When in "automatic" mode, only

consider text tracks that match the user's preferred language when the primary audio track
does not.

LayoutTests:

  • media/track/track-automatic-subtitles-expected.txt: Added.
  • media/track/track-automatic-subtitles.html: Added.
  • platform/mac/TestExpectations: Skip track-user-preferences.html, the logic is no longer

correct for the Mac port.

1:02 PM Changeset in webkit [148906] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Cancelling load may cause deadlock in -[AVPlayerItem release]
https://bugs.webkit.org/show_bug.cgi?id=114962

Reviewed by Eric Carlson.

Work around a bug in AVAssetResourceLoader by using a generic, non-main dispatch queue
to recieve AVAssetResourceLoaderDelegate callbacks, and then marshalling those
callbacks to the main thread asynchronously.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::globalLoaderDelegateQueue): Added.
(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL): Use the new global queue.
(-[WebCoreAVFLoaderDelegate resourceLoader:shouldWaitForLoadingOfRequestedResource:]):

Marshall the request to the main queue, and return YES (wait) immediately.

1:01 PM Changeset in webkit [148905] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Don't kill our XPC services in response to memory pressure
https://bugs.webkit.org/show_bug.cgi?id=114985
<rdar://problem/13229217>

Reviewed by Mark Rowe.

  • Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:

(WebKit::XPCServiceInitializer):
Call xpc_transaction_begin() so we'll never be killed by the kernel when there's memory pressure;
we prefer to manage our own lifetime thank you very much!

  • Shared/mac/ChildProcessMac.mm:

(WebKit::ChildProcess::platformInitialize):
Remove call to disable sudden termination.

12:54 PM Changeset in webkit [148904] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

<rdar://problem/13681842> [Mac] Tweak WebProcess sandbox profile to use
system-graphics function when available.

Reviewed by Sam Weinig.

  • WebProcess/com.apple.WebProcess.sb.in:
12:52 PM Changeset in webkit [148903] by zandobersek@gmail.com
  • 13 edits in trunk

[GTK] Set up libPlatform.la
https://bugs.webkit.org/show_bug.cgi?id=114168

Reviewed by Martin Robinson.

.:

  • GNUmakefile.am: Define the platform_cppflags and platform_sources variables.

Source/Platform:

  • GNUmakefile.am: Set up the libPlatform.la static library to build the source files listed in platform_sources.

As with the libPlatformGtk.la library, only the Source/WebCore/platform and its subdirectories are allowed to be
searched for headers to include, providing a convenient way to detect any platform violations. These directories
are listed in the platform_webcore_cppflags variable.

Source/WebCore:

No new tests - no new functionality.

  • GNUmakefile.am: Also add the LevelDB-specific cppflags to the platform_cppflags if required as the LevelDB

code is now built into the new libPlatform.la library.

  • GNUmakefile.list.am: Build a small set of non-GTK-specific platform source files that are already free of

platform violations into the new libPlatform.la library.

Source/WebKit/gtk:

  • GNUmakefile.am: Add the new libPlatform.la library to the libwebkitgtk library.

Source/WebKit2:

  • GNUmakefile.am: Add the new libPlatform.la library to the libwebkitgtk library. Link the WebKitPluginProcess

executable against libPlatform.la as well.

Tools:

  • GNUmakefile.am: Link the DumpRenderTree executable against both libPlatform.la and libPlatformGtk.la libraries.
12:47 PM Changeset in webkit [148902] by weinig@apple.com
  • 6 edits
    7 adds in trunk/Source/WebKit2

Hard code plug-in sandbox profile lookup directories and move
the profiles to WebKit2.

Reviewed by Anders Carlsson.

  • PluginProcess/EntryPoint/mac/LegacyProcess/PluginProcessMain.mm:

(WebKit::PluginProcessMainDelegate::getExtraInitializationData):

  • PluginProcess/EntryPoint/mac/XPCService/PluginServiceEntryPoint.mm:

(WebKit::PluginServiceInitializerDelegate::getExtraInitializationData):

  • UIProcess/Plugins/mac/PluginProcessProxyMac.mm:

(WebKit::PluginProcessProxy::platformGetLaunchOptions):
Stop passing the sandbox-profile-directory-path to the plug-in process.

  • PluginProcess/mac/PluginProcessMac.mm:

(WebKit::loadSandboxProfileForDirectory):
(WebKit::loadSandboxProfile):
(WebKit::PluginProcess::initializeSandbox):
Hard code the plug-in sandbox profile lookup to only look in the WebKit2 bundle
and /System/Library/Sandbox/Profiles/.

  • Resources/PlugInSandboxProfiles: Added.

Add profiles.

  • WebKit2.xcodeproj/project.pbxproj:

Copy the profiles to the bundle.

12:37 PM Changeset in webkit [148901] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebKit2

Refactor creation of the full screen window into an (overridable) method.
https://bugs.webkit.org/show_bug.cgi?id=110369

Reviewed by Eric Carlson.

Add a new WKView method -(NSWindow)createFullScreenWindow which can be overridden
by subclasses to provide custom full screen windows to the WKFullScreenWindowController.

  • UIProcess/API/mac/WKView.mm:

(-[WKView fullScreenWindowController]):
(-[WKView createFullScreenWindow]):

  • UIProcess/API/mac/WKViewPrivate.h:
  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController initWithWindow:]):

12:13 PM Changeset in webkit [148900] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WTF

StringImpl.h should compile with -Wshorten-64-to-32
<http://webkit.org/b/114970>

Reviewed by Darin Adler.

Fixes the following warnings with -Wshorten-64-to-32:

StringImpl.h:317:25: error: implicit conversion loses integer precision: 'uintptr_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]

unsigned hash = reinterpret_cast<uintptr_t>(this);


  • wtf/text/StringImpl.h:

(WTF::StringImpl::StringImpl): Add static_cast<uint32_t>() to
formalize taking the lower 32-bits of the pointer value on
64-bit architectures.

11:40 AM Changeset in webkit [148899] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Fix broken 32-bit build to green the bots.
https://bugs.webkit.org/show_bug.cgi?id=114968.

Unreviewed.

Basically, I moved a JIT::emit_op_loop_hint() and JIT::emitSlow_op_loop_hint()
into common code where they belong, instead of the 64-bit specific section.

Also fixed some SH4 assertions failures which were also caused by
https://bugs.webkit.org/show_bug.cgi?id=114963. Thanks to Julien Brianceau
for pointing this out.

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchAdd32):

  • jit/JITOpcodes.cpp:

(JSC):
(JSC::JIT::emit_op_loop_hint):
(JSC::JIT::emitSlow_op_loop_hint):

11:23 AM Changeset in webkit [148898] by aestes@apple.com
  • 5 edits in trunk

Range.getClientRects() should not include rects for partially selected elements
https://bugs.webkit.org/show_bug.cgi?id=76839

Reviewed by Sam Weinig.

Source/WebCore:

CSSOM says that Range.getClientRects() should include the border boxes
of each element selected by the range. However, we were also
incorrectly including border boxes for partially selected elements.
For instance, consider the following selection:

<div>line one<br>line two</div>
-------------

The <div> is two lines tall, but only the first line is selected.
Despite this, we'd include the <div>'s border box since its start tag
was included in the selection.

Fix this by excluding partially selected elements. This is accomplished
by skipping over elements that come after the start boundary point of
the range but are ancestors of the end boundary point.

Added test cases to LayoutTests/fast/dom/Range/getClientRects.html.

  • dom/Range.cpp:

(WebCore::Range::getBorderAndTextQuads):

LayoutTests:

  • fast/dom/Range/getClientRects-expected.txt: Updated expected result.
  • fast/dom/Range/getClientRects.html: Added new test cases.
11:21 AM Changeset in webkit [148897] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2013-04-22 Oliver Hunt <oliver@apple.com>

Perform null check before trying to use the result of readline()

RS=Gavin

  • jsc.cpp: (runInteractive):
11:19 AM Changeset in webkit [148896] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

2013-04-22 Oliver Hunt <oliver@apple.com>

Fix assertions to account for new Vector layout

RS=Gavin

  • llint/LLIntData.cpp: (JSC::LLInt::Data::performAssertions):
11:11 AM Changeset in webkit [148895] by eric.carlson@apple.com
  • 3 edits in trunk/LayoutTests

Unreviewed Mac gardening. Update a test and results now that forced text
tracks are supported.

  • media/track/track-in-band-expected.txt:
  • media/track/track-in-band.html:
10:56 AM Changeset in webkit [148894] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

Crash on OS X when shift clicking outside of input
https://bugs.webkit.org/show_bug.cgi?id=104058

Patch by Yi Shen <max.hong.shen@gmail.com> on 2013-04-22
Reviewed by Chang Shu.

Source/WebCore:

Shift clicking outside of a focused div while removing the focused div from
the dom tree at the same time may hit a null visible position, which should
not be used to calculate the text distance with the new selection's start and
end position. Otherwise, the browser may crash.

Test: editing/selection/crash-on-shift-click.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMousePressEventSingleClick):

LayoutTests:

Add test for shift click crash issue.

  • editing/selection/crash-on-shift-click-expected.txt: Added.
  • editing/selection/crash-on-shift-click.html: Added.
10:37 AM Changeset in webkit [148893] by mark.lam@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

Change baseline JIT watchdog timer check to use the proper fast slow path
infrastructure.
https://bugs.webkit.org/show_bug.cgi?id=114963.

Reviewed by Oliver Hunt.

SH4 parts contributed by Julien Brianceau.

  • assembler/ARMAssembler.h:
  • assembler/MacroAssemblerARM.h:
  • assembler/MacroAssemblerARMv7.h:
  • assembler/MacroAssemblerMIPS.h:

(JSC::MacroAssemblerMIPS::branchAdd32):

  • assembler/MacroAssemblerSH4.h:

(JSC::MacroAssemblerSH4::branchAdd32):

  • assembler/MacroAssemblerX86Common.h:
  • assembler/SH4Assembler.h:
  • jit/JIT.cpp:

(JSC::JIT::emitEnterOptimizationCheck):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:

(JSC::JIT::emitEnterOptimizationCheck):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_loop_hint):
(JSC::JIT::emitSlow_op_loop_hint):
(JSC::JIT::emit_op_enter):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_enter):

10:02 AM Changeset in webkit [148892] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebCore

Scrollbar should not depend on EventHandler, Frame and FrameView
https://bugs.webkit.org/show_bug.cgi?id=114941

Reviewed by Darin Adler.

It's a layering violation that Scrollbar uses EventHandler, Frame
and FrameView. Frame is used to get the EventHandler that is used
to set mousePressed to false after a Scrollbar::mouseUp(). This is
not really needed, since EventHandler already sets m_mousePressed
to false when calling Scrollbar::mouseUp(). The PopupMenu windows
implementation also calls Scrollbar::mouseUp(), but that scrollbar
is not inside a FrameView.

  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::isScrollViewScrollbar):
isScrollViewScrollbar() is a method of ScrollView so we don't need
to cast to FrameView.
(WebCore::Scrollbar::mouseUp): Remove EventHandler ussage.

10:00 AM Changeset in webkit [148891] by akling@apple.com
  • 7 edits in trunk/Source

Shrink baseline size of WTF::Vector on 64-bit by switching to unsigned capacity and size.
<http://webkit.org/b/97268>
<rdar://problem/12376519>

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Update LLInt WTF::Vector offset constants to match the new memory layout.

  • llint/LowLevelInterpreter.asm:

Source/WebCore:

  • CMakeLists.txt: Add a workaround for GCC 4.6.x in Release mode so it

does not crash.

Source/WTF:

Shrink Vector by 8 bytes on 64-bit by using 32-bit capacity and size.
Vector now inherits from VectorBuffer instead of having a VectorBuffer member;
this is necessary for m_size to fall into the padding after the base class members.

The WTF::Vector API still uses size_t.

Based on Blink r148313 by <cevans@chromium.org>.

  • wtf/SizeLimits.cpp:
  • wtf/Vector.h:

(WTF::VectorBufferBase::allocateBuffer):
(WTF::VectorBufferBase::tryAllocateBuffer):
(VectorBufferBase):
(WTF::VectorBuffer::shouldReallocateBuffer):
(Vector):
(WTF::Vector::Vector):
(WTF::Vector::capacity):
(WTF::Vector::at):
(WTF::Vector::data):
(WTF::Vector::swap):
(WTF::::Vector):
(WTF::::reserveCapacity):
(WTF::::tryReserveCapacity):
(WTF::::reserveInitialCapacity):
(WTF::::shrinkCapacity):
(WTF::::releaseBuffer):

9:43 AM Changeset in webkit [148890] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry] URL decode data: URLs before passing to the platform media player.
https://bugs.webkit.org/show_bug.cgi?id=114887

Patch by John Griggs <jgriggs@blackberry.com> on 2013-04-22
Reviewed by Rob Buis.

Pass data URL through URL decoding before passing to platform media player. PR 313635.

Reviewed internally by Liam Quinn

  • platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:

(WebCore::MediaPlayerPrivate::load):

9:40 AM Changeset in webkit [148889] by jberlin@webkit.org
  • 1 edit
    1 copy
    1 move
    2 adds in trunk/LayoutTests

Fix an incorrect rebaseline done in r148830.

Instead of updating the cross platform wk2 results, r148830 should have added efl wk2
specific results. Move the previous mac wk2 specific results into the mac wk2 platform
directory.

  • platform/efl-wk2/loader/go-back-cached-main-resource-expected.txt: Renamed from LayoutTests/platform/wk2/loader/go-back-cached-main-resource-expected.txt.
  • platform/mac-wk2/loader/go-back-cached-main-resource-expected.txt: Downloaded from the mac-wk2 bots.
9:32 AM Changeset in webkit [148888] by fpizlo@apple.com
  • 2 edits in trunk/Source/WTF

Memory barrier support should also ensure that we always do a compiler fence
https://bugs.webkit.org/show_bug.cgi?id=114934

Reviewed by Michael Saboff.

This is a cherry-pick merge of the WTF part of r148836 from the dfgFourthTier
branch. It fixes a memory ordering bug that is likely asymptomatic, but
nonetheless real: TCSpinLock expects that using a memoryBarrierBeforeUnlock()
prior to setting lockword_ to 0 will ensure that the assignment to lockword_
won't get floated above any of the stores in the critical section. While that
memory barrier does indeed do the right thing on ARM, it doesn't do the right
thing on other architectures: it turns into empty code that the compiler blows
away, which is fine for the hardware since X86 won't reorder that store - but
it's not fine for the compiler, which may still do its own reorderings.

The WTF part of r148836 fixes this by using a compiler fence: an empty asm
volatile block that is marked as clobbering memory.

Instead of doing a separate surgical fix in trunk, I decided to merge the
whole WTF change over, to make merging easier in the future.

Performance testing of this change in dfgFourthTier showed no regression.

  • wtf/Atomics.h:

(WTF::compilerFence):
(WTF::armV7_dmb):
(WTF::armV7_dmb_st):
(WTF::loadLoadFence):
(WTF::loadStoreFence):
(WTF::storeLoadFence):
(WTF::storeStoreFence):
(WTF::memoryBarrierAfterLock):
(WTF::memoryBarrierBeforeUnlock):
(WTF::x86_mfence):

9:03 AM Changeset in webkit [148887] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

[GTK] Add webkit_web_context_set_disk_cache_directory to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=111848

Reviewed by Anders Carlsson.

This allow applications to set a custom directory for the disk
cache.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(webkit_web_context_set_disk_cache_directory):

  • UIProcess/API/gtk/WebKitWebContext.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbol.
  • UIProcess/API/gtk/tests/TestMain.cpp:

(removeNonEmptyDirectory):
(main): Use a different temporary disk cache directory for every
test.

8:57 AM Changeset in webkit [148886] by Carlos Garcia Campos
  • 6 edits in trunk/Source/WebKit2

[SOUP] Soup disk cache should respect the diskCacheDirectory from the process initial parameters
https://bugs.webkit.org/show_bug.cgi?id=111845

Reviewed by Anders Carlsson.

Move the cache initialization to platformInitializeWebProcess() to
create the cache using the directory received from the UI
process. This allows to add public API to set a different disk
cache directory from the UI process.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformDefaultDiskCacheDirectory): Return
default disk cache directory.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformDefaultDiskCacheDirectory): Ditto.

  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl): Remove soup cache initialization.

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainGtk): Ditto.

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess): Initialize
soup cache.

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

[BlackBerry] Update BatteryClientBlackBerry to use our port's new listener interface
https://bugs.webkit.org/show_bug.cgi?id=114892

Patch by Otto Derek Cheung <otcheung@rim.com> on 2013-04-22
Reviewed by Rob Buis.
PR 328147

Modify the client so we only have one listener for battery change events.
The dispatch of different event listeners are handled by BatteryController.

  • WebCoreSupport/BatteryClientBlackBerry.cpp:

(WebCore::BatteryClientBlackBerry::BatteryClientBlackBerry):
(WebCore::BatteryClientBlackBerry::startUpdating):
(WebCore::BatteryClientBlackBerry::stopUpdating):
(WebCore::BatteryClientBlackBerry::onStatusChange):

  • WebCoreSupport/BatteryClientBlackBerry.h:

(BatteryClientBlackBerry):

8:31 AM Changeset in webkit [148884] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WTF

WTF::AtomicString::find() should take unsigned 'start' argument
<http://webkit.org/b/114958>

Reviewed by Darin Adler.

Fixes the following warnings with -Wshorten-64-to-32:

AtomicString.h:113:76: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]

size_t find(UChar c, size_t start = 0) const { return m_string.find(c, start); }


AtomicString.h:115:35: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]

{ return m_string.find(s, start, caseSentitive); }


AtomicString.h:117:35: error: implicit conversion loses integer precision: 'size_t' (aka 'unsigned long') to 'unsigned int' [-Werror,-Wshorten-64-to-32]

{ return m_string.find(s, start, caseSentitive); }


  • wtf/text/AtomicString.h:

(WTF::AtomicString::find): Change type of 'start' argument from
size_t to unsigned.

8:20 AM Changeset in webkit [148883] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] Fix build warning when GESTURE_EVENTS is ON.
https://bugs.webkit.org/show_bug.cgi?id=114812

Patch by Krzysztof Wolanski <k.wolanski@samsung.com> on 2013-04-22
Reviewed by Andreas Kling.

Handle GestureSingleTap in the event type switch.

  • WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:

(WebKit::NetscapePlugin::platformHandleMouseEvent):

8:02 AM Changeset in webkit [148882] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

Update layout test verifying Tab behaves correctly after linking to fragment ID
https://bugs.webkit.org/show_bug.cgi?id=114645

Patch by Mario Sanchez Prada <mario.prada@samsung.com> on 2013-04-22
Reviewed by Chris Fleizach.

  • fast/dom/fragment-activation-focuses-target.html: Updated test.
  • fast/dom/fragment-activation-focuses-target-expected.txt: Updated expectations.
7:26 AM Changeset in webkit [148881] by commit-queue@webkit.org
  • 16 edits in trunk

fix build warning(unused parameter)
https://bugs.webkit.org/show_bug.cgi?id=114855

Patch by Xuefei Ren <xren@blackberry.com> on 2013-04-22
Reviewed by Rob Buis.

Source/WebCore:

remove warning(unused parameter) in
Source/WebCore/platform/graphics/blackberry

  • platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:

(WebCore::CanvasLayerCompositingThreadClient::drawTextures):
(WebCore::CanvasLayerCompositingThreadClient::deleteTextures):
(WebCore::CanvasLayerCompositingThreadClient::commitPendingTextureUploads):

  • platform/graphics/blackberry/FontBlackBerry.cpp:

(WebCore::Font::offsetForPositionForComplexText):

  • platform/graphics/blackberry/FontCacheBlackBerry.cpp:

(WebCore::FontCache::getSimilarFontPlatformData):
(WebCore::FontCache::getTraitsInFamily):

  • platform/graphics/blackberry/GlyphPageTreeNodeBlackBerry.cpp:

(WebCore::GlyphPage::fill):

  • platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:

(WebCore::GraphicsContext3D::ImageExtractor::extractImage):

  • platform/graphics/blackberry/GraphicsContextBlackBerry.cpp:

(WebCore::GraphicsContext::drawConvexPolygon):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::fillRoundedRect):
(WebCore::GraphicsContext::roundToDevicePixels):
(WebCore::GraphicsContext::setPlatformShadow):
(WebCore::GraphicsContext::clipConvexPolygon):
(WebCore::GraphicsContext::setURLForRect):
(WebCore::GraphicsContext::setPlatformStrokeColor):
(WebCore::GraphicsContext::setPlatformFillColor):
(WebCore::GraphicsContext::setPlatformCompositeOperation):

  • platform/graphics/blackberry/ImageBlackBerry.cpp:

(WebCore::BitmapImage::draw):
(WebCore::Image::drawPattern):

  • platform/graphics/blackberry/ImageBufferBlackBerry.cpp:

(WebCore::flushAndDraw):
(WebCore::ImageBuffer::ImageBuffer):
(WebCore::ImageBuffer::copyImage):
(WebCore::ImageBuffer::draw):
(WebCore::ImageBuffer::platformTransformColorSpace):

  • platform/graphics/blackberry/LayerTiler.cpp:

(WebCore::LayerTiler::drawTile):

  • platform/graphics/blackberry/PathBlackBerry.cpp:

(WebCore::GraphicsContext::drawFocusRing):
(WebCore::GraphicsContext::clipPath):

  • platform/graphics/blackberry/PatternBlackBerry.cpp:

(WebCore::Pattern::platformPattern):

Source/WebKit/blackberry:

remove warning(unused parameter) in
Source/WebKit/blackberry/WebKitSupport/InputHandler.cpp

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::extractedTextRequest):

Tools:

remove warning(unused parameter) in
Tools/DumpRenderTree/blackberry/EventSender.cpp

  • DumpRenderTree/blackberry/EventSender.cpp:

(getDragModeCallback):

7:24 AM Changeset in webkit [148880] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] ASSERT in FrameLoaderClient::convertMainResourceLoadToDownload
https://bugs.webkit.org/show_bug.cgi?id=114741

Patch by Xan Lopez <xlopez@igalia.com> on 2013-04-22
Reviewed by George Staikos.

Consider the case where a ResourceHandle won't have a FilterStream
object associated (for example, Blob objects) instead of ASSERTing
pointlessly when asking our network layer for such an object.

This partially fixes fast/dom/HTMLAnchorElement/anchor-nodownload-set.html

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::convertMainResourceLoadToDownload):

7:19 AM Changeset in webkit [148879] by mifenton@rim.com
  • 5 edits
    2 adds in trunk

[BlackBerry] Add additional datalist support.
https://bugs.webkit.org/show_bug.cgi?id=114883

Reviewed by Rob Buis.

PR 210083.

Source/WebCore:

Extend support for datalist to include all non-popup input types.

Re-enabling fast/forms/datalist/input-list

Internally Reviewed by Otto Cheung.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::supportsDataListUI):

Source/WebKit/blackberry:

Properly set state when opening a Date/Time popup and simplify
the logic for showing datalist options.

Internally Reviewed by Otto Cheung.

  • WebKitSupport/InputHandler.cpp:

(BlackBerry::WebKit::InputHandler::openDatePopup):
(BlackBerry::WebKit::InputHandler::showTextInputTypeSuggestionBox):

LayoutTests:

Fix results for fast/forms/datalist/input-list.

Internally Reviewed by Otto Cheung.

  • platform/blackberry/fast/forms/datalist/input-list-expected.txt: Added.
5:39 AM Changeset in webkit [148878] by abucur@adobe.com
  • 1 edit
    56 adds in trunk/LayoutTests

[CSS Regions] Add tests for lists and counters
https://bugs.webkit.org/show_bug.cgi?id=103975

Reviewed by Andreas Kling.

Lists and counters work correctly with regions since r148026 (http://trac.webkit.org/changeset/148026).
This patch adds W3C formatted ref tests to our battery.

  • fast/regions/counters/extract-list-items-001-expected.html: Added.
  • fast/regions/counters/extract-list-items-001.html: Added.
  • fast/regions/counters/extract-list-items-002-expected.html: Added.
  • fast/regions/counters/extract-list-items-002.html: Added.
  • fast/regions/counters/extract-list-items-003-expected.html: Added.
  • fast/regions/counters/extract-list-items-003.html: Added.
  • fast/regions/counters/extract-list-items-004-expected.html: Added.
  • fast/regions/counters/extract-list-items-004.html: Added.
  • fast/regions/counters/extract-list-items-005-expected.html: Added.
  • fast/regions/counters/extract-list-items-005.html: Added.
  • fast/regions/counters/extract-list-items-006-expected.html: Added.
  • fast/regions/counters/extract-list-items-006.html: Added.
  • fast/regions/counters/extract-list-items-007-expected.html: Added.
  • fast/regions/counters/extract-list-items-007.html: Added.
  • fast/regions/counters/extract-list-items-008-expected.html: Added.
  • fast/regions/counters/extract-list-items-008.html: Added.
  • fast/regions/counters/extract-list-items-009-expected.html: Added.
  • fast/regions/counters/extract-list-items-009.html: Added.
  • fast/regions/counters/extract-list-items-010-expected.html: Added.
  • fast/regions/counters/extract-list-items-010.html: Added.
  • fast/regions/counters/extract-list-items-011-expected.html: Added.
  • fast/regions/counters/extract-list-items-011.html: Added.
  • fast/regions/counters/extract-list-items-012-expected.html: Added.
  • fast/regions/counters/extract-list-items-012.html: Added.
  • fast/regions/counters/extract-list-items-013-expected.html: Added.
  • fast/regions/counters/extract-list-items-013.html: Added.
  • fast/regions/counters/extract-list-items-014-expected.html: Added.
  • fast/regions/counters/extract-list-items-014.html: Added.
  • fast/regions/counters/extract-list-items-015-expected.html: Added.
  • fast/regions/counters/extract-list-items-015.html: Added.
  • fast/regions/counters/extract-numbered-paragraphs-divs-001-expected.html: Added.
  • fast/regions/counters/extract-numbered-paragraphs-divs-001.html: Added.
  • fast/regions/counters/extract-numbered-paragraphs-divs-002-expected.html: Added.
  • fast/regions/counters/extract-numbered-paragraphs-divs-002.html: Added.
  • fast/regions/counters/extract-numbered-paragraphs-expected.html: Added.
  • fast/regions/counters/extract-numbered-paragraphs.html: Added.
  • fast/regions/counters/extract-numbered-spans-display-only-some-expected.html: Added.
  • fast/regions/counters/extract-numbered-spans-display-only-some.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-001-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-001.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-002-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-002.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-003-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-003.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-001-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-001.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-002-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-002.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-003-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-003.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-004-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-004.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005-expected.html: Added.
  • fast/regions/counters/extract-ordered-lists-in-regions-explicit-counters-005.html: Added.
  • fast/regions/counters/extract-unordered-lists-in-regions-expected.html: Added.
  • fast/regions/counters/extract-unordered-lists-in-regions.html: Added.
4:51 AM Changeset in webkit [148877] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, gardening. css3-device-adaptation doesn't work for WK1 EFL properly.

  • platform/efl-wk1/TestExpectations: Added tests related to css3-device-adaptation.
4:42 AM Changeset in webkit [148876] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark IndexedDB test as crashing in Release mode and fix duplicate line in
TestExpectations.

  • platform/efl/TestExpectations:
3:56 AM Changeset in webkit [148875] by gyuyoung.kim@samsung.com
  • 2 edits in trunk/LayoutTests

Unreviewed, EFL WK1 gardening. Skip pasteboard tests because EFL WK1 doesn't support it yet.

  • platform/efl-wk1/TestExpectations:
3:51 AM Changeset in webkit [148874] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Skip several compositing test cases on EFL WK2 due to regression in
r148748.

  • platform/efl-wk2/TestExpectations:
3:41 AM Changeset in webkit [148873] by Christophe Dumez
  • 3 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Add several regressions to TestExpectations to make the tree green.

  • platform/efl-wk2/TestExpectations:
  • platform/efl/TestExpectations:
3:32 AM Changeset in webkit [148872] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Fix expected result for several test cases.

  • platform/efl/TestExpectations:
3:07 AM Changeset in webkit [148871] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

  • platform/gtk/TestExpectations: Unskipping the fast/sub-pixel layout tests.

Removing failure expectations for tests that are passing after the subpixel layout was enabled.

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

[BlackBerry] Add dummy implementations of DragData::droppedFileSystemId()
https://bugs.webkit.org/show_bug.cgi?id=114861

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-04-22
Reviewed by Carlos Garcia Campos.

  • platform/blackberry/DragDataBlackBerry.cpp:

(WebCore):
(WebCore::DragData::droppedFileSystemId):

2:20 AM Changeset in webkit [148869] by kadam@inf.u-szeged.hu
  • 4 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

  • platform/qt/TestExpectations: Skip a failing reftest after r148859.
  • platform/qt/fast/borders/rtl-border-04-expected.png: Update after r148791.
  • platform/qt/fast/borders/rtl-border-04-expected.txt: Update after r148791.
2:14 AM Changeset in webkit [148868] by zarvai@inf.u-szeged.hu
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening.

Unskip fast/exclusions tests after r148594.

  • platform/qt/TestExpectations:
2:11 AM Changeset in webkit [148867] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[BlackBerry] Add dummy implementation of AccessibilityController::accessibleElementById()
https://bugs.webkit.org/show_bug.cgi?id=114939

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-04-22
Reviewed by Carlos Garcia Campos.

This was added in r129308.

  • DumpRenderTree/blackberry/AccessibilityControllerBlackBerry.cpp:

(AccessibilityController::accessibleElementById):

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

[EFL] accessibility/language-attribute.html is failing
https://bugs.webkit.org/show_bug.cgi?id=112030

Unreviewed, EFL gardening.

Unskipping accessibility/language-attribute.html after r148737.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-04-22

  • platform/efl-wk2/TestExpectations:
2:05 AM Changeset in webkit [148865] by commit-queue@webkit.org
  • 15 edits
    6 adds in trunk

Source/WebCore: [CSS Regions] Elements in a region should be assignable to a named flow
https://bugs.webkit.org/show_bug.cgi?id=74144

Patch by Mihai Maerean <Mihai Maerean> on 2013-04-22
Reviewed by David Hyatt.

DOM children of a region must not be rendered as children of the region, but can be collected in flow threads.

NodeRenderingContext::parentRenderer now creates the parent render flow thread if it doesn't exist.

Element::moveToFlowThreadIsNeeded is a virtual method that is overriden in PseudoElement to return false and
in SVGElement so only svg root elements can directly be collected by a render flow thread.

RenderObject::canDOMChildrenHaveRenderParent exists to optimize the code so nodes inside regions (and maybe
other types of renderers in the future) can still have renderers if they need to be in a flow thread while the
rest of renderers that can't have children skip the new instructions.

Tests: fast/regions/flow-body-in-html.html . To test the duplicate bug #103685.

fast/regions/region-content-flown-into-region.html
fast/regions/universal-selector-children-to-the-same-region.html . To test the duplicate bug #103685.

  • dom/Element.cpp:

(WebCore::Element::moveToFlowThreadIsNeeded):

  • dom/Element.h:
  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::parentRenderer): the renderer that will be the parent for this node's renderer.
In the case of RenderFlowThreads, it may need to create it.
(WebCore::NodeRenderingContext::shouldCreateRenderer): In a region, only the children that need to be in a flow
thread should have a renderer.
(WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
(WebCore::NodeRenderingContext::moveToFlowThread):

  • dom/NodeRenderingContext.h:

(NodeRenderingContext):

  • dom/PseudoElement.h: pseudo-elements cannot be directly collected into a named flow.
  • dom/Text.cpp:

(WebCore::Text::textRendererIsNeeded):
(WebCore::Text::updateTextRenderer): Because calling textRendererIsNeeded(NodeRenderingContext(...)) on a
non-const l-value NodeRenderingContext cannot be done on a temporary object on the stack.

  • dom/Text.h:
  • rendering/FlowThreadController.cpp:

(WebCore::FlowThreadController::isContentNodeRegisteredWithAnyNamedFlow):

  • rendering/FlowThreadController.h:
  • rendering/RenderObject.h:

(WebCore::RenderObject::canDOMChildrenHaveRenderParent): Even if this render object can't have render children,
the children in the DOM tree may have a render parent (that is different from this render object).

  • rendering/RenderRegion.h:
  • svg/SVGElement.cpp:

(WebCore::SVGElement::moveToFlowThreadIsNeeded): Allow only svg root elements to be directly collected by a
render flow thread.

  • svg/SVGElement.h:

LayoutTests: [CSS Regions] Elements in a region should be assignable to a named flow
https://bugs.webkit.org/show_bug.cgi?id=74144

Reviewed by David Hyatt.

  • fast/regions/flow-body-in-html-expected.txt: Added.

Patch by Mihai Maerean <Mihai Maerean> on 2013-04-22

  • fast/regions/flow-body-in-html.html: Added. To test the duplicate bug #103685.
  • fast/regions/region-content-flown-into-region-expected.txt: Added.
  • fast/regions/region-content-flown-into-region.html: Added.
  • fast/regions/universal-selector-children-to-the-same-region-expected.txt: Added.
  • fast/regions/universal-selector-children-to-the-same-region.html: Added. To test the duplicate bug #103685.
1:59 AM Changeset in webkit [148864] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Gradient: add PlatformGradient definition for BlackBerry
https://bugs.webkit.org/show_bug.cgi?id=114727

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-04-22
Reviewed by Carlos Garcia Campos.

  • platform/graphics/Gradient.h:

(Graphics):

1:58 AM FeatureFlags edited by rtakacs@inf.u-szeged.hu
(diff)
1:32 AM Changeset in webkit [148863] by abucur@adobe.com
  • 13 edits in trunk

Use DOM ordering for list counts
https://bugs.webkit.org/show_bug.cgi?id=110352

Reviewed by Elliott Sprehn.

Source/WebCore:

Currently the list items ordering is made by traversing the render tree. This gives bad results for:

  • list items flown inside regions because they are not rendered as descendants of their DOM list ancestors.
  • list items matched to insertion points inside a shadow tree. The insertion point may be a child of a

list so the numbering gets broken.

To implement correct DOM ordering I've taken into account the fact that pseudo-elements can have display: list-item
so they should be included when traversing the DOM tree. I've added helper methods on the NodeTraversal
namespace that should allow easily traversing the tree including the pseudo-elements (e.g. firstChildWithPseudo
for an element with pseudo-before will return the before PseudoElement). Using these helper methods I've implemented
pre-order traversal methods aware of the pseudo-elements.
An effect of this change is how the list items inside shadow tree update their counting. With the patch, if there's
no <ol> or <ul> element on the ancestor chain of a <li> element to the shadow root, the list node will be considered the
first parent of the <li> or the shadow root if there is no ancestor.
The RenderListItem class now makes use of this new method of traversal, replacing the one based on the render tree.
To simplify the CSS counters implementation, I've changed the traversal functions inside RenderCounter to also make use
of this method. The CSS counters and the list items now have the same traversal algorithm.

In later patches I'll add tests that should cover the regions and shadow DOM use cases.
Tests bug for shadow DOM: https://bugs.webkit.org/show_bug.cgi?id=113193
Tests bug for regions: https://bugs.webkit.org/show_bug.cgi?id=103975

Tests: no new tests is this patch; added the correct expectations for fast/lists/positioned-count-crash.html
and fast/dom/shadow/shadow-and-list-elements.html

  • dom/Node.cpp:

(WebCore::Node::pseudoAwarePreviousSibling):
(WebCore):
(WebCore::Node::pseudoAwareNextSibling):
(WebCore::Node::pseudoAwareFirstChild):
(WebCore::Node::pseudoAwareLastChild):

  • dom/Node.h:

(Node):

  • dom/NodeTraversal.cpp:

(WebCore):
(WebCore::NodeTraversal::previousIncludingPseudo):
(NodeTraversal):
(WebCore::NodeTraversal::nextIncludingPseudo):
(WebCore::NodeTraversal::nextIncludingPseudoSkippingChildren):

  • dom/NodeTraversal.h:

(ElementTraversal):
(NodeTraversal):
(WebCore::ElementTraversal::previousIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudo):
(WebCore::ElementTraversal::nextIncludingPseudoSkippingChildren):
(WebCore::ElementTraversal::pseudoAwarePreviousSibling):

  • html/HTMLLIElement.cpp:

(WebCore::HTMLLIElement::attach):

  • html/HTMLOListElement.cpp:

(WebCore::HTMLOListElement::updateItemValues):
(WebCore::HTMLOListElement::recalculateItemCount):

  • rendering/RenderCounter.cpp:

(WebCore::previousInPreOrder):
(WebCore::previousSiblingOrParent):
(WebCore::parentElement):
(WebCore::nextInPreOrder):

  • rendering/RenderListItem.cpp:

(WebCore):
(WebCore::enclosingList):
(WebCore::RenderListItem::nextListItem):
(WebCore::previousListItem):
(WebCore::RenderListItem::calcValue):
(WebCore::RenderListItem::explicitValueChanged):
(WebCore::previousOrNextItem):
(WebCore::RenderListItem::updateListMarkerNumbers):

  • rendering/RenderListItem.h:

(RenderListItem):

LayoutTests:

The fast/dom/shadow/shadow-and-list-elements-expected.html has changed because the list items
inside the shadow tree no longer see the root <ol> element.
The test fast/lists/positioned-count-crash.html has the correct rendering after changing
the list counting to be in DOM order.

  • fast/dom/shadow/shadow-and-list-elements-expected.html:
  • fast/lists/positioned-count-crash-expected.txt:
12:57 AM Changeset in webkit [148862] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix multiple definition of ImageBuffer::platformLayer() in the BlackBerry port
https://bugs.webkit.org/show_bug.cgi?id=114936

Patch by Alberto Garcia <agarcia@igalia.com> on 2013-04-22
Reviewed by Carlos Garcia Campos.

We already have a definition in ImageBufferBlackBerry.cpp.

  • platform/graphics/ImageBuffer.cpp:

(WebCore):

12:49 AM Changeset in webkit [148861] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Cleanup TestExpectations to pass --lint-test-files
https://bugs.webkit.org/show_bug.cgi?id=114927

Unreviewed gardening.

Patch by Seokju Kwon <Seokju Kwon> on 2013-04-22

  • platform/gtk/TestExpectations:
12:29 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
12:25 AM Changeset in webkit [148860] by Carlos Garcia Campos
  • 9 edits in trunk

[WebKit2] Plugins without a MIME Type fail to load
https://bugs.webkit.org/show_bug.cgi?id=112834

Reviewed by Benjamin Poulain.

Source/WebKit2:

The problem is that when the plugin is created and the MIME Type
is empty, since the MIME Type guessed in the UI process using the
plugin extension is not passed to the WebProcess, when the plugin
is instantiated, the value of NPMIMEType parameter passed to
NPP_New is NULL, and NPERR_INVALID_INSTANCE_ERROR is returned.
GetPluginPath message has been renamed to FindPlugin, since it
doesn't only return the path but also the new MIME Type and load
policy.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::findPlugin): Receive an output newMIMEType
parameter that is passed to PluginModuleInfo::findPlugin() so that
in case of guessing the MIME Type, the new one is passed back to
the WebProcess.

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::createPlugin): Pass the MIME Type
from the parameters to WebPage::createPlugin.
(WebKit::WebFrameLoaderClient::recreatePlugin): Pass a newMIMEType
parameter to WebPage::createPlugin.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::createPlugin): Add newMIMEType out parameter and
pass it to the FindPlugin message.
(WebKit::WebPage::canPluginHandleResponse): Pass newMIMEType to
FindPlugin message.

  • WebProcess/WebPage/WebPage.h:

(WebPage):

LayoutTests:

  • platform/wk2/TestExpectations: Unskip

plugins/no-mime-with-valid-extension.html.

Note: See TracTimeline for information about the timeline view.