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

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 Stephanie Lewis
  • 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 Stephanie Lewis
  • 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 Stephanie Lewis
  • 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 Stephanie Lewis
  • 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 Stephanie Lewis
  • 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 Brent Fulgham
  • 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 BJ 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 Martin Robinson
  • 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 Brent Fulgham
  • 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 Beth Dakin
  • 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 Martin Robinson
(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.
Note: See TracTimeline for information about the timeline view.