Timeline



Apr 11, 2014:

10:59 PM Changeset in webkit [167181] by akling@apple.com
  • 3 edits in trunk/Source/WebCore

Make NodeList.length inline-cacheable by JSC.
<https://webkit.org/b/131579>

For objects with custom index or name getters, we have to make sure
that builtin properties take precedence. We do this by scanning the
ancestor chain for a suitable property slot before moving on to
named items.

With this patch, we now mark such builtins as cacheable. This is
safe since the whole point of doing this before processing named
items is to ensure the same slot is returned consistently.

Reviewed by Benjamin Poulain.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):

8:09 PM Changeset in webkit [167180] by ap@apple.com
  • 5 edits in trunk/Source/WebKit2

[Mac] Crashes when copying or pasting huge images
https://bugs.webkit.org/show_bug.cgi?id=131576
<rdar://problem/12131833>
<rdar://problem/14427398>

Reviewed by Darin Adler.

Added a few null checks for SharedMemory::create() return value in pasteboard code.
Error handling feels a bit sketchy, but

  • I'm not sure what it should look like ideally;
  • it matches the kind of error handling we already have in these functions;
  • it appears to work reasonably well in practice. We get empty content, which

is not nice, but not particularly problematic either. When copying an animated GIF,
we also get the GIF in RTFD flavor, so even pasting into NSTextViews works!

  • Platform/mac/SharedMemoryMac.cpp:

(WebKit::SharedMemory::createFromVMBuffer):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::WebContext::getPasteboardBufferForType):
(WebKit::WebContext::readBufferFromPasteboard):

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:

(WebKit::WebPlatformStrategies::setBufferForType):

  • WebProcess/WebCoreSupport/mac/WebDragClientMac.mm: (WebKit::WebDragClient::declareAndWriteDragImage):

Also renamed some variables to prevent name collisions with with nested scope.

7:49 PM Changeset in webkit [167179] by ryuan.choi@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed build fix on the EFL port after r167152

  • WebProcess/WebPage/PageOverlay.cpp:

(WebKit::PageOverlay::bounds):

6:56 PM Changeset in webkit [167178] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2] WebProcess crashes, when closing window after opening page by means of context menu
https://bugs.webkit.org/show_bug.cgi?id=131439

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-11
Reviewed by Tim Horton.

CoordinatedGraphicsLayer calls notifyFlushRequired() through its client when destroyed.
When PageOverlayController::notifyFlushRequired() is called, the DrawingArea could be null
because it's destoryed in WebPage::close().

  • WebProcess/WebPage/PageOverlayController.cpp:

(WebKit::PageOverlayController::notifyFlushRequired): Add null check of m_webPage->drawingArea().

6:24 PM Changeset in webkit [167177] by timothy_horton@apple.com
  • 4 edits in trunk/Source

Lots of compositing test failures after r167152
https://bugs.webkit.org/show_bug.cgi?id=131574

Reviewed by Simon Fraser.

  • WebProcess/WebPage/PageOverlayController.h:

Skip page overlay layers in layer tree dumps, for consistency between platforms.

  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::dumpProperties):
We were asking the parent's client whether the child should be dumped,
but really the child's client is the one who should decide.

5:43 PM Changeset in webkit [167176] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

ViewportConfiguration::layoutWidth() compute the width incorrectly when initial-scale+width do not fit in view
https://bugs.webkit.org/show_bug.cgi?id=131575

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-11
Reviewed by Enrica Casucci.

I made a mistake when writing the new viewport code: ViewportConfiguration::layoutWidth() uses m_contentSize in one place.
That make no sense, contentSize depends on the layout width.

  • page/ViewportConfiguration.cpp:

(WebCore::ViewportConfiguration::layoutWidth):

5:26 PM Changeset in webkit [167175] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Remove "numeric index getter" stuff from bindings code generator.
<https://webkit.org/b/131565>

This was used for an earlier generation of typed arrays. Now that JSC
has native typed array support, we're not using this functionality and
can just remove it.

Reviewed by Geoffrey Garen.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateGetOwnPropertySlotBody):
(HasComplexGetOwnProperty):
(InterfaceRequiresAttributesOnInstance):
(InstanceOverridesGetOwnPropertySlot):
(GenerateHeader):
(GenerateImplementation):

5:25 PM Changeset in webkit [167174] by Brian Burg
  • 3 edits
    1 copy
    4 adds in trunk/Source/JavaScriptCore

Web Replay: code generator should consider enclosing class when computing duplicate type names
https://bugs.webkit.org/show_bug.cgi?id=131554

Reviewed by Timothy Hatcher.

We need to prepend an enum's enclosing class, if any, so that multiple enums with the same name
can coexist without triggering a "duplicate types" error. Now, such enums must be referenced
by the enclosing class and enum name.

Added tests for the new syntax, and rebaselined one test to reflect a previous patch's change.

  • replay/scripts/CodeGeneratorReplayInputs.py:

(Type.type_name): Prepend the enclosing class name.
(Type.type_name.is):

  • replay/scripts/tests/expected/fail-on-duplicate-enum-type.json-error: Added.
  • replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.cpp: Added.
  • replay/scripts/tests/expected/generate-enums-with-same-base-name.json-TestReplayInputs.h: Added.
  • replay/scripts/tests/expected/generate-input-with-vector-members.json-TestReplayInputs.h: Rebaseline.
  • replay/scripts/tests/fail-on-duplicate-enum-type.json: Added.
  • replay/scripts/tests/generate-enums-with-same-base-name.json: Added.
5:19 PM Changeset in webkit [167173] by Brian Burg
  • 2 edits in trunk/Source/WebCore

Web Replay: consolidate decoding macros used in SerializationMethods
https://bugs.webkit.org/show_bug.cgi?id=131564

Reviewed by Timothy Hatcher.

We can use EncodingTraits<T>::DecodedType to create a local variable
with the appropriate decoded type, rather than special casing.

  • replay/SerializationMethods.cpp:

(JSC::EncodingTraits<NondeterministicInputBase>::decodeValue):
(JSC::EncodingTraits<KeypressCommand>::decodeValue):
(JSC::EncodingTraits<PlatformKeyboardEvent>::decodeValue):
(JSC::EncodingTraits<PlatformMouseEvent>::decodeValue):
(JSC::EncodingTraits<PlatformWheelEvent>::decodeValue):
(JSC::EncodingTraits<PluginData>::decodeValue):

4:51 PM Changeset in webkit [167172] by Beth Dakin
  • 13 edits in trunk/Source

Need WK2 API to disable rubber-banding
https://bugs.webkit.org/show_bug.cgi?id=131567

Reviewed by Simon Fraser.

Source/WebCore:

Page will now store a vertical and horizontal ScrollElasticity in case the API has
been called before the FrameView even exists.

New Page functions.

  • WebCore.exp.in:

Use Page’s cached ScrollElasticity.

  • page/FrameView.cpp:

(WebCore::FrameView::FrameView):

If there is already a FrameView, then assign it the new ScrollElasticity.

  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::setVerticalScrollElasticity):
(WebCore::Page::setHorizontalScrollElasticity):

  • page/Page.h:

(WebCore::Page::verticalScrollElasticity):
(WebCore::Page::horizontalScrollElasticity):

Source/WebKit2:

New API allows the client to enable/disable horizontal or vertical rubber-banding.
By default, rubber-banding is enabled.

  • UIProcess/API/C/WKPage.cpp:

(WKPageVerticalRubberBandingIsEnabled):
(WKPageSetEnableVerticalRubberBanding):
(WKPageHorizontalRubberBandingIsEnabled):
(WKPageSetEnableHorizontalRubberBanding):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::setEnableVerticalRubberBanding):
(WebKit::WebPageProxy::verticalRubberBandingIsEnabled):
(WebKit::WebPageProxy::setEnableHorizontalRubberBanding):
(WebKit::WebPageProxy::horizontalRubberBandingIsEnabled):

  • UIProcess/WebPageProxy.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::setEnableVerticalRubberBanding):
(WebKit::WebPage::setEnableHorizontalRubberBanding):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
4:50 PM Changeset in webkit [167171] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the Mac build.

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindIndicator):

4:49 PM Changeset in webkit [167170] by Martin Robinson
  • 3 edits in trunk/Source/WebCore

REGRESSION(167145): Many media tests fail
https://bugs.webkit.org/show_bug.cgi?id=131569

Reviewed by Brent Fulgham.

  • PlatformGTK.cmake: Add the localized strings file to the list of user agent scripts.
  • platform/gtk/RenderThemeGtk.cpp:

(WebCore::RenderThemeGtk::mediaControlsScript): Include the localized strings file in the script body.

4:31 PM Changeset in webkit [167169] by timothy_horton@apple.com
  • 7 edits
    2 adds in trunk/Source

[iOS WebKit2] Find-in-page indicator
https://bugs.webkit.org/show_bug.cgi?id=131510
<rdar://problem/16547777>

Reviewed by Simon Fraser and Enrica Casucci.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindUIAfterPageScroll):
WebKit2 will clear the selection if we reveal it while not enabling selection painting.
So, avoid revealing it.

(WebKit::FindController::findString):
(WebKit::FindController::hideFindIndicator):
(WebKit::FindController::willFindString):
(WebKit::FindController::didFailToFindString):
(WebKit::FindController::didHideFindIndicator):
#if out the cross-platform find indicator code on iOS; it will be replaced
by the code in FindControllerIOS.

  • WebProcess/WebPage/FindController.h:
  • WebProcess/WebPage/ios/FindControllerIOS.mm: Added.

(highlightColor):
(WebKit::FindIndicatorOverlayClientIOS::drawRect):
Paint the selection (with black text forced on), and the yellow rounded rect
into the indicator page overlay.

(WebKit::FindController::updateFindIndicator):
Create or update a small document-relative page overlay in the selection rect.

(WebKit::FindController::hideFindIndicator):
(WebKit::FindController::willFindString):
(WebKit::FindController::didFailToFindString):
(WebKit::FindController::didHideFindIndicator):
Add willFindString, didFailToFindString, and didHideFindIndicator functions.
They do nothing, except on iOS where they are used to prevent selection change
messages from being dispatched while using find-in-page, and to force
WebCore to compute a selection rect (via updateAppearance) despite the selection not being painted.

  • WebProcess/WebPage/ios/FindIndicatorOverlayClientIOS.h:

(WebKit::FindIndicatorOverlayClientIOS::setFrame):

  • editing/Editor.cpp:

(WebCore::Editor::findString):

  • editing/FindOptions.h:

Add a find option which prevents WebCore from revealing the selection
after selecting a successful find match.

4:20 PM Changeset in webkit [167168] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[GTK] Add HighDPI support for non-accelerated compositing contents
https://bugs.webkit.org/show_bug.cgi?id=131562

Patch by Owen Taylor <otaylor@redhat.com> on 2014-04-11
Reviewed by Martin Robinson.

Source/WebCore:

No new tests. This will be tested once we have the proper dependencies in the WebKit testing
JHBuild.

  • platform/cairo/WidgetBackingStore.h:

(WebCore::WidgetBackingStore::WidgetBackingStore): Accept a device scale argument.

  • platform/cairo/WidgetBackingStoreCairo.cpp: Use the device scale argument to make the surface the proper size and set the surface device scale.
  • platform/cairo/WidgetBackingStoreCairo.h: Accept a device scale argument.
  • platform/graphics/cairo/CairoUtilities.cpp: Add a new helper to set the device scale if Cairo built against is new enough.
  • platform/graphics/cairo/CairoUtilities.h:
  • platform/gtk/GtkVersioning.h: Add the HAVE_GTK_SCALE_FACTOR macro.
  • platform/gtk/WidgetBackingStoreGtkX11.cpp: Use the device scale argument to make the surface the proper size and set the surface device scale.
  • platform/gtk/WidgetBackingStoreGtkX11.h: Accept a device scale argument.

Source/WebKit2:

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(scaleFactorChanged): Added this callback to pass scale changes to the page proxy.
(webkitWebViewBaseCreateWebPage): Attach the callback to the notify signal.

  • UIProcess/cairo/BackingStoreCairo.cpp:

(WebKit::createBackingStoreForGTK): Pass the scale factor to the WebCore backing store.
(WebKit::BackingStore::incorporateUpdate): Ditto.

4:09 PM Changeset in webkit [167167] by jhoneycutt@apple.com
  • 3 edits
    2 adds in trunk

Assertion failure changing select element size during focus event
dispatch
<https://bugs.webkit.org/show_bug.cgi?id=131566>
<rdar://problem/16400735>

Reviewed by Andy Estes.

Source/WebCore:

Test: fast/forms/select-change-size-during-focus.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
Adopt the fix from Chromium r171216; check that the renderer is still
of the expected type, and return early if it is not.

LayoutTests:

  • fast/forms/select-change-size-during-focus-expected.txt: Added.
  • fast/forms/select-change-size-during-focus.html: Added.
3:46 PM Changeset in webkit [167166] by Bem Jones-Bey
  • 3 edits
    2 adds in trunk

Clear sibling floats while splitting inline flow
https://bugs.webkit.org/show_bug.cgi?id=130905

Reviewed by David Hyatt.

Source/WebCore:

This is a port of a Blink patch by kenrb@chromium.org.
(https://src.chromium.org/viewvc/blink?revision=169658&view=revision)

During RenderInline::splitFlow(), floats are cleared on an anonymous
containingBlock() for the inline being split. This is a problem if
siblings of the block contain references to the same floats, since the
float removal code in markSiblingsWithFloatsForLayout() will not later
find them.

This change also affects RenderBlock::splitFlow() and
RenderBoxModelObject::moveChildrenTo, since those are called in
similar situations as RenderInline::splitFlow().

Test: fast/block/float/split-inline-sibling-of-float-crash.html

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::removeFloatingObjects): Add call to

markSiblingsWithFloatsForLayout() before removing floats.

LayoutTests:

This test will only crash if run with Address Sanitizer or some other
address checking tool.

  • fast/block/float/split-inline-sibling-of-float-crash-expected.txt: Added.
  • fast/block/float/split-inline-sibling-of-float-crash.html: Added.
3:38 PM Changeset in webkit [167165] by barraclough@apple.com
  • 69 edits
    2 adds
    3 deletes in trunk

Rollout - Rewrite Function.bind as a builtin
https://bugs.webkit.org/show_bug.cgi?id=131083

Unreviewed.

Rolling out r167020 while investigating a performance regression.

Source/JavaScriptCore:

  • API/JSObjectRef.cpp:

(JSObjectMakeConstructor):

  • API/JSScriptRef.cpp:

(parseScript):

(JSC::BuiltinExecutables::createBuiltinExecutable):

  • builtins/Function.prototype.js:

(apply):
(bind.bindingFunction): Deleted.
(bind.else.bindingFunction): Deleted.
(bind): Deleted.

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::generateFunctionCodeBlock):

  • bytecompiler/NodesCodegen.cpp:

(JSC::InstanceOfNode::emitBytecode):

  • interpreter/Interpreter.cpp:
  • parser/Lexer.cpp:

(JSC::Lexer<T>::Lexer):
(JSC::Lexer<LChar>::parseIdentifier):
(JSC::Lexer<UChar>::parseIdentifier):

  • parser/Lexer.h:
  • parser/Parser.cpp:

(JSC::Parser<LexerType>::Parser):
(JSC::Parser<LexerType>::parseInner):

  • parser/Parser.h:

(JSC::parse):

  • parser/ParserModes.h:
  • runtime/ArgumentsIteratorConstructor.cpp:

(JSC::ArgumentsIteratorConstructor::finishCreation):

  • runtime/ArrayConstructor.cpp:

(JSC::ArrayConstructor::finishCreation):

  • runtime/BooleanConstructor.cpp:

(JSC::BooleanConstructor::finishCreation):

  • runtime/CodeCache.cpp:

(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

  • runtime/CommonIdentifiers.h:
  • runtime/Completion.cpp:

(JSC::checkSyntax):

  • runtime/DateConstructor.cpp:

(JSC::DateConstructor::finishCreation):

  • runtime/ErrorConstructor.cpp:

(JSC::ErrorConstructor::finishCreation):

  • runtime/Executable.cpp:

(JSC::ProgramExecutable::checkSyntax):

  • runtime/FunctionConstructor.cpp:

(JSC::FunctionConstructor::finishCreation):

  • runtime/FunctionPrototype.cpp:

(JSC::FunctionPrototype::addFunctionProperties):
(JSC::functionProtoFuncBind):

  • runtime/JSArrayBufferConstructor.cpp:

(JSC::JSArrayBufferConstructor::finishCreation):

  • runtime/JSBoundFunction.cpp: Added.

(JSC::boundFunctionCall):
(JSC::boundFunctionConstruct):
(JSC::JSBoundFunction::create):
(JSC::JSBoundFunction::destroy):
(JSC::JSBoundFunction::customHasInstance):
(JSC::JSBoundFunction::JSBoundFunction):
(JSC::JSBoundFunction::finishCreation):
(JSC::JSBoundFunction::visitChildren):

  • runtime/JSBoundFunction.h: Added.

(JSC::JSBoundFunction::targetFunction):
(JSC::JSBoundFunction::boundThis):
(JSC::JSBoundFunction::boundArgs):
(JSC::JSBoundFunction::createStructure):

  • runtime/JSFunction.cpp:

(JSC::RetrieveCallerFunctionFunctor::RetrieveCallerFunctionFunctor):
(JSC::RetrieveCallerFunctionFunctor::operator()):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::getOwnNonIndexPropertyNames):
(JSC::JSFunction::put):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSGenericTypedArrayViewConstructorInlines.h:

(JSC::JSGenericTypedArrayViewConstructor<ViewClass>::finishCreation):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncSetTypeErrorAccessor): Deleted.

  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectPrototypeProperty): Deleted.
(JSC::JSObject::putDirectPrototypePropertyWithoutTransitions): Deleted.

  • runtime/JSObject.h:
  • runtime/JSPromiseConstructor.cpp:

(JSC::JSPromiseConstructor::finishCreation):

  • runtime/MapConstructor.cpp:

(JSC::MapConstructor::finishCreation):

  • runtime/MapIteratorConstructor.cpp:

(JSC::MapIteratorConstructor::finishCreation):

  • runtime/NameConstructor.cpp:

(JSC::NameConstructor::finishCreation):

  • runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructor::finishCreation):

  • runtime/NumberConstructor.cpp:

(JSC::NumberConstructor::finishCreation):

  • runtime/ObjectConstructor.cpp:

(JSC::ObjectConstructor::finishCreation):

  • runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::finishCreation):

  • runtime/SetConstructor.cpp:

(JSC::SetConstructor::finishCreation):

  • runtime/SetIteratorConstructor.cpp:

(JSC::SetIteratorConstructor::finishCreation):

  • runtime/StringConstructor.cpp:

(JSC::StringConstructor::finishCreation):

  • runtime/WeakMapConstructor.cpp:

(JSC::WeakMapConstructor::finishCreation):

Source/WebCore:

  • bindings/js/JSImageConstructor.cpp:

(WebCore::JSImageConstructor::finishCreation):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorHelperMethods):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObjectConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetterConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructorConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTargetConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestExceptionConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:

(WebCore::JSTestGenerateIsReachableConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorConstructor::finishCreation):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestNode.cpp:

(WebCore::JSTestNodeConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsConstructor::finishCreation):

  • bindings/scripts/test/JS/JSattribute.cpp:

(WebCore::JSattributeConstructor::finishCreation):

  • bindings/scripts/test/JS/JSreadonly.cpp:

(WebCore::JSreadonlyConstructor::finishCreation):

LayoutTests:

  • js/dom/function-bind-expected.txt:
  • js/regress/function-bind-expected.txt: Removed.
  • js/regress/function-bind.html: Removed.
  • js/regress/script-tests/function-bind.js: Removed.
3:36 PM Changeset in webkit [167164] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

[WK2] Dispatch to main thread's run loop to handle cookie requests.
https://bugs.webkit.org/show_bug.cgi?id=131524

Reviewed by Brady Eidson.

When using synchronous network APIs from the main thread (e.g., -[NSImage
initWithContentsOfURL:]) our cookie shim would attempt to dispath_async
to the main thread to handle the cookie request, and block against the original
request. CFNetwork is still servicing the run loop however, so rather than
dispatch_async to the main queue, use the RunLoop to dispatch to the main thread.

  • Shared/mac/CookieStorageShim.mm:

(-[WKNSURLSessionLocal _getCookieHeadersForTask:completionHandler:]):

3:29 PM Changeset in webkit [167163] by Lucas Forschler
  • 2 edits in tags/Safari-538.26.5/Source/WebCore

Merged r167160.

3:23 PM Changeset in webkit [167162] by mmaxfield@apple.com
  • 1 edit in trunk/Source/WebCore/ChangeLog

Build Fix after r167151.

Unreviewed.

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::applyAlternativeTextToRange):

3:17 PM Changeset in webkit [167161] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[EME][Mac] Using KeySession.update([renew]) should trigger KeyMessage event instead of NeedKey event
https://bugs.webkit.org/show_bug.cgi?id=131527

Reviewed by Eric Carlson.

Rather than triggering a needKey() event, necessatating the creation
of an entirely new MediaKeySession, cause a new key request to be
created by sending the same initData back into the AVSampleDataParser.

Also, do some drive-by clean up suggested by Darin in the review for
r166509.

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

(WebCore::isEqual): Support an alloc-free equality check between

Uint8Array and static strings.

(WebCore::CDMSessionMediaSourceAVFObjC::update):

3:13 PM Changeset in webkit [167160] by ddkilzer@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix (r167151): Do not dereference Node::document() before passing to Range::create()
<https://webkit.org/b/131475>

Fixes the following build failure:

WebCore/editing/AlternativeTextController.cpp:275:71: error: indirection requires pointer operand ('WebCore::Document' invalid)

int paragraphStartIndex = TextIterator::rangeLength(Range::create(*rootNode.document(), &rootNode, 0, paragraphRangeContainingCorrection.get()->startContainer(), paragraphRangeContainingCorrection.get()->startOffset()).get());

~

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::applyAlternativeTextToRange):
Remove unneeded '*' operator since Node::document() returns a
Document& and Range::create() accepts a Document& for its first
argument.

3:07 PM Changeset in webkit [167159] by Lucas Forschler
  • 2 edits
    1 copy in tags/Safari-538.26.5

Merged r167151.

3:02 PM Changeset in webkit [167158] by Lucas Forschler
  • 5 edits in tags/Safari-538.26.5/Source

Versioning.

3:01 PM Changeset in webkit [167157] by Brian Burg
  • 3 edits
    1 add in trunk

Web Replay: memoize nondeterministic attributes of the Navigator interface
https://bugs.webkit.org/show_bug.cgi?id=131340

Reviewed by Timothy Hatcher.

.:

  • ManualTests/inspector/replay-window-navigator-basic.html: Added.

Source/WebCore:

Most attributes of window.navigator do not change very often, but they
could be easily changed by the user or embedder. So, memoize attribute values.

This change does not include navigator.mimeTypes and navigator.plugins,
which will be handled at a different level. <https://webkit.org/b/131341>

Test: ManualTests/inspector/replay-window-navigator-basic.html

  • page/Navigator.idl: Add Nondeterministic attribute.
2:58 PM April 2014 Meeting edited by ddkilzer@apple.com
(diff)
2:58 PM Changeset in webkit [167156] by Lucas Forschler
  • 1 copy in tags/Safari-538.26.5

New Tag.

2:56 PM Changeset in webkit [167155] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

Make the stylebot happier with r167154.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/PageClientImplIOS.h:
2:55 PM Changeset in webkit [167154] by timothy_horton@apple.com
  • 9 edits in trunk/Source/WebKit2

[iOS WebKit2] Expose a simplified zoom-to-rect to the WebProcess
https://bugs.webkit.org/show_bug.cgi?id=131563

Reviewed by Simon Fraser.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::zoomToRect):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::zoomToRect):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::zoomToRect):
Add a simple message that calls WKContentView's zoom-to-rect code given just a rect and min/max scale.
We will use the center of the rect as the zoom origin, and will try to show the whole rect.

2:50 PM Changeset in webkit [167153] by jer.noble@apple.com
  • 10 edits in trunk/Source

[iOS][WK2] Videos should animate into and out of fullscreen.
https://bugs.webkit.org/show_bug.cgi?id=131497

Reviewed by Simon Fraser.

Source/WebCore:

Use AVPlayerViewController's new enterFullScreenWithCompletionHandler: and exitFullScreenWithCompletionHandler:
methods to animate into and out of full screen. To do so, use the provided initialFrame and finalFrame screen
rects to correctly place the AVPlayerViewController's view before entering or exiting fullscreen.

  • platform/ios/WebVideoFullscreenControllerAVKit.mm:

(-[WebVideoFullscreenController enterFullscreen:]): Pass the media element's screen rect.
(-[WebVideoFullscreenController exitFullscreen]): Ditto.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:
  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVPlayerController playerViewController:shouldExitFullScreenWithReason:]): Renamed from shouldDismissWithReason.
(WebVideoFullscreenInterfaceAVKit::enterFullscreen): Use the new AVKit APIs.
(WebVideoFullscreenInterfaceAVKit::exitFullscreen): Ditto.

  • WebCore.exp.in: Modify the exported symbols for enter and exitFullscreen.

Source/WebKit2:

Pass a starting rect for the enterFullscreen animation and an ending rect
for the exitFullscreen animation.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.h:
  • UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:
  • UIProcess/ios/WebVideoFullscreenManagerProxy.mm:

(WebKit::WebVideoFullscreenManagerProxy::enterFullscreenWithID): Pass initialFrame.

  • WebProcess/ios/WebVideoFullscreenManager.mm:

(WebKit::screenRectOfContents): Casts node -> element and returns its screenRect().
(WebKit::WebVideoFullscreenManager::enterFullscreenForNode): Pass initialFrame.
(WebKit::WebVideoFullscreenManager::exitFullscreenForNode): Pass finalFrame.

2:41 PM Changeset in webkit [167152] by timothy_horton@apple.com
  • 16 edits in trunk/Source

Support document-relative and custom-frame page overlays
https://bugs.webkit.org/show_bug.cgi?id=131560
<rdar://problem/16595556>

Reviewed by Simon Fraser.

Add "document-relative" overlays, which attach to (and scroll with) the document,
and can be given a frame rect within the document to avoid overallocation of backing store.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::didChangeScrollOffset):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::mainFrame):
(WebKit::WebPage::mainFrameView):
(WebKit::WebPage::didChangeScrollOffsetForFrame):

  • WebProcess/WebPage/WebPage.h:

Let the PageOverlayController know *which* frame scrolled, instead of "any frame".

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindUIAfterPageScroll):
Factor out shared code.

(WebKit::FindController::willMoveToWebPage):
(WebKit::FindController::drawRect):
We can use clearRect() instead of a transparency layer and fillRect().
I've looked through all the other overlay clients I know of and none of them
depend on having a transparency layer at the overlay level.

  • WebProcess/WebPage/PageOverlay.cpp:

(WebKit::PageOverlay::create):
(WebKit::PageOverlay::PageOverlay):
(WebKit::PageOverlay::bounds):
(WebKit::PageOverlay::frame):
(WebKit::PageOverlay::setFrame):
(WebKit::PageOverlay::drawRect):
Add OverlayType, which allows creation of Document or View relative overlays.
All overlays up to this point are View relative, so we default to that.
Document-relative overlays scroll with the page instead of repainting as
the page scrolls. They can also be given an explicit frame, allowing them
to be smaller than the entire document.

  • WebProcess/WebPage/PageOverlay.h:

(WebKit::PageOverlay::overlayType):
(WebKit::PageOverlay::webPage):
(WebKit::PageOverlay::client): Deleted.

  • WebProcess/WebPage/PageOverlayController.cpp:

(WebKit::PageOverlayController::initialize):
(WebKit::PageOverlayController::installPageOverlay):
(WebKit::PageOverlayController::uninstallPageOverlay):
(WebKit::PageOverlayController::updateForceSynchronousScrollLayerPositionUpdates):
(WebKit::updateOverlayGeometry):
(WebKit::PageOverlayController::setPageOverlayNeedsDisplay):
(WebKit::PageOverlayController::didChangeViewSize):
(WebKit::PageOverlayController::didChangeDocumentSize):
(WebKit::PageOverlayController::didChangeDeviceScaleFactor):
(WebKit::PageOverlayController::didScrollFrame):
(WebKit::PageOverlayController::flushPageOverlayLayers):
(WebKit::PageOverlayController::didChangeOverlayFrame):
Keep two overlay root layers - one for view-relative
and one for document-relative overlays.
Don't force synchronous scrolling if we only have document-relative overlays.
Update the overlay's position as well as its size whenever necessary.
Update document-relative overlay geometry when the document size changes.
Only explicitly flush view-relative overlays; document-relative ones
are plugged into the WebCore layer tree and flushed along with the page.

  • WebProcess/WebPage/PageOverlayController.h:

(WebKit::PageOverlayController::documentOverlayRootLayer):
(WebKit::PageOverlayController::viewOverlayRootLayer):

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::setRootCompositingLayer):
(WebKit::RemoteLayerTreeDrawingArea::mainFrameContentSizeChanged):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::mainFrameContentSizeChanged):
(WebKit::TiledCoreAnimationDrawingArea::setRootCompositingLayer):
Let the PageOverlay controller know when the document size changes.
When we set up compositing, push the document overlay root layer
down into WebCore.

  • WebCore.exp.in:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::RenderLayerCompositor):
(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
(WebCore::RenderLayerCompositor::setDocumentOverlayRootLayer):

  • rendering/RenderLayerCompositor.h:

Add the concept of a document overlay layer, which is plugged in as the
last child of the root content layer. Expose it to WebKit2.

2:35 PM Changeset in webkit [167151] by mmaxfield@apple.com
  • 2 edits
    1 add in trunk

Autocorrection causes ASSERT when replacing alternative string
https://bugs.webkit.org/show_bug.cgi?id=131475

Reviewed by Ryosuke Niwa.

In AlternativeTextController::applyAlternativeTextToRange(), we attempt to create
a Range that crosses from outside of a shadow root to inside of one. Instead,
we should keep the Range entirely within the shadow root.

Test: ManualTests/autocorrection/autocorrection-accept-crash.html

  • editing/AlternativeTextController.cpp:

(WebCore::AlternativeTextController::applyAlternativeTextToRange):

2:27 PM Changeset in webkit [167150] by hmuller@adobe.com
  • 4 edits
    2 adds in trunk

[CSS Shapes] shape-outside from image doesn't load properly
https://bugs.webkit.org/show_bug.cgi?id=131491

Reviewed by Bem Jones-Bey.

Source/WebCore:

Make RenderImage::imageChanged() call super if there's a shape-outside
image because the shape-outside imageChanged() logic is in RenderBox.

Test: http/tests/css/shape-image-file.html

  • rendering/RenderElement.h:

(WebCore::RenderElement::hasShapeOutside):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::imageChanged):

LayoutTests:

  • http/tests/css/shape-image-file-expected.html: Added.
  • http/tests/css/shape-image-file.html: Added.
2:11 PM Changeset in webkit [167149] by ddkilzer@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

[ASan] Build broke because libCompileRuntimeToLLVMIR.a links to libclang_rt.asan_osx_dynamic.dylib
<http://webkit.org/b/131556>
<rdar://problem/16591856>

Reviewed by Brent Fulgham.

  • Configurations/CompileRuntimeToLLVMIR.xcconfig: Clear

OTHER_LDFLAGS so the ASan build does not try to link to
libclang_rt.asan_osx_dynamic.dylib.

2:09 PM Changeset in webkit [167148] by beidson@apple.com
  • 3 edits in trunk/Source/WebCore

Aggregate multiple "respondToChangedSelection" calls to one scan for telephone numbers
https://bugs.webkit.org/show_bug.cgi?id=131559

Reviewed by Gavin Barraclough.

No new tests (Perf-only change to an untested feature)

  • editing/Editor.cpp:

(WebCore::Editor::Editor):
(WebCore::Editor::respondToChangedSelection): Start a one shot timer for scanSelectionForTelephoneNumbers

instead of scanning synchronously.

(WebCore::Editor::scanSelectionForTelephoneNumbers):

  • editing/Editor.h:
2:01 PM Changeset in webkit [167147] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

Try to fix windows build.

Patch by Antti Koivisto <Antti Koivisto> on 2014-04-11

  • platform/graphics/ca/GraphicsLayerCA.h:
1:58 PM Changeset in webkit [167146] by Antti Koivisto
  • 1 edit in trunk/Source/WebCore/ChangeLog

Try to fix windows build.

  • platform/graphics/ca/GraphicsLayerCA.h:
1:49 PM April 2014 Meeting edited by Bem Jones-Bey
(diff)
1:42 PM Changeset in webkit [167145] by Brent Fulgham
  • 8 edits
    2 adds in trunk/Source/WebCore

Regression: media controls and status messages are no longer localized.
https://bugs.webkit.org/show_bug.cgi?id=120956

Reviewed by Jer Noble.

  • English.lproj/mediaControlsLocalizedStrings.js: Added.

(mediaControlsLocalizedStrings): Moved from mediaControlsApple.js.

  • English.lproj/mediaControlsLocalizedStringsiOS.js: Added.

(mediaControlsLocalizedStringsiOS): Moved from mediaControlsiOS.js.

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.UIString): Get strings from external file.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS.prototype.UIString): Ditto.

  • WebCore.vcxproj/copyWebCoreResourceFiles.cmd: Copy to Windows bundle.
  • WebCore.xcodeproj/project.pbxproj: Copy new files to bundle.
  • rendering/RenderThemeIOS.mm:

(WebCore::RenderThemeIOS::mediaControlsScript): Load the locale-specific
string resource when loading the media controls.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::mediaControlsScript): Ditto.

  • rendering/RenderThemeWin.cpp:

(WebCore::RenderThemeWin::mediaControlsScript): Ditto.

1:36 PM Changeset in webkit [167144] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

[Win] Build fix after r167138

  • platform/graphics/ca/GraphicsLayerCA.h: The TileController is

only available on Mac/Cocoa builds.

1:33 PM Changeset in webkit [167143] by psolanki@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS WebKit2]: Share NSURLCache directory for webkit processes
https://bugs.webkit.org/show_bug.cgi?id=131513
<rdar://problem/16420859>

Reviewed by Alexey Proskuryakov.

Use iOS specific NSURLCache API to share the cache directory used by the networking process,
web process and Safari.

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

1:29 PM April 2014 Meeting edited by Bem Jones-Bey
(diff)
1:24 PM Changeset in webkit [167142] by mark.lam@apple.com
  • 20 edits
    2 adds in trunk

JSMainThreadExecState::call() should clear exceptions before returning.
<https://webkit.org/b/131530>

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

Added a version of JSC::call() that return any uncaught exception instead
of leaving it pending in the VM.

As part of this change, I updated various parts of the code base to use the
new API as needed.

  • bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptFunctionCall::call):

  • ScriptFunctionCall::call() is only used by the inspector to inject scripts. The injected scripts that will include Inspector scripts that should catch and handle any exceptions that were thrown. We should not be seeing any exceptions returned from this call. However, we do have checks for exceptions in case there are bugs in the Inspector scripts which allowed the exception to leak through. Hence, it is proper to clear the exception here, and only record the fact that an exception was seen (if present).
  • bindings/ScriptFunctionCall.h:
  • inspector/InspectorEnvironment.h:
  • runtime/CallData.cpp:

(JSC::call):

  • runtime/CallData.h:

Source/WebCore:

Test: fast/dom/regress-131530.html

Previously, JSMainThreadExecState::call() did not clear any pending
exceptions in the VM before returning. On returning, the
JSMainThreadExecState destructor may re-enter the VM to notify
MutationObservers. This may result in a crash because the VM expects
exceptions to be cleared at entry.

We now change JSMainThreadExecState::call() to return the exception
(if present) via an argument, and clear it from the VM before returning.

As part of this change, I updated various parts of the code base to use the
new API as needed.

  • bindings/js/JSCallbackData.cpp:

(WebCore::JSCallbackData::invokeCallback):

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/js/JSDOMGlobalObjectTask.cpp:
  • Assert that there's no unhandled exception after the Microtask returns. See comment for WebCore::JSMainThreadExecState::runTask below for more details.
  • bindings/js/JSErrorHandler.cpp:

(WebCore::JSErrorHandler::handleEvent):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::JSHTMLDocument::open):

  • Document.open() cannot be the first function on the JS stack. Hence, there is no need to use JSMainThreadExecState to call into the VM, as this is only needed to catch the event of returning from the first function for the purpose of notifying MutationObservers. Change to call JSC::call() directly.
  • bindings/js/JSMainThreadExecState.cpp:

(WebCore::functionCallHandlerFromAnyThread):

  • bindings/js/JSMainThreadExecState.h:

(WebCore::JSMainThreadExecState::call):
(WebCore::JSMainThreadExecState::evaluate):

  • Remove the explicitly acquisition of the JSLock here because we now acquire the JSLock as part of the JSMainThreadExecState instance.

(WebCore::JSMainThreadExecState::runTask):

  • Added an assert to verify that the task does not return with an unhandled exception. Currently, the only Microtask in use is for the Promise implementation, which will eat the exception before returning. This assertion is added here to verify that this contract does not inadvertantly change in the future.

(WebCore::JSMainThreadExecState::JSMainThreadExecState):

  • Now acquires the JSLock as well since by definition, we're only instantiating the JSMainThreadExecState because we're about to enter the VM.
  • bindings/js/JSMutationCallback.cpp:

(WebCore::JSMutationCallback::call):

  • bindings/js/JSNodeFilterCondition.cpp:

(WebCore::JSNodeFilterCondition::acceptNode):

  • acceptNode() is only used in the TreeWalker and NodeIterator APIs which cannot be the first function on the JS stack. Hence, we should call JSC::call() directly instead of going through JSMainThreadExecState.
  • bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::executeFunctionInContext):

  • bindings/objc/WebScriptObject.mm:

(WebCore::addExceptionToConsole):
(-[WebScriptObject callWebScriptMethod:withArguments:]):

LayoutTests:

  • fast/dom/regress-131530-expected.txt: Added.
  • fast/dom/regress-131530.html: Added.
1:22 PM Changeset in webkit [167141] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Add IconServices to WebProcess sandbox profile
https://bugs.webkit.org/show_bug.cgi?id=131558
<rdar://problem/16552397>

Reviewed by Brady Eidson.

  • WebProcess/com.apple.WebProcess.sb.in:
1:20 PM April 2014 Meeting edited by Bem Jones-Bey
(diff)
1:17 PM April 2014 Meeting edited by Bem Jones-Bey
(diff)
1:05 PM Changeset in webkit [167140] by Brian Burg
  • 2 edits
    10 adds in trunk/Source/WebCore

Web Replay: CodeGeneratorJS should guard includes of replay-related headers
https://bugs.webkit.org/show_bug.cgi?id=131407

Reviewed by Timothy Hatcher.

This patch adds guards to headers that are only required by generated replay code
that is itself guarded. Other ports probably haven't added the headers to their
build files, so we don't want to emit the unused header includes.

This patch also converts generated uses of DEFINE_STATIC_LOCAL to NeverDestroyed<T>.
Finally, a new bindings test was added to document changes to generated replay code.

Test: Source/WebCore/bindings/scripts/test/TestNondeterministic.idl

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(GenerateImplementationFunctionCall):

  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.cpp: Added.
  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.h: Added.
  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministic.symbols: Added.
  • bindings/scripts/test/GObject/WebKitDOMTestNondeterministicPrivate.h: Added.
  • bindings/scripts/test/JS/JSTestNondeterministic.cpp: Added.
  • bindings/scripts/test/JS/JSTestNondeterministic.h: Added.
  • bindings/scripts/test/ObjC/DOMTestNondeterministic.h: Added.
  • bindings/scripts/test/ObjC/DOMTestNondeterministic.mm: Added.
  • bindings/scripts/test/ObjC/DOMTestNondeterministicInternal.h: Added.
  • bindings/scripts/test/TestNondeterministic.idl: Added.
12:04 PM Changeset in webkit [167139] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Support for audio and video tracks was added on r158436. Stop skipping the following tests:

media/track/audio-track.html
media/track/video-track.html

Update bug number for media/track/track*in-band*.html tests

Report and update text expectations for new failing tests:

media/track/track-remove-track.html
fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-svg.html
media/media-event-listeners.html

Update timeout expectation for media/video-controls-captions.html

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-04-11

  • platform/gtk/TestExpectations:
11:58 AM Changeset in webkit [167138] by Antti Koivisto
  • 16 edits in trunk/Source

Pipe initial scale factor to TileController
https://bugs.webkit.org/show_bug.cgi?id=131521

Reviewed by Tim Horton.

Source/WebCore:

  • WebCore.exp.in:
  • page/Page.cpp:

(WebCore::Page::Page):
(WebCore::Page::setZoomedOutPageScaleFactor):

  • page/Page.h:

(WebCore::Page::zoomedOutPageScaleFactor):

  • platform/graphics/GraphicsLayerClient.h:

(WebCore::GraphicsLayerClient::zoomedOutPageScaleFactor):

  • platform/graphics/TiledBacking.h:
  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateContentsScale):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::TileController):
(WebCore::TileController::setContentsScale):
(WebCore::TileController::setZoomedOutContentsScale):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::zoomedOutPageScaleFactor):

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::zoomedOutPageScaleFactor):

  • rendering/RenderLayerCompositor.h:

Source/WebKit2:

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::viewportConfigurationChanged):

11:39 AM Changeset in webkit [167137] by oliver@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Add BuiltinLog function to make debugging builtins easier
https://bugs.webkit.org/show_bug.cgi?id=131550

Reviewed by Andreas Kling.

Add a logging function that builtins can use for debugging.

  • runtime/CommonIdentifiers.h:
  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncBuiltinLog):

  • runtime/JSGlobalObjectFunctions.h:
11:32 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
11:23 AM Changeset in webkit [167136] by Chris Fleizach
  • 2 edits in trunk/Source/WebKit2

AX: WebProcess at com.apple.WebCore: WebCore::AXObjectCache::rootObject + 18
https://bugs.webkit.org/show_bug.cgi?id=131522

Reviewed by Anders Carlsson.

Protect against documents that have had their render tree destroyed, and no longer return a valid cache.

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm:
11:18 AM Changeset in webkit [167135] by Chris Fleizach
  • 3 edits
    2 adds in trunk

Heap-use-after-free in WebCore::SpeechSynthesisUtterance::startTime
https://bugs.webkit.org/show_bug.cgi?id=131482

Reviewed by David Kilzer.

Source/WebCore:

Hold onto the utterance until it has time to fire, in case other references have been removed.

Merged from Blink r171077 by <dmazzoni@chromium.org>

Test: platform/mac/fast/speechsynthesis/speech-synthesis-gc-utterance-crash.html

  • Modules/speech/SpeechSynthesis.cpp:

(WebCore::SpeechSynthesis::handleSpeakingCompleted):

LayoutTests:

  • platform/mac/fast/speechsynthesis/speech-synthesis-gc-utterance-crash-expected.txt: Added.
  • platform/mac/fast/speechsynthesis/speech-synthesis-gc-utterance-crash.html: Added.
10:56 AM Changeset in webkit [167134] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebCore

Avoid Vector copies in RenderGrid::placeItemsOnGrid()
https://bugs.webkit.org/show_bug.cgi?id=131452

Reviewed by Sergio Villar Senin.

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::placeSpecifiedMajorAxisItemsOnGrid): Take in a const reference to the
Vector object. Make the for-loop that iterates through it range-based.
(WebCore::RenderGrid::placeAutoMajorAxisItemsOnGrid): Ditto.

  • rendering/RenderGrid.h:
10:48 AM Changeset in webkit [167133] by commit-queue@webkit.org
  • 15 edits
    1 move
    1 add
    1 delete in trunk/Source/WebCore

Web Inspector: Remove shared PageScriptDebugServer, create per-Page
https://bugs.webkit.org/show_bug.cgi?id=131523

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-11
Reviewed by Timothy Hatcher.

Having a shared PageScriptDebugServer was causing issues when we called
JSC::Debugger::clearBreakpoints() closing one inspector while another
is open for another WebCore::Page in the same process. Having the same
JSC::Debugger underlying multiple InspectorDebuggerAgent instances
means that when clearBreakpoints is called, the real JSC breakpoints
underlying other InspectorDebuggerAgent's get removed. When those
InspectorDebuggerAgents attempt to remove their breakpoints they
encounter unexpected issues.

This entirely rebuilds PageScriptDebugServer to be per-Page instead
of shared across all pages. So take this opportunity to move the
file from WebCore/bindings/js to WebCore/inspector.

  • CMakeLists.txt:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/PageScriptDebugServer.h: Removed.
  • inspector/InspectorAllInOne.cpp:

Move PageScriptDebugServer.

  • inspector/InspectorController.h:
  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):
Set the ScriptDebugServer directly on some other agents that
were previously using the global debug server.

  • inspector/InspectorProfilerAgent.h:

(WebCore::InspectorProfilerAgent::scriptDebugServer):

  • inspector/InspectorProfilerAgent.cpp:

(WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
(WebCore::InspectorProfilerAgent::setScriptDebugServer):
(WebCore::InspectorProfilerAgent::start):
(WebCore::InspectorProfilerAgent::willDestroyFrontendAndBackend): Deleted.

  • inspector/InspectorTimelineAgent.h:
  • inspector/InspectorTimelineAgent.cpp:

(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):
(WebCore::InspectorTimelineAgent::setPageScriptDebugServer):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
Refactor these two agents to take in a script debug server.
The server is expected to be set during initialization and
to always be valid (like debug server on RuntimeAgent).

  • inspector/PageDebuggerAgent.h:
  • inspector/PageDebuggerAgent.cpp:

(WebCore::PageDebuggerAgent::PageDebuggerAgent):
(WebCore::PageDebuggerAgent::startListeningScriptDebugServer):
(WebCore::PageDebuggerAgent::stopListeningScriptDebugServer):
(WebCore::PageDebuggerAgent::scriptDebugServer):
Have PageDebuggerAgent hold the PageScriptDebugServer.
Update for the simplified interfaces.

  • inspector/PageScriptDebugServer.h: Added.
  • inspector/PageScriptDebugServer.cpp: Renamed from Source/WebCore/bindings/js/PageScriptDebugServer.cpp.

(WebCore::PageScriptDebugServer::PageScriptDebugServer):
(WebCore::PageScriptDebugServer::addListener):
(WebCore::PageScriptDebugServer::removeListener):
(WebCore::PageScriptDebugServer::recompileAllJSFunctions):
(WebCore::PageScriptDebugServer::didPause):
(WebCore::PageScriptDebugServer::didContinue):
(WebCore::PageScriptDebugServer::runEventLoopWhilePaused):
(WebCore::PageScriptDebugServer::runEventLoopWhilePausedInternal):
(WebCore::PageScriptDebugServer::isContentScript):
(WebCore::PageScriptDebugServer::reportException):
(WebCore::PageScriptDebugServer::setJavaScriptPaused):
Model after JSGlobalObjectScriptDebugServer, the PageScriptDebugServer
holds a reference to a Page.

10:09 AM Changeset in webkit [167132] by betravis@adobe.com
  • 14 edits in trunk

[CSS Shapes] inset args and radial args should serialize to the simplest form
https://bugs.webkit.org/show_bug.cgi?id=129825

Reviewed by Dirk Schulze.

Source/WebCore:

Modify inset serialization to omit components where possible. The insets simplify
according to the margin shorthand, while the corner radii simplify according to
the border-radius shorthand.

Modifying existing parsing tests.

  • css/CSSBasicShapes.cpp:

(WebCore::buildInsetRadii): Add the necessary radii, omitting components where possible.
(WebCore::buildInsetString): Omit components where possible.

LayoutTests:

Modify tests to use the shortened inset serialization.

  • animations/resources/animation-test-helpers.js: Accept shortened inset forms.
  • css3/masking/clip-path-animation-expected.txt:
  • css3/masking/clip-path-animation.html:
  • fast/masking/parsing-clip-path-shape-expected.txt:
  • fast/masking/parsing-clip-path-shape.html:
  • fast/shapes/parsing/parsing-shape-lengths-expected.txt:
  • fast/shapes/parsing/parsing-shape-lengths.html:
  • fast/shapes/parsing/parsing-shape-outside-expected.txt:
  • fast/shapes/parsing/parsing-test-utils.js:
  • fast/shapes/shape-outside-floats/shape-outside-animation-expected.txt:
  • fast/shapes/shape-outside-floats/shape-outside-animation.html:
9:52 AM Changeset in webkit [167131] by commit-queue@webkit.org
  • 6 edits
    2 adds in trunk

"playbackTime" parameter is not present in AudioProcessingEvent Interface as per W3C spec
https://bugs.webkit.org/show_bug.cgi?id=105518

Patch by Praveen R Jadhav <praveen.j@samsung.com> on 2014-04-11
Reviewed by Jer Noble.

Source/WebCore:

Attribute "playbackTime" in AudioProcessingEvent implemented to pass playback time of
audiobuffer associated with ScriptProcessorNode of the context.

Reference: https://codereview.chromium.org/210973002

Spec: http://www.w3.org/TR/webaudio/#AudioProcessingEvent

Test: webaudio/audioprocessingevent.html

  • Modules/webaudio/AudioProcessingEvent.cpp:

(WebCore::AudioProcessingEvent::create):
(WebCore::AudioProcessingEvent::AudioProcessingEvent):

  • Modules/webaudio/AudioProcessingEvent.h:

(WebCore::AudioProcessingEvent::playbackTime):

  • Modules/webaudio/AudioProcessingEvent.idl:
  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::fireProcessEvent):

LayoutTests:

Test case added to check AudioProcessingEvent attributes.

  • webaudio/audioprocessingevent-expected.txt: Added.
  • webaudio/audioprocessingevent.html: Added.
9:51 AM Changeset in webkit [167130] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit2

[Mac] Prevent crash when exiting fullscreen mode
https://bugs.webkit.org/show_bug.cgi?id=131528

Reviewed by Jer Noble.

  • UIProcess/mac/WKFullScreenWindowController.mm:

(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
Clean up the _scaleAnimation controller, not just the _fadeAnimation controller.
(-[WKFullScreenWindowController close]): If we are doing an immediate
close of the view, we need to stop animations so we avoid any
final timer events from interacting with invalid window handles.

9:50 AM Changeset in webkit [167129] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: WK1: Trail of cruft in redraw during animations.
https://bugs.webkit.org/show_bug.cgi?id=131525

Reviewed by Simon Fraser.

Use enclosing rect instead of snapping to make sure the repaint rect always
covers the dirty area when painting is requested in a non-compositing RenderView.
This only applies to WK1 as WK2 has compositing RenderView and the repainting
is managed by RenderLayerBacking.

This is a temporary solution until after ScrollView/FrameView/RenderView
is transitioned to device pixels. (tracked here: webkit.org/b/131526).

Source/WebCore:

Test: fast/repaint/hidpi-block-width-change-leaves-cruft.html

  • rendering/RenderView.cpp:

(WebCore::RenderView::repaintViewRectangle):

LayoutTests:

  • fast/repaint/hidpi-block-width-change-leaves-cruft-expected.html: Added.
  • fast/repaint/hidpi-block-width-change-leaves-cruft.html: Added.
9:00 AM Changeset in webkit [167128] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

wk2-gtk does not display anything
https://bugs.webkit.org/show_bug.cgi?id=125558

Reviewed by Martin Robinson.

Remove fcntl call to set access mode flags on the duplicated files
descriptor. Those flags are ignored in Linux and make fcntl to
fail in FreeBSD. We should handle the case where the passed
protection is ReadOnly.
Thanks to Raphael Kubo da Costa who proposed the solution.

  • Platform/unix/SharedMemoryUnix.cpp:

(WebKit::SharedMemory::createHandle):
(WebKit::accessModeFile): Deleted.

8:55 AM Changeset in webkit [167127] by Julien Brianceau
  • 5 edits in trunk/Source/JavaScriptCore

Fix LLInt for sh4 architecture (broken since C stack merge).
https://bugs.webkit.org/show_bug.cgi?id=131532

Reviewed by Mark Lam.

This patch fixes build and also implements sh4 parts for initPCRelative and
setEntryAddress macros introduced in http://trac.webkit.org/changeset/167094.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter32_64.asm:
  • offlineasm/instructions.rb:
  • offlineasm/sh4.rb:
8:43 AM Changeset in webkit [167126] by dino@apple.com
  • 4 edits in trunk/Source/WebCore

WebGL: need error checking after texture uploads
https://bugs.webkit.org/show_bug.cgi?id=62902
rdar://problem/9640309

Reviewed by Brent Fulgham.

A followup to Darin's r167109. We need to also check for errors
in the texImage2D case.

This is difficult to reproducibly test because it would require
attempting to exhaust GPU memory.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::compressedTexImage2D): Check for errors by calling
moveErrorsToSyntheticErrorList twice, once before and once after. If an error
occurred, explicitly mark the texture as invalid.
(WebCore::WebGLRenderingContext::texImage2DBase): Ditto.

  • html/canvas/WebGLTexture.cpp:

(WebCore::WebGLTexture::markInvalid): If the LevelInfo exists for this
mipmap level, then set the valid flag to false. There is a chance that
a previous call to texImage2D succeeded for this level, but it's probably
better to assume that is now invalid.

  • html/canvas/WebGLTexture.h: New markInvalid method.
6:20 AM Changeset in webkit [167125] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Update test expectations for flaky tests timing out:

media/track/track-remove-active-cue-crash.html
media/media-ended.html
media/audio-mpeg-supported.html

Patch by Enrique Ocaña González <eocanha@igalia.com> on 2014-04-11

  • platform/gtk/TestExpectations:
6:08 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
5:52 AM WebKitGTK/KeepingTheTreeGreen edited by Andres Gomez
Tanty won't have the needed time :( (diff)
5:51 AM WebKitGTK/KeepingTheTreeGreen edited by eocanha@igalia.com
(diff)
5:49 AM WebKitGTK/KeepingTheTreeGreen edited by eocanha@igalia.com
(diff)
5:44 AM Changeset in webkit [167124] by krit@webkit.org
  • 1 edit
    2 adds in trunk/PerformanceTests

Optimize Canvas fill and drawImage with SourceIn, DestinationIn, SourceOut, and DestinationAtop using transparencyLayer.
https://bugs.webkit.org/show_bug.cgi?id=79659

Patch by Dirk Schulze <krit@webkit.org> on 2014-04-11
Reviewed by Andreas Kling.

Add performance tests for real this time.

  • Canvas/compositing-drawimage.html: Added.
  • Canvas/compositing-fillRect.html: Added.
5:37 AM Changeset in webkit [167123] by krit@webkit.org
  • 1 edit in trunk/PerformanceTests/ChangeLog

Optimize Canvas fill and drawImage with SourceIn, DestinationIn, SourceOut, and DestinationAtop using transparencyLayer.
https://bugs.webkit.org/show_bug.cgi?id=79659

Patch by Dirk Schulze <krit@webkit.org> on 2014-04-11
Reviewed by Andreas Kling.

Add performance tests for fillRect() and drawImage() on composited contexts.

  • Canvas/compositing-drawimage.html: Added.
  • Canvas/compositing-fillRect.html: Added.
3:52 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
3:50 AM Changeset in webkit [167122] by Carlos Garcia Campos
  • 3 edits in releases/WebKitGTK/webkit-2.4/Source/WebKit2

Merge r167116 - [GTK][WK2] Move Vector objects into WebEditorClient::executePendingEditorCommands() invocations
https://bugs.webkit.org/show_bug.cgi?id=131454

Reviewed by Carlos Garcia Campos.

  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:

(WebKit::WebEditorClient::executePendingEditorCommands): Take a const reference of the Vector
object to avoid unnecessary copies. Also deploy two range-based for loops and efficiently move
the Editor::Command objects into the other Vector.

3:49 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
3:39 AM Changeset in webkit [167121] by Carlos Garcia Campos
  • 9 edits in releases/WebKitGTK/webkit-2.4

Merge r166924 - [SOUP] Control cookie management according ResourceRequest.allowCookies()
https://bugs.webkit.org/show_bug.cgi?id=131026

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-04-08
Reviewed by Sergio Villar Senin.

Source/WebCore:

Added per soup-message disabling of cookie jar manager when related ResourceRequest does not allow cookies (e.g. some cross-origin requests).

Patch is covered by unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessageMembers): Added disabling of cookie jar manager if cookies are not allowed.

Source/WebKit2:

Added setting of accept cookies policy for the current soup network session cookie jar and all tracked sessions.
Moved the implementation of cookie policy setting from WebCookieManager to WebFrameNetworkingContext.

  • WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:

(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): Moved implementation to WebCookieManager::platformSetHTTPCookieAcceptPolicy.

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:

(WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): Moved implementation from WebCookieManager::platformSetHTTPCookieAcceptPolicy and set the cookie jar accept policy to the cookie jars of all sessions in addition to the default cookie jar.

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h: Added method prototype.

LayoutTests:

  • platform/efl/TestExpectations: Unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.
  • platform/gtk/TestExpectations: Ditto.
3:22 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
3:22 AM Changeset in webkit [167120] by Carlos Garcia Campos
  • 5 edits in releases/WebKitGTK/webkit-2.4/Source/WebCore

Unreviewed. [GTK] Plugin process crashes when loading totem plugin
https://bugs.webkit.org/show_bug.cgi?id=131357

Make Netscape browser functions static to avoid conflicts with
plugins defining those functions as well.

  • GNUmakefile.list.am: Do not build npapi.cpp.
  • plugins/PluginPackage.cpp:

(WebCore::pluginViewForInstance):
(WebCore::NPN_MemAlloc):
(WebCore::NPN_MemFree):
(WebCore::NPN_MemFlush):
(WebCore::NPN_ReloadPlugins):
(WebCore::NPN_RequestRead):
(WebCore::NPN_GetURLNotify):
(WebCore::NPN_GetURL):
(WebCore::NPN_PostURLNotify):
(WebCore::NPN_PostURL):
(WebCore::NPN_NewStream):
(WebCore::NPN_Write):
(WebCore::NPN_DestroyStream):
(WebCore::NPN_UserAgent):
(WebCore::NPN_Status):
(WebCore::NPN_InvalidateRect):
(WebCore::NPN_InvalidateRegion):
(WebCore::NPN_ForceRedraw):
(WebCore::NPN_GetValue):
(WebCore::NPN_SetValue):
(WebCore::NPN_GetJavaEnv):
(WebCore::NPN_GetJavaPeer):
(WebCore::NPN_PushPopupsEnabledState):
(WebCore::NPN_PopPopupsEnabledState):
(WebCore::NPN_PluginThreadAsyncCall):
(WebCore::NPN_GetValueForURL):
(WebCore::NPN_SetValueForURL):
(WebCore::NPN_GetAuthenticationInfo):
(WebCore::NPN_PopUpContextMenu):

  • plugins/PluginPackage.h:

(WebCore::PluginPackage::browserFuncs): Add accessor to browser
function pointers.

  • plugins/PluginView.cpp:

(WebCore::PluginView::stop): Use browser function pointers instead
of NPN wrappers that are now private.
(WebCore::PluginView::getValueForURL): Ditto.

2:23 AM Changeset in webkit [167119] by mitz@apple.com
  • 7 edits in tags/Safari-538.28.2/Source/WebKit2

Merged r167096.

2014-04-10 Enrica Casucci <enrica@apple.com>

[iOS WebKit2] Support phraseboundary gesture recognizer for CJK.
https://bugs.webkit.org/show_bug.cgi?id=131493
<rdar://problem/16319583>

Reviewed by Benjamin Poulain.

On iOS it is possible with a gesture to change the selection
within the marked text.
Changing the selection triggers also the update of the inline candidates
over the keyboard area.
The patch adds the logic to decide whether the gesture can begin
as well as the code for the movement of
the selection within the marked range.
The gesture is allowed to start within a given radius from the marked
area.

  • Shared/InteractionInformationAtPosition.cpp:

(WebKit::InteractionInformationAtPosition::encode):
(WebKit::InteractionInformationAtPosition::decode):

  • Shared/InteractionInformationAtPosition.h:

(WebKit::InteractionInformationAtPosition::InteractionInformationAtPosition):

  • Shared/ios/GestureTypes.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::editorStateChanged):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView pointIsNearMarkedText:]):
(toGestureType):
(toUIWKGestureType):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::selectWithGesture):
(WebKit::WebPage::getPositionInformation):

2:17 AM Changeset in webkit [167118] by mitz@apple.com
  • 5 edits in tags/Safari-538.28.2/Source

Versioning.

2:11 AM Changeset in webkit [167117] by mitz@apple.com
  • 1 copy in tags/Safari-538.28.2

New tag.

1:24 AM Changeset in webkit [167116] by zandobersek@gmail.com
  • 3 edits in trunk/Source/WebKit2

[GTK][WK2] Move Vector objects into WebEditorClient::executePendingEditorCommands() invocations
https://bugs.webkit.org/show_bug.cgi?id=131454

Reviewed by Carlos Garcia Campos.

  • WebProcess/WebCoreSupport/WebEditorClient.h:
  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp:

(WebKit::WebEditorClient::executePendingEditorCommands): Take a const reference of the Vector
object to avoid unnecessary copies. Also deploy two range-based for loops and efficiently move
the Editor::Command objects into the other Vector.

12:53 AM WebKitGTK/2.4.x edited by sergio@webkit.org
Stable branch not affected by 131471 (diff)

Apr 10, 2014:

11:32 PM Changeset in webkit [167115] by zandobersek@gmail.com
  • 2 edits in trunk/Tools

[CMake] Add missing WTF unit tests
https://bugs.webkit.org/show_bug.cgi?id=131459

Reviewed by Martin Robinson.

  • TestWebKitAPI/CMakeLists.txt: Add a few missing source files

that should be compiled into the TestWTF binary.

11:16 PM Changeset in webkit [167114] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

<rdar://problem/16582465> [Cocoa] Avoid casts from CF types to unrelated Objective-C types
https://bugs.webkit.org/show_bug.cgi?id=131529

Reviewed by Mark Rowe.

  • Shared/API/c/cf/WKStringCF.mm:

(WKStringCreateWithCFString): Cast the CFStringRef into its toll-free-bridged counterpart,
NSString, then cast the NSString into a WKNSString.

  • Shared/API/c/cf/WKURLCF.mm:

(WKURLCreateWithCFURL): Cast the CFURLRef into its toll-free-bridged counterpart, NSURL,
then cast the NSURL into a WKNSURL.

10:23 PM Changeset in webkit [167113] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

BundlePageDiagnosticLoggingClient leaks every string passing through it.
https://bugs.webkit.org/show_bug.cgi?id=130140

Reviewed by Brent Fulgham.

  • WebProcess/InjectedBundle/InjectedBundlePageDiagnosticLoggingClient.cpp:

(WebKit::InjectedBundlePageDiagnosticLoggingClient::logDiagnosticMessage): Don’t copy the
strings passed into the bundle client.

10:19 PM Changeset in webkit [167112] by msaboff@apple.com
  • 2 edits
    1 add in trunk/Source/JavaScriptCore

Crash beneath DFG JIT code @ video.disney.com
https://bugs.webkit.org/show_bug.cgi?id=131447

Reviewed by Geoffrey Garen.

The 32-bit path of speculateMisc() uses an 'is not int32' check followed by
'tag not less than Undefined' check. The first check was incorrectly elided if we
knew that the value *was* an int32, when it should have been elided if we already
knew that the value *was not* an int32.

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculateMisc):

  • tests/stress/test-spec-misc.js: Added test.

(getX):
(foo):
(bar):

9:05 PM Changeset in webkit [167111] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Make room for additional types in SpeculatedType.h
https://bugs.webkit.org/show_bug.cgi?id=131422

Reviewed by Sam Weinig.

This'll make it easier to add DoubleHeavyNaN and DoubleEmptyNaN.

  • bytecode/SpeculatedType.h:
8:52 PM Changeset in webkit [167110] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

Try to fix the debug bots after r167102

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-10

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

7:44 PM Changeset in webkit [167109] by Darin Adler
  • 6 edits in trunk/Source/WebCore

WebGL: need error checking after texture and buffer uploads in some cases
https://bugs.webkit.org/show_bug.cgi?id=62902
rdar://problem/9640309

Reviewed by Dean Jackson.

Not clear how to write a test for this.

  • html/canvas/WebGLBuffer.cpp:

(WebCore::WebGLBuffer::disassociateBufferData): Added.

  • html/canvas/WebGLBuffer.h: Added disassociateBufferData.
  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::bufferData): Check for errors by calling
moveErrorsToSyntheticErrorList twice, once before and once after. If an error
occurred, call the WebGLBuffer so it doesn't think it has data.
(WebCore::WebGLRenderingContext::bufferSubData): Ditto.

  • platform/graphics/GraphicsContext3D.h: Added moveErrorsToSyntheticErrorList.
  • platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:

(WebCore::GraphicsContext3D::moveErrorsToSyntheticErrorList): Added. Calls
glError and moves any errors to the synthetic error list.
(WebCore::GraphicsContext3D::getError): Added call to moveErrorsToSyntheticErrorList
to preserve error ordering.
(WebCore::GraphicsContext3D::synthesizeGLError): Ditto.

7:17 PM Changeset in webkit [167108] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Compile fix for Win64.
https://bugs.webkit.org/show_bug.cgi?id=131508

Patch by Alex Christensen <achristensen@webkit.org> on 2014-04-10
Reviewed by Geoffrey Garen.

  • assembler/X86Assembler.h:

(JSC::X86Assembler::fillNops):
Added unsigned template parameter to distinguish between size_t and unsigned long.

6:54 PM Changeset in webkit [167107] by bshafiei@apple.com
  • 2 edits in tags/Safari-538.28.1/Source/WebCore

Merged r167106.

6:37 PM Changeset in webkit [167106] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix to deal with CoreText changes.

Reviewed by Benjamin Poulain.

This is a temporary fix until CT fixes the issue.

  • rendering/RenderThemeIOS.mm:
6:23 PM Changeset in webkit [167105] by bshafiei@apple.com
  • 5 edits in tags/Safari-538.28.1/Source

Versioning.

6:20 PM Changeset in webkit [167104] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.28.1

New tag.

6:17 PM Changeset in webkit [167103] by barraclough@apple.com
  • 3 edits in trunk/Source/WebKit2

Add user default for FTL JIT
https://bugs.webkit.org/show_bug.cgi?id=131520

Reviewed by Benjamin Poulain.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::decode):

  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):

  • D'oh, whitespace.
6:13 PM Changeset in webkit [167102] by barraclough@apple.com
  • 5 edits in trunk/Source/WebKit2

Add user default for FTL JIT
https://bugs.webkit.org/show_bug.cgi?id=131520

Reviewed by Benjamin Poulain.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::WebProcessCreationParameters):
(WebKit::WebProcessCreationParameters::encode):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.h:
    • pass setting to WebContent process.
  • UIProcess/mac/WebContextMac.mm:

(WebKit::registerUserDefaultsIfNeeded):
(WebKit::WebContext::platformInitializeWebProcess):

  • read user default.
  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

  • set JSC::Option.
6:02 PM Changeset in webkit [167101] by Brent Fulgham
  • 5 edits in trunk/Source/WTF

[Win] Clean up some 64-bit warnings from Visual Studio analyzer
https://bugs.webkit.org/show_bug.cgi?id=131514

Reviewed by Tim Horton.

  • WTF.vcxproj/WTF.vcxproj: Use correct platform settings for

64-bit build.

  • config.h: Ditto.
  • wtf/CurrentTime.cpp:

(WTF::highResUpTime): Resolve warning about deprecated API.

  • wtf/StackBounds.cpp:

(WTF::StackBounds::initialize): Silence warning about
an uninitialized variable.

5:53 PM Changeset in webkit [167100] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Notify the form delegate when the custom button in the form accessory view is tapped
https://bugs.webkit.org/show_bug.cgi?id=131518

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/_WKFormDelegate.h: Declared new delegate method.
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView accessoryAutoFill]): Call the new delegate method.

5:50 PM Changeset in webkit [167099] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit2

Unreviewed, rolling out r167097.
https://bugs.webkit.org/show_bug.cgi?id=131519

there was already a mechanism for this, and this was
incomplete anyway (Requested by thorton on #webkit).

Reverted changeset:

"[iOS WebKit2] Disable the find overlay for now"
https://bugs.webkit.org/show_bug.cgi?id=131509
http://trac.webkit.org/changeset/167097

5:27 PM Changeset in webkit [167098] by commit-queue@webkit.org
  • 9 edits
    4 deletes in trunk

Unreviewed, rolling out r167073.
https://bugs.webkit.org/show_bug.cgi?id=131516

This patch caused crashes in video tests. (Requested by
mrobinson on #webkit).

Reverted changeset:

Source/WebCore:

"[GStreamer] No CORS support for media elements"
https://bugs.webkit.org/show_bug.cgi?id=99037
http://trac.webkit.org/changeset/167073

LayoutTests:

"[GStreamer] No CORS support for media elements"
https://bugs.webkit.org/show_bug.cgi?id=99037
http://trac.webkit.org/changeset/167073

4:52 PM Changeset in webkit [167097] by timothy_horton@apple.com
  • 5 edits in trunk/Source/WebKit2

[iOS WebKit2] Disable the find overlay for now
https://bugs.webkit.org/show_bug.cgi?id=131509

Reviewed by Adele Peterson.

  • Shared/WebPreferencesStore.h:
  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::FindController):
(WebKit::FindController::hideFindOverlay):
(WebKit::FindController::hideFindUI):
(WebKit::FindController::setShouldShowOverlay):

  • WebProcess/WebPage/FindController.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):
Add a setting allowing us to turn off the find-in-page overlay on iOS.

4:23 PM Changeset in webkit [167096] by enrica@apple.com
  • 7 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r167074.

This involves replacing resetDragSession() by
resetCurrentDragInformation() and dragSession().operation by
currentDragOperation().

Patch by Sergio Villar Senin <svillar@igalia.com> on 2014-04-10

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDataReceived):
(webkitWebViewBaseDragMotion):
(dragExitedCallback):

3:53 PM Changeset in webkit [167095] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

Radio buttons are using the wrong sizes and margins
https://bugs.webkit.org/show_bug.cgi?id=131503

Reviewed by Jer Noble.

This is a regression that I caused recently when I combined radio button and
checkbox code.

  • platform/mac/ThemeMac.mm:

(WebCore::paintToggleButton):

3:33 PM Changeset in webkit [167094] by msaboff@apple.com
  • 40 edits in trunk/Source

LLInt interpreter code should be generated as part of one function
https://bugs.webkit.org/show_bug.cgi?id=131205

Reviewed by Mark Lam.

Source/JavaScriptCore:

Changed the generation of llint opcodes so that they are all part of the same
global function, llint_entry. That function is used to fill in an entry point
table that includes each of the opcodes and helpers.

Added appropriate use of new -I option to offline assembler and offset
generator scripts.

  • llint/LowLevelInterpreter.asm:
  • llint/LowLevelInterpreter.cpp:
  • llint/LowLevelInterpreter.h:
  • offlineasm/arm.rb:
  • offlineasm/arm64.rb:
  • offlineasm/asm.rb:
  • offlineasm/ast.rb:
  • offlineasm/backends.rb:
  • offlineasm/cloop.rb:
  • offlineasm/generate_offset_extractor.rb:
  • offlineasm/instructions.rb:
  • offlineasm/parser.rb:
  • offlineasm/registers.rb:
  • offlineasm/self_hash.rb:
  • offlineasm/settings.rb:
  • offlineasm/transform.rb:
  • offlineasm/x86.rb:

Added a new "global" keyword to the offline assembler that denotes a label that
should be exported. Added opcode and operand support to get the absolute
address of a local label using position independent calculations. Updated the
offline assembler to handle included files, both when generating the checksum
as well as including files from other than the local directory via a newly
added -I option. The offline assembler now automatically determines external
functions by keeping track of referenced functions that are defined within the
assembly source. This is used both for choosing the correct macro for external
references as well as generating the needed EXTERN directives for masm.
Updated the generation of the masm only .sym file to be written once at the end
of the offline assembler.

  • assembler/MacroAssemblerCodeRef.h:

(JSC::MacroAssemblerCodePtr::createLLIntCodePtr):
(JSC::MacroAssemblerCodeRef::createLLIntCodeRef):

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::dumpBytecode):
(JSC::CodeBlock::CodeBlock):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFromLLInt):

  • bytecode/Opcode.h:

(JSC::padOpcodeName):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFromLLInt):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JITStubs.h:
  • llint/LLIntCLoop.cpp:

(JSC::LLInt::initialize):

  • llint/LLIntData.h:

(JSC::LLInt::getCodeFunctionPtr):
(JSC::LLInt::getOpcode): Deleted.
(JSC::LLInt::getCodePtr): Deleted.

  • llint/LLIntOpcode.h:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntThunks.cpp:

(JSC::LLInt::functionForCallEntryThunkGenerator):
(JSC::LLInt::functionForConstructEntryThunkGenerator):
(JSC::LLInt::functionForCallArityCheckThunkGenerator):
(JSC::LLInt::functionForConstructArityCheckThunkGenerator):
(JSC::LLInt::evalEntryThunkGenerator):
(JSC::LLInt::programEntryThunkGenerator):

  • llint/LLIntThunks.h:

Changed references to llint helpers to go through the entry point table populated
by llint_entry. Added helpers to OpcodeID enum for all builds.

  • bytecode/BytecodeList.json:
  • generate-bytecode-files:
  • llint/LLIntCLoop.cpp:

(JSC::LLInt::CLoop::initialize):
Reordered sections to match the order that the functions are added to the entry point
table. Added new "asmPrefix" property for symbols that have one name but are generated
with a prefix, e.g. op_enter -> llint_op_enter. Eliminated the "emitDefineID" property
as we are using enums for all bytecode references. Changed the C Loop only
llint_c_loop_init to llint_entry.

Source/WebKit:

Updated VS dependencies for JavaScriptCore changes.

  • WebKit.vcxproj/WebKit.sln:
3:23 PM Changeset in webkit [167093] by jhoneycutt@apple.com
  • 4 edits
    2 adds in trunk

Assertion failure in WebCore::FlexBoxIterator::next()
<https://bugs.webkit.org/show_bug.cgi?id=117176>
<rdar://problem/14054549>

Source/WebCore:

Code added in r115687 began removing anonymous wrappers when children
become inline. However, there are some objects, like
RenderDeprecatedFlexBox, whose children should always be blocks.

Reviewed by Tim Horton.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::canCollapseAnonymousBlockChild):
Made public.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::removeAnonymousWrappersForInlinesIfNecessary):
Return early if we can't collapse anonymous block children.

LayoutTests:

Reviewed by Tim Horton.

  • fast/flexbox/collapse-anonymous-wrappers-assertion-expected.txt: Added.
  • fast/flexbox/collapse-anonymous-wrappers-assertion.html: Added.
3:23 PM Changeset in webkit [167092] by jhoneycutt@apple.com
  • 3 edits
    2 adds in trunk
Assertion failure, !node
node->isElementNode(), in

WebCore::RenderBlock::clone()
<https://bugs.webkit.org/show_bug.cgi?id=110489>
<rdar://problem/13666425>

Reviewed by Antti Koivisto.

Source/WebCore:

We're ending up in RenderBlock::splitBlocks() with |this| ==
|fromBlock|. We then try to climb the ancestor block chain from
this->parent() to |fromBlock|, but this->parent() is already above
|fromBlock|, so we end up climbing up to the RenderView and trying to
clone it, causing the assertion failure.

Adopt Chromium's mitigation for this from
<https://codereview.chromium.org/13852041>. This is not intended as a
fix for the underlying issue.

Also, fix another issue that occurs with this fuzzed test case that's
not handled by the Chromium fix.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::splitBlocks):
Ensure while we're in the loop that |curr| is a descendant of
|fromBlock|. From the Chromium patch:

We need to check in every iteration of the loop because
moveChildrenTo could have moved |curr|. This is a mitigation and
not really a fix against a class of tree craziness.

Finally, before moving children from |fromBlock| to |toBlock|, ensure
that the children are children of |fromBlock|. If we never entered the
loop, they will be siblings of |fromBlock|, not children.

LayoutTests:

  • fast/multicol/fuzzed-test-case-expected.txt: Added.
  • fast/multicol/fuzzed-test-case.html: Added.
3:17 PM Changeset in webkit [167091] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix after http://trac.webkit.org/changeset/167085.

Reviewed by Timothy Hatcher.

  • plugins/PluginData.h:
3:09 PM Changeset in webkit [167090] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Web Inspector: Breakpoint in gutter has clipped / broken border image.
https://bugs.webkit.org/show_bug.cgi?id=131500

Reviewed by Joseph Pecoraro.

Typo in r166925.

Source/WebCore:

Test: fast/borders/border-image-slice-missing-right.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

  • fast/borders/border-image-slice-missing-right-expected.html: Added.
  • fast/borders/border-image-slice-missing-right.html: Added.
2:44 PM Changeset in webkit [167089] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: AXI: expose aria-busy state of current and ancestor nodes
https://bugs.webkit.org/show_bug.cgi?id=130826

Patch by James Craig <jcraig@apple.com> on 2014-04-10
Reviewed by Timothy Hatcher.

Source/WebCore:

Test: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

Expose if node is contained by any "busy" ancestor nodes, too.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

LayoutTests:

Expose if node is contained by any "busy" ancestor nodes, too.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
2:27 PM Changeset in webkit [167088] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

[Win] Unreviewed 64-bit Build Fix.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Provide

proper mangled names for 64-bit build.

2:25 PM Changeset in webkit [167087] by commit-queue@webkit.org
  • 2 edits
    4 adds in trunk/Source/JavaScriptCore

WIP for inlining C++. Added a build target to produce LLVM IR.
https://bugs.webkit.org/show_bug.cgi?id=130523

Patch by Matthew Mirman <mmirman@apple.com> on 2014-04-10
Reviewed by Mark Rowe.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • build-symbol-table-index.py: Added.
  • build-symbol-table-index.sh: Added.
  • Configurations/CompileRuntimeToLLVMIR.xcconfig: Added.
  • copy-llvm-ir-to-derived-sources.sh: Added.
1:57 PM Changeset in webkit [167086] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Remove unused ruler in overlay code
https://bugs.webkit.org/show_bug.cgi?id=131507

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-10
Reviewed by Timothy Hatcher.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::highlightConfigFromInspectorObject):

  • inspector/InspectorOverlay.cpp:

(WebCore::buildObjectForHighlight):

  • inspector/InspectorOverlay.h:

(WebCore::Highlight::Highlight):
(WebCore::Highlight::setDataFromConfig):

  • inspector/InspectorOverlayPage.js:

(_drawFragmentHighlight):
(_drawRegionNumber): Deleted.
(quadToPath): Deleted.
(drawOutlinedQuad): Deleted.
(pathCommand): Deleted.
(drawPath): Deleted.
(drawOutlinedQuadWithClip): Deleted.
(quadEquals): Deleted.
(drawGutter): Deleted.
(drawNodeHighlight): Deleted.
(drawQuadHighlight): Deleted.
(setPlatform): Deleted.
(dispatch): Deleted.
(log): Deleted.

1:52 PM Changeset in webkit [167085] by Brian Burg
  • 12 edits
    2 adds in trunk

Web Replay: memoize plugin data for navigator.mimeTypes and navigator.plugins
https://bugs.webkit.org/show_bug.cgi?id=131341

Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

Add support for encoding/decoding unsigned long with EncodedValue.
It is a distinct type from uint32_t and uint64_t.

  • replay/EncodedValue.cpp:

(JSC::EncodedValue::convertTo<unsigned long>):

  • replay/EncodedValue.h:

Source/WebCore:

Information about plugins and mime types is nondeterministic and can change
at any time, whether by system events, browser settings changes, or
triggered by script. To avoid interposing on all those code paths, just
memoize the plugin data used by DOMPluginArray and DOMMimeTypeArray.

This is less efficient than controlling mutations to the underlying PluginData
of a Page, but that can be done later if better plugin support is desired.
The point of this change is to make analytics trackers deterministic across
enabling/disabling of plugins.

Test: LayoutTests/inspector/window-navigator-plugins-memoized.hml

  • plugins/DOMMimeTypeArray.cpp:

(WebCore::DOMMimeTypeArray::getPluginData):

  • plugins/DOMPluginArray.cpp:

(WebCore::DOMPluginArray::pluginData): Save or restore memoized plugin
data during capture and replay, respectively.

  • plugins/PluginData.h:

(WebCore::PluginData::PluginData): Add a constructor that uses the
provided plugin data rather than fetching live plugin data. This is
marked protected so it's only used by a subclass specifically for
deserialization.

  • replay/SerializationMethods.cpp: Add encoder specializations.

(JSC::EncodingTraits<MimeClassInfo>::encodeValue):
(JSC::EncodingTraits<MimeClassInfo>::decodeValue):
(JSC::EncodingTraits<PluginInfo>::encodeValue):
(JSC::EncodingTraits<PluginInfo>::decodeValue):
(JSC::EncodingTraits<PluginData>::encodeValue):
(JSC::DeserializedPluginData::DeserializedPluginData): Add a custom
subclass of PluginData that can be initialized from deserialized data.
(JSC::EncodingTraits<PluginData>::decodeValue):

  • replay/SerializationMethods.h:
  • replay/WebInputs.json: Add new input FetchPluginData.

LayoutTests:

Add support for different setup methods before the initial navigation of
capture and replay. This is necessary to test that the value of
navigator.plugins is the same on replay even if the underlying data changed.

  • http/tests/inspector/replay/replay-test.js:

(InspectorTestProxy.runSingleSegmentRefTest): Add calls to optional setup
functions in the test page called setupPreCapture and setupPreReplay.

1:34 PM April 2014 Meeting edited by ddkilzer@apple.com
(diff)
12:26 PM Changeset in webkit [167084] by svillar@igalia.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed GTK build fix after r167074.

This involves replacing resetDragSession() by
resetCurrentDragInformation() and dragSession().operation by
currentDragOperation().

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDataReceived):
(webkitWebViewBaseDragMotion):
(dragExitedCallback):

12:22 PM Changeset in webkit [167083] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Update text expectations for new failing tests:

accessibility/help-text.html
fast/css/cascade/box-shadow-and-webkit-box-shadow-cascade-order.html
fast/css3-text/css3-text-decoration/text-decoration-skip/glyph-inside-underline.html

Update test expectations related with highdpi still not supported.

On r166930 test media/track/opera/interfaces/TextTrackList/onremovetrack.html
was moved to media/track/w3c/interfaces/TextTrackList/onremovetrack.html.
Now it passes. Remove the expectation.

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-04-10

  • platform/gtk/TestExpectations:
12:16 PM Changeset in webkit [167082] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

Remove "System Font" from character width calculations
https://bugs.webkit.org/show_bug.cgi?id=131411

Reviewed by Tim Horton.

Covered by existing tests

  • platform/graphics/Font.cpp:

(WebCore::Font::hasValidAverageCharWidth):

12:10 PM Changeset in webkit [167081] by b.long@cablelabs.com
  • 6 edits in trunk/Tools

[Gtk] run-launcher doesn't work by default
https://bugs.webkit.org/show_bug.cgi?id=131494

Reviewed by Philippe Normand.

  • Scripts/run-launcher: Always use MiniBrowser for WebKitGTK.
  • Scripts/webkitdirs.pm:

(launcherName): Same.

  • Scripts/webkitpy/style/checker.py: Remove reference to GtkLauncher.
  • gtk/common.py:

(get_build_path.is_valid_build_directory): Same.

  • gtk/manifest.txt: Same.
12:10 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
12:03 PM Changeset in webkit [167080] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Cairo] Implement ShareableBitmap::paint() with scale factor
https://bugs.webkit.org/show_bug.cgi?id=64665

Patch by Owen Taylor <otaylor@redhat.com> on 2014-04-10
Reviewed by Martin Robinson.

  • Shared/cairo/ShareableBitmapCairo.cpp (WebKit::ShareableBitmap::paint):
11:53 AM Changeset in webkit [167079] by Bem Jones-Bey
  • 3 edits
    2 adds in trunk

Invalid cast in WebCore::RenderLayer::setupClipPath
https://bugs.webkit.org/show_bug.cgi?id=131368

Reviewed by Dirk Schulze.

Source/WebCore:

Only attempt to clip to a box shape if the renderer being clipped is
actually a box.

Test: css3/masking/clip-path-box-shape-on-inline-crash.html

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath): Add isBox() check.

LayoutTests:

  • css3/masking/clip-path-box-shape-on-inline-crash-expected.txt: Added.
  • css3/masking/clip-path-box-shape-on-inline-crash.html: Added.
11:20 AM Changeset in webkit [167078] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK] Remove a comment that was incorrectly cut-and-pasted from WidgetBackingStoreCairo
https://bugs.webkit.org/show_bug.cgi?id=131499

Patch by Owen Taylor <otaylor@redhat.com> on 2014-04-10
Reviewed by Martin Robinson.

  • platform/gtk/WidgetBackingStoreGtkX11.cpp: Remove a comment that was incorrectly copy and pasted

from the Cairo implementation.

11:00 AM Changeset in webkit [167077] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed iOS build fix after http://trac.webkit.org/changeset/167074

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):

10:50 AM Changeset in webkit [167076] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

LLINT loadisFromInstruction should handle the big endian case.
<https://webkit.org/b/131495>

Reviewed by Mark Hahnenberg.

The LLINT loadisFromInstruction macro aims to load the least significant
32-bit word from the 64-bit bytecode instruction stream and sign extend
it. For big endian machines, the current implementation would load the
wrong 32-bit word.

Without this fix, the JSC tests will crash on big endian machines.
Thanks to Tomas Popela for diagnosing this issue.

  • llint/LowLevelInterpreter.asm:
10:42 AM Rebaseline edited by clopez@igalia.com
add Tools/Scripts path (diff)
10:37 AM Changeset in webkit [167075] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Gtk build fix.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::performDragControllerAction):
10:33 AM Changeset in webkit [167074] by ap@apple.com
  • 17 edits
    1 delete in trunk/Source

Eliminate DragSession structure
https://bugs.webkit.org/show_bug.cgi?id=131465

Reviewed by Benjamin Poulain.

Source/WebCore:

DragSession is really just a transient response to NSDragDestination delegate methods.
The "session" name was quite misleading, and thankfully, we don't need a class for this
bag of data at all.

  • WebCore.xcodeproj/project.pbxproj:
  • page/DragController.cpp:

(WebCore::DragController::DragController):
(WebCore::DragController::dragEntered):
(WebCore::DragController::dragUpdated):
(WebCore::DragController::dragEnteredOrUpdated):
(WebCore::DragController::tryDocumentDrag):

  • page/DragController.h:

(WebCore::DragController::mouseIsOverFileInput):
(WebCore::DragController::numberOfItemsToBeAccepted):

  • page/DragSession.h: Removed.

Source/WebKit/mac:

  • WebView/WebView.mm:

(-[WebView draggingEntered:]):
(-[WebView draggingUpdated:]):

Source/WebKit/win:

  • WebView.cpp:

(WebView::DragEnter):
(WebView::DragOver):

Source/WebKit2:

  • Scripts/webkit2/messages.py:

(struct_or_class):

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<DragSession>::encode): Deleted.
(IPC::ArgumentCoder<DragSession>::decode): Deleted.

  • Shared/WebCoreArgumentCoders.h:
  • UIProcess/API/mac/WKView.mm:

(-[WKView draggingEntered:]):
(-[WKView draggingUpdated:]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::didPerformDragControllerAction):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::currentDragOperation):
(WebKit::WebPageProxy::currentDragIsOverFileInput):
(WebKit::WebPageProxy::currentDragNumberOfFilesToBeAccepted):
(WebKit::WebPageProxy::resetCurrentDragInformation):
(WebKit::WebPageProxy::dragSession): Deleted.
(WebKit::WebPageProxy::resetDragSession): Deleted.

  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performDragControllerAction):

8:46 AM Changeset in webkit [167073] by commit-queue@webkit.org
  • 9 edits
    4 adds in trunk

[GStreamer] No CORS support for media elements
https://bugs.webkit.org/show_bug.cgi?id=99037

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-04-10
Reviewed by Philippe Normand.

Source/WebCore:

Added CORS access control check to media sources when crossorigin attribute is set.

Added getter to CORS access control check status (used to compute whether the stream is tainted or not).
Related test is http/tests/security/video-cross-origin-readback.html.

Disabled access to cross-origin streams that fail CORS check when crossorigin attribute is set.
Related test is http/tests/security/video-cross-origin-accessfailure.html.

Tests: http/tests/security/video-cross-origin-accessfailure.html

http/tests/security/video-cross-origin-accesssameorigin.html

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::didPassCORSAccessCheck): Return whether media is cross-origin (tainted) or not by querying the gstreamer source layer.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Added MediaPlayerPrivateGStreamer::didPassCORSAccessCheck declaration.
  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcStart): Passed CORS mode parameter to the streaming client. In case of CORS check failure, stop the resource loading.
(webKitSrcPassedCORSAccessCheck): Return whether CORS access control check was done and successful.
(StreamingClient::handleResponseReceived): Take a parameter to assign the CORS access control check result.
(CachedResourceStreamingClient::CachedResourceStreamingClient): Updated setting of the ResourceLoaderOptions according CORS mode.
(CachedResourceStreamingClient::responseReceived): Check CORS and pass result to handleResponseReceived.
(ResourceHandleStreamingClient::didReceiveResponse): No CORS check.

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.h: Added webKitSrcPassedCORSAccessCheck declaration.

LayoutTests:

http/tests/security/video-cross-origin-accessfailure.html verifies that cross-origin streams that fail CORS check
are not played when crossorigin attribute is set.

http/tests/security/video-cross-origin-accesssameorigin.html verifies that access to same-origin streams

are played when crossorigin attribute is set.

  • http/tests/security/video-cross-origin-accessfailure-expected.txt: Added.
  • http/tests/security/video-cross-origin-accessfailure.html: Added.
  • http/tests/security/video-cross-origin-accesssameorigin-expected.txt: Added.
  • http/tests/security/video-cross-origin-accesssameorigin.html: Added.
  • platform/efl/TestExpectations: Enabled http/tests/security/video-cross-origin-readback.html.
  • platform/gtk/TestExpectations: Ditto.
  • platform/mac/TestExpectations: Disabled http/tests/security/video-cross-origin-accessfailure.html.
7:42 AM Changeset in webkit [167072] by Martin Robinson
  • 2 edits in trunk/Source/WebKit2

[GTK] LayerTreeHostGtk is creating a software scene graph
https://bugs.webkit.org/show_bug.cgi?id=131471

Reviewed by Sergio Villar Senin.

At some point, a regression was introduced that sent the GTK+ WebKit2 scenegraph down the
software route. The rest of the file depends on the fact that the TextureMapper is the OpenGL
variety, so we should force that explicitly. This is causing crashes locally and soon we
should be able to test this directly.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::initialize): Force the use of the OpenGL scenegraph.

6:10 AM Changeset in webkit [167071] by commit-queue@webkit.org
  • 2 edits
    1 delete in trunk/Source/WebCore

Move UseJSC.cmake back to CMakeLists.txt
https://bugs.webkit.org/show_bug.cgi?id=130834

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-04-10
Reviewed by Csaba Osztrogonác.

No new tests required.

  • CMakeLists.txt:
  • UseJSC.cmake: Removed.
4:14 AM WebKitGTK/KeepingTheTreeGreen edited by elima@igalia.com
(diff)
4:11 AM WebKitGTK/KeepingTheTreeGreen edited by elima@igalia.com
(diff)
3:10 AM WebKitGTK/KeepingTheTreeGreen edited by Adrian Perez de Castro
(diff)
1:11 AM WebKitGTK/2.4.x edited by sergio@webkit.org
(diff)

Apr 9, 2014:

11:40 PM Changeset in webkit [167070] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r166860): ASSERTION FAILED: !isCalculated() on fast/css/image-set-value-not-removed-crash.html
https://bugs.webkit.org/show_bug.cgi?id=131480

  • platform/mac/TestExpectations: Skipped the test in debug builds.
11:33 PM Changeset in webkit [167069] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r167046.
https://bugs.webkit.org/show_bug.cgi?id=131479

Caused 300+ failures on Mavericks WK1 tester (Requested by ap
on #webkit).

Reverted changeset:

Source/WebCore:

"Remove "System Font" from whitelisted DRT fonts and char
width calculations"
https://bugs.webkit.org/show_bug.cgi?id=131411
http://trac.webkit.org/changeset/167046

Tools:

"Remove "System Font" from whitelisted DRT fonts and char
width calculations"
https://bugs.webkit.org/show_bug.cgi?id=131411
http://trac.webkit.org/changeset/167046

11:25 PM Changeset in webkit [167068] by ap@apple.com
  • 2 edits in trunk/LayoutTests

[WK2] fast/repaint/obscured-background-no-repaint.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=131477

  • platform/mac-wk2/TestExpectations: Marked it as such.
11:25 PM Changeset in webkit [167067] by bshafiei@apple.com
  • 5 edits in trunk/Source

Versioning.

11:22 PM Changeset in webkit [167066] by bshafiei@apple.com
  • 1 copy in tags/Safari-538.28

New tag.

11:17 PM Changeset in webkit [167065] by ap@apple.com
  • 2 edits in trunk/LayoutTests

WebVTT tests don't work because of a 800x600 snapshot (but are very flaky anyway)
https://bugs.webkit.org/show_bug.cgi?id=131476

  • platform/mac/TestExpectations: Skip them.
9:50 PM Changeset in webkit [167064] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix build failure when #if USE(XPC_SERVICES) is false.
https://bugs.webkit.org/show_bug.cgi?id=131474

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Dan Bernstein.

Fix build.

  • UIProcess/ios/WebProcessProxyIOS.mm:

Add #if around BackgroundTabFlags ForegroundTabFlags to prevent unused variable error.

9:42 PM Changeset in webkit [167063] by jonlee@apple.com
  • 2 edits in trunk/Source/WebCore

Fix build failure.
https://bugs.webkit.org/show_bug.cgi?id=131473

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Dan Bernstein.

Fix build failure.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(mediaSelectionOptions):

9:04 PM Changeset in webkit [167062] by ryuan.choi@samsung.com
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Add API to set preferred languages
https://bugs.webkit.org/show_bug.cgi?id=131435

Reviewed by Gyuyoung Kim.

Add ewk_context_preferred_languages_set to change the list of "Accept-Language".
This list is used to receive alternative version of contents, which is related
to specified languages from the contents provider.

  • UIProcess/API/efl/ewk_context.cpp:

(ewk_context_preferred_languages_set):

  • UIProcess/API/efl/ewk_context.h:
  • UIProcess/API/efl/tests/test_ewk2_context.cpp:

(serverCallback):
(TEST_F): Added test case for ewk_context_preferred_languages_set

8:55 PM Changeset in webkit [167061] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Temporarily disable the JIT for the Windows port.
<https://webkit.org/b/131470>

Reviewed by Brent Fulgham.

This is a temporary stop gap measure to green the Windows bots until
we have a fix for https://webkit.org/b/131182.

  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

8:39 PM Changeset in webkit [167060] by benjamin@webkit.org
  • 15 edits in trunk/Source/WebKit2

[iOS][WK2] Add the initial WebProcess handling of animated resize for rotation
https://bugs.webkit.org/show_bug.cgi?id=131469

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-09
Reviewed by Tim Horton.

Add the basic handling of dynamic resize from the WebProcess.

On animated resize, the UIProcess decides new target rects and scale. The information
is then passed to the WebProcess to update the content.

For various reason, the target rects and scale computed by the UIProcess can be incorrect
(for example, if viewport constraints limit the scale).

In those cases, the WebProcess has all the information to compute a better target. This patch
adds such a basic update mechanism.

Once the new values are computed, they are sent back to the UIProcess. If the rotation animation
is still ongoing, we do not want mess with it. What we do is set a temporary transform on the subviews
and restore the real value after the animation. The key is to have the two matrix multiplying to the end
value so that there is no visual difference.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _didCommitLayerTree:WebKit::]):
(-[WKWebView _dynamicViewportUpdateChangedTargetToScale:position:]):
(setViewportConfigurationMinimumLayoutSize):
(-[WKWebView _frameOrBoundsChanged]):
(-[WKWebView _setMinimumLayoutSizeOverride:]):
(-[WKWebView _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride:]):
(-[WKWebView _endAnimatedResize]):

  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/API/ios/WKViewIOS.mm:

(-[WKView _frameOrBoundsChanged]):
(-[WKView setMinimumLayoutSizeOverride:]):

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::dynamicViewportUpdateChangedTarget):

  • UIProcess/ios/WKContentView.h:
  • UIProcess/ios/WKContentView.mm:

(-[WKContentView setMinimumLayoutSize:]): Deleted.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::dynamicViewportSizeUpdate):
(WebKit::WebPageProxy::dynamicViewportUpdateChangedTarget):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::dynamicViewportSizeUpdate):

7:38 PM Changeset in webkit [167059] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

[FTL] Emit multibyte NOPs on X86-64
https://bugs.webkit.org/show_bug.cgi?id=131394

Patch by Juergen Ributzka <juergen@apple.com> on 2014-04-09
Reviewed by Michael Saboff.

  • assembler/X86Assembler.h:

(JSC::X86Assembler::fillNops):

6:47 PM Changeset in webkit [167058] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix after http://trac.webkit.org/changeset/167045

The file contained an invalid character.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::enterFullscreen):

6:11 PM April 2014 Meeting edited by Simon Fraser
(diff)
6:06 PM Changeset in webkit [167057] by dino@apple.com
  • 7 edits in trunk/Source/WebCore

[iOS] Media controls should resize as the user zooms
https://bugs.webkit.org/show_bug.cgi?id=131322

Reviewed by Eric Carlson.

On iOS the media controls should remain the same size
independent of user zoom. Have the HTMLMediaElement optionally
register for updates in the page scale to apply an inverse
scale.

  • Modules/mediacontrols/MediaControlsHost.cpp: New exposed property that calls

back into HTMLMediaElement::mediaControlsDependOnPageScaleFactor.
(WebCore::MediaControlsHost::controlsDependOnPageScaleFactor):
(WebCore::MediaControlsHost::setControlsDependOnPageScaleFactor):

  • Modules/mediacontrols/MediaControlsHost.h: Keep a reference to the actual

controls from the JavaScript side so we can talk to it later.
(WebCore::MediaControlsHost::controllerJSValue):
(WebCore::MediaControlsHost::setControllerJSValue):

  • Modules/mediacontrols/MediaControlsHost.idl: Expose controlsDependOnPageScaleFactor.
  • Modules/mediacontrols/mediaControlsiOS.css:

(audio::-webkit-media-controls-panel): Specify the transform origin so that
scaling will keep the controls pinned to the bottom left corner.
(audio::-webkit-media-controls-start-playback-button): Update to the correct size
and provide new artwork.
(audio::-webkit-media-controls-start-playback-button.failed): New artwork.

  • Modules/mediacontrols/mediaControlsiOS.js:

(ControllerIOS): Tell the host that these controls care about the page scale.
(ControllerIOS.prototype.get pageScaleFactor): New getter.
(ControllerIOS.prototype.set pageScaleFactor): When set, update the play button and the panel.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript): Small naming cleanup.
(setPageScaleFactorProperty): Static helper to set a JS property value.
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Keep a reference to the controls object,
and make sure to set the page scale factor on the controls.
(WebCore::HTMLMediaElement::pageScaleFactorChanged): Implement the callback, telling
the controls object that it needs to relayout.

5:51 PM Changeset in webkit [167056] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Try to fix iOS build.

  • platform/graphics/ca/mac/TileController.mm:
5:48 PM Changeset in webkit [167055] by aestes@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION (r165908): ~QuickLookHandle() tries to dereference a null ResourceHandle
https://bugs.webkit.org/show_bug.cgi?id=131467

Reviewed by Tim Horton.

QuickLookHandle stored a ResourceHandle pointer in order to later
retrive the URL of its firstRequest(), but after r165908 we no longer
always have a ResourceHandle. Since firstRequest()'s URL is the only
thing we need from ResourceHandle, store it directly rather than a
ResourceHandle pointer. In the case where we create a QuickLookHandle
from a ResourceLoader rather than a ResourceHandle, pass the loader's
originalRequest(), which represents the same request as firstRequest()
(i.e. the request after willSendRequest() but before redirects).

  • platform/network/ios/QuickLook.h:
  • platform/network/ios/QuickLook.mm:

(WebCore::QuickLookHandle::QuickLookHandle):
(WebCore::QuickLookHandle::create):
(WebCore::QuickLookHandle::didFail):
(WebCore::QuickLookHandle::~QuickLookHandle):

5:18 PM Changeset in webkit [167054] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

AX: Bug in AccessibilityNodeObject::helpText
https://bugs.webkit.org/show_bug.cgi?id=130386

Patch by James Craig <jcraig@apple.com> on 2014-04-09
Reviewed by Chris Fleizach.

Source/WebCore:

Test: accessibility/help-text.html

Ancestor loop was always checking attribute of original node rather than current node.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::helpText):

LayoutTests:

Tests accessibility help text in a variety of examples.

  • accessibility/help-text-expected.txt: Added.
  • accessibility/help-text.html: Added.
5:10 PM Changeset in webkit [167053] by Brent Fulgham
  • 2 edits in trunk/LayoutTests

[Win] Unreviewed bot maintenance. Re-add a number of passing
tests, and turn off a few failures.

  • platform/win/TestExpectations:
4:51 PM Changeset in webkit [167052] by Chris Fleizach
  • 5 edits in trunk

Regression: AX: list heuristics sometimes determined as presentational even when explicit roles applied
https://bugs.webkit.org/show_bug.cgi?id=131041

Reviewed by Mario Sanchez Prada.

Source/WebCore:

When display:table is used on a list item, it inserts RenderObjects that can be ignored as the children
of the list. This allows normal list heuristics to be applied.

  • accessibility/AccessibilityTableCell.cpp:

(WebCore::AccessibilityTableCell::computeAccessibilityIsIgnored):

LayoutTests:

  • accessibility/list-detection-expected.txt:
  • accessibility/list-detection.html:
4:37 PM Changeset in webkit [167051] by Martin Robinson
  • 2 edits in trunk/Source/WebKit2

Try to fix the GTK+ build after resetDragOperation rename

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDataReceived): Rename resetDragOperation to resetDragSession.
(dragExitedCallback): Ditto.

4:34 PM Changeset in webkit [167050] by Martin Robinson
  • 4 edits
    16 adds in trunk/LayoutTests

Rebaseline some tests for GTK+

  • platform/gtk/editing/input/scroll-viewport-page-up-down-expected.txt:
  • platform/gtk/fast/text/international/cjk-segmentation-expected.txt: Added.
  • platform/gtk/http/tests/xmlhttprequest/cache-override-expected.txt: Added.
  • platform/gtk/inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Added.
  • platform/gtk/js/dom/dom-static-property-for-in-iteration-expected.txt:
  • platform/gtk/plugins/nested-plugin-objects-expected.txt: Added.
  • platform/gtk/plugins/netscape-destroy-plugin-script-objects-expected.txt: Added.
  • platform/gtk/sputnik/Unicode/Unicode_320/S7.6_A2.2_T2-expected.txt: Added.
  • platform/gtk/sputnik/Unicode/Unicode_320/S7.6_A5.2_T8-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-composite-02-b-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-displace-01-f-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/filters-image-01-b-expected.txt: Added.
  • platform/gtk/svg/custom/object-no-size-attributes-expected.txt:
  • platform/gtk/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.txt: Added.
4:16 PM Changeset in webkit [167049] by ggaren@apple.com
  • 3 edits in trunk/Source/WTF

Rolled back in r166972.

This time, we conditionally exclude linking against bmalloc in Production
builds. Production builds will not be able to link against bmalloc
until the Production build system has been updated to build bmalloc.

WTF should link against bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131403

Reviewed by Mark Rowe.

  • Configurations/WTF.xcconfig:
  • WTF.xcodeproj/project.pbxproj:
4:11 PM Changeset in webkit [167048] by ggaren@apple.com
  • 4 edits in trunk/Source

Put bmalloc headers in the right place
https://bugs.webkit.org/show_bug.cgi?id=131464

Reviewed by Mark Rowe.

../bmalloc:

  • Configurations/bmalloc.xcconfig: Set PRIVATE_HEADERS_FOLDER_PATH to

specify that we don't just want to dump all of our generically-named
headers into /usr/local/include.

../WTF:

  • wtf/FastMalloc.cpp: Use "<bmalloc/...>" syntax so we can find our

headers in <header-root>/usr/local/include/bmalloc/.

4:03 PM Changeset in webkit [167047] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

TileGrid should be PlatformCALayerClient instead of TileController
https://bugs.webkit.org/show_bug.cgi?id=131456

Switch one more place to use removeTiles.

  • platform/graphics/ca/mac/TileGrid.mm:

(WebCore::TileGrid::revalidateTiles):

3:57 PM April 2014 Meeting edited by jfernandez@igalia.com
(diff)
3:54 PM Changeset in webkit [167046] by mmaxfield@apple.com
  • 4 edits in trunk

Remove "System Font" from whitelisted DRT fonts and char width calculations
https://bugs.webkit.org/show_bug.cgi?id=131411

Reviewed by Tim Horton.

Covered by existing tests.

Source/WebCore:

  • platform/graphics/Font.cpp:

(WebCore::Font::hasValidAverageCharWidth):

Tools:

  • DumpRenderTree/mac/DumpRenderTree.mm:

(allowedFontFamilySet):

3:41 PM April 2014 Meeting edited by stearns@adobe.com
(diff)
3:40 PM April 2014 Meeting edited by stearns@adobe.com
(diff)
3:35 PM Changeset in webkit [167045] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fullscreen does two view controller changes at once
https://bugs.webkit.org/show_bug.cgi?id=131432

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Eric Carlson.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(WebVideoFullscreenInterfaceAVKit::enterFullscreen):
delay -presentViewController on the main run loop to allow
previous view controller change to complete.

3:33 PM Changeset in webkit [167044] by commit-queue@webkit.org
  • 15 edits in trunk/Source

Enable fullscreen captions selection
https://bugs.webkit.org/show_bug.cgi?id=131069

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Eric Carlson.

Source/WebCore:

Enable media selection options from fullscreen. i.e. captions.

  • WebCore.exp.in:

Add exports for
setAudioMediaSelectionOptions
setLegibleMediaSelectionOptions
selectAudioMediaOption
selectLegibleMediaOption

  • platform/ios/WebVideoFullscreenInterface.h:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

(-[WebAVPlayerController dealloc]):
(-[WebAVPlayerController hasMediaSelectionOptions]):
(+[WebAVPlayerController keyPathsForValuesAffectingHasMediaSelectionOptions]):
(-[WebAVPlayerController hasAudioMediaSelectionOptions]):
(+[WebAVPlayerController keyPathsForValuesAffectingHasAudioMediaSelectionOptions]):
(-[WebAVPlayerController hasLegibleMediaSelectionOptions]):
(+[WebAVPlayerController keyPathsForValuesAffectingHasLegibleMediaSelectionOptions]):
(-[WebAVPlayerController currentAudioMediaSelectionOption]):
(-[WebAVPlayerController setCurrentAudioMediaSelectionOption:]):
(-[WebAVPlayerController currentLegibleMediaSelectionOption]):
(-[WebAVPlayerController setCurrentLegibleMediaSelectionOption:]):
(WebVideoFullscreenInterfaceAVKit::setAudioMediaSelectionOptions):
(WebVideoFullscreenInterfaceAVKit::setLegibleMediaSelectionOptions):

  • platform/ios/WebVideoFullscreenModel.h:

Add selectAudioMediaOption/selectLegibleMediaOption

  • platform/ios/WebVideoFullscreenModelMediaElement.h:

Add selectAudioMediaOption/selectLegibleMediaOption

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

Add selectAudioMediaOption/selectLegibleMediaOption

(WebVideoFullscreenModelMediaElement::setMediaElement):
Send initial media selection options.

(WebVideoFullscreenModelMediaElement::selectAudioMediaOption):
Will be implemented when audio track slection is implemented.

(WebVideoFullscreenModelMediaElement::selectLegibleMediaOption):
Select corresponding text track on HTMLMediaElement.

Source/WebKit2:

Enable media selection in fullscreen.
setLegibleMediaSelectionOptions/setAudioMediaSelectionOptions provide a list of options.
selectAudioMediaOption/selectLegibleMediaOption change the selected option.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.h:

Add selectAudioMediaOption/selectLegibleMediaOption

  • UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:

Add selectAudioMediaOption/selectLegibleMediaOption

  • UIProcess/ios/WebVideoFullscreenManagerProxy.mm:

(WebKit::WebVideoFullscreenManagerProxy::selectAudioMediaOption):
Add selectAudioMediaOption

(WebKit::WebVideoFullscreenManagerProxy::selectLegibleMediaOption):
Add selectLegibleMediaOption

  • WebProcess/ios/WebVideoFullscreenManager.h:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • WebProcess/ios/WebVideoFullscreenManager.messages.in:

Add setAudioMediaSelectionOptions/setLegibleMediaSelectionOptions

  • WebProcess/ios/WebVideoFullscreenManager.mm:

(WebKit::WebVideoFullscreenManager::setAudioMediaSelectionOptions):
Add setAudioMediaSelectionOptions

(WebKit::WebVideoFullscreenManager::setLegibleMediaSelectionOptions):
Add setLegibleMediaSelectionOptions

3:33 PM Changeset in webkit [167043] by mmaxfield@apple.com
  • 2 edits in trunk/Tools

systemHiddenFontFamilySet in DRT is unnecessary
https://bugs.webkit.org/show_bug.cgi?id=131414

Reviewed by Tim Horton.

It doesn't seem to affect test results on my machine.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(drt_NSFontManager_availableFonts):
(systemHiddenFontFamilySet): Deleted.

3:31 PM Changeset in webkit [167042] by zoltan@webkit.org
  • 1 edit
    2 adds in trunk/PerformanceTests

[CSS Shapes] Add no shapes version of RegionsShapes performance test
https://bugs.webkit.org/show_bug.cgi?id=131455

Reviewed by Ryosuke Niwa.

This is a no shapes version of the RegionsShapes performance test. All the content
will wrap around the floating containers. This way we can compare the runtime/memory
usage of the RegionsShapes test with/without shapes. The test is skipped by default.

  • Layout/Shapes/RegionsShapesNoShapes.html: Added.
  • Layout/Shapes/resources/RegionsShapesContentNoShapes.html: Added.
3:29 PM Changeset in webkit [167041] by Antti Koivisto
  • 5 edits in trunk/Source/WebCore

TileGrid should be PlatformCALayerClient instead of TileController
https://bugs.webkit.org/show_bug.cgi?id=131456

Reviewed by Tim Horton.

The client interface is for the tiles in the grid.

  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::setContentsScale):
(WebCore::TileController::createTileLayer):
(WebCore::TileController::platformCALayerPaintContents): Deleted.
(WebCore::TileController::platformCALayerDeviceScaleFactor): Deleted.
(WebCore::TileController::platformCALayerShowDebugBorders): Deleted.
(WebCore::TileController::platformCALayerShowRepaintCounter): Deleted.
(WebCore::TileController::platformCALayerIncrementRepaintCount): Deleted.

  • platform/graphics/ca/mac/TileGrid.h:


Move repaint counter to TileGrid too.

  • platform/graphics/ca/mac/TileGrid.mm:

(WebCore::TileGrid::removeTiles):
(WebCore::TileGrid::removeAllSecondaryTiles):
(WebCore::TileGrid::removeTilesInCohort):

Cleaned up tile removal.

(WebCore::TileGrid::revalidateTiles):
(WebCore::TileGrid::ensureTilesForRect):
(WebCore::TileGrid::platformCALayerPaintContents):
(WebCore::TileGrid::platformCALayerDeviceScaleFactor):
(WebCore::TileGrid::platformCALayerShowDebugBorders):
(WebCore::TileGrid::platformCALayerShowRepaintCounter):
(WebCore::TileGrid::platformCALayerContentsOpaque):
(WebCore::TileGrid::platformCALayerIncrementRepaintCount):
(WebCore::queueTileForRemoval): Deleted.

3:24 PM Changeset in webkit [167040] by ap@apple.com
  • 15 edits in trunk/Source

Rename some dragging functions
https://bugs.webkit.org/show_bug.cgi?id=131460

Reviewed by Tim Horton.

Source/WebCore:

Renamed performDrag to performDragOperation. This function is responsible for
accepting a drop, not for the whole drag.

The new name is not perfect either, but I think that it's better, and at least
it matches AppKit, like the other dragging destination functions already do.

  • WebCore.exp.in:
  • page/DragController.cpp:

(WebCore::DragController::performDragOperation):
(WebCore::DragController::performDrag): Deleted.

  • page/DragController.h:

Source/WebKit/mac:

Renamed performDrag to performDragOperation.

  • WebView/WebView.mm: (-[WebView performDragOperation:]):

Source/WebKit/win:

Renamed performDrag to performDragOperation.

  • WebView.cpp: (WebView::Drop):

Source/WebKit2:

Renamed performDrag to performDragOperation.

Also renamed resetDragOperation to resetDragSession, because it's m_dragSession
that it resets.

  • Shared/DragControllerAction.h:
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseDragDrop):

  • UIProcess/API/mac/WKView.mm:

(-[WKView draggingEntered:]):
(-[WKView draggingExited:]):
(-[WKView performDragOperation:]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::performDragOperation):
(WebKit::WebPageProxy::performDrag): Deleted.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::resetDragSession):
(WebKit::WebPageProxy::resetDragOperation): Deleted.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::performDragControllerAction):

3:13 PM Changeset in webkit [167039] by barraclough@apple.com
  • 4 edits in trunk/Source/WebKit2

Update SPI for managing tabs
https://bugs.webkit.org/show_bug.cgi?id=131453

Reviewed by Alexey Proskuryakov.

  • Configurations/WebKit2.xcconfig:
    • added AssertionServices
  • UIProcess/WebProcessProxy.h:
    • added m_assertion, m_assertionState.
  • UIProcess/ios/WebProcessProxyIOS.mm:

(WebKit::WebProcessProxy::updateProcessState):

  • create BKSProcessAssertion to take an assertion.
3:12 PM Changeset in webkit [167038] by enrica@apple.com
  • 2 edits in trunk/Source/WebKit2

WK2: Dictated words disappear after being inserted.
https://bugs.webkit.org/show_bug.cgi?id=131458
<rdar://problem/16395011>

Reviewed by Benjamin Poulain.

The dictation engine treats selected text as text to be
removed. We need to ensure that the range selected to insert the
new text isn't reflected in the UI process until we are done
inserting the text.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::replaceDictatedText):

2:52 PM Changeset in webkit [167037] by mark.lam@apple.com
  • 1 edit in trunk/Source/JavaScriptCore/ChangeLog

Unreviewed. Updated ChangeLog comment for r167031: <http://trac.webkit.org/r167031>.

2:41 PM Changeset in webkit [167036] by commit-queue@webkit.org
  • 6 edits
    1 delete in trunk/Source/JavaScriptCore

Get rid of JITOperationWrappers.h header file.
https://bugs.webkit.org/show_bug.cgi?id=131450

Patch by Julien Brianceau <jbriance@cisco.com> on 2014-04-09
Reviewed by Michael Saboff.

JITOperationWrappers header file contains architecture specific code that is
not needed anymore, so get rid of it.

  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj.filters:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGOperations.cpp:
  • jit/JITOperationWrappers.h: Removed.
  • jit/JITOperations.cpp:
2:39 PM Changeset in webkit [167035] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-04-09 Geoffrey Garen <ggaren@apple.com>

Rolled back out r166972.

The production buildbots are still broken because the build-root script
doesn't build bmalloc.

  • WTF.xcodeproj/project.pbxproj:
2:31 PM Changeset in webkit [167034] by beidson@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't offer "contact" actions in telephone number menus
<rdar://problem/16556907> and https://bugs.webkit.org/show_bug.cgi?id=131451

Reviewed by Tim Horton.

  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::showTelephoneNumberMenu): Skip actions that have to do with contacts,

and skip separators too!

2:13 PM Changeset in webkit [167033] by Samuel White
  • 5 edits in trunk

AX: Initial text selection point should respect element focus.
https://bugs.webkit.org/show_bug.cgi?id=131402

Reviewed by Chris Fleizach.

Source/WebCore:

No new tests, updated existing selection-initial to test this functionality.

Support the case where we want to set the initial selection and there's already a focused element.

  • page/EventHandler.cpp:

(WebCore::setKeyboardSelection):
(WebCore::handleKeyboardSelectionMovement):

LayoutTests:

Updating test to make sure initial selection respects the focused element when necessary. Now, if a VoiceOver user attempts to use
arrow keys to read text and selection isn't set, we will set initial selection before/after the focused element if one is present.

  • platform/mac/accessibility/selection-initial-expected.txt:
  • platform/mac/accessibility/selection-initial.html:
2:07 PM Changeset in webkit [167032] by Brent Fulgham
  • 2 edits in trunk/Tools

[Win] Unreviewed test fix: Don't double-release BSTR.

  • DumpRenderTree/win/DumpRenderTree.cpp:

(dump): Remove unneeded call to SysFreeString now that we are
using _bstr_t for this variable.

1:31 PM April 2014 Meeting edited by timothy_horton@apple.com
(diff)
1:29 PM April 2014 Meeting edited by Simon Fraser
(diff)
1:26 PM April 2014 Meeting edited by ddkilzer@apple.com
(diff)
1:23 PM Changeset in webkit [167031] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Ensure that LLINT accessing of the ProtoCallFrame is big endian friendly.
<https://webkit.org/b/131449>

Reviewed by Mark Hahnenberg.

Change ProtoCallFrame::paddedArgCount to be of type uint32_t. The argCount
that it pads is of type int anyway. It doesn't need to be 64 bit. This
also makes it work with the LLINT which is loading it with a loadi
instruction.

We should add the PayLoadOffset to ProtoCallFrame::argCountAndCodeOriginValue
when loading the argCount.

  • interpreter/ProtoCallFrame.h:

(JSC::ProtoCallFrame::setPaddedArgCount):

  • llint/LowLevelInterpreter32_64.asm:
  • llint/LowLevelInterpreter64.asm:
1:21 PM Changeset in webkit [167030] by Brent Fulgham
  • 15 edits in trunk/Tools

[Win] Various DumpRenderTree Fixes.
https://bugs.webkit.org/show_bug.cgi?id=131446.

Reviewed by Tim Horton.

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::title): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(AccessibilityUIElement::description): Ditto.
(AccessibilityUIElement::helpText): Ditto.
(AccessibilityUIElement::intValue): Ditto.
(AccessibilityUIElement::isPressActionSupported): Ditto.
(AccessibilityUIElement::accessibilityValue): Ditto.

  • DumpRenderTree/win/DRTDesktopNotificationPresenter.cpp:

(DRTDesktopNotificationPresenter::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(DRTDesktopNotificationPresenter::AddRef): Ditto.
(DRTDesktopNotificationPresenter::Release): Ditto.
(DRTDesktopNotificationPresenter::showDesktopNotification): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(DRTDesktopNotificationPresenter::cancelDesktopNotification): Ditto.
(DRTDesktopNotificationPresenter::notificationDestroyed): Ditto.
(DRTDesktopNotificationPresenter::checkNotificationPermission): Ditto.
(DRTDesktopNotificationPresenter::requestNotificationPermission): Ditto.

  • DumpRenderTree/win/DRTDesktopNotificationPresenter.h:
  • DumpRenderTree/win/DumpRenderTree.cpp:

(dumpFrameScrollPosition): Ditto.
(dumpFramesAsText): Ditto.
(compareHistoryItems): Ditto.
(dumpHistoryItem): Ditto.
(dump): Ditto.
(resetDefaultsToConsistentValues): Ditto.
(resetWebViewToConsistentStateBeforeTesting): Ditto.
(runTest): Ditto.
(createWebViewAndOffscreenWindow): Ditto.

  • DumpRenderTree/win/EditingDelegate.cpp:

(EditingDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(EditingDelegate::AddRef): Ditto.
(EditingDelegate::Release): Ditto.
(dumpPath): Switch to _bstr_t. Use JSStringCreateWithBSTR
(EditingDelegate::shouldBeginEditingInDOMRange): Get rid of uneeded STDMETHODCALLTYPE declaration.
(EditingDelegate::shouldEndEditingInDOMRange): Ditto.
(EditingDelegate::shouldInsertNode): Ditto.
(EditingDelegate::shouldInsertText): Ditto.
(EditingDelegate::shouldDeleteDOMRange): Ditto.
(EditingDelegate::shouldChangeSelectedDOMRange): Ditto.
(EditingDelegate::shouldApplyStyle): Ditto.
(EditingDelegate::shouldChangeTypingStyle): Ditto.
(EditingDelegate::doPlatformCommand): Ditto.
(EditingDelegate::webViewDidBeginEditing): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(EditingDelegate::webViewDidChange): Ditto.
(EditingDelegate::webViewDidEndEditing): Ditto.
(EditingDelegate::webViewDidChangeTypingStyle): Ditto.
(EditingDelegate::webViewDidChangeSelection): Ditto.
(EditingDelegate::checkSpellingOfString): Ditto.

  • DumpRenderTree/win/FrameLoadDelegate.cpp:

(descriptionSuitableForTestResult): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(FrameLoadDelegate::FrameLoadDelegate): Ditto.
(FrameLoadDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(FrameLoadDelegate::AddRef): Ditto.
(FrameLoadDelegate::Release): Ditto.
(FrameLoadDelegate::didStartProvisionalLoadForFrame): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(FrameLoadDelegate::didReceiveServerRedirectForProvisionalLoadForFrame): Ditto.
(FrameLoadDelegate::didFailProvisionalLoadWithError): Ditto.
(FrameLoadDelegate::didCommitLoadForFrame): Ditto.
(FrameLoadDelegate::didReceiveTitle): Ditto.
(FrameLoadDelegate::didChangeIcons): Ditto.
(delegatesWithDelayedWork): Ditto.
(FrameLoadDelegate::didFinishLoadForFrame): Ditto.
(FrameLoadDelegate::didFailLoadWithError): Ditto.
(FrameLoadDelegate::willPerformClientRedirectToURL): Ditto.
(FrameLoadDelegate::didCancelClientRedirectForFrame): Ditto.
(FrameLoadDelegate::willCloseFrame): Ditto.
(FrameLoadDelegate::didFinishDocumentLoadForFrame): Ditto.
(FrameLoadDelegate::didHandleOnloadEventsForFrame): Ditto.
(FrameLoadDelegate::didFirstVisuallyNonEmptyLayoutInFrame): Ditto.
(FrameLoadDelegate::didDisplayInsecureContent): Ditto.
(FrameLoadDelegate::didRunInsecureContent): Ditto.

  • DumpRenderTree/win/FrameLoadDelegate.h:
  • DumpRenderTree/win/HistoryDelegate.cpp:

(HistoryDelegate::didNavigateWithNavigationData): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(HistoryDelegate::updateHistoryTitle): Ditto.
(HistoryDelegate::populateVisitedLinksForWebView): Ditto.

  • DumpRenderTree/win/PolicyDelegate.cpp:

(dumpPath):
(PolicyDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(PolicyDelegate::AddRef): Ditto.
(PolicyDelegate::Release): Ditto.
(PolicyDelegate::decidePolicyForNavigationAction): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(PolicyDelegate::unableToImplementPolicyWithError): Ditto.

  • DumpRenderTree/win/ResourceLoadDelegate.cpp:

(ResourceLoadDelegate::descriptionSuitableForTestResult): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(ResourceLoadDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(ResourceLoadDelegate::AddRef): Ditto.
(ResourceLoadDelegate::Release): Ditto.
(ResourceLoadDelegate::identifierForInitialRequest): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(ResourceLoadDelegate::removeIdentifierForRequest): Ditto.
(ResourceLoadDelegate::willSendRequest): Ditto.
(ResourceLoadDelegate::didReceiveAuthenticationChallenge): Ditto.
(ResourceLoadDelegate::didReceiveResponse): Ditto.
(ResourceLoadDelegate::didFinishLoadingFromDataSource): Ditto.
(ResourceLoadDelegate::didFailLoadingWithError): Ditto.

  • DumpRenderTree/win/TestRunnerWin.cpp: Ditto.

(TestRunner::queueLoad): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(TestRunner::setUserStyleSheetLocation): Ditto.
(TestRunner::execCommand): Ditto.
(TestRunner::overridePreference): Ditto.
(TestRunner::evaluateScriptInIsolatedWorld): Ditto.

  • DumpRenderTree/win/TextInputControllerWin.cpp: Ditto.

(TextInputController::setMarkedText): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(TextInputController::insertText): Ditto.

  • DumpRenderTree/win/UIDelegate.cpp:

(UIDelegate::QueryInterface): Get rid of uneeded STDMETHODCALLTYPE declaration.
(UIDelegate::AddRef): Ditto.
(UIDelegate::Release): Ditto.
(UIDelegate::hasCustomMenuImplementation): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(UIDelegate::trackCustomPopupMenu): Ditto.
(UIDelegate::registerUndoWithTarget): Ditto.
(UIDelegate::removeAllActionsWithTarget): Ditto.
(UIDelegate::setActionTitle): Ditto.
(UIDelegate::undo): Ditto.
(UIDelegate::redo): Ditto.
(UIDelegate::canUndo): Ditto.
(UIDelegate::canRedo): Ditto.
(UIDelegate::printFrame): Ditto.
(UIDelegate::ftpDirectoryTemplatePath): Ditto.
(UIDelegate::webViewHeaderHeight): Ditto.
(UIDelegate::webViewFooterHeight): Ditto.
(UIDelegate::drawHeaderInRect): Ditto.
(UIDelegate::drawFooterInRect): Ditto.
(UIDelegate::webViewPrintingMarginRect): Ditto.
(UIDelegate::canRunModal): Ditto.
(UIDelegate::createModalDialog): Ditto.
(UIDelegate::runModal): Ditto.
(UIDelegate::isMenuBarVisible): Ditto.
(UIDelegate::setMenuBarVisible): Ditto.
(UIDelegate::runDatabaseSizeLimitPrompt): Ditto.
(UIDelegate::paintCustomScrollbar): Ditto.
(UIDelegate::paintCustomScrollCorner): Ditto.
(UIDelegate::setFrame): Ditto.
(UIDelegate::webViewFrame): Ditto.
(UIDelegate::runJavaScriptAlertPanelWithMessage): Ditto.
(UIDelegate::runJavaScriptConfirmPanelWithMessage): Ditto.
(UIDelegate::runJavaScriptTextInputPanelWithPrompt): Ditto.
(UIDelegate::runBeforeUnloadConfirmPanelWithMessage): Ditto.
(UIDelegate::webViewAddMessageToConsole): Ditto.
(UIDelegate::doDragDrop): Ditto.
(UIDelegate::webViewGetDlgCode): Ditto.
(UIDelegate::createWebViewWithRequest): Ditto.
(UIDelegate::webViewClose): Ditto.
(UIDelegate::webViewFocus): Ditto.
(UIDelegate::webViewUnfocus): Ditto.
(UIDelegate::webViewPainted): Ditto.
(UIDelegate::exceededDatabaseQuota): Ditto.
(UIDelegate::embeddedViewWithArguments): Ditto.
(UIDelegate::webViewClosing): Ditto.
(UIDelegate::webViewSetCursor): Ditto.
(UIDelegate::webViewDidInvalidate): Ditto.
(UIDelegate::setStatusText): Ditto.
(UIDelegate::desktopNotificationsDelegate): Ditto.
(UIDelegate::drawBackground): Ditto.
(UIDelegate::decidePolicyForGeolocationRequest): Ditto.
(UIDelegate::didPressMissingPluginButton): Ditto.

  • DumpRenderTree/win/WorkQueueItemWin.cpp: Ditto.

(LoadItem::invoke): Switch to _bstr_t. Use JSStringCreateWithBSTR.
(LoadHTMLStringItem::invoke): Ditto.
(ScriptItem::invoke): Ditto.

12:48 PM Changeset in webkit [167029] by Lucas Forschler
  • 2 edits in tags/Safari-538.26.4/Source/WebCore

Merged r167023.

12:32 PM Changeset in webkit [167028] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLCollection::updateNamedElementCach iterates over items twice
https://bugs.webkit.org/show_bug.cgi?id=131448

Reviewed by Andreas Kling.

Compute the length first and go through the cache interface to traverse through items.

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::updateNamedElementCache):

12:30 PM Changeset in webkit [167027] by Lucas Forschler
  • 5 edits in tags/Safari-538.26.4/Source

Versioning.

12:13 PM Changeset in webkit [167026] by Lucas Forschler
  • 1 copy in tags/Safari-538.26.4

New Tag.

11:43 AM Changeset in webkit [167025] by b.long@cablelabs.com
  • 24 edits
    2 copies
    3 adds in trunk

[GStreamer] Expose MPEG-TS metadata
https://bugs.webkit.org/show_bug.cgi?id=122001

Reviewed by Eric Carlson.

.:

  • Source/cmake/FindGStreamer.cmake: Look for gstreamer-mpegts >= 1.3.0.
  • Source/cmake/OptionsEfl.cmake: Same.
  • Source/cmake/OptionsGTK.cmake: Same.

Source/WebCore:

Test: media/track/in-band/track-in-band-mpegts-metadata.html

  • CMakeLists.txt: Add InbandDataTextTrack.
  • PlatformGTK.cmake: Look for gstreamer-mpegts and use it if available.
  • WebCore.vcxproj/WebCore.vcxproj: Add InbandDataTextTrack.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Same.
  • WebCore.xcodeproj/project.pbxproj: Same.
  • html/track/DataCue.cpp:

(WebCore::DataCue::DataCue): Add a constructor using raw data.

  • html/track/DataCue.h:

(WebCore::DataCue::create): Same.

  • html/track/InbandDataTextTrack.cpp: Added, InbandTextTrack which implements addDataCue().
  • html/track/InbandDataTextTrack.h:
  • html/track/InbandGenericTextTrack.h: Move unimplemented methods to InbandTextTrack.
  • html/track/InbandWebVTTTextTrack.h: Same.
  • html/track/InbandTextTrack.h: Same, and add inBandMetadataTrackDispatchType.
  • html/track/InbandTextTrack.cpp:

(WebCore::InbandTextTrack::create): Add constructor for InbandDataTextTrack.
(WebCore::InbandTextTrack::inBandMetadataTrackDispatchType): Added.

  • html/track/TextTrack.h:

(WebCore::TextTrack::inBandMetadataTrackDispatchType): Added (empty).

  • html/track/TextTrack.idl: Add inBandMetadataTrackDispatchType.
  • platform/graphics/InbandTextTrackPrivate.h: Add inBandMetadataTrackDispatchType and Data format.

(WebCore::InbandTextTrackPrivate::inBandMetadataTrackDispatchType):

  • platform/graphics/InbandTextTrackPrivateClient.h: Add addDataCue() method.
  • platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h:

(WebCore::InbandMetadataTextTrackPrivateGStreamer::create): Allow specifying the cue format and id.

(WebCore::InbandMetadataTextTrackPrivateGStreamer::InbandMetadataTextTrackPrivateGStreamer): Same.

(WebCore::InbandMetadataTextTrackPrivateGStreamer::setInBandMetadataTrackDispatchType): Added.
(WebCore::InbandMetadataTextTrackPrivateGStreamer::addDataCue): Added.
(WebCore::InbandMetadataTextTrackPrivateGStreamer::addGenericCue): Added.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::handleMessage): Check for MPEG-TS sections.
(WebCore::MediaPlayerPrivateGStreamer::processMpegTsSection): Add MPEG-TS section metadata, and get inBandMetadataTrackDispatchType from the PMT.
(WebCore::MediaPlayerPrivateGStreamer::processTableOfContents): Explicitly use Generic CueFormat.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

LayoutTests:

  • media/content/user-private-streams.ts: Added.
  • media/track/in-band/track-in-band-mpegts-metadata-expected.txt: Added.
  • media/track/in-band/track-in-band-mpegts-metadata.html: Added.
11:41 AM Changeset in webkit [167024] by Chris Fleizach
  • 14 edits in trunk

AX: Make AXPress much more reliable on the Web
https://bugs.webkit.org/show_bug.cgi?id=131426

Reviewed by Mario Sanchez Prada.

Source/WebCore:

AXPress fails when an event handler is on a node higher in the parent chain than the focused node.

We need to make AXPress more reliable by

1) Using the element that is focused as the target of the event
2) Search for the inner most control object when dispatching the event

Updated existing accessibility/press-works-on-control-types.html

  • accessibility/AccessibilityMenuList.cpp:

(WebCore::AccessibilityMenuList::press):

  • accessibility/AccessibilityMenuList.h:
  • accessibility/AccessibilityMenuListPopup.cpp:

(WebCore::AccessibilityMenuListPopup::press):

  • accessibility/AccessibilityMenuListPopup.h:
  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::press):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::performDefaultAction):

  • accessibility/AccessibilitySearchFieldButtons.cpp:

(WebCore::AccessibilitySearchFieldCancelButton::press):

  • accessibility/AccessibilitySearchFieldButtons.h:
  • accessibility/AccessibilitySpinButton.cpp:

(WebCore::AccessibilitySpinButtonPart::press):

  • accessibility/AccessibilitySpinButton.h:

LayoutTests:

  • accessibility/press-works-on-control-types-expected.txt:
  • accessibility/press-works-on-control-types.html:
11:25 AM Changeset in webkit [167023] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

ContentFilterMac is broken when NE_FILTER_SOURCE is enabled.
<rdar://problem/15978793> and https://bugs.webkit.org/show_bug.cgi?id=131445

Reviewed by Andy Estes.

No new tests (Not a tested feature).

  • platform/mac/ContentFilterMac.mm:

(WebCore::ContentFilter::needsMoreData): Only consider m_neFilterSourceStatus if m_neFilterSource exists.
(WebCore::ContentFilter::didBlockData): Ditto.

11:19 AM Changeset in webkit [167022] by zoltan@webkit.org
  • 2 edits
    5 adds in trunk/PerformanceTests

[CSS Shapes] Add no regions version of RegionsShapes performance test
https://bugs.webkit.org/show_bug.cgi?id=131442

Reviewed by Ryosuke Niwa.

We would like have a no regions version for RegionsShapes performance test. The new
test produces similar layout to RegionsShapes.html without using regions. It is helpful
for us to do further comparisons when necessary. This test is skipped by default.

  • Layout/Shapes/RegionsShapesNoRegions.html: Added.
  • Layout/Shapes/resources/RegionsShapes.css: Added.

(html, body):
(.shape):
(#circleShape):
(#imageShape):
(#insetShape):
(#roundedInsetShape):
(#triangleLeft):
(#triangleRight):
(#selfIntersectingStar):
(#region1):
(#region2):
(#region3):

  • Layout/Shapes/resources/RegionsShapesContent.html:
  • Layout/Shapes/resources/RegionsShapesContentNoRegionsWidth400.html: Added.
  • Layout/Shapes/resources/RegionsShapesContentNoRegionsWidth600.html: Added.
  • Layout/Shapes/resources/RegionsShapesContentNoRegionsWidth800.html: Added.
11:15 AM Changeset in webkit [167021] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-04-09 Geoffrey Garen <ggaren@apple.com>

Rolled back in r166972.

The iOS buildbot's scripts have been updated to build bmalloc, so the
build should now succeed on the bot.

Also renamed "Frameworks" to "Libraries" as suggested in a review comment.

WTF should link against bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131403

Reviewed by Michael Saboff.

This is required to build successfullly with bmalloc enabled.

  • WTF.xcodeproj/project.pbxproj:
10:28 AM Changeset in webkit [167020] by oliver@apple.com
  • 69 edits
    3 adds
    2 deletes in trunk

Rewrite Function.bind as a builtin
https://bugs.webkit.org/show_bug.cgi?id=131083

Reviewed by Geoffrey Garen.

Source/JavaScriptCore:

This change removes the existing function.bind implementation
entirely so JSBoundFunction is no more.

Instead we just return a regular JS closure with a few
private properties hanging off it that allow us to perform
the necessary bound function fakery. While most of this is
simple, a couple of key changes:

  • The parser and lexer now directly track whether they're parsing code for call or construct and convert the private name @IsConstructor into TRUETOK or FALSETOK as appropriate. This automatically gives us the ability to vary behaviour from within the builtin. It also leaves a lot of headroom for trivial future improvements.
  • The instanceof operator now uses the prototypeForHasInstance private name, and we have a helper function to ensure that all objects that need to can update their magical 'prototype' property pair correctly.
  • API/JSScriptRef.cpp:

(parseScript):

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • builtins/BuiltinExecutables.cpp:

(JSC::BuiltinExecutables::createBuiltinExecutable):

  • builtins/Function.prototype.js:

(bind.bindingFunction):
(bind.else.bindingFunction):
(bind):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::generateFunctionCodeBlock):

  • bytecompiler/NodesCodegen.cpp:

(JSC::InstanceOfNode::emitBytecode):

  • interpreter/Interpreter.cpp:
  • parser/Lexer.cpp:

(JSC::Lexer<T>::Lexer):
(JSC::Lexer<LChar>::parseIdentifier):
(JSC::Lexer<UChar>::parseIdentifier):

  • parser/Lexer.h:
  • parser/Parser.cpp:

(JSC::Parser<LexerType>::Parser):
(JSC::Parser<LexerType>::parseInner):

  • parser/Parser.h:

(JSC::parse):

  • parser/ParserModes.h:
  • runtime/CodeCache.cpp:

(JSC::CodeCache::getGlobalCodeBlock):
(JSC::CodeCache::getFunctionExecutableFromGlobalCode):

  • runtime/CommonIdentifiers.h:
  • runtime/Completion.cpp:

(JSC::checkSyntax):

  • runtime/Executable.cpp:

(JSC::ProgramExecutable::checkSyntax):

  • runtime/FunctionPrototype.cpp:

(JSC::FunctionPrototype::addFunctionProperties):
(JSC::functionProtoFuncBind): Deleted.

  • runtime/JSBoundFunction.cpp: Removed.
  • runtime/JSBoundFunction.h: Removed.
  • runtime/JSFunction.cpp:

(JSC::RetrieveCallerFunctionFunctor::RetrieveCallerFunctionFunctor):
(JSC::RetrieveCallerFunctionFunctor::operator()):
(JSC::retrieveCallerFunction):
(JSC::JSFunction::getOwnPropertySlot):
(JSC::JSFunction::defineOwnProperty):

  • runtime/JSGlobalObject.cpp:

(JSC::JSGlobalObject::reset):

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncSetTypeErrorAccessor):

  • runtime/JSGlobalObjectFunctions.h:
  • runtime/JSObject.h:

(JSC::JSObject::inlineGetOwnPropertySlot):

Source/WebCore:

Switch WebCore to use the helper functions when defining the
prototype properties on DOM constructors, and update bindings
tests accordingly.

  • bindings/js/JSImageConstructor.cpp:

(WebCore::JSImageConstructor::finishCreation):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateConstructorHelperMethods):

  • bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:

(WebCore::JSTestActiveDOMObjectConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:

(WebCore::JSTestCustomNamedGetterConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructorConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTargetConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestExceptionConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:

(WebCore::JSTestGenerateIsReachableConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterfaceConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:

(WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestNamedConstructor.cpp:

(WebCore::JSTestNamedConstructorConstructor::finishCreation):
(WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestNode.cpp:

(WebCore::JSTestNodeConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):

  • bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefsConstructor::finishCreation):

  • bindings/scripts/test/JS/JSattribute.cpp:

(WebCore::JSattributeConstructor::finishCreation):

  • bindings/scripts/test/JS/JSreadonly.cpp:

(WebCore::JSreadonlyConstructor::finishCreation):

LayoutTests:

Testing.

  • js/dom/function-bind-expected.txt:
  • js/regress/function-bind-expected.txt: Added.
  • js/regress/function-bind.html: Added.
  • js/regress/script-tests/function-bind.js: Added.

(foo):

10:23 AM Changeset in webkit [167019] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix. Replacing deprecated enum with AVPlayerViewControllerExitFullScreenReason.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

(-[WebAVPlayerController playerViewController:shouldDismissWithReason:]):

10:07 AM Changeset in webkit [167018] by stavila@adobe.com
  • 5 edits
    8 adds in trunk

[CSS Regions] Monolithic elements should not affect the layout of the content outside its region
https://bugs.webkit.org/show_bug.cgi?id=130499

Reviewed by David Hyatt.

Source/WebCore:

When performing layout on an element flowed into regions, its logical height must not be incremented
past the region's logical bottom for monolithic elements in regions different than the last region their containing
block is fragmented into. This ensures that the following elements are correctly laid out
from the top of the next region.
This change must also be applied to floats in order to prevent text from avoiding part
of a float that did not actually made it into the current region, but instead overflowed
the previous one.

Tests: fast/regions/fragmentation-after-float-overflow-single-region.html

fast/regions/fragmentation-after-monolithic-overflow-self-collapsed.html
fast/regions/fragmentation-after-monolithic-overflow-single-region.html
fast/regions/fragmentation-after-monolithic-overflow.html

  • rendering/FloatingObjects.cpp:

(WebCore::FloatingObjects::computePlacedFloatsTree):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::adjustBlockChildForPagination):
(WebCore::RenderBlockFlow::lowestFloatLogicalBottom):
(WebCore::RenderBlockFlow::getClearDelta):
(WebCore::RenderBlockFlow::applyAfterBreak): Deleted.
(WebCore::RenderBlockFlow::nextFloatLogicalBottomBelow): Deleted.
(WebCore::RenderBlockFlow::nextFloatLogicalBottomBelowForBlock): Deleted.
(WebCore::RenderBlockFlow::flipFloatForWritingModeForChild): Deleted.

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

(WebCore::RenderFlowThread::isBoxInDifferentRegionsAsFloat):

  • rendering/RenderFlowThread.h:

LayoutTests:

Added tests for different types of fragmentation following monolithic content
overflowing its region.
Rebased the webkit-flow-float-unable-to-push test as its expected result was not the correct one.

  • fast/regions/webkit-flow-float-unable-to-push-expected.html:
  • fast/regions/fragmentation-after-float-overflow-single-region-expected.html: Added.
  • fast/regions/fragmentation-after-float-overflow-single-region.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-expected.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-self-collapsed-expected.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-self-collapsed.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-single-region-expected.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow-single-region.html: Added.
  • fast/regions/fragmentation-after-monolithic-overflow.html: Added.
10:05 AM Changeset in webkit [167017] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Use std::array in AffineTransform, and get rid of setMatrix
https://bugs.webkit.org/show_bug.cgi?id=131416

Reviewed by Sam Weinig.

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::AffineTransform):
(WebCore::AffineTransform::multiply):

  • platform/graphics/transforms/AffineTransform.h:

(WebCore::AffineTransform::setMatrix): Deleted.

9:58 AM WebKitGTK/2.4.x edited by Carlos Garcia Campos
(diff)
9:53 AM Changeset in webkit [167016] by Carlos Garcia Campos
  • 6 edits
    1 delete in trunk/Source/WebCore

[GTK] Plugin process crashes when loading totem plugin
https://bugs.webkit.org/show_bug.cgi?id=131357

Reviewed by Martin Robinson.

Remove netscape plugin implementation from WebCore that was only
used by WebKit1. This removes the conflict between the WebCore NPN
symbols and the ones used by the plugins.

  • CMakeLists.txt:
  • PlatformEfl.cmake:
  • PlatformGTK.cmake:
  • PlatformWin.cmake:
  • plugins/PluginViewNone.cpp:
  • plugins/gtk/PluginPackageGtk.cpp: Removed.
  • plugins/gtk/PluginViewGtk.cpp: Removed.
  • plugins/gtk/gtk2xtbin.c: Removed.
  • plugins/gtk/gtk2xtbin.h: Removed.
  • plugins/gtk/xembed.h: Removed.
9:47 AM Changeset in webkit [167015] by ap@apple.com
  • 2 edits in trunk/LayoutTests

REGRESSION (r166853): fast/preloader/document-write.html is very flaky
https://bugs.webkit.org/show_bug.cgi?id=130942

  • platform/mac/TestExpectations: The offending code was re-landed, marking as

flaky again.

9:12 AM Changeset in webkit [167014] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

fullscreen controls first show a play button instead of a pause button
https://bugs.webkit.org/show_bug.cgi?id=131430

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-04-09
Reviewed by Jer Noble.

isPlaying() is false while buffering, paused() isn't; use paused() for
the play button.

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

(WebVideoFullscreenModelMediaElement::setMediaElement):
(WebVideoFullscreenModelMediaElement::handleEvent):
Use HTMLMediaElement::paused() instead of HTMLMediaElement::isPlaying()

8:47 AM Changeset in webkit [167013] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove duplicated files and unnecessary conditions from UseJSC.cmake
https://bugs.webkit.org/show_bug.cgi?id=131438

Patch by Eva Balazsfalvi <evab.u-szeged@partner.samsung.com> on 2014-04-09
Reviewed by Csaba Osztrogonác.

No new tests required.

  • UseJSC.cmake:
8:08 AM Changeset in webkit [167012] by mario.prada@samsung.com
  • 6 edits in trunk

[GTK] Layout tests accessibility/children-changed-sends-notification.html and accessibility/notification-listeners.html fails
https://bugs.webkit.org/show_bug.cgi?id=131380

Reviewed by Chris Fleizach.

Source/WebCore:

Don't emit signals for added objects that we know won't be exposed
to the accessibility hierarchy (e.g. static text).

  • accessibility/atk/AXObjectCacheAtk.cpp:

(WebCore::AXObjectCache::attachWrapper): Add extra check and early return.

LayoutTests:

Updated TestExpectations file and update layout test that was not
correctly written, and expecting the signals in the wrong order.

  • platform/gtk/TestExpectations: Removed failure expectations.
  • accessibility/children-changed-sends-notification.html: Updated

test to make sure we touch the accessibility tree after adding a
<button> so we get the 'add' signal at the right moment.

  • accessibility/children-changed-sends-notification-expected.txt:

Updated expectations to expect the 'add' and 'remove' signals in
the right order.

8:05 AM Changeset in webkit [167011] by mario.prada@samsung.com
  • 4 edits in trunk

[AX][GTK] No new lines in some AX tests output
https://bugs.webkit.org/show_bug.cgi?id=131294

Reviewed by Martin Robinson.

Source/WebCore:

Do not implement Hypetext or AtkText for the WebArea. Those
interfaces will be implemented by the containers (automatically
generated or not) for the different parts of the DOM and the
render subtree under this element anyway.

  • accessibility/atk/WebKitAccessibleWrapperAtk.cpp:

(getInterfaceMaskFromObject): Make sure we don't apply
WAIHypertext nor WAIText to objects with role WebAreaRole.

LayoutTests:

Removed failure expectations for tests now passing.

  • platform/gtk/TestExpectations: Updated.
2:48 AM Changeset in webkit [167010] by Csaba Osztrogonác
  • 3 edits in trunk/Tools

Stylechecker: False positive on inline asm code.
https://bugs.webkit.org/show_bug.cgi?id=130570

Patch by Gergo Balogh <gbalogh.u-szeged@partner.samsung.com> on 2014-04-09
Reviewed by Csaba Osztrogonác.

Disable stylechecking in asm blocks.

  • Scripts/webkitpy/style/checkers/cpp.py:

(process_line):
(_InlineASMState):
(_InlineASMState.init):
(_InlineASMState.process_line):
(_InlineASMState.isInside):
(_process_lines):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(WebKitStyleTest.test_member_initialization_list):

2:39 AM Changeset in webkit [167009] by mario.prada@samsung.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening for GTK.

Updated test expectations after r166175, which removed an <hr>
from the original test accessibility/lists.html.

  • platform/gtk/accessibility/lists-expected.txt: Updated
1:28 AM Changeset in webkit [167008] by Carlos Garcia Campos
  • 6 edits
    2 adds in trunk/Tools

[GTK] Move WebKit1 unit tests resources used by WebKit2 unit tests to WebKit2 resources dir
https://bugs.webkit.org/show_bug.cgi?id=131029

Reviewed by Philippe Normand.

Add blank.ico and test.pdf to resources dir of WebKit2Gtk unit
tests and remove the getWebKit1TestResoucesDir() method.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestDownloads.cpp:

(testDownloadLocalFile): Use Test::getResourcesDir().
(testDownloadLocalFileError): Ditto.
(serverCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestResources.cpp:

(serverCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestSSL.cpp:

(httpServerCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/TestWebKitFaviconDatabase.cpp:

(serverCallback): Ditto.

  • TestWebKitAPI/Tests/WebKit2Gtk/resources/blank.ico: Added.
  • TestWebKitAPI/Tests/WebKit2Gtk/resources/test.pdf: Added.
  • TestWebKitAPI/gtk/WebKit2Gtk/TestMain.h:

(Test::getWebKit1TestResoucesDir): Deleted.

12:37 AM Changeset in webkit [167007] by ap@apple.com
  • 5 edits
    21 adds in trunk

[WK2] HTTP authentication regression tests fail
https://bugs.webkit.org/show_bug.cgi?id=81627
<rdar://problem/11079296>

Reviewed by Anders Carlsson.

Tools:

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

(WTR::TestController::createWebViewWithOptions): Added canAuthenticateAgainstProtectionSpaceInFrame
to pageLoaderClient structure.
(WTR::TestController::canAuthenticateAgainstProtectionSpaceInFrame): Return true
for password based authentication (we do get server trust challenges on some tests,
which WKTR can't handle).
When this client call is not implemented or returns false, didReceiveAuthenticationChallengeInFrame
calls won't be made, at least on CFNetwork based platforms.
(WTR::TestController::didReceiveAuthenticationChallengeInFrame): Changed the output
to omit <unknown>. The resource is always unknown with WK2, and it doesn't really
make sense to associate auth requests with individual resources - there can be
multiple resources loading at once from the same protection space, so WebKit1 API
that had a resource identifier was inherently racy.

LayoutTests:

  • platform/mac-wk2/TestExpectations: Unskipped tests that now pass. Marked three

tests as failing, because enabling auth uncovered that they are failing
(in browser as well).

  • platform/wk2/http: Added.
  • platform/wk2/http/tests: Added.
  • platform/wk2/http/tests/loading: Added.
  • platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials: Added.
  • platform/wk2/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt: Copied from LayoutTests/http/tests/loading/authentication-after-redirect-stores-wrong-credentials/authentication-after-redirect-stores-wrong-credentials-expected.txt.
  • platform/wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Copied from LayoutTests/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt.
  • platform/wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt: Copied from LayoutTests/http/tests/loading/basic-credentials-sent-automatically-expected.txt.
  • platform/wk2/http/tests/misc: Added.
  • platform/wk2/http/tests/misc/401-alternative-content-expected.txt: Copied from LayoutTests/http/tests/misc/401-alternative-content-expected.txt.
  • platform/wk2/http/tests/misc/authentication-redirect-1: Added.
  • platform/wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt.
  • platform/wk2/http/tests/misc/authentication-redirect-2: Added.
  • platform/wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt.
  • platform/wk2/http/tests/misc/authentication-redirect-4: Added.
  • platform/wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt: Copied from LayoutTests/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt.
  • platform/wk2/http/tests/security: Added.
  • platform/wk2/http/tests/security/401-logout: Added.
  • platform/wk2/http/tests/security/401-logout/401-logout-expected.txt: Copied from LayoutTests/http/tests/security/401-logout/401-logout-expected.txt.
  • platform/wk2/http/tests/xmlhttprequest: Added.
  • platform/wk2/http/tests/xmlhttprequest/failed-auth-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/failed-auth-expected.txt.
  • platform/wk2/http/tests/xmlhttprequest/remember-bad-password-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/remember-bad-password-expected.txt.

WebKit2 results are the same as WebKit1, except that they lack resource URL. That
is expected with WebKit2 API.

12:35 AM Changeset in webkit [167006] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r166975.

Do not use WebPage removed API to fix the build. Page overlays are
no broken, see https://bugs.webkit.org/show_bug.cgi?id=131433.

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::display):

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.cpp:

(WebKit::LayerTreeHostGtk::initialize):
(WebKit::LayerTreeHostGtk::paintContents):

12:32 AM April 2014 Meeting edited by abucur@adobe.com
(diff)
12:31 AM Changeset in webkit [167005] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fix GTK+ build after r166965.

  • WebProcess/WebCoreSupport/gtk/WebDragClientGtk.cpp:

(WebKit::WebDragClient::startDrag): Rename Clipboard to DataTransfer.

12:22 AM Changeset in webkit [167004] by ryuan.choi@samsung.com
  • 3 edits in trunk/Tools

[EFL] Change font path for DumpRenderTree and WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=131427

Reviewed by Gyuyoung Kim.

Since r166973, font path was changed.

  • DumpRenderTree/PlatformEfl.cmake:
  • WebKitTestRunner/PlatformEfl.cmake:

Apr 8, 2014:

11:31 PM Changeset in webkit [167003] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

nil should only be used for objects
https://bugs.webkit.org/show_bug.cgi?id=131431

Patch by Conrad Shultz <Conrad Shultz> on 2014-04-08
Reviewed by Chris Fleizach.

  • accessibility/mac/WebAccessibilityObjectWrapperMac.mm:

(-[WebAccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
nil -> NO.

  • platform/mac/WebVideoFullscreenController.mm:

(-[WebVideoFullscreenController setMediaElement:]):
nil -> 0; change a NULL to nullptr while we're here.

11:25 PM Changeset in webkit [167002] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit2

Fix EFL Build errors since r166975.
https://bugs.webkit.org/show_bug.cgi?id=131421

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-08
Reviewed by Gyuyoung Kim.

This patch is just for fixing EFL build errors.
The page overlay functionality is not working yet.

  • CMakeLists.txt:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedDrawingArea.cpp:

(WebKit::CoordinatedDrawingArea::display):

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedLayerTreeHost.cpp:

(WebKit::CoordinatedLayerTreeHost::CoordinatedLayerTreeHost):
(WebKit::CoordinatedLayerTreeHost::paintLayerContents):

  • WebProcess/WebPage/PageOverlayController.cpp:
  • WebProcess/WebPage/TapHighlightController.cpp:

(WebKit::TapHighlightController::hideHighlight):

11:18 PM Changeset in webkit [167001] by mihnea@adobe.com
  • 4 edits
    2 adds in trunk

[CSSRegions] Crash when video in region exits fullscreen
https://bugs.webkit.org/show_bug.cgi?id=131366

Reviewed by Andrei Bucur.

Source/WebCore:

After fix for https://bugs.webkit.org/show_bug.cgi?id=130392, we compute the region ranges
information for inline elements collected in named flows with associated region chains.
The algorithm for this computation, implemented in RenderFlowThread::getRegionRangeForBox,
walks up the render tree trying to find the top-most unsplittable box under the named flow
in the case where the region ranges information is not available.

As this traversal works properly only when the starting box is not detached from the render tree,
i changed the named flow information clearing in RenderBlock::collapseAnonymousBoxChild
to occur before the child to be collapsed is removed from the render tree.

Test: fast/regions/full-screen-video-in-region-crash.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::collapseAnonymousBoxChild):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::getRegionRangeForBox):

LayoutTests:

  • fast/regions/full-screen-video-in-region-crash-expected.txt: Added.
  • fast/regions/full-screen-video-in-region-crash.html: Added.
11:13 PM Changeset in webkit [167000] by ap@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Trying to unbreak flakiness dashboard after Gtk TextExpectations reshuffling.

  • platform/gtk-wk2/TestExpectations: Added.
10:25 PM Changeset in webkit [166999] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for iOS (redux).

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityARIAIsBusy]):
(-[WebAccessibilityObjectWrapper accessibilityARIALiveRegionIsAtomic]):

10:23 PM Changeset in webkit [166998] by Chris Fleizach
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for iOS.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityElementCount]):

10:01 PM Changeset in webkit [166997] by Antti Koivisto
  • 7 edits
    2 adds in trunk/Source/WebCore

Factor tile coverage map into a class
https://bugs.webkit.org/show_bug.cgi?id=131417

Reviewed by Tim Horton.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/ca/PlatformCALayerClient.h:

(WebCore::PlatformCALayerClient::platformCALayerLayoutSublayersOfLayer):
(WebCore::PlatformCALayerClient::platformCALayerRespondsToLayoutChanges):
(WebCore::PlatformCALayerClient::platformCALayerAnimationStarted):
(WebCore::PlatformCALayerClient::platformCALayerContentsOrientation):
(WebCore::PlatformCALayerClient::platformCALayerShowDebugBorders):
(WebCore::PlatformCALayerClient::platformCALayerShowRepaintCounter):
(WebCore::PlatformCALayerClient::platformCALayerIncrementRepaintCount):
(WebCore::PlatformCALayerClient::platformCALayerLayerDidDisplay):

Added default implementation to some of these to make clients less messy.

  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:

(WebCore::TileController::~TileController):
(WebCore::TileController::platformCALayerPaintContents):
(WebCore::TileController::setTiledScrollingIndicatorPosition):
(WebCore::TileController::updateTileCoverageMap):
(WebCore::TileController::tiledScrollingIndicatorLayer):

  • platform/graphics/ca/mac/TileCoverageMap.h: Added.

(WebCore::TileCoverageMap::setPosition):
(WebCore::TileCoverageMap::layer):

  • platform/graphics/ca/mac/TileCoverageMap.mm: Added.


The new class.

(WebCore::TileCoverageMap::TileCoverageMap):
(WebCore::TileCoverageMap::~TileCoverageMap):
(WebCore::TileCoverageMap::update):
(WebCore::TileCoverageMap::platformCALayerPaintContents):
(WebCore::TileCoverageMap::platformCALayerDeviceScaleFactor):

  • platform/graphics/ca/mac/TileGrid.h:
  • platform/graphics/ca/mac/TileGrid.mm:

(WebCore::TileGrid::drawTileMapContents):

9:43 PM April 2014 Meeting edited by Simon Fraser
(diff)
9:07 PM April 2014 Meeting edited by bfulgham@webkit.org
(diff)
8:52 PM Changeset in webkit [166996] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Clip outer rounded border rect on device pixel boundaries.
https://bugs.webkit.org/show_bug.cgi?id=131404

Reviewed by Simon Fraser.

Use device pixel snapped rectangle to clip out rounded rects, when not all sides are solid/double.
Snapping it to device pixel boundaries ensures that when we call drawRect(devicePixelSnappedRect) later,
it leaves no cruft behind.

Source/WebCore:

Test: fast/borders/hidpi-rounded-border-on-subpixel-position.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintBorder):

LayoutTests:

  • fast/borders/hidpi-rounded-border-on-subpixel-position-expected.html: Added.
  • fast/borders/hidpi-rounded-border-on-subpixel-position.html: Added.
8:25 PM Changeset in webkit [166995] by rniwa@webkit.org
  • 2 edits in trunk/Websites/perf.webkit.org

Build fix after r166479. 'bytes' is now abbreviated as 'B'.

  • public/js/helper-classes.js:

(PerfTestRuns.smallerIsBetter):

7:54 PM Changeset in webkit [166994] by rniwa@webkit.org
  • 3 edits in trunk/Websites/perf.webkit.org

Some CSS teaks.

  • public/common.css:

(#title):

  • public/index.html:

(#charts .pane):
(#charts .arrow):

7:27 PM April 2014 Meeting edited by rniwa@webkit.org
Add a hackathon idea (diff)
7:18 PM Changeset in webkit [166993] by jonlee@apple.com
  • 12 edits in trunk/Source

Turn MSE on by default
https://bugs.webkit.org/show_bug.cgi?id=131313
<rdar://problem/16525223>

Reviewed by Jer Noble.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • page/Settings.in: Add MEDIA_SOURCE conditional.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]): Set default to true.

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
  • Shared/WebPreferencesStore.h: Set default to true.
  • UIProcess/API/C/WKPreferencesRefPrivate.h:
7:16 PM April 2014 Meeting edited by rniwa@webkit.org
Add a hackathon idea (diff)
6:45 PM Changeset in webkit [166992] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Remove an unused parameter from loadResource.

Reviewed by Darin Adler.

Since the CachedResourceRequest has the charset in it, we don't need to pass it separately to loadRequest.

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::loadResource):

  • loader/cache/CachedResourceLoader.h:
6:25 PM Changeset in webkit [166991] by ryuan.choi@samsung.com
  • 5 edits in trunk/Source

Unreviewed EFL build fix attempt since r166956

Source/WebCore:

  • page/efl/DragControllerEfl.cpp: Rename Clipboard to DataTransfer.

(WebCore::DragController::declareAndWriteDragImage):

Source/WebKit/efl:

  • WebCoreSupport/DragClientEfl.cpp: Rename Clipboard to DataTransfer.

(WebCore::DragClientEfl::willPerformDragSourceAction):
(WebCore::DragClientEfl::startDrag): Ditto.

  • WebCoreSupport/DragClientEfl.h:
6:11 PM Changeset in webkit [166990] by Simon Fraser
  • 3 edits
    2 adds in trunk

Source/WebCore: REGRESSION (r155998): Elements render at very low resolution with some 3d transforms
https://bugs.webkit.org/show_bug.cgi?id=131412
<rdar://problem/16525044>

Reviewed by Tim Horton.

In r155998 we started to compute a root-relative transform in order to choose
a good contentsScale to avoid blurring on scaling.

However, the code failed to update this transform when passing over
GraphicsLayerCAs with no uncommitted changes, which caused us to choose
an incorrect contentsScale sometimes, resulting in blurriness.

Fix by updating the root-relative transform on layers with no uncommitted
changes.

Test: compositing/contents-scale/incremental-change.html

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):

LayoutTests: REGRESSION (r155998): Elements render at very low resolution with some 3d transforms
https://bugs.webkit.org/show_bug.cgi?id=131412

Reviewed by Tim Horton.

Test that makes an incremental change to a layer property in a tree with
interesting 3d transforms.

  • compositing/contents-scale/incremental-change-expected.html: Added.
  • compositing/contents-scale/incremental-change.html: Added.
6:11 PM Changeset in webkit [166989] by andersca@apple.com
  • 3 edits in trunk/Source/WebCore

Don't call CGPathAddPath with invalid CGAffineTransform objects
https://bugs.webkit.org/show_bug.cgi?id=131413
<rdar://problem/16399645>

Reviewed by Darin Adler.

Covered by existing tests.

  • platform/graphics/cg/PathCG.cpp:

(WebCore::Path::addPath):
Don't try to add the path if the affine transform isn't invertible.

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::isInvertible):
Handle infinite and NaN determinants.

(WebCore::AffineTransform::inverse):
Handle infinite and NaN determinants.

5:47 PM Changeset in webkit [166988] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

2014-04-08 Geoffrey Garen <ggaren@apple.com>

Stop linking WTF against bmalloc.

Reviewed by Enrica Casucci.

This seems to have broken an iOS buildbot script. Disable it for now
until we can fix the script.

  • WTF.xcodeproj/project.pbxproj:
5:40 PM Changeset in webkit [166987] by ggaren@apple.com
  • 2 edits in trunk/Tools

Fix the build-jsc build
https://bugs.webkit.org/show_bug.cgi?id=131410

Reviewed by Michael Saboff.

  • Scripts/build-jsc: Make sure to build bmalloc before WTF, since

WTF depends on it.

5:38 PM Changeset in webkit [166986] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

Fix the typo in the previous commit.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

5:37 PM Changeset in webkit [166985] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

REGRESSION(r 166890): Crash inside WebKit::WebEditorClient::textFieldDidEndEditing
https://bugs.webkit.org/show_bug.cgi?id=131409

Reviewed by Anders Carlsson.

Create an empty API::InjectedBundle::FormClient to avoid crashing inside
m_mainFrame->coreFrame()->loader().detachFromParent().

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::close):

5:22 PM Changeset in webkit [166984] by Brian Burg
  • 3 edits
    1 add in trunk

Web Replay: memoize nondeterministic attributes of the Screen interface
https://bugs.webkit.org/show_bug.cgi?id=131339

Reviewed by Timothy Hatcher.

.:

  • ManualTests/inspector/replay-window-screen.html: Added.

Source/WebCore:

The values from the screen interface are nondeterministic. Since we can't
change the physical screen dimensions, instead memoize values of attributes.

Test: ManualTests/inspector/replay-window-screen.html

  • page/Screen.idl: Add Nondeterministic attribute.
5:13 PM Changeset in webkit [166983] by Beth Dakin
  • 2 edits in trunk/Source/WebCore

https://bugs.webkit.org/show_bug.cgi?id=131408
Scrollbars layers don't dynamically update when device scale factor changes
-and corresponding-
<rdar://problem/16503875>

Reviewed by Tim Horton.

The scrollbar layers are not children of the RenderView's layer, so they were
completely skipped over by this function before. We need to start this higher up
the tree in the rootGraphicsLayer(), which will typically return the
m_overflowControlsHostLayer.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::deviceOrPageScaleFactorChanged):

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

Web Inspector: Prevent deadlocks receiving WIRPermissionDenied message
https://bugs.webkit.org/show_bug.cgi?id=131406

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-08
Reviewed by Timothy Hatcher.

  • inspector/remote/RemoteInspector.h:
  • inspector/remote/RemoteInspector.mm:

(Inspector::RemoteInspector::stop):
(Inspector::RemoteInspector::stopInternal):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
Provide a way to stop externally and a path to stop when in
the middle of handling a message already with the locked mutex.

  • inspector/remote/RemoteInspectorXPCConnection.h:
  • inspector/remote/RemoteInspectorXPCConnection.mm:

(Inspector::RemoteInspectorXPCConnection::close):
(Inspector::RemoteInspectorXPCConnection::closeFromMessage):
Provide a way to close externally and a path to close when in
the middle of handling a message already with a mutex.

5:06 PM Changeset in webkit [166981] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLConverter::aggregatedAttributesForAncestors should cache intermediate results
https://bugs.webkit.org/show_bug.cgi?id=131400

Reviewed by Sam Weinig.

Instead of accumulating attributes from a character node to the highest ancestor,
recursively call aggregatedAttributesForElementAndItsAncestors so that aggregated
attributes are cached on each ancestor to eliminate the old O(n2) behavior.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::aggregatedAttributesForAncestors):
(HTMLConverter::aggregatedAttributesForElementAndItsAncestors): Extracted from aggregatedAttributesForAncestors.

4:53 PM Changeset in webkit [166980] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebCore

Unreviewed CMake build fix after r166965.

  • UseJSC.cmake: Rename JSClipboardCustom.cpp to JSDataTransferCustom.cpp.
4:44 PM Changeset in webkit [166979] by Martin Robinson
  • 6 edits
    147 deletes in trunk

[GTK] Remove the WebKitGTK+ WebKit 1 code
https://bugs.webkit.org/show_bug.cgi?id=131399

Reviewed by Anders Carlsson.

.:

  • Source/PlatformGTK.cmake: Remove WebKit1 dependency from dist target.
  • Source/cmake/OptionsGTK.cmake: Remove option to compile with GTK+2 or with WebKit2 disabled.

Source/WebCore/platform/gtk/po:

  • POTFILES.in: Remove references to WebKit1 source files from the list of

files with translatable strings.

Source/WebKit:

  • PlatformGTK.cmake: Removed.
  • gtk: Remove this entire directory.
4:40 PM Changeset in webkit [166978] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Unify and factor out page overlay implementations
https://bugs.webkit.org/show_bug.cgi?id=131353

Reviewed by Anders Carlsson.

  • WebProcess/WebPage/PageOverlayController.cpp:

(WebKit::PageOverlayController::uninstallPageOverlay):
Don't turn fast scrolling back off unless the last overlay is removed.

4:36 PM Changeset in webkit [166977] by Martin Robinson
  • 3 edits
    36 deletes in trunk/Tools

[GTK] Remove WebKit1 unit tests
https://bugs.webkit.org/show_bug.cgi?id=131359

Reviewed by Anders Carlsson.

Remove all WebKit1 GTK+ unit tests, in preparation for removing the WebKit1 port
entirely. We also remove the list of skipped WebKi1 tests from run-gtk-tests, as
they were inadvertently left in http://trac.webkit.org/changeset/166504.

  • CMakeLists.txt: No longer load the WebKit1 unit test CMakeLists.txt file.
  • Scripts/run-gtk-tests: Remove skipped WebKit1 unit tests.
  • TestWebKitAPI/Tests/WebKitGtk/CMakeLists.txt: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/blank.ico: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.html: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.ogg: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.pdf: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/resources/test.txt: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/test_utils.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/test_utils.h: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testapplicationcache.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testatk.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testatkroles.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testcontextmenu.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testcopyandpaste.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdomdocument.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdomdomwindow.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdomnode.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testdownload.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testfavicondatabase.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testglobals.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testhittestresult.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testhttpbackend.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testkeyevents.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testloading.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testmimehandling.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testnetworkrequest.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testnetworkresponse.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebbackforwardlist.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebdatasource.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebframe.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebhistoryitem.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebinspector.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebplugindatabase.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebresource.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebsettings.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwebview.c: Removed.
  • TestWebKitAPI/Tests/WebKitGtk/testwindow.c: Removed.
4:19 PM Changeset in webkit [166976] by andersca@apple.com
  • 9 edits in trunk/Source/WebKit2

Add a WKNavigationAction property indicating whether it resulted from processing a user gesture
https://bugs.webkit.org/show_bug.cgi?id=131405
<rdar://problem/16535453>

Reviewed by Tim Horton.

  • Shared/NavigationActionData.cpp:

(WebKit::NavigationActionData::NavigationActionData):
(WebKit::NavigationActionData::encode):
(WebKit::NavigationActionData::decode):

  • Shared/NavigationActionData.h:
  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/API/Cocoa/WKNavigationActionPrivate.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::PolicyClient::decidePolicyForNavigationAction):

  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::createNewPage):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createWindow):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):

4:09 PM Changeset in webkit [166975] by timothy_horton@apple.com
  • 19 edits
    2 adds in trunk/Source/WebKit2

Unify and factor out page overlay implementations
https://bugs.webkit.org/show_bug.cgi?id=131353

Reviewed by Anders Carlsson.

Bring all of the PageOverlay code together in a single cross-platform
PageOverlayController, including hit-testing code from WebPage and painting
and layer-tree manipulation code from the DrawingArea.

This also makes all PageOverlays a single GraphicsLayer tree which can be
flushed and plugged into any DrawingArea in a straightforward manner.
We no longer have to watch for individual layers flipping into/out of tiling,
because they're hidden underneath the root PageOverlay GraphicsLayer.
Additionally, because GraphicsLayer is cross-platform, we can share
all of the fairly trivial but oft-repeated overlay management code.

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

(WebKit::PageOverlayController::rootLayer):
Add PageOverlayController.

  • WebProcess/WebPage/DrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h:
  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

Remove PageOverlay-related code from the DrawingAreas.

  • WebProcess/WebPage/PageOverlay.cpp:

(WebKit::PageOverlay::setNeedsDisplay):
(WebKit::PageOverlay::fadeAnimationTimerFired):
(WebKit::PageOverlay::clear):

  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::didChangeScrollOffset):

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm:

(-[WKAccessibilityWebPageObject accessibilityParameterizedAttributeNames]):
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:forParameter:]):
Use PageOverlayController instead of the DrawingArea/WebPage to manipulate page overlays.

  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::pageOverlayController):
Remove PageOverlay-related code from WebPage.

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:
  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::outOfTreeLayerWasAdded): Deleted.
(WebKit::RemoteLayerTreeContext::outOfTreeLayerWillBeRemoved): Deleted.
(WebKit::RemoteLayerTreeContext::flushOutOfTreeLayers): Deleted.
Remove the no-longer-necessary out-of-tree layer code.

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageInstallPageOverlayWithAnimation):
(WKBundlePageUninstallPageOverlayWithAnimation):

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::highlight):
(WebKit::WebInspectorClient::hideHighlight):

  • WebProcess/WebPage/FindController.cpp:

(WebKit::FindController::updateFindUIAfterPageScroll):
(WebKit::FindController::hideFindUI):

  • WebProcess/WebPage/TelephoneNumberOverlayController.cpp:

(WebKit::TelephoneNumberOverlayController::createOverlayIfNeeded):
(WebKit::TelephoneNumberOverlayController::destroyOverlay):
Make use of the FadeMode enum.

3:59 PM Changeset in webkit [166974] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed gardening (Take 2): Prevent users from attempting
to build with known invalid cURL.

  • Scripts/webkitdirs.pm:

(checkInstalledTools): Check for 7.34.0 (the broken version), not
7.33.0 (the known good version).

3:52 PM Changeset in webkit [166973] by Martin Robinson
  • 3 edits
    3 moves
    1 add
    22 deletes in trunk/Tools

[GTK] Remove DumpRenderTree and GtkLauncher
https://bugs.webkit.org/show_bug.cgi?id=131373

Reviewed by Andreas Kling.

Remove the GTK+ port of DumpRenderTree and GtkLauncher. These tools are
no longer necessary now that WebKit1 GTK+ will be removed.

  • CMakeLists.txt:
  • DumpRenderTree/PlatformGTK.cmake: Removed.
  • DumpRenderTree/gtk/AccessibilityControllerGtk.cpp: Removed.
  • DumpRenderTree/gtk/DumpRenderTree.cpp: Removed.
  • DumpRenderTree/gtk/DumpRenderTreeGtk.h: Removed.
  • DumpRenderTree/gtk/EditingCallbacks.cpp: Removed.
  • DumpRenderTree/gtk/EditingCallbacks.h: Removed.
  • DumpRenderTree/gtk/EventSender.cpp: Removed.
  • DumpRenderTree/gtk/EventSender.h: Removed.
  • DumpRenderTree/gtk/GCControllerGtk.cpp: Removed.
  • DumpRenderTree/gtk/PixelDumpSupportGtk.cpp: Removed.
  • DumpRenderTree/gtk/SelfScrollingWebKitWebView.cpp: Removed.
  • DumpRenderTree/gtk/SelfScrollingWebKitWebView.h: Removed.
  • DumpRenderTree/gtk/TestRunnerGtk.cpp: Removed.
  • DumpRenderTree/gtk/TextInputController.cpp: Removed.
  • DumpRenderTree/gtk/TextInputController.h: Removed.
  • DumpRenderTree/gtk/WorkQueueItemGtk.cpp: Removed.
  • GtkLauncher/CMakeLists.txt: Removed.
  • GtkLauncher/LauncherInspectorWindow.c: Removed.
  • GtkLauncher/LauncherInspectorWindow.h: Removed.
  • GtkLauncher/main.c: Removed.
  • GtkLauncher/simple.svg: Removed.
  • GtkLauncher/text.html: Removed.
  • WebKitTestRunner/PlatformGTK.cmake:
  • WebKitTestRunner/gtk/fonts/AHEM.TTF: Renamed from Tools/DumpRenderTree/gtk/fonts/AHEM.TTF.
  • WebKitTestRunner/gtk/fonts/FontWithNoValidEncoding.fon: Renamed from Tools/DumpRenderTree/gtk/fonts/FontWithNoValidEncoding.fon.
  • WebKitTestRunner/gtk/fonts/fonts.conf: Renamed from Tools/DumpRenderTree/gtk/fonts/fonts.conf.
3:51 PM Changeset in webkit [166972] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

WTF should link against bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131403

Reviewed by Michael Saboff.

This is required to build successfullly with bmalloc enabled.

  • WTF.xcodeproj/project.pbxproj:
3:46 PM Changeset in webkit [166971] by commit-queue@webkit.org
  • 5 edits in trunk/Source/JavaScriptCore

Web Inspector: Address stale FIXMEs concerning console in JSContext inspection
https://bugs.webkit.org/show_bug.cgi?id=131398

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-08
Reviewed by Timothy Hatcher.

  • inspector/InjectedScriptSource.js:

The console object can be deleted from a page or JSContext,
so keep code that expects that it could have been deleted
to be resilient in those cases.

  • inspector/JSGlobalObjectScriptDebugServer.h:
  • inspector/agents/JSGlobalObjectDebuggerAgent.h:
  • inspector/agents/JSGlobalObjectRuntimeAgent.h:

Change the FIXMEs to NOTEs that explain why these functions
have empty implementations for JSContext inspection.

3:44 PM Changeset in webkit [166970] by enrica@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix.

Return false instead of nil in a function that returns BOOL.

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper accessibilityCanFuzzyHitTest]):

3:37 PM Changeset in webkit [166969] by andersca@apple.com
  • 12 edits in trunk/Source/WebKit2

Change WebPageProxy::CreateNewPage to take a NavigationActionData object
https://bugs.webkit.org/show_bug.cgi?id=131401

Reviewed by Dan Bernstein.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::createNewPage):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/API/Cocoa/WKNavigationAction.mm:

(toWKNavigationType):

  • UIProcess/API/Cocoa/WKNavigationActionInternal.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::toWKNavigationType): Deleted.

  • UIProcess/Cocoa/UIDelegate.h:
  • UIProcess/Cocoa/UIDelegate.mm:

(WebKit::UIDelegate::UIClient::createNewPage):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::createNewPage):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createWindow):

3:36 PM Changeset in webkit [166968] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Non-empty ranges misdetected as empty ranges, avoiding telephone number detection.
<rdar://problem/16553441> and https://bugs.webkit.org/show_bug.cgi?id=131397

Reviewed by Tim Horton.

No new tests (Only affects a currently untested Mac-only WK2 feature)

  • editing/Editor.cpp:

(WebCore::Editor::scanSelectionForTelephoneNumbers): Fix detection of empty ranges so we don’t

early return erroneously.

3:27 PM Changeset in webkit [166967] by cavalcantii@gmail.com
  • 3 edits
    2 adds in trunk

[SVG] Fix CSS transform handling when zoomed
https://bugs.webkit.org/show_bug.cgi?id=125836

Reviewed by Tim Horton.

Source/WebCore:

Tests: svg/zoom/page/zoom-css-transforms-expected.svg

svg/zoom/page/zoom-css-transforms.svg

Adjusts CSS transforms when used in SVG to account for unexpected
translation scale. Backport from Chromium #174910.

  • svg/SVGGraphicsElement.cpp:

(WebCore::SVGGraphicsElement::animatedLocalTransform):

LayoutTests:

Adjusts CSS transforms when used in SVG to account for unexpected
translation scale. Backport from Chromium #174910.

  • svg/zoom/page/zoom-css-transforms-expected.svg: Added.
  • svg/zoom/page/zoom-css-transforms.svg: Added.
3:26 PM Changeset in webkit [166966] by hmuller@adobe.com
  • 3 edits
    4 adds in trunk

[CSS Shapes] large corner radius combined with 0 radius does not wrap properly
https://bugs.webkit.org/show_bug.cgi?id=129739

Reviewed by Bem Jones-Bey.

Source/WebCore:

Corrected special case handling for shape-outside border-box values with border-radius
values that greater than or equal to the box's height.

Tests: fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-001.html

fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-002.html

  • rendering/shapes/BoxShape.cpp:

(WebCore::BoxShape::getExcludedIntervals):

LayoutTests:

  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-001-expected.txt: Added.
  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-big-box-border-radius-002.html: Added.
3:06 PM Changeset in webkit [166965] by ap@apple.com
  • 64 edits
    6 moves in trunk

Source/WebCore: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

This is the name used in HTML5, and it's much better than the confusing Clipboard one.

Renamed related enums too, and made DataTransferAccessPolicy an enum class.

  • CMakeLists.txt:
  • Configurations/WebCore.xcconfig:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSClipboardCustom.cpp: Removed.
  • bindings/js/JSDataTransferCustom.cpp: Copied from Source/WebCore/bindings/js/JSClipboardCustom.cpp.

(WebCore::JSDataTransfer::types):
(WebCore::JSClipboard::types): Deleted.

  • bindings/js/JSEventCustom.cpp:
  • dom/Clipboard.cpp: Removed.
  • dom/Clipboard.h: Removed.
  • dom/Clipboard.idl: Removed.
  • dom/ClipboardAccessPolicy.h: Removed.
  • dom/ClipboardEvent.cpp:

(WebCore::ClipboardEvent::ClipboardEvent):

  • dom/ClipboardEvent.h:

(WebCore::ClipboardEvent::create):
(WebCore::ClipboardEvent::clipboard): Deleted.

  • dom/ClipboardMac.mm: Removed.
  • dom/DOMAllInOne.cpp:
  • dom/DataTransfer.cpp: Copied from Source/WebCore/dom/Clipboard.cpp.

(WebCore::DataTransfer::DataTransfer):
(WebCore::DataTransfer::createForCopyAndPaste):
(WebCore::DataTransfer::~DataTransfer):
(WebCore::DataTransfer::setAccessPolicy):
(WebCore::DataTransfer::canReadTypes):
(WebCore::DataTransfer::canReadData):
(WebCore::DataTransfer::canWriteData):
(WebCore::DataTransfer::clearData):
(WebCore::DataTransfer::getData):
(WebCore::DataTransfer::setData):
(WebCore::DataTransfer::types):
(WebCore::DataTransfer::files):
(WebCore::DataTransfer::dropEffect):
(WebCore::DataTransfer::setDropEffect):
(WebCore::DataTransfer::effectAllowed):
(WebCore::DataTransfer::setEffectAllowed):
(WebCore::DataTransfer::setDragImage):
(WebCore::DataTransfer::createForDragAndDrop):
(WebCore::DataTransfer::canSetDragImage):
(WebCore::DataTransfer::updateDragImage):
(WebCore::DataTransfer::createDragImage):
(WebCore::DragImageLoader::DragImageLoader):
(WebCore::DragImageLoader::imageChanged):
(WebCore::DataTransfer::sourceOperation):
(WebCore::DataTransfer::destinationOperation):
(WebCore::DataTransfer::setSourceOperation):
(WebCore::DataTransfer::setDestinationOperation):
(WebCore::Clipboard::Clipboard): Deleted.
(WebCore::Clipboard::createForCopyAndPaste): Deleted.
(WebCore::Clipboard::~Clipboard): Deleted.
(WebCore::Clipboard::setAccessPolicy): Deleted.
(WebCore::Clipboard::canReadTypes): Deleted.
(WebCore::Clipboard::canReadData): Deleted.
(WebCore::Clipboard::canWriteData): Deleted.
(WebCore::Clipboard::clearData): Deleted.
(WebCore::Clipboard::getData): Deleted.
(WebCore::Clipboard::setData): Deleted.
(WebCore::Clipboard::types): Deleted.
(WebCore::Clipboard::files): Deleted.
(WebCore::Clipboard::dropEffect): Deleted.
(WebCore::Clipboard::setDropEffect): Deleted.
(WebCore::Clipboard::effectAllowed): Deleted.
(WebCore::Clipboard::setEffectAllowed): Deleted.
(WebCore::Clipboard::setDragImage): Deleted.
(WebCore::Clipboard::createForDragAndDrop): Deleted.
(WebCore::Clipboard::canSetDragImage): Deleted.
(WebCore::Clipboard::updateDragImage): Deleted.
(WebCore::Clipboard::createDragImage): Deleted.
(WebCore::Clipboard::sourceOperation): Deleted.
(WebCore::Clipboard::destinationOperation): Deleted.
(WebCore::Clipboard::setSourceOperation): Deleted.
(WebCore::Clipboard::setDestinationOperation): Deleted.

  • dom/DataTransfer.h: Copied from Source/WebCore/dom/Clipboard.h.
  • dom/DataTransfer.idl: Copied from Source/WebCore/dom/Clipboard.idl.
  • dom/DataTransferAccessPolicy.h: Copied from Source/WebCore/dom/ClipboardAccessPolicy.h.
  • dom/DataTransferItemList.h:
  • dom/DataTransferMac.mm: Copied from Source/WebCore/dom/ClipboardMac.mm.

(WebCore::DataTransfer::createDragImage):
(WebCore::Clipboard::createDragImage): Deleted.

  • dom/Event.h:

(WebCore::Event::clipboardData):
(WebCore::Event::internalDataTransfer):
(WebCore::Event::clipboard): Deleted.

  • dom/Event.idl:
  • dom/MouseEvent.cpp:

(WebCore::MouseEvent::create):
(WebCore::MouseEvent::MouseEvent):
(WebCore::MouseEvent::initMouseEvent):

  • dom/MouseEvent.h:

(WebCore::MouseEvent::dataTransfer):

  • dom/MouseEvent.idl:
  • dom/WheelEvent.cpp:
  • editing/Editor.cpp:

(WebCore::Editor::canDHTMLCut):
(WebCore::Editor::canDHTMLCopy):
(WebCore::Editor::canDHTMLPaste):
(WebCore::Editor::tryDHTMLCopy):
(WebCore::Editor::tryDHTMLCut):
(WebCore::Editor::tryDHTMLPaste):
(WebCore::Editor::dispatchCPPEvent):
(WebCore::Editor::performCutOrCopy):
(WebCore::Editor::selectedTextForDataTransfer):
(WebCore::Editor::selectedTextForClipboard): Deleted.

  • editing/Editor.h:
  • editing/ios/EditorIOS.mm:

(WebCore::Editor::stringSelectionForPasteboardWithImageAltText):

  • editing/mac/EditorMac.mm:

(WebCore::Editor::takeFindStringFromSelection):
(WebCore::Editor::stringSelectionForPasteboardWithImageAltText):

  • loader/EmptyClients.h:
  • page/DragClient.h:
  • page/DragController.cpp:

(WebCore::DragController::dragExited):
(WebCore::DragController::performDrag):
(WebCore::DragController::tryDHTMLDrag):
(WebCore::DragController::startDrag):
(WebCore::DragController::doImageDrag):
(WebCore::DragController::doSystemDrag):

  • page/DragController.h:
  • page/DragState.h:
  • page/EventHandler.cpp:

(WebCore::EventHandler::dispatchDragEvent):
(WebCore::hasFileOfType):
(WebCore::hasStringOfType):
(WebCore::hasDropZoneType):
(WebCore::findDropZone):
(WebCore::EventHandler::updateDragAndDrop):
(WebCore::EventHandler::cancelDragAndDrop):
(WebCore::EventHandler::performDragAndDrop):
(WebCore::EventHandler::freeDataTransfer):
(WebCore::EventHandler::dragSourceEndedAt):
(WebCore::EventHandler::dispatchDragSrcEvent):
(WebCore::EventHandler::handleDrag):
(WebCore::EventHandler::freeClipboard): Deleted.

  • page/EventHandler.h:
  • page/efl/EventHandlerEfl.cpp:

(WebCore::EventHandler::createDraggingDataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • page/gtk/DragControllerGtk.cpp:

(WebCore::DragController::declareAndWriteDragImage):

  • page/gtk/EventHandlerGtk.cpp:

(WebCore::EventHandler::createDraggingDataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • page/mac/DragControllerMac.mm:

(WebCore::DragController::declareAndWriteDragImage):

  • page/mac/EventHandlerMac.mm:

(WebCore::EventHandler::createDraggingDataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • page/win/DragControllerWin.cpp:

(WebCore::DragController::declareAndWriteDragImage):

  • page/win/EventHandlerWin.cpp:

(WebCore::EventHandler::createDraggingataTransfer):
(WebCore::EventHandler::createDraggingClipboard): Deleted.

  • platform/Pasteboard.h:
  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::writeSelection):

  • platform/mac/PasteboardMac.mm:
  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writeRangeToDataObject):
(WebCore::Pasteboard::writeSelection):

Source/WebKit/ios: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

  • WebView/WebPDFViewPlaceholder.mm:

Source/WebKit/mac: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

  • WebCoreSupport/WebDragClient.h:
  • WebCoreSupport/WebDragClient.mm:

(WebDragClient::willPerformDragSourceAction):
(WebDragClient::startDrag):

  • WebView/WebPDFView.mm:

Source/WebKit2: Fix build.

Patch by Anders Carlsson <andersca@apple.com> on 2014-04-08

  • WebKit2Prefix.h:

LayoutTests: Rename Clipboard to DataTransfer
https://bugs.webkit.org/show_bug.cgi?id=131371

Reviewed by Anders Carlsson.

  • fast/dom/dom-constructors-expected.txt:
  • fast/dom/dom-constructors.html:
  • js/dom/global-constructors-attributes-expected.txt:
  • platform/efl/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk-wk1/js/dom/global-constructors-attributes-expected.txt:
  • platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac-mountainlion/js/dom/global-constructors-attributes-expected.txt:
  • platform/mac/js/dom/global-constructors-attributes-expected.txt:
  • platform/win/js/dom/global-constructors-attributes-expected.txt:
2:41 PM Changeset in webkit [166964] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix. Pass 0 instead of nil to the options parameter of addObserver:forKeyPath:options:context.

  • platform/graphics/ios/TextTrackRepresentationIOS.mm:

(-[WebCoreTextTrackRepresentationIOSHelper setParent:]):

2:33 PM Changeset in webkit [166963] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix build.

  • WebKit2Prefix.h:
2:29 PM Changeset in webkit [166962] by Brent Fulgham
  • 5 edits
    1 move
    2 adds
    1 delete in trunk/Source/WebInspectorUI

[Windows] Generate Optimized WebInspectorUI in Release Build
https://bugs.webkit.org/show_bug.cgi?id=120120

Reviewed by Timothy Hatcher.

  • Scripts/copy-user-interface-resources.pl: Copied from Scripts/copy-user-interface-resources.sh.
  • Scripts/copy-user-interface-resources.sh: Removed.
  • Scripts/remove-console-asserts.pl:
  • WebInspectorUI.vcxproj/WebInspectorUI.make: Added.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj: Switch to Makefile style.
  • WebInspectorUI.vcxproj/WebInspectorUI.vcxproj.filters: Ditto.
  • WebInspectorUI.vcxproj/WebInspectorUIPostBuild.cmd: More work should

be done in the new build-webinspectorui.sh file.

  • WebInspectorUI.vcxproj/build-webinspectorui.sh: Added.
  • WebInspectorUI.xcodeproj/project.pbxproj:
2:22 PM Changeset in webkit [166961] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Use an explicit class when decoding individual bundle parameters
https://bugs.webkit.org/show_bug.cgi?id=131392
<rdar://problem/16213914>

Reviewed by Dan Bernstein.

  • WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:

(WebKit::InjectedBundle::setBundleParameter):

2:18 PM Changeset in webkit [166960] by Brent Fulgham
  • 13 edits in trunk/LayoutTests

[Mac] Unreviewed test gardening.

Rebaseline scrolling tests to remove flakiness introduced by slight differences in
pixel scroll counts between WK1 and WK2 test runners.

  • platform/mac/fast/scrolling/scroll-div-latched-div-expected.txt:
  • platform/mac/fast/scrolling/scroll-div-latched-div.html:
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-div-latched-mainframe.html:
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-iframe-latched-iframe.html:
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-iframe-latched-mainframe.html:
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe-expected.txt:
  • platform/mac/fast/scrolling/scroll-select-latched-mainframe.html:
  • platform/mac/fast/scrolling/scroll-select-latched-select-expected.txt:
  • platform/mac/fast/scrolling/scroll-select-latched-select.html:
2:11 PM Changeset in webkit [166959] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Move a Mountain Lion declaration to the WebKit2 prefix header
https://bugs.webkit.org/show_bug.cgi?id=131391

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKProcessPool.mm:
  • UIProcess/ios/PageClientImplIOS.mm:
  • UIProcess/mac/WebContextMac.mm:
  • WebKit2Prefix.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
  • WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
1:50 PM Changeset in webkit [166958] by Antti Koivisto
  • 12 edits in trunk/Source

Remove exposedRect from TileController
https://bugs.webkit.org/show_bug.cgi?id=131378

Reviewed by Simon Fraser.

Source/WebCore:

Having two separate visible rectangles is confusing. We should compute one on higher level.

  • page/FrameView.cpp:

(WebCore::FrameView::setExposedRect):

Push exposed rect to tile controller by doing a layer flush (like the changed visible rect is normally passed).

  • platform/graphics/TiledBacking.h:
  • platform/graphics/ca/mac/TileController.h:
  • platform/graphics/ca/mac/TileController.mm:


Remove exposedRect and just use visibleRect.

(WebCore::TileController::TileController):
(WebCore::TileController::setTiledScrollingIndicatorPosition):

Update the scrolling indicator position.

(WebCore::TileController::updateTileCoverageMap):
(WebCore::TileController::setExposedRect): Deleted.

  • platform/graphics/ca/mac/TileGrid.h:
  • platform/graphics/ca/mac/TileGrid.mm:

(WebCore::TileGrid::tilesWouldChangeForVisibleRect):
(WebCore::TileGrid::revalidateTiles):
(WebCore::TileGrid::scaledExposedRect): Deleted.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::RenderLayerBacking):

No need to push exposedRect anymore.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::flushPendingLayerChanges):

Integrate exposed rect to visible rect when flushing layers.

Source/WebKit2:

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::updateScrolledExposedRect):

  • WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:

(WebKit::TiledCoreAnimationDrawingArea::updateScrolledExposedRect):

Update the visible rect for pageOverlayLayers by calling flushCompositingState. This way
tile controller visible rect updates always happens via compositing flush (we assert
for this in TileController::setVisibleRect).

1:36 PM Changeset in webkit [166957] by ggaren@apple.com
  • 2 edits in trunk/Source/WTF

Added a bmalloc back-end for FastMalloc
https://bugs.webkit.org/show_bug.cgi?id=131387

Reviewed by Andreas Kling.

We'll need to rethink some things if we adopt this back-end. For example,
fastMallocSize() and fastMallocGoodSize() are no longer real things. But,
this is enough to test for now.

  • wtf/FastMalloc.cpp:

(WTF::fastMalloc):
(WTF::fastCalloc):
(WTF::fastRealloc):
(WTF::fastFree):
(WTF::fastMallocSize):
(WTF::fastMallocGoodSize):
(WTF::tryFastMalloc):
(WTF::tryFastRealloc):
(WTF::tryFastCalloc):
(WTF::releaseFastMallocFreeMemory):
(WTF::fastMallocStatistics):

1:36 PM Changeset in webkit [166956] by ggaren@apple.com
  • 24 edits in trunk/Source/bmalloc

Made bmalloc more #include friendly
https://bugs.webkit.org/show_bug.cgi?id=131386

Reviewed by Andreas Kling.

Marked a bunch of headers private so they can be used from client code
that #includes bmalloc.h.

Renamed ASSERT macros to BASSERT. This matches their header, which already
had to be renamed, and fixes conflicts with WTF's ASSERT macros.

  • bmalloc.xcodeproj/project.pbxproj:
  • bmalloc/Allocator.cpp:

(bmalloc::Allocator::allocateSlowCase):

  • bmalloc/AsyncTask.h:

(bmalloc::Function>::runSlowCase):

  • bmalloc/BAssert.h:
  • bmalloc/BoundaryTag.h:

(bmalloc::BoundaryTag::setSize):

  • bmalloc/BoundaryTagInlines.h:

(bmalloc::validate):
(bmalloc::BoundaryTag::init):
(bmalloc::BoundaryTag::deallocate):
(bmalloc::BoundaryTag::splitLarge):
(bmalloc::BoundaryTag::allocate):

  • bmalloc/Chunk.h:
  • bmalloc/Deallocator.cpp:

(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSlowCase):

  • bmalloc/Deallocator.h:

(bmalloc::Deallocator::deallocateFastCase):

  • bmalloc/FixedVector.h:

(bmalloc::Capacity>::operator):
(bmalloc::Capacity>::push):
(bmalloc::Capacity>::pop):
(bmalloc::Capacity>::shrink):

  • bmalloc/Heap.cpp:

(bmalloc::Heap::allocateLarge):

  • bmalloc/LargeChunk.h:

(bmalloc::LargeChunk::get):
(bmalloc::LargeChunk::endTag):

  • bmalloc/Line.h:

(bmalloc::Line<Traits>::concurrentRef):
(bmalloc::Line<Traits>::deref):

  • bmalloc/MediumAllocator.h:

(bmalloc::MediumAllocator::allocate):

  • bmalloc/ObjectType.h:

(bmalloc::isSmall):

  • bmalloc/Page.h:

(bmalloc::Page<Traits>::ref):
(bmalloc::Page<Traits>::deref):

  • bmalloc/PerThread.h:

(bmalloc::PerThread<T>::getSlowCase):

  • bmalloc/SegregatedFreeList.cpp:

(bmalloc::SegregatedFreeList::SegregatedFreeList):
(bmalloc::SegregatedFreeList::insert):

  • bmalloc/SmallAllocator.h:

(bmalloc::SmallAllocator::allocate):
(bmalloc::SmallAllocator::refill):

  • bmalloc/Syscall.h:
  • bmalloc/VMAllocate.h:

(bmalloc::vmValidate):
(bmalloc::vmAllocate):
(bmalloc::vmDeallocatePhysicalPagesSloppy):

  • bmalloc/Vector.h:

(bmalloc::Vector<T>::operator):
(bmalloc::Vector<T>::pop):
(bmalloc::Vector<T>::shrink):

  • bmalloc/XLargeChunk.h:

(bmalloc::XLargeChunk::range):
(bmalloc::XLargeChunk::size):

1:32 PM Changeset in webkit [166955] by timothy@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

Fix corrupt APPLE_IMAGES_LICENSE.rtf after r165676.
https://bugs.webkit.org/show_bug.cgi?id=131384

Reviewed by Joseph Pecoraro.

  • APPLE_IMAGES_LICENSE.rtf:
1:32 PM Changeset in webkit [166954] by mrowe@apple.com
  • 2 edits in trunk/Tools

XPC services launched by Safari have wrong DYLD_FRAMEWORK_PATH set when launched via run-safari / debug-safari
<https://webkit.org/b/131388> / <rdar://problem/16291687>

Reviewed by Alexey Proskuryakov.

  • Scripts/webkitdirs.pm:

(runMacWebKitApp): Set XPC_DYLD_FRAMEWORK_PATH to the absolute path to the built products directory.
(execMacWebKitAppForDebugging): Ditto.

1:26 PM Changeset in webkit [166953] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Always do a full GC when simulating memory pressure.
<https://webkit.org/b/129790>

To get more consistent accounting on automated memory testers,
add a synchronous GC as part of the simulated memory pressure event.

Reviewed by Geoffrey Garen.

  • platform/mac/MemoryPressureHandlerMac.mm:

(WebCore::MemoryPressureHandler::install):

1:25 PM Changeset in webkit [166952] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, fix a goofy assertion to fix debug.

  • bytecode/PolymorphicPutByIdList.h:

(JSC::PutByIdAccess::isSetter):
(JSC::PutByIdAccess::oldStructure):
(JSC::PutByIdAccess::chain):
(JSC::PutByIdAccess::stubRoutine):
(JSC::PutByIdAccess::customSetter):

1:24 PM Changeset in webkit [166951] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed iOS build fix. Pass 0 instead of nil to setRate: when pausing.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::platformPause):

1:05 PM Changeset in webkit [166950] by mitz@apple.com
  • 4 edits in trunk

Added bmalloc to the WebKit workspace.
https://bugs.webkit.org/show_bug.cgi?id=131362

Reviewed by Geoff Garen.

  • WebKit.xcworkspace/contents.xcworkspacedata:
  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source (target WebProcess).xcscheme:
  • WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme:
1:04 PM Changeset in webkit [166949] by commit-queue@webkit.org
  • 3 edits in trunk/LayoutTests

[GTK] Unreviewed GTK gardening.

Update text expectations for failing tests:

accessibility/children-changed-sends-notification.html
accessibility/notification-listeners.html
fast/repaint/blend-mode-isolate-stacking-context.html
fast/repaint/hidpi-absolute-positioned-element-wrong-cliprect-after-move.html

Rebaseline fast/multicol/client-rects-expected.txt after r165991

Patch by Carlos Alberto Lopez Perez <clopez@igalia.com> on 2014-04-08

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/multicol/client-rects-expected.txt:
1:03 PM Changeset in webkit [166948] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Fail silently if the LLVM dylib isn't found
https://bugs.webkit.org/show_bug.cgi?id=131385

Reviewed by Mark Hahnenberg.

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::compileInThreadImpl):

  • llvm/InitializeLLVM.cpp:

(JSC::initializeLLVM):

  • llvm/InitializeLLVM.h:
  • llvm/InitializeLLVMPOSIX.cpp:

(JSC::initializeLLVMPOSIX):

12:56 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
12:52 PM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
12:48 PM Changeset in webkit [166947] by ggaren@apple.com
  • 4 edits in trunk

Build bmalloc on iOS too
https://bugs.webkit.org/show_bug.cgi?id=131381

Reviewed by Andreas Kling.

.:

  • Source/Makefile: Build it.

Tools:

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

FlagsChanged events are not delivered to input methods when using async text input
https://bugs.webkit.org/show_bug.cgi?id=131383

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm: (-[WKView _interpretKeyEvent:completionHandler:]):

The early return is no longer needed.

12:39 PM Changeset in webkit [166945] by fpizlo@apple.com
  • 9 edits
    4 adds in trunk

Repatch should support setters and plant calls to them directly
https://bugs.webkit.org/show_bug.cgi?id=130750

Source/JavaScriptCore:

Reviewed by Geoffrey Garen.

All of the infrastructure was in place so this just enables setter optimization.

This is a 12x speed-up on setter microbenchmarks. This is a 1% speed-up on Octane.

  • bytecode/PolymorphicPutByIdList.cpp:

(JSC::PutByIdAccess::visitWeak):

  • bytecode/PolymorphicPutByIdList.h:

(JSC::PutByIdAccess::setter):
(JSC::PutByIdAccess::customSetter): Deleted.

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeForStubInfo):

  • jit/Repatch.cpp:

(JSC::toString):
(JSC::kindFor):
(JSC::customFor):
(JSC::generateByIdStub):
(JSC::tryCachePutByID):
(JSC::tryBuildPutByIdList):

  • runtime/JSObject.cpp:

(JSC::JSObject::put):

  • runtime/Lookup.h:

(JSC::putEntry):

  • runtime/PutPropertySlot.h:

(JSC::PutPropertySlot::setCacheableSetter):
(JSC::PutPropertySlot::isCacheableSetter):
(JSC::PutPropertySlot::isCacheableCustom):
(JSC::PutPropertySlot::setCacheableCustomProperty): Deleted.
(JSC::PutPropertySlot::isCacheableCustomProperty): Deleted.

  • tests/stress/setter.js: Added.

(foo):

LayoutTests:

Reviewed by Geoffrey Garen.

  • js/regress/script-tests/setter.js: Added.
  • js/regress/setter-expected.txt: Added.
  • js/regress/setter.html: Added.
12:26 PM Changeset in webkit [166944] by ggaren@apple.com
  • 1 edit
    1 delete in trunk/Source/bmalloc

2014-04-08 Geoffrey Garen <ggaren@apple.com>

Removed an unused file.

Unreviewed.

  • bmalloc/AsyncTask.cpp: Removed.
12:12 PM Changeset in webkit [166943] by mark.lam@apple.com
  • 3 edits in trunk/Source/WebCore

Refactor to make JSMainThreadExecState's constructor and destructor private.
<https://webkit.org/b/131372>

Reviewed by Mark Hahnenberg.

This is in preparation for subsequent patches to ensure that we don't
exit the VM with an exception still pending.

No new tests required. This is only a refactor of existing behavior.

  • bindings/js/JSDOMGlobalObjectTask.cpp:
  • bindings/js/JSMainThreadExecState.h:

(WebCore::JSMainThreadExecState::runTask):

12:07 PM Changeset in webkit [166942] by timothy@apple.com
  • 3 edits in trunk/Source/WebInspectorUI

Clean up old protocol JSON files to better match the latest
https://bugs.webkit.org/show_bug.cgi?id=131308

Reviewed by Joseph Pecoraro.

  • Versions/Inspector-iOS-6.0.json:
  • Versions/Inspector-iOS-7.0.json:
12:00 PM Changeset in webkit [166941] by timothy_horton@apple.com
  • 3 edits in trunk/Source/WebKit2

WebKit2 View Gestures (Swipe): Swipe-start hysteresis
https://bugs.webkit.org/show_bug.cgi?id=127393
<rdar://problem/15876822>

Reviewed by Anders Carlsson.

We shouldn't start a swipe immediately upon very small scrolls in the correct direction,
because we don't want to get the user trapped in a swipe when they want to scroll.

We'll accumulate the scroll deltas and wait until the user has scrolled at least 15px horizontally.
In addition, we'll drop the swipe completely if any event has a vertical delta equal to half (or more)
of the horizontal delta.

  • UIProcess/mac/ViewGestureController.h:
  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::ViewGestureController):
(WebKit::ViewGestureController::deltaIsSufficientToBeginSwipe):
(WebKit::ViewGestureController::handleScrollWheelEvent):
(WebKit::ViewGestureController::wheelEventWasNotHandledByWebCore):

11:26 AM Changeset in webkit [166940] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac][WK2] Videos do not have access to session cookies
https://bugs.webkit.org/show_bug.cgi?id=129687

Reviewed by Eric Carlson.

Update the CookieStorageShim to track changes in underlying networking stack.

  • Shared/mac/CookieStorageShim.mm:

(WebKit::CookieStorageShim::initialize):
(-[WKNSURLSessionLocal _getCookieHeadersForTask:completionHandler:]):

11:22 AM Changeset in webkit [166939] by jer.noble@apple.com
  • 3 edits in trunk/Source/WebCore

[WK2][iOS] Consecutive videos in full screen display only black
https://bugs.webkit.org/show_bug.cgi?id=131316

Reviewed by Eric Carlson.

Update the MediaPlayer's full screen attributes whenever the underlying engine changes,
not just when the engine is initially created. Also, clear the videoLayer out of the
fullscreen layer when destroying the videoLayer.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::destroyVideoLayer):

11:19 AM Changeset in webkit [166938] by commit-queue@webkit.org
  • 7 edits
    6 adds in trunk

[New Multicolumn] Child top margin sometimes ignored for column balancing
https://bugs.webkit.org/show_bug.cgi?id=122754

Patch by Morten Stenshorne <mstensho@opera.com> on 2014-04-08
Reviewed by David Hyatt.

Source/WebCore:

We need to set zero page logical height in LayoutState when column
height is unknown (when the columns haven't yet been
balanced). There's code that assumes that non-zero page height means
that page height is known. Lying about this makes the pagination code
believe that every top margin is adjacent to a column break, which
makes it eat and ignore all top margins.

This should be cleaned up, but it's easier to wait until the old
multicol code has been removed.

Tests: fast/multicol/break-in-scrollable.html

fast/multicol/newmulticol/leading-and-trailing-margin.html
fast/multicol/newmulticol/leading-margin.html

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::checkForPaginationLogicalHeightChange):

  • rendering/RenderFlowThread.h:
  • rendering/RenderMultiColumnFlowThread.cpp:

(WebCore::RenderMultiColumnFlowThread::isPageLogicalHeightKnown):

  • rendering/RenderMultiColumnFlowThread.h:

LayoutTests:

  • fast/multicol/break-in-scrollable-expected.html: Added.
  • fast/multicol/break-in-scrollable.html: Added.
  • fast/multicol/newmulticol/leading-and-trailing-margin-expected.html: Added.
  • fast/multicol/newmulticol/leading-and-trailing-margin.html: Added.
  • fast/multicol/newmulticol/leading-margin-expected.html: Added.
  • fast/multicol/newmulticol/leading-margin.html: Added.
11:06 AM Changeset in webkit [166937] by dino@apple.com
  • 6 edits in trunk/Source/WebCore

Allow elements to register for changes in page scale
https://bugs.webkit.org/show_bug.cgi?id=131319

Reviewed by Eric Carlson.

Some parts of WebCore need to react to changes in the page
scale factor, such as resizing when the user zooms. A followup
patch will enable this for media controls - this simply lays
the groundwork.

At the moment we only allow HTMLMediaElements to register, but if
necessary this could be expanded in the future.

  • dom/Document.cpp: New methods to keep a list of HTMLMediaElements that

are interested in updates.
(WebCore::Document::registerForPageScaleFactorChangedCallbacks):
(WebCore::Document::unregisterForPageScaleFactorChangedCallbacks):
(WebCore::Document::pageScaleFactorChanged):

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

(WebCore::HTMLMediaElement::HTMLMediaElement):
(WebCore::HTMLMediaElement::registerWithDocument): Add ourselves to the
the document's pageScale callback.
(WebCore::HTMLMediaElement::unregisterWithDocument): Remove ourselves from the
the document's pageScale callback.
(WebCore::HTMLMediaElement::setMediaControlsDependOnPageScaleFactor): Add/remove ourselves to/from
the callback if necessary.
(WebCore::HTMLMediaElement::pageScaleFactorChanged): The callback function. Empty for now.

  • html/HTMLMediaElement.h:

(WebCore::HTMLMediaElement::mediaControlsDependOnPageScaleFactor): Accessor.

  • page/Page.cpp:

(WebCore::Page::setPageScaleFactor): Tell all documents that the user has zoomed.

11:04 AM Changeset in webkit [166936] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

[Cocoa] Add a way to tell whether a WKWebProcessPlugInNodeHandle is a text-type HTML input element
https://bugs.webkit.org/show_bug.cgi?id=131374

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.h:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:

(-[WKWebProcessPlugInNodeHandle isTextField]): Added this getter. Calls
InjectedBundleNodeHandle::isTextField.

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::isTextField): Added. Uses
WebCore::HTMLInputElement::isText, which is consistent with what
WebChromeClient::focusedElementChanged uses to decide whether to call didFocusTextField.

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.h:
10:45 AM Changeset in webkit [166935] by mitz@apple.com
  • 5 edits in trunk/Source/WebKit2

[Cocoa] Add a _certificateChain property to WKWebProcessPlugInFrame
https://bugs.webkit.org/show_bug.cgi?id=131370

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:

(-[WKWebProcessPlugInFrame _certificateChain]): Added this getter, which uses the new
WebFrame::certificateInfo.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::certificateInfo): Added this getter.

  • WebProcess/WebPage/WebFrame.h:
10:36 AM Changeset in webkit [166934] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Add a bundle form delegate method corresponding to textDidChangeInTextField
https://bugs.webkit.org/show_bug.cgi?id=131369

Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Declared

new delegate method.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Added an override
of API::InjectedBundle::FormClient::textDidChangeInTextField which calls the new delegate
method.

10:17 AM Changeset in webkit [166933] by mitz@apple.com
  • 11 edits
    2 adds in trunk/Source

../WebKit/mac: WebKit part of [Cocoa] Add WKFormDelegate
https://bugs.webkit.org/show_bug.cgi?id=131343

Reviewed by Anders Carlsson.

  • MigrateHeaders.make: Added new WebKit2 headers to WEBKIT2_HEADERS.

../WebKit2: [Cocoa] Add WKFormDelegate
https://bugs.webkit.org/show_bug.cgi?id=131343

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _formDelegate]): Added this accessor.
(-[WKWebView _setFormDelegate:]): Ditto.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h: Declared _formDelegate property.
  • UIProcess/API/Cocoa/_WKFormDelegate.h: Added.
  • UIProcess/API/Cocoa/_WKFormInputSession.h: Added.
  • UIProcess/ios/WKContentView.h: Moved _webView ivar into the @interface…
  • UIProcess/ios/WKContentView.mm: …from the @implementation.
  • UIProcess/ios/WKContentViewInteraction.h: Added _formInputSession ivar and

formAccessoryView property.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKFormInputSession initWithContentView:userObject:]): Added.
(-[WKFormInputSession dealloc]): Added.
(-[WKFormInputSession userObject]): Added.
(-[WKFormInputSession isValid]): Added.
(-[WKFormInputSession accessoryViewCustomButtonTitle]): Added.
(-[WKFormInputSession setAccessoryViewCustomButtonTitle:]): Added.
(-[WKFormInputSession invalidate]): Added.
(-[WKContentView cleanupInteraction]): Invalidate and release the input session.
(-[WKContentView formAccessoryView]): Added this accessor.
(-[WKContentView _startAssistingNode:userObject:]): Create an input session and message the
form delegate.
(-[WKContentView _stopAssistingNode]): Invalidate and release the input session.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Added

comment.

9:47 AM Changeset in webkit [166932] by Brent Fulgham
  • 2 edits in trunk/Tools

Unreviewed gardening: Prevent users from attempting
to build with known invalid cURL.

  • Scripts/webkitdirs.pm:

(checkInstalledTools): Block build attempts with bad
Cygwin tool set.

9:40 AM Changeset in webkit [166931] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WinCairo] Compile error in TextureMapper.h
https://bugs.webkit.org/show_bug.cgi?id=131360

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-04-08
Reviewed by Brent Fulgham.

The TextureMapper class has pure virtual methods, and cannot be instantiated.

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::platformCreateAccelerated):

9:26 AM Changeset in webkit [166930] by Brent Fulgham
  • 3 edits
    97 moves
    12 adds in trunk/LayoutTests

[WebVTT] Begin Enabling W3C VTT Tests
https://bugs.webkit.org/show_bug.cgi?id=131345

Reviewed by Darin Adler.

Move a number of tests out of 'opera' into a new 'w3c' folder.

  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang.html: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt: Removed.
  • media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track.html: Removed.
  • media/track/opera/interfaces/TextTrack/addCue-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/addCue.html: Removed.
  • media/track/opera/interfaces/TextTrack/constants-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/constants.html: Removed.
  • media/track/opera/interfaces/TextTrack/cues-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/cues.html: Removed.
  • media/track/opera/interfaces/TextTrack/kind-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/kind.html: Removed.
  • media/track/opera/interfaces/TextTrack/label-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/label.html: Removed.
  • media/track/opera/interfaces/TextTrack/language-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/language.html: Removed.
  • media/track/opera/interfaces/TextTrack/mode-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/mode.html: Removed.
  • media/track/opera/interfaces/TextTrack/oncuechange-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/oncuechange.html: Removed.
  • media/track/opera/interfaces/TextTrack/removeCue-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrack/removeCue.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/align-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/align.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/endTime-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/endTime.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/id-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/id.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/pauseOnExit-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/pauseOnExit.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/startTime-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/startTime.html: Removed.
  • media/track/opera/interfaces/TextTrackCue/track-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCue/track.html: Removed.
  • media/track/opera/interfaces/TextTrackCueList/getCueById-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCueList/getCueById.html: Removed.
  • media/track/opera/interfaces/TextTrackCueList/length-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackCueList/length.html: Removed.
  • media/track/opera/interfaces/TextTrackList/length-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackList/length.html: Removed.
  • media/track/opera/interfaces/TextTrackList/onaddtrack-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackList/onaddtrack.html: Removed.
  • media/track/opera/interfaces/TextTrackList/onremovetrack-expected.txt: Removed.
  • media/track/opera/interfaces/TextTrackList/onremovetrack.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/2_tracks-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/2_tracks.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_end-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_end.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_start-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/align_start.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/basic-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/basic.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media/background.gif: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media/white.mp4: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/media/white.webm: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/size_50-ref.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/size_50.html: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/2_cues_overlapping_completely_move_up.vtt: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/align_end_long.vtt: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/foo.vtt: Removed.
  • media/track/opera/track/webvtt/rendering/reftest/support/refTestWait.js: Removed.
  • media/track/w3c: Added.
  • media/track/w3c/interfaces: Added.
  • media/track/w3c/interfaces/HTMLMediaElement: Added.
  • media/track/w3c/interfaces/HTMLMediaElement/addTextTrack-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack-expected.txt.
  • media/track/w3c/interfaces/HTMLMediaElement/addTextTrack.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/addTextTrack.html.
  • media/track/w3c/interfaces/HTMLMediaElement/textTracks-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks-expected.txt.
  • media/track/w3c/interfaces/HTMLMediaElement/textTracks.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLMediaElement/textTracks.html.
  • media/track/w3c/interfaces/HTMLTrackElement: Added.
  • media/track/w3c/interfaces/HTMLTrackElement/default-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/default.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/default.html.
  • media/track/w3c/interfaces/HTMLTrackElement/label-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/label.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/label.html.
  • media/track/w3c/interfaces/HTMLTrackElement/readyState-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/readyState.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/readyState.html.
  • media/track/w3c/interfaces/HTMLTrackElement/srclang-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/srclang.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/srclang.html.
  • media/track/w3c/interfaces/HTMLTrackElement/track-expected.txt: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track-expected.txt.
  • media/track/w3c/interfaces/HTMLTrackElement/track.html: Copied from media/track/opera/interfaces/HTMLElement/HTMLTrackElement/track.html.
  • media/track/w3c/interfaces/TextTrack: Added.
  • media/track/w3c/interfaces/TextTrack/addCue-expected.txt: Copied from media/track/opera/interfaces/TextTrack/addCue-expected.txt.
  • media/track/w3c/interfaces/TextTrack/addCue.html: Copied from media/track/opera/interfaces/TextTrack/addCue.html.
  • media/track/w3c/interfaces/TextTrack/constants-expected.txt: Copied from media/track/opera/interfaces/TextTrack/constants-expected.txt.
  • media/track/w3c/interfaces/TextTrack/constants.html: Copied from media/track/opera/interfaces/TextTrack/constants.html.
  • media/track/w3c/interfaces/TextTrack/cues-expected.txt: Copied from media/track/opera/interfaces/TextTrack/cues-expected.txt.
  • media/track/w3c/interfaces/TextTrack/cues.html: Copied from media/track/opera/interfaces/TextTrack/cues.html.
  • media/track/w3c/interfaces/TextTrack/kind-expected.txt: Copied from media/track/opera/interfaces/TextTrack/kind-expected.txt.
  • media/track/w3c/interfaces/TextTrack/kind.html: Copied from media/track/opera/interfaces/TextTrack/kind.html.
  • media/track/w3c/interfaces/TextTrack/label-expected.txt: Copied from media/track/opera/interfaces/TextTrack/label-expected.txt.
  • media/track/w3c/interfaces/TextTrack/label.html: Copied from media/track/opera/interfaces/TextTrack/label.html.
  • media/track/w3c/interfaces/TextTrack/language-expected.txt: Copied from media/track/opera/interfaces/TextTrack/language-expected.txt.
  • media/track/w3c/interfaces/TextTrack/language.html: Copied from media/track/opera/interfaces/TextTrack/language.html.
  • media/track/w3c/interfaces/TextTrack/mode-expected.txt: Copied from media/track/opera/interfaces/TextTrack/mode-expected.txt.
  • media/track/w3c/interfaces/TextTrack/mode.html: Copied from media/track/opera/interfaces/TextTrack/mode.html.
  • media/track/w3c/interfaces/TextTrack/oncuechange-expected.txt: Copied from media/track/opera/interfaces/TextTrack/oncuechange-expected.txt.
  • media/track/w3c/interfaces/TextTrack/oncuechange.html: Copied from media/track/opera/interfaces/TextTrack/oncuechange.html.
  • media/track/w3c/interfaces/TextTrack/removeCue-expected.txt: Copied from media/track/opera/interfaces/TextTrack/removeCue-expected.txt.
  • media/track/w3c/interfaces/TextTrack/removeCue.html: Copied from media/track/opera/interfaces/TextTrack/removeCue.html.
  • media/track/w3c/interfaces/TextTrackCue: Added.
  • media/track/w3c/interfaces/TextTrackCue/align-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/align-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/align.html: Copied from media/track/opera/interfaces/TextTrackCue/align.html.
  • media/track/w3c/interfaces/TextTrackCue/endTime-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/endTime-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/endTime.html: Copied from media/track/opera/interfaces/TextTrackCue/endTime.html.
  • media/track/w3c/interfaces/TextTrackCue/id-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/id-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/id.html: Copied from media/track/opera/interfaces/TextTrackCue/id.html.
  • media/track/w3c/interfaces/TextTrackCue/pauseOnExit-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/pauseOnExit-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/pauseOnExit.html: Copied from media/track/opera/interfaces/TextTrackCue/pauseOnExit.html.
  • media/track/w3c/interfaces/TextTrackCue/startTime-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/startTime-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/startTime.html: Copied from media/track/opera/interfaces/TextTrackCue/startTime.html.
  • media/track/w3c/interfaces/TextTrackCue/track-expected.txt: Copied from media/track/opera/interfaces/TextTrackCue/track-expected.txt.
  • media/track/w3c/interfaces/TextTrackCue/track.html: Copied from media/track/opera/interfaces/TextTrackCue/track.html.
  • media/track/w3c/interfaces/TextTrackCueList: Added.
  • media/track/w3c/interfaces/TextTrackCueList/getCueById-expected.txt: Copied from media/track/opera/interfaces/TextTrackCueList/getCueById-expected.txt.
  • media/track/w3c/interfaces/TextTrackCueList/getCueById.html: Copied from media/track/opera/interfaces/TextTrackCueList/getCueById.html.
  • media/track/w3c/interfaces/TextTrackCueList/length-expected.txt: Copied from media/track/opera/interfaces/TextTrackCueList/length-expected.txt.
  • media/track/w3c/interfaces/TextTrackCueList/length.html: Copied from media/track/opera/interfaces/TextTrackCueList/length.html.
  • media/track/w3c/interfaces/TextTrackList: Added.
  • media/track/w3c/interfaces/TextTrackList/length-expected.txt: Copied from media/track/opera/interfaces/TextTrackList/length-expected.txt.
  • media/track/w3c/interfaces/TextTrackList/length.html: Copied from media/track/opera/interfaces/TextTrackList/length.html.
  • media/track/w3c/interfaces/TextTrackList/onaddtrack-expected.txt: Copied from media/track/opera/interfaces/TextTrackList/onaddtrack-expected.txt.
  • media/track/w3c/interfaces/TextTrackList/onaddtrack.html: Copied from media/track/opera/interfaces/TextTrackList/onaddtrack.html.
  • media/track/w3c/interfaces/TextTrackList/onremovetrack-expected.txt: Copied from media/track/opera/interfaces/TextTrackList/onremovetrack-expected.txt.
  • media/track/w3c/interfaces/TextTrackList/onremovetrack.html: Copied from media/track/opera/interfaces/TextTrackList/onremovetrack.html.
  • media/track/w3c/track: Added.
  • media/track/w3c/track/webvtt: Added.
  • media/track/w3c/track/webvtt/2_tracks-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/2_tracks-ref.html.
  • media/track/w3c/track/webvtt/2_tracks.html: Copied from media/track/opera/track/webvtt/rendering/reftest/2_tracks.html.
  • media/track/w3c/track/webvtt/align_end-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_end-ref.html.
  • media/track/w3c/track/webvtt/align_end.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_end.html.
  • media/track/w3c/track/webvtt/align_middle-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle-ref.html.
  • media/track/w3c/track/webvtt/align_middle.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle.html.
  • media/track/w3c/track/webvtt/align_middle_position_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_50.html.
  • media/track/w3c/track/webvtt/align_middle_position_gt_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_gt_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_gt_50.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50_size_gt_maximum_size-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size-ref.html.
  • media/track/w3c/track/webvtt/align_middle_position_lt_50_size_gt_maximum_size.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_middle_position_lt_50_size_gt_maximum_size.html.
  • media/track/w3c/track/webvtt/align_start-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_start-ref.html.
  • media/track/w3c/track/webvtt/align_start.html: Copied from media/track/opera/track/webvtt/rendering/reftest/align_start.html.
  • media/track/w3c/track/webvtt/audio_has_no_subtitles-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles-ref.html.
  • media/track/w3c/track/webvtt/audio_has_no_subtitles.html: Copied from media/track/opera/track/webvtt/rendering/reftest/audio_has_no_subtitles.html.
  • media/track/w3c/track/webvtt/background.gif: Copied from media/track/opera/track/webvtt/rendering/reftest/media/background.gif.
  • media/track/w3c/track/webvtt/basic-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/basic-ref.html.
  • media/track/w3c/track/webvtt/basic.html: Copied from media/track/opera/track/webvtt/rendering/reftest/basic.html.
  • media/track/w3c/track/webvtt/decode_escaped_entities-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities-ref.html.
  • media/track/w3c/track/webvtt/decode_escaped_entities.html: Copied from media/track/opera/track/webvtt/rendering/reftest/decode_escaped_entities.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size_while_paused-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_align_position_line_size_while_paused.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_align_position_line_size_while_paused.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text_while_paused-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused-ref.html.
  • media/track/w3c/track/webvtt/dom_override_cue_text_while_paused.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_cue_text_while_paused.html.
  • media/track/w3c/track/webvtt/dom_override_remove_cue_while_paused-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused-ref.html.
  • media/track/w3c/track/webvtt/dom_override_remove_cue_while_paused.html: Copied from media/track/opera/track/webvtt/rendering/reftest/dom_override_remove_cue_while_paused.html.
  • media/track/w3c/track/webvtt/media: Added.
  • media/track/w3c/track/webvtt/media/white.mp4: Copied from media/track/opera/track/webvtt/rendering/reftest/media/white.mp4.
  • media/track/w3c/track/webvtt/media/white.webm: Copied from media/track/opera/track/webvtt/rendering/reftest/media/white.webm.
  • media/track/w3c/track/webvtt/one_line_cue_plus_wrapped_cue-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue-ref.html.
  • media/track/w3c/track/webvtt/one_line_cue_plus_wrapped_cue.html: Copied from media/track/opera/track/webvtt/rendering/reftest/one_line_cue_plus_wrapped_cue.html.
  • media/track/w3c/track/webvtt/size_50-expected.html: Copied from media/track/opera/track/webvtt/rendering/reftest/size_50-ref.html.
  • media/track/w3c/track/webvtt/size_50.html: Copied from media/track/opera/track/webvtt/rendering/reftest/size_50.html.
  • media/track/w3c/track/webvtt/support: Added.
  • media/track/w3c/track/webvtt/support/2_cues_overlapping_completely_move_up.vtt: Copied from media/track/opera/track/webvtt/rendering/reftest/support/2_cues_overlapping_completely_move_up.vtt.
  • media/track/w3c/track/webvtt/support/align_end_long.vtt: Copied from media/track/opera/track/webvtt/rendering/reftest/support/align_end_long.vtt.
  • media/track/w3c/track/webvtt/support/foo.vtt: Copied from media/track/opera/track/webvtt/rendering/reftest/support/foo.vtt.
  • media/track/w3c/track/webvtt/support/refTestWait.js: Copied from media/track/opera/track/webvtt/rendering/reftest/support/refTestWait.js.
    • platform/eft/TestExpectations: Skip w3c tests.
    • platform/gtk/TestExpectations: Skip w3c tests.
9:19 AM Changeset in webkit [166929] by Alan Bujtas
  • 4 edits
    2 adds in trunk

Subpixel rendering: Slow paint path for inlines should snap to device pixels.
https://bugs.webkit.org/show_bug.cgi?id=131259

Reviewed by Simon Fraser.

InlineTextBox::paint needs to round to the same device pixel position as SimpleLineLayout does.

Source/WebCore:

Test: fast/inline/hidpi-slow-path-text-on-subpixel-position.html

  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paint):

  • rendering/TextPainter.h: Cleanup. No reason to have them as references here.

LayoutTests:

  • fast/inline/hidpi-slow-path-text-on-subpixel-position-expected.html: Added.
  • fast/inline/hidpi-slow-path-text-on-subpixel-position.html: Added.
9:09 AM Changeset in webkit [166928] by dbates@webkit.org
  • 4 edits in trunk/Source

Fallback to default storage session when there isn't a valid session ID
https://bugs.webkit.org/show_bug.cgi?id=131326
<rdar://problem/16231679>

Reviewed by Alexey Proskuryakov.

Fixes and issue where we may use the wrong storage session after disabling
a private browsing session.

Currently WebKit1 and WebKit2 without NetworkProcess assume that there
is always a non-null private browsing storage session so long as the page
has a non-default session ID. Instead we should only use the private browsing
storage session when it's non-null and the page has a non-default session ID;
otherwise, we should use the default storage session. This change will make
the behavior in WebKit1 and WebKit2 without NetworkProcess consistent with
the behavior in WebKit2 with NetworkProcess.

Source/WebKit/mac:

  • WebCoreSupport/WebFrameNetworkingContext.mm:

(WebFrameNetworkingContext::storageSession):

Source/WebKit2:

  • WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:

(WebKit::WebFrameNetworkingContext::storageSession):

9:01 AM Changeset in webkit [166927] by Brent Fulgham
  • 2 edits in trunk/Source/WebCore

Keep 'webkitClosedCaptionsVisible' API in sync with captions display preferences
https://bugs.webkit.org/show_bug.cgi?id=131344

Reviewed by Eric Carlson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::configureTextTrackGroup) If we decide that captions should
be active (due to user preferences) make sure the 'webkitClosedCaptionsVisible' state
is turned on.

7:52 AM Changeset in webkit [166926] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Paint the filter effect result image on device pixel position.
https://bugs.webkit.org/show_bug.cgi?id=131255

Reviewed by Simon Fraser.

This patch moves filter effect images from integral to device pixel position. However,
result images are still integral based.

Source/WebCore:

Test: css3/filters/hidpi-filter-is-on-subpixel-position.html

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRendererHelper::applyFilterEffect):

LayoutTests:

  • css3/filters/hidpi-filter-is-on-subpixel-position-expected.html: Added.
  • css3/filters/hidpi-filter-is-on-subpixel-position.html: Added.
7:50 AM Changeset in webkit [166925] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Make border images device pixel aware.
https://bugs.webkit.org/show_bug.cgi?id=131209

Reviewed by Simon Fraser.

Snap border-image size and position to device pixels. It works both on generated and bitmap images.

Source/WebCore:

Test: fast/borders/hidpi-border-image-gradient-on-subpixels.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

  • fast/borders/hidpi-border-image-gradient-on-subpixels-expected.html: Added.
  • fast/borders/hidpi-border-image-gradient-on-subpixels.html: Added.
5:21 AM WebKitGTK/KeepingTheTreeGreen edited by Andres Gomez
Added tanty shifts (diff)
5:09 AM Changeset in webkit [166924] by commit-queue@webkit.org
  • 9 edits in trunk

[SOUP] Control cookie management according ResourceRequest.allowCookies()
https://bugs.webkit.org/show_bug.cgi?id=131026

Patch by Youenn Fablet <youenn.fablet@crf.canon.fr> on 2014-04-08
Reviewed by Sergio Villar Senin.

Source/WebCore:

Added per soup-message disabling of cookie jar manager when related ResourceRequest does not allow cookies (e.g. some cross-origin requests).

Patch is covered by unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.

  • platform/network/soup/ResourceRequestSoup.cpp:

(WebCore::ResourceRequest::updateSoupMessageMembers): Added disabling of cookie jar manager if cookies are not allowed.

Source/WebKit2:

Added setting of accept cookies policy for the current soup network session cookie jar and all tracked sessions.
Moved the implementation of cookie policy setting from WebCookieManager to WebFrameNetworkingContext.

  • WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:

(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy): Moved implementation to WebCookieManager::platformSetHTTPCookieAcceptPolicy.

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:

(WebKit::WebFrameNetworkingContext::setCookieAcceptPolicyForAllContexts): Moved implementation from WebCookieManager::platformSetHTTPCookieAcceptPolicy and set the cookie jar accept policy to the cookie jars of all sessions in addition to the default cookie jar.

  • WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.h: Added method prototype.

LayoutTests:

  • platform/efl/TestExpectations: Unskipped test http/tests/xmlhttprequest/cross-origin-cookie-storage.html.
  • platform/gtk/TestExpectations: Ditto.
5:05 AM Changeset in webkit [166923] by svillar@igalia.com
  • 3 edits
    4 adds in trunk

[CSS Grid Layout] Handle min/max height in the grid element
https://bugs.webkit.org/show_bug.cgi?id=131302

Reviewed by Darin Adler.

Source/WebCore:

Removed a FIXME in the code as we're already handling min/max
height in the code. Added a couple of test cases to improve the
test coverage.

Merged from Blink r161876 by <jchaffraix@chromium.org>

Tests: fast/css-grid-layout/flex-content-sized-columns-resize.html

fast/css-grid-layout/grid-element-min-max-height.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutGridItems):

LayoutTests:

Added test coverage for min/max height handling in the grid
item. Also added other test to cover a blind spot in our testing,
resizing of content sized columns with flexible breadths.

Merged from Blink r161876 by <jchaffraix@chromium.org> and r166914 by <Manuel Rego Casasnovas>.

  • fast/css-grid-layout/flex-content-sized-columns-resize-expected.html: Added.
  • fast/css-grid-layout/flex-content-sized-columns-resize.html: Added.
  • fast/css-grid-layout/grid-element-min-max-height-expected.txt: Added.
  • fast/css-grid-layout/grid-element-min-max-height.html: Added.
3:58 AM WebKitGTK/KeepingTheTreeGreen edited by eocanha@igalia.com
(diff)
2:21 AM Changeset in webkit [166922] by mihnea@adobe.com
  • 3 edits in trunk/Source/WebCore

[CSSRegions] Remove unused RenderBox::clearRenderBoxRegionInfo
https://bugs.webkit.org/show_bug.cgi?id=131352

Reviewed by Andrei Bucur.

No new tests, code clean-up.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::clearRenderBoxRegionInfo): Deleted.

  • rendering/RenderBox.h:
2:15 AM Changeset in webkit [166921] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Buildfix after r166917
https://bugs.webkit.org/show_bug.cgi?id=131351

Patch by Zsolt Borbely <zsborbely.u-szeged@partner.samsung.com> on 2014-04-08
Reviewed by Andrei Bucur.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::accessibleNameForNode):

1:58 AM Changeset in webkit [166920] by Darin Adler
  • 13 edits in trunk/Source/WebCore

Fix assertions triggered by CSS calc changes in r166860
https://bugs.webkit.org/show_bug.cgi?id=131346

Reviewed by Andrei Bucur.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::getBorderRadiusCornerValues): Use isPercentNotCalculated() instead of
type() == Percent; no behavior change.
(WebCore::getBorderRadiusCornerValue): Ditto.
(WebCore::lineHeightFromStyle): Use isPercentNotCalculated() before code
that calls percent(), which won't work for a calculated length.

  • css/DeprecatedStyleBuilder.cpp:

(WebCore::ApplyPropertyBorderRadius::applyValue): Use isNegative and isZero rather
than calling value() unconditionally. Should make calculated values work better.

  • html/HTMLPlugInImageElement.cpp:

(WebCore::is100Percent): Use isPercentNotCalculated() before code
that calls percent(), which won't work for a calculated length.

  • platform/Length.cpp:

(WebCore::CalculationValueMap::deref): Use adoptRef here instead of calling deref
immediately, so the deref will happen after calling remove. This makes the code
work properly even if it's reentered inside the calculation value's destructor.

  • platform/Length.h:

(WebCore::Length::percent): Change assert to isPercentNotCalculated, since the
value function this calls only works for non-calculated values anyway.
(WebCore::Length::isPercentNotCalculated): Added.
(WebCore::Length::isPercent): Changed to call isPercentNotCalculated.
(WebCore::Length::isSpecified): Changed to call isPercent.

  • platform/graphics/transforms/TranslateTransformOperation.h:

(WebCore::TranslateTransformOperation::apply): Use isPercentNotCalculated()
instead of type() == Percent; no behavior change.

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn): Use isPercentNotCalculated()
before code that calls value() or percent(), which won't work for a calculated length.
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths): Ditto.
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth): Ditto.
(WebCore::AutoTableLayout::layout): Ditto.

  • rendering/FixedTableLayout.cpp:

(WebCore::FixedTableLayout::layout): Ditto.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Ditto.

  • rendering/RenderTableSection.cpp:

(WebCore::updateLogicalHeightForCell): Ditto.
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows): Ditto.
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows): Ditto.

  • rendering/style/RenderStyle.cpp:

(WebCore::requireTransformOrigin): Use modern for loop. Also marked function static,
since it's private to this file.
(WebCore::RenderStyle::applyTransform): Use isPercentNotCalculated() instead of
type() == Percent; no behavior change. Also use a modern for loop and auto& to avoid
a really long type name.

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Use isPercentNotCalculated()
before code that calls percent(), which won't work for a calculated length.

  • platform/Length.h:

(WebCore::Length::percent):
(WebCore::Length::isPercentNotCalculated):
(WebCore::Length::isPercent):
(WebCore::Length::isSpecified):

  • platform/graphics/transforms/TranslateTransformOperation.h:

(WebCore::TranslateTransformOperation::apply):

  • rendering/AutoTableLayout.cpp:

(WebCore::AutoTableLayout::recalcColumn):
(WebCore::AutoTableLayout::computeIntrinsicLogicalWidths):
(WebCore::AutoTableLayout::calcEffectiveLogicalWidth):
(WebCore::AutoTableLayout::layout):

  • rendering/FixedTableLayout.cpp:

(WebCore::FixedTableLayout::layout):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):

  • rendering/RenderTableSection.cpp:

(WebCore::updateLogicalHeightForCell):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToPercentRows):
(WebCore::RenderTableSection::distributeExtraLogicalHeightToRows):

  • rendering/style/RenderStyle.cpp:

(WebCore::requireTransformOrigin):
(WebCore::RenderStyle::applyTransform):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):

1:15 AM Changeset in webkit [166919] by calvaris@igalia.com
  • 2 edits
    1 delete in trunk/Source/WebCore

[GTK] Remove media controls dead code
https://bugs.webkit.org/show_bug.cgi?id=131300

Reviewed by Eric Carlson.

MediaControlsGtk.cpp is no longer used so we can remove it from
the repo.

No new tests needed.

  • PlatformGTK.cmake: Remove html/shadow/MediaControlsGtk.cpp from

compilation.

  • html/shadow/MediaControlsGtk.cpp: Removed.
1:13 AM Changeset in webkit [166918] by mihnea@adobe.com
  • 3 edits
    2 adds in trunk

[CSSRegions] Fixed positioned elements in named flows have fragmented content
https://bugs.webkit.org/show_bug.cgi?id=130595

Reviewed by Darin Adler.

Source/WebCore:

Fixed positioned elements that have the named flow as parent are positioned
and sized relative to the viewport. Because of that, when the named flow
has an associated region chain, the fixed positioned elements should not
be fragmented.

By making a fixed positioned element with a named flow parent unsplittable
for fragmentation, we prevent this wrong behavior.

Test: fast/regions/fixed-pos-content-fragmented.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::isUnsplittableForPagination):

LayoutTests:

  • fast/regions/fixed-pos-content-fragmented-expected.html: Added.
  • fast/regions/fixed-pos-content-fragmented.html: Added.
1:05 AM WebKitGTK/KeepingTheTreeGreen edited by ltilve@igalia.com
(diff)
12:59 AM Changeset in webkit [166917] by Chris Fleizach
  • 3 edits
    2 adds in trunk

Regression: AX: image labels no longer exposed to AX API in SVG test case
https://bugs.webkit.org/show_bug.cgi?id=131208

Reviewed by Daniel Bates.

Source/WebCore:

accessibleNameForNode should work on any Element, not just HTML elements.

Test: accessibility/svg-labelledby.html

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::accessibleNameForNode):

LayoutTests:

  • accessibility/svg-labelledby-expected.txt: Added.
  • accessibility/svg-labelledby.html: Added.
12:37 AM Changeset in webkit [166916] by Andres Gomez
  • 8 edits in trunk/Source

[GTK] [EFL] Build fails with GCC < 4.8.x
https://bugs.webkit.org/show_bug.cgi?id=130585

Reviewed by Martin Robinson.

The behavior in lower versions of GCC seem to be related to
http://www.open-std.org/jtc1/sc22/wg21/docs/lwg-active.html#2132.

Provided explicit casts for the failing ambiguous overloads.

Source/WebCore:

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:

(WebCore::AudioFileReader::createBus):

  • platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:

(webKitMediaSrcChangeState):
(webKitMediaVideoSrcNeedDataCb):
(webKitMediaAudioSrcNeedDataCb):
(webKitMediaVideoSrcEnoughDataCb):
(webKitMediaAudioSrcEnoughDataCb):
(webKitMediaVideoSrcSeekDataCb):
(webKitMediaAudioSrcSeekDataCb):

  • platform/gtk/GtkDragAndDropHelper.cpp:

(WebCore::GtkDragAndDropHelper::handleDragLeave):

  • platform/gtk/SharedTimerGtk.cpp:

(WebCore::setSharedTimerFireInterval):

Source/WTF:

  • wtf/gtk/MainThreadGtk.cpp:

(WTF::scheduleDispatchFunctionsOnMainThread):

  • wtf/gtk/RunLoopGtk.cpp:

(WTF::RunLoop::wakeUp): Provided lambda with a RefPtr instead of
ref and de-referring.

12:14 AM Changeset in webkit [166915] by gyuyoung.kim@samsung.com
  • 9 edits in trunk/Source

Change NavigatorContentUtils client ownership from port side to NavigatorContentUtils
https://bugs.webkit.org/show_bug.cgi?id=131299

Reviewed by Darin Adler.

EFL and GTK ports have managed own client of NavigatorContentUtils though it is only passed to
NavigatorContentUtils. The NavigatorContentUtils has used the client to call port functions. So,
there is no reason port implementation needs to manage the ownership. To manage the client is
unnecessary work in current implementation.

Source/WebCore:

No new tests, no behavior changes.

  • Modules/navigatorcontentutils/NavigatorContentUtils.cpp:

(WebCore::NavigatorContentUtils::create):
(WebCore::provideNavigatorContentUtilsTo):

  • Modules/navigatorcontentutils/NavigatorContentUtils.h:
  • Modules/navigatorcontentutils/NavigatorContentUtilsClient.h:

Source/WebKit/efl:

  • ewk/ewk_view.cpp:

(_ewk_view_priv_new):

Source/WebKit/gtk:

  • webkit/webkitwebview.cpp:

(webkit_web_view_init):

  • webkit/webkitwebviewprivate.h:

Apr 7, 2014:

11:55 PM Changeset in webkit [166914] by gyuyoung.kim@samsung.com
  • 7 edits in trunk/Source/WebKit2

[WK2] Fix unused parameter compile warning
https://bugs.webkit.org/show_bug.cgi?id=131260

Reviewed by Darin Adler.

Remove the arguments name without UNUSED_PARAM().

  • UIProcess/API/APIDownloadClient.h:

(API::DownloadClient::didReceiveData):
(API::DownloadClient::shouldDecodeSourceDataOfMIMEType):
(API::DownloadClient::decideDestinationWithSuggestedFilename):
(API::DownloadClient::didCreateDestination):

  • UIProcess/API/APIFindClient.h:

(API::FindClient::didCountStringMatches):
(API::FindClient::didFindString):

  • UIProcess/API/APIHistoryClient.h:

(API::HistoryClient::didPerformClientRedirect):
(API::HistoryClient::didPerformServerRedirect):
(API::HistoryClient::didUpdateHistoryTitle):

  • UIProcess/API/APILoaderClient.h:

(API::LoaderClient::didStartProvisionalLoadForFrame):
(API::LoaderClient::didReceiveServerRedirectForProvisionalLoadForFrame):
(API::LoaderClient::didFailProvisionalLoadWithErrorForFrame):
(API::LoaderClient::didCommitLoadForFrame):
(API::LoaderClient::didFinishLoadForFrame):
(API::LoaderClient::didFailLoadWithErrorForFrame):
(API::LoaderClient::didChangeBackForwardList):

  • UIProcess/API/APIPolicyClient.h:

(API::PolicyClient::decidePolicyForNavigationAction):
(API::PolicyClient::decidePolicyForNewWindowAction):
(API::PolicyClient::decidePolicyForResponse):
(API::PolicyClient::unableToImplementPolicy):

11:51 PM Changeset in webkit [166913] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[Mac] Allow com.apple.ViewBridge preferences reading in plug-in sandbox profile
https://bugs.webkit.org/show_bug.cgi?id=131306
<rdar://problem/16359865>

Reviewed by Sam Weinig.

  • Resources/PlugInSandboxProfiles/com.apple.WebKit.plugin-common.sb: Do it.
11:09 PM Changeset in webkit [166912] by Martin Robinson
  • 2 edits in trunk/LayoutTests

Skipped some HighDPI tests for GTK+

  • platform/gtk/TestExpectations: GTK+ does not yet have HighDPI support.
11:02 PM Changeset in webkit [166911] by Martin Robinson
  • 7 edits
    11 moves
    5 adds
    30 deletes in trunk/LayoutTests

[GTK] Remove WebKit1 test results and merge TestExpectations files
https://bugs.webkit.org/show_bug.cgi?id=131342

Merge all WebKit1 test expectations into the gtk directory and also merge the WebKit2
test expectations files into the GTK+ one, removing duplicate lines.

  • http/tests/security/resources/drag-drop-allowed-expected.txt: Added.
  • platform/gtk-wk1: Removed.
  • platform/gtk-wk2: Removed.
  • platform/gtk/TestExpectations: Merged in WebKit2 expectations.
  • platform/gtk/accessibility/file-upload-button-stringvalue-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/accessibility/file-upload-button-stringvalue-expected.txt.
  • platform/gtk/fast/events/wheelevent-in-horizontal-scrollbar-in-rtl-expected.txt:
  • platform/gtk/fast/events/wheelevent-in-vertical-scrollbar-in-rtl-expected.txt:
  • platform/gtk/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/loading/basic-auth-resend-wrong-credentials-expected.txt.
  • platform/gtk/http/tests/loading/basic-credentials-sent-automatically-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/loading/basic-credentials-sent-automatically-expected.txt.
  • platform/gtk/http/tests/misc/401-alternative-content-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/401-alternative-content-expected.txt.
  • platform/gtk/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/authentication-redirect-1/authentication-sent-to-redirect-cross-origin-expected.txt.
  • platform/gtk/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/authentication-redirect-2/authentication-sent-to-redirect-same-origin-expected.txt.
  • platform/gtk/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/misc/authentication-redirect-4/authentication-sent-to-redirect-same-origin-url-expected.txt.
  • platform/gtk/http/tests/security/401-logout/401-logout-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/security/401-logout/401-logout-expected.txt.
  • platform/gtk/http/tests/xmlhttprequest/failed-auth-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/xmlhttprequest/failed-auth-expected.txt.
  • platform/gtk/http/tests/xmlhttprequest/remember-bad-password-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/http/tests/xmlhttprequest/remember-bad-password-expected.txt.
  • platform/gtk/js/dom/global-constructors-attributes-expected.txt: Renamed from LayoutTests/platform/gtk-wk2/js/dom/global-constructors-attributes-expected.txt.
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-expected.txt:
  • platform/gtk/plugins/npruntime/object-from-destroyed-plugin-in-subframe-expected.txt:
  • platform/gtk/plugins/plugin-clip-subframe-expected.txt:
10:31 PM Changeset in webkit [166910] by ggaren@apple.com
  • 14 edits
    7 adds in trunk

Build bmalloc on Mac
https://bugs.webkit.org/show_bug.cgi?id=131333

Reviewed by Mark Rowe.

.:

  • Source/Makefile:
  • WebKitBuild: Added.
  • WebKitBuild/Debug: Added.

Source/bmalloc:

  • Makefile: Added. For make clients.

These files are required for building any project in WebKit. I copied
them from WTF:

  • Configurations: Added.
  • Configurations/Base.xcconfig: Added.
  • Configurations/DebugRelease.xcconfig: Added.
  • Configurations/bmalloc.xcconfig: Added.
  • Configurations/iOS.xcconfig: Added.
  • Configurations/mbmalloc.xcconfig: Added.
  • bmalloc.xcodeproj/project.pbxproj: I removed per-project-file stuff

from here because everything is in .xcconfig files now.

I had to fix a bunch of minor warnings, since they're enabled in our
.xcconfig files:

  • bmalloc/AsyncTask.h:

(bmalloc::Function>::AsyncTask):

  • bmalloc/BAssert.h:
  • bmalloc/BoundaryTagInlines.h:

(bmalloc::validate):

  • bmalloc/Heap.cpp:

(bmalloc::Heap::Heap):
(bmalloc::Heap::allocateLarge):
(bmalloc::Heap::deallocateLarge):

  • bmalloc/Mutex.h:

(bmalloc::Mutex::Mutex): Deleted.

  • bmalloc/VMAllocate.h:

(bmalloc::vmValidate):

  • bmalloc/mbmalloc.cpp:

Tools:

  • Scripts/build-webkit: Add the bmalloc target if we're on Mac.

(Note: Just testing Mac is not good enough because in this
script 'Mac' means 'Mac or iOS'.)

9:47 PM Changeset in webkit [166909] by zoltan@webkit.org
  • 3 edits in trunk/Source/WebCore

[CSS Shapes] Simplify the parsing of width arguments for Inset shapes
https://bugs.webkit.org/show_bug.cgi?id=131305

Reviewed by Andreas Kling.

This code introduces some helper functions for setting the size arguments of inset shapes. This change
also modifies the code to be the same as in Blink, so it helps us to keep the shapes code similar.

No new tests, no behavior change.

  • css/CSSBasicShapes.h:

(WebCore::CSSBasicShapeInset::updateShapeSize4Values):
(WebCore::CSSBasicShapeInset::updateShapeSize1Value):
(WebCore::CSSBasicShapeInset::updateShapeSize2Values):
(WebCore::CSSBasicShapeInset::updateShapeSize3Values):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBasicShapeInset):

8:55 PM Changeset in webkit [166908] by fpizlo@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Setters are just getters that take an extra argument and don't return a value
https://bugs.webkit.org/show_bug.cgi?id=131336

Reviewed by Geoffrey Garen.

Other than that, they're totally the same thing.

This isn't as dumb as it sounds.

Most of the work in calling an accessor has to do with emitting the necessary checks for
figuring out whether we're calling the accessor we expected, followed by the boilerplate
needed for setting up a call inside of a stub. It makes sense for the code to be totally
common.

  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::storeValue):
(JSC::AssemblyHelpers::moveTrustedValue):

  • jit/CCallHelpers.h:

(JSC::CCallHelpers::setupResults):

  • jit/Repatch.cpp:

(JSC::kindFor):
(JSC::customFor):
(JSC::generateByIdStub):
(JSC::tryCacheGetByID):
(JSC::tryBuildGetByIDList):
(JSC::tryCachePutByID):
(JSC::tryBuildPutByIdList):
(JSC::generateGetByIdStub): Deleted.
(JSC::emitCustomSetterStub): Deleted.

  • runtime/JSCJSValue.h:

(JSC::JSValue::asValue):

  • runtime/PutPropertySlot.h:

(JSC::PutPropertySlot::cachedOffset):

8:49 PM Changeset in webkit [166907] by Stephanie Lewis
  • 2 edits in trunk/Source/WebKit2

Crash in com.apple.WebKit.Plugin.Development at com.apple.WebKit2: WebKit::PluginControllerProxy::pluginInstanceID
<rdar://problem/16479432>
https://bugs.webkit.org/show_bug.cgi?id=131203

Reviewed by Geoff Garen.

pluginController was being removed before accessing the pluginInstanceID.

  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::removePluginControllerProxy):

7:46 PM Changeset in webkit [166906] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

More Mountain Lion build fix.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
7:12 PM Changeset in webkit [166905] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[iOS][WK2] Implement the update of content offset on animated resize
https://bugs.webkit.org/show_bug.cgi?id=131329

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-04-07
Reviewed by Tim Horton.

Compute a reasonable target offset on rotation. This goes in 3 steps:
1) Move the page so that the center does not move during scaling.
2) Limit the range to keep the page in scrollview without rubberbanding.
3) The horizontal content stays the same but the vertical area changes. When on the top or bottom

edge, stick to the edge.

The code is moved inside _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride: so that we can tell
the WebProcess where the scroll position will be at the end of the animation.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _frameOrBoundsChangedFrom:]):
(-[WKWebView _updateVisibleContentRects]):
(-[WKWebView _beginAnimatedResizeToSize:obscuredInsets:minimumLayoutSizeOverride:]):

7:07 PM Changeset in webkit [166904] by mitz@apple.com
  • 3 edits in trunk/Source/WebKit2

Mountain Lion build fix.

  • UIProcess/ios/PageClientImplIOS.mm:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
6:38 PM Changeset in webkit [166903] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Handle decoding of nil invocation arguments
https://bugs.webkit.org/show_bug.cgi?id=131335
<rdar://problem/16528449>

Reviewed by Tim Horton.

  • Shared/APIArray.h:

Don't crash if the array element is null.

6:35 PM Changeset in webkit [166902] by Martin Robinson
  • 8 edits in trunk

fast/css3-text/css3-text-decoration/text-decoration-thickness.html fails on GTK
https://bugs.webkit.org/show_bug.cgi?id=129957

Reviewed by Dean Jackson.

Source/WebCore:

Causes existing tests to pass.

  • platform/graphics/cairo/GraphicsContextCG.cpp: Use the now-shared computeLineBoundsAndAntialiasingModeForText.
  • platform/graphics/cairo/GraphicsContextCairo.cpp: Align the Cairo version of text underline drawing with the CG version.
  • platform/graphics/GraphicsContext.h: Add computeLineBoundsAndAntialiasingModeForText.
  • platform/graphics/GraphicsContext.cpp: Ditto.

LayoutTests:

Unskipped tests and modified one test to use the platform-independent Ahem font.

  • fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines.html: We

need to use Ahem because Helvetica is not a platform-independent font.

  • platform/gtk/TestExpectations: Unskipped tests.
5:56 PM Changeset in webkit [166901] by Brian Burg
  • 12 edits
    4 moves
    3 adds in trunk/LayoutTests

Web Inspector: test helper files should be under LayoutTests/http/tests/inspector/
https://bugs.webkit.org/show_bug.cgi?id=131324

Reviewed by Joseph Pecoraro.

Rearrange helper files used by full inspector tests. In their previous placement,
they were outside the http server root and couldn't be loaded from http tests.

  • http/tests/inspector/debugger/debugger-test.js: Renamed from LayoutTests/inspector/debugger/debugger-test.js.
  • http/tests/inspector/dom/shapes-test.js: Renamed from LayoutTests/inspector/dom/shapes-test.js.
  • http/tests/inspector/inspector-test.js: Renamed from LayoutTests/inspector/inspector-test.js.
  • http/tests/inspector/replay/replay-test.js: Renamed from LayoutTests/inspector/replay/replay-test.js.
  • inspector/debugger/probe-manager-add-remove-actions.html:
  • inspector/dom/content-flow-content-nodes.html:
  • inspector/dom/content-flow-content-removal.html:
  • inspector/dom/content-flow-list.html:
  • inspector/dom/content-node-region-info.html:
  • inspector/dom/highlight-shape-outside-margin.html:
  • inspector/dom/highlight-shape-outside.html:
  • inspector/page/main-frame-resource.html:
  • inspector/replay/javascript-date-now.html:
  • inspector/replay/javascript-random-seed.html:
  • inspector/test-harness-trivially-works.html:
5:39 PM Changeset in webkit [166900] by mitz@apple.com
  • 13 edits in trunk/Source/WebKit2

Add bundle client function corresponding to startAssistingNode
https://bugs.webkit.org/show_bug.cgi?id=131332

Reviewed by Anders Carlsson.

  • UIProcess/PageClient.h: Added userData parameter to startAssistingNode.
  • UIProcess/WebPageProxy.h: Added message decoder parameter to startAssistingNode.
  • UIProcess/WebPageProxy.messages.in: Added message decoder parameter to StartAssistingNode.
  • UIProcess/ios/PageClientImplIOS.h: Updated startAssistingNode override.
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::startAssistingNode): Decode the user data into an NSObject and pass
it on to the content view.

  • UIProcess/ios/WKContentViewInteraction.h: Added userObject parameter to

-_startAssitingNode:.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _startAssistingNode:userObject:]): Added userObject parameter. We will pass
it to a future delegate method.

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::startAssistingNode): Decode the user data and pass it to the client.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h: Declared new

delegate method.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Added an implementation
of API::InjectedBundle::FormClient::willBeginInputSession which calls the new delegate
method, and encodes the user object into userData.

  • WebProcess/InjectedBundle/APIInjectedBundleFormClient.h:

(API::InjectedBundle::FormClient::willBeginInputSession): Added willBeginInputSession.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::elementDidFocus): Call willBeginInputSession and send the user data along
with the StartAssistingNode message to the UI process.

5:24 PM Changeset in webkit [166899] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebKit2

Unreviewed. Fixing the EFL build.

  • WebProcess/WebPage/CoordinatedGraphics/WebPageCoordinatedGraphics.cpp: Include the Document header from WebCore

to avoid operating on an incomplete type.

5:23 PM Changeset in webkit [166898] by ggaren@apple.com
  • 2 edits in trunk/Source/bmalloc

bmalloc: Fixed a leak in the per-thread cache
https://bugs.webkit.org/show_bug.cgi?id=131330

Reviewed by Andreas Kling.

Remember to deallocate our line caches upon thread exit.

  • bmalloc/Deallocator.cpp:

(bmalloc::Deallocator::~Deallocator):

5:12 PM Changeset in webkit [166897] by ggaren@apple.com
  • 8 edits in trunk/Source/bmalloc

bmalloc: rolled out the tryLock experiment
https://bugs.webkit.org/show_bug.cgi?id=131328

Reviewed by Andreas Kling.

It wasn't a speedup.

  • bmalloc.xcodeproj/project.pbxproj:
  • bmalloc/Allocator.cpp:

(bmalloc::Allocator::processSmallAllocatorLog):
(bmalloc::Allocator::processMediumAllocatorLog):

  • bmalloc/Deallocator.cpp:

(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSlowCase):
(bmalloc::Deallocator::deallocateSmallLine):
(bmalloc::Deallocator::deallocateMediumLine):

  • bmalloc/Deallocator.h:

(bmalloc::Deallocator::deallocateFastCase):

  • bmalloc/Heap.h:

(bmalloc::Heap::deallocateSmallLine):
(bmalloc::Heap::deallocateMediumLine):

  • bmalloc/Line.h:

(bmalloc::Line<Traits>::deref):

  • bmalloc/Page.h:

(bmalloc::Page<Traits>::deref):

5:07 PM Changeset in webkit [166896] by timothy_horton@apple.com
  • 4 edits in trunk/Source/WebKit2

[iOS WebKit2] WKPDFView fades in tiles, PDFs load very flashily
https://bugs.webkit.org/show_bug.cgi?id=131325
<rdar://problem/16382960>

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView scrollViewDidScroll:]):
Forward scroll events to the current custom content provider.

  • UIProcess/Cocoa/WKWebViewContentProvider.h:

Make content providers UIScrollViewDelegates (though we only forward didScroll for now).

  • UIProcess/ios/WKPDFView.mm:

(-[WKPDFView web_setContentProviderData:suggestedFilename:]):
(-[WKPDFView web_setMinimumSize:]):
(-[WKPDFView web_setScrollView:]):
(-[WKPDFView scrollViewDidScroll:]):
(-[WKPDFView _revalidateViews]):
(-[WKPDFView _computePageAndDocumentFrames]):
(-[WKPDFView layoutViews]): Deleted.
Keep track of each UIPDFPage, UIPDFPageView, and its frame (in unscaled/document coordinates).
Compute all the rects up front (and re-compute upon rotation, loading, etc.).
When scrolling, find all the pages that intersect the view (inflated by 1.5x in each
vertical direction), and ensure that pages that are inside that rect have
UIPDFPageViews installed, and ones that are outside that rect do not.
Use setUseBackingLayer to ensure that we have a low-resolution layer behind the
tiled layer to avoid flashiness.

5:04 PM Changeset in webkit [166895] by Beth Dakin
  • 4 edits in trunk/Source/WebCore

REGRESSION (r163194-r163227): Garbage tiles in overflow of RTL page with
background image
https://bugs.webkit.org/show_bug.cgi?id=131323
-and corresponding-
<rdar://problem/16402013>

Reviewed by Tim Horton.

Returning the TiledBacking::bounds() for the
FrameView::extendedBackgroundRectForPainting() in convenient for ltr pages, but it
is simply incorrect in rtl. There is no easy way to map the rect into the right
coordinate space, so this patch re-works the code to use computations in
RenderView to get the right rect.

Call RenderView::unextendedBackgroundRect() and expand and move it based on the
TiledBacking’s margins.

  • page/FrameView.cpp:

(WebCore::FrameView::extendedBackgroundRectForPainting):

The logic that used to be in backgroundRect() has been moved to
unextendedBackgroundRect().

  • rendering/RenderView.cpp:

(WebCore::RenderView::unextendedBackgroundRect):
(WebCore::RenderView::backgroundRect):

  • rendering/RenderView.h:
5:01 PM Changeset in webkit [166894] by zoltan@webkit.org
  • 5 edits in trunk

[CSS Shapes] inset complex calc() args vanish in serialized computed style
https://bugs.webkit.org/show_bug.cgi?id=129838

Reviewed by Bem Jones-Bey.

Source/WebCore:

We didn't pass the style parameter when setting the width members of CSSBasicShapeInset,
which lead to a 'should never reach asserttion' in CSSPrimitiveValue::init. This patch
adds the missing parameters to the call sites.

Extended existing parsing test script.

  • css/BasicShapeFunctions.cpp:

(WebCore::valueForBasicShape):

LayoutTests:

  • fast/shapes/parsing/parsing-shape-outside-expected.txt:
  • fast/shapes/parsing/parsing-test-utils.js:
4:54 PM Changeset in webkit [166893] by ggaren@apple.com
  • 55 adds in trunk/Source/bmalloc

bmalloc
https://bugs.webkit.org/show_bug.cgi?id=131170

Reviewed by Andreas Kling.

Initial commit.

  • bmalloc: Added.
  • bmalloc.xcodeproj: Added.
  • bmalloc.xcodeproj/project.pbxproj: Added.
  • bmalloc/Algorithm.h: Added.

(bmalloc::max):
(bmalloc::min):
(bmalloc::mask):
(bmalloc::test):
(bmalloc::roundUpToMultipleOf):
(bmalloc::roundDownToMultipleOf):
(bmalloc::sizeOf):
(bmalloc::bitCount):
(bmalloc::isPowerOfTwo):

  • bmalloc/Allocator.cpp: Added.

(bmalloc::Allocator::Allocator):
(bmalloc::Allocator::~Allocator):
(bmalloc::Allocator::log):
(bmalloc::Allocator::processSmallAllocatorLog):
(bmalloc::Allocator::processMediumAllocatorLog):
(bmalloc::Allocator::allocateLarge):
(bmalloc::Allocator::allocateXLarge):
(bmalloc::Allocator::allocateMedium):
(bmalloc::Allocator::allocateSlowCase):

  • bmalloc/Allocator.h: Added.

(bmalloc::Allocator::smallAllocatorFor):
(bmalloc::Allocator::allocateFastCase):
(bmalloc::Allocator::allocate):

  • bmalloc/AsyncTask.cpp: Added.

(bmalloc::AsyncTask<Function>::runSlowCase):
(bmalloc::AsyncTask<Function>::pthreadEntryPoint):
(bmalloc::AsyncTask<Function>::entryPoint):

  • bmalloc/AsyncTask.h: Added.

(bmalloc::Function>::AsyncTask):
(bmalloc::Function>::join):
(bmalloc::Function>::run):
(bmalloc::Function>::runSlowCase):
(bmalloc::Function>::pthreadEntryPoint):
(bmalloc::Function>::entryPoint):

  • bmalloc/BAssert.h: Added.
  • bmalloc/BeginTag.h: Added.

(bmalloc::BeginTag::isInFreeList):

  • bmalloc/BoundaryTag.h: Added.

(bmalloc::BoundaryTag::isXLarge):
(bmalloc::BoundaryTag::setXLarge):
(bmalloc::BoundaryTag::isFree):
(bmalloc::BoundaryTag::setFree):
(bmalloc::BoundaryTag::isEnd):
(bmalloc::BoundaryTag::setEnd):
(bmalloc::BoundaryTag::hasPhysicalPages):
(bmalloc::BoundaryTag::setHasPhysicalPages):
(bmalloc::BoundaryTag::isNull):
(bmalloc::BoundaryTag::clear):
(bmalloc::BoundaryTag::size):
(bmalloc::BoundaryTag::setSize):
(bmalloc::BoundaryTag::prev):
(bmalloc::BoundaryTag::next):

  • bmalloc/BoundaryTagInlines.h: Added.

(bmalloc::validate):
(bmalloc::validatePrev):
(bmalloc::validateNext):
(bmalloc::BoundaryTag::init):
(bmalloc::BoundaryTag::mergeLargeLeft):
(bmalloc::BoundaryTag::mergeLargeRight):
(bmalloc::BoundaryTag::mergeLarge):
(bmalloc::BoundaryTag::deallocate):
(bmalloc::BoundaryTag::splitLarge):
(bmalloc::BoundaryTag::allocate):

  • bmalloc/Cache.cpp: Added.

(bmalloc::Cache::operator new):
(bmalloc::Cache::operator delete):
(bmalloc::Cache::Cache):
(bmalloc::Cache::allocateSlowCase):
(bmalloc::Cache::allocateSlowCaseNullCache):
(bmalloc::Cache::deallocateSlowCase):
(bmalloc::Cache::deallocateSlowCaseNullCache):

  • bmalloc/Cache.h: Added.

(bmalloc::Cache::allocator):
(bmalloc::Cache::deallocator):
(bmalloc::Cache::allocateFastCase):
(bmalloc::Cache::deallocateFastCase):
(bmalloc::Cache::allocate):
(bmalloc::Cache::deallocate):

  • bmalloc/Chunk.h: Added.

(bmalloc::Chunk::begin):
(bmalloc::Chunk::end):
(bmalloc::Chunk::lines):
(bmalloc::Chunk::pages):

  • bmalloc/Deallocator.cpp: Added.

(bmalloc::Deallocator::Deallocator):
(bmalloc::Deallocator::~Deallocator):
(bmalloc::Deallocator::deallocateLarge):
(bmalloc::Deallocator::deallocateXLarge):
(bmalloc::Deallocator::processObjectLog):
(bmalloc::Deallocator::deallocateSlowCase):
(bmalloc::Deallocator::deallocateSmallLine):
(bmalloc::Deallocator::allocateSmallLine):
(bmalloc::Deallocator::deallocateMediumLine):
(bmalloc::Deallocator::allocateMediumLine):

  • bmalloc/Deallocator.h: Added.

(bmalloc::Deallocator::deallocateFastCase):
(bmalloc::Deallocator::deallocate):

  • bmalloc/EndTag.h: Added.

(bmalloc::EndTag::operator=):

  • bmalloc/FixedVector.h: Added.

(bmalloc::FixedVector::begin):
(bmalloc::FixedVector::end):
(bmalloc::FixedVector::size):
(bmalloc::FixedVector::capacity):
(bmalloc::FixedVector::clear):
(bmalloc::FixedVector::isEmpty):
(bmalloc::Capacity>::FixedVector):
(bmalloc::Capacity>::operator):
(bmalloc::Capacity>::push):
(bmalloc::Capacity>::pop):
(bmalloc::Capacity>::shrink):

  • bmalloc/Heap.cpp: Added.

(bmalloc::sleep):
(bmalloc::Heap::Heap):
(bmalloc::Heap::concurrentScavenge):
(bmalloc::Heap::scavengeSmallPages):
(bmalloc::Heap::scavengeMediumPages):
(bmalloc::Heap::scavengeLargeRanges):
(bmalloc::Heap::allocateSmallLineSlowCase):
(bmalloc::Heap::allocateMediumLineSlowCase):
(bmalloc::Heap::allocateXLarge):
(bmalloc::Heap::deallocateXLarge):
(bmalloc::Heap::allocateLarge):
(bmalloc::Heap::deallocateLarge):

  • bmalloc/Heap.h: Added.

(bmalloc::Heap::deallocateSmallLine):
(bmalloc::Heap::allocateSmallLine):
(bmalloc::Heap::deallocateMediumLine):
(bmalloc::Heap::allocateMediumLine):

  • bmalloc/Inline.h: Added.
  • bmalloc/LargeChunk.h: Added.

(bmalloc::LargeChunk::begin):
(bmalloc::LargeChunk::end):
(bmalloc::LargeChunk::create):
(bmalloc::LargeChunk::get):
(bmalloc::LargeChunk::beginTag):
(bmalloc::LargeChunk::endTag):

  • bmalloc/Line.h: Added.

(bmalloc::Line<Traits>::begin):
(bmalloc::Line<Traits>::end):
(bmalloc::Line<Traits>::concurrentRef):
(bmalloc::Line<Traits>::deref):

  • bmalloc/MediumAllocator.h: Added.

(bmalloc::MediumAllocator::isNull):
(bmalloc::MediumAllocator::MediumAllocator):
(bmalloc::MediumAllocator::line):
(bmalloc::MediumAllocator::allocate):
(bmalloc::MediumAllocator::derefCount):
(bmalloc::MediumAllocator::refill):

  • bmalloc/MediumChunk.h: Added.
  • bmalloc/MediumLine.h: Added.
  • bmalloc/MediumPage.h: Added.
  • bmalloc/MediumTraits.h: Added.
  • bmalloc/Mutex.cpp: Added.

(bmalloc::Mutex::lockSlowCase):

  • bmalloc/Mutex.h: Added.

(bmalloc::Mutex::Mutex):
(bmalloc::Mutex::try_lock):
(bmalloc::Mutex::lock):
(bmalloc::Mutex::unlock):

  • bmalloc/ObjectType.cpp: Added.

(bmalloc::objectType):

  • bmalloc/ObjectType.h: Added.

(bmalloc::isSmallOrMedium):
(bmalloc::isSmall):

  • bmalloc/Page.h: Added.

(bmalloc::Page<Traits>::ref):
(bmalloc::Page<Traits>::deref):
(bmalloc::Page<Traits>::refCount):

  • bmalloc/PerProcess.h: Added.

(bmalloc::PerProcess::mutex):
(bmalloc::PerProcess<T>::getFastCase):
(bmalloc::PerProcess<T>::get):
(bmalloc::PerProcess<T>::getSlowCase):

  • bmalloc/PerThread.h: Added.

(bmalloc::PerThreadStorage<Cache>::get):
(bmalloc::PerThreadStorage<Cache>::init):
(bmalloc::PerThreadStorage::get):
(bmalloc::PerThreadStorage::init):
(bmalloc::PerThread<T>::getFastCase):
(bmalloc::PerThread<T>::get):
(bmalloc::PerThread<T>::destructor):
(bmalloc::PerThread<T>::getSlowCase):

  • bmalloc/Range.h: Added.

(bmalloc::Range::Range):
(bmalloc::Range::begin):
(bmalloc::Range::end):
(bmalloc::Range::size):
(bmalloc::Range::operator!):
(bmalloc::Range::operator<):

  • bmalloc/SegregatedFreeList.cpp: Added.

(bmalloc::SegregatedFreeList::SegregatedFreeList):
(bmalloc::SegregatedFreeList::insert):
(bmalloc::SegregatedFreeList::takeGreedy):
(bmalloc::SegregatedFreeList::take):

  • bmalloc/SegregatedFreeList.h: Added.
  • bmalloc/Sizes.h: Added.
  • bmalloc/SmallAllocator.h: Added.

(bmalloc::SmallAllocator::isNull):
(bmalloc::SmallAllocator::canAllocate):
(bmalloc::SmallAllocator::SmallAllocator):
(bmalloc::SmallAllocator::line):
(bmalloc::SmallAllocator::allocate):
(bmalloc::SmallAllocator::objectCount):
(bmalloc::SmallAllocator::derefCount):
(bmalloc::SmallAllocator::refill):

  • bmalloc/SmallChunk.h: Added.
  • bmalloc/SmallLine.h: Added.
  • bmalloc/SmallPage.h: Added.
  • bmalloc/SmallTraits.h: Added.
  • bmalloc/Syscall.h: Added.
  • bmalloc/VMAllocate.h: Added.

(bmalloc::vmSize):
(bmalloc::vmValidate):
(bmalloc::vmAllocate):
(bmalloc::vmDeallocate):
(bmalloc::vmDeallocatePhysicalPages):
(bmalloc::vmAllocatePhysicalPages):
(bmalloc::vmDeallocatePhysicalPagesSloppy):
(bmalloc::vmAllocatePhysicalPagesSloppy):

  • bmalloc/VMHeap.cpp: Added.

(bmalloc::VMHeap::VMHeap):
(bmalloc::VMHeap::allocateSmallChunk):
(bmalloc::VMHeap::allocateMediumChunk):
(bmalloc::VMHeap::allocateLargeChunk):

  • bmalloc/VMHeap.h: Added.

(bmalloc::VMHeap::allocateSmallPage):
(bmalloc::VMHeap::allocateMediumPage):
(bmalloc::VMHeap::allocateLargeRange):
(bmalloc::VMHeap::deallocateSmallPage):
(bmalloc::VMHeap::deallocateMediumPage):
(bmalloc::VMHeap::deallocateLargeRange):

  • bmalloc/Vector.h: Added.

(bmalloc::Vector::begin):
(bmalloc::Vector::end):
(bmalloc::Vector::size):
(bmalloc::Vector::capacity):
(bmalloc::Vector::last):
(bmalloc::Vector::pop):
(bmalloc::Vector<T>::Vector):
(bmalloc::Vector<T>::~Vector):
(bmalloc::Vector<T>::operator):
(bmalloc::Vector<T>::push):
(bmalloc::Vector<T>::pop):
(bmalloc::Vector<T>::shrink):
(bmalloc::Vector<T>::reallocateBuffer):
(bmalloc::Vector<T>::shrinkCapacity):
(bmalloc::Vector<T>::growCapacity):

  • bmalloc/XLargeChunk.h: Added.

(bmalloc::XLargeChunk::get):
(bmalloc::XLargeChunk::begin):
(bmalloc::XLargeChunk::XLargeChunk):
(bmalloc::XLargeChunk::create):
(bmalloc::XLargeChunk::destroy):
(bmalloc::XLargeChunk::range):
(bmalloc::XLargeChunk::size):

  • bmalloc/bmalloc.h: Added.

(bmalloc::api::malloc):
(bmalloc::api::free):
(bmalloc::api::realloc):

  • bmalloc/mbmalloc.cpp: Added.
4:51 PM Changeset in webkit [166892] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[iOS] MediaDocument should allow autoplay
https://bugs.webkit.org/show_bug.cgi?id=131301

Reviewed by Jer Noble.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::HTMLMediaElement): Don't add the RequireUserGestureForRateChange

behavior restriction when in a MediaDocument.

4:45 PM Changeset in webkit [166891] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

Web Inspector: Hang in debuggable application after receiving WIRPermissionDenied
https://bugs.webkit.org/show_bug.cgi?id=131321

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-04-07
Reviewed by Mark Rowe.

  • inspector/remote/RemoteInspector.mm:

(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
Avoid attempting to take the same lock twice. Move the received message
lock grab after the WIRPermissionDenied branch, which takes the lock
inside RemoteInspector::stop.

4:00 PM Changeset in webkit [166890] by mitz@apple.com
  • 11 edits
    1 add in trunk/Source/WebKit2

Add API::InjectedBundle::FormClient
https://bugs.webkit.org/show_bug.cgi?id=131317

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Added reference to new file.
  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageSetFormClient):

  • WebProcess/InjectedBundle/API/c/WKBundlePageFormClient.h:
  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _setFormDelegate:]): Changed to define and
create a FormClient (which derives from API::InjectedBundle::FormClient and messages a
delegate), and set it as the form client.
(didFocusTextField): Deleted.
(willSubmitForm): Deleted.
(setUpFormClient): Deleted.

  • WebProcess/InjectedBundle/APIInjectedBundleFormClient.h: Added.

(API::InjectedBundle::FormClient::~FormClient):
(API::InjectedBundle::FormClient::didFocusTextField):
(API::InjectedBundle::FormClient::textFieldDidBeginEditing):
(API::InjectedBundle::FormClient::textFieldDidEndEditing):
(API::InjectedBundle::FormClient::textDidChangeInTextField):
(API::InjectedBundle::FormClient::textDidChangeInTextArea):
(API::InjectedBundle::FormClient::shouldPerformActionInTextField):
(API::InjectedBundle::FormClient::willSubmitForm):
(API::InjectedBundle::FormClient::willSendSubmitEvent):
(API::InjectedBundle::FormClient::didAssociateFormControls):
(API::InjectedBundle::FormClient::shouldNotifyOnFormChanges):

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:

(WebKit::InjectedBundlePageFormClient::InjectedBundlePageFormClient): Added a constructor
from WKBundlePageFormClientBase.
(WebKit::toWKInputFieldActionType): Added helper to convert from internal enum to C SPI
enum.
(WebKit::InjectedBundlePageFormClient::shouldPerformActionInTextField): Use helper.

  • WebProcess/InjectedBundle/InjectedBundlePageFormClient.h: Added inheritance from

API::InjectedBundle::FormClient, marked overrides as such.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Removed unused forward

declarations.

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::toInputFieldAction): Added helper to convert from C SPI enum to internal enum.
(WebKit::WebEditorClient::doTextFieldCommandFromEvent): Use helper.
(WebKit::WebEditorClient::textWillBeDeletedInTextField): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialize m_formClient member.
(WebKit::WebPage::setInjectedBundleFormClient): Added. Updates m_formClient.
(WebKit::WebPage::close): Updated code to clear m_formClient.
(WebKit::WebPage::initializeInjectedBundleFormClient): Deleted.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::injectedBundleFormClient): Updated return type.

3:21 PM Changeset in webkit [166889] by commit-queue@webkit.org
  • 39 edits in trunk/Source

Move to using std::unique_ptr for opengl, texmap, transforms and efl in WebCore/platform/graphics.
https://bugs.webkit.org/show_bug.cgi?id=131276

Patch by Hyowon Kim <hw1008.kim@samsung.com> on 2014-04-07
Reviewed by Darin Adler.

Source/WebCore:

Replace uses of OwnPtr and PassOwnPtr in code under WebCore/platform/graphics/
opengl, texmap, transforms and efl with std::unique_ptr.

  • html/canvas/WebGLRenderingContext.cpp:

(WebCore::WebGLRenderingContext::initializeNewContext):

  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::create): Deleted.

  • platform/graphics/GraphicsContext3DPrivate.h:
  • platform/graphics/cairo/GraphicsContext3DCairo.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

  • platform/graphics/efl/EvasGLContext.h:
  • platform/graphics/efl/EvasGLSurface.h:
  • platform/graphics/efl/GraphicsContext3DEfl.cpp:

(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::create):
(WebCore::GraphicsContext3DPrivate::setContextLostCallback):

  • platform/graphics/efl/GraphicsContext3DPrivate.h:
  • platform/graphics/mac/GraphicsContext3DMac.mm:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

  • platform/graphics/opengl/Extensions3DOpenGLES.cpp:

(WebCore::Extensions3DOpenGLES::setEXTContextLostCallback):

  • platform/graphics/opengl/Extensions3DOpenGLES.h:
  • platform/graphics/opengl/GLPlatformContext.cpp:

(WebCore::createOffScreenContext):
(WebCore::GLPlatformContext::createContext):

  • platform/graphics/opengl/GLPlatformContext.h:
  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createOffScreenSurface):

  • platform/graphics/opengl/GLPlatformSurface.h:
  • platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
  • platform/graphics/surfaces/egl/EGLSurface.cpp:

(WebCore::EGLOffScreenSurface::createOffScreenSurface):

  • platform/graphics/surfaces/egl/EGLSurface.h:
  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:
  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::create):
(WebCore::TextureMapper::TextureMapper):

  • platform/graphics/texmap/TextureMapper.h:

(WebCore::TextureMapper::platformCreateAccelerated):

  • platform/graphics/texmap/TextureMapperGL.cpp:

(WebCore::TextureMapper::platformCreateAccelerated):

  • platform/graphics/texmap/TextureMapperGL.h:

(WebCore::TextureMapperGL::create): Deleted.

  • platform/graphics/texmap/TextureMapperImageBuffer.h:

(WebCore::TextureMapperImageBuffer::TextureMapperImageBuffer):
(WebCore::TextureMapperImageBuffer::create): Deleted.

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:

(WebCore::CoordinatedGraphicsScene::purgeGLResources):

  • platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
  • platform/graphics/transforms/TransformState.cpp:

(WebCore::TransformState::operator=):
(WebCore::TransformState::applyTransform):

  • platform/graphics/transforms/TransformState.h:
  • platform/graphics/win/GraphicsContext3DWin.cpp:

(WebCore::GraphicsContext3D::GraphicsContext3D):
(WebCore::GraphicsContext3D::setContextLostCallback):
(WebCore::GraphicsContext3D::setErrorMessageCallback):

Source/WebKit/efl:

Replace uses of OwnPtr for TextureMapper in AcceleratedCompositingContextEfl with std::unique_ptr.

  • WebCoreSupport/AcceleratedCompositingContextEfl.h:

Source/WebKit/gtk:

Replace uses of OwnPtr for TextureMapper in AcceleratedCompositingContext with std::unique_ptr.

  • WebCoreSupport/AcceleratedCompositingContext.h:

Source/WebKit2:

Replace uses of OwnPtr for TextureMapper in LayerTreeHostGtk with std::unique_ptr.

  • WebProcess/WebPage/gtk/LayerTreeHostGtk.h:
3:11 PM Changeset in webkit [166888] by Joseph Pecoraro
  • 7 edits in trunk/Source/WebKit2

Make Mac only parts of TelephoneNumberOverlayController PLATFORM(MAC).

Unreviewed build fix for r166881.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::showTelephoneNumberMenu): Deleted.

  • WebProcess/WebPage/TelephoneNumberOverlayController.cpp:

(WebKit::TelephoneNumberOverlayController::drawRect):
(WebKit::TelephoneNumberOverlayController::mouseEvent):

  • WebProcess/WebPage/TelephoneNumberOverlayController.h:
  • WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:
2:55 PM Changeset in webkit [166887] by zandobersek@gmail.com
  • 4 edits in trunk/Source/WebKit2

Unreviewed. Fixing the GTK build.

  • WebProcess/WebCoreSupport/gtk/WebEditorClientGtk.cpp: Include the Document header from WebCore

to avoid operating on an incomplete type.

  • WebProcess/WebPage/TapHighlightController.cpp: Include the RenderElement instead of RenderObject

to make the RenderObject::style() inline accessible.

  • WebProcess/WebPage/atk/WebPageAccessibilityObjectAtk.cpp: Include the Document header from WebCore
2:23 PM Changeset in webkit [166886] by timothy_horton@apple.com
  • 17 edits
    2 adds in trunk/Source

[iOS WebKit2] Make back-buffers purgeable when possible
https://bugs.webkit.org/show_bug.cgi?id=131213
<rdar://problem/15373906>

Reviewed by Simon Fraser.

We should make back-buffers volatile when their owning
layer falls out of use (either stops being repainted or
is unparented), as they are inherently recreatable.

  • Shared/mac/RemoteLayerBackingStore.h:

(WebKit::RemoteLayerBackingStore::volatility):
(WebKit::RemoteLayerBackingStore::lastDisplayTime):
Add storage and a getter for the backing store's last paint time.
Add setter/getter for volatility of backing store.
Add RemoteLayerTreeContext param to constructor.

  • Shared/mac/RemoteLayerBackingStore.mm:

(WebKit::RemoteLayerBackingStore::RemoteLayerBackingStore):
(WebKit::RemoteLayerBackingStore::~RemoteLayerBackingStore):
Inform the RemoteLayerTreeContext when backing store
is created and destroyed. Since we only have a Context in
the Web process, this will only happen there.

(WebKit::RemoteLayerBackingStore::encode):
(WebKit::RemoteLayerBackingStore::decode):
Move some assertions out of #else blocks which are preceded by returns.

(WebKit::RemoteLayerBackingStore::display):
Update the last display time.
If the backing store was volatile, make it non-volatile.

(WebKit::RemoteLayerBackingStore::setVolatility):
Mark the relevant surfaces as volatile or not.
setVolatility:

  • fails and returns false if any surfaces weren't marked volatile because they were in use
  • marks the whole backing store for repaint if the front surface was purged
  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
Make it possible to remove the RemoteLayerBackingStore on layers
that went from drawing contents to not drawing contents.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewGestureControllerMac.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):

  • UIProcess/mac/ViewSnapshotStore.mm:

(WebKit::ViewSnapshotStore::recordSnapshot):
Adopt the new names from WebCore.

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(WebKit::PlatformCALayerRemote::recursiveBuildTransaction):
Clear the backing store if the layer doesn't want to draw contents anymore.

(WebKit::PlatformCALayerRemote::ensureBackingStore):

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.h:

(WebKit::RemoteLayerTreeContext::backingStoreCollection):

  • WebProcess/WebPage/mac/RemoteLayerTreeContext.mm:

(WebKit::RemoteLayerTreeContext::RemoteLayerTreeContext):
(WebKit::RemoteLayerTreeContext::backingStoreWasCreated):
(WebKit::RemoteLayerTreeContext::backingStoreWillBeDestroyed):
Keep a RemoteLayerBackingStoreCollection, which just keeps track
of all backing store (even unparented) created for layers in a
particular context. Forward backing store creation/deletion to it.
Remove a unused m_rootLayer member.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
If any layers had backing store changes, start the timer
on the RemoteLayerBackingStoreCollection that will mark them
purgeable once they are no longer needed.

  • Shared/mac/RemoteLayerBackingStoreCollection.mm:
  • Shared/mac/RemoteLayerBackingStoreCollection.h:

Keep track of all backing store for our context.
When the timer fires, run through the backing store, finding
backing store that was last painted more than 1 second ago,
and mark them purgeable. If there was more recently-painted
backing store, let the timer fire again in another second;
otherwise, stop it.

  • WebCore.exp.in:
  • platform/graphics/cg/IOSurfacePool.cpp:

(WebCore::IOSurfacePool::takeSurface):
(WebCore::IOSurfacePool::markOlderSurfacesPurgeable):
(WebCore::IOSurfacePool::showPoolStatistics):

  • platform/graphics/cocoa/IOSurface.h:
  • platform/graphics/cocoa/IOSurface.mm:

(IOSurface::isVolatile):
(IOSurface::setIsVolatile):
Rename purgeability functions to match the system
and reduce confusion between purgeable memory
and volatile vs. non-volatile memory.

1:45 PM Changeset in webkit [166885] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Make it possible to disable some of the FTL's more interesting features
https://bugs.webkit.org/show_bug.cgi?id=131312

Reviewed by Mark Hahnenberg.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleGetById):
(JSC::DFG::ByteCodeParser::handlePutById):
(JSC::DFG::ByteCodeParser::parse):

  • runtime/Options.h:
1:34 PM Changeset in webkit [166884] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit2

Another build fix after r166879.

  • WebProcess/WebPage/mac/WebPageMac.mm:
1:26 PM Changeset in webkit [166883] by benjamin@webkit.org
  • 17 edits in trunk/Source/WebCore

Split CSS Selectors pseudo class and pseudo elements
https://bugs.webkit.org/show_bug.cgi?id=131295

Reviewed by Andreas Kling.

Split pseudo class and pseudo element to make it clearer what pseudo types
are possible for a given match type.

Pseudo Element types are separated and Pseudo Class are left in place. The Pseudo Class
will have to be renamed too but that will be done separately to make this change smaller.

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

(WebCore::CSSParser::rewriteSpecifiersWithElementName):
(WebCore::CSSParser::rewriteSpecifiers):
Use a method isPseudoElementCueFunction() to abstract the #ifdef out of the parser.

  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::parsePseudoElementSelector):

(WebCore::CSSParserSelector::parsePseudoElementCueFunctionSelector):
Rename to specify this is for the pseudo element cue function, not the pseudo element cue.

(WebCore::CSSParserSelector::parsePseudoClassAndCompatibilityElementSelector):
(WebCore::CSSParserSelector::parsePseudoCueFunctionSelector): Deleted.

  • css/CSSParserValues.h:

(WebCore::CSSParserSelector::isPseudoElementCueFunction):

  • css/CSSSelector.cpp:

(WebCore::CSSSelector::specificityForOneSelector):
(WebCore::CSSSelector::pseudoId):
(WebCore::CSSSelector::parsePseudoElementType):
(WebCore::CSSSelector::operator==):

  • css/CSSSelector.h:

(WebCore::CSSSelector::pseudoType):
(WebCore::CSSSelector::setPseudoElementType):
(WebCore::CSSSelector::pseudoElementType):
(WebCore::CSSSelector::isUnknownPseudoElement):
(WebCore::CSSSelector::isCustomPseudoElement):
(WebCore::pseudoClassIsRelativeToSiblings):
(WebCore::CSSSelector::isSiblingSelector):

  • css/RuleFeature.cpp:

(WebCore::RuleFeatureSet::collectFeaturesFromSelector):

  • css/RuleSet.cpp:

(WebCore::determinePropertyWhitelistType):
(WebCore::RuleSet::findBestRuleSetAndAdd):

  • css/SelectorChecker.cpp:

(WebCore::SelectorChecker::matchRecursively):
(WebCore::SelectorChecker::checkOne):
(WebCore::SelectorChecker::checkScrollbarPseudoClass):
(WebCore::SelectorChecker::determineLinkMatchType):

  • css/SelectorPseudoClassAndCompatibilityElementMap.in:
  • css/SelectorPseudoElementTypeMap.in:
  • css/SelectorPseudoTypeMap.h:
  • css/makeSelectorPseudoClassAndCompatibilityElementMap.py:
  • css/makeSelectorPseudoElementsMap.py:

(enumerablePseudoType):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::getMatchedCSSRules):

  • rendering/style/RenderStyleConstants.h:

All the fullscreen pseudo types are pseudo class selectors. They should not have a pseudo ID.

1:20 PM Changeset in webkit [166882] by mitz@apple.com
  • 2 edits in trunk/Source/WebKit2

Tried to fix the Mac build.

  • WebProcess/Plugins/PDF/PDFPlugin.mm:
1:08 PM WebKitGTK/KeepingTheTreeGreen edited by Diego Pino Garcia
(diff)
1:05 PM Changeset in webkit [166881] by beidson@apple.com
  • 14 edits in trunk/Source/WebKit2

Handle clicks on DataDetectors UI for scanned phone numbers
<rdar://problem/16379588> and https://bugs.webkit.org/show_bug.cgi?id=131309

Reviewed by Tim Horton.

WebContextMenuItemDatas never need to know about a ContextMenu, so remove that concept.
Also add the concept of a selection handler for UIProcess-native menu items.

  • Shared/WebContextMenuItemData.cpp:

(WebKit::WebContextMenuItemData::WebContextMenuItemData):
(WebKit::WebContextMenuItemData::encode):
(WebKit::kitItems):
(WebKit::WebContextMenuItemData::decode):

  • Shared/WebContextMenuItemData.h:

(WebKit::WebContextMenuItemData::selectionHandler):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::showContextMenu):
(WebKit::WebPageProxy::internalShowContextMenu): Make the decoder argument optional. Make consulting the client optional.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::showTelephoneNumberMenu):

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(-[WKSelectionHandlerWrapper initWithSelectionHandler:std::]):
(-[WKSelectionHandlerWrapper executeSelectionHandler]):
(-[WKMenuTarget forwardContextMenuAction:]):
(WebKit::nsMenuItemVector):
(WebKit::WebContextMenuProxyMac::contextMenuItemSelected): If the represented object is a WKSelectionHandlerWrapper,

execute the selection handler. Do nothing else.

Instead of getting rects from ranges, creating highlights, and storing those highlights,
work in terms of a TelephoneNumberData object that wraps both a range and a highlight.
This makes it easier to track where the mouse is down and to know what phone number we should act on when clicked.

  • WebProcess/WebPage/TelephoneNumberOverlayController.cpp:

(WebKit::TelephoneNumberOverlayController::rectsForDrawing): Deleted.

  • WebProcess/WebPage/TelephoneNumberOverlayController.h:

(WebKit::TelephoneNumberData::create):
(WebKit::TelephoneNumberData::range):
(WebKit::TelephoneNumberData::highlight):
(WebKit::TelephoneNumberData::TelephoneNumberData):

  • WebProcess/WebPage/mac/TelephoneNumberOverlayControllerMac.mm:

(WebKit::TelephoneNumberOverlayController::drawRect):
(WebKit::TelephoneNumberOverlayController::handleTelephoneClick): Pass the phone number text and the point to WebPage.
(WebKit::TelephoneNumberOverlayController::mouseEvent):
(WebKit::TelephoneNumberOverlayController::clearMouseDownInformation):
(WebKit::TelephoneNumberOverlayController::clearHighlights):

  • WebProcess/WebPage/WebContextMenu.cpp:

(WebKit::WebContextMenu::menuItemsWithUserData):

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/mac/WebPageMac.mm:

(WebKit::WebPage::handleTelephoneNumberClick): Message the phone number and coordinate to the UIProcess.

12:58 PM Changeset in webkit [166880] by Brian Burg
  • 12 edits
    1 add in trunk/Source/WebCore

Web Replay: detect possible replay divergence from unexpected DOM event dispatches
https://bugs.webkit.org/show_bug.cgi?id=131193

Reviewed by Andreas Kling.

Add assertions to catch potential nondeterministic behavior.

The assertion added by this patch catches dispatched DOM events
that are triggered by nondeterministic event loop cycles. If we
did not capture an event loop input in the current event loop
cycle nor are we manually simulating an event loop input during
playback, then DOM events fired during the unordered cycle could
run JavaScript and diverge the execution.

During playback, we can assert that EventLoopInputDispatcher is dispatching
when a DOM event is be dispatched to a document that is being replayed.

During capturing, event loop inputs are captured rather than
dispatched, so we add some accounting to track what caused a DOM
event. To approximate the extent of computation triggered by an
event loop input, we add RAII helpers to call sites where event
loop inputs are captured.

The assertions are disabled by default until the most common
sources of nondeterminism are handled and playback errors are
gracefully surfaced to the user. <https://webkit.org/b/131279>

No new tests. This patch adds extra assertions for debugging purposes.

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/InspectorInstrumentation.cpp: Notify ReplayAgent of dispatched DOM event.

(WebCore::InspectorInstrumentation::willDispatchEventImpl):
(WebCore::InspectorInstrumentation::willDispatchEventOnWindowImpl):

  • inspector/InspectorReplayAgent.cpp: Forward dispatched DOM events to ReplayController.

(WebCore::InspectorReplayAgent::willDispatchEvent): Added.

  • inspector/InspectorReplayAgent.h:
  • replay/CapturingInputCursor.cpp:

(WebCore::CapturingInputCursor::CapturingInputCursor):
(WebCore::CapturingInputCursor::setWithinEventLoopInputExtent): Added.

  • replay/CapturingInputCursor.h:
  • replay/EventLoopInput.cpp: Added.

(WebCore::EventLoopInputExtent::EventLoopInputExtent): Added.
(WebCore::EventLoopInputExtent::~EventLoopInputExtent): Added.

  • replay/EventLoopInput.h:
  • replay/EventLoopInputDispatcher.h:

(WebCore::EventLoopInputDispatcher::isDispatching): Add a getter.

  • replay/ReplayController.cpp:

(WebCore::logDispatchedDOMEvent): Added. This is useful for understanding script-visible events.
(WebCore::ReplayController::willDispatchEvent): Added.

  • replay/ReplayController.h:
  • replay/UserInputBridge.cpp: Add extent helpers to call sites that capture inputs.

(WebCore::UserInputBridge::handleMousePressEvent):
(WebCore::UserInputBridge::handleMouseReleaseEvent):
(WebCore::UserInputBridge::handleMouseMoveEvent):
(WebCore::UserInputBridge::handleMouseMoveOnScrollbarEvent):
(WebCore::UserInputBridge::handleKeyEvent):
(WebCore::UserInputBridge::handleWheelEvent):
(WebCore::UserInputBridge::scrollRecursively):
(WebCore::UserInputBridge::logicalScrollRecursively):

12:44 PM Changeset in webkit [166879] by mitz@apple.com
  • 11 edits
    1 add in trunk/Source/WebKit2

Introduce API::InjectedBundle::PageUIClient
https://bugs.webkit.org/show_bug.cgi?id=131310

Reviewed by Anders Carlsson.

  • WebKit2.xcodeproj/project.pbxproj: Added references to new files.
  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp: Added #include that

became necessary.

  • WebProcess/InjectedBundle/API/APIInjectedBundlePageUIClient.h: Added.

(API::InjectedBundle::PageUIClient::~PageUIClient):
(API::InjectedBundle::PageUIClient::willAddMessageToConsole):
(API::InjectedBundle::PageUIClient::willSetStatusbarText):
(API::InjectedBundle::PageUIClient::willRunJavaScriptAlert):
(API::InjectedBundle::PageUIClient::willRunJavaScriptConfirm):
(API::InjectedBundle::PageUIClient::willRunJavaScriptPrompt):
(API::InjectedBundle::PageUIClient::mouseDidMoveOverElement):
(API::InjectedBundle::PageUIClient::pageDidScroll):
(API::InjectedBundle::PageUIClient::shouldGenerateFileForUpload):
(API::InjectedBundle::PageUIClient::generateFileForUpload):
(API::InjectedBundle::PageUIClient::statusBarIsVisible):
(API::InjectedBundle::PageUIClient::menuBarIsVisible):
(API::InjectedBundle::PageUIClient::toolbarsAreVisible):
(API::InjectedBundle::PageUIClient::didReachApplicationCacheOriginQuota):
(API::InjectedBundle::PageUIClient::didExceedDatabaseQuota):
(API::InjectedBundle::PageUIClient::plugInStartLabelTitle):
(API::InjectedBundle::PageUIClient::plugInStartLabelSubtitle):
(API::InjectedBundle::PageUIClient::plugInExtraStyleSheet):
(API::InjectedBundle::PageUIClient::plugInExtraScript):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageSetUIClient): Changed to create an InjectedBundlePageUIClient and set it on
the WebPage.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:

(WebKit::InjectedBundlePageUIClient::InjectedBundlePageUIClient): Added constructor from
WKBundlePageUIClient.
(WebKit::toUIElementVisibility): Added helper to convert from C SPI enum to internal enum.
(WebKit::InjectedBundlePageUIClient::statusBarIsVisible): Changed to use the above.
(WebKit::InjectedBundlePageUIClient::menuBarIsVisible): Ditto.
(WebKit::InjectedBundlePageUIClient::toolbarsAreVisible): Ditto.

  • WebProcess/InjectedBundle/InjectedBundlePageUIClient.h: Added inheritance from

API::InjectedBundle::PageUIClient, marked overrides as such.

  • WebProcess/Storage/StorageAreaMap.cpp: Added #include that became necessary.
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::toolbarsVisible): Updated to use new internal enum.
(WebKit::WebChromeClient::statusbarVisible): Ditto.
(WebKit::WebChromeClient::menubarVisible): Ditto.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage): Initialized m_uiClient member.
(WebKit::WebPage::setInjectedBundleUIClient): Added. Updates m_uiClient.
(WebKit::WebPage::close): Updated for change in m_uiClient.
(WebKit::WebPage::pageDidScroll): Ditto.
(WebKit::WebPage::initializeInjectedBundleUIClient): Deleted.

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::injectedBundleUIClient): Updated return type.

  • WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm: Added #include that became

necessary.

12:37 PM WebKitGTK/KeepingTheTreeGreen edited by Adrian Perez de Castro
(diff)
12:37 PM Changeset in webkit [166878] by timothy@apple.com
  • 2 edits
    1 delete in trunk/Source/WebCore

Remove copy of combine-javascript-resources.pl that isn't used anymore
https://bugs.webkit.org/show_bug.cgi?id=131307

Reviewed by Joseph Pecoraro.

  • WebCore.xcodeproj/project.pbxproj:
  • inspector/combine-javascript-resources.pl: Removed.
11:45 AM Changeset in webkit [166877] by fpizlo@apple.com
  • 214 edits
    53 moves
    2 adds in trunk

Move slow JSRegress tests out of the way so that they don't show up in run-jsc-benchmarks runs and also skip tests that are extremely long-running
https://bugs.webkit.org/show_bug.cgi?id=130951

Reviewed by Geoffrey Garen.

Tools:

  • Scripts/run-javascriptcore-tests:

LayoutTests:

  • js/regress/ArrayBuffer-DataView-alloc-large-long-lived.html:
  • js/regress/ArrayBuffer-DataView-alloc-long-lived.html:
  • js/regress/ArrayBuffer-Int32Array-byteOffset.html:
  • js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented-expected.txt: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.html: Removed.
  • js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived.html:
  • js/regress/ArrayBuffer-Int8Array-alloc-long-lived-buffer.html:
  • js/regress/ArrayBuffer-Int8Array-alloc-long-lived.html:
  • js/regress/ArrayBuffer-Int8Array-alloc.html:
  • js/regress/DataView-custom-properties.html:
  • js/regress/Float32Array-matrix-mult.html:
  • js/regress/Float32Array-to-Float64Array-set.html:
  • js/regress/Float64Array-alloc-long-lived.html:
  • js/regress/Float64Array-to-Int16Array-set.html:
  • js/regress/HashMap-put-get-iterate-keys.html:
  • js/regress/HashMap-put-get-iterate.html:
  • js/regress/HashMap-string-put-get-iterate.html:
  • js/regress/Int16Array-alloc-long-lived.html:
  • js/regress/Int16Array-bubble-sort-with-byteLength.html:
  • js/regress/Int16Array-bubble-sort.html:
  • js/regress/Int16Array-load-int-mul.html:
  • js/regress/Int16Array-to-Int32Array-set.html:
  • js/regress/Int32Array-Int8Array-view-alloc.html:
  • js/regress/Int32Array-alloc-huge-expected.txt: Removed.
  • js/regress/Int32Array-alloc-huge-long-lived-expected.txt: Removed.
  • js/regress/Int32Array-alloc-huge-long-lived.html: Removed.
  • js/regress/Int32Array-alloc-huge.html: Removed.
  • js/regress/Int32Array-alloc-large-long-lived-expected.txt: Removed.
  • js/regress/Int32Array-alloc-large-long-lived.html: Removed.
  • js/regress/Int32Array-alloc-large.html:
  • js/regress/Int32Array-alloc-long-lived.html:
  • js/regress/Int32Array-alloc.html:
  • js/regress/Int8Array-alloc-long-lived.html:
  • js/regress/Int8Array-load-with-byteLength.html:
  • js/regress/Int8Array-load.html:
  • js/regress/adapt-to-double-divide.html:
  • js/regress/aliased-arguments-getbyval.html:
  • js/regress/allocate-big-object.html:
  • js/regress/arity-mismatch-inlining.html:
  • js/regress/array-access-polymorphic-structure.html:
  • js/regress/array-nonarray-polymorhpic-access.html:
  • js/regress/array-nonarray-polymorphic-access.html:
  • js/regress/array-prototype-every.html:
  • js/regress/array-prototype-filter-expected.txt: Removed.
  • js/regress/array-prototype-filter.html: Removed.
  • js/regress/array-prototype-forEach.html:
  • js/regress/array-prototype-map.html:
  • js/regress/array-prototype-some.html:
  • js/regress/array-with-double-add.html:
  • js/regress/array-with-double-increment.html:
  • js/regress/array-with-double-mul-add.html:
  • js/regress/array-with-double-sum.html:
  • js/regress/array-with-int32-add-sub.html:
  • js/regress/array-with-int32-or-double-sum.html:
  • js/regress/asmjs_bool_bug.html:
  • js/regress/assign-custom-setter-polymorphic.html:
  • js/regress/assign-custom-setter.html:
  • js/regress/basic-set.html:
  • js/regress/big-int-mul.html:
  • js/regress/boolean-test.html:
  • js/regress/branch-fold.html:
  • js/regress/by-val-generic.html:
  • js/regress/call-spread-apply.html:
  • js/regress/call-spread-call.html:
  • js/regress/call-spread-expected.txt: Removed.
  • js/regress/call-spread.html: Removed.
  • js/regress/captured-assignments.html:
  • js/regress/cast-int-to-double.html:
  • js/regress/cell-argument.html:
  • js/regress/cfg-simplify.html:
  • js/regress/chain-custom-getter-expected.txt: Removed.
  • js/regress/chain-custom-getter.html: Removed.
  • js/regress/chain-getter-access.html:
  • js/regress/cmpeq-obj-to-obj-other.html:
  • js/regress/constant-test.html:
  • js/regress/delay-tear-off-arguments-strictmode.html:
  • js/regress/destructuring-arguments-length-expected.txt: Removed.
  • js/regress/destructuring-arguments-length.html: Removed.
  • js/regress/destructuring-arguments.html:
  • js/regress/destructuring-swap.html:
  • js/regress/direct-arguments-getbyval.html:
  • js/regress/double-get-by-val-out-of-bounds.html:
  • js/regress/double-pollution-getbyval.html:
  • js/regress/double-pollution-putbyoffset.html:
  • js/regress/double-to-int32-typed-array-no-inline.html:
  • js/regress/double-to-int32-typed-array.html:
  • js/regress/double-to-uint32-typed-array-no-inline.html:
  • js/regress/double-to-uint32-typed-array.html:
  • js/regress/empty-string-plus-int.html:
  • js/regress/emscripten-cube2hash.html:
  • js/regress/emscripten-memops-expected.txt: Removed.
  • js/regress/emscripten-memops.html: Removed.
  • js/regress/external-arguments-getbyval.html:
  • js/regress/external-arguments-putbyval.html:
  • js/regress/fixed-typed-array-storage-var-index.html:
  • js/regress/fixed-typed-array-storage.html:
  • js/regress/fold-double-to-int.html:
  • js/regress/fold-strict-eq-expected.txt: Removed.
  • js/regress/fold-strict-eq.html: Removed.
  • js/regress/for-of-iterate-array-entries.html:
  • js/regress/for-of-iterate-array-keys.html:
  • js/regress/for-of-iterate-array-values.html:
  • js/regress/function-dot-apply.html:
  • js/regress/function-test.html:
  • js/regress/function-with-eval.html:
  • js/regress/get-by-id-chain-from-try-block.html:
  • js/regress/get-by-id-proto-or-self.html:
  • js/regress/get-by-id-self-or-proto.html:
  • js/regress/get-by-val-out-of-bounds.html:
  • js/regress/get_callee_monomorphic.html:
  • js/regress/get_callee_polymorphic.html:
  • js/regress/getter.html:
  • js/regress/global-var-const-infer-fire-from-opt.html:
  • js/regress/global-var-const-infer.html:
  • js/regress/imul-double-only.html:
  • js/regress/imul-int-only.html:
  • js/regress/imul-mixed.html:
  • js/regress/in-four-cases.html:
  • js/regress/in-one-case-false.html:
  • js/regress/in-one-case-true.html:
  • js/regress/in-two-cases.html:
  • js/regress/indexed-properties-in-objects.html:
  • js/regress/infer-closure-const-then-mov-no-inline.html:
  • js/regress/infer-closure-const-then-mov.html:
  • js/regress/infer-closure-const-then-put-to-scope-no-inline.html:
  • js/regress/infer-closure-const-then-put-to-scope.html:
  • js/regress/infer-closure-const-then-reenter-no-inline.html:
  • js/regress/infer-closure-const-then-reenter.html:
  • js/regress/infer-one-time-closure-ten-vars.html:
  • js/regress/infer-one-time-closure-two-vars.html:
  • js/regress/infer-one-time-closure.html:
  • js/regress/infer-one-time-deep-closure.html:
  • js/regress/inline-arguments-access.html:
  • js/regress/inline-arguments-aliased-access.html:
  • js/regress/inline-arguments-local-escape.html:
  • js/regress/inline-get-scoped-var.html:
  • js/regress/inlined-put-by-id-transition.html:
  • js/regress/int-or-other-abs-then-get-by-val.html:
  • js/regress/int-or-other-abs-zero-then-get-by-val.html:
  • js/regress/int-or-other-add-then-get-by-val.html:
  • js/regress/int-or-other-add.html:
  • js/regress/int-or-other-div-then-get-by-val.html:
  • js/regress/int-or-other-max-then-get-by-val.html:
  • js/regress/int-or-other-min-then-get-by-val.html:
  • js/regress/int-or-other-mod-then-get-by-val.html:
  • js/regress/int-or-other-mul-then-get-by-val.html:
  • js/regress/int-or-other-neg-then-get-by-val.html:
  • js/regress/int-or-other-neg-zero-then-get-by-val.html:
  • js/regress/int-or-other-sub-then-get-by-val.html:
  • js/regress/int-or-other-sub.html:
  • js/regress/int-overflow-local.html:
  • js/regress/int52-spill.html:
  • js/regress/integer-divide.html:
  • js/regress/integer-modulo.html:
  • js/regress/large-int-captured.html:
  • js/regress/large-int-neg.html:
  • js/regress/large-int.html:
  • js/regress/logical-not.html:
  • js/regress/lots-of-fields.html:
  • js/regress/make-indexed-storage.html:
  • js/regress/make-rope-cse.html:
  • js/regress/marsaglia-expected.txt: Removed.
  • js/regress/marsaglia-larger-ints.html:
  • js/regress/marsaglia-osr-entry.html:
  • js/regress/marsaglia.html: Removed.
  • js/regress/method-on-number.html:
  • js/regress/misc-strict-eq.html:
  • js/regress/negative-zero-divide.html:
  • js/regress/negative-zero-modulo.html:
  • js/regress/negative-zero-negate.html:
  • js/regress/nested-function-parsing-random-expected.txt: Removed.
  • js/regress/nested-function-parsing-random.html: Removed.
  • js/regress/nested-function-parsing.html:
  • js/regress/new-array-buffer-dead.html:
  • js/regress/new-array-buffer-push.html:
  • js/regress/new-array-dead.html:
  • js/regress/new-array-push.html:
  • js/regress/new-spread-expected.txt: Removed.
  • js/regress/new-spread.html: Removed.
  • js/regress/number-test.html:
  • js/regress/object-closure-call.html:
  • js/regress/object-test.html:
  • js/regress/poly-stricteq.html:
  • js/regress/polymorphic-get-by-id.html:
  • js/regress/polymorphic-put-by-id.html:
  • js/regress/polymorphic-structure.html:
  • js/regress/polyvariant-monomorphic-get-by-id.html:
  • js/regress/proto-custom-getter-expected.txt: Removed.
  • js/regress/proto-custom-getter.html: Removed.
  • js/regress/proto-getter-access.html:
  • js/regress/put-by-id.html:
  • js/regress/put-by-val-large-index-blank-indexing-type.html:
  • js/regress/put-by-val-machine-int.html:
  • js/regress/rare-osr-exit-on-local.html:
  • js/regress/register-pressure-from-osr.html:
  • js/regress/resources/regress-post.js: Removed.
  • js/regress/resources/regress-pre.js: Removed.
  • js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Removed.
  • js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js: Removed.
  • js/regress/script-tests/Int32Array-alloc-huge-long-lived.js: Removed.
  • js/regress/script-tests/Int32Array-alloc-huge.js: Removed.
  • js/regress/script-tests/Int32Array-alloc-large-long-lived.js: Removed.
  • js/regress/script-tests/array-prototype-filter.js: Removed.
  • js/regress/script-tests/call-spread.js: Removed.
  • js/regress/script-tests/chain-custom-getter.js: Removed.
  • js/regress/script-tests/destructuring-arguments-length.js: Removed.
  • js/regress/script-tests/emscripten-memops.js: Removed.
  • js/regress/script-tests/fold-strict-eq.js: Removed.
  • js/regress/script-tests/marsaglia.js: Removed.
  • js/regress/script-tests/nested-function-parsing-random.js: Removed.
  • js/regress/script-tests/new-spread.js: Removed.
  • js/regress/script-tests/proto-custom-getter.js: Removed.
  • js/regress/script-tests/simple-custom-getter.js: Removed.
  • js/regress/script-tests/variadic-closure-call.js: Removed.
  • js/regress/simple-activation-demo.html:
  • js/regress/simple-custom-getter-expected.txt: Removed.
  • js/regress/simple-custom-getter.html: Removed.
  • js/regress/simple-getter-access.html:
  • js/regress/slow-array-profile-convergence.html:
  • js/regress/slow-convergence.html:
  • js/regress/sparse-conditional.html:
  • js/regress/splice-to-remove.html:
  • js/regress/string-char-code-at.html:
  • js/regress/string-concat-object.html:
  • js/regress/string-concat-pair-object.html:
  • js/regress/string-concat-pair-simple.html:
  • js/regress/string-concat-simple.html:
  • js/regress/string-cons-repeat.html:
  • js/regress/string-cons-tower.html:
  • js/regress/string-equality.html:
  • js/regress/string-get-by-val-big-char.html:
  • js/regress/string-get-by-val-out-of-bounds-insane.html:
  • js/regress/string-get-by-val-out-of-bounds.html:
  • js/regress/string-get-by-val.html:
  • js/regress/string-hash.html:
  • js/regress/string-long-ident-equality.html:
  • js/regress/string-repeat-arith.html:
  • js/regress/string-sub.html:
  • js/regress/string-test.html:
  • js/regress/string-var-equality.html:
  • js/regress/structure-hoist-over-transitions.html:
  • js/regress/switch-char-constant.html:
  • js/regress/switch-char.html:
  • js/regress/switch-constant.html:
  • js/regress/switch-string-basic-big-var.html:
  • js/regress/switch-string-basic-big.html:
  • js/regress/switch-string-basic-var.html:
  • js/regress/switch-string-basic.html:
  • js/regress/switch-string-big-length-tower-var.html:
  • js/regress/switch-string-length-tower-var.html:
  • js/regress/switch-string-length-tower.html:
  • js/regress/switch-string-short.html:
  • js/regress/switch.html:
  • js/regress/tear-off-arguments-simple.html:
  • js/regress/tear-off-arguments.html:
  • js/regress/temporal-structure.html:
  • js/regress/to-int32-boolean.html:
  • js/regress/undefined-test.html:
  • js/regress/unprofiled-licm.html:
  • js/regress/variadic-closure-call-expected.txt: Removed.
  • js/regress/variadic-closure-call.html: Removed.
  • js/regress/weird-inlining-const-prop.html:
  • js/slow-stress: Added.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived-expected.txt.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-huge-long-lived.html.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented-expected.txt: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented-expected.txt.
  • js/slow-stress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.html: Copied from LayoutTests/js/regress/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.html.
  • js/slow-stress/Int32Array-alloc-huge-expected.txt: Copied from LayoutTests/js/regress/Int32Array-alloc-huge-expected.txt.
  • js/slow-stress/Int32Array-alloc-huge-long-lived-expected.txt: Copied from LayoutTests/js/regress/Int32Array-alloc-huge-long-lived-expected.txt.
  • js/slow-stress/Int32Array-alloc-huge-long-lived.html: Copied from LayoutTests/js/regress/Int32Array-alloc-huge-long-lived.html.
  • js/slow-stress/Int32Array-alloc-huge.html: Copied from LayoutTests/js/regress/Int32Array-alloc-huge.html.
  • js/slow-stress/Int32Array-alloc-large-long-lived-expected.txt: Copied from LayoutTests/js/regress/Int32Array-alloc-large-long-lived-expected.txt.
  • js/slow-stress/Int32Array-alloc-large-long-lived.html: Copied from LayoutTests/js/regress/Int32Array-alloc-large-long-lived.html.
  • js/slow-stress/array-prototype-filter-expected.txt: Copied from LayoutTests/js/regress/array-prototype-filter-expected.txt.
  • js/slow-stress/array-prototype-filter.html: Copied from LayoutTests/js/regress/array-prototype-filter.html.
  • js/slow-stress/call-spread-expected.txt: Copied from LayoutTests/js/regress/call-spread-expected.txt.
  • js/slow-stress/call-spread.html: Copied from LayoutTests/js/regress/call-spread.html.
  • js/slow-stress/chain-custom-getter-expected.txt: Copied from LayoutTests/js/regress/chain-custom-getter-expected.txt.
  • js/slow-stress/chain-custom-getter.html: Copied from LayoutTests/js/regress/chain-custom-getter.html.
  • js/slow-stress/destructuring-arguments-length-expected.txt: Copied from LayoutTests/js/regress/destructuring-arguments-length-expected.txt.
  • js/slow-stress/destructuring-arguments-length.html: Copied from LayoutTests/js/regress/destructuring-arguments-length.html.
  • js/slow-stress/emscripten-memops-expected.txt: Copied from LayoutTests/js/regress/emscripten-memops-expected.txt.
  • js/slow-stress/emscripten-memops.html: Copied from LayoutTests/js/regress/emscripten-memops.html.
  • js/slow-stress/fold-strict-eq-expected.txt: Copied from LayoutTests/js/regress/fold-strict-eq-expected.txt.
  • js/slow-stress/fold-strict-eq.html: Copied from LayoutTests/js/regress/fold-strict-eq.html.
  • js/slow-stress/marsaglia-expected.txt: Copied from LayoutTests/js/regress/marsaglia-expected.txt.
  • js/slow-stress/marsaglia.html: Copied from LayoutTests/js/regress/marsaglia.html.
  • js/slow-stress/nested-function-parsing-random-expected.txt: Copied from LayoutTests/js/regress/nested-function-parsing-random-expected.txt.
  • js/slow-stress/nested-function-parsing-random.html: Copied from LayoutTests/js/regress/nested-function-parsing-random.html.
  • js/slow-stress/new-spread-expected.txt: Copied from LayoutTests/js/regress/new-spread-expected.txt.
  • js/slow-stress/new-spread.html: Copied from LayoutTests/js/regress/new-spread.html.
  • js/slow-stress/proto-custom-getter-expected.txt: Copied from LayoutTests/js/regress/proto-custom-getter-expected.txt.
  • js/slow-stress/proto-custom-getter.html: Copied from LayoutTests/js/regress/proto-custom-getter.html.
  • js/slow-stress/script-tests: Added.
  • js/slow-stress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js: Copied from LayoutTests/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-huge-long-lived.js.
  • js/slow-stress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js: Copied from LayoutTests/js/regress/script-tests/ArrayBuffer-Int8Array-alloc-large-long-lived-fragmented.js.
  • js/slow-stress/script-tests/Int32Array-alloc-huge-long-lived.js: Copied from LayoutTests/js/regress/script-tests/Int32Array-alloc-huge-long-lived.js.
  • js/slow-stress/script-tests/Int32Array-alloc-huge.js: Copied from LayoutTests/js/regress/script-tests/Int32Array-alloc-huge.js.
  • js/slow-stress/script-tests/Int32Array-alloc-large-long-lived.js: Copied from LayoutTests/js/regress/script-tests/Int32Array-alloc-large-long-lived.js.
  • js/slow-stress/script-tests/array-prototype-filter.js: Copied from LayoutTests/js/regress/script-tests/array-prototype-filter.js.
  • js/slow-stress/script-tests/call-spread.js: Copied from LayoutTests/js/regress/script-tests/call-spread.js.
  • js/slow-stress/script-tests/chain-custom-getter.js: Copied from LayoutTests/js/regress/script-tests/chain-custom-getter.js.
  • js/slow-stress/script-tests/destructuring-arguments-length.js: Copied from LayoutTests/js/regress/script-tests/destructuring-arguments-length.js.
  • js/slow-stress/script-tests/emscripten-memops.js: Copied from LayoutTests/js/regress/script-tests/emscripten-memops.js.
  • js/slow-stress/script-tests/fold-strict-eq.js: Copied from LayoutTests/js/regress/script-tests/fold-strict-eq.js.
  • js/slow-stress/script-tests/marsaglia.js: Copied from LayoutTests/js/regress/script-tests/marsaglia.js.
  • js/slow-stress/script-tests/nested-function-parsing-random.js: Copied from LayoutTests/js/regress/script-tests/nested-function-parsing-random.js.
  • js/slow-stress/script-tests/new-spread.js: Copied from LayoutTests/js/regress/script-tests/new-spread.js.
  • js/slow-stress/script-tests/proto-custom-getter.js: Copied from LayoutTests/js/regress/script-tests/proto-custom-getter.js.
  • js/slow-stress/script-tests/simple-custom-getter.js: Copied from LayoutTests/js/regress/script-tests/simple-custom-getter.js.
  • js/slow-stress/script-tests/variadic-closure-call.js: Copied from LayoutTests/js/regress/script-tests/variadic-closure-call.js.
  • js/slow-stress/simple-custom-getter-expected.txt: Copied from LayoutTests/js/regress/simple-custom-getter-expected.txt.
  • js/slow-stress/simple-custom-getter.html: Copied from LayoutTests/js/regress/simple-custom-getter.html.
  • js/slow-stress/variadic-closure-call-expected.txt: Copied from LayoutTests/js/regress/variadic-closure-call-expected.txt.
  • js/slow-stress/variadic-closure-call.html: Copied from LayoutTests/js/regress/variadic-closure-call.html.
  • resources/regress-post.js: Copied from LayoutTests/js/regress/resources/regress-post.js.
  • resources/regress-pre.js: Copied from LayoutTests/js/regress/resources/regress-pre.js.
11:24 AM Changeset in webkit [166876] by mark.lam@apple.com
  • 9 edits
    3 adds in trunk

Date object needs to check for ES5 15.9.1.14 TimeClip limit.
<https://webkit.org/b/131248>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

The current Date object code does not adequately check for the ES5
15.9.1.14 TimeClip limit. As a result, some calculations can underflow
/ overflow and produce unexpected results.

For example, we were getting an assertion failure in
WTF::equivalentYearForDST() due int underflows in this function, which
in turn were due to an int overflow in WTF::msToYear().

This patch adds the needed checks, and adds some assertions to ensure
that the used values are sane.

The changes have no noticeable impact on benchmark results.

  • runtime/DateConstructor.cpp:

(JSC::callDate):

  • runtime/JSDateMath.cpp:

(JSC::localTimeOffset):
(JSC::gregorianDateTimeToMS):
(JSC::msToGregorianDateTime):
(JSC::parseDateFromNullTerminatedCharacters):
(JSC::parseDate):

  • runtime/JSDateMath.h:
  • parseDateFromNullTerminatedCharacters() does not need to be public. Made it a static function.
  • runtime/VM.cpp:

(JSC::VM::resetDateCache):

  • Changed cachedDateStringValue to use std::numeric_limits<double>::quiet_NaN() to be consistent with other Date code.

Source/WTF:

  • wtf/DateMath.cpp:
  • Moved the definition of maxECMAScriptTime to the .h file so that we can use it in other files as well.

(WTF::msToYear):

  • Removed a stale comment for parseDateFromNullTerminatedCharacters().
  • wtf/DateMath.h:

LayoutTests:

  • js/regress-131248-expected.txt: Added.
  • js/regress-131248.html: Added.
  • js/script-tests/regress-131248.js: Added.

(testDateFromSetDateAdjustement):
(testDateFromSetTimeWithMilliseconds):
(testDateFromString):

11:18 AM WebKitGTK/KeepingTheTreeGreen edited by clopez@igalia.com
(diff)
10:33 AM Changeset in webkit [166875] by svillar@igalia.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening for GTK.

Removed tests that have been actually passing in both release and
debug bots for some time.

  • platform/gtk-wk2/TestExpectations:
  • platform/gtk/TestExpectations:
10:15 AM Changeset in webkit [166874] by zoltan@webkit.org
  • 2 edits in trunk/Source/WebCore

[CSS Shapes] Clean up invalid FIXME
https://bugs.webkit.org/show_bug.cgi?id=131304

Reviewed by Andreas Kling.

No new tests, no behavior change.

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::blendFunc):

9:30 AM Changeset in webkit [166873] by svillar@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed update of GTK expectations.

Canvas composite tests with alpha are not working.

  • platform/gtk/TestExpectations:
5:34 AM Changeset in webkit [166872] by ryuan.choi@samsung.com
  • 20 edits
    3 deletes in trunk

[EFL] Turn on ENABLE_MEDIA_CONTROLS_SCRIPT
https://bugs.webkit.org/show_bug.cgi?id=131257

Reviewed by Gyuyoung Kim.

.:

  • Source/cmake/OptionsEfl.cmake: Enable MEDIA_CONTROLS_SCRIPT

Source/WebCore:

no new tests. just rebased exisiting tests.

  • PlatformEfl.cmake: Added the media controls script associated files.
  • css/mediaControlsEfl.css: Removed.
  • css/mediaControlsEflFullscreen.css: Removed.
  • platform/efl/DefaultTheme/CMakeLists.txt:
  • platform/efl/DefaultTheme/default.edc:
  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/enterfullscreenbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/exitfullscreenbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/fullscreenbutton/fullscreen_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/mute_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/mutebutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/mutebutton/unmutebutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/pausebutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/playbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/playpausebutton/playpause_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekbackwardbutton/seekbackward_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekbackwardbutton/seekbackwardbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekforwardbutton/seekforward_button.edc: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/seekforwardbutton/seekforwardbutton.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/closedcaption.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/closedcaption_disabled.png: Removed.
  • platform/efl/DefaultTheme/widget/mediacontrol/togglecaptionsbutton/toggle_captions_button.edc: Removed.
  • platform/efl/RenderThemeEfl.cpp:

(WebCore::toEdjeGroup):
(WebCore::RenderThemeEfl::RenderThemeEfl):
(WebCore::RenderThemeEfl::adjustSliderThumbSize):
(WebCore::RenderThemeEfl::mediaControlsStyleSheet): Modified to load bundle style sheet.
(WebCore::RenderThemeEfl::mediaControlsScript): Added to load bundle scripts.
(WebCore::RenderThemeEfl::emitMediaButtonSignal): Deleted.
(WebCore::RenderThemeEfl::extraMediaControlsStyleSheet): Deleted.
(WebCore::RenderThemeEfl::extraFullScreenStyleSheet): Deleted.
(WebCore::RenderThemeEfl::formatMediaControlsCurrentTime): Deleted.
(WebCore::RenderThemeEfl::hasOwnDisabledStateHandlingFor): Deleted.
(WebCore::RenderThemeEfl::paintMediaFullscreenButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaMuteButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaPlayButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaSeekBackButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaSeekForwardButton): Deleted.
(WebCore::RenderThemeEfl::paintMediaSliderTrack): Deleted.
(WebCore::RenderThemeEfl::paintMediaSliderThumb): Deleted.
(WebCore::RenderThemeEfl::paintMediaVolumeSliderContainer): Deleted.
(WebCore::RenderThemeEfl::paintMediaVolumeSliderTrack): Deleted.
(WebCore::RenderThemeEfl::paintMediaVolumeSliderThumb): Deleted.
(WebCore::RenderThemeEfl::paintMediaCurrentTime): Deleted.
(WebCore::RenderThemeEfl::supportsClosedCaptioning): Deleted.
(WebCore::RenderThemeEfl::paintMediaToggleClosedCaptionsButton): Deleted.

  • platform/efl/RenderThemeEfl.h:

LayoutTests:

Rebased tests.

  • platform/efl/TestExpectations:
  • platform/efl/media/audio-controls-rendering-expected.png:
  • platform/efl/media/audio-controls-rendering-expected.txt:
  • platform/efl/media/controls-after-reload-expected.png:
  • platform/efl/media/controls-after-reload-expected.txt:
  • platform/efl/media/controls-strict-expected.png:
  • platform/efl/media/controls-strict-expected.txt:
  • platform/efl/media/controls-styling-expected.png:
  • platform/efl/media/controls-styling-expected.txt:
  • platform/efl/media/controls-without-preload-expected.png:
  • platform/efl/media/controls-without-preload-expected.txt:
2:14 AM Changeset in webkit [166871] by svillar@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Updated expectations for GTK. Added some more failing AX tests.

  • platform/gtk-wk2/TestExpectations:
1:52 AM Changeset in webkit [166870] by benjamin@webkit.org
  • 5 edits in trunk/Source/WebCore

CSS JIT: change the node flags directly instead of using function calls when possible
https://bugs.webkit.org/show_bug.cgi?id=131292

Reviewed by Andreas Kling.

For historical reasons, changing the node flags was always done with function calls.
This patch changes those calls to modify the nodes directly.

  • cssjit/SelectorCompiler.cpp:

(WebCore::SelectorCompiler::SelectorCodeGenerator::generateDirectAdjacentTreeWalker):
(WebCore::SelectorCompiler::setNodeFlag):
(WebCore::SelectorCompiler::SelectorCodeGenerator::markParentElementIfResolvingStyle):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsFirstChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsLastChild):
(WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementIsOnlyChild):
(WebCore::SelectorCompiler::markElementWithSetChildrenAffectedByLastChildRules): Deleted.
(WebCore::SelectorCompiler::markElementWithSetChildrenAffectedByFirstChildAndLastChildRules): Deleted.

  • dom/Element.cpp:

(WebCore::Element::setChildrenAffectedByFirstChildRules): Deleted.
(WebCore::Element::setChildrenAffectedByDirectAdjacentRules): Deleted.

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

(WebCore::Node::flagChildrenAffectedByFirstChildRulesFlag):
(WebCore::Node::flagChildrenAffectedByLastChildRulesFlag):
(WebCore::Node::flagChildrenAffectedByDirectAdjacentRulesFlag):

1:18 AM Changeset in webkit [166869] by k.czech@samsung.com
  • 2 edits in trunk/Source/WebCore

Remove unused header from PlatformSpeechSynthesizer.h
https://bugs.webkit.org/show_bug.cgi?id=131103

Reviewed by Anders Carlsson.

Since WebSpeech has switched to use std::unique_ptr, we do not need to include PassOwnPtr.

No new tests. No behaviour change, just quick fix.

  • platform/PlatformSpeechSynthesizer.h:
12:55 AM Changeset in webkit [166868] by svillar@igalia.com
  • 2 edits in trunk/LayoutTests

Unreviewed gardening.

Updated expectations for GTK. Added some failing AX tests.

  • platform/gtk-wk2/TestExpectations:
Note: See TracTimeline for information about the timeline view.