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

Timeline



Mar 24, 2013:

9:58 PM Changeset in webkit [146744] by falken@chromium.org
  • 9 edits in trunk/Source/WebCore

Refactoring: Pull Node::disabled() and Node::isInert() down to Element.
https://bugs.webkit.org/show_bug.cgi?id=112085

Reviewed by Hajime Morrita.

Node is too low a level for these methods. The plan is to rename
Element::disabled to isDisabledFormControl and to remove
Element::isEnabledFormControl.

No new tests, just refactoring.

  • dom/Element.cpp:

(WebCore::Element::disabled):
(WebCore):
(WebCore::Element::isInert):

  • dom/Element.h:

(Element):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchSimulatedClick):

  • dom/GestureEvent.cpp:

(WebCore::GestureEventDispatchMediator::dispatchEvent):

  • dom/MouseEvent.cpp:

(WebCore::MouseEventDispatchMediator::dispatchEvent):

  • dom/Node.cpp:

(WebCore::Node::handleLocalEvents):
(WebCore::Node::willRespondToMouseMoveEvents):
(WebCore::Node::willRespondToMouseClickEvents):
(WebCore::Node::willRespondToTouchEvents):

  • dom/Node.h:

(Node):

9:27 PM Changeset in webkit [146743] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

[chromium] Mark canvas-toDataURL-webp.html imageOnlyFailure
https://bugs.webkit.org/show_bug.cgi?id=113169

Unreviewed test expectations update.

Start generating test images on the bots now that libwebp 0.3.0
has landed in chromium webkit.

  • platform/chromium/TestExpectations:
8:55 PM Changeset in webkit [146742] by noel.gordon@gmail.com
  • 2 edits in trunk/LayoutTests

[chromium] fast/text/international/danda-space.html is failing
https://bugs.webkit.org/show_bug.cgi?id=113169

Unreviewed test expectations update.

  • platform/chromium/TestExpectations:
7:15 PM Changeset in webkit [146741] by kov@webkit.org
  • 2 edits in releases/WebKitGTK/webkit-2.0/Source/WebCore/platform/gtk/po

Merge 146740 - [l10n] Updated Polish translation of WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=113113

Patch by Piotr Drąg <piotrdrag@gmail.com> on 2013-03-24
Reviewed by Gustavo Noronha Silva (kov).

  • pl.po: updated translation.
7:14 PM Changeset in webkit [146740] by kov@webkit.org
  • 2 edits in trunk/Source/WebCore/platform/gtk/po

[l10n] Updated Polish translation of WebKitGTK+
https://bugs.webkit.org/show_bug.cgi?id=113113

Patch by Piotr Drąg <piotrdrag@gmail.com> on 2013-03-24
Reviewed by Gustavo Noronha Silva (kov).

  • pl.po: updated translation.
6:57 PM Changeset in webkit [146739] by danakj@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Roll chromium deps to 190311.
https://bugs.webkit.org/show_bug.cgi?id=113161

Unreviewed, rolling deps.

  • DEPS:
5:38 PM Changeset in webkit [146738] by hayato@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

[Shadow] Add a test of insertionParent for <shadow> element.
https://bugs.webkit.org/show_bug.cgi?id=113021

Reviewed by Dimitri Glazkov.

  • fast/dom/shadow/insertion-parent-shadow-expected.txt: Added.
  • fast/dom/shadow/insertion-parent-shadow.html: Added.
5:36 PM Changeset in webkit [146737] by hclam@chromium.org
  • 4 edits in trunk/Source

GIFImageReader should reports parsing error to client
https://bugs.webkit.org/show_bug.cgi?id=113141

Reviewed by Stephen White.

Source/WebCore:

GIFImageReader nows reports parsing error to client (GIFImageDecoder) such that errors can be handled.
In the case of corrupted GIF images GIFImageReader will be deleted and decoding will fail.

Unit test is updated to reflect change in behavior.
Tested with a local corpus which showed better handling of corrupted GIF images.

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::decode):

Source/WebKit/chromium:

Updated unit test that runs on a broken GIF image file, decoding should fail.

  • tests/GIFImageDecoderTest.cpp:

(WebKit::TEST):

4:37 PM Changeset in webkit [146736] by jamesr@google.com
  • 5 edits in trunk/Source

[chromium] Wire windows scrollByPage enum up to compositor thread input handling
https://bugs.webkit.org/show_bug.cgi?id=113117

Reviewed by Adrienne Walker.

Source/Platform:

  • chromium/public/WebInputHandlerClient.h:

Source/WebKit/chromium:

  • src/WebCompositorInputHandlerImpl.cpp:

(WebKit::WebCompositorInputHandlerImpl::handleInputEventInternal):

  • tests/WebCompositorInputHandlerImplTest.cpp:

(MockWebInputHandlerClient):

4:15 PM Changeset in webkit [146735] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled Chromium DEPS to r190276. Requested by
"Dana Jansens" <danakj@chromium.org> via sheriffbot.

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2013-03-24

  • DEPS:
3:45 PM Changeset in webkit [146734] by mhahnenberg@apple.com
  • 12 edits
    2 adds in trunk/Source/JavaScriptCore

HandleSet should use HeapBlocks for storing handles
https://bugs.webkit.org/show_bug.cgi?id=113145

Reviewed by Geoffrey Garen.

  • GNUmakefile.list.am: Build project changes.
  • JavaScriptCore.gypi: Ditto.
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj: Ditto.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj: Ditto.
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters: Ditto.
  • JavaScriptCore.xcodeproj/project.pbxproj: Ditto.
  • heap/BlockAllocator.cpp: Rename the RegionSet to m_fourKBBlockRegionSet because there are

too many block types to include them all in the name now.
(JSC::BlockAllocator::BlockAllocator):

  • heap/BlockAllocator.h:

(BlockAllocator): Add the appropriate override for regionSetFor.
(JSC::WeakBlock):
(JSC::MarkStackSegment):
(JSC::HandleBlock):

  • heap/HandleBlock.h: Added.

(HandleBlock): New class for HandleBlocks.
(JSC::HandleBlock::blockFor): Static method to get the block of the given HandleNode pointer. Allows
us to quickly figure out which HandleSet the HandleNode belongs to without storing the pointer to it
in the HandleNode.
(JSC::HandleBlock::handleSet): Getter.

  • heap/HandleBlockInlines.h: Added.

(JSC::HandleBlock::create):
(JSC::HandleBlock::HandleBlock):
(JSC::HandleBlock::payloadEnd):
(JSC::HandleBlock::payload):
(JSC::HandleBlock::nodes):
(JSC::HandleBlock::nodeAtIndex):
(JSC::HandleBlock::nodeCapacity):

  • heap/HandleSet.cpp:

(JSC::HandleSet::~HandleSet):
(JSC::HandleSet::grow):

  • heap/HandleSet.h:

(HandleNode): Move the internal Node class from HandleSet to be its own public class so it can be
used by HandleBlock.
(HandleSet): Add a typedef so that Node refers to the new HandleNode class.
(JSC::HandleSet::toHandle):
(JSC::HandleSet::toNode):
(JSC::HandleSet::allocate):
(JSC::HandleSet::deallocate):
(JSC::HandleNode::HandleNode):
(JSC::HandleNode::slot):
(JSC::HandleNode::handleSet): Use the new blockFor static function to get the right HandleBlock and lookup
the HandleSet.
(JSC::HandleNode::setPrev):
(JSC::HandleNode::prev):
(JSC::HandleNode::setNext):
(JSC::HandleNode::next):
(JSC::HandleSet::forEachStrongHandle):

  • heap/Heap.h: Friend HandleSet so that it can access the BlockAllocator when allocating HandleBlocks.
12:16 PM Changeset in webkit [146733] by kareng@chromium.org
  • 9 edits
    2 copies in branches/chromium/1451/Source/WebCore

Revert 146458 "[EFL][WebGL] Implement a common GraphicsSurface I..."

[EFL][WebGL] Implement a common GraphicsSurface Implementation.
https://bugs.webkit.org/show_bug.cgi?id=111759

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2013-03-21
Reviewed by Kenneth Rohde Christiansen.

Covered by existing WebGL tests.

This is in preparation to add transport surface support for GLES2.
This patch makes it easy to share the core logic of using
Transport Surface and client on GLX and GLES2 backends without
any code duplication.

  • PlatformEfl.cmake:
  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::initialize):
(WebCore::GraphicsContext3DPrivate::releaseResources):
(WebCore::GraphicsContext3DPrivate::prepareBuffer):
(WebCore::GraphicsContext3DPrivate::createGraphicsSurface):
(WebCore::GraphicsContext3DPrivate::didResizeCanvas):
(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:

(GraphicsContext3DPrivate):

TransportSurface related code is moved to GraphicsSurfaceCommon.
As GraphicsSurface is deleted on resize, added logic to ensure that
current buffer is not deleted before having the shared buffer
with correct size. This would avoid any flashing during resize.

  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createTransportSurface):

  • platform/graphics/opengl/GLPlatformSurface.h:
  • platform/graphics/surfaces/efl/GLTransportSurface.cpp: Renamed from Source/WebCore/platform/graphics/surfaces/GLTransportSurface.cpp.

(WebCore):
(WebCore::GLTransportSurface::GLTransportSurface):
(WebCore::GLTransportSurface::~GLTransportSurface):
(WebCore::GLTransportSurface::updateContents):
(WebCore::GLTransportSurface::setGeometry):
(WebCore::GLTransportSurface::destroy):
(WebCore::GLTransportSurface::draw):
(WebCore::GLTransportSurface::bindArrayBuffer):
(WebCore::GLTransportSurface::updateTransformationMatrix):
(WebCore::GLTransportSurface::initializeShaderProgram):
(WebCore::GLTransportSurfaceClient::createTransportSurfaceClient):
(WebCore::GLTransportSurfaceClient::GLTransportSurfaceClient):
(WebCore::GLTransportSurfaceClient::~GLTransportSurfaceClient):
(WebCore::GLTransportSurfaceClient::destroy):
(WebCore::GLTransportSurfaceClient::prepareTexture):
(WebCore::GLTransportSurfaceClient::createTexture):

  • platform/graphics/surfaces/efl/GLTransportSurface.h: Renamed from Source/WebCore/platform/graphics/surfaces/GLTransportSurface.h.

(WebCore):
(GLTransportSurface):
(GLTransportSurfaceClient):
(WebCore::GLTransportSurfaceClient::texture):
(WebCore::GLTransportSurfaceClient::hasAlpha):

Moved TransportSurface to EFL folder as this is being used by EFL port only.
Added a base class for TransportSurfaceClient.

  • platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp: Added.

(WebCore):
(GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::~GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::destroy):
(WebCore::GraphicsSurfacePrivate::initializeTransportSurface):
(WebCore::GraphicsSurfacePrivate::makeContextCurrent):
(WebCore::GraphicsSurfacePrivate::copyFromTexture):
(WebCore::GraphicsSurfacePrivate::handle):
(WebCore::GraphicsSurfacePrivate::updateClientBuffer):
(WebCore::GraphicsSurfacePrivate::flags):
(WebCore::GraphicsSurfacePrivate::rect):
(WebCore::GraphicsSurfacePrivate::size):
(WebCore::GraphicsSurfacePrivate::textureId):
(WebCore::GraphicsSurfacePrivate::initializeClient):
(WebCore::GraphicsSurface::platformExport):
(WebCore::GraphicsSurface::platformGetTextureID):
(WebCore::GraphicsSurface::platformCopyToGLTexture):
(WebCore::GraphicsSurface::platformCopyFromTexture):
(WebCore::GraphicsSurface::platformPaintToTextureMapper):
(WebCore::GraphicsSurface::platformFrontBuffer):
(WebCore::GraphicsSurface::platformSwapBuffers):
(WebCore::GraphicsSurface::platformSize):
(WebCore::GraphicsSurface::platformCreate):
(WebCore::GraphicsSurface::platformImport):
(WebCore::GraphicsSurface::platformLock):
(WebCore::GraphicsSurface::platformUnlock):
(WebCore::GraphicsSurface::platformDestroy):
(WebCore::GraphicsSurface::platformBeginPaint):
(WebCore::GraphicsSurface::createReadOnlyImage):

GraphicsSurface implementation to be shared by both GLX and GLES2.

  • platform/graphics/surfaces/egl/EGLSurface.cpp:

(WebCore::EGLWindowTransportSurface::EGLWindowTransportSurface):

  • platform/graphics/surfaces/egl/EGLSurface.h:

(EGLWindowTransportSurface):

  • platform/graphics/surfaces/glx/GLXSurface.cpp:

(WebCore):
(WebCore::resolveGLMethods):
(WebCore::isMesaGLX):
(WebCore::GLXTransportSurface::GLXTransportSurface):
(WebCore::GLXTransportSurfaceClient::GLXTransportSurfaceClient):
(WebCore::GLXTransportSurfaceClient::~GLXTransportSurfaceClient):
(WebCore::GLXTransportSurfaceClient::destroy):
(WebCore::GLXTransportSurfaceClient::prepareTexture):

  • platform/graphics/surfaces/glx/GLXSurface.h:

(GLXTransportSurface):
(GLXTransportSurfaceClient):
(WebCore):
GLXTransportSurfaceClient implementation.

TBR=commit-queue@webkit.org
Review URL: https://codereview.chromium.org/13046002

12:13 PM Changeset in webkit [146732] by kareng@chromium.org
  • 1 add in branches/chromium/1451/codereview.settings

for drovering

12:12 PM Changeset in webkit [146731] by kareng@chromium.org
  • 1 copy in branches/chromium/1451

branching to revert a change for canary.

8:57 AM Changeset in webkit [146730] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[EFL] Add support to check for current Drawable.
https://bugs.webkit.org/show_bug.cgi?id=113103

Patch by KondapallyKalyan <kalyan.kondapally@intel.com> on 2013-03-24
Reviewed by Kenneth Rohde Christiansen.

Covered by existing WebGL tests.

In MakeCurrent we do an early return if it is
the current GL context but ignore Surface. This
patch fixes the issue, we now check for both
context and surface before doing an early return
in MakeCurrent.

  • platform/graphics/opengl/GLPlatformContext.cpp:

(WebCore::GLPlatformContext::makeCurrent):
(WebCore::GLPlatformContext::releaseCurrent):
(WebCore::GLPlatformContext::destroy):

  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore):
(WebCore::GLPlatformSurface::isCurrentDrawable):
(WebCore::GLPlatformSurface::onMakeCurrent):

  • platform/graphics/opengl/GLPlatformSurface.h:
8:47 AM Changeset in webkit [146729] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX (r146704): Settings::setHiddenPageDOMTimerThrottlingEnabled() isn't always built
<http://webkit.org/b/112308>

  • WebCore.exp.in: Export

Settings::setHiddenPageDOMTimerThrottlingEnabled()
conditionally based on ENABLE(HIDDEN_PAGE_DOM_TIMER_THROTTLING).

7:43 AM Changeset in webkit [146728] by Christophe Dumez
  • 2 edits in trunk/Source/WebCore

[EFL] NetworkStateNotifier::updateState() is called too often
https://bugs.webkit.org/show_bug.cgi?id=113152

Reviewed by Kenneth Rohde Christiansen.

Wait until we have read all the data on the Netlink socket before
reporting a possible network interface change. This way, we make
sure we don't call NetworkStateNotifier::updateState() several
times in a row for no reason.

We also call NetworkStateNotifier::updateState() only if we get a
RTM_NEWADDR event and we are currently offline, or if we get a
RTM_DELADDR and we are currently online. This avoids calling
NetworkStateNotifier::updateState() uselessly as there is no way
the online state can change otherwise.

No new tests, no behavior change for layout tests.

  • platform/network/efl/NetworkStateNotifierEfl.cpp:

(WebCore::NetworkStateNotifier::readSocketCallback):

3:36 AM WebKitGTK/2.0.x edited by Carlos Garcia Campos
(diff)
2:20 AM Changeset in webkit [146727] by Chris Fleizach
  • 5 edits
    2 adds in trunk

AX: Crash in WebCore::AccessibilitySpinButton::incrementButton()
https://bugs.webkit.org/show_bug.cgi?id=111582

Reviewed by Tim Horton.

Source/WebCore:

There are two ways to create a spin button: from a textfield counter or from ARIA.
If an ARIA spin button is created, it was returning true for isSpinButton, so we were
casting to the other kind of spin button, leading to a crash.

We need to be more specific about our class types.

Test: platform/mac/accessibility/aria-spinbutton-crash.html

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::isNativeSpinButton):

  • accessibility/AccessibilitySpinButton.h:

(WebCore::AccessibilitySpinButton::isNativeSpinButton):
(WebCore::toAccessibilitySpinButton):

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):

LayoutTests:

  • platform/mac/accessibility/aria-spinbutton-crash-expected.txt: Added.
  • platform/mac/accessibility/aria-spinbutton-crash.html: Added.
12:37 AM Changeset in webkit [146726] by Chris Fleizach
  • 34 edits in trunk/Source/WebCore

AXObjectCache gets recreated during document tear-down.
https://bugs.webkit.org/show_bug.cgi?id=112525

Reviewed by Simon Fraser.

In many cases, a document's AXObjectCache was being created after the
document had detached, which is wasteful and could potentially lead to
crashes because the AXObjectCache has a timer and relies on its document
to exist.

This patch provides a way to get the existing AX object cache, instead of
always creating a new one.
It moves the accessibilityEnabled() checks into the axObjectCache retrieval
for easier readability.
It adds a number of ASSERTs to vieryf that only the correct (top) document is used
for cache manipulation.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::stopCachingComputedObjectAttributes):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::~ContainerNode):

  • dom/Document.cpp:

(WebCore::Document::~Document):
(WebCore::Document::clearAXObjectCache):
(WebCore::Document::existingAXObjectCache):
(WebCore::Document::axObjectCache):
(WebCore::Document::setFocusedNode):

  • dom/Document.h:

(Document):

  • dom/Element.cpp:

(WebCore::Element::attributeChanged):

  • dom/Node.cpp:

(WebCore::Node::~Node):
(WebCore::Node::isEditableToAccessibility):
(WebCore::Node::attach):
(WebCore::Node::rootEditableElement):
(WebCore::Node::didMoveToNewDocument):

  • editing/AppendNodeCommand.cpp:

(WebCore::sendAXTextChangedIgnoringLineBreaks):

  • editing/DeleteFromTextNodeCommand.cpp:

(WebCore::DeleteFromTextNodeCommand::doApply):
(WebCore::DeleteFromTextNodeCommand::doUnapply):

  • editing/Editor.cpp:

(WebCore::Editor::respondToChangedContents):
(WebCore::Editor::markAndReplaceFor):

  • editing/InsertIntoTextNodeCommand.cpp:

(WebCore::InsertIntoTextNodeCommand::doApply):
(WebCore::InsertIntoTextNodeCommand::doUnapply):

  • editing/InsertNodeBeforeCommand.cpp:

(WebCore::InsertNodeBeforeCommand::doApply):
(WebCore::InsertNodeBeforeCommand::doUnapply):

  • editing/atk/FrameSelectionAtk.cpp:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

  • editing/chromium/FrameSelectionChromium.cpp:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

  • editing/mac/FrameSelectionMac.mm:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::setChecked):

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::optionElementChildrenChanged):
(WebCore::HTMLSelectElement::setRecalcListItems):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::setInnerTextValue):

  • html/InputType.cpp:

(WebCore::InputType::applyStep):

  • html/RangeInputType.cpp:

(WebCore::RangeInputType::handleKeydownEvent):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::prepareForLoadStart):
(WebCore::FrameLoader::checkLoadCompleteForThisFrame):

  • page/FocusController.cpp:

(WebCore::FocusController::setInitialFocus):

  • page/Frame.cpp:

(WebCore::Frame::disconnectOwnerElement):

  • page/FrameView.cpp:

(WebCore::FrameView::removeFromAXObjectCache):
(WebCore::FrameView::layout):
(WebCore::FrameView::scrollToAnchor):
(WebCore::FrameView::axObjectCache):

  • platform/ScrollView.cpp:

(WebCore::ScrollView::setHasHorizontalScrollbar):
(WebCore::ScrollView::setHasVerticalScrollbar):

  • platform/Scrollbar.cpp:

(WebCore::Scrollbar::~Scrollbar):
(WebCore):
(WebCore::Scrollbar::existingAXObjectCache):

  • platform/Scrollbar.h:

(Scrollbar):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::deleteLineBoxTree):
(WebCore::RenderBlock::createRootInlineBox):
(WebCore::RenderBlock::createAndAppendRootInlineBox):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::selectionChanged):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::addChild):
(WebCore::RenderMenuList::didUpdateActiveOption):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::styleWillChange):
(WebCore::RenderObject::willBeDestroyed):

  • rendering/RenderObjectChildList.cpp:

(WebCore::RenderObjectChildList::removeChildNode):
(WebCore::RenderObjectChildList::insertChildNode):

  • rendering/RenderText.cpp:

(WebCore::RenderText::setText):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::willBeDestroyed):

Mar 23, 2013:

10:50 PM Changeset in webkit [146725] by mkwst@chromium.org
  • 13 edits in trunk

Drop full URLs from cross-origin access errors caused by sandboxing.
https://bugs.webkit.org/show_bug.cgi?id=113029

Reviewed by Timothy Hatcher.

Source/WebCore:

Following up on http://wkbug.com/112042, this patch brings cross-origin
access error messages into line with the newly origin-only default
message, and changes the error message text to explicitly refer to the
missing 'allow-same-origin' sandbox flag that's the root cause of the
error.

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::crossDomainAccessErrorMessage):

Note that we're using the origin of the frames' URLs rather than
their actual origin in these messages. This seems like a reasonable
thing to do, since we know that at least one of the two origins will
be "null" in this scenario.

LayoutTests:

  • http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-expected.txt:
  • http/tests/security/contentSecurityPolicy/sandbox-in-http-header-expected.txt:
  • http/tests/security/sandboxed-iframe-blocks-access-from-parent-expected.txt:
  • http/tests/security/sandboxed-iframe-origin-add-expected.txt:
  • http/tests/security/sandboxed-iframe-origin-remove-expected.txt:
  • http/tests/security/xss-DENIED-sandboxed-iframe-expected.txt:
  • platform/chromium/http/tests/security/sandboxed-iframe-modify-self-expected.txt:
  • platform/chromium/http/tests/security/srcdoc-in-sandbox-cannot-access-parent-expected.txt:
9:48 PM Changeset in webkit [146724] by dmazzoni@google.com
  • 21 edits
    9 adds in trunk/Source

Implement Web Speech Synthesis for Chromium
https://bugs.webkit.org/show_bug.cgi?id=111695

Reviewed by Adam Barth.

Source/Platform:

Exposes a platform API that the embedder can implement to
provide speech synthesis for the Chromium port.

  • Platform.gypi:
  • chromium/public/Platform.h:

(WebKit):
(Platform):
(WebKit::Platform::speechSynthesizer):

  • chromium/public/WebSpeechSynthesisUtterance.h: Added.

(WebKit):
(WebSpeechSynthesisUtterance):
(WebKit::WebSpeechSynthesisUtterance::WebSpeechSynthesisUtterance):
(WebKit::WebSpeechSynthesisUtterance::~WebSpeechSynthesisUtterance):
(WebKit::WebSpeechSynthesisUtterance::operator=):
(WebKit::WebSpeechSynthesisUtterance::isNull):

  • chromium/public/WebSpeechSynthesisVoice.h: Added.

(WebCore):
(WebKit):
(WebSpeechSynthesisVoice):
(WebKit::WebSpeechSynthesisVoice::WebSpeechSynthesisVoice):
(WebKit::WebSpeechSynthesisVoice::~WebSpeechSynthesisVoice):
(WebKit::WebSpeechSynthesisVoice::operator=):

  • chromium/public/WebSpeechSynthesizer.h: Added.

(WebKit):
(WebSpeechSynthesizer):
(WebKit::WebSpeechSynthesizer::~WebSpeechSynthesizer):

  • chromium/public/WebSpeechSynthesizerClient.h: Added.

(WebKit):
(WebSpeechSynthesizerClient):
(WebKit::WebSpeechSynthesizerClient::~WebSpeechSynthesizerClient):

Source/WebCore:

Straightforward implementation of speech synthesis
for Chromium by exposing interfaces for the platform
to implement.

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::boundaryEventOccurred):
(WebCore::SpeechSynthesis::didStartSpeaking):
(WebCore::SpeechSynthesis::didPauseSpeaking):
(WebCore::SpeechSynthesis::didResumeSpeaking):
(WebCore::SpeechSynthesis::didFinishSpeaking):
(WebCore::SpeechSynthesis::speakingErrorOccurred):
(WebCore):

  • Modules/speech/SpeechSynthesis.h:

(SpeechSynthesis):

  • Modules/speech/SpeechSynthesisUtterance.cpp:

(WebCore::SpeechSynthesisUtterance::SpeechSynthesisUtterance):
(WebCore):
(WebCore::SpeechSynthesisUtterance::~SpeechSynthesisUtterance):
(WebCore::SpeechSynthesisUtterance::setVoice):

  • Modules/speech/SpeechSynthesisUtterance.h:

(SpeechSynthesisUtterance):
(WebCore::SpeechSynthesisUtterance::text):
(WebCore::SpeechSynthesisUtterance::setText):
(WebCore::SpeechSynthesisUtterance::lang):
(WebCore::SpeechSynthesisUtterance::setLang):
(WebCore::SpeechSynthesisUtterance::volume):
(WebCore::SpeechSynthesisUtterance::setVolume):
(WebCore::SpeechSynthesisUtterance::rate):
(WebCore::SpeechSynthesisUtterance::setRate):
(WebCore::SpeechSynthesisUtterance::pitch):
(WebCore::SpeechSynthesisUtterance::setPitch):
(WebCore::SpeechSynthesisUtterance::startTime):
(WebCore::SpeechSynthesisUtterance::setStartTime):
(WebCore::SpeechSynthesisUtterance::platformUtterance):

  • Modules/speech/SpeechSynthesisVoice.h:

(WebCore::SpeechSynthesisVoice::~SpeechSynthesisVoice):

  • WebCore.exp.in:
  • WebCore.gypi:
  • platform/PlatformSpeechSynthesis.h:

(PlatformSpeechSynthesis):

  • platform/PlatformSpeechSynthesisUtterance.cpp:

(WebCore):
(WebCore::PlatformSpeechSynthesisUtterance::create):

  • platform/PlatformSpeechSynthesisUtterance.h:

(PlatformSpeechSynthesisUtterance):
(WebCore::PlatformSpeechSynthesisUtterance::setClient):

  • platform/PlatformSpeechSynthesisVoice.cpp:

(WebCore):
(WebCore::PlatformSpeechSynthesisVoice::create):
(WebCore::PlatformSpeechSynthesisVoice::PlatformSpeechSynthesisVoice):

  • platform/PlatformSpeechSynthesisVoice.h:

(PlatformSpeechSynthesisVoice):
(WebCore::PlatformSpeechSynthesisVoice::setVoiceURI):
(WebCore::PlatformSpeechSynthesisVoice::setName):
(WebCore::PlatformSpeechSynthesisVoice::setLang):
(WebCore::PlatformSpeechSynthesisVoice::setLocalService):
(WebCore::PlatformSpeechSynthesisVoice::setIsDefault):

  • platform/PlatformSpeechSynthesizer.cpp:

(WebCore::PlatformSpeechSynthesizer::create):
(WebCore::PlatformSpeechSynthesizer::setVoiceList):
(WebCore):

  • platform/PlatformSpeechSynthesizer.h:

(WebKit):
(PlatformSpeechSynthesizerClient):
(PlatformSpeechSynthesizer):

  • platform/chromium/PlatformSpeechSynthesizerChromium.cpp: Added.

(WebCore):
(WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::initializeVoiceList):
(WebCore::PlatformSpeechSynthesizer::speak):
(WebCore::PlatformSpeechSynthesizer::pause):
(WebCore::PlatformSpeechSynthesizer::resume):
(WebCore::PlatformSpeechSynthesizer::cancel):

  • platform/chromium/support/WebSpeechSynthesisUtterance.cpp: Added.

(WebKit):
(WebKit::WebSpeechSynthesisUtterance::WebSpeechSynthesisUtterance):
(WebKit::WebSpeechSynthesisUtterance::operator=):
(WebKit::WebSpeechSynthesisUtterance::assign):
(WebKit::WebSpeechSynthesisUtterance::reset):
(WebKit::WebSpeechSynthesisUtterance::operator PassRefPtr<PlatformSpeechSynthesisUtterance>):
(WebKit::WebSpeechSynthesisUtterance::operator PlatformSpeechSynthesisUtterance*):
(WebKit::WebSpeechSynthesisUtterance::text):
(WebKit::WebSpeechSynthesisUtterance::lang):
(WebKit::WebSpeechSynthesisUtterance::voice):
(WebKit::WebSpeechSynthesisUtterance::volume):
(WebKit::WebSpeechSynthesisUtterance::rate):
(WebKit::WebSpeechSynthesisUtterance::pitch):
(WebKit::WebSpeechSynthesisUtterance::startTime):

  • platform/chromium/support/WebSpeechSynthesisVoice.cpp: Added.

(WebKit):
(WebKit::WebSpeechSynthesisVoice::assign):
(WebKit::WebSpeechSynthesisVoice::reset):
(WebKit::WebSpeechSynthesisVoice::setVoiceURI):
(WebKit::WebSpeechSynthesisVoice::setName):
(WebKit::WebSpeechSynthesisVoice::setLanguage):
(WebKit::WebSpeechSynthesisVoice::setIsLocalService):
(WebKit::WebSpeechSynthesisVoice::setIsDefault):
(WebKit::WebSpeechSynthesisVoice::operator PassRefPtr<WebCore::PlatformSpeechSynthesisVoice>):

  • platform/chromium/support/WebSpeechSynthesizerClientImpl.cpp: Added.

(WebCore):
(WebCore::WebSpeechSynthesizerClientImpl::WebSpeechSynthesizerClientImpl):
(WebCore::WebSpeechSynthesizerClientImpl::~WebSpeechSynthesizerClientImpl):
(WebCore::WebSpeechSynthesizerClientImpl::setVoiceList):
(WebCore::WebSpeechSynthesizerClientImpl::didStartSpeaking):
(WebCore::WebSpeechSynthesizerClientImpl::didFinishSpeaking):
(WebCore::WebSpeechSynthesizerClientImpl::didPauseSpeaking):
(WebCore::WebSpeechSynthesizerClientImpl::didResumeSpeaking):
(WebCore::WebSpeechSynthesizerClientImpl::speakingErrorOccurred):
(WebCore::WebSpeechSynthesizerClientImpl::wordBoundaryEventOccurred):
(WebCore::WebSpeechSynthesizerClientImpl::sentenceBoundaryEventOccurred):

  • platform/chromium/support/WebSpeechSynthesizerClientImpl.h: Added.

(WebCore):
(WebSpeechSynthesizerClientImpl):

  • platform/mac/PlatformSpeechSynthesizerMac.mm:

(-[WebSpeechSynthesisWrapper speakUtterance:WebCore::]):
(-[WebSpeechSynthesisWrapper speechSynthesizer:didFinishSpeaking:]):
(WebCore::PlatformSpeechSynthesizer::PlatformSpeechSynthesizer):
(WebCore):
(WebCore::PlatformSpeechSynthesizer::~PlatformSpeechSynthesizer):
(WebCore::PlatformSpeechSynthesizer::speak):

  • platform/mock/PlatformSpeechSynthesizerMock.cpp:

(WebCore::PlatformSpeechSynthesizerMock::PlatformSpeechSynthesizerMock):
(WebCore::PlatformSpeechSynthesizerMock::speakingFinished):
(WebCore::PlatformSpeechSynthesizerMock::speak):

  • platform/mock/PlatformSpeechSynthesizerMock.h:

(PlatformSpeechSynthesizerMock):

6:24 PM Changeset in webkit [146723] by dcheng@chromium.org
  • 4 edits in trunk

[Qt] editing/pasteboard/can-read-in-dragstart-event.html and /can-read-in-copy-and-cut-events.html are crashing
https://bugs.webkit.org/show_bug.cgi?id=113126

Reviewed by Ryosuke Niwa.

Source/WebCore:

The ClipboardQt implementation only allows reading or writing, not both. Attempting to read
when the clipboard is only writable will lead to a crash since the corresponding member will
be null. To prevent crashes, change the asserts to early returns. In the long term, the
correct fix is to unify the m_readableData and m_writableData members.

No new tests since no functionality in Qt port should change.

  • platform/qt/ClipboardQt.cpp:

(WebCore::ClipboardQt::getData):
(WebCore::ClipboardQt::types):
(WebCore::ClipboardQt::files):

LayoutTests:

  • platform/qt/TestExpectations:
1:18 PM Changeset in webkit [146722] by ggaren@apple.com
  • 2 edits in trunk/Source/WebKit2

Added a setting for whether JavaScript markup is enabled
https://bugs.webkit.org/show_bug.cgi?id=112999

Rolled out a line from r146664 that was left over from before I adopted
the Settings.in way of adding a new setting.

Reviewed by Ryosuke Niwa.

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner): No need
to initialize / override -- Settings.in settings do this automatically.

Also, dydx noticed that this line of code had a typo, and was totaly wrong.

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

[GTK][Regression] webkit_dom_html_table_element_insert_row returns value that doesn't pass WEBKIT_DOM_IS_HTML_TABLE_ROW_ELEMENT macro
https://bugs.webkit.org/show_bug.cgi?id=111714

Patch by Carlos Garcia Campos <cgarcia@igalia.com> on 2013-03-23
Reviewed by Martin Robinson.

Source/WebCore:

Add custom kit implementation for HTMLElements so that the HTML
wrappers are used in that case instead of wrapHTMLElement.

  • bindings/gobject/WebKitDOMBinding.cpp:

(WebKit::kit):
(WebKit):

  • bindings/gobject/WebKitDOMBinding.h:

(WebCore):
(WebKit):

  • bindings/scripts/CodeGeneratorGObject.pm:

(UsesManualKitImplementation):

Source/WebKit/gtk:

Add test that checks webkit_dom_html_table_element_insert_row() to
also preproduce this issue.

  • tests/testdomdocument.c:

(test_dom_document_insert_row):
(main):

7:44 AM Changeset in webkit [146720] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Revert "BUILD FIX (r146667): ResourceRequest constructor in SynchronousLoaderClient.cpp is ambiguous on iOS"

This is platform-agnositic code, so the previous solution won't work.

7:41 AM Changeset in webkit [146719] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX (r146667): ResourceRequest constructor in SynchronousLoaderClient.cpp is ambiguous on iOS

Fixes the following build failure:

Source/WebCore/platform/network/SynchronousLoaderClient.cpp:52:15: error: conversion from 'int' to 'const WebCore::ResourceRequest' is ambiguous

request = 0;


In file included from Source/WebCore/platform/network/SynchronousLoaderClient.cpp:30:
In file included from Source/WebCore/platform/network/ResourceHandle.h:37:
In file included from Source/WebCore/platform/network/ios/QuickLook.h:13:
Source/WebCore/platform/network/cf/ResourceRequest.h:79:9: note: candidate constructor

ResourceRequest(NSURLRequest *);

Source/WebCore/platform/network/cf/ResourceRequest.h:83:9: note: candidate constructor

ResourceRequest(CFURLRequestRef cfRequest)

1 error generated.

  • platform/network/SynchronousLoaderClient.cpp:

(WebCore::SynchronousLoaderClient::willSendRequest): If
USE(CFNETWORK) is defined, use static_cast<CFURLRequestRef>(0),
otherwise use static_cast<NSURLRequest *>(0).

7:16 AM Changeset in webkit [146718] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

BUILD FIX (r146687): setDefaultMIMEType() is unused in ResourceHandleCFNet.cpp on iOS

Fixes the following build failure:

Source/WebCore/platform/network/cf/ResourceHandleCFNet.cpp:98:13: error: unused function 'setDefaultMIMEType' [-Werror,-Wunused-function]
static void setDefaultMIMEType(CFURLResponseRef response)


1 error generated.

  • platform/network/cf/ResourceHandleCFNet.cpp:

(WebCore::setDefaultMIMEType): Add #if !PLATFORM(MAC)/#endif
guard.

Note: See TracTimeline for information about the timeline view.