Timeline
Nov 13, 2014:
- 10:57 PM Changeset in webkit [176116] by
-
- 2 edits in trunk/Source/WebKit2
Two WKWebView internal methods are implemented in a category
https://bugs.webkit.org/show_bug.cgi?id=138728
Reviewed by Tim HOrton.
Moved the implementations from the category to the class.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _ignoresNonWheelMouseEvents]):
(-[WKWebView _setIgnoresNonWheelMouseEvents:]):
- 8:26 PM Changeset in webkit [176115] by
-
- 8 edits in trunk/Source/WebCore
[mac] Keep around more decoded image data, since it's purgeable
https://bugs.webkit.org/show_bug.cgi?id=125273
<rdar://problem/13205438>
Reviewed by Simon Fraser.
No new tests, just an optimization.
Instead of throwing away decoded image data eagerly, allow the operating
system to manage the memory via the standard purgeability mechanism,
where it can.
This improves the performance on some pathological cases (extremely large
animated GIFs) by up to 8x.
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::pruneLiveResourcesToSize):
Don't prune live resources' decoded data if it is purgeable.
- platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::destroyDecodedDataIfNecessary):
Don't eagerly throw away decoded image data if it's purgeable.
- loader/cache/CachedImage.h:
- loader/cache/CachedResource.h:
(WebCore::CachedResource::decodedDataIsPurgeable):
- platform/graphics/BitmapImage.h:
- platform/graphics/Image.h:
(WebCore::Image::decodedDataIsPurgeable):
- 6:53 PM Changeset in webkit [176114] by
-
- 2 edits in trunk/Source/WebCore
Addressing post-review comment
https://bugs.webkit.org/show_bug.cgi?id=138633
- platform/spi/cg/CoreGraphicsSPI.h:
- 6:45 PM Changeset in webkit [176113] by
-
- 185 edits in trunk/LayoutTests
Rebaseline iOS layout tests
https://bugs.webkit.org/show_bug.cgi?id=138721
Reviewed by Simon Fraser.
Rebaseline many of the failures in compositing tests.
- platform/ios-simulator/compositing/absolute-inside-out-of-view-fixed-expected.txt:
- platform/ios-simulator/compositing/backing/backface-visibility-flip-expected.txt:
- platform/ios-simulator/compositing/backing/backface-visibility-in-3dtransformed-expected.txt:
- platform/ios-simulator/compositing/backing/border-radius-no-backing-expected.txt:
- platform/ios-simulator/compositing/backing/child-layer-no-backing-expected.txt:
- platform/ios-simulator/compositing/backing/filter-no-backing-expected.txt:
- platform/ios-simulator/compositing/backing/inline-block-no-backing-expected.txt:
- platform/ios-simulator/compositing/backing/masked-child-no-backing-expected.txt:
- platform/ios-simulator/compositing/backing/no-backing-for-clip-expected.txt:
- platform/ios-simulator/compositing/backing/no-backing-for-clip-overhang-expected.txt:
- platform/ios-simulator/compositing/backing/no-backing-for-clip-overlap-expected.txt:
- platform/ios-simulator/compositing/backing/no-backing-for-perspective-expected.txt:
- platform/ios-simulator/compositing/backing/replaced-child-no-backing-expected.txt:
- platform/ios-simulator/compositing/backing/whitespace-nodes-no-backing-expected.txt:
- platform/ios-simulator/compositing/bounds-in-flipped-writing-mode-expected.txt:
- platform/ios-simulator/compositing/clip-child-by-non-stacking-ancestor-expected.txt:
- platform/ios-simulator/compositing/columns/ancestor-clipped-in-paginated-expected.txt:
- platform/ios-simulator/compositing/columns/clipped-in-paginated-expected.txt:
- platform/ios-simulator/compositing/columns/composited-columns-expected.txt:
- platform/ios-simulator/compositing/columns/composited-columns-vertical-rl-expected.txt:
- platform/ios-simulator/compositing/columns/composited-in-paginated-expected.txt:
- platform/ios-simulator/compositing/columns/composited-in-paginated-rl-expected.txt:
- platform/ios-simulator/compositing/columns/composited-in-paginated-writing-mode-rl-expected.txt:
- platform/ios-simulator/compositing/columns/composited-lr-paginated-repaint-expected.txt:
- platform/ios-simulator/compositing/columns/composited-nested-columns-expected.txt:
- platform/ios-simulator/compositing/columns/composited-rl-paginated-repaint-expected.txt:
- platform/ios-simulator/compositing/columns/hittest-composited-in-paginated-expected.txt:
- platform/ios-simulator/compositing/columns/rotated-in-paginated-expected.txt:
- platform/ios-simulator/compositing/columns/untransformed-composited-in-paginated-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/background-clip-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/background-color-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/body-background-painted-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/body-background-skipped-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/control-layer-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/filter-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/hidden-with-visible-child-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/hidden-with-visible-text-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/layer-opacity-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/layer-transform-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/overflow-hidden-child-layers-expected.txt:
- platform/ios-simulator/compositing/contents-opaque/visibility-hidden-expected.txt:
- platform/ios-simulator/compositing/contents-scale/animating-expected.txt:
- platform/ios-simulator/compositing/contents-scale/rounded-contents-scale-expected.txt:
- platform/ios-simulator/compositing/contents-scale/scaled-ancestor-expected.txt:
- platform/ios-simulator/compositing/contents-scale/simple-scale-expected.txt:
- platform/ios-simulator/compositing/contents-scale/z-translate-expected.txt:
- platform/ios-simulator/compositing/filters/sw-layer-overlaps-hw-shadow-expected.txt:
- platform/ios-simulator/compositing/filters/sw-nested-shadow-overlaps-hw-nested-shadow-expected.txt:
- platform/ios-simulator/compositing/filters/sw-shadow-overlaps-hw-layer-expected.txt:
- platform/ios-simulator/compositing/filters/sw-shadow-overlaps-hw-shadow-expected.txt:
- platform/ios-simulator/compositing/fixed-image-loading-expected.txt:
- platform/ios-simulator/compositing/geometry/ancestor-overflow-change-expected.txt:
- platform/ios-simulator/compositing/geometry/bounds-clipped-composited-child-expected.txt:
- platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-composited-descendant-expected.txt:
- platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-dynamic-expected.txt:
- platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-dynamic-negzindex-expected.txt:
- platform/ios-simulator/compositing/geometry/bounds-ignores-hidden-expected.txt:
- platform/ios-simulator/compositing/geometry/clip-expected.txt:
- platform/ios-simulator/compositing/geometry/clip-inside-expected.txt:
- platform/ios-simulator/compositing/geometry/composited-in-columns-expected.txt:
- platform/ios-simulator/compositing/geometry/fixed-position-composited-switch-expected.txt:
- platform/ios-simulator/compositing/geometry/flipped-writing-mode-expected.txt:
- platform/ios-simulator/compositing/geometry/foreground-layer-expected.txt:
- platform/ios-simulator/compositing/geometry/layer-due-to-layer-children-deep-switch-expected.txt:
- platform/ios-simulator/compositing/geometry/layer-due-to-layer-children-switch-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-fixed-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-fixed-positioned-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-overflow-root-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-positioned-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-positioned-transition-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-transformed-expected.txt:
- platform/ios-simulator/compositing/geometry/limit-layer-bounds-transformed-overflow-expected.txt:
- platform/ios-simulator/compositing/geometry/negative-text-indent-with-overflow-hidden-layer-expected.txt:
- platform/ios-simulator/compositing/geometry/preserve-3d-switching-expected.txt:
- platform/ios-simulator/compositing/geometry/vertical-scroll-composited-expected.txt:
- platform/ios-simulator/compositing/iframes/become-composited-nested-iframes-expected.txt:
- platform/ios-simulator/compositing/iframes/become-overlapped-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/composited-parent-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/connect-compositing-iframe-delayed-expected.txt:
- platform/ios-simulator/compositing/iframes/connect-compositing-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/connect-compositing-iframe2-expected.txt:
- platform/ios-simulator/compositing/iframes/connect-compositing-iframe3-expected.txt:
- platform/ios-simulator/compositing/iframes/enter-compositing-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/iframe-resize-expected.txt:
- platform/ios-simulator/compositing/iframes/iframe-size-from-zero-expected.txt:
- platform/ios-simulator/compositing/iframes/iframe-size-to-zero-expected.txt: Progression.
- platform/ios-simulator/compositing/iframes/iframe-src-change-expected.txt: Progression.
- platform/ios-simulator/compositing/iframes/invisible-nested-iframe-hide-expected.txt:
- platform/ios-simulator/compositing/iframes/leave-compositing-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/overlapped-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/overlapped-iframe-iframe-expected.txt:
- platform/ios-simulator/compositing/iframes/overlapped-nested-iframes-expected.txt:
- platform/ios-simulator/compositing/iframes/page-cache-layer-tree-expected.txt:
- platform/ios-simulator/compositing/iframes/resizer-expected.txt:
- platform/ios-simulator/compositing/iframes/scrolling-iframe-expected.txt:
- platform/ios-simulator/compositing/images/clip-on-directly-composited-image-expected.txt:
- platform/ios-simulator/compositing/layer-creation/animation-overlap-with-children-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-and-transform-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-change-out-of-view-in-view-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-out-of-view-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-out-of-view-scaled-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-out-of-view-scaled-scroll-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-transformed-into-view-expected.txt:
- platform/ios-simulator/compositing/layer-creation/fixed-position-under-transform-expected.txt:
- platform/ios-simulator/compositing/layer-creation/no-compositing-for-fixed-position-under-transform-expected.txt:
- platform/ios-simulator/compositing/layer-creation/no-compositing-for-preserve-3d-expected.txt:
- platform/ios-simulator/compositing/layer-creation/no-compositing-for-sticky-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overflow-scroll-overlap-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-child-layer-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-clipping-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-transformed-3d-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-transformed-and-clipped-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-transformed-layer-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-transformed-preserved-3d-expected.txt:
- platform/ios-simulator/compositing/layer-creation/overlap-transforms-expected.txt:
- platform/ios-simulator/compositing/layer-creation/rotate3d-overlap-expected.txt:
- platform/ios-simulator/compositing/layer-creation/scroll-partial-update-expected.txt:
- platform/ios-simulator/compositing/layer-creation/stacking-context-overlap-expected.txt:
- platform/ios-simulator/compositing/layer-creation/stacking-context-overlap-nested-expected.txt:
- platform/ios-simulator/compositing/layer-creation/translatez-overlap-expected.txt:
- platform/ios-simulator/compositing/masks/mask-layer-size-expected.txt:
- platform/ios-simulator/compositing/overflow-trumps-transform-style-expected.txt:
- platform/ios-simulator/compositing/overflow/automatically-opt-into-composited-scrolling-expected.txt: Progression.
- platform/ios-simulator/compositing/overflow/clip-descendents-expected.txt:
- platform/ios-simulator/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants-expected.txt:
- platform/ios-simulator/compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2-expected.txt:
- platform/ios-simulator/compositing/overflow/content-gains-scrollbars-expected.txt:
- platform/ios-simulator/compositing/overflow/content-loses-scrollbars-expected.txt:
- platform/ios-simulator/compositing/overflow/overflow-auto-with-touch-expected.txt:
- platform/ios-simulator/compositing/overflow/overflow-auto-with-touch-toggle-expected.txt:
- platform/ios-simulator/compositing/overflow/overflow-overlay-with-touch-expected.txt:
- platform/ios-simulator/compositing/overflow/overflow-scrollbar-layer-positions-expected.txt:
- platform/ios-simulator/compositing/overflow/overflow-scrollbar-layers-expected.txt:
- platform/ios-simulator/compositing/overflow/resize-painting-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-clip-descendant-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-from-abs-in-named-flow-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-from-outflow-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-got-transformed-parent-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-lost-transformed-parent-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-overlap-composited-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-in-named-flow-transformed-parent-expected.txt:
- platform/ios-simulator/compositing/regions/fixed-transformed-in-named-flow-expected.txt:
- platform/ios-simulator/compositing/repaint/absolute-painted-into-composited-ancestor-expected.txt:
- platform/ios-simulator/compositing/repaint/become-overlay-composited-layer-expected.txt:
- platform/ios-simulator/compositing/repaint/fixed-background-scroll-expected.txt:
- platform/ios-simulator/compositing/repaint/invalidations-on-composited-layers-expected.txt:
- platform/ios-simulator/compositing/repaint/positioned-movement-expected.txt:
- platform/ios-simulator/compositing/repaint/repaint-on-layer-grouping-change-expected.txt:
- platform/ios-simulator/compositing/repaint/resize-repaint-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-absolute-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-absolute-overflow-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-absolute-overflow-scrolled-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-fixed-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-fixed-overflow-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-fixed-overflow-scrolled-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-iframe-absolute-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-iframe-absolute-overflow-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-iframe-fixed-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-iframe-relative-expected.txt:
- platform/ios-simulator/compositing/rtl/rtl-relative-expected.txt:
- platform/ios-simulator/compositing/scrolling/touch-scroll-to-clip-expected.txt:
- platform/ios-simulator/compositing/tiled-layers-hidpi-expected.txt:
- platform/ios-simulator/compositing/tiling/backface-preserve-3d-tiled-expected.txt:
- platform/ios-simulator/compositing/tiling/crash-reparent-tiled-layer-expected.txt:
- platform/ios-simulator/compositing/tiling/huge-layer-add-remove-child-expected.txt:
- platform/ios-simulator/compositing/tiling/huge-layer-img-expected.txt:
- platform/ios-simulator/compositing/tiling/huge-layer-with-layer-children-expected.txt:
- platform/ios-simulator/compositing/tiling/huge-layer-with-layer-children-resize-expected.txt:
- platform/ios-simulator/compositing/tiling/rotated-tiled-clamped-expected.txt:
- platform/ios-simulator/compositing/tiling/rotated-tiled-preserve3d-clamped-expected.txt:
- platform/ios-simulator/compositing/tiling/tile-cache-zoomed-expected.txt:
- platform/ios-simulator/compositing/tiling/tiled-layer-resize-expected.txt:
- platform/ios-simulator/compositing/visibility/layer-visible-content-expected.txt:
- platform/ios-simulator/compositing/visibility/visibility-image-layers-dynamic-expected.txt:
- platform/ios-simulator/compositing/visible-rect/2d-transformed-expected.txt:
- platform/ios-simulator/compositing/visible-rect/3d-transform-style-expected.txt:
- platform/ios-simulator/compositing/visible-rect/3d-transformed-expected.txt:
- platform/ios-simulator/compositing/visible-rect/clipped-by-viewport-expected.txt:
- platform/ios-simulator/compositing/visible-rect/clipped-visible-rect-expected.txt:
- platform/ios-simulator/compositing/visible-rect/flipped-preserve-3d-expected.txt:
- platform/ios-simulator/compositing/visible-rect/iframe-and-layers-expected.txt:
- platform/ios-simulator/compositing/visible-rect/nested-transform-expected.txt:
- platform/ios-simulator/compositing/visible-rect/scrolled-expected.txt:
- 6:19 PM Changeset in webkit [176112] by
-
- 23 edits1 copy1 move1 add in trunk/Source
Move FontMac and FontCacheMac off of WKSI
https://bugs.webkit.org/show_bug.cgi?id=138633
Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2014-11-13
Reviewed by NOBODY (OOPS!).
Source/WebCore:
No new tests because there is no behavior change.
- WebCore.exp.in:
- WebCore.order:
- WebCore.vcxproj/WebCoreCG.props:
- WebCore.xcodeproj/project.pbxproj:
- platform/graphics/ios/FontCacheIOS.mm:
(WebCore::FontCache::platformInit):
- platform/graphics/mac/FontCacheMac.mm:
(WebCore::FontCache::platformInit):
(WebCore::FontCache::systemFallbackForCharacters):
- platform/graphics/mac/FontMac.mm:
(WebCore::isIntegral):
(WebCore::setCGFontRenderingMode):
(WebCore::Font::drawGlyphs):
- platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
- platform/graphics/win/FontCacheWin.cpp:
(WebCore::FontCache::platformInit):
- platform/ios/WebCoreSystemInterfaceIOS.mm:
- platform/mac/WebCoreSystemInterface.h:
- platform/mac/WebCoreSystemInterface.mm:
- platform/spi/cocoa/CoreGraphicsSPI.h: Copied from Source/WebCore/platform/spi/cocoa/CGFontUnicodeSupportSPI.h.
- platform/spi/cocoa/CoreTextSPI.h:
- platform/spi/mac/NSFontSPI.h: Renamed from Source/WebCore/platform/spi/cocoa/CGFontUnicodeSupportSPI.h.
Source/WebKit/mac:
- WebCoreSupport/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
- WebKit.order:
Source/WebKit2:
- WebProcess/WebCoreSupport/mac/WebSystemInterface.mm:
(InitWebCoreSystemInterface):
- mac/WebKit2.order:
- 6:16 PM Changeset in webkit [176111] by
-
- 4 edits in trunk/Source/WebCore
Move 'image-resolution' CSS property to the new StyleBuilder
https://bugs.webkit.org/show_bug.cgi?id=138715
Reviewed by Andreas Kling.
Move 'image-resolution' CSS property from DeprecatedStyleBuilder to
the new StyleBuilder by using custom code.
No new tests, no behavior change.
- css/CSSPropertyNames.in:
- css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
(WebCore::ApplyPropertyImageResolution::applyInheritValue): Deleted.
(WebCore::ApplyPropertyImageResolution::applyInitialValue): Deleted.
(WebCore::ApplyPropertyImageResolution::applyValue): Deleted.
(WebCore::ApplyPropertyImageResolution::createHandler): Deleted.
- css/StyleBuilderCustom.h:
(WebCore::StyleBuilderFunctions::applyInheritImageResolution):
(WebCore::StyleBuilderFunctions::applyInitialImageResolution):
(WebCore::StyleBuilderFunctions::applyValueImageResolution):
- 5:15 PM Changeset in webkit [176110] by
-
- 8 edits in trunk/Source/WebCore
Unreviewed, rolling out r176106.
https://bugs.webkit.org/show_bug.cgi?id=138719
needs build love (Requested by kling on #webkit).
Reverted changeset:
"[mac] Keep around more decoded image data, since it's
purgeable"
https://bugs.webkit.org/show_bug.cgi?id=125273
http://trac.webkit.org/changeset/176106
Patch by Commit Queue <commit-queue@webkit.org> on 2014-11-13
- 5:07 PM Changeset in webkit [176109] by
-
- 21 edits in trunk/Source/JavaScriptCore
Add scope operand to op_new_func* byte codes
https://bugs.webkit.org/show_bug.cgi?id=138707
Reviewed by Mark Lam.
Added scope operand to op_new_func and op_new_func_expr to replace the implicit use
of exec->scope().
- bytecode/BytecodeList.json: Increased size of op_new_func & op_new_func_expr bytecodes.
- bytecode/CodeBlock.cpp:
(JSC::CodeBlock::dumpBytecode): Added scope operand to dump output.
- bytecompiler/BytecodeGenerator.cpp:
(JSC::BytecodeGenerator::emitNewFunctionInternal):
(JSC::BytecodeGenerator::emitNewFunctionExpression):
Emit scope operand.
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::parseBlock):
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
Added new scope source nodes to NewFunction, NewFunctionExpression & NewFunctionNoCheck.
- dfg/DFGSpeculativeJIT.cpp:
(JSC::DFG::SpeculativeJIT::compileNewFunctionNoCheck):
(JSC::DFG::SpeculativeJIT::compileNewFunctionExpression):
- dfg/DFGSpeculativeJIT32_64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
- dfg/DFGSpeculativeJIT64.cpp:
(JSC::DFG::SpeculativeJIT::compile):
Use scope children when making new function JIT_Operation calls. Use JSScope* value instead of
exec->scope().
- dfg/DFGOperations.h:
- dfg/DFGOperations.cpp:
- dfg/DFGSpeculativeJIT.h:
(JSC::DFG::SpeculativeJIT::callOperation):
- jit/JIT.h:
- jit/JITInlines.h:
(JSC::JIT::callOperation):
- jit/JITOpcodes.cpp:
(JSC::JIT::emit_op_new_func):
(JSC::JIT::emit_op_new_func_exp):
- jit/JITOperations.cpp:
- jit/JITOperations.h:
Added new Jsc JIT_Operation parameter type for JSScope* values. Created declarations and
definitions for new JIT_Operations with Jsc parameters. Use the JSScope* parameters in lieu
of exec->scope() in operationNewFunction().
Removed comment for unused Jsa (JSLexicalEnvironment*) JIT_Operation parameter type.
- llint/LLIntSlowPaths.cpp:
(JSC::LLInt::LLINT_SLOW_PATH_DECL):
Use the scope operand instead of exec->scope().
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
Changed the operand indecies for added scope operand.
- 4:46 PM Changeset in webkit [176108] by
-
- 21 edits in trunk/Source
Context menus should not offer the "Download video" option for videos that cannot
be downloaded
https://bugs.webkit.org/show_bug.cgi?id=138530
-and corresponding-
rdar://problem/18919130
Patch by Eric Carlson <eric.carlson@apple.com> on 2014-11-13
Reviewed by Tim Horton.
Source/WebCore:
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::parseAttribute):
- html/HTMLMediaElement.h:
- page/ContextMenuController.cpp:
(WebCore::ContextMenuController::populate):
- platform/graphics/MediaPlayer.cpp:
(WebCore::MediaPlayer::canSaveMediaData):
(WebCore::MediaPlayer::supportsSave): Deleted.
- platform/graphics/MediaPlayer.h:
- platform/graphics/MediaPlayerPrivate.h:
(WebCore::MediaPlayerPrivateInterface::supportsFullscreen):
(WebCore::MediaPlayerPrivateInterface::canSaveMediaData):
(WebCore::MediaPlayerPrivateInterface::supportsSave): Deleted.
- platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
(WebCore::MediaPlayerPrivateAVFoundation::resolvedURL):
(WebCore::MediaPlayerPrivateAVFoundation::canSaveMediaData):
- platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::resolvedURL):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
(WebCore::MediaPlayerPrivateGStreamer::canSaveMediaData):
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
- platform/graphics/mac/MediaPlayerPrivateQTKit.h:
- platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
(WebCore::MediaPlayerPrivateQTKit::canSaveMediaData):
- rendering/HitTestResult.cpp:
(WebCore::HitTestResult::isDownloadableMedia):
Source/WebKit2:
Expose isDownloadableMedia() to the InjectedBundleHitTestResult.
- WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.cpp:
(WKBundleHitTestResultIsDownloadableMedia):
- WebProcess/InjectedBundle/API/c/WKBundleHitTestResult.h:
- WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
(WebKit::InjectedBundleHitTestResult::isDownloadableMedia):
- WebProcess/InjectedBundle/InjectedBundleHitTestResult.h:
- 4:37 PM Changeset in webkit [176107] by
-
- 2 edits in trunk/Source/WebKit/mac
WK1: Clean up WebActionMenuController to use the _hitTestResult ivar
https://bugs.webkit.org/show_bug.cgi?id=138716
-and corresponding-
rdar://problem/18977222
Reviewed by Tim Horton.
It’s not necessary to use the WebElementDictionary for so many things now that we
are caching the HitTestResult. We should just use the HitTestResult.
- WebView/WebActionMenuController.mm:
(-[WebActionMenuController prepareForMenu:withEvent:]):
(-[WebActionMenuController _openURLFromActionMenu:]):
(-[WebActionMenuController _addToReadingListFromActionMenu:]):
(elementBoundingBoxFromNode):
(-[WebActionMenuController _quickLookURLFromActionMenu:]):
(-[WebActionMenuController _defaultMenuItemsForLink]):
(-[WebActionMenuController _defaultMenuItemsForImage]):
(-[WebActionMenuController _defaultMenuItemsForVideo]):
(-[WebActionMenuController _defaultMenuItemsForText]):
(-[WebActionMenuController _defaultMenuItemsForEditableText]):
(-[WebActionMenuController _defaultMenuItemsForEditableTextWithSuggestions]):
(-[WebActionMenuController _defaultMenuItemsForWhitespaceInEditableArea]):
(-[WebActionMenuController _createActionMenuItemForTag:]):
(-[WebActionMenuController _defaultMenuItems]):
(-[WebActionMenuController _elementBoundingBoxFromDOMElement:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForLink:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForImage:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForVideo:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForText:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForEditableText:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForEditableTextWithSuggestions:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForWhitespaceInEditableArea:]): Deleted.
(-[WebActionMenuController _createActionMenuItemForTag:withHitTestResult:]): Deleted.
(-[WebActionMenuController _defaultMenuItemsForHitTestResult:]): Deleted.
- 4:36 PM Changeset in webkit [176106] by
-
- 8 edits in trunk/Source/WebCore
[mac] Keep around more decoded image data, since it's purgeable
<https://webkit.org/b/125273>
<rdar://problem/13205438>
Patch by Tim Horton <timothy_horton@apple.com> on 2014-11-02
Reviewed by Simon Fraser and Andreas Kling.
No new tests, just an optimization.
Instead of throwing away decoded image data eagerly, allow the operating
system to manage the memory via the standard purgeability mechanism,
where it can.
This improves the performance on some pathological cases (extremely large
animated GIFs) by up to 8x.
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::pruneLiveResourcesToSize):
Don't prune live resources' decoded data if it is purgeable.
- platform/graphics/BitmapImage.cpp:
(WebCore::BitmapImage::destroyDecodedDataIfNecessary):
Don't eagerly throw away decoded image data if it's purgeable.
- loader/cache/CachedImage.h:
- loader/cache/CachedResource.h:
(WebCore::CachedResource::decodedDataIsPurgeable):
- platform/graphics/BitmapImage.h:
- platform/graphics/Image.h:
(WebCore::Image::decodedDataIsPurgeable):
- 4:34 PM Changeset in webkit [176105] by
-
- 12 edits in trunk/Source
[iOS] NSGeometry data types are not available in the public SDK
https://bugs.webkit.org/show_bug.cgi?id=137536
Reviewed by David Kilzer.
Source/WebCore:
Towards building iOS WebKit with the public iOS SDK, define NSGeometry
data types and functions in terms of CGGeometry data types and functions
because the former is SPI on iOS.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm: Include
header WAKAppKitStubs.h when building for iOS. Otherwise, include header NSGeometry.h.
- platform/graphics/ca/mac/PlatformCALayerMac.mm: Remove import of private header NSGeometry.h.
We will use the NSGeometry data types defined in WAKAppKitStubs.h, which is implicitly imported
by header WAKWindow.h.
- platform/graphics/mac/MediaPlayerProxy.h: Substitute WAKAppKitStubs.h for NSGeometry.h.
- platform/ios/PlatformEventFactoryIOS.mm: Ditto. Also fix up style issues with #import directives.
- platform/ios/WebEvent.mm: Ditto.
- platform/ios/wak/WAKAppKitStubs.h: Define typedefs and macros that map NSGeometry data types
and functions to the analogous CGGeometry data types and functions. Also, remove #ifdef OBJC-
guard as the existing content in WAKAppKitStubs.h assumes that this file will only be included
in an Objective-C/Objective-C++ file.
- platform/ios/wak/WAKView.h: Import header WAKAppKitStubs.h instead of defining macros for some
NSGeometry data types.
Source/WebKit/mac:
Substitute header WAKAppKitStubs.h for NSGeometry.h as the latter is a
private header.
- DOM/WebDOMOperationsPrivate.h:
Source/WebKit2:
Substitute header WAKAppKitStubs.h for NSGeometry.h as the latter is a
private header.
- Shared/ios/NativeWebTouchEventIOS.mm:
- 4:33 PM Changeset in webkit [176104] by
-
- 2 edits in trunk/Tools
https://bugs.webkit.org/show_bug.cgi?id=138628
A patch that doesn't apply is stuck in commit queue
Rubber-stamped by David Kilzer.
This also hopefully fixes other issues:
- a patch that has cq+ flag set by a non-committer kills commit queue;
- EWS never reports failing tests, and keeps spinning instead.
- Scripts/webkitpy/common/net/bugzilla/bugzilla.py:
(Bugzilla.set_flag_on_attachment):
(Bugzilla.obsolete_attachment):
Apply the fix from r174797 to more places.
- 4:10 PM Changeset in webkit [176103] by
-
- 7 edits in tags/Safari-601.1.9/Source/WebCore
Merged r176090. rdar://problem/18963531
- 3:50 PM Changeset in webkit [176102] by
-
- 5 edits in branches/safari-600.3-branch/Source
Versioning.
- 3:47 PM Changeset in webkit [176101] by
-
- 1 copy in tags/Safari-600.3.6
New Tag.
- 3:43 PM Changeset in webkit [176100] by
-
- 2 edits in trunk/Source/JavaScriptCore
Change X86/64 JIT probes to save/restore xmm regs as double instead of m128. [Follow up]
<https://webkit.org/b/138708>
Reviewed by Michael Saboff.
Removed a stale comment and a now unnecessary #include.
- assembler/X86Assembler.h:
- 3:30 PM Changeset in webkit [176099] by
-
- 3 edits in trunk/Source/WebKit/mac
WK1: Support default actions for video
https://bugs.webkit.org/show_bug.cgi?id=138713
-and corresponding-
rdar://problem/18877520
Reviewed by Tim Horton.
Call setToNonShadowAncestor() for media HitTestResults.
- WebView/WebActionMenuController.mm:
(-[WebActionMenuController performHitTestAtPoint:]):
Default items and actions.
(-[WebActionMenuController _defaultMenuItemsForVideo:]):
(-[WebActionMenuController _copyVideoURL:]):
(-[WebActionMenuController _saveVideoToDownloads:]):
(-[WebActionMenuController _createActionMenuItemForTag:withHitTestResult:]):
(-[WebActionMenuController _defaultMenuItemsForHitTestResult:]):
- WebView/WebUIDelegatePrivate.h:
- 3:30 PM Changeset in webkit [176098] by
-
- 4 edits in trunk/Source/JavaScriptCore
Unreviewed, rolling out r176087.
https://bugs.webkit.org/show_bug.cgi?id=138714
Broke the build (Requested by ap on #webkit).
Reverted changeset:
"Update WebKit to build with LLVM TOT"
https://bugs.webkit.org/show_bug.cgi?id=138519
http://trac.webkit.org/changeset/176087
- 3:27 PM Changeset in webkit [176097] by
-
- 11 edits in trunk/Source
[WK2] Fire a layout milestone on session restore based on render tree size
https://bugs.webkit.org/show_bug.cgi?id=138711
rdar://problem/16033854
Reviewed by Anders Carlsson.
Source/WebCore:
New layout milestone for session restore based on render tree size. Only used
in WK2 at present.
- page/LayoutMilestones.h:
Source/WebKit2:
Add a session-restore layout milestone which fires after restoring a session,
when the render tree size reaches 50% of the size saved in the session state.
- Shared/SessionState.h: Add renderTreeSize.
- UIProcess/API/Cocoa/WKWebView.mm:
(layoutMilestones): Translate from SPI to WebCore milestones.
- UIProcess/API/Cocoa/WKWebViewPrivate.h: New iOS-only milestone, er, event.
- UIProcess/Cocoa/NavigationState.mm:
(WebKit::renderingProgressEvents): Translate from WebCore milestone to rendering event.
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::WebPageProxy): Init stuff.
(WebKit::WebPageProxy::sessionState):
(WebKit::WebPageProxy::restoreFromSessionState): Zero out the target render tree size,
then get it out of session state and set the flag to say that we haven't reached it yet.
(WebKit::WebPageProxy::listenForLayoutMilestones): Set a flag to know that we should fire
the milestone. The other milestones get sent directly to WebCore.
- UIProcess/WebPageProxy.h:
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::exceedsRenderTreeSizeSizeThreshold): Return true when we've reached 50%.
(WebKit::WebPageProxy::didCommitLayerTree): Fire the milestone when appropriate.
- UIProcess/mac/LegacySessionStateCoding.cpp: Rev the session state data for iOS
(where doing so is less disruptive). Standardize some CFString constants.
(WebKit::encodeSessionHistory): Wrap for legibility.
(WebKit::encodeLegacySessionState): Make a CFNumber for render tree size, and store
it in the root dictionary.
(WebKit::decodeBackForwardTreeNode): Move a comment to match another similar block.
(WebKit::decodeLegacySessionState): Decode render tree size and store it.
- 3:22 PM Changeset in webkit [176096] by
-
- 4 edits in trunk
Policy client not called for navigations through the page cache
https://bugs.webkit.org/show_bug.cgi?id=138703
Reviewed by Alexey Proskuryakov.
Source/WebCore:
Test added to TestWebKitAPI/Tests/WebKit2Cocoa/Navigation.mm.
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadDifferentDocumentItem): When using a cached page, which already
has a document loader, set the document loader’s triggering action (so that the policy
client sees that this is a back/forward navigation) and clear its last checked request (so
that the policy client gets called).
Tools:
- TestWebKitAPI/Tests/WebKit2Cocoa/Navigation.mm:
(-[DecidePolicyForPageCacheNavigationDelegate webView:didFinishNavigation:]):
(-[DecidePolicyForPageCacheNavigationDelegate webView:decidePolicyForNavigationAction:decisionHandler:]):
- 3:00 PM Changeset in webkit [176095] by
-
- 6 edits in trunk/Source/JavaScriptCore
Change X86/64 JIT probes to save/restore xmm regs as double instead of m128.
<https://webkit.org/b/138708>
Reviewed by Michael Saboff.
The JIT code only uses the xmm regs as double registers. This patch changes
the storage types of the FP registers in X86Assembler.h to double instead of
m128, and updates the X86 and X86_64 JIT probe implementations accordingly.
Also made some minor cosmetic changes in the output of the probe dump functions.
- assembler/MacroAssemblerX86Common.cpp:
(JSC::MacroAssemblerX86Common::ProbeContext::dumpCPURegisters):
- assembler/X86Assembler.h:
- jit/JITStubsX86.h:
- jit/JITStubsX86Common.h:
- jit/JITStubsX86_64.h:
- 2:59 PM Changeset in webkit [176094] by
-
- 2 edits in trunk/LayoutTests
Update expected .png for platform/mac/editing/input/devanagari-ligature.html
https://bugs.webkit.org/show_bug.cgi?id=138712
This doesn't actually fix the test, it just updates the image.
Reviewed by Zalan Bujtas.
- platform/mac/editing/input/devanagari-ligature-expected.png:
- 2:51 PM Changeset in webkit [176093] by
-
- 2 edits in trunk/Source/WebKit/mac
WK1: Update icon for Add to Reading List
https://bugs.webkit.org/show_bug.cgi?id=138710
<rdar://problem/18975774>
Reviewed by Beth Dakin.
- WebView/WebActionMenuController.mm:
(-[WebActionMenuController _createActionMenuItemForTag:withHitTestResult:]):
Use the right icon, matching WebKit2.
- 2:15 PM WebKitGTK/2.6.x edited by
- Adding a proposed merge for the next stable release (diff)
- 2:14 PM Changeset in webkit [176092] by
-
- 10 edits in branches/safari-600.3-branch/Source/WebKit2
Merged r176086. rdar://problems/18947156
- 2:11 PM Changeset in webkit [176091] by
-
- 5 edits2 adds in trunk
AX: [ATK] Do not return ATK_ROLE_UNKNOWN for null or otherwise invalid accessible objects
https://bugs.webkit.org/show_bug.cgi?id=137867
Reviewed by Chris Fleizach.
Source/WebCore:
Return ATK_ROLE_INVALID for null or otherwise invalid accessible objects.
Test: platform/gtk/accessibility/detached-object-role.html
- accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
(webkitAccessibleGetRole):
Tools:
Add ATK_ROLE_INVALID to roleToString. Remove the null AtkRole check in
AccessibilityUIElement::role: ATK_ROLE_INVALID = 0, and we need to be
able to test for the presence of ATK_ROLE_INVALID.
- WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:
(WTR::AccessibilityUIElement::role):
LayoutTests:
- platform/gtk/accessibility/detached-object-role-expected.txt: Added.
- platform/gtk/accessibility/detached-object-role.html: Added.
- 2:10 PM Changeset in webkit [176090] by
-
- 7 edits in trunk/Source/WebCore
[iOS] update optimized fullscreen media controls artwork
https://bugs.webkit.org/show_bug.cgi?id=138705
Reviewed by Dean Jackson.
- Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::mediaUIImageData): Remove one button.
- Modules/mediacontrols/MediaControlsHost.idl:
- Modules/mediacontrols/mediaControlsApple.js:
(Controller.prototype.controlsAreHidden): Add parentheses to fix the logic.
- Modules/mediacontrols/mediaControlsiOS.js:
(ControllerIOS.prototype.shouldHaveStartPlaybackButton): The big play button should not be
visible during playback.
(ControllerIOS.prototype.createControls): No longer necessary to insert style dynamically,
(ControllerIOS.prototype.setPlaying): Call the base class first so "isPlaying" is set before
calling updateControls, which calls shouldHaveStartPlaybackButton.
- platform/ios/WebCoreSystemInterfaceIOS.h: Update constants.
- rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::mediaControlsStyleSheet): Add button style to the media controls sheet.
- 1:57 PM Changeset in webkit [176089] by
-
- 1 edit1 move in trunk/LayoutTests
Rename ios-sim to ios-sim-deprecated.
The results here are historical and new results should go into ios-simulator
directory. Eventually, we should get rid of this directory completely.
Rubber-stamped by Simon Fraser.
- platform/ios-sim: Removed.
- platform/ios-sim-deprecated: Copied from LayoutTests/platform/ios-sim.
- 1:55 PM Changeset in webkit [176088] by
-
- 2 edits in trunk/Tools
Update the "combineModules" script to handel more LLVM metadata.
https://bugs.webkit.org/show_bug.cgi?id=138514
Patch by Juergen Ributzka <juergen@apple.com> on 2014-11-13
Reviewed by Filip Pizlo.
- ReducedFTL/combineModules.rb:
- 1:54 PM Changeset in webkit [176087] by
-
- 4 edits in trunk/Source/JavaScriptCore
Update WebKit to build with LLVM TOT
https://bugs.webkit.org/show_bug.cgi?id=138519
Patch by Juergen Ributzka <juergen@apple.com> on 2014-11-13
Reviewed by Geoffrey Garen.
- Configurations/LLVMForJSC.xcconfig:
- llvm/LLVMAPIFunctions.h:
- llvm/library/LLVMExports.cpp:
(initializeAndGetJSCLLVMAPI):
- 1:18 PM Changeset in webkit [176086] by
-
- 10 edits in trunk/Source/WebKit2
Adjust the WKBundlePageOverlay Data Detectors SPI
https://bugs.webkit.org/show_bug.cgi?id=138685
<rdar://problem/18947156>
Reviewed by Anders Carlsson.
- UIProcess/mac/WKActionMenuController.mm:
(-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
Forward DDActionContext callbacks to the Web process.
- WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.cpp:
- WebProcess/InjectedBundle/API/c/WKBundlePageOverlay.h:
- WebProcess/WebPage/WebPageOverlay.cpp:
- WebProcess/WebPage/WebPageOverlay.h:
Add four DataDetectors-related WebKit2-only page overlay callbacks:
(WebKit::WebPageOverlay::actionContextForResultAtPoint):
Called during the action menu hit test; clients can reply with a DDActionContext
and a DOM range, and WebKit will treat that result and range as if it had
detected it itself, building the action menu and showing the yellow highlight as usual.
(WebKit::WebPageOverlay::dataDetectorsPresentedUI):
(WebKit::WebPageOverlay::dataDetectorsChangedUI):
(WebKit::WebPageOverlay::dataDetectorsHidUI):
These correspond to the DDActionContext callbacks, and can be used by clients
to show/hide corresponding UI while DataDetectors in the UI process is presenting UI.
(WebKit::WebPageOverlay::prepareForActionMenu): Deleted.
Get rid of prepareForActionMenu, as nobody ever used it.
- WebProcess/WebPage/WebPage.cpp:
Add WebPageOverlay.h so that we can build, because the destructor lives here.
- WebProcess/WebPage/WebPage.h:
- WebProcess/WebPage/WebPage.messages.in:
- WebProcess/WebPage/mac/WebPageMac.mm:
(WebKit::WebPage::performActionMenuHitTestAtLocation):
Give all of the WebPageOverlays the first shot at data detection; if none of them
reply with a valid DDActionContext/DOM range, we'll go ahead and do our normal detection.
(WebKit::WebPage::dataDetectorsPresentedUI):
(WebKit::WebPage::dataDetectorsChangedUI):
(WebKit::WebPage::dataDetectorsHidUI):
Forward these along to the active WebPageOverlay.
- 1:16 PM Changeset in webkit [176085] by
-
- 2 edits1 delete in trunk
Remove Source/Platform cruft
https://bugs.webkit.org/show_bug.cgi?id=138658
Reviewed by Anders Carlsson.
- CMakeLists.txt:
- Source/Platform: Removed.
- 1:00 PM Changeset in webkit [176084] by
-
- 8 edits18 adds in trunk
Implement the matching for :nth-last-child(An+B of selector-list)
https://bugs.webkit.org/show_bug.cgi?id=138650
Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-11-13
Reviewed by Andreas Kling.
Source/WebCore:
Matching is trivial based on the existing CSS4 infrastructure.
The tricky part is style invalidation. In the cases of the old :nth-last-child()
and :nth-last-of-type(), we were using the flag ChildrenAffectedByBackwardPositionalRules.
The problem with ChildrenAffectedByBackwardPositionalRules is that it only invalidate
subtrees when nodes are being added or removed. It is a valuable optimization by itself
since tree updates are less common than property updates.
For the case of property updates, I have added the new flag "ChildrenAffectedByPropertyBasedBackwardPositionalRules".
It pretty much work the same way but invalidates subtree on style recalc.
Tests: fast/css/nth-child-and-nth-last-child.html
fast/css/nth-last-child-of-classname.html
fast/css/nth-last-child-of-complex-selector.html
fast/css/nth-last-child-of-compound-selector.html
fast/css/nth-last-child-of-style-sharing-1.html
fast/css/nth-last-child-of-style-sharing-2.html
fast/css/nth-last-child-of-style-update-optimization.html
fast/css/nth-last-child-of-tagname.html
fast/selectors/nth-last-child-of-class-style-update.html
- css/SelectorChecker.cpp:
(WebCore::SelectorChecker::checkOne):
- dom/Element.cpp:
(WebCore::Element::setChildrenAffectedByPropertyBasedBackwardPositionalRules):
(WebCore::Element::hasFlagsSetDuringStylingOfChildren):
(WebCore::Element::rareDataChildrenAffectedByPropertyBasedBackwardPositionalRules):
- dom/Element.h:
(WebCore::Element::childrenAffectedByPropertyBasedBackwardPositionalRules):
- dom/ElementRareData.h:
(WebCore::ElementRareData::childrenAffectedByPropertyBasedBackwardPositionalRules):
(WebCore::ElementRareData::setChildrenAffectedByPropertyBasedBackwardPositionalRules):
(WebCore::ElementRareData::ElementRareData):
(WebCore::ElementRareData::resetDynamicRestyleObservations):
- dom/Node.cpp:
(WebCore::Node::updateAncestorsForStyleRecalc):
(WebCore::Node::setNeedsStyleRecalc):
(WebCore::markAncestorsWithChildNeedsStyleRecalc): Deleted.
- dom/Node.h:
Unlike the other marking steps, ChildrenAffectedByPropertyBasedBackwardPositionalRules can only really
affect one level (because we don't have a parent-selectors). It is quite easy to mark large
trees with ChildrenAffectedByPropertyBasedBackwardPositionalRules by using a selector list that is a bit
too generic. When that happen, we must be careful not invalidating everything, just the affected subtree.
LayoutTests:
- fast/selectors/nth-last-child-of-class-style-update-expected.txt: Added.
- fast/selectors/nth-last-child-of-class-style-update.html: Added.
Verify simple cases of style update.
- fast/css/nth-last-child-of-style-update-optimization-expected.txt: Added.
- fast/css/nth-last-child-of-style-update-optimization.html: Added.
Verify that style invalidation stays reasonable.
- fast/css/nth-last-child-of-style-sharing-1-expected.html: Added.
- fast/css/nth-last-child-of-style-sharing-1.html: Added.
- fast/css/nth-last-child-of-style-sharing-2-expected.html: Added.
- fast/css/nth-last-child-of-style-sharing-2.html: Added.
Check that style sharing is disabled for elements matching :nth-last-child().
- fast/css/nth-child-and-nth-last-child-expected.html: Added.
- fast/css/nth-child-and-nth-last-child.html: Added.
Test uniqueness testing by combining :nth-child() and :nth-last-child().
- fast/css/nth-last-child-of-classname-expected.html: Added.
- fast/css/nth-last-child-of-classname.html: Added.
- fast/css/nth-last-child-of-complex-selector-expected.html: Added.
- fast/css/nth-last-child-of-complex-selector.html: Added.
- fast/css/nth-last-child-of-compound-selector-expected.html: Added.
- fast/css/nth-last-child-of-compound-selector.html: Added.
- fast/css/nth-last-child-of-tagname-expected.html: Added.
- fast/css/nth-last-child-of-tagname.html: Added.
Test matching, those are the "last-child" counterpart of the existing
"nth-child-of" tests.
- 12:43 PM Changeset in webkit [176083] by
-
- 4 edits in trunk/Source/JavaScriptCore
ARMv7(s) Assembler: LDRH with immediate offset is loading from the wrong offset
https://bugs.webkit.org/show_bug.cgi?id=136914
Reviewed by Michael Saboff.
TLDR: the immediate offset of half-word load was divided by 2.
Story time: So I started getting those weird reports of :nth-child() behaving bizarrely
on ARMv7 and ARMv7s. To make things worse, the behavior changes depending on style updates.
I started looking the disassembly on the tests cases...
The first thing I noticed was that the computation of An+B looked wrong. For example,
in the case of n+6, the instruction should have been:
but was
After spending a lot of time trying to find the error in the assembler, I discovered
the problem was not real, but just a bug in the disassembler.
This is the first fix: ARMv7DOpcodeAddSubtractImmediate3's immediate3() was truncating
the value to 2 bits instead of 3 bits.
The disassembler being fixed, I still have no lead on the weird bug. Some disassembly later,
I realize the LDRH instruction is not decoded at all. The reason is that both LDRH and STRH
were under the umbrella ARMv7DOpcodeLoadStoreRegisterImmediateHalfWord but the pattern
only matched SRTH.
I fix that next, ARMv7DOpcodeLoadStoreRegisterImmediateHalfWord is split into
ARMv7DOpcodeStoreRegisterImmediateHalfWord and ARMv7DOpcodeLoadRegisterImmediateHalfWord,
each with their own pattern and their instruction group.
Now that I can see the LDRHs correctly, there is something fishy about them, their offset
is way too small for the data I load.
This time, looking at the binary, the generated code is indeed incorrect. It turns out that
the ARMv7 assembler shifted the offset of half-word load as if they were byte load: divided by 4.
As a result, all the load of half-words with more than zero offset were loading
values with a smaller offset than what they should have.
That being fixed, I dump the assembly: still wrong. I am ready to throw my keyboard through
my screen at that point.
Looking at the disassembler, there is yet again a bug. The computation of the scale() adjustment
of the offset was incorrect for anything but word loads.
I replaced it by a switch-case to make it explicit.
STRH is likely incorrect too. I'll fix that in a follow up, I want to survey all the 16 bits cases
that are not directly used by the CSS JIT.
- assembler/ARMv7Assembler.h:
(JSC::ARMv7Assembler::ldrh):
Fix the immediate scaling. Add an assertion to make sure the alignment of the input is correct.
- disassembler/ARMv7/ARMv7DOpcode.cpp:
(JSC::ARMv7Disassembler::ARMv7DOpcodeLoadStoreRegisterImmediate::scale):
Fix the scaling code. Just hardcode instruction-to-scale table.
- disassembler/ARMv7/ARMv7DOpcode.h:
(JSC::ARMv7Disassembler::ARMv7DOpcodeAddSubtractImmediate3::immediate3):
The mask for a 3 bits immediate is not 3 :)
(JSC::ARMv7Disassembler::ARMv7DOpcodeLoadStoreRegisterImmediate::scale): Deleted.
- 12:15 PM Changeset in webkit [176082] by
-
- 3 edits2 adds in trunk
REGRESSION (r172826): Password field placeholder text is missing if
placeholder attribute precedes type attribute
<https://bugs.webkit.org/show_bug.cgi?id=138682>
<rdar://problem/18574213>
Source/WebCore:
When the placeholder attribute is encountered, a shadow tree is created
to include the placeholder element. When the type attribute is
encountered, the previous shadow tree is destroyed, and a new shadow
tree is created. TextFieldInputType::createShadowSubtree() did not
handle creating the placeholder element.
This regressed in r172826 because prior to r172826, the placeholder
element would be recreated when
HTMLTextFormControlElement::updatePlaceholderVisibility() was called.
In r172826, updatePlaceholderVisibility() was changed to only show or
hide the placeholder element if it exists.
Reviewed by Benjamin Poulain.
- html/TextFieldInputType.cpp:
(WebCore::TextFieldInputType::createShadowSubtree):
Call updatePlaceholderVisibility() to insert the placeholder element
(after the inner text element has been inserted, as it appears before
it in the shadow DOM).
LayoutTests:
Reviewed by Benjamin Poulain.
- fast/forms/placeholder-attribute-ordering-expected.html: Added.
- fast/forms/placeholder-attribute-ordering.html: Added.
- 11:57 AM Changeset in webkit [176081] by
-
- 1 edit1 add in trunk/Source/WebInspectorUI
Web Inspector: Replace PDF icon with SVG version
https://bugs.webkit.org/show_bug.cgi?id=137296
Reviewed by Timothy Hatcher.
Add another free icon for the Web Inspector in GTK+.
- UserInterface/Images/gtk/NavigationItemProbes.svg: Added.
- 11:36 AM Changeset in webkit [176080] by
-
- 3 edits1 add1 delete in trunk/Source/WebInspectorUI
Web Inspector: Replace PDF Probes icon with SVG version
https://bugs.webkit.org/show_bug.cgi?id=137296
Reviewed by Joseph Pecoraro.
- UserInterface/Images/NavigationItemProbes.pdf: Removed.
- UserInterface/Images/NavigationItemProbes.svg: Added.
- UserInterface/Views/ProbeDetailsSidebarPanel.js:
(WebInspector.ProbeDetailsSidebarPanel): Use NavigationItemProbes.svg.
- 11:18 AM Changeset in webkit [176079] by
-
- 2 edits in trunk/Source/JavaScriptCore
Generate put_by_id for bracket assignment with constant string subscript.
<https://webkit.org/b/138702>
Reviewed by Geoffrey Garen.
Transform of=x to o.f=x when generating bytecode. This allows our JIT
to inline-cache those accesses instead of always dropping out to C++.
Just like the get_by_id transformations, this gets a bunch of use on
real-web content (and Speedometer) but little/none on raw JS benchmarks.
- bytecompiler/NodesCodegen.cpp:
(JSC::AssignBracketNode::emitBytecode):
- 11:07 AM Changeset in webkit [176078] by
-
- 4 edits in trunk
Allow constructing a base PassRef with a derived Ref
https://bugs.webkit.org/show_bug.cgi?id=138701
Reviewed by Andreas Kling
Source/WTF:
- wtf/PassRef.h:
(WTF::PassRef<T>::PassRef):
Tools:
- TestWebKitAPI/Tests/WTF/Ref.cpp:
(TestWebKitAPI::passWithPassRef):
(TestWebKitAPI::passWithPassRefPtr):
(TestWebKitAPI::TEST):
- 10:57 AM WebKitGTK/2.6.x edited by
- Adding a proposed merge for the next stable release (diff)
- 10:52 AM Changeset in webkit [176077] by
-
- 1 edit1 add in trunk/PerformanceTests
Simple line layout: Add performance test case to measure line layout speed of monolithic text content.
https://bugs.webkit.org/show_bug.cgi?id=138699
Reviewed by Antti Koivisto.
- Layout/line-layout-long-long-text.html: Added.
- 10:20 AM Changeset in webkit [176076] by
-
- 3 edits2 adds in trunk
AX: [ATK] Accessible focus events are emitted when the selection is changed in non-focused combo boxes
https://bugs.webkit.org/show_bug.cgi?id=137866
Reviewed by Mario Sanchez Prada.
Source/WebCore:
Check that the AccessibilityMenuList is really focused before notifying
the platform that it is focused. Likewise, only notify the platform of
an AccessibilityMenuListOption focus gain if the AccessibilityMenuList
containing that option is expanded.
Test: platform/gtk/accessibility/menu-list-unfocused-notifications.html
- accessibility/atk/AXObjectCacheAtk.cpp:
(WebCore::notifyChildrenSelectionChange):
(WebCore::AXObjectCache::postPlatformNotification):
LayoutTests:
- platform/gtk/accessibility/menu-list-unfocused-notifications-expected.txt: Added.
- platform/gtk/accessibility/menu-list-unfocused-notifications.html: Added.
- 9:33 AM Changeset in webkit [176075] by
-
- 2 edits in trunk/LayoutTests
Simplify expectations for fullscreen/full-screen-iframe-legacy.html, as the more
specific variant doesn't work due to <https://bugs.webkit.org/show_bug.cgi?id=138698>.
- platform/mac/TestExpectations:
- 9:26 AM Changeset in webkit [176074] by
-
- 2 edits in trunk/LayoutTests
fast/events/overflow-scroll-fake-mouse-move.html is flaky
https://bugs.webkit.org/show_bug.cgi?id=138697
- platform/mac-wk1/TestExpectations: Mark it as such.
- 9:21 AM Changeset in webkit [176073] by
-
- 2 edits in trunk/LayoutTests
Unreviewed WK2 subpixel gardening.
- platform/mac-wk2/TestExpectations:
- 8:43 AM Changeset in webkit [176072] by
-
- 4 edits in trunk/Source/JavaScriptCore
Create canonical lists of registers used by both the Assemblers and the JIT probes.
<https://webkit.org/b/138681>
Reviewed by Filip Pizlo.
- assembler/ARMAssembler.h:
- assembler/ARMv7Assembler.h:
- assembler/X86Assembler.h:
- The FP register storage type is still defined as m128 because the JIT probe code still expects that amount of storage to be available. Will change this to double when the JIT probe code is updated accordingly in a later patch.
- 4:50 AM Changeset in webkit [176071] by
-
- 2 edits in trunk/Source/WebKit2
[SOUP] Missing ResourceRequest members encoded/decoded
https://bugs.webkit.org/show_bug.cgi?id=138694
Reviewed by Sergio Villar Senin.
At least timeoutInterval and priority should also be
encoded/decoded. This fixes all http/tests/xmlhttprequest/timeout/
tests when using the network process, since the timeout is always
0 for all requests that we send to the network process.
- Shared/soup/WebCoreArgumentCodersSoup.cpp:
(IPC::ArgumentCoder<ResourceRequest>::encodePlatformData):
(IPC::ArgumentCoder<ResourceRequest>::decodePlatformData):
- 12:53 AM Changeset in webkit [176070] by
-
- 2 edits in trunk/Source/WebCore
[EFL] Unexpected crashes in layout test after r175953
https://bugs.webkit.org/show_bug.cgi?id=138652
Reviewed by Csaba Osztrogonác.
In r175953, it set reusableNodeIndex value with m_partCache's size(). It causes
out of bound index crash because the reusableNodeIndex is Vector object.
No new test. This patch is to fix broken tests related to widgets on EFL port.
- platform/efl/RenderThemeEfl.cpp:
(WebCore::RenderThemeEfl::getThemePartFromCache): Need to set reusableNodeIndex with "size() - 1".
- 12:21 AM Changeset in webkit [176069] by
-
- 6 edits2 adds in trunk
Lazily create HTMLInputElement's inputType and shadow subtree
https://bugs.webkit.org/show_bug.cgi?id=138524
Reviewed by Ryosuke Niwa.
Source/WebCore:
When an HTMLInputElement was created by the parser, we would first call
HTMLInputElement::create(), then call Element::parserSetAttributes() on
the constructed input. With the previous implementation, this was a bit
inefficient because HTMLInputElement::create() would construct a
TextInputType inputType (as this is the default) as well as its
corresponding shadow subtree. Then, parserSetAttributes() would often
set the |type| attribute and would need to destroy this input type as
well as its subtree if the new |type| is not 'text', to create a new
inputType / shadow subtree of the right type. The profiler showed that
this was fairly expensive.
To improve this, this patch delays the inputType / shadow subtree
creation when the HTMLInputElement is constructed by the parser, until
the attributes are actually set by the parser. This way, we directly
create an inputType / shadow subtree of the right type.
I see a 1.4% speed up on speedometer (73.95 -> 75.0).
Test: fast/dom/HTMLInputElement/border-attribute-crash.html
- dom/Element.cpp:
(WebCore::Element::parserSetAttributes):
(WebCore::Element::parserDidSetAttributes):
- dom/Element.h:
- html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::HTMLInputElement):
(WebCore::HTMLInputElement::create):
(WebCore::HTMLInputElement::updateType):
(WebCore::HTMLInputElement::runPostTypeUpdateTasks):
(WebCore::HTMLInputElement::initializeInputType):
(WebCore::HTMLInputElement::parseAttribute):
(WebCore::HTMLInputElement::parserDidSetAttributes):
(WebCore::HTMLInputElement::finishParsingChildren):
- html/HTMLInputElement.h:
LayoutTests:
Add a test case to make sure we don't crash when parsing an <input>
Element that has a |border| attribute as first attribute. This is what
was happening with the first version of this patch that landed in
r175852. When attributeChanged() was called for the |border| attribute
HTMLInputElement::isPresentationAttribute() would get called before
m_inputType is initialized, and "name == borderAttr && isImageButton()"
would crash because isImageButton() dereferences m_inputType.
- fast/dom/HTMLInputElement/border-attribute-crash-expected.txt: Added.
- fast/dom/HTMLInputElement/border-attribute-crash.html: Added.
Nov 12, 2014:
- 11:59 PM Changeset in webkit [176068] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK gardening. Skip more test failing after r175776.
- platform/gtk/TestExpectations:
- 11:36 PM Changeset in webkit [176067] by
-
- 4 edits in branches/safari-600.3-branch/Source/WebCore
Merged r175268. rdar://problems/18883890
- 11:07 PM Changeset in webkit [176066] by
-
- 5 edits in trunk/Source
[EFL] Fix the build with EFL 1.12
https://bugs.webkit.org/show_bug.cgi?id=138245
Reviewed by Gyuyoung Kim.
Source/WebKit2:
- UIProcess/API/efl/EwkView.cpp:
First, modified to use Evas_GL raw pointer instead of UniquePtrEfl because
Evas_GL.h can't be included in UniquePtrEfl.h
It should be moved into EvasGLContext because WebKit/EFL use only one Evas_GL.
Second, provided the version of GLES in Evas_GL_Config not to break build with
EFL 1.12
(EwkView::EwkView):
(EwkView::~EwkView):
(EwkView::displayTimerFired):
(EwkView::createGLSurface):
- UIProcess/API/efl/EwkView.h:
Source/WTF:
- wtf/efl/UniquePtrEfl.h:
Removed Evas_GL.h from UniquePtrEfl.h, which is commonly included, because
it should not be included with official GL headers.
- 7:28 PM Changeset in webkit [176065] by
-
- 12 edits in trunk/Source
Have DOMTimer deal with more ScriptExecutionContext references
https://bugs.webkit.org/show_bug.cgi?id=138679
Reviewed by Andreas Kling.
Source/WebCore:
Have DOMTimer deal with more ScriptExecutionContext references instead
of pointers, to make it clear the script execution context cannot be
null.
No new tests, no behavior change.
- bindings/js/ScheduledAction.cpp:
(WebCore::ScheduledAction::execute):
(WebCore::ScheduledAction::executeFunctionInContext):
- bindings/js/ScheduledAction.h:
- dom/DocumentEventQueue.cpp:
- page/DOMTimer.cpp:
(WebCore::DOMTimerFireState::DOMTimerFireState):
(WebCore::NestedTimersMap::instanceForContext):
(WebCore::DOMTimer::DOMTimer):
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::removeById):
(WebCore::DOMTimer::fired):
- page/DOMTimer.h:
- page/DOMWindow.cpp:
(WebCore::DOMWindow::setTimeout):
(WebCore::DOMWindow::clearTimeout):
(WebCore::DOMWindow::setInterval):
(WebCore::DOMWindow::clearInterval):
- page/SuspendableTimer.cpp:
(WebCore::SuspendableTimer::SuspendableTimer):
- page/SuspendableTimer.h:
- workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::setTimeout):
(WebCore::WorkerGlobalScope::clearTimeout):
(WebCore::WorkerGlobalScope::setInterval):
(WebCore::WorkerGlobalScope::clearInterval):
Source/WebKit/win:
Update WindowCloseTimer to deal with ScriptExecutionContext references
instead of pointers as it subclasses SuspendableTimer and its
constructor takes a ScriptExecutionContext& in argument.
- WebView.cpp:
(WindowCloseTimer::create):
(WindowCloseTimer::WindowCloseTimer):
- 7:19 PM Changeset in webkit [176064] by
-
- 2 edits in branches/safari-600.3-branch/Source/WebCore
Merged r176047. rdar://problems/18785434
- 7:19 PM Changeset in webkit [176063] by
-
- 6 edits in branches/safari-600.3-branch/Source
Merged r176041. rdar://problems/18785434
- 6:52 PM Changeset in webkit [176062] by
-
- 9 edits in branches/safari-600.3-branch/Source
Merged r175966. rdar://problems/18866308
- 6:31 PM Changeset in webkit [176061] by
-
- 2 edits in branches/safari-600.3-branch/Source/WebKit2
Merged r176038. rdar://problems/18960409
- 6:31 PM Changeset in webkit [176060] by
-
- 5 edits in branches/safari-600.3-branch/Source
Merged r176037. rdar://problems/18869900
- 6:30 PM Changeset in webkit [176059] by
-
- 2 edits in branches/safari-600.3-branch/Source/WebKit2
Merged r176027. rdar://problems/18909111
- 6:30 PM Changeset in webkit [176058] by
-
- 6 edits in branches/safari-600.3-branch/Source
Merged r175992. rdar://problems/18741567
- 6:11 PM Changeset in webkit [176057] by
-
- 5 edits in branches/safari-600.3-branch/Source/WebKit2
Merged r175985. rdar://problems/18947400
- 6:11 PM Changeset in webkit [176056] by
-
- 3 edits1 delete in branches/safari-600.3-branch/Source/WebKit2
Merged r175983. rdar://problems/18871984
- 6:11 PM Changeset in webkit [176055] by
-
- 4 edits in branches/safari-600.3-branch/Source/WebKit2
Merged r175973. rdar://problems/18855914
- 6:11 PM Changeset in webkit [176054] by
-
- 2 edits in branches/safari-600.3-branch/Source/WebKit2
Merged r175969. rdar://problems/18932770
- 5:58 PM Changeset in webkit [176053] by
-
- 4 edits in branches/safari-600.3-branch/Source
Merged r175964. rdar://problems/18867627
- 5:52 PM Changeset in webkit [176052] by
-
- 4 edits in branches/safari-600.3-branch/Source
Merged r175963. rdar://problems/18932770
- 5:45 PM Changeset in webkit [176051] by
-
- 6 edits in branches/safari-600.3-branch/Source
Merged r175962. rdar://problem/18815343
- 5:23 PM Changeset in webkit [176050] by
-
- 12 edits4 adds in trunk
Support unprefixed animation property names
https://bugs.webkit.org/show_bug.cgi?id=138678
<rdar://problem/18943059>
Reviewed by Simon Fraser.
Source/WebCore:
Step 1 of 3 in unprefixing CSS animations: handling the
property names and values.
Unlike other unprefixing, where we use an alias that
effectively removes the prefixed values from the code,
for animations we need to keep the old values around so that
existing content will not break (e.g. computed style).
During testing I noticed that we didn't handle the
(relatively) new animation-direction values of
"reverse" and "alternate-reverse" when querying
computed style.
Tests: animations/unprefixed-properties.html
animations/unprefixed-shorthand.html
- css/CSSComputedStyleDeclaration.cpp:
(WebCore::ComputedStyleExtractor::propertyValue): Handle the unprefixed
values, but also get animation direction to produce the correct
results when "reverse" and "alternate-reverse" is specified.
- css/CSSParser.cpp: Handle the new values. If necessary, pass a flag
around indicating whether it is prefixed or unprefixed.
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseAnimationShorthand): Use the flag to decide
which of the forms we're going to check.
(WebCore::CSSParser::parseAnimationProperty):
- css/CSSParser.h:
- css/CSSProperty.h:
(WebCore::prefixingVariantForPropertyId): Add prefixing/unprefixing variants for
all the animation values, and clean up the code a bit.
- css/CSSPropertyNames.in: Add new properties.
- css/DeprecatedStyleBuilder.cpp:
(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): We need handlers for the
unprefixed forms. This should move to the new StyleBuilder soon.
- css/StyleProperties.cpp: Handle new values.
(WebCore::StyleProperties::getPropertyValue):
(WebCore::StyleProperties::asText):
- css/StylePropertyShorthand.cpp:
(WebCore::animationShorthand):
(WebCore::animationShorthandForParsing): Decide which list of properties to use.
(WebCore::shorthandForProperty):
(WebCore::matchingShorthandsForLonghand):
(WebCore::webkitAnimationShorthandForParsing): Deleted.
- css/StylePropertyShorthand.h:
- css/StyleResolver.cpp: Since the new properties come before "background" in
alphabetical order, they are earlier in the CSSPropertyNames.in file, and thus
we need to update the call sites that think CSSPropertyBackground is the first
property.
(WebCore::StyleResolver::styleForKeyframe): Replace CSSPropertyBackground with CSSPropertyAnimation.
(WebCore::StyleResolver::styleForPage):
(WebCore::StyleResolver::applyMatchedProperties):
(WebCore::StyleResolver::applyProperty):
LayoutTests:
Tests for unprefixed parsing and calculation of animation
properties. Fun fact, this is the first test we have
for the computed style of all animation-direction values.
- animations/unprefixed-properties-expected.txt: Added.
- animations/unprefixed-properties.html: Added.
- animations/unprefixed-shorthand-expected.txt: Added.
- animations/unprefixed-shorthand.html: Added.
- 4:27 PM Changeset in webkit [176049] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Reduce work when activating multiple agents sequentially
https://bugs.webkit.org/show_bug.cgi?id=138677
Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-11-12
Reviewed by Timothy Hatcher.
- UserInterface/Base/Main.js:
(WebInspector.activateExtraDomains):
- UserInterface/Controllers/FrameResourceManager.js:
(WebInspector.FrameResourceManager.prototype._extraDomainsActivated):
- UserInterface/Controllers/StorageManager.js:
(WebInspector.StorageManager.prototype._extraDomainsActivated):
- 3:51 PM Changeset in webkit [176048] by
-
- 10 edits8 copies1 add in trunk/LayoutTests
<rdar://problem/15864185> Syrah: platform/mac/editing/attributed-string tests are failing
Land Yosemite results, and remove the tests from TestExpectations.
- platform/mac-mavericks/platform/mac/editing/attributed-string: Added.
- platform/mac-mavericks/platform/mac/editing/attributed-string/anchor-element-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/anchor-element-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/basic-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/basic-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/font-size-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/font-size-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/font-weight-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/font-weight-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/letter-spacing-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/letter-spacing-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/text-decorations-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/text-decorations-expected.txt.
- platform/mac-mavericks/platform/mac/editing/attributed-string/vertical-align-expected.txt: Copied from LayoutTests/platform/mac/editing/attributed-string/vertical-align-expected.txt.
- platform/mac/editing/attributed-string/anchor-element-expected.txt:
- platform/mac/editing/attributed-string/basic-expected.txt:
- platform/mac/editing/attributed-string/font-size-expected.txt:
- platform/mac/editing/attributed-string/font-style-variant-effect-expected.txt:
- platform/mac/editing/attributed-string/font-weight-expected.txt:
- platform/mac/editing/attributed-string/letter-spacing-expected.txt:
- platform/mac/editing/attributed-string/text-decorations-expected.txt:
- platform/mac/editing/attributed-string/vertical-align-expected.txt:
- platform/mac/TestExpectations:
- 3:46 PM Changeset in webkit [176047] by
-
- 2 edits in trunk/Source/WebCore
Speculative build fix.
- WebCore.exp.in:
- 3:33 PM Changeset in webkit [176046] by
-
- 2 edits in trunk/LayoutTests
Make Mac media-source test expectations future compatible
https://bugs.webkit.org/show_bug.cgi?id=138674
Roll it out, it somehow broke Mountain Liona and Mavericks.
- platform/mac/TestExpectations:
- 3:25 PM Changeset in webkit [176045] by
-
- 2 edits in trunk/Source/WebKit2
Fix the iOS build.
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::pageMutedStateDidChange):
- 3:24 PM Changeset in webkit [176044] by
-
- 2 edits in trunk/Source/WebCore
Fix the iOS build.
- platform/spi/mac/DataDetectorsSPI.h:
It's likely that more of this file should be compiled out on iOS,
but this is all we need to build.
- 3:22 PM Changeset in webkit [176043] by
-
- 2 edits in trunk/LayoutTests
media/video-play-pause-exception.html is flakey.
https://bugs.webkit.org/show_bug.cgi?id=138670
Reviewed by Alexey Proskuryakov.
Work around race-condition behavior in HTMLMediaElement's resource selection algorithm.
- media/video-play-pause-exception.html:
- 2:55 PM Changeset in webkit [176042] by
-
- 2 edits in trunk/LayoutTests
Make Mac media-source test expectations future compatible
https://bugs.webkit.org/show_bug.cgi?id=138674
Reviewed by Eric Carlson.
- platform/mac/TestExpectations:
- 2:52 PM Changeset in webkit [176041] by
-
- 6 edits in trunk/Source
WK1: Support default actions for images
https://bugs.webkit.org/show_bug.cgi?id=138668
-and corresponding-
rdar://problem/18785434
Reviewed by Tim Horton.
Source/WebCore:
Symbol needed for copying image.
- WebCore.exp.in:
Source/WebKit/mac:
- WebView/WebActionMenuController.h:
- WebView/WebActionMenuController.mm:
(-[WebActionMenuController didCloseMenu:withEvent:]):
(-[WebActionMenuController _defaultMenuItemsForImage:]):
(-[WebActionMenuController _copyImage:]):
(temporaryPhotosDirectoryPath):
(pathToPhotoOnDisk):
(-[WebActionMenuController _canAddMediaToPhotos]):
(-[WebActionMenuController _addImageToPhotos:]):
(-[WebActionMenuController _saveImageToDownloads:]):
(-[WebActionMenuController sharingServicePicker:sharingServicesForItems:mask:proposedSharingServices:]):
(-[WebActionMenuController sharingServicePicker:delegateForSharingService:]):
(-[WebActionMenuController sharingService:sourceWindowForShareItems:sharingContentScope:]):
(-[WebActionMenuController _createActionMenuItemForTag:withHitTestResult:]):
(-[WebActionMenuController _defaultMenuItemsForHitTestResult:]):
- WebView/WebUIDelegatePrivate.h:
- 2:39 PM Changeset in webkit [176040] by
-
- 3 edits in trunk/LayoutTests
Flaky Test: media/video-ended-event-slow-motion-playback.html
https://bugs.webkit.org/show_bug.cgi?id=136755
Reviewed by Jer Noble.
- media/video-ended-event-slow-motion-playback.html: The test verifies that playback
rate doesn't get rounded down to 0, and that is very easy to detect, no need for
flaky timeouts.
- platform/mac/TestExpectations: Remove the flakiness expectation. Also while at it,
updated media/video-playbackrate.html to match what the bots actually see.
- 2:12 PM Changeset in webkit [176039] by
-
- 20 edits3 adds in trunk
Implement new plug-in API for muting plug-ins
https://bugs.webkit.org/show_bug.cgi?id=138105
Reviewed by Anders Carlsson.
Source/WebCore:
Add the new NPNVmuteAudioBool NPNVariable.
Test: platform/mac-wk2/plugins/muted-state.html
- plugins/npapi.h:
Source/WebKit2:
Handle the setting of NPNVmuteAudioBool on the plug-in.
- PluginProcess/PluginControllerProxy.cpp:
(WebKit::PluginControllerProxy::PluginControllerProxy):
Initialize m_isMuted.
(WebKit::PluginControllerProxy::mutedStateChanged):
Tell the plugin about the new muted state.
- PluginProcess/PluginControllerProxy.h:
- PluginProcess/PluginControllerProxy.messages.in:
Add the MutedStateChanged message.
- PluginProcess/PluginCreationParameters.cpp:
(WebKit::PluginCreationParameters::PluginCreationParameters):
Initialize isMuted.
(WebKit::PluginCreationParameters::encode):
Handle isMuted.
(WebKit::PluginCreationParameters::decode):
Ditto.
- PluginProcess/PluginCreationParameters.h:
- WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
(WebKit::NPN_GetValue):
Get the plug-in's muted state.
- WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
(WebKit::NetscapePlugin::isMuted):
Get the muted state from PluginControllerProxy.
(WebKit::NetscapePlugin::mutedStateChanged):
Call NPP_SetValue with NPNVmuteAudioBool and the updated muted state.
- WebProcess/Plugins/Netscape/NetscapePlugin.h:
- WebProcess/Plugins/Plugin.h:
(WebKit::Plugin::mutedStateChanged):
- WebProcess/Plugins/PluginController.h:
- WebProcess/Plugins/PluginProxy.cpp:
(WebKit::PluginProxy::initialize):
Set m_pendingPluginCreationParameters->isMuted.
(WebKit::PluginProxy::mutedStateChanged):
Send the MutedStateChanged message to the plugin process.
- WebProcess/Plugins/PluginProxy.h:
- WebProcess/Plugins/PluginView.cpp:
(WebKit::PluginView::pageMutedStateDidChange):
Call Plugin::mutedStateChanged() with the page's muted state.
(WebKit::PluginView::isMuted):
Get the page's current muted state.
- WebProcess/Plugins/PluginView.h:
Tools:
Add a new plug-in test for the mute API.
- DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
- DumpRenderTree/TestNetscapePlugIn/Tests/mac/SetMuted.cpp: Added.
(SetMuted::SetMuted):
(SetMuted::isMuted):
(SetMuted::cachedIsMuted):
(SetMuted::ScriptableObject::hasProperty):
(SetMuted::ScriptableObject::getProperty):
(SetMuted::ScriptableObject::pluginTest):
(SetMuted::NPP_New):
(SetMuted::NPP_GetValue):
(SetMuted::NPP_SetValue):
LayoutTests:
- platform/mac-wk2/plugins/muted-state-expected.txt: Added.
- platform/mac-wk2/plugins/muted-state.html: Added.
- 1:55 PM Changeset in webkit [176038] by
-
- 2 edits in trunk/Source/WebKit2
Two action menu item titles are swapped
https://bugs.webkit.org/show_bug.cgi?id=138667
<rdar://problem/18960409>
Reviewed by Beth Dakin.
- UIProcess/mac/WKActionMenuController.mm:
(-[WKActionMenuController _createActionMenuItemForTag:]):
Swap them back.
- 1:50 PM Changeset in webkit [176037] by
-
- 5 edits in trunk/Source
Need to show the text indicator when Data Detectors shows a popover
https://bugs.webkit.org/show_bug.cgi?id=138664
<rdar://problem/18869900>
Reviewed by Beth Dakin.
- UIProcess/mac/WKActionMenuController.h:
- UIProcess/mac/WKActionMenuController.mm:
(hasDataDetectorsCompletionAPI):
Determine if we have the new API.
(-[WKActionMenuController willDestroyView:]):
(-[WKActionMenuController willOpenMenu:withEvent:]):
Make use of the new API.
If we wanted to show a Data Detectors menu but have no items (or they're all
disabled), cancel the menu.
If we don't have it, manually manipulate the highlight.
(-[WKActionMenuController didCloseMenu:withEvent:]):
Make use of the new API.
If we don't have it, manually manipulate the highlight.
(-[WKActionMenuController _defaultMenuItemsForDataDetectedText]):
Set up completion handlers if we have the new API; when DataDetectors
presents UI, show the text indicator, when it dismisses, hide it.
If we don't have the API, manually manipulate the highlight.
- platform/spi/mac/DataDetectorsSPI.h:
Add new DataDetectors SPI.
- 1:48 PM Changeset in webkit [176036] by
-
- 4 edits in trunk/Source/WebKit2
Unreviewed, rolling out r175806.
https://bugs.webkit.org/show_bug.cgi?id=138666
Capturing CString is not thread safe (Requested by anttik on
#webkit).
Reverted changeset:
"[WK2] Use C++ lambdas in IPC::Connection"
https://bugs.webkit.org/show_bug.cgi?id=138018
http://trac.webkit.org/changeset/175806
- 1:13 PM Changeset in webkit [176035] by
-
- 2 edits in trunk/Source/JavaScriptCore
Generate get_by_id for bracket access with constant string subscript.
<https://webkit.org/b/138663>
Reviewed by Michael Saboff.
Transform of into o.f when generating bytecode. This allows our JIT
to inline-cache those accesses instead of always dropping out to C++.
This is surprisingly common in real-web content, less so in benchmarks.
Interestingly, Speedometer does hit the optimization quite a bit.
- bytecompiler/NodesCodegen.cpp:
(JSC::BracketAccessorNode::emitBytecode):
- 1:09 PM Changeset in webkit [176034] by
-
- 3 edits in trunk/LayoutTests
Some platform/mac text expectation cleanup.
- platform/mac-wk1/TestExpectations:
- platform/mac/TestExpectations:
- 12:22 PM Changeset in webkit [176033] by
-
- 4 edits in trunk/LayoutTests
Mac-WK2 test expectations cleanup, part 1.
Put WK1 specific expectations into mac-wk1 (they used to be put in mac, and then
being overridden for wk2).
Remove expectations for tests that are no longer flaky.
Add more specific expectations to encient entries that were added in old format,
and just skipped indiscriminately.
- platform/mac-wk1/TestExpectations:
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 12:16 PM Changeset in webkit [176032] by
-
- 4 edits in trunk/Source/WebCore
Minor improvements to RenderListItem
https://bugs.webkit.org/show_bug.cgi?id=138601
Reviewed by Darin Adler.
Make several minor improvements to RenderListItem and clean up the
code a bit.
No new tests, no behavior change.
- rendering/RenderListItem.cpp:
(WebCore::isHTMLListElement):
- Rename isList to isHTMLListElement() for clarity as it checks for HTMLOListElement and HTMLUListElement types
- Inline the function as it is short.
- Use is<HTML*Element>() for type checking
- Update the argument to take a Node& instead of an Element*. This is because the argument is expected to the non-null. Also using looser typing here allows us to use this utility function is one more place, without impacting performance as hasTagName(HTMLQualifiedName) is defined on Node.
(WebCore::enclosingList):
- Pass the argument as a reference instead of a pointer as it is expected to be non-null.
- Initialize firstNode before the loop to avoid the if (!firstNode) check for every iteration.
(WebCore::nextListItem):
- Take an Element as second argument instead of a RenderListItem* and provide convenience overloads so that we don't need to do null checks just because some calls sites call this function with 2 arguments and others with 1 argument. This way, we avoid unnecessary null checks as most call sites already do such checks (or have references).
- Transform the while loop into a for loop for clarity.
- Don't traverse an Element's subtree if the Element does not have a renderer as it is impossible of any of its descendant to have a renderer (and we are looking for a specific type of renderer).
(WebCore::previousListItem):
- Pass the item argument as a reference instead of a pointer as it is expected to be non-null.
- Reduce the scope of the |current| so that it is now declared inside the loop.
(WebCore::RenderListItem::updateItemValuesForOrderedList):
(WebCore::RenderListItem::itemCountForOrderedList):
- Pass argument as a reference instead of a pointer as it was expected to be non-null (There was an assertion in place to make sure of it).
(WebCore::RenderListItem::calcValue):
- Use is<HTMLOListElement>() instead of hasTagName().
(WebCore::getParentOfFirstLineBox):
- Rename variables to stop using abbreviations.
- Pass arguments as references instead of pointers as they are expected to be non-null.
- Remove the firstChild null check before the loop as it does not change behavior. The loop will abort early if firstChild is null and we will end up returning nullptr as well.
- Use is<>() more for type checking.
- Reuse the isHTMLListElement() utility function instead of duplicating its code inside this function.
(WebCore::firstNonMarkerChild):
- Pass argument as a reference as it is expected to be non-null.
- Rename variable from result to child for clarity, as we are traversing the children.
(WebCore::RenderListItem::markerTextWithSuffix):
- Use String appending instead of StringBuilder as it simplifies the code a lot and should not impact performance in this case.
(WebCore::RenderListItem::explicitValueChanged):
- Restructure the code a bit to do the |listNode| null check before the loop, now that nextListItem() takes a reference in argument. This is the only call site where we didn't already know that listNode is non-null.
(WebCore::previousOrNextItem):
- Mark this function as inline as it is short and called repeatedly.
- 12:09 PM Changeset in webkit [176031] by
-
- 21 edits in trunk/Source
Rename USE(MASM_PROBE) to ENABLE(MASM_PROBE).
<https://webkit.org/b/138661>
Reviewed by Michael Saboff.
Also move the switch for enabling the use of MASM_PROBE from JavaScriptCore's
config.h to WTF's Platform.h. This ensures that the setting is consistently
applied even when building WebCore parts as well.
Source/JavaScriptCore:
- assembler/ARMAssembler.h:
- assembler/ARMv7Assembler.h:
- assembler/MacroAssemblerARM.cpp:
- assembler/MacroAssemblerARM.h:
- assembler/MacroAssemblerARMv7.cpp:
- assembler/MacroAssemblerARMv7.h:
- assembler/MacroAssemblerX86.h:
- assembler/MacroAssemblerX86Common.cpp:
- assembler/MacroAssemblerX86Common.h:
- assembler/MacroAssemblerX86_64.h:
- assembler/X86Assembler.h:
- config.h:
- jit/JITStubs.h:
- jit/JITStubsARM.h:
- jit/JITStubsARMv7.h:
- jit/JITStubsX86.h:
- jit/JITStubsX86Common.h:
- jit/JITStubsX86_64.h:
Source/WTF:
- wtf/Platform.h:
- 12:07 PM Changeset in webkit [176030] by
-
- 3 edits in trunk/Source/WebCore
Speed up HTMLTextFormControlElement::setInnerTextValue() a bit
https://bugs.webkit.org/show_bug.cgi?id=138619
Reviewed by Darin Adler.
Speed up HTMLTextFormControlElement::setInnerTextValue() a bit by:
- Not doing a virtual isTextFormControl() call. Relying on innerTextElement() not returning null is sufficient.
- Caching the result of innerTextElement() instead of repeatedly calling that virtual function.
- De-virtualizing setFormControlValueMatchesRenderer() / formControlValueMatchesRenderer() as these are never overridden.
- Moving the code constructing the innerTextValue from a TextControlInnerTextElement from innerTextValue() to a new innerTextValueFrom(TextControlInnerTextElement&) function and call this new function from setInnerTextValue() to avoid calling innerTextElement() again and making sure it is non-null
- Do the tree traversal from innerTextElement's firstChild instead of from innerTextElement. The innerTextElement is a TextControlInnerTextElement. Therefore, it cannot be an HTMLBRElement or a Text node.
No new tests, no behavior change.
- html/HTMLFormControlElement.h:
(WebCore::HTMLFormControlElement::formControlValueMatchesRenderer):
(WebCore::HTMLFormControlElement::setFormControlValueMatchesRenderer):
- html/HTMLTextFormControlElement.cpp:
(WebCore::stripTrailingNewline):
(WebCore::innerTextValueFrom):
(WebCore::HTMLTextFormControlElement::setInnerTextValue):
(WebCore::HTMLTextFormControlElement::innerTextValue):
(WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
(WebCore::finishText): Deleted.
- 11:34 AM Changeset in webkit [176029] by
-
- 2 edits in trunk/LayoutTests
Remove expectations for a couple tests that were marked as flaky on WK1 only,
as they don't appear to be flaky any more.
- platform/mac-wk1/TestExpectations:
- 11:08 AM Changeset in webkit [176028] by
-
- 3 edits in trunk/LayoutTests
Some WebKit1-only Yosemite-only failures don't appear to exist any more.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
Unmark the tests.
- 11:06 AM Changeset in webkit [176027] by
-
- 2 edits in trunk/Source/WebKit2
Make action menus much more reliable
https://bugs.webkit.org/show_bug.cgi?id=138654
<rdar://problem/18909111>
Reviewed by Anders Carlsson.
- UIProcess/mac/WKActionMenuController.mm:
(-[WKActionMenuController prepareForMenu:withEvent:]):
Remove MenuUpdateStage; nothing actually uses this value, we just pass it around.
(-[WKActionMenuController didPerformActionMenuHitTest:userData:]):
Update the menu as soon as we have a reply from the Web process.
(-[WKActionMenuController menuNeedsUpdate:]):
If our sync-wait for the Web process' reply times out, we should still update
the menu to remove the placeholder separator item.
(-[WKActionMenuController _updateActionMenuItems]):
(-[WKActionMenuController _updateActionMenuItemsForStage:]): Deleted.
If we have our final answer for this menu (_state == Ready), and the final answer
has no items in the menu, cancel tracking on the menu.
- 10:59 AM Changeset in webkit [176026] by
-
- 3 edits in trunk/LayoutTests
A number of hidpi tests don't appear to fail on Yosemite now, let's try unmarking them.
- platform/mac-wk2/TestExpectations:
- platform/mac/TestExpectations:
- 10:41 AM Changeset in webkit [176025] by
-
- 2 edits in trunk/LayoutTests
Instead of blacklisting tests for OS X versions that use PPT for testing,
whitelist MountainLion that doesn't. That's more future compatible.
- platform/mac-wk2/TestExpectations:
- 10:40 AM Changeset in webkit [176024] by
-
- 5 edits in trunk
[Mac] media/track/audio-track.html is flakey
https://bugs.webkit.org/show_bug.cgi?id=138394
Reviewed by Alexey Proskuryakov.
Source/WebCore:
The above test fails if the HTMLMediaElement's "canplaythrough" event fires before the AudioTrackList's
"addtrack" event fires. This can happen because each object keeps its own GenericEventQueue, which
empties when that individual queue's timer fires. So events can be enqueued in the following order:
1, A, 2, B, 3, C; but fired in a different order: 1, 2, 3, A, B, C.
Make events enqueued in GenericEventQueues globally ordered, so that events are fired in the order
which they are enqueued, regardless of which object owns the queue. Use a static queue of
GenericEventQueues to manage which GenericEventQueue fires and in what order.
GenericEventQueues will use a WeakPtrFactory to cancel pending events. Revoking a GenericEventQueue's
weak pointers means those queue's entries will be skipped the next time the meta-queue is processed.
- dom/GenericEventQueue.cpp:
(WebCore::GenericEventQueue::GenericEventQueue): Create a WeakPtrFactory instead of a Timer.
(WebCore::GenericEventQueue::enqueueEvent): Enqueue this queue with the MetaQueue.
(WebCore::GenericEventQueue::sharedTimer): Lazily-initializing accessor.
(WebCore::GenericEventQueue::sharedTimerFired): Ask each queue to dispatch one event.
(WebCore::GenericEventQueue::pendingQueues): Lazily-initializing accessor.
(WebCore::GenericEventQueue::dispatchOneEvent): Renamed from timerFired.
(WebCore::GenericEventQueue::close): Revoke all WeakPtrs.
(WebCore::GenericEventQueue::cancelAllEvents): Ditto.
(WebCore::GenericEventQueue::hasPendingEvents): Use !isEmpty().
(WebCore::GenericEventQueue::timerFired): Deleted.
- dom/GenericEventQueue.h:
LayoutTests:
- platform/mac/TestExpectations:
- 10:18 AM Changeset in webkit [176023] by
-
- 2 edits in trunk/LayoutTests
Fix a typo in the previous commit - a test should be skipped, not its expectation.
- platform/mac/TestExpectations:
- 9:46 AM Changeset in webkit [176022] by
-
- 2 edits1 move2 deletes in trunk/LayoutTests
compositing/video/video-border-radius.html frequently times out on Mountain Lion only
https://bugs.webkit.org/show_bug.cgi?id=138662
Make the test a reftest again, and skip it, as nothing helps.
Also, updated all compositing/video expectations to match what bots see now.
- compositing/video/video-border-radius-expected.html: Copied from LayoutTests/compositing/video/video-border-radius-expected.html-disabled.
- compositing/video/video-border-radius-expected.html-disabled: Removed.
- compositing/video/video-border-radius-expected.png: Removed.
- compositing/video/video-border-radius-expected.txt: Removed.
- platform/mac/TestExpectations:
- 9:16 AM Changeset in webkit [176021] by
-
- 3 edits in trunk/Source/JavaScriptCore
[WinCairo] Incorrect names for test executables in debug mode.
https://bugs.webkit.org/show_bug.cgi?id=138659
Patch by peavo@outlook.com <peavo@outlook.com> on 2014-11-12
Reviewed by Alex Christensen.
In debug mode, jsc.exe, and testapi.exe are not created, causing JSC test failures.
- JavaScriptCore.vcxproj/jsc/jscLauncher.vcxproj:
- JavaScriptCore.vcxproj/testapi/testapiLauncher.vcxproj:
- 8:37 AM Changeset in webkit [176020] by
-
- 2 edits in trunk/Tools
Unreviewed, GTK gardening.
- Scripts/run-gtk-tests:
(TestRunner): Skip the UserMediaBasic test because it depends on
constraints validation which is going to be fixed in bug #136449.
- 6:23 AM Changeset in webkit [176019] by
-
- 2 edits in trunk/LayoutTests
Unreviewed GTK gardening. Skip shared worker tests after r175776.
Shared workers are disabled with the Network Process.
- platform/gtk/TestExpectations:
- 4:30 AM Changeset in webkit [176018] by
-
- 7 edits1 add in trunk
[GTK] Expose user script messages to GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=138411
Reviewed by Philippe Normand.
Source/WebCore:
- PlatformGTK.cmake: Add WebKitDOMCustomUnstable.h to the list of
installed headers and make a symlink for it in the DerivedSources dir.
- bindings/gobject/WebKitDOMCustomUnstable.h: Added.
- bindings/gobject/WebKitDOMCustom.cpp:
(webkit_dom_dom_window_get_webkit_namespace):
(webkit_dom_user_message_handlers_namespace_get_handler):
- bindings/scripts/CodeGeneratorGObject.pm:
(HasUnstableCustomAPI): Helper function to check if the given
class has custom unstable API.
(WriteData): Include WebKitDOMCustomUnstable.h header if the class
has API defined there.
Tools:
Add a test case to check that user script messages sent using the
DOM bindings API are also received in the UI process.
- TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitUserContentManager.cpp:
(UserScriptMessageTest::waitUntilMessageReceived):
(UserScriptMessageTest::postMessageAndWaitUntilReceived):
(testUserContentManagerScriptMessageFromDOMBindings):
(beforeAll):
- TestWebKitAPI/Tests/WebKit2Gtk/WebExtensionTest.cpp:
(documentLoadedCallback):
- 4:26 AM Changeset in webkit [176017] by
-
- 10 edits in trunk/Source/WebCore
[GTK] Fix how SerializedScriptValue is exposed to GObject DOM bindings
https://bugs.webkit.org/show_bug.cgi?id=138409
Reviewed by Philippe Normand.
It's currently exposed as a WebKitDOMSerializedScriptValue class
that doesn't really exist. It should be handled as a string, that
is used to create a SerializedScriptValue when coming from the
API, and converted to a string again when returned to the API.
- bindings/scripts/CodeGeneratorGObject.pm:
(GetGlibTypeName): Return gchar* as glib type of SerializedScriptValue.
(IsGDOMClassType): Don't consider SerializedScriptValue as a GDOM class.
(GenerateFunction): Handle SerializedScriptValue parameters and
return values specially.
- bindings/scripts/test/GObject/WebKitDOMTestCallback.cpp:
(webkit_dom_test_callback_callback_with_serialized_script_value_param):
- bindings/scripts/test/GObject/WebKitDOMTestCallback.h:
- bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
(webkit_dom_test_obj_serialized_value):
- bindings/scripts/test/GObject/WebKitDOMTestObj.h:
- bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.cpp:
(webkit_dom_test_serialized_script_value_interface_class_init):
(webkit_dom_test_serialized_script_value_interface_get_value):
(webkit_dom_test_serialized_script_value_interface_set_value):
(webkit_dom_test_serialized_script_value_interface_get_readonly_value):
(webkit_dom_test_serialized_script_value_interface_get_cached_value):
(webkit_dom_test_serialized_script_value_interface_set_cached_value):
(webkit_dom_test_serialized_script_value_interface_get_cached_readonly_value):
- bindings/scripts/test/GObject/WebKitDOMTestSerializedScriptValueInterface.h:
- bindings/scripts/test/GObject/WebKitDOMTestTypedefs.cpp:
(webkit_dom_test_typedefs_class_init):
(webkit_dom_test_typedefs_get_immutable_serialized_script_value):
(webkit_dom_test_typedefs_set_immutable_serialized_script_value):
- bindings/scripts/test/GObject/WebKitDOMTestTypedefs.h:
- 4:13 AM Changeset in webkit [176016] by
-
- 5 edits2 moves in trunk/Source
[GTK] Move RedirectedXCompositeWindow from platform to WebKit2 layer
https://bugs.webkit.org/show_bug.cgi?id=138093
Reviewed by Martin Robinson.
Source/WebCore:
Remove RedirectedXCompositeWindow.
- PlatformGTK.cmake:
Source/WebKit2:
It's only used by WebKitWebViewBase. While moving the code the
following cleanups have been made:
- Use NeverDestroyed instead of DEPRECATED_DEFINE_STATIC_LOCAL.
- Use a helper class XDamageNotifier to handle the XDamage events filtering and notification.
- Use std::function instead of pointer to function for the damage callback.
- Pass the X display to the RedirectedXCompositeWindow constructor and keep it as a member to use it everywhere, instead of using the default display in some places and the widget display in others.
- Pass the damage notify function as a contructor parameter of RedirectedXCompositeWindow instead of setting the callback right after creating the object.
- Remove GLContextNeeded and all the dead code related to the CreateGLContext mode that is no longer used.
- Rename cairoSurfaceForWidget() as surface().
- windowId() has been renamed as windowID() and made const.
- Use std::unique_ptr instead of PassOwnPtr.
- Fix coding style issues.
- PlatformGTK.cmake:
- UIProcess/API/gtk/WebKitWebViewBase.cpp:
(webkitWebViewBaseConstructed):
(webkitWebViewRenderAcceleratedCompositingResults):
(webkitWebViewBaseCreateWebPage):
(redirectedWindowDamagedCallback): Deleted.
- UIProcess/gtk/RedirectedXCompositeWindow.cpp: Renamed from Source/WebCore/platform/gtk/RedirectedXCompositeWindow.cpp.
(WebKit::XDamageNotifier::XDamageNotifier):
(WebKit::XDamageNotifier::add):
(WebKit::XDamageNotifier::remove):
(WebKit::XDamageNotifier::filterXDamageEvent):
(WebKit::XDamageNotifier::filterXEvent):
(WebKit::xDamageNotifier):
(WebKit::supportsXDamageAndXComposite):
(WebKit::RedirectedXCompositeWindow::create):
(WebKit::RedirectedXCompositeWindow::RedirectedXCompositeWindow):
(WebKit::RedirectedXCompositeWindow::~RedirectedXCompositeWindow):
(WebKit::RedirectedXCompositeWindow::resize):
(WebKit::RedirectedXCompositeWindow::cleanupPixmapAndPixmapSurface):
(WebKit::RedirectedXCompositeWindow::surface):
- UIProcess/gtk/RedirectedXCompositeWindow.h: Renamed from Source/WebCore/platform/gtk/RedirectedXCompositeWindow.h.
(WebKit::RedirectedXCompositeWindow::windowID):
- 3:25 AM Changeset in webkit [176015] by
-
- 2 edits in trunk/Tools
Unreviewed. Fix GTK+ clean build after r175930.
Partial rollout of r175930 to not build the new unit test that
broke clean builds in GTK+ port.
- TestWebKitAPI/PlatformGTK.cmake:
- 12:51 AM Changeset in webkit [176014] by
-
- 2 edits in releases/WebKitGTK/webkit-2.6/Source/WebCore
Merge r175974 - Protect Document in ProcessingInstruction::setXSLStyleSheet()
<http://webkit.org/b/138621>
Reviewed by Andreas Kling.
The patch is inspired by the following Blink revision by
<tasak@google.com>:
<https://src.chromium.org/viewvc/blink?view=rev&revision=182309>
- dom/ProcessingInstruction.cpp:
(WebCore::ProcessingInstruction::setXSLStyleSheet):
- 12:49 AM Changeset in webkit [176013] by
-
- 1 copy in releases/WebKitGTK/webkit-2.6.3
WebKitGTK+ 2.6.3
- 12:39 AM Changeset in webkit [176012] by
-
- 4 edits in releases/WebKitGTK/webkit-2.6
Unreviewed. Update OptionsGTK.cmake and NEWS for 2.6.3 release.
.:
- Source/cmake/OptionsGTK.cmake: Bump version numbers.
Source/WebKit2:
- gtk/NEWS: Add release notes for 2.6.3.
- 12:25 AM Changeset in webkit [176011] by
-
- 37 edits32 adds in trunk
Patch