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

Timeline



Sep 9, 2013:

11:42 PM Changeset in webkit [155423] by mark.lam@apple.com
  • 79 edits in trunk

Remove more references to the deleted js-test-style.css.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Reviewed by Ryosuke Niwa.

Tools:

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests.py:

(translate_includes):

LayoutTests:

  • fast/canvas/webgl/array-unit-tests.html:
  • fast/canvas/webgl/context-lost-restored.html:
  • fast/canvas/webgl/context-lost.html:
  • fast/canvas/webgl/typed-arrays-in-workers.html:
  • fast/css/aspect-ratio-parsing-tests.html:
  • fast/forms/fieldset/fieldset-disabled.html:
  • fast/js/apply-varargs.html:
  • fast/js/line-column-numbers.html:
  • fast/js/stack-at-creation-for-error-objects.html:
  • fast/js/stack-trace.html:
  • platform/iphone-simulator/accessibility/accessibility-aria-table-children.html:
  • platform/iphone-simulator/accessibility/accessibility-crash-in-axcontainer.html:
  • platform/iphone-simulator/accessibility/accessibility-hint.html:
  • platform/iphone-simulator/accessibility/aria-label-with-internal-text.html:
  • platform/iphone-simulator/accessibility/aria-pressed-state.html:
  • platform/iphone-simulator/accessibility/centerpoint.html:
  • platform/iphone-simulator/accessibility/file-upload-button.html:
  • platform/iphone-simulator/accessibility/focus-change-notifications.html:
  • platform/iphone-simulator/accessibility/header-elements.html:
  • platform/iphone-simulator/accessibility/identifier.html:
  • platform/iphone-simulator/accessibility/internal-link.html:
  • platform/iphone-simulator/accessibility/landmark-type.html:
  • platform/iphone-simulator/accessibility/link-with-images-text.html:
  • platform/iphone-simulator/accessibility/link-with-only-image.html:
  • platform/iphone-simulator/accessibility/math.html:
  • platform/iphone-simulator/accessibility/mixed-checkboxes.html:
  • platform/iphone-simulator/accessibility/password-value.html:
  • platform/iphone-simulator/accessibility/placeholder-value.html:
  • platform/iphone-simulator/accessibility/popup-button-value-label.html:
  • platform/iphone-simulator/accessibility/progressbar.html:
  • platform/iphone-simulator/accessibility/selected-buttons.html:
  • platform/iphone-simulator/accessibility/selected-text.html:
  • platform/iphone-simulator/accessibility/svg-path-crash.html:
  • platform/iphone-simulator/accessibility/tab-role.html:
  • platform/iphone-simulator/accessibility/table-cell-for-row-col.html:
  • platform/iphone-simulator/accessibility/table-cell-ranges.html:
  • platform/iphone-simulator/accessibility/tables-lists.html:
  • platform/iphone-simulator/accessibility/text-line-no-ignored-elements.html:
  • platform/iphone-simulator/accessibility/text-marker-list-item.html:
  • platform/iphone-simulator/accessibility/text-marker-validation.html:
  • platform/iphone-simulator/accessibility/text-role.html:
  • platform/iphone-simulator/accessibility/textfield-in-axvalue.html:
  • platform/iphone-simulator/accessibility/url-test.html:
  • platform/mac/accessibility/document-title-used-for-description.html:
  • platform/mac/accessibility/iframe-aria-hidden.html:
  • platform/mac/accessibility/scrollbars.html:
  • platform/mac/accessibility/search-with-frames.html:
  • platform/mac/accessibility/selected-tab-crash.html:
  • platform/mac/accessibility/submit-button-default-value.html:
  • platform/mac/accessibility/supports-focus-setting.html:
  • platform/mac/fast/forms/input-appearance-spinbutton-up.html:
  • platform/mac/fast/forms/input-appearance-spinbutton.html:
  • svg/dom/css-transforms.xhtml:
  • svg/dynamic-updates/SVG-dynamic-css-transform.html:
  • svg/dynamic-updates/SVGClipPathElement-css-transform-influences-hitTesting.html:
  • webaudio/audiobuffersource-loop-comprehensive.html:
  • webaudio/audiobuffersource-start.html:
  • webaudio/audioparam-connect-audioratesignal.html:
  • webaudio/audioparam-summingjunction.html:
  • webaudio/biquad-allpass.html:
  • webaudio/biquad-bandpass.html:
  • webaudio/biquad-highpass.html:
  • webaudio/biquad-highshelf.html:
  • webaudio/biquad-lowpass.html:
  • webaudio/biquad-lowshelf.html:
  • webaudio/biquad-notch.html:
  • webaudio/biquad-peaking.html:
  • webaudio/convolution-mono-mono.html:
  • webaudio/convolver-setBuffer-null.html:
  • webaudio/distance-exponential.html:
  • webaudio/distance-inverse.html:
  • webaudio/distance-linear.html:
  • webaudio/javascriptaudionode-zero-input-channels.html:
  • webaudio/oscillator-basic.html:
  • webaudio/panner-equalpower-stereo.html:
  • webaudio/panner-equalpower.html:
11:32 PM BadContent edited by zandobersek@gmail.com
Block a spamming email address. (diff)
11:16 PM Changeset in webkit [155422] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

Adding "explicit" keyword in DOM related classes constructor
https://bugs.webkit.org/show_bug.cgi?id=121031

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-09-09
Reviewed by Ryosuke Niwa.

Added the explicit keyword in constructors.

  • dom/ActiveDOMObject.h:
  • dom/ContainerNode.h:
  • dom/DocumentStyleSheetCollection.h:
  • dom/ElementAncestorIterator.h:
  • dom/ElementData.h:
  • dom/ElementRareData.h:
  • dom/EventListenerMap.h:
  • dom/QualifiedName.h:

(WebCore::QualifiedName::QualifiedName):

  • dom/TreeScope.h:
  • dom/ViewportArguments.h:

(WebCore::ViewportArguments::ViewportArguments):

  • dom/VisitedLinkState.h:
11:10 PM Changeset in webkit [155421] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

Remove unreviewed gunk I just accidentally committed :|

11:09 PM Changeset in webkit [155420] by msaboff@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

There should be one "invalid" virtual register constant
https://bugs.webkit.org/show_bug.cgi?id=121057

Reviewed by Filip Pizlo.

Unify all references to an invalid virtual register to be the enum InvalidVirtualRegister.
Changed the value of InvalidVirtualRegister to be maximum integer value.

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::setArgumentsRegister):
(JSC::CodeBlock::usesArguments):

  • bytecode/LazyOperandValueProfile.h:

(JSC::LazyOperandValueProfileKey::LazyOperandValueProfileKey):
(JSC::LazyOperandValueProfileKey::operator!):
(JSC::LazyOperandValueProfileKey::isHashTableDeletedValue):
(JSC::LazyOperandValueProfile::LazyOperandValueProfile):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):

  • bytecode/UnlinkedCodeBlock.h:

(JSC::UnlinkedCodeBlock::usesArguments):
(JSC::UnlinkedCodeBlock::usesGlobalObject):

  • bytecode/VirtualRegister.h:
11:07 PM Changeset in webkit [155419] by akling@apple.com
  • 6 edits in trunk/Source/WebCore

HTMLTextAreaElement no longer needs custom style resolve callbacks.
<https://webkit.org/b/121073>

Reviewed by Ryosuke Niwa.

After r155408 HTMLTextAreaElement doesn't override didAttachRenderer() anymore,
so we don't need to fire callbacks on textarea elements during style resolve.

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::HTMLTextAreaElement):

11:01 PM Changeset in webkit [155418] by msaboff@apple.com
  • 12 edits in trunk/Source/JavaScriptCore

Change virtual register function arguments from unsigned to int
https://bugs.webkit.org/show_bug.cgi?id=121055

Reviewed by Filip Pizlo.

This is a largely mechanical change. This changes function paramaters and local variables used to
represent bytecode operands from being unsigned to be int.

  • bytecode/CodeOrigin.h:
  • dfg/DFGByteCodeParser.cpp:
  • jit/JIT.h:
  • jit/JITArithmetic.cpp:
  • jit/JITArithmetic32_64.cpp:
  • jit/JITInlines.h:
  • jit/JITOpcodes.cpp:
  • jit/JITOpcodes32_64.cpp:
  • jit/JITPropertyAccess.cpp:
  • jit/JITPropertyAccess32_64.cpp:
  • jit/JITStubCall.h:
10:43 PM Changeset in webkit [155417] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

ScriptController should have a Frame& internally.
<https://webkit.org/b/121071>

Reviewed by Anders Carlsson.

Change ScriptController::m_frame to a reference since it's tied to
the lifetime of the owning Frame.

10:42 PM Changeset in webkit [155416] by akling@apple.com
  • 4 edits in trunk/Source/WebCore

ScriptRunner should have a Document& internally.
<https://webkit.org/b/121072>

Reviewed by Anders Carlsson.

Change ScriptRunner::m_document to a reference since it's tied to
the lifetime of the Document.

10:37 PM Changeset in webkit [155415] by msaboff@apple.com
  • 23 edits in trunk/Source/JavaScriptCore

Add local to/from operand helpers similar to argument to/from operand2
https://bugs.webkit.org/show_bug.cgi?id=121056

Reviewed by Geoffrey Garen.

Added localToOperand(), operandToLocal() and operandIsLocal() to Operands.h, very similar to
argumentToOperand(), et al. Used the new helpers everywhere where an index into a data
structure is intended instead of the actual virtual register offset. When the stack is
changed to grow down, local register offsets can be negative. Also added the helper
DFG::SpeculativeJIT::generationInfoFromVirtualRegister() for the common case accessing
m_generationInfo[operandToLocal(val)].

  • bytecode/CodeBlock.cpp:
  • bytecode/CodeBlock.h:
  • bytecode/Operands.h:

(JSC::localToOperand):
(JSC::operandIsLocal):
(JSC::operandToLocal):

  • bytecompiler/BytecodeGenerator.h:
  • dfg/DFGAbstractInterpreterInlines.h:
  • dfg/DFGByteCodeParser.cpp:
  • dfg/DFGCFGSimplificationPhase.cpp:
  • dfg/DFGCPSRethreadingPhase.cpp:
  • dfg/DFGOSREntry.cpp:
  • dfg/DFGOSRExitCompiler32_64.cpp:
  • dfg/DFGOSRExitCompiler64.cpp:
  • dfg/DFGScoreBoard.h:
  • dfg/DFGSpeculativeJIT.cpp:
  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::generationInfoFromVirtualRegister):

  • dfg/DFGSpeculativeJIT32_64.cpp:
  • dfg/DFGSpeculativeJIT64.cpp:
  • dfg/DFGValidate.cpp:
  • dfg/DFGVariableEventStream.cpp:
  • dfg/DFGVirtualRegisterAllocationPhase.cpp:
  • jit/JITInlines.h:
  • jit/JITOpcodes.cpp:
  • jit/JITOpcodes32_64.cpp:
8:44 PM Changeset in webkit [155414] by akling@apple.com
  • 33 edits in trunk/Source

Ref-ify more stack guards.
<https://webkit.org/b/121070>

Rubber-stamped by Anders Carlsson.

RefPtr<Foo> protect(this) => Ref<Foo> protect(*this).

8:16 PM Changeset in webkit [155413] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, disable GC logging.

  • heap/Heap.cpp:
8:10 PM Changeset in webkit [155412] by akling@apple.com
  • 48 edits in trunk/Source/WebCore

Generate more SVG type checks and conversions.
<https://webkit.org/b/121066>

Reviewed by Anders Carlsson.

Switch another slew of SVG elements to auto-generated isFooElement()
and toFooElement() helpers.

Removed now-unnecessary casts and assertions as appropriate.
Converted some simple loops to childrenOfType iteration instead of
traversing child Nodes.

PS. This patch also adds const versions of toFooElement().

7:46 PM Changeset in webkit [155411] by mark.lam@apple.com
  • 11 edits
    5 deletes in trunk

Tools: Re-landing r155392 (Point Tools scripts to LayoutTests/resources).
https://bugs.webkit.org/show_bug.cgi?id=120899.

Not reviewed.

The webkitpy test failure that resulted in the rollout is due to
update_webgl_conformance_tests_unittest.py referencing js-test-style.css
which is to be deleted. Deleting that line fixes the issue.

  • Scripts/make-new-script-test:

(makePathToSharedSources):

  • Scripts/run-fast-jsc:
  • Scripts/webkitperl/httpd.pm:

(getDefaultConfigForTestDirectory):

  • Scripts/webkitpy/layout_tests/servers/apache_http_server.py:

(LayoutTestApacheHttpd.init):

  • Scripts/webkitpy/layout_tests/servers/http_server.py:

(Lighttpd.init):

  • Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:

(BaseTest.integration_test_port_and_root):

  • Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:

(TestHttpServer.test_start_cmd):

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests.py:

(translate_includes):

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests_unittest.py:

(TestTranslation.test_include_rewriting):

LayoutTests: Re-landing 155392 (Remove old fast/js/resources pre and post test files).
https://bugs.webkit.org/show_bug.cgi?id=120899.

Not reviewed.

  • fast/js/resources/js-test-post-async.js: Removed.
  • fast/js/resources/js-test-post.js: Removed.
  • fast/js/resources/js-test-pre.js: Removed.
  • fast/js/resources/standalone-post.js: Removed.
  • fast/js/resources/standalone-pre.js: Removed.
7:05 PM Changeset in webkit [155410] by mark.lam@apple.com
  • 125 edits
    1 delete in trunk/LayoutTests

Remove un-needed js-test-style.css.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Reviewed by Ryosuke Niwa.

Also adjusted a line number in fast/events/suspend-timers-expected.txt to
account for the deleted line.

  • accessibility/anonymous-render-block-in-continuation-causes-crash.html:
  • accessibility/duplicate-axrenderobject-crash.html:
  • accessibility/loading-iframe-sends-notification.html:
  • accessibility/multiselect-list-reports-active-option.html:
  • accessibility/notification-listeners.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-at-rule-invalid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-at-rule-valid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-custom-function-invalid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-custom-function-valid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-geometry-property-invalid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-geometry-property-valid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-mix-property-invalid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-mix-property-valid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-parameters-property-invalid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-parameters-property-valid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-src-property-invalid.html:
  • css3/filters/custom-with-at-rule-syntax/parsing-src-property-valid.html:
  • css3/filters/custom/custom-filter-crash-inline-computed-style.html:
  • css3/filters/custom/custom-filter-property-computed-style.html:
  • css3/filters/custom/custom-filter-property-parsing-invalid.html:
  • css3/filters/custom/custom-filter-property-parsing.html:
  • css3/filters/custom/effect-custom-disabled.html:
  • editing/spelling/spellcheck-async-mutation.html:
  • editing/spelling/spellcheck-async.html:
  • editing/spelling/spelling-unified-emulation.html:
  • editing/text-iterator/findString-selection-disabled.html:
  • fast/box-shadow/box-shadow-parsing-invalid.html:
  • fast/box-sizing/table-cell.html:
  • fast/canvas/webgl/arraybuffer-transfer-of-control.html:
  • fast/canvas/webgl/context-attributes-alpha-depth-stencil-antialias.html:
  • fast/canvas/webgl/context-creation-and-destruction.html:
  • fast/canvas/webgl/context-release-upon-reload.html:
  • fast/canvas/webgl/framebuffer-bindings-unaffected-on-resize.html:
  • fast/canvas/webgl/functions-returning-strings.html:
  • fast/canvas/webgl/index-validation.html:
  • fast/canvas/webgl/instanceof-test.html:
  • fast/canvas/webgl/oes-texture-half-float-not-supported.html:
  • fast/canvas/webgl/oes-texture-half-float.html:
  • fast/canvas/webgl/shader-precision-format.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-canvas-rgb565.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-canvas-rgba4444.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-canvas-rgba5551.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-canvas.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-data-rgb565.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-data-rgba4444.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-data-rgba5551.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-data.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-rgb565.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-rgba4444.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-rgba5551.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgb565.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba4444.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video-rgba5551.html:
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-video.html:
  • fast/canvas/webgl/tex-image-with-greyscale-image.html:
  • fast/canvas/webgl/texture-color-profile.html:
  • fast/css/content-language-case-insensitivity.html:
  • fast/css/content-language-comma-separated-list.html:
  • fast/css/content-language-dynamically-added.html:
  • fast/css/content-language-dynamically-changed.html:
  • fast/css/content-language-dynamically-removed.html:
  • fast/css/content-language-empty.html:
  • fast/css/content-language-late.html:
  • fast/css/content-language-mapped-to-webkit-locale.html:
  • fast/css/content-language-multiple.html:
  • fast/css/content-language-no-content.html:
  • fast/css/content-language-only-whitespace.html:
  • fast/css/content-language-with-whitespace.html:
  • fast/css/getComputedStyle/computed-style-select-overflow.html:
  • fast/css/image-orientation/image-orientation.html:
  • fast/css/image-resolution/image-resolution.html:
  • fast/css/lang-mapped-to-webkit-locale-dynamic.xhtml:
  • fast/css/lang-mapped-to-webkit-locale.xhtml:
  • fast/css/style-scoped/basic-attribute.html:
  • fast/css/style-scoped/registering-shadowroot.html:
  • fast/css/style-scoped/registering.html:
  • fast/css/table-border-spacing.html:
  • fast/css/xml-lang-ignored-in-html.html:
  • fast/dom/gc-attribute-node.html:
  • fast/events/platform-wheelevent-paging-x-in-non-scrolling-div.html:
  • fast/events/platform-wheelevent-paging-x-in-non-scrolling-page.html:
  • fast/events/platform-wheelevent-paging-x-in-scrolling-div.html:
  • fast/events/platform-wheelevent-paging-x-in-scrolling-page.html:
  • fast/events/platform-wheelevent-paging-xy-in-scrolling-div.html:
  • fast/events/platform-wheelevent-paging-xy-in-scrolling-page.html:
  • fast/events/platform-wheelevent-paging-y-in-non-scrolling-div.html:
  • fast/events/platform-wheelevent-paging-y-in-non-scrolling-page.html:
  • fast/events/platform-wheelevent-paging-y-in-scrolling-div.html:
  • fast/events/platform-wheelevent-paging-y-in-scrolling-page.html:
  • fast/events/suspend-timers-expected.txt:
  • fast/events/suspend-timers.html:
  • fast/events/touch/gesture/touch-gesture-noscroll-body-propagated.html:
  • fast/events/touch/gesture/touch-gesture-noscroll-body-xhidden.html:
  • fast/events/touch/gesture/touch-gesture-noscroll-body-yhidden.html:
  • fast/events/touch/gesture/touch-gesture-noscroll-body.html:
  • fast/events/touch/gesture/touch-gesture-noscroll-iframe.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-div-twice-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-editable.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-iframe.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page-not-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page-propagated.html:
  • fast/events/touch/gesture/touch-gesture-scroll-page.html:
  • fast/events/touch/gesture/touch-gesture-scroll-shy-target.html:
  • fast/files/url-null.html:
  • fast/filesystem/simple-required-arguments-getdirectory.html:
  • fast/filesystem/simple-required-arguments-getfile.html:
  • fast/filesystem/simple-required-arguments-getmetadata.html:
  • fast/filesystem/simple-required-arguments-remove.html:
  • fast/forms/form-dirname-attribute.html:
  • fast/forms/setCustomValidity-arguments.html:
  • fast/js/resources/js-test-style.css: Removed.
  • fast/mediastream/LocalMediaStream-onended.html:
  • fast/mediastream/MediaStream-add-remove-tracks.html:
  • fast/mediastream/MediaStream-onended.html:
  • fast/mediastream/MediaStreamConstructor.html:
  • fast/mediastream/MediaStreamTrack.html:
  • fast/mediastream/RTCIceCandidate.html:
  • fast/mediastream/RTCSessionDescription.html:
  • fast/mediastream/constructors.html:
  • fast/mediastream/getusermedia.html:
6:27 PM Changeset in webkit [155409] by dino@apple.com
  • 16 edits in trunk/Source

[WebGL] Allow multithreaded OpenGL contexts
https://bugs.webkit.org/show_bug.cgi?id=121062

Reviewed by Simon Fraser.

Expose a new preference "multithreadedWebGLEnabled".

Source/WebCore:

Also examine the value of that preference and, on Mac,
tell the CGLContext that it should go to multithreaded mode.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::create): Look at the value of the new setting, and
toggle a flag on the context attributes.

  • page/Settings.in: New Setting "multithreadedWebGLEnabled".
  • platform/graphics/GraphicsContext3D.h:

(WebCore::GraphicsContext3D::Attributes::Attributes): Add a "multithreaded" flag.

  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D): If the context attributes
suggest we should, tell the OpenGL context to go into multithreaded mode.

Source/WebKit/mac:

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences multithreadedWebGLEnabled]):
(-[WebPreferences setMultithreadedWebGLEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2:

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetMultithreadedWebGLEnabled):
(WKPreferencesGetMultithreadedWebGLEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • mac/WebKit2.order:
6:08 PM Changeset in webkit [155408] by rniwa@webkit.org
  • 15 edits in trunk

Remove HTMLTextFormControl::fixPlaceholderRenderer
https://bugs.webkit.org/show_bug.cgi?id=121058

Reviewed by Kent Tamura.

Source/WebCore:

HTMLTextFormControl::fixPlaceholderRenderer was added in r118733 to swap the order in which placeholder appears.
Namely, when a text form control element is focused, placeholder should be rendered behind the text for the caret
to render on top of, not behind, the placeholder text. However, we can achieve the same effect by changing
the order of elements in the shadow DOM instead of manually manipuating the render tree as the assertion failure
mentioned in the change log is a bogus one.

Cleaned up the code by removing HTMLTextFormControl::fixPlaceholderRenderer and changed the order in which inner
text element and placeholder element appear. Also fixed the assertion in Position's constructor.

  • dom/Position.cpp:

(WebCore::Position::Position): The original assertion was bogus. What we don't want have is for a Position to be
before or after a shadow root. It's fine for it be anchroed against the shadow root as long as it's inside.

  • html/HTMLTextAreaElement.cpp:

(WebCore::HTMLTextAreaElement::updatePlaceholderText): Insert the placeholder before the inner text element.

  • html/HTMLTextAreaElement.h:
  • html/HTMLTextFormControlElement.cpp:
  • html/HTMLTextFormControlElement.h:
  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::updatePlaceholderText): Ditto.

  • html/TextFieldInputType.h:

LayoutTests:

Rebaseline tests now that the placeholder appears before the inner text element.

  • fast/forms/placeholder-position-expected.txt:
  • platform/mac/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/mac/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/mac/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
  • platform/mac/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/mac/fast/forms/textarea-placeholder-visibility-2-expected.txt:
5:43 PM Changeset in webkit [155407] by andersca@apple.com
  • 11 edits in trunk/Source/WTF

Introduce WTF::createOwned
https://bugs.webkit.org/show_bug.cgi?id=121059

Reviewed by Andreas Kling.

WTF::createOwned is a function template that does adoptPtr + new in a single function call,
with all the arguments being perfectly forwarded thanks to C++11.

Being forward-looking, createOwned returns an OwnPtr rather than a PassOwnPtr since the plan is
to get rid of PassOwnPtr and just use std::move instead.

  • wtf/FilePrintStream.cpp:
  • wtf/FilePrintStream.h:
  • wtf/HashTable.h:
  • wtf/ListHashSet.h:
  • wtf/OwnPtr.h:

(WTF::OwnPtr::OwnPtr):
(WTF::createOwned):
(WTF::createThread):
(WTF::establishIdentifierForPthreadHandle):
(WTF::createThreadInternal):
(WTF::Collator::userDefault):
(WTF::Collator::userDefault):

5:35 PM Changeset in webkit [155406] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

CopiedSpace::startedCopying should not call MarkedSpace::capacity
https://bugs.webkit.org/show_bug.cgi?id=121045

Reviewed by Geoffrey Garen.

MarkedSpace::capacity() iterates every block in MarkedSpace. Instead we should just
keep track of our total capacity in MarkedSpace as we add and remove MarkedBlocks.

  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::freeBlock):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::didAddBlock):
(JSC::MarkedSpace::capacity):

5:33 PM Changeset in webkit [155405] by Lucas Forschler
  • 1 copy in tags/Safari-537.71

New Tag.

5:23 PM Changeset in webkit [155404] by mark.lam@apple.com
  • 11 edits
    5 copies in trunk

Tools: Rolling out r155392 (Point Tools scripts to LayoutTests/resources): breaks tests.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Not reviewed.

  • Scripts/make-new-script-test:

(makePathToSharedSources):

  • Scripts/run-fast-jsc:
  • Scripts/webkitperl/httpd.pm:

(getDefaultConfigForTestDirectory):

  • Scripts/webkitpy/layout_tests/servers/apache_http_server.py:

(LayoutTestApacheHttpd.init):

  • Scripts/webkitpy/layout_tests/servers/http_server.py:

(Lighttpd.init):

  • Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:

(BaseTest.integration_test_port_and_root):

  • Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:

(TestHttpServer.test_start_cmd):

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests.py:

(translate_includes):

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests_unittest.py:

(TestTranslation.test_include_rewriting):

LayoutTests: Rolling out r155392(Remove old fast/js/resources pre and post test files): breaks tests.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Not reviewed.

  • fast/js/resources/js-test-post-async.js: Copied from LayoutTests/fast/js/resources/js-test-post-async.js.
  • fast/js/resources/js-test-post.js: Copied from LayoutTests/fast/js/resources/js-test-post.js.
  • fast/js/resources/js-test-pre.js: Copied from LayoutTests/fast/js/resources/js-test-pre.js.
  • fast/js/resources/standalone-post.js: Copied from LayoutTests/fast/js/resources/standalone-post.js.
  • fast/js/resources/standalone-pre.js: Copied from LayoutTests/fast/js/resources/standalone-pre.js.
5:08 PM Changeset in webkit [155403] by roger_fong@apple.com
  • 2 edits in trunk/Websites/webkit.org

Update build instructions for Apple Windows port to include cygwin php install steps.

  • building/tools.html:
4:37 PM Changeset in webkit [155402] by andersca@apple.com
  • 13 edits
    2 deletes in trunk/Source

Remove wtf/TypeTraits.h
https://bugs.webkit.org/show_bug.cgi?id=121047

Reviewed by Darin Adler.

  • GNUmakefile.list.am:
  • WTF.pro:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/TypeTraits.cpp: Removed.
  • wtf/TypeTraits.h: Removed.
  • wtf/VectorTraits.h:
4:04 PM Changeset in webkit [155401] by mark.lam@apple.com
  • 5 edits in trunk/LayoutTests

Fix path to post file in a fwe tests, and adjust the expected results to match.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Rubber stamped by Filip Pizlo.

  • fast/events/constructors/speech-recognition-error-constructor-expected.txt:
  • fast/events/constructors/speech-recognition-error-constructor.html:
  • fast/events/constructors/storage-event-constructor-expected.txt:
  • fast/events/constructors/storage-event-constructor.html:
4:04 PM Changeset in webkit [155400] by Lucas Forschler
  • 5 edits in branches/safari-534.59-branch/Source

Versioning.

4:03 PM Changeset in webkit [155399] by msaboff@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Wrong for SlowPathCall to load callFrame reg from vm.topCallFrame after call
https://bugs.webkit.org/show_bug.cgi?id=120537

Reviewed by Geoffrey Garen.

Changed JITSlowPathCall::call() to update vm.topCallFrame from the callFrameRegister instead of the
other way around.

  • jit/JIT.h:
  • jit/JITInlines.h:
  • jit/SlowPathCall.h:

(JSC::JITSlowPathCall::call):

4:02 PM Changeset in webkit [155398] by akling@apple.com
  • 27 edits in trunk/Source/WebCore

Hide node() below RenderSVGModelObject, use element() instead.
<https://webkit.org/b/121051>

Reviewed by Darin Adler.

This was almost already there, just delete node() and add an element() that returns a SVGElement*.
The SVG render tree is crazy casual about compile-time types, this is only scratching the surface.

3:56 PM Changeset in webkit [155397] by Lucas Forschler
  • 1 copy in tags/Safari-534.59.11

New Tag.

3:55 PM Changeset in webkit [155396] by Lucas Forschler
  • 5 edits in branches/safari-534.59-branch/Source

Versioning.

3:41 PM Changeset in webkit [155395] by mhahnenberg@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

JSArray::shiftCountWithArrayStorage doesn't change indexBias when shifting the last element in m_vector
https://bugs.webkit.org/show_bug.cgi?id=120389

Reviewed by Michael Saboff.

Went through and cleaned up shiftCountWithArrayStorage. Gave meaningful variable names
and commented the confusing parts. This led to realizing how to fix this bug, which has
been done. The issue was that we were modifying the vector length unconditionally, even
when we weren't logically changing the length of the vector. Instead, we should only modify
the vector length when we modify the index bias.

  • runtime/JSArray.cpp:

(JSC::JSArray::shiftCountWithArrayStorage):

3:36 PM Changeset in webkit [155394] by rniwa@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Prevent overflow of width/height of layout overflow rectangle which can cause scroll bar to misfunction
https://bugs.webkit.org/show_bug.cgi?id=121041

Reviewed by Darin Adler.

Merge the test from https://chromium.googlesource.com/chromium/blink/+/d050f9be579d02e40c8924b4153376bc32ffba1a

  • scrollbars/scrollbar-large-overflow-rectangle-expected.txt: Added.
  • scrollbars/scrollbar-large-overflow-rectangle.html: Added.
3:27 PM Changeset in webkit [155393] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fixing EFL build
https://bugs.webkit.org/show_bug.cgi?id=121048

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-09-09
Reviewed by Darin Adler.

No new tests needed.

  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::applyEdjeRTLState):

3:22 PM Changeset in webkit [155392] by mark.lam@apple.com
  • 11 edits
    5 deletes in trunk

Tools: Point Tools scripts to LayoutTests/resources.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Reviewed by Ryosuke Niwa.

  • Scripts/make-new-script-test:

(makePathToSharedSources):

  • Scripts/run-fast-jsc:
  • Scripts/webkitperl/httpd.pm:

(getDefaultConfigForTestDirectory):

  • Scripts/webkitpy/layout_tests/servers/apache_http_server.py:

(LayoutTestApacheHttpd.init):

  • Scripts/webkitpy/layout_tests/servers/http_server.py:

(Lighttpd.init):

  • Scripts/webkitpy/layout_tests/servers/http_server_integrationtest.py:

(BaseTest.integration_test_port_and_root):

  • Scripts/webkitpy/layout_tests/servers/http_server_unittest.py:

(TestHttpServer.test_start_cmd):

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests.py:

(translate_includes):

  • Scripts/webkitpy/to_be_moved/update_webgl_conformance_tests_unittest.py:

(TestTranslation.test_include_rewriting):

LayoutTests: Remove old fast/js/resources pre and post test files.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Reviewed by Ryosuke Niwa.

  • fast/js/resources/js-test-post-async.js: Removed.
  • fast/js/resources/js-test-post.js: Removed.
  • fast/js/resources/js-test-pre.js: Removed.
  • fast/js/resources/standalone-post.js: Removed.
  • fast/js/resources/standalone-pre.js: Removed.
3:18 PM Changeset in webkit [155391] by Bem Jones-Bey
  • 11 edits
    2 adds in trunk/Source/WebCore

Move Floats out of RenderBlock
https://bugs.webkit.org/show_bug.cgi?id=120779

Reviewed by Alexandru Chiculita.

Move FloatingObject, FloatingObjects and related code into
FloatingObjects.{h,cpp}. This not only makes the code more readable
and maintainable, it also will allow for more decoupling of
RenderBlock and the FloatingObjects, hopefully making it possible for
FloatingObjects to be more central and not need to have one for each
RenderBlock that is affected by floats.

No new tests, no behavior change.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/FloatingObjects.cpp: Added.

(WebCore::ComputeFloatOffsetAdapter::ComputeFloatOffsetAdapter):
(WebCore::ComputeFloatOffsetAdapter::lowValue):
(WebCore::ComputeFloatOffsetAdapter::highValue):
(WebCore::ComputeFloatOffsetAdapter::outermostFloat):
(WebCore::FloatingObjects::FloatingObjects):
(WebCore::FloatingObjects::~FloatingObjects):
(WebCore::FloatingObjects::clearLineBoxTreePointers):
(WebCore::FloatingObjects::clear):
(WebCore::FloatingObjects::increaseObjectsCount):
(WebCore::FloatingObjects::decreaseObjectsCount):
(WebCore::FloatingObjects::intervalForFloatingObject):
(WebCore::FloatingObjects::addPlacedObject):
(WebCore::FloatingObjects::removePlacedObject):
(WebCore::FloatingObjects::add):
(WebCore::FloatingObjects::remove):
(WebCore::FloatingObjects::computePlacedFloatsTree):
(WebCore::FloatingObjects::logicalLeftOffset):
(WebCore::FloatingObjects::logicalRightOffset):
(WebCore::rangesIntersect):
(WebCore::::updateOffsetIfNeeded):
(WebCore::::collectIfNeeded):
(WebCore::::getHeightRemaining):
(WebCore::::string):

  • rendering/FloatingObjects.h: Added.

(WebCore::FloatingObject::FloatingObject):
(WebCore::FloatingObject::clone):
(WebCore::FloatingObject::type):
(WebCore::FloatingObject::renderer):
(WebCore::FloatingObject::isPlaced):
(WebCore::FloatingObject::setIsPlaced):
(WebCore::FloatingObject::x):
(WebCore::FloatingObject::maxX):
(WebCore::FloatingObject::y):
(WebCore::FloatingObject::maxY):
(WebCore::FloatingObject::width):
(WebCore::FloatingObject::height):
(WebCore::FloatingObject::setX):
(WebCore::FloatingObject::setY):
(WebCore::FloatingObject::setWidth):
(WebCore::FloatingObject::setHeight):
(WebCore::FloatingObject::frameRect):
(WebCore::FloatingObject::setFrameRect):
(WebCore::FloatingObject::paginationStrut):
(WebCore::FloatingObject::setPaginationStrut):
(WebCore::FloatingObject::isInPlacedTree):
(WebCore::FloatingObject::setIsInPlacedTree):
(WebCore::FloatingObject::shouldPaint):
(WebCore::FloatingObject::setShouldPaint):
(WebCore::FloatingObject::isDescendant):
(WebCore::FloatingObject::setIsDescendant):
(WebCore::FloatingObject::setRenderer):
(WebCore::FloatingObject::originatingLine):
(WebCore::FloatingObject::setOriginatingLine):
(WebCore::FloatingObject::logicalTop):
(WebCore::FloatingObject::logicalBottom):
(WebCore::FloatingObject::logicalLeft):
(WebCore::FloatingObject::logicalRight):
(WebCore::FloatingObject::logicalWidth):
(WebCore::FloatingObject::pixelSnappedLogicalTop):
(WebCore::FloatingObject::pixelSnappedLogicalBottom):
(WebCore::FloatingObject::pixelSnappedLogicalLeft):
(WebCore::FloatingObject::pixelSnappedLogicalRight):
(WebCore::FloatingObject::setLogicalTop):
(WebCore::FloatingObject::setLogicalLeft):
(WebCore::FloatingObject::setLogicalHeight):
(WebCore::FloatingObject::setLogicalWidth):
(WebCore::FloatingObjectHashFunctions::hash):
(WebCore::FloatingObjectHashFunctions::equal):
(WebCore::FloatingObjectHashTranslator::hash):
(WebCore::FloatingObjectHashTranslator::equal):
(WebCore::FloatingObjects::setHorizontalWritingMode):
(WebCore::FloatingObjects::hasLeftObjects):
(WebCore::FloatingObjects::hasRightObjects):
(WebCore::FloatingObjects::set):
(WebCore::FloatingObjects::placedFloatsTree):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::insertFloatingObject):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
(WebCore::LineLayoutState::lastFloat):
(WebCore::LineLayoutState::setLastFloat):

  • rendering/RenderView.cpp:

(WebCore::RenderView::intervalArena):

3:15 PM Changeset in webkit [155390] by hyatt@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION (r155377): Convert the media elements that were RenderBlocks to RenderBlockFlows
https://bugs.webkit.org/show_bug.cgi?id=121052

Reviewed by Anders Carlsson.

Convert a couple of media renderers that I missed from RenderBlock to RenderBlockFlow.
The previous patch that I landed added asserts that get triggered now when this
situation occurs.

  • rendering/RenderMediaControlElements.cpp:

(WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
(WebCore::RenderMediaVolumeSliderContainer::layout):
(WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
(WebCore::RenderTextTrackContainerElement::layout):

  • rendering/RenderMediaControlElements.h:
3:15 PM Changeset in webkit [155389] by Beth Dakin
  • 2 edits in trunk/LayoutTests

Skipping this newly-added test since it asserts on debug builds.
https://bugs.webkit.org/show_bug.cgi?id=121053 tracks fixing this for real.

  • platform/mac/TestExpectations:
2:59 PM Changeset in webkit [155388] by roger_fong@apple.com
  • 3 edits in trunk/Tools

Unreviewed. Update Cygwin Downloader to include lighttpd and download setup-x86.exe.

  • CygwinDownloader/cygwin-downloader.py:
  • CygwinDownloader/cygwin-downloader.zip:
2:54 PM Changeset in webkit [155387] by Lucas Forschler
  • 1 copy in tags/Safari-534.59.10

New Tag.

2:54 PM Changeset in webkit [155386] by Lucas Forschler
  • 1 delete in tags/Safari-534.59.10

Remove tag.

2:47 PM Changeset in webkit [155385] by fpizlo@apple.com
  • 3 edits in trunk

Unreviewed, fix Ruby exception handling.

  • Scripts/run-jsc-stress-tests:
2:36 PM Changeset in webkit [155384] by fpizlo@apple.com
  • 9 edits in trunk/LayoutTests

fast/js/dfg-* tests should wait for the concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=120723

Rubber stamped by Oliver Hunt.

Convert more tests.

  • fast/js/dfg-ensure-array-storage-on-string-expected.txt:
  • fast/js/dfg-ensure-array-storage-on-window-expected.txt:
  • fast/js/dfg-ensure-contiguous-on-string-expected.txt:
  • fast/js/dfg-ensure-non-array-array-storage-on-window-expected.txt:
  • fast/js/script-tests/dfg-ensure-array-storage-on-string.js:

(while):

  • fast/js/script-tests/dfg-ensure-array-storage-on-window.js:

(while):

  • fast/js/script-tests/dfg-ensure-contiguous-on-string.js:
  • fast/js/script-tests/dfg-ensure-non-array-array-storage-on-window.js:
2:36 PM Changeset in webkit [155383] by fpizlo@apple.com
  • 4 edits
    3 adds in trunk

Stress tests should test the jsc profiler (-p)
https://bugs.webkit.org/show_bug.cgi?id=121043

PerformanceTests/SunSpider:

Reviewed by Mark Hahnenberg.

Add a jsc-stress-test that tries to profile SunSpider.

  • profiler-test.yaml: Added.

Tools:

Reviewed by Mark Hahnenberg.

Add a runProfiler command that all tests could use. This requires profiler-test-helper,
which first runs the JS test and then tries the output with display-profiler-output.
But if any of the things required for this to work aren't present, we just do a simpler
test that just uses "-p".

Because I didn't want to pollute SunSpider with "@ runProfiler", I added the ability
to create test collections using a yaml file that specifies the test path and the
command to run.

  • Scripts/jsc-stress-test-helpers: Added.
  • Scripts/jsc-stress-test-helpers/profiler-test-helper: Added.
  • Scripts/run-javascriptcore-tests:
  • Scripts/run-jsc-stress-tests:
2:32 PM Changeset in webkit [155382] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Bug Fix] Calling m_audioComponents.remove in removeAudioComponent (MediaStreamDescriptor)
https://bugs.webkit.org/show_bug.cgi?id=121034

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-09-09
Reviewed by Eric Carlson.

No new tests needed.

  • platform/mediastream/MediaStreamDescriptor.h:

(WebCore::MediaStreamDescriptor::removeAudioComponent):

2:23 PM Changeset in webkit [155381] by Lucas Forschler
  • 4 edits in branches/safari-534.59-branch/Source/JavaScriptCore

Merge fix for <rdar://problem/14909253>

2:04 PM Changeset in webkit [155380] by andersca@apple.com
  • 4 edits in trunk/Source/WebCore

Stop using WTF type traits in WebCore
https://bugs.webkit.org/show_bug.cgi?id=121042

Reviewed by Andreas Kling.

Replace uses of WTF type traits in CrossThreadCopier with a simpler solution
that uses std::is_convertible_to and some helpers.

  • dom/CrossThreadTask.h:
  • platform/CrossThreadCopier.h:
  • platform/MainThreadTask.h:
1:30 PM Changeset in webkit [155379] by dino@apple.com
  • 4 edits in trunk/Source

Enable WebGL for OS X nightlies
https://bugs.webkit.org/show_bug.cgi?id=121040

Reviewed by Beth Dakin.

Source/WebKit/mac:

  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]): Set WebPreference to YES.

Source/WebKit2:

  • Shared/WebPreferencesStore.h: Set initial value to true.
1:28 PM Changeset in webkit [155378] by rniwa@webkit.org
  • 4 edits in trunk

Internals should always cause a layout before calling into TextIterator
https://bugs.webkit.org/show_bug.cgi?id=120891

Reviewed by Antti Koivisto.

Source/WebCore:

Inspired by https://chromium.googlesource.com/chromium/blink/+/5fee5da7b04a710171c79bd6e87eca3533188e45.

Force a layout in the constructors of TextIterator, and SimplifiedBackwardsTextIterator and remove
superfluous calls to updateLayout() in other places.

As much as I hate for a constructor to have a side effect like this, I couldn't think of a better place
to update the layout. Unfortunately, we're slowly moving away from manually createing TextIterator and
wrapping them in a static function.

  • editing/TextIterator.cpp:

(WebCore::TextIterator::TextIterator):
(WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
(WebCore::TextIterator::rangeFromLocationAndLength):
(WebCore::findPlainText):

LayoutTests:

Progression.

  • platform/mac/editing/input/caret-primary-bidi-expected.txt:
1:23 PM Changeset in webkit [155377] by hyatt@apple.com
  • 11 edits in trunk/Source/WebCore

Move layoutBlock and layoutBlockChildren into RenderBlockFlow
https://bugs.webkit.org/show_bug.cgi?id=121036

Reviewed by Dean Jackson.

Move layoutBlock into RenderBlockFlow and make the base class version of
the method ASSERT_NOT_REACHED. Begin the process of moving block layout
into RenderBlockFlow by putting layoutBlockChildren there as well.

This patch also puts clearFloats into RenderBlockFlow and just ditches the
SVG-specific forceLayoutInlineChildren by letting RenderSVGText do what it
needs in its own file.

Convert RenderListBox to be a RenderBlockFlow, since this is necessary for it
to get the correct layoutBlock method.

Patch RenderRegion to call RenderBlockFlow::layoutBlock rather than RenderBlock::layoutBlock.

Fix run-ins so that they create block flows rather than blocks, and restrict run-ins to
only be block flows.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::createReplacementRunIn):
(WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::clearFloats):
(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::layoutBlockChildren):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::layoutInlineChildren):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::RenderListBox):
(WebCore::RenderListBox::layout):
(WebCore::RenderListBox::paintObject):
(WebCore::RenderListBox::addFocusRingRects):
(WebCore::RenderListBox::nodeAtPoint):

  • rendering/RenderListBox.h:
  • rendering/RenderRegion.cpp:

(WebCore::RenderRegion::paintObject):
(WebCore::RenderRegion::styleDidChange):
(WebCore::RenderRegion::layoutBlock):
(WebCore::RenderRegion::insertedIntoTree):
(WebCore::RenderRegion::willBeRemovedFromTree):
(WebCore::RenderRegion::computeIntrinsicLogicalWidths):
(WebCore::RenderRegion::computePreferredLogicalWidths):
(WebCore::RenderRegion::updateLogicalHeight):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::layout):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::layout):

1:21 PM Changeset in webkit [155376] by Lucas Forschler
  • 4 edits in branches/safari-534.59-branch/Source/JavaScriptCore

Rollout 155365.

12:58 PM Changeset in webkit [155375] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix GTK build.

Not reviewed.

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::isTableExposableThroughAccessibility):

12:54 PM Changeset in webkit [155374] by Antti Koivisto
  • 67 edits in trunk/Source/WebCore

Hide node() below RenderLayerModelObject, use element() instead
https://bugs.webkit.org/show_bug.cgi?id=121038

Reviewed by Dave Hyatt.

Switch all call sites to element(). Remove now unnecessary casts, type checks and dead code.
Make constructors below RenderLayerModelObject take an Element instead of a ContainerNode.

This also removes a branch from many hasTagName() and isFooElement() calls.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::startOfContinuations):

  • accessibility/AccessibilityTable.cpp:

(WebCore::AccessibilityTable::isDataTable):

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::titleUIElement):

  • accessibility/AccessibilityTableColumn.cpp:

(WebCore::AccessibilityTableColumn::headerObjectForSection):

  • editing/markup.cpp:

(WebCore::highestAncestorToWrapMarkup):

  • html/HTMLTableCellElement.cpp:

(WebCore::HTMLTableCellElement::cellAbove):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::RenderSliderThumb::updateAppearance):
(WebCore::RenderSliderContainer::computeLogicalHeight):
(WebCore::RenderSliderContainer::layout):

  • page/Frame.cpp:

(WebCore::Frame::frameForWidget):

  • rendering/RenderBlock.cpp:

(WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
(WebCore::RenderBlock::RenderBlock):
(WebCore::RenderBlock::clone):
(WebCore::RenderBlock::createReplacementRunIn):
(WebCore::RenderBlock::paintObject):
(WebCore::RenderBlock::isSelectionRoot):
(WebCore::RenderBlock::nodeForHitTest):
(WebCore::RenderBlock::hasLineIfEmpty):
(WebCore::RenderBlock::addFocusRingRects):

  • rendering/RenderBlock.h:
  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::RenderBlockFlow):

  • rendering/RenderBlockFlow.h:
  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::addOverflowFromInlineChildren):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::RenderBox):
(WebCore::RenderBox::updateFromStyle):
(WebCore::RenderBox::scroll):
(WebCore::RenderBox::logicalScroll):
(WebCore::RenderBox::canBeProgramaticallyScrolled):
(WebCore::RenderBox::nodeAtPoint):
(WebCore::RenderBox::paintCustomHighlight):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::sizesLogicalWidthToFitContent):
(WebCore::RenderBox::localCaretRect):

  • rendering/RenderBox.h:
  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::RenderBoxModelObject):

  • rendering/RenderBoxModelObject.h:
  • rendering/RenderButton.cpp:

(WebCore::RenderButton::updateFromElement):
(WebCore::RenderButton::canHaveGeneratedChildren):

  • rendering/RenderButton.h:
  • rendering/RenderEmbeddedObject.cpp:

(WebCore::RenderEmbeddedObject::paintContents):
(WebCore::RenderEmbeddedObject::isReplacementObscured):
(WebCore::RenderEmbeddedObject::layout):
(WebCore::RenderEmbeddedObject::viewCleared):
(WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):

  • rendering/RenderFileUploadControl.cpp:

(WebCore::RenderFileUploadControl::updateFromElement):
(WebCore::RenderFileUploadControl::maxFilenameWidth):
(WebCore::RenderFileUploadControl::paintObject):
(WebCore::RenderFileUploadControl::computeIntrinsicLogicalWidths):
(WebCore::RenderFileUploadControl::uploadButton):
(WebCore::RenderFileUploadControl::fileTextValue):

  • rendering/RenderFrame.cpp:

(WebCore::RenderFrame::edgeInfo):
(WebCore::RenderFrame::viewCleared):

  • rendering/RenderFrameBase.cpp:

(WebCore::RenderFrameBase::layoutWithFlattening):

  • rendering/RenderFrameSet.cpp:

(WebCore::RenderFrameSet::frameSet):

  • rendering/RenderHTMLCanvas.cpp:

(WebCore::RenderHTMLCanvas::requiresLayer):
(WebCore::RenderHTMLCanvas::paintReplaced):
(WebCore::RenderHTMLCanvas::canvasSizeChanged):

  • rendering/RenderIFrame.cpp:

(WebCore::RenderIFrame::isSeamless):
(WebCore::RenderIFrame::flattenFrame):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageChanged):
(WebCore::RenderImage::paintAreaElementFocusRing):
(WebCore::RenderImage::areaElementFocusChanged):
(WebCore::RenderImage::paintIntoRect):
(WebCore::RenderImage::imageMap):
(WebCore::RenderImage::nodeAtPoint):
(WebCore::RenderImage::updateAltText):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::clone):
(WebCore::RenderInline::hitTestCulledInline):
(WebCore::RenderInline::updateHitTestResult):

  • rendering/RenderInline.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::~RenderLayer):
(WebCore::RenderLayer::name):
(WebCore::RenderLayer::isTransparent):
(WebCore::RenderLayer::scrollTo):
(WebCore::RenderLayer::resize):
(WebCore::RenderLayer::filterNeedsRepaint):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::frameContentsCompositor):

  • rendering/RenderLayerFilterInfo.cpp:

(WebCore::RenderLayer::FilterInfo::notifyFinished):
(WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
(WebCore::RenderLayer::FilterInfo::notifyCustomFilterProgramLoaded):

  • rendering/RenderLayerModelObject.cpp:

(WebCore::RenderLayerModelObject::RenderLayerModelObject):

  • rendering/RenderLayerModelObject.h:

(WebCore::RenderLayerModelObject::element):

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::selectElement):
(WebCore::RenderListBox::paintItemForeground):
(WebCore::RenderListBox::paintItemBackground):
(WebCore::RenderListBox::scrollTo):
(WebCore::RenderListBox::createScrollbar):

  • rendering/RenderListItem.cpp:

(WebCore::isList):
(WebCore::enclosingList):
(WebCore::nextListItem):
(WebCore::previousListItem):
(WebCore::RenderListItem::calcValue):
(WebCore::RenderListItem::explicitValueChanged):
(WebCore::RenderListItem::setExplicitValue):
(WebCore::RenderListItem::clearExplicitValue):
(WebCore::previousOrNextItem):
(WebCore::RenderListItem::updateListMarkerNumbers):

  • rendering/RenderMarquee.cpp:

(WebCore::RenderMarquee::marqueeSpeed):

  • rendering/RenderMedia.cpp:

(WebCore::RenderMedia::mediaElement):

  • rendering/RenderMediaControlElements.cpp:

(WebCore::RenderMediaControlTimelineContainer::layout):
(WebCore::RenderTextTrackContainerElement::layout):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::selectElement):
(WebCore::RenderMenuList::valueChanged):
(WebCore::RenderMenuList::createScrollbar):

  • rendering/RenderMeter.cpp:

(WebCore::RenderMeter::meterElement):

  • rendering/RenderPart.cpp:

(WebCore::RenderPart::requiresAcceleratedCompositing):
(WebCore::RenderPart::embeddedContentBox):

  • rendering/RenderProgress.cpp:

(WebCore::RenderProgress::progressElement):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::positionForPoint):
(WebCore::RenderReplaced::isSelected):

  • rendering/RenderSearchField.cpp:

(WebCore::RenderSearchField::autosaveName):
(WebCore::RenderSearchField::createScrollbar):

  • rendering/RenderSlider.cpp:

(WebCore::RenderSlider::layout):
(WebCore::RenderSlider::inDragMode):

  • rendering/RenderSnapshottedPlugIn.cpp:

(WebCore::RenderSnapshottedPlugIn::plugInImageElement):

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
(WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
(WebCore::RenderTable::nodeAtPoint):

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::parseColSpanFromDOM):
(WebCore::RenderTableCell::parseRowSpanFromDOM):
(WebCore::RenderTableCell::updateColAndRowSpanFlags):
(WebCore::RenderTableCell::colSpanOrRowSpanChanged):
(WebCore::RenderTableCell::computePreferredLogicalWidths):

  • rendering/RenderTableCol.cpp:

(WebCore::RenderTableCol::updateFromElement):

  • rendering/RenderTextControl.cpp:

(WebCore::RenderTextControl::textFormControlElement):
(WebCore::RenderTextControl::adjustInnerTextStyle):
(WebCore::RenderTextControl::updateFromElement):
(WebCore::RenderTextControl::layoutSpecialExcludedChild):

  • rendering/RenderTextControlMultiLine.cpp:

(WebCore::RenderTextControlMultiLine::~RenderTextControlMultiLine):
(WebCore::RenderTextControlMultiLine::nodeAtPoint):
(WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):
(WebCore::RenderTextControlMultiLine::computeControlLogicalHeight):

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::nodeAtPoint):
(WebCore::RenderTextControlSingleLine::capsLockStateMayHaveChanged):
(WebCore::RenderTextControlSingleLine::textShouldBeTruncated):
(WebCore::RenderTextControlSingleLine::inputElement):

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::paintSnapshottedPluginOverlay):

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeRenderRegionList):

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::updateIntrinsicSize):
(WebCore::RenderVideo::videoElement):

  • rendering/RenderWidget.cpp:

(WebCore::RenderWidget::setWidgetGeometry):
(WebCore::RenderWidget::updateWidgetPosition):
(WebCore::RenderWidget::nodeAtPoint):

  • rendering/mathml/RenderMathMLFenced.cpp:

(WebCore::RenderMathMLFenced::updateFromElement):
(WebCore::RenderMathMLFenced::createMathMLOperator):
(WebCore::RenderMathMLFenced::styleDidChange):

  • rendering/mathml/RenderMathMLFraction.cpp:

(WebCore::RenderMathMLFraction::updateFromElement):

  • rendering/mathml/RenderMathMLOperator.cpp:

(WebCore::RenderMathMLOperator::updateFromElement):
(WebCore::RenderMathMLOperator::createGlyph):

  • rendering/mathml/RenderMathMLSpace.cpp:

(WebCore::RenderMathMLSpace::updateFromElement):

  • rendering/svg/RenderSVGForeignObject.cpp:

(WebCore::RenderSVGForeignObject::layout):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
(WebCore::RenderSVGRoot::isEmbeddedThroughSVGImage):
(WebCore::RenderSVGRoot::isEmbeddedThroughFrameContainingSVGDocument):
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
(WebCore::RenderSVGRoot::nodeAtPoint):
(WebCore::RenderSVGRoot::hasRelativeDimensions):
(WebCore::RenderSVGRoot::hasRelativeIntrinsicLogicalWidth):
(WebCore::RenderSVGRoot::hasRelativeLogicalHeight):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::layout):
(WebCore::RenderSVGText::strokeBoundingBox):

  • rendering/svg/RenderSVGTextPath.cpp:

(WebCore::RenderSVGTextPath::layoutPath):
(WebCore::RenderSVGTextPath::startOffset):
(WebCore::RenderSVGTextPath::exactAlignment):
(WebCore::RenderSVGTextPath::stretchMethod):

12:42 PM Changeset in webkit [155373] by zandobersek@gmail.com
  • 28 edits
    3 deletes in trunk/Tools

[webkitpy] Remove the DeprecatedPort class
https://bugs.webkit.org/show_bug.cgi?id=121030

Reviewed by Ryosuke Niwa.

Remove the remaining uses of DeprecatedPort, folding its functionality into the Port class.

The various methods returning commands are moved from the DeprecatedPort class into the Port class,
with the Port subclasses overriding specific methods as required.

  • Scripts/webkitpy/common/config/ports.py: Removed.
  • Scripts/webkitpy/common/config/ports_mock.py: Removed.
  • Scripts/webkitpy/common/config/ports_unittest.py: Removed.
  • Scripts/webkitpy/port/base.py:

(Port.tooling_flag): This method returns the command line argument that corresponds to the type of the port.
It's formatted as '--port=port_name', where port_name is the port's name that's additionally appended the '-wk2'
string if the port instance represents the WK2 variation of the port.
(Port.script_shell_command): Moved here from the DeprecatedPort interface.
(Port.make_args): Ditto.
(Port.update_webkit_command): Ditto.
(Port.check_webkit_style_command): Ditto.
(Port.prepare_changelog_command): Ditto.
(Port.build_webkit_command): Ditto.
(Port.run_javascriptcore_tests_command): Ditto.
(Port.run_webkit_unit_tests_command): Ditto.
(Port.run_webkit_tests_command): Ditto.
(Port.run_python_unittests_command): Ditto.
(Port.run_perl_unittests_command): Ditto.
(Port.run_bindings_tests_command): Ditto.

  • Scripts/webkitpy/port/base_unittest.py:

(PortTest.test_build_webkit_command): Add a test for the Port.build_webkit_command() method that tests correct
return value with different build types passed to the method.

  • Scripts/webkitpy/port/efl.py:

(EflPort.build_webkit_command): Override the Port.build_webkit_command() method, appending the necessary options
to the command line.

  • Scripts/webkitpy/port/efl_unittest.py:

(EflPortTest.test_commands): A thorough test of return values for all the new methods, for both the WK1 and WK2
variations of the EflPort class.

  • Scripts/webkitpy/port/gtk.py:

(GtkPort.build_webkit_command): Override the Port.build_webkit_command() method, appending the necessary options
to the command line.
(GtkPort.run_webkit_tests_command): Ditto for Port.run_webkit_tests_command().

  • Scripts/webkitpy/port/gtk_unittest.py:

(GtkPortTest.test_commands): A thorough test of return values for all the new methods, for both the WK1
and WK2 variations of the GtkPort class.

  • Scripts/webkitpy/port/mac_unittest.py:

(MacTest.test_commands): A thorough test of return values for all the new methods, for both the WK1 and WK2
variations of the MacPort class.

  • Scripts/webkitpy/port/qt.py:

(QtPort.build_webkit_command): Override the Port.build_webkit_command() method, appending the necessary options
to the command line.
(QtPort.run_webkit_tests_command): Ditto for Port.run_webkit_tests_command().

  • Scripts/webkitpy/port/qt_unittest.py:

(QtPortTest.test_commands): A thorough test of return values for all the new methods, for both the WK1 and WK2
variations of the QtPort class.

  • Scripts/webkitpy/port/test.py:

(TestPort.make_args): Return a mock value that's intended for testing.
(TestPort.check_webkit_style_command): Return the script's name prepended with 'mock-'.
(TestPort.update_webkit_command): Ditto.
(TestPort.build_webkit_command): Ditto.
(TestPort.prepare_changelog_command): Ditto.
(TestPort.run_python_unittests_command): Ditto.
(TestPort.run_perl_unittests_command): Ditto.
(TestPort.run_javascriptcore_tests_command): Ditto.
(TestPort.run_webkit_unit_tests_command): Ditto.
(TestPort.run_webkit_tests_command): Ditto.
(TestPort.run_bindings_tests_command): Ditto.

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

(FlakyTestReporter.init): WebKitPatch.port() should be called now.

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

(Rollout._update_working_copy): Ditto.

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

(DownloadCommandsTest.test_land_cowhand): Fix a typo, javacriptcore -> javascriptcore.

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

(AbstractEarlyWarningSystem.run_command): Use the tooling flag as provided by the Port interface.

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

(PatchProcessingQueue.begin_work_queue): Remove the use of the DeprecatedPort. Create the port that will be used
by the PatchProcessingQueue through the tool's port factory, and also pass it to the tool, keeping the nasty
abstraction violation.
(CommitQueue.run_command): Use the tooling flag as provided by the Port interface.

  • Scripts/webkitpy/tool/main.py:

(WebKitPatch.init): self._deprecated_port -> self._port.
(WebKitPatch.port): Replaces the WebKitPatch.deprecated_port() method, returns self._port.
(WebKitPatch.handle_global_options): Create the Port object through the PortFactory.

  • Scripts/webkitpy/tool/mocktool.py:

(MockTool.init): self._deprecated_port -> self._port. The TestPort object also has its name method overridden
to return 'MockPort', as many output comparisons rely on the MockPort name. These should all be replaced later, in
a separate patch.
(MockTool.port): Mimicks WebKitPatch.port().

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

(Build.build): WebKitPatch.port() should be called now.

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

(CheckStyle.run): Ditto.

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

(Commit._check_test_expectations): Ditto.

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

(PrepareChangeLog.run): Ditto.

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

(PrepareChangeLogForRevert.run): Ditto.

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

(RunTests.run): Ditto.

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

(RunTestsTest.test_webkit_run_unit_tests): The unnecessary methods should now be overridden on MockTool._port.

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

(StepsTest.test_runtests_args): Remove the MockTool._deprecated_port override, but don't replace it. Rather than
that the expected test output is adjusted to contain the mock-* command names.

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

(Update._update_command): WebKitPatch.port() should be called now.

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

(UpdateTest.test_update_command_non_interactive): Override the MockTool._port for testing purposes with the port
that corresponds to the removed DeprecatedPort subclasses.
(UpdateTest.test_update_command_interactive): Ditto.

12:35 PM Changeset in webkit [155372] by zandobersek@gmail.com
  • 3 edits in trunk/Tools

[GTK] 32-bit builder should run the JSC tests
https://bugs.webkit.org/show_bug.cgi?id=119215

Reviewed by Philippe Normand.

Rename the TestClass member of the TestFactory and BuildAndTestFactory classes
to a more descriptive name, 'LayoutTestClass'. In these two factory classes, the layout testing-specific
steps are only added if the LayoutTestClass member was not overridden to the value of None in a
derived class.

Remove the BuildAndAPITestFactory class and replace it with the BuildAndNonLayoutTestFactory class that
is derived from the BuildAndTestFactory class and overrides the LayoutTestClass member to the value of None.
This allows for builders of the BuildAndNonLayoutTest type to run all but the layout tests. This type
is currently used by the GTK 32-bit builder - there's at the moment no interest to have the builder cover
layout testing while other types of testing are still expected to be performed.

  • BuildSlaveSupport/build.webkit.org-config/config.json:
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:

(BuildFactory.init):
(TestFactory):
(TestFactory.init):
(BuildAndTestFactory):
(BuildAndTestFactory.init):
(BuildAndTestWebKit2Factory):
(BuildAndTestWebKit2OnlyFactory):
(BuildAndNonLayoutTestFactory):
(TestLeaksFactory):
(TestWebKit2Factory):

12:23 PM Changeset in webkit [155371] by Manuel Rego Casasnovas
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
12:21 PM Changeset in webkit [155370] by Antti Koivisto
  • 12 edits in trunk/Source/WebCore

Make RenderView anonymous
https://bugs.webkit.org/show_bug.cgi?id=121013

Reviewed by Darin Adler and Dave Hyatt.

RenderView is currently the only renderer that has an associated Node that is not either Element or Text.
By making it anonymous (not have associated node, RenderView::node() returns null) we will be able to
significantly tighten typing in both render and DOM trees.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::node):

We need to grab document() instead of node() in a few places for RenderViews to keep existing code
behaving like it did.

  • inspector/InspectorLayerTreeAgent.cpp:

(WebCore::InspectorLayerTreeAgent::buildObjectForLayer):

Don't tell inspector that the root layer is anonymous for now to avoid changing behavior.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::nodeForHitTest):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::canBeProgramaticallyScrolled):

The old non-virtual RenderView test renderer->node == &renderer->document() does not work anymore.
Switch to isRenderView() which is now non-virtual in a number of places.

(WebCore::RenderBox::canAutoscroll):
(WebCore::RenderBox::findAutoscrollable):
(WebCore::RenderBox::computeReplacedLogicalHeightUsing):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::hasAutoHeightOrContainingBlockWithAutoHeight):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):

  • rendering/RenderObject.h:

(WebCore::RenderObject::isRenderReplaced):
(WebCore::RenderObject::isAnonymousBlock):

RenderView is anonymous but not a CSS anonymous block.

(WebCore::RenderObject::isText):
(WebCore::RenderObject::isRenderView):

Make isRenderView non-virtual since it is now hot. Reuse existing bits.

(WebCore::RenderObject::setIsText):
(WebCore::RenderObject::setIsRenderView):
(WebCore::RenderObject::RenderObjectBitfields::RenderObjectBitfields):

  • rendering/RenderTreeAsText.cpp:

(WebCore::writeSelection):

  • rendering/RenderView.cpp:


Make anonymous.

(WebCore::RenderView::RenderView):

  • rendering/RenderView.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):

12:19 PM Changeset in webkit [155369] by mark.lam@apple.com
  • 6 edits in trunk/LayoutTests

Change some remaining fast/* files to use pre and post js files in LayoutTests/resources.
https://bugs.webkit.org/show_bug.cgi?id=120899.

Rubber stamped by Filip Pizlo.

  • fast/dom/Element/scroll-width-hidden.html:
  • fast/dom/Element/scroll-width-visible.html:
  • fast/dom/HTMLInputElement/input-line-height.html:
  • fast/dom/processing-instruction-inherit-characterdata.xhtml:
  • fast/events/before-unload-returnValue.html:
11:47 AM Changeset in webkit [155368] by Bem Jones-Bey
  • 3 edits in trunk/Source/WebCore

Move logical(Left|Right)FloatOffsetForLine methods into FloatingObjects
https://bugs.webkit.org/show_bug.cgi?id=120705

Reviewed by Sam Weinig.

These are the only consumers of the CalculateFloatOffsetAdapter and
the placed floats tree, so it will allow us to reduce the public
interface of FloatingObjects and make the placed floats tree private.

No new tests, no behavior change.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::logicalLeftFloatOffsetForLine):
(WebCore::RenderBlock::logicalRightFloatOffsetForLine):
(WebCore::RenderBlock::FloatingObjects::logicalLeftOffset):
(WebCore::RenderBlock::FloatingObjects::logicalRightOffset):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::FloatingObjects::placedFloatsTree):

11:40 AM Changeset in webkit [155367] by Christophe Dumez
  • 23 edits
    3 adds in trunk

Add support for BeforeUnloadEvent interface
https://bugs.webkit.org/show_bug.cgi?id=120849

Reviewed by Darin Adler.

Source/WebCore:

Add support for BeforeUnloadEvent as per the specification:
http://www.whatwg.org/specs/web-apps/current-work/#beforeunloadevent

BeforeUnloadEvent has a returnValue attribute. Setting returnValue to a non-empty
string in an event handler causes the user agent should ask the user to confirm
that they wish to unload the document. This is equivalent to returning a non-empty
string in the EventHandler:
http://www.whatwg.org/specs/web-apps/current-work/#onbeforeunloadeventhandler

BeforeUnloadEvent and returnValue are already supported by IE and Firefox. Previously,
WebKit was passing a base Event type to the beforeunload event handlers instead of
a BeforeUnloadEvent.

Note that this patch keeps support for the legacy Event.returnValue attribute. This used
to be an IE extension but this is no longer supported by IE (nor Firefox). The standard
preventDefault() should be used instead however (supported in IE >= 9).

Test: fast/events/before-unload-returnValue.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • WebCore.order:
  • WebCore.vcxproj/WebCore.vcxproj:
  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • dom/BeforeUnloadEvent.cpp:

(WebCore::BeforeUnloadEvent::isBeforeUnloadEvent):
(WebCore::BeforeUnloadEvent::~BeforeUnloadEvent):

  • dom/BeforeUnloadEvent.h:

(WebCore::BeforeUnloadEvent::create):
(WebCore::BeforeUnloadEvent::returnValue):
(WebCore::BeforeUnloadEvent::setReturnValue):
(WebCore::toBeforeUnloadEvent):

  • dom/BeforeUnloadEvent.idl: Added.
  • dom/Event.cpp:

(WebCore::Event::isBeforeUnloadEvent):

  • dom/Event.h:

(WebCore::Event::legacyReturnValue):
(WebCore::Event::setLegacyReturnValue):

  • dom/Event.idl:
  • dom/EventNames.in:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::handleBeforeUnloadEvent):

LayoutTests:

Add layout test for validate support for the BeforeUnloadEvent.
Also rebaseline fast/js/global-constructors-attributes.html as
BeforeUnloadEvent is now exposed on the global Window object.

  • fast/events/before-unload-returnValue-expected.txt: Added.
  • fast/events/before-unload-returnValue.html: Added.
  • fast/js/global-constructors-attributes-expected.txt:
  • platform/efl/fast/js/global-constructors-attributes-expected.txt:
  • platform/gtk/fast/js/global-constructors-attributes-expected.txt:
  • platform/mac-lion/fast/js/global-constructors-attributes-expected.txt:
  • platform/qt/fast/js/global-constructors-attributes-expected.txt:
11:37 AM Changeset in webkit [155366] by hyatt@apple.com
  • 20 edits in trunk/Source/WebCore

Get rid of isBlockFlowFlexBoxOrGrid().
https://bugs.webkit.org/show_bug.cgi?id=120897

Convert all callers and get rid of this method.

Reviewed by Beth Dakin.

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
(WebCore::AccessibilityRenderObject::determineAccessibilityRole):

  • dom/Position.cpp:

(WebCore::Position::isCandidate):
(WebCore::Position::getInlineBoxAndOffset):
(WebCore::Position::primaryDirection):

  • dom/PositionIterator.cpp:

(WebCore::PositionIterator::isCandidate):

  • editing/CompositeEditCommand.cpp:

(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):

  • editing/Editor.cpp:

(WebCore::Editor::baseWritingDirectionForSelectionStart):

  • editing/FrameSelection.cpp:

(WebCore::caretRenderer):

  • editing/TextIterator.cpp:

(WebCore::TextIterator::shouldRepresentNodeOffsetZero):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::makeEditableRootEmpty):

  • editing/htmlediting.cpp:

(WebCore::isBlockFlowElement):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::collapseMargins):
(WebCore::RenderBlock::selectionGaps):
(WebCore::RenderBlock::firstLineBoxBaseline):
(WebCore::RenderBlock::lastLineBoxBaseline):
(WebCore::RenderBlock::firstLineBlock):
(WebCore::findFirstLetterBlock):
(WebCore::shouldCheckLines):
(WebCore::RenderBlock::adjustForBorderFit):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::positionForPoint):

  • rendering/RenderBoxModelObject.h:

(WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::computeRectForRepaint):

  • rendering/RenderLineBoxList.cpp:

(WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::computeRectForRepaint):
(WebCore::RenderObject::styleWillChange):
(WebCore::firstLineStyleForCachedUncachedType):

  • rendering/RenderObject.h:
  • rendering/RenderObjectChildList.cpp:

(WebCore::RenderObjectChildList::insertChildNode):

  • rendering/RenderView.h:
11:21 AM Changeset in webkit [155365] by Lucas Forschler
  • 4 edits in branches/safari-534.59-branch/Source/JavaScriptCore

Merge fix for <rdar://problem/14909253>

11:19 AM Changeset in webkit [155364] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

MediaStream API: Stop means stop
https://bugs.webkit.org/show_bug.cgi?id=120873

Reviewed by Jer Noble.

Merge blink https://chromium.googlesource.com/chromium/blink/+/9a97b0f3892320fa5741485e06a78183b77c3635
by Tommy Widenflycht.

Removing notification functionality from MediaStreamTrack::stop because the world is being torn down.

No new tests, the original author was unable to come up with a reliable test case.

  • Modules/mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::stop): Don't call didEndTrack, the world is going away.

10:56 AM Changeset in webkit [155363] by fpizlo@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed, fix build.

  • Modules/encryptedmedia/MediaKeySession.h:
10:48 AM Changeset in webkit [155362] by eric.carlson@apple.com
  • 5 edits in trunk/Source/WebCore

MediaStream API: Moving Add/Remove track from WebMediaStreamCenterClient to WebMediaStream
https://bugs.webkit.org/show_bug.cgi?id=120872

Reviewed by Jer Noble.

Merge https://chromium.googlesource.com/chromium/blink/+/7d740fd27c1f345b59c846df01c3adce53c18e6e
Simple cleanup that makes the API cleaner.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::MediaStream::removeTrack):
(WebCore::MediaStream::addRemoteTrack):
(WebCore::MediaStream::removeRemoteTrack):

  • platform/mediastream/MediaStreamCenter.cpp:
  • platform/mediastream/MediaStreamCenter.h:
  • platform/mediastream/MediaStreamDescriptor.h:

(WebCore::MediaStreamDescriptor::removeAudioComponent):
(WebCore::MediaStreamDescriptor::addRemoteTrack):
(WebCore::MediaStreamDescriptor::removeRemoteTrack):

10:41 AM Changeset in webkit [155361] by ChangSeok Oh
  • 3 edits
    3 adds in trunk

[WK2] Assertion failure in WebCore::Page::checkSubframeCountConsistency when going back
https://bugs.webkit.org/show_bug.cgi?id=119781

Reviewed by Alexey Proskuryakov.

Source/WebCore:

We should pair restoring a cached frame and adding it to FrameTree so that
actual added frame count in FrameTree keeps same with restored frame count.
Otherwise assert failure occurs in Page::CheckSubframeCountConsistency.
We have added cached frames to FrameTree ahead and then restored them by tree travelsal.
But this way doesn't guarantee subframecount of Page and the number of child of FrameTree are equal.
In addition, we still make sure that adding a cached frame to FrameTree should happen
before opening it. Because FrameTree might be used while restoring a cached page.

Test: fast/history/go-back-to-iframe-with-plugin.html

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):
(WebCore::CachedFrame::open):

LayoutTests:

To verify this fix, we need to use the CachedPage in WK2 debug mode.
And the test page should have at least one iframe with plugin.

  • fast/history/go-back-to-iframe-with-plugin-expected.txt: Added.
  • fast/history/go-back-to-iframe-with-plugin.html: Added.
  • fast/history/resources/subframe-with-plugin.html: Added.
10:34 AM Changeset in webkit [155360] by Luciano Miguel Wolf
  • 2 edits
    28 adds in trunk/Source

Nix upstreaming - Adding stubs and Nix specific platform files
https://bugs.webkit.org/show_bug.cgi?id=118358

Reviewed by Benjamin Poulain.

Basically adding all files that have "Nix" in their names and
are related to WebCore module.

Source/WebCore:

No new tests. They will be uploaded on another patch during the
upstreaming process.

  • css/mediaControlsNix.css: Added.
  • css/mediaControlsNixFullscreen.css: Added.
  • page/nix/EventHandlerNix.cpp: Added.
  • platform/graphics/egl/GLContextFromCurrentEGL.cpp: Added.
  • platform/graphics/egl/GLContextFromCurrentEGL.h: Added.
  • platform/graphics/gstreamer/PlatformVideoWindowNix.cpp: Added.
  • platform/graphics/nix/IconNix.cpp: Added.
  • platform/graphics/nix/ImageNix.cpp: Added.
  • platform/nix/CursorNix.cpp: Added.
  • platform/nix/DragDataNix.cpp: Added.
  • platform/nix/DragImageNix.cpp: Added.
  • platform/nix/GamepadsNix.cpp: Added.
  • platform/nix/LanguageNix.cpp: Added.
  • platform/nix/LocalizedStringsNix.cpp: Added.
  • platform/nix/NixKeyboardUtilities.cpp: Added.
  • platform/nix/NixKeyboardUtilities.h: Added.
  • platform/nix/PasteboardNix.cpp: Added.
  • platform/nix/PlatformKeyboardEventNix.cpp: Added.
  • platform/nix/PlatformScreenNix.cpp: Added.
  • platform/nix/SoundNix.cpp: Added.
  • platform/nix/WidgetNix.cpp: Added.
  • platform/text/nix/TextBreakIteratorInternalICUNix.cpp: Added.

Source/WTF:

  • wtf/nix/FeatureDefinesNix.h: Added.
  • wtf/nix/PlatformNix.h: Added.
10:27 AM Changeset in webkit [155359] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit2

Merge r155353 - Unreviewed build fix.

  • GNUmakefile.list.am: Typo - left-over \ from a copy/paste, most likely.
10:16 AM Changeset in webkit [155358] by Hugo Parente Lima
  • 33 edits in trunk/Source/WebCore

Preparing WebCore to receive Nix Port
https://bugs.webkit.org/show_bug.cgi?id=118326

Reviewed by Eric Carlson.

Only adding the compilation directives that are Nix specific, in the
existent WebCore files

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::defaultObjectContentType):

  • platform/Cursor.h:
  • platform/DragData.h:
  • platform/DragImage.h:
  • platform/FileSystem.h:
  • platform/RunLoop.h:
  • platform/Widget.h:
  • platform/audio/FFTFrame.h:
  • platform/audio/HRTFElevation.cpp:
  • platform/cairo/WidgetBackingStore.h:
  • platform/graphics/ANGLEWebKitBridge.h:
  • platform/graphics/FontPlatformData.h:
  • platform/graphics/GraphicsContext3D.cpp:
  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/OpenGLESShims.h:
  • platform/graphics/OpenGLShims.cpp:

(WebCore::getProcAddress):

  • platform/graphics/OpenGLShims.h:
  • platform/graphics/PlatformLayer.h:
  • platform/graphics/cairo/GLContext.cpp:

(WebCore::GLContext::createContextForWindow):

  • platform/graphics/cairo/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):

  • platform/graphics/freetype/FontPlatformDataFreeType.cpp:
  • platform/graphics/opengl/Extensions3DOpenGL.cpp:

(WebCore::Extensions3DOpenGL::createVertexArrayOES):
(WebCore::Extensions3DOpenGL::deleteVertexArrayOES):
(WebCore::Extensions3DOpenGL::isVertexArrayOES):
(WebCore::Extensions3DOpenGL::bindVertexArrayOES):
(WebCore::Extensions3DOpenGL::supportsExtension):

  • platform/graphics/opengl/Extensions3DOpenGL.h:
  • platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
  • platform/graphics/opengl/Extensions3DOpenGLES.h:
  • platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::reshape):

  • platform/graphics/texmap/TextureMapper.h:
  • plugins/PluginPackage.cpp:
  • plugins/PluginView.cpp:

(WebCore::PluginView::PluginView):

  • plugins/PluginView.h:
  • plugins/PluginViewNone.cpp:
10:10 AM Changeset in webkit [155357] by andersca@apple.com
  • 18 edits in trunk/Source

Begin moving off of TypeTraits.h
https://bugs.webkit.org/show_bug.cgi?id=121006

Reviewed by Darin Adler.

Source/JavaScriptCore:

Convert uses of WTF type traits to STL type traits.

  • heap/PassWeak.h:
  • runtime/JSCell.h:

(JSC::jsCast):
(JSC::jsDynamicCast):

  • runtime/WriteBarrier.h:

(JSC::validateCell):

Source/WebKit2:

Convert uses of WTF type traits to STL type traits.

  • Platform/CoreIPC/ArgumentCoder.h:
  • Platform/CoreIPC/ArgumentCoders.h:
  • Platform/CoreIPC/ArgumentDecoder.h:
  • Platform/CoreIPC/ArgumentEncoder.h:
  • Platform/CoreIPC/Arguments.h:
  • Shared/API/c/WKSharedAPICast.h:

(WebKit::toImpl):

Source/WTF:

The C++11 has its own type traits implementation that is more complete and handles corner cases better
since it ties into the compiler. Begin switching uses of WTF type traits to STL type traits.

  • wtf/CheckedArithmetic.h:
  • wtf/HashTraits.h:
  • wtf/NeverDestroyed.h:
  • wtf/OwnPtr.h:
  • wtf/PassOwnPtr.h:

(WTF::adoptPtr):

  • wtf/RetainPtr.h:
9:58 AM Changeset in webkit [155356] by Darin Adler
  • 27 edits in trunk/Source/WebCore

Tighten up EventQueue classes a bit, less indirection and memory allocation
https://bugs.webkit.org/show_bug.cgi?id=121016

Reviewed by Andreas Kling.

  • Modules/encryptedmedia/MediaKeySession.cpp:

(WebCore::MediaKeySession::MediaKeySession): Updated since event queue is now
a member rather than an OwnPtr.
(WebCore::MediaKeySession::close): Ditto.
(WebCore::MediaKeySession::keyRequestTimerFired): Ditto.
(WebCore::MediaKeySession::addKeyTimerFired): Ditto.

  • Modules/encryptedmedia/MediaKeySession.h: Ditto.
  • Modules/indexeddb/IDBDatabase.cpp:

(WebCore::IDBDatabase::closeConnection): Updated since ScriptExecutionContext's
eventQueue function now returns a reference rather than a pointer. Also, the
cancelEvent function takes a reference instead of a pointer.
(WebCore::IDBDatabase::enqueueEvent): Ditto.

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::abort): Ditto.
(WebCore::IDBRequest::enqueueEvent): Ditto.

  • Modules/indexeddb/IDBTransaction.cpp:

(WebCore::IDBTransaction::enqueueEvent): Ditto.

  • Modules/mediasource/MediaSource.cpp:

(WebCore::MediaSource::MediaSource): Updated since event queue is now a
member rather than an OwnPtr. Also use initialization instead of assignment
to set up source buffers.
(WebCore::MediaSource::hasPendingActivity): Ditto.
(WebCore::MediaSource::stop): Ditto.
(WebCore::MediaSource::scheduleEvent): Ditto.

  • Modules/mediasource/MediaSource.h: Ditto.
  • Modules/mediasource/SourceBufferList.cpp:

(WebCore::SourceBufferList::SourceBufferList): Take references instead of
pointers.
(WebCore::SourceBufferList::length): Changed type to unsigned instead of
unsigned long. This is an IDL "unsigned long", which corresponds to "unsigned"
in our C++ DOM implementation.
(WebCore::SourceBufferList::createAndFireEvent): Updated since event queue is
now a reference.
(WebCore::SourceBufferList::scriptExecutionContext): Updated since script
execution context is now a reference.

  • Modules/mediasource/SourceBufferList.h: Ditto.
  • dom/Document.cpp:

(WebCore::Document::Document): Updated since event queue is now a member rather
than a RefPtr.
(WebCore::Document::detach): Ditto.
(WebCore::Document::enqueueWindowEvent): Ditto.
(WebCore::Document::enqueueDocumentEvent): Ditto.

  • dom/Document.h: Ditto.
  • dom/DocumentEventQueue.cpp: Renamed DocumentEventQueueTimer to just Timer and

made it a class member of DocumentEventQueue. Also changed it to use references
instead of pointers and removed unneeded ScriptExecutionContext argument.
(WebCore::DocumentEventQueue::DocumentEventQueue): Updated to take a document
reference instead of a script execution context pointer.
(WebCore::DocumentEventQueue::enqueueEvent): Wrote the assertions in a clearer
style and do the assertions even when the queue is closed.
(WebCore::DocumentEventQueue::enqueueOrDispatchScrollEvent): Removed the unneeded
ScrollEventTargetType argument, since the policy is specific to the document node.
Made the argument a reference instead of a PassRefPtr, and rewrote the function
to be more straightforward and readable.
(WebCore::DocumentEventQueue::cancelEvent): Use the return value recently added to
the remove function to avoid the need for use of iterators and a find/remove pair.
(WebCore::DocumentEventQueue::pendingEventTimerFired): Rewrote this to use the
recently added ListHashSet takeFirst function. Also protect the document instead
of protecting just this object during the dispatch. Can't really protect the
event queue since it's no longer separately reference counted.
(WebCore::DocumentEventQueue::dispatchEvent): Changed this to take a reference and
added a FIXME about some curious code in here that needs a "why" comment.

  • dom/DocumentEventQueue.h: Removed many unneeded includes, some unneeded forward

declarations, marked the class final, made it no longer derive from RefCounted,
removed ScrollEventTargetType and create, and did the other changes mentioned above.

  • dom/EventQueue.h: Got rid of many uneeded includes, changed the argument type

of cancelEvent to Event& and rewrote the comment for close.

  • dom/GenericEventQueue.cpp:

(WebCore::GenericEventQueue::GenericEventQueue): Updated to take a reference.
(WebCore::GenericEventQueue::enqueueEvent): Ditto.
(WebCore::GenericEventQueue::timerFired): Ditto.

  • dom/GenericEventQueue.h: Changed this class to no longer derive from EventQueue

since there was no value coming from that polymorphism. Removed all the virtual
keywords from the class. Switched from pointers to references. Removed the unused
cancelEvent function. Removed the create function since this is always used as a
data member, not a pointer on the heap.

  • dom/ScriptExecutionContext.h: Changed the return type of eventQueue to a reference.
  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Updated since event queue is now a
member rather than an OwnPtr.
(WebCore::HTMLMediaElement::~HTMLMediaElement): Ditto.
(WebCore::HTMLMediaElement::scheduleEvent): Ditto.
(WebCore::HTMLMediaElement::updateActiveTextTrackCues): Ditto.
(WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerKeyAdded): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerKeyError): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerKeyMessage): Ditto.
(WebCore::HTMLMediaElement::mediaPlayerKeyNeeded): Ditto.
(WebCore::HTMLMediaElement::stop): Ditto.
(WebCore::HTMLMediaElement::hasPendingActivity): Ditto.

  • html/HTMLMediaElement.h: Ditto.
  • page/EventHandler.cpp:

(WebCore::EventHandler::sendScrollEvent): Updated to remove the now-uneeded
ScrollEventTargetType argument, and also to use references instead of pointers.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::scrollTo): Ditto.

  • rendering/RenderListBox.cpp:

(WebCore::RenderListBox::scrollTo): Ditto.

  • workers/WorkerEventQueue.cpp:

(WebCore::WorkerEventQueue::WorkerEventQueue): Updated to work with references
instead of pointers.
(WebCore::WorkerEventQueue::enqueueEvent): Ditto.
(WebCore::WorkerEventQueue::cancelEvent): Use the take function instead of a
get/remove pair, to eliminate double hashing.

  • workers/WorkerEventQueue.h: Removed unneeded includes, forward declarations,

the create function, and the private removeEvent function. Marked class final.

  • workers/WorkerGlobalScope.cpp:

(WebCore::WorkerGlobalScope::WorkerGlobalScope): Updated since eventQueue is
now a data member.
(WebCore::WorkerGlobalScope::eventQueue): Ditto.

  • workers/WorkerGlobalScope.h: Made m_eventQueue a queue instead of a pointer

to a queue. Also made the eventQueue function private and final.

9:42 AM Changeset in webkit [155355] by Carlos Garcia Campos
  • 7 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit2

Merge r155347 - [GTK] Cancel the current active WebKitAuthenticationRequest on load failed
https://bugs.webkit.org/show_bug.cgi?id=120350

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-09-09
Reviewed by Carlos Garcia Campos.

The default dialog does not get closed and the authentication is not cancelled
if loading fails or is stopped on a page which requires HTTP authentication.

This patch cancels the authentication request on load failed
and adds new authentication cancelled signal in WebKitAuthenticationRequest
to allow the application handling of authentication UI.

  • UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:

(authenticationCancelled):
(webkitAuthenticationDialogInitialize):
(webkitAuthenticationDialogDispose):
(webkitAuthenticationDialogNew):

  • UIProcess/API/gtk/WebKitAuthenticationDialog.h:
  • UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:

(webkit_authentication_request_class_init):
(webkit_authentication_request_cancel):

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewAuthenticate):
(webkitWebViewLoadFailed):
(webkitWebViewHandleAuthenticationChallenge):
(webkitWebViewCancelAuthenticationRequest):

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

(testWebViewAuthenticationLoadCancelled):
(beforeAll):

9:35 AM Changeset in webkit [155354] by hmuller@adobe.com
  • 3 edits
    2 adds in trunk

[CSS Shapes] Heap-buffer-overflow in WebCore::ShapeInterval<float>::subtractShapeIntervals
https://bugs.webkit.org/show_bug.cgi?id=120802

Reviewed by Darin Adler.

Source/WebCore:

Revised the implementation of subtractShapeIntervals() to isloate and check the
places where it dereferences ShapeInterval vector iterators.

Test: fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html

  • rendering/shapes/ShapeInterval.h:

(WebCore::ShapeInterval::subtractShapeIntervals):

LayoutTests:

Added a test case that crashed a bounds-checking runtime prior to this fix.

  • fast/shapes/shape-inside/shape-inside-subtract-intervals-crash-expected.html: Added.
  • fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html: Added.
9:35 AM Changeset in webkit [155353] by kov@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix.

  • GNUmakefile.list.am: Typo - left-over \ from a copy/paste, most likely.
9:27 AM Changeset in webkit [155352] by Darin Adler
  • 5 edits in trunk/Source/WebCore

matchingShorthandsForLonghand builds map using a giant function
https://bugs.webkit.org/show_bug.cgi?id=121029

Reviewed by Anders Carlsson.

There is no need to use a map for this; a switch statement is fine.
Also, these structures are simple enough that we can build them
every time; we don't need to keep them in globals.

  • css/CSSParser.cpp:

(WebCore::CSSParser::addProperty): Got rid of non-helpful local in
CSS_VARIABLES code. Updated for change in return value of the
matchingShorthandsForLonghand.
(WebCore::CSSParser::parseShorthand): Updated for change in return
type of propertiesForInitialization.

  • css/CSSProperty.cpp:

(WebCore::StylePropertyMetadata::shorthandID): Updated for change in
return value of matchingShorthandsForLonghand.

  • css/StylePropertyShorthand.cpp:

(WebCore::backgroundShorthand): Got rid of local variable, constructing
the StylePropertyShorthand every time.
(WebCore::backgroundPositionShorthand): Ditto.
(WebCore::backgroundRepeatShorthand): Ditto.
(WebCore::borderShorthand): Ditto.
(WebCore::borderAbridgedShorthand): Ditto.
(WebCore::borderBottomShorthand): Ditto.
(WebCore::borderColorShorthand): Ditto.
(WebCore::borderImageShorthand): Ditto.
(WebCore::borderLeftShorthand): Ditto.
(WebCore::borderRadiusShorthand): Ditto.
(WebCore::webkitBorderRadiusShorthand): Ditto.
(WebCore::borderRightShorthand): Ditto.
(WebCore::borderSpacingShorthand): Ditto.
(WebCore::borderStyleShorthand): Ditto.
(WebCore::borderTopShorthand): Ditto.
(WebCore::borderWidthShorthand): Ditto.
(WebCore::listStyleShorthand): Ditto.
(WebCore::fontShorthand): Ditto.
(WebCore::marginShorthand): Ditto. Ditto.
(WebCore::markerShorthand): Ditto.
(WebCore::outlineShorthand): Ditto.
(WebCore::overflowShorthand): Ditto.
(WebCore::paddingShorthand): Ditto.
(WebCore::transitionShorthand): Ditto.
(WebCore::webkitAnimationShorthand): Ditto.
(WebCore::webkitAnimationShorthandForParsing): Ditto.
(WebCore::webkitBorderAfterShorthand): Ditto.
(WebCore::webkitBorderBeforeShorthand): Ditto.
(WebCore::webkitBorderEndShorthand): Ditto.
(WebCore::webkitBorderStartShorthand): Ditto.
(WebCore::webkitColumnsShorthand): Ditto.
(WebCore::webkitColumnRuleShorthand): Ditto.
(WebCore::webkitFlexFlowShorthand): Ditto.
(WebCore::webkitFlexShorthand): Ditto.
(WebCore::webkitMarginCollapseShorthand): Ditto.
(WebCore::webkitGridColumnShorthand): Ditto.
(WebCore::webkitGridRowShorthand): Ditto.
(WebCore::webkitMarqueeShorthand): Ditto.
(WebCore::webkitMaskShorthand): Ditto.
(WebCore::webkitMaskPositionShorthand): Ditto.
(WebCore::webkitMaskRepeatShorthand): Ditto.
(WebCore::webkitTextDecorationShorthand): Ditto.
(WebCore::webkitTextEmphasisShorthand): Ditto.
(WebCore::webkitTextStrokeShorthand): Ditto.
(WebCore::webkitTransitionShorthand): Ditto.
(WebCore::webkitTransformOriginShorthand): Ditto.
(WebCore::widthShorthand): Ditto.
(WebCore::heightShorthand): Ditto.
(WebCore::shorthandForProperty): Ditto.
(WebCore::makeVector): Added. Helper function for the cases in the
switch inside matchingShorthandsForLonghand.
(WebCore::matchingShorthandsForLonghand): Rewrote this to use a switch
instead of a map.
(WebCore::indexOfShorthandForLonghand): Tightened up the coding style a bit.

  • css/StylePropertyShorthand.h: Changed type of StylePropertyShorthand's

propertiesForInitialization to be an array of shorthands rather than an
array of pointers to shorthands. Changed return types of the shorthand
functions to return a shorthand object rather than a reference. Did the same
for the other functions.

7:39 AM Changeset in webkit [155351] by allan.jensen@digia.com
  • 4 edits in trunk

MouseEnter and MouseLeave may be emitted on Document nodes
https://bugs.webkit.org/show_bug.cgi?id=120862

Reviewed by Antonio Gomes.

Source/WebCore:

Replace the overgeneric use of Nodes with Elements in updateHoverActiveState.
This also fixes the bug of emitting mouseenter/mouseleave events on Document,
since Document is not an Element.

This is tested by fast/events/mouseenterleave-on-subframe.html

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

LayoutTests:

Update expectations now we correctly do not get mouseenter/mouseleave events
targeted for Document nodes.

  • fast/events/mouseenterleave-on-subframe-expected.txt:
7:30 AM Changeset in webkit [155350] by commit-queue@webkit.org
  • 13 edits in trunk/LayoutTests

[Qt] fast/regions/overflow* converted reftests failing after r155114
https://bugs.webkit.org/show_bug.cgi?id=120848

Patch by Mihai Maerean <Mihai Maerean> on 2013-09-09
Reviewed by Antti Koivisto.

The tests are now platform independent by specifing the font.

  • fast/regions/overflow-in-uniform-regions-dynamic-expected.html:
  • fast/regions/overflow-in-uniform-regions-dynamic.html:
  • fast/regions/overflow-in-variable-width-regions-expected.html:
  • fast/regions/overflow-in-variable-width-regions.html:
  • fast/regions/overflow-moving-below-floats-in-variable-width-regions-expected.html:
  • fast/regions/overflow-moving-below-floats-in-variable-width-regions.html:
  • fast/regions/overflow-not-moving-below-floats-in-variable-width-regions-expected.html:
  • fast/regions/overflow-not-moving-below-floats-in-variable-width-regions.html:
  • fast/regions/overflow-rtl-in-variable-width-regions-expected.html:
  • fast/regions/overflow-rtl-in-variable-width-regions.html:
  • fast/regions/overflow-size-change-in-variable-width-regions-expected.html:
  • fast/regions/overflow-size-change-in-variable-width-regions.html:
7:01 AM Changeset in webkit [155349] by allan.jensen@digia.com
  • 1 edit
    1 move in trunk/LayoutTests

Unreviewed fixup of expectation name.

  • fast/events/mouseenterleave-on-subframe-expected.txt: Renamed from LayoutTests/fast/events/mouseenterleave-on-subframe-expected.html.
6:58 AM Changeset in webkit [155348] by allan.jensen@digia.com
  • 3 edits
    2 adds in trunk

MouseLeave not always emitted when cursor leaves subframe
https://bugs.webkit.org/show_bug.cgi?id=121026

Reviewed by Antonio Gomes.

Source/WebCore:

Forward the PlatformMouseEvent in the recursive calls so nested documents
also get a chance to emit mouseleave when the hover moves out.

Test: fast/events/mouseenterleave-on-subframe.html

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

LayoutTests:

Test or mouseenter/mouseleave events in an inner document. Note this test also
tests bug 120862, but the initial expectations assume that part to fail.

  • fast/events/mouseenterleave-on-subframe-expected.html: Added.
  • fast/events/mouseenterleave-on-subframe.html: Added.
6:49 AM Changeset in webkit [155347] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

[GTK] Cancel the current active WebKitAuthenticationRequest on load failed
https://bugs.webkit.org/show_bug.cgi?id=120350

Patch by Anton Obzhirov <Anton Obzhirov> on 2013-09-09
Reviewed by Carlos Garcia Campos.

The default dialog does not get closed and the authentication is not cancelled
if loading fails or is stopped on a page which requires HTTP authentication.

This patch cancels the authentication request on load failed
and adds new authentication cancelled signal in WebKitAuthenticationRequest
to allow the application handling of authentication UI.

  • UIProcess/API/gtk/WebKitAuthenticationDialog.cpp:

(authenticationCancelled):
(webkitAuthenticationDialogInitialize):
(webkitAuthenticationDialogDispose):
(webkitAuthenticationDialogNew):

  • UIProcess/API/gtk/WebKitAuthenticationDialog.h:
  • UIProcess/API/gtk/WebKitAuthenticationRequest.cpp:

(webkit_authentication_request_class_init):
(webkit_authentication_request_cancel):

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewAuthenticate):
(webkitWebViewLoadFailed):
(webkitWebViewHandleAuthenticationChallenge):
(webkitWebViewCancelAuthenticationRequest):

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

(testWebViewAuthenticationLoadCancelled):
(beforeAll):

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

Adding username to RTCIceServer
https://bugs.webkit.org/show_bug.cgi?id=120861

Patch by Thiago de Barros Lacerda <thiago.lacerda@openbossa.org> on 2013-09-09
Reviewed by Eric Carlson.

No new tests needed. Existing media stream tests already cover it

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::parseConfiguration):

  • platform/mediastream/RTCConfiguration.h:

(WebCore::RTCIceServer::create):
(WebCore::RTCIceServer::username):
(WebCore::RTCIceServer::RTCIceServer):

6:05 AM Changeset in webkit [155345] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[GTK][WK2] Update ContextMenu Download API
https://bugs.webkit.org/show_bug.cgi?id=120763

Patch by Brian Holt <brian.holt@samsung.com> on 2013-09-09
Reviewed by Carlos Garcia Campos.

Mark the new Download items in the Context Menu with the Since
tag, and include a unit test for Context Menu audio.

  • UIProcess/API/gtk/WebKitContextMenuActions.h:
  • UIProcess/API/gtk/tests/TestContextMenu.cpp:

(testContextMenuDefaultMenu):

3:37 AM Changeset in webkit [155344] by Antti Koivisto
  • 26 edits in trunk/Source/WebCore

Hide Document::renderer()
https://bugs.webkit.org/show_bug.cgi?id=121028

Reviewed by Andreas Kling.

Use less generic Document::renderView() instead.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::postNotification):

  • accessibility/AccessibilityObject.cpp:

(WebCore::appendAccessibilityObject):

  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::webAreaObject):

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::dispatchInvalidationCallbacks):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::appendAuthorStyleSheets):

  • dom/Document.cpp:

(WebCore::Document::~Document):
(WebCore::Document::webkitGetNamedFlows):
(WebCore::Document::setVisualUpdatesAllowed):
(WebCore::Document::elementFromPoint):
(WebCore::Document::caretRangeFromPoint):
(WebCore::Document::updateLayout):
(WebCore::Document::existingAXObjectCache):
(WebCore::Document::axObjectCache):
(WebCore::Document::setVisuallyOrdered):
(WebCore::Document::implicitClose):
(WebCore::Document::prepareMouseEvent):
(WebCore::Document::styleResolverChanged):
(WebCore::Document::documentWillBecomeInactive):
(WebCore::Document::documentDidResumeFromPageCache):

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

(WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets):

  • dom/Element.cpp:

(WebCore::Element::~Element):

  • dom/InlineStyleSheetOwner.cpp:

(WebCore::InlineStyleSheetOwner::removedFromDocument):

  • dom/ProcessingInstruction.cpp:

(WebCore::ProcessingInstruction::removedFrom):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::contains):

  • html/HTMLElement.cpp:

(WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::removedFrom):

  • html/HTMLStyleElement.cpp:

(WebCore::HTMLStyleElement::parseAttribute):
(WebCore::HTMLStyleElement::registerWithScopingNode):
(WebCore::HTMLStyleElement::unregisterWithScopingNode):

  • html/parser/HTMLResourcePreloader.cpp:

(WebCore::HTMLResourcePreloader::preload):

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::updateFromElement):

  • page/EventHandler.cpp:

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

  • page/Frame.cpp:

(WebCore::Frame::setPageAndTextZoomFactors):

  • page/FrameView.cpp:

(WebCore::FrameView::layout):
(WebCore::FrameView::doLayoutWithFrameFlattening):

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor):

  • page/PrintContext.cpp:

(WebCore::PrintContext::spoolAllPagesWithBoundaries):

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm:

(WebCore::MediaPlayerPrivateQTKit::paint):

  • style/StyleResolveTree.cpp:

(WebCore::Style::resolveTree):

  • svg/SVGDocument.cpp:

(WebCore::SVGDocument::updatePan):

3:11 AM Changeset in webkit [155343] by commit-queue@webkit.org
  • 3 edits
    8 adds in trunk/LayoutTests

[EFL] Added new expected results after r153435
https://bugs.webkit.org/show_bug.cgi?id=121025

Unreviewed EFL gardening.

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-09-09

  • platform/efl-wk1/TestExpectations:
  • platform/efl-wk1/accessibility/lists-expected.txt: Added.
  • platform/efl-wk1/accessibility/plugin-expected.txt: Added.
  • platform/efl-wk1/accessibility/table-with-aria-role-expected.txt: Added.
  • platform/efl-wk1/accessibility/transformed-element-expected.txt: Added.
  • platform/efl-wk2/TestExpectations:
  • platform/efl-wk2/accessibility/lists-expected.txt: Added.
  • platform/efl-wk2/accessibility/plugin-expected.txt: Added.
  • platform/efl-wk2/accessibility/table-with-aria-role-expected.txt: Added.
  • platform/efl-wk2/accessibility/transformed-element-expected.txt: Added.
3:05 AM Changeset in webkit [155342] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Tools

Merge r154841 - [GTK] Should enable WebGL by default on MiniBrowser
https://bugs.webkit.org/show_bug.cgi?id=120420

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-08-29
Reviewed by Gustavo Noronha Silva.

Enable WebGL by default on MiniBrowser.

  • MiniBrowser/gtk/main.c:

(main):

3:04 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
3:01 AM Changeset in webkit [155341] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r155329 - [GTK] ghost cursor when mouse hovers over an image file in a tab
https://bugs.webkit.org/show_bug.cgi?id=120675

Reviewed by Carlos Garcia Campos.

No new tests, covered by existing.

  • platform/gtk/CursorGtk.cpp:

(WebCore::createNamedCursor): Use new gdk_cursor_new_from_surface()
when compiling against GTK+ 3.9.12 or newer.

3:00 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:56 AM Changeset in webkit [155340] by Christophe Dumez
  • 9 edits
    2 adds in trunk

[DOM4] Have ProcessingInstruction inherit CharacterData
https://bugs.webkit.org/show_bug.cgi?id=120691

Reviewed by Darin Adler.

Source/WebCore:

Have ProcessingInstruction inherit CharacterData as per the latest DOM4
specification:
http://dom.spec.whatwg.org/#processinginstruction

Previously, ProcessingInstruction was inheriting from Node as per DOM
Level 3.

Firefox and Blink already follow DOM4 here but not IE10.
This change leads to less code duplication.

Test: fast/dom/processing-instruction-inherit-characterdata.xhtml

  • bindings/objc/PublicDOMInterfaces.h:
  • dom/CharacterData.cpp:

(WebCore::CharacterData::setDataAndUpdate):

  • dom/ProcessingInstruction.cpp:

(WebCore::ProcessingInstruction::ProcessingInstruction):
(WebCore::ProcessingInstruction::cloneNode):
(WebCore::ProcessingInstruction::checkStyleSheet):
(WebCore::ProcessingInstruction::insertedInto):
(WebCore::ProcessingInstruction::removedFrom):
(WebCore::ProcessingInstruction::finishParsingChildren):

  • dom/ProcessingInstruction.h:

(WebCore::toProcessingInstruction):

  • dom/ProcessingInstruction.idl:

LayoutTests:

Add layout test to validate that ProcessingInstruction inherits from
CharacterData.

  • fast/dom/coreDOM-element-attribute-js-null-expected.txt:
  • fast/dom/coreDOM-element-attribute-js-null.xhtml:
  • fast/dom/processing-instruction-inherit-characterdata-expected.txt: Added.
  • fast/dom/processing-instruction-inherit-characterdata.xhtml: Added.
2:51 AM Changeset in webkit [155339] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2

Merge r155245 - [GTK] Bump the required Clang version to 3.2
https://bugs.webkit.org/show_bug.cgi?id=112537

Reviewed by Gustavo Noronha Silva.

  • Source/autotools/CheckSystemAndBasicDependencies.m4: Require the Clang 3.2 stack

when the Clang compiler is specified.

2:50 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:40 AM Changeset in webkit [155338] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

[Qt] Remove FastAllocBase.h from WTF.pro.
https://bugs.webkit.org/show_bug.cgi?id=121024

Patch by Julien Brianceau <jbriance@cisco.com> on 2013-09-09
Reviewed by Jocelyn Turcotte.

  • WTF.pro: Remove FastAllocBase.h as this file disappeared in r155251.
2:39 AM Changeset in webkit [155337] by commit-queue@webkit.org
  • 6 edits
    2 moves in trunk

[AX][ATK] AccessibilityObject representing ProgressBar element should be ATK_VALUE type
https://bugs.webkit.org/show_bug.cgi?id=121023

Patch by Krzysztof Czech <k.czech@samsung.com> on 2013-09-09
Reviewed by Mario Sanchez Prada.

Source/WebCore:

Test: accessibility/progressbar.html

ProgressBar element should support ATK_VALUE interface.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(getInterfaceMaskFromObject):

Tools:

Added mappings to ATK's ProgressBar element.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(roleToString):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::roleToString):

LayoutTests:

Sharing progressbar.html specific mac test with efl and gtk.

  • accessibility/progressbar-expected.txt: Renamed from LayoutTests/platform/mac/accessibility/progressbar-expected.txt.
  • accessibility/progressbar.html: Renamed from LayoutTests/platform/mac/accessibility/progressbar.html.
2:25 AM Changeset in webkit [155336] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/ThirdParty

Merge r155210 - GTest: add support for FreeBSD and Hurd
https://bugs.webkit.org/show_bug.cgi?id=120870

Patch by Emilio Pozuelo Monfort <pochu@debian.org>
Reviewed by Gustavo Noronha Silva.

  • gtest/include/gtest/internal/gtest-port.h:
2:24 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:19 AM BuildingQtOnLinux edited by jocelyn.turcotte@digia.com
Remove outdated Qt4 information. (diff)
2:19 AM Changeset in webkit [155335] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WTF

Merge r155193 - [GTK] GlibUtilities: getCurrentExecutablePath() does not compile on GNU/Hurd
https://bugs.webkit.org/show_bug.cgi?id=120793

Reviewed by Gustavo Noronha Silva.

Original patch by Svante Signell <svante.signell@telia.com>.

PATH_MAX is not defined in GNU/Hurd, this patch adds a dummy
implementation to make it compile.

  • wtf/gobject/GlibUtilities.cpp:

(getCurrentExecutablePath):

2:18 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:07 AM Changeset in webkit [155334] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit2

Merge r155125 - [WK2] [GTK] Remove the test to disable AC under Wayland from WebKitWebViewGroup
https://bugs.webkit.org/show_bug.cgi?id=120762

Reviewed by Gustavo Noronha Silva.

The code to disable AC under Wayland is not run if we're using
WebKitTestRunner, so it would be better to move it to
WebKitWebViewBase.

However it's not really necessary to do that, instead it's much
simpler to disable accelerated compositing in all cases unless we
know we can support it.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseUpdatePreferences):

  • UIProcess/API/gtk/WebKitWebViewGroup.cpp:

(webkitWebViewGroupAttachSettingsToPageGroup):

2:06 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:03 AM Changeset in webkit [155333] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit2

Merge r154728 - [GTK][WK2] Disable accelerated compositing under Wayland
https://bugs.webkit.org/show_bug.cgi?id=120347

Reviewed by Martin Robinson.

Accelerated compositing is not yet supported under the Wayland display protocol,
so it should be disabled. Since it is enabled by default and the GTK WK2 API does
not provide any way to change that, it's enough to disable it when attaching the
WebKitSettings object to the WebPageGroup if running under Wayland.

  • UIProcess/API/gtk/WebKitWebViewGroup.cpp:

(webkitWebViewGroupAttachSettingsToPageGroup):

2:02 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:57 AM Changeset in webkit [155332] by Carlos Garcia Campos
  • 20 edits in releases/WebKitGTK/webkit-2.2

Merge r155032 - [GTK] Add support for the Wayland build target
https://bugs.webkit.org/show_bug.cgi?id=120627

Reviewed by Gustavo Noronha Silva.

.:

Add support for building the GTK port with Wayland as the target. The Wayland target can be the sole target
that's enabled, or it can be enabled in parallel with the X11 target.

Each of those two targets, when enabled, checks for the corresponding GTK+ windowing dependency being present.
In the case of only the Wayland target being enabled, the accelerated compositing feature is disabled at
build-time as the feature is not yet supported under the Wayland display protocol. X11-based plugin support is
also disabled under that configuration, even if the WebKitPluginProcess is still built but is left non-operational.
GLX support is also disabled if not building the X11 target.

The Wayland target can be enabled through using the --with-target configuration option that now accepts two
additional values:

  • 'wayland' - only enables the Wayland target,
  • 'x11,wayland' - enables the X11 and Wayland targets that are to be built in parallel.

This makes it possible to build the GTK port of WebKit with the Wayland target, relying solely on the GTK+
dependency that only has the Wayland backend enabled, and removes linking against any X11-related library.
Note that at the moment there seem to be other dependencies that still link to X11-related libraries.
Complete functionality is not yet guaranteed, but is of course the goal.

  • Source/autotools/FindDependencies.m4: Store the version of the basic GTK+ dependency that was found.

This is later used to check that the GTK+ X11 and GTK+ Wayland dependencies are of the same version. The
X11-specific dependencies are grouped into one section (apart from the XComposite and XDamage dependencies),
also checking for the GTK+ X11 dependency. If the X11 target is not enabled, the GLX dependency is disabled.
Additionally check for the GTK+ Wayland dependency if the Wayland target is enabled.
We only check for the presence and correct version of the GTK+ X11 and Wayland dependencies, if necessary.
Check for the XComposite and XDamage dependencies if the X11 target is enabled (in addition to the OpenGL
headers being present).
In case of the Wayland target being enabled while the X11 target is not, disable the accelerated compositing
feature as there's no support yet for it under the Wayland display protocol.

  • Source/autotools/PrintBuildConfiguration.m4: The build configuration should now print out 'GDK targets'.
  • Source/autotools/ReadCommandLineArguments.m4: The --with-target option can now take two additional values,

'wayland' and 'x11,wayland'. The first one enables only the Wayland target, while the second one enables both
X11 and Wayland targets. This makes it possible to build the GTK port with both X11 and Wayland display protocols
supported in the same build.
We must now check the outcoming with_target variable to see if the special case of building one or both of the
possible parallel targets was chosen. We define with_x11_target and with_wayland_target variables if the
with_target value applies to that case.

  • Source/autotools/SetupAutoconfHeader.m4: Do not define the XP_UNIX macro on builds that enable the Wayland-only

target. It should still be defined if we're building both X11 and Wayland targets in parallel.

  • Source/autotools/SetupAutomake.m4: Define TARGET_X11 and TARGET_WAYLAND Automake conditionals if the new

with_x11_target or with_wayland_target variables were set, respectively. Additionall, define the TARGET_X11_OR_WAYLAND
Automake conditional if we're building either of the two targets.

Source/WebCore:

  • GNUmakefile.list.am: Reorder the Source/WebCore/plugins/np* source files.

The X11-specific source files should only be included if the X11 target is being built. PluginPackageNone and
PluginViewNone source files must be included in non-X11-target builds. Other source files that were previously
guarded with the TARGET_X11 conditional should also be built for the Wayland target, so the new TARGET_X11_OR_WAYLAND
conditional is used. If neither of those two targets is being built we fall back to adding source files to the build
as necessary by the actual build target.

  • platform/gtk/GtkVersioning.c:

(gdk_screen_get_monitor_workarea): Additionally guard bits of code that depend on the GDK_WINDOWING_X11 macro being
defined - these should only be built when building the X11 target, checked for with PLATFORM(X11).

Source/WebKit/gtk:

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::createBackingStore): Additionally guard the <gdk/gdkx.h> inclusion and the inclusion and use of
WidgetBackingStoreGtkX11 with PLATFORM(X11), ensuring this code is built when also building with X11 target
enabled. GDK_WINDOWING_X11 macro can be defined even if the X11 target is disabled.

Source/WebKit2:

  • GNUmakefile.list.am: Build X11-specific NetscapePluginModule and NetscapePlugin classes if building the X11 target,

fall back to the generic, empty classes otherwise.

  • PluginProcess/unix/PluginProcessMainUnix.cpp:

(WebKit::PluginProcessMainUnix): Guard the NetscapePluginModule::scanPlugin() invocation with PLUGIN_ARCHITECTURE(X11),
it's at the moment specific to the X11 implementation of the Netscape plugins.

  • UIProcess/Plugins/unix/PluginProcessProxyUnix.cpp: Guard PluginProcessProxy::scanPlugin() with PLUGIN_ARCHITECTURE(X11),

just like it's guarded in the PluginProcessProxy class declaration.

  • UIProcess/cairo/BackingStoreCairo.cpp: Additionally guard <gdk/gdkx.h> and WidgetBackingStoreGtkX11 inclusion and use

with PLATFORM(X11), this code should only be built when building the X11 target.
(WebKit::createBackingStoreForGTK):

  • UIProcess/gtk/WebPageProxyGtk.cpp: Guard the createPluginContainer() and windowedPluginGeometryDidChange() methods and their

helper functions and objects with PLUGIN_ARCHITECTURE(X11), just like they're guarded in the WebPageProxy class declaration.

  • config.h: Only define PLUGIN_ARCHITECTURE_X11 to 1 if we're actually building the X11 target.

Tools:

  • GNUmakefile.am: Define the additional macros also if building the Wayland target.
1:55 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:48 AM HackingGtk edited by mario@webkit.org
(diff)
1:47 AM HackingGtk edited by mario@webkit.org
(diff)
1:43 AM WebKitGTK/StartHacking edited by mario@webkit.org
(diff)
1:43 AM WebKitGTK/StartHacking edited by mario@webkit.org
(diff)
1:38 AM WebKitGTK/StartHacking edited by mario@webkit.org
(diff)
1:29 AM Changeset in webkit [155331] by Carlos Garcia Campos
  • 4 edits in releases/WebKitGTK/webkit-2.2/Source/WebKit2

Merge r155066 - [WK2][GTK] ASSERTION in WebKit::LayerTreeHostGtk::invalidate
https://bugs.webkit.org/show_bug.cgi?id=117733

Reviewed by Martin Robinson.

If the GL context cannot be created then an invalid
LayerTreeHostGtk object will be returned.

This patch disables accelerated compositing if the system doesn't
support it.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewUpdateSettings):

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseUpdatePreferences):
(webkitWebViewBaseCreateWebPage):

  • UIProcess/API/gtk/WebKitWebViewBasePrivate.h:
1:28 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:17 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:42 AM WebKitGTK/2.2.x edited by Claudio Saavedra
(diff)
12:40 AM Changeset in webkit [155330] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r155039 - [GTK] Color of input button's text broken with recent gnome-themes-standard
https://bugs.webkit.org/show_bug.cgi?id=120581

Reviewed by Carlos Garcia Campos.

  • platform/gtk/RenderThemeGtk3.cpp:

(WebCore::getStyleContext): add the "text-button" class.
(WebCore::RenderThemeGtk::systemColor): Use the ACTIVE state flag,
as this is the one actually used for button labels.

12:31 AM Changeset in webkit [155329] by Claudio Saavedra
  • 2 edits in trunk/Source/WebCore

[GTK] ghost cursor when mouse hovers over an image file in a tab
https://bugs.webkit.org/show_bug.cgi?id=120675

Reviewed by Carlos Garcia Campos.

No new tests, covered by existing.

  • platform/gtk/CursorGtk.cpp:

(WebCore::createNamedCursor): Use new gdk_cursor_new_from_surface()
when compiling against GTK+ 3.9.12 or newer.

12:28 AM Changeset in webkit [155328] by Carlos Garcia Campos
  • 4 edits
    2 adds in releases/WebKitGTK/webkit-2.2

Merge r155024 - [GStreamer] cannot play live streams
https://bugs.webkit.org/show_bug.cgi?id=116831

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-09-04
Reviewed by Philippe Normand.

Source/WebCore:

Fix issues with rtsp streams embedded on <video> not loading.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

Do not reset pipeline to READY state on STATE_CHANGE_ASYNC when entering PAUSED state for
live streams, otherwise we enter an endless loop of READY->PAUSED->READY->PAUSED when
starting playback.

Tools:

Fix timeout issues with rtspsrc/udpsrc gstreamer elements.

  • gtk/jhbuild.modules:
  • gtk/patches/rtspsrc-timeout-on-udpsrc-is-in-nanoseconds.patch: Added.
  • gtk/patches/udpsrc-improve-timeouts.patch: Added.

Changed gstreamer jhbuild modules to use tarball repos (required to add patches)
and added 2 patches to gst-plugins-good to fix timeout issues with rtsp streams.
Both patches are applied upstream and can be removed once a new gstreamer release
is out (up to 1.0.10 the patches are not included) and we bump the requirements.

12:27 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:24 AM Changeset in webkit [155327] by Carlos Garcia Campos
  • 2 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r155104 - [Qt][WK1] REGRESSION(r154988): compositing/video/video-with-invalid-source.html
https://bugs.webkit.org/show_bug.cgi?id=120683

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-09-05
Reviewed by Philippe Normand.

Do not set pipeline state to NULL on MediaPlayerPrivateGStreamer::loadingFailed()
otherwise the bus is flushed and we never get a GST_MESSAGE_ERROR when failing to
load uris.
Also restore previous behaviour (before r154988) of not invoking loadingFailed() for
all failed manual state change attempts.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
Do not call loadingFailed() if state change fails as all manual state changes are
now done with changePipelineState().
(WebCore::MediaPlayerPrivateGStreamer::play):
(WebCore::MediaPlayerPrivateGStreamer::pause):
(WebCore::MediaPlayerPrivateGStreamer::seek):
(WebCore::MediaPlayerPrivateGStreamer::handleMessage):
Restore previous behaviour (before changeset r154988) when calling changePipelineState().
(WebCore::MediaPlayerPrivateGStreamer::updateStates):
Do nothing if changing to READY on EOS (same behaviour as setting to NULL as it was before
changeset r154988).
(WebCore::MediaPlayerPrivateGStreamer::loadingFailed):
Do not set pipeline state to NULL so we properly get GST_MESSAGE_ERROR on loading failures.

12:23 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:19 AM Changeset in webkit [155326] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r154988 - [GStreamer] Don't set state to NULL until element is destroyed
https://bugs.webkit.org/show_bug.cgi?id=117354

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-09-03
Reviewed by Philippe Normand.

Don't set playbin to NULL until it is going to be destroyed or if we stay
for too long on the READY state. Instead only set the state to READY as this
allows much faster state changes to PAUSED/PLAYING again. playbin internally
caches some state that is destroyed when setting it to NULL.
This state is independent of the URI and it is even possible to change the
URI in READY state.

To avoid having resources (e.g. audio devices) open indefinitely,
when setting the state to READY we create a timeout and if the timeout
is reached we reset the pipeline state to NULL to free resources.

Also now all state changes use the changePipelineState method instead of setting
the playbin state directly with gst_element_set_state, so we have a better control
of when we are requesting state changes.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::mediaPlayerPrivateReadyStateTimeoutCallback):
(WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::commitLoad):
(WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
(WebCore::MediaPlayerPrivateGStreamer::setRate):
(WebCore::MediaPlayerPrivateGStreamer::handlePluginInstallerResult):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
12:18 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:01 AM Changeset in webkit [155325] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLDocument.h : Removing unnecessary forward declaration.
https://bugs.webkit.org/show_bug.cgi?id=121002

Patch by Santosh Mahto <santosh.ma@samsung.com> on 2013-09-08
Reviewed by Darin Adler.

Just code cleanup.
Removed the two forward declaration in HTMLDocument.h file.

  • html/HTMLDocument.h:

Sep 8, 2013:

11:55 PM Changeset in webkit [155324] by commit-queue@webkit.org
  • 5 edits
    2 adds in trunk

defining line height affects height of text box
https://bugs.webkit.org/show_bug.cgi?id=17619

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-08
Reviewed by Darin Adler.

Source/WebCore:

Giving line height to input elements increase the height
of the element. To make it work similiar as Mozilla and IE
line-height :normal should be applied for input elements.

Test: fast/dom/HTMLInputElement/input-line-height.html

  • css/html.css:

(input):
Made the line-height: normal as !important so that it does not
consider any other line-height specified through internal or
external styles.

LayoutTests:

  • fast/dom/HTMLInputElement/input-line-height-expected.txt: Added.
  • fast/dom/HTMLInputElement/input-line-height.html: Added.

Added new test for verifying that giving line-height to input element
has no affect on its height.

  • fast/forms/placeholder-position-expected.txt:
  • platform/mac/fast/forms/placeholder-position-expected.png:

Rebaselining existing tests as per the new behavior. The position
of input elements have been modified since line-height is not being
considered.

11:54 PM Changeset in webkit [155323] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

Scrollbar width is not applied when element hidden
https://bugs.webkit.org/show_bug.cgi?id=90546

Patch by Gurpreet Kaur <k.gurpreet@samsung.com> on 2013-09-08
Reviewed by Simon Fraser.

Source/WebCore:

Webkit has css properties through which custom scroll
bars can be added. Incase the element's visible property
is hidden and custom scrollbar properties are applied
the scrollbar width is not considered when quering the
element.clientWidth. Incase of non-custom scrollbars
whether the element's visible property is hidden or not
correct scrollbar width is considered.

Tests: fast/dom/Element/scroll-width-hidden.html

fast/dom/Element/scroll-width-visible.html

  • rendering/RenderScrollbar.cpp:

(WebCore::RenderScrollbar::updateScrollbarPart):
Incase custom scrollbar is created there is a check whether
the renderer to which scrollbar is added is visible or not.
This check is not required since for non-custom scrollbars same
check is not present. Also whether element's visible property is
hidden or not a placeholder is set for the element. Both behavoiur
i.e custom and non-custom scrollbars should be same.

LayoutTests:

  • fast/dom/Element/scroll-width-hidden-expected.txt: Added.
  • fast/dom/Element/scroll-width-hidden.html: Added.
  • fast/dom/Element/scroll-width-visible-expected.txt: Added.
  • fast/dom/Element/scroll-width-visible.html: Added.

Added new test for verifying that scroll width returns proper
values for element which is visible and hidden.

11:41 PM Changeset in webkit [155322] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebCore

GStreamer 0.10 build fix after r155251.

Patch by Tamas Czene <tczene@inf.u-szeged.hu> on 2013-09-08
Reviewed by Csaba Osztrogonác.

  • platform/graphics/gstreamer/GStreamerVersioning.cpp:
10:18 PM Changeset in webkit [155321] by Christophe Dumez
  • 5 edits in trunk/Source

[wk2] REGRESSION (r154673): PDF scrolling moves very slowly
https://bugs.webkit.org/show_bug.cgi?id=120542

Reviewed by Tim Horton.

Source/WebCore:

Handle 'wheel' events in addition to 'mousewheel'.

  • html/shadow/MediaControlsApple.cpp:

Listen for the standard 'wheel' event instead of the legacy 'mousewheel' one.
While not strictly needed, we should use the legacy events as little as
possible.

  • plugins/PluginView.cpp:

Handle 'wheel' events in addition to 'mousewheel'.

Source/WebKit2:

Handle 'wheel' events in addition to 'mousewheel'. This fixes
PDF scrolling.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::handleEvent):

10:12 PM Changeset in webkit [155320] by Darin Adler
  • 8 edits in trunk/Source/WebCore

Make Editor::deleteButtonController a reference
https://bugs.webkit.org/show_bug.cgi?id=121019

Reviewed by Andreas Kling.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::cloneChildNodes): Updated to use . instead of ->.

  • editing/DeleteButton.cpp:

(WebCore::DeleteButton::defaultEventHandler): Ditto.

  • editing/DeleteButtonController.cpp:

(WebCore::DeleteButtonController::DeleteButtonController): Updated to take a Frame&
instead of a Frame*.
(WebCore::DeleteButtonController::respondToChangedSelection): Ditto.
(WebCore::DeleteButtonController::createDeletionUI): Ditto.
(WebCore::DeleteButtonController::show): Ditto.
(WebCore::DeleteButtonController::enable): Ditto.
(WebCore::DeleteButtonController::deleteTarget): Ditto.

  • editing/DeleteButtonController.h: Ditto.
  • editing/Editor.cpp:

(WebCore::Editor::avoidIntersectionWithDeleteButtonController): Removed bogus
null check from both versions of this function.
(WebCore::Editor::Editor): Use construction rather than assignment and pass
a reference instead of a pointer to make m_deleteButtonController.
(WebCore::Editor::clear): Ditto.

  • editing/Editor.h: Made deleteButtonController return a reference.

Also reorganized the header to put all the conditional functions together,
and not mixed in with non-conditional ones.

  • editing/markup.cpp:

(WebCore::createMarkup): Updated to use . instead of -> and also to use
emptyString() instead of constructing a new empty string.

8:54 PM Changeset in webkit [155319] by Darin Adler
  • 2 edits in trunk/Source/WTF

Deprecate AdoptCF and AdoptNS (on all platforms except iOS for now)
https://bugs.webkit.org/show_bug.cgi?id=121017

Reviewed by Andreas Kling.

  • wtf/RetainPtr.h: Use the preprocessor to rename AdoptCF and AdoptNS

to DeprecatedAdoptCF and DeprecatedAdoptNS on all platforms except
for iOS. Also removed an unneeded explicit conversion in the retainPtr
function. Also re-sorted the using lines at the end of the file.

7:11 PM Changeset in webkit [155318] by akling@apple.com
  • 22 edits in trunk/Source/WebCore

InlineBox::root() should return a reference.
<https://webkit.org/b/121014>

Reviewed by Antti Koivisto.

There is always a root inline box, so make root() return a reference.
Also make some effort to cache the result in a local at call sites.

5:11 PM Changeset in webkit [155317] by mhahnenberg@apple.com
  • 8 edits in trunk/Source/JavaScriptCore

Calculating the size of the Heap should not require walking over it
https://bugs.webkit.org/show_bug.cgi?id=120910

Reviewed by Geoffrey Garen.

Currently Heap::size() is O(sizeof(Heap)). This is too expensive to
call during a collection. We should keep a count of visited and copied
bytes as each collection progresses so as to avoid re-walking the Heap
at the end of collection.

  • heap/GCThreadSharedData.cpp:

(JSC::GCThreadSharedData::childBytesVisited):
(JSC::GCThreadSharedData::childBytesCopied):

  • heap/GCThreadSharedData.h:
  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::markRoots):
(JSC::Heap::sizeAfterCollect):
(JSC::Heap::collect):

  • heap/Heap.h:
  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::SlotVisitor):
(JSC::SlotVisitor::reset):

  • heap/SlotVisitor.h:

(JSC::SlotVisitor::bytesVisited):
(JSC::SlotVisitor::bytesCopied):

  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::internalAppend):
(JSC::SlotVisitor::copyLater):

4:36 PM Changeset in webkit [155316] by mhahnenberg@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Clearing MarkedBlock::m_newlyAllocated should be separate from MarkedBlock::clearMarks
https://bugs.webkit.org/show_bug.cgi?id=121007

Reviewed by Oliver Hunt.

We call clearMarks on every MarkedBlock in the Heap, whereas we only need to clear
m_newlyAllocated for the m_currentBlock at the time of the last canonicalizeCellLiveness()
for each MarkedAllocator. We also need to call it on every block in the largeAllocators
because each one of their blocks is canonicalized as it is used.

  • heap/Heap.cpp:

(JSC::Heap::markRoots):

  • heap/MarkedAllocator.h:

(JSC::MarkedAllocator::getAndClearCanonicalizedBlock):
(JSC::MarkedAllocator::MarkedAllocator):
(JSC::MarkedAllocator::canonicalizeCellLivenessData):

  • heap/MarkedBlock.h:

(JSC::MarkedBlock::lastChanceToFinalize):
(JSC::MarkedBlock::clearMarks):
(JSC::MarkedBlock::clearNewlyAllocated):

  • heap/MarkedSpace.cpp:

(JSC::clearNewlyAllocatedInBlock):
(JSC::ClearNewlyAllocated::operator()):
(JSC::MarkedSpace::clearNewlyAllocated):

  • heap/MarkedSpace.h:
2:10 PM Changeset in webkit [155315] by akling@apple.com
  • 9 edits
    2 deletes in trunk/Source/WebCore

FrameView::scheduleEvent() is over-engineered.
<https://webkit.org/b/121004>

Reviewed by Antti Koivisto.

Remove gratuitous FrameActionScheduler class that was really only being used
to defer the occassional "overflowchanged" event until layout had finished.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • page/FrameActionScheduler.cpp:
  • page/FrameActionScheduler.h:

Removed FrameActionScheduler.

  • page/FrameView.h:
  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):
(WebCore::FrameView::~FrameView):
(WebCore::FrameView::layout):
(WebCore::FrameView::ScheduledEvent::ScheduledEvent):
(WebCore::FrameView::scheduleEvent):
(WebCore::FrameView::pauseScheduledEvents):
(WebCore::FrameView::resumeScheduledEvents):
(WebCore::FrameView::performPostLayoutTasks):
(WebCore::FrameView::updateOverflowStatus):

Replaced it with a Vector<ScheduledEvent> and a suppression counter.
A ScheduledEvent is just a { Node, Event } pair.

1:58 PM Changeset in webkit [155314] by fpizlo@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests should be more paranoid about calling make
https://bugs.webkit.org/show_bug.cgi?id=121011

Reviewed by Oliver Hunt.

If it returns with any kind of error then bail out. Also print the command being used
in case we have to debug this, for example on the bots. The extra verbosity isn't a
big deal.

  • Scripts/run-jsc-stress-tests:
1:58 PM Changeset in webkit [155313] by fpizlo@apple.com
  • 14 edits in trunk/LayoutTests

fast/js/dfg-* tests should wait for the concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=120723

Rubber stamped by Oliver Hunt.

Convert more tests.

  • fast/js/dfg-dead-variable-on-exit-expected.txt:
  • fast/js/dfg-div-by-neg1-and-then-or-zero-interesting-reg-alloc-expected.txt:
  • fast/js/dfg-div-by-zero-and-then-or-zero-interesting-reg-alloc-expected.txt:
  • fast/js/dfg-div-neg2tothe31-by-one-and-then-or-zero-with-interesting-reg-alloc-expected.txt:
  • fast/js/dfg-double-addition-simplify-to-int-expected.txt:
  • fast/js/dfg-double-use-of-post-simplification-double-prediction-expected.txt:
  • fast/js/script-tests/dfg-dead-variable-on-exit.js:
  • fast/js/script-tests/dfg-div-by-neg1-and-then-or-zero-interesting-reg-alloc.js:
  • fast/js/script-tests/dfg-div-by-zero-and-then-or-zero-interesting-reg-alloc.js:
  • fast/js/script-tests/dfg-div-neg2tothe31-by-one-and-then-or-zero-with-interesting-reg-alloc.js:
  • fast/js/script-tests/dfg-double-addition-simplify-to-int.js:
  • fast/js/script-tests/dfg-double-use-of-post-simplification-double-prediction.js:
  • fast/js/script-tests/dfg-double-vote-fuzz.js:
1:34 PM Changeset in webkit [155312] by ap@apple.com
  • 2 edits in trunk/LayoutTests

http/tests/security/shape-inside-image-origin.html started to fail with
http://trac.webkit.org/changeset/155279

  • http/tests/security/shape-inside-image-origin-expected.txt: Updated expected

result, which shows that the test now successfully loads js-test-post.js.

1:15 PM Changeset in webkit [155311] by fpizlo@apple.com
  • 19 edits in trunk/LayoutTests

fast/js/dfg-* tests should wait for the concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=120723

Rubber stamped by Oliver Hunt.

Convert more tests.

  • fast/js/dfg-cse-cfa-discrepancy-expected.txt:
  • fast/js/dfg-cse-dead-get-scoped-var-expected.txt:
  • fast/js/dfg-custom-getter-expected.txt:
  • fast/js/dfg-custom-getter-throw-inlined-expected.txt:
  • fast/js/dfg-dead-min-one-arg-expected.txt:
  • fast/js/dfg-dead-min-two-args-expected.txt:
  • fast/js/dfg-dead-redundant-get-array-length-expected.txt:
  • fast/js/dfg-dead-speculation-expected.txt:
  • fast/js/dfg-dead-unreachable-code-with-chain-of-dead-unchecked-nodes-expected.txt:
  • fast/js/script-tests/dfg-cse-cfa-discrepancy.js:
  • fast/js/script-tests/dfg-cse-dead-get-scoped-var.js:
  • fast/js/script-tests/dfg-custom-getter-throw-inlined.js:
  • fast/js/script-tests/dfg-custom-getter.js:
  • fast/js/script-tests/dfg-dead-min-one-arg.js:
  • fast/js/script-tests/dfg-dead-min-two-args.js:
  • fast/js/script-tests/dfg-dead-redundant-get-array-length.js:
  • fast/js/script-tests/dfg-dead-speculation.js:
  • fast/js/script-tests/dfg-dead-unreachable-code-with-chain-of-dead-unchecked-nodes.js:
12:20 PM Changeset in webkit [155310] by fpizlo@apple.com
  • 2 edits in trunk/Tools

Unreviewed, never pass Pathname to shellescape() as old versions of Ruby don't
like that. Pass a string instead.

  • Scripts/run-jsc-stress-tests:
11:43 AM Changeset in webkit [155309] by fpizlo@apple.com
  • 9 edits in trunk/LayoutTests

fast/js/dfg-* tests should wait for the concurrent JIT
https://bugs.webkit.org/show_bug.cgi?id=120723

Rubber stamped by Oliver Hunt.

Convert more tests.

  • fast/js/dfg-cross-global-object-inline-new-array-expected.txt:
  • fast/js/dfg-cross-global-object-inline-new-array-with-elements-expected.txt:
  • fast/js/dfg-cross-global-object-inline-new-array-with-size-expected.txt:
  • fast/js/script-tests/dfg-cross-global-object-inline-new-array-literal-with-variables.js:

(doit):

  • fast/js/script-tests/dfg-cross-global-object-inline-new-array-literal.js:

(doit):

  • fast/js/script-tests/dfg-cross-global-object-inline-new-array-with-elements.js:

(done):
(doit):

  • fast/js/script-tests/dfg-cross-global-object-inline-new-array-with-size.js:

(done):
(doit):

  • fast/js/script-tests/dfg-cross-global-object-inline-new-array.js:

(done):
(doit):

11:24 AM Changeset in webkit [155308] by andersca@apple.com
  • 24 edits
    1 delete in trunk

Move WTF::notFound to Vector.h and delete NotFound.h
https://bugs.webkit.org/show_bug.cgi?id=120990

Reviewed by Sam Weinig.

Source/WebCore:

  • html/HTMLImageElement.cpp:
  • loader/archive/mhtml/MHTMLParser.cpp:
  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:
  • platform/graphics/win/GraphicsContext3DWin.cpp:
  • platform/network/soup/SocketStreamHandleSoup.cpp:

Source/WebKit/blackberry:

  • Api/BackingStore.cpp:

Source/WebKit2:

  • Shared/EditorState.h:

Source/WTF:

  • GNUmakefile.list.am:
  • WTF.pro:
  • WTF.vcxproj/WTF.vcxproj:
  • WTF.vcxproj/WTF.vcxproj.filters:
  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/NotFound.h: Removed.
  • wtf/Vector.h:
11:24 AM Changeset in webkit [155307] by fpizlo@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests should run tests in parallel if possible
https://bugs.webkit.org/show_bug.cgi?id=120996

Reviewed by Oliver Hunt.

Run tests in parallel by using Makefile hacks. This lets make take care of all load
balancing. It's a really awesome speed-up for these tests.

This reduces the FTL debug build stress test run time from 8m18s to 2m11s. The
no-FTL debug build stress test time goes from 1m11s to 16s. This patch is pretty
much awesome.

  • Scripts/run-jsc-stress-tests:
11:10 AM Changeset in webkit [155306] by commit-queue@webkit.org
  • 8 edits
    4 deletes in trunk

Unreviewed, rolling out r155069 and r155138.
http://trac.webkit.org/changeset/155069
http://trac.webkit.org/changeset/155138
https://bugs.webkit.org/show_bug.cgi?id=121008

Seems to have broken many tests (bug 120963) (Requested by ap
on #webkit).

Source/WebCore:

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/cg/PDFDocumentImage.cpp:

(WebCore::PDFDocumentImage::PDFDocumentImage):
(WebCore::PDFDocumentImage::~PDFDocumentImage):
(WebCore::PDFDocumentImage::size):
(WebCore::PDFDocumentImage::dataChanged):
(WebCore::PDFDocumentImage::adjustCTM):
(WebCore::PDFDocumentImage::setCurrentPage):
(WebCore::PDFDocumentImage::pageCount):
(WebCore::PDFDocumentImage::draw):

  • platform/graphics/cg/PDFDocumentImage.h:

(WebCore::PDFDocumentImage::create):
(WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
(WebCore::PDFDocumentImage::destroyDecodedData):
(WebCore::PDFDocumentImage::decodedSize):

  • platform/graphics/mac/PDFDocumentImageMac.mm: Removed.
  • platform/mac/SoftLinking.h:

LayoutTests:

  • fast/images/pdf-as-image-with-annotations-expected.html: Removed.
  • fast/images/pdf-as-image-with-annotations.html: Removed.
  • fast/images/resources/annotation.pdf: Removed.
  • platform/mac/fast/images/pdf-as-image-landscape-expected.png:
  • platform/mac/fast/images/pdf-as-image-landscape-expected.txt:
10:31 AM Changeset in webkit [155305] by fpizlo@apple.com
  • 2 edits in trunk/Tools

run-jsc-stress-tests should be smart enough to call JSRegress "regress/script-tests" rather than "script-tests"
https://bugs.webkit.org/show_bug.cgi?id=120994

Reviewed by Geoffrey Garen.

run-jsc-stress-tests accepts a list of directories containing tests. It needs to
come up with names for all of them. Currently it uses the basename of the test
directory. But that means that JSRegress gets called "script-tests", which is
unfortunate since any directory in LayoutTests containing .js files will be
called "script-tests". So, this changes run-jsc-stress-tests to use more than
just the basename if the basename has the word "tests" in it. This causes
JSRegress to be called "regress/script-tests".

  • Scripts/run-jsc-stress-tests:
5:00 AM Changeset in webkit [155304] by akling@apple.com
  • 7 edits in trunk/Source

ScriptExecutionContext: Use FINAL instead of foo() { virtualFoo() }
<https://webkit.org/b/120827>

Reviewed by Darin Adler.

Now that we have FINAL, we can just use that to have fast versions of url()
and completeURL() when calling through a Document or WorkerGlobalScope pointer.

  • dom/Document.cpp:
  • dom/Document.h:
  • dom/ScriptExecutionContext.h:
  • workers/WorkerGlobalScope.cpp:
  • workers/WorkerGlobalScope.h:
4:30 AM Changeset in webkit [155303] by Antti Koivisto
  • 7 edits in trunk/Source/WebCore

Rename needsShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=121005

Reviewed by Andreas Kling.

Rename to needsNodeRenderingTraversalSlowPath.

  • dom/ContainerNode.h:

(WebCore::Node::needsNodeRenderingTraversalSlowPath):

  • dom/Element.cpp:

(WebCore::shouldUseNodeRenderingTraversalSlowPath):
(WebCore::Element::resetNeedsNodeRenderingTraversalSlowPath):

Only Elements can have this flag. Move the code here from Node.

(WebCore::Element::addShadowRoot):
(WebCore::Element::setBeforePseudoElement):
(WebCore::Element::setAfterPseudoElement):
(WebCore::Element::clearBeforePseudoElement):
(WebCore::Element::clearAfterPseudoElement):

Reset after clear too.

  • dom/Element.h:
  • dom/Element.h:
  • dom/Node.cpp:
  • dom/Node.h:

(WebCore::Node::isInsertionPoint):
(WebCore::Node::setNeedsNodeRenderingTraversalSlowPath):

Make protected.

  • dom/NodeRenderingTraversal.h:

(WebCore::NodeRenderingTraversal::parent):
(WebCore::NodeRenderingTraversal::nextSibling):
(WebCore::NodeRenderingTraversal::previousSibling):

4:02 AM Changeset in webkit [155302] by akling@apple.com
  • 8 edits in trunk/Source/WebCore

Render{Block,Inline}::lineBoxes() should return a reference.
<https://webkit.org/b/120995>

Reviewed by Antti Koivisto.

This function was already just returning the address of a member variable.

4:01 AM Changeset in webkit [155301] by akling@apple.com
  • 7 edits in trunk/Source/WebCore

Move "using software CSS filters" optimization flag to RenderView.
<https://webkit.org/b/120999>

Reviewed by Antti Koivisto.

This flag is used to avoid an extra tree walk when there are no software CSS filters in use.
Move it from FrameView to RenderView where it belongs.

  • page/FrameView.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::updateOrRemoveFilterEffectRenderer):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containerForRepaint):

  • rendering/RenderView.cpp:

(WebCore::RenderView::RenderView):

  • rendering/RenderView.h:
3:54 AM Changeset in webkit [155300] by akling@apple.com
  • 7 edits in trunk/Source/WebCore

FrameLoader::icon() should return a reference.
<https://webkit.org/b/120993>

Reviewed by Antti Koivisto.

This function never returns null. Make it return a reference!

3:45 AM Changeset in webkit [155299] by Antti Koivisto
  • 2 edits in trunk/Source/WebKit

Fix window build.

Not reviewed.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in:
3:38 AM Changeset in webkit [155298] by akling@apple.com
  • 7 edits in trunk/Source/WebCore

Remove unused Scrollbar tickmark stuff.
<https://webkit.org/b/121000>

Reviewed by Antti Koivisto.

This code is no longer used by any ports.

  • page/FrameView.cpp:
  • page/FrameView.h:
  • platform/ScrollableArea.h:
  • platform/Scrollbar.cpp:
  • platform/Scrollbar.h:
  • platform/ScrollbarThemeClient.h:
2:39 AM WebKitGTK/2.2.x edited by zandobersek@gmail.com
Add two more proposed merges. (diff)
2:36 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:35 AM Changeset in webkit [155297] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r155049 - REGRESSION(r154977): Do not urlencode soup message on ResourceRequest::toSoupMessage()
https://bugs.webkit.org/show_bug.cgi?id=120681

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-09-04
Reviewed by Martin Robinson.

Do not call soup_message_set_uri with soupURI() (url encoded uri) on
ResourceRequest::toSoupMessage().

  • platform/network/soup/ResourceRequest.h:
  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessageMembers):
(WebCore::ResourceRequest::updateSoupMessage):
(WebCore::ResourceRequest::toSoupMessage):
Split common code from updateSoupMessage/toSoupMessage into updateSoupMessageMembers.

2:25 AM Changeset in webkit [155296] by Carlos Garcia Campos
  • 3 edits
    3 adds in releases/WebKitGTK/webkit-2.2

Merge r154977 - [gstreamer] Disable HTTP request "Accept-Encoding:" header field on gstreamer source element to avoid receiving the wrong size when retrieving data
https://bugs.webkit.org/show_bug.cgi?id=115354

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-09-03
Reviewed by Philippe Normand.

Source/WebCore:

Also disable Accept-Encoding on ResourceRequest::toSoupMessage accordingly.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::toSoupMessage):
Call ResourceRequest::updateSoupMessage from ResourceRequest::toSoupMessage so that the
Accept-Encoding header is also respected.

LayoutTests:

Add test to check that video requests will send no "Accept-Encoding" header.

  • http/tests/media/video-accept-encoding-expected.txt: Added.
  • http/tests/media/video-accept-encoding.cgi: Added.
  • http/tests/media/video-accept-encoding.html: Added.
2:23 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:23 AM WebKitGTK/2.2.x edited by zandobersek@gmail.com
Add r155245 to the list of proposed merges for the 2.2 branch. (diff)
2:21 AM Changeset in webkit [155295] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.2/Source/WebCore

Merge r154970 - [GStreamer] Video player sets system volume to 100%
https://bugs.webkit.org/show_bug.cgi?id=118974

Reviewed by Philippe Normand.

In order to preserve the system volume we need to keep track of
the volume being initialized in the HTMLMediaElement and then just
setting the volume to the sink when initializing the pipeline if
that volume was changed before.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Initialized
attribute to false.
(WebCore::HTMLMediaElement::setVolume): Set the attribute to true
when volume is changed.
(WebCore::HTMLMediaElement::updateVolume): Set the volume only if
volume was initialized.
(WebCore::HTMLMediaElement::mediaPlayerPlatformVolumeConfigurationRequired):
Platform volume configuration is required only if volume was not
initialized before.

  • html/HTMLMediaElement.h: Added attribute and interface method.
  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerPlatformVolumeConfigurationRequired):
Declared and added default implementation for the interface method.
(WebCore::MediaPlayer::platformVolumeConfigurationRequired):
Asked the client, meaning the HTMLMediaElement if the platform
volume configuration is required.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:

(WebCore::mediaPlayerPrivateVolumeChangedCallback): Added log.
(WebCore::MediaPlayerPrivateGStreamerBase::setVolume): Added log.
(WebCore::MediaPlayerPrivateGStreamerBase::setStreamVolumeElement):
Set the volume only if not platform volume is required and added log.

2:20 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
2:15 AM Changeset in webkit [155294] by Carlos Garcia Campos
  • 7 edits
    2 adds in releases/WebKitGTK/webkit-2.2

Merge r154944 - Volume slider value should be 0 when audio is muted
https://bugs.webkit.org/show_bug.cgi?id=120553

Reviewed by Eric Carlson.

Source/WebCore:

Fixed the problem of showing a non empty slider when audio is
muted.

Test: media/volume-bar-empty-when-muted.html.

  • html/shadow/MediaControls.cpp:

(WebCore::MediaControls::reset): Use setSliderVolume.
(WebCore::MediaControls::changedVolume): Use setSliderVolume.
(WebCore::MediaControls::setSliderVolume): Added to set the volume
to 0 when muted and to its value otherwise.

  • html/shadow/MediaControls.h: Added setSliderVolume.
  • html/shadow/MediaControlsApple.cpp:

(WebCore::MediaControlsApple::reset): Used setSliderVolume and
setFullscreenSliderVolume.
(WebCore::MediaControlsApple::changedVolume): Used
setFullscreenSliderVolume.
(WebCore::MediaControlsApple::setFullscreenSliderVolume): Added to
set the volume to 0 when muted and to its value otherwise.

  • html/shadow/MediaControlsApple.h: Added setFullscreenSliderVolume
  • html/shadow/MediaControlsBlackBerry.cpp:

(WebCore::MediaControlsBlackBerry::reset): Used setSliderVolume.

LayoutTests:

Added test to check if the volume slider value is 0 when the
element is muted even if volume is set to something else.

  • media/volume-bar-empty-when-muted-expected.txt: Added.
  • media/volume-bar-empty-when-muted.html: Added.
2:14 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:58 AM Changeset in webkit [155293] by commit-queue@webkit.org
  • 2 edits
    1 add in trunk/Tools

[EFL][JHBUILD] Fix evas build with giflib5
https://bugs.webkit.org/show_bug.cgi?id=120863

Original patch from Doug Newgard, at https://phab.enlightenment.org/D200.

Patch by Sergio Correia <Sergio Correia> on 2013-09-08
Reviewed by Anders Carlsson.

  • efl/jhbuild.modules: Apply patch to fix evas build with giflib5.
  • efl/patches/evas-fix-build-with-giflib5.patch: Added.
1:56 AM Changeset in webkit [155292] by Antti Koivisto
  • 11 edits
    2 deletes in trunk/Source/WebCore

Remove ComposedShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=120997

Reviewed by Andreas Kling.

Move the code to NodeRenderingTraversal which is the only client besides Internals.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/ComposedShadowTreeWalker.cpp: Removed.
  • dom/ComposedShadowTreeWalker.h: Removed.
  • dom/NodeRenderingTraversal.cpp:

(WebCore::NodeRenderingTraversal::nodeCanBeDistributed):
(WebCore::NodeRenderingTraversal::findFirstSiblingEnteringInsertionPoints):
(WebCore::NodeRenderingTraversal::findFirstEnteringInsertionPoints):
(WebCore::NodeRenderingTraversal::findFirstFromDistributedNode):
(WebCore::NodeRenderingTraversal::findLastSiblingEnteringInsertionPoints):
(WebCore::NodeRenderingTraversal::findLastEnteringInsertionPoints):
(WebCore::NodeRenderingTraversal::findLastFromDistributedNode):
(WebCore::NodeRenderingTraversal::traverseParent):
(WebCore::NodeRenderingTraversal::traverseFirstChild):
(WebCore::NodeRenderingTraversal::traverseLastChild):
(WebCore::NodeRenderingTraversal::traverseNextSibling):
(WebCore::NodeRenderingTraversal::traversePreviousSibling):

Make former members of ComposedShadowTreeWalker standalone functions in NodeRenderingTraversal.

(WebCore::NodeRenderingTraversal::parentSlow):
(WebCore::NodeRenderingTraversal::nextSiblingSlow):
(WebCore::NodeRenderingTraversal::previousSiblingSlow):
(WebCore::NodeRenderingTraversal::nextInScope):
(WebCore::NodeRenderingTraversal::previousInScope):
(WebCore::NodeRenderingTraversal::parentInScope):
(WebCore::NodeRenderingTraversal::lastChildInScope):

  • testing/Internals.cpp:
  • testing/Internals.h:
  • testing/Internals.idl:
1:49 AM Changeset in webkit [155291] by Carlos Garcia Campos
  • 4 edits
    1 add in releases/WebKitGTK/webkit-2.2/Source

Merge r154683 - [gstreamer] Make sure gstreamer source element is thread-safe
https://bugs.webkit.org/show_bug.cgi?id=115352

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-08-27
Reviewed by Philippe Normand.

Source/WebCore:

GStreamer source element may be created by any gstreamer element on any thread by calling
gst_element_make_from_uri with the URIs handled by the source element.
This patch makes sure the gstreamer source element is thread-safe to avoid issues with it
being created outside the main thread.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webkit_web_src_init):
(webKitWebSrcDispose):
(webKitWebSrcFinalize):
(webKitWebSrcSetProperty):
(webKitWebSrcGetProperty):
(removeTimeoutSources):
(webKitWebSrcStop):
(webKitWebSrcStart):
(webKitWebSrcChangeState):
(webKitWebSrcQueryWithParent):
(webKitWebSrcGetUri):
(webKitWebSrcSetUri):
(webKitWebSrcNeedDataMainCb):
(webKitWebSrcNeedDataCb):
(webKitWebSrcEnoughDataMainCb):
(webKitWebSrcEnoughDataCb):
(webKitWebSrcSeekMainCb):
(webKitWebSrcSeekDataCb):
(webKitWebSrcSetMediaPlayer):
(StreamingClient::StreamingClient):
(StreamingClient::~StreamingClient):
(StreamingClient::createReadBuffer):
(StreamingClient::handleResponseReceived):
(StreamingClient::handleDataReceived):
(StreamingClient::handleNotifyFinished):
(CachedResourceStreamingClient::CachedResourceStreamingClient):
(CachedResourceStreamingClient::~CachedResourceStreamingClient):
(CachedResourceStreamingClient::loadFailed):
(CachedResourceStreamingClient::setDefersLoading):
(CachedResourceStreamingClient::getOrCreateReadBuffer):
(CachedResourceStreamingClient::responseReceived):
(CachedResourceStreamingClient::dataReceived):
(CachedResourceStreamingClient::notifyFinished):
(ResourceHandleStreamingClient::ResourceHandleStreamingClient):
(ResourceHandleStreamingClient::~ResourceHandleStreamingClient):
(ResourceHandleStreamingClient::loadFailed):
(ResourceHandleStreamingClient::setDefersLoading):
(ResourceHandleStreamingClient::getOrCreateReadBuffer):
(ResourceHandleStreamingClient::willSendRequest):
(ResourceHandleStreamingClient::didReceiveResponse):
(ResourceHandleStreamingClient::didReceiveData):
(ResourceHandleStreamingClient::didFinishLoading):
(ResourceHandleStreamingClient::didFail):
(ResourceHandleStreamingClient::wasBlocked):
(ResourceHandleStreamingClient::cannotShowURL):
Make element thread-safe, add support to use the element without a player associated (e.g.
the DASH plugin using the webkitsrc to download fragments), use GMutexLocker to simplify
locks and other general improvements.

Source/WTF:

Add convenience class that simplifies locking and unlocking a GMutex.

  • GNUmakefile.list.am:
  • wtf/gobject/GMutexLocker.h: Added.

(WebCore::GMutexLocker::GMutexLocker):
(WebCore::GMutexLocker::~GMutexLocker):
(WebCore::GMutexLocker::lock):
(WebCore::GMutexLocker::unlock):
(WebCore::GMutexLocker::mutex):

1:48 AM Changeset in webkit [155290] by Carlos Garcia Campos
  • 1 edit in releases/WebKitGTK/webkit-2.2/Source/WebCore/ChangeLog

Adjust internal size on gstreamer source element when receiving data if necessary
https://bugs.webkit.org/show_bug.cgi?id=116534

Patch by Andre Moreira Magalhaes <Andre Moreira Magalhaes> on 2013-06-19
Reviewed by Philippe Normand.

If the size received in didReceiveResponse is smaller than the actual size of the received data
update the internal size and the appsrc size to the proper value.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(StreamingClient::didReceiveData):

1:47 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:24 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:17 AM Changeset in webkit [155289] by akling@apple.com
  • 12 edits in trunk/Source

FrameLoader::policyChecker() should return a reference.
<https://webkit.org/b/120991>

Reviewed by Antti Koivisto.

This function never returns null. Make it return a reference!

1:15 AM Changeset in webkit [155288] by akling@apple.com
  • 5 edits in trunk/Source/WebCore

FrameLoader::mixedContentChecker() should return a reference.
<https://webkit.org/b/120992>

Reviewed by Antti Koivisto.

This function was already just returning the address of a member variable.

1:14 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
1:03 AM WebKitGTK/2.2.x edited by Carlos Garcia Campos
(diff)
12:02 AM Changeset in webkit [155287] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

Separate forward and backward paths in ComposedShadowTreeWalker
https://bugs.webkit.org/show_bug.cgi?id=120979

Reviewed by Andreas Kling.

Have separate first/last and next/previous paths instead of using a direction enum.

Reduce the number of helper functions and give them more understandable names.

  • dom/ComposedShadowTreeWalker.cpp:

(WebCore::findFirstSiblingEnteringInsertionPoints):
(WebCore::findFirstEnteringInsertionPoints):
(WebCore::findFirstFromDistributedNode):
(WebCore::findLastSiblingEnteringInsertionPoints):
(WebCore::findLastEnteringInsertionPoints):
(WebCore::findLastFromDistributedNode):
(WebCore::ComposedShadowTreeWalker::firstChild):
(WebCore::ComposedShadowTreeWalker::traverseFirstChild):
(WebCore::ComposedShadowTreeWalker::lastChild):
(WebCore::ComposedShadowTreeWalker::traverseLastChild):
(WebCore::ComposedShadowTreeWalker::nextSibling):
(WebCore::ComposedShadowTreeWalker::previousSibling):
(WebCore::ComposedShadowTreeWalker::traverseNextSibling):
(WebCore::ComposedShadowTreeWalker::traversePreviousSibling):

  • dom/ComposedShadowTreeWalker.h:
Note: See TracTimeline for information about the timeline view.