Timeline
May 11, 2013:
- 11:15 PM Changeset in webkit [149951] by
-
- 2 edits in trunk/Source/WebCore
[Windows] Unreviewed build fix after r149932
Patch by Brent Fulgham <Brent Fulgham> on 2013-05-11
- make-export-file-generator: Don't attempt to import
(or use) non-existent cxxabi functions on Windows.
- 10:39 PM Changeset in webkit [149950] by
-
- 2 edits in trunk/Source/WebCore
Add more info to compositing log channel output
https://bugs.webkit.org/show_bug.cgi?id=115978
Reviewed by Dean Jackson.
Add to compositing log channel output whether a layer paints
into its compositing ancestor.
- rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::logLayerInfo):
- 9:54 PM Changeset in webkit [149949] by
-
- 4 edits4 adds in trunk
REGRESSION: Fixed background on ColterReed.com scrolls
https://bugs.webkit.org/show_bug.cgi?id=115951
Source/WebCore:
Reviewed by Beth Dakin.
The logic for painting the fixed root background into its own layer was
broken when the document element's layer was composited. This could be caused
by a negative z-index child of the body, or by an explicit compositing-causing
style on the <html>.
There were two issues. First, when painting the layer for the fixed root
background, we would simply short-circuit the fixed background paint in
RenderLayer::paintLayer(), when checking for a composited layer. We have
to continue to paint through the composited <html> layer to get the root
background in this case.
Secondly, RenderLayerBacking::paintIntoLayer() would only set the PaintLayerPaintingSkipRootBackground
flag if this RenderLayerBacking had a m_backgroundLayer. However, when the <html> is
composited, we need to skip painting the root layer for both the RenderView's backing,
and for the <html>'s backing. Checking whether there is *any* layer that paints
the fixed root background (i.e. checking compositor()->fixedRootBackgroundLayer())
is a simple way to fix this test.
Tests: platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-composited-html.html
platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-negative-z-index-fixed.html
- rendering/RenderLayer.cpp:
(WebCore::paintForFixedRootBackground):
(WebCore::RenderLayer::paintLayer):
- rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintIntoLayer):
LayoutTests:
Reviewed by Beth Dakin.
Tests with a fixed background and two different ways of making the <html> composited.
- platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-composited-html-expected.html: Added.
- platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-composited-html.html: Added.
- platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-negative-z-index-fixed-expected.html: Added.
- platform/mac-wk2/tiled-drawing/fixed-background/fixed-background-negative-z-index-fixed.html: Added.
- 9:28 PM Changeset in webkit [149948] by
-
- 2 edits in trunk/Source/WebCore
Possible crash when going Back while loading PDF
https://bugs.webkit.org/show_bug.cgi?id=115972
Reviewed by Dan Bernstein.
It's possible for m_frame to be null when Document::findUnsafeParentScrollPropagationBoundary()
is called, so null-check currentFrame.
- dom/Document.cpp:
(WebCore::Document::findUnsafeParentScrollPropagationBoundary):
- 5:53 PM Changeset in webkit [149947] by
-
- 3 edits in trunk/Source/WebCore
<rdar://problem/13823864> TextCodecICU complains about ambiguous codec names with current ICU release
https://bugs.webkit.org/show_bug.cgi?id=115953
Reviewed by Darin Adler.
Store and use canonical converter name to create converters.
As a side effect, we now actually reuse cached converters - previously we would compare
a standard encoding name to internal canonical one, which rarely match.
- platform/text/TextCodecICU.h:
- platform/text/TextCodecICU.cpp:
(WebCore::TextCodecICU::create): Pass canonical ICU converter name to constructor.
(WebCore::TextCodecICU::registerEncodingNames):
- Updated terminology.
- Added a comment that special cases should be kept in sync between registerEncodingNames and registerCodecs.
- Moved maccyrillic alias to a correct section. It's not present in ICU even today.
- Changed a few aliases to actually map to standard name, not to an overridden one (this doesn't change behavior since addToTextEncodingNameMap looks up canonical name, but is clearer).
(WebCore::TextCodecICU::registerCodecs): Store a converter name to use with each
canonical encoding name.
(WebCore::TextCodecICU::TextCodecICU): Ditto.
(WebCore::TextCodecICU::releaseICUConverter): Reset the converter to remove any
leftover data.
(WebCore::TextCodecICU::createICUConverter):
- Compare converter name to converter name, not to another alias name.
- Use proper string comparison instead of pointer comparison.
- When creating a converter, assert that the name is not ambigous - canonical converter names should never be, otherwise there would be no way to create the converter without ambiguity.
- 5:26 PM Changeset in webkit [149946] by
-
- 6 edits2 adds2 deletes in branches/dfgFourthTier/Source/JavaScriptCore
Rename StructureCheckHoistingPhase to TypeCheckHoistingPhase
https://bugs.webkit.org/show_bug.cgi?id=115938
We're going to add some more types of check hoisting soon, so let's have
the right name here.
Rubber stamped by Filip Pizlo.
- CMakeLists.txt:
- GNUmakefile.list.am:
- JavaScriptCore.xcodeproj/project.pbxproj:
- Target.pri:
- dfg/DFGDriver.cpp:
(JSC::DFG::compile):
- dfg/DFGStructureCheckHoistingPhase.cpp: Removed.
- dfg/DFGStructureCheckHoistingPhase.h: Removed.
- dfg/DFGTypeCheckHoistingPhase.cpp: Added.
(DFG):
(TypeCheckHoistingPhase):
(JSC::DFG::TypeCheckHoistingPhase::TypeCheckHoistingPhase):
(JSC::DFG::TypeCheckHoistingPhase::run):
(JSC::DFG::TypeCheckHoistingPhase::shouldConsiderForHoisting):
(JSC::DFG::TypeCheckHoistingPhase::noticeStructureCheck):
(CheckData):
(JSC::DFG::TypeCheckHoistingPhase::CheckData::CheckData):
(JSC::DFG::performTypeCheckHoisting):
- dfg/DFGTypeCheckHoistingPhase.h: Added.
- 4:42 PM Changeset in webkit [149945] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed build fix after r149944.
- Platform/CoreIPC/ArgumentEncoder.cpp: Include <sys/mman.h> for mmap(2).
- 4:28 PM Changeset in webkit [149944] by
-
- 3 edits in trunk/Source/WebKit2
Don't pass malloced pointers as out-of-line data when sending Mach messages
https://bugs.webkit.org/show_bug.cgi?id=115970
<rdar://problem/13144680>
Reviewed by Sam Weinig.
Give ArgumentEncoder an inline buffer of 512 bytes. If we need more than that, use mmap to allocate data
since that gives us fresh zero-filled memory that we can safely share.
- Platform/CoreIPC/ArgumentEncoder.cpp:
(CoreIPC::ArgumentEncoder::ArgumentEncoder):
Set up the buffer pointers to point to the inline buffer.
(CoreIPC::ArgumentEncoder::~ArgumentEncoder):
Unmap the buffer if necessary.
(CoreIPC::ArgumentEncoder::grow):
Grow the allocation exponentially, rounded up to the nearest page. This is a simplification from the
current strategy, but most messages are either tiny in which case they will fit inside the inline buffer,
or big in which case we'll end up doing less allocations + memory copying.
- Platform/CoreIPC/ArgumentEncoder.h:
(ArgumentEncoder):
- 4:26 PM Changeset in webkit [149943] by
-
- 2 edits in branches/dfgFourthTier/Source/JavaScriptCore
SpeculativeJIT::checkArray should use the correct ExitKind
https://bugs.webkit.org/show_bug.cgi?id=115943
Currently it uses Uncountable, which gives us no information if we end up exiting due to a
mismatched ClassInfo pointer. It should instead use BadType and should pass the correct
JSValueSource and Node instead of passing empty values.
Reviewed by Filip Pizlo.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::checkArray):
- 2:42 PM Changeset in webkit [149942] by
-
- 3 edits in trunk/Source/WebCore
[Mac] The captions menu should not use a canned max-width and max-height
https://bugs.webkit.org/show_bug.cgi?id=115968
Reviewed by Eric Carlson.
Use more real estate to display the captions menu should the caption names
be long.
- css/mediaControlsQuickTime.css:
(video::-webkit-media-controls-closed-captions-container):
(video::-webkit-media-controls-closed-captions-track-list):
Make the captions menu scale to a max-width and max-height to allow 4px
above and below the menu, except on the right where it always aligns with
the captions icon in the media controller.
- html/shadow/MediaControlsApple.cpp:
(WebCore::MediaControlsApple::createControls):
Move the captions menu element to be a child of the controls instead of
the panel such that it may scale relative to the controls when using %
CSS values.
- 2:07 PM Changeset in webkit [149941] by
-
- 5 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support Jump and ForceOSRExit
https://bugs.webkit.org/show_bug.cgi?id=115942
Reviewed by Oliver Hunt.
Added two obvious nodes: Jump and ForceOSRExit. We already had everything we needed
to support them.
Adding these increases our coverage a fair bit, and revealed a bug: LLVM's full
instruction selector currently appears to mishandle doubles in constant pools (or
just constant pools in general) with the small code model in the MCJIT. But switching
to FastISel "fixes" it. That's what this patch does, for now. This will probably
actually be permanent; the FastISel does pretty much everything we would ever want,
at least in the foreseeable future.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
(FTL):
- ftl/FTLCompile.cpp:
(JSC::FTL::compile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileBlock):
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileJSConstant):
(LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileJump):
(JSC::FTL::LowerDFGToLLVM::compileReturn):
(JSC::FTL::LowerDFGToLLVM::compileForceOSRExit):
- runtime/Options.h:
(JSC):
- 1:57 PM Changeset in webkit [149940] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed GTK build fix after r149904.
- GNUmakefile.list.am: Adding missing build targets.
- 1:08 PM Changeset in webkit [149939] by
-
- 2 edits in trunk/LayoutTests
Bogus -webkit-columns value in fast/text/international/spaces-combined-in-vertical-text.html
https://bugs.webkit.org/show_bug.cgi?id=115164
Patch by Xan Lopez <xlopez@igalia.com> on 2013-05-11
Reviewed by Rob Buis.
Remove bogus -webkit-columns property.
- fast/text/international/spaces-combined-in-vertical-text.html:
- 1:07 PM Changeset in webkit [149938] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed, Fix WK2 EFL build after r149904.
Add new PluginInformation.cpp file to CMake.
- CMakeLists.txt:
- 12:47 PM Changeset in webkit [149937] by
-
- 2 edits in trunk/Source/WebKit2
Unreviewed, fix WK2 EFL build after r149904.
Add new WKPluginInformation.cpp file to CMake.
- CMakeLists.txt:
- 12:09 PM Changeset in webkit [149936] by
-
- 5 edits2 adds in trunk
Disallow a window to focus itself via javascript URLs or using target _self
https://bugs.webkit.org/show_bug.cgi?id=115906
Reviewed by Geoffrey Garen.
Source/WebCore:
Test: fast/dom/Window/window-focus-self.html
- loader/FrameLoader.cpp:
(WebCore::createWindow):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::focus):
LayoutTests:
- fast/dom/Window/window-focus-self-expected.txt: Added.
- fast/dom/Window/window-focus-self.html: Added.
- platform/wk2/TestExpectations: test uses unimplemented setWindowIsKey.
- 12:07 PM Changeset in webkit [149935] by
-
- 58 edits in trunk/Source/WebCore
Fix several style warnings in generated bindings
https://bugs.webkit.org/show_bug.cgi?id=115961
Reviewed by Kentaro Hara.
Fix several style errors in the bindings generated under
Source/WebCore/bindings/scripts/test/
No new tests, no behavior change.
- bindings/scripts/CodeGeneratorCPP.pm:
(GenerateImplementation):
(WriteData):
- bindings/scripts/CodeGeneratorJS.pm:
(GenerateHeader):
(GenerateImplementation):
(WriteData):
- bindings/scripts/CodeGeneratorObjC.pm:
(GenerateHeader):
- bindings/scripts/test/CPP/WebDOMFloat64Array.cpp:
- bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp:
- bindings/scripts/test/CPP/WebDOMTestCallback.cpp:
- bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp:
- bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
- bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp:
- bindings/scripts/test/CPP/WebDOMTestException.cpp:
- bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
- bindings/scripts/test/CPP/WebDOMTestMediaQueryListListener.cpp:
- bindings/scripts/test/CPP/WebDOMTestNamedConstructor.cpp:
- bindings/scripts/test/CPP/WebDOMTestNode.cpp:
- bindings/scripts/test/CPP/WebDOMTestObj.cpp:
- bindings/scripts/test/CPP/WebDOMTestOverloadedConstructors.cpp:
- bindings/scripts/test/CPP/WebDOMTestSerializedScriptValueInterface.cpp:
- bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
- bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestActiveDOMObject.h:
(WebCore::JSTestActiveDOMObject::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
(WebCore::JSTestCustomNamedGetter::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestEventConstructor.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestEventConstructor.h:
(WebCore::JSTestEventConstructor::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestEventTarget.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestEventTarget.h:
(WebCore::JSTestEventTarget::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestException.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestException.h:
(WebCore::JSTestException::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestInterface.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestInterface.h:
(WebCore::JSTestInterface::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
(WebCore::JSTestMediaQueryListListener::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestNamedConstructor.h:
(WebCore::JSTestNamedConstructor::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestObj.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestObj.h:
(WebCore::JSTestObj::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
(WebCore::JSTestOverloadedConstructors::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
(WebCore::JSTestSerializedScriptValueInterface::releaseImplIfNotNull):
- bindings/scripts/test/JS/JSTestTypedefs.cpp:
(WebCore::toJS):
- bindings/scripts/test/JS/JSTestTypedefs.h:
(WebCore::JSTestTypedefs::releaseImplIfNotNull):
- bindings/scripts/test/ObjC/DOMFloat64ArrayInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestActiveDOMObjectInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestCallbackInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestCustomNamedGetterInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestEventConstructorInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestEventTargetInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestExceptionInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestInterfaceInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestNamedConstructorInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestNodeInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestObjInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestOverloadedConstructorsInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h:
(WebCore):
- bindings/scripts/test/ObjC/DOMTestTypedefsInternal.h:
(WebCore):
- 11:53 AM Changeset in webkit [149934] by
-
- 3 edits in trunk/Source/WebKit2
When possible, terminate web processes immediately when closing their last page.
<http://webkit.org/b/115964>
<rdar://problem/13869266>
Reviewed by Geoffrey Garen.
When we're using a network process, there's no need for the UI process to wait for web processes
to clear resource caches and terminate nicely.
We can just kill them off right away in WebProcessProxy::removeWebPage() when the last page is closed.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::removeWebPage):
Terminate the child process immediately if possible.
- UIProcess/WebProcessProxy.h:
(WebKit::WebProcessProxy::canTerminateChildProcess):
(WebKit::WebProcessProxy::shouldTerminate):
Broke out the logic from the shouldTerminate() IPC message handler into a separate function
so we can call it from removeWebPage().
- 11:00 AM Changeset in webkit [149933] by
-
- 8 edits1 add in trunk
Crash when terminating a process that has not been fully launched
https://bugs.webkit.org/show_bug.cgi?id=115962
<rdar://problem/13660916>
Reviewed by Andreas Kling.
Source/WebKit2:
Handle terminating a process that has not been fully launched.
- UIProcess/Launcher/ProcessLauncher.cpp:
(WebKit::ProcessLauncher::didFinishLaunchingProcess):
If we have been invalidated, dispose the connection identifier.
- UIProcess/Launcher/mac/ProcessLauncherMac.mm:
(WebKit::ProcessLauncher::terminateProcess):
If we're still launching the process, invalidate so the client won't get an unexpected
didFinishLaunching callback.
- UIProcess/WebProcessProxy.cpp:
(WebKit::WebProcessProxy::requestTermination):
Check if webConnection() is null before calling it. (It will be null if the process isn't fully launched).
Tools:
Add TerminateTwice, a test that terminates a page, then reloads it and terminates it again
before the process has had a chance to be fully launched.
- TestWebKitAPI/GNUmakefile.am:
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WebKit2/TerminateTwice.cpp: Added.
(TestWebKitAPI):
(TestWebKitAPI::didFinishLoadForFrame):
(TestWebKitAPI::TEST):
- TestWebKitAPI/Tests/WebKit2/WebKit2.pro:
- 9:09 AM Changeset in webkit [149932] by
-
- 2 edits in trunk/Source/WebCore
Make it a build error to put invalid C++ symbol names in WebCore.exp.in
https://bugs.webkit.org/show_bug.cgi?id=115958
Reviewed by Andreas Kling.
While invalid C++ symbols will eventually show up as a link error since the symbol won't be found,
this makes it easier to catch invalid symbols inside of #ifdefs.
- make-export-file-generator:
Try to demangle C++ symbols before printing them.
- 7:09 AM Changeset in webkit [149931] by
-
- 2 edits in trunk/Source/WebCore
BUILD FIX (r149718): Move exported symbol into ENABLE(FULLSCREEN_API) section
Fixes the following build failure when ENABLE(FULLSCREEN_API) is
off:
Undefined symbols for architecture i386:
"ZNK7WebCore7Element25containsFullScreenElementEv", referenced from:
-exported_symbol[s_list] command line option
- WebCore.exp.in: Move the symbol.
- 5:14 AM Changeset in webkit [149930] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, remove some lint accidentally left in r149929.
- rendering/InlineFlowBox.cpp:
(WebCore::verticalAlignApplies):
- 5:08 AM Changeset in webkit [149929] by
-
- 5 edits2 adds in trunk
Text flow broken in elements with vertical align top/bottom and inline elements taller than line-height
https://bugs.webkit.org/show_bug.cgi?id=111974
Source/WebCore:
Reviewed by Ryosuke Niwa.
Per http://www.w3.org/TR/CSS2/visudet.html#propdef-vertical-align 'vertical-align' only applies to inline and table-cell
elements.
Test: fast/css/vertical-align-block-elements.html
- rendering/InlineFlowBox.cpp:
(WebCore::isTextInBlockElement):
(WebCore):
(WebCore::InlineFlowBox::adjustMaxAscentAndDescent):
(WebCore::InlineFlowBox::computeLogicalBoxHeights):
(WebCore::InlineFlowBox::placeBoxesInBlockDirection):
LayoutTests:
Reviewed by Ryosuke Niwa.
- editing/execCommand/query-command-state-expected.txt:
- editing/execCommand/script-tests/query-command-state.js: Remove invalid tests, vertical-align does not apply to div elements.
(runTests):
- fast/css/vertical-align-block-elements-expected.html: Added.
- fast/css/vertical-align-block-elements.html: Added.
- 1:36 AM Changeset in webkit [149928] by
-
- 7 edits in trunk/Source/WebCore
Make CanvasStyle a plain object instead of an RefCounted object
https://bugs.webkit.org/show_bug.cgi?id=115775
Patch by Benjamin Poulain <bpoulain@apple.com> on 2013-05-11
Reviewed by Andreas Kling.
CanvasStyle is just 2 words wide. We do not gain anything from allocating
it on the heap. Change the object to be just a type and some data.
- bindings/js/JSCanvasRenderingContext2DCustom.cpp:
(WebCore::toJS):
(WebCore::toHTMLCanvasStyle):
- html/HTMLCanvasElement.cpp:
- html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::State::State):
(WebCore::CanvasRenderingContext2D::setStrokeStyle):
(WebCore::CanvasRenderingContext2D::setFillStyle):
(WebCore::CanvasRenderingContext2D::setStrokeColor):
(WebCore::CanvasRenderingContext2D::setFillColor):
(WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
(WebCore::CanvasRenderingContext2D::drawTextInternal):
- html/canvas/CanvasRenderingContext2D.h:
(WebCore::CanvasRenderingContext2D::strokeStyle):
(CanvasRenderingContext2D):
(WebCore::CanvasRenderingContext2D::fillStyle):
(State):
- html/canvas/CanvasStyle.cpp:
(WebCore::CanvasStyle::CanvasStyle):
(WebCore::CanvasStyle::createFromString):
(WebCore::CanvasStyle::createFromStringWithOverrideAlpha):
(WebCore::CanvasStyle::isEquivalentColor):
(WebCore):
(WebCore::CanvasStyle::operator=):
(WebCore::CanvasStyle::applyStrokeColor):
(WebCore::CanvasStyle::applyFillColor):
- html/canvas/CanvasStyle.h:
(CanvasStyle):
(WebCore::CanvasStyle::isValid):
(WebCore::CanvasStyle::CanvasStyle):
(WebCore):
(WebCore::CanvasStyle::operator=):
- 12:56 AM Changeset in webkit [149927] by
-
- 2 edits in trunk/Source/WebCore
Gradient::platformGradient: Vector reserveCapacity -> reserveInitialCapacity
https://bugs.webkit.org/show_bug.cgi?id=115779
Reviewed by Andreas Kling.
- platform/graphics/cg/GradientCG.cpp:
(WebCore::Gradient::platformGradient): Clang is surprisingly smart at removing
all the branches of this function. Remove two more with reserveInitialCapacity.
- 12:47 AM Changeset in webkit [149926] by
-
- 2 edits in trunk/Websites/planet.webkit.org
Remove irrelevant blogs from Planet WebKit
https://bugs.webkit.org/show_bug.cgi?id=115620
Reviewed by Ryosuke Niwa.
- config.ini:
May 10, 2013:
- 10:51 PM Changeset in webkit [149925] by
-
- 8 edits2 adds3 deletes in trunk
<rdar://problem/13666412> Clean up some edge cases of URL parsing.
https://bugs.webkit.org/show_bug.cgi?id=104919
Reviewed by Darin Adler.
WebCore:
- page/SecurityOrigin.cpp: (WebCore::schemeRequiresHost): (WebCore::shouldTreatAsUniqueOrigin): Updated function name and comments (host is not the same as authority). We still need this check - KURL can still produce http URLs with an empty host (even as this patch reduces the number of such cases). So can Gecko and current draft of URL Standard. It would be good to have a guarantee that such useless URLs can not come out of URL parser, as relying on downstream code re-parsing the URL correctly would be fragile.
- platform/KURL.cpp: (WebCore::hostPortIsEmptyButCredentialsArePresent): Updated an argument name for correctness. (WebCore::KURL::parse):
- Reverted behavior changes from <http://trac.webkit.org/changeset/82181> - I could find no reason to allow "@" in hostnames, and having a URL like this re-parsed by a different parser would likely produce different results. It's better to just treat these edge case URLs as invalid.
- When hostname component is a lone colon, preserve it in parsed URL string, as otherwise path would get pushed in its place when re-parsing.
- When authority component is a lone colon, don't forget to "" after scheme, too.
- Added some assertions about contents of authority component, to catch potential mis-parsing earlier.
LayoutTests:
- fast/dom/HTMLAnchorElement/script-tests/set-href-attribute-pathname.js:
- fast/dom/HTMLAnchorElement/set-href-attribute-pathname-expected.txt: Updated expectations of one sub-test. We previously tried to keep the test passing as is (see bug 57291), but I couldn't find any reason to prefer the old behavior.
- fast/url/host-expected.txt:
- fast/url/host.html: Updated one subtest to new results, which match at least Gecko (original of the test actually claims that all browsers including Safari already do what we'll do now).
- fast/url/segments-userinfo-vs-host-expected.txt: Added.
- fast/url/segments-userinfo-vs-host.html: Added. Added a number of tests, with detailed explanations of the differences with Firefox, and with rationales.
- http/tests/uri/username-with-no-hostname-expected.txt: Removed.
- http/tests/uri/username-with-no-hostname.html-disabled: Removed.
- platform/win/http/tests/uri/username-with-no-hostname-expected.txt: Removed. This test has been disabled for a long time, and being an end-to-end test for invalid URL handling, it would be difficult to make work again. We have multiple parsing tests for URLs like this.
- 10:45 PM Changeset in webkit [149924] by
-
- 3 edits in trunk/Source/WebCore
Make TextCodecICU not depend on TextEncoding
https://bugs.webkit.org/show_bug.cgi?id=115848
Reviewed by Darin Adler.
- platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::create): (WebCore::TextCodecICU::TextCodecICU): (WebCore::TextCodecICU::createICUConverter): (WebCore::TextCodecICU::decode): (WebCore::TextCodecICU::encode):
- platform/text/TextCodecICU.h: Use a plain encoding string in platform encoder wrapper, not a higher level concept.
- 10:03 PM Changeset in webkit [149923] by
-
- 20 edits in trunk/Source
Web Inspector: Implement WK2 version of WebInspectorFrontendClient::save
https://bugs.webkit.org/show_bug.cgi?id=115564
Patch by Brian J. Burg <Brian Burg> on 2013-05-10
Reviewed by Benjamin Poulain.
Source/WebKit/mac:
Clean up save() and append() implementations.
- WebCoreSupport/WebInspectorClient.h:
- WebCoreSupport/WebInspectorClient.mm:
(WebInspectorFrontendClient::save):
(WebInspectorFrontendClient::append):
Source/WebKit2:
Implement InspectorFrontendHost's save() and append() methods for
Mac WebKit2. Add canSave() for all ports.
- UIProcess/WebInspectorProxy.cpp:
(WebKit::WebInspectorProxy::save):
(WebKit):
(WebKit::WebInspectorProxy::append):
- UIProcess/WebInspectorProxy.h:
(WebInspectorProxy):
- UIProcess/WebInspectorProxy.messages.in:
- UIProcess/efl/WebInspectorProxyEfl.cpp:
(WebKit::WebInspectorProxy::platformSave):
(WebKit):
(WebKit::WebInspectorProxy::platformAppend):
- UIProcess/gtk/WebInspectorProxyGtk.cpp:
(WebKit::WebInspectorProxy::platformSave):
(WebKit):
(WebKit::WebInspectorProxy::platformAppend):
- UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformSave):
(WebKit):
(WebKit::WebInspectorProxy::platformAppend):
- UIProcess/qt/WebInspectorProxyQt.cpp:
(WebKit::WebInspectorProxy::platformSave):
(WebKit):
(WebKit::WebInspectorProxy::platformAppend):
- WebProcess/WebCoreSupport/WebInspectorFrontendClient.cpp:
(WebKit::WebInspectorFrontendClient::canSave):
(WebKit):
(WebKit::WebInspectorFrontendClient::save):
(WebKit::WebInspectorFrontendClient::append):
- WebProcess/WebCoreSupport/WebInspectorFrontendClient.h:
(WebInspectorFrontendClient):
- WebProcess/WebPage/WebInspector.cpp:
(WebKit::WebInspector::save):
(WebKit):
(WebKit::WebInspector::append):
(WebKit::WebInspector::didSave):
(WebKit::WebInspector::didAppend):
- WebProcess/WebPage/WebInspector.h:
(WebInspector):
- WebProcess/WebPage/WebInspector.messages.in:
- WebProcess/WebPage/efl/WebInspectorEfl.cpp:
(WebKit::WebInspector::canSave):
(WebKit):
- WebProcess/WebPage/gtk/WebInspectorGtk.cpp:
(WebKit::WebInspector::canSave):
(WebKit):
- WebProcess/WebPage/mac/WebInspectorMac.mm:
(WebKit::WebInspector::canSave):
(WebKit):
- WebProcess/WebPage/qt/WebInspectorQt.cpp:
(WebKit::WebInspector::canSave):
(WebKit):
- 6:59 PM Changeset in webkit [149922] by
-
- 18 edits in trunk
Remove Mac OS X Leopard (10.5) support
https://bugs.webkit.org/show_bug.cgi?id=107964
Reviewed by Ryosuke Niwa.
Removed the code for 10.5 and removed if-def for 10.6.
Source/WebCore:
No new tests, covered by existing tests.
- platform/LocalizedStrings.cpp:
(WebCore::contextMenuItemTagLookUpInDictionary):
- platform/graphics/cg/GraphicsContextCG.cpp:
- platform/mac/EmptyProtocolDefinitions.h:
- platform/mac/NSScrollerImpDetails.h:
- platform/mac/WebCoreSystemInterface.h:
- platform/text/mac/HyphenationMac.mm:
Source/WebKit/mac:
- DefaultDelegates/WebDefaultContextMenuDelegate.mm:
- Misc/WebKitErrors.m:
(-[NSError _initWithPluginErrorCode:contentURL:pluginPageURL:pluginName:MIMEType:]):
- WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
- WebView/WebClipView.mm:
(-[WebClipView _immediateScrollToPoint:]):
- WebView/WebFrameView.mm:
(-[WebFrameView initWithFrame:]):
- WebView/WebView.mm:
Tools:
- DumpRenderTree/cf/WebArchiveDumpSupport.cpp:
(convertMIMEType):
(createXMLStringFromWebArchiveData):
- DumpRenderTree/mac/TestRunnerMac.mm:
(TestRunner::authenticateSession):
(TestRunner::setTextDirection):
- WebKitTestRunner/cf/WebArchiveDumpSupport.cpp:
(convertMIMEType):
(createXMLStringFromWebArchiveData):
- 6:27 PM Changeset in webkit [149921] by
-
- 16 edits in trunk/Source
Remove USE(OS_RANDOMNESS)
https://bugs.webkit.org/show_bug.cgi?id=108095
Reviewed by Darin Adler.
Remove the USE(OS_RANDOMNESS) guard as it is turned on for all
ports.
Source/JavaScriptCore:
- jit/JIT.cpp:
(JSC::JIT::JIT):
Source/WebCore:
No new tests as this is covered by existing tests.
- page/Crypto.cpp:
(WebCore::Crypto::getRandomValues):
- platform/UUID.cpp:
(WebCore::createCanonicalUUIDString):
Source/WebKit/blackberry:
- WebCoreSupport/AboutDataUseFeatures.in:
Source/WTF:
- wtf/CryptographicallyRandomNumber.cpp:
(WTF::cryptographicallyRandomValues):
- wtf/CryptographicallyRandomNumber.h:
- wtf/OSRandomSource.cpp:
(WTF::cryptographicallyRandomValuesFromOS):
- wtf/OSRandomSource.h:
- wtf/Platform.h:
- wtf/RandomNumber.cpp:
(WTF::randomNumber):
- wtf/RandomNumber.h:
- wtf/RandomNumberSeed.h:
(WTF::initializeRandomNumberGenerator):
- 6:24 PM Changeset in webkit [149920] by
-
- 25 edits in trunk
Remove [NoInterfaceObject] from several WebAudio IDL interfaces
https://bugs.webkit.org/show_bug.cgi?id=115894
Reviewed by Darin Adler.
Source/WebCore:
Several WebAudio IDL interfaces had [NoInterfaceObject] extended attribute set,
meaning that there was no corresponding attribute on the global window object.
This behavior is not according to the specification:
https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html
This patch removes the [NoInterfaceObject] extended attribute where needed to
match the specification.
No new tests, already covered by existing tests.
- Modules/webaudio/AnalyserNode.idl:
- Modules/webaudio/AudioBuffer.idl:
- Modules/webaudio/AudioBufferSourceNode.idl:
- Modules/webaudio/AudioDestinationNode.idl:
- Modules/webaudio/AudioListener.idl:
- Modules/webaudio/AudioNode.idl:
- Modules/webaudio/AudioParam.idl:
- Modules/webaudio/BiquadFilterNode.idl:
- Modules/webaudio/ChannelMergerNode.idl:
- Modules/webaudio/ChannelSplitterNode.idl:
- Modules/webaudio/ConvolverNode.idl:
- Modules/webaudio/DelayNode.idl:
- Modules/webaudio/DynamicsCompressorNode.idl:
- Modules/webaudio/GainNode.idl:
- Modules/webaudio/MediaElementAudioSourceNode.idl:
- Modules/webaudio/MediaStreamAudioDestinationNode.idl:
- Modules/webaudio/MediaStreamAudioSourceNode.idl:
- Modules/webaudio/OscillatorNode.idl:
- Modules/webaudio/ScriptProcessorNode.idl:
- Modules/webaudio/WaveShaperNode.idl:
- Modules/webaudio/WaveTable.idl:
LayoutTests:
Rebaseline fast/js/global-constructors-attributes.html now that more
global constructors are exposed.
- fast/js/global-constructors-attributes-expected.txt:
- platform/efl/fast/js/global-constructors-attributes-expected.txt:
- 6:23 PM Changeset in webkit [149919] by
-
- 2 edits in trunk/Source/WebKit2
Copy WKPluginInformation.h header to the WebKit2 Framework private headers.
https://bugs.webkit.org/show_bug.cgi?id=115940
Patch by Remy Demarest <rdemarest@apple.com> on 2013-05-10
Reviewed by Darin Adler.
- WebKit2.xcodeproj/project.pbxproj:
Move WKPluginInformation.h file from the framework's Project Headers to
Private Headers.
- 5:59 PM Changeset in webkit [149918] by
-
- 3 edits2 adds in trunk
REGRESSION (r145680): No box shadow rendered on element with positioned child that obscures it
https://bugs.webkit.org/show_bug.cgi?id=115840
Source/WebCore:
Reviewed by Antti Koivisto.
In r107836, we moved some box-shadow painting into the paintFillLayer code for performance.
However, in r145680 we started to skip background painting when we know the background is
obscured. This broke shadow painting in some cases.
Fix by always painting the background fill layers if we know that they will also
paint the shadow.
Test: fast/box-shadow/box-shadow-obscured-backgrounds.html
- rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBackground):
LayoutTests:
Reviewed by Antti Koivisto.
- fast/box-shadow/box-shadow-obscured-backgrounds-expected.html: Added.
- fast/box-shadow/box-shadow-obscured-backgrounds.html: Added.
- 5:52 PM Changeset in webkit [149917] by
-
- 2 edits in trunk/Source/WebKit2
[Qt][Mac] Unreviewed. Roll out the fix attempt in r149912.
- Target.pri:
- 5:46 PM Changeset in webkit [149916] by
-
- 3 edits1 add in trunk/Tools
[Windows] Allow VS2010 Build to use VS2005 Support Libraries
https://bugs.webkit.org/show_bug.cgi?id=115935
Reviewed by Jer Noble.
- WinLauncher/WinLauncher.vcxproj/WinLauncher.exe.manifest: Added.
- WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj: Add reference
to the new manifest file.
- WinLauncher/WinLauncher.vcxproj/WinLauncher.vcxproj.filters: Ditto.
- 5:32 PM Changeset in webkit [149915] by
-
- 3 edits4 adds in trunk
REGRESSION (r143626): Element shows as garbage in image gallery
https://bugs.webkit.org/show_bug.cgi?id=115946
Source/WebCore:
Reviewed by Antti Koivisto.
RenderLayer::backgroundIsKnownToBeOpaqueInRect() used hasVisibleContent()
to check whether the layer's content was hidden via the visibility property.
However, this assumed that a passing hasVisibleContent() check meant that the
entire area was covered by the renderers and layers checked layer.
This is not always true. It's possible to have a visibility:hidden layer
with a non-covering visbility:visible child, or even a single RenderText
child that happens to have visibility:visible style. In these situations,
hasVisibleContent() returns true but the entire area is not painted.
So we have to fall back to on a more conservative check using the
visibility style, which will give is a reliable answer for the current layer.
Tests: compositing/contents-opaque/hidden-with-visible-child.html
compositing/contents-opaque/hidden-with-visible-text.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
LayoutTests:
Reviewed by Antti Koivisto.
Test that dumps layers for a visibility:hidden element with a child text node,
and with a visibility:visible child. The resulting compositing layer should
not be marked as opaque.
- compositing/contents-opaque/hidden-with-visible-child-expected.txt: Added.
- compositing/contents-opaque/hidden-with-visible-child.html: Added.
- compositing/contents-opaque/hidden-with-visible-text-expected.txt: Added.
- compositing/contents-opaque/hidden-with-visible-text.html: Added.
- 5:31 PM Changeset in webkit [149914] by
-
- 3 edits2 adds in trunk
Garbage down left side of nytimes.com page (if subscriber)
https://bugs.webkit.org/show_bug.cgi?id=115839
Source/WebCore:
Reviewed by Antti Koivisto.
RenderLayer::backgroundIsKnownToBeOpaqueInRect() would incorrectly return true
for layers where the given rect wasn't contained in the background rect, but
where some child layer obscured the rect, even though clipping hid part
of that child layer.
So bail from RenderLayer::backgroundIsKnownToBeOpaqueInRect() if we have
any overflow clipping. This could be enhanced in future to test whether child
layers obscure the clipping rect, but that would be more expensive.
Test: compositing/contents-opaque/overflow-hidden-child-layers.html
- rendering/RenderLayer.cpp:
(WebCore::RenderLayer::backgroundIsKnownToBeOpaqueInRect):
LayoutTests:
Reviewed by Antti Koivisto.
- compositing/contents-opaque/overflow-hidden-child-layers-expected.txt: Added.
- compositing/contents-opaque/overflow-hidden-child-layers.html: Added.
- 4:42 PM Changeset in webkit [149913] by
-
- 2 edits in trunk/Source/WebKit2
Fix AppleConnect issues for WiFi interfaces
<rdar://problem/13776227&13776240&13776281>
https://bugs.webkit.org/show_bug.cgi?id=115932
Patch by Simon Cooper <scooper@apple.com> on 2013-05-10
Reviewed by Alexey Proskuryakov.
Add support for WiFi interfaces for the AppleConnect plugin.
Remove the FIXME.
- Resources/PlugInSandboxProfiles/com.apple.ist.ds.appleconnect.webplugin.sb:
- 4:36 PM Changeset in webkit [149912] by
-
- 2 edits in trunk/Source/WebKit2
[Qt][Mac] Unreviewed speculative build fix after r149904.
- Target.pri:
- 4:15 PM Changeset in webkit [149911] by
-
- 8 edits2 adds in trunk/Source/JavaScriptCore
Rename StructureCheckHoistingPhase to TypeCheckHoistingPhase
https://bugs.webkit.org/show_bug.cgi?id=115938
We're going to add some more types of check hoisting soon, so let's have the right name here.
Rubber stamped by Filip Pizlo.
- CMakeLists.txt:
- GNUmakefile.list.am:
- JavaScriptCore.xcodeproj/project.pbxproj:
- Target.pri:
- dfg/DFGDriver.cpp:
(JSC::DFG::compile):
- dfg/DFGStructureCheckHoistingPhase.cpp: Removed.
- dfg/DFGStructureCheckHoistingPhase.h: Removed.
- dfg/DFGTypeCheckHoistingPhase.cpp: Copied from Source/JavaScriptCore/dfg/DFGStructureCheckHoistingPhase.cpp.
(JSC::DFG::TypeCheckHoistingPhase::TypeCheckHoistingPhase):
(JSC::DFG::performTypeCheckHoisting):
- dfg/DFGTypeCheckHoistingPhase.h: Copied from Source/JavaScriptCore/dfg/DFGStructureCheckHoistingPhase.h.
- 3:56 PM Changeset in webkit [149910] by
-
- 3 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support CompareStrictEqConstant
https://bugs.webkit.org/show_bug.cgi?id=115941
Reviewed by Mark Hahnenberg.
Pretty simple, but factors out the craziness of comparing against null or undefined
in a way that is reusable for both == and ===.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCompareEqConstant):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEqConstant):
(LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::equalNullOrUndefined):
- 3:50 PM Changeset in webkit [149909] by
-
- 2 edits in trunk/Source/WebKit2
[Qt] Unreviewed buildfix after r149904.
- Target.pri:
- 3:22 PM Changeset in webkit [149908] by
-
- 7 edits2 adds in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support CompareEqConstant
https://bugs.webkit.org/show_bug.cgi?id=115939
Reviewed by Oliver Hunt and Mark Hahnenberg.
The most interesting part of this patch is the way I make it easier to deal with
the inputs to Phi functions. This adds the notion of ValueFromBlock, which you
can get by doing m_out.anchor(value). You can build up a vector of these, and then
pass them to m_out.phi(type, vector) in one go.
- JavaScriptCore.xcodeproj/project.pbxproj:
- ftl/FTLAbbreviatedTypes.h: Added.
(FTL):
- ftl/FTLAbbreviations.h:
(FTL):
(JSC::FTL::addIncoming):
(JSC::FTL::buildPhi):
- ftl/FTLAbstractHeapRepository.h:
(FTL):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCompareEqConstant):
(LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::lowDouble):
(JSC::FTL::LowerDFGToLLVM::masqueradesAsUndefinedWatchpointIfIsStillValid):
- ftl/FTLOutput.h:
(JSC::FTL::Output::phi):
(Output):
(JSC::FTL::Output::anchor):
- ftl/FTLValueFromBlock.h: Added.
(FTL):
(ValueFromBlock):
(JSC::FTL::ValueFromBlock::ValueFromBlock):
(JSC::FTL::ValueFromBlock::value):
(JSC::FTL::ValueFromBlock::block):
- 2:28 PM Changeset in webkit [149907] by
-
- 5 edits in trunk
Fix some compiler warnings (miscellaneous)
https://bugs.webkit.org/show_bug.cgi?id=80790
Patch by Jacky Jiang <zhajiang@blackberry.com> on 2013-05-10.
Reviewed by Rob Buis.
Source/WebKit/blackberry:
Fix the following warnings for BlackBerry:
BackingStore.cpp:852:60: warning: suggest parentheses around '&&' within
' ' [-Wparentheses]. WebPage.cpp:2858:40: warning: suggest parentheses around assignment used
as truth value [-Wparentheses].
WebPage.cpp:2880:42: warning: suggest parentheses around assignment used
as truth value [-Wparentheses]
- Api/BackingStore.cpp:
(BlackBerry::WebKit::BackingStorePrivate::updateTilesAfterBackingStoreRectChange):
- Api/WebPage.cpp:
(BlackBerry::WebKit::WebPagePrivate::adjustRectOffsetForFrameOffset):
(BlackBerry::WebKit::WebPagePrivate::blockZoomRectForNode):
Tools:
Fix the following warnings for BlackBerry:
DumpRenderTree.cpp:357:42: warning: suggest parentheses around assignment
used as truth value [-Wparentheses].
- DumpRenderTree/blackberry/DumpRenderTree.cpp:
(BlackBerry::WebKit::DumpRenderTree::resetToConsistentStateBeforeTesting):
- 2:11 PM Changeset in webkit [149906] by
-
- 8 edits2 adds in trunk
In-band captions not visible immediately after track mode change
https://bugs.webkit.org/show_bug.cgi?id=115922
Reviewed by Dean Jackson.
Source/WebCore:
Test: media/track/track-in-band-mode.html
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::textTrackModeChanged): Add cues for all loaded tracks, regardless
of track type.
LayoutTests:
- media/track/track-in-band-mode-expected.txt: Added.
- media/track/track-in-band-mode.html: Added.
- platform/efl/TestExpectations: Skip new test.
- platform/gtk/TestExpectations: Ditto.
- platform/mac/TestExpectations: Ditto.
- platform/qt/TestExpectations: Ditto.
- platform/win/TestExpectations: Ditto.
- 1:54 PM Changeset in webkit [149905] by
-
- 3 edits in trunk/Source/WebCore
Web Inspector: determine the resource type in InspectorResourceAgent::willSendRequest.
This allows the Network timeline and Resources sidebar to filter Resources earlier,
before the server sends a response. Useful for long polling (comet) XHRs.
https://webkit.org/b/74935
rdar://problem/13726105
Reviewed by Joseph Pecoraro.
- inspector/Inspector.json:
(Network.requestWillBeSent): Added.
- inspector/InspectorResourceAgent.cpp:
(WebCore::InspectorResourceAgent::willSendRequest): Send the type if it isn't Other along in requestWillBeSent.
(WebCore::InspectorResourceAgent::didReceiveResponse): Don't determine the type here anymore. Clear the CachedResource
if isNotModified like the old code path did by not setting cachedResource if !isNotModified.
- 1:46 PM Changeset in webkit [149904] by
-
- 12 edits5 adds in trunk/Source/WebKit2
Unify plug-in information dictionaries
<rdar://problem/13852080>
https://bugs.webkit.org/show_bug.cgi?id=115891
Reviewed by Anders Carlsson.
This unifies the plug-in information dictionaries vended by WKContextCopyPlugInInfoForBundleIdentifier
and WKContextGetInfoForInstalledPlugIns with those from the WKPageLoaderClient and WKPageUIClient.
All the old keys will continue to work, but have been deprecated in favor of new keys defined in
WKPluginInformation.h
- Shared/API/c/WKPluginInformation.cpp: Added.
- Shared/API/c/WKPluginInformation.h: Added.
Export new keys as SPI.
- Shared/Plugins/Netscape/PluginInformation.h: Added.
- Shared/Plugins/Netscape/PluginInformation.cpp: Added.
(WebKit::pluginInformationBundleIdentifierKey):
(WebKit::pluginInformationBundleVersionKey):
(WebKit::pluginInformationPathKey):
(WebKit::pluginInformationDisplayNameKey):
(WebKit::pluginInformationDefaultLoadPolicyKey):
(WebKit::pluginInformationUpdatePastLastBlockedVersionIsKnownAvailableKey):
(WebKit::pluginInformationHasSandboxProfileKey):
(WebKit::pluginInformationFrameURLKey):
(WebKit::pluginInformationMIMETypeKey):
(WebKit::pluginInformationPageURLKey):
(WebKit::pluginInformationPluginspageAttributeURLKey):
(WebKit::pluginInformationPluginURLKey):
Add new keys.
(WebKit::pluginModuleInformation):
(WebKit::createPluginInformationDictionary):
Add creation functions to simplify multiple sites.
- Shared/Plugins/Netscape/mac/PluginInformationMac.mm: Added.
(WebKit::platformPluginModuleInformation):
Add platform specific data to the dictionary.
- UIProcess/API/C/WKPage.cpp:
(WKPageGetPluginInformationBundleIdentifierKey):
(WKPageGetPluginInformationBundleVersionKey):
(WKPageGetPluginInformationDisplayNameKey):
(WKPageGetPluginInformationFrameURLKey):
(WKPageGetPluginInformationMIMETypeKey):
(WKPageGetPluginInformationPageURLKey):
(WKPageGetPluginInformationPluginspageAttributeURLKey):
(WKPageGetPluginInformationPluginURLKey):
- UIProcess/API/C/WKPage.h:
Deprecate the old keys.
- UIProcess/API/C/mac/WKContextPrivateMac.h:
- UIProcess/API/C/mac/WKContextPrivateMac.mm:
(WKContextCopyPlugInInfoForBundleIdentifier):
(WKContextGetInfoForInstalledPlugIns):
Simplify by using the new createPluginInformationDictionary functions.
(WKPlugInInfoPathKey):
(WKPlugInInfoBundleIdentifierKey):
(WKPlugInInfoVersionKey):
(WKPlugInInfoLoadPolicyKey):
(WKPlugInInfoUpdatePastLastBlockedVersionIsKnownAvailableKey):
(WKPlugInInfoIsSandboxedKey):
Deprecate the old keys.
- UIProcess/WebLoaderClient.cpp:
(WebKit::WebLoaderClient::didFailToInitializePlugin):
(WebKit::WebLoaderClient::didBlockInsecurePluginVersion):
(WebKit::WebLoaderClient::pluginLoadPolicy):
- UIProcess/WebLoaderClient.h:
- UIProcess/WebUIClient.cpp:
(WebKit::WebUIClient::unavailablePluginButtonClicked):
- UIProcess/WebUIClient.h:
Optimize for the most recent callback type which takes a dictionary,
and pull out the necessary bits from it for deprecated callbacks as necessary.
- UIProcess/WebPageProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::findPlugin):
(WebKit::WebPageProxy::unavailablePluginButtonClicked):
(WebKit::WebPageProxy::didFailToInitializePlugin):
(WebKit::WebPageProxy::didBlockInsecurePluginVersion):
Use createPluginInformationDictionary() consistently, to get consistent results for callbacks.
- WebKit2.xcodeproj/project.pbxproj:
Add new files.
- 1:35 PM Changeset in webkit [149903] by
-
- 3 edits in trunk/Source/WebKit2
Web Inspector: implement runOpenPanel callback for WebKit2 inspector
https://bugs.webkit.org/show_bug.cgi?id=115865
Patch by Brian J. Burg <Brian Burg> on 2013-05-10
Reviewed by Sam Weinig.
- UIProcess/WebInspectorProxy.h:
(WebKit::WebInspectorProxy::inspectorWindow):
Add an accessor for m_inspectorWindow.
- UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::runOpenPanel):
Show the open panel dialog when requested.
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Register the callback when the inspector page is created.
- 1:34 PM Changeset in webkit [149902] by
-
- 13 edits in trunk
[WK2][CoordinatedGraphics] WKViewSetThemePath is EFL specific
https://bugs.webkit.org/show_bug.cgi?id=115928
Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2013-05-10
Reviewed by Kenneth Rohde Christiansen.
Source/WebKit2:
WKViewSetThemePath was moved to WKViewEfl.h since it is EFL specific.
- UIProcess/API/C/CoordinatedGraphics/WKView.cpp:
- UIProcess/API/C/CoordinatedGraphics/WKView.h:
- UIProcess/API/C/efl/WKViewEfl.cpp:
(WKViewSetThemePath):
- UIProcess/API/C/efl/WKViewEfl.h:
- UIProcess/CoordinatedGraphics/WebView.cpp:
- UIProcess/CoordinatedGraphics/WebView.h:
(WebView):
- UIProcess/efl/ViewClientEfl.cpp:
- UIProcess/efl/WebInspectorProxyEfl.cpp:
- UIProcess/efl/WebViewEfl.cpp:
(WebKit::WebViewEfl::setThemePath):
- UIProcess/efl/WebViewEfl.h:
(WebViewEfl):
Tools:
WKViewSetThemePath was moved to WKViewEfl.h.
- TestWebKitAPI/efl/PlatformWebView.cpp:
- 12:24 PM Changeset in webkit [149901] by
-
- 2 edits in trunk/LayoutTests
Unreviewed mac-lion rebaselines.
- platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
- 12:12 PM Changeset in webkit [149900] by
-
- 3 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support CompareStrictEq
https://bugs.webkit.org/show_bug.cgi?id=115927
Reviewed by Mark Hahnenberg.
Do the sensible thing, and make it so that for common cases, CompareEq is
implemented in terms of CompareStrictEq in the FTL backend. All of the cases
we currently support can be done this way.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCompareEq):
(LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileCompareStrictEq):
- 12:10 PM Changeset in webkit [149899] by
-
- 5 edits in trunk/Source/WebCore
[CMake] Consolidate list of files to build for WebCore plugin support
https://bugs.webkit.org/show_bug.cgi?id=104429
Reviewed by Rob Buis.
Move the common files to support plugins and the logic for disabling
plugins) to CMakeLists.txt from PlatformXXX.cmake.
No new tests as there is no new functionality.
- CMakeLists.txt:
- PlatformBlackBerry.cmake:
- PlatformEfl.cmake:
- PlatformWinCE.cmake:
- 12:04 PM Changeset in webkit [149898] by
-
- 3 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support Int32ToDouble
https://bugs.webkit.org/show_bug.cgi?id=115926
Reviewed by Mark Hahnenberg.
This node exists mainly to help the DFG see that a node may have both an int
and a double representation. But in the FTL, nodes already have multiple
representations. So this is just a no-op for the FTL.
I considered making it so that the node isn't even inserted if we're doing
FTL compilation, but that would have required a bunch of conditionalizing in
the DFG's optimization phases, which sort of expect this node to be present
and necessary.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileInt32ToDouble):
(LowerDFGToLLVM):
- 12:02 PM Changeset in webkit [149897] by
-
- 3 edits2 adds in trunk
REGRESSION(r148121): Empty Span does not get a linebox when it's in an anonymous block
https://bugs.webkit.org/show_bug.cgi?id=115818
Reviewed by David Hyatt.
Source/WebCore:
r148121 only worried about split inlines inside anonymous blocks - it ought to have
catered for empty inlines, with no continuations, inside a single solitary anonymous block too.
Test: fast/inline/anonymous-block-with-empty-inline.html
- rendering/RenderBlockLineLayout.cpp:
(WebCore::hasInlineDirectionBordersPaddingOrMargin):
LayoutTests:
- fast/inline/anonymous-block-with-empty-inline-expected.txt: Added.
- fast/inline/anonymous-block-with-empty-inline.html: Added.
- 11:47 AM Changeset in webkit [149896] by
-
- 5 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support LogicalNot
https://bugs.webkit.org/show_bug.cgi?id=115924
Reviewed by Mark Hahnenberg.
- ftl/FTLAbbreviations.h:
(JSC::FTL::buildNot):
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileLogicalNot):
(LowerDFGToLLVM):
- ftl/FTLOutput.h:
(JSC::FTL::Output::bitNot):
- 11:39 AM Changeset in webkit [149895] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Remove unnecessary includes in WidgetGtk.cpp
https://bugs.webkit.org/show_bug.cgi?id=115912
Reviewed by Andreas Kling.
No new tests - no new functionality.
- platform/gtk/WidgetGtk.cpp: Remove the unnecessary includes of the Chrome.h, Frame.h, FrameView.h,
Page.h and RenderObject.h headers as the included declarations are not used anywhere. ScrollView.h is
included instead as it is required and was previously included by one of the removed header inclusions.
- 11:38 AM Changeset in webkit [149894] by
-
- 2 edits in trunk/Source/WebCore
[Cairo] Remove the unnecessary ImageData.h include in ImageBufferCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=115911
Reviewed by Carlos Garcia Campos.
No new tests - no new functionality.
- platform/graphics/cairo/ImageBufferCairo.cpp: Remove the ImageData.h include
as the included declarations are not used anywhere.
- 11:37 AM Changeset in webkit [149893] by
-
- 2 edits in trunk/Source/WebCore
[Cairo] Remove the unnecessary CSSParser.h include in GradientCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=115910
Reviewed by Laszlo Gombos.
No new tests - no new functionality.
- platform/graphics/cairo/GradientCairo.cpp: Remove the CSSParser.h include
as the included declarations are not used anywhere.
- 11:31 AM Changeset in webkit [149892] by
-
- 3 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL should support CompareGreater, CompareLessEq, and CompareGreaterEq
https://bugs.webkit.org/show_bug.cgi?id=115923
Reviewed by Mark Hahnenberg.
Also fixed a bug where double CompareLess would assert.
- ftl/FTLCapabilities.cpp:
(JSC::FTL::canCompile):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileNode):
(JSC::FTL::LowerDFGToLLVM::compileCompareLess):
(LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::compileCompareLessEq):
(JSC::FTL::LowerDFGToLLVM::compileCompareGreater):
(JSC::FTL::LowerDFGToLLVM::compileCompareGreaterEq):
- 11:20 AM Changeset in webkit [149891] by
-
- 3 edits2 adds in trunk
Include tab character as a word end for kerning
https://bugs.webkit.org/show_bug.cgi?id=115915
<rdar://problem/13861491>
Reviewed by Enrica Casucci.
This is a follow-up to https://bugs.webkit.org/show_bug.cgi?id=112507
which only looked for a space character as a word end. It should
look for tab characters too.
Source/WebCore:
Test: fast/text/word-space-with-kerning-4.html
- rendering/RenderBlockLineLayout.cpp:
(WebCore::setLogicalWidthForTextRun): Look for '\t'.
LayoutTests:
- fast/text/word-space-with-kerning-4-expected.html: Added.
- fast/text/word-space-with-kerning-4.html: Added.
- 11:12 AM Changeset in webkit [149890] by
-
- 7 edits in branches/dfgFourthTier/Source/JavaScriptCore
fourthTier: FTL CompareEq ObjectUse should handle masquerading
https://bugs.webkit.org/show_bug.cgi?id=115920
Reviewed by Mark Hahnenberg.
We don't yet support watchpoints, but this does all the wiring right up to the
part where we would have emitted watchpoints. I've also written this in a way that
makes it easy to use the case where you would have anyway speculated non-masquerading
even if the watchpoint was invalidated.
This is inherently racy, of course: but the only race here is that you might first
set the watchpoint, and then the watchpoint is invalidated, and then you compile rest
of the code in a way that doesn't need the watchpoint. That's fine, since the FTL
will remember that it had set the watchpoint and then cancel the compilation.
- ftl/FTLAbbreviations.h:
(JSC::FTL::int8Type):
- ftl/FTLAbstractHeapRepository.h:
(FTL):
- ftl/FTLCommonValues.cpp:
(JSC::FTL::CommonValues::CommonValues):
- ftl/FTLCommonValues.h:
(CommonValues):
- ftl/FTLLowerDFGToLLVM.cpp:
(JSC::FTL::LowerDFGToLLVM::compileCompareEq):
(JSC::FTL::LowerDFGToLLVM::lowNonNullObject):
(LowerDFGToLLVM):
(JSC::FTL::LowerDFGToLLVM::speculateNonNullObject):
(JSC::FTL::LowerDFGToLLVM::masqueradesAsUndefinedWatchpointIsStillValid):
(JSC::FTL::LowerDFGToLLVM::masqueradesAsUndefinedWatchpointIfIsStillValid):
- ftl/FTLOutput.h:
(JSC::FTL::Output::constInt8):
(JSC::FTL::Output::load8):
(JSC::FTL::Output::isZero8):
(JSC::FTL::Output::notZero8):
(JSC::FTL::Output::testIsZero8):
(JSC::FTL::Output::testNonZero8):
- 10:48 AM Changeset in webkit [149889] by
-
- 2 edits in trunk/Tools
I accidentally the Java testing.
- Scripts/webkitpy/port/mac.py:
- 10:39 AM Changeset in webkit [149888] by
-
- 8 edits2 deletes in trunk/Source/WebCore
Remove EventTracer
https://bugs.webkit.org/show_bug.cgi?id=115916
Reviewed by Sam Weinig.
EventTracer is dead code, remove it.
- CMakeLists.txt:
- GNUmakefile.list.am:
- Target.pri:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- platform/EventTracer.cpp: Removed.
- platform/EventTracer.h: Removed.
- 10:36 AM Changeset in webkit [149887] by
-
- 2 edits in trunk/Source/WebCore
[GTK] Generated files are regenerated always
https://bugs.webkit.org/show_bug.cgi?id=115908
Reviewed by Carlos Garcia Campos.
No new tests - no change in functionality.
- GNUmakefile.am: Don't treat the window constructors IDL file as a dependency of the JavaScriptCore bindings.
The file is generated during the IDL preprocessing, and the JSC bindings already depend on that step through
the idl_supplemental_dependencies file. Because of that the window constructors IDL file has a phony target
which seems to confuse the bindings generation rule into thinking that a complete regeration of the bindings is required.
- 10:34 AM Changeset in webkit [149886] by
-
- 10 edits in trunk
Caching of generated images in CSS should be smarter.
<http://webkit.org/b/115902>
<rdar://problem/13542727>
Reviewed by Antti Koivisto.
Add an IntSize => GeneratorGeneratedImage cache at the CSSImageGeneratorValue level.
CSSGradientValue is currently the only CSSImageGeneratorValue subclass that makes use of the cache.
Generated images are kept for 3 seconds after last use.
The main problem with the previous approach was that background renderers (e.g <body>, <tr>, etc)
would be passed to multiple CSSImageGeneratorValue::getImage() calls with different sizes requested
for each of the descendent renderers that inherit their background from the same parent.
The cache wasn't smart enough for this, it just thought the background renderer was changing size
a lot, and would regenerate the image over and over.
We already had caching of intermediate image buffers for GeneratorGeneratedImage::drawPattern().
This removes the eviction timer from that cache so that the intermediate images can live a bit longer.
(WebCore::CSSImageGeneratorValue::cachedImageForSize):
(WebCore::CSSImageGeneratorValue::saveCachedImageForSize):
Renamed from getImage() and putImage().
(WebCore::CSSImageGeneratorValue::evictCachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::CachedGeneratedImage):
(WebCore::CSSImageGeneratorValue::CachedGeneratedImage::evictionTimerFired):
Let the CachedGeneratedImage throw itself out from cache when the timer fires.
- css/CSSImageGeneratorValue.h:
(CachedGeneratedImage):
Exactly what it sounds like. These go into CSSImageGeneratorValue::m_images with the size
as the hash key.
- platform/graphics/GeneratorGeneratedImage.cpp:
(WebCore::GeneratorGeneratedImage::drawPattern):
- platform/graphics/GeneratorGeneratedImage.h:
(WebCore::GeneratorGeneratedImage::~GeneratorGeneratedImage):
(WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
Keep the intermediate image for drawPattern() until destruction instead of dropping it on
a timer. These objects are now evicted by the CSSImageGeneratorValue's image cache
after 3 seconds of disuse rather than kept for the lifetime of the renderer.
- css/CSSCanvasValue.cpp:
(WebCore::CSSCanvasValue::canvasChanged):
(WebCore::CSSCanvasValue::canvasResized):
- css/CSSCrossfadeValue.cpp:
(WebCore::CSSCrossfadeValue::crossfadeChanged):
- rendering/style/StyleGeneratedImage.cpp:
(WebCore::StyleGeneratedImage::addClient):
- css/CSSImageGeneratorValue.cpp:
(WebCore::CSSImageGeneratorValue::addClient):
(WebCore::CSSImageGeneratorValue::removeClient):
CSSImageGeneratorValue::m_clients is now a HashCountedSet<RenderObject*>, tweak accordingly.
- 10:20 AM Changeset in webkit [149885] by
-
- 2 edits in trunk/Source/WebKit2
REGRESSION (r149439): Video turns blank upon entering full screen for the first time
https://bugs.webkit.org/show_bug.cgi?id=115617
Reviewed by Eric Carlson.
Partially revert the change introduced in r149439 for OS X 10.8 and previous. On these
platforms, create a window with a NSZeroSize initial frame, which fixes the "blank"
first-full screen behavior.
- UIProcess/API/mac/WKView.mm:
(-[WKView createFullScreenWindow]):
- 10:16 AM Changeset in webkit [149884] by
-
- 7 edits in trunk/Source/WebKit2
[WK2] Make the WebSoupRequestManager a supplement to the WebProcess
https://bugs.webkit.org/show_bug.cgi?id=115717
Reviewed by Andreas Kling.
WebSoupRequestManager should inherit from WebProcessSupplement and should be used as such
by the WebProcess. This removes the need for the m_soupRequestManager member variable in
the WebProcess class and brings the WebSoupRequestManager in line with other manager classes
of which instances are controlled by the WebProcess class.
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::WebProcess): Add the WebSoupRequestManager as a supplement.
- WebProcess/WebProcess.h:
(WebProcess): Remove the m_soupRequestManager member variable and its getter method.
- WebProcess/soup/WebKitSoupRequestGeneric.cpp:
(webkitSoupRequestGenericSendAsync): Access the WebSoupRequestManager as a supplement.
(webkitSoupRequestGenericSendFinish): Ditto.
- WebProcess/soup/WebProcessSoup.cpp:
(WebKit::WebProcess::platformInitializeWebProcess): Access the WebSoupRequestManager as a supplement.
- WebProcess/soup/WebSoupRequestManager.cpp:
(WebKit::WebSoupRequestManager::supplementName): Specify the supplement's name.
- WebProcess/soup/WebSoupRequestManager.h:
(WebSoupRequestManager): Inherit from the WebProcessSupplement interface.
- 10:04 AM Changeset in webkit [149883] by
-
- 2 edits in trunk/Tools
[GTK] Module Cairo fails to build under jhbuild
https://bugs.webkit.org/show_bug.cgi?id=115854
Patch by Brian Holt <brian.holt@samsung.com> on 2013-05-10
Reviewed by Martin Robinson.
Make cairo depend on glib in jhbuild.modules.
- gtk/jhbuild.modules:
- 10:03 AM Changeset in webkit [149882] by
-
- 10 edits3 deletes in trunk/Source/WebCore
Remove MemoryUsageSupport class
https://bugs.webkit.org/show_bug.cgi?id=115913
Reviewed by Andreas Kling.
MemoryUsageSupport was just used by a single call site in InspectorTimelineAgent,
and the function called always returns zero on all platforms! Remove it.
- CMakeLists.txt:
- GNUmakefile.list.am:
- Target.pri:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- inspector/InspectorMemoryAgent.cpp:
- inspector/InspectorTimelineAgent.cpp:
(WebCore):
(WebCore::InspectorTimelineAgent::setNativeHeapStatistics):
- platform/MemoryUsageSupport.cpp: Removed.
- platform/MemoryUsageSupport.h: Removed.
- platform/qt/MemoryUsageSupportQt.cpp: Removed.
- 9:38 AM Changeset in webkit [149881] by
-
- 7 edits2 adds in trunk
REGRESSION (r149652): Videos do not play on cnn.com, just black box
https://bugs.webkit.org/show_bug.cgi?id=115887
Reviewed by Antti Koivisto.
Source/WebCore:
The bug was caused by window and document named item maps counting the same element twice
when it has the same id and name attribute values. Fixed the bug by avoiding to add or remove
an element per id and name attribute updates when it had already been added or removed by
name and id attribute updates respectively.
We do this by checking whether the other attribute affects the element's precense in window
and document named item maps and avoiding to add or remove the attribute when they do and
the other attribute is present in updateId and updateName.
Consider a scenario when an object element has id "foo", and name attribute is about to be also
set to "foo". If the id attribute doesn't affect element's presense in window or document
named item maps, we're done. If it does, then the maps already have this element so we don't
want to add it again. Conversely, if the element already has id and name attributes set to
"foo", and we're moving the id attribute, then we want to remove the element from the maps only
if the id doesn't affect the presence of the element in the maps.
Unfortuntely, this logic doesn't work when we're inserting or removing an element on its entirely
because updateId and updateName are called when both id and name attributes are present so skip
this step (AlwaysUpdateHTMLDocumentNamedItemMaps) for the id attribute to break the symmetry.
Test: fast/dom/HTMLDocument/image-with-same-id-and-name.html
fast/dom/HTMLDocument/object-with-same-id-and-name.html
- dom/Element.cpp:
(WebCore::Element::insertedInto): Call updateId and updateName with
AlwaysUpdateHTMLDocumentNamedItemMaps.
(WebCore::Element::removedFrom): Ditto.
(WebCore::Element::updateName): Don't add or remove this element if the id attribute has already
done so except when we're inserting, removing, or cloning an element.
(WebCore::Element::updateId): Ditto for the name attribute.
(WebCore::Element::cloneAttributesFromElement): Added a comment and assert that we never call this
function when this element is in the document. We can't update window and documemt named item
maps here because image element's id attribute value, for example, is present in the document's
named item map if it has a name attribute. Since this function calls updateId and updateName
before updating attributes, this check is going to fail in DocumentNameCollection's
nodeMatchesIfIdAttributeMatch and bad things will happen.
- dom/Element.h:
- editing/ReplaceNodeWithSpanCommand.cpp:
(WebCore::swapInNodePreservingAttributesAndChildren): Clone children and attributes before
inserting the swapped span to avoid hitting the assertion in cloneAttributesFromElement we added.
- html/HTMLImageElement.cpp:
(WebCore::HTMLImageElement::parseAttribute):
- html/HTMLObjectElement.cpp:
(WebCore::HTMLObjectElement::updateDocNamedItem):
LayoutTests:
Add regression tests.
- fast/dom/HTMLDocument/image-with-same-id-and-name-expected.txt: Added.
- fast/dom/HTMLDocument/image-with-same-id-and-name.html: Added.
- fast/dom/HTMLDocument/object-with-same-id-and-name-expected.txt: Added.
- fast/dom/HTMLDocument/object-with-same-id-and-name.html: Added.
- 9:18 AM Changeset in webkit [149880] by
-
- 2 edits in trunk/Source/WebCore
Don't trust character widths for internal OS X fonts in form controls
https://bugs.webkit.org/show_bug.cgi?id=115883
<rdar://problem/13817757>
Reviewed by Darin Adler.
We ignore the character width for a bunch of fonts when predicting
the width of a form control. Some of the internal fonts in OS X are
not in the ignored list. Rather than add them, simply test for
fonts whose family begins with a period character ".".
- rendering/RenderTextControl.cpp:
(WebCore::RenderTextControl::hasValidAvgCharWidth): Return false for
any family that starts with "."
- 9:11 AM Changeset in webkit [149879] by
-
- 11 edits in trunk
[GTK] Remove unnecessary GLIB_CHECK_VERSION #ifdefs
https://bugs.webkit.org/show_bug.cgi?id=115904
Reviewed by Martin Robinson.
Source/WebCore:
- bindings/gobject/WebKitDOMEventTarget.cpp:
- platform/gtk/GtkVersioning.c:
- platform/gtk/GtkVersioning.h:
Source/WebKit2:
- UIProcess/API/gtk/tests/TestInspectorServer.cpp:
(startTestServerMonitor):
- UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp:
(startTestServerMonitor):
Source/WTF:
- wtf/gobject/GRefPtr.cpp:
Tools:
- ImageDiff/gtk/ImageDiff.cpp:
(main):
- 9:01 AM Changeset in webkit [149878] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Fix the ENABLE(SHARED_WORKERS) build after r149864.
- workers/SharedWorkerThread.cpp: include "SecurityOrigin.h"
- 8:27 AM Changeset in webkit [149877] by
-
- 2 edits in trunk/Tools
Add my new address to contributors.json. (Unreviewed)
- Scripts/webkitpy/common/config/contributors.json:
- 7:05 AM Changeset in webkit [149876] by
-
- 2 edits in trunk/Source/WebCore
Fix build after r149864.
Unreviewed build fix.
- loader/ThreadableLoader.h: include <wtf/text/AtomicString.h>
when building with RESOURCE_TIMING enabled.
- 6:26 AM WebKit Team edited by
- Move myself to the Reviewers list (diff)
- 6:19 AM Changeset in webkit [149875] by
-
- 2 edits in trunk/Tools
Unreviewed. Move myself to the reviewers list.
- Scripts/webkitpy/common/config/contributors.json:
- 6:16 AM Changeset in webkit [149874] by
-
- 3 edits in trunk/LayoutTests
Unreviewed EFL gardening.
Rebaseline fast/dom/Range/getClientRects.html for EFL port.
Skip accessibility/poorly-formed-aria-table.html introduced in
r149858 but failing on EFL port.
- platform/efl/TestExpectations:
- platform/efl/fast/dom/Range/getClientRects-expected.txt:
- 6:00 AM Changeset in webkit [149873] by
-
- 2 edits in trunk/Source/WebCore
Fix build.
- bindings/js/ScriptController.cpp:
- 5:53 AM Changeset in webkit [149872] by
-
- 2 edits2 adds in trunk/LayoutTests
[Qt] Unreviewed gardening.
- 5:51 AM Changeset in webkit [149871] by
-
- 13 edits1 delete in trunk/Source/WebCore
Remove ScriptInstance.h
https://bugs.webkit.org/show_bug.cgi?id=115900
Reviewed by Andreas Kling.
Remove yet another abstraction now that we don't support V8.
- GNUmakefile.list.am:
- WebCore.vcproj/WebCore.vcproj:
- WebCore.vcxproj/WebCore.vcxproj:
- WebCore.vcxproj/WebCore.vcxproj.filters:
- WebCore.xcodeproj/project.pbxproj:
- bindings/js/ScriptController.h:
(Bindings):
(ScriptController):
- bindings/js/ScriptControllerMac.mm:
(WebCore::ScriptController::createScriptInstanceForWidget):
- bindings/js/ScriptInstance.h: Removed.
- html/HTMLPlugInElement.cpp:
(WebCore::HTMLPlugInElement::getInstance):
- html/HTMLPlugInElement.h:
(Bindings):
(HTMLPlugInElement):
- platform/graphics/wince/MediaPlayerProxy.h:
(WebMediaPlayerProxy):
- rendering/RenderEmbeddedObject.cpp:
- rendering/RenderSnapshottedPlugIn.cpp:
- 5:49 AM Changeset in webkit [149870] by
-
- 3 edits3 adds in trunk/LayoutTests
Unreviewed EFL gardening.
Skip several remaining shadow dom tests and rebaseline a few others.
- platform/efl/TestExpectations:
- platform/efl/fast/images/crossfade-client-not-removed-crash-expected.txt: Added.
- platform/efl/fast/js/dom-static-property-for-in-iteration-expected.txt:
- platform/efl/inspector/console/command-line-api-expected.txt: Added.
- 5:22 AM Changeset in webkit [149869] by
-
- 4 edits in trunk/Source/WebCore
Unreviewed, rolling out r149866.
http://trac.webkit.org/changeset/149866
https://bugs.webkit.org/show_bug.cgi?id=115898
Broke tests
- dom/Document.cpp:
(WebCore::Document::setDomain):
(WebCore::Document::initSecurityContext):
- page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::SecurityOrigin):
(WebCore::SecurityOrigin::isolatedCopy):
(WebCore::SecurityOrigin::setDomainFromDOM):
(WebCore::SecurityOrigin::grantUniversalAccess):
- page/SecurityOrigin.h:
(SecurityOrigin):
- 5:21 AM Changeset in webkit [149868] by
-
- 2 edits in trunk/Tools
Unreviewed. Add my email to a few watchlists.
- Scripts/webkitpy/common/config/watchlist:
- 5:17 AM Changeset in webkit [149867] by
-
- 3 edits in trunk/Source/WebCore
Remove overflow dead code
https://bugs.webkit.org/show_bug.cgi?id=115893
Reviewed by Antti Koivisto.
The patch removes unused public overflow accesor functions from RenderOverflow and InlineFlowBox.
Tests: no tests, code cleanup.
- rendering/InlineFlowBox.h: Removed logicalLeftLayoutOverflow and logicalRightLayoutOverflow.
- rendering/RenderOverflow.h: Removed setMinYLayoutOverflow, setMaxYLayoutOverflow,
setMinXLayoutOverflow, setMaxXLayoutOverflow, setMinYVisualOverflow, setMaxYVisualOverflow,
setMinXVisualOverflow and setMaxXVisualOverflow.
- 4:59 AM Changeset in webkit [149866] by
-
- 4 edits in trunk/Source/WebCore
Begin making SecurityOrigin immutable
https://bugs.webkit.org/show_bug.cgi?id=115898
Reviewed by Andreas Kling.
Replace SecurityOrigin::setDomainFromDOM and SecurityOrigin::grantUniversalAccess with
member functions that return new SecurityOrigin objects.
- dom/Document.cpp:
(WebCore::Document::setDomain):
Update the security origin to one returned by copyWithDomainSetFromDOM.
(WebCore::Document::initSecurityContext):
Set the security origin to one returned by copyWithUniversalAccessGranted().
- page/SecurityOrigin.cpp:
(WebCore::SecurityOrigin::SecurityOrigin):
Add a new constructor that takes all the member variables as parameters. This is a little unwieldy at the moment,
but all the boolean parameters could be replaced by a bitmask of flags.
(WebCore::SecurityOrigin::isolatedCopy):
Call the new constructor.
(WebCore::SecurityOrigin::copyWithDomainSetFromDOM):
Return a new security origin with m_domainWasSetInDOM set to true and the domain updated.
(WebCore::SecurityOrigin::copyWithUniversalAccessGranted):
Return a new security origin with m_universalAccess set to true.
- 4:18 AM Changeset in webkit [149865] by
-
- 7 edits in trunk/Source/WebCore
Remove ScriptController::updateSecurityOrigin
https://bugs.webkit.org/show_bug.cgi?id=115895
Reviewed by Antti Koivisto.
ScriptController::updateSecurityOrigin is just dead code now that the V8 bindings are gone.
- bindings/js/ScriptController.cpp:
- bindings/js/ScriptController.h:
- dom/Document.cpp:
(WebCore::Document::setIsViewSource):
(WebCore::Document::setDomain):
- dom/Document.h:
(Document):
- dom/SecurityContext.cpp:
(WebCore::SecurityContext::enforceSandboxFlags):
- dom/SecurityContext.h:
(SecurityContext):
- 4:12 AM Changeset in webkit [149864] by
-
- 15 edits in trunk/Source/WebCore
Stop including SecurityOrigin.h where unnecessary
https://bugs.webkit.org/show_bug.cgi?id=115897
Reviewed by Antti Koivisto.
Move rarely called functions out of line so headers don't have to include SecurityOrigin.h
- Modules/indexeddb/IDBFactoryBackendImpl.h:
- Modules/webdatabase/DatabaseBackendBase.cpp:
(WebCore::DatabaseBackendBase::databaseDebugName):
- Modules/webdatabase/DatabaseBackendBase.h:
(DatabaseBackendBase):
- Modules/webdatabase/DatabaseSync.h:
- bindings/js/JSDOMWindowCustom.h:
- html/parser/XSSAuditor.cpp:
- loader/ThreadableLoader.cpp:
(WebCore::ThreadableLoaderOptions::ThreadableLoaderOptions):
(WebCore::ThreadableLoaderOptions::~ThreadableLoaderOptions):
(WebCore::ThreadableLoader::create):
- loader/ThreadableLoader.h:
(ThreadableLoaderOptions):
- loader/WorkerThreadableLoader.cpp:
- workers/DedicatedWorkerContext.cpp:
- workers/DedicatedWorkerThread.cpp:
- workers/SharedWorkerContext.cpp:
- workers/WorkerThread.cpp:
- workers/WorkerThread.h:
- 2:37 AM WK2-EFLTextCheckerApiTutorial edited by
- (diff)
- 2:32 AM WK2-EFLTextCheckerApiTutorial edited by
- (diff)
- 2:29 AM WK2-EFLTextCheckerApiTutorial edited by
- (diff)
- 1:45 AM Changeset in webkit [149863] by
-
- 3 edits in trunk/Tools
Unicode support missing from string representation of Contributors in committers.py
https://bugs.webkit.org/show_bug.cgi?id=115859
Patch by Simon Pena <simon.pena@samsung.com> on 2013-05-10
Reviewed by Darin Adler.
Contributors, in committers.py, provided a string representation in str which
didn't support unicode characters, so printing a contributor would fail in that case.
This patch implements unicode and makes str use it to represent a contributor.
The unit tests are updated accordingly, so they ensure that a unicode name can be shown.
- Scripts/webkitpy/common/config/committers.py: Move the existing string representation
to the newly implemented method unicode, and make str display its utf-8 encoded
representation.
(Contributor.str):
(Contributor):
(Contributor.unicode):
- Scripts/webkitpy/common/config/committers_unittest.py: Add a new test that checks that
a contributor with unicode characters can be represented as a string.
(CommittersTest):
(CommittersTest.test_contributor_encoding):
- 12:41 AM Changeset in webkit [149862] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed. Fix GTK+ build after r149839.
- platform/gtk/RenderThemeGtk3.cpp:
(WebCore::gtkStyleChangedCallback):