Timeline



Dec 24, 2012:

11:53 PM Changeset in webkit [138455] by loislo@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed compilation fix for r138452.

11:41 PM Changeset in webkit [138454] by yurys@chromium.org
  • 7 edits in trunk/Source

Memory instrumentation: provide a way to mark a node as a root
https://bugs.webkit.org/show_bug.cgi?id=105737

Reviewed by Alexander Pavlov.

Source/WebCore:

Extended HeapGraphSerializer to add a fake root node with edges to all
real instrumentation roots.

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphSerializer::reportNode):
(WebCore::HeapGraphSerializer::addRootNode):
(WebCore):

  • inspector/HeapGraphSerializer.h:

(HeapGraphSerializer):

Source/WTF:

Objects added using MemoryInstrumentation::addRootObject will be marked as roots.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::WrapperBase::process):
(WTF):
(WTF::MemoryInstrumentation::WrapperBase::processPointer):
(WTF::MemoryInstrumentation::WrapperBase::processRootObjectRef):

  • wtf/MemoryInstrumentation.h:

(WrapperBase):

  • wtf/MemoryObjectInfo.h: added root marker which can be used by the heap graph builder.

(WTF::MemoryObjectInfo::MemoryObjectInfo):
(WTF::MemoryObjectInfo::isRoot):
(WTF::MemoryObjectInfo::markAsRoot):
(MemoryObjectInfo):

11:26 PM Changeset in webkit [138453] by yurys@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: add message listener only in case of standalone test-runner.html
https://bugs.webkit.org/show_bug.cgi?id=105715

Reviewed by Pavel Feldman.

Tell InspectorFrontendAPI that it is launched by standalone test runner so that it
can decide whether message event listener should be added.

  • inspector/front-end/InspectorFrontendAPI.js:
  • inspector/front-end/test-runner.html:
11:01 PM Changeset in webkit [138452] by loislo@chromium.org
  • 10 edits in trunk

Web Inspector: Native Memory Instrumentation: propagate member type as edge type to the serialized heap graph.
https://bugs.webkit.org/show_bug.cgi?id=105725

Reviewed by Yury Semikhatsky.

Source/WebCore:

MemoryOwningType was renamed to MemberType.
Source argument were removed from reportEdge, reportLeaf and other edge related methods because it is not necessary.
MemberType argument was propagated from MemoryInstrumentation down to HeapGraphSerializer.

  • inspector/HeapGraphSerializer.cpp:

(WebCore::HeapGraphEdge::HeapGraphEdge):
(HeapGraphEdge):
(WebCore::HeapGraphSerializer::HeapGraphSerializer):
(WebCore::HeapGraphSerializer::reportEdge):
(WebCore::HeapGraphSerializer::reportLeaf):
(WebCore::HeapGraphSerializer::serialize):

  • inspector/HeapGraphSerializer.h:

(HeapGraphSerializer):

  • inspector/MemoryInstrumentationImpl.cpp:

(WebCore::MemoryInstrumentationClientImpl::reportEdge):
(WebCore::MemoryInstrumentationClientImpl::reportLeaf):

  • inspector/MemoryInstrumentationImpl.h:

(MemoryInstrumentationClientImpl):

Source/WTF:

MemoryOwningType was renamed to MemberType.
Source argument were removed from reportEdge, reportLeaf and other edge related methods because it is not necessary.
MemberType argument was propagated from MemoryInstrumentation down to HeapGraphSerializer.

The changes covered by tests in TestWebKitAPI.

  • wtf/MemoryInstrumentation.cpp:

(WTF::MemoryInstrumentation::reportEdge):
(WTF::MemoryInstrumentation::reportLinkToBuffer):
(WTF::MemoryClassInfo::addPrivateBuffer):

  • wtf/MemoryInstrumentation.h:

(MemoryInstrumentationClient):
(MemoryInstrumentation):
(WTF::MemoryInstrumentation::addRawBuffer):
(WTF::MemoryInstrumentation::MemberTypeTraits::addObject):
(WTF::MemoryInstrumentation::addObjectImpl):

Tools:

MemberType value names were adjusted according to Style Guide.
Existing tests were extended with link type validation.

  • TestWebKitAPI/Tests/WTF/MemoryInstrumentationTest.cpp:
10:16 PM Changeset in webkit [138451] by tasak@google.com
  • 3 edits
    2 adds in trunk

::first-letter { overflow: -webkit-paged-y } causes crash
https://bugs.webkit.org/show_bug.cgi?id=105393

Reviewed by Beth Dakin.

Source/WebCore:

Should check whether e is available or not before invoking
e->hasTagName in adjustRenderStyle in StyleResolver.cpp.

Test: fast/css/pseudo-element-opagedxy-crash.html

  • css/StyleResolver.cpp:

(WebCore::StyleResolver::adjustRenderStyle):
If adjustRenderStyle is invoked in pseudoStyleForElement, the given
element is 0. So e is not available. However if the given style's
overflowY is OPAGEDX or OPAGEDY, adjustRenderStyle doesn't check
whether e is available or not before e->hasTagName.
This causes a crash.

LayoutTests:

  • fast/css/pseudo-element-opagedxy-crash-expected.txt: Added.
  • fast/css/pseudo-element-opagedxy-crash.html: Added.
9:23 PM Changeset in webkit [138450] by commit-queue@webkit.org
  • 7 edits in trunk/Source

Web Inspector: add async API for passing renderer process memory stats
https://bugs.webkit.org/show_bug.cgi?id=105278

Patch by Alexei Filippov <alph@chromium.org> on 2012-12-24
Reviewed by Yury Semikhatsky.

On some platforms (e.g. Linux) it may take some time to collect
total process memory information as it involves an IPC out of a
sandboxed renderer process. So add an async way to collect the statistics.

Source/Platform:

  • chromium/public/Platform.h:

(Platform):
(ProcessMemorySizesCallback):
(WebKit::Platform::ProcessMemorySizesCallback::~ProcessMemorySizesCallback):
(WebKit::Platform::requestProcessMemorySizes):

Source/WebCore:

  • platform/MemoryUsageSupport.cpp:

(WebCore::MemoryUsageSupport::requestProcessMemorySizes):
(WebCore):

  • platform/MemoryUsageSupport.h:

(MemoryUsageSupport):
(ProcessMemorySizesCallback):
(WebCore::MemoryUsageSupport::ProcessMemorySizesCallback::~ProcessMemorySizesCallback):

  • platform/chromium/MemoryUsageSupportChromium.cpp:

(WebCore::MemoryUsageSupport::requestProcessMemorySizes):
(WebCore):

  • platform/qt/MemoryUsageSupportQt.cpp:

(WebCore::MemoryUsageSupport::requestProcessMemorySizes):
(WebCore):

6:17 PM Changeset in webkit [138449] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Remove wtf/Platform.h includes from {c|cpp} files
https://bugs.webkit.org/show_bug.cgi?id=105678

Patch by Laszlo Gombos <l.gombos@samsung.com> on 2012-12-24
Reviewed by Kentaro Hara.

Remove wtf/Platform.h from the include list as it is already
included in config.h.

Source/JavaScriptCore:

  • disassembler/udis86/udis86.c:
  • disassembler/udis86/udis86_decode.c:
  • disassembler/udis86/udis86_input.c:
  • disassembler/udis86/udis86_itab_holder.c:
  • disassembler/udis86/udis86_syn-att.c:
  • disassembler/udis86/udis86_syn-intel.c:
  • disassembler/udis86/udis86_syn.c:
  • heap/VTableSpectrum.cpp:

Source/WebCore:

No new tests as there is no new functionality.

  • rendering/svg/RenderSVGRect.cpp:

Source/WebKit2:

  • Shared/qt/QtNetworkRequestData.cpp:
5:17 PM Changeset in webkit [138448] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

Follow up fixes for r137739
https://bugs.webkit.org/show_bug.cgi?id=104982

Reviewed by Ryosuke Niwa.

Applied darin's comments in https://bugs.webkit.org/show_bug.cgi?id=104982#c18

No tests. No change in behavior.

  • dom/ContainerNode.h:

(WebCore::ChildNodesLazySnapshot::nextNode):

11:37 AM Changeset in webkit [138447] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Update BB10 media render theme.
https://bugs.webkit.org/show_bug.cgi?id=105728

Patch by Tiancheng Jiang <tijiang@rim.com> on 2012-12-24
Reviewed by Rob Buis.

Internally reviewed by John Griggs.
Use GL renderer to paint media control.

  • css/mediaControlsBlackBerry.css:

(audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore::RenderThemeBlackBerry::paintMediaSliderTrack):
(WebCore::RenderThemeBlackBerry::paintMediaSliderThumb):

10:28 AM Changeset in webkit [138446] by mihnea@adobe.com
  • 2 edits
    1 add
    14 deletes in trunk/LayoutTests

[CSS Regions] Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=80191

Reviewed by Tony Chang.

Convert fast/regions/bottom-overflow-out-of-first-region.html to a ref test.
Used a monospace font, removed text-align and margins for text flowing into regions so that
the text fits nicely in the two regions of the test.

  • fast/regions/bottom-overflow-out-of-first-region-expected.html: Added.
  • fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • fast/regions/bottom-overflow-out-of-first-region.html:
  • platform/chromium-linux/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac-lion/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac-snowleopard/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-mac/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/chromium-win/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/chromium-win/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/efl/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/gtk/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/mac/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
  • platform/qt/fast/regions/bottom-overflow-out-of-first-region-expected.png: Removed.
  • platform/qt/fast/regions/bottom-overflow-out-of-first-region-expected.txt: Removed.
10:19 AM Changeset in webkit [138445] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Assert fix take 2.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initializeWebProcess):

10:12 AM Changeset in webkit [138444] by weinig@apple.com
  • 3 edits in trunk/Source/WebKit2

Fix WebKit2 asserting on launch.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::databaseManager):
(WebProcess):

8:45 AM Changeset in webkit [138443] by commit-queue@webkit.org
  • 20 edits in trunk/Source/WebCore

Unreviewed, rolling out r138436.
http://trac.webkit.org/changeset/138436
https://bugs.webkit.org/show_bug.cgi?id=105723

Asserts on state restoration in debug builds (Requested by
apavlov on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-24

  • inspector/InspectorAgent.cpp:

(InspectorAgentState):
(WebCore::InspectorAgent::enable):
(WebCore::InspectorAgent::disable):
(WebCore::InspectorAgent::evaluateForTestInFrontend):
(WebCore::InspectorAgent::inspect):

  • inspector/InspectorApplicationCacheAgent.cpp:

(ApplicationCacheAgentState):
(WebCore::InspectorApplicationCacheAgent::restore):
(WebCore::InspectorApplicationCacheAgent::enable):

  • inspector/InspectorCSSAgent.cpp:

(CSSAgentState):
(WebCore::InspectorCSSAgent::restore):
(WebCore::InspectorCSSAgent::enable):
(WebCore::InspectorCSSAgent::disable):

  • inspector/InspectorCanvasAgent.cpp:

(CanvasAgentState):
(WebCore::InspectorCanvasAgent::restore):
(WebCore::InspectorCanvasAgent::enable):
(WebCore::InspectorCanvasAgent::disable):

  • inspector/InspectorController.cpp:

(WebCore::InspectorController::InspectorController):

  • inspector/InspectorController.h:

(WebCore):
(InspectorController):

  • inspector/InspectorDOMStorageAgent.cpp:

(DOMStorageAgentState):
(WebCore::InspectorDOMStorageAgent::restore):
(WebCore::InspectorDOMStorageAgent::enable):
(WebCore::InspectorDOMStorageAgent::disable):

  • inspector/InspectorDatabaseAgent.cpp:

(DatabaseAgentState):
(WebCore):
(WebCore::InspectorDatabaseAgent::enable):
(WebCore::InspectorDatabaseAgent::disable):
(WebCore::InspectorDatabaseAgent::restore):

  • inspector/InspectorDebuggerAgent.cpp:

(WebCore::InspectorDebuggerAgent::disable):

  • inspector/InspectorFileSystemAgent.cpp:

(FileSystemAgentState):
(WebCore):
(WebCore::InspectorFileSystemAgent::enable):
(WebCore::InspectorFileSystemAgent::disable):
(WebCore::InspectorFileSystemAgent::clearFrontend):
(WebCore::InspectorFileSystemAgent::restore):

  • inspector/InspectorIndexedDBAgent.cpp:

(IndexedDBAgentState):
(WebCore):
(WebCore::InspectorIndexedDBAgent::restore):
(WebCore::InspectorIndexedDBAgent::enable):
(WebCore::InspectorIndexedDBAgent::disable):

  • inspector/InspectorLayerTreeAgent.cpp:

(LayerTreeAgentState):
(WebCore::InspectorLayerTreeAgent::restore):
(WebCore::InspectorLayerTreeAgent::enable):
(WebCore::InspectorLayerTreeAgent::disable):

  • inspector/InspectorPageAgent.cpp:

(PageAgentState):
(WebCore::InspectorPageAgent::restore):
(WebCore::InspectorPageAgent::webViewResized):
(WebCore::InspectorPageAgent::enable):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
(WebCore::InspectorPageAgent::removeScriptToEvaluateOnLoad):
(WebCore::InspectorPageAgent::setDeviceMetricsOverride):
(WebCore::InspectorPageAgent::setShowPaintRects):
(WebCore::InspectorPageAgent::setShowFPSCounter):
(WebCore::InspectorPageAgent::setScriptExecutionDisabled):
(WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
(WebCore::InspectorPageAgent::applyScreenWidthOverride):
(WebCore::InspectorPageAgent::applyScreenHeightOverride):
(WebCore::InspectorPageAgent::didPaint):
(WebCore::InspectorPageAgent::didLayout):
(WebCore::InspectorPageAgent::setEmulatedMedia):
(WebCore::InspectorPageAgent::applyEmulatedMedia):

  • inspector/InspectorResourceAgent.cpp:

(ResourceAgentState):
(WebCore::InspectorResourceAgent::restore):
(WebCore::InspectorResourceAgent::~InspectorResourceAgent):
(WebCore::InspectorResourceAgent::enable):
(WebCore::InspectorResourceAgent::disable):

  • inspector/InspectorState.cpp:

(WebCore::InspectorState::InspectorState):
(WebCore::InspectorState::loadFromCookie):
(WebCore):
(WebCore::InspectorState::mute):
(WebCore::InspectorState::unmute):
(WebCore::InspectorState::updateCookie):
(WebCore::InspectorState::remove):

  • inspector/InspectorState.h:

(WebCore):
(InspectorState):
(WebCore::InspectorState::setLong):

  • inspector/InspectorTimelineAgent.cpp:

(TimelineAgentState):
(WebCore::InspectorTimelineAgent::restore):
(WebCore::InspectorTimelineAgent::start):
(WebCore::InspectorTimelineAgent::stop):

  • inspector/WorkerInspectorController.cpp:

(WebCore::WorkerInspectorController::WorkerInspectorController):

  • inspector/WorkerInspectorController.h:

(WebCore):
(WorkerInspectorController):

7:59 AM Changeset in webkit [138442] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: Keep LiveEdit API disabled when idle
https://bugs.webkit.org/show_bug.cgi?id=104039

Patch by Peter Rybin <prybin@chromium.org> on 2012-12-24
Reviewed by Pavel Feldman.

Guards are added to LiveEdit call

  • bindings/v8/ScriptDebugServer.cpp:

(WebCore::ScriptDebugServer::setScriptSource):

6:03 AM Changeset in webkit [138441] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fix various RenderQueue bugs introduced by r138024.
https://bugs.webkit.org/show_bug.cgi?id=105717
RIM PR 269029

Reviewed by George Staikos.

Scroll/zoom jobs were pretty solid, but I managed to
leave some bugs in the region handling of RenderQueue's
renderRegularRenderJobs() function, causing us to skip
a desired blit or render operation in cases where the
region and tile tracking did not match up.

This commit fixes these errors.

  • WebKitSupport/RenderQueue.cpp:

(BlackBerry::WebKit::RenderQueue::renderRegularRenderJobs):

4:56 AM Changeset in webkit [138440] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[BlackBerry] DRT - Crashed when running pixels tests
https://bugs.webkit.org/show_bug.cgi?id=105711

RIM PR 270003

Patch by Xiaobo Wang <xbwang@torchmobile.com.cn> on 2012-12-24
Reviewed by George Staikos.

Calling window->post() here will result in buffer swapping which is
only allowed in UI thread now, and I found we don't need to call it
for GL renderer.

  • DumpRenderTree/blackberry/PixelDumpSupportBlackBerry.cpp:

(createBitmapContextFromWebView):

4:37 AM Changeset in webkit [138439] by charles.wei@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Close page popup when a page becomes invisible.
https://bugs.webkit.org/show_bug.cgi?id=105704

Reviewed by George Staikos.

Reviewed internally by Jakob Petsovits.

  • Api/WebPage.cpp:

(BlackBerry::WebKit::WebPagePrivate::setVisible):

3:23 AM Changeset in webkit [138438] by commit-queue@webkit.org
  • 6 edits in trunk

Web Inspector: refactor TextEditorHighlighter's highlight attributes to dense array
https://bugs.webkit.org/show_bug.cgi?id=105626

Patch by Andrey Lushnikov <lushnikov@chromium.com> on 2012-12-24
Reviewed by Pavel Feldman.

Source/WebCore:

Refactor highlight attributes from sparse array to dense array.

No new tests: no behaviour changes, coverage provided by existing tests.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorMainPanel.prototype._paintLine):
(WebInspector.TextEditorMainPanel.prototype._closingBlockOffset):

  • inspector/front-end/TextEditorHighlighter.js:

(WebInspector.TextEditorHighlighter.prototype._highlightLines):

LayoutTests:

Fix tests according to new highlight attribute structure.

  • inspector/editor/highlighter-long-line.html:
  • inspector/editor/highlighter-test.js:

(initialize_HighlighterTests.InspectorTest.dumpTextModel):
(initialize_HighlighterTests):

2:03 AM Changeset in webkit [138437] by commit-queue@webkit.org
  • 2 edits in trunk

[EFL [WebGL] GLES2 detection is broken.
https://bugs.webkit.org/show_bug.cgi?id=105677

We use the logic in FindGLES.cmake to detect GLES2 support during compile time.
OPENGLES2_FOUND is never set, even though OPENGLES2_INCLUDE_DIR and OPENGLES2_LIBRARY
contain right information. The name passed to find_package_handle_standard_args seems to be the issue here.
This patch changes the name passed to find_package_handle_standard_args to OPENGLES2.

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-24
Reviewed by Kenneth Rohde Christiansen.

  • Source/cmake/FindGLES.cmake:
1:07 AM Changeset in webkit [138436] by apavlov@chromium.org
  • 20 edits in trunk/Source/WebCore

Web Inspector: Make use of the new InspectorState::remove() in inspector agents
https://bugs.webkit.org/show_bug.cgi?id=105438

Reviewed by Yury Semikhatsky.

This patch introduces the following refactorings:

  • setting property values of InspectorState to "empty" objects has been replaced by removing them from the state;
  • InspectorState instance is no longer shared across agents, so that the property names can no longer clash. Instead, InspectorCompositeState creates and owns InspectorState instances for every agent;
  • agent-specific prefix has been stripped from most property names, where it looked synthetic.
  • updateCookie() is called from InspectorState::remove().

No new tests, as there is no visible change in the behavior.

  • inspector/InspectorAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/InspectorApplicationCacheAgent.cpp: Ditto.
  • inspector/InspectorCSSAgent.cpp: Ditto.
  • inspector/InspectorCanvasAgent.cpp: Ditto.
  • inspector/InspectorController.cpp: Make use of InspectorCompositeState rather than InspectorState.
  • inspector/InspectorController.h: Ditto.
  • inspector/InspectorDOMStorageAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/InspectorDatabaseAgent.cpp: Ditto.
  • inspector/InspectorDebuggerAgent.cpp: Ditto.

(WebCore::InspectorDebuggerAgent::disable):
Use "remove" instead of setting an empty object.

  • inspector/InspectorFileSystemAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/InspectorIndexedDBAgent.cpp: Ditto.
  • inspector/InspectorLayerTreeAgent.cpp: Ditto.
  • inspector/InspectorPageAgent.cpp: Ditto.

(WebCore::InspectorPageAgent::disable):
Use "remove" instead of setting empty values for certain properties.
(WebCore::InspectorPageAgent::addScriptToEvaluateOnLoad):
Remove unnecessary code (object is created and put into the map if none is found).

  • inspector/InspectorResourceAgent.cpp: Agent-specific property name prefix stripped.

(WebCore::InspectorResourceAgent::disable):
Use "remove" instead of setting an empty object for userAgentOverride.

  • inspector/InspectorState.cpp: Add InspectorCompositeState.

(WebCore::InspectorState::setFromCookie): Gets invoked from InspectorCompositeState::loadFromCookie().
(WebCore::InspectorState::updateCookie): Call updateCookie().
(WebCore::InspectorCompositeState::createAgentState): Creates an InspectorState instance to be passed to an agent.

  • inspector/InspectorState.h: Add InspectorCompositeState.

(WebCore::InspectorState::setLong): Fix cast.

  • inspector/InspectorTimelineAgent.cpp: Agent-specific property name prefix stripped.
  • inspector/WorkerInspectorController.cpp: Make use of InspectorCompositeState rather than InspectorState.
  • inspector/WorkerInspectorController.h: Ditto.
12:19 AM Changeset in webkit [138435] by Csaba Osztrogonác
  • 2 edits in trunk/Source/WebKit2

[Qt][Win] Unreviewed Xmas buildfix after r138433.

  • WebProcess/Cookies/WebCookieManager.h:

Dec 23, 2012:

10:10 PM Changeset in webkit [138434] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

Fix the incorrect use of preprocessor statement in API header
https://bugs.webkit.org/show_bug.cgi?id=105675

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-23
Reviewed by Sam Weinig.

Remove a preprocessor statement in WKBundlePage.h

  • WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:

(WKBundlePageGetInspector):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
9:45 PM Changeset in webkit [138433] by weinig@apple.com
  • 13 edits in trunk/Source/WebKit2

Switch WebCookieManager and AuthenticationManager to use the ChildProcess rather than holding on to a Connection
https://bugs.webkit.org/show_bug.cgi?id=105703

Reviewed by Dan Bernstein.

Also switches WebCookieManager over to be a MessageReceiver while we are at it.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initialize):
(WebKit::NetworkProcess::didReceiveMessage):

  • NetworkProcess/NetworkProcess.h:

(WebKit):

  • WebProcess/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::AuthenticationManager):
(WebKit::AuthenticationManager::didReceiveAuthenticationChallenge):

  • WebProcess/Authentication/AuthenticationManager.h:

(AuthenticationManager):

  • WebProcess/Cookies/WebCookieManager.cpp:

(WebKit):
(WebKit::WebCookieManager::WebCookieManager):
(WebKit::WebCookieManager::didReceiveMessage):
(WebKit::WebCookieManager::getHostnamesWithCookies):
(WebKit::WebCookieManager::cookiesDidChange):
(WebKit::WebCookieManager::dispatchCookiesDidChange):
(WebKit::WebCookieManager::getHTTPCookieAcceptPolicy):

  • WebProcess/Cookies/WebCookieManager.h:

(WebKit):
(WebCookieManager):

  • WebProcess/Cookies/soup/WebCookieManagerSoup.cpp:

(WebKit::WebCookieManager::setCookiePersistentStorage):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::setAlwaysAcceptCookies):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::initialize):
(WebKit::WebProcess::didReceiveMessage):

  • WebProcess/WebProcess.h:

(WebProcess):
(WebKit::WebProcess::cookieManager):

9:05 PM Changeset in webkit [138432] by Dimitri Glazkov
  • 12 edits
    2 adds in trunk/Source/WebCore

Split fast-rejection filter logic off SelectorChecker.
https://bugs.webkit.org/show_bug.cgi?id=105660

The awesome Bloom filter and parent stack logic don't need to be in SelectorChecker. They nicely factor out
into their own pretty thing, named thereby SelectorFilter.

Reviewed by Eric Seidel.

No change in functionality, covered by existing tests.

  • CMakeLists.txt: Added SelectorFilter to build systems.
  • GNUmakefile.list.am: Ditto.
  • Target.pri: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • css/CSSAllInOne.cpp: Ditto.
  • css/RuleSet.cpp: Changed to use SelectorFilter.

(WebCore::RuleData::RuleData): Ditto.

  • css/SelectorChecker.cpp: Ditto.
  • css/SelectorChecker.h: Ditto.

(SelectorChecker):

  • css/StyleResolver.cpp: Ditto.

(WebCore):
(WebCore::StyleResolver::pushParentElement): Ditto.
(WebCore::StyleResolver::popParentElement): Ditto.
(WebCore::StyleResolver::collectMatchingRulesForList): Ditto.

  • css/StyleResolver.h:

(StyleResolver): Ditto.

8:43 PM Changeset in webkit [138431] by mary.wu@torchmobile.com.cn
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] give url when createWindow
https://bugs.webkit.org/show_bug.cgi?id=105702
RIM bug# 257329

Reviewed by George Staikos.

This is to revert previous commit 575407238c35f1a0fa7ff7dd5dbbf6cc3ece1107
for integration issue of cascade and air, as old app side still use the url
to invoke. It would unrevert after resolving the integration issue.

  • WebCoreSupport/FrameLoaderClientBlackBerry.cpp:

(WebCore::FrameLoaderClientBlackBerry::dispatchCreatePage):

8:38 PM Changeset in webkit [138430] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Remove unused reference to "class LayerChromium"
https://bugs.webkit.org/show_bug.cgi?id=105502

Patch by Qiankun Miao <qiankun.miao@intel.com> on 2012-12-23
Reviewed by Kentaro Hara.

class LayerChromium doesn't exist any more. Just remove the unused
code.

  • platform/graphics/chromium/Canvas2DLayerBridge.h:
6:57 PM Changeset in webkit [138429] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Try to fix the Qt build.

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:
6:34 PM Changeset in webkit [138428] by weinig@apple.com
  • 11 edits in trunk/Source/WebKit2

Remove more special cased message receiving code from WebProcess
https://bugs.webkit.org/show_bug.cgi?id=105700

Reviewed by Dan Bernstein.

Makes WebApplicationCacheManager, WebResourceCacheManager and WebDatabaseManager
CoreIPC::MessageReceivers, removes them as special cases in WebProcess.

  • WebProcess/ApplicationCache/WebApplicationCacheManager.cpp:

(WebKit::WebApplicationCacheManager::WebApplicationCacheManager):
(WebKit::WebApplicationCacheManager::getApplicationCacheOrigins):
(WebKit::WebApplicationCacheManager::deleteEntriesForOrigin):
(WebKit::WebApplicationCacheManager::deleteAllEntries):
(WebKit::WebApplicationCacheManager::setAppCacheMaximumSize):

  • WebProcess/ApplicationCache/WebApplicationCacheManager.h:

(WebKit):
(WebApplicationCacheManager):

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::clearAllDatabases):
(WebKit::InjectedBundle::setDatabaseQuota):
(WebKit::InjectedBundle::clearApplicationCache):
(WebKit::InjectedBundle::setAppCacheMaximumSize):

  • WebProcess/ResourceCache/WebResourceCacheManager.cpp:

(WebKit::WebResourceCacheManager::WebResourceCacheManager):
(WebKit::WebResourceCacheManager::getCacheOrigins):
(WebKit::WebResourceCacheManager::clearCacheForOrigin):
(WebKit::WebResourceCacheManager::clearCacheForAllOrigins):

  • WebProcess/ResourceCache/WebResourceCacheManager.h:

(WebKit):
(WebResourceCacheManager):

  • WebProcess/WebCoreSupport/WebDatabaseManager.cpp:

(WebKit):
(WebKit::WebDatabaseManager::WebDatabaseManager):
(WebKit::WebDatabaseManager::getDatabasesByOrigin):
(WebKit::WebDatabaseManager::getDatabaseOrigins):
(WebKit::WebDatabaseManager::deleteDatabaseWithNameForOrigin):
(WebKit::WebDatabaseManager::deleteDatabasesForOrigin):
(WebKit::WebDatabaseManager::deleteAllDatabases):
(WebKit::WebDatabaseManager::setQuotaForOrigin):
(WebKit::WebDatabaseManager::dispatchDidModifyOrigin):
(WebKit::WebDatabaseManager::dispatchDidModifyDatabase):

  • WebProcess/WebCoreSupport/WebDatabaseManager.h:

(WebKit):
(WebDatabaseManager):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
(WebKit::WebProcess::didReceiveMessage):

  • WebProcess/WebProcess.h:

(WebProcess):
(WebKit::WebProcess::applicationCacheManager):
(WebKit::WebProcess::resourceCacheManager):
(WebKit::WebProcess::databaseManager):

5:29 PM Changeset in webkit [138427] by ap@apple.com
  • 39 edits in trunk/Source

<rdar://problem/12808377> Network process should respect cookie accept policy
https://bugs.webkit.org/show_bug.cgi?id=105684

Reviewed by Sam Weinig.

Source/WebCore:

Changed cookie change observer to not use platform strategies, to make it usable
in NetworkProcess. startObservingCookieChanges() now just takes a callback pointer.

  • WebCore.exp.in:
  • platform/CookiesStrategy.h:
  • platform/network/CookieStorage.h:
  • platform/network/cf/CookieStorageCFNet.cpp:

(WebCore::notifyCookiesChangedOnMainThread):
(WebCore::startObservingCookieChanges):

  • platform/network/mac/CookieStorageMac.mm:

(-[WebCookieStorageObjCAdapter notifyCookiesChangedOnMainThread]):
(-[WebCookieStorageObjCAdapter startListeningForCookieChangeNotificationsWithCallback:]):
(WebCore::startObservingCookieChanges):

Source/WebKit/efl:

  • WebCoreSupport/PlatformStrategiesEfl.cpp:
  • WebCoreSupport/PlatformStrategiesEfl.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/gtk:

  • WebCoreSupport/PlatformStrategiesGtk.cpp:
  • WebCoreSupport/PlatformStrategiesGtk.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/mac:

  • WebCoreSupport/WebPlatformStrategies.h:
  • WebCoreSupport/WebPlatformStrategies.mm:

CookiesStrategy no longer has notifyCookiesChanged().

Source/WebKit/qt:

  • WebCoreSupport/PlatformStrategiesQt.cpp:
  • WebCoreSupport/PlatformStrategiesQt.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/win:

  • WebCoreSupport/WebPlatformStrategies.cpp:
  • WebCoreSupport/WebPlatformStrategies.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit/wince:

  • WebCoreSupport/PlatformStrategiesWinCE.cpp:
  • WebCoreSupport/PlatformStrategiesWinCE.h:

CookiesStrategy no longer has notifyCookiesChanged(). This port didn't use it anyway.

Source/WebKit2:

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::initialize): Tell cookie manager which connection to
make calls on. Now that the code can run in either WebProcess or NetworkProcess,
it cannot use WebProcess singleton.
(WebKit::NetworkProcess::didReceiveMessage): Dispatch WebCookieManager messages.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initialize): Tell cookie manager which connection to
make calls on.

  • UIProcess/Downloads/DownloadProxy.cpp:

(WebKit::DownloadProxy::didReceiveAuthenticationChallenge): Changed to use
WebContext::networkingProcessConnection() instead of deciding upon the connection here.

  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::didReceiveMessage): Call m_webContext->dispatchMessage),
as WebCookieManagerProxy handlers are registered on the context. This may seem wasteful,
but a lot of registered managers will need the ame handling soon.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::networkingProcessConnection): Added a way to get connection
to whichever process performs networking.
(WebKit::WebContext::removeNetworkProcessProxy): Invalidate cookie manager proxy,
so that expected responses could be cleared.
(WebKit::WebContext::disconnectProcess): Updated a FIXME.

  • UIProcess/WebContext.h: Deleted deprecatedSharedProcess().

(WebKit::WebContext::networkingProcessConnection): Added.
(WebKit::WebContext::sendToNetworkingProcess): Added.
(WebKit::WebContext::sendToNetworkingProcessRelaunchingIfNecessary): Added.

  • UIProcess/WebCookieManagerProxy.cpp:

(WebKit::WebCookieManagerProxy::shouldTerminate): Should not prevent WebProcess
termination when NetworkProcess is in use.
(WebKit::WebCookieManagerProxy::getHostnamesWithCookies): Removed a useless ASSERT
that neiter documents expectations nor helps find bugs. Send a message to correct
process, whether WebProcess or NetworkProcess.
(WebKit::WebCookieManagerProxy::deleteCookiesForHostname): Ditto.
(WebKit::WebCookieManagerProxy::deleteAllCookies): Ditto.
(WebKit::WebCookieManagerProxy::startObservingCookieChanges): Ditto.
(WebKit::WebCookieManagerProxy::stopObservingCookieChanges): Ditto.
(WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy): Ditto.
(WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy): Ditto.

  • WebProcess/Cookies/WebCookieManager.h:
  • WebProcess/Cookies/WebCookieManager.cpp: Made the class usable in either WebProcess

or NetworkProcess.
(WebKit::WebCookieManager::setConnection): WebCookieManager now remembers which
connection to talk back on.
(WebKit::WebCookieManager::didReceiveMessage): Added an assertion that stored connection
matches the one being used to reciev messages.
(WebKit::WebCookieManager::getHostnamesWithCookies): Use the stored connection to
send a reply.
(WebKit::WebCookieManager::startObservingCookieChanges): Pass a callback function,
so that WebCore doesn't have to use a platform strategy.
(WebKit::WebCookieManager::cookiesDidChange): The new callback.
(WebKit::WebCookieManager::dispatchCookiesDidChange): Use the stored connection.
(WebKit::WebCookieManager::getHTTPCookieAcceptPolicy): Use the stored connection.

  • WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
  • WebProcess/WebCoreSupport/WebPlatformStrategies.h:

Removed notifyCookiesChanged() which is no longer part of CookiesStrategy.

1:03 PM Changeset in webkit [138426] by weinig@apple.com
  • 10 edits in trunk/Source/WebKit2

Make CustomProtocolManager a MessageReceiver to remove more special casing
https://bugs.webkit.org/show_bug.cgi?id=105682

Reviewed by Dan Bernstein.

To avoid storing a Connection in CustomProtocolManager, which is not a great idea without
it being the Connection::Client and therefore getting death notifications, I also made
ChildProcess a MessageSender so that extensions to it, like CustomProtocolManager, can
easily send messages to the parent process.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
Initialize the shared CustomProtocolManager, which will add it to the MessageReceiverMap in
the ChildProcess.

(WebKit::NetworkProcess::didReceiveMessage):
Remove the special case for CustomProtocolManager.

(WebKit::NetworkProcess::initializeNetworkProcess):
Call connectionEstablished on the CustomProtocolManager to make it start working as a NSURLProtocol handler.

  • NetworkProcess/NetworkProcess.h:

Add overrides necessary for MessageSender.

  • PluginProcess/PluginProcess.h:

Ditto.

  • Shared/ChildProcess.h:

(ChildProcess):
Make ChildProcess a MessageSender.

  • Shared/Network/CustomProtocols/CustomProtocolManager.h:

(CustomProtocolManager):
(WebKit::CustomProtocolManager::childProcess):

  • Shared/Network/CustomProtocols/mac/CustomProtocolManagerMac.mm:

(-[WKCustomProtocol startLoading]):
(-[WKCustomProtocol stopLoading]):
(WebKit::CustomProtocolManager::CustomProtocolManager):
(WebKit::CustomProtocolManager::initialize):
(WebKit::CustomProtocolManager::connectionEstablished):
Make CustomProtocolManager a MessageReceiver and split initialization and the time when it can
start acting as protocol handler as these happen at different times now. It also now stores a
ChildProcess rather than a Connection.

  • SharedWorkerProcess/SharedWorkerProcess.h:

Add overrides necessary for MessageSender.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):
Initialize the shared CustomProtocolManager, which will add it to the MessageReceiverMap in
the ChildProcess.

(WebKit::WebProcess::didReceiveMessage):
Remove the special case for CustomProtocolManager.

(WebKit::WebProcess::initializeCustomProtocolManager):
Call connectionEstablished on the CustomProtocolManager to make it start working as a NSURLProtocol handler.

  • WebProcess/WebProcess.h:

Add overrides necessary for MessageSender.

12:22 PM Changeset in webkit [138425] by Martin Robinson
  • 5 edits in trunk

[GTK] Remove plugin process configuration option
https://bugs.webkit.org/show_bug.cgi?id=105564

Reviewed by Carlos Garcia Campos.

Remove the --enable-plugin-process configuration option, opting instead to
always build the plugin process when building WebKit2. It isn't very interesting
for downstream to enable or disable the plugin process. It should always be
enabled for WebKit2 and it's better for us not to have to keep a disabled plugin
process building. Additionally, the in-process plugin isn't functional, since
plugins depend on GTK+ 2 and WebKit2 depends on GTK+ 3.

.:

  • configure.ac: Remove the configuration option.

Source/WebKit2:

  • GNUmakefile.am: Remove the option.
  • GNUmakefile.list.am: Remote the option.
9:52 AM Changeset in webkit [138424] by jpetsovits@rim.com
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Specify tile usage enum for backingstore tiles.
https://bugs.webkit.org/show_bug.cgi?id=105688
RIM PR 262120

Reviewed by George Staikos.

This enables us to have separate tile sizes for
backingstore / root layer purposes and generic layers.

  • Api/BackingStore.cpp:

(BlackBerry::WebKit::BackingStorePrivate::tileSize):

9:35 AM Changeset in webkit [138423] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding crashing expectations for two tests that constantly crash
in debug builds.

  • platform/gtk/TestExpectations:
9:28 AM Changeset in webkit [138422] by danw@gnome.org
  • 4 edits
    1 add in trunk

Add a patch to fix libxml2 2.9.0 regression
https://bugs.webkit.org/show_bug.cgi?id=104494

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules:
  • gtk/patches/libxml2-2.9.0-dtd.patch: patch from upstream

Unskip tests that were failing in libxml 2.9.0
https://bugs.webkit.org/show_bug.cgi?id=104494

Reviewed by Martin Robinson.

Added a patch from upstream to the jhbuild config to make all but
one of these pass again; the remaining one fails for a different
reason and is being tracked in a different bug.

  • platform/gtk/TestExpectations:
9:04 AM Changeset in webkit [138421] by tony@chromium.org
  • 2 edits in trunk/Source/WebCore

[Qt][Mac] Unreviewed fix the build after r138413
https://bugs.webkit.org/show_bug.cgi?id=105686

Don't use a temporary const reference so the compiler doesn't make a copy.
An example compile error (clang):
Source/WebCore/loader/CookieJar.cpp:73:67: error: copying parameter of type 'WebCore::NetworkStorageSession' invokes deleted constructor

return platformStrategies()->cookiesStrategy()->cookiesForDOM(SESSION(document), document->firstPartyForCookies(), url);

  • loader/CookieJar.cpp:

(WebCore::cookies):
(WebCore::setCookies):
(WebCore::cookiesEnabled):
(WebCore::cookieRequestHeaderFieldValue):
(WebCore::getRawCookies):
(WebCore::deleteCookie):

6:59 AM Changeset in webkit [138420] by Christophe Dumez
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening

Rebaseline fast/js/global-constructors.html after
r138393.

  • platform/efl/fast/js/global-constructors-expected.txt:
6:13 AM Changeset in webkit [138419] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed Xmas gardening after r138395.

  • platform/qt-5.0/fast/js/global-constructors-expected.txt:
5:16 AM Changeset in webkit [138418] by allan.jensen@digia.com
  • 2 edits in trunk/Tools

Unreviewed update of status to reviewer.

  • Scripts/webkitpy/common/config/committers.py:
1:28 AM Changeset in webkit [138417] by tkent@chromium.org
  • 7 edits in branches/chromium/1312

Merge 138365

Fix typing zero into multiple field input
https://bugs.webkit.org/show_bug.cgi?id=105501

Reviewed by Kent Tamura.

Source/WebCore:

We have a couple of problems when handling zero in a multiple fields
element.

  1. Typing '02' into a month field will set '12'.
  2. Typing '0' into 12 hour hour field will set '12' and move to the focus to the next field.

This change adds a type ahead buffer so we can handle these cases
properly. If the value in the type ahead buffer is valid we set it so a
change event will fire.

Added tests to *-multiple-fields-keyboard-events.html.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::didBlur): Clear the type ahead
buffer. handleKeyboardEvent() won't set the type ahead value if it is
not in range, so we set the value here.
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
(WebCore::DateTimeNumericFieldElement::setEmptyValue): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::setValueAsInteger):
(WebCore::DateTimeNumericFieldElement::stepDown): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::stepUp): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::typeAheadValue): Returns integer
value for the type ahead characters.
(WebCore):
(WebCore::DateTimeNumericFieldElement::visibleValue): If we have type
ahead characters, show that.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events.html:

TBR=keishi@webkit.org
BUG=crbug.com/167020
Review URL: https://codereview.chromium.org/11665021

12:53 AM Changeset in webkit [138416] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK][jhbuild] Bump GStreamer to 1.0.4
https://bugs.webkit.org/show_bug.cgi?id=105640

Reviewed by Martin Robinson.

  • gtk/jhbuild.modules: Update GStreamer modules to 1.0.4.

Dec 22, 2012:

8:44 PM EFLWebKitTests edited by Joone Hur
(diff)
6:36 PM Changeset in webkit [138415] by weinig@apple.com
  • 9 edits in trunk/Source/WebKit2

Give the ChildProcess a MessageReceiverMap
https://bugs.webkit.org/show_bug.cgi?id=105681

Reviewed by Dan Bernstein.

Moving the MessageReceiverMap to the ChildProcess will help shared code
between the WebProcess and NetworkProcess.

  • NetworkProcess/NetworkProcess.cpp:

(WebKit::NetworkProcess::NetworkProcess):
Pass 'this' instead of the MessageReceiverMap, now that ChildProcess
can be used to access the MessageReceiverMap.

  • NetworkProcess/NetworkProcess.h:

(NetworkProcess):
Remove the now extraneous MessageReceiverMap.

  • Shared/ChildProcess.cpp:

(WebKit::ChildProcess::ChildProcess):
(WebKit):
(WebKit::ChildProcess::~ChildProcess):
(WebKit::ChildProcess::addMessageReceiver):
(WebKit::ChildProcess::removeMessageReceiver):

  • Shared/ChildProcess.h:

(ChildProcess):
Add a MessageReceiverMap and helper functions from WebProcess.

  • WebProcess/Authentication/AuthenticationManager.cpp:

(WebKit::AuthenticationManager::AuthenticationManager):

  • WebProcess/Authentication/AuthenticationManager.h:

(AuthenticationManager):
Fix the FIXME, passing the ChildProcess rather than the MessageReceiverMap.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::WebProcess):

  • WebProcess/WebProcess.h:

(WebProcess):
Remove the MessageReceiverMap and helper functions.

6:19 PM Changeset in webkit [138414] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

Windows build fix.

  • WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp:
6:15 PM Changeset in webkit [138413] by ap@apple.com
  • 90 edits
    3 adds
    2 deletes in trunk/Source

Add a separate class for networking related storage
https://bugs.webkit.org/show_bug.cgi?id=105676

Reviewed by Sam Weinig.

NetworkingContext combines a reference to storage (cookies and more) and data that's
only meaningful when loading. This makes it very ugly to use for cookie manipulation
when there is no load (e.g. for document.cookie).

Adding NetworkStorageSession, which encorportes network-related sesion data, such
as cookies and session HTTP credentials.

For some ports, refactoring is not finished, NetworkStorageSession being a wrapper
for NetworkingContext.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj: Updated for new files and functions.
  • platform/network/PlatformCookieJar.h:
  • loader/CookieJar.cpp:
  • platform/CookiesStrategy.h:
  • platform/network/cf/CookieJarCFNet.cpp:
  • platform/network/chromium/CookieJarChromium.cpp:
  • platform/network/curl/CookieJarCurl.cpp:
  • platform/network/mac/CookieJarMac.mm:
  • platform/network/qt/CookieJarQt.cpp:
  • platform/network/soup/CookieJarSoup.cpp:
  • platform/network/win/CookieJarWin.cpp: PlatformCookieJar and strategy cookie functions now take a NetworkStorageSession instead of NetworkingContext. Note that they take a const reference to support creating a temporary session wrapper for ports that just wrap a NetworkingContext.
  • loader/ResourceLoader.cpp:
  • loader/cache/CachedResource.h:
  • platform/network/BlobResourceHandle.cpp:
  • platform/network/ResourceHandle.cpp:
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleInternal.h:
  • platform/network/chromium/ResourceHandle.cpp:
  • platform/network/curl/ResourceHandleCurl.cpp:
  • platform/network/mac/ResourceHandleMac.mm:
  • platform/network/qt/QNetworkReplyHandler.cpp:
  • platform/network/soup/DNSSoup.cpp:
  • platform/network/soup/ResourceHandleSoup.cpp:
  • platform/network/win/ResourceHandleWin.cpp: ResourceHandle no longer includes unneeded NetworkingContext.h and AuthenticationClient.h. This avoids near-world rebuilds on any NetworkingContext change.
  • platform/network/NetworkStorageSession.h: Added.
  • platform/network/NetworkStorageSessionStub.cpp: Added.
  • platform/network/cf/NetworkStorageSessionCFNet.cpp: Added. Good new stuff. Stub version just wraps NetworkingContext for platforms that still need to finish the refactoring.
  • platform/network/NetworkingContext.h: The context now has a NetworkStorageSession, and doesn't expose CFNet level objects directly.
  • platform/network/cf/CookieStorageCFNet.cpp:
  • platform/network/cf/CookieStorageCFNet.h: Removed. We no longer have separate free functions to track storage, it's part of NetworkStorageSession now.
  • platform/network/cf/ResourceHandleCFNet.cpp: Updated to use NetworkStorageSession.
  • platform/network/mac/CookieStorageMac.mm: Dont include CookieStorageCFNet.h, it was not needed.
3:14 PM Changeset in webkit [138412] by thakis@chromium.org
  • 2 edits in trunk/Source/WebCore

InlineTextBox: Remove potentially confusing "} if" pattern.
https://bugs.webkit.org/show_bug.cgi?id=105499

Reviewed by Ojan Vafai.

It's not clear to me on first look if this is intentional or missing
an "else" (and this pattern was used in just one other place in
webkit, which I've removed). It turns out no else is missing here,
this is checked by fast/text/justified-selection.html

  • rendering/InlineTextBox.cpp:

(WebCore::paintTextWithShadows):

2:35 PM FeatureFlags edited by Laszlo Gombos
Remove COMMANDLINE_TYPEDARRAYS from the list - see r114575 (diff)
2:28 PM FeatureFlags edited by Laszlo Gombos
Remove JIT_USE_SOFT_MODULO from the list - see r111481 (diff)
1:53 PM FeatureFlags edited by Laszlo Gombos
Remove CLASSIC_INTERPRETER and COMPUTED_GOTO_CLASSIC_INTERPRETER from … (diff)
1:07 PM FeatureFlags edited by Laszlo Gombos
Remove ARM_NEON_INTRINSICS from the list as it is not an ENABLE flag - … (diff)
12:54 PM FeatureFlags edited by Laszlo Gombos
Remove RUN_TIME_HEURISTICS from the list - see r131089 (diff)
12:38 PM FeatureFlags edited by Laszlo Gombos
Remove SKIA_GPU_CANVAS from the list - see r97570 (diff)
12:28 PM FeatureFlags edited by Laszlo Gombos
Remove MAC_JAVA_BRIDGE from the list - see r129964 (diff)
12:20 PM FeatureFlags edited by Laszlo Gombos
Remove CSS3_FLEXBOX from the list - see r100198 (diff)
12:15 PM FeatureFlags edited by Laszlo Gombos
Fix typo - DRAGGBALE -> DRAGGABLE (diff)
12:11 PM FeatureFlags edited by Laszlo Gombos
Remove DATABASE from the list - see r95271 (diff)
12:00 AM Changeset in webkit [138411] by zandobersek@gmail.com
  • 3 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Rebaselining the global constructors test after r138393.
Adjusting and merging expectations as required.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/js/global-constructors-expected.txt:

Dec 21, 2012:

11:34 PM Changeset in webkit [138410] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebCore

Web Inspector: Update CodeMirror to stable
https://bugs.webkit.org/show_bug.cgi?id=105653

Patch by Jan Keromnes <janx@linux.com> on 2012-12-21
Reviewed by Pavel Feldman.

Fixes several minor issues, including throw scroll on mac.

  • inspector/front-end/cm/codemirror.css:

(.cm-negative):
(.cm-positive):
(.CodeMirror-gutter):
(.cm-searching):

  • inspector/front-end/cm/codemirror.js:

(window.CodeMirror):
(window.CodeMirror.):

  • inspector/front-end/cm/css.js:

(.):

  • inspector/front-end/cm/htmlmixed.js:

(.):

  • inspector/front-end/cm/javascript.js:

(.):

  • inspector/front-end/cm/xml.js:
10:16 PM Changeset in webkit [138409] by loislo@chromium.org
  • 2 edits in trunk/Source/WTF

Unreviewed. Another try to fix Apple Win Release build.

  • wtf/FastMalloc.cpp:

(WTF::ClassIndex):

10:06 PM Changeset in webkit [138408] by loislo@chromium.org
  • 2 edits in trunk/Source/WTF

Unreviewed compilation fix for Apple Win Release after r138398.

  • wtf/FastMalloc.cpp:

(WTF::ClassIndex):

9:40 PM Changeset in webkit [138407] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Remove Crash expectation from media/track tests after r138381.

  • platform/chromium/TestExpectations:
6:12 PM Changeset in webkit [138406] by thakis@chromium.org
  • 2 edits in trunk/Tools

chromium: webkit-build-directory doesn't handle ninja output dirs
https://bugs.webkit.org/show_bug.cgi?id=105671

Reviewed by Daniel Bates.

Teach webkit-build-directory to detect the ninja build directory.

  • Scripts/webkitdirs.pm:

(determineBaseProductDir):
(determineIsChromiumNinja):

5:06 PM Changeset in webkit [138405] by rniwa@webkit.org
  • 7 edits in trunk

[Mountain Lion] platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation.html failing
https://bugs.webkit.org/show_bug.cgi?id=95477

Reviewed by Sam Weinig.

Tools:

Co-authored by Jia Pu.

Specify a fixed autocorrection dictionary in resetDefaultsToConsistentValues() so that
we can have consistent autocorrection behavior when running tests.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(resetDefaultsToConsistentValues):

  • WebKitTestRunner/InjectedBundle/mac/InjectedBundleMac.mm:

(WTR::InjectedBundle::platformInitialize):

LayoutTests:

Use "notationl" -> "notational" auto correction in autocorrection-blockquote-crash.html to get reliable results.
Also add a failing expectation to removing-underline-after-accepting-autocorrection-using-punctuation.html for WebKit2.
This failure is tracked by the bug 105616.

  • platform/mac-wk2/TestExpectations:
  • platform/mac/editing/spelling/autocorrection-blockquote-crash-expected.txt:
  • platform/mac/editing/spelling/autocorrection-blockquote-crash.html:
4:24 PM Changeset in webkit [138404] by esprehn@chromium.org
  • 12 edits in trunk

Replace documentFragmentIsShadowRoot with isTreeScope
https://bugs.webkit.org/show_bug.cgi?id=105345

Reviewed by Dimitri Glazkov.

.:

Expose isTreeScope symbol.

  • Source/autotools/symbols.filter:

Source/WebCore:

We can replace documentFragmentIsShadowRoot with isTreeScope() which is
trival to detect by checking treeScope()->rootNode() == this. To do this
we must stop adopting ShadowRoots into the document when they're removed,
which was always wrong anyway as it meant that the TreeScope of a ShadowRoot
was no longer itself after it had been removed. It also meant that the
children of a ShadowRoot that was removed were no longer in it's tree scope
despite being descendants of it.

Making this simplification allows further simplication like
Node::containingShadowRoot can be made O(1) instead of O(k) where k is
the depth of the node.

No new tests, just refactoring.

  • WebCore.exp.in:
  • dom/DocumentFragment.h:

(DocumentFragment):

  • dom/ElementShadow.cpp:

(WebCore::ElementShadow::removeAllShadowRoots):

  • dom/Node.cpp:

(WebCore::Node::setTreeScope):
(WebCore::Node::isTreeScope):
(WebCore):

  • dom/Node.h:

(Node):
(WebCore::Node::isShadowRoot):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::~ShadowRoot):

  • dom/ShadowRoot.h:

(ShadowRoot):

Source/WebKit2:

Expose isTreeScope symbol.

  • win/WebKit2.def.in:
4:22 PM Changeset in webkit [138403] by commit-queue@webkit.org
  • 10 edits in trunk/Source

Unreviewed, rolling out r138331.
http://trac.webkit.org/changeset/138331
https://bugs.webkit.org/show_bug.cgi?id=105668

Broke Windows clean builds; can't figure out how to fix it
(Requested by rniwa on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-21

Source/WebKit/win:

  • WebKit.vcproj/WebKit.sln:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/WebKitLibCommon.vsprops:
  • WebKit.vcproj/WebKitLibDebug.vsprops:
  • WebKit.vcproj/WebKitLibDebugAll.vsprops:
  • WebKit.vcproj/WebKitLibProduction.vsprops:
  • WebKit.vcproj/WebKitLibRelease.vsprops:

Source/WebKit2:

  • win/WebKit2.def.in:
3:48 PM Changeset in webkit [138402] by jsbell@chromium.org
  • 2 edits in trunk/LayoutTests

[Chromium] IndexedDB: storage/indexeddb/intversion-close-between-events.html flaky in content_shell
https://bugs.webkit.org/show_bug.cgi?id=105665

Test uses a setTimeout() which may fire at different times relative to the completion of the
IDBOpenDBRequest in multiprocess ports. Make the test resilient against different outcomes.

Reviewed by Tony Chang.

  • storage/indexeddb/resources/intversion-close-between-events.js:

(deleteSuccess):
(openSuccessOrError):
(checkFinished):

3:27 PM Changeset in webkit [138401] by wangxianzhu@chromium.org
  • 4 edits in trunk/Source

[Chromium-Android] Use harfbuzz-ng instead of harfbuzz-old on Android
https://bugs.webkit.org/show_bug.cgi?id=104410

Source/WebCore:

Using harfbuzz-ng we can avoid many bugs of the obsolete harfbuzz-old.

Reviewed by Eric Seidel.

No new tests. No change of functionality. Existing tests should pass.

  • WebCore.gyp/WebCore.gyp: Use harfbuzz-ng on Android.

Source/WebKit/chromium:

Reviewed by Eric Seidel.

  • features.gypi: Enable harfbuzz-ng on Android.
3:26 PM Changeset in webkit [138400] by jsbell@chromium.org
  • 7 edits
    3 adds in trunk

IndexedDB: Combine openConnection and openConnectionWithVersion
https://bugs.webkit.org/show_bug.cgi?id=105658

Reviewed by Tony Chang.

Source/WebCore:

Combine the logic from these two methods. Mostly a refactor, but in the "pending calls"
case the behavior is slightly altered since the version and no-version queues were
previously separate, so the order changes. The new order matches the spec and FF/IE
behavior, and a test is added to verify this.

Chromium's webkit_unit_tests rely on a quirk to bypass the upgrade mechanism; the usage
is slightly altered and made more explicit, and requires a small amount of test-only code.

Test: storage/indexeddb/open-ordering.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::PendingOpenCall::create):
(WebCore::IDBDatabaseBackendImpl::PendingOpenCall::PendingOpenCall):
(WebCore::IDBDatabaseBackendImpl::VersionChangeOperation::perform):
(WebCore::IDBDatabaseBackendImpl::transactionFinishedAndAbortFired):
(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::openConnection):
(WebCore::IDBDatabaseBackendImpl::runIntVersionChangeTransaction):
(WebCore::IDBDatabaseBackendImpl::close):

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

  • Modules/indexeddb/IDBFactoryBackendImpl.cpp:

(WebCore::IDBFactoryBackendImpl::open):

Source/WebKit/chromium:

  • tests/IDBDatabaseBackendTest.cpp:

LayoutTests:

  • storage/indexeddb/open-ordering-expected.txt: Added.
  • storage/indexeddb/open-ordering.html: Added.
  • storage/indexeddb/resources/open-ordering.js: Added.

(runTest):
(onDeleteSuccess):
(onRequest1Success):
(onRequest2Success):
(onRequest3Success):
(checkOrder):

2:34 PM Changeset in webkit [138399] by fpizlo@apple.com
  • 7 edits
    3 adds in trunk/Source/JavaScriptCore

DFG Arrayify slow path should be out-of-line
https://bugs.webkit.org/show_bug.cgi?id=105400

Reviewed by Gavin Barraclough.

The interesting bit of this change is allowing out-of-line slow path generators
to emit speculation checks. This is accomplished by having a version of
speculationCheck() that returns a jump placeholder instead of taking a jump (or
jump list) as an argument. You can then fill in that jump placeholder at a
later time, so long as you do it before OSR exit linking. Slow path generators
run before linking, so that just naturally ends up working.

This isn't really a big win, but we know that out-of-lining slow paths is
generally a good thing to do, so it's fair to assume that this is a move in the
right direction.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • dfg/DFGArrayifySlowPathGenerator.h: Added.

(DFG):
(ArrayifySlowPathGenerator):
(JSC::DFG::ArrayifySlowPathGenerator::ArrayifySlowPathGenerator):
(JSC::DFG::ArrayifySlowPathGenerator::generateInternal):

  • dfg/DFGOSRExitJumpPlaceholder.cpp: Added.

(DFG):
(JSC::DFG::OSRExitJumpPlaceholder::fill):

  • dfg/DFGOSRExitJumpPlaceholder.h: Added.

(DFG):
(OSRExitJumpPlaceholder):
(JSC::DFG::OSRExitJumpPlaceholder::OSRExitJumpPlaceholder):
(JSC::DFG::OSRExitJumpPlaceholder::operator!):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(DFG):
(JSC::DFG::SpeculativeJIT::arrayify):

  • dfg/DFGSpeculativeJIT.h:

(SpeculativeJIT):

2:22 PM Changeset in webkit [138398] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Further harden FastMalloc
https://bugs.webkit.org/show_bug.cgi?id=105656

Reviewed by Gavin Barraclough.

This increases the degree to which we harden the FastMalloc
linked lists. We now also mask the previous and next pointers
in the doubly linked list implementation. I've also made
the masking itself somewhat more complex without a measurable
cost. We still use ASLR to provide some general entropy, but
we blind the pointers against each nodes 'this' pointer.

  • wtf/FastMalloc.cpp:

(WTF::ClassIndex):
(WTF::SLL_Next):
(WTF::SLL_SetNext):
(WTF::Span::next):
(WTF::Span::prev):
(WTF::Span::setNext):
(WTF::Span::setPrev):
(Span):

As Span now has to do masking on the next and previous pointers,
I've updated the code to use accessors instead.

(WTF::DLL_Init):
(WTF::DLL_Remove):
(WTF::DLL_IsEmpty):
(WTF::DLL_Length):
(WTF::DLL_Prepend):
(WTF::TCMalloc_Central_FreeList::enumerateFreeObjects):
(WTF::TCMalloc_PageHeap::scavenge):
(WTF::TCMalloc_PageHeap::New):
(WTF::TCMalloc_PageHeap::AllocLarge):
(WTF::TCMalloc_PageHeap::ReturnedBytes):
(WTF::TCMalloc_PageHeap::Check):
(WTF::TCMalloc_PageHeap::CheckList):
(WTF::TCMalloc_PageHeap::ReleaseFreeList):
(WTF::TCMalloc_Central_FreeList::FetchFromSpans):

2:17 PM Changeset in webkit [138397] by beidson@apple.com
  • 3 edits in trunk/Source/WebKit2

ASSERT in WebResourceLoadScheduler::scheduleLoad with a crashed NetworkProcess.
<rdar://problem/12924845> and https://bugs.webkit.org/show_bug.cgi?id=105646

Reviewed by Alexey Proskuryakov.

If we fail to schedule a loader with the NetworkProcess it is probably because the NetworkProcess crashed.

Since these loaders will never succeed in loading we should schedule them to fail on a timer.

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::WebResourceLoadScheduler):
(WebKit::WebResourceLoadScheduler::scheduleLoad):
(WebKit::WebResourceLoadScheduler::addUnschedulableLoad):
(WebKit::WebResourceLoadScheduler::unscheduledLoadTimerFired):
(WebKit::WebResourceLoadScheduler::remove):

  • WebProcess/Network/WebResourceLoadScheduler.h:
1:00 PM Changeset in webkit [138396] by acolwell@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Removing CRASH expectations for media layout tests
broken by http://crbug.com/162917.
https://bugs.webkit.org/show_bug.cgi?id=103093

  • platform/chromium/TestExpectations:
12:58 PM Changeset in webkit [138395] by kenneth@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed potential fix EFL/Qt test breakage on WK2

Only disable scrollbars when in fixed layout mode.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

11:48 AM Changeset in webkit [138394] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

Update localizable strings as a followup to http://trac.webkit.org/changeset/138387
https://bugs.webkit.org/show_bug.cgi?id=105592

Rubberstamped by Alexey Proskuryakov.

  • English.lproj/Localizable.strings: Added a new error string.
11:38 AM Changeset in webkit [138393] by kbr@google.com
  • 6 edits in trunk

Expose ArrayBufferView constructor on DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=105605

Reviewed by Sam Weinig.

Source/WebCore:

Update IDL to track recent spec change exposing ArrayBufferView
constructor on DOMWindow for instanceof checks. There are no
constructors exposed in the Web IDL, however, so calling it via
operator new throws TypeError.

Test (updated): fast/canvas/webgl/array-unit-tests.html

  • html/canvas/ArrayBufferView.idl:

Removed OmitConstructor attribute.

  • page/DOMWindow.idl:

Exposed ArrayBufferView constructor function attribute.

LayoutTests:

Updated test from Khronos repository.

  • fast/canvas/webgl/array-unit-tests-expected.txt:
  • fast/canvas/webgl/array-unit-tests.html:
11:27 AM Changeset in webkit [138392] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, unskip now passing tests.

  • platform/qt-5.0-wk2/TestExpectations:
11:14 AM Changeset in webkit [138391] by beidson@apple.com
  • 7 edits in trunk/Source

Remove ResourceLoadScheduler::addMainResourceLoad and all related code
<rdar://problem/12925275> and https://bugs.webkit.org/show_bug.cgi?id=105644

Reviewed by Alexey Proskuryakov.

Now that main resources loads are scheduled (bug 49246) we don't need this stuff anymore.

Source/WebCore:

No new tests (No change in behavior).

  • WebCore.exp.in:
  • loader/ResourceLoadScheduler.cpp:
  • loader/ResourceLoadScheduler.h:

Source/WebKit2:

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::remove):
(WebKit::WebResourceLoadScheduler::networkProcessCrashed):

  • WebProcess/Network/WebResourceLoadScheduler.h:
11:13 AM Changeset in webkit [138390] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[WebGL][EFL][Qt] Transparent canvas composited non-transparent
https://bugs.webkit.org/show_bug.cgi?id=105325

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-21
Reviewed by Kenneth Rohde Christiansen.

glXPixmap is always created without alpha channel because 1st GLXFBConfig
in a list doesn't support transparency.
Use the same code that is used to find GLXFBConfig with alpha for window
creation in GraphicsSurfacePrivate::createPixmap(). Code is moved to
findFBConfigWithAlpha() method.

Covered by fast/canvas/webgl/webgl-composite-modes-repaint.html

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::createPixmap):
(WebCore::GraphicsSurfacePrivate::findFBConfigWithAlpha):
(GraphicsSurfacePrivate):

10:57 AM Changeset in webkit [138389] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/blackberry

[BlackBerry] Fullscreen video fixed position container horizontal position is wrong
https://bugs.webkit.org/show_bug.cgi?id=105488

Patch by Max Feil <mfeil@rim.com> on 2012-12-21
Reviewed by George Staikos.

The fix for https://bugs.webkit.org/show_bug.cgi?id=105333 has
broken fullscreen video, which was compensating by doing its
own positioning in x. My patch fixes things by making vertical
and horizontal handling symmetrical.
NOTE: This function was not upstreamed before, so you can't
actually see my diff. See the bug.

  • Api/WebPage.cpp:

(WebKit):
(BlackBerry::WebKit::WebPagePrivate::adjustFullScreenElementDimensionsIfNeeded):

10:53 AM Changeset in webkit [138388] by weinig@apple.com
  • 8 edits in trunk/Source/WebKit2

Add WebKit2 SPI to get the current selection as a WebArchive
https://bugs.webkit.org/show_bug.cgi?id=105613

Reviewed by Anders Carlsson.

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetSelectionAsWebArchiveData):

  • UIProcess/API/C/WKPage.h:

Add SPI.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::getSelectionAsWebArchiveData):
(WebKit):

  • UIProcess/WebPageProxy.h:

(WebPageProxy):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit):
(WebKit::frameWithSelection):
(WebKit::WebPage::getSelectionAsWebArchiveData):

  • WebProcess/WebPage/WebPage.h:

(WebPage):

  • WebProcess/WebPage/WebPage.messages.in:

Pipe getter to the WebProcess and back.

10:46 AM Changeset in webkit [138387] by beidson@apple.com
  • 9 edits in trunk/Source/WebKit2

Perform cleanup in WebProcess if the NetworkProcess crashes.
<rdar://problem/12903117> and https://bugs.webkit.org/show_bug.cgi?id=105592

Reviewed by Alexey Proskuryakov.

If the NetworkProcess crashes, a whole bunch of WebResourceLoaders (and WebCore::ResourceLoaders)
might be orphaned in the WebProcess.

These loaders need to fail once it is apparent they will never finish loading.

  • Shared/API/c/WKError.h: Add a new error representing an "WebKit Internal Error."
  • WebProcess/WebCoreSupport/WebErrors.h:
  • WebProcess/WebCoreSupport/mac/WebErrorsMac.mm:

(WebKit::internalError):

  • WebProcess/Network/WebResourceLoadScheduler.cpp:

(WebKit::WebResourceLoadScheduler::networkProcessCrashed): Call didFail all outstanding ResourceLoaders

and tell all WebResourceLoaders the NetworkProcess crashed.

  • WebProcess/Network/WebResourceLoadScheduler.h:
  • WebProcess/Network/WebResourceLoader.cpp:

(WebKit::WebResourceLoader::networkProcessCrashed): Call didFail with the new InternalError

  • WebProcess/Network/WebResourceLoader.h:
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::networkProcessConnectionClosed): Tell the scheduled the NetworkProcess crashed.

9:42 AM Changeset in webkit [138386] by Dimitri Glazkov
  • 74 edits in trunk

Unreviewed, rolling out r138376.
http://trac.webkit.org/changeset/138376
https://bugs.webkit.org/show_bug.cgi?id=104995

Broke a bunch of tests on mac.

Source/WebCore:

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::nodeName):
(WebCore):

  • dom/ShadowRoot.h:

(ShadowRoot):

LayoutTests:

  • editing/deleting/delete-ligature-001-expected.txt:
  • editing/pasteboard/copy-in-password-field-expected.txt:
  • editing/selection/select-all-textarea-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow.html:
  • fast/dom/shadow/resources/shadow-dom.js:

(isShadowRoot):

  • fast/events/5056619-expected.txt:
  • fast/forms/focus-selection-input-expected.txt:
  • inspector/elements/shadow-dom-modify-chardata-expected.txt:
  • inspector/elements/shadow-root-expected.txt:
  • inspector/elements/update-shadowdom-expected.txt:
  • platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
  • platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
  • platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
  • platform/chromium-win/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
  • platform/chromium-win/editing/input/caret-at-the-edge-of-input-expected.txt:
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-input-expected.txt:
  • platform/chromium-win/editing/inserting/4960120-1-expected.txt:
  • platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
  • platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/chromium-win/editing/selection/4895428-3-expected.txt:
  • platform/chromium-win/editing/selection/4975120-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/chromium-win/fast/events/autoscroll-expected.txt:
  • platform/chromium-win/fast/events/context-no-deselect-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
  • platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
  • platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
  • platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
  • platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
  • platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/chromium-win/fast/forms/number/number-appearance-rtl-expected.txt:
  • platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
  • platform/chromium-win/fast/forms/search-rtl-expected.txt:
  • platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
  • platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
  • platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
  • platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
  • resources/dump-as-markup.js:

(Markup._get):

9:12 AM Changeset in webkit [138385] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Removing a list of failure expectations that were added as a precaution
in r138250 in case of regressions (which in the end didn't occur).

  • platform/gtk/TestExpectations:
9:05 AM Changeset in webkit [138384] by zandobersek@gmail.com
  • 2 edits in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a few missing expectations for tests that require their baselines
to be checked before they are added.
Adding and modifying expectations where necessary to accommodate recent
changes in test behavior.

  • platform/gtk/TestExpectations:
8:47 AM Changeset in webkit [138383] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed, rolling out r138237.
http://trac.webkit.org/changeset/138237
https://bugs.webkit.org/show_bug.cgi?id=105637

Regresses web inspector's editor performance. (Requested by
pfeldman on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-21

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine):
(WebInspector.TextEditorChunkedPanel.prototype._repaintAll):
(WebInspector.TextEditorMainChunk.prototype.expand):

8:45 AM Changeset in webkit [138382] by zandobersek@gmail.com
  • 4 edits
    2 adds in trunk

[GTK] Add WebKit1-specific TestExpectations file
https://bugs.webkit.org/show_bug.cgi?id=97562

Reviewed by Dirk Pranke.

Tools:

Implement the expectations_files method inside the GtkPort class that
returns the list of the TestExpectations files the current test configuration
requires. The method is implemented in a similar way as on the EFL port.
A unit test is also added.

  • Scripts/webkitpy/layout_tests/port/gtk.py:

(GtkPort._search_paths):
(GtkPort):
(GtkPort.expectations_files):

  • Scripts/webkitpy/layout_tests/port/gtk_unittest.py:

(GtkPortTest.test_expectations_files):

LayoutTests:

Add properly formatted but currently empty TestExpectations file
for GTK WebKit1-specific test expectations.

  • platform/gtk-wk1/TestExpectations: Added.
8:36 AM Changeset in webkit [138381] by loislo@chromium.org
  • 2 edits in trunk/Source/WebCore

Various tests in media/track are intermittently crashing.
https://bugs.webkit.org/show_bug.cgi?id=105606

Reviewed by Eric Seidel.

The root of problem is the fact that we update tracks even if we are in process of deleting the document.
Media element can stop doing that if the document informed the element via ::stop that it is going away.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::endIgnoringTrackDisplayUpdateRequests):

8:19 AM Changeset in webkit [138380] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

[Chromium/Mac] Don't send an onclick event from a ctrl-click
https://bugs.webkit.org/show_bug.cgi?id=105554

Patch by Alexei Svitkine <asvitkine@chromium.org> on 2012-12-21
Reviewed by Dimitri Glazkov.

Don't send the onclick event on a control click event (which
triggers the context menu on the Mac). This matches the
behaviour of the Apple Mac port, although the Apple port
does this by checking whether the context menu is visible
in WebPage::mouseEvent().

This is a fix for http://crbug.com/146143

Source/WebCore:

Test: fast/events/controlclick-no-onclick.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleMouseReleaseEvent):

LayoutTests:

  • fast/events/controlclick-no-onclick-expected.txt: Added.
  • fast/events/controlclick-no-onclick.html: Added.
8:01 AM Changeset in webkit [138379] by shinyak@chromium.org
  • 6 edits
    2 adds in trunk

Implement ShadowRoot::elementFromPoint
https://bugs.webkit.org/show_bug.cgi?id=104579

Reviewed by Dimitri Glazkov.

Source/WebCore:

Move elementFromPoint and nodeFromPoint to TreeScope from Document so that ShadowRoot can call it.
In the elementFromPoint(), the element taken by nodeFromPoint is not in the same tree scope, its ancestor is returned.

Since nodeFromPoint does not return the shadow ancestor of the result node, I don't make it TreeScope method.

Test: fast/dom/shadow/elementfrompoint.html

  • dom/Document.cpp:

(WebCore::Document::elementFromPoint): Code is shared with TreeScope.
(WebCore::Document::caretRangeFromPoint):

  • dom/ShadowRoot.idl:
  • dom/TreeScope.cpp:

(WebCore::nodeFromPoint): Moved from Document.cpp
(WebCore):
(WebCore::TreeScope::elementFromPoint):

  • dom/TreeScope.h:

(WebCore):
(TreeScope):

LayoutTests:

  • fast/dom/shadow/elementfrompoint-expected.txt: Added.
  • fast/dom/shadow/elementfrompoint.html: Added.
7:55 AM Changeset in webkit [138378] by kenneth@webkit.org
  • 4 edits in trunk/Source

[EFL][WK2] Never create WebCore scrollbars for EFL/WK2
https://bugs.webkit.org/show_bug.cgi?id=105632

Reviewed by Antonio Gomes.

Source/WebCore:

For delegates scroll we must not use the scroll animator,
or similar as those depends on creating WebCore scrollbars.

Handle the wheel event manually for delegates scrolling.

  • page/FrameView.cpp:

(WebCore::FrameView::wheelEvent):

Source/WebKit2:

Then creating the frame ask to not create scrollbars and
lock it so they won't be created at any later time.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::transitionToCommittedForNewPage):

7:55 AM Changeset in webkit [138377] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Add Crash test expectation to the media/track/ tests which have explicit expectations.
It needs to be removed after fixing https://bugs.webkit.org/show_bug.cgi?id=105606

  • platform/chromium/TestExpectations:
7:44 AM Changeset in webkit [138376] by shinyak@chromium.org
  • 74 edits in trunk

[Shadow DOM]: ShadowRoot wrong nodeName attribute
https://bugs.webkit.org/show_bug.cgi?id=104995

Reviewed by Dimitri Glazkov.

Source/WebCore:

According to the Shadow DOM spec, ShadowRoot.nodeName should return '#document-fragment' instead of '#shadow-root'.
We remove ShadowRoot::nodeName.

No new tests, covered by existing tests.

  • dom/ShadowRoot.cpp:
  • dom/ShadowRoot.h:

(ShadowRoot):

LayoutTests:

Uses 'instanceof' to check the instance is ShadowRoot or not.
Update dump-as-markup.js to see 'instanceof' instead of nodeType.
Also, a lot of rebaselines have been conducted.

  • editing/deleting/delete-ligature-001-expected.txt:
  • editing/pasteboard/copy-in-password-field-expected.txt:
  • editing/selection/select-all-textarea-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow-expected.txt:
  • fast/dom/shadow/layout-tests-can-access-shadow.html:
  • fast/dom/shadow/resources/shadow-dom.js:

(isShadowRoot):

  • fast/events/5056619-expected.txt:
  • fast/forms/focus-selection-input-expected.txt:
  • inspector/elements/shadow-dom-modify-chardata-expected.txt:
  • inspector/elements/shadow-root-expected.txt:
  • inspector/elements/update-shadowdom-expected.txt:
  • platform/chromium-linux/editing/selection/select-from-textfield-outwards-expected.txt:
  • platform/chromium-linux/fast/forms/input-text-double-click-expected.txt:
  • platform/chromium-linux/fast/forms/textfield-outline-expected.txt:
  • platform/chromium-linux/fast/forms/validation-message-appearance-expected.txt:
  • platform/chromium-win/editing/deleting/delete-all-text-in-text-field-assertion-expected.txt:
  • platform/chromium-win/editing/input/caret-at-the-edge-of-input-expected.txt:
  • platform/chromium-win/editing/input/reveal-caret-of-multiline-input-expected.txt:
  • platform/chromium-win/editing/inserting/4960120-1-expected.txt:
  • platform/chromium-win/editing/pasteboard/drop-text-without-selection-expected.txt:
  • platform/chromium-win/editing/pasteboard/pasting-tabs-expected.txt:
  • platform/chromium-win/editing/selection/4895428-3-expected.txt:
  • platform/chromium-win/editing/selection/4975120-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-1-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-4-expected.txt:
  • platform/chromium-win/editing/selection/select-across-readonly-input-5-expected.txt:
  • platform/chromium-win/fast/events/autoscroll-expected.txt:
  • platform/chromium-win/fast/events/context-no-deselect-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-focus-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-readonly-expected.txt:
  • platform/chromium-win/fast/forms/input-appearance-selection-expected.txt:
  • platform/chromium-win/fast/forms/input-double-click-selection-gap-bug-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/chromium-win/fast/forms/input-readonly-autoscroll-expected.txt:
  • platform/chromium-win/fast/forms/input-text-click-inside-expected.txt:
  • platform/chromium-win/fast/forms/input-text-drag-down-expected.txt:
  • platform/chromium-win/fast/forms/input-text-option-delete-expected.txt:
  • platform/chromium-win/fast/forms/input-text-scroll-left-on-blur-expected.txt:
  • platform/chromium-win/fast/forms/input-text-self-emptying-click-expected.txt:
  • platform/chromium-win/fast/forms/number/number-appearance-rtl-expected.txt:
  • platform/chromium-win/fast/forms/plaintext-mode-2-expected.txt:
  • platform/chromium-win/fast/forms/search-rtl-expected.txt:
  • platform/chromium-win/fast/forms/tabbing-input-iframe-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/chromium-win/fast/forms/textarea-placeholder-visibility-2-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrollbar-expected.txt:
  • platform/chromium-win/fast/forms/textarea-scrolled-type-expected.txt:
  • platform/chromium-win/fast/forms/textfield-focus-ring-expected.txt:
  • platform/chromium-win/fast/forms/textfield-overflow-expected.txt:
  • platform/chromium-win/fast/frames/take-focus-from-iframe-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-10-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-7-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-8-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-add-summary-9-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-1-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-2-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-3-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-4-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-5-and-click-expected.txt:
  • platform/chromium-win/fast/html/details-remove-summary-6-and-click-expected.txt:
  • platform/chromium-win/fast/repaint/renderer-destruction-by-invalidateSelection-crash-expected.txt:
  • platform/chromium-win/fast/transforms/transformed-focused-text-input-expected.txt:
  • resources/dump-as-markup.js:

(Markup._get):

7:36 AM Changeset in webkit [138375] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed rebaseline.

  • platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
7:30 AM Changeset in webkit [138374] by mihaip@chromium.org
  • 3 edits
    2 adds in trunk

Slow performance with <select> with many options and size >= 2
https://bugs.webkit.org/show_bug.cgi?id=105483

Source/WebCore:

Reviewed by Eric Seidel.

Avoids creating renderers for children of list <select>s that are not
<option> or <optgroup>. This is both more correct (no other browser
displays them) and provides a performance benefit (direct text children
of <select> would have O(N2) behavior; this usually happened due to
whitespace between <option>...</option> tags).

Test: fast/forms/menulist-no-renderer-for-unexpected-children.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::childShouldCreateRenderer):

LayoutTests:

Reviewed by Eric Seidel.

Test that checks that text and non-<option> and <optgroup> element
children of <select> do not get a renderer.

  • fast/forms/menulist-no-renderer-for-unexpected-children-expected.txt: Added.
  • fast/forms/menulist-no-renderer-for-unexpected-children.html: Added.
7:28 AM Changeset in webkit [138373] by sudarsana.nagineni@linux.intel.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Rebaseline fast/js/global-constructors.html after r138248.

  • platform/efl/fast/js/global-constructors-expected.txt:
7:19 AM Changeset in webkit [138372] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed rebaseline.

  • platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
7:08 AM Changeset in webkit [138371] by sudarsana.nagineni@linux.intel.com
  • 2 edits in trunk/LayoutTests

Unreviewed EFL gardening.

Mark svg/custom/feDisplacementMap-01.svg as missing.

  • platform/efl/TestExpectations:
6:51 AM Changeset in webkit [138370] by commit-queue@webkit.org
  • 4 edits in trunk/Source

[EFL] Add guard around ContextMenuItemTagInspectElement
https://bugs.webkit.org/show_bug.cgi?id=105267

Patch by Seokju Kwon <Seokju Kwon> on 2012-12-21
Reviewed by Ryosuke Niwa.

Need INSPECTOR guard for using ContextMenuItemTagInspectElement.

Source/WebKit/efl:

  • WebCoreSupport/AssertMatchingEnums.cpp:

Source/WebKit2:

  • UIProcess/API/efl/ewk_context_menu_item.cpp:
6:50 AM FeatureFlags edited by alexis@webkit.org
Add CSS_TRANSFORMS_ANIMATIONS_TRANSITIONS_UNPREFIXED (diff)
6:25 AM Changeset in webkit [138369] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[EFL] Enable feature option for the CSS sticky position
https://bugs.webkit.org/show_bug.cgi?id=105630

Patch by Sudarsana Nagineni <sudarsana.nagineni@intel.com> on 2012-12-21
Reviewed by Kenneth Rohde Christiansen.

Enable CSS sticky position feature by default for the
EFL port. This feature option was added in r138252.

No new tests. Existing layout tests pass.

  • Scripts/webkitperl/FeatureList.pm:
5:47 AM Changeset in webkit [138368] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[WK2] REGRESSION(r138232): It made 4 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=105623

Patch by Jussi Kukkonen <jussi.kukkonen@intel.com> on 2012-12-21
Reviewed by Kenneth Rohde Christiansen.

r138232 changed functionality so that empty text output
no longer leads to a dump() call, which leads to a timeout.
Instead do a text dump if there is text output or if there
is no audio output.

  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::dumpResults):

5:40 AM Changeset in webkit [138367] by mikhail.pozdnyakov@intel.com
  • 3 edits
    3 adds in trunk

[WK2] TiledBackingStore: Scroll position is not reset when new page is loaded
https://bugs.webkit.org/show_bug.cgi?id=105627

Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Reset scroll position to (0,0) when new page is loaded.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::sendViewportAttributesChanged):

LayoutTests:

Added a layout test checking scroll position for newly loaded pages.

  • fast/dom/resources/check-scroll-position-onload.html: Added.
  • fast/dom/scroll-position-for-new-loads-expected.txt: Added.
  • fast/dom/scroll-position-for-new-loads.html: Added.
5:30 AM Changeset in webkit [138366] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed gardening. Rebaseline after r138365.

  • platform/chromium-mac-snowleopard/fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
4:42 AM Changeset in webkit [138365] by keishi@webkit.org
  • 13 edits in trunk

Fix typing zero into multiple field input
https://bugs.webkit.org/show_bug.cgi?id=105501

Reviewed by Kent Tamura.

Source/WebCore:

We have a couple of problems when handling zero in a multiple fields
element.

  1. Typing '02' into a month field will set '12'.
  2. Typing '0' into 12 hour hour field will set '12' and move to the focus to the next field.

This change adds a type ahead buffer so we can handle these cases
properly. If the value in the type ahead buffer is valid we set it so a
change event will fire.

Added tests to *-multiple-fields-keyboard-events.html.

  • html/shadow/DateTimeNumericFieldElement.cpp:

(WebCore::DateTimeNumericFieldElement::didBlur): Clear the type ahead
buffer. handleKeyboardEvent() won't set the type ahead value if it is
not in range, so we set the value here.
(WebCore::DateTimeNumericFieldElement::handleKeyboardEvent):
(WebCore::DateTimeNumericFieldElement::setEmptyValue): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::setValueAsInteger):
(WebCore::DateTimeNumericFieldElement::stepDown): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::stepUp): Clear type ahead buffer.
(WebCore::DateTimeNumericFieldElement::typeAheadValue): Returns integer
value for the type ahead characters.
(WebCore):
(WebCore::DateTimeNumericFieldElement::visibleValue): If we have type
ahead characters, show that.

  • html/shadow/DateTimeNumericFieldElement.h:

(DateTimeNumericFieldElement):

LayoutTests:

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/month-multiple-fields/month-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/time-multiple-fields/time-multiple-fields-keyboard-events.html:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events.html:
2:46 AM Changeset in webkit [138364] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GStreamer] Buffering ranges are reported incorrectly with GStreamer 1.0
https://bugs.webkit.org/show_bug.cgi?id=105319

Patch by Xabier Rodriguez Calvar <calvaris@igalia.com> on 2012-12-21
Reviewed by Philippe Normand.

We add the gPercentMax constant to select between 100 and
GST_FORMAT_PERCENT_MAX depending if we are compiling against
GStreamer 0.10 or 1.0 and we use that in the corresponding method.

Current tests should suffice.

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::buffered): Added the use of
gPercentMax constant instead of 100 to have the different code
paths for GStreamer 0.10 and 1.0.

2:46 AM Changeset in webkit [138363] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/efl

[EFL][WK1] Obsolete a case in test_ewk_frame api test to not make bot sick
https://bugs.webkit.org/show_bug.cgi?id=105142

Patch by Kangil Han <kangil.han@samsung.com> on 2012-12-21
Reviewed by Gyuyoung Kim.

BUG 49246 has changed load behavior on malformed url input.
That is why test_ewk_frame api test is timed out.
To not make bot sick, this patch comments out that test case at a moment.

  • tests/test_ewk_frame.cpp:

(TEST_F):

2:34 AM Changeset in webkit [138362] by János Badics
  • 2 edits in trunk/LayoutTests

[Qt][WK2] Gardening after r138232. Skipped 4 tests timing out.
https://bugs.webkit.org/show_bug.cgi?id=105623

Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0-wk2/TestExpectations:
2:31 AM Changeset in webkit [138361] by timothy_horton@apple.com
  • 11 edits in trunk/Source

PDFPlugin: Cannot drop files/URLs on PDFPlugin
https://bugs.webkit.org/show_bug.cgi?id=105516
<rdar://problem/12729443>

Reviewed by Alexey Proskuryakov.

Add shouldAllowNavigationFromDrags to Plugin/PluginView/etc., which WebCore will
consult when dragging over a PluginDocument to decide whether or not a drag may result in navigation.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::shouldAllowNavigationFromDrags): Added, always returning false to keep existing behavior.

  • WebProcess/Plugins/Netscape/NetscapePlugin.h:

(NetscapePlugin): Added.

  • WebProcess/Plugins/PDF/SimplePDFPlugin.h:

(WebKit::SimplePDFPlugin::shouldAllowNavigationFromDrags): Added, always returning true. (Simple)PDFPlugin should
navigate when dropped onto, just like an image or HTML document would.

  • WebProcess/Plugins/Plugin.h:

(Plugin): Add shouldAllowNavigationFromDrags.

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

(WebKit::PluginView::shouldAllowNavigationFromDrags): Forward shouldAllowNavigationFromDrags to the plugin.

  • WebProcess/Plugins/PluginView.h: Add shouldAllowNavigationFromDrags.
  • page/DragController.cpp:

(WebCore::DragController::operationForLoad): If we drag over a PluginDocument, check if its PluginView
claims to support navigation resulting from a drag (only PDFPlugin will for now). If it does, allow the drag.

  • plugins/PluginViewBase.h:

(WebCore::PluginViewBase::shouldAllowNavigationFromDrags): Add shouldAllowNavigationFromDrags.

2:22 AM WK2-EFLTextCheckerApiTutorial created by g.czajkowski@samsung.com
2:19 AM Changeset in webkit [138360] by János Badics
  • 2 edits in trunk/LayoutTests

[Qt] Gardening after r138316. Skipped a new failing reftest
with minor pixel differences.

Reviewed by Csaba Osztrogonác.

  • platform/qt/TestExpectations:
2:17 AM Changeset in webkit [138359] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

Unreviewed, rolling out r138357.
http://trac.webkit.org/changeset/138357
https://bugs.webkit.org/show_bug.cgi?id=105622

wrong fix for the problem (the original author actually
already did this, and it's not helping) (Requested by thorton
on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-21

  • win/WebKit2.def.in:
2:05 AM Changeset in webkit [138358] by loislo@chromium.org
  • 10 edits in trunk

Unreviewed, rolling out r138338.
http://trac.webkit.org/changeset/138338
https://bugs.webkit.org/show_bug.cgi?id=105621

speculative rollout because fast/dom/shadow/content-element-
distributed-nodes.html is crashing on linux debug. (Requested
by loislo on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-21

.:

  • Source/autotools/symbols.filter:

Source/WebCore:

  • WebCore.exp.in:
  • dom/DocumentFragment.h:
  • dom/Node.cpp:

(WebCore::Node::documentFragmentIsShadowRoot):
(WebCore):

  • dom/Node.h:

(Node):
(WebCore::Node::isShadowRoot):

  • dom/ShadowRoot.h:

Source/WebKit2:

  • win/WebKit2.def.in:
2:04 AM Changeset in webkit [138357] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebKit2

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

  • win/WebKit2.def.in:
1:54 AM Changeset in webkit [138356] by timothy_horton@apple.com
  • 7 edits in trunk/Source/WebKit2

Reducing print preview scale significantly causes a crash
https://bugs.webkit.org/show_bug.cgi?id=105519
<rdar://problem/12807090>

Reviewed by Alexey Proskuryakov.

The bitmap image used for print previews was being created respecting the print preview scale.
This doesn't make any sense, as the scale does not affect the size of the image required to
represent the previewed page. Instead, we should not scale the size, creating the buffer at a
size that is constant regardless of scale, and do the scaling when drawing *into* the buffer instead.

In some cases, this could cause an out-of-memory crash.

  • UIProcess/API/mac/WKPrintingView.mm:

(-[WKPrintingView _drawPreview:]): Rename rect to scaledPrintingRect for clarity. Compute print
preview bitmap image size from the original non-scaled drawing size and the device scale factor.
Hand the image size to drawRectToImage. Draw the image without scaling, as it's always created
at the correct size. Don't compute the scale factor from the size of the image, we can know it from WebPageProxy.

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::drawRectToImage): Add a parameter to drawRectForImage, imageSize.

  • UIProcess/WebPageProxy.h:

(WebPageProxy): Add a parameter to drawRectForImage, imageSize.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::drawRectToImage): Use imageSize to size our buffer, and scale up to make the printing rect
fit in the bitmap's bounds.

  • WebProcess/WebPage/WebPage.h:

(WebPage): Add a parameter to drawRectForImage, imageSize.

  • WebProcess/WebPage/WebPage.messages.in: Add a parameter to drawRectForImage, imageSize.
1:45 AM EFLWebKit edited by g.czajkowski@samsung.com
(diff)
1:33 AM Changeset in webkit [138355] by zeno.albisser@digia.com
  • 2 edits in trunk/Tools

[Qt][Mac] run-launcher cannot find Qt5WebKitWidgets.
https://bugs.webkit.org/show_bug.cgi?id=105309

On Windows the library name is Qt5WebKitWidgets as well.
So r138136 should not have adjusted the library name for Windows.

Reviewed by Simon Hausmann.

  • Scripts/webkitdirs.pm:

(builtDylibPathForName):

1:15 AM Changeset in webkit [138354] by adam.bergkvist@ericsson.com
  • 13 edits in trunk

MediaStream API: Update the MediaStream constructor
https://bugs.webkit.org/show_bug.cgi?id=98416

Reviewed by Adam Barth.

Updated the MediaStream constructor to support the more general argument
list from the latest Media Capture and Streams specification:
http://dev.w3.org/2011/webrtc/editor/getusermedia.html

Source/WebCore:

Added more test cases to existing tests.

  • Modules/mediastream/MediaStream.cpp:

(WebCore::containsSource):
(WebCore):
(WebCore::processTrack):
(WebCore::createFromSourceVectors):
(WebCore::MediaStream::create):

  • Modules/mediastream/MediaStream.h:
  • Modules/mediastream/MediaStream.idl:

LayoutTests:

  • fast/js/constructor-length.html:
  • fast/mediastream/MediaStreamConstructor-expected.txt:
  • fast/mediastream/MediaStreamConstructor.html:
  • platform/blackberry/fast/js/constructor-length-expected.txt:
  • platform/chromium/fast/js/constructor-length-expected.txt:
  • platform/gtk/fast/js/constructor-length-expected.txt:
  • platform/mac/fast/js/constructor-length-expected.txt:
  • platform/qt/fast/js/constructor-length-expected.txt:
1:07 AM Changeset in webkit [138353] by zeno.albisser@digia.com
  • 4 edits
    2 adds in trunk

[Qt] Add new TestExpectations for qt-5.0-mac-wk2.
https://bugs.webkit.org/show_bug.cgi?id=105424

This change will allow us to run a very specific
subset of the available LayoutTests on a mac buildbot.
The new baseline search path for mac will look as follows:
qt-5.0-mac-wk2 -> qt-5.0-wk2 -> qt-5.0 -> qt-mac -> qt

Reviewed by Dirk Pranke.

Tools:

  • Scripts/webkitpy/layout_tests/port/qt.py:

(QtPort._search_paths):

  • Scripts/webkitpy/layout_tests/port/qt_unittest.py:

(QtPortTest):

LayoutTests:

  • platform/qt-5.0-mac-wk2/TestExpectations: Added.

Dec 20, 2012:

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

More fix after r138348.

  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::createStreams):

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

Disable Nagle algorithm on WebSocket implementation for CF.
https://bugs.webkit.org/show_bug.cgi?id=102079

Build fix. Disable the new code on Lion, _kCFStreamSocketSetNoDelay apparently
cannot be used on this OS version.

  • platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
11:11 PM Changeset in webkit [138350] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, rolling out r138347.
http://trac.webkit.org/changeset/138347

media/track tests still failing

  • platform/chromium/TestExpectations:
10:44 PM Changeset in webkit [138349] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Fix build warnings related with gstreamer
https://bugs.webkit.org/show_bug.cgi?id=105614

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-20
Reviewed by Kentaro Hara.

The below functions have unused parameters.
Remove the parameter names to fix 'unused parameter' build warnings.

  • platform/audio/gstreamer/AudioDestinationGStreamer.cpp:

(WebCore::onGStreamerWavparsePadAddedCallback):

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:

(WebCore::messageCallback):
(WebCore::onGStreamerDeinterleavePadAddedCallback):
(WebCore::onGStreamerDeinterleaveReadyCallback):
(WebCore::onGStreamerDecodebinPadAddedCallback):

10:07 PM Changeset in webkit [138348] by toyoshim@chromium.org
  • 2 edits in trunk/Source/WebCore

Disable Nagle algorithm on WebSocket implementation for CF.
https://bugs.webkit.org/show_bug.cgi?id=102079

Reviewed by Alexey Proskuryakov.

Set TCP_NODELAY on CFWriteStream for SocketStreamHandle to improve
communication latency. Combination of Nagle and delayed-ACK could
affect performance in some environment, e.g., over Wifi network.

  • platform/network/cf/SocketStreamHandleCFNet.cpp:

(WebCore::SocketStreamHandle::createStreams):

9:37 PM Changeset in webkit [138347] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Rollout Crash Pass expectation changes for media/track after rolling out r138320.

  • platform/chromium/TestExpectations:
9:08 PM Changeset in webkit [138346] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

[WebGL][EFL][Qt][GTK] Jelly fishes leave trails on webgl canvas.
https://bugs.webkit.org/show_bug.cgi?id=105326

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-20
Reviewed by Noam Rosenthal.

Clear a drawing buffer after compositing if preserveDrawingBuffer is
false.
http://www.khronos.org/registry/webgl/specs/latest/#2.2

No new tests. Covered by existing webgl-preserve-drawing-buffer-repaint test.

  • platform/graphics/cairo/GraphicsContext3DPrivate.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):

  • platform/graphics/efl/GraphicsContext3DPrivate.cpp:

(GraphicsContext3DPrivate::copyToGraphicsSurface):

  • platform/graphics/qt/GraphicsContext3DQt.cpp:

(WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
(WebCore::GraphicsContext3DPrivate::copyToGraphicsSurface):

8:32 PM Changeset in webkit [138345] by rniwa@webkit.org
  • 3 edits in trunk/LayoutTests

Revert the wrong expectation update done in r138344 and fix a syntax error in TestExpectations for Mac.

  • platform/mac/TestExpectations:
  • platform/mac/editing/spelling/removing-underline-after-accepting-autocorrection-using-punctuation-expected.txt:
8:17 PM Changeset in webkit [138344] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectation once more.

It turned out that the bug 73865 had been fixed for JSC. So filed the bug 105606 instead.
At this point, I have to add [ Crash Pass ] expectation to the entire media/track for
the lack of alternatives.

i.e. now these media/track tests crashes are tracked by the bug 105606.

  • platform/mac/TestExpectations:
7:08 PM Changeset in webkit [138343] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[CoordGfx] Make single-argument AreaAllocator constructors explicit
https://bugs.webkit.org/show_bug.cgi?id=105598

Patch by Helder Correia <Helder Correia> on 2012-12-20
Reviewed by Noam Rosenthal.

Follow the coding style for AreaAllocator and GeneralAreaAllocator.

  • WebProcess/WebPage/CoordinatedGraphics/AreaAllocator.h:

(AreaAllocator):
(GeneralAreaAllocator):

7:00 PM Changeset in webkit [138342] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Even more Mac test expectation for bug 73865.

  • platform/mac/TestExpectations:
6:58 PM Changeset in webkit [138341] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add more Mac test expectations for bugs 73865 and 105603.

  • platform/mac/TestExpectations:
6:49 PM Changeset in webkit [138340] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 105601.

  • platform/mac/TestExpectations:
6:47 PM Changeset in webkit [138339] by fpizlo@apple.com
  • 2 edits in trunk/Source/WebCore

Create a variable name for a RAII scope so it doesn't die immediately.

Reviewed by Sam Weinig.

No new tests.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackAddCues):
(WebCore::HTMLMediaElement::textTrackRemoveCues):
(WebCore::HTMLMediaElement::removeTrack):
(WebCore::HTMLMediaElement::removeAllInbandTracks):

6:42 PM Changeset in webkit [138338] by esprehn@chromium.org
  • 10 edits in trunk

Replace documentFragmentIsShadowRoot with isTreeScope
https://bugs.webkit.org/show_bug.cgi?id=105345

Reviewed by Dimitri Glazkov.

.:

Expose isTreeScope symbol.

  • Source/autotools/symbols.filter:

Source/WebCore:

We can replace documentFragmentIsShadowRoot with isTreeScope() which is
trival to detect by checking treeScope()->rootNode() == this;

No new tests, just refactoring.

  • WebCore.exp.in:
  • dom/DocumentFragment.h:

(DocumentFragment):

  • dom/Node.cpp:

(WebCore::Node::isTreeScope):

  • dom/Node.h:

(Node):
(WebCore::Node::isShadowRoot):

  • dom/ShadowRoot.h:

(ShadowRoot):

Source/WebKit2:

Expose isTreeScope symbol.

  • win/WebKit2.def.in:
6:41 PM Changeset in webkit [138337] by Lucas Forschler
  • 2 edits in tags/Safari-537.23/Source/WebKit2

Merged r138336.

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

Set timer coalescing policy for WebKit2 processes on Mac until process visible assertion handles it automatically
https://bugs.webkit.org/show_bug.cgi?id=105594

Patch by Kiran Muppala <cmuppala@apple.com> on 2012-12-20
Reviewed by Mark Rowe.

  • Shared/mac/ChildProcessMac.mm:

(WebKit::initializeTimerCoalescingPolicy): Set task_latency and task_throughput QOS tiers as appropriate
for visible applications.
(WebKit::ChildProcess::platformInitialize): Add call to initializeTimerCoalescingPolicy.

6:18 PM Changeset in webkit [138335] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add another Mac test expectations for the bug 73865.

  • platform/mac/TestExpectations:
6:09 PM Changeset in webkit [138334] by commit-queue@webkit.org
  • 9 edits
    6 adds in trunk

Add canvas blending modes using Core Graphics
https://bugs.webkit.org/show_bug.cgi?id=100070

Patch by Rik Cabanier <cabanier@adobe.com> on 2012-12-20
Reviewed by Dirk Schulze.

Source/WebCore:

globalCompositeOperation is extended so it takes blend modes as well as compositing operators.
This patch adds an implementation for the Core Graphics port.

Tests: fast/canvas/canvas-blend-image.html

fast/canvas/canvas-blend-solid.html

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): Passed blendMode to underlying layer.
(WebCore::CanvasRenderingContext2D::drawImage): Passed blendMode to underlying drawImage call.
(WebCore::CanvasRenderingContext2D::drawImageFromRect): Passed blendMode to platofrm layer.

  • html/canvas/CanvasRenderingContext2D.h:

(CanvasRenderingContext2D): Eextended drawImage with new blendmode parameter.

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::setPlatformCompositeOperation): Passed blendmode to Core Graphics API.

LayoutTests:

Added test files for the new blending modes in Canvas

  • fast/canvas/canvas-blend-image-expected.txt: Added.
  • fast/canvas/canvas-blend-image.html: Added.
  • fast/canvas/canvas-blend-solid-expected.txt: Added.
  • fast/canvas/canvas-blend-solid.html: Added.
  • fast/canvas/script-tests/canvas-blend-image.js: Added.

(myGetImageData):
(checkBlendModeResult):
(prepareTestScenario):

  • fast/canvas/script-tests/canvas-blend-solid.js: Added.

(myGetImageData):
(checkBlendModeResult):
(prepareTestScenario):

  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
6:03 PM Changeset in webkit [138333] by tony@chromium.org
  • 2 edits in trunk/LayoutTests

[chromium] Unreviewed, mark a new test as failing on Chromium Mac.

  • platform/chromium/TestExpectations:
5:52 PM Changeset in webkit [138332] by commit-queue@webkit.org
  • 10 edits
    2 adds in trunk

Percentage min/max width replaced element may incorrectly rendered
https://bugs.webkit.org/show_bug.cgi?id=105264

Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-20
Reviewed by Tony Chang.

Source/WebCore:

To make do not include percentage min width in preferred logical width calculation,
because we cannot resolve it for preferred width.

Test: fast/css/percent-min-width-img-src-change.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
(WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
If shouldComputePreferred is ComputePreferred,
don't use minLogicalWidth or maxLogicalWidth if they are percent type.

  • rendering/RenderBox.h:

(RenderBox):

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
(WebCore::RenderReplaced::computeMaxPreferredLogicalWidth):
Modify from set includeMaxWidth=false to set shouldComputePreferred=ComputePreferred.

  • rendering/RenderReplaced.h:

(RenderReplaced):

  • rendering/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.

  • rendering/RenderSVGRoot.h:

(RenderSVGRoot):

  • rendering/RenderVideo.cpp:

(WebCore::RenderVideo::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.

  • rendering/RenderVideo.h:

(RenderVideo):

LayoutTests:

Add test to check when the source of images with percentage min-width is changed.

  • fast/css/percent-min-width-img-src-change-expected.txt: Added.
  • fast/css/percent-min-width-img-src-change.html: Added.
5:43 PM Changeset in webkit [138331] by andersca@apple.com
  • 10 edits in trunk/Source

Stop building WebKit2 for Windows
https://bugs.webkit.org/show_bug.cgi?id=105585

Reviewed by Brian Weinstein.

Source/WebKit/win:

Stop building WebKit2 on Windows, and change WebKit.vcproj to build WebKit.dll again.

  • WebKit.vcproj/WebKit.sln:
  • WebKit.vcproj/WebKit.vcproj:
  • WebKit.vcproj/WebKitApple.vsprops: Added.
  • WebKit.vcproj/WebKitDirectX.vsprops: Added.
  • WebKit.vcproj/WebKitLibCommon.vsprops:
  • WebKit.vcproj/WebKitLibDebug.vsprops:
  • WebKit.vcproj/WebKitLibDebugAll.vsprops:
  • WebKit.vcproj/WebKitLibProduction.vsprops:
  • WebKit.vcproj/WebKitLibRelease.vsprops:

Source/WebKit2:

Remove an unneeded export.

  • win/WebKit2.def.in:
5:39 PM Changeset in webkit [138330] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add Mac test expectations for the bug 73865.

  • platform/mac/TestExpectations:
5:26 PM Changeset in webkit [138329] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Finally found the problem. Using the wrong JSContextGroup.

5:18 PM Changeset in webkit [138328] by ap@apple.com
  • 3 edits in trunk/Source/WebCore

REGRESSION (r138191): Tests crash in ResourceRequest::setStorageSession
https://bugs.webkit.org/show_bug.cgi?id=105563

Reviewed by Brady Eidson.

Partially fixes crashing http/tests/appcache/main-resource-redirect.html
(but there is an unrelated regression affecting this test).

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::willSendRequest):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::willSendRequest): The client can make the object get destoryed, protect it to avoid accessing deleted memory.
5:01 PM Changeset in webkit [138327] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] [WebGL] [Wk2] Contents are not rendered properly.
https://bugs.webkit.org/show_bug.cgi?id=104664

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-20
Reviewed by Noam Rosenthal.

WebGL pages that render more than one frame are broken. Only 1st
frame comes to the UI side. All webgl repaint tests fail because
of this.
Specification of EXT_texture_from_pixmap extension here
http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt
says, that:
"The contents of the texture after the drawable has been bound are defined
as the result of all rendering that has completed before the call to
glXBindTexImageEXT."
It means that in order to get updates for every frame glXBindTexImageEXT has
to be called on every frame update.

Covered by existing fast/canavs/webgl/*repaint tests.

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::isReceiver):
(WebCore::GraphicsSurface::platformSwapBuffers):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):

4:59 PM Changeset in webkit [138326] by ryuan.choi@samsung.com
  • 36 edits
    1 add in trunk

[EFL] Build break with latest EFL libraries.
https://bugs.webkit.org/show_bug.cgi?id=104827

Reviewed by Laszlo Gombos.

.:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • Source/cmake/FindEo.cmake: Added.
  • Source/cmake/OptionsEfl.cmake:

Modified to check Eo when version of EFL libraries is 1.8.

Source/WebCore:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • PlatformEfl.cmake: Includes eo EFL library.
  • platform/Widget.h: Modified declaration of Evas and Evas_Object.

In addition, removed unnecessary declaration.

  • platform/efl/EflScreenUtilities.h: Modified declaration of Evas.
  • platform/efl/RenderThemeEfl.h: Removed unnecessary declaration.
  • platform/graphics/Icon.h: Ditto.
  • platform/graphics/Image.h: Modified declaration of Evas and Evas_Object.

Source/WebKit:

  • PlatformEfl.cmake: Includes eo EFL library.

Source/WebKit/efl:

  • WebCoreSupport/ChromeClientEfl.h: Removed unnecessary declaration.
  • WebCoreSupport/DumpRenderTreeSupportEfl.h: Ditto.
  • WebCoreSupport/EditorClientEfl.h: Ditto.
  • WebCoreSupport/FrameNetworkingContextEfl.h: Ditto.
  • WebCoreSupport/PageClientEfl.h: Ditto.

Source/WebKit2:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • PlatformEfl.cmake: Includes eo EFL library.
  • UIProcess/API/C/efl/WKAPICastEfl.h: Modified declaration of Evas_Object.
  • UIProcess/API/C/efl/WKView.h: Modified declaration of Evas.
  • UIProcess/efl/WebPopupMenuProxyEfl.h: Removed unnecessary declaration.

Source/WTF:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • wtf/OwnPtrCommon.h: Modified declaration of Evas_Object and Ecore_Timer.
  • wtf/PlatformEfl.cmake: Includes eo EFL library.
  • wtf/efl/RefPtrEfl.h: Modified declaration of Evas_Object.

Tools:

The eo EFL package is introduced and evas and ecore use it since 1.8.
While introducing Eo, EFL changed several structures of Evas and Ecore
from own specific class to Eo.

So, this patch adds FindEo and changes declaration of Evas, Evas_Object,
Ecore_Timer to build with latest EFL libraries.

  • DumpRenderTree/efl/CMakeLists.txt: Includes eo EFL library.
  • EWebLauncher/CMakeLists.txt: Ditto.
  • MiniBrowser/efl/CMakeLists.txt: Ditto.
  • ImageDiff/PlatformEfl.cmake: Ditto.
  • TestWebKitAPI/PlatformEfl.cmake: Ditto.
  • TestWebKitAPI/PlatformWebView.h: Modified declaration of Evas_Object.
  • WebKitTestRunner/InjectedBundle/TestRunner.h: Modified declaration of Ecore_Timer.
  • WebKitTestRunner/PlatformEfl.cmake: Includes eo EFL library.
  • WebKitTestRunner/PlatformWebView.h: Modified declaration of Evas_Object.
4:58 PM Changeset in webkit [138325] by dmazzoni@google.com
  • 2 edits in trunk/LayoutTests

accessibility/svg-remote-element.html is flaky (times out)
https://bugs.webkit.org/show_bug.cgi?id=105587

Reviewed by Chris Fleizach.

Avoid race condition where the test would never run if the
SVG image was already loaded before the load event listener
gets added.

  • accessibility/svg-remote-element.html:
4:51 PM Changeset in webkit [138324] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit2

[CoordGfx] Remove CoordinatedLayerUpdateInfo class forwarding
https://bugs.webkit.org/show_bug.cgi?id=105588

Patch by Helder Correia <Helder Correia> on 2012-12-20
Reviewed by Noam Rosenthal.

There is no such class.

  • UIProcess/CoordinatedGraphics/CoordinatedLayerTreeHostProxy.h:

(WebKit):

  • UIProcess/CoordinatedGraphics/LayerTreeRenderer.h:

(WebKit):

4:46 PM Changeset in webkit [138323] by eae@chromium.org
  • 4 edits in trunk/LayoutTests

Unreviewed, remove css3/flexbox/flex-algorithm.html from efl, gtk and qt TestExpectations file.

  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
4:44 PM Changeset in webkit [138322] by dino@apple.com
  • 4 edits in trunk/LayoutTests

REGRESSION: media/video-controls-captions-trackmenu.html intermittently fails
https://bugs.webkit.org/show_bug.cgi?id=105584

Unreviewed expected results update. Remove the failure expectation.

  • media/video-controls-captions-trackmenu-expected.txt:
  • media/video-controls-captions-trackmenu.html:
  • platform/mac/TestExpectations:
4:29 PM Changeset in webkit [138321] by oliver@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Try to convince bots to be happy with testapi.

4:23 PM Changeset in webkit [138320] by commit-queue@webkit.org
  • 18 edits
    2 deletes in trunk

Unreviewed, rolling out r138270.
http://trac.webkit.org/changeset/138270
https://bugs.webkit.org/show_bug.cgi?id=105589

Many media tests are failing/crashing intermittently, often
pointing at WebCore::HTMLTrackElement::didCompleteLoad as
culprit (Requested by dino_ on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-20

Source/WebCore:

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackModeChanged):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::HTMLTrackElement):
(WebCore::HTMLTrackElement::insertedInto):
(WebCore::HTMLTrackElement::parseAttribute):
(WebCore::HTMLTrackElement::scheduleLoad):
(WebCore::HTMLTrackElement::textTrackModeChanged):

  • html/HTMLTrackElement.h:
  • html/track/TextTrack.cpp:
  • html/track/TextTrack.h:

LayoutTests:

  • fast/events/constructors/track-event-constructor.html:
  • http/tests/security/text-track-crossorigin.html:
  • media/track/track-add-track-expected.txt:
  • media/track/track-add-track.html:
  • media/track/track-element-load-event-expected.txt: Removed.
  • media/track/track-element-load-event.html: Removed.
  • media/track/track-load-from-src-readyState.html:
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/mac/TestExpectations:
  • platform/qt/TestExpectations:
  • platform/win/TestExpectations:
4:21 PM Changeset in webkit [138319] by psolanki@apple.com
  • 6 edits in trunk/Source

Rename HAVE(NETWORK_CFDATA_ARRAY_CALLBACK) to USE(NETWORK_CFDATA_ARRAY_CALLBACK)
https://bugs.webkit.org/show_bug.cgi?id=105578

Reviewed by Alexey Proskuryakov.

Source/WebCore:

  • loader/ResourceBuffer.cpp: Remove duplicate append() call that was under the wrong ifdef.
  • loader/ResourceBuffer.h:

Source/WebKit2:

  • NetworkProcess/NetworkResourceLoader.cpp:
  • NetworkProcess/NetworkResourceLoader.h:
4:20 PM Changeset in webkit [138318] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a crash test expectation on Mac. ap is looking into the problem as we speak.

  • platform/mac/TestExpectations:
4:15 PM Changeset in webkit [138317] by esprehn@chromium.org
  • 4 edits
    2 adds in trunk

RenderBlock hit testing should ignore PseudoElements
https://bugs.webkit.org/show_bug.cgi?id=105545

Reviewed by Eric Seidel.

Source/WebCore:

Use nonPseudoNode() in hit testing code in RenderBlock and RenderBox so
that when clicking on the box generated by a pseudo element we never
generate a Position for the PseudoElement, but instead for the
generating node.

Test: fast/css-generated-content/block-and-box-hit-testing.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::positionForBox):
(WebCore::isEditingBoundary):
(WebCore::positionForPointRespectingEditingBoundaries):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::positionForPoint):

LayoutTests:

Add test for hit testing on pseudo element generated blocks and boxes.

  • fast/css-generated-content/block-and-box-hit-testing-expected.txt: Added.
  • fast/css-generated-content/block-and-box-hit-testing.html: Added.
4:13 PM Changeset in webkit [138316] by schenney@chromium.org
  • 5 edits
    2 adds in trunk

SVG: <altglpyh> for a surrogate pair character in a ligature fails
https://bugs.webkit.org/show_bug.cgi?id=102969

Reviewed by Dirk Schulze.

Source/WebCore:

There are two issues with SVG <altglyph> tags applied to surrogate
fonts, particularly when mixed with non-standard forms (arabic,
vertical, etc.).

First, there is an assertion that is invalid when an alt glyph is
substituted for the surrogate, because the text chunk that is consumed
by an alt glyph is the entire run, whereas we assert that a
surrogate's chunk is length 2 regardless. That assertion has been
removed.

Second, when an arabic character or some other characters requiring a
special form appears before the surrogate pair character inside the alt
glyph tag, we reject the alt glyph because it is not compatible with the form.
However, when we process the next character - the surrogate pair - we
do accept the alt glyph. This breaks all the indexes because we have
already consumed part of the run that is now considered the alt glyph.
Chaos ensues. This patch forces us to always accept alt glyph
characters (assuming we have some glyph to draw). This better matches
the intent of the spec - if someone specifies an alt glyph they are
explicitly stating which glyph they want used. We should not argue
with the content author.

Tests: svg/text/alt-glyph-for-surrogate-pair-expected.svg

svg/text/alt-glyph-for-surrogate-pair.svg

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath): Fix some poor code.

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::advanceSimpleText): Remove an assert that is not always valid.

  • svg/SVGFontData.cpp:

(WebCore::SVGFontData::applySVGGlyphSelection): Always return an altGlyph when found. Do not check it compatibility.

LayoutTests:

Test and reference result for altGlyph elements applied to a surrogate pair
following an arabic form. Note that these tests are html, but for the test to fail
without the patch they must be parsed as svg (xml).

  • svg/text/alt-glyph-for-surrogate-pair-expected.svg: Added.
  • svg/text/alt-glyph-for-surrogate-pair.svg: Added.
4:09 PM Changeset in webkit [138315] by adamk@chromium.org
  • 4 edits in trunk

Properly process <template> end tags when in TemplateContentsMode
https://bugs.webkit.org/show_bug.cgi?id=105556

Reviewed by Eric Seidel.

Source/WebCore:

  • html/parser/HTMLTreeBuilder.cpp:

(WebCore::HTMLTreeBuilder::processEndTag): Take care of the FIXME and just call
processTemplateEndTag() instead of incorrectly special-casing the end tag behavior in some cases.

LayoutTests:

  • html5lib/resources/template.dat:
4:04 PM Changeset in webkit [138314] by dpranke@chromium.org
  • 3 edits in trunk/Tools

TestExpectation fallback is broken
https://bugs.webkit.org/show_bug.cgi?id=105583

Reviewed by Ryosuke Niwa.

When I added support for the -wk2 in port names, it looks
like I broke the way we computed the list of TestExpectations
files so that the implementation-version directory was left out :(.
Fixed and cleaned up the tests.

  • Scripts/webkitpy/layout_tests/port/base.py:

(Port.expectations_files):

  • Scripts/webkitpy/layout_tests/port/port_testcase.py:

(TestWebKitPort.init):
(PortTestCase.test_skipped_directories_for_symbols):
(test_skipped_directories_for_features):
(test_skipped_directories_for_features_no_matching_tests_in_test_list):
(test_skipped_tests_for_unsupported_features_empty_test_list):
(test_skipped_layout_tests):
(test_expectations_files):

3:57 PM Changeset in webkit [138313] by commit-queue@webkit.org
  • 13 edits in trunk

.: [EFL][WebGL][Wk2] Replace HAVE(GLX) checks with USE(GLX).
https://bugs.webkit.org/show_bug.cgi?id=105431

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-20
Reviewed by Kenneth Rohde Christiansen.

This patch changes the check HAVE(GLX) to USE(GLX).
This would enable us to choose our preferred GL backend during build time.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore: [EFL][WebGL][Wk2] Replace HAVE(GLX) checks with USE(GLX)
https://bugs.webkit.org/show_bug.cgi?id=105431

Patch by Kondapally Kalyan <kalyan.kondapally@intel.com> on 2012-12-20
Reviewed by Kenneth Rohde Christiansen.

This patch changes the check HAVE(GLX) to USE(GLX).
This would enable us to choose our preferred GL backend during build time.
This patch also adds an additional api to query the shared buffer handle.
Buffer handle is not same as gl surface and would depend on how the content is
backed up.

  • platform/graphics/opengl/GLDefs.h:

(WebCore):

  • platform/graphics/opengl/GLPlatformContext.cpp:

(WebCore::GLPlatformContext::createContext):
(WebCore::GLPlatformContext::createOffScreenContext):
(WebCore::GLPlatformContext::createCurrentContextWrapper):

  • platform/graphics/opengl/GLPlatformSurface.cpp:

(WebCore::GLPlatformSurface::createOffscreenSurface):
(WebCore::GLPlatformSurface::createTransportSurface):
(WebCore::GLPlatformSurface::GLPlatformSurface):
(WebCore::GLPlatformSurface::handle):
(WebCore):
(WebCore::GLPlatformSurface::drawable):

  • platform/graphics/opengl/GLPlatformSurface.h:

(GLPlatformSurface):

  • platform/graphics/surfaces/glx/GLXContext.cpp:
  • platform/graphics/surfaces/glx/GLXContext.h:
  • platform/graphics/surfaces/glx/GLXSurface.cpp:

(WebCore::GLXTransportSurface::GLXTransportSurface):
(WebCore::GLXTransportSurface::destroy):
(WebCore::GLXPBuffer::initialize):
(WebCore::GLXPBuffer::freeResources):

  • platform/graphics/surfaces/glx/GLXSurface.h:
  • platform/graphics/surfaces/glx/GLXWindowResources.h:
  • platform/graphics/surfaces/glx/X11WindowResources.cpp:

(WebCore::X11OffScreenWindow::X11OffScreenWindow):
(WebCore::X11OffScreenWindow::setGeometry):
(WebCore::X11OffScreenWindow::createOffscreenWindow):
(WebCore::X11OffScreenWindow::destroyWindow):

  • platform/graphics/surfaces/glx/X11WindowResources.h:

(WebCore):
(DummySharedResources):
(WebCore::DummySharedResources::create):
(WebCore::DummySharedResources::nativeDisplay):
(WebCore::DummySharedResources::pBufferContextConfig):
(WebCore::DummySharedResources::surfaceContextConfig):
(WebCore::DummySharedResources::DummySharedResources):
(WebCore::DummySharedResources::~DummySharedResources):

3:54 PM Changeset in webkit [138312] by eae@chromium.org
  • 4 edits in trunk

[flexbox] Fix handling of very large flex grow/shrink values
https://bugs.webkit.org/show_bug.cgi?id=105579

Reviewed by Tony Chang.

Source/WebCore:

Add isfinite to childSize calculation in RenderFlexibleBox::
resolveFlexibleLengths to avoid overflow.

Covered by css3/flexbox/flex-algorithm.html.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::resolveFlexibleLengths):
Check if value is finite before adding to childSize.

LayoutTests:

Update expectations for element with very large flex grow value.

  • css3/flexbox/flex-algorithm.html:
3:51 PM Changeset in webkit [138311] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, rolling out r138265.
http://trac.webkit.org/changeset/138265
https://bugs.webkit.org/show_bug.cgi?id=105586

Accidentally committed extra code that is not reviewed and
shouldn't go with this commit. (Requested by ostap on
#webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-20

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::GraphicsSurfacePrivate):
(WebCore::GraphicsSurfacePrivate::createPixmap):
(GraphicsSurfacePrivate):
(WebCore::GraphicsSurface::platformSwapBuffers):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):

3:37 PM Changeset in webkit [138310] by Simon Fraser
  • 1 edit
    3 deletes in trunk/LayoutTests

Remove an incorrect WK2 result, and two there were identical to the WK1 results.

  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.txt: Removed.
  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.txt: Removed.
  • platform/mac-wk2/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.txt: Removed.
3:37 PM Changeset in webkit [138309] by Simon Fraser
  • 2 edits in trunk/LayoutTests

Skip tests in WK2 that rely on eventSender.beginDragWithFiles.

  • platform/mac-wk2/TestExpectations:
3:20 PM Changeset in webkit [138308] by msaboff@apple.com
  • 10 edits
    1 add in trunk/Source/JavaScriptCore

JIT: Change uninitialized pointer value -1 to constant
https://bugs.webkit.org/show_bug.cgi?id=105576

Rubber stamped by Gavin Barraclough.

Changed the use of -1 as a pointer value in the JITs to be the constant unusedPointer defined in the
new file jit/UnusedPointer.h. Made it's value 0xd1e7beef, which is a bad pointer on most architectures
because it is odd, and to distinguish it from other common values.

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::dfgResetGetByID):
(JSC::DFG::dfgResetPutByID):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::cachedPutById):

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

(JSC::JIT::resetPatchGetById):
(JSC::JIT::resetPatchPutById):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::resetPatchGetById):
(JSC::JIT::resetPatchPutById):

  • jit/JITWriteBarrier.h:

(JSC::JITWriteBarrierBase::clearToUnusedPointer):
(JSC::JITWriteBarrierBase::get):

  • jit/UnusedPointer.h: Added.
3:20 PM Changeset in webkit [138307] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 105584.

  • platform/mac/TestExpectations:
3:10 PM Changeset in webkit [138306] by ap@apple.com
  • 2 edits in trunk/Source/WebKit2

LocalTerminationDisabler is not needed in WebCookieManager.cpp
https://bugs.webkit.org/show_bug.cgi?id=105581

Reviewed by Anders Carlsson.

All WebCookieManager functions are synchronous, and all LocalTerminationDisabler does
is enable/disable a timer that cannot fire inside the function anyway.

  • WebProcess/Cookies/WebCookieManager.cpp: (WebKit::WebCookieManager::getHostnamesWithCookies): (WebKit::WebCookieManager::deleteCookiesForHostname): (WebKit::WebCookieManager::deleteAllCookies): (WebKit::WebCookieManager::startObservingCookieChanges): (WebKit::WebCookieManager::setHTTPCookieAcceptPolicy): (WebKit::WebCookieManager::getHTTPCookieAcceptPolicy):
3:06 PM Changeset in webkit [138305] by andersca@apple.com
  • 3 edits in trunk/Tools

Don't include WebKit2 headers when building TestWebKitAPI on windows
https://bugs.webkit.org/show_bug.cgi?id=105582

Reviewed by Tim Horton.

  • TestWebKitAPI/config.h:
  • TestWebKitAPI/win/main.cpp:
2:50 PM Changeset in webkit [138304] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 105580.

  • platform/mac/TestExpectations:
2:38 PM Changeset in webkit [138303] by rniwa@webkit.org
  • 4 edits in trunk

REGRESSION(r133820?): SimplifyMarkupTest API test asserts
https://bugs.webkit.org/show_bug.cgi?id=105370

Reviewed by Simon Fraser.

Source/WebCore:

The bug was caused by SimplifyMarkupCommand::doApply calling removeNodePreservingChildren on nodes
that have already been removed. We normally check this condition in pruneSubsequentAncestorsToRemove
but we weren't checking it when there were no ancestor to remove because we early exited in that case.

Fixed the bug by doing the early exit for when the node's parent had already been removed first.

Test: TestWebKitAPI/Tests/mac/SimplifyMarkup.mm

  • editing/SimplifyMarkupCommand.cpp:

(WebCore::SimplifyMarkupCommand::doApply):
(WebCore::SimplifyMarkupCommand::pruneSubsequentAncestorsToRemove): Also removed an unused variable
nodeAfterHighestAncestorToRemove.

Tools:

Re-enable the test.

  • TestWebKitAPI/Tests/mac/SimplifyMarkup.mm:

(TestWebKitAPI::TEST):

2:35 PM Changeset in webkit [138302] by noel.gordon@gmail.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Disable color profile support for WebImageSkia users
https://bugs.webkit.org/show_bug.cgi?id=105493

Reviewed by Eric Seidel.

Disable color profiles to prevent null pointer dereference under some
conditions. Tested by unittests at src.chromium.org.

  • src/WebImageSkia.cpp:

(WebKit::WebImage::fromData):
(WebKit::WebImage::framesFromData):

2:20 PM Changeset in webkit [138301] by beidson@apple.com
  • 7 edits in trunk/Source/WebKit2

[GTK] Remove the --enable-unstable-features configuration option
https://bugs.webkit.org/show_bug.cgi?id=105327

Patch by Zan Dobersek <zandobersek@gmail.com> on 2012-12-20
Reviewed by Martin Robinson.

Remove the unnecessary feature_defines_unstable variable.
Remove the unstable-features configuration option.

  • configure.ac:
  • GNUmakefile.am:
2:17 PM Changeset in webkit [138300] by fpizlo@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

DFG shouldn't emit CheckStructure on array accesses if exit profiling tells it not to
https://bugs.webkit.org/show_bug.cgi?id=105577

Reviewed by Mark Hahnenberg.

I don't know why this wasn't there from the beginning.

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::getArrayModeAndEmitChecks):

2:13 PM Changeset in webkit [138299] by Antti Koivisto
  • 2 edits in trunk/Source/WebCore

Font description not synchronized correctly on orientation affecting property changes
https://bugs.webkit.org/show_bug.cgi?id=105533

Reviewed by Enrica Casucci.

In StyleResolver checkForOrientationChange() function checks if the new computed orientation differs from the parent
orientation and updates the style's font description only if it does. This is not correct as equal values do not guarantee
the new font description is actually up to date. We can leave the function with the computed orientation and the font
description still out of sync.

Fix by bailing out fast only if the font description is already in sync.

No layout test yet, verified with a test app.

  • css/StyleResolver.cpp:

(WebCore::checkForOrientationChange):
(WebCore::StyleResolver::updateFont):

2:12 PM Changeset in webkit [138298] by commit-queue@webkit.org
  • 12 edits
    2 adds in trunk

window.crypto.getRandomValues should return the input ArrayBufferView
https://bugs.webkit.org/show_bug.cgi?id=104845

Source/WebCore:

The W3C Web Crypto API FPWD, as well as the WHATWG February 2012 draft,
define crypto.getRandomValues() as returning the input ArrayBufferView,
to allow function call chaining. Update the implementation to match
the current spec, rather than the old spec of void/undefined.

Patch by Ryan Sleevi <rsleevi@chromium.org> on 2012-12-20
Reviewed by Kentaro Hara.

Test: security/crypto-random-values-types.html

  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSCryptoCustom.cpp: Added.

(WebCore):
(WebCore::JSCrypto::getRandomValues):
Added custom getRandomValues implementation so that the input wrapped
ArrayBufferView can be returned directly to the caller. This is to
preserve the underlying type and indexing accessor for the TypedArray
subclass.

  • bindings/v8/custom/V8CryptoCustom.cpp: Added.

(WebCore):
(WebCore::V8Crypto::getRandomValuesCallback):
Added custom getRandomValues implementation so that the input wrapped
ArrayBufferView can be returned directly to the caller. This is to
preserve the underlying type and indexing accessor for the TypedArray
subclass.

  • page/Crypto.idl:

LayoutTests:

Patch by Ryan Sleevi <rsleevi@chromium.org> on 2012-12-20
Reviewed by Kentaro Hara.

  • fast/js/resources/js-test-pre.js:

(shouldBeType):
Added helper to assert that an expression returns an object of the
correct type.

  • security/crypto-random-values-types-expected.txt:
  • security/crypto-random-values-types.html:

Test all possible TypedArray integer types and ensure that both the
correct TypedArray type is returned and that it is equal to the input
type; that is, that the input type is modified in place, rather then
copied.

1:59 PM Changeset in webkit [138297] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

CodeGen: Make [Reflect] use getIdAttribute and getNameAttribute
https://bugs.webkit.org/show_bug.cgi?id=105549

Reviewed by Andreas Kling.

Let the codegen use getIdAttribute and getNameAttribute when we know the attribute
is HTMLNames::idAttr or HTMLNames::nameAttr respectively. The more specialized functions
do not search for the attribute if it knows that the element does not have that attribute
speeding up the case where id or name are not present.

This improves Dromaeo/dom-attr by 5% and Bindings/undefined-id-getter by 2%

No new tests. No change in behavior

  • bindings/scripts/CodeGenerator.pm:
1:40 PM Changeset in webkit [138296] by arv@chromium.org
  • 5 edits in trunk/Source/WebCore

fastAttributeLookupAllowed: classAttr is only animatable by SVG styled elements
https://bugs.webkit.org/show_bug.cgi?id=105565

Reviewed by Eric Seidel.

When it comes to determining if we can use fastGetAttribute we should not penalize
all classAttr access just because some SVG styled elements does funky things with
className.

This makes classAttr considered animatable only for styled SVG elements.

No new tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:
  • dom/Element.cpp:
  • svg/SVGElement.cpp:
  • svg/SVGElement.h:
1:38 PM Changeset in webkit [138295] by tony@chromium.org
  • 2 edits
    12 adds in trunk/LayoutTests

[chromium] Unreviewed gardening.

Rebaseline tests mentioned in 105121 and remove tests that are passing on Win bots according to the flakiness dashboard.

  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-linux/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-mac-lion/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-mac-snowleopard/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/overflow/nested-scrolling-expected.png: Added.
  • platform/chromium-mac/platform/chromium/virtual/gpu/compositedscrolling/scrollbars/overflow-scrollbar-combinations-expected.png: Added.
  • platform/chromium/TestExpectations:
  • platform/chromium/platform/chromium/virtual/gpu/compositedscrolling/overflow/overflow-auto-with-touch-toggle-expected.txt: Added.
1:37 PM Changeset in webkit [138294] by thakis@chromium.org
  • 4 edits in trunk/Tools

chromium nrwt: Pick the newest binary found in DEFAULT_BUILD_DIRECTORIES, not the first
https://bugs.webkit.org/show_bug.cgi?id=105498

Reviewed by Dirk Pranke.

Use the newest binary available rather than an than always picking one
build directory over another based on iteration order.

  • Scripts/webkitpy/layout_tests/port/chromium.py:

(ChromiumPort._static_build_path):
Check for timestamps.

  • Scripts/webkitpy/layout_tests/port/chromium_mac_unittest.py:

(ChromiumMacPortTest.test_build_path_timestamps):
Test that out / xcodebuild selection happens based on timestamps

  • Scripts/webkitpy/layout_tests/port/chromium_win_unittest.py:

(ChromiumWinPortTest.test_build_path_timestamps):
Test that out / build selection happens based on timestamps

1:35 PM Changeset in webkit [138293] by oliver@apple.com
  • 2 edits in trunk/Source/WTF

Harden pointers in FastMalloc's singly linked list implementation
https://bugs.webkit.org/show_bug.cgi?id=105571

Reviewed by Gavin Barraclough.

Add simple xor based hardening of the next pointer in the
fast malloc singly linked list implementation. We rely on
ASLR to introduce the address randomness we want for the mask.
Happily this produces a very low cost random value to use.

  • wtf/FastMalloc.cpp:

(WTF):
(WTF::SLL_Next):
(WTF::SLL_SetNext):

1:22 PM Changeset in webkit [138292] by tony@chromium.org
  • 4 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.

Mark an inspector test as flakey and update form date tests after r138255.

  • platform/chromium-win-xp/fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium-win-xp/fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • platform/chromium/TestExpectations:
1:22 PM Changeset in webkit [138291] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[TexMap] Remove ParentChange in TextureMapperLayer.
https://bugs.webkit.org/show_bug.cgi?id=105494

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-20
Reviewed by Noam Rosenthal.

ParentChange is useless, because ChildrenChange is enough. In addition,
GraphicsLayer uses setParent() method internally. This patch copies
GraphicsLayer::setChildren() into TextureMapperLayer::setChildren().

No new tests. Covered by existing tests.

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore):
(WebCore::GraphicsLayerTextureMapper::setChildren):

Match the similar style of replaceChild().

  • platform/graphics/texmap/GraphicsLayerTextureMapper.h:

(GraphicsLayerTextureMapper):

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::flushCompositingStateForThisLayerOnly):
(WebCore::TextureMapperLayer::setChildren):

Copied from GraphicsLayer::setChildren().

(WebCore):
(WebCore::TextureMapperLayer::addChild):

Copied from GraphicsLayer::addChild().

(WebCore::TextureMapperLayer::removeFromParent):

Copied from GraphicsLayer::removeFromParent().

(WebCore::TextureMapperLayer::removeAllChildren):

Copied from GraphicsLayer::removeAllChildren().

  • platform/graphics/texmap/TextureMapperLayer.h:

(TextureMapperLayer):

1:20 PM Changeset in webkit [138290] by alecflett@chromium.org
  • 10 edits in trunk/Source/WebCore

IndexedDB: Cursor and IndexWriter cleanup for refactor
https://bugs.webkit.org/show_bug.cgi?id=105449

Reviewed by Tony Chang.

This is a cleanup of some code to make the refactor that is coming
in https://bugs.webkit.org/show_bug.cgi?id=102741 cleaner. Some
CursorType assertions have been removed because the code will be
used in more generic circumstances in a future patch.

The previously-private IndexWriter has been pulled into
IDBObjectStoreBackendImpl and made to just use IDB*Metadata
so it can be reused later.

No new tests as this does not change the logic of executing code.

  • Modules/indexeddb/IDBCursorBackendImpl.cpp:

(WebCore::IDBCursorBackendImpl::IDBCursorBackendImpl):
(WebCore::IDBCursorBackendImpl::CursorPrefetchIterationOperation::perform):

  • Modules/indexeddb/IDBCursorBackendImpl.h:

(WebCore::IDBCursorBackendImpl::create):
(WebCore::IDBCursorBackendImpl::value):
(IDBCursorBackendImpl):

  • Modules/indexeddb/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::OpenIndexCursorOperation::create):
(WebCore::IDBIndexBackendImpl::OpenIndexCursorOperation::OpenIndexCursorOperation):
(IDBIndexBackendImpl::OpenIndexCursorOperation):
(WebCore::IDBIndexBackendImpl::OpenIndexCursorOperation::perform):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::IndexWriter::verifyIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::IndexWriter::writeIndexKeys):
(WebCore::IDBObjectStoreBackendImpl::IndexWriter::addingKeyAllowed):
(WebCore::IDBObjectStoreBackendImpl::makeIndexWriters):

  • Modules/indexeddb/IDBObjectStoreBackendImpl.h:

(IndexWriter):
(WebCore::IDBObjectStoreBackendImpl::IndexWriter::IndexWriter):
(IDBObjectStoreBackendImpl):

  • Modules/indexeddb/IDBRequest.cpp:

(WebCore::IDBRequest::IDBRequest):
(WebCore::IDBRequest::setCursorDetails):
(WebCore::IDBRequest::setResultCursor):
(WebCore::IDBRequest::onSuccess):

  • Modules/indexeddb/IDBRequest.h:

(IDBRequest):

1:15 PM Changeset in webkit [138289] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] Restore WebM EME canPlayType() expectations.
https://bugs.webkit.org/show_bug.cgi?id=105070

Unreviewed TestExpectations revert of r137225.

Patch by David Dorwin <ddorwin@chromium.org> on 2012-12-20

  • platform/chromium/TestExpectations:
1:04 PM Changeset in webkit [138288] by ap@apple.com
  • 5 edits in trunk/Source/WebCore

REGRESSION (r138191): Tests fail in ResourceRequest::setStorageSession
https://bugs.webkit.org/show_bug.cgi?id=105563

Reviewed by Sam Weinig.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::willSendRequest):
  • platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::willSendRequest): Don't try to appky a session if client canceled the request by setting it ot a null one.
  • platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::setStorageSession):
  • platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::setStorageSession): Update platform request, so that the session does not get lost once it's updated later.
12:36 PM Changeset in webkit [138287] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Add a Mac test expectation per bug 104848.

  • platform/mac/TestExpectations:
12:29 PM Changeset in webkit [138286] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectation per bugs 105566 and 105567.

  • platform/mac/TestExpectations:
12:26 PM Changeset in webkit [138285] by Nate Chapin
  • 17 edits in trunk/Source

Rename shouldBufferData to dataBufferingPolicy
https://bugs.webkit.org/show_bug.cgi?id=105450

Reviewed by Alexey Proskuryakov.

No new tests, simple rename.

Source/WebCore:

  • html/MediaDocument.cpp:

(WebCore::MediaDocumentParser::createDocumentStructure):

  • html/PluginDocument.cpp:

(WebCore::PluginDocumentParser::appendBytes):

  • inspector/InspectorResourceAgent.cpp:

(WebCore::InspectorResourceAgent::didReceiveData):

  • loader/DocumentThreadableLoader.cpp:

(WebCore::DocumentThreadableLoader::loadRequest):

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::setDataBufferingPolicy):

  • loader/MainResourceLoader.h:

(MainResourceLoader):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::setDataBufferingPolicy):
(WebCore::ResourceLoader::addData):
(WebCore::ResourceLoader::willStopBufferingData):

  • loader/ResourceLoader.h:

(ResourceLoader):

  • loader/ResourceLoaderOptions.h:

(WebCore::ResourceLoaderOptions::ResourceLoaderOptions):
(ResourceLoaderOptions):

  • loader/cache/CachedRawResource.cpp:

(WebCore::CachedRawResource::data):
(WebCore::CachedRawResource::setDataBufferingPolicy):
(WebCore::CachedRawResource::canReuse):

  • loader/cache/CachedRawResource.h:

(CachedRawResource):

  • loader/cache/CachedResource.h:

(WebCore::CachedResource::dataBufferingPolicy):

  • loader/mac/ResourceLoaderMac.mm:

(WebCore::ResourceLoader::didReceiveDataArray):

  • page/EventSource.cpp:

(WebCore::EventSource::connect):

Source/WebKit/chromium:

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::loadAsynchronously):

12:20 PM Changeset in webkit [138284] by dino@apple.com
  • 3 edits in trunk/Source/WebCore

Track menu in wrong location when fullscreen
https://bugs.webkit.org/show_bug.cgi?id=105234

Reviewed by Eric Carlson.

Add a rule to position the captions menu in the correct location
when the <video> is fullscreen. Also a drive-by removal of unnecessary
CSS selectors, and changing an encoded PNG into an SVG.

  • css/fullscreenQuickTime.css:

(video:-webkit-full-screen::-webkit-media-controls-closed-captions-container): Add a rule to position
the menu when in fullscreen.

  • css/mediaControlsQuickTime.css: Remove the unnecessary <audio> selectors.

(video::-webkit-media-controls-toggle-closed-captions-button):
(video::-webkit-media-controls-closed-captions-container):
(video::-webkit-media-controls-closed-captions-track-list):

12:11 PM Changeset in webkit [138283] by dino@apple.com
  • 5 edits in trunk/LayoutTests

Cleanup some captions menu tests
https://bugs.webkit.org/show_bug.cgi?id=105500

Reviewed by Eric Carlson.

Use the helper library where possible. Dynamically add
video.src so that we always get the 'canplaythrough' event.

  • media/video-controls-captions-trackmenu-expected.txt:
  • media/video-controls-captions-trackmenu-localized.html:
  • media/video-controls-captions-trackmenu-sorted.html:
  • media/video-controls-captions-trackmenu.html:
12:10 PM Changeset in webkit [138282] by dino@apple.com
  • 4 edits
    3 adds in trunk

Follow WebVTT line breaking rules
https://bugs.webkit.org/show_bug.cgi?id=105496

Reviewed by Eric Carlson.

Source/WebCore:

WebVTT requires that captions never overflow their containers. In other
words, that it is ok to break within words rather than hide content.
Implement this by using CSS's word-break property.

Test: media/track/track-word-breaking.html

  • css/mediaControls.css:

(video::-webkit-media-text-track-container): Add word-break.

  • css/mediaControlsQuickTime.css: Drive-by cleanup to make sure selection doesn't happen.

(audio::-webkit-media-controls-closed-captions-container, video::-webkit-media-controls-closed-captions-container):
(audio::-webkit-media-controls-closed-captions-track-list, video::-webkit-media-controls-closed-captions-track-list):

LayoutTests:

Test that captions do emergency line breaking. Since we can't
rely on text dimensions, the test simply compares a caption that
will be on one line to a caption with a single huge word, that must
break at least twice. If the bounding rectangle of the second caption
is bigger than the first, we know we broke.

  • media/track/captions-webvtt/long-word.vtt: Added.
  • media/track/track-word-breaking-expected.txt: Added.
  • media/track/track-word-breaking.html: Added.
12:07 PM Changeset in webkit [138281] by simonjam@chromium.org
  • 4 edits
    2 adds in trunk

[Resource Timing] 304 responses should show up in the timing buffer
https://bugs.webkit.org/show_bug.cgi?id=105490

Reviewed by Tony Gentilcore.

Source/WebCore:

Test: http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached.html

  • loader/cache/CachedResourceLoader.cpp:

(WebCore::CachedResourceLoader::loadDone):

LayoutTests:

  • http/tests/w3c/webperf/resources/generate_resource.php:
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached-expected.txt: Added.
  • http/tests/w3c/webperf/submission/resource-timing/html/test_resource_cached.html: Added.
11:44 AM Changeset in webkit [138280] by rniwa@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Add a sample change log entry to contributing.html
https://bugs.webkit.org/show_bug.cgi?id=105506

Reviewed by Alexey Proskuryakov.

Added a sample change log to the page directly people skimming through the page will still
see it. Also mention that prepare-ChangeLogs is automatically ran by webkit-patch upload.

  • coding/contributing.html:
11:36 AM Changeset in webkit [138279] by andersca@apple.com
  • 1 edit
    1 add in trunk/Source/WebKit/win

Copy WebKit2.rc to back to WebKit/win/WebKit.vcproj.

Rubber-stamped by Tim Horton.

  • WebKit.vcproj/WebKit.rc: Added.
11:30 AM Changeset in webkit [138278] by Simon Fraser
  • 5 edits in trunk

Lots of sticky tests failing in WK2
https://bugs.webkit.org/show_bug.cgi?id=105464

Source/WebCore:

Reviewed by Brady Eidson.

Fixing this bug altered the timing of InternalSettings::Backup()
and restoreTo(), such that 'canStartMedia' on Page would get saved as false,
and then restored as false, which breaks all media tests.

'canStartMedia' is set to false initially by the WebPage constructor, and is also
set to false when the WKView leaves the window, so treating it like other Settings
that can be saved and restored is unreliable, as seen here. It's easier and simpler
to just always reset it to 'true' between tests.

  • testing/InternalSettings.cpp:

(WebCore::InternalSettings::Backup::Backup):
(WebCore::InternalSettings::Backup::restoreTo):
(WebCore::InternalSettings::InternalSettings):
(WebCore::InternalSettings::reset):

  • testing/InternalSettings.h:

(Backup):

Tools:

Reviewed by Beth Dakin.

WebKitTestRunner had a race between snapshotting in the UI process,
and resettting after the test in the web process. InjectedBundle::done()
was a bad place to call page()->resetAfterTest(), because of this race;
it could reset the scroll position before the UI snapshot had been obtained.

Fix by moving the call to page()->resetAfterTest() into didReceiveMessage(),
for the "Reset" message which will come in before the next test.

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::didReceiveMessage):
(WTR::InjectedBundle::done):

11:16 AM Changeset in webkit [138277] by arv@chromium.org
  • 2 edits in trunk/Source/WebCore

REGRESSION(r138263): Don't use fastGetAttribute for HTMLNames::classAttr because it breaks on SVGElement
https://bugs.webkit.org/show_bug.cgi?id=105555

Reviewed by Tony Chang.

The code generated generated code that uses fastGetAttribute for the className WebIDL attribute getter.
However, this attribute is animatable in SVG so we cannot use the fast function for it.

No new tests. The assert is no longer hit.

  • bindings/scripts/CodeGenerator.pm:
11:14 AM Changeset in webkit [138276] by fpizlo@apple.com
  • 12 edits in trunk

DFG speculation checks that take JumpList should consolidate OSRExits
https://bugs.webkit.org/show_bug.cgi?id=105401

Reviewed by Oliver Hunt.

Source/JavaScriptCore:

Change OSRExitCompilationInfo to always contain a JumpList, and change JumpList
to be more compact. This way, a speculationCheck that takes a JumpList only has
to emit one OSRExit structure, and one OSRExit landing pad.

The downside is that we get less precise information about *where* we exited
from. So, this also includes changes to the profiler to be more relaxed about
what an ExitSite is.

  • assembler/AbstractMacroAssembler.h:

(JumpList):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::linkOSRExits):
(JSC::DFG::JITCompiler::link):

  • dfg/DFGJITCompiler.h:

(DFG):
(JSC::DFG::JITCompiler::appendExitInfo):
(JITCompiler):

  • dfg/DFGOSRExitCompilationInfo.h:

(OSRExitCompilationInfo):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::speculationCheck):
(JSC::DFG::SpeculativeJIT::speculationWatchpoint):
(JSC::DFG::SpeculativeJIT::forwardSpeculationCheck):

  • profiler/ProfilerCompilation.cpp:

(JSC::Profiler::Compilation::addOSRExitSite):

  • profiler/ProfilerCompilation.h:

(Compilation):

  • profiler/ProfilerOSRExitSite.cpp:

(JSC::Profiler::OSRExitSite::toJS):

  • profiler/ProfilerOSRExitSite.h:

(JSC::Profiler::OSRExitSite::OSRExitSite):
(JSC::Profiler::OSRExitSite::codeAddress):
(OSRExitSite):

Tools:

Update the profiler to understand that an OSR exit may have multiple
candidate exit sites.

  • Scripts/display-profiler-output:
11:00 AM Changeset in webkit [138275] by andersca@apple.com
  • 1 edit
    26 adds in trunk/Source/WebKit/win

Copy files from WebKit2/win (back) to WebKit/win/WebKit.vcproj.

Rubber-stamped by Tim Horton.

  • WebKit.vcproj/deleteButton.png: Added.
  • WebKit.vcproj/deleteButtonPressed.png: Added.
  • WebKit.vcproj/fsVideoAudioVolumeHigh.png: Added.
  • WebKit.vcproj/fsVideoAudioVolumeLow.png: Added.
  • WebKit.vcproj/fsVideoExitFullscreen.png: Added.
  • WebKit.vcproj/fsVideoPause.png: Added.
  • WebKit.vcproj/fsVideoPlay.png: Added.
  • WebKit.vcproj/missingImage.png: Added.
  • WebKit.vcproj/nullplugin.png: Added.
  • WebKit.vcproj/panEastCursor.png: Added.
  • WebKit.vcproj/panIcon.png: Added.
  • WebKit.vcproj/panNorthCursor.png: Added.
  • WebKit.vcproj/panNorthEastCursor.png: Added.
  • WebKit.vcproj/panNorthWestCursor.png: Added.
  • WebKit.vcproj/panSouthCursor.png: Added.
  • WebKit.vcproj/panSouthEastCursor.png: Added.
  • WebKit.vcproj/panSouthWestCursor.png: Added.
  • WebKit.vcproj/panWestCursor.png: Added.
  • WebKit.vcproj/searchCancel.png: Added.
  • WebKit.vcproj/searchCancelPressed.png: Added.
  • WebKit.vcproj/searchMagnifier.png: Added.
  • WebKit.vcproj/searchMagnifierResults.png: Added.
  • WebKit.vcproj/textAreaResizeCorner.png: Added.
  • WebKit.vcproj/verticalTextCursor.png: Added.
  • WebKit.vcproj/zoomInCursor.png: Added.
  • WebKit.vcproj/zoomOutCursor.png: Added.
10:48 AM Changeset in webkit [138274] by commit-queue@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Block level pseudo elements bleed background color to <html>
https://bugs.webkit.org/show_bug.cgi?id=104855

Patch by Elliott Sprehn <Elliott Sprehn> on 2012-12-20
Reviewed by Julien Chaffraix.

Before r137336 placing a pseudo element :before or :after that was display
block on the <html> element would also set the background color of the
root of the document.

This was because RenderObject::isRoot checked if document()->documentElement() == m_node,
which was true for html:before or html:after with the old implementation
of generated content. Instead it should have compared against node() which
would have compensated for the anonymous generated content.

This is fixed by the new generated content implementation that was turned
on in r137336 because m_node is now the PseudoElement, not the generatingNode.

  • fast/css-generated-content/html-pseudo-background-color-expected.html: Added.
  • fast/css-generated-content/html-pseudo-background-color.html: Added.
10:42 AM Changeset in webkit [138273] by Carlos Garcia Campos
  • 25 edits in trunk/Source

[GTK] Add API to set a TLS errors policy to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=104482

Reviewed by Martin Robinson.

Source/WebCore:

  • platform/network/soup/ResourceError.h:

(WebCore::ResourceError::setTLSErrors): Set the TLS error flags.
(WebCore::ResourceError::setCertificate): Set the certificate.

  • platform/network/soup/ResourceErrorSoup.cpp:

(WebCore::ResourceError::tlsError): Set the given TLS errors and
certificate to the ResourceError.
(WebCore::ResourceError::platformCopy): Copy also the TLS errors
and the certificate.
(WebCore::ResourceError::platformCompare): Compare also the TLS
errors.

Source/WebKit2:

Add an emum for TLS errors policy with values IGNORE and FAIL and
API to WebKitWebContext to set/get the policy.

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode): Encode ignoreTLSErrors.
(WebKit::WebProcessCreationParameters::decode): Decode ignoreTLSErrors.

  • Shared/WebProcessCreationParameters.h:

(WebProcessCreationParameters): Add ignoreTLSErrors when building
with soup network backend.

  • Shared/soup/PlatformCertificateInfo.cpp:

(WebKit::PlatformCertificateInfo::PlatformCertificateInfo): Add a
constructor that receives a ResourceError.

  • Shared/soup/PlatformCertificateInfo.h:
  • Shared/soup/WebCoreArgumentCodersSoup.cpp:

(CoreIPC::::encodePlatformData): Encode the
PlatformCertificateInfo as part for the ResourceError.
(CoreIPC::::decodePlatformData): Decode the
PlatformCertificateInfo and set certificate and TLS errors in the
ResourceError.

  • UIProcess/API/gtk/WebKitLoaderClient.cpp:

(didFailProvisionalLoadWithErrorForFrame): Call
webkitWebViewLoadFailedWithTLSErrors() if the load failed due to
TLS errors.

  • UIProcess/API/gtk/WebKitWebContext.cpp:

(_WebKitWebContextPrivate): Add tlsErrorsPolicy member.
(createDefaultWebContext): Initiales tlsErrorsPolicy.
(webkit_web_context_set_tls_errors_policy): Set the TLS errors
policy notify WebContext to ignore TLS errors or not.
(webkit_web_context_get_tls_errors_policy): Return the current TLS
errors policy.

  • UIProcess/API/gtk/WebKitWebContext.h:
  • UIProcess/API/gtk/WebKitWebView.cpp:

(webkitWebViewLoadFailedWithTLSErrors): Finish the load with an
error if the TLS errors policy is FAIL.

  • UIProcess/API/gtk/WebKitWebViewPrivate.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt: Add new symbols.
  • UIProcess/API/gtk/tests/TestSSL.cpp:

(testTLSErrorsPolicy):
(beforeAll):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::WebContext): Initialize m_ignoreTLSErrors.

  • UIProcess/WebContext.h:

(WebContext): Add m_ignoreTLSErrors member.
(WebKit::WebContext::ignoreTLSErrors): Return m_ignoreTLSErrors.

  • UIProcess/efl/WebContextEfl.cpp:

(WebKit::WebContext::platformInitializeWebProcess): Set
ignoreTLSErrors parameter.
(WebKit::WebContext::setIgnoreTLSErrors): Send SetIgnoreTLSErrors
message to the web process.

  • UIProcess/gtk/WebContextGtk.cpp:

(WebKit::WebContext::platformInitializeWebProcess): Set
ignoreTLSErrors parameter.
(WebKit::WebContext::setIgnoreTLSErrors): Send SetIgnoreTLSErrors
message to the web process.
(WebKit):

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in:
  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl): Remove the call to
ResourceHandle::setIgnoreSSLErrors().

  • WebProcess/gtk/WebProcessMainGtk.cpp:

(WebKit::WebProcessMainGtk): Remove the call to
ResourceHandle::setIgnoreSSLErrors().

  • WebProcess/soup/WebProcessSoup.cpp:

(WebKit::WebProcess::platformInitializeWebProcess):
(WebKit::WebProcess::setIgnoreTLSErrors): Call
ResourceHandle::setIgnoreSSLErrors().
(WebKit):

10:35 AM Changeset in webkit [138272] by dmazzoni@google.com
  • 2 edits in trunk/LayoutTests

Unreviewed. Adjust Mac TestExpectations.
https://bugs.webkit.org/show_bug.cgi?id=105372

Removes accessibility/svg-bounds.html from
platform/mac/TestExpectations.

The problem was caused by bug 97359: committed r138061,
reverted r138121, re-landed r138260 without the bug.

  • platform/mac/TestExpectations: remove accessibility/svg-bounds.html
10:34 AM Changeset in webkit [138271] by Lucas Forschler
  • 6 edits in tags/Safari-537.23

Merged r138226. <rdar://problem/12893550>

10:28 AM Changeset in webkit [138270] by commit-queue@webkit.org
  • 18 edits
    2 adds in trunk

onload callback for <track> element attached to <video> does not fire
https://bugs.webkit.org/show_bug.cgi?id=103258

Patch by Antoine Quint <Antoine Quint> on 2012-12-20
Reviewed by Eric Carlson.

Source/WebCore:

We now correctly implement the track processing model per the latest spec at
http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#start-the-track-processing-model.

For a <track> to load, three conditions must be met:

  1. it must have a non-empty src
  2. it must have a mode other than "disabled" (the default)
  3. it must have a parent media element

We used to only check if we were able to load upon setting the track's src,
whereas a change of any of those conditions should have done this, which this
patch now correctly implements.

We also correctly implement the load model asynchronously after step 4, per
the spec, hence the split of the code previously entirely contained in
HTMLTrackElement::scheduleLoad() in another method fired on a timer.

Test: media/track/track-element-load-event.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::textTrackModeChanged):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::HTMLTrackElement):
(WebCore::HTMLTrackElement::insertedInto):
(WebCore::HTMLTrackElement::parseAttribute):
(WebCore::HTMLTrackElement::scheduleLoad):
(WebCore):
(WebCore::HTMLTrackElement::loadTimerFired):
(WebCore::HTMLTrackElement::textTrackModeChanged):

  • html/HTMLTrackElement.h:
  • html/track/TextTrack.cpp:

(WebCore::TextTrack::removeAllCues):
(WebCore):

  • html/track/TextTrack.h:

(TextTrack):

LayoutTests:

As a result of fixing this bug, a few new failures were uncovered and TestExpectations
needed to be updated to take this into account. Additionally, some existing tests were
incorrect or outdated and were fixed as well. Finally, a new test was added to thoroughly
test the various conditions required for a <track> element to successfully load.

  • fast/events/constructors/track-event-constructor.html: Update the test to correctly set

a non-disabled mode on the text track such that it may load per the rules enforced with this patch.

  • http/tests/security/text-track-crossorigin.html: Update the test to correctly set a non-disabled

mode on the text track such that it may load per the rules enforced with this patch.

  • media/track/track-add-track-expected.txt: Update the output to match changes made to test.
  • media/track/track-add-track.html: Update the test to correctly set a non-disabled mode on

the text track such that it may load per the rules enforced with this patch. Also, ensure
the .readyState of the text track is correctly assumed to be NONE vs. LOADING as it would
have to wait until the next run loop to be changed to anything but NONE.

  • media/track/track-element-load-event-expected.txt: Added.
  • media/track/track-element-load-event.html: Added.
  • media/track/track-load-from-src-readyState.html: Update the test to correctly set a

non-disabled mode on the text track such that it may load per the rules enforced with
this patch.

  • platform/chromium/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/efl/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/gtk/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/mac/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/qt/TestExpectations: Skip tests that now fail instead of timing out.
  • platform/win/TestExpectations: Skip tests that now fail instead of timing out.
10:22 AM Changeset in webkit [138269] by kerz@chromium.org
  • 4 edits in branches/chromium/1364

Revert 138207

Revert 138190

Merge 138181

Correct missing touch event handler de-registration for nested Documents and DOMWindows
https://bugs.webkit.org/show_bug.cgi?id=105384

Reviewed by James Robinson.

Source/WebCore:

Correcting case by which a nested DOMWindow wouldn't clean up its event handler references
on its Document when removeAllEventListeners was called. Also, correctly propagating this
from a nested Document to its owner Document.

Updating fast/events/touch/touch-handler-count.html to catch this bug.

  • dom/Document.cpp:

(WebCore::Document::didRemoveEventTargetNode):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::removeAllEventListeners):

LayoutTests:

  • fast/events/touch/touch-handler-count-expected.txt:
  • fast/events/touch/touch-handler-count.html: Adding case of nested DOMWindows with event handlers.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635026

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11647025

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/11638044

10:21 AM Changeset in webkit [138268] by jsbell@chromium.org
  • 10 edits
    3 copies
    3 moves in trunk

IndexedDB: Layout test showing delete database getting two blocked events
https://bugs.webkit.org/show_bug.cgi?id=92674

Reviewed by Tony Chang.

Source/WebCore:

Match the steps specified behavior for deleteDatabase() in the spec: versionchange/blocked
events fire if necessary, then waits until a condition is satisfied before continuing with
the steps to delete the database. The bug was caused by retrying the full call again. Events
are also now sent out immediately when a "versionchange" transaction is running, rather
than entering a limbo state - again, the new behavior matches the spec more accurately.

Tests: storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html

storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html
storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange.html
storage/indexeddb/intversion-gated-on-delete.html

  • Modules/indexeddb/IDBDatabaseBackendImpl.cpp:

(WebCore::IDBDatabaseBackendImpl::processPendingCalls):
(WebCore::IDBDatabaseBackendImpl::deleteDatabase): First half of the steps.
(WebCore):
(WebCore::IDBDatabaseBackendImpl::isDeleteDatabaseBlocked): Pull out condition test.
(WebCore::IDBDatabaseBackendImpl::deleteDatabaseFinal): Second half of the of steps.

  • Modules/indexeddb/IDBDatabaseBackendImpl.h:

(IDBDatabaseBackendImpl):

LayoutTests:

Update/add tests to match the expected behavior where blocked/versionchange events fire
even when a "versionchange" transaction is running.

  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success-expected.txt: Copied from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt.
  • storage/indexeddb/delete-in-upgradeneeded-close-in-open-success.html: Copied from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html.
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange-expected.txt: Renamed from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded-expected.txt.
  • storage/indexeddb/delete-in-upgradeneeded-close-in-versionchange.html: Renamed from LayoutTests/storage/indexeddb/intversion-delete-in-upgradeneeded.html.
  • storage/indexeddb/deletedatabase-delayed-by-open-and-versionchange-expected.txt:
  • storage/indexeddb/deletedatabase-delayed-by-versionchange-expected.txt:
  • storage/indexeddb/intversion-gated-on-delete-expected.txt:
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-open-success.js: Copied from LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js.
  • storage/indexeddb/resources/delete-in-upgradeneeded-close-in-versionchange.js: Renamed from LayoutTests/storage/indexeddb/resources/intversion-delete-in-upgradeneeded.js.
  • storage/indexeddb/resources/deletedatabase-delayed-by-open-and-versionchange.js:
  • storage/indexeddb/resources/factory-deletedatabase.js:
  • storage/indexeddb/resources/intversion-gated-on-delete.js:
10:21 AM Changeset in webkit [138267] by kerz@chromium.org
  • 3 edits
    2 copies in branches/chromium/1364

Revert 138208

Revert 138189

Merge 138095

Input elements with default touch handlers don't update handler counts when changing documents
https://bugs.webkit.org/show_bug.cgi?id=105334

Reviewed by James Robinson.

Source/WebCore:

When an Input element with default touch event handlers changes documents, it failed to
update the touch event handler sets in both the old and new document. This patch fixes this
case.

Test: fast/events/touch/touch-input-element-change-documents.html

  • dom/Document.h:

(WebCore::Document::didRemoveTouchEventTargetNode) This function makes sense when touch
handling is enabled, regardless of whether we're tracking the rects.

  • dom/Document.cpp:
  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement): Switch from didRemoveTouchEventHandler to
didRemoveTouchEventTargetNode, since we don't care about counts in the destructor.
(WebCore::HTMLInputElement::updateType): Fixing incorrect indentation.
(WebCore::HTMLInputElement::didMoveToNewDocument): Adding the node to the new document and
removing it from the old.

LayoutTests:

  • fast/events/touch/touch-input-element-change-documents-expected.txt: Added.
  • fast/events/touch/touch-input-element-change-documents.html: Added.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11649024

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11571072

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/11642045

10:19 AM Changeset in webkit [138266] by kerz@chromium.org
  • 20 edits
    4 copies in branches/chromium/1364

Revert 138209

Revert 138188

Merge 137939

Add support for tracking hit test rectangles to enable fast event rejection in the compositor
https://bugs.webkit.org/show_bug.cgi?id=103914

Reviewed by James Robinson.

Source/WebCore:

Adding support for tracking hit test target regions for the purpose of performing initial hit testing
in the compositor to avoid blocking scrolling on the main thread while waiting to hit test events that
aren't occuring in regions with handlers. This is initially being done to avoid having to go to the main
thread when scrolling by flicking on touch devices when the flick occurs outside a tracked touch event
region. This patch includes the implementation to turn this on in Chromium.

To accomplish this goal, Document will now keep a counted hash set of nodes with touch event handlers
instead of only an unsigned integer of the total count. ScrollingCoordinator then updates the compositor
when new touch event handlers are registered or removed, or after layout much like how
nonFastScrollableRegions are currently tracked.

This implementation will not properly update the hit test rects when the renderers are inside a sub-
tree that scrolls.

This change was initially rolled out due to stale Node pointers in Document's touchEventTargets. This
patch adds a callback to remove the Node from that structure to Node's destructor. This is covered
by the touch-target-removed-crash.html test case which is also added.

Test: platform/chromium/fast/events/touch/compositor-touch-hit-rects.html

platform/chromium/fast/events/touch/touch-target-removed-crash.html

  • dom/Document.cpp:

(WebCore::Document::Document): Added a HashCountedSet of touch target nodes. Note: DOMWindow targets
are stored as the Document they point to.
(WebCore::Document::didAddTouchEventHandler): Changed to keep track of the handler instead of a count, and
to update the ScrollingCoordinator with the change.
(WebCore::Document::didRemoveTouchEventHandler): Ditto.

  • dom/Document.h:

(WebCore::Document::hasTouchEventHandlers): It's no longer O(1) to get the count of touch handlers, so
expose whether there are any or not.
(WebCore::Document::touchEventTargets):

  • dom/Node.cpp:

(WebCore::Node::didMoveToNewDocument):
(WebCore::tryAddEventListener):
(WebCore::tryRemoveEventListener):

  • history/CachedFrame.cpp:

(WebCore::CachedFrameBase::restore):

  • html/HTMLInputElement.cpp:

(WebCore::HTMLInputElement::~HTMLInputElement):
(WebCore::HTMLInputElement::updateType):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::addEventListener): Add the Document to the touch target set instead of DOMWindow.
(WebCore::DOMWindow::removeEventListener):

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

  • page/Frame.cpp:

(WebCore::Frame::setDocument):

  • page/scrolling/ScrollingCoordinator.cpp:

(WebCore::ScrollingCoordinator::computeAbsoluteTouchEventTargetRects): Walk the renderers for event handler
nodes and generate the absolute hit testing rects.

  • page/scrolling/ScrollingCoordinator.h:

(WebCore::ScrollingCoordinator::setTouchEventTargetRectsChanged): Hook to pass along the hit test rects to
the scrolling tree/compositor.
(ScrollingCoordinator):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:

(WebCore::ScrollingCoordinatorChromium::frameViewLayoutUpdated):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRectsChanged):
(WebCore::ScrollingCoordinatorChromium::setNonFastScrollableRegion):
(WebCore::ScrollingCoordinatorChromium::setTouchEventTargetRects):

  • page/scrolling/chromium/ScrollingCoordinatorChromium.h:

(ScrollingCoordinatorChromium):

  • testing/Internals.cpp:

(WebCore::Internals::touchEventHandlerCount): Changed to do the work to calculate the actual count since
it's no longer stored as an int in Document.
(WebCore::Internals::touchEventTargetClientRects):

  • testing/Internals.h:

(Internals):

  • testing/Internals.idl:

Source/WebKit/chromium:

Enabling touch event target region tracking.

  • features.gypi:
  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::requestTouchEventType):
(WebKit::WebPluginContainerImpl::~WebPluginContainerImpl):

LayoutTests:

  • platform/chromium/fast/events/touch/compositor-touch-hit-rects-expected.txt: Added.
  • platform/chromium/fast/events/touch/compositor-touch-hit-rects.html: Added.
  • platform/chromium/fast/events/touch/touch-target-removed-crash-expected.txt: Added.
  • platform/chromium/fast/events/touch/touch-target-removed-crash.html: Added.

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11635024

TBR=leviw@chromium.org
Review URL: https://codereview.chromium.org/11644037

TBR=kerz@chromium.org
Review URL: https://codereview.chromium.org/11644048

10:06 AM Changeset in webkit [138265] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

[EFL] [WebGL] [Wk2] Contents are not rendered properly.
https://bugs.webkit.org/show_bug.cgi?id=104664

Patch by Viatcheslav Ostapenko <sl.ostapenko@samsung.com> on 2012-12-20
Reviewed by Noam Rosenthal.

WebGL pages that render more than one frame are broken. Only 1st
frame comes to the UI side. All webgl repaint tests fail because
of this.
Specification of EXT_texture_from_pixmap extension here
http://www.opengl.org/registry/specs/EXT/texture_from_pixmap.txt
says, that:
"The contents of the texture after the drawable has been bound are defined
as the result of all rendering that has completed before the call to
glXBindTexImageEXT."
It means that in order to get updates for every frame glXBindTexImageEXT has
to be called on every frame update.

Covered by existing fast/canavs/webgl/*repaint tests.

  • platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:

(WebCore::GraphicsSurfacePrivate::isReceiver):
(WebCore::GraphicsSurface::platformSwapBuffers):

  • platform/graphics/texmap/TextureMapperBackingStore.cpp:

(WebCore::TextureMapperSurfaceBackingStore::swapBuffersIfNeeded):

9:58 AM Changeset in webkit [138264] by eric@webkit.org
  • 7 edits in trunk/Tools

EWSes do not need to dump build/test logs when things pass
https://bugs.webkit.org/show_bug.cgi?id=105402

Reviewed by Dirk Pranke.

When we were first writing the commit-queue and EWS system
and running them locally, we thought it was important to see the
build/test output as it happened. Now these queues have been running
for years, and we don't use this feature anymore. So this patch
makes us stop tee-ing the output directly to stdout, and instead
only print any output from commands when they fail.

I also added some logging when we execute each command
since we are no longer printing the command output itself.
This should make it much easier to see errors with the EWS
system itself, now that all the passing-build output is removed.

This required updating a zillion unittests, since we have a bunch of
"integration" style testing of the queue-bots. Many of the unittests for the bots were
already approximating this behavior by using a "logging" Executive.
I disabled logging in those cases to avoid redundant logging in those tests.

  • Scripts/webkitpy/common/system/executive.py:

(Executive.command_for_printing):
(Executive.run_command):

  • Scripts/webkitpy/common/system/executive_mock.py:

(MockExecutive.command_for_printing):
(MockExecutive.run_command):

  • Scripts/webkitpy/common/system/executive_unittest.py:

(ExecutiveTest.test_auto_stringify_args):

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

(EarlyWarningSytemTest._default_expected_logs):
(_test_ews):
(_test_ewses):

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

(AbstractQueue.run_webkit_patch):

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

(AbstractQueueTest._assert_run_webkit_patch):
(CommitQueueTest.test_commit_queue):
(test_rollout):
(test_rollout_lands):
(test_manual_reject_during_processing):
(StyleQueueTest.test_style_queue_with_style_exception):
(test_style_queue_with_watch_list_exception):

9:41 AM Changeset in webkit [138263] by arv@chromium.org
  • 8 edits in trunk/Source/WebCore

CodeGen: Make [Reflect] use fastGetAttribute and fastHasAttribute
https://bugs.webkit.org/show_bug.cgi?id=105540

Reviewed by Andreas Kling.

Currently the codegen generates code that use getAttribute and hasAttribute. We can use
fastGetAttribute and fastHasAttribute when we use a non SVG animated attribute and not
HTML::styleAttr.

This improves Bindings/id-getter by 16% and Dromaeo/dom-attr by 21%.

No new tests. No change in behavior.

  • bindings/scripts/CodeGenerator.pm:
  • bindings/scripts/CodeGeneratorV8.pm:
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
  • bindings/scripts/test/JS/JSTestObj.cpp:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:
  • bindings/scripts/test/V8/V8TestObj.cpp:
9:34 AM Changeset in webkit [138262] by tony@chromium.org
  • 3 edits in trunk/LayoutTests

[chromium] Unreviewed gardening.

Update pixel results for fast/sub-pixel/transformed-iframe-copy-on-scroll.html
on mac. The test uses mock scrollbars but the old results have real scrollbars.

  • platform/chromium-mac-lion/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
  • platform/chromium-mac/fast/sub-pixel/transformed-iframe-copy-on-scroll-expected.png:
9:33 AM Changeset in webkit [138261] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[BlackBerry]Change fullscreen back button size
https://bugs.webkit.org/show_bug.cgi?id=105541

Patch by Tiancheng Jiang <tijiang@rim.com> on 2012-12-20
Reviewed by Rob Buis.

Internally Reviewed by John Griggs.
Resize fullscreen mode back button size to meet browser back button size.

  • platform/blackberry/RenderThemeBlackBerry.cpp:

(WebCore):
(WebCore::RenderThemeBlackBerry::paintMediaFullscreenButton):

9:29 AM Changeset in webkit [138260] by dmazzoni@google.com
  • 13 edits
    1 move
    2 deletes in trunk

AX: support clickPoint in DRT for chromium
https://bugs.webkit.org/show_bug.cgi?id=97359

Reviewed by Chris Fleizach.

Source/WebCore:

When computing the accessible bounding box of an
SVG root, be sure to call a method that uses transforms,
otherwise an assertion fails.

Newly unskipped tests: accessibility/svg-bounds.html and
accessibility/svg-remote-element.html

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::boundingBoxRect):

Source/WebKit/chromium:

Exposes the clickPoint accessibility method in WebAccessibilityObject.

  • public/WebAccessibilityObject.h:

(WebAccessibilityObject):

  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::clickPoint):
(WebKit):

Tools:

Implement clickPointX, clickPointY, and elementAtPoint for Chromium, so that
several more tests can pass.

  • DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.cpp:

(WebTestRunner::AccessibilityUIElement::AccessibilityUIElement):
(WebTestRunner::AccessibilityUIElement::clickPointXGetterCallback):
(WebTestRunner):
(WebTestRunner::AccessibilityUIElement::clickPointYGetterCallback):
(WebTestRunner::AccessibilityUIElement::elementAtPointCallback):

  • DumpRenderTree/chromium/TestRunner/src/AccessibilityUIElementChromium.h:

(AccessibilityUIElement):

LayoutTests:

Enable four more tests now that clickPointX, clickPointY,
and elementAtPoint are implemented for Chromium.

Minor fixes to two tests to make them more robust
across platfoms and when run in parallel.

  • accessibility/svg-bounds.html: Updated
  • accessibility/svg-bounds-expected.txt: Added (made cross-platform
  • accessibility/svg-remote-element.html: Updated
  • accessibility/svg-remote-element-expected.txt: Added (made cross-platform)
  • platform/mac/accessibility/svg-bounds-expected.txt: Deleted
  • platform/mac/accessibility/svg-remote-element-expected.txt: Deleted
  • platform/chromium/TestExpectations: Updated
9:26 AM Changeset in webkit [138259] by mitz@apple.com
  • 2 edits in trunk/Tools

prepare-ChangeLog adds "Additional information of the change such as approach, rationale" where it doesn't make sense
https://bugs.webkit.org/show_bug.cgi?id=99268

Reviewed by Alexey Proskuryakov.

  • Scripts/prepare-ChangeLog:

(generateNewChangeLogs): Removed the "Additional information of the change" line.

8:45 AM Changeset in webkit [138258] by Carlos Garcia Campos
  • 4 edits in trunk

[Qt]REGRESSION(r138222): It made fast/forms/number/number-spinbutton-click-in-iframe.html crash
https://bugs.webkit.org/show_bug.cgi?id=105529

Reviewed by Nate Chapin.

Source/WebCore:

Make sure assignIdentifierToInitialRequest() and
dispatchWillSendRequest() are called before all other
notification callbacks for the substitute data.

Fixes a crash in fast/forms/number/number-spinbutton-click-in-iframe.html.

  • loader/MainResourceLoader.cpp:

(WebCore::MainResourceLoader::load): Call
handleSubstituteDataLoadSoon() after assigning the substitute data
identifier.

LayoutTests:

  • platform/qt/TestExpectations: Unskip

fast/forms/number/number-spinbutton-click-in-iframe.html.

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

2 fast/filesystem test cases ask for more space than the size they request when creating the file system
https://bugs.webkit.org/show_bug.cgi?id=105307

Patch by Lianghui Chen <liachen@rim.com> on 2012-12-20
Reviewed by Yong Li.

The purpose of this patch is to make these 2 test cases conform to the
size limit, so for platform that wants to enforce the size limit they
will not fail due to quota limit.

  • fast/filesystem/resources/file-writer-abort-continue.js:
  • fast/filesystem/resources/op-get-metadata.js:
8:12 AM Changeset in webkit [138256] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Skip unit test /webkit/atk/getTextInParagraphAndBodyModerate

  • Scripts/run-gtk-tests:

(TestRunner):

8:00 AM Changeset in webkit [138255] by commit-queue@webkit.org
  • 7 edits in trunk/LayoutTests

Fix tests depend on current year
https://bugs.webkit.org/show_bug.cgi?id=105525

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-12-20
Reviewed by Kent Tamura.

Current year was embedded in several expectation files unintentionally.

  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/date-multiple-fields/date-multiple-fields-keyboard-events.html:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/datetimelocal-multiple-fields/datetimelocal-multiple-fields-keyboard-events.html:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events-expected.txt:
  • fast/forms/week-multiple-fields/week-multiple-fields-keyboard-events.html:
7:50 AM Changeset in webkit [138254] by commit-queue@webkit.org
  • 10 edits in trunk/Source/WebCore

INPUT_MULTIPLE_FIELDS_UI: Add minimum/maximum value to DateTimeEditElement::LayoutParameters
https://bugs.webkit.org/show_bug.cgi?id=105510

Patch by Kunihiko Sakamoto <ksakamoto@chromium.org> on 2012-12-20
Reviewed by Kent Tamura.

Add two DateComponents fields, minimum and maximum, to DateTimeEditElement::LayoutParameters, replacing minimumYear and maximumYear.
They will be used to limit selectable values of month, day, etc.

No new tests. No behavior change.

  • html/BaseMultipleFieldsDateAndTimeInputType.cpp: Removed fullYear().
  • html/BaseMultipleFieldsDateAndTimeInputType.h:

(BaseMultipleFieldsDateAndTimeInputType): Ditto.

  • html/DateInputType.cpp:

(WebCore::DateInputType::setupLayoutParameters): Populates minimum/maximum.

  • html/DateTimeInputType.cpp:

(WebCore::DateTimeInputType::setupLayoutParameters): Ditto.

  • html/DateTimeLocalInputType.cpp:

(WebCore::DateTimeLocalInputType::setupLayoutParameters): Ditto.

  • html/MonthInputType.cpp:

(WebCore::MonthInputType::setupLayoutParameters): Ditto.

  • html/WeekInputType.cpp:

(WebCore::WeekInputType::setupLayoutParameters): Ditto.

  • html/shadow/DateTimeEditElement.cpp:

(WebCore::DateTimeEditBuilder::visitField): Replace the usage of minimumYear/maximumYear with minimum/maximum DateComponents.

  • html/shadow/DateTimeEditElement.h:

(LayoutParameters): Removed minimumYear, maximumYear, and undefinedYear(), and added minimum and maximum fields.
(WebCore::DateTimeEditElement::LayoutParameters::LayoutParameters):

7:28 AM Changeset in webkit [138253] by thiago.santos@intel.com
  • 2 edits
    2 moves
    1 add in trunk/Tools

[Qt] Move ImageDiff to the Tools directory root
https://bugs.webkit.org/show_bug.cgi?id=105420

Reviewed by Tor Arne Vestbø.

Moved ImageDiff from outside DumpRenderTree because it is also a
dependency when running pixel tests for WebKit2.

  • ImageDiff/ImageDiff.pro: Renamed from Tools/DumpRenderTree/qt/ImageDiff.pro.
  • ImageDiff/qt/ImageDiff.cpp: Renamed from Tools/DumpRenderTree/qt/ImageDiff.cpp.
  • Tools.pro:
7:26 AM Changeset in webkit [138252] by zandobersek@gmail.com
  • 9 edits in trunk

[GTK] Remove the --enable-unstable-features configuration option
https://bugs.webkit.org/show_bug.cgi?id=105327

Reviewed by Martin Robinson.

.:

Remove the unnecessary feature_defines_unstable variable.
Remove the unstable-features configuration option.

  • configure.ac:
  • GNUmakefile.am:

Source/WebCore:

Remove the ENABLE_UNSTABLE_FEATURES guards in various GNUmakefiles now that
the configuration option is removed.

No new tests - no new testable functionality.

  • GNUmakefile.am: Remove the ENABLE_UNSTABLE_FEATURES guards in GNUmakefile.am

where they were used to override certain feature define values in case of a release build.

  • GNUmakefile.features.am.in: Adjust the default value for the feature defines that were

previously overriden in release builds. This feature define list will eventually represent
feature status in release builds with overriding being done through build-webkit.

  • bindings/gobject/GNUmakefile.am: Move the DOM bindings targets that were previously guarded

by the ENABLE_UNSTABLE_FEATURES guards to the common listing of the video-dependent DOM bindings.

Tools:

Add a missing feature option for the CSS sticky position feature.

  • Scripts/webkitperl/FeatureList.pm:
7:14 AM Changeset in webkit [138251] by dominik.rottsches@intel.com
  • 2 edits in trunk/LayoutTests

[EFL] Unreviewed gardening.

Marking inspector-protocol/nmi-webaudio* tests as failing,
they don't work yet after r138248.

  • platform/efl/TestExpectations:
6:54 AM Changeset in webkit [138250] by fmalita@chromium.org
  • 52 edits in trunk

Incorrect color space conversion for FEImage
https://bugs.webkit.org/show_bug.cgi?id=105437

Reviewed by Dirk Schulze.

Source/WebCore:

When no color-interpolation-filters property is specified, SVG filters are assumed to
operate in LinearRGB color space (http://www.w3.org/TR/SVG/filters.html#FilterPrimitivesOverviewIntro).
Currently, FilterEffect relies on filters generating results in the same color space they
are requested to use (LinearRGB by default) - but this is not true for FEImage as its
result is always a DeviceRGB image buffer. Hence, in FEImage's case, the filter chain
performs an invalid LinearRGB->DeviceRGB conversion at the end (for an image buffer already
encoded in DeviceRGB).

This patch introduces a mechanism for filters to override the requested result color space
and updates FEImage to always mark its result as DeviceRGB. If a dependent filter requires
input in a different color space, FilterEffect::apply() already handles the conversion.

No new tests - existing tests cover this extensively, after rebaseline.

  • platform/graphics/filters/FilterEffect.cpp:

(WebCore::FilterEffect::transformResultColorSpace):
Minor cleanup: asImageBuffer() already handles this logic.

  • platform/graphics/filters/FilterEffect.h:

(WebCore::FilterEffect::setResultColorSpace):
(FilterEffect):
New method for overriding the result color space.

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::apply):

  • rendering/svg/RenderSVGResourceFilter.cpp:

(WebCore::RenderSVGResourceFilter::postApplyResource):
Do not perform an explicit conversion in these places, as the result color space may be
different from the requested color space. Let FilterEffect::transformResultColorSpace()
figure it out.

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::platformApplySoftware):
FEImage results are always ColorSpaceDeviceRGB.

LayoutTests:

Rebaselined Chromium(Linux) results, updated Chromium/EFL/Gtk/Qt expectations.

  • platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-image-03-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1-SE/filters-image-05-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png:
  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-image-01-b-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-in2-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-scale-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-xChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-dom-yChannelSelector-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-in2-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-scale-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-xChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEDisplacementMapElement-svgdom-yChannelSelector-prop-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-dom-preserveAspectRatio-attr-expected.png:
  • platform/chromium-linux/svg/dynamic-updates/SVGFEImageElement-svgdom-preserveAspectRatio-prop-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-objectBoundingBox-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-objectBoundingBox-primitiveUnits-userSpaceOnUse-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-objectBoundingBox-expected.png:
  • platform/chromium-linux/svg/filters/feImage-filterUnits-userSpaceOnUse-primitiveUnits-userSpaceOnUse-expected.png:
  • platform/chromium-linux/svg/filters/feImage-late-indirect-update-expected.png:
  • platform/chromium-win/svg/custom/feDisplacementMap-01-expected.png:
  • platform/chromium-win/svg/filters/feImage-animated-transform-on-target-rect-expected.png:
  • platform/chromium-win/svg/filters/feImage-multiple-targets-id-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-position-expected.png:
  • platform/chromium-win/svg/filters/feImage-preserveAspectratio-expected.png:
  • platform/chromium-win/svg/filters/feImage-reference-invalidation-expected.png:
  • platform/chromium-win/svg/filters/feImage-subregions-expected.png:
  • platform/chromium-win/svg/filters/feImage-subregions-preseveAspectRatio-none-expected.png:
  • platform/chromium-win/svg/filters/feImage-subregions-preseveAspectRatio-none-with-viewBox-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-add-to-document-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-attribute-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-attribute-change-with-use-indirection-2-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-attribute-change-with-use-indirection-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-changes-id-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-id-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-inline-style-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-property-change-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-reappend-to-document-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-remove-from-document-expected.png:
  • platform/chromium-win/svg/filters/feImage-target-style-change-expected.png:
  • platform/chromium/TestExpectations:
  • platform/efl/TestExpectations:
  • platform/gtk/TestExpectations:
  • platform/qt/TestExpectations:
6:47 AM Changeset in webkit [138249] by Carlos Garcia Campos
  • 2 edits in trunk/Tools

Unreviewed. Skip unit test WebKit2.ForceRepaint that times out

  • Scripts/run-gtk-tests:

(TestRunner):

6:09 AM Changeset in webkit [138248] by dominik.rottsches@intel.com
  • 10 edits in trunk

[EFL] MiniBrowser does not play Infinite Gangnam Style
https://bugs.webkit.org/show_bug.cgi?id=103531

Reviewed by Kenneth Rohde Christiansen.

.:

WebAudio now switched to ON for EFL.

  • Source/cmake/OptionsEfl.cmake:

Source/WebCore:

Specifying additional define to avoid deprecation warning.

No new tests, compile time change which doesn't affect behavior.

  • PlatformEfl.cmake:

Source/WebKit2:

WebAudio preference now defaults to switched on.

  • UIProcess/API/efl/EwkViewImpl.cpp:

(EwkViewImpl::EwkViewImpl):

Tools:

For EFL we would like this feature to be built by default.

  • Scripts/webkitperl/FeatureList.pm:

LayoutTests:

Marked remaining webaudio failures.

  • platform/efl/TestExpectations:
5:48 AM Changeset in webkit [138247] by Simon Hausmann
  • 2 edits in trunk/Source/WebCore

[Qt] JS bridge does not transmit QVariants anymore in Qt5
https://bugs.webkit.org/show_bug.cgi?id=104540

Patch by Simon Hausmann <simon.hausmann@digia.com>, Jedrzej Nowacki <jedrzej.nowacki@digia.com> on 2012-12-19
Reviewed by Kenneth Rohde Christiansen.

A data corruption exists in the QObject bridge when calling slots that
take a QVariant.

The calling convention for slots is that the void* parameter array must
contain pointers to the actually required destination argument type. If
a function takes an int for example, the corresponding entry in the
void* parameter array must be a pointer to an int that the moc
generated code then can "safely" cast to an int* and dereference.
Similarly if the function takes a QVariant it must be a pointer to a
QVariant.

We implement this calling convention by constructing QVariants of the
requested parameter types and passing the value of data() into the
void* parameter array. This works fine for all types except if the
requested type is a QVariant. In that case data() will _not_ return a
pointer that can later be safely casted to a QVariant pointer and
dereferenced. Instead we must use the address of our variant to ensure
a working cast.

Our auto tests cover this case, but they worked by accident because the
provided pointer when casted to a QVariant happens to have the correct
type id that doesn't produce the warning seen in the test case of the
provided example and the unit test just copies the QVariant and thus
pointer.

  • bridge/qt/qt_runtime.cpp:

(JSC::Bindings::QtMethodMatchType::typeId): Replace string based meta
type id determination of QVariant with a quicker table lookup.
(JSC::Bindings::findMethodIndex): Remember the chosen (requested) types
and pass the pointer to the QVariant instead of its data() pointer if
requested.
(JSC::Bindings::QtRuntimeMethod::call): Fixed determination of whether
we need to convert a return value or not solely based on the return
type _specified_ in the meta method instead of the variant value
returned. The latter is not sufficient because a slot can return an
invalid variant, which is not the same as returning void. This was
triggered by an unit test that accidentally passed due to this memory
corruption in the first place.

5:45 AM Changeset in webkit [138246] by Csaba Osztrogonác
  • 2 edits in trunk/Tools

[Qt] EWS bots should call qmake always
https://bugs.webkit.org/show_bug.cgi?id=90049

Reviewed by Simon Hausmann.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

5:01 AM Changeset in webkit [138245] by yurys@chromium.org
  • 8 edits
    1 add in trunk/Source/WebCore

Web Inspector: extract native heap graph representation into a separate file
https://bugs.webkit.org/show_bug.cgi?id=105524

Reviewed by Alexander Pavlov.

Moved native heap graph parser into NativeHeapGraph.js, renamed NativeHeapGraphNode to NativeHeapGraph.Node
and NativeHeapGraphEdge to NativeHeapGraph.Edge
Removed unused pie chart view.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution): fixed optional parameter handling

  • WebCore.gypi:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::InspectorMemoryAgent::getProcessMemoryDistribution):

  • inspector/compile-front-end.py:
  • inspector/front-end/NativeHeapGraph.js: Added.

(WebInspector.NativeHeapGraph):
(WebInspector.NativeHeapGraph.prototype.rootNodes):
(WebInspector.NativeHeapGraph.prototype._calculateNodeEdgeIndexes):
(WebInspector.NativeHeapGraph.prototype._addDummyNode):
(WebInspector.NativeHeapGraph.Edge):
(WebInspector.NativeHeapGraph.Edge.prototype.type):
(WebInspector.NativeHeapGraph.Edge.prototype.name):
(WebInspector.NativeHeapGraph.Edge.prototype.target):
(WebInspector.NativeHeapGraph.Edge.prototype._getStringField):
(WebInspector.NativeHeapGraph.Edge.prototype.toString):
(WebInspector.NativeHeapGraph.Node):
(WebInspector.NativeHeapGraph.Node.prototype.id):
(WebInspector.NativeHeapGraph.Node.prototype.type):
(WebInspector.NativeHeapGraph.Node.prototype.size):
(WebInspector.NativeHeapGraph.Node.prototype.className):
(WebInspector.NativeHeapGraph.Node.prototype.name):
(WebInspector.NativeHeapGraph.Node.prototype.hasReferencedNodes):
(WebInspector.NativeHeapGraph.Node.prototype.referencedNodes):
(WebInspector.NativeHeapGraph.Node.prototype.outgoingEdges):
(WebInspector.NativeHeapGraph.Node.prototype.targetOfEdge):
(WebInspector.NativeHeapGraph.Node.prototype.targetsOfAllEdges):
(WebInspector.NativeHeapGraph.Node.prototype._firstEdgePoistion):
(WebInspector.NativeHeapGraph.Node.prototype._afterLastEdgePosition):
(WebInspector.NativeHeapGraph.Node.prototype._getStringField):
(WebInspector.NativeHeapGraph.Node.prototype.toString):

  • inspector/front-end/NativeMemorySnapshotView.js:
  • inspector/front-end/ProfilesPanel.js:
  • inspector/front-end/WebKit.qrc:
4:43 AM Changeset in webkit [138244] by caseq@chromium.org
  • 9 edits in trunk/Source/WebCore

Web Inspector: Timeline: enhance short-records filter.
https://bugs.webkit.org/show_bug.cgi?id=101749

Patch by Eugene Klyuchnikov <eustas.bug@gmail.com> on 2012-12-20
Reviewed by Pavel Feldman.

Currently filter could be "on" (accepting records longer than 15ms) or
"off" (accepting all records). Adding some options between 0ms and 15ms
will make this feature much more useful.

Additional changes:

  • removed hardcoded size constant WebInspector.StatusBarComboBox.width
  • English.lproj/localizedStrings.js: Added new / removed orphan strings.
  • inspector/front-end/ProfilesPanel.js: Changed offset calculation.
  • inspector/front-end/TimelineOverviewPane.js: Enhanced filter.
  • inspector/front-end/TimelinePanel.js: Replaced button with combobox.

(WebInspector.TimelineIsLongFilter): Enhanced filter.

  • inspector/front-end/TimelinePresentationModel.js:

Removed Record "isLong" method.

  • inspector/front-end/timelinePanel.css: Removed orphan styles.
4:12 AM Changeset in webkit [138243] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

Unreviewed gardening, skip a crashing test to paint the bots green.

  • platform/qt/TestExpectations:
3:48 AM Changeset in webkit [138242] by caseq@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: [CPU Profile] Idle time is always 0
https://bugs.webkit.org/show_bug.cgi?id=105509

Patch by Eugene Klyuchnikov <eustas@chromium.org> on 2012-12-20
Reviewed by Pavel Feldman.

Fix: pass correct profile object to method.

  • inspector/front-end/CPUProfileView.js:

(WebInspector.CPUProfileView.profileCallback):
(WebInspector.CPUProfileView.prototype._injectIdleTimeNode):

3:05 AM Changeset in webkit [138241] by zandobersek@gmail.com
  • 2 edits
    1 add in trunk/LayoutTests

Unreviewed GTK gardening.

Adding a platform-specific baseline for a Shadow DOM test as required after r138165.
Adding failure expectations for two failures introduced separately in r138112 and r138184.

  • platform/gtk/TestExpectations:
  • platform/gtk/fast/dom/shadow/shadow-root-js-api-expected.txt: Added.
3:00 AM Changeset in webkit [138240] by loislo@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed. Adjust TestExpectations for media/track tests.

  • platform/chromium/TestExpectations:
2:39 AM Changeset in webkit [138239] by jochen@chromium.org
  • 2 edits in trunk/Tools

[chromium] fix stray printf in TestRunner's WebTestProxy
https://bugs.webkit.org/show_bug.cgi?id=105515

Reviewed by Ryosuke Niwa.

  • DumpRenderTree/chromium/TestRunner/src/WebTestProxy.cpp:

(WebTestRunner::WebTestProxyBase::shouldInsertNode):

2:20 AM Changeset in webkit [138238] by rniwa@webkit.org
  • 2 edits in trunk/LayoutTests

Update Mac test expectations as suggested by Antoine Quint.

  • platform/mac/TestExpectations:
2:06 AM Changeset in webkit [138237] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: fix |_repaintAll| behaviour of a DefaultTextEditor
https://bugs.webkit.org/show_bug.cgi?id=105429

Patch by Andrey Lushnikov <lushnikov@chromium.com> on 2012-12-20
Reviewed by Pavel Feldman.

Override |_repainAll| method in TextEditorMainPanel and manually
repaint visible chunks.

  • inspector/front-end/DefaultTextEditor.js:

(WebInspector.TextEditorChunkedPanel.prototype._splitChunkOnALine): Call |_repaintAll| method because |expand()| does not do any repaints anymore.
(WebInspector.TextEditorChunkedPanel.prototype._repaintAll): Return |false| in case of fast return, and |true| otherwise.
(WebInspector.TextEditorMainPanel.prototype._repaintAll): Added.
(WebInspector.TextEditorMainChunk.prototype.expand): Remove painting operations.

1:39 AM Changeset in webkit [138236] by pfeldman@chromium.org
  • 11 edits in trunk/Source

Web Inspector: introduce Page.captureScreenshot
https://bugs.webkit.org/show_bug.cgi?id=105315

Reviewed by Yury Semikhatsky.

Source/WebCore:

It will be primarily used by the automation clients, but maybe we find a good place
for it in the front-end as well.

  • inspector/Inspector.json:
  • inspector/InspectorClient.h:

(WebCore::InspectorClient::captureScreenshot):
(InspectorClient):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::captureScreenshot):
(WebCore):

  • inspector/InspectorPageAgent.h:

Source/WebKit/chromium:

Introduces a way for browser to handle protocol commands:
embedder will ask WebKit whether it should override the command
result and will get a hint value. Based on that hint, browser
will prepare the data and ask WebKit again to patch this data in.

  • public/WebDevToolsAgent.h:

(WebDevToolsAgent):

  • src/InspectorClientImpl.cpp:

(WebKit::InspectorClientImpl::captureScreenshot):
(WebKit):

  • src/InspectorClientImpl.h:

(InspectorClientImpl):

  • src/WebDevToolsAgentImpl.cpp:

(BrowserDataHintStringValues):
(WebKit):
(WebKit::WebDevToolsAgentImpl::WebDevToolsAgentImpl):
(WebKit::WebDevToolsAgentImpl::captureScreenshot):
(WebKit::browserHintToString):
(WebKit::browserHintFromString):
(WebKit::WebDevToolsAgentImpl::sendMessageToFrontend):
(WebKit::WebDevToolsAgent::shouldPatchWithBrowserData):
(WebKit::WebDevToolsAgent::patchWithBrowserData):

  • src/WebDevToolsAgentImpl.h:

(WebDevToolsAgentImpl):

1:18 AM Changeset in webkit [138235] by Carlos Garcia Campos
  • 3 edits in trunk/Source/WebCore

Make order iterator member stack allocated in RenderFlexibleBox
https://bugs.webkit.org/show_bug.cgi?id=104366

Reviewed by Tony Chang.

It avoids a heap allocation during layout.

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::OrderIterator::OrderIterator):
(WebCore::RenderFlexibleBox::OrderIterator::setOrderValues):
(WebCore::RenderFlexibleBox::OrderIterator::first):
(WebCore::RenderFlexibleBox::OrderIterator::next):
(WebCore::RenderFlexibleBox::OrderIterator::reset):
(WebCore::RenderFlexibleBox::RenderFlexibleBox):
(WebCore::RenderFlexibleBox::firstLineBoxBaseline):
(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::appendChildFrameRects):
(WebCore::RenderFlexibleBox::repaintChildrenDuringLayoutIfMoved):
(WebCore::RenderFlexibleBox::paintChildren):
(WebCore::RenderFlexibleBox::layoutFlexItems):
(WebCore::RenderFlexibleBox::computeNextFlexLine):
(WebCore::RenderFlexibleBox::alignFlexLines):
(WebCore::RenderFlexibleBox::alignChildren):
(WebCore::RenderFlexibleBox::flipForRightToLeftColumn):
(WebCore::RenderFlexibleBox::flipForWrapReverse):

  • rendering/RenderFlexibleBox.h:

(OrderIterator):
(WebCore::RenderFlexibleBox::OrderIterator::currentChild):
(RenderFlexibleBox):

1:12 AM Changeset in webkit [138234] by commit-queue@webkit.org
  • 9 edits in trunk/Source

Remove GraphicsLayer::setGraphicsLayerFactory().
https://bugs.webkit.org/show_bug.cgi?id=105503

Patch by Huang Dongsung <luxtella@company100.net> on 2012-12-20
Reviewed by Kenneth Rohde Christiansen.

We don't need GraphicsLayer::setGraphicsLayerFactory() anymore. After r130302,
we have used a graphics layer factory explicitly.

Source/WebCore:

No new tests. Refactoring only.

  • platform/graphics/GraphicsLayer.cpp:
  • platform/graphics/GraphicsLayer.h:

(GraphicsLayer):

  • platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:

(WebCore::GraphicsLayer::create):

Source/WebKit2:

  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.cpp:
  • WebProcess/WebPage/CoordinatedGraphics/CoordinatedGraphicsLayer.h:
  • WebProcess/efl/WebProcessMainEfl.cpp:

(WebKit::WebProcessMainEfl):

  • WebProcess/qt/WebProcessMainQt.cpp:

(WebKit::WebProcessMainQt):

1:07 AM Changeset in webkit [138233] by loislo@chromium.org
  • 3 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r138215.
http://trac.webkit.org/changeset/138215
https://bugs.webkit.org/show_bug.cgi?id=105505

it broke downstream compilation with clang (Requested by
loislo on #webkit).

Patch by Sheriff Bot <webkit.review.bot@gmail.com> on 2012-12-20

  • public/platform/WebKitPlatformSupport.h:

(WebKit):
(WebKitPlatformSupport):
(WebKit::WebKitPlatformSupport::sharedWorkerRepository):

  • src/SharedWorkerRepository.cpp:

(WebKit::sharedWorkerRepository):
(WebCore::SharedWorkerRepository::isAvailable):

1:00 AM Changeset in webkit [138232] by dominik.rottsches@intel.com
  • 19 edits in trunk

[WK2] WebAudio WKTR support
https://bugs.webkit.org/show_bug.cgi?id=95084

Reviewed by Kenneth Rohde Christiansen.

Source/WebCore:

Mac build fixes for adding WebAudio WKTR support.

No new tests, enables audio testing using WebKitTestRunner.

  • WebCore.exp.in: toUint8Array symbol exported.
  • WebCore.xcodeproj/project.pbxproj: JSUint8Array.h and JSArrayBufferView.h headers made available as private headers.

Source/WebKit2:

Implementing audio data dump support for WebKitTestRunner,
by adding the API to the IDL, enabling IPC for transferring
the audio data as bytebuffer and dumping it according
to run-webkit-tests script's expectations.

I am adding a testrunner specific bundle method to extract data
from a Uint8Array into a bytebuffer. This API is used by
WebKitTestRunner's TestRunner to extract the data into a local
variable, then sending it over IPC.

  • DerivedSources.pri: Fixing Qt build by adding JSUint8Array.h header to list of forwarding headers.
  • Target.pri: Adding missing WKData.* files. Qt build fix.
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleCreateWKDataFromUint8Array): Added.

  • WebProcess/InjectedBundle/API/c/WKBundlePrivate.h: Adding WKBundleCreateWKDataFromUint8Array.
  • WebProcess/InjectedBundle/InjectedBundle.cpp: Convert Uint8Array to WebData.

(WebKit::InjectedBundle::createWebDataFromUint8Array):
(WebKit):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(WebKit):
(InjectedBundle):

Tools:

Implementing audio data dump support for WebKitTestRunner,
by adding the API to the IDL, enabling IPC for transferring
the audio data as bytebuffer and dumping it according
to run-webkit-tests script's expectations.
This enables audio testing on WebKit2 ports.
Based on initial wip-patch from Philippe Normand - thanks.

  • WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl: Adding setAudioData API.
  • WebKitTestRunner/InjectedBundle/TestRunner.cpp: Assign audio buffer data to a local WKDataRef after extracting it from WK2 using WKBundleDataFromUint8Array bundle API.

(WTR::TestRunner::setAudioData):
(WTR):

  • WebKitTestRunner/InjectedBundle/TestRunner.h: Add a whatToDump state for dumping Audio.

(TestRunner):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp: Add audio to the message that's transferred to the WKTR process.

(WTR::InjectedBundle::done):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.h: Allow setting and audio result handle to be transferred.

(WTR::InjectedBundle::setAudioResult):
(InjectedBundle):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::dump): Dummy handling the Audio case in the switch, build fix for Mac.

  • WebKitTestRunner/TestInvocation.cpp: Audio dump support, dump audio if we haven't received a text dump from the web process.

(WTR::TestInvocation::dumpResults):
(WTR):
(WTR::TestInvocation::dumpAudio):
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle): Storing received audio data before dumping.

  • WebKitTestRunner/TestInvocation.h:

(TestInvocation):

12:54 AM Changeset in webkit [138231] by commit-queue@webkit.org
  • 3 edits in trunk/Tools

[GTK] Count failed and timed out tests separately
https://bugs.webkit.org/show_bug.cgi?id=105448

Patch by Alberto Garcia <agarcia@igalia.com> on 2012-12-20
Reviewed by Carlos Garcia Campos.

Display the number of tests that fail, time out and are skipped
separately in the buildbot page.

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

(RunGtkAPITests.commandComplete):
(RunGtkAPITests.evaluateCommand):
(RunGtkAPITests.getText2):

  • Scripts/run-gtk-tests:

(TestRunner.run_tests):

12:49 AM Changeset in webkit [138230] by loislo@chromium.org
  • 2 edits in trunk/Source/WebKit/mac

Unreviewed build fix for chromium mac after r138206.

  • WebCoreSupport/WebSystemInterface.mm:

(InitWebCoreSystemInterface):

12:41 AM Changeset in webkit [138229] by Patrick Gansterer
  • 2 edits in trunk/Source/WebCore

Build fix for WinCE after r137534.

  • inspector/InspectorInstrumentation.h:

(WebCore):

Note: See TracTimeline for information about the timeline view.