Timeline



Mar 29, 2014:

11:01 PM Changeset in webkit [166459] by commit-queue@webkit.org
  • 15 edits
    3 deletes in trunk

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

Caused crashes and other failures on cache tests (Requested by
ap on #webkit).

Reverted changeset:

Source/WebCore:

"Web Replay: add page-level setting to bypass the MemoryCache"
https://bugs.webkit.org/show_bug.cgi?id=130728
http://trac.webkit.org/changeset/166434

Source/WebKit2:

"Web Replay: add page-level setting to bypass the MemoryCache"
https://bugs.webkit.org/show_bug.cgi?id=130728
http://trac.webkit.org/changeset/166434

LayoutTests:

"Web Replay: add page-level setting to bypass the MemoryCache"
https://bugs.webkit.org/show_bug.cgi?id=130728
http://trac.webkit.org/changeset/166434

10:57 PM Changeset in webkit [166458] by ap@apple.com
  • 2 edits in trunk/Tools

Update WebKit1.StringTruncator for Mountain Lion.

  • TestWebKitAPI/Tests/mac/StringTruncator.mm: Looks like one subtest was failing

due to different font metrics on 10.8.

4:18 PM Changeset in webkit [166457] by ddkilzer@apple.com
  • 3 edits
    2 adds in trunk

Preserve selection end positions in directionOfSelection
<http://webkit.org/b/104813>
<rdar://problem/13666417>

Reviewed by Brent Fulgham.

Merged from Blink (patch by kenrb@chromium.org):
https://src.chromium.org/viewvc/blink?revision=150621&view=revision
http://crbug.com/164263

VisibleSelection::visibleStart() and VisibleSelection::visibleEnd()
can both cause layouts, which has the potential to invalidate any
rendertree-based objects. This was causing a problem in
FrameSelection::directionOfSelection(), where a reference to a
lineBox was being held across a call to visibleEnd().

This patch ensures that the any layout is completed before linebox
references are retrieved.

Source/WebCore:

Test: editing/selection/layout-during-move-selection-crash.html

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::directionOfSelection):

LayoutTests:

  • editing/selection/layout-during-move-selection-crash-expected.txt: Added.
  • editing/selection/layout-during-move-selection-crash.html: Added.
3:36 PM Changeset in webkit [166456] by Alan Bujtas
  • 3 edits
    2 adds in trunk

Subpixel rendering: Simple line layout should not round to integral position while painting.
https://bugs.webkit.org/show_bug.cgi?id=130934

Reviewed by Simon Fraser.

Remove rounding to integral position. When RenderLayer is injected and hides subpixel positions,
integral rounding produces different paint position.

Source/WebCore:

Test: fast/flexbox/hidpi-simple-line-layout-with-flexbox-and-transition.html

  • rendering/SimpleLineLayoutFunctions.cpp:

(WebCore::SimpleLineLayout::paintFlow):

LayoutTests:

  • fast/flexbox/hidpi-simple-line-layout-with-flexbox-and-transition-expected.html: Added.
  • fast/flexbox/hidpi-simple-line-layout-with-flexbox-and-transition.html: Added.
2:53 PM Changeset in webkit [166455] by Alan Bujtas
  • 5 edits in trunk/Source/WebCore

Subpixel rendering: Make GraphicsContext::drawImageBuffer* functions float based.
https://bugs.webkit.org/show_bug.cgi?id=130932

Reviewed by Simon Fraser.

This is in preparation to support device pixel based filter painting.
Filter calculation is still integral based.

No change in behavior.

  • platform/graphics/GraphicsContext.cpp:

(WebCore::GraphicsContext::drawImageBuffer):

  • platform/graphics/GraphicsContext.h:
  • platform/graphics/filters/FilterEffect.cpp: This will eventually be fully float based.

Right now, this IntRect->FloatRect change is only to ensure that we can call
the float based drawImageBuffer().
(WebCore::FilterEffect::drawingRegionOfInputImage):

  • platform/graphics/filters/FilterEffect.h:
1:03 PM Changeset in webkit [166454] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Convert yet more of HTMLConverter to C++
https://bugs.webkit.org/show_bug.cgi?id=130850

Reviewed by Anders Carlsson.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverterCaches::isAncestorsOfStartToBeConverted):
(HTMLConverter::HTMLConverter):
(HTMLConverter::~HTMLConverter):
(HTMLConverter::convert):
(HTMLConverter::computedAttributesForElement):
(HTMLConverter::attributesForElement):
(HTMLConverter::_newParagraphForElement):
(HTMLConverter::_newLineForElement):
(HTMLConverter::_newTabForElement):
(HTMLConverter::_addAttachmentForElement):
(HTMLConverter::_addQuoteForElement):
(HTMLConverter::_addValue):
(HTMLConverter::_processHeadElement):
(HTMLConverter::_enterElement):
(HTMLConverter::_addTableCellForElement):
(HTMLConverter::_processElement):
(HTMLConverter::_addMarkersToList):
(HTMLConverter::_exitElement):
(HTMLConverter::_processText):
(HTMLConverter::_traverseNode):
(HTMLConverter::_traverseFooterNode):
(WebCore::attributedStringFromRange):
(_childrenForNode): Deleted.
(HTMLConverter::_computedAttributesForElement): Deleted.
(HTMLConverter::_attributesForElement): Deleted.
(HTMLConverter::_loadFromDOMRange): Deleted.

12:15 PM Debugging With LLDB or GDB edited by brrian@me.com
add debug command to attach to TestWebKitAPI (diff)
10:54 AM Changeset in webkit [166453] by andersca@apple.com
  • 1 edit in trunk/Source/WebKit2/ChangeLog

Tweak ChangeLog

9:14 AM Changeset in webkit [166452] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Uncatched NSExceptions should crash the web process
https://bugs.webkit.org/show_bug.cgi?id=130923
<rdar://problem/16463751>

Reviewed by Dan Bernstein.

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

12:13 AM Changeset in webkit [166451] by Csaba Osztrogonác
  • 6 edits in trunk/Source

Unreviewed buildfix after r166441 and r166443.

Source/WebCore:

  • CMakeLists.txt: Add platform/audio/AudioHardwareListener.cpp.

Source/WebKit2:

Missing PLATFORM(COCOA) guards added.

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::evaluate):

  • WebProcess/Plugins/PluginProxy.cpp:
  • WebProcess/Plugins/PluginProxy.h:

Mar 28, 2014:

10:44 PM Changeset in webkit [166450] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[CSS Grid Layout] The 'auto' height must be adapted to the item's margin.
https://bugs.webkit.org/show_bug.cgi?id=130920

Patch by Javier Fernandez <jfernandez@igalia.com> on 2014-03-28
Reviewed by Darin Adler.

Source/WebCore:

Adding the grid-item's marginLogicalHeight to the used breadth when computing
content based grid-track sizes.

Test: fast/css-grid-layout/grid-item-margin-auto-columns-rows.html

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::logicalContentHeightForChild):

LayoutTests:

  • fast/css-grid-layout/grid-item-margin-auto-columns-rows-expected.txt: Added.
  • fast/css-grid-layout/grid-item-margin-auto-columns-rows.html: Added.
10:33 PM Changeset in webkit [166449] by commit-queue@webkit.org
  • 13 edits
    2 adds in trunk

Web Inspector: AXI: support for live regions
https://bugs.webkit.org/show_bug.cgi?id=130725

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

Source/WebCore:

Tests: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html

Initial support for @aria-live, @aria-atomic, and @aria-busy.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

  • inspector/protocol/DOM.json:

Source/WebInspectorUI:

Initial support for @aria-live, @aria-atomic, and @aria-busy.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Models/DOMNode.js:
  • UserInterface/Views/DOMNodeDetailsSidebarPanel.js:
  • UserInterface/Views/Main.css:

Websites/webkit.org:

Demo update to show off the new Inspector support for live regions.

  • blog-files/aria1.0/combobox_with_live_region_status.html:

LayoutTests:

Initial support for @aria-live, @aria-atomic, and @aria-busy.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt: Updated.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html: Updated.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion-expected.txt: Added.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_liveRegion.html: Added.
8:18 PM Changeset in webkit [166448] by Darin Adler
  • 6 edits
    1 add in trunk

Source/WebCore: Fix recently-introduced off-by-one error in centerTruncateToBuffer
https://bugs.webkit.org/show_bug.cgi?id=130889
<rdar://problem/16408694>

Reviewed by Alexey Proskuryakov.

  • platform/graphics/StringTruncator.cpp:

(WebCore::centerTruncateToBuffer): Simplified expression that computes truncatedLength.
Removed incorrect "+ 1" from computation of where to write characters.

Source/WebKit/mac: Fix recently-introduced off-by-one error in centerTruncateToBuffer
https://bugs.webkit.org/show_bug.cgi?id=130889

Reviewed by Alexey Proskuryakov.

  • Misc/WebStringTruncator.mm:

(defaultMenuFont): Changed to use NeverDestroyed since I had to touch this file anyway.
(fontFromNSFont): Ditto. Also improved variable names a bit.
(+[WebStringTruncator initialize]): Added threading initialization, needed for main
thread assertions in string truncator code.

Tools: Fix recently-introduced off-by-one error in centerTruncateToBuffer
https://bugs.webkit.org/show_bug.cgi?id=130889

Reviewed by Alexey Proskuryakov.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added StringTruncator.mm.
  • TestWebKitAPI/Tests/mac/StringTruncator.mm: Added. One test for each of the

WebStringTruncator methods; should be good for a start. These are dependent on the
metrics of Helvetica 12, but I am hoping that will be consistent across OS X machines.

8:08 PM Changeset in webkit [166447] by benjamin@webkit.org
  • 11 edits
    2 adds
    2 deletes in trunk/Source/WebCore

Update the code related to SelectorPseudoTypeMap to reflect its new purpose
https://bugs.webkit.org/show_bug.cgi?id=130620

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-28
Reviewed by Andreas Kling.

Since r166094, SelectorPseudoTypeMap only contains PseudoClass instances and the 4 compatibility PseudoElement.

This patch rename SelectorPseudoTypeMap to SelectorPseudoClassAndCompatibilityElementMap and update the parsing
to split PseudoClass and PseudoElement.

  • CMakeLists.txt:
  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSGrammar.y.in:
  • css/CSSParserValues.cpp:

(WebCore::CSSParserSelector::parsePseudoClassAndCompatibilityElementSelector):
(WebCore::CSSParserSelector::setPseudoClassValue):

  • css/CSSParserValues.h:
  • css/CSSSelector.cpp:

(WebCore::appendPseudoClassFunctionTail):
(WebCore::CSSSelector::selectorText):

  • css/SelectorPseudoClassAndCompatibilityElementMap.in: Renamed from Source/WebCore/css/SelectorPseudoTypeMap.in.
  • css/SelectorPseudoTypeMap.h:
  • css/makeSelectorPseudoClassAndCompatibilityElementMap.py: Renamed from Source/WebCore/css/makeSelectorPseudoTypeMap.py.

(enumerablePseudoType):
(expand_ifdef_condition):

7:46 PM Changeset in webkit [166446] by slewis@apple.com
  • 3 edits in trunk/Source/WebCore

Unreviewed build fix.

  • platform/audio/AudioHardwareListener.cpp:

(WebCore::AudioHardwareListener::create):
(WebCore::AudioHardwareListener::audioHardwareListenerIsSupported): Deleted.

  • platform/audio/AudioHardwareListener.h:
7:26 PM Changeset in webkit [166445] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Refactor cut and copy functions as suggested in FIXME line
https://bugs.webkit.org/show_bug.cgi?id=129867

Patch by Lukasz Bialek <l.bialek@samsung.com> on 2014-03-28
Reviewed by Darin Adler.

Cut and Copy functions in Editor.cpp use lots of common code.
Those functions are merged into one to share code, several
additional conditions are added to preserve Cut and Copy
functionality.

  • editing/Editor.cpp:

(WebCore::Editor::cut):
(WebCore::Editor::copy):
(WebCore::Editor::performCutOrCopy):

  • editing/Editor.h:
6:15 PM Changeset in webkit [166444] by slewis@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't prevent AppSleep from sync messages.
https://bugs.webkit.org/show_bug.cgi?id=130747.

Reviewed by Anders Carlsson.

We think sync messages only need to happen full throttle when the plugin is visible,
the user is interacting with the plugin, or audio is playing. Since we already
take assertions for all these cases the assertion in sync messages doesn’t provide
any value. Since it can keep the PluginProcess awake in other instances remove it.

  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::didReceiveSyncMessage):

6:15 PM Changeset in webkit [166443] by slewis@apple.com
  • 16 edits in trunk/Source

Source/WebCore: Rename pluginDidEvaluate to better represent when it’s called.
Part of <rdar://problem/16061257> PluginProcess should AppNap when no plugins on active tab.

Reviewed by Anders Carlsson.

No new test because it’s just a name change.

  • page/PageThrottler.h:

(WebCore::PageThrottler::pluginDidEvaluateWhileAudioIsPlaying):

Source/WebKit2: Stop waking up the web process in the background because of plugin activity.
Part of <rdar://problem/16061257> PluginProcess should AppNap when no plugins on active tab.

Reviewed by Anders Carlsson.

Plugin activity in the background can constantly wake up web processes. This is only
necessary when audio is playing to support web apps like Pandora and youtube playing
in the background. Use a new api in CoreAudio to see if there is audio playing in
the PluginProcess.

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::PluginProcess): Add a AudioHardwareListener
(WebKit::PluginProcess::createWebProcessConnection): tell web process current state
(WebKit::PluginProcess::audioHardwareDidBecomeActive): respond to audio hardware notifications
(WebKit::PluginProcess::audioHardwareDidBecomeInactive):

  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.cpp: tell WebProcess when audio state in PluginProcess

changes.

(WebKit::WebProcessConnection::audioHardwareDidBecomeActive):
(WebKit::WebProcessConnection::audioHardwareDidBecomeInactive):

  • PluginProcess/WebProcessConnection.h:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

Only invoke pageThrottler activity when playing audio

(WebKit::NPRuntimeObjectMap::evaluate):

  • WebProcess/Plugins/Plugin.h: add function to get audio state

(WebKit::Plugin::audioIsPlayingInPluginProcess):

  • WebProcess/Plugins/PluginProcessConnection.cpp: store audio state

(WebKit::PluginProcessConnection::PluginProcessConnection):
(WebKit::PluginProcessConnection::didReceiveMessage):
(WebKit::PluginProcessConnection::audioHardwareDidBecomeActive):
(WebKit::PluginProcessConnection::audioHardwareDidBecomeInactive):

  • WebProcess/Plugins/PluginProcessConnection.h:

(WebKit::PluginProcessConnection::audioIsPlaying):

  • WebProcess/Plugins/PluginProcessConnection.messages.in:
  • WebProcess/Plugins/PluginProxy.cpp:

(WebKit::PluginProxy::audioIsPlayingInPluginProcess):

  • WebProcess/Plugins/PluginProxy.h:
  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::audioIsPlayingInPluginProcess):

  • WebProcess/Plugins/PluginView.h:
6:15 PM Changeset in webkit [166442] by slewis@apple.com
  • 3 edits
    4 adds in trunk/Source/WebCore

Notification handler for telling if audio hardware is active.
https://bugs.webkit.org/show_bug.cgi?id=130743

Reviewed by Jer Noble.

Not web-exposed so no easy way to test.

Listen to CoreAudio to see if audio hardware is active in the current process.

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/audio/AudioHardwareListener.cpp: Added.

(WebCore::AudioHardwareListener::create):
(WebCore::AudioHardwareListener::AudioHardwareListener):

  • platform/audio/AudioHardwareListener.h: Added.

(WebCore::AudioHardwareListener::Client::~Client):
(WebCore::AudioHardwareListener::~AudioHardwareListener):
(WebCore::AudioHardwareListener::isHardwareActive):

  • platform/audio/mac/AudioHardwareListenerMac.cpp: Added.

(WebCore::isAudioHardwareProcessRunning):
(WebCore::AudioHardwareListener::create):
(WebCore::AudioHardwareListenerMac::create):
(WebCore::AudioHardwareListenerMac::AudioHardwareListenerMac):
(WebCore::AudioHardwareListenerMac::~AudioHardwareListenerMac):
(WebCore::AudioHardwareListenerMac::setHardwareActive):

  • platform/audio/mac/AudioHardwareListenerMac.h: Added.
6:15 PM Changeset in webkit [166441] by slewis@apple.com
  • 8 edits in trunk/Source/WebKit2

Have the plugin process track visibility of it’s plugin and sleep when none
are visible.
Part of <rdar://problem/16061257> PluginProcess should AppNap when no plugins on active tab.
https://bugs.webkit.org/show_bug.cgi?id=130694

Reviewed by Anders Carlsson.

Currently AppSleep is enabled on the PluginProcess based on web page visibility.
Add visibility tracking to plugins and move the decision to AppSleep into the the
PluginProcess

  • PluginProcess/PluginProcess.cpp:

(WebKit::PluginProcess::PluginProcess): Add a new activity for visible plugins
(WebKit::PluginProcess::pluginsForWebProcessDidBecomeVisible): take an activity

assertion if any web processes have a visible plugin.

(WebKit::PluginProcess::pluginsForWebProcessDidBecomeHidden):

  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.cpp:

(WebKit::WebProcessConnection::removePluginControllerProxy): remove plugin from

visible plugins when destroying it

(WebKit::WebProcessConnection::pluginDidBecomeVisible):
(WebKit::WebProcessConnection::pluginDidBecomeHidden): track which plugins are

visible for each web process

  • PluginProcess/WebProcessConnection.h:
  • PluginProcess/mac/PluginControllerProxyMac.mm:

(WebKit::PluginControllerProxy::windowVisibilityChanged): notify WebProcessConnection

when visibility changed.

  • UIProcess/WebContext.h:
  • UIProcess/mac/WebContextMac.mm: instead of tracking plugin app sleep state on the web pref.

and visibility state, just use the web pref.

(WebKit::WebContext::updateProcessSuppressionState):
(WebKit::WebContext::processSuppressionPreferenceIsEnabledForAllContexts):

5:43 PM AddingFiles edited by Brian Burg
remove GMake instructions (diff)
5:37 PM Changeset in webkit [166440] by mark.lam@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

mandreel throws a checksum error on 32-bit x86.
<https://webkit.org/b/125706>

Reviewed by Filip Pizlo.

The 32-bit DFG can emit code that loads double constants from its
CodeBlock's m_constantRegisters vector. The emitted instruction will
embed the address of the constant from the vector's backing store.
Subsequently, while inserting new constants, the DFG may resize the
vector, thereby reallocating the backing store. This renders the
previously embedded constant addresses stale.

The fix is to use a dedicated doubles constant pool stored in the DFG
CommonData instead. This constant pool won't be reallocated, and
hence will not manifest this issue.

  • dfg/DFGCommonData.h:
  • dfg/DFGGraph.h:
  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::link):
(JSC::DFG::JITCompiler::addressOfDoubleConstant):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::addressOfDoubleConstant): Deleted.

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

Web Inspector: console.warn is showing as error instead of warning
https://bugs.webkit.org/show_bug.cgi?id=130921

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-03-28
Reviewed by Timothy Hatcher.

Source/JavaScriptCore:

  • runtime/ConsolePrototype.cpp:

(JSC::consoleProtoFuncWarn):
console.warn should be MessageLevel Warning, not Error.

Source/WebInspectorUI:

  • UserInterface/Models/DefaultDashboard.js:

(WebInspector.DefaultDashboard.prototype._incrementConsoleMessageType):
Use our enums instead of hardcoded strings.

LayoutTests:

Add a test for console.log, warn, error, etc to make sure they get
to the frontend with the expected source and level.

  • inspector-protocol/console/console-message-expected.txt: Added.
  • inspector-protocol/console/console-message.html: Added.
5:17 PM Changeset in webkit [166438] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

Web Inspector: AXI: expose what elements get generic "clickable" status
https://bugs.webkit.org/show_bug.cgi?id=130721

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

Source/WebCore:

Test: inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
Test: inspector-protocol/dom/getAccessibilityPropertiesForNode_mouseEventNodeId.html

Expose ancestor element link to "Click Listener" or generic "Clickable: Yes" if current node has mouse handler.

Update AccessibilityNodeObject::mouseButtonListener() to optionally return body element if

requested so that Web Inspector can display body event delegate handlers.

  • accessibility/AccessibilityNodeObject.cpp:

(WebCore::AccessibilityNodeObject::mouseButtonListener):

  • accessibility/AccessibilityNodeObject.h:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

  • inspector/protocol/DOM.json:

Source/WebInspectorUI:

Expose ancestor element link to "Click Listener" or generic "Clickable: Yes" if current node has mouse handler.

  • Localizations/en.lproj/localizedStrings.js: New "Mouse Event" string.
  • UserInterface/Models/DOMNode.js: Added nodeId and mouseEventNodeId.
  • UserInterface/Views/DOMNodeDetailsSidebarPanel.js: UI for new detail row.

LayoutTests:

Expose ancestor element link to "Click Listener" or generic "Clickable: Yes" if current node has mouse handler.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html: Simple coverage of mouseEventNodeId.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_mouseEventNodeId-expected.txt: Added.
  • inspector-protocol/dom/getAccessibilityPropertiesForNode_mouseEventNodeId.html: Added. Full coverage.
4:40 PM Changeset in webkit [166437] by mhock@apple.com
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
4:31 PM Changeset in webkit [166436] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: Really drop all locks in nested run loop on iOS if WebThread is enabled
https://bugs.webkit.org/show_bug.cgi?id=130912

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-03-28
Reviewed by Geoffrey Garen.

Previously we were calling DropAllLocks inside of a single line if statement,
so the JSLock was getting reaquired very quickly. We really want to DropAllLocks
for the duration of running the nested run loop on iOS if there is a WebThread.

  • bindings/js/PageScriptDebugServer.h:
  • bindings/js/PageScriptDebugServer.cpp:

(WebCore::PageScriptDebugServer::runEventLoopWhilePaused):
(WebCore::PageScriptDebugServer::runEventLoopWhilePausedInternal):

4:06 PM Changeset in webkit [166435] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebCore

[Win] Enable Media Track testing features on Windows
https://bugs.webkit.org/show_bug.cgi?id=130851

Reviewed by Eric Carlson.

  • testing/Internals.cpp:

(WebCore::Internals::resetToConsistentState): Execute code on Windows as well.
(WebCore::Internals::Internals): Ditto.
(WebCore::Internals::captionsStyleSheetOverride): Ditto.
(WebCore::Internals::setCaptionsStyleSheetOverride): Ditto.
(WebCore::Internals::setPrimaryAudioTrackLanguageOverride): Ditto.
(WebCore::Internals::setCaptionDisplayMode): Ditto.

3:46 PM Changeset in webkit [166434] by Brian Burg
  • 15 edits
    4 adds in trunk

Web Replay: add page-level setting to bypass the MemoryCache
https://bugs.webkit.org/show_bug.cgi?id=130728

Reviewed by Timothy Hatcher.

Source/WebCore:

When replaying a specific Page we don't want to store its cached resources in the
MemoryCache. This patch adds a page setting to prevent the page's resources from
being saved in the MemoryCache.

If Settings::usesMemoryCache() is false, page resources are given the special
SessionID bypassCacheSessionID(). The cached resource loader and memory cache
act as if the memory cache is disabled if the resource has this special session id.

Hook up ReplayController to override the memory cache setting during capture/replay.

Test: http/tests/cache/bypass-memory-cache-after-reload.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::revalidateResource):

  • loader/cache/MemoryCache.cpp:

(WebCore::MemoryCache::add):

  • page/Page.cpp:

(WebCore::Page::sessionID):

  • page/SessionID.h:

(WebCore::SessionID::bypassCacheSessionID):

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setUsesMemoryCache):
(WebCore::Settings::usesMemoryCache):

  • replay/ReplayController.cpp:

(WebCore::ReplayController::setForceDeterministicSettings):

  • replay/ReplayController.h:
  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::setUsesMemoryCache):

  • testing/InternalSettings.h:
  • testing/InternalSettings.idl:

Source/WebKit2:

  • UIProcess/APISession.cpp:

(API::generateID): update the base ID for generating unique sessions.

LayoutTests:

Mac WebKit2 needs different expectations because of resource load timing characteristics
introduced by the interaction of Settings::usesMemoryCache and NetworkProcess.

  • http/tests/cache/bypass-memory-cache-after-reload-expected.txt: Added.
  • http/tests/cache/bypass-memory-cache-after-reload.html: Added.
  • platform/mac-wk2/http/tests/cache/bypass-memory-cache-after-reload-expected.txt: Added.
3:31 PM Changeset in webkit [166433] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Add willSubmitForm callback support to WKWebProcessPlugInFormDelegatePrivate.

https://bugs.webkit.org/show_bug.cgi?id=130875

Patch by Cody Krieger <cjk@apple.com> on 2014-03-28
Reviewed by Anders Carlsson.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFormDelegatePrivate.h:

Add -_webProcessPlugInBrowserContextController:willSubmitForm:toFrame:fromFrame:withValues:
to the WKWebProcessPlugInFormDelegatePrivate protocol.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

Wire up the willSubmitForm() callback to the new
WKWebProcessPlugInFormDelegatePrivate method.

3:09 PM Changeset in webkit [166432] by ap@apple.com
  • 4 edits in trunk/Source

[Mac] Enable async text input implementation
https://bugs.webkit.org/show_bug.cgi?id=130856

Reviewed by Sam Weinig.

Source/WebKit2:

  • UIProcess/API/mac/WKView.mm: (-[WKView _interpretKeyEvent:completionHandler:]):

Temporarily work around <rdar://16393434>.

Source/WTF:

  • wtf/Platform.h: Added a USE macro definition.
3:07 PM Changeset in webkit [166431] by ap@apple.com
  • 7 edits in trunk/Source/WebKit2

Move sync CancelComposition message under an ifdef
https://bugs.webkit.org/show_bug.cgi?id=130908

Reviewed by Enrica Casucci.

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::cancelComposition): Deleted.

  • UIProcess/mac/WebPageProxyMac.mm:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:
  • WebProcess/WebPage/mac/WebPageMac.mm:
3:06 PM Changeset in webkit [166430] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS] Don't cancel composition on selection change
https://bugs.webkit.org/show_bug.cgi?id=130909

Reviewed by Enrica Casucci.

Fixing a recent regression from bug 130727.

  • WebProcess/WebPage/WebPage.cpp: (WebKit::WebPage::didChangeSelection):
2:58 PM Changeset in webkit [166429] by pmolnar.u-szeged@partner.samsung.com
  • 3 edits in trunk/Source/WebKit2

[WK2] Removed unused method logChannelByName.
https://bugs.webkit.org/show_bug.cgi?id=130897

Reviewed by Anders Carlsson.

  • Platform/Logging.cpp:

(WebKit::logChannelByName): Deleted.

  • Platform/Logging.h:
2:55 PM Changeset in webkit [166428] by stavila@adobe.com
  • 3 edits
    2 adds in trunk

In some situations, partial layouts of floating elements produce incorrect results.
https://bugs.webkit.org/show_bug.cgi?id=122668

Reviewed by David Hyatt.

Source/WebCore:

When performing partial layout of float elements and checking if other float
elements are encountered, incorrect results were obtained by not checking
the size of the existing floats vector.

Test: fast/block/float/floats-in-clean-line-crash.html

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::checkFloatsInCleanLine):

LayoutTests:

Added test to ensure an assertion is not reached when performing a partial
layout of float elements in certain situations.

  • fast/block/float/floats-in-clean-line-crash-expected.txt: Added.
  • fast/block/float/floats-in-clean-line-crash.html: Added.
2:38 PM Changeset in webkit [166427] by mrobinson@webkit.org
  • 8 edits in trunk/Tools

Remove WebKit1 GTK+ bots
https://bugs.webkit.org/show_bug.cgi?id=130904

Reviewed by Anders Carlsson.

  • BuildSlaveSupport/build.webkit.org-config/config.json: Remove references to GTK+ WebKit1 test bot and ensure

all bots are testing WebKit2 only.

  • Scripts/webkitpy/common/config/ews.json: Remove references to GTK+ WK1 EWS.
  • Scripts/webkitpy/common/config/ports.py: Remove references to GTK+ WK1 bots.
  • Scripts/webkitpy/common/config/ports_unittest.py: Ditto.
  • Scripts/webkitpy/port/builders.py: Ditto.
  • Scripts/webkitpy/tool/commands/rebaseline_unittest.py: Ditto.
  • TestResultServer/static-dashboards/builders.jsonp: Ditto.
2:20 PM Changeset in webkit [166426] by timothy@apple.com
  • 2 edits in trunk/Tools

Remove Brian Burg's apple.com email address.

  • Scripts/webkitpy/common/config/contributors.json:
2:19 PM Changeset in webkit [166425] by bfulgham@apple.com
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Make WebVTT tests less flaky by ensuring captions are set to display
in each test, rather than relying on earlier tests turning captions on. This caused tests to
fail if run out of order.

  • media/track/regions-webvtt/vtt-region-display.html: Turn captions on.
  • media/track/regions-webvtt/vtt-region-dom-layout.html: Ditto.
2:12 PM Changeset in webkit [166424] by bdakin@apple.com
  • 2 edits in trunk/Source/WebCore

Build fix.

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paint):

1:08 PM Changeset in webkit [166423] by jer.noble@apple.com
  • 5 edits
    2 adds in trunk

[MSE] Implement support for SourceBuffer.remove()
https://bugs.webkit.org/show_bug.cgi?id=121562

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-remove.html

Add support for SourceBuffer.remove().

  • Modules/mediasource/SourceBuffer.cpp:

(WebCore::SourceBuffer::SourceBuffer): Initialize new member variables.
(WebCore::SourceBuffer::setTimestampOffset): Update comments to match spec.
(WebCore::SourceBuffer::remove): Added; start removeTimer.
(WebCore::SourceBuffer::abortIfUpdating): Cancel removeTimer.
(WebCore::SourceBuffer::removedFromMediaSource): Call abortIfUpdating().
(WebCore::SourceBuffer::stop): Cancel removeTimer.
(WebCore::SourceBuffer::removeCodedFrames): Added.
(WebCore::SourceBuffer::removeTimerFired): Added.

  • Modules/mediasource/SourceBuffer.h:
  • Modules/mediasource/SourceBuffer.idl:

LayoutTests:

  • media/media-source/media-source-remove-expected.txt: Added.
  • media/media-source/media-source-remove.html: Added.
12:57 PM Changeset in webkit [166422] by dino@apple.com
  • 22 edits
    1 add in trunk/Source/WebCore

Support form controls that may need incremental redraw
https://bugs.webkit.org/show_bug.cgi?id=130736

Reviewed by Beth Dakin.

There are some form controls that change appearance
over time. Expand the ControlStates so that it can
hold a little more information, including a reference
to the native form control. This way the Theme implementation
can repaint the existing native control if necessary. At
least ThemeMac was reusing a single control for painting
all instances before this change.

Since ControlStates is now a class, pass it around by
reference.

The other major change is keeping a timer to trigger a
repaint in RenderBox, which happens if Theme/RenderTheme
update the ControlState to request one.

  • WebCore.xcodeproj/project.pbxproj: Add ControlStates.h.
  • WebCore.vcxproj/WebCore.vcxproj: Ditto.
  • WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
  • dom/Element.cpp:

(WebCore::Element::setActive): States now within ControlStates.
(WebCore::Element::setHovered): Ditto.

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::focusedOrActiveStateChanged): Ditto.

  • html/HTMLFormControlElement.cpp:

(WebCore::HTMLFormControlElement::disabledStateChanged): Ditto.
(WebCore::HTMLFormControlElement::readOnlyAttributeChanged): Ditto.

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::setChecked): Ditto.
(WebCore::HTMLInputElement::setIndeterminate): Ditto.

  • html/HTMLOptionElement.cpp:

(WebCore::HTMLOptionElement::parseAttribute): Ditto.

  • platform/ControlStates.h: New file. Copied the old ControlStates enum,

and added accessors to hold whether or not the state is dirty, and
a reference to a platform control if necessary.

  • platform/Theme.h:

(WebCore::Theme::selectionColor): Pass ControlStates pointer.
(WebCore::Theme::paint): Ditto.
(WebCore::Theme::inflateControlPaintRect): Ditto.

  • platform/ThemeTypes.h: Remove ControlStates enum.
  • platform/efl/RenderThemeEfl.cpp:

(WebCore::RenderThemeEfl::applyEdjeStateFromForm): Pass ControlStates pointer.
(WebCore::RenderThemeEfl::paintThemePart): Ditto.

  • platform/efl/RenderThemeEfl.h: Ditto.
  • platform/mac/ThemeMac.h: Ditto.
  • platform/mac/ThemeMac.mm:

(-[WebCoreThemeView addSubview:]): New method to make sure we don't add CALayer backed
views to the NSView we're using for rendering.
(WebCore::updateStates): Use the private animated setters if necessary.
(WebCore::convertControlStatesToThemeDrawState): Namespacing.
(WebCore::configureCheckbox): Pass ControlStates pointer.
(WebCore::createCheckboxCell): New helper since we're creating non-static cells.
(WebCore::sharedCheckboxCell): The old static provider, renamed.
(WebCore::paintCheckbox): Check if this paint was triggered by a state change
or an animation. Update the ControlStates if we need to be repainted.
(WebCore::radio): Parameter is now ControlStates*.
(WebCore::paintRadio): Ditto.
(WebCore::setUpButtonCell): Ditto.
(WebCore::button): Ditto.
(WebCore::paintButton): Ditto.
(WebCore::paintStepper): Ditto.
(WebCore::ThemeMac::ensuredView): Ditto.
(WebCore::ThemeMac::inflateControlPaintRect): Ditto.
(WebCore::ThemeMac::paint): Ditto.
(WebCore::checkbox): Deleted.

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::RenderBox): Initialize timer.
(WebCore::RenderBox::~RenderBox): Stop any pending timers and delete the ControlState if necessary.
(WebCore::RenderBox::paintBoxDecorations): Create a ControlStates if needed. Paint, and start the repaint
timer if the ControlStates say we should.
(WebCore::RenderBox::repaintTimerFired): Call repaint when the timer fires.

  • rendering/RenderBox.h: Add a timer for repainting.
  • rendering/RenderElement.cpp:

(WebCore::controlStatesRendererMap): A static HashMap that associates renderers with ControlStates.
(WebCore::RenderElement::hasControlStatesForRenderer):
(WebCore::RenderElement::controlStatesForRenderer):
(WebCore::RenderElement::removeControlStatesForRenderer):
(WebCore::RenderElement::addControlStatesForRenderer):

  • rendering/RenderElement.h:
  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::paint): Use a pointer to ControlStates.
(WebCore::RenderTheme::adjustRepaintRect): Ditto.
(WebCore::RenderTheme::stateChanged): Ditto.
(WebCore::RenderTheme::updateControlStatesForRenderer): New method that just updates the states part of ControlStates.
(WebCore::RenderTheme::extractControlStatesForRenderer): New method that calculates the state.
(WebCore::RenderTheme::controlStatesForRenderer): Deleted.

  • rendering/RenderTheme.h:
  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::documentViewFor): Use a ControlStates pointer.

12:11 PM Changeset in webkit [166421] by ap@apple.com
  • 6 edits in trunk/Source/WebKit2

Eliminate a sync cancelComposition call in WebPageProxy::editorStateChanged
https://bugs.webkit.org/show_bug.cgi?id=130727

Reviewed by Enrica Casucci.

Added a separate CompositionWasCanceled IPC call, with which WebProcess can tell
UIProcess that it should notify an input method of canceled composition. There are
a lot of incorrect edge cases where we don't call it correctly, but this was true
in the old implementation too (for different edge cases).

This change only affects iOS and async NSTextInputClient code path on Mac. I don't
want to change sync NSTextInputClient code path unless absolutely necessary.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::WebPageProxy):
(WebKit::WebPageProxy::editorStateChanged):
(WebKit::WebPageProxy::compositionWasCanceled):
(WebKit::WebPageProxy::resetStateAfterProcessExited):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/mac/WebPageProxyMac.mm:

(WebKit::WebPageProxy::insertText):
(WebKit::WebPageProxy::executeKeypressCommands):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::didChangeSelection):

11:25 AM Changeset in webkit [166420] by mmaxfield@apple.com
  • 6 edits
    2 adds in trunk

Clear SVGInlineTextBox fragments when the text changes.
https://bugs.webkit.org/show_bug.cgi?id=130879

Reviewed by Darin Adler.

Ported from Blink: https://src.chromium.org/viewvc/blink?revision=150456&view=revision

Source/WebCore:

This patch modifies SVGInlineTextBox::dirtyLineBoxes to clear all
following text boxes when invoked. Typically this method is called
when the underlying text string changes, and that change needs to
be propagated to all the boxes that use the text beyond the point
where the text is first modified.

Also cleans up final function keywords for SVGRootInlineBox.

Test: svg/custom/unicode-in-tspan-multi-svg-crash.html

  • rendering/InlineTextBox.h: Added (non-recursive) dirtyOwnLineBoxes() function

(WebCore::InlineTextBox::dirtyOwnLineBoxes): Calls dirtyLineBoxes()

  • rendering/svg/SVGInlineTextBox.h: Added (non-recursive) dirtyOwnLineBoxes() function

(WebCore::SVGInlineTextBox::dirtyOwnLineBoxes):

  • rendering/svg/SVGInlineTextBox.cpp:

(WebCore::SVGInlineTextBox::dirtyOwnLineBoxes): Non-recursive part of dirtyLineBoxes()
(WebCore::SVGInlineTextBox::dirtyLineBoxes): Calls dirtyOwnLineBoxes() in a loop

  • rendering/svg/SVGRootInlineBox.h:

LayoutTests:

When failing, this test will render garbage characters or crash.

  • svg/custom/unicode-in-tspan-multi-svg-crash-expected.txt: Added.
  • svg/custom/unicode-in-tspan-multi-svg-crash.html: Added.
11:24 AM Changeset in webkit [166419] by ddkilzer@apple.com
  • 2 edits in trunk/Tools

bisect-builds should print Trac 'changeset' URL if only one build is detected
<http://webkit.org/b/130903>

Reviewed by Dan Bernstein.

  • Scripts/bisect-builds:

(printTracLink): Print a direct link to the Trac 'changeset'
URL if there is only one revision in the range.

11:20 AM Changeset in webkit [166418] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix cloop build.

11:19 AM Changeset in webkit [166417] by akling@apple.com
  • 33 edits in trunk/Source/WebCore

Rebaseline bindings tests.

11:18 AM Changeset in webkit [166416] by zoltan@webkit.org
  • 1 edit
    2 adds in trunk/PerformanceTests

[CSS Shapes] Add performance tests for Shapes with Regions
https://bugs.webkit.org/show_bug.cgi?id=129624

Reviewed by Ryosuke Niwa.

This tests introduces a real-life like page, which contains different types of shapes within
shape-outsides. The content flows through regions, which use media queries. The performance test
loads the actual Shapes-Regions test case into iframes with different page sizes (thus the layout
triggers the media queries as well), and measures its load time.

  • Layout/RegionsShapes.html: Added.
  • Layout/Shapes/resources/RegionsShapesContent.html: Added.
11:10 AM Changeset in webkit [166415] by msaboff@apple.com
  • 13 edits
    3 adds in trunk

Unreviewed, rolling r166248 back in.

Turns out r166070 didn't cause a 2% performance loss in page load times

Reverted changeset:

Unreviewed, rolling out r166126.
Rollout r166126 in prepartion to roll out prerequisite r166070

10:58 AM Changeset in webkit [166414] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

Null pointer crash in String::append(UChar).
https://bugs.webkit.org/show_bug.cgi?id=130900

Patch by peavo@outlook.com <peavo@outlook.com> on 2014-03-28
Reviewed by Michael Saboff.

  • wtf/text/WTFString.cpp:

(WTF::String::append): Check and initialize m_impl member first, to avoid null pointer crash.

10:51 AM Changeset in webkit [166413] by tonikitoo@webkit.org
  • 6 edits in trunk

constants are always typed to 'int' https://bugs.webkit.org/show_bug.cgi?id=130775

Reviewed by Darin Adler.
Patch by Antonio Gomes <a1.gomes@sisa.samsung.com>

Patch fixes a bug where all constant getter generated
methods were returning 'integer' values due to static_cast.

Compilers should be smarth enough to properly infer which
jsNumber class construtor to call given a literal value.

Patch also fixes a bug where values whose representation
is bigger an integer maximum were overflowing. For instance,
NodeFilter.SHOW_ALL (0xFFFFFFFF).

Tests:
Binding tests updated.
Rebaselined fast/dom/constants.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

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

(WebCore::jsTestInterfaceIMPLEMENTSCONSTANT1):
(WebCore::jsTestInterfaceIMPLEMENTSCONSTANT2):
(WebCore::jsTestInterfaceSUPPLEMENTALCONSTANT1):
(WebCore::jsTestInterfaceSUPPLEMENTALCONSTANT2):

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

(WebCore::jsTestObjCONDITIONAL_CONST):
(WebCore::jsTestObjCONST_VALUE_0):
(WebCore::jsTestObjCONST_VALUE_1):
(WebCore::jsTestObjCONST_VALUE_2):
(WebCore::jsTestObjCONST_VALUE_4):
(WebCore::jsTestObjCONST_VALUE_8):
(WebCore::jsTestObjCONST_VALUE_9):
(WebCore::jsTestObjCONST_VALUE_11):
(WebCore::jsTestObjCONST_VALUE_12):
(WebCore::jsTestObjCONST_VALUE_13):
(WebCore::jsTestObjCONST_VALUE_14):
(WebCore::jsTestObjCONST_JAVASCRIPT):
(WebCore::jsTestObjReadonly):

10:32 AM Changeset in webkit [166412] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebCore

A TrailingObject's endpoint might get decremented twice
https://bugs.webkit.org/show_bug.cgi?id=130874

Reviewed by Darin Adler.

There are two places where we might shave off a trailing space from the end
of a line. We don't want to hit both codepaths for a single line.

Fixes fast/block/update-midpoints-for-trailing-boxes-crash.html after r166245.

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::checkMidpoints):
(WebCore::BreakingContext::handleEndOfLine):

10:10 AM WebKitGTK/2.4.x edited by mario@webkit.org
(diff)
10:02 AM Changeset in webkit [166411] by akling@apple.com
  • 2 edits in trunk/Source/WebCore

Inline JSDOMWrapper subclasses' finishCreation().
<https://webkit.org/b/130890>

finishCreation() is really a no-op for JSDOMWrapper subclasses in
release builds. None of the ancestor classes do anything but assert
in their implementations.

Generate the function inline, reducing binary size, and removing
an unnecessary call from the JSFoo::create() helpers.

Reviewed by Sam Weinig.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):
(GenerateImplementation):

9:42 AM Changeset in webkit [166410] by mario.prada@samsung.com
  • 2 edits in trunk/Source/WebKit2

[GTK] Running minibrowser with url crashes in debug build
https://bugs.webkit.org/show_bug.cgi?id=130492

Reviewed by Martin Robinson.

Use the ResourceRequest(const URL& url) constructor, instead of the
one taking a String, to call WebPageProxy::loadRequest(), so we
ensure that the passed URI is correctly constructed.

  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkit_web_view_load_uri): Create an URL out of a SoupURI and
use that to create a ResourceRequest to pass to loadRequest().

9:18 AM Changeset in webkit [166409] by enrica@apple.com
  • 6 edits in trunk/Source/WebKit/ios

Add support for AirPlay picker for iOS.
https://bugs.webkit.org/show_bug.cgi?id=130876
<rdar://problem/15349859>

Reviewed by Benjamin Poulain.

Adds support for the AirPlay picker for WebKit.
The actual picker is implemented in UIKit.

  • DefaultDelegates/WebDefaultUIKitDelegate.m:

(-[WebDefaultUIKitDelegate interactionLocation]):
(-[WebDefaultUIKitDelegate showPlaybackTargetPicker:fromRect:]):

  • WebCoreSupport/WebChromeClientIOS.mm:

(WebChromeClientIOS::showPlaybackTargetPicker):

  • WebCoreSupport/WebFrameIOS.h:
  • WebCoreSupport/WebFrameIOS.mm:

(-[WebFrame elementRectAtPoint:]):

  • WebView/WebUIKitDelegate.h:
8:49 AM Changeset in webkit [166408] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] HLS streams will report an incorrect natural size.
https://bugs.webkit.org/show_bug.cgi?id=130859

Reviewed by Eric Carlson.

Some HLS streams will report incorrect naturalSizes due to the asset's preferredTransform
property not being available at the same time as the track's natural size. Given that
AVFoundation only allows one video track to be selected at a time, simply use the asset's
presentation size, cached in m_cachedPresentation size in all cases.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::sizeChanged):

8:39 AM WebKitGTK/2.4.x edited by mario@webkit.org
(diff)
8:36 AM Changeset in webkit [166407] by Antti Koivisto
  • 17 edits in trunk/Source/WebCore

Remove NodeListRootType flag
https://bugs.webkit.org/show_bug.cgi?id=130896

Reviewed by Anders Carlsson.

This can be handled statically (except for the RadioNodeList case) removing
a branch from NodeList traversal.

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

(WebCore::Document::registerNodeListForInvalidation):
(WebCore::Document::unregisterNodeListForInvalidation):
(WebCore::Document::registerNodeList): Deleted.
(WebCore::Document::unregisterNodeList): Deleted.

Mark document invalidation registered lists with a bit.
Renamed for clarity.

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

(WebCore::LiveNodeList::LiveNodeList):
(WebCore::LiveNodeList::rootNode):

Base class version that invokes virtual isRootedAtDocument. It is needed to support
LiveNodeList::namedItem.

  • dom/LiveNodeList.h:

(WebCore::LiveNodeList::isRegisteredForInvalidationAtDocument):
(WebCore::LiveNodeList::setRegisteredForInvalidationAtDocument):
(WebCore::LiveNodeList::document):
(WebCore::CachedLiveNodeList<NodeListType>::CachedLiveNodeList):
(WebCore::CachedLiveNodeList<NodeListType>::~CachedLiveNodeList):
(WebCore::CachedLiveNodeList<NodeListType>::rootNode):

Call isRootedAtDocument on the final leaf type. Except for RadioNodeList this
resolves statically.

(WebCore::CachedLiveNodeList<NodeListType>::willValidateIndexCache):
(WebCore::CachedLiveNodeList<NodeListType>::invalidateCache):
(WebCore::LiveNodeList::isRootedAtDocument): Deleted.
(WebCore::LiveNodeList::rootType): Deleted.
(WebCore::LiveNodeList::rootNode): Deleted.

  • dom/NameNodeList.h:
  • dom/NodeRareData.h:

(WebCore::NodeListsNodeData::adoptDocument):

  • dom/TagNodeList.h:
  • html/HTMLCollection.cpp:

(WebCore::rootTypeFromCollectionType):

  • html/HTMLCollection.h:

(WebCore::HTMLCollection::isRootedAtDocument):
(WebCore::HTMLCollection::rootType):

HTMLCollections still needs the flag.

  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:
  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):

  • html/RadioNodeList.h:
8:34 AM Changeset in webkit [166406] by mario.prada@samsung.com
  • 2 edits in trunk/Source/WebCore

[GTK] Geoclue2 providers won't work after reloading
https://bugs.webkit.org/show_bug.cgi?id=130898

Reviewed by Martin Robinson.

Don't reuse the Geoclue2 client proxy between different calls to
startPosition(), and create a new client proxy each time instead.

  • platform/geoclue/GeolocationProviderGeoclue2.cpp:

(GeolocationProviderGeoclue::startUpdating): Don't reuse the
client proxy, by always calling geoclue_manager_call_get_client().
(GeolocationProviderGeoclue::stopUpdating): Disconnect from the
'location-updated' signal and dispose the client proxy.

7:18 AM Changeset in webkit [166405] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[GTK] Too many redirects visiting www.globalforestwatch.org
https://bugs.webkit.org/show_bug.cgi?id=129681

Patch by Diego Pino Garcia <Diego Pino Garcia> on 2014-03-28
Reviewed by Martin Robinson.

Source/WebCore:

  • platform/gtk/UserAgentGtk.cpp:

(WebCore::standardUserAgent): Append Safari version to UserAgent
string.

Source/WebKit/gtk:

  • webkit/webkitwebsettings.cpp:

(userAgentForURL): Change outdated comment.

7:08 AM Changeset in webkit [166404] by msaboff@apple.com
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling r166249 back in.

Turns out r166070 didn't cause a 2% performance loss in page load times

Reverted changeset:

Unreviewed, rolling out r166070.
Rollout r166070 due to 2% performance loss in page load times

6:50 AM WebKitGTK/2.4.x edited by mrobinson@webkit.org
(diff)
3:34 AM Changeset in webkit [166403] by gyuyoung.kim@samsung.com
  • 4 edits in trunk

[EFL] Bump glib version from 2.36 to 2.38
https://bugs.webkit.org/show_bug.cgi?id=130886

Reviewed by Csaba Osztrogonác.

.:

  • Source/cmake/OptionsEfl.cmake: Required glib-2.38 version.

Tools:

There is a build break on EFL port when using glib 2.36 ver. To fix it,
we need to bump glib version up to 2.38 as gtk port.

  • efl/jhbuild.modules:
1:52 AM Changeset in webkit [166402] by k.czech@samsung.com
  • 1 edit
    3 deletes in trunk/LayoutTests

[EFL][GTK] Remove expectations after r166194
https://bugs.webkit.org/show_bug.cgi?id=130842

Reviewed by Mario Sanchez Prada.

r166194 introduces one common expectation for all ports.

  • platform/efl-wk1/accessibility/table-with-aria-role-expected.txt: Removed.
  • platform/efl-wk2/accessibility/table-with-aria-role-expected.txt: Removed.
  • platform/gtk/accessibility/table-with-aria-role-expected.txt: Removed.
1:20 AM Changeset in webkit [166401] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Copy/paste error. EventListener block in DOM.json uses description from Node.
https://bugs.webkit.org/show_bug.cgi?id=130158

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

  • inspector/protocol/DOM.json: Fixed a copy/paste annoyance.

Mar 27, 2014:

11:24 PM Changeset in webkit [166400] by psolanki@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS WebKit2] Tweak cache sizes for iOS
https://bugs.webkit.org/show_bug.cgi?id=130871

Reviewed by Sam Weinig.

Bring over the tweaks we had made to memory cache size for WebKit1 on iOS to WebKit2. These
were made per findings in <rdar://8611638>.

  • Shared/CacheModel.cpp:

(WebKit::calculateCacheSizes):

11:21 PM Changeset in webkit [166399] by jinwoo7.song@samsung.com
  • 2 edits in trunk/Source/WebKit2

[WK2][EFL] Fix wrong parameter name in ewk_view_user_agent_set()
https://bugs.webkit.org/show_bug.cgi?id=130888

Reviewed by Gyuyoung Kim.

  • UIProcess/API/efl/ewk_view.h:
11:00 PM Changeset in webkit [166398] by commit-queue@webkit.org
  • 12 edits in trunk

Web Inspector: AXI: expose selectedChildNodeIds of list boxes, tree controls, etc., and reconcile UI with childNodeIds
https://bugs.webkit.org/show_bug.cgi?id=130827

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

Source/WebCore:

Test: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

Support for selectedChildNodeIds in inspector-protocol: DOM.getAccessibilityPropertiesForNode.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

  • inspector/protocol/DOM.json:

Source/WebInspectorUI:

UI updates for "Selected Item(s)" and "Child(ren)" rows in accessibility node inspector.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Models/DOMNode.js:
  • UserInterface/Views/DOMNodeDetailsSidebarPanel.js:

Websites/webkit.org:

Updated demo files with attr refresh to show off selected children changing.
Long term fix will be http://webkit.org/b/130883

  • blog-files/aria1.0/combobox_with_live_region_status.html:

LayoutTests:

Tests selectedChildNodeIds in inspector-protocol: DOM.getAccessibilityPropertiesForNode.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
10:28 PM Changeset in webkit [166397] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

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

This was a misguided optimization. (Requested by kling on
#webkit).

Reverted changeset:

"Avoid fetching JSObject::structure() repeatedly in
putDirectInternal."
https://bugs.webkit.org/show_bug.cgi?id=130857
http://trac.webkit.org/changeset/166376

9:06 PM Changeset in webkit [166396] by mrowe@apple.com
  • 6 edits in trunk

<https://webkit.org/b/42704> WebKitTestRunner needs to print history delegate information

Tools:

Provide an implementation of WKContextHistoryClient that logs when called for tests in
the globalhistory directory.

Patch by Mikhail Pozdnyakov <mikhail.pozdnyakov@intel.com> on 2014-03-27
Reviewed by Sam Weinig.

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::TestController):
(WTR::TestController::initialize): Set the history client.
(WTR::TestController::resetStateToConsistentValues): Disable logging of history client callbacks.
(WTR::TestController::didNavigateWithNavigationData): Log information about the navigation. Some portions
of the output are hard-coded to match WebKit1's results for now since they're fixed in our existing tests
and we don't yet have API to access the data in question.
(WTR::TestController::didPerformClientRedirect):
(WTR::TestController::didPerformServerRedirect):
(WTR::TestController::didUpdateHistoryTitle):

  • WebKitTestRunner/TestController.h:

(WTR::TestController::setShouldLogHistoryClientCallbacks):

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::shouldLogHistoryClientCallbacks): Log history client callbacks for tests in a globalhistory directory.
(WTR::TestInvocation::invoke):

LayoutTests:

Reviewed by Sam Weinig.

  • platform/wk2/TestExpectations: Enable the two layout tests that pass. One test remains disabled

due to lack of testRunner API, and another due to an apparent bug in WebKit2's handling of
client redirects.

8:52 PM Changeset in webkit [166395] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebCore

Specify Shadow DOM Pseudo IDs in Media Element Constructors
https://bugs.webkit.org/show_bug.cgi?id=130882

Reviewed by Eric Carlson.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelElement::MediaControlPanelElement): Call setPseudoId in constructor.
(WebCore::MediaControlPanelEnclosureElement::MediaControlPanelEnclosureElement): Ditto.
(WebCore::MediaControlTimelineContainerElement::MediaControlTimelineContainerElement): Ditto.
(WebCore::MediaControlVolumeSliderContainerElement::MediaControlVolumeSliderContainerElement): Ditto.
(WebCore::MediaControlStatusDisplayElement::MediaControlStatusDisplayElement): Ditto.
(WebCore::MediaControlPanelMuteButtonElement::MediaControlPanelMuteButtonElement): Ditto.
(WebCore::MediaControlVolumeSliderMuteButtonElement::MediaControlVolumeSliderMuteButtonElement): Ditto.
(WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement): Ditto.
(WebCore::MediaControlOverlayPlayButtonElement::MediaControlOverlayPlayButtonElement): Ditto.
(WebCore::MediaControlSeekForwardButtonElement::MediaControlSeekForwardButtonElement): Ditto.
(WebCore::MediaControlSeekBackButtonElement::MediaControlSeekBackButtonElement): Ditto.
(WebCore::MediaControlRewindButtonElement::MediaControlRewindButtonElement): Ditto.
(WebCore::MediaControlReturnToRealtimeButtonElement::MediaControlReturnToRealtimeButtonElement): Ditto.
(WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): Ditto.
(WebCore::MediaControlClosedCaptionsContainerElement::MediaControlClosedCaptionsContainerElement): Ditto.
(WebCore::MediaControlClosedCaptionsTrackListElement::MediaControlClosedCaptionsTrackListElement): Ditto.
(WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Ditto.
(WebCore::MediaControlPanelVolumeSliderElement::MediaControlPanelVolumeSliderElement): Ditto.
(WebCore::MediaControlFullscreenVolumeSliderElement::MediaControlFullscreenVolumeSliderElement): Ditto.
(WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement): Ditto.
(WebCore::MediaControlFullscreenVolumeMinButtonElement::MediaControlFullscreenVolumeMinButtonElement): Ditto.
(WebCore::MediaControlFullscreenVolumeMaxButtonElement::MediaControlFullscreenVolumeMaxButtonElement): Ditto.
(WebCore::MediaControlTimeRemainingDisplayElement::MediaControlTimeRemainingDisplayElement): Ditto.
(WebCore::MediaControlCurrentTimeDisplayElement::MediaControlCurrentTimeDisplayElement): Ditto.
(WebCore::MediaControlTextTrackContainerElement::MediaControlTextTrackContainerElement): Ditto.

8:50 PM Changeset in webkit [166394] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebCore

[iOS][WK2] Adjust the tile coverage on the scrollview's edges
https://bugs.webkit.org/show_bug.cgi?id=130884

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-27
Reviewed by Dan Bernstein.

  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::computeCoverageRect):
Pull back the future rect inside the contentRect if it goes outside.
There is no point in retiling for rubberbanding and the extra tiles should be always be
on the opposite side to the edges.

7:46 PM Changeset in webkit [166393] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Remove unused LocaleMac::create method
https://bugs.webkit.org/show_bug.cgi?id=130870

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-03-27
Reviewed by Andreas Kling.

  • platform/text/mac/LocaleMac.h:
  • platform/text/mac/LocaleMac.mm:

(WebCore::LocaleMac::create): Deleted.
(WebCore::LocaleMac::shortDateFormatter): Deleted.

6:10 PM Changeset in webkit [166392] by oliver@apple.com
  • 20 edits
    6 adds in trunk

Support spread operand in |new| expressions
https://bugs.webkit.org/show_bug.cgi?id=130877

Reviewed by Michael Saboff.

Source/JavaScriptCore:

Add support for the spread operator being applied in
|new| expressions. This required adding support for
a new opcode, op_construct_varargs. This is a relatively
simple refactoring of the call_varargs implementation.

  • bytecode/BytecodeList.json:
  • bytecode/BytecodeUseDef.h:

(JSC::computeUsesForBytecodeOffset):
(JSC::computeDefsForBytecodeOffset):

  • bytecode/CallLinkInfo.cpp:

(JSC::CallLinkInfo::unlink):

  • bytecode/CallLinkInfo.h:

(JSC::CallLinkInfo::callTypeFor):
(JSC::CallLinkInfo::specializationKind):

  • bytecode/CodeBlock.cpp:

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

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstructVarargs):
(JSC::BytecodeGenerator::emitConstruct):

  • bytecompiler/BytecodeGenerator.h:
  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):
(JSC::JIT::privateCompileSlowCases):

  • jit/JIT.h:
  • jit/JITCall.cpp:

(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):
(JSC::JIT::emit_op_construct_varargs):
(JSC::JIT::emitSlow_op_construct_varargs):

  • jit/JITCall32_64.cpp:

(JSC::JIT::emitSlow_op_construct_varargs):
(JSC::JIT::emit_op_construct_varargs):
(JSC::JIT::compileOpCall):
(JSC::JIT::compileOpCallSlowCase):

  • jit/JITOperations.cpp:
  • llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):

  • llint/LLIntSlowPaths.h:
  • llint/LowLevelInterpreter.asm:
  • parser/Parser.cpp:

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

LayoutTests:

Correctness and performance tests for spread operands

  • js/parser-syntax-check-expected.txt:
  • js/regress/call-spread-expected.txt: Added.
  • js/regress/call-spread.html: Added.
  • js/regress/new-spread-expected.txt: Added.
  • js/regress/new-spread.html: Added.
  • js/regress/script-tests/call-spread.js: Added.

(testFunction):
(test2):
(test3):

  • js/regress/script-tests/new-spread.js: Added.

(testFunction):
(test2):
(test3):

  • js/script-tests/parser-syntax-check.js:
6:00 PM Changeset in webkit [166391] by gyuyoung.kim@samsung.com
  • 4 edits in trunk/Source/WebCore

Clean up unneeded "mutable" keyword
https://bugs.webkit.org/show_bug.cgi?id=130832

Reviewed by Andreas Kling.

As r166350, this patch cleans up unneeded "mutable" keywords.
Additionally, m_validatedSelectionCache is removed because it is not used anywhere else.

  • css/CSSFontFaceRule.h:
  • css/CSSStyleRule.h:
  • editing/FrameSelection.h:
5:51 PM Changeset in webkit [166390] by fpizlo@apple.com
  • 6 edits in trunk

Revert http://trac.webkit.org/changeset/166386 because it broke builds.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:
  • Configurations/LLVMForJSC.xcconfig:

Tools:

  • Scripts/build-webkit:
  • Scripts/copy-webkitlibraries-to-product-directory:
5:48 PM Changeset in webkit [166389] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed, skip this test for now.

  • tests/stress/recurse-infinitely-on-getter.js:
5:36 PM Changeset in webkit [166388] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Confirm composition in resignFirstResponder, don't cancel it
https://bugs.webkit.org/show_bug.cgi?id=130852

Reviewed by Darin Adler.

  • UIProcess/API/mac/WKView.mm: (-[WKView resignFirstResponder]):
5:27 PM Changeset in webkit [166387] by psolanki@apple.com
  • 3 edits in trunk/Source/WebKit2

[iOS WebKit2] Don't pass disk cache directory path on iOS
https://bugs.webkit.org/show_bug.cgi?id=130862

Reviewed by Sam Weinig.

The diskPath passed to NSURLCache initializer is treated differently on Mac and iOS. Just
pass nil for now until we sort out the API.

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::WebProcess::platformInitializeWebProcess):

4:52 PM Changeset in webkit [166386] by fpizlo@apple.com
  • 6 edits in trunk

Switch the LLVMForJSC target to using the LLVM in /usr/local rather than /usr/local/LLVMForJavaScriptCore on iOS
https://bugs.webkit.org/show_bug.cgi?id=130867
<rdar://problem/16432456>

Reviewed by Mark Hahnenberg.

Source/JavaScriptCore:

  • Configurations/Base.xcconfig:
  • Configurations/LLVMForJSC.xcconfig:

Tools:

  • Scripts/build-webkit:
  • Scripts/copy-webkitlibraries-to-product-directory:
4:46 PM Changeset in webkit [166385] by psolanki@apple.com
  • 5 edits
    2 adds in trunk/Source/WebKit2

[iOS WebKit2] Share network process code between iOS and Mac
https://bugs.webkit.org/show_bug.cgi?id=130861

Reviewed by Sam Weinig.

Implement network process functions for iOS by moving common code from NetworkProcessMac.mm
to a new shared file NetworkProcessCocoa.mm and sharing between iOS and Mac.

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/cocoa/NetworkProcessCocoa.mm: Added.

(WebKit::NetworkProcess::platformLowMemoryHandler):
(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
Common initialization code for iOS and Mac.
(WebKit::memorySize):
(WebKit::volumeFreeSize):
(WebKit::NetworkProcess::platformSetCacheModel):

  • NetworkProcess/ios/NetworkProcessIOS.mm:

(WebKit::NetworkProcess::initializeProcess):
Remove unnecessary #if PLATFORM(IOS).
(WebKit::NetworkProcess::platformInitializeNetworkProcess):

  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcess):

  • WebKit2.xcodeproj/project.pbxproj:
4:41 PM Changeset in webkit [166384] by enrica@apple.com
  • 28 edits
    2 adds in trunk/Source

Add support for AirPlay picker in WK2 for iOS.
https://bugs.webkit.org/show_bug.cgi?id=130855
<rdar://problem/15349859>

Source/WebCore:

Reviewed by Eric Carlson, Joseph Pecoraro and Benjamin Poulain.

Adds support in HTMLMediaSession to display the airplay picker
and to monitor presence of available wireless targets.

  • html/HTMLMediaSession.cpp:

(WebCore::HTMLMediaSession::showPlaybackTargetPicker):
(WebCore::HTMLMediaSession::hasWirelessPlaybackTargets):
(WebCore::HTMLMediaSession::setHasPlaybackTargetAvailabilityListeners):

  • loader/EmptyClients.h:
  • page/ChromeClient.h:
  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::wirelessRoutesAvailableChanged):

  • platform/audio/MediaSessionManager.h:

(WebCore::MediaSessionManager::hasWirelessTargetsAvailable):
(WebCore::MediaSessionManager::startMonitoringAirPlayRoutes):
(WebCore::MediaSessionManager::stopMonitoringAirPlayRoutes):

  • platform/audio/ios/MediaSessionManagerIOS.h:
  • platform/audio/ios/MediaSessionManagerIOS.mm:

(WebCore::MediaSessionManageriOS::hasWirelessTargetsAvailable):
(WebCore::MediaSessionManageriOS::startMonitoringAirPlayRoutes):
(WebCore::MediaSessionManageriOS::stopMonitoringAirPlayRoutes):
(-[WebMediaSessionHelper initWithCallback:]):
(-[WebMediaSessionHelper hasWirelessTargetsAvailable]):
(-[WebMediaSessionHelper startMonitoringAirPlayRoutes]):
(-[WebMediaSessionHelper stopMonitoringAirPlayRoutes]):
(-[WebMediaSessionHelper wirelessRoutesAvailableDidChange:]):

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::wirelessVideoPlaybackDisabled):
(WebCore::MediaPlayerPrivateAVFoundationObjC::setWirelessVideoPlaybackDisabled):

Source/WebKit/ios:

Reviewed by Eric Carlson, Joseph Pecoraro and Benjamin Poulain.

Adds stub for new WebKit chrome client method.

  • WebCoreSupport/WebChromeClientIOS.h:
  • WebCoreSupport/WebChromeClientIOS.mm:

(WebChromeClientIOS::showAirPlayRoutePicker):

Source/WebKit2:

Reviewed by Joseph Pecoraro and Benjamin Poulain.

Adds support to display the airplay picker for iPhone and iPad
in WK2.
The picker on iPad is displayed next to the airplay button.

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

(WebKit::PageClientImpl::showAirPlayRoutePicker):

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

(-[WKContentView _showAirPlayRoutePicker:fromRect:]):

  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::showAirPlayRoutePicker):

  • UIProcess/ios/forms/WKAirPlayRoutePicker.h: Added.
  • UIProcess/ios/forms/WKAirPlayRoutePicker.mm: Added.

(-[WKAirPlayRoutePicker initWithView:]):
(-[WKAirPlayRoutePicker dealloc]):
(-[WKAirPlayRoutePicker popoverControllerDidDismissPopover:]):
(-[WKAirPlayRoutePicker _presentAirPlayPopoverAnimated:fromRect:]):
(-[WKAirPlayRoutePicker _windowWillRotate:]):
(-[WKAirPlayRoutePicker _windowDidRotate:]):
(-[WKAirPlayRoutePicker _dismissAirPlayRoutePickerIPad]):
(-[WKAirPlayRoutePicker showAirPlayPickerIPad:fromRect:]):
(-[WKAirPlayRoutePicker showAirPlayPickerIPhone:]):
(-[WKAirPlayRoutePicker show:fromRect:]):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:

(WebKit::WebChromeClient::showAirPlayRoutePicker):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::touchEvent):
(WebKit::WebPage::touchEventSyncForTesting):

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

(WebKit::WebPage::rectForElementAtInteractionLocation):
(WebKit::WebPage::handleTap):

4:40 PM Changeset in webkit [166383] by Bem Jones-Bey
  • 9 edits
    42 adds in trunk

[CSS Shapes][css clip-path] rounded corner calculation for box shapes is wrong
https://bugs.webkit.org/show_bug.cgi?id=127982

Reviewed by Simon Fraser.

Source/WebCore:

Calculate rounded corners for box shapes as defined in the CSS Shapes
spec.

Tests: css3/masking/clip-path-border-radius-border-box-000.html

css3/masking/clip-path-border-radius-content-box-000.html
css3/masking/clip-path-border-radius-content-box-001.html
css3/masking/clip-path-border-radius-padding-box-000.html
css3/masking/clip-path-border-radius-padding-box-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-000.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-002.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-000.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-002.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-003.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-000.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-002.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-003.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-004.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-000.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-001.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-002.html
fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-003.html

  • platform/graphics/RoundedRect.h:

(WebCore::RoundedRect::Radii::transposedRadii): Transpose radii for

vertical writing modes.

(WebCore::RoundedRect::moveBy): Add method for use with clip path.
(WebCore::RoundedRect::transposedRect): Transpose rect for vertical

writing modes.

  • rendering/RenderBox.h:

(WebCore::RenderBox::marginBoxRect): Return the margin box rect for

the RenderBox.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::setupClipPath): Call the new function for the

rounded corner calculation.

  • rendering/shapes/ShapeInfo.cpp:

(WebCore::ShapeInfo<RenderType>::computedShape): Call the new function

for the rounded corner calculation.

  • rendering/shapes/BoxShape.cpp:

(WebCore::adjustRadiusForMarginBoxShape): Helper function for

computeRoundedRectForLayoutBoxShape.

(WebCore::computeMarginBoxShapeRadius): Ditto.
(WebCore::computeMarginBoxShapeRadii): Ditto.
(WebCore::computeRoundedRectForBoxShape): Utility function to do the

rounded corner calculation.

  • rendering/shapes/BoxShape.h: Add new function.
  • rendering/style/RenderStyle.h:

(WebCore::RenderStyle::getRoundedInnerBorderFor): Add default argument

values.

LayoutTests:

  • css3/masking/clip-path-border-radius-border-box-000-expected.html: Added.
  • css3/masking/clip-path-border-radius-border-box-000.html: Added.
  • css3/masking/clip-path-border-radius-content-box-000-expected.html: Added.
  • css3/masking/clip-path-border-radius-content-box-000.html: Added.
  • css3/masking/clip-path-border-radius-content-box-001-expected.html: Added.
  • css3/masking/clip-path-border-radius-content-box-001.html: Added.
  • css3/masking/clip-path-border-radius-padding-box-000-expected.html: Added.
  • css3/masking/clip-path-border-radius-padding-box-000.html: Added.
  • css3/masking/clip-path-border-radius-padding-box-001-expected.html: Added.
  • css3/masking/clip-path-border-radius-padding-box-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-000-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-000.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-border-box-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-000-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-000.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-003-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-content-box-003.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-000-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-000.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-003-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-003.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-004-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-margin-box-004.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-000-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-000.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-001-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-001.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-002-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-002.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-003-expected.html: Added.
  • fast/shapes/shape-outside-floats/shape-outside-floats-border-radius-padding-box-003.html: Added.
4:37 PM Changeset in webkit [166382] by benjamin@webkit.org
  • 2 edits in trunk/Source/WebKit2

[WK2][iOS] <rdar://problem/16414684> WKWebView should draw a white background before the page loads
https://bugs.webkit.org/show_bug.cgi?id=130873

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-27
Reviewed by Simon Fraser.

  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView initWithFrame:configuration:]):

4:23 PM Changeset in webkit [166381] by commit-queue@webkit.org
  • 11 edits
    2 deletes in trunk/Source/WebCore

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

Caused a test assertion (Requested by smfr on #webkit).

Reverted changeset:

"Operator stretching: expose a math data API"
https://bugs.webkit.org/show_bug.cgi?id=130572
http://trac.webkit.org/changeset/166364

4:22 PM Changeset in webkit [166380] by benjamin@webkit.org
  • 9 edits in trunk/Source

[iOS][WK2] Compute a good exposed rect when scaling WKContentView
https://bugs.webkit.org/show_bug.cgi?id=130761

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-27
Reviewed by Simon Fraser.

Source/WebCore:

  • WebCore.exp.in:
  • platform/ScrollView.h:
  • platform/ios/ScrollViewIOS.mm:

(WebCore::ScrollView::setScrollVelocity):
(WebCore::ScrollView::computeCoverageRect):
While scaling in, do not add margins tiles. When scaling out, add 1 margin tile size
all around.

Source/WebKit2:

Add a simple heuristic to improve tiling while zooming. In theory we could take the zoom
center and scaleRate to split the speed between scrolling and pinching. In practice,
zoom is transitory and is not as predictable as scrolling, so this patch just does a very
simple heuristic:
-When zooming in, do not expand coverage.
-When zooming out, add half a tile size on every side.

  • Shared/VisibleContentRectUpdateInfo.cpp:

(WebKit::VisibleContentRectUpdateInfo::encode):
(WebKit::VisibleContentRectUpdateInfo::decode):

  • Shared/VisibleContentRectUpdateInfo.h:

(WebKit::VisibleContentRectUpdateInfo::VisibleContentRectUpdateInfo):
(WebKit::VisibleContentRectUpdateInfo::timestamp):
(WebKit::VisibleContentRectUpdateInfo::horizontalVelocity):
(WebKit::VisibleContentRectUpdateInfo::verticalVelocity):
(WebKit::VisibleContentRectUpdateInfo::scaleChangeRate):

  • UIProcess/ios/WKContentView.mm:

(WebKit::HistoricalVelocityData::VelocityData::VelocityData):
(WebKit::HistoricalVelocityData::velocityForNewData):
(WebKit::HistoricalVelocityData::append):
(-[WKContentView didUpdateVisibleRect:unobscuredRect:scale:inStableState:]):

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::adjustExposedRectForBoundedScale):
When zooming past the maximum size, adjust the exposed rect to continue tiling the area
at maximum size. Otherwise, we tile a tiny area, and have to retile larger when the animation
pull back the view to maximum scale.

(WebKit::adjustVelocityDataForBoundedScale):
Since we do not split the velocity from scrolling from the scaling, just clear the velocity when zooming.
Also clear the scaleChangeRate when the scale is out of bounds. There is no reason to add tiles for
temporary state.

(WebKit::WebPage::updateVisibleContentRects):

3:59 PM Changeset in webkit [166379] by andersca@apple.com
  • 19 edits
    5 copies
    2 moves in trunk/Source/WebKit2

Add _ prefix to WKRemoteObjectRegistery and WKRemoteObjectInterface
https://bugs.webkit.org/show_bug.cgi?id=130868

Reviewed by Sam Weinig.

  • Shared/API/Cocoa/RemoteObjectRegistry.h:
  • Shared/API/Cocoa/RemoteObjectRegistry.mm:

(WebKit::RemoteObjectRegistry::RemoteObjectRegistry):

  • Shared/API/Cocoa/WKRemoteObject.h:
  • Shared/API/Cocoa/WKRemoteObject.mm:

(-[WKRemoteObject _initWithObjectRegistry:interface:]):

  • Shared/API/Cocoa/WKRemoteObjectCoder.h:
  • Shared/API/Cocoa/WKRemoteObjectCoder.mm:

(-[WKRemoteObjectDecoder initWithInterface:rootObjectDictionary:WebKit::]):

  • Shared/API/Cocoa/WKRemoteObjectInterface.h:
  • Shared/API/Cocoa/WKRemoteObjectInterface.mm:

(isContainerClass): Deleted.
(propertyListClasses): Deleted.
(allowedArgumentClassesForMethod): Deleted.
(initializeAllowedArgumentClasses): Deleted.
(-[WKRemoteObjectInterface initWithProtocol:identifier:]): Deleted.
(+[WKRemoteObjectInterface remoteObjectInterfaceWithProtocol:]): Deleted.
(-[WKRemoteObjectInterface description]): Deleted.
(classesForSelectorArgument): Deleted.
(-[WKRemoteObjectInterface classesForSelector:argumentIndex:]): Deleted.
(-[WKRemoteObjectInterface setClasses:forSelector:argumentIndex:]): Deleted.
(methodArgumentTypeEncodingForSelector): Deleted.
(-[WKRemoteObjectInterface _methodSignatureForSelector:]): Deleted.
(-[WKRemoteObjectInterface _allowedArgumentClassesForSelector:]): Deleted.

  • Shared/API/Cocoa/WKRemoteObjectRegistry.h:
  • Shared/API/Cocoa/WKRemoteObjectRegistry.mm:

(-[WKRemoteObjectRegistry registerExportedObject:interface:]): Deleted.
(-[WKRemoteObjectRegistry unregisterExportedObject:interface:]): Deleted.
(-[WKRemoteObjectRegistry remoteObjectProxyWithInterface:]): Deleted.
(-[WKRemoteObjectRegistry _initWithMessageSender:IPC::]): Deleted.
(-[WKRemoteObjectRegistry _invalidate]): Deleted.
(-[WKRemoteObjectRegistry _sendInvocation:interface:]): Deleted.
(-[WKRemoteObjectRegistry WebKit::]): Deleted.
(-[WKRemoteObjectRegistry _invokeMethod:]): Deleted.
(-[WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]): Deleted.

  • Shared/API/Cocoa/_WKRemoteObjectInterface.h: Copied from Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectInterface.h.
  • Shared/API/Cocoa/_WKRemoteObjectInterface.mm: Copied from Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectInterface.mm.

(isContainerClass):
(propertyListClasses):
(allowedArgumentClassesForMethod):
(initializeAllowedArgumentClasses):
(-[_WKRemoteObjectInterface initWithProtocol:identifier:]):
(+[_WKRemoteObjectInterface remoteObjectInterfaceWithProtocol:]):
(-[_WKRemoteObjectInterface description]):
(classesForSelectorArgument):
(-[_WKRemoteObjectInterface classesForSelector:argumentIndex:]):
(-[_WKRemoteObjectInterface setClasses:forSelector:argumentIndex:]):
(methodArgumentTypeEncodingForSelector):
(-[_WKRemoteObjectInterface _methodSignatureForSelector:]):
(-[_WKRemoteObjectInterface _allowedArgumentClassesForSelector:]):

  • Shared/API/Cocoa/_WKRemoteObjectInterfaceInternal.h: Renamed from Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectInterfaceInternal.h.
  • Shared/API/Cocoa/_WKRemoteObjectRegistry.h: Copied from Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectRegistry.h.
  • Shared/API/Cocoa/_WKRemoteObjectRegistry.mm: Copied from Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectRegistry.mm.

(-[_WKRemoteObjectRegistry registerExportedObject:interface:]):
(-[_WKRemoteObjectRegistry unregisterExportedObject:interface:]):
(-[_WKRemoteObjectRegistry remoteObjectProxyWithInterface:]):
(-[_WKRemoteObjectRegistry _initWithMessageSender:IPC::]):
(-[_WKRemoteObjectRegistry _invalidate]):
(-[_WKRemoteObjectRegistry _sendInvocation:interface:]):
(-[_WKRemoteObjectRegistry WebKit::]):
(-[_WKRemoteObjectRegistry _invokeMethod:]):
(-[_WKRemoteObjectRegistry _invokeMessageWithInterfaceIdentifier:encodedInvocation:]):

  • Shared/API/Cocoa/_WKRemoteObjectRegistryInternal.h: Renamed from Source/WebKit2/Shared/API/Cocoa/WKRemoteObjectRegistryInternal.h.
  • UIProcess/API/Cocoa/WKBrowsingContextController.mm:

(-[WKBrowsingContextController _remoteObjectRegistry]):
(-[WKBrowsingContextController remoteObjectRegistry]): Deleted.

  • UIProcess/API/Cocoa/WKBrowsingContextControllerPrivate.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _remoteObjectRegistry]):

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInBrowserContextControllerToBeRemoved.mm: Copied from Source/WebKit2/Shared/API/Cocoa/WKRemoteObject.h.

(-[WKWebProcessPlugInBrowserContextController remoteObjectRegistry]):

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:

(-[WKWebProcessPlugInBrowserContextController _remoteObjectRegistry]):
(-[WKWebProcessPlugInBrowserContextController remoteObjectRegistry]): Deleted.

  • WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextControllerPrivate.h:
3:49 PM Changeset in webkit [166378] by commit-queue@webkit.org
  • 32 edits
    3 deletes in trunk/Source

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

Seems to have broken PLT (Requested by ap on #webkit).

Reverted changeset:

Source/WebCore:

"Connection::dispatchOneMessage() can be re-entered while
handling Cmd-key menu"
https://bugs.webkit.org/show_bug.cgi?id=130767
http://trac.webkit.org/changeset/166360

Source/WebKit/mac:

"Connection::dispatchOneMessage() can be re-entered while
handling Cmd-key menu"
https://bugs.webkit.org/show_bug.cgi?id=130767
http://trac.webkit.org/changeset/166360

Source/WebKit2:

"Connection::dispatchOneMessage() can be re-entered while
handling Cmd-key menu"
https://bugs.webkit.org/show_bug.cgi?id=130767
http://trac.webkit.org/changeset/166360

Source/WTF:

"Connection::dispatchOneMessage() can be re-entered while
handling Cmd-key menu"
https://bugs.webkit.org/show_bug.cgi?id=130767
http://trac.webkit.org/changeset/166360

3:47 PM Changeset in webkit [166377] by Antti Koivisto
  • 15 edits in trunk/Source/WebCore

Remove LiveNodeList::Type
https://bugs.webkit.org/show_bug.cgi?id=130866

Reviewed by Andreas Kling.

We don't need dynamic type information anymore.

  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::ClassNodeList):

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getElementsByTagName):
(WebCore::ContainerNode::getElementsByName):
(WebCore::ContainerNode::getElementsByClassName):
(WebCore::ContainerNode::radioNodeList):

  • dom/LiveNodeList.cpp:

(WebCore::LiveNodeList::LiveNodeList):

  • dom/LiveNodeList.h:

(WebCore::LiveNodeList::invalidationType):
(WebCore::CachedLiveNodeList<NodeListType>::CachedLiveNodeList):
(WebCore::LiveNodeList::type): Deleted.

  • dom/NameNodeList.cpp:

(WebCore::NameNodeList::NameNodeList):
(WebCore::NameNodeList::nodeMatches): Deleted.

  • dom/NameNodeList.h:

(WebCore::NameNodeList::nodeMatches):

  • dom/NodeRareData.h:

(WebCore::NodeListTypeIdentifier<ClassNodeList>::value):
(WebCore::NodeListTypeIdentifier<NameNodeList>::value):
(WebCore::NodeListTypeIdentifier<TagNodeList>::value):
(WebCore::NodeListTypeIdentifier<HTMLTagNodeList>::value):
(WebCore::NodeListTypeIdentifier<RadioNodeList>::value):
(WebCore::NodeListTypeIdentifier<LabelsNodeList>::value):

Get unique id from type for key generation purposes only.

(WebCore::NodeListsNodeData::addCacheWithAtomicName):
(WebCore::NodeListsNodeData::addCacheWithName):
(WebCore::NodeListsNodeData::removeCacheWithAtomicName):
(WebCore::NodeListsNodeData::removeCacheWithName):
(WebCore::NodeListsNodeData::namedNodeListKey):

  • dom/TagNodeList.cpp:

(WebCore::TagNodeList::TagNodeList):
(WebCore::HTMLTagNodeList::HTMLTagNodeList):

  • dom/TagNodeList.h:
  • html/LabelableElement.cpp:

(WebCore::LabelableElement::labels):

  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:
  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):

  • html/RadioNodeList.h:
3:39 PM Changeset in webkit [166376] by akling@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Avoid fetching JSObject::structure() repeatedly in putDirectInternal.
<https://webkit.org/b/130857>

Use the cached Structure* instead of re-fetching it over and over since
that's a non-trivial operation these days.

Reviewed by Mark Hahnenberg.

  • runtime/JSObject.h:

(JSC::JSObject::putDirectInternal):

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

Check the remembered set bit faster
https://bugs.webkit.org/show_bug.cgi?id=130860

Reviewed by Oliver Hunt.

Currently we look up the remembered set bit in the MarkedBlock in C++ code, but
that bit is also stored in the object. We should look it up there whenever possible.

  • heap/CopiedBlockInlines.h:

(JSC::CopiedBlock::shouldReportLiveBytes):

  • heap/Heap.cpp:

(JSC::Heap::addToRememberedSet):

  • heap/Heap.h:
  • heap/HeapInlines.h: Removed.
  • heap/SlotVisitorInlines.h:

(JSC::SlotVisitor::reportExtraMemoryUsage):

3:30 PM Changeset in webkit [166374] by weinig@apple.com
  • 4 edits in trunk/Source/WebKit2

Support dynamic layer hosting context changes
<rdar://problem/16278019>
https://bugs.webkit.org/show_bug.cgi?id=130863

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView addWindowObserversForWindow:]):
(-[WKView removeWindowObservers]):
(-[WKView _windowDidChangeLayerHosting:]):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::layerHostingModeDidChange):

  • UIProcess/WebPageProxy.h:
3:28 PM Changeset in webkit [166373] by simon.fraser@apple.com
  • 2 edits in trunk/Source/WebKit2

Don't leak the WKBrowsingContextController
https://bugs.webkit.org/show_bug.cgi?id=130815

Reviewed by Tim Horton.

Use adoptNS to avoid leaking the WKBrowsingContextController.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView browsingContextController]):

3:28 PM Changeset in webkit [166372] by simon.fraser@apple.com
  • 2 edits in trunk/Source/WebCore

Fix crash when RenderView is cleared inside of frame flattening layout
https://bugs.webkit.org/show_bug.cgi?id=130864

Reviewed by Dan Bernstein.

Navigating on http://wallstcheatsheet.com pages on iOS in WebKit1 would
sometimes crash when, inside the inChildFrameLayoutWithFrameFlattening clause,
our frame's RenderView would be null after doing a layout from the root frame,
possibly also when WebCore was being re-entered from another thread.

Add a null check to fix this.

Crash was timing-dependent and hard to test.

  • page/FrameView.cpp:

(WebCore::FrameView::layout):

3:00 PM Changeset in webkit [166371] by Joseph Pecoraro
  • 2 edits in trunk/Source/WebKit2

Web Inspector: Give WebProcess a proxy application entitlement
https://bugs.webkit.org/show_bug.cgi?id=130806

Reviewed by Timothy Hatcher.

  • Configurations/WebContent-iOS.entitlements:
2:21 PM Changeset in webkit [166370] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add reload and reloadFromOrigin as API
https://bugs.webkit.org/show_bug.cgi?id=130858

Reviewed by Simon Fraser.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView reload]):
(-[WKWebView reloadFromOrigin]):
(-[WKWebView validateUserInterfaceItem:]):
(-[WKWebView reload:]):
(-[WKWebView reloadFromOrigin:]):

1:49 PM Changeset in webkit [166369] by Antti Koivisto
  • 14 edits in trunk/Source/WebCore

Remove some unnecessary branches from LiveNodeList traversal
https://bugs.webkit.org/show_bug.cgi?id=130854

Reviewed by Andreas Kling.

Compile different traversal code paths for all NodeList subclasses.

  • dom/ClassNodeList.cpp:

(WebCore::ClassNodeList::ClassNodeList):
(WebCore::ClassNodeList::~ClassNodeList):
(WebCore::ClassNodeList::nodeMatches): Deleted.

  • dom/ClassNodeList.h:

(WebCore::ClassNodeList::nodeMatches):
(WebCore::ClassNodeList::nodeMatchesInlined): Deleted.

Remove separate nodeMatchesInlined functions.
We now rely on exact types and marking classes final.

  • dom/LiveNodeList.cpp:

(WebCore::LiveNodeList::LiveNodeList):
(WebCore::LiveNodeList::~LiveNodeList):
(WebCore::LiveNodeList::namedItem):
(WebCore::LiveNodeList::rootNode): Deleted.
(WebCore::isMatchingElement): Deleted.
(WebCore::firstMatchingElement): Deleted.
(WebCore::lastMatchingElement): Deleted.
(WebCore::nextMatchingElement): Deleted.
(WebCore::previousMatchingElement): Deleted.
(WebCore::traverseMatchingElementsForward): Deleted.
(WebCore::traverseMatchingElementsBackward): Deleted.
(WebCore::LiveNodeList::collectionFirst): Deleted.
(WebCore::LiveNodeList::collectionLast): Deleted.
(WebCore::LiveNodeList::collectionTraverseForward): Deleted.
(WebCore::LiveNodeList::collectionTraverseBackward): Deleted.
(WebCore::LiveNodeList::length): Deleted.
(WebCore::LiveNodeList::item): Deleted.
(WebCore::LiveNodeList::memoryCost): Deleted.
(WebCore::LiveNodeList::invalidateCache): Deleted.

  • dom/LiveNodeList.h:

(WebCore::LiveNodeList::invalidateCacheForAttribute):
(WebCore::CachedLiveNodeList::collectionCanTraverseBackward):
(WebCore::LiveNodeList::rootNode):
(WebCore::CachedLiveNodeList<NodeListType>::CachedLiveNodeList):

Add CachedLiveNodeList<NodeListType> utility type that interfaces with CollectionIndexCache.
It is the base class for all concrete LiveNodeLists.

(WebCore::CachedLiveNodeList<NodeListType>::~CachedLiveNodeList):
(WebCore::CachedLiveNodeList<NodeListType>::collectionFirst):
(WebCore::CachedLiveNodeList<NodeListType>::collectionLast):
(WebCore::nextMatchingElement):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseForward):
(WebCore::previousMatchingElement):
(WebCore::CachedLiveNodeList<NodeListType>::collectionTraverseBackward):
(WebCore::CachedLiveNodeList<NodeListType>::willValidateIndexCache):
(WebCore::CachedLiveNodeList<NodeListType>::invalidateCache):
(WebCore::CachedLiveNodeList<NodeListType>::length):
(WebCore::CachedLiveNodeList<NodeListType>::item):
(WebCore::CachedLiveNodeList<NodeListType>::memoryCost):

Templated code moves to header.

(WebCore::LiveNodeList::LiveNodeList): Deleted.
(WebCore::LiveNodeList::~LiveNodeList): Deleted.
(WebCore::LiveNodeList::invalidateCache): Deleted.
(WebCore::LiveNodeList::collectionCanTraverseBackward): Deleted.
(WebCore::LiveNodeList::willValidateIndexCache): Deleted.

  • dom/NameNodeList.cpp:

(WebCore::NameNodeList::NameNodeList):

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

(WebCore::Document::invalidateNodeListAndCollectionCaches):
(WebCore::NodeListsNodeData::invalidateCaches):

  • dom/TagNodeList.cpp:

(WebCore::TagNodeList::TagNodeList):
(WebCore::HTMLTagNodeList::HTMLTagNodeList):
(WebCore::HTMLTagNodeList::~HTMLTagNodeList):
(WebCore::TagNodeList::nodeMatches): Deleted.
(WebCore::HTMLTagNodeList::nodeMatches): Deleted.

  • dom/TagNodeList.h:

(WebCore::TagNodeList::nodeMatches):
(WebCore::HTMLTagNodeList::nodeMatches):
(WebCore::TagNodeList::create): Deleted.
(WebCore::HTMLTagNodeList::nodeMatchesInlined): Deleted.

  • html/LabelsNodeList.cpp:

(WebCore::LabelsNodeList::LabelsNodeList):

  • html/LabelsNodeList.h:
  • html/RadioNodeList.cpp:

(WebCore::RadioNodeList::RadioNodeList):

  • html/RadioNodeList.h:
1:07 PM Changeset in webkit [166368] by cavalcantii@gmail.com
  • 2 edits in trunk/Source/WebCore

Remove comment from Filter.h
https://bugs.webkit.org/show_bug.cgi?id=130848

Reviewed by Simon Fraser.

Exploring the use of consts on applyScale() methods didn't yield
good results.

No new tests, no change on behavior.

  • platform/graphics/filters/Filter.h:
1:01 PM Changeset in webkit [166367] by commit-queue@webkit.org
  • 5 edits
    1 add in trunk/Source/JavaScriptCore

Web Inspector: Provide SPI to disallow remote inspection of a JSContext
https://bugs.webkit.org/show_bug.cgi?id=130853

Patch by Joseph Pecoraro <Joseph Pecoraro> on 2014-03-27
Reviewed by Timothy Hatcher.

  • API/JSContextPrivate.h: Added.
  • API/JSContext.mm:

(-[JSContext _remoteInspectionEnabled]):
(-[JSContext _setRemoteInspectionEnabled:]):
ObjC SPI to enable/disable remote inspection.

  • API/JSContextRefPrivate.h:
  • API/JSContextRef.cpp:

(JSGlobalContextGetRemoteInspectionEnabled):
(JSGlobalContextSetRemoteInspectionEnabled):
C SPI to enable/disable remote inspection.

Add new private header, and export as a private header.

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

Clean up questionable style in ScriptExecutable::prepareForExecutionImpl
https://bugs.webkit.org/show_bug.cgi?id=130845

Reviewed by Filip Pizlo.

There was a hack added to make sure C Loop LLInt worked which included overriding the
global Options::useLLInt setting, which makes no sense to do here. We should put the
update of the global setting in Options::recomputeDependentOptions along with the other
execution engine flags.

  • runtime/Executable.cpp:

(JSC::ScriptExecutable::prepareForExecutionImpl):

  • runtime/Options.cpp:

(JSC::recomputeDependentOptions):

11:32 AM Changeset in webkit [166365] by graouts@webkit.org
  • 2 edits in trunk/Source/WebInspectorUI

Web Inspector: clearing the console log doesn't update the activity viewer
https://bugs.webkit.org/show_bug.cgi?id=130774

Reviewed by Joseph Pecoraro.

Ensure we take the changes made to the ivars into account on the view.

  • UserInterface/Models/DefaultDashboard.js:

(WebInspector.DefaultDashboard.prototype._consoleWasCleared):

11:06 AM Changeset in webkit [166364] by fred.wang@free.fr
  • 11 edits
    2 adds in trunk/Source/WebCore

Operator stretching: expose a math data API
https://bugs.webkit.org/show_bug.cgi?id=130572

Reviewed by Chris Fleizach.

We expose a new SimpleFontData API to give access to the data from the
OpenType MATH table using a font cache. The class OpenTypeMathData will
be implemented in bug 130324. On Darwin platform, we also implement the
missing FontPlatformData::openTypeTable function which will be necessary
to load the OpenType MATH table. The changes are intended to be used
for MathML operator stretching (bug 130322) so tests are not added yet.

  • CMakeLists.txt: add new OpenTypeMathData files.
  • WebCore.vcxproj/WebCore.vcxproj: ditto.
  • WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
  • WebCore.xcodeproj/project.pbxproj: ditto.
  • platform/graphics/FontCache.cpp: We add a FontCache::getMathData function to implement a cache for the math data.

We make the math and vertical data share the same key for the cache.
(WebCore::fontMathDataCacheInstance):
(WebCore::FontCache::getMathData):
(WebCore::fontVerticalDataCacheInstance):

  • platform/graphics/FontCache.h: We declare FontCache::getMathData and FontFileKey on all platforms.
  • platform/graphics/FontPlatformData.cpp:

(WebCore::FontPlatformData::openTypeTable): We implement openTypeTable() on Darwin platform.

  • platform/graphics/FontPlatformData.h: We expose openTypeTable() on Darwin platform.
  • platform/graphics/SimpleFontData.cpp: We initialize m_mathData from the font cache.

(WebCore::SimpleFontData::SimpleFontData):

  • platform/graphics/SimpleFontData.h: We expose a mathData() function to access the MATH data.
  • platform/graphics/opentype/OpenTypeMathData.cpp: Added. This is a new class that will be used to parse the data from the OpenType MATH table.

(WebCore::OpenTypeMathData::OpenTypeMathData):

  • platform/graphics/opentype/OpenTypeMathData.h: Added.

(WebCore::OpenTypeMathData::create):
(WebCore::OpenTypeMathData::hasMathData):

10:51 AM Changeset in webkit [166363] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebInspectorUI

[Win] Correct handling of autogenerated WebInspectorUI files
https://bugs.webkit.org/show_bug.cgi?id=130846

Reviewed by Joseph Pecoraro.

  • WebInspectorUI.vcxproj/WebInspectorUIPostBuild.cmd: Files need to be placed in the

'Protocol' subdirectory of the WebInspectorUI directory.

10:50 AM Changeset in webkit [166362] by bfulgham@apple.com
  • 3 edits
    2 adds in trunk

Fix a crash caused by track insertion after load()
https://bugs.webkit.org/show_bug.cgi?id=130777

Reviewed by Eric Carlson.

Test: media/track/track-insert-after-load-crash.html

Based on the Blink change (patch by acolwell@chromium.org):
https://codereview.chromium.org/211373009/

Source/WebCore:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute): Remove stale LoadMediaResource flag after explicit load.

LayoutTests:

  • media/track/track-insert-after-load-crash-expected.txt: Added.
  • media/track/track-insert-after-load-crash.html: Added.
10:42 AM Changeset in webkit [166361] by andersca@apple.com
  • 6 edits
    3 moves in trunk/Source/WebKit2

Rename WKFrameHandle to _WKFrameHandle
https://bugs.webkit.org/show_bug.cgi?id=130847

Reviewed by Tim Horton.

  • Shared/API/Cocoa/_WKFrameHandle.h: Renamed from Source/WebKit2/Shared/API/Cocoa/WKFrameHandle.h.
  • Shared/API/Cocoa/_WKFrameHandle.mm: Renamed from Source/WebKit2/Shared/API/Cocoa/WKFrameHandle.mm.

(-[_WKFrameHandle dealloc]):
(-[_WKFrameHandle isEqual:]):
(-[_WKFrameHandle hash]):
(-[_WKFrameHandle _frameID]):
(-[_WKFrameHandle copyWithZone:]):
(+[_WKFrameHandle supportsSecureCoding]):
(-[_WKFrameHandle initWithCoder:]):
(-[_WKFrameHandle encodeWithCoder:]):
(-[_WKFrameHandle API::]):

  • Shared/API/Cocoa/_WKFrameHandleInternal.h: Renamed from Source/WebKit2/Shared/API/Cocoa/WKFrameHandleInternal.h.

(WebKit::wrapper):

  • Shared/Cocoa/APIObject.mm:

(API::Object::newObject):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.h:
  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:

(+[WKWebProcessPlugInFrame lookUpFrameFromHandle:]):
(-[WKWebProcessPlugInFrame handle]):

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFramePrivate.h:
9:47 AM Changeset in webkit [166360] by ap@apple.com
  • 32 edits
    3 adds in trunk/Source

Connection::dispatchOneMessage() can be re-entered while handling Cmd-key menu
equivalents, ASSERT(!_data->_keyDownEventBeingResent)
https://bugs.webkit.org/show_bug.cgi?id=130767
<rdar://problem/16307487>

Source/WebCore:

Added a wrapper for RunLoop::initializeMainThread that also adds modal run loop
mode to it on Mac.

  • CMakeLists.txt:
  • WebCore.exp.in:
  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.vcxproj/WebCore.vcxproj.filters:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/MainRunLoop.cpp: Added.

(WebCore::initializeMainRunLoop):

  • platform/MainRunLoop.h: Added.
  • platform/mac/MainRunLoop.mm: Added.

(WebCore::initializeMainRunLoop):

Source/WebKit/mac:

Reviewed by Darin Adler.

Switched to a WebCore wrapper for RunLoop::initializeMainRunLoop that adds
NSModalPanelRunLoopMode to RunLoop event source and timer modes.

  • Carbon/CarbonWindowAdapter.mm: (+[CarbonWindowAdapter initialize]):
  • History/WebBackForwardList.mm: (+[WebBackForwardList initialize]):
  • History/WebHistoryItem.mm: (+[WebHistoryItem initialize]):
  • Misc/WebCache.mm: (+[WebCache initialize]):
  • Misc/WebElementDictionary.mm: (+[WebElementDictionary initialize]):
  • Misc/WebIconDatabase.mm: (+[WebIconDatabase initialize]):
  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (+[WebHostedNetscapePluginView initialize]):
  • Plugins/WebBaseNetscapePluginView.mm:
  • Plugins/WebBasePluginPackage.mm:
  • Plugins/WebNetscapePluginView.mm: (+[WebNetscapePluginView initialize]):
  • WebCoreSupport/WebEditorClient.mm: (+[WebUndoStep initialize]):
  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebView/WebArchive.mm: (+[WebArchivePrivate initialize]):
  • WebView/WebDataSource.mm: (+[WebDataSource initialize]):
  • WebView/WebHTMLView.mm:

(+[WebHTMLViewPrivate initialize]):
(+[WebHTMLView initialize]):

  • WebView/WebPreferences.mm: (+[WebPreferences initialize]):
  • WebView/WebResource.mm: (+[WebResourcePrivate initialize]):
  • WebView/WebTextIterator.mm: (+[WebTextIteratorPrivate initialize]):
  • WebView/WebView.mm: (+[WebView initialize]):
  • WebView/WebViewData.mm: (+[WebViewPrivate initialize]):

Source/WebKit2:

Reviewed by Darin Adler.

  • Shared/WebKit2Initialize.cpp: (WebKit::InitializeWebKit2): Added NSModalPanelRunLoopMode

to RunLoop event source and timer modes.

Source/WTF:

Reviewed by Darin Adler.

Changed RunLoop to wake up and fire timers only in default run loop mode by default,
and added an ability to add more modes (can't use AppKit symbols in WTF).

In addition to this bug, the change also blocks modal alerts from appearing under
menus during menu tracking.

  • wtf/RunLoop.h:
  • wtf/cf/RunLoopCF.cpp:

(WTF::RunLoop::RunLoop):
(WTF::RunLoop::addModeForWakeUpAndTimers):
(WTF::RunLoop::TimerBase::start):

9:43 AM Changeset in webkit [166359] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Enable LLVM stackmap liveOuts computation
https://bugs.webkit.org/show_bug.cgi?id=130821

Reviewed by Andy Estes and Sam Weinig.

  • ftl/FTLStackMaps.cpp:

(JSC::FTL::StackMaps::Record::dump):

  • llvm/library/LLVMExports.cpp:

(initializeAndGetJSCLLVMAPI):

8:18 AM Changeset in webkit [166358] by k.czech@samsung.com
  • 3 edits in trunk/Source/WebCore

AX: Returns const reference to static string.
https://bugs.webkit.org/show_bug.cgi?id=130835

Reviewed by Mario Sanchez Prada.

Avoiding some unnecessary copies by returning const reference to static string.

No new tests. No behaviour change.

  • accessibility/AccessibilityMediaControls.cpp:

(WebCore::AccessibilityMediaControl::controlTypeName):
(WebCore::AccessibilityMediaControlsContainer::elementTypeName):

  • accessibility/AccessibilityMediaControls.h:

Change-Id: I05357d107c0df944a65c7fb97c8bbdec549202c4

8:11 AM Changeset in webkit [166357] by jaepark@webkit.org
  • 1 edit
    1 delete in trunk/Source/WebKit2

Remove LayerTreeContextCairo.cpp
https://bugs.webkit.org/show_bug.cgi?id=130807

Reviewed by Martin Robinson.

  • Shared/cairo/LayerTreeContextCairo.cpp: Removed.
7:39 AM Changeset in webkit [166356] by Manuel Rego Casasnovas
  • 2 edits in trunk/LayoutTests

[CSS Grid Layout] Remove unused variable in fast/css-grid-layout/implicit-position-dynamic-change.html
https://bugs.webkit.org/show_bug.cgi?id=130833

Reviewed by Sergio Villar Senin.

  • fast/css-grid-layout/implicit-position-dynamic-change.html: Inside

method updateImplicitGridColumn() we define a variable gridItem that
is not used. This patch removes it.

5:56 AM WebKitGTK/2.4.x edited by berto@igalia.com
(diff)
4:33 AM Changeset in webkit [166355] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit2

[EFL][WK2] Add tests of the set process model API
https://bugs.webkit.org/show_bug.cgi?id=130830

Patch by Maciej Florek <m.florek@samsung.com> on 2014-03-27
Reviewed by Gyuyoung Kim.

Implement unit tests to check, if process model API works
properly. When process model is set to EWK_PROCESS_MODEL_SHARED_SECONDARY,
there should be only one WebProcess. In case of EWK_PROCESS_MODEL_MULTIPLE_SECONDARY
setting, each WebView should have own process, as well as the network process
should exist.

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.cpp:

(EWK2UnitTest::EWK2UnitTestBase::EWK2UnitTestBase):
(EWK2UnitTest::EWK2UnitTestBase::SetUp):

  • UIProcess/API/efl/tests/UnitTestUtils/EWK2UnitTestBase.h:
  • UIProcess/API/efl/tests/test_ewk2_context.cpp:

(EWK2ContextTestMultipleProcesses::EWK2ContextTestMultipleProcesses):
(TEST_F):

2:45 AM Changeset in webkit [166354] by mihnea@adobe.com
  • 6 edits in trunk/Source/WebCore

[CSSRegions] Rename inNamedFlow flag to isNamedFlowContentNode flag
https://bugs.webkit.org/show_bug.cgi?id=130731

Reviewed by Andrei Bucur.

Currently, the inNamedFlow flag in Node class tells if a node is a content node, one that has a style with flow-into.
Since it is used only for those nodes and not propagated through hierarchy, i want to renamed it to a more meaningful name.
No new functionality, no new tests.

  • dom/ContainerNode.cpp:

(WebCore::destroyRenderTreeIfNeeded):

  • dom/Element.cpp:

(WebCore::Element::~Element):
(WebCore::Element::unregisterNamedFlowContentElement):

  • dom/Node.h:

(WebCore::Node::isNamedFlowContentNode):
(WebCore::Node::setIsNamedFlowContentNode):
(WebCore::Node::clearIsNamedFlowContentNode):

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::clearContentElements):
(WebCore::RenderNamedFlowThread::registerNamedFlowContentElement):
(WebCore::RenderNamedFlowThread::unregisterNamedFlowContentElement):
(WebCore::nextNodeInsideContentElement):

  • style/StyleResolveTree.cpp:

(WebCore::Style::attachChildren):
(WebCore::Style::resolveLocal):

1:03 AM Changeset in webkit [166353] by mihnea@adobe.com
  • 11 edits
    2 adds in trunk

[CSSRegions] Crash when cloning a region child with a content node child
https://bugs.webkit.org/show_bug.cgi?id=129811

Reviewed by David Hyatt.

Source/WebCore:

Collecting the children of a region in another named flow will be supported
again in the future and it will be revisited when we will implement the content
keyword: http://dev.w3.org/csswg/css-regions-1/#the-flow-into-property.
Remove the support for now as it introduces unnecessary complexity in the code
and potential wrong behavior.

Test: fast/regions/region-content-node-child-clone-crash.html

  • dom/Element.cpp:

(WebCore::Element::shouldMoveToFlowThread):
(WebCore::Element::clearStyleDerivedDataBeforeDetachingRenderer):

  • dom/Element.h:
  • dom/ElementRareData.h:

(WebCore::ElementRareData::ElementRareData):

  • rendering/FlowThreadController.cpp:
  • rendering/FlowThreadController.h:
  • style/StyleResolveTree.cpp:

(WebCore::Style::moveToFlowThreadIfNeeded):
(WebCore::Style::createRendererIfNeeded):

LayoutTests:

Collecting the children of a region in another named flow will be supported
again in the future and it will be revisited when we will implement the content
keyword: http://dev.w3.org/csswg/css-regions-1/#the-flow-into-property.
For now, skip the tests for that use case.

  • TestExpectations:
  • fast/regions/overflow-region-inline-expected.html: Expected file should not be region based.
  • fast/regions/region-content-node-child-clone-crash-expected.txt: Added.
  • fast/regions/region-content-node-child-clone-crash.html: Added.
  • fast/regions/unsplittable-nested-region-expected.html: Expected file should not be region based.
1:00 AM Changeset in webkit [166352] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

12:57 AM Changeset in webkit [166351] by Lucas Forschler
  • 1 copy in tags/Safari-538.25

New Tag.

12:17 AM Changeset in webkit [166350] by gyuyoung.kim@samsung.com
  • 3 edits in trunk/Source/WebCore

Remove unneeded mutable keyword in some member variables
https://bugs.webkit.org/show_bug.cgi?id=130813

Reviewed by Andreas Kling.

Some member variables have mutable keyword though they don't used by const function.
This patch removes them.

No new tests, no behavior changes. Just clean up.

  • storage/StorageAreaSync.h:
  • svg/animation/SVGSMILElement.h:
12:11 AM Changeset in webkit [166349] by commit-queue@webkit.org
  • 6 edits in trunk/Source

Unreviewed, rolling out r166296 and r166331.
https://bugs.webkit.org/show_bug.cgi?id=130822

caused some crashes and frequent assertion failures, and the
fix is going to take a little while (Requested by thorton on
#webkit).

Reverted changesets:

"[iOS WebKit2] Flush all surfaces after painting into all of
them, instead of after painting into each one"
https://bugs.webkit.org/show_bug.cgi?id=130768
http://trac.webkit.org/changeset/166296

Source/WebCore:

"Assertion failure in RemoteLayerBackingStore::flush"
https://bugs.webkit.org/show_bug.cgi?id=130810
http://trac.webkit.org/changeset/166331

Source/WebKit2:

"Assertion failure in RemoteLayerBackingStore::flush"
https://bugs.webkit.org/show_bug.cgi?id=130810
http://trac.webkit.org/changeset/166331

Mar 26, 2014:

11:50 PM Changeset in webkit [166348] by simon.fraser@apple.com
  • 6 edits in trunk/Source/WebCore

Fix failing scrolling tests by reverting to previous behavior where
the scrolling geometry for the main frame scrolling node was only
updated from frameViewLayoutUpdated() and no-where else.

  • WebCore.exp.in:
  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::updateScrollingNode):

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::updateScrollingNode):

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):
(WebCore::RenderLayerCompositor::detachScrollCoordinatedLayer): Deleted.

11:22 PM Changeset in webkit [166347] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

HTMLConverter::_processText is slow because it walks up ancestor elements
https://bugs.webkit.org/show_bug.cgi?id=130820

Reviewed by Sam Weinig.

Avoid walking up the tree from each text node by caching the aggregated attributed strings for each element.
Also compute the attributed strings top-down to avoid calling mutableCopy in every iteration.

This reduces the runtime of Interactive/CopyAll.html from 15s to 13s (15%).

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_attributesForElement):
(HTMLConverter::attributesForElement):
(HTMLConverter::aggregatedAttributesForAncestors):
(HTMLConverter::_processText):

11:13 PM Changeset in webkit [166346] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Blind speculative iOS build fix.

  • WebProcess/WebPage/ios/WebPageIOS.mm:

(WebKit::WebPage::viewportConfigurationChanged):

10:05 PM Changeset in webkit [166345] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Parse stackmaps liveOuts
https://bugs.webkit.org/show_bug.cgi?id=130801

Reviewed by Geoffrey Garen.

This just adds the code to parse them but doesn't do anything with them, yet.

  • ftl/FTLLocation.cpp:

(JSC::FTL::Location::forStackmaps):

  • ftl/FTLLocation.h:

(JSC::FTL::Location::forRegister):
(JSC::FTL::Location::forIndirect):

  • ftl/FTLStackMaps.cpp:

(JSC::FTL::StackMaps::Location::parse):
(JSC::FTL::StackMaps::Location::dump):
(JSC::FTL::StackMaps::LiveOut::parse):
(JSC::FTL::StackMaps::LiveOut::dump):
(JSC::FTL::StackMaps::Record::parse):
(JSC::FTL::StackMaps::Record::dump):

  • ftl/FTLStackMaps.h:
9:42 PM Changeset in webkit [166344] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Fix iOS build.

  • editing/cocoa/HTMLConverter.mm:

(_font):

9:31 PM Changeset in webkit [166343] by benjamin@webkit.org
  • 4 edits in trunk/Source/WebKit2

[iOS][WK2] <rdar://problem/16265272> REGRESSION (WebKit2): Some pages appear blank until you scroll
https://bugs.webkit.org/show_bug.cgi?id=130819

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

When loading a new page, we never define the unobscured rect and exposed rect on the new frame.
As a result, there is nothing to render.

It uses to work thanks to dumb luck and a bug in Safari updating the visibleContentRects from
the UIProcess. Now that the bug is gone, "dumb luck" is not reliable enough to get the content rects :)

What this patch does is save if we have ever received new rects from the UI. If we have not, create them
based on the minimum layout size. This works because we know Safari shows the minimum layout size by default
and will tell us if it changes the obscured rects.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):
(WebKit::WebPage::didCommitLoad):

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

(WebKit::WebPage::viewportConfigurationChanged):
(WebKit::WebPage::updateVisibleContentRects):

9:16 PM Changeset in webkit [166342] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Make _processText and _traverseNode in HTMLConverter more efficient
https://bugs.webkit.org/show_bug.cgi?id=130769

Reviewed by Sam Weinig.

Rewrote a bunch of code in C++ and avoided creating wrappers.
This reduces the runtime of Interactive/CopyAll.html from ~16.5s to 15s.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverterCaches::isAncestorsOfStartToBeConverted):
(HTMLConverter::HTMLConverter):
(HTMLConverter::~HTMLConverter):
(HTMLConverter::_processElement):
(HTMLConverter::_processText):
(HTMLConverter::_traverseNode):
(HTMLConverter::_traverseFooterNode):
(HTMLConverterCaches::cacheAncestorsOfStartToBeConverted):
(HTMLConverter::_loadFromDOMRange):

9:14 PM Changeset in webkit [166341] by cavalcantii@gmail.com
  • 15 edits in trunk/Source/WebCore

FEGaussianBlur: unify and const-ify calculateKernelSize
https://bugs.webkit.org/show_bug.cgi?id=130779

Some methods can benefit of using const refs as also make sense to
unify the interface (i.e. parameters) in calculateKernelSize/Unscaled.

FilterEffect::filter() will now return a reference, which helps since
its descendants were accessing methods into the pointer without testing
for it.

Reviewed by Simon Fraser.

No new tests, no changes on behavior.

  • platform/graphics/filters/FEDisplacementMap.cpp:

(WebCore::FEDisplacementMap::platformApplySoftware):

  • platform/graphics/filters/FEDropShadow.cpp:

(WebCore::FEDropShadow::determineAbsolutePaintRect):
(WebCore::FEDropShadow::platformApplySoftware):

  • platform/graphics/filters/FEGaussianBlur.cpp:

(WebCore::FEGaussianBlur::calculateUnscaledKernelSize):
(WebCore::FEGaussianBlur::calculateKernelSize):
(WebCore::FEGaussianBlur::determineAbsolutePaintRect):
(WebCore::FEGaussianBlur::platformApplySoftware):

  • platform/graphics/filters/FEGaussianBlur.h:
  • platform/graphics/filters/FEMorphology.cpp:

(WebCore::FEMorphology::determineAbsolutePaintRect):
(WebCore::FEMorphology::platformApplySoftware):

  • platform/graphics/filters/FEOffset.cpp:

(WebCore::FEOffset::determineAbsolutePaintRect):
(WebCore::FEOffset::platformApplySoftware):

  • platform/graphics/filters/FETile.cpp:

(WebCore::FETile::platformApplySoftware):

  • platform/graphics/filters/FETurbulence.cpp:

(WebCore::FETurbulence::fillRegion):

  • platform/graphics/filters/Filter.h:

(WebCore::Filter::applyHorizontalScale):
(WebCore::Filter::applyVerticalScale):

  • platform/graphics/filters/FilterEffect.h:

(WebCore::FilterEffect::filter):

  • platform/graphics/filters/SourceAlpha.cpp:

(WebCore::SourceAlpha::determineAbsolutePaintRect):
(WebCore::SourceAlpha::platformApplySoftware):

  • platform/graphics/filters/SourceGraphic.cpp:

(WebCore::SourceGraphic::determineAbsolutePaintRect):
(WebCore::SourceGraphic::platformApplySoftware):

  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:

(WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::determineAbsolutePaintRect):
(WebCore::FEImage::platformApplySoftware):

8:55 PM Changeset in webkit [166340] by andersca@apple.com
  • 2 edits
    2 adds in trunk/Source/WebKit2

Add a _WKScriptWorld class
https://bugs.webkit.org/show_bug.cgi?id=130817

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/_WKScriptWorld.h: Added.
  • UIProcess/API/Cocoa/_WKScriptWorld.mm: Added.

(generateWorldID):
(+[_WKScriptWorld defaultWorld]):
(-[_WKScriptWorld init]):
(-[_WKScriptWorld _initWithWorldID:]):

  • WebKit2.xcodeproj/project.pbxproj:
8:53 PM Changeset in webkit [166339] by simon.fraser@apple.com
  • 2 edits in trunk/Source/WebCore

Make sure childContainmentLayer is parented
https://bugs.webkit.org/show_bug.cgi?id=130808

Reviewed by Tim Horton.

m_childContainmentLayer was never parented if the page
created no other compositing layers, which left a dangling
GraphicsLayer which in turn confused UI-side compositing a little.
Fix by always parenting this layer.

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):

8:46 PM Changeset in webkit [166338] by andersca@apple.com
  • 4 edits in trunk/Source/WebKit2

Rename a delegate method to -webView:didFinishNavigation:
https://bugs.webkit.org/show_bug.cgi?id=130814

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKNavigationDelegate.h:
  • UIProcess/Cocoa/NavigationState.h:
  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::NavigationState::setNavigationDelegate):
(WebKit::NavigationState::LoaderClient::didFinishLoadForFrame):

8:45 PM Changeset in webkit [166337] by Brian Burg
  • 3 edits in trunk/Source/WebCore

Web Replay: disable page cache during capture/replay
https://bugs.webkit.org/show_bug.cgi?id=130672

Reviewed by Timothy Hatcher.

Save, set, and restore page cache settings at the correct times.

No new tests. If this code fails, then the tests for network replay will fail.

  • replay/ReplayController.cpp:

(WebCore::ReplayController::setForceDeterministicSettings): Added.
(WebCore::ReplayController::startCapturing):
(WebCore::ReplayController::stopCapturing):
(WebCore::ReplayController::cancelPlayback):
(WebCore::ReplayController::replayToPosition):

  • replay/ReplayController.h:
8:41 PM Changeset in webkit [166336] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

[iOS WebKit2] Crashes on swipe
<rdar://problem/16440867>

Reviewed by Benjamin Poulain.

  • UIProcess/ios/ViewGestureControllerIOS.mm:

(WebKit::ViewGestureController::beginSwipeGesture):
Get the IOSurfaceRef from the WebCore::IOSurface.

8:22 PM Changeset in webkit [166335] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Convert more of HTMLConverter to C++
https://bugs.webkit.org/show_bug.cgi?id=130811

Reviewed by Anders Carlsson.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::HTMLConverter):
(HTMLConverter::~HTMLConverter):
(HTMLConverter::_blockLevelElementForNode):
(HTMLConverter::_colorForElement):
(HTMLConverter::_computedAttributesForElement):
(HTMLConverter::_attributesForElement):
(HTMLConverter::_fillInBlock):
(HTMLConverter::_enterElement):
(HTMLConverter::_addTableForElement):
(HTMLConverter::_addTableCellForElement):
(HTMLConverter::_processElement):
(HTMLConverter::_exitElement):
(HTMLConverter::_getFloat): Deleted.
(HTMLConverter::_elementIsBlockLevel): Deleted.
(HTMLConverter::_elementHasOwnBackgroundColor): Deleted.
(HTMLConverter::_colorForNode): Deleted.

7:25 PM Changeset in webkit [166334] by simon.fraser@apple.com
  • 2 edits in trunk/Source/WebKit2

Fix the build: include UIKit headers inside the iOS #ifdef.

  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
7:15 PM Changeset in webkit [166333] by simon.fraser@apple.com
  • 15 edits in trunk/Source

Hook up -webkit-overflow-scrolling:touch for iOS WK2
https://bugs.webkit.org/show_bug.cgi?id=130809

Reviewed by Tim Horton.

Source/WebCore:

Get -webkit-overflow-scrolling: touch working for iOS WK2.

  • WebCore.exp.in:
  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::updateScrollingNode):
Send in ScrollingGeometry when we update scrolling nodes.

  • page/scrolling/AsyncScrollingCoordinator.h:
  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::updateScrollingNode):

  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.h:

Need to get to the scrolling layer in a subclass.
(WebCore::ScrollingTreeScrollingNodeIOS::scrollLayer):

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::hasAcceleratedTouchScrolling): Remove code
that temporarily disabled touch-scrolling.

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer): When we
update scrolling nodes, send in the right scrolling geometry.

Source/WebKit2:

  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h:
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::updateAfterChildren):
Set the content size of the UIScrollVIew based on the geometry.

  • UIProcess/ios/RemoteLayerTreeHostIOS.mm:

(WebKit::RemoteLayerTreeHost::createLayer): Make a UIScrollView if the
layer properties tell us that we have the scrolling behavior.

  • UIProcess/ios/WKContentView.mm:

(-[WKContentView initWithFrame:context:WebKit::configuration:WebKit::webView:]):
We need to allow user interaction in the _rootContentView so that events get to
nested UIScrollViews (this could be optimized in future).

  • UIProcess/mac/RemoteLayerTreeHost.h:
  • UIProcess/mac/RemoteLayerTreeHost.mm:

(WebKit::RemoteLayerTreeHost::updateLayerTree):
(WebKit::RemoteLayerTreeHost::createLayer): Need to pass RemoteLayerTreeTransaction::LayerProperties
in so we can get at the custom behavior.

6:54 PM Changeset in webkit [166332] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add -[WKWebView stopLoading]
https://bugs.webkit.org/show_bug.cgi?id=130812

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView stopLoading]):

6:48 PM Changeset in webkit [166331] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

Assertion failure in RemoteLayerBackingStore::flush
https://bugs.webkit.org/show_bug.cgi?id=130810
<rdar://problem/16439276>

Reviewed by Simon Fraser.

  • Shared/mac/RemoteLayerBackingStore.mm:

(RemoteLayerBackingStore::flush):
We don't always have backing store to flush, if platformCALayerDrawsContent() is false.
We also can't assert that we have a back surface, because the very first paint will not.

5:50 PM Changeset in webkit [166330] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Build fix after r166307.

Not reviewed.

  • runtime/JSCell.h:
  • The inline function isAPIValueWrapper() should not be exported. This was causing a linkage error when building for 32-bit x86 on Mac.
4:58 PM Changeset in webkit [166329] by timothy@apple.com
  • 2 edits in trunk/Source/WebCore

Modernize the loops in InspectorPageAgent.cpp.

Also moves the check for hiddenFromInspector to a lower level.
This hides hidden resources from more places.

https://bugs.webkit.org/show_bug.cgi?id=130803

Reviewed by Joseph Pecoraro.

  • inspector/InspectorPageAgent.cpp:

(WebCore::buildArrayForCookies):
(WebCore::cachedResourcesForFrame):
(WebCore::allResourcesURLsForFrame):
(WebCore::InspectorPageAgent::getCookies):
(WebCore::InspectorPageAgent::searchInResources):
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
(WebCore::InspectorPageAgent::loaderDetachedFromFrame):
(WebCore::InspectorPageAgent::buildObjectForFrameTree):

4:51 PM Changeset in webkit [166328] by aestes@apple.com
  • 6 edits in trunk

[Cocoa] Expose DownloadClient::didFail() and DownloadClient::didCancel()
https://bugs.webkit.org/show_bug.cgi?id=130805

Reviewed by Dan Bernstein.

Source/WebKit2:

  • UIProcess/API/Cocoa/_WKDownloadDelegate.h:
  • UIProcess/Cocoa/DownloadClient.h:
  • UIProcess/Cocoa/DownloadClient.mm:

(WebKit::DownloadClient::DownloadClient):
(WebKit::DownloadClient::didFail):
(WebKit::DownloadClient::didCancel):

Tools:

  • TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:

(-[DownloadDelegate _download:didReceiveResponse:]):
(-[DownloadDelegate _downloadDidFinish:]):
(runTest):
(TEST):
(-[FailingDownloadDelegate _downloadDidFinish:]):
(-[FailingDownloadDelegate _download:didFailWithError:]):
(-[FailingDownloadDelegate _downloadDidCancel:]):
(-[CancelledDownloadDelegate _downloadDidStart:]):
(-[CancelledDownloadDelegate _downloadDidFinish:]):
(-[CancelledDownloadDelegate _download:didFailWithError:]):
(-[CancelledDownloadDelegate _downloadDidCancel:]):
(-[DownloadDelegate initWithSourceURL:]): Deleted.
(-[DownloadDelegate sourceURL]): Deleted.
(runTestWithNavigationDelegate): Deleted.

4:36 PM Changeset in webkit [166327] by andersca@apple.com
  • 3 edits in trunk/Tools

Change MiniBrowser to hold on to window controllers instead of windows
https://bugs.webkit.org/show_bug.cgi?id=130797

Reviewed by Oliver Hunt.

  • MiniBrowser/mac/AppDelegate.h:
  • MiniBrowser/mac/AppDelegate.m:

(-[BrowserAppDelegate init]):
(-[BrowserAppDelegate newWindow:]):
(-[BrowserAppDelegate browserWindowWillClose:]):
(-[BrowserAppDelegate applicationWillTerminate:]):
(-[BrowserAppDelegate frontmostBrowserWindowController]):

4:35 PM Changeset in webkit [166326] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

-[WKWebProcessPlugInNodeHandle HTMLInputElementIsUserEdited] and -HTMLTextAreaElementIsUserEdited do not return the correct values.

https://bugs.webkit.org/show_bug.cgi?id=130804

Patch by Cody Krieger <cjk@apple.com> on 2014-03-26
Reviewed by Dan Bernstein.

The existing implementations of these methods are mis-cased
("HTMLInputELementIsUserEdited" and "HTMLTextAreaELementIsUserEdited" —
note the "EL" in both cases). This results in us getting
auto-synthesized getters for the HTMLInputElementIsUserEdited and
HTMLTextAreaElementIsUserEdited properties, which will return NO
unconditionally.

  • WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:

Fix the capitalization of -HTMLInputElementIsUserEdited and
-HTMLTextAreaElementIsUserEdited.

4:26 PM Changeset in webkit [166325] by thiago.lacerda@openbossa.org
  • 7 edits
    1 copy in trunk/Source/WebCore

Add platform implementation for RTCOfferAnswerOptions and RTCOfferOptions
https://bugs.webkit.org/show_bug.cgi?id=130689

Reviewed by Eric Carlson.

RTCOfferAnswerOptions and RTCOfferOptions objects were being passed to platform class, causing a layer
violation.

  • Modules/mediastream/RTCOfferAnswerOptions.cpp:

(WebCore::RTCOfferAnswerOptions::initialize):
(WebCore::RTCOfferOptions::initialize):

  • Modules/mediastream/RTCOfferAnswerOptions.h:

(WebCore::RTCOfferAnswerOptions::requestIdentity):
(WebCore::RTCOfferAnswerOptions::privateOfferAnswerOptions):
(WebCore::RTCOfferAnswerOptions::RTCOfferAnswerOptions):
(WebCore::RTCOfferOptions::offerToReceiveVideo):
(WebCore::RTCOfferOptions::offerToReceiveAudio):
(WebCore::RTCOfferOptions::voiceActivityDetection):
(WebCore::RTCOfferOptions::iceRestart):
(WebCore::RTCOfferOptions::privateOfferOptions):
(WebCore::RTCOfferOptions::RTCOfferOptions):

  • Modules/mediastream/RTCPeerConnection.cpp:

(WebCore::RTCPeerConnection::createOffer):
(WebCore::RTCPeerConnection::createAnswer):

  • platform/mediastream/RTCOfferAnswerOptionsPrivate.h: Added.
  • platform/mediastream/RTCPeerConnectionHandler.h:
  • platform/mock/RTCPeerConnectionHandlerMock.cpp:

(WebCore::RTCPeerConnectionHandlerMock::createOffer):
(WebCore::RTCPeerConnectionHandlerMock::createAnswer):

  • platform/mock/RTCPeerConnectionHandlerMock.h:
4:17 PM Changeset in webkit [166324] by matthew_hanson@apple.com
  • 1 edit
    1 delete in branches/safari-537.75-branch/LayoutTests

Remove artifacts of local changes that made it into a versioning commit.

3:43 PM Changeset in webkit [166323] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

Device scale factor should always be greater than 0.
https://bugs.webkit.org/show_bug.cgi?id=130798

Reviewed by David Kilzer.

Rendering context requires a device scale factor > 0 so that we can map CSS pixels
to device pixels properly. Neither 0 nor a negative device pixel ratio are considered to be valid.

  • page/Page.cpp:

(WebCore::Page::setDeviceScaleFactor):

3:05 PM Changeset in webkit [166322] by mmaxfield@apple.com
  • 4 edits
    2 adds in trunk

Skipping underlines disregard points completely inside the underline rect
https://bugs.webkit.org/show_bug.cgi?id=130800

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2014-03-26
Reviewed by Dean Jackson.

Source/WebCore:

When determining bounds for underline skipping, endpoints of glyph contours
that lie entirely within the rect of the underline are ignored. This patch
makes these points affect the skipping regions the same way that intersections
do.

Test: fast/css3-text/css3-text-decoration/text-decoration-skip/glyph-inside-underline.html

  • platform/graphics/mac/FontMac.mm:

(WebCore::updateX): Refactored common code into a function
(WebCore::findPathIntersections): Test for endpoints which lie entirely within
the underline bounds

LayoutTests:

This test draws a glyph entire inside the underline. It should render the same
as it would without any underline at all.

  • fast/css3-text/css3-text-decoration/text-decoration-skip/resources/Litherum.svg: Added

an underscore glyph that would lie entirely within an underline

  • fast/css3-text/css3-text-decoration/text-decoration-skip/glyph-inside-underline.html:
3:02 PM Changeset in webkit [166321] by matthew_hanson@apple.com
  • 5 edits
    28 adds in branches/safari-537.75-branch

Versioning.

3:00 PM Changeset in webkit [166320] by matthew_hanson@apple.com
  • 1 copy in tags/Safari-537.75.14

New tag.

2:45 PM Changeset in webkit [166319] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed. iOS build fix after r166312. Soft link CMTimeRangeGetEnd.

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
2:32 PM Changeset in webkit [166318] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose DownloadProxy::cancel()
https://bugs.webkit.org/show_bug.cgi?id=130799

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/_WKDownload.h:
  • UIProcess/API/Cocoa/_WKDownload.mm:

(-[_WKDownload cancel]):

2:20 PM Changeset in webkit [166317] by timothy@apple.com
  • 13 edits in trunk/Source

Propagate the hiddenFromInspector flag on ResourceRequest in
places when a new request a made or passed between processes.

https://bugs.webkit.org/show_bug.cgi?id=130741

Reviewed by Joseph Pecoraro.

Source/WebCore:

  • WebCore.exp.in: Updated symbols for updateFromDelegatePreservingOldProperties.
  • platform/network/cf/ResourceRequest.h:
  • platform/network/cf/ResourceRequestCFNet.cpp:

(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties): Added.
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody): Deleted.

  • platform/network/curl/ResourceRequest.h:

(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties): Added.
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody): Deleted.

  • platform/network/mac/ResourceRequestMac.mm:

(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties): Added.
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody): Deleted.

  • platform/network/soup/ResourceRequest.h:

(WebCore::ResourceRequest::updateFromDelegatePreservingOldProperties): Added.
(WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody): Deleted.

Source/WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.mm:

(WebFrameLoaderClient::dispatchWillSendRequest): Copy hiddenFromInspector to
the new request.

Source/WebKit2:

  • NetworkProcess/NetworkResourceLoader.cpp:

(WebKit::NetworkResourceLoader::continueWillSendRequest): Use updateFromDelegatePreservingOldProperties.

  • Shared/WebCoreArgumentCoders.cpp:

(IPC::ArgumentCoder<ResourceRequest>::encode): Added hiddenFromInspector support.
(IPC::ArgumentCoder<ResourceRequest>::decode): Ditto.

  • WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:

(WebKit::InjectedBundlePageResourceLoadClient::willSendRequestForFrame): Ditto.

2:06 PM Changeset in webkit [166316] by zoltan@webkit.org
  • 16 edits in trunk/Source/WebCore

[CSS Shapes] Remove no-longer-used shape-inside geometry code
https://bugs.webkit.org/show_bug.cgi?id=130740

Reviewed by David Hyatt.

This patch removes shape-padding support, since it can be used only with shape-inside.
Shape-inside support has been removed in r166301.

No new tests needed, existing tests have been removed by r166301.

  • rendering/shapes/BoxShape.cpp:

(WebCore::BoxShape::shapePaddingLogicalBoundingBox): Deleted.
(WebCore::BoxShape::shapePaddingBounds): Deleted.
(WebCore::BoxShape::getIncludedIntervals): Deleted.
(WebCore::BoxShape::firstIncludedIntervalLogicalTop): Deleted.

  • rendering/shapes/BoxShape.h:
  • rendering/shapes/PolygonShape.cpp:

(WebCore::leftSide): Deleted.
(WebCore::isReflexVertex): Deleted.
(WebCore::computeShapePaddingBounds): Deleted.
(WebCore::PolygonShape::shapePaddingBounds): Deleted.
(WebCore::PolygonShape::getIncludedIntervals): Deleted.
(WebCore::firstFitRectInPolygon): Deleted.
(WebCore::aboveOrToTheLeft): Deleted.
(WebCore::PolygonShape::firstIncludedIntervalLogicalTop): Deleted.

  • rendering/shapes/PolygonShape.h:

(WebCore::PolygonShape::PolygonShape):

  • rendering/shapes/RasterShape.cpp:

(WebCore::RasterShapeIntervals::firstIncludedIntervalY): Deleted.
(WebCore::RasterShapeIntervals::getIncludedIntervals): Deleted.
(WebCore::RasterShape::paddingIntervals): Deleted.
(WebCore::RasterShape::getIncludedIntervals): Deleted.
(WebCore::RasterShape::firstIncludedIntervalLogicalTop): Deleted.

  • rendering/shapes/RasterShape.h:
  • rendering/shapes/RectangleShape.cpp:

(WebCore::ellipseYIntercept): Deleted.
(WebCore::RectangleShape::shapePaddingBounds): Deleted.
(WebCore::RectangleShape::getIncludedIntervals): Deleted.
(WebCore::cornerInterceptForWidth): Deleted.
(WebCore::RectangleShape::firstIncludedIntervalLogicalTop): Deleted.

  • rendering/shapes/RectangleShape.h:
  • rendering/shapes/Shape.cpp:

(WebCore::Shape::createShape):
(WebCore::Shape::createRasterShape):
(WebCore::Shape::createBoxShape):

  • rendering/shapes/Shape.h:

(WebCore::Shape::lineOverlapsShapePaddingBounds): Deleted.
(WebCore::Shape::shapePadding): Deleted.

  • rendering/shapes/ShapeInfo.cpp:

(WebCore::ShapeInfo<RenderType>::computedShape):

  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:
2:04 PM Changeset in webkit [166315] by aestes@apple.com
  • 3 edits in trunk/Source/WebKit2

[Cocoa] Expose DownloadProxy::request()
https://bugs.webkit.org/show_bug.cgi?id=130796

Reviewed by Anders Carlsson.

  • UIProcess/API/Cocoa/_WKDownload.h:
  • UIProcess/API/Cocoa/_WKDownload.mm:

(-[_WKDownload request]):

1:56 PM Changeset in webkit [166314] by andersca@apple.com
  • 2 edits in trunk/Source/WebKit2

Pass a real FrameLoadRequest to Chrome::createWindow
https://bugs.webkit.org/show_bug.cgi?id=130795

Reviewed by Dan Bernstein.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchCreatePage):

1:49 PM Changeset in webkit [166313] by fpizlo@apple.com
  • 5 edits
    2 adds in trunk/Source/JavaScriptCore

Reasoning about DWARF register numbers should be moved out of FTL::Location
https://bugs.webkit.org/show_bug.cgi?id=130792

Reviewed by Oliver Hunt.

Moving this code makes it possible for things other than FTL::Location to reason about
DWARF register encoding. This refactoring also appears to reduce some code duplication
and makes FTLLocation.cpp cleaner.

(JSC::FTL::fixFunctionBasedOnStackMaps):

  • ftl/FTLDWARFRegister.cpp: Added.

(JSC::FTL::DWARFRegister::reg):
(JSC::FTL::DWARFRegister::dump):

  • ftl/FTLDWARFRegister.h: Added.

(JSC::FTL::DWARFRegister::DWARFRegister):
(JSC::FTL::DWARFRegister::dwarfRegNum):

  • ftl/FTLLocation.cpp:

(JSC::FTL::Location::dump):
(JSC::FTL::Location::isGPR):
(JSC::FTL::Location::gpr):
(JSC::FTL::Location::isFPR):
(JSC::FTL::Location::fpr):

  • ftl/FTLLocation.h:

(JSC::FTL::Location::hasDwarfReg):
(JSC::FTL::Location::dwarfReg):

1:17 PM Changeset in webkit [166312] by commit-queue@webkit.org
  • 12 edits in trunk/Source

Implement hasLiveStreamingContent property in WebAVPlayerController
https://bugs.webkit.org/show_bug.cgi?id=128684

Patch by Jeremy Jones <jeremyj@apple.com> on 2014-03-26
Reviewed by Simon Fraser.

Source/WebCore:

  • WebCore.exp.in:

Add export for WebVideoFullscreenInterfaceAVKit::setSeekableRanges().

  • platform/ios/WebVideoFullscreenInterface.h:

Add setSeekableRanges()

  • platform/ios/WebVideoFullscreenInterfaceAVKit.h:

Add setSeekableRanges()

  • platform/ios/WebVideoFullscreenInterfaceAVKit.mm:

Remove vestigial playerLayer property. Add seekableTimeRanges property.

(-[WebAVPlayerController dealloc]):
Release _seekableTimeRanges.
Remove references to _playerLayer.

(-[WebAVPlayerController hasLiveStreamingContent]):
Implement based on duration. Live stream has an infinite duration.

(+[WebAVPlayerController keyPathsForValuesAffectingHasLiveStreamingContent]):
Describe dependent keys for computed property hasLiveStreamingContent.

(-[WebAVPlayerController skipBackwardThirtySeconds:]):
Seek back 30 seconds if that time is in the seekable ranges.

(-[WebAVPlayerController gotoEndOfSeekableRanges:]):
Jump to live by going to the of the seekable ranges.

(WebVideoFullscreenInterfaceAVKit::setSeekableRanges):
Convert TimeRange to CMTimeRange.

  • platform/ios/WebVideoFullscreenModelMediaElement.mm:

(WebVideoFullscreenModelMediaElement::setMediaElement):
Set initial seekable ranges.

(WebVideoFullscreenModelMediaElement::handleEvent):
Update seekable ranges when time changes.

Source/WebKit2:

Plumb through the seekable ranges to the fullscreen interface.

  • UIProcess/ios/WebVideoFullscreenManagerProxy.h:

Add declaration for setSeekableRangesVector()

  • UIProcess/ios/WebVideoFullscreenManagerProxy.messages.in:

Add interface SetSeekableRangesVector()

  • UIProcess/ios/WebVideoFullscreenManagerProxy.mm:

(WebKit::WebVideoFullscreenManagerProxy::setSeekableRangesVector):
Add setSeekableRangesVector that translates the vector into a TimeRanges and calls setSeekableRanges()

  • WebProcess/ios/WebVideoFullscreenManager.h:

Add setSeekableRanges()

  • WebProcess/ios/WebVideoFullscreenManager.mm:

(WebKit::WebVideoFullscreenManager::setSeekableRanges):
setSeekableRanges() converts TimeRanges to Vector and calls SetSeekableRangesVector()

12:52 PM Changeset in webkit [166311] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebCore

Fix OS X build.

  • WebCore.exp.in: Add missing export symbol.
12:42 PM Changeset in webkit [166310] by simon.fraser@apple.com
  • 4 edits in trunk/Source/WebCore

Fix the Windows build. Add a no-op impl for Mac non-UI-side.

  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/win/PlatformCALayerWin.cpp:

(PlatformCALayerWin::PlatformCALayerWin):

  • platform/graphics/ca/win/PlatformCALayerWin.h:
12:36 PM Changeset in webkit [166309] by simon.fraser@apple.com
  • 3 edits
    2 adds in trunk

REGRESSION (r155977): matrix animations no longer animate
https://bugs.webkit.org/show_bug.cgi?id=130789
<rdar://problem/15650946>

Source/WebCore:

Reviewed by Dean Jackson.

r155977 erroneously removed two lines that set the end points for
matrix animations (used when transform lists don't match), so
put them back.

Also don't repaint when updateContentsScale()
is called and doesn't change the contents scale.

Test: compositing/animation/matrix-animation.html

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::updateRootRelativeScale):
(WebCore::GraphicsLayerCA::setTransformAnimationEndpoints):
(WebCore::GraphicsLayerCA::updateContentsScale):

LayoutTests:

Reviewed by Dean Jackson.

Add test for fill-fowards animation with mismatched transform lists.

  • compositing/animation/matrix-animation-expected.html: Added.
  • compositing/animation/matrix-animation.html: Added.
12:36 PM Changeset in webkit [166308] by simon.fraser@apple.com
  • 15 edits in trunk/Source

Add a custom behavior flag to GraphicsLayer, piped down to PlatformCALayer, for scrolling layers
https://bugs.webkit.org/show_bug.cgi?id=130778

Reviewed by Tim Horton.

Make it possible to put a "custom behavior" flag on a layer so that,
with UI-side compositing, we know to create a specific type of
layer or view for that GraphicsLayer.

Source/WebCore:

  • WebCore.exp.in:
  • platform/graphics/GraphicsLayer.cpp:

(WebCore::GraphicsLayer::GraphicsLayer):

  • platform/graphics/GraphicsLayer.h:

(WebCore::GraphicsLayer::setCustomBehavior):
(WebCore::GraphicsLayer::customBehavior):

  • platform/graphics/ca/GraphicsLayerCA.cpp:

(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers):
(WebCore::GraphicsLayerCA::updateCustomBehavior):
(WebCore::GraphicsLayerCA::setCustomBehavior):

  • platform/graphics/ca/GraphicsLayerCA.h:
  • platform/graphics/ca/PlatformCALayer.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.h:
  • platform/graphics/ca/mac/PlatformCALayerMac.mm:

(PlatformCALayerMac::PlatformCALayerMac):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::updateScrollingLayers):

Source/WebKit2:

  • Shared/mac/RemoteLayerTreeTransaction.h:
  • Shared/mac/RemoteLayerTreeTransaction.mm:

(WebKit::RemoteLayerTreeTransaction::LayerProperties::LayerProperties):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::encode):
(WebKit::RemoteLayerTreeTransaction::LayerProperties::decode):
(WebKit::dumpChangedLayers):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.cpp:

(PlatformCALayerRemote::customBehavior):
(PlatformCALayerRemote::updateCustomBehavior):

  • WebProcess/WebPage/mac/PlatformCALayerRemote.h:
12:21 PM Changeset in webkit [166307] by bfulgham@apple.com
  • 7 edits in trunk/Source

Source/JavaScriptCore: Unreviewed build fix.

  • runtime/JSCell.h: VS2013 confused about argument type.

Source/WebCore: Unreviewed test correction.

Because of the way DRT on Windows links to WebCore, having the implementaion of the update
method in the header caused a runtime failure due to duplicate symbols being bound to the
compilation unit.

  • accessibility/AXObjectCache.cpp:

(WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility): Moved from header.

  • accessibility/AXObjectCache.h:

(WebCore::AXObjectCache::setEnhancedUserInterfaceAccessibility): Deleted.

Source/WebKit: Unreviewed build/test correction.

  • WebKit.vcxproj/WebKitExportGenerator/WebKitExports.def.in: Export the AXObjectCache::setEnhancedUserInterfaceEnabled

set function.

12:20 PM Changeset in webkit [166306] by matthew_hanson@apple.com
  • 2 edits in branches/safari-537.75-branch/Source/WebCore

Remove extraneous ! from merge of r166304.

12:17 PM Changeset in webkit [166305] by matthew_hanson@apple.com
  • 2 edits in branches/safari-537.75-branch/Source/WebCore

Merge r166304.

11:37 AM Changeset in webkit [166304] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

REGRESSION(r162679): Poster image visible under the video
https://bugs.webkit.org/show_bug.cgi?id=130783

Reviewed by Simon Fraser.

In the listed revision, we started checking for isRenderImage()
instead of isImage(). RenderMedias return 'true' for the first
but 'false' for the second. Change the if() statement to check
for isRenderMedia() in addition to !isRenderImage().

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isDirectlyCompositedImage):

11:35 AM Changeset in webkit [166303] by Antti Koivisto
  • 3 edits
    2 adds in trunk

Render tree construction is O(N2) in number of siblings
https://bugs.webkit.org/show_bug.cgi?id=129065

Source/WebCore:

Reviewed by Darin Adler.

When adding a new renderer to the tree we would search for the correct render tree
position by traversing DOM children forward to find something that already has a renderer.
In common case there is no such renderer. This would be repeated for each inserted renderer
leading to O(n2) in respect to child node count.

This patch caches the computed render tree insertion position and passes it to siblings.
Until the cached position is reached it can be used for all new renderers.

Test: perf/sibling-renderer-On2.html

  • style/StyleResolveTree.cpp:

(WebCore::Style::RenderTreePosition::parent):
(WebCore::Style::RenderTreePosition::RenderTreePosition):
(WebCore::Style::RenderTreePosition::canInsert):
(WebCore::Style::RenderTreePosition::insert):
(WebCore::Style::RenderTreePosition::computeNextSibling):
(WebCore::Style::RenderTreePosition::invalidateNextSibling):
(WebCore::Style::styleForElement):
(WebCore::Style::elementInsideRegionNeedsRenderer):
(WebCore::Style::createRendererIfNeeded):
(WebCore::Style::createTextRendererIfNeeded):
(WebCore::Style::attachTextRenderer):
(WebCore::Style::updateTextRendererAfterContentChange):
(WebCore::Style::attachChildren):
(WebCore::Style::attachDistributedChildren):
(WebCore::Style::attachShadowRoot):
(WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
(WebCore::Style::attachRenderTree):
(WebCore::Style::resolveLocal):
(WebCore::Style::resolveTextNode):
(WebCore::Style::resolveShadowTree):
(WebCore::Style::updateBeforeOrAfterPseudoElement):
(WebCore::Style::resolveTree):

LayoutTests:

Reviewed by Darin Adler.

  • perf/sibling-renderer-On2-expected.txt: Added.
  • perf/sibling-renderer-On2.html: Added.


The test doesn't use magnitude-perf.js as this requires a relatively long-running test function and
it seemed unsuitable for that.

11:31 AM Changeset in webkit [166302] by commit-queue@webkit.org
  • 5 edits in trunk

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

Broke some window.opener tests for WK2 Mavericks (Requested by
brrian on #webkit).

Reverted changeset:

Source/WebCore:

"Web Replay: resource unique identifiers should be unique-per-
frame, not globally"
https://bugs.webkit.org/show_bug.cgi?id=130632
http://trac.webkit.org/changeset/166264

Tools:

"Web Replay: resource unique identifiers should be unique-per-
frame, not globally"
https://bugs.webkit.org/show_bug.cgi?id=130632
http://trac.webkit.org/changeset/166264

11:20 AM Changeset in webkit [166301] by zoltan@webkit.org
  • 54 edits
    12 deletes in trunk

[CSS Shapes] Remove shape-inside support
https://bugs.webkit.org/show_bug.cgi?id=130698

Reviewed by David Hyatt.

.:

  • Source/cmake/WebKitFeatures.cmake:
  • Source/cmakeconfig.h.cmake:

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

Source/WebCore:

CSS Shapes Level 1 (CR) only contains shape-outside. We are focusing our efforts on finalizing
the implementation of shape-outside, it's worth to remove shape-inside code at this point for now.

A list of reasons for the removal:

  • Shape-inside is only part of Shapes Level 2, which needs to be improved on some topics.
  • Shape-inside is lack of new shapes support (e.g. inset).
  • Deprecated shapes (r165472) are removed from the code (e.g. rectangle), which affects shape-inside.
  • The current shape-inside code spreads across the layout code.
  • The current shape-inside implementation is experimental in some areas, and the partially implemented code can have security implications.
  • Removal of shape-inside opens possibilities for code complexity and performance optimizations for shape-outside. (e.g. simpler geometry code)

No new tests are needed.

  • CMakeLists.txt:
  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::ComputedStyleExtractor::propertyValue):

  • css/CSSParser.cpp:

(WebCore::isSimpleLengthPropertyID):
(WebCore::CSSParser::parseValue):
(WebCore::CSSParser::parseShapeProperty):

  • css/CSSPropertyNames.in:
  • css/DeprecatedStyleBuilder.cpp:

(WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::applyProperty):
(WebCore::StyleResolver::loadPendingImages):

  • page/animation/CSSPropertyAnimation.cpp:

(WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::shapeInsideInfo): Deleted.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::styleDidChange):
(WebCore::RenderBlock::imageChanged):
(WebCore::RenderBlock::preparePaginationBeforeBlockLayout):
(WebCore::RenderBlock::relayoutShapeDescendantIfMoved): Deleted.
(WebCore::RenderBlock::logicalOffsetFromShapeAncestorContainer): Deleted.
(WebCore::RenderBlock::updateShapeInsideInfoAfterStyleChange): Deleted.
(WebCore::RenderBlock::ensureShapeInsideInfo): Deleted.
(WebCore::RenderBlock::shapeInsideInfo): Deleted.
(WebCore::RenderBlock::setShapeInsideInfo): Deleted.
(WebCore::RenderBlock::markShapeInsideDescendantsForLayout): Deleted.
(WebCore::RenderBlock::layoutShapeInsideInfo): Deleted.
(WebCore::shapeInfoRequiresRelayout): Deleted.
(WebCore::RenderBlock::computeShapeSize): Deleted.
(WebCore::RenderBlock::updateShapesBeforeBlockLayout): Deleted.
(WebCore::RenderBlock::updateShapesAfterBlockLayout): Deleted.
(WebCore::RenderBlock::prepareShapesAndPaginationBeforeBlockLayout): Deleted.

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::allowsShapeInsideInfoSharing): Deleted.

  • rendering/RenderBlockFlow.cpp:

(WebCore::RenderBlockFlow::layoutBlock):
(WebCore::RenderBlockFlow::layoutBlockChild):
(WebCore::RenderBlockFlow::computeLogicalLocationForFloat):

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

(WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
(WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
(WebCore::constructBidiRunsForLine): Deleted.
(WebCore::pushShapeContentOverflowBelowTheContentBox): Deleted.
(WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLine): Deleted.
(WebCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): Deleted.
(WebCore::adjustLogicalLineTop): Deleted.
(WebCore::RenderBlockFlow::adjustLogicalLineTopAndLogicalHeightIfNeeded): Deleted.

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::RenderDeprecatedFlexibleBox::layoutBlock):

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::~RenderElement):
(WebCore::RenderElement::initializeStyle):
(WebCore::RenderElement::setStyle):

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::layoutBlock):

  • rendering/RenderGrid.cpp:

(WebCore::RenderGrid::layoutBlock):

  • rendering/RenderNamedFlowFragment.cpp:

(WebCore::RenderNamedFlowFragment::createStyle):

  • rendering/RenderView.h:
  • rendering/SimpleLineLayout.cpp:

(WebCore::SimpleLineLayout::canUseFor):

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleText):
(WebCore::BreakingContext::handleEndOfLine):
(WebCore::updateSegmentsForShapes): Deleted.

  • rendering/line/LineBreaker.cpp:

(WebCore::LineBreaker::nextLineBreak):

  • rendering/line/LineWidth.cpp:

(WebCore::LineWidth::LineWidth):
(WebCore::LineWidth::updateAvailableWidth):
(WebCore::LineWidth::wrapNextToShapeOutside):
(WebCore::LineWidth::fitBelowFloats):
(WebCore::LineWidth::updateLineSegment): Deleted.
(WebCore::LineWidth::updateCurrentShapeSegment): Deleted.

  • rendering/line/LineWidth.h:
  • rendering/shapes/ShapeInsideInfo.cpp: Removed.
  • rendering/shapes/ShapeInsideInfo.h: Removed.
  • rendering/style/RenderStyle.cpp:

(WebCore::RenderStyle::changeRequiresLayout):

  • rendering/style/RenderStyle.h:
  • rendering/style/StyleRareNonInheritedData.cpp:

(WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
(WebCore::StyleRareNonInheritedData::operator==):

  • rendering/style/StyleRareNonInheritedData.h:

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:

Tools:

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

  • fast/regions/shape-inside/shape-inside-on-additional-regions-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-additional-regions.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-block-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-block-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-first-region-inline-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-autoheight-regions.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-basic-overflow-shape-top-offset.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-bottom-positioned-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-block-content-polygon-with-adjustment.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-basic-overflow-shape-top-offset.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-bottom-positioned-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-overflow-multiple-shapes.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content-polygon-with-adjustment.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions-inline-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-regions.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-block-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-block-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-inline-content-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-on-second-region-inline-content.html: Removed.
  • fast/regions/shape-inside/shape-inside-recursive-layout-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-recursive-layout.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-borders-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-borders.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-padding-expected.html: Removed.
  • fast/regions/shape-inside/shape-inside-with-region-padding.html: Removed.
  • fast/shapes/css-shapes-disabled-expected.txt:
  • fast/shapes/css-shapes-disabled.html:
  • fast/shapes/css-shapes-enabled-expected.txt:
  • fast/shapes/css-shapes-enabled.html:
  • fast/shapes/parsing/parsing-shape-inside-expected.txt: Removed.
  • fast/shapes/parsing/parsing-shape-inside.html: Removed.
  • fast/shapes/parsing/parsing-shape-lengths-expected.txt:
  • fast/shapes/parsing/parsing-shape-lengths.html:
  • fast/shapes/parsing/parsing-shape-padding-expected.txt: Removed.
  • fast/shapes/parsing/parsing-shape-padding.html: Removed.
  • fast/shapes/parsing/parsing-test-utils.js:
  • fast/shapes/resources/multi-segment-polygon.js: Removed.
  • fast/shapes/resources/simple-polygon.js: Removed.
  • fast/shapes/resources/simple-rectangle.js: Removed.
  • fast/shapes/resources/svg-shape-001.svg: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-floats-simple-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-floats-simple.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-left-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-lower-right-triangle.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-left-triangle-vertical-lr-inline-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-block-content.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-inline-content-expected.html: Removed.
  • fast/shapes/shape-inside/floats/shape-inside-left-float-in-upper-right-triangle-inline-content.html: Removed.
  • fast/shapes/shape-inside/shape-inside-animation-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-animation.html: Removed.
  • fast/shapes/shape-inside/shape-inside-bottom-edge-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-bottom-edge.html: Removed.
  • fast/shapes/shape-inside/shape-inside-box-sizing-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-box-sizing.html: Removed.
  • fast/shapes/shape-inside/shape-inside-calc-crash-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-calc-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle-padding-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle-padding.html: Removed.
  • fast/shapes/shape-inside/shape-inside-circle.html: Removed.
  • fast/shapes/shape-inside/shape-inside-coincident-vertices-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-coincident-vertices.html: Removed.
  • fast/shapes/shape-inside/shape-inside-collinear-vertices-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-collinear-vertices.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-complex-polygon-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-content-box-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-content-box.html: Removed.
  • fast/shapes/shape-inside/shape-inside-counterclockwise-polygon-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-counterclockwise-polygon.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-nested-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-nested.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-shape-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-shape.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-text-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-dynamic-text.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse-padding-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse-padding.html: Removed.
  • fast/shapes/shape-inside/shape-inside-ellipse.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-polygon-crash-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-polygon-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-segments-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty-segments.html: Removed.
  • fast/shapes/shape-inside/shape-inside-empty.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-horizontal.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-vertical-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-001-vertical.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-crash-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-reflex-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-first-fit-reflex.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-005-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-005.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-set-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-image-set.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-dynamic.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks-vertical.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-blocks.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-multiple-segments-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-offset-block-children-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-offset-block-children.html: Removed.
  • fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-on-nested-container-with-unresolved-height.html: Removed.
  • fast/shapes/shape-inside/shape-inside-outside-shape-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-outside-shape.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow-fixed-dimensions.html: Removed.
  • fast/shapes/shape-inside/shape-inside-overflow.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-partial-fill-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage-auto-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage-auto.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-percentage.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-layout-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-layout.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-002-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-003-expected.txt: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-padding-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rectangle-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rectangle.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-zoom-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-polygon-zoom.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-rectilinear-polygon-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-recursive-layout-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-recursive-layout.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon16-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon16.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon8-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-regular-polygon8.html: Removed.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-shape-logical-top.html: Removed.
  • fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-sibling-block-dimension-change-needs-relayout.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-001-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-001.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-002-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-002.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-003-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-003.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-004-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-simple-polygon-004.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subsequent-blocks-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subsequent-blocks.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subtract-intervals-crash-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-subtract-intervals-crash.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text-align-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text-align.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-text.html: Removed.
  • fast/shapes/shape-inside/shape-inside-vertical-text-expected.html: Removed.
  • fast/shapes/shape-inside/shape-inside-vertical-text.html: Removed.
  • platform/gtk/TestExpectations:
  • platform/win/TestExpectations:
10:02 AM Changeset in webkit [166300] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebCore

Avoid duplicate size checks when creating empty image
https://bugs.webkit.org/show_bug.cgi?id=130730

Reviewed by Dean Jackson.

Merged from Blink (patch by ch.dumez@samsung.com):
https://chromium.googlesource.com/chromium/blink/+/4861a71bc1f284fc97417f405ab7d08dc6947b88
http://crbug.com/190633011

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::createEmptyImageData): Don't perform overflow calculation twice.

9:45 AM Changeset in webkit [166299] by svillar@igalia.com
  • 19 edits
    2 adds in trunk

[CSS Grid Layout] getComputedStyle() must return the specified value for positioning properties
https://bugs.webkit.org/show_bug.cgi?id=130010

Reviewed by Darin Adler.

Source/WebCore:

According to the specs
http://dev.w3.org/csswg/css-grid/#property-index and also to
http://lists.w3.org/Archives/Public/www-style/2014Mar/0162.html
the function getComputedStyle() must return the specified values
for positioning properties, i.e, grid-{columns|rows}-{start|end}.

We were in some cases, adjusting the style in the StyleResolver
(for example with two opposing spans) something that is now done
in the RenderGrid because we cannot alter the original style.

The code moved to the renderer became more self explanatory and it
now supports named grid areas with names ending in "-start" and
"-end".

Test: fast/css-grid-layout/named-grid-lines-with-named-grid-areas-get-set.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):
(WebCore::gridLineDefinedBeforeGridArea): Deleted.
(WebCore::StyleResolver::adjustNamedGridItemPosition): Deleted.
(WebCore::StyleResolver::adjustGridItemPosition): Deleted.

  • css/StyleResolver.h:
  • rendering/RenderGrid.cpp:

(WebCore::isColumnSide):
(WebCore::RenderGrid::explicitGridSizeForSide):
(WebCore::gridLineDefinedBeforeGridArea):
(WebCore::setNamedLinePositionIfDefinedBeforeArea):
(WebCore::RenderGrid::adjustNamedGridItemPosition):
(WebCore::RenderGrid::adjustGridPositionsFromStyle):
(WebCore::RenderGrid::resolveGridPositionsFromStyle):
(WebCore::RenderGrid::resolveNamedGridLinePositionFromStyle):
(WebCore::RenderGrid::resolveNamedGridLinePositionAgainstOppositePosition):

  • rendering/RenderGrid.h:
  • rendering/style/GridPosition.h:

(WebCore::GridPosition::setAutoPosition): New helper function.

LayoutTests:

Updated the return value of getComputedStyle(), it must be always
the specified value.

Added also a new test that verifies the resolution of names in
grid positioning properties, both grid area names and grid line
names (including any combination of the two).

  • fast/css-grid-layout/grid-item-area-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-area-get-set.html:
  • fast/css-grid-layout/grid-item-column-row-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-column-row-get-set.html:
  • fast/css-grid-layout/grid-item-end-after-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-end-after-get-set.html:
  • fast/css-grid-layout/grid-item-spanning-resolution-expected.txt:
  • fast/css-grid-layout/grid-item-spanning-resolution.html:
  • fast/css-grid-layout/grid-item-start-before-get-set-expected.txt:
  • fast/css-grid-layout/grid-item-start-before-get-set.html:
  • fast/css-grid-layout/named-grid-lines-with-named-grid-areas-get-set-expected.txt: Added.
  • fast/css-grid-layout/named-grid-lines-with-named-grid-areas-get-set.html: Added.
9:26 AM Changeset in webkit [166298] by simon.fraser@apple.com
  • 2 edits in trunk/Source/WebCore

Fix the iOS build.

  • WebCore.exp.in:
9:19 AM Changeset in webkit [166297] by Darin Adler
  • 5 edits in trunk/LayoutTests

Update LayoutTests to depend on load events rather than on starting loads synchronously
https://bugs.webkit.org/show_bug.cgi?id=130776

Reviewed by Antti Koivisto.

These tests were depending on loads starting synchronously. Instead, they should simply
depend on proper load event behavior.

  • dom/html/level1/core/selfhtml.js:

(startTest): Call waitUntilDone immediately, not when the test starts.

  • dom/html/level2/core/selfhtml.js:

(startTest): Ditto.

  • dom/html/level2/events/selfhtml.js:

(startTest): Ditto.

  • dom/html/level2/html/selfhtml.js:

(startTest): Ditto.

8:25 AM Changeset in webkit [166296] by timothy_horton@apple.com
  • 6 edits in trunk/Source

[iOS WebKit2] Flush all surfaces after painting into all of them, instead of after painting into each one
https://bugs.webkit.org/show_bug.cgi?id=130768
<rdar://problem/16421471>

Reviewed by Simon Fraser.

  • Shared/mac/RemoteLayerBackingStore.h:

Add flush(), which synchronously flushes painting operations on the underlying backing store.
Factor clearBackingStore() out of ensureBackingStore/display, which releases our reference to underlying backing store.
Add two members for storing the back surface and front buffer context until flush() is called.

  • We need to keep the back surface alive because the CGImageRef created from it is referenced by the front surface's drawing queue, and won't be freed until said queue is flushed. If we release the back surface (and its associated CGContextRef) *before* the CGImageRef is freed, we will do an expensive readback of the surface.
  • When not using accelerated drawing, we need to keep the front buffer's CGContextRef around until the flush occurs so that we can avoid re-creating it in order to perform the flush. This happens automatically in the accelerated drawing case via WebCore::IOSurface.
  • Shared/mac/RemoteLayerBackingStore.mm:

(RemoteLayerBackingStore::ensureBackingStore):
(RemoteLayerBackingStore::clearBackingStore):
(RemoteLayerBackingStore::display):
Factor clearBackingStore() out of ensureBackingStore() and display().
Update a comment about the above performance gotcha.
Store the current back surface/front buffer context.

(RemoteLayerBackingStore::drawInContext):
Don't flush the context immediately after painting.

(RemoteLayerBackingStore::applyBackingStoreToLayer):
Move things around to reduce duplicated code.

(RemoteLayerBackingStore::flush):
Flush the current front surface/buffer's context.
Clear the new pending-flush members.

  • WebProcess/WebPage/mac/RemoteLayerTreeDrawingArea.mm:

(WebKit::flushBackingStoreChangesInTransaction):
(WebKit::RemoteLayerTreeDrawingArea::flushLayers):
Crawl through all of the valid changed backing stores in the transaction and flush them.
Remove a completely useless assertion.

  • platform/graphics/cocoa/IOSurface.h:

Add a non-ensuring platformContext() getter.

8:18 AM Changeset in webkit [166295] by commit-queue@webkit.org
  • 5 edits in trunk

Web Inspector: AXI: crash when inspecting "bar" text node in getAccessibilityPropertiesForNode layout test
https://bugs.webkit.org/show_bug.cgi?id=130290

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

Source/WebCore:

Test: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

Fixing regression from r165590. http://webkit.org/b/129779
Verify isElementNode to avoid calling toElement on document or text nodes.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

LayoutTests:

Updating test to include properties for document node.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
8:12 AM Changeset in webkit [166294] by svillar@igalia.com
  • 7 edits in trunk/Source/WebCore

Replace DEPRECATED_DEFINE_STATIC_LOCAL by static NeverDestroyed<T> in editing/
https://bugs.webkit.org/show_bug.cgi?id=130722

Reviewed by Antti Koivisto.

  • editing/AlternativeTextController.cpp:

(WebCore::markerTypesForAutocorrection):
(WebCore::markerTypesForReplacement):
(WebCore::markerTypesForAppliedDictationAlternative):

  • editing/EditingStyle.cpp:

(WebCore::htmlElementEquivalents):
(WebCore::htmlAttributeEquivalents):

  • editing/FormatBlockCommand.cpp:

(WebCore::isElementForFormatBlock):

  • editing/RemoveFormatCommand.cpp:

(WebCore::isElementForRemoveFormatCommand):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::isProhibitedParagraphChild):

  • editing/atk/FrameSelectionAtk.cpp:

(WebCore::maybeEmitTextFocusChange):

8:09 AM Changeset in webkit [166293] by simon.fraser@apple.com
  • 29 edits
    2 copies
    1 add in trunk/Source

Add a new type of scrolling tree node for overflow scrolling
https://bugs.webkit.org/show_bug.cgi?id=130763

Reviewed by Tim Horton.

Prepare for overflow scrolling via the scrolling tree by adding
a new scrolling node type for overflow:scroll nodes. Mostly
this is a new ScrollingNodeType that gets mapped to the same
scrolling state nodes and scrolling nodes, but iOS creates
state and scrolling nodes specific to overflow:scroll.

Change the type checking on nodes to use virtual functions instead
of just checking the node type, to allow the macros to work with
the new scrolling node type.

Source/WebCore:

  • WebCore.exp.in:
  • page/scrolling/AsyncScrollingCoordinator.cpp:

(WebCore::AsyncScrollingCoordinator::ensureRootStateNodeForFrameView):

  • page/scrolling/ScrollingCoordinator.h:
  • page/scrolling/ScrollingStateFixedNode.h:
  • page/scrolling/ScrollingStateNode.h:

(WebCore::ScrollingStateNode::isFixedNode):
(WebCore::ScrollingStateNode::isStickyNode):
(WebCore::ScrollingStateNode::isScrollingNode):

  • page/scrolling/ScrollingStateScrollingNode.cpp:

(WebCore::ScrollingStateScrollingNode::create):
(WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):

  • page/scrolling/ScrollingStateScrollingNode.h:
  • page/scrolling/ScrollingStateStickyNode.h:
  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::attachNode):

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::viewportChangedViaDelegatedScrolling):
(WebCore::ScrollingTree::updateTreeFromStateNode):

  • page/scrolling/ScrollingTreeNode.h:

(WebCore::ScrollingTreeNode::isFixedNode):
(WebCore::ScrollingTreeNode::isStickyNode):
(WebCore::ScrollingTreeNode::isScrollingNode):

  • page/scrolling/ScrollingTreeScrollingNode.cpp:

(WebCore::ScrollingTreeScrollingNode::ScrollingTreeScrollingNode):

  • page/scrolling/ScrollingTreeScrollingNode.h:
  • page/scrolling/ios/ScrollingCoordinatorIOS.mm:

(WebCore::ScrollingCoordinatorIOS::createScrollingTreeNode):

  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.h:
  • page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm:

(WebCore::ScrollingTreeScrollingNodeIOS::create):
(WebCore::ScrollingTreeScrollingNodeIOS::ScrollingTreeScrollingNodeIOS):

  • page/scrolling/mac/ScrollingCoordinatorMac.mm:

(WebCore::ScrollingCoordinatorMac::createScrollingTreeNode):

  • page/scrolling/mac/ScrollingTreeFixedNode.h:
  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
  • page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:

(WebCore::ScrollingTreeScrollingNodeMac::create):
(WebCore::ScrollingTreeScrollingNodeMac::ScrollingTreeScrollingNodeMac):

  • page/scrolling/mac/ScrollingTreeStickyNode.h:
  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::updateScrollCoordinatedLayer):

Source/WebKit2:

  • Shared/Scrolling/RemoteScrollingCoordinatorTransaction.cpp:

(WebKit::encodeNodeAndDescendants):
(WebKit::RemoteScrollingCoordinatorTransaction::decode):

  • UIProcess/Scrolling/RemoteScrollingCoordinatorProxy.cpp:

(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):

  • UIProcess/Scrolling/RemoteScrollingTree.cpp:

(WebKit::RemoteScrollingTree::createNode):

  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.h: Copied from Source/WebCore/page/scrolling/mac/ScrollingTreeFixedNode.h.
  • UIProcess/Scrolling/ios/ScrollingTreeOverflowScrollingNodeIOS.mm: Copied from Source/WebCore/page/scrolling/mac/ScrollingTreeFixedNode.h.

(WebKit::ScrollingTreeOverflowScrollingNodeIOS::create):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::ScrollingTreeOverflowScrollingNodeIOS):
(WebKit::ScrollingTreeOverflowScrollingNodeIOS::~ScrollingTreeOverflowScrollingNodeIOS):

  • UIProcess/ios/RemoteScrollingCoordinatorProxyIOS.mm:

(WebKit::RemoteScrollingCoordinatorProxy::connectStateNodeLayers):

  • WebKit2.xcodeproj/project.pbxproj:
8:08 AM Changeset in webkit [166292] by Dániel Bátyai
  • 15 edits in trunk/Source/JavaScriptCore

Rename hasFastArrayStorage to be more appropriate
https://bugs.webkit.org/show_bug.cgi?id=130773

Reviewed by Filip Pizlo.

  • dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::alreadyChecked):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGWatchpointCollectionPhase.cpp:

(JSC::DFG::WatchpointCollectionPhase::handle):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileNewArray):
(JSC::FTL::LowerDFGToLLVM::compileNewArrayBuffer):
(JSC::FTL::LowerDFGToLLVM::compileNewArrayWithSize):

  • runtime/ButterflyInlines.h:

(JSC::Butterfly::unshift):
(JSC::Butterfly::shift):

  • runtime/IndexingHeaderInlines.h:

(JSC::IndexingHeader::preCapacity):

  • runtime/IndexingType.h:

(JSC::hasArrayStorage):
(JSC::hasAnyArrayStorage):
(JSC::hasFastArrayStorage): Deleted.

  • runtime/JSArray.cpp:

(JSC::JSArray::sortVector):
(JSC::JSArray::compactForSorting):

  • runtime/JSArray.h:

(JSC::JSArray::create):
(JSC::JSArray::tryCreateUninitialized):

  • runtime/JSGlobalObject.cpp:
  • runtime/JSObject.cpp:

(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):

  • runtime/JSObject.h:

(JSC::JSObject::ensureArrayStorage):
(JSC::JSObject::arrayStorage):

  • runtime/StructureTransitionTable.h:

(JSC::newIndexingType):

8:03 AM Changeset in webkit [166291] by k.gurpreet@webkit.org
  • 2 edits in trunk/Tools

Unreviewed. Add myself as a committer.

  • Scripts/webkitpy/common/config/contributors.json:
4:11 AM Changeset in webkit [166290] by Manuel Rego Casasnovas
  • 3 edits in trunk/LayoutTests

[CSS Grid Layout] Prevent issues with checkLayout() in grid items
https://bugs.webkit.org/show_bug.cgi?id=130770

Reviewed by Sergio Villar Senin.

When we use checkLayout() on a grid item, the results (PASS or FAIL
messages) are added as new auto-placed items in the grid. Which might
cause some unexpected behavior in the tests.

This patch modifies the related layout tests to use a different
container (usually the parent node of the grid) for the test results.
Avoiding any kind of interference with the grid code.

  • fast/css-grid-layout/grid-item-addition-auto-placement-update.html: Use parent node of grid when checking grid items. Check layout of the whole grid instead of grid item.
  • fast/css-grid-layout/grid-item-removal-auto-placement-update.html: Check layout of the whole grid instead of grid item.
3:17 AM Changeset in webkit [166289] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

run-launcher is Perl script so use elsif and not elif
https://bugs.webkit.org/show_bug.cgi?id=130771

Patch by Tomas Popela <tpopela@redhat.com> on 2014-03-26
Reviewed by Carlos Garcia Campos.

  • Scripts/run-launcher:
3:16 AM Changeset in webkit [166288] by k.czech@samsung.com
  • 8 edits in trunk

[ATK] Utilize new AtkValue interface coming in ATK 2.11.92
https://bugs.webkit.org/show_bug.cgi?id=130575

Reviewed by Mario Sanchez Prada.

Source/WebCore:

ATK 2.11.92 introduces some new API and deprecates an old one.
Adjust current implementation to meet requirements of the new API.

No new tests. Covered by existing ones.

  • accessibility/atk/AXObjectCacheAtk.cpp:

(WebCore::AXObjectCache::postPlatformNotification):

  • accessibility/atk/WebKitAccessibleInterfaceValue.cpp:

(webkitAccessibleSetNewValue):
(webkitAccessibleGetIncrementValue):
(webkitAccessibleGetValueAndText):
(webkitAccessibleGetIncrement):
(webkitAccessibleSetValue):
(webkitAccessibleGetRange):
(webkitAccessibleValueSetCurrentValue):
(webkitAccessibleValueGetMinimumIncrement):
(webkitAccessibleValueInterfaceInit):

Tools:

Change ATK version to 2.11.92. Adjust current implementation.

  • DumpRenderTree/atk/AccessibilityUIElementAtk.cpp:

(AccessibilityUIElement::intValue):
(AccessibilityUIElement::minValue):
(AccessibilityUIElement::maxValue):

  • WebKitTestRunner/InjectedBundle/atk/AccessibilityUIElementAtk.cpp:

(WTR::AccessibilityUIElement::intValue):
(WTR::AccessibilityUIElement::minValue):
(WTR::AccessibilityUIElement::maxValue):

  • efl/jhbuild.modules:
  • gtk/jhbuild.modules:
2:09 AM Changeset in webkit [166287] by zandobersek@gmail.com
  • 4 edits
    4 deletes in trunk/Source

Unreviewed. Removing the remaining Automake cruft.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Removed.

Source/WebCore:

  • GNUmakefile.list.am: Removed.

Source/WebKit2:

  • GNUmakefile.list.am: Removed.

Source/WTF:

  • GNUmakefile.list.am: Removed.
12:33 AM Changeset in webkit [166286] by Philippe Normand
  • 2 edits
    2 deletes in trunk/Tools

[GTK] The gnumake package is no longer needed in jhbuild
https://bugs.webkit.org/show_bug.cgi?id=130121

Reviewed by Martin Robinson.

For GTK build-webkit now relies on cmake and ninja/gnumake. Even
for a debug build cmake/system-gnumake worked just fine for me.

  • gtk/jhbuild.modules: Removed gnumake.
  • gtk/patches/make-3.82-arg-list-length.patch: Removed.
  • gtk/patches/make-3.82-parallel-build.patch: Removed.
12:03 AM Changeset in webkit [166285] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Blog-files: combobox demo needs aria-expanded support
https://bugs.webkit.org/show_bug.cgi?id=130766

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

  • blog-files/aria1.0/combobox_with_live_region_status.html: Added missing aria-expanded.

Mar 25, 2014:

10:37 PM Changeset in webkit [166284] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

iOS build fix. Add missing semicolon.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_addAttachmentForElement):

9:22 PM Changeset in webkit [166283] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

Speculative iOS build fix.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_addAttachmentForElement):

9:16 PM Changeset in webkit [166282] by jer.noble@apple.com
  • 3 edits
    2 adds in trunk

[MSE] Duplicate 'seeked' events.
https://bugs.webkit.org/show_bug.cgi?id=130754

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/media-source/media-source-duplicate-seeked.html

During certain seek operations, HTMLMediaElement::finishSeek() can be called re-entrantly due to
the ready state changing as a result of MediaSource::monitorSourceBuffers(). Move this call to the
end of finishSeek() after m_seeking has been cleared.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

LayoutTests:

  • media/media-source/media-source-duplicate-seeked-expected.txt: Added.
  • media/media-source/media-source-duplicate-seeked.html: Added.
9:08 PM Changeset in webkit [166281] by fpizlo@apple.com
  • 3 edits
    1 add in trunk/Source/JavaScriptCore

Arguments simplification phase should be fine with marking the arguments local itself as an arguments alias
https://bugs.webkit.org/show_bug.cgi?id=130764
<rdar://problem/16304788>

Reviewed by Sam Weinig.

Being an arguments alias just means that your OSR exit recovery should attempt arguments
creation. This is true of arguments locals. We had special cases that tried to make it not
true of arguments locals. The only consequence of those special cases was to cause crashes
in case of arguments that are also captured variables (i.e. we have SlowArguments). This
change just removes those special cases.

This change means that the FTL will now see SetLocals with a FlushedArguments format.
Previously you wouldn't see them because previously only non-captured variable would be
arguments aliases, and non-captured variables get completely SSAified - i.e. no SetLocals
left. Adding handling for FlushedArguments is a benign and simple change since its
behavior is identical to FlushedJSValue for that code's purposes.

  • dfg/DFGArgumentsSimplificationPhase.cpp:

(JSC::DFG::ArgumentsSimplificationPhase::run):

  • ftl/FTLLowerDFGToLLVM.cpp:

(JSC::FTL::LowerDFGToLLVM::compileSetLocal):

  • tests/stress/captured-arguments-variable.js: Added.

(foo):
(noInline):

8:35 PM Changeset in webkit [166280] by benjamin@webkit.org
  • 1 edit
    8 adds in trunk/Websites/webkit.org

Add illustrations for a potential blog post

First version, let see how that works out.

Patch by Benjamin Poulain <bpoulain@apple.com> on 2014-03-25

  • blog-files/css-jit-introduction: Added.
  • blog-files/css-jit-introduction/clicktostart.js: Added.
  • blog-files/css-jit-introduction/css-jit-illustration.html: Added.
  • blog-files/css-jit-introduction/html5-single-page-microbenchmark.html: Added.
  • blog-files/css-jit-introduction/old-selectorchecker-illustration.html: Added.
  • blog-files/css-jit-introduction/timing-illustration-eight-run.svg: Added.
  • blog-files/css-jit-introduction/timing-illustration-five-run.svg: Added.
  • blog-files/css-jit-introduction/timing-illustration-one-run.svg: Added.
8:03 PM Changeset in webkit [166279] by commit-queue@webkit.org
  • 10 edits in trunk

Web Inspector: AXI: add support for aria-activedescendant and reconcile UI/testing with parentNode
https://bugs.webkit.org/show_bug.cgi?id=130712

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

Source/WebCore:

Test: inspector-protocol/dom/getAccessibilityPropertiesForNode.html

Support for @aria-activedescendant; code reuse changes w/ parentNode and activeDescendantNode.

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForAccessibilityProperties):

  • inspector/protocol/DOM.json:

Source/WebInspectorUI:

Support for @aria-activedescendant; code reuse changes w/ parentNode and activeDescendantNode.

  • Localizations/en.lproj/localizedStrings.js:
  • UserInterface/Models/DOMNode.js:
  • UserInterface/Views/DOMNodeDetailsSidebarPanel.js:

LayoutTests:

Support for @aria-activedescendant; code reuse changes w/ parentNode and activeDescendantNode.

  • inspector-protocol/dom/getAccessibilityPropertiesForNode-expected.txt:
  • inspector-protocol/dom/getAccessibilityPropertiesForNode.html:
7:37 PM Changeset in webkit [166278] by mhahnenberg@apple.com
  • 10 edits
    1 add in trunk/Source/JavaScriptCore

Add HeapInlines
https://bugs.webkit.org/show_bug.cgi?id=130759

Reviewed by Filip Pizlo.

(JSC::MarkedBlockSnapshotFunctor::MarkedBlockSnapshotFunctor):
(JSC::MarkedBlockSnapshotFunctor::operator()):

  • heap/Heap.h: Also reindented while we're here.

(JSC::Heap::writeBarrierBuffer):
(JSC::Heap::vm):
(JSC::Heap::objectSpace):
(JSC::Heap::machineThreads):
(JSC::Heap::operationInProgress):
(JSC::Heap::allocatorForObjectWithoutDestructor):
(JSC::Heap::allocatorForObjectWithNormalDestructor):
(JSC::Heap::allocatorForObjectWithImmortalStructureDestructor):
(JSC::Heap::storageAllocator):
(JSC::Heap::notifyIsSafeToCollect):
(JSC::Heap::isSafeToCollect):
(JSC::Heap::handleSet):
(JSC::Heap::handleStack):
(JSC::Heap::lastFullGCLength):
(JSC::Heap::lastEdenGCLength):
(JSC::Heap::increaseLastFullGCLength):
(JSC::Heap::sizeBeforeLastEdenCollection):
(JSC::Heap::sizeAfterLastEdenCollection):
(JSC::Heap::sizeBeforeLastFullCollection):
(JSC::Heap::sizeAfterLastFullCollection):
(JSC::Heap::jitStubRoutines):
(JSC::Heap::isDeferred):
(JSC::Heap::structureIDTable):
(JSC::Heap::removeCodeBlock):

  • heap/HeapInlines.h: Added.

(JSC::Heap::shouldCollect):
(JSC::Heap::isBusy):
(JSC::Heap::isCollecting):
(JSC::Heap::heap):
(JSC::Heap::isLive):
(JSC::Heap::isInRememberedSet):
(JSC::Heap::isMarked):
(JSC::Heap::testAndSetMarked):
(JSC::Heap::setMarked):
(JSC::Heap::isWriteBarrierEnabled):
(JSC::Heap::writeBarrier):
(JSC::Heap::reportExtraMemoryCost):
(JSC::Heap::forEachProtectedCell):
(JSC::Heap::forEachCodeBlock):
(JSC::Heap::allocateWithNormalDestructor):
(JSC::Heap::allocateWithImmortalStructureDestructor):
(JSC::Heap::allocateWithoutDestructor):
(JSC::Heap::tryAllocateStorage):
(JSC::Heap::tryReallocateStorage):
(JSC::Heap::ascribeOwner):
(JSC::Heap::blockAllocator):
(JSC::Heap::releaseSoon):
(JSC::Heap::incrementDeferralDepth):
(JSC::Heap::decrementDeferralDepth):
(JSC::Heap::collectIfNecessaryOrDefer):
(JSC::Heap::decrementDeferralDepthAndGCIfNeeded):
(JSC::Heap::markListSet):

  • runtime/JSCInlines.h:
7:30 PM Changeset in webkit [166277] by commit-queue@webkit.org
  • 5 edits in trunk

When the mouse is upped after dragged out of shadowDOM, it should lose :active.
https://bugs.webkit.org/show_bug.cgi?id=130660

Patch by Sanghyup Lee <sh53.lee@samsung.com> on 2014-03-25
Reviewed by Darin Adler.

Source/WebCore:

This caused a regression after r165037.
When we have to clear :active style of shadow DOM, we should clear host's style.
This patch replaces parentElement() by parentOrShadowHostElement().

  • dom/Document.cpp:

(WebCore::Document::updateHoverActiveState):

LayoutTests:

  • fast/css/hover-active-drag-expected.txt: Added a test for textarea.
  • fast/css/hover-active-drag.html: Updated.
7:14 PM Changeset in webkit [166276] by fpizlo@apple.com
  • 2 edits
    2 adds in trunk/Source/JavaScriptCore

DFG::ByteCodeParser::SetMode should distinguish between setting immediately without a flush and setting immediately with a flush
https://bugs.webkit.org/show_bug.cgi?id=130760

Reviewed by Mark Hahnenberg.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::setLocal):
(JSC::DFG::ByteCodeParser::setArgument):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):

  • tests/stress/assign-argument-in-inlined-call.js: Added.

(f1):
(getF2Arguments):
(f2):
(f3):

  • tests/stress/assign-captured-argument-in-inlined-call.js: Added.

(f1):
(f2):
(f3):

6:47 PM Changeset in webkit [166275] by aestes@apple.com
  • 2 edits in trunk/Tools

Fix a failing API test on Mountain Lion and remove temporary debug logging.

  • TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:

(-[DownloadDelegate _download:didReceiveData:]):
(-[DownloadDelegate _downloadDidFinish:]):

5:57 PM Changeset in webkit [166274] by eric.carlson@apple.com
  • 2 edits in trunk/Source/WebCore

[Mac] Always retry a failed MediaDocument as a PluginDocument
https://bugs.webkit.org/show_bug.cgi?id=130742

Reviewed by Jer Noble.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaLoadingFailedFatally): If the element is in a media document,

tell it that loading failed so it can retry as a plug-in.

5:49 PM Changeset in webkit [166273] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebCore

Replace HTMLConverter::_stringForNode by propertyValueForNode
https://bugs.webkit.org/show_bug.cgi?id=130711

Reviewed by Sam Weinig.

Replaced all calls to HTMLConverter::_stringForNode by that to propertyValueForNode.

  • editing/cocoa/HTMLConverter.mm:

(HTMLConverter::_computedAttributesForElement):
(HTMLConverter::_addAttachmentForElement):
(HTMLConverter::_enterElement):
(HTMLConverter::_addTableForElement):
(HTMLConverter::_addTableCellForElement):
(HTMLConverter::_processElement):
(HTMLConverter::_exitElement):
(HTMLConverter::_processText):
(HTMLConverter::_traverseNode):
(HTMLConverter::_traverseFooterNode):
(HTMLConverter::_stringForNode): Deleted.

5:39 PM Changeset in webkit [166272] by psolanki@apple.com
  • 2 edits in trunk/Source/WebCore

Attempt to fix iOS build after r166261.

  • WebCore.xcodeproj/project.pbxproj: Make SystemSleepListener.h a private header.
5:31 PM Changeset in webkit [166271] by psolanki@apple.com
  • 2 edits in trunk/Source/WebKit2

Remove PLATFORM(IOS) from NetworkProcessMac.mm
https://bugs.webkit.org/show_bug.cgi?id=130751

Reviewed by Alexey Proskuryakov.

Code in NetworkProcessMac.mm is guarded by PLATFORM(MAC) and so is not compiled on iOS.
Having PLATFORM(IOS) code in this file is unnecessary and confusing.

  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::initializeProcessName):
(WebKit::overrideSystemProxies):
(WebKit::NetworkProcess::platformInitializeNetworkProcess):

5:01 PM Changeset in webkit [166270] by andersca@apple.com
  • 6 edits in trunk/Source/WebKit2

Add a UI delegate callback for handling window.open
https://bugs.webkit.org/show_bug.cgi?id=130757

Reviewed by Sam Weinig.

  • UIProcess/API/Cocoa/WKUIDelegate.h:
  • UIProcess/API/Cocoa/WKWebView.mm:
  • UIProcess/API/Cocoa/WKWebViewInternal.h:
  • UIProcess/Cocoa/UIClient.h:
  • UIProcess/Cocoa/UIClient.mm:

(WebKit::UIClient::setDelegate):
(WebKit::UIClient::createNewPage):

5:00 PM Changeset in webkit [166269] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Move stopLoading: back for now.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView stopLoading:]):

4:43 PM Changeset in webkit [166268] by jer.noble@apple.com
  • 4 edits in trunk/Source/WebCore

[iOS] Enable caption support in full screen.
https://bugs.webkit.org/show_bug.cgi?id=130603

Reviewed by Eric Carlson.

Add TextTrackRepresentation support to MediaPlayerPrivateAVFoundationObjC.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:

(WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoLayer): Add the m_textTrackRepresenationLayer if present.
(WebCore::MediaPlayerPrivateAVFoundationObjC::setVideoFullscreenLayer): Ditto.
(WebCore::MediaPlayerPrivateAVFoundationObjC::requiresTextTrackRepresentation): True, if a m_videoFullscreenLayer is present.
(WebCore::MediaPlayerPrivateAVFoundationObjC::setTextTrackRepresentation): Remove the old, and add the new m_textTrackRepresenationLayer.

Make the text track container a stacking context for painting purposes.

  • Modules/mediacontrols/mediaControlsiOS.css:

(video::-webkit-media-text-track-container):

4:37 PM Changeset in webkit [166267] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Change toolbarVisibility back to toolbarsVisibility
https://bugs.webkit.org/show_bug.cgi?id=130749

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWindowFeatures.h:
  • UIProcess/API/Cocoa/WKWindowFeatures.mm:

(-[WKWindowFeatures _initWithWindowFeatures:WebCore::]):

4:28 PM Changeset in webkit [166266] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix 32-bit getter call alignment.

Reviewed by Mark Hahnenberg.

  • jit/Repatch.cpp:

(JSC::generateGetByIdStub):

4:20 PM Changeset in webkit [166265] by andersca@apple.com
  • 7 edits in trunk/Source/WebKit2

Pass the source frame to the CreateNewPage message
https://bugs.webkit.org/show_bug.cgi?id=130752

Reviewed by Tim Horton.

  • UIProcess/API/APIUIClient.h:

(API::UIClient::createNewPage):

  • UIProcess/API/C/WKPage.cpp:

(WKPageSetPageUIClient):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::createNewPage):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createWindow):

3:56 PM Changeset in webkit [166264] by Brian Burg
  • 5 edits in trunk

Source/WebCore: Web Replay: resource unique identifiers should be unique-per-frame, not globally
https://bugs.webkit.org/show_bug.cgi?id=130632

Reviewed by Timothy Hatcher.

For replay purposes, we want to deterministically assign resource load identifiers
to resource loaders, provided that the resource loaders are created in the same
order.

To do this, we convert unique identifiers from being globally-unique to being
frame-unique. When a new frame is being loaded, unique identifiers for
subresources of that frame begin counting from 1.

No new tests. Identifier invariants are exercised by existing assertions and tests.

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::ProgressTracker):
(WebCore::ProgressTracker::reset):
(WebCore::ProgressTracker::createUniqueIdentifier):

  • loader/ProgressTracker.h:

Tools: Web Replay: resource unique identifiers should be unique-per-frame, not globally
https://bugs.webkit.org/show_bug.cgi?id=130623

Reviewed by Timothy Hatcher.

The resource loader callback dumping routines assumed that resource identifiers
were globally unique. Its map of resource identifiers to URLs must also track the
frame associated with the resource.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::dumpResourceURL): Additionally take a WKBundleFrameRef argument, and use the
opaque pointer as part of the key for assignedUrlsCache. The frame pointer is
stable as long as the frame is valid.
(WTR::InjectedBundlePage::didInitiateLoadForResource):
(WTR::InjectedBundlePage::willSendRequestForFrame):
(WTR::InjectedBundlePage::didReceiveResponseForResource):
(WTR::InjectedBundlePage::didFinishLoadForResource):
(WTR::InjectedBundlePage::didFailLoadForResource):

3:38 PM Changeset in webkit [166263] by fpizlo@apple.com
  • 10 edits
    8 adds in trunk

Repatch should plant calls to getters directly rather than through a C helper
https://bugs.webkit.org/show_bug.cgi?id=129589

Source/JavaScriptCore:

Reviewed by Mark Hahnenberg.

As the title says. All of the superstructure for this was already in place, so now it
was just a matter of actually emitting the call.

8x speed-up for getter microbenchmarks.

  • CMakeLists.txt:
  • JavaScriptCore.vcxproj/JavaScriptCore.vcxproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/PolymorphicGetByIdList.h:

(JSC::GetByIdAccess::doesCalls):

  • jit/AccessorCallJITStubRoutine.cpp: Added.

(JSC::AccessorCallJITStubRoutine::AccessorCallJITStubRoutine):
(JSC::AccessorCallJITStubRoutine::~AccessorCallJITStubRoutine):
(JSC::AccessorCallJITStubRoutine::visitWeak):

  • jit/AccessorCallJITStubRoutine.h: Added.
  • jit/AssemblyHelpers.h:

(JSC::AssemblyHelpers::storeCell):

  • jit/GCAwareJITStubRoutine.h:
  • jit/Repatch.cpp:

(JSC::generateGetByIdStub):

  • runtime/GetterSetter.h:

(JSC::GetterSetter::offsetOfGetter):
(JSC::GetterSetter::offsetOfSetter):

LayoutTests:

Reviewed by Mark Hahnenberg.

  • js/regress/getter-expected.txt: Added.
  • js/regress/getter.html: Added.
  • js/regress/script-tests/getter.js: Added.
  • js/regress/script-tests/string-char-code-at.js: Added.

(foo):

  • js/regress/string-char-code-at-expected.txt: Added.
  • js/regress/string-char-code-at.html: Added.
3:34 PM Changeset in webkit [166262] by andersca@apple.com
  • 12 edits in trunk/Source/WebKit2

Add a WebFrame::fromCoreFrame static member function and use it where possible
https://bugs.webkit.org/show_bug.cgi?id=130744

Reviewed by Tim Horton.

  • WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:

(WebKit::GeolocationPermissionRequestManager::startRequestForGeolocation):

  • WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:

(WebKit::InjectedBundleNodeHandle::documentFrame):
(WebKit::InjectedBundleNodeHandle::htmlFrameElementContentFrame):
(WebKit::InjectedBundleNodeHandle::htmlIFrameElementContentFrame):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::overrideBoolPreferenceForTestRunner):

  • WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:

(WebKit::InjectedBundleDOMWindowExtension::frame):

  • WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:

(WebKit::InjectedBundleHitTestResult::frame):
(WebKit::InjectedBundleHitTestResult::targetFrame):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::webPage):
(WebKit::PluginView::performFrameLoadURLRequest):

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::focusedElementChanged):
(WebKit::WebChromeClient::focusedFrameChanged):
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::print):
(WebKit::WebChromeClient::exceededDatabaseQuota):
(WebKit::WebChromeClient::runOpenPanel):

  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::textFieldDidBeginEditing):
(WebKit::WebEditorClient::textFieldDidEndEditing):
(WebKit::WebEditorClient::textDidChangeInTextField):
(WebKit::WebEditorClient::textDidChangeInTextArea):
(WebKit::WebEditorClient::doTextFieldCommandFromEvent):
(WebKit::WebEditorClient::textWillBeDeletedInTextField):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
(WebKit::WebFrameLoaderClient::dispatchWillSendSubmitEvent):
(WebKit::WebFrameLoaderClient::dispatchWillSubmitForm):

  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::fromCoreFrame):
(WebKit::WebFrame::contentsAsString):
(WebKit::WebFrame::parentFrame):
(WebKit::WebFrame::childFrames):
(WebKit::WebFrame::frameForContext):
(WebKit::WebFrame::webArchiveData):

  • WebProcess/WebPage/WebFrame.h:
3:26 PM Changeset in webkit [166261] by jer.noble@apple.com
  • 12 edits
    6 adds in trunk

[Mac] Pause the media element during system sleep.
https://bugs.webkit.org/show_bug.cgi?id=130718

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/video-system-sleep.html

Relying on the platform media system to pause and restart playback during
system sleep can cause problems on some platforms, especially where hardware
decoders are concerned. Rather than implicitly pausing the media during
system sleep, explicitly pause the media before sleeping and resume (if
appropriate) upon waking.

Add a new class to be used for system sleep notifications:

  • platform/SystemSleepListener.cpp: Added.

(WebCore::SystemSleepListener::create):
(WebCore::SystemSleepListener::SystemSleepListener):

  • platform/SystemSleepListener.h: Added.

(WebCore::SystemSleepListener::Client::~Client):
(WebCore::SystemSleepListener::~SystemSleepListener):
(WebCore::SystemSleepListener::client):

Add a Mac-specific implementation:

  • platform/mac/SystemSleepListenerMac.h: Added.
  • platform/mac/SystemSleepListenerMac.mm: Added.

(WebCore::SystemSleepListener::create):
(WebCore::SystemSleepListenerMac::SystemSleepListenerMac):
(WebCore::SystemSleepListenerMac::~SystemSleepListenerMac):

Listen for system sleep notifications in MediaSessionManager:

  • platform/audio/MediaSessionManager.cpp:

(WebCore::MediaSessionManager::MediaSessionManager):
(WebCore::MediaSessionManager::systemWillSleep):
(WebCore::MediaSessionManager::systemDidWake):

  • platform/audio/MediaSessionManager.h:

Drive-by fix; notify the MediaSession that playback will begin
due to autoplay, but do not begin autoplaying if the session
is already interrupted:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

Add new files to project:

  • WebCore.vcxproj/WebCore.vcxproj:
  • WebCore.xcodeproj/project.pbxproj:
  • CMakeLists.txt:
  • GNUmakefile.list.am:

LayoutTests:

  • media/video-system-sleep-expected.txt: Added.
  • media/video-system-sleep.html: Added.
3:20 PM Changeset in webkit [166260] by aestes@apple.com
  • 2 edits in trunk/Tools

Fix one API test expectation failure on Mountain Lion, and add additional logging to help diagnose another.

  • TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:

(-[DownloadDelegate _download:didReceiveResponse:]):
(-[DownloadDelegate _download:didReceiveData:]):

3:01 PM Changeset in webkit [166259] by stavila@adobe.com
  • 3 edits
    4 adds in trunk

[CSS Regions] The background of children of scrollable elements flowed into regions is not properly scrolled
https://bugs.webkit.org/show_bug.cgi?id=130574

Reviewed by David Hyatt.

Source/WebCore:

When computing the clip rect for painting the box decorations, the scrolled content offset
must be computed by going up the containing block tree, up to the region.

Tests: fast/regions/scrollable-region-scrollable-absolute-content-background.html

fast/regions/scrollable-region-scrollable-content-background.html

  • rendering/RenderNamedFlowThread.cpp:

(WebCore::RenderNamedFlowThread::decorationsClipRectForBoxInNamedFlowFragment):

LayoutTests:

Added tests for properly painting background of children of scrollable elements flowed into regions.

  • fast/regions/scrollable-region-scrollable-absolute-content-background-expected.html: Added.
  • fast/regions/scrollable-region-scrollable-absolute-content-background.html: Added.
  • fast/regions/scrollable-region-scrollable-content-background-expected.html: Added.
  • fast/regions/scrollable-region-scrollable-content-background.html: Added.
2:53 PM Changeset in webkit [166258] by jpfau@apple.com
  • 2 edits in trunk/Source/WebKit2

[WK2] Schemes registered as cache partitioned are not properly registered in new web processes
https://bugs.webkit.org/show_bug.cgi?id=130739

Reviewed by Anders Carlsson.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess):

2:52 PM Changeset in webkit [166257] by Joseph Pecoraro
  • 25 edits in trunk/Source

[iOS] Inspector View Indication Support
https://bugs.webkit.org/show_bug.cgi?id=130709

Reviewed by Simon Fraser.

Source/WebCore:

  • inspector/InspectorClient.h:

(WebCore::InspectorClient::showInspectorIndication):
(WebCore::InspectorClient::hideInspectorIndication):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::setIndicating):
Rename indicate/hideIndication to show/hide names.

Source/WebKit/ios:

  • WebCoreSupport/WebInspectorClientIOS.mm:

(WebInspectorClient::showInspectorIndication):
(WebInspectorClient::hideInspectorIndication):
Renamed methods.

Source/WebKit/mac:

  • WebCoreSupport/WebInspectorClient.h:
  • WebCoreSupport/WebInspectorClient.mm:

(WebInspectorClient::didSetSearchingForNode): Deleted.
(WebInspectorClient::releaseFrontend): Deleted.

  • WebView/WebView.mm:

(-[WebView setShowingInspectorIndication:]):

  • WebView/WebViewPrivate.h:

Renamed methods.

Source/WebKit2:

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

(-[WKInspectorIndicationView initWithFrame:]):
(-[WKContentView isShowingInspectorIndication]):
(-[WKContentView setShowingInspectorIndication:]):
(-[WKContentView _didCommitLayerTree:WebKit::]):
When indicating include a simple tinted UIView over the content.

  • UIProcess/API/Cocoa/WKWebViewPrivate.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView _showInspectorIndication]):
(-[WKWebView _hideInspectorIndication]):
Have the content view show or hide an indication.

  • UIProcess/PageClient.h:
  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::showInspectorIndication):
(WebKit::PageClientImpl::hideInspectorIndication):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/ios/WebPageProxyIOS.mm:

(WebKit::WebPageProxy::showInspectorIndication):
(WebKit::WebPageProxy::hideInspectorIndication):
Pass WebProcess indication message up to the WKWebView.

  • WebProcess/WebCoreSupport/WebInspectorClient.cpp:

(WebKit::WebInspectorClient::indicate):
(WebKit::WebInspectorClient::hideIndication):

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

(WebKit::WebPage::indicate):
(WebKit::WebPage::hideIndication):
Pass WebCore / remote inspector indication message up to UIProcess.

2:34 PM Changeset in webkit [166256] by bfulgham@apple.com
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix. Typo on checkin.

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Left an unmatched open bracket.

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

Even further unreviewed build fix after r166247. Unprotect the implementation of HTMLMediaElement::shouldDisableSleep().

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::parseAttribute):

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

Further unreviewed build fix after r166247. Add DisplaySleepDisabler to the windows project file and
move the definition of DisplaySleepDisabler's constructor and destructor into the cpp file.

  • WebCore.vcxproj/WebCore.vcxproj:
  • platform/DisplaySleepDisabler.cpp:

(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
(WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):

  • platform/DisplaySleepDisabler.h:
2:18 PM Changeset in webkit [166253] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Add more properties to WKWindowFeatures
https://bugs.webkit.org/show_bug.cgi?id=130738

Reviewed by Tim Horton.

  • UIProcess/API/Cocoa/WKWindowFeatures.h:
  • UIProcess/API/Cocoa/WKWindowFeatures.mm:

(-[WKWindowFeatures _initWithWindowFeatures:WebCore::]):
(-[WKWindowFeatures menuBarVisibility]):
(-[WKWindowFeatures statusBarVisibility]):
(-[WKWindowFeatures toolbarsVisibility]):
(-[WKWindowFeatures allowsResizing]):

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

Unreviewed build fix after r166247. Un-platform-protect the declaration of HTMLMediaElement::shouldDisableSleep()
and make WebVideoFullscreenController's _displaySleepDisabler a std::unique_ptr.

  • html/HTMLMediaElement.h:
  • platform/mac/WebVideoFullscreenController.h:
2:03 PM Changeset in webkit [166251] by andersca@apple.com
  • 3 edits in trunk/Source/WebKit2

Fix iOS build.

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

Make WKIBActions OS X only for now.

2:00 PM Changeset in webkit [166250] by bfulgham@apple.com
  • 6 edits in trunk/Source/WebCore

[iOS] Pass additional options to AVFoundation during playback.
https://bugs.webkit.org/show_bug.cgi?id=130624

Reviewed by Eric Carlson.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::doesHaveAttribute): Return attribute value if the user
passes a pointer to fill in.

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::doesHaveAttribute):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::doesHaveAttribute):

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

(WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem): Pass additional
option if supplied by user.

1:43 PM Changeset in webkit [166249] by msaboff@apple.com
  • 4 edits in trunk/Source/WebCore

Unreviewed, rolling out r166070.

Rollout r166070 due to 2% performance loss in page load times

Reverted changeset:

"Change CodeGeneratorJS.pm special cases for "DOMWindow" to be
general purpose"
https://bugs.webkit.org/show_bug.cgi?id=130553
http://trac.webkit.org/changeset/166070

1:40 PM Changeset in webkit [166248] by msaboff@apple.com
  • 13 edits
    3 deletes in trunk

Unreviewed, rolling out r166126.

Rollout r166126 in prepartion to roll out prerequisite r166070

Reverted changeset:

"toThis() on a JSWorkerGlobalScope should return a JSProxy and
not undefined"
https://bugs.webkit.org/show_bug.cgi?id=130554
http://trac.webkit.org/changeset/166126

1:25 PM Changeset in webkit [166247] by jer.noble@apple.com
  • 6 edits
    2 moves
    2 adds in trunk/Source/WebCore

[iOS] Playing video does not disable display sleep.
https://bugs.webkit.org/show_bug.cgi?id=130729

Reviewed by Eric Carlson.

DisplaySleepDisabler was broken by r161589, which replaced the iOS implementation with
an empty one. Make a platform independent version with a Cocoa-platform subclass. Update
the APIs to non-deprecated ones.

  • platform/DisplaySleepDisabler.cpp: Added.

(WebCore::DisplaySleepDisabler::create):

  • platform/DisplaySleepDisabler.h: Added.

(WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):
(WebCore::DisplaySleepDisabler::DisplaySleepDisabler):

  • platform/cocoa/DisplaySleepDisablerCocoa.cpp: Renamed from Source/WebCore/platform/mac/DisplaySleepDisabler.cpp.

(WebCore::DisplaySleepDisabler::create):
(WebCore::DisplaySleepDisablerCocoa::DisplaySleepDisablerCocoa):
(WebCore::DisplaySleepDisablerCocoa::~DisplaySleepDisablerCocoa):

  • platform/cocoa/DisplaySleepDisablerCocoa.h: Renamed from Source/WebCore/platform/mac/DisplaySleepDisabler.h.

Update m_sleepDisabler to be a std::unique_ptr, and unprotect the definition of methods which use it.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::updateSleepDisabling):
(WebCore::HTMLMediaElement::shouldDisableSleep):

  • html/HTMLMediaElement.h:

Add the new and renamed files to the project:

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • WebCore.xcodeproj/project.pbxproj:
1:24 PM Changeset in webkit [166246] by krit@webkit.org
  • 7 edits
    3 adds
    2 deletes in trunk

Implement ImageData constructors and WebWorkers exposure
https://bugs.webkit.org/show_bug.cgi?id=130668

Reviewed by Dean Jackson.

Source/WebCore:

Add new constructors for ImageData.

http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#pixel-manipulation

Test: fast/canvas/canvas-imageData.html

  • html/ImageData.cpp:

(WebCore::ImageData::create):

  • html/ImageData.h:
  • html/ImageData.idl:

LayoutTests:

Tests for ImageData constructors. Remove a false tests for constructors
from Philip's test suite.

  • fast/canvas/canvas-imageData-expected.txt: Added.
  • fast/canvas/canvas-imageData.html: Added.
  • fast/canvas/script-tests/canvas-imageData.js: Added.

(testTransparentBlack):

  • LayoutTests/canvas/philip/tests/2d.imageData.object.ctor.html: Removed.
  • LayoutTests/canvas/philip/tests/2d.imageData.object.ctor-expected.txt: Removed.
  • LayoutTests/js/dom/global-constructors-attributes-dedicated-worker-expected.txt
  • LayoutTests/js/dom/global-constructors-attributes-shared-worker-expected.txt
1:15 PM Changeset in webkit [166245] by mmaxfield@apple.com
  • 6 edits
    2 adds in trunk

InlineIterator position (unsigned int) variable can wrap around
https://bugs.webkit.org/show_bug.cgi?id=130540

Patch by Myles C. Maxfield <mmaxfield@apple.com> on 2014-03-25
Reviewed by Simon Fraser.

Source/WebCore:

We trigger an ASSERT that occurs when we are ignoring spaces (to collapse them
into a single whitespace mark) but then encounter a line break. Because we don't ignore
the first space (but do ignore subsequent spaces), when we hit a newline in an RTL context
we want to ignore that first space as well (so as not to push the text away from the right
edge). We do this by decrementing the InlineIterator pointing to this first space, so all
the spaces get ignored. However, if that space is the first character in a Text node, the
decrement will try to go past the beginning of the node, and trigger an ASSERT.

This design is not great. At some point we should rework it to more elegantly handle
collapsing whitespace in both RTL and LTR writing modes.

This patch adds an ASSERT earlier in this codepath to catch potential problems earlier.
It also pulls our sentinel value out into a separate boolean to make it more clear what is
going on.

Test: fast/text/whitespace-only-text-in-rtl.html

  • rendering/InlineIterator.h:

(WebCore::InlineIterator::moveTo): Use the set*() calls
(WebCore::InlineIterator::setOffset): ASSERT early that our math hasn't wrapped

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlockFlow::appendRunsForObject): Use new boolean value

  • rendering/line/BreakingContextInlineHeaders.h:

(WebCore::BreakingContext::handleText): Guard against wraps
(WebCore::checkMidpoints): Use new boolean value

  • rendering/line/TrailingObjects.cpp:

(WebCore::TrailingObjects::updateMidpointsForTrailingBoxes): Use new boolean value

LayoutTests:

This test triggers an ASSERT that occurs when we are ignoring spaces (to collapse them
into a single whitespace mark) but then encounter a line break. Because we don't ignore
the first space (but do ignore subsequent spaces), when we hit a newline in an RTL context
we want to ignore that first space as well (so as not to push the text away from the right
edge). We do this by decrementing the InlineIterator pointing to this first space, so all
the spaces get ignored. However, if that space is the first character in a Text node, the
decrement will try to go past the beginning of the node, and trigger an ASSERT.

This design is not great. At some point we should rework it to more elegantly handle
collapsing whitespace in both RTL and LTR writing modes.

  • fast/text/whitespace-only-text-in-rtl-expected.txt: Added.
  • fast/text/whitespace-only-text-in-rtl.html: Added.

Conflicts:

LayoutTests/ChangeLog
Source/WebCore/ChangeLog

1:10 PM Changeset in webkit [166244] by andersca@apple.com
  • 2 edits
    3 adds in trunk/Source/WebKit2

Begin stubbing out a WKWindowFeatures class
https://bugs.webkit.org/show_bug.cgi?id=130733

Reviewed by Dan Bernstein.

  • UIProcess/API/Cocoa/WKWindowFeatures.h: Added.
  • UIProcess/API/Cocoa/WKWindowFeatures.mm: Added.

(-[WKWindowFeatures _initWithWindowFeatures:WebCore::]):
(-[WKWindowFeatures x]):
(-[WKWindowFeatures y]):
(-[WKWindowFeatures width]):
(-[WKWindowFeatures height]):

  • UIProcess/API/Cocoa/WKWindowFeaturesInternal.h: Added.
  • WebKit2.xcodeproj/project.pbxproj:
1:06 PM Changeset in webkit [166243] by oliver@apple.com
  • 6 edits in trunk

AST incorrectly conflates readable and writable locations
https://bugs.webkit.org/show_bug.cgi?id=130734

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

We need to distinguish between "locations" that are valid for reading
and writing, vs those that may only be written.

  • bytecompiler/NodesCodegen.cpp:

(JSC::ForInNode::emitBytecode):
(JSC::ForOfNode::emitBytecode):

  • parser/Nodes.h:

(JSC::ExpressionNode::isAssignmentLocation):

LayoutTests:

More tests

  • js/parser-syntax-check-expected.txt:
  • js/script-tests/parser-syntax-check.js:
12:48 PM Changeset in webkit [166242] by aestes@apple.com
  • 2 edits in trunk/Tools

Add some debug logging to an API test that's failing on Mountain Lion.

  • TestWebKitAPI/Tests/WebKit2Cocoa/Download.mm:

(-[DownloadDelegate _download:didReceiveResponse:]):
(-[DownloadDelegate _downloadDidFinish:]):

12:17 PM Changeset in webkit [166241] by andersca@apple.com
  • 5 edits in trunk

Add goBack: and goForward: IBActions and move stopLoading: to a new WKIBActions category on WKWebView
https://bugs.webkit.org/show_bug.cgi?id=130732

Reviewed by Tim Horton.

Source/WebKit2:

  • UIProcess/API/Cocoa/WKWebView.h:
  • UIProcess/API/Cocoa/WKWebView.mm:

(-[WKWebView goBack]):
(-[WKWebView goForward]):
(-[WKWebView validateUserInterfaceItem:]):
(-[WKWebView goBack:]):
(-[WKWebView goForward:]):
(-[WKWebView stopLoading:]):

Tools:

  • MiniBrowser/mac/WK2BrowserWindowController.m:

(-[WK2BrowserWindowController validateUserInterfaceItem:]):

11:00 AM Changeset in webkit [166240] by oliver@apple.com
  • 5 edits in trunk

ASSERTION FAILED in Parser: dst != localReg
https://bugs.webkit.org/show_bug.cgi?id=130710

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

Just make sure we don't try to write to a captured constant,
following the change to track captured variables separately.

  • bytecompiler/NodesCodegen.cpp:

(JSC::PostfixNode::emitResolve):
(JSC::PrefixNode::emitResolve):

LayoutTests:

New testcases.

  • js/parser-syntax-check-expected.txt:
  • js/script-tests/parser-syntax-check.js:
10:45 AM Changeset in webkit [166239] by mrobinson@webkit.org
  • 35 edits
    1 copy
    22 deletes in trunk

[GTK] Remove the autotools build
https://bugs.webkit.org/show_bug.cgi?id=130717

Reviewed by Anders Carlsson.

.:

  • .gitignore: Remove references to autotools files.
  • GNUmakefile.am: Removed.
  • Source/autotools/CheckSystemAndBasicDependencies.m4: Removed.
  • Source/autotools/CustomMacros.m4: Removed.
  • Source/autotools/FindDependencies.m4: Removed.
  • Source/autotools/PrintBuildConfiguration.m4: Removed.
  • Source/autotools/ReadCommandLineArguments.m4: Removed.
  • Source/autotools/SetupAutoconfHeader.m4: Removed.
  • Source/autotools/SetupAutomake.m4: Removed.
  • Source/autotools/SetupCompilerFlags.m4: Removed.
  • Source/autotools/SetupLibtool.m4: Removed.
  • Source/autotools/SetupWebKitFeatures.m4: Removed.
  • Source/autotools/Versions.m4: Removed.
  • Source/autotools/acinclude.m4: Removed.
  • Source/autotools/dolt.m4: Removed.
  • Source/autotools/gsettings.m4: Removed.
  • Source/cmake/OptionsGTK.cmake:
  • autogen.sh: Removed.
  • configure.ac: Removed.

Source/JavaScriptCore:

  • GNUmakefile.am: Removed.
  • config.h: Remove references to the autotools configure file.

Source/Platform:

  • GNUmakefile.am: Removed.

Source/ThirdParty:

  • gtest/GNUmakefile.am: Removed.
  • leveldb/GNUmakefile.am: Removed.

Source/ThirdParty/ANGLE:

  • GNUmakefile.am: Removed.

Source/WebCore:

  • GNUmakefile.am: Removed.
  • bindings/gobject/GNUmakefile.am: Removed.
  • config.h: Removed references to autotools configure file.

Source/WebCore/platform/gtk/po:

  • GNUmakefile.am: Removed.

Source/WebInspectorUI:

  • GNUmakefile.am: Removed.

Source/WebKit/gtk:

  • GNUmakefile.am: Removed.

Source/WebKit2:

  • GNUmakefile.am: Removed.
  • WebKit2Prefix.h: Removed references to the autotools configure file.
  • config.h: Ditto.

Source/WTF:

  • GNUmakefile.am: Removed.
  • config.h: Removed references to the autotools configure file.

Tools:

  • DumpRenderTree/config.h: Remove references to the autotools configure file.
  • GNUmakefile.am: Removed.
  • GtkLauncher/GNUmakefile.am: Removed.
  • GtkLauncher/main.c: Remove references to the autotools configure file.
  • MiniBrowser/gtk/BrowserDownloadsBar.c: Ditto.
  • MiniBrowser/gtk/BrowserSearchBar.c: Ditto.
  • MiniBrowser/gtk/BrowserWindow.c: Ditto.
  • MiniBrowser/gtk/GNUmakefile.am: Removed.
  • MiniBrowser/gtk/main.c: Remove references to the autotools configure file.
  • Scripts/build-webkit: No longer handle autotools.
  • Scripts/run-gtk-tests: Ditto.

(TestRunner._setup_testing_environment):

  • Scripts/run-launcher: Ditto.
  • Scripts/webkitdirs.pm: Ditto.
  • Scripts/webkitpy/common/config/contributionareas.py: Remove autotools as a contribution area.
  • Scripts/webkitpy/common/config/contributors.json: Ditto.
  • Scripts/webkitpy/port/gtk.py: No longer handle autotools.
  • Scripts/webkitpy/style/checker.py:
  • TestWebKitAPI/GNUmakefile.am: Removed.
  • TestWebKitAPI/config.h: Remove references to the autotools configure file.
  • WebKitTestRunner/GNUmakefile.am: Removed.
  • WebKitTestRunner/WebKitTestRunnerPrefix.h: Ditto.
  • gtk/GNUmakefile.am: Removed.
  • gtk/common.py: Remove checks for the autotools build.
  • gtk/symbols.filter: Renamed from Source/autotools/symbols.filter.
9:51 AM Changeset in webkit [166238] by bfulgham@apple.com
  • 8 edits
    2 adds in trunk

Prevent 'removetrack' events from firing when all inband text tracks are removed.
https://bugs.webkit.org/show_bug.cgi?id=130704

Reviewed by Eric Carlson.

Source/WebCore:

Test: media/track/track-remove-track.html

Based on the Blink change (patch by acolwell@chromium.org):
https://codereview.chromium.org/177243018/

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::prepareForLoad): Reorder steps to match W3C specification.
(WebCore::HTMLMediaElement::noneSupported): Forget tracks as required by specification.
(WebCore::HTMLMediaElement::mediaLoadingFailed): Forget tracks as required by specification.
(WebCore::HTMLMediaElement::removeTextTrack): Only request the 'removetracks' event if
requested by caller.
(WebCore::HTMLMediaElement::removeAllInbandTracks): Renamed to 'forgetResourceSpecificTracks'
(WebCore::HTMLMediaElement::noneSupported): Specify that we want the 'removetracks' event
fired for this use case.
(WebCore::HTMLMediaElement::prepareForLoad): Switch to new 'forgetResourceSpecificTracks' name.

  • html/HTMLMediaElement.h:
  • html/track/TextTrackList.cpp:

(TextTrackList::remove): Only fire the 'removetrack' event if the caller requests it.

  • html/track/TextTrackList.h: Add default argument to fire the 'removetrack' event

when removing a track.

  • html/track/TrackListBase.cpp:

(TrackListBase::remove): Only fire the 'removetrack' event if the caller requests it.

  • html/track/TrackListBase.h: Add default argument to fire the 'removetrack' event.

LayoutTests:

Based on the Blink change (patch by acolwell@chromium.org):
https://codereview.chromium.org/177243018/

  • media/track/track-remove-track-expected.txt: Added.
  • media/track/track-remove-track.html: Added.
9:44 AM Changeset in webkit [166237] by ap@apple.com
  • 2 edits in trunk/LayoutTests

media/W3C/audio/canPlayType/canPlayType_application_octet_stream.html frequently fails on EWS
https://bugs.webkit.org/show_bug.cgi?id=130720

  • platform/mac/TestExpectations: Marked as flaky.
9:42 AM Changeset in webkit [166236] by ddkilzer@apple.com
  • 3 edits
    2 adds in trunk

Hold a reference to firstSuccessfulSubmitButton in HTMLFormElement::submit
<http://webkit.org/b/130713>
<rdar://problem/15661876>

Reviewed by Darin Adler.

Merged from Blink (patch by Ian Beer):
http://crbug.com/303657
https://src.chromium.org/viewvc/blink?view=rev&revision=158938

Source/WebCore:

Test: fast/forms/form-submission-crash-successful-submit-button.html

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::submit):

LayoutTests:

  • fast/forms/form-submission-crash-successful-submit-button-expected.txt: Added.
  • fast/forms/form-submission-crash-successful-submit-button.html: Added.
8:53 AM Changeset in webkit [166235] by llango.u-szeged@partner.samsung.com
  • 2 edits in trunk/Tools

prepare-ChangeLog throws false positive warnings for modified files.
https://bugs.webkit.org/show_bug.cgi?id=130687

Reviewed by Darin Adler.

  • Scripts/prepare-ChangeLog:

(originalFile): Ignore git commit paremeter.
We don't need this to get the unmodified file.
(extractLineRangeBeforeChange):
Simplify the if statement. Follow-up after r166189.

7:13 AM Changeset in webkit [166234] by rgabor@webkit.org
  • 2 edits in trunk/Source/WTF

[ARM64] GCC generates wrong code with -O2 flag in WTF::weakCompareAndSwap
https://bugs.webkit.org/show_bug.cgi?id=130500

Reviewed by Filip Pizlo.

Set the first operand to the exact register in the inline assembly with GCC.

  • wtf/Atomics.h:

(WTF::weakCompareAndSwap):

6:14 AM Changeset in webkit [166233] by rgabor@webkit.org
  • 2 edits in trunk/Source/WebCore

[ARM64] GNU assembler fails in TransformationMatrix::multiply
https://bugs.webkit.org/show_bug.cgi?id=130454

Reviewed by Zoltan Herczeg.

Change the NEON intstructions to the proper style.

  • platform/graphics/transforms/TransformationMatrix.cpp:

(WebCore::TransformationMatrix::multiply):

6:08 AM Changeset in webkit [166232] by rgabor@webkit.org
  • 8 edits in trunk

[EFL] Add ARM64 build support
https://bugs.webkit.org/show_bug.cgi?id=130506

Rubber stamped by Gyuyoung Kim.

.:

  • CMakeLists.txt: Set WTF_CPU_ARM64 when aarch64 is defined.

Source/ThirdParty:

  • leveldb/port/atomic_pointer.h: Set ARCH_CPU_ARM_FAMILY when aarch64 is defined.

Source/WTF:

  • wtf/Platform.h: Set WTF_CPU_ARM64 when aarch64 is defined.

Tools:

  • Scripts/webkitdirs.pm:

(isARM): Detect aarch64 as ARM.

5:43 AM Changeset in webkit [166231] by svillar@igalia.com
  • 3 edits
    2 moves in trunk

[CSS Grid Layout] Vertical rectangles not considered as valid grid areas
https://bugs.webkit.org/show_bug.cgi?id=130513

Reviewed by Andreas Kling.

Source/WebCore:

Grid areas sized as vertical rectangles were incorrectly
considered as invalid by the parser. That's because the condition
checking that each new row was adjacent to the previous one was
using the first row of the currently parsed grid area instead of
the last one.

Test: fast/css-grid-layout/grid-template-areas-get-set.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseGridTemplateAreas):

LayoutTests:

Added tests for grid areas sized as horizontal and vertical
rectangles. The tests were also renamed from grid-template to
grid-template-areas which better describe their nature.

  • fast/css-grid-layout/grid-template-areas-get-set-expected.txt: Renamed from LayoutTests/fast/css-grid-layout/grid-template-get-set-expected.txt.
  • fast/css-grid-layout/grid-template-areas-get-set.html: Renamed from LayoutTests/fast/css-grid-layout/grid-template-get-set.html.
5:13 AM Changeset in webkit [166230] by Michał Pakuła vel Rutka
  • 4 edits in trunk

[EFL][WK2] Add NETWORK_PROCESS build option
https://bugs.webkit.org/show_bug.cgi?id=130131

Reviewed by Gyuyoung Kim.

.:

Add option to build EFL port with NETWORK_PROCESS set on. By default NETWORK_PROCESS is
set off.

  • Source/cmake/OptionsEfl.cmake:

Source/WebKit2:

  • PlatformEfl.cmake: Add file needed to build with NETWORK_PROCESS enabled.
5:13 AM Changeset in webkit [166229] by commit-queue@webkit.org
  • 4 edits in trunk/Tools

[webkitpy] Improve _parse_bug_description to recognize more descriptions
https://bugs.webkit.org/show_bug.cgi?id=130137

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

  • Scripts/webkitpy/common/checkout/changelog.py:

(ChangeLogEntry._parse_bug_description):

  • Scripts/webkitpy/common/checkout/changelog_unittest.py:

(test_parse_log_entries_from_changelog):

  • Scripts/webkitpy/common/checkout/checkout_unittest.py:

(CheckoutTest.test_commit_info_for_revision):

2:53 AM Changeset in webkit [166228] by Michał Pakuła vel Rutka
  • 5 edits in trunk/Source/WebKit2

[EFL][WK2] Add an API to set process model
https://bugs.webkit.org/show_bug.cgi?id=130133

Reviewed by Gyuyoung Kim.

Implement an API to set and get process model in ewk_context.
By default process model enum value is set to EWK_PROCESS_MODEL_SHARED_SECONDARY
which keeps current behaviour. Setting EWK_PROCESS_MODEL_MULTIPLE_SECONDARY
will make each web view use separate web process, also enables network process.

  • UIProcess/API/efl/ewk_context.cpp:

(toWKProcessModel):
(EwkContext::setProcessModel):
(toEwkProcessModel):
(EwkContext::processModel):
(ewk_context_process_model_set):
(ewk_context_process_model_get):

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

(TEST_F):

2:10 AM Changeset in webkit [166227] by calvaris@igalia.com
  • 4 edits
    2 adds in trunk

[GTK] Volume slider shows below the panel with videos in certain cases
https://bugs.webkit.org/show_bug.cgi?id=130608

Reviewed by Jer Noble.

Source/WebCore:

We need to delay the moment we check if the volume slider shows up
or down. If the video was not visible, the offsets were 0 and it
was forced to be shown below the panel.

Test: media/video-initially-hidden-volume-slider-up.html

  • Modules/mediacontrols/mediaControlsApple.js:

(Controller.prototype.createControls): Moved volumebox pseudo from
the subclass. The test checks for it and it would fail in Mac.

  • Modules/mediacontrols/mediaControlsGtk.js:

(ControllerGtk.prototype.createControls): Moved volumebox pseudo
to the superclass.
(ControllerGtk.prototype.handleMuteButtonMouseOver): Check if
volume slider should show up or down.
(ControllerGtk.prototype.updateReadyState): Removed check for
volume slider direction.

LayoutTests:

  • media/video-initially-hidden-volume-slider-up-expected.txt: Added.
  • media/video-initially-hidden-volume-slider-up.html: Added.
12:13 AM Changeset in webkit [166226] by bshafiei@apple.com
  • 5 edits in branches/safari-537.75-branch/Source

Versioning.

12:10 AM Changeset in webkit [166225] by bshafiei@apple.com
  • 1 copy in tags/Safari-537.75.13

New tag.

Note: See TracTimeline for information about the timeline view.