Timeline


and

01/18/12:

23:52 Changeset [105389] by commit-queue@webkit.org

[v8] Low efficiency of writing long string from web application to plugin.
https://bugs.webkit.org/show_bug.cgi?id=76592

The efficiency will be improved by 300 times in the best case, when the
size of string reaches 1MB.

Patch by Li Yin <li.yin@intel.com> on 2012-01-18
Reviewed by Adam Barth.

  • bindings/v8/V8NPUtils.cpp:

(WebCore::convertV8ObjectToNPVariant):

23:39 Changeset [105388] by abarth@webkit.org

Assigning to Element.prefix should throw exception when using illegal characters
https://bugs.webkit.org/show_bug.cgi?id=76589

Reviewed by Eric Seidel.

This patch fixes a FIXME and implements the INVALID_CHARACTER_ERR
exception described in
http://www.w3.org/TR/DOM-Level-3-Core/core.html#ID-NodeNSPrefix

Tests: fast/dom/Element/prefix-setter-exception.html

  • dom/Node.cpp:

(WebCore::isValidNameStartCharacter):
(WebCore::isValidNameCharacter):
(WebCore::hasInvalidValidNameCharacters):
(WebCore::Node::checkSetPrefix):

23:05 Changeset [105387] by commit-queue@webkit.org

ShadowContent query should be able to have fallback elements.
https://bugs.webkit.org/show_bug.cgi?id=75306

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18
Reviewed by Hajime Morita.

Source/WebCore:

When no elements are selected by a shadow content element selector query,
light children are selected as a fallback elements.

Test: fast/dom/shadow/shadow-contents-fallback.html

  • dom/NodeRenderingContext.cpp:

(WebCore::NodeRenderingContext::NodeRenderingContext):

Considers fallback phase. When no elements are chosen, the phase is set to 'fallback'.

(WebCore::NodeRenderingContext::nextRenderer):

Takes fallback phase into account.

(WebCore::NodeRenderingContext::previousRenderer): ditto.

  • dom/NodeRenderingContext.h:
  • html/shadow/HTMLContentElement.cpp:

(WebCore::HTMLContentElement::attach):

Calculates inclusions before attaching light children.

  • html/shadow/HTMLContentElement.h:

(WebCore::HTMLContentElement::hasInclusion):

LayoutTests:

  • fast/dom/shadow/shadow-contents-fallback-expected.txt: Added.
  • fast/dom/shadow/shadow-contents-fallback.html: Added.
22:51 Changeset [105386] by tkent@chromium.org

REGRESSION(r100111): A 'change' event does not fire when a mouse drag
occurs to switch elements in a listbox <select>
https://bugs.webkit.org/show_bug.cgi?id=76244

Reviewed by Hajime Morita.

Source/WebCore:

Test: fast/forms/select/listbox-drag-in-non-multiple.html

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::updateSelectedState):
Do not update m_activeSelectionState for non-multiple <select>.
(WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
Use setActiveSelection*Index() and updateListBoxSelection(true) instead
of updateSelectedState() because updateSelectedState() updates
m_lastOnChangeSelection and will prevent the mouseup handler from
dispatching 'change' event.
We should not call listBoxOnChange() in the mousemove handler in order
to align the behavior of IE and Firefox.

LayoutTests:

  • fast/forms/resources/common.js:

(mouseMoveToIndexInListbox): Added.

  • fast/forms/select/listbox-drag-in-non-multiple-expected.txt: Added.
  • fast/forms/select/listbox-drag-in-non-multiple.html: Added.
22:30 Changeset [105385] by lforschler@apple.com

Versioning.

22:29 Changeset [105384] by lforschler@apple.com

New tag.

22:25 Changeset [105383] by lforschler@apple.com

Merge <rdar://problem/10516690>

22:11 Changeset [105382] by dgrogan@chromium.org

update resolve-url-sync-expected.txt
https://bugs.webkit.org/show_bug.cgi?id=76581

Reviewed by Eric Seidel.

  • http/tests/filesystem/workers/resolve-url-sync-expected.txt:
22:00 Changeset [105381] by rniwa@webkit.org

run-perf-tests should support Skipped list
https://bugs.webkit.org/show_bug.cgi?id=76594

Reviewed by Adam Barth.

PerformanceTests:

Add Skipped list to be used by run-perf-tests as it can only runs tests in
Bindings, Parser, and inspector at the moment.

  • Skipped: Added.

Tools:

Add a support for Skipped list in run-perf-tests; also skip files in resources directories.

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

(Port.perf_tests_dir):
(Port.skipped_perf_tests):
(Port.skips_perf_test):
(Port.relative_perf_test_filename):

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

(TestPort.perf_tests_dir):

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

(WebKitPort._expectations_from_skipped_files):
(WebKitPort):
(WebKitPort.skipped_layout_tests):
(WebKitPort.skipped_perf_tests):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._collect_tests):
(PerfTestsRunner.run):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_run_test_set_with_json_output):
(test_run_test_set_with_json_source):
(test_collect_tests_with_skipped_list):
(test_collect_tests_with_skipped_list.add_file):

21:56 Changeset [105380] by tsepez@chromium.org

Pass content-security-policy directive into shared workers.
https://bugs.webkit.org/show_bug.cgi?id=75660

Reviewed by Darin Fisher.

  • public/WebContentSecurityPolicy.h: Added.
  • public/WebSharedWorker.h:

(WebKit::WebSharedWorker::startWorkerContext):

  • src/AssertMatchingEnums.cpp:
  • src/SharedWorkerRepository.cpp:

(WebCore::SharedWorkerScriptLoader::notifyFinished):

  • src/WebSharedWorkerImpl.cpp:

(WebKit::WebSharedWorkerImpl::startWorkerContext):

  • src/WebSharedWorkerImpl.h:
21:40 Changeset [105379] by eric@webkit.org

setAttributeNS should comply with the obscure rules of DOM2, just like createAttributeNS and createElementNS do
https://bugs.webkit.org/show_bug.cgi?id=76143

Reviewed by Adam Barth.

Source/WebCore:

Test: fast/dom/Element/setAttributeNS-namespace-err.html

  • dom/Element.cpp:

(WebCore::Element::setAttributeNS):

LayoutTests:

  • fast/dom/Element/script-tests/setAttributeNS-namespace-err.js: Added.

(assert):
(stringForExceptionCode):
(assertEquals):
(sourceify):
(runNSTests):

  • fast/dom/Element/setAttributeNS-namespace-err-expected.txt: Added.
  • fast/dom/Element/setAttributeNS-namespace-err.html: Added.
21:20 Changeset [105378] by rolandsteiner@chromium.org

Unreviewed, rolling out r105376.
http://trac.webkit.org/changeset/105376
https://bugs.webkit.org/show_bug.cgi?id=76601

Roll 76493 back in after discussion with jsbell (Requested by
rolandsteiner on #webkit).

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

Source/WebCore:

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
20:18 Changeset [105377] by commit-queue@webkit.org

[chromium] Create a base-class CCAnimation to represent compositor animations
https://bugs.webkit.org/show_bug.cgi?id=73233

Source/WebCore:

Adds a kernel for running animations on the chromium compositor
thread.

Patch by Ian Vollick <vollick@chromium.org> on 2012-01-18
Reviewed by Kenneth Russell.

  • WebCore.gypi:
  • platform/graphics/chromium/cc/CCActiveAnimation.cpp: Added.

(WebCore::CCActiveAnimation::CCActiveAnimation):
(WebCore::CCActiveAnimation::setRunState):
(WebCore::CCActiveAnimation::isFinishedAt):
(WebCore::CCActiveAnimation::trimTimeToCurrentIteration):

  • platform/graphics/chromium/cc/CCActiveAnimation.h: Added.

(WebCore::CCActiveAnimation::create):
(WebCore::CCActiveAnimation::~CCActiveAnimation):
(WebCore::CCActiveAnimation::group):
(WebCore::CCActiveAnimation::targetProperty):
(WebCore::CCActiveAnimation::runState):
(WebCore::CCActiveAnimation::iterations):
(WebCore::CCActiveAnimation::setIterations):
(WebCore::CCActiveAnimation::startTime):
(WebCore::CCActiveAnimation::setStartTime):
(WebCore::CCActiveAnimation::isFinished):
(WebCore::CCActiveAnimation::animationCurve):

  • platform/graphics/chromium/cc/CCAnimationCurve.cpp: Added.

(WebCore::CCAnimationCurve::toFloatAnimationCurve):
(WebCore::CCAnimationCurve::toTransformAnimationCurve):

  • platform/graphics/chromium/cc/CCAnimationCurve.h: Added.

(WebCore::CCAnimationCurve::~CCAnimationCurve):
(WebCore::CCFloatAnimationCurve::~CCFloatAnimationCurve):
(WebCore::CCFloatAnimationCurve::type):
(WebCore::CCTransformAnimationCurve::~CCTransformAnimationCurve):
(WebCore::CCTransformAnimationCurve::type):

  • platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.cpp: Added.

(WebCore::CCLayerAnimationControllerImpl::create):
(WebCore::CCLayerAnimationControllerImpl::CCLayerAnimationControllerImpl):
(WebCore::CCLayerAnimationControllerImpl::animate):
(WebCore::CCLayerAnimationControllerImpl::add):
(WebCore::CCLayerAnimationControllerImpl::getActiveAnimation):
(WebCore::CCLayerAnimationControllerImpl::hasActiveAnimation):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForNextTick):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForStartTime):
(WebCore::CCLayerAnimationControllerImpl::startAnimationsWaitingForTargetAvailability):
(WebCore::CCLayerAnimationControllerImpl::resolveConflicts):
(WebCore::CCLayerAnimationControllerImpl::purgeFinishedAnimations):
(WebCore::CCLayerAnimationControllerImpl::tickAnimations):

  • platform/graphics/chromium/cc/CCLayerAnimationControllerImpl.h: Added.

(WebCore::CCLayerAnimationControllerImplClient::~CCLayerAnimationControllerImplClient):

Source/WebKit/chromium:

Patch by Ian Vollick <vollick@chromium.org> on 2012-01-18
Reviewed by Kenneth Russell.

  • WebKit.gypi:
  • tests/CCActiveAnimationTest.cpp: Added.

(WebCore::FakeFloatAnimation::duration):
(WebCore::FakeFloatAnimation::getValue):
(WebCore::createActiveAnimation):
(WebCore::TEST):

  • tests/CCLayerAnimationControllerImplTest.cpp: Added.

(WebCore::FakeControllerClient::FakeControllerClient):
(WebCore::FakeControllerClient::~FakeControllerClient):
(WebCore::FakeControllerClient::opacity):
(WebCore::FakeControllerClient::setOpacity):
(WebCore::FakeControllerClient::transform):
(WebCore::FakeControllerClient::setTransform):
(WebCore::FakeControllerClient::animationControllerImplDidActivate):
(WebCore::FakeControllerClient::activeControllers):
(WebCore::FakeTransformTransition::FakeTransformTransition):
(WebCore::FakeTransformTransition::duration):
(WebCore::FakeTransformTransition::getValue):
(WebCore::FakeFloatTransition::FakeFloatTransition):
(WebCore::FakeFloatTransition::duration):
(WebCore::FakeFloatTransition::getValue):
(WebCore::TEST):

20:07 Changeset [105376] by rolandsteiner@chromium.org

Unreviewed, rolling out r105331.
http://trac.webkit.org/changeset/105331
https://bugs.webkit.org/show_bug.cgi?id=76599

May have broken Chromium InjectIDBKey browser_test (Requested
by rolandsteiner on #webkit).

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

Source/WebCore:

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
20:02 Changeset [105375] by commit-queue@webkit.org

Remove some unused code in AudioContext
https://bugs.webkit.org/show_bug.cgi?id=76506

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-18
Reviewed by Kenneth Russell.

No new tests required.

  • webaudio/AudioContext.cpp:

(WebCore::AudioContext::constructCommon):
(WebCore::AudioContext::uninitialize):

  • webaudio/AudioContext.h:
19:28 Changeset [105374] by dpranke@chromium.org

Fix path to chromium_src_dir introduced in previous change.

Unreviewed, build fix.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
19:22 Changeset [105373] by commit-queue@webkit.org

Only create AudioBus with required number of channels for AudioNodeOutput
https://bugs.webkit.org/show_bug.cgi?id=76417

Patch by Raymond Liu <raymond.liu@intel.com> on 2012-01-18
Reviewed by Kenneth Russell.

No new tests required.

  • webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::AudioNodeOutput):
(WebCore::AudioNodeOutput::setNumberOfChannels):
(WebCore::AudioNodeOutput::updateInternalBus):
(WebCore::AudioNodeOutput::updateNumberOfChannels):
(WebCore::AudioNodeOutput::pull):

  • webaudio/AudioNodeOutput.h:
18:55 Changeset [105372] by kling@webkit.org

Cache and reuse the NodeList returned by Node::childNodes().
<http://webkit.org/b/76591>

Reviewed by Ryosuke Niwa.

Source/WebCore:

Instead of only caching the DynamicNodeList::Caches for .childNodes on NodeRareData,
cache the full ChildNodeList object. Lifetime management is left to wrappers who
invalidate the cached (raw) pointer via Node::removeCachedChildNodeList(), called
from ~ChildNodeList().

This is a slight behavior change, in that Node.childNodes === Node.childNodes will
now be true. This matches the behavior of both Firefox and Opera.

This reduces memory consumption by 192 kB (on 32-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>

Test: fast/dom/gc-9.html

fast/dom/node-childNodes-idempotence.html

  • dom/Node.cpp:

(WebCore::Node::childNodes):

  • dom/NodeRareData.h:

(WebCore::NodeRareData::NodeRareData):
(WebCore::NodeRareData::childNodeList):
(WebCore::NodeRareData::setChildNodeList):

Only construct one ChildNodeList per Node and store it on NodeRareData for
retrieval across childNodes() calls.

  • dom/ChildNodeList.h:

(WebCore::ChildNodeList::create):

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):

Construct the Caches at creation instead of passing it to the constructor.

(WebCore::ChildNodeList::reset):

Added, resets the internal cache.

(WebCore::ChildNodeList::~ChildNodeList):

Call Node::removeCachedChildNodeList().

  • dom/DynamicNodeList.cpp:
  • dom/DynamicNodeList.h:

Have DynamicNodeList (and subclasses) respond "true" to isDynamicNodeList().
Previously only DynamicSubtreeNodeList (and subclasses) were doing this.
Without it, JSC may GC our ChildNodeLists prematurely (due to NodeList's
isReachableFromOpaqueRoots() implementation checking isDynamicNodeList().)

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

(WebCore::Node::removeCachedChildNodeList):

Added for ~ChildNodeList() to remove the pointer to itself from the Node.

(WebCore::NodeRareData::clearChildNodeListCache):

Call ChildNodeList::reset().

LayoutTests:

Updated gc-9.html to document the new lifetime characteristics of a .childNodes with
custom properties. Also added a test to verify that .childNodes === .childNodes.

  • fast/dom/gc-9-expected.txt:
  • fast/dom/gc-9.html:
  • fast/dom/node-childNodes-idempotence-expected.txt: Added.
  • fast/dom/node-childNodes-idempotence.html: Added.
18:39 Changeset [105371] by jamesr@google.com

Unreviewed, rolling out r105366.
http://trac.webkit.org/changeset/105366
https://bugs.webkit.org/show_bug.cgi?id=76015

Breaks CCLayerTreeHostImplTest unit test

Source/WebCore:

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

  • platform/graphics/chromium/cc/CCDrawQuad.h:

(WebCore::CCDrawQuad::drawsOpaque):
(WebCore::CCDrawQuad::needsBlending):

  • platform/graphics/chromium/cc/CCQuadCuller.cpp:

(WebCore::CCQuadCuller::cullOccludedQuads):

  • platform/graphics/chromium/cc/CCSolidColorDrawQuad.cpp:

(WebCore::CCSolidColorDrawQuad::CCSolidColorDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.cpp:

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::syncTextureId):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

18:02 Changeset [105370] by commit-queue@webkit.org

Save two ID checks on CSS Min/Width property validation
https://bugs.webkit.org/show_bug.cgi?id=76565

The same validation is done again in the next case statement. Check for
CSSValueIntrinsic and CSSValueMinIntrinsic was done twice when the value
is a number.

Patch by Thiago Marcos P. Santos <tmpsantos@gmail.com> on 2012-01-18
Reviewed by Andreas Kling.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

17:54 Changeset [105369] by ap@apple.com

Need infrastructure to test Content-Disposition filename encoding support
https://bugs.webkit.org/show_bug.cgi?id=76572
<rdar://problem/6421825>

Reviewed by Sam Weinig.

Made policy delegate log suggested file name when resource has Content-Disposition: attachment.

WebKitTestRunner does not have a policy delegate yet, bug 42546.

  • DumpRenderTree/mac/PolicyDelegate.mm: (dispositionTypeFromContentDispositionHeader): (-[PolicyDelegate webView:decidePolicyForMIMEType:request:frame:decisionListener:]):
17:53 Changeset [105368] by jonlee@apple.com

Another build fix for r105364.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess): Missing #if.

17:44 Changeset [105367] by jonlee@apple.com

Build fix for r105364. Unreviewed.

  • WebProcess/Notifications/WebNotificationManager.cpp: Wrap methods in #if ENABLE(NOTIFICATIONS)

(WebKit::WebNotificationManager::initialize):
(WebKit::WebNotificationManager::didUpdateNotificationDecision):
(WebKit::WebNotificationManager::didRemoveNotificationDecisions):
(WebKit::WebNotificationManager::policyForOrigin):

17:42 Changeset [105366] by commit-queue@webkit.org

[chromium] Use region reported painted opaque for draw culling
https://bugs.webkit.org/show_bug.cgi?id=76015

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in CCQuadCullerTest.cpp and CCTiledLayerImplTest.cpp

  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::pushPropertiesTo):
(WebCore::TiledLayerChromium::prepareToUpdateTiles):

  • platform/graphics/chromium/cc/CCDrawQuad.h:

(WebCore::CCDrawQuad::opaqueRect):
(WebCore::CCDrawQuad::needsBlending):

  • platform/graphics/chromium/cc/CCQuadCuller.cpp:

(WebCore::CCQuadCuller::cullOccludedQuads):

  • platform/graphics/chromium/cc/CCTileDrawQuad.cpp:

(WebCore::CCTileDrawQuad::create):
(WebCore::CCTileDrawQuad::CCTileDrawQuad):

  • platform/graphics/chromium/cc/CCTileDrawQuad.h:
  • platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:

(WebCore::DrawableTile::opaqueRect):
(WebCore::DrawableTile::setOpaqueRect):
(WebCore::CCTiledLayerImpl::appendQuads):
(WebCore::CCTiledLayerImpl::pushTileProperties):

  • platform/graphics/chromium/cc/CCTiledLayerImpl.h:

Source/WebKit/chromium:

  • tests/CCQuadCullerTest.cpp:

(WebCore::TestDrawQuad::TestDrawQuad):
(WebCore::TestDrawQuad::create):
(WebCore::setQuads):
(WebCore::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::createLayer):
(WebCore::TEST):
(WebCore::getQuads):
(WebCore::coverageVisibleRectOnTileBoundaries):
(WebCore::coverageVisibleRectIntersectsTiles):
(WebCore::coverageVisibleRectIntersectsBounds):

17:19 Changeset [105365] by vrk@chromium.org

HTMLMediaElement should fire 'progress' event before 'idle' if it was previously loading
https://bugs.webkit.org/show_bug.cgi?id=76568

Reviewed by Eric Carlson.

This fires a progress event when going from a non-empty state to idle,
for the same reason that a progress event is fired when going from a
non-idle state to loaded. Also consolidated logic in a single helper method.

No new tests because the decision of if/when a user agent sets the network state
to idle is up to the user agent in this scenario.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setNetworkState):
(WebCore::HTMLMediaElement::changeNetworkStateFromLoadingToIdle):

  • html/HTMLMediaElement.h:
17:14 Changeset [105364] by jonlee@apple.com

[WK2] Sync call for notifications permissions causes flashes on gmail.com
https://bugs.webkit.org/show_bug.cgi?id=76570
<rdar://problem/10647155>

Reviewed by Anders Carlsson and Sam Weinig.

Source/WebCore:

  • WebCore.exp.in: Export SecurityOrigin::toString().

Add runtime setting to enable/disable notifications.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h: Add new bit for whether notifications are enabled.

(WebCore::Settings::setNotificationsEnabled):
(WebCore::Settings::notificationsEnabled):

Source/WebKit2:

The website code figures out the permission level for its security origin by making a JS call (called
checkPermission()) that is synchronous. The way this was implemented was to make a synchronous call from
the WebNotificationManager to its proxy. That call goes to the WK API layer to find the policy, and
returns that policy back to the JS.

The synchronous nature of this call causes the white flash to appear in certain cases.

To fix this, the checkPermission() call is handled all within the web process, instead of going up into
the UI process. To do this, the web process initializes the WebNotificationManager with a copy of the
notification permissions. Any time the WK client makes a change to the permissions, that gets sent down
asynchronously, and the cached copy in WebNotificationManager gets updated.

A page's settings may disable notifications altogether. Before, this would have been handled by the WK
client, since retrieving the permissions were also handled there. Now that the lookup happens in the web
process, we need to add that setting in WebCore.

Update notification permissions to use the security origin's string representation, rather than its

database identifier.

  • UIProcess/Notifications/WebNotification.cpp:

(WebKit::WebNotification::WebNotification):

  • UIProcess/Notifications/WebNotification.h:

(WebKit::WebNotification::create):

  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::show): Registering the provider with the manager is handled in
initialize() now.
(WebKit::WebNotificationManagerProxy::cancel): Registering the provider with the manager is handled in
initialize() now.

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::requestNotificationPermission):
(WebKit::WebPageProxy::showNotification):

  • UIProcess/WebPageProxy.h:
  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::startRequest): Only start the request if notifications
are enabled.

  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::show): Only show notification is they are enabled.
(WebKit::WebNotificationManager::cancel): Only cancel if notifications are enabled.

Remove synchronous message to get policy for a given origin. Instead, use the cached copy in

WebNotificationManager.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::policyForOrigin): Looks for the permission in the cached copy.
If it doesn't exist, return NotificationPresenter::PermissionNotAllowed.

  • WebProcess/Notifications/NotificationPermissionRequestManager.cpp:

(WebKit::NotificationPermissionRequestManager::permissionLevel): Update permissionLevel to use
policyForOrigin().

Remove old WK API function to get the policy. Because this function was the only synchronous message,
we remove the sync-message-related functions also. Also, add in some #includes that might have been
omitted in prior patches.

  • UIProcess/API/C/WKNotificationProvider.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.messages.in: Remove NotificationPermissionLevel.
  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:
  • UIProcess/Notifications/WebNotificationProvider.h: Remove policyForNotificationPermissionAtOrigin().
  • UIProcess/Notifications/WebNotificationProvider.cpp:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveSyncMessage): Remove conditional to forward sync messages to the
notification manager proxy.

Mechanism for client to update the permissions copy in WebNotificationManager.

  • WebProcess/Notifications/WebNotificationManager.messages.in: Add new messages

didUpdateNotificationDecision and didRemoveNotificationDecisions.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::initialize):
(WebKit::WebNotificationManager::didUpdateNotificationDecision): Update the entry.
(WebKit::WebNotificationManager::didRemoveNotificationDecisions): Remove the entry.

  • UIProcess/Notifications/WebNotificationManagerProxy.h:
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::providerDidUpdateNotificationPolicy):
(WebKit::WebNotificationManagerProxy::providerDidRemoveNotificationPolicies): Convert the array of
origins to remove, and send it to the WebNotificationManager.

  • UIProcess/API/C/WKNotificationManager.h: Expose these update functions as WK API.
  • UIProcess/API/C/WKNotificationManager.cpp:

(WKNotificationManagerProviderDidUpdateNotificationPolicy):
(WKNotificationManagerProviderDidRemoveNotificationPolicies):

Initialize WebNotificationManager with permissions. Initialize WebPage with notifications enabled bit

from settings.

  • Shared/WebProcessCreationParameters.h: Add map of notification permissions as part of the

parameters.

  • Shared/WebProcessCreationParameters.cpp:

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

  • UIProcess/Notifications/WebNotificationProvider.h: Retrieve copy of existing notification permissions.
  • UIProcess/Notifications/WebNotificationProvider.cpp:
  • UIProcess/API/C/WKNotificationProvider.h: Add WK API to get a copy of the permissions.
  • UIProcess/Notifications/WebNotificationManagerProxy.h: Add populateCopyOfNotificationPermissions().
  • UIProcess/Notifications/WebNotificationManagerProxy.cpp:

(WebKit::WebNotificationManagerProxy::initializeProvider): Add the manager at the time of initialization.
Similar calls in show() and cancel() are removed in following patch.
(WebKit::WebNotificationManagerProxy::populateCopyOfNotificationPermissions): Clear the existing copy.
Populate with origin string, and whether that origin is allowed to post. If no decision has been made
by the user, then there should be no item in this dictionary.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::ensureWebProcess): When the web process is initialized, we get a copy of the
permissions, and send it to the web process to initialize the notification manager.

  • WebProcess/mac/WebProcessMac.mm:

(WebKit::WebProcess::platformInitializeWebProcess): Initialize the notification manager.

  • WebProcess/Notifications/WebNotificationManager.h:
  • WebProcess/Notifications/WebNotificationManager.cpp:

(WebKit::WebNotificationManager::initialize): Initialize the permissions copy.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences): Set notifications enabled bit from settings.

Expose toString() method from WebCore::SecurityOrigin. Work is also towards bug 74956.

  • Shared/API/c/WKSecurityOrigin.h: Refactor WKSecurityOriginCreateFromIdentifier to

WKSecurityOriginCreateFromDatabaseIdentifier and add WKSecurityOriginCreateFromString function.

  • Shared/API/c/WKSecurityOrigin.cpp:

(WKSecurityOriginCreateFromString):
(WKSecurityOriginCreateFromDatabaseIdentifier):
(WKSecurityOriginCopyToString):

Refactor WebSecurityOrigin::create() to WebSecurityOrigin::createFromDatabaseIdentifier()
and add WebSecurityOrigin::createFromString().

  • Shared/WebSecurityOrigin.h:

(WebKit::WebSecurityOrigin::createFromString):
(WebKit::WebSecurityOrigin::createFromDatabaseIdentifier):
(WebKit::WebSecurityOrigin::toString): Added function.

Refactor with renamed createFromDatabaseIdentifier() method.

  • UIProcess/WebDatabaseManagerProxy.cpp:

(WebKit::WebDatabaseManagerProxy::didGetDatabasesByOrigin):
(WebKit::WebDatabaseManagerProxy::didGetDatabaseOrigins):
(WebKit::WebDatabaseManagerProxy::didModifyOrigin):
(WebKit::WebDatabaseManagerProxy::didModifyDatabase):

  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::exceededDatabaseQuota):
(WebKit::WebPageProxy::requestGeolocationPermissionForFrame):

Add WK API calls to change notificationsEnabled bit in WebCore::Settings.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetNotificationsEnabled):
(WKPreferencesGetNotificationsEnabled):

  • UIProcess/API/C/WKPreferences.h:
17:11 Changeset [105363] by jamesr@google.com

IndexedDB: Fix InjectIDBKeyTest.SubProperty test failure
https://bugs.webkit.org/show_bug.cgi?id=76582

Correct the test, now that https://bugs.webkit.org/show_bug.cgi?id=76493
changes the semantics so that intermediate objects are created if possible
to satisfy autoIncrement keypaths.

Patch by Joshua Bell <jsbell@chromium.org> on 2012-01-18
Reviewed by James Robinson.

  • tests/IDBBindingUtilitiesTest.cpp:

(WebCore::TEST):

17:09 Changeset [105362] by lforschler@apple.com

Merged r95580.

17:08 Changeset [105361] by tsepez@chromium.org

Merge 103851 - REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
BUG=104325
Review URL: https://chromiumcodereview.appspot.com/9252034

17:06 Changeset [105360] by tsepez@chromium.org

Merge 103851 - REGRESSION (r94492): Text is shifted to the right in some buttons in the Mac App Store
BUG=104325
Review URL: https://chromiumcodereview.appspot.com/9216003

16:57 Changeset [105359] by cdn@chromium.org

Merge 104328 - [CSSRegions]Crash while collecting svg elements in render flow thread.
https://bugs.webkit.org/show_bug.cgi?id=73735

BUG=106309
Review URL: http://codereview.chromium.org/9250028

16:56 Changeset [105358] by lforschler@apple.com

Merge 89155.

16:55 Changeset [105357] by cdn@chromium.org

Merge 104328 - [CSSRegions]Crash while collecting svg elements in render flow thread.
https://bugs.webkit.org/show_bug.cgi?id=73735

BUG=106309
Review URL: http://codereview.chromium.org/9253028

16:52 Changeset [105356] by tsepez@chromium.org

Merge 103429 - Source/WebCore: [Chromium] DatabaseTrackerChromium: iterating DatabaseSet races with Database disposal on worker thread
BUG=107873
Review URL: https://chromiumcodereview.appspot.com/9255031

16:49 Changeset [105355] by tsepez@chromium.org

Merge 103429 - Source/WebCore: [Chromium] DatabaseTrackerChromium: iterating DatabaseSet races with Database disposal on worker thread
BUG=107873
Review URL: https://chromiumcodereview.appspot.com/9254017

16:42 Changeset [105354] by tsepez@chromium.org

Merge 103206 - Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
BUG=107939
Review URL: https://chromiumcodereview.appspot.com/9232038

16:39 Changeset [105353] by tsepez@chromium.org

Merge 103206 - Positioned Floats: Assertion hit in fast/block/positioning/positioned-float-layout-after-image-load.html
BUG=107939
Review URL: https://chromiumcodereview.appspot.com/9253026

16:39 Changeset [105352] by inferno@chromium.org

Merge 103979 - v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
BUG=107616
Review URL: https://chromiumcodereview.appspot.com/9250027

16:39 Changeset [105351] by inferno@chromium.org

Merge 103979 - v8 binding: npCreateV8ScriptObject() should not returned an existing V8NPObject if the rootObject doesn't match
BUG=107616
Review URL: https://chromiumcodereview.appspot.com/9260002

16:34 Changeset [105350] by inferno@chromium.org

Merge 104123 - Crash due to first-letter block processing
BUG=107277
Review URL: https://chromiumcodereview.appspot.com/9249043

16:34 Changeset [105349] by inferno@chromium.org

Merge 104123 - Crash due to first-letter block processing
BUG=107277
Review URL: https://chromiumcodereview.appspot.com/9252031

16:31 Changeset [105348] by inferno@chromium.org

Merge 104317 - Crash with range selection across different documents.
BUG=106484
Review URL: https://chromiumcodereview.appspot.com/9251030

16:31 Changeset [105347] by inferno@chromium.org

Merge 104317 - Crash with range selection across different documents.
BUG=106484
Review URL: https://chromiumcodereview.appspot.com/9250025

16:30 Changeset [105346] by tsepez@chromium.org

Merge 105120 - Heap-use-after-free in WebCore::RenderBlock::selectionGaps
Review URL: https://chromiumcodereview.appspot.com/9251029

16:26 Changeset [105345] by inferno@chromium.org

Merge 104609 - [skia] not all convex paths are convex, so recompute convexity for the problematic ones
BUG=108605
Review URL: https://chromiumcodereview.appspot.com/9250022

16:25 Changeset [105344] by tsepez@chromium.org

Merge 105120 - Heap-use-after-free in WebCore::RenderBlock::selectionGaps
BUG=108267
Review URL: https://chromiumcodereview.appspot.com/9250021

16:24 Changeset [105343] by inferno@chromium.org

Merge 104609 - [skia] not all convex paths are convex, so recompute convexity for the problematic ones
BUG=108605
Review URL: https://chromiumcodereview.appspot.com/9254016

16:22 Changeset [105342] by inferno@chromium.org

Merge 104441 - insertAdjacentHTML doesn't play nice with DocumentFragment
BUG=109556
Review URL: https://chromiumcodereview.appspot.com/9250020

16:21 Changeset [105341] by tsepez@chromium.org

Merge 104275 - Fix a crash by importing an element of which local name ends with ":input".
BUG=108461
Review URL: https://chromiumcodereview.appspot.com/9249042

16:18 Changeset [105340] by tsepez@chromium.org

Merge 104275 - Fix a crash by importing an element of which local name ends with ":input".
BUG=108461
Review URL: https://chromiumcodereview.appspot.com/9249041

16:16 Changeset [105339] by andersca@apple.com

REGRESSION (r88886): Tabs restore blank when running Safari with a nightly build for the first time
https://bugs.webkit.org/show_bug.cgi?id=76587
<rdar://problem/9739135>

Reviewed by Sam Weinig.

  • UIProcess/cf/WebPageProxyCF.cpp:

Change CurrentSessionStateDataVersion back to 2.

  • WebProcess/WebPage/DecoderAdapter.cpp:

(WebKit::DecoderAdapter::decodeString):

  • WebProcess/WebPage/EncoderAdapter.cpp:

(WebKit::EncoderAdapter::encodeString):
Backport the CoreIPC string encoding and decoding functions that were in place prior to r88886.

16:12 Changeset [105338] by cdn@chromium.org

Merge 104183 - Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
  • fast/css/relative-position-replaced-in-table-display-crash.html: Added

Review URL: http://codereview.chromium.org/9263001

16:10 Changeset [105337] by cdn@chromium.org

Merge 104183 - Source/WebCore: Crash due to reparenting of relpositioned object under anonymous block
https://bugs.webkit.org/show_bug.cgi?id=70848

The associated test case creates a condition where a relative
positioned renderer is a descendant of an anonymous block for a
table column. The anonymous block is the containingBlock() for the
relpositioned renderer. Removal of a div causes the anonymous blocks to
be merged, and the renderer becomes a descendant of a different block.
Since the new containingBlock() has an empty positionedObject list,
the relpositioned renderer does not get layout after being dirtied.

This patch changes containingBlock() so that it returns the container
of an anonymous block for positioned objects, not the anonymous
block itself. It also adds an ASSERT to insertPositionedObject()
to flag any other cases where something is trying to create a
positioned object list on an anonymous block.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::insertPositionedObject):

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::containingBlock):

LayoutTests: Crash due to reparenting of relpositioned object in table
https://bugs.webkit.org/show_bug.cgi?id=70848

Adding test that exercises the crash condition in bug 70848.

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-05
Reviewed by David Hyatt.

  • fast/css/relative-position-replaced-in-table-display-crash-expected.txt: Added
  • fast/css/relative-position-replaced-in-table-display-crash.html: Added

Review URL: http://codereview.chromium.org/9232034

16:08 Changeset [105336] by inferno@chromium.org

Merge 104441 - insertAdjacentHTML doesn't play nice with DocumentFragment
BUG=109556
Review URL: https://chromiumcodereview.appspot.com/9249040

16:07 Changeset [105335] by ojan@chromium.org

Fix tests from http://trac.webkit.org/changeset/105332.

The code assumed that if you passed an options object with a configuration
attribute that it would have a valid value. A bunch of the testing mocks
do things like having a configuration value of None.

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

(Port.init):

15:40 Changeset [105334] by jamesr@google.com

[chromium] Update a few chromium expectations.

  • platform/chromium/test_expectations.txt:
15:29 Changeset [105333] by eric.carlson@apple.com

Provide access to user's list of preferred languages
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Timothy Hatcher.

No new tests, tested by fast/harness/user-preferred-language.html.

  • platform/mac/Language.mm:

(WebCore::platformUserPreferredLanguages): Don't over-release a the CFStrings returned by

CFLocaleCopyPreferredLanguages.

15:14 Changeset [105332] by ojan@chromium.org

Shave 0.5 seconds off check-webkit-style runtime for test_expectations.txt
https://bugs.webkit.org/show_bug.cgi?id=76576

Reviewed by Adam Barth.

Avoid calling default_configuration in base.py. We don't need it for
checking test_expectations.txt style. It takes ~0.5 seconds to run on my
Mac Pro. It's the call to "perl Tools/Scripts/webkit-build-directory --top-level"
from common.executive.

At some point someone should probably look into why that call is so slow
since it's on the critical path for run-webkit-tests and build-webkit startup.

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

(Port.init):

  • Scripts/webkitpy/style/checkers/test_expectations.py:

(TestExpectationsChecker._determine_port_from_exepectations_path):

15:07 Changeset [105331] by jsbell@chromium.org

IndexedDB: Implement create-intermediate-objects semantics when injecting values via keyPaths
https://bugs.webkit.org/show_bug.cgi?id=76493

Source/WebCore:

Reviewed by Tony Chang.

Tests: storage/indexeddb/objectstore-autoincrement.html

  • bindings/v8/IDBBindingUtilities.cpp:

(WebCore::injectIDBKeyIntoSerializedValue):

LayoutTests:

Per discussion on public-webapps, when injecting a key into a value, create intermediate
objects if necessary.

Reviewed by Tony Chang.

  • storage/indexeddb/objectstore-autoincrement-expected.txt:
  • storage/indexeddb/objectstore-autoincrement.html:
15:03 Changeset [105330] by dpranke@chromium.org

[chromium] move Tools.gyp, switch build-webkit --chromium to All.gyp
https://bugs.webkit.org/show_bug.cgi?id=76505

Reviewed by Tony Chang.

.:

Update with newly-generated files.

  • .gitignore:

Source/WebKit/chromium:

Update path to Tools/DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp.

  • All.gyp:
  • gyp_webkit:
  • change to using All.gyp
  • change build_webkit_exes_from_webkit_gyp to 0

Tools:

Update chromium build script to use All.gyp instead of WebKit.gyp

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp: Renamed from Source/WebKit/chromium/Tools.gyp.
  • Scripts/webkitdirs.pm:
14:58 Changeset [105329] by jsbell@chromium.org

IndexedDB: Invalid keys yielded by key paths should raise exceptions, not error callbacks
https://bugs.webkit.org/show_bug.cgi?id=76075

Reviewed by Tony Chang.

Source/WebCore:

Tests: storage/indexeddb/objectstore-basics.html

  • storage/IDBObjectStoreBackendImpl.cpp:

(WebCore::IDBObjectStoreBackendImpl::put):

LayoutTests:

  • storage/indexeddb/mozilla/bad-keypath-expected.txt:
  • storage/indexeddb/mozilla/bad-keypath.html:
  • storage/indexeddb/objectstore-basics-expected.txt:
  • storage/indexeddb/objectstore-basics.html:
14:49 Changeset [105328] by jamesr@google.com

[chromium] Fix compile error from bug #76211
https://bugs.webkit.org/show_bug.cgi?id=76575

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

No new tests. Fixing compile only.

  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerTextureUpdater::prepareToUpdate):

14:49 Changeset [105327] by jamesr@google.com

[chromium] Update chromium linux pixel baseline for svg test

  • platform/chromium-linux/svg/custom/linking-a-03-b-viewBox-expected.png:
14:48 Changeset [105326] by mrobinson@webkit.org

[GTK] WebKit-3.0.gir does not include information about C includes or exported packages
https://bugs.webkit.org/show_bug.cgi?id=49875

Patch by Evan Nemerson <evan@coeus-group.com> on 2012-01-18
Reviewed by Martin Robinson.

  • GNUmakefile.am: Add some information to the GIR generator to fix

Vala binding generation.

14:43 Changeset [105325] by mitz@apple.com

Don’t hardcode the path to ‘make‘.

Patch by Sam Weinig <sam@webkit.org> on 2012-01-18
Reviewed by Dan Bernstein.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
14:39 Changeset [105324] by dgrogan@chromium.org

IndexedDB: Check for permission before using IndexedDB from a worker.
https://bugs.webkit.org/show_bug.cgi?id=76500

Reviewed by David Levin.

  • src/IDBFactoryBackendProxy.cpp:

(WebKit::AllowIndexedDBMainThreadBridge::create):
(WebKit::AllowIndexedDBMainThreadBridge::cancel):
(WebKit::AllowIndexedDBMainThreadBridge::result):
(WebKit::AllowIndexedDBMainThreadBridge::signalCompleted):
(WebKit::AllowIndexedDBMainThreadBridge::AllowIndexedDBMainThreadBridge):
(WebKit::AllowIndexedDBMainThreadBridge::allowIndexedDBTask): Call
webView->permissionClient()->allowIndexedDB on the main thread because
ContentSettingsObserver::AllowIndexedDB(), which is called down the
chain, expects to be run on the main thread.
(WebKit::AllowIndexedDBMainThreadBridge::didComplete):
(WebKit::IDBFactoryBackendProxy::allowIDBFromWorkerThread): Wait for
main permission check to complete on main thread before proceeding on
worker thread.

14:37 Changeset [105323] by ap@apple.com

[Mac] Add a flag telling plug-in if it can enter sandbox
https://bugs.webkit.org/show_bug.cgi?id=76467

Reviewed by Anders Carlsson.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp: (WebKit::NPN_GetValue): Added a private flag.
14:34 Changeset [105322] by jsbell@chromium.org

Adding myself to committers.py
https://bugs.webkit.org/show_bug.cgi?id=76569

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
14:32 Changeset [105321] by abarth@webkit.org

REGRESSION (r104000): AdBlock extension fails to load/function
https://bugs.webkit.org/show_bug.cgi?id=75554

Reviewed by Andy Estes.

Source/WebCore:

Previously, we would claim the documentElement was available before
we'd actually attached it to the DOM (which we now do via the
attachment queue). This issue was noted in the code with a FIXME
comment, but there was no test coverage for the issue. This patch
resolves the FIXME and adds a test.

Test: userscripts/document-element-available-at-start.html

  • html/parser/HTMLConstructionSite.cpp:

(WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):

LayoutTests:

This test checks that the documentElement is available when user
scripts are run at document start.

  • userscripts/document-element-available-at-start-expected.txt: Added.
  • userscripts/document-element-available-at-start.html: Added.
14:27 Changeset [105320] by commit-queue@webkit.org

[SKIA / CHROMIUM] Add some canvas tests to test_expectations to prepare for changes to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-18
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
14:13 Changeset [105319] by abarth@webkit.org

Up the cap on test failures tolerated by the EWS so the mac-ews can run to completion
https://bugs.webkit.org/show_bug.cgi?id=76567

Reviewed by Eric Seidel.

Current the AppleMac port has slightly more failures than we allow on
the EWS, causing the mac-ews to spin. This patch ups the limit a bit,
which should hopefully let the mac-ews run to completion. Once
AppleMac has fewer failures, we can lower the cap again.

  • Scripts/webkitpy/tool/bot/layouttestresultsreader_unittest.py:

(LayoutTestResultsReaderTest.test_layout_test_results):

  • Scripts/webkitpy/tool/steps/runtests.py:

(RunTests):

  • Scripts/webkitpy/tool/steps/steps_unittest.py:
14:07 Changeset [105318] by tommyw@google.com

[chromium] MediaStream API: Make WebMediaStreamDescriptor copyable
https://bugs.webkit.org/show_bug.cgi?id=76526

Reviewed by Darin Fisher.

This patch adds a copy constructor and a assignment operator to WebMediaStreamDescriptor.

  • public/platform/WebMediaStreamDescriptor.h:

(WebKit::WebMediaStreamDescriptor::WebMediaStreamDescriptor):
(WebKit::WebMediaStreamDescriptor::operator=):

  • src/WebMediaStreamDescriptor.cpp:

(WebKit::WebMediaStreamDescriptor::assign):

13:58 Changeset [105317] by ossy@webkit.org

[Qt] REGRESSION(r105310): Two inspector tests fails
https://bugs.webkit.org/show_bug.cgi?id=76566

  • platform/qt/Skipped: Skip failing tests to paint the bot green.
13:47 Changeset [105316] by jamesr@google.com

[chromium] Update expectations, add a few new baselines.

  • platform/chromium/http/tests/misc/bubble-drag-events-expected.txt: Added.
  • platform/chromium/http/tests/misc/drag-over-iframe-invalid-source-crash-expected.txt: Added.
  • platform/chromium/http/tests/misc/iframe-invalid-source-crash-expected.txt: Added.
  • platform/chromium/test_expectations.txt:
13:45 Changeset [105315] by eric.carlson@apple.com

Provide access to user's list of preferred languages
https://bugs.webkit.org/show_bug.cgi?id=76138

Reviewed by Alexey Proskuryakov.

.:

  • Source/autotools/symbols.filter: List the new functions.

Source/WebCore:

Test: fast/harness/user-preferred-language.html

  • WebCore.exp.in: Export the new functions.
  • WebCore.order: Ditto.
  • Target.pri: Include new files.
  • WebCore.gypi: Ditto.
  • WebCore.vcproj/WebCoreTestSupport.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • platform/Language.cpp:

(WebCore::defaultLanguage): Return userPreferredLanguages[0].
(WebCore::preferredLanguagesOverride): New, return the languages override.
(WebCore::overrideUserPreferredLanguages): New, set the languages override.
(WebCore::userPreferredLanguages): New, return the languages array.

  • platform/Language.h:
  • platform/blackberry/LocalizedStringsBlackBerry.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/chromium/LanguageChromium.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/efl/LanguageEfl.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/gtk/LanguageGtk.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/mac/Language.mm:

(+[WebLanguageChangeObserver _webkit_languagePreferencesDidChange]): Flag the user languages

as invalid.

(WebCore::platformLanguage): Removed.
(WebCore::platformUserPreferredLanguages): New, return the list of user preferred languages.

  • platform/qt/LanguageQt.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • platform/win/LanguageWin.cpp:

(WebCore::platformLanguage): Renamed from platformDefaultLanguage, now static.
(WebCore::platformUserPreferredLanguages): New.

  • testing/Internals.cpp:

(WebCore::Internals::userPreferredLanguages): New, return the platform's user preferred languages.
(WebCore::Internals::setUserPreferredLanguages): New, override the user's preferred languages.

  • testing/Internals.h:
  • testing/Internals.idl: Add userPreferredLanguages.
  • testing/js/JSInternalsCustom.cpp:

(WebCore::JSInternals::userPreferredLanguages): New.
(WebCore::JSInternals::setUserPreferredLanguages): New.

  • testing/v8/V8InternalsCustom.cpp:

(WebCore::V8Internals::userPreferredLanguagesAccessorGetter): New.
(WebCore::V8Internals::userPreferredLanguagesAccessorSetter): New.

Source/WebKit2:

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode): Encode the languages array.
(WebKit::WebProcessCreationParameters::decode): Decode the languages array.

  • Shared/WebProcessCreationParameters.h:
  • UIProcess/WebContext.cpp:

(WebKit::WebContext::languageChanged): Override the WebProcess userPreferredLanguages.
(WebKit::WebContext::ensureWebProcess): Initialize parameters.languages.

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::initializeWebProcess): Override user languages array.
(WebKit::WebProcess::userPreferredLanguagesChanged): Ditto.

  • WebProcess/WebProcess.h:
  • WebProcess/WebProcess.messages.in: Define UserPreferredLanguagesChanged.
  • win/WebKit2.def: Export the new functions.
  • win/WebKit2CFLite.def: Ditto.

Tools:

  • GNUmakefile.am: Add JSInternalsCustom.cpp.

LayoutTests:

  • fast/harness/user-preferred-language-expected.txt: Added.
  • fast/harness/user-preferred-language.html: Added.
13:41 Changeset [105314] by commit-queue@webkit.org

[chromium] Enable tracking opaque region in Skia graphics context, return it from LayerTextureUpdater
https://bugs.webkit.org/show_bug.cgi?id=76211

Patch by Dana Jansens <danakj@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

New unit tests in LayerTextureUpdaterTest.cpp

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::BitmapSkPictureCanvasLayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/ContentLayerChromium.cpp:

(WebCore::ContentLayerChromium::createTextureUpdater):

  • platform/graphics/chromium/LayerTextureUpdater.h:

(WebCore::LayerTextureUpdater::prepareToUpdate):

  • platform/graphics/chromium/PlatformCanvas.h:

(WebCore::PlatformCanvas::Painter::skiaContext):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.cpp:

(WebCore::SkPictureCanvasLayerTextureUpdater::SkPictureCanvasLayerTextureUpdater):
(WebCore::SkPictureCanvasLayerTextureUpdater::prepareToUpdate):
(WebCore::SkPictureCanvasLayerTextureUpdater::setOpaque):

  • platform/graphics/chromium/SkPictureCanvasLayerTextureUpdater.h:
  • platform/graphics/chromium/TiledLayerChromium.cpp:

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

Source/WebKit/chromium:

  • WebKit.gypi:
  • tests/LayerTextureUpdaterTest.cpp: Added.

(WebCore::TestLayerPainterChromium::TestLayerPainterChromium):
(WebCore::TestLayerPainterChromium::paint):
(WebCore::PaintFillOpaque::operator()):
(WebCore::PaintFillAlpha::operator()):
(WebCore::TEST):

  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeLayerTextureUpdater::prepareToUpdate):

13:34 Changeset [105313] by ossy@webkit.org

[Qt] DumpRenderTree converts "file:///" to a path differently
https://bugs.webkit.org/show_bug.cgi?id=76563

  • platform/qt/Skipped: Skip http/tests/misc/iframe-invalid-source-crash.html until fix.
13:23 Changeset [105312] by jamesr@google.com

[chromium] Update pixel results due to skia roll

  • platform/chromium-linux/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/chromium-mac-leopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
  • platform/chromium-mac-snowleopard/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Added.
  • platform/chromium-mac/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png: Removed.
  • platform/chromium-win/fast/backgrounds/repeat/negative-offset-repeat-transformed-expected.png:
13:03 Changeset [105311] by commit-queue@webkit.org

[chromium] Refactor canvas, plugin, and video drawing to be more data-driven
https://bugs.webkit.org/show_bug.cgi?id=76274

Patch by Tim Dresser <tdresser@chromium.org> on 2012-01-18
Reviewed by James Robinson.

Source/WebCore:

This is the first step in refactoring canvas, plugin, and video drawing.
The CCCustomLayerDrawQuad implementation has been copied to CCCanvasDrawQuad, CCPluginDrawQuad and CCVideoDrawQuad.
All references to CustomLayer have been removed.

As this is a refactor, no new tests were added. CCLayerTreeHostImplTest.blendingOffWhenDrawingOpaqueLayers was modified to
no longer test culling.

  • WebCore.gypi:
  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawQuad):
(WebCore::LayerRendererChromium::drawCanvasQuad):
(WebCore::LayerRendererChromium::drawVideoQuad):
(WebCore::LayerRendererChromium::drawPluginQuad):

  • platform/graphics/chromium/LayerRendererChromium.h:
  • platform/graphics/chromium/cc/CCCanvasDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCCanvasDrawQuad::create):
(WebCore::CCCanvasDrawQuad::CCCanvasDrawQuad):

  • platform/graphics/chromium/cc/CCCanvasDrawQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCCanvasDrawQuad::layer):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:

(WebCore::CCCanvasLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
  • platform/graphics/chromium/cc/CCDrawQuad.cpp:

(WebCore::CCDrawQuad::toCanvasDrawQuad):
(WebCore::CCDrawQuad::toVideoDrawQuad):
(WebCore::CCDrawQuad::toPluginDrawQuad):

  • platform/graphics/chromium/cc/CCDrawQuad.h:
  • platform/graphics/chromium/cc/CCLayerImpl.cpp:

(WebCore::CCLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCPluginDrawQuad.cpp: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCPluginDrawQuad::create):
(WebCore::CCPluginDrawQuad::CCPluginDrawQuad):

  • platform/graphics/chromium/cc/CCPluginDrawQuad.h: Copied from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCPluginDrawQuad::layer):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:

(WebCore::CCPluginLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCPluginLayerImpl.h:
  • platform/graphics/chromium/cc/CCQuadCuller.cpp:
  • platform/graphics/chromium/cc/CCVideoDrawQuad.cpp: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.cpp.

(WebCore::CCVideoDrawQuad::create):
(WebCore::CCVideoDrawQuad::CCVideoDrawQuad):

  • platform/graphics/chromium/cc/CCVideoDrawQuad.h: Renamed from Source/WebCore/platform/graphics/chromium/cc/CCCustomLayerDrawQuad.h.

(WebCore::CCVideoDrawQuad::layer):

  • platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:

(WebCore::CCVideoLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCVideoLayerImpl.h:

Source/WebKit/chromium:

No longer test culling in CCLayerTreeHostImplTest.blendingOffWhenDrawingLayers.

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKit::BlendStateCheckLayer::appendQuads):
(WebKit::BlendStateCheckLayer::setExpectation):
(WebKit::BlendStateCheckLayer::quadsAppended):
(WebKit::BlendStateCheckLayer::BlendStateCheckLayer):
(WebKit::TEST_F):

12:59 Changeset [105310] by vsevik@chromium.org

Web Inspector: Unsafe cross origin access errors should show stack trace in console.
https://bugs.webkit.org/show_bug.cgi?id=73099

Reviewed by Pavel Feldman.

Source/WebCore:

Test: http/tests/inspector/console-cross-origin-iframe-logging.html

  • bindings/v8/V8Proxy.cpp:

(WebCore::V8Proxy::reportUnsafeAccessTo):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::addConsoleMessage):

  • dom/ScriptExecutionContext.h:
  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::shouldAllowNavigation):

  • page/Console.cpp:

(WebCore::Console::addMessage):

  • page/Console.h:
  • page/DOMWindow.cpp:

(WebCore::PostMessageTimer::PostMessageTimer):
(WebCore::PostMessageTimer::stackTrace):
(WebCore::DOMWindow::postMessage):
(WebCore::DOMWindow::postMessageTimerFired):
(WebCore::DOMWindow::printErrorMessage):

LayoutTests:

  • http/tests/inspector/console-cross-origin-iframe-logging-expected.txt: Added.
  • http/tests/inspector/console-cross-origin-iframe-logging.html: Added.
  • http/tests/inspector/resources/cross-origin-iframe.html: Added.
  • platform/chromium/http/tests/inspector/console-cross-origin-iframe-logging-expected.txt: Added.
12:33 Changeset [105309] by lforschler@apple.com

Merged r98935.

12:29 Changeset [105308] by commit-queue@webkit.org

Add [CallWith] support for attributes in JSC/V8 idl code generators.
Part of https://bugs.webkit.org/show_bug.cgi?id=76035

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-18
Reviewed by Adam Barth.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):
(GenerateAttributeCallWith):

  • bindings/scripts/CodeGeneratorV8.pm:

(GenerateNormalAttrGetter):
(GenerateNormalAttrSetter):
(GenerateAttributeCallWith):

  • bindings/scripts/test/CPP/WebDOMTestObj.cpp:

(WebDOMTestObj::withScriptStateAttribute):
(WebDOMTestObj::setWithScriptStateAttribute):
(WebDOMTestObj::withScriptExecutionContextAttribute):
(WebDOMTestObj::setWithScriptExecutionContextAttribute):
(WebDOMTestObj::withScriptStateAttributeRaises):
(WebDOMTestObj::setWithScriptStateAttributeRaises):
(WebDOMTestObj::withScriptExecutionContextAttributeRaises):
(WebDOMTestObj::setWithScriptExecutionContextAttributeRaises):

  • bindings/scripts/test/CPP/WebDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:

(webkit_dom_test_obj_get_with_script_state_attribute):
(webkit_dom_test_obj_set_with_script_state_attribute):
(webkit_dom_test_obj_get_with_script_execution_context_attribute):
(webkit_dom_test_obj_set_with_script_execution_context_attribute):
(webkit_dom_test_obj_get_with_script_state_attribute_raises):
(webkit_dom_test_obj_set_with_script_state_attribute_raises):
(webkit_dom_test_obj_get_with_script_execution_context_attribute_raises):
(webkit_dom_test_obj_set_with_script_execution_context_attribute_raises):
(webkit_dom_test_obj_set_property):
(webkit_dom_test_obj_get_property):
(webkit_dom_test_obj_class_init):

  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::jsTestObjWithScriptStateAttribute):
(WebCore::jsTestObjWithScriptExecutionContextAttribute):
(WebCore::jsTestObjWithScriptStateAttributeRaises):
(WebCore::jsTestObjWithScriptExecutionContextAttributeRaises):
(WebCore::setJSTestObjWithScriptStateAttribute):
(WebCore::setJSTestObjWithScriptExecutionContextAttribute):
(WebCore::setJSTestObjWithScriptStateAttributeRaises):
(WebCore::setJSTestObjWithScriptExecutionContextAttributeRaises):

  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm:

(-[DOMTestObj withScriptStateAttribute]):
(-[DOMTestObj setWithScriptStateAttribute:]):
(-[DOMTestObj withScriptExecutionContextAttribute]):
(-[DOMTestObj setWithScriptExecutionContextAttribute:]):
(-[DOMTestObj withScriptStateAttributeRaises]):
(-[DOMTestObj setWithScriptStateAttributeRaises:]):
(-[DOMTestObj withScriptExecutionContextAttributeRaises]):
(-[DOMTestObj setWithScriptExecutionContextAttributeRaises:]):

  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp:

(WebCore::TestObjInternal::withScriptStateAttributeAttrGetter):
(WebCore::TestObjInternal::withScriptStateAttributeAttrSetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeAttrGetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeAttrSetter):
(WebCore::TestObjInternal::withScriptStateAttributeRaisesAttrGetter):
(WebCore::TestObjInternal::withScriptStateAttributeRaisesAttrSetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeRaisesAttrGetter):
(WebCore::TestObjInternal::withScriptExecutionContextAttributeRaisesAttrSetter):

12:18 Changeset [105307] by ap@apple.com

file:// doesn't work as base URL
https://bugs.webkit.org/show_bug.cgi?id=76496

Updating more layout test results.

  • fast/loader/url-parse-1-expected.txt: This was already in the patch, just failed to land.
  • http/tests/misc/bubble-drag-events-expected.txt: Missed that one among failure noise.
12:16 Changeset [105306] by eae@chromium.org

Merging trunk changes up until 105194 into subpixel branch.

12:12 Changeset [105305] by commit-queue@webkit.org

[Qt][WK2] Broken build with undefined reference to shm_open and shm_unlink
https://bugs.webkit.org/show_bug.cgi?id=76538

Patch by Luciano Wolf <luciano.wolf@openbossa.org> on 2012-01-18
Reviewed by Tor Arne Vestbø.

The -lrt parameter was coming before -lWebKit2 during linkage.

Moved rt lib inclusion from Source/api.pri to WebKit2.pri as it should be aware
of its own dependencies instead of letting WebKit guess about. Letting
it on api.pri can lead to a wrong parameter's order during linker phase.
Ubuntu 11.10 was giving errors about SharedMemory (shm_open and
shm_unlink undefined symbols).

.:

  • Source/api.pri:

Source/WebKit2:

The issue was fixed with the help of Aloisio Almeida and Lauro Venancio.

  • WebKit2.pri:
12:04 WebKit Team edited by jonlee@apple.com
Adding Jon Lee as committer. (diff)
11:59 Changeset [105304] by reed@google.com

add test expections ahead of skia DEPS roll
https://bugs.webkit.org/show_bug.cgi?id=76477

Reviewed by NOBODY: Unreviewed
see http://code.google.com/p/chromium/issues/detail?id=110493

  • platform/chromium/test_expectations.txt:
11:48 Changeset [105303] by jamesr@google.com

[chromium] Update expectations and baselines for various tests

  • platform/chromium-linux/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-mac-leopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-all-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-container-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/chromium-mac/svg/custom/mouse-move-on-svg-container-expected.png: Removed.
  • platform/chromium-mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Removed.
  • platform/chromium-win/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/chromium-win/svg/custom/linking-a-03-b-viewBox-expected.txt:
  • platform/chromium-win/svg/transforms/animated-path-inside-transformed-html-expected.png:
  • platform/chromium/test_expectations.txt:
11:39 Changeset [105302] by abarth@webkit.org

Add Chromium Linux GPU 32 to the list of allowed Chromium Linux
configurations.

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

(ChromiumLinuxPort.init):

11:24 Changeset [105301] by lforschler@apple.com

Merged r105291.

10:59 Changeset [105300] by lforschler@apple.com

Merge layoutest fix from 10695015.

10:58 Changeset [105299] by pfeldman@chromium.org

Not reviewed: fix failing inspector test.

  • inspector/elements/set-html-via-resource.html:
10:57 Changeset [105298] by lforschler@apple.com

Merged r104275.

10:51 Changeset [105297] by lforschler@apple.com

Merged r97088.

10:49 Changeset [105296] by timothy_horton@apple.com

[CG] Rasterized scaling of transformed SVG shapes with gradient fill and -webkit-svg-shadow applied
https://bugs.webkit.org/show_bug.cgi?id=76482
<rdar://problem/10415483>

Reviewed by Simon Fraser.

Scale the CGLayer used when filling or stroking a shadowed path or rect with
a gradient in GraphicsContextCG. Previously, the CGLayer was created and rendered
into at the untransformed size of the shape, leading to pixelation when it was
then scaled up and drawn into the destination.

Add AffineTransform::mapSize() to map a size through a transformation.

Test: svg/custom/transform-with-shadow-and-gradient.svg

  • platform/graphics/cg/GraphicsContextCG.cpp:

(WebCore::GraphicsContext::fillPath):
(WebCore::GraphicsContext::strokePath):
(WebCore::GraphicsContext::fillRect):
(WebCore::GraphicsContext::strokeRect):

  • platform/graphics/transforms/AffineTransform.cpp:

(WebCore::AffineTransform::mapSize): Added.

  • platform/graphics/transforms/AffineTransform.h:

Add a test that ensures that SVG shapes are drawn crisply when transformed
if they have both a gradient fill and -webkit-svg-shadow applied.

  • platform/mac/svg/custom/transform-with-shadow-and-gradient-expected.png: Added.
  • platform/mac/svg/custom/transform-with-shadow-and-gradient-expected.txt: Added.
  • svg/custom/transform-with-shadow-and-gradient.svg: Added.
10:46 Changeset [105295] by dmazzoni@google.com

Accessibility: Chromium needs methods to scroll an object into view or to a specific location.
https://bugs.webkit.org/show_bug.cgi?id=73460

Reviewed by Chris Fleizach.

Source/WebCore:

Tests: platform/chromium/accessibility/scroll-to-global-point-main-window.html

platform/chromium/accessibility/scroll-to-global-point-nested.html
platform/chromium/accessibility/scroll-to-global-point-iframe.html
platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html
platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html
platform/chromium/accessibility/scroll-to-make-visible-iframe.html
platform/chromium/accessibility/scroll-to-make-visible-main-window.html
platform/chromium/accessibility/scroll-to-make-visible-nested.html
platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::computeBestScrollOffset):
(WebCore::AccessibilityObject::scrollToMakeVisible):
(WebCore::AccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebCore::AccessibilityObject::scrollToGlobalPoint):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityObject::scrollTo):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):

  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::scrollToMakeVisible):
(WebKit::WebAccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebKit::WebAccessibilityObject::scrollToGlobalPoint):

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::scrollToMakeVisibleCallback):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocusCallback):
(AccessibilityUIElement::scrollToGlobalPointCallback):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Added.
10:41 Changeset [105294] by ap@apple.com

file:// doesn't work as base URL
https://bugs.webkit.org/show_bug.cgi?id=76496

Reviewed by Darin Adler.

Test: fast/url/degenerate-file-base.html

  • platform/KURL.cpp: (WebCore::KURL::parse): Handle degenerate file URLs properly.
10:41 Changeset [105293] by lforschler@apple.com

Merged r95371.

10:20 Changeset [105292] by loislo@chromium.org

[chromium] Web Inspector: highlight DOM nodes from detached DOM trees.
https://bugs.webkit.org/show_bug.cgi?id=76545

Reviewed by Yury Semikhatsky.

  • inspector/front-end/DetailedHeapshotGridNodes.js:

(WebInspector.HeapSnapshotGenericObjectNode):
(WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshotNode.prototype.get isNativeRoot):
(WebInspector.HeapSnapshotNode.prototype.get isDetachedDOMTree):
(WebInspector.HeapSnapshot.prototype._init):
(WebInspector.HeapSnapshot.prototype._markDetachedDOMTreeNodes):
(WebInspector.HeapSnapshot.prototype._markQueriableHeapObjects):
(WebInspector.HeapSnapshot.prototype._calculateFlags):

  • inspector/front-end/heapProfiler.css:

(.detached-dom-tree-node):

10:12 Changeset [105291] by enrica@apple.com

Source/WebKit/mac: Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>

Starting with Lion, there is no more NSForegroundColor attribute in the dictionary
if the color matches the default (solid black).
The fix consists in treating the lack of color as solid black instead of transparent as
we did before.

Added a TestWebKitAPI test.

Reviewed by Darin Adler and Dan Bernstein.

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _styleForAttributeChange:]):

Tools: Missing NSForegroundColorAttributeName should be treated as black instead of transparent.
https://bugs.webkit.org/show_bug.cgi?id=76490
<rdar://problem/9460733>

Added TestWebKitAPI test.

Reviewed by Dan Bernstein.

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: Added new test file.
  • TestWebKitAPI/Tests/mac/InspectorBar.mm: Added test that calls

changeAttributes to the WebView.

10:10 Changeset [105290] by commit-queue@webkit.org

Cross-platform processor core counter fix
https://bugs.webkit.org/show_bug.cgi?id=76540

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-18
Reviewed by Zoltan Herczeg.

I attached "OS(FREEBSD)" to "#if OS(DARWIN)
OS(OPENBSD) OS(NETBSD)"

and I removed the OS checking macros from ParallelJobsGeneric.cpp because
the NumberOfCores.cpp contains them for counting CPU cores.
The processor core counter patch located at
https://bugs.webkit.org/show_bug.cgi?id=76530

  • wtf/NumberOfCores.cpp:
  • wtf/ParallelJobsGeneric.cpp:
10:06 Changeset [105289] by commit-queue@webkit.org

[GTK] Listen to GDK_SCROLL_MASK
https://bugs.webkit.org/show_bug.cgi?id=76529

Source/WebKit/gtk:

Set GDK_SCROLL_MASK explicitly, as WebKitWebView does handle
scroll events, scrolling currently works because GTK+ happens
to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
but this isn't the intended behavior, so it's subject to change.

Patch by Carlos Garnacho <carlosg@gnome.org> on 2012-01-18
Reviewed by Martin Robinson.

  • webkit/webkitwebview.cpp:

(webkit_web_view_realize):

Source/WebKit2:

Set GDK_SCROLL_MASK explicitly, as WebKitWebViewBase does handle
scroll events, scrolling currently works because GTK+ happens
to send such events to widgets listening to GDK_BUTTON_PRESS_MASK,
but this isn't the intended behavior, so it's subject to change.

Patch by Carlos Garnacho <carlosg@gnome.org> on 2012-01-18
Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkitWebViewBaseRealize):

09:56 Changeset [105288] by pfeldman@chromium.org

Web Inspector: there should be a way to set HTML for given frame.
https://bugs.webkit.org/show_bug.cgi?id=76548

Reviewed by Yury Semikhatsky.

  • inspector/Inspector.json:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::setDocumentContent):

  • inspector/InspectorPageAgent.h:
  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMModelResourceBinding.prototype.setContent.callbackWrapper):
(WebInspector.DOMModelResourceBinding.prototype.setContent):

09:41 Changeset [105287] by ossy@webkit.org

[Qt] fontCache related assertion revealed by r105143
https://bugs.webkit.org/show_bug.cgi?id=76534

Unreviewed gardening. Skip a guilty test to paint the bot green.

  • platform/qt/Skipped:
09:40 Changeset [105286] by sergio@webkit.org

[GTK] [regression] A couple of tests failing after r105253
https://bugs.webkit.org/show_bug.cgi?id=76549

Reviewed by Gustavo Noronha Silva.

Fixes a regression added by r105253. The method that
RenderThemeGtk needs to overwrite is popsMenuBySpaceOrReturn()
instead of popsMenuByArrowKeys().

No new tests as it's already covered by
fast/forms/select-popup-pagekeys.html and
fast/forms/select/menulist-onchange-fired-with-key-up-down.html
that started to fail after the revision mentioned above.

  • platform/gtk/RenderThemeGtk.h:

(WebCore::RenderThemeGtk::popsMenuBySpaceOrReturn):

09:35 Changeset [105285] by abecsi@webkit.org

[Qt][WK2] Fix the debug build.

Unreviewed.

  • UIProcess/qt/QtWebPageEventHandler.cpp:

(setInputPanelVisible): Remove assertion from non-member function.

09:27 Changeset [105284] by pfeldman@chromium.org

Not reviewed: adding missing test data file.

  • inspector/elements/resources/set-html-via-resource-iframe.html: Added.
  • platform/qt/Skipped:
09:19 Changeset [105283] by ossy@webkit.org

[Qt] Unreviewed gardening after r105262.
https://bugs.webkit.org/show_bug.cgi?id=76457

  • platform/qt/Skipped: Skip inspector/elements/set-html-via-resource.html until proper fix.
09:14 Changeset [105282] by caseq@chromium.org

Web Inspector: omit compression field in HAR entries for resources coming from cache
https://bugs.webkit.org/show_bug.cgi?id=76543

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/front-end/HAREntry.js:

(WebInspector.HAREntry.prototype._buildContent):
(WebInspector.HAREntry.prototype.get responseCompression):

LayoutTests:

  • http/tests/inspector/resource-har-conversion-expected.txt:
  • http/tests/inspector/resource-har-headers-expected.txt:
  • http/tests/inspector/resource-parameters-expected.txt:
  • platform/chromium/http/tests/inspector/resource-har-conversion-expected.txt: Removed.
09:09 Changeset [105281] by ossy@webkit.org

[Qt] Unreviewed gardening. Skip failing tests, simplify qt-wk2 skipped list.

  • platform/qt-wk2/Skipped:
  • platform/wk2/Skipped:
08:57 Changeset [105280] by mihnea@adobe.com

[CSSRegions]Fix region style code in CSSStyleSelector
https://bugs.webkit.org/show_bug.cgi?id=76453

Reviewed by Antti Koivisto.

Source/WebCore:

Follow up after comments in https://bugs.webkit.org/show_bug.cgi?id=76064.
With the new approach, the css rule specificity is correctly taken into account
when applying the region style rule.
No new tests, the region style tests are still disabled.

  • css/CSSStyleSelector.cpp:

(WebCore::RuleSet::RuleSetSelectorPair::RuleSetSelectorPair):
(WebCore::CSSStyleSelector::CSSStyleSelector):
(WebCore::CSSStyleSelector::addMatchedDeclaration):
(WebCore::CSSStyleSelector::collectMatchingRules):
(WebCore::CSSStyleSelector::collectMatchingRulesForRegion):
(WebCore::CSSStyleSelector::matchRules):
(WebCore::CSSStyleSelector::collectMatchingRulesForList):
(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::styleForElement):
(WebCore::CSSStyleSelector::pseudoStyleForElement):
(WebCore::CSSStyleSelector::checkRegionStyle):
(WebCore::CSSStyleSelector::checkRegionSelector):
(WebCore::RuleData::RuleData):
(WebCore::RuleSet::RuleSet):
(WebCore::RuleSet::addRule):
(WebCore::RuleSet::addRegionRule):
(WebCore::RuleSet::addRulesFromSheet):
(WebCore::isInsideRegionRule):
(WebCore::CSSStyleSelector::applyDeclaration):
(WebCore::CSSStyleSelector::applyDeclarations):
(WebCore::CSSStyleSelector::isValidRegionStyleProperty):
(WebCore::CSSStyleSelector::applyProperty):

  • css/CSSStyleSelector.h:

LayoutTests:

Fix the test as it was not taking into account the selector specificity.

  • fast/regions/region-style-block-background-color.html:
08:39 Changeset [105279] by jer.noble@apple.com

Mac fails to fire an 'error' event for a <video> <source> having an URL with no file extension
https://bugs.webkit.org/show_bug.cgi?id=76494

Reviewed by Eric Carlson.

No new tests; fixes compositing/video/video-with-invalid-source.html. Modified
media/video-source-error-no-candidate.html to check error condition.

When we run out of media engines for a given resource, inform the media player client
that resource loading failed by calling mediaPlayerResourceNotSupported().

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::mediaPlayerResourceNotSupported):

  • html/HTMLMediaElement.h:
  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::loadWithNextMediaEngine):

  • platform/graphics/MediaPlayer.h:

(WebCore::MediaPlayerClient::mediaPlayerResourceNotSupported):

08:06 Changeset [105278] by ossy@webkit.org

WebKit2 needs layoutTestController.overridePreference
https://bugs.webkit.org/show_bug.cgi?id=42197

Unreviewed gardening, skip failing tests due to this bug.

  • platform/wk2/Skipped:
08:02 Changeset [105277] by ossy@webkit.org

[Qt] Test fonts metric differencies with Qt5
https://bugs.webkit.org/show_bug.cgi?id=75710

Unreviewed gardening, unskip now passing tests after tesfont fix

  • platform/qt-5.0/Skipped:
07:42 Changeset [105276] by achicu@adobe.com

CSS Shaders: Parse float parameters for the custom() filter syntax
https://bugs.webkit.org/show_bug.cgi?id=76253

Reviewed by Nikolas Zimmermann.

Source/WebCore:

Custom CSS filters allow passing parameters from CSS to the underlying rendering technology (in this case WebGL Shaders).
This patch adds support for parameters of types float, vec2, vec3 and vec4.

https://dvcs.w3.org/hg/FXTF/raw-file/tip/custom/index.html#feCustomParamsAttribute

Tests: css3/filters/effect-custom-combined-missing.html

css3/filters/effect-custom-parameters.html

  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:

Added CustomFilterParameter.h, CustomFilterNumberParameter.h and CustomFilterOperation.cpp to the projects.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterNumberParameter):
(WebCore::CSSComputedStyleDeclaration::valueForCustomFilterParameter):
(WebCore::CSSComputedStyleDeclaration::valueForFilter):

Added the computed parameters in alphabetic order (CustomFilterOperation always keeps the parameters sorted).

  • css/CSSComputedStyleDeclaration.h:
  • css/CSSStyleSelector.cpp:

(WebCore::sortParametersByNameComparator):
(WebCore::CSSStyleSelector::parseCustomFilterNumberParamter):
(WebCore::CSSStyleSelector::parseCustomFilterParameterList):
(WebCore::CSSStyleSelector::createCustomFilterOperation):

Added parsing for float, vec2, vec3 and vec4. The values are space separated.

  • css/CSSStyleSelector.h:
  • platform/graphics/filters/CustomFilterNumberParameter.h: Added.

(WebCore::CustomFilterNumberParameter::create):
(WebCore::CustomFilterNumberParameter::size):
(WebCore::CustomFilterNumberParameter::valueAt):
(WebCore::CustomFilterNumberParameter::addValue):
(WebCore::CustomFilterNumberParameter::CustomFilterNumberParameter):

  • platform/graphics/filters/CustomFilterOperation.cpp: Added.

(WebCore::CustomFilterOperation::CustomFilterOperation):
(WebCore::CustomFilterOperation::~CustomFilterOperation):

Moved constructor and destructor in CustomFilterOperation.cpp to avoid including CustomFilterParameter everywhere.

(WebCore::CustomFilterOperation::hasSortedParameterList):

Debug runtime check that we always have parameters in alphabetic order.

  • platform/graphics/filters/CustomFilterOperation.h:

(WebCore::CustomFilterOperation::create):
(WebCore::CustomFilterOperation::parameters):

Just added the parameters list. Not using a map, but keeping the items sorted by name. We need them sorted
to make it easy and fast to merge two CustomFilterOperations during animations.

  • platform/graphics/filters/CustomFilterParameter.h: Added.

(WebCore::CustomFilterParameter::~CustomFilterParameter):
(WebCore::CustomFilterParameter::parameterType):
(WebCore::CustomFilterParameter::name):
(WebCore::CustomFilterParameter::CustomFilterParameter):

  • platform/graphics/filters/CustomFilterShader.cpp:

(WebCore::CustomFilterShader::uniformLocationByName):

  • platform/graphics/filters/CustomFilterShader.h:
  • platform/graphics/filters/FECustomFilter.cpp:

(WebCore::FECustomFilter::FECustomFilter):
(WebCore::FECustomFilter::create):
(WebCore::FECustomFilter::platformApplySoftware):
(WebCore::FECustomFilter::bindProgramNumberParameters):
(WebCore::FECustomFilter::bindProgramParameters):

Added code that maps the parameters from CSS to WebGL.

(WebCore::FECustomFilter::bindProgramAndBuffers):

  • platform/graphics/filters/FECustomFilter.h:
  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

Fixed a case when the filter was not created, letting the filter add itself as a source of its own.
Also added a test case for this particular case: css3/filters/effect-custom-combined-missing.html.

LayoutTests:

  • css3/filters/custom-filter-property-computed-style-expected.txt:
  • css3/filters/effect-custom-combined-missing-expected.png: Added.
  • css3/filters/effect-custom-combined-missing-expected.txt: Added.
  • css3/filters/effect-custom-combined-missing.html: Added.

Testing that missing shader filters will not enter an infinite loop.

  • css3/filters/effect-custom-parameters-expected.png: Added.
  • css3/filters/effect-custom-parameters-expected.txt: Added.
  • css3/filters/effect-custom-parameters.html: Added.
  • css3/filters/resources/color-offset-parameters.fs: Added.
  • css3/filters/resources/vertex-offset-parameters.vs: Added.

Testing parameter passing from CSS to WebGL.

  • css3/filters/script-tests/custom-filter-property-computed-style.js:

Added computed style checks for number parameters.

07:36 Changeset [105275] by kenneth@webkit.org

[Qt] Zoom in to the focused node only when vkb starts becoming visible https://bugs.webkit.org/show_bug.cgi?id=76174

Reviewed by Simon Hausmann.

Remove the old code which always zoomed in when something got focus,
even via JavaScript, and replaced it with code checking the state of
the Qt input panel.

Also make sure that we do not zoom in or request the input panel if
the item is not focused.

  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtPageClient.cpp:
  • UIProcess/qt/QtPageClient.h:
  • UIProcess/qt/QtWebPageEventHandler.cpp:

(QtWebPageEventHandler::QtWebPageEventHandler):
(QtWebPageEventHandler::~QtWebPageEventHandler):
(QtWebPageEventHandler::inputPanelVisibleChanged):

  • UIProcess/qt/QtWebPageEventHandler.h:
  • WebProcess/WebCoreSupport/WebEditorClient.cpp:

(WebKit::WebEditorClient::respondToChangedSelection):

07:21 Changeset [105274] by caseq@chromium.org

Web Inspector: resource tree model leaks frames
https://bugs.webkit.org/show_bug.cgi?id=76533

Reviewed by Pavel Feldman.

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeModel.prototype._frameDetached):
(WebInspector.ResourceTreeModel.prototype._removeFrame):
(WebInspector.ResourceTreeFrame.prototype._removeChildFrame):

07:07 Changeset [105273] by ossy@webkit.org

Cross-platform processor core counter
https://bugs.webkit.org/show_bug.cgi?id=76530

Unreviewed cross-MinGW buildfix after r105270.

  • wtf/NumberOfCores.cpp: Use windows.h instead of Windows.h.
06:20 Changeset [105272] by vsevik@chromium.org

Web Inspector: Enable support for Open Script dialog based on FilteredItemSelectionDialog.
https://bugs.webkit.org/show_bug.cgi?id=76466

Reviewed by Pavel Feldman.

  • English.lproj/localizedStrings.js:
  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.OpenResourceDialog.filterOutEmptyURLs):
(WebInspector.OpenResourceDialog):
(WebInspector.OpenResourceDialog.install):
(WebInspector.OpenResourceDialog._show):
(WebInspector.OpenResourceDialog.createShortcut):
(WebInspector.OpenResourceDialog.prototype.itemTitleAt):
(WebInspector.OpenResourceDialog.prototype.itemKeyAt):
(WebInspector.OpenResourceDialog.prototype.itemsCount):
(WebInspector.OpenResourceDialog.prototype.requestItems):
(WebInspector.OpenResourceDialog.prototype.selectItem):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

06:15 Changeset [105271] by rgabor@webkit.org

[Qt] Update another SVG expected after r105247.

Unreviewed.

  • platform/qt/svg/custom/pointer-events-text-css-transform-expected.png:
  • platform/qt/svg/custom/pointer-events-text-css-transform-expected.txt:
06:15 Changeset [105270] by commit-queue@webkit.org

Cross-platform processor core counter
https://bugs.webkit.org/show_bug.cgi?id=76530

Patch by Roland Takacs <takacs.roland@stud.u-szeged.hu> on 2012-01-18
Reviewed by Zoltan Herczeg.

Source/JavaScriptCore:

Two files have been created that include the processor core counter function.
It used to be in ParallelJobsGeneric.h/cpp before.

(JSC::Options::initializeOptions):

  • wtf/CMakeLists.txt:
  • wtf/NumberOfCores.cpp: Added.

(WTF::numberOfProcessorCores):

  • wtf/NumberOfCores.h: Added.
  • wtf/ParallelJobsGeneric.cpp:

(WTF::ParallelEnvironment::ParallelEnvironment):

  • wtf/ParallelJobsGeneric.h:

Source/WTF:

Two files have been added to the project, namely NumberOfCores.h/cpp,
that include a CPU core number determining function.

  • WTF.pro:
05:57 Changeset [105269] by rgabor@webkit.org

[Qt] svg/carto.net/frameless-svg-parse-error.html asserting after r105143
https://bugs.webkit.org/show_bug.cgi?id=76534

Reviewed by Csaba Osztrogonác.

  • platform/qt/Skipped:
05:52 Changeset [105268] by pfeldman@chromium.org

Not reviewed: follow up to r105262, fixing front-end compilation.

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMDocument):
(WebInspector.DOMModelResourceBinding.prototype.setContent.setOuterHTML):

05:35 Changeset [105267] by kbalazs@webkit.org

[Qt] Consolidate layout test crash logging
https://bugs.webkit.org/show_bug.cgi?id=75088

Reviewed by Simon Hausmann.

Move backtrace generating logic into WTFReportBacktrace
and add a way to deinstall signal handlers if we know
that we have already printed the backtrace.

.:

  • Source/qtwebkit-export.map:

Source/JavaScriptCore:

(WTFLogLocker::WTFReportBacktrace):
(WTFLogLocker::WTFSetCrashHook):
(WTFLogLocker::WTFInvokeCrashHook):

  • wtf/Assertions.h:

Tools:

  • DumpRenderTree/qt/main.cpp:

(crashHandler):
(setupSignalHandlers):
(WTFCrashHook):
(main):

  • WebKitTestRunner/InjectedBundle/qt/InjectedBundleQt.cpp:

(WTR::crashHandler):
(WTR::setupSignalHandlers):
(WTR::crashHook):
(WTR::InjectedBundle::platformInitialize):

05:26 Changeset [105266] by ossy@webkit.org

[Qt] Unreviewed gardening after testfonts update.

  • platform/qt-5.0/fast/html/font-weight-bold-for-b-and-strong-expected.png:
  • platform/qt-5.0/fast/html/font-weight-bold-for-b-and-strong-expected.txt:
05:15 Changeset [105265] by rgabor@webkit.org

[Qt] Update some SVG expected after r105247.

Unreviewed.

  • platform/qt/svg/custom/linking-a-03-b-all-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-all-expected.txt:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-expected.txt:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.png:
  • platform/qt/svg/custom/linking-a-03-b-viewBox-transform-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-container-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-root-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.png:
  • platform/qt/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/qt/svg/custom/pointer-events-image-css-transform-expected.png:
  • platform/qt/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/qt/svg/custom/pointer-events-image-expected.png:
  • platform/qt/svg/custom/pointer-events-image-expected.txt:
  • platform/qt/svg/custom/pointer-events-text-expected.png:
  • platform/qt/svg/custom/pointer-events-text-expected.txt:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
05:00 Changeset [105264] by mario@webkit.org

[GTK] platform/gtk/accessibility/combo-box-collapsed-selection-changed.html is failing after r105253
https://bugs.webkit.org/show_bug.cgi?id=76531

Unreviewed. Skip test now failing in the GTK port.

  • platform/gtk/Skipped: Skip test.
05:00 Changeset [105263] by loislo@chromium.org

Unreviewed build fix after r105256.

There was a cyclic dependency between self._port and self._host assigments.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):

04:52 Changeset [105262] by pfeldman@chromium.org

Web Inspector: track HTML revisions when editing DOM and / or upon free flow edits.
https://bugs.webkit.org/show_bug.cgi?id=76457

Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-html-via-resource.html

  • inspector/DOMEditor.cpp:

(WebCore::DOMEditor::patchNode):

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::getOuterHTML):
(WebCore::InspectorDOMAgent::setOuterHTML):
(WebCore::InspectorDOMAgent::buildObjectForNode):

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype.setNodeName):
(WebInspector.DOMNode.prototype.setNodeValue):
(WebInspector.DOMNode.prototype.setAttribute):
(WebInspector.DOMNode.prototype.setAttributeValue):
(WebInspector.DOMNode.prototype.removeAttribute):
(WebInspector.DOMNode.prototype.getChildNodes.mycallback):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype.setOuterHTML):
(WebInspector.DOMNode.prototype.removeNode):
(WebInspector.DOMNode.prototype.moveTo):
(WebInspector.DOMDocument):
(WebInspector.DOMAgent):
(WebInspector.DOMAgent.prototype._setDocument):
(WebInspector.DOMAgent.prototype._buildHighlightConfig):
(WebInspector.DOMAgent.prototype._markRevision):
(WebInspector.DOMAgent.prototype._captureDOM.callback):
(WebInspector.DOMAgent.prototype._captureDOM):
(WebInspector.DOMModelResourceBinding.prototype.setContent):
(WebInspector.DOMModelResourceBinding.prototype.setContent.setOuterHTML):
(WebInspector.DOMModelResourceBinding.prototype.setContent.withDocument):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted):

LayoutTests:

  • inspector/elements/resources/set-outer-html-body-iframe.html:
  • inspector/elements/set-html-via-resource-expected.txt: Added.
  • inspector/elements/set-html-via-resource.html: Added.
04:46 Changeset [105261] by caseq@chromium.org

Web Inspector: Popover does not disappear, causes debugger failure.
https://bugs.webkit.org/show_bug.cgi?id=71363

Reviewed by Pavel Feldman.

This is a work-around simple enough for a merge. The real fix would
be to get TextViewer to manage the highlight on its own, so it's not
accidently removed while re-building DOM for the text chunk.

  • inspector/front-end/JavaScriptSourceFrame.js:

(WebInspector.JavaScriptSourceFrame.prototype._onHidePopover):

03:33 Changeset [105260] by vestbo@webkit.org

Add new watchlist rule for the Qt build system

Reviewed by Simon Hausmann.

03:32 Changeset [105259] by vestbo@webkit.org

[Qt] Move OTHER_FILES from WebKit.pro to Tools.pro

Reviewed by Simon Hausmann.

03:32 Changeset [105258] by vestbo@webkit.org

[Qt] Allow building only a subset of the WebKit sub-projects

Fixes build-jsc, broken in r104825.

We no longer need the intermediate buildQMakeQtProject(), as we're the
only port using qmake, and buildQMakeProject is now highly Qt specific.

<http://webkit.org/b/76179>

Reviewed by Simon Hausmann.

03:25 Changeset [105257] by philn@webkit.org

Unreviewed, GTK rebaseline after r105247 and r105253.

  • platform/gtk/css3/images/cross-fade-overflow-position-expected.txt:
  • platform/gtk/fast/forms/implicit-submission-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-container-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-container-standalone-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-root-expected.txt:
  • platform/gtk/svg/custom/mouse-move-on-svg-root-standalone-expected.txt:
  • platform/gtk/svg/custom/pointer-events-image-css-transform-expected.txt:
  • platform/gtk/svg/custom/pointer-events-image-expected.txt:
  • platform/gtk/svg/custom/pointer-events-text-css-transform-expected.txt:
  • platform/gtk/svg/custom/pointer-events-text-expected.txt:
02:52 Changeset [105256] by rniwa@webkit.org

run-perf-tests should generate a json file that summaries the result
https://bugs.webkit.org/show_bug.cgi?id=76504

Reviewed by Adam Barth.

Add an ability to generate a json file to run-perf-test in the preparation for perf bots.
New option --outout-json-path specifies the json file's path, and --source-json-path specifies
another json file to be merged into the generated json file.

Also fixed a bug that --build wasn't set by default.

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

(TestPort.webkit_base):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):
(PerfTestsRunner):
(PerfTestsRunner._parse_args):
(PerfTestsRunner.run):
(PerfTestsRunner._generate_json_if_specified):
(PerfTestsRunner._process_chromium_style_test_result):
(PerfTestsRunner._process_parser_test_result):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(MainTest):
(create_runner):
(test_run_test_set):
(test_run_test_set_for_parser_tests):
(test_run_test_set_with_summary_json):
(test_collect_tests):
(test_parse_args):

02:52 Changeset [105255] by commit-queue@webkit.org

Unreviewed build fix.
https://bugs.webkit.org/show_bug.cgi?id=76525

Removed missing build headers.

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18

  • WebCore.xcodeproj/project.pbxproj:
02:40 Changeset [105254] by apavlov@chromium.org

[Chromium] Unreviewed, fix clashing svg/custom/linking-a-03-b-viewBox.svg expectation.

  • platform/chromium/test_expectations.txt:
02:39 Changeset [105253] by commit-queue@webkit.org

Use RenderTheme in HTMLSelectElement instead of #defines.
<http://webkit.org/b/76519>

Patch by Jun Mukai <mukai@chromium.org> on 2012-01-18
Reviewed by Kent Tamura.

Tests: no new tests because of no behavioral changes.

  • html/HTMLSelectElement.cpp:

(WebCore::HTMLSelectElement::platformHandleKeydownEvent):
(WebCore::HTMLSelectElement::menuListDefaultEventHandler):

  • platform/gtk/RenderThemeGtk.h:

(WebCore::RenderThemeGtk::popsMenuByArrowKeys):

  • rendering/RenderTheme.h:

(WebCore::RenderTheme::popsMenuByArrowKeys):
(WebCore::RenderTheme::popsMenuBySpaceOrReturn):

  • rendering/RenderThemeChromiumLinux.h:

(WebCore::RenderThemeChromiumLinux::popsMenuBySpaceOrReturn):

  • rendering/RenderThemeMac.h:

(WebCore::RenderThemeMac::popsMenuByArrowKeys):

02:15 Changeset [105252] by apavlov@chromium.org

Merge 105140 - Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9252006

02:08 Changeset [105251] by rolandsteiner@chromium.org

Unreviewed: Chromium test_expectations.txt update

  • platform/chromium/test_expectations.txt:
02:00 Changeset [105250] by inferno@chromium.org

Source/WebCore: Crash in FrameView::forceLayoutParentViewIfNeeded.
https://bugs.webkit.org/show_bug.cgi?id=76309

Reviewed by Nikolas Zimmermann.

updateWidgetPositions can blow away the owning renderer
and its frameview, so need to protect it with refptr.

Test: svg/dom/parent-view-layout-crash.html

  • page/FrameView.cpp:

(WebCore::FrameView::forceLayoutParentViewIfNeeded):

LayoutTests: Crash in FrameView::forceLayoutParentViewIfNeeded.
https://bugs.webkit.org/show_bug.cgi?id=76309

Reviewed by Nikolas Zimmermann.

  • svg/dom/parent-view-layout-crash-expected.txt: Added.
  • svg/dom/parent-view-layout-crash.html: Added.
  • svg/dom/resources/svg-font-face.svg: Added.
01:22 EFLWebKitCodingStyle edited by gyuyoung.kim@samsung.com
(diff)
01:22 EFLWebKitCodingStyle edited by gyuyoung.kim@samsung.com
(diff)
01:15 Changeset [105249] by commit-queue@webkit.org

Move ShadowContentElement from dom/ to html/ and make ShadowContentElement subclass of HTMLElement.
https://bugs.webkit.org/show_bug.cgi?id=76241

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-18
Reviewed by Dimitri Glazkov.

.:

  • Source/autotools/symbols.filter: Exposed necessary symbols.

Source/WebCore:

Renamed ShadowContentElement to HTMLContentElement, and move it from dom/ to html/.
Also, ShadowInclusionSelector and ShadowContentSelectorQuery are renamed to
Content InclusionSelector and ContentSelectorQuery respectively.

No new tests, because no change in behavior.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DOMAllInOne.cpp:
  • dom/NodeRenderingContext.cpp:

(WebCore::nextRendererOf):
(WebCore::previousRendererOf):
(WebCore::firstRendererOf):
(WebCore::lastRendererOf):
(WebCore::NodeRenderingContext::nextRenderer):
(WebCore::NodeRenderingContext::previousRenderer):

  • dom/NodeRenderingContext.h:

(WebCore::NodeRenderingContext::includer):

  • dom/ShadowRoot.cpp:

(WebCore::ShadowRoot::includerFor):
(WebCore::ShadowRoot::inclusions):
(WebCore::ShadowRoot::ensureInclusions):

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

(WebCore::DetailsContentElement::DetailsContentElement):
(WebCore::DetailsSummaryElement::DetailsSummaryElement):

  • html/HTMLElementsAllInOne.cpp:
  • html/HTMLSummaryElement.cpp:

(WebCore::SummaryContentElement::SummaryContentElement):

  • html/shadow/ContentInclusionSelector.cpp: Renamed from Source/WebCore/dom/ShadowInclusionSelector.cpp.

(WebCore::ShadowInclusion::append):
(WebCore::ShadowInclusion::unlink):
(WebCore::ShadowInclusionList::ShadowInclusionList):
(WebCore::ShadowInclusionList::~ShadowInclusionList):
(WebCore::ShadowInclusionList::find):
(WebCore::ShadowInclusionList::clear):
(WebCore::ShadowInclusionList::append):
(WebCore::ContentInclusionSelector::ContentInclusionSelector):
(WebCore::ContentInclusionSelector::~ContentInclusionSelector):
(WebCore::ContentInclusionSelector::select):
(WebCore::ContentInclusionSelector::unselect):
(WebCore::ContentInclusionSelector::findFor):
(WebCore::ContentInclusionSelector::didSelect):
(WebCore::ContentInclusionSelector::willSelectOver):

  • html/shadow/ContentInclusionSelector.h: Renamed from Source/WebCore/dom/ShadowInclusionSelector.h.

(WebCore::ShadowInclusion::includer):
(WebCore::ShadowInclusion::content):
(WebCore::ShadowInclusion::next):
(WebCore::ShadowInclusion::previous):
(WebCore::ShadowInclusion::ShadowInclusion):
(WebCore::ShadowInclusion::create):
(WebCore::ShadowInclusionList::first):
(WebCore::ShadowInclusionList::last):
(WebCore::ShadowInclusionList::isEmpty):
(WebCore::ShadowInclusionSet::add):
(WebCore::ShadowInclusionSet::remove):
(WebCore::ShadowInclusionSet::isEmpty):
(WebCore::ShadowInclusionSet::Translator::hash):
(WebCore::ShadowInclusionSet::Translator::equal):
(WebCore::ShadowInclusionSet::Hash::hash):
(WebCore::ShadowInclusionSet::Hash::equal):
(WebCore::ShadowInclusionSet::find):
(WebCore::ContentInclusionSelector::hasCandidates):

  • html/shadow/ContentSelectorQuery.cpp: Renamed from Source/WebCore/dom/ShadowContentSelectorQuery.cpp.

(WebCore::ContentSelectorQuery::ContentSelectorQuery):
(WebCore::ContentSelectorQuery::matches):

  • html/shadow/ContentSelectorQuery.h: Renamed from Source/WebCore/dom/ShadowContentSelectorQuery.h.
  • html/shadow/HTMLContentElement.cpp: Renamed from Source/WebCore/dom/ShadowContentElement.cpp.

(WebCore::HTMLContentElement::create):
(WebCore::HTMLContentElement::HTMLContentElement):
(WebCore::HTMLContentElement::~HTMLContentElement):
(WebCore::HTMLContentElement::attach):
(WebCore::HTMLContentElement::detach):
(WebCore::HTMLContentElement::select):
(WebCore::HTMLContentElement::setSelect):

  • html/shadow/HTMLContentElement.h: Renamed from Source/WebCore/dom/ShadowContentElement.h.

(WebCore::HTMLContentElement::inclusions):
(WebCore::HTMLContentElement::isContentElement):
(WebCore::HTMLContentElement::rendererIsNeeded):
(WebCore::HTMLContentElement::createRenderer):
(WebCore::toHTMLContentElement):

  • testing/Internals.cpp:

(WebCore::Internals::createContentElement):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit2:

  • win/WebKit2.def: Exposed necessary symbols.
  • win/WebKit2CFLite.def: ditto.

LayoutTests:

Renamed internals.createShadowContentElement to internals.createContentElement.

  • fast/dom/shadow/content-element-includer.html:
  • fast/dom/shadow/content-element-renderers.html:
  • fast/dom/shadow/create-content-element.html:
  • fast/dom/shadow/shadow-contents-select.html:
01:04 Changeset [105248] by carlosgc@webkit.org

Unreviewed. Fix GTK+ build after r105245.

  • Source/autotools/symbols.filter: Fix symbol name.
00:45 Changeset [105247] by zimmermann@webkit.org

RenderSVGRoot should inherit from RenderReplaced
https://bugs.webkit.org/show_bug.cgi?id=76446

Reviewed by Zoltan Herczeg.

Source/WebCore:

Let RenderSVGRoot inherit from RenderReplaced, instead of faking RenderReplaced, by inherting from RenderBox
and calling setReplaced(true) in the constructor. The outermost <svg> element is a replaced element in the
sense of CSS, and thus this is just a logical move. It fixes some issues where the <svg> root appeared
as selection leaf, covered by existing tests.

It allows us to simplify the painting, as outlines, etc. are painted by RenderReplaced now.
While I was it, speed up the local to border box computations by caching the result.

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::paint):

  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::RenderSVGRoot):
(WebCore::RenderSVGRoot::layout):
(WebCore::RenderSVGRoot::paintReplaced):
(WebCore::RenderSVGRoot::willBeDestroyed):
(WebCore::RenderSVGRoot::styleWillChange):
(WebCore::RenderSVGRoot::styleDidChange):
(WebCore::RenderSVGRoot::updateFromElement):
(WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
(WebCore::RenderSVGRoot::localToParentTransform):
(WebCore::RenderSVGRoot::computeFloatRectForRepaint):
(WebCore::RenderSVGRoot::mapLocalToContainer):
(WebCore::RenderSVGRoot::nodeAtPoint):

  • rendering/svg/RenderSVGRoot.h:

(WebCore::RenderSVGRoot::canHaveChildren):
(WebCore::RenderSVGRoot::canBeSelectionLeaf):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::setupInitialView):

LayoutTests:

Update test results after making RenderSVGRoot inherit from RenderReplaced.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/custom/linking-a-03-b-all-expected.png: Text layout changed, we didn't relayout the tree when entering a new view before.
  • platform/mac/svg/custom/linking-a-03-b-all-expected.txt: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-expected.png: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-expected.txt: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.png: Ditto.
  • platform/mac/svg/custom/linking-a-03-b-viewBox-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-expected.png: Moving the circle, triggered a selection before, where it shouldn't. It's gone now.
  • platform/mac/svg/custom/mouse-move-on-svg-container-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-container-standalone-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-expected.txt: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.png: Ditto.
  • platform/mac/svg/custom/mouse-move-on-svg-root-standalone-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.png: Caret position which is reported changed, due the selection leaf changes.
  • platform/mac/svg/custom/pointer-events-image-css-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-image-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-image-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-text-css-transform-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-text-css-transform-expected.txt: Ditto.
  • platform/mac/svg/custom/pointer-events-text-expected.png: Ditto.
  • platform/mac/svg/custom/pointer-events-text-expected.txt: Ditto.
  • platform/mac/svg/foreignObject/text-tref-02-b-expected.png: This now reports a valid size for the RenderSVGRoot in the <fO> subtree.
  • svg/foreignObject/text-tref-02-b-expected.txt: Ditto.

01/17/12:

23:36 Changeset [105246] by rolandsteiner@chromium.org

Unreviewed, rolling out r105244.
http://trac.webkit.org/changeset/105244
https://bugs.webkit.org/show_bug.cgi?id=76518

broke Chromium Mac (Requested by rolandsteiner on #webkit).

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

Source/WebCore:

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::checkboxOrRadioValue):

  • accessibility/AccessibilityObject.h:
  • accessibility/AccessibilityRenderObject.cpp:
  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:
  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::removeSelection):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:
  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::removeSelection):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Removed.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Removed.
22:55 Changeset [105245] by commit-queue@webkit.org

[Internals] Should be able to access corresponding Document object.
https://bugs.webkit.org/show_bug.cgi?id=76425

.:

Added exported symbols.

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • Source/autotools/symbols.filter:

Source/WebCore:

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • Allow FrameDestructionObserver to re-setting the Frame reference.
  • Make Internals a subclass of FrameDestructionObserver.

Since Internals::reset() is called for each test, we can access
the acive Frame object during the test. The frame reference will be
used by coming changes.

No new tests. Covered by existing tests.

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

(WebCore::FrameDestructionObserver::FrameDestructionObserver):
(WebCore::FrameDestructionObserver::~FrameDestructionObserver):
(WebCore::FrameDestructionObserver::observe):

  • page/FrameDestructionObserver.h:
  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore::Internals::reset):

  • testing/Internals.h:

Source/WebKit2:

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Adam Barth.

  • win/WebKit2.def: Added exporting symbols.
  • win/WebKit2CFLite.def: Added exporting symbols.
22:41 Changeset [105244] by dmazzoni@google.com

Accessibility: Chromium needs methods to scroll an object into view or to a specific location.
https://bugs.webkit.org/show_bug.cgi?id=73460

Reviewed by Chris Fleizach.

Source/WebCore:

Tests: platform/chromium/accessibility/scroll-to-global-point-main-window.html

platform/chromium/accessibility/scroll-to-global-point-nested.html
platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html
platform/chromium/accessibility/scroll-to-make-visible-iframe.html
platform/chromium/accessibility/scroll-to-make-visible-main-window.html
platform/chromium/accessibility/scroll-to-make-visible-nested.html
platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html

  • accessibility/AccessibilityObject.cpp:

(WebCore::computeBestScrollOffset):
(WebCore::AccessibilityObject::scrollToMakeVisible):
(WebCore::AccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebCore::AccessibilityObject::scrollToGlobalPoint):

  • accessibility/AccessibilityObject.h:

(WebCore::AccessibilityObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityObject::scrollTo):

  • accessibility/AccessibilityRenderObject.cpp:

(WebCore::AccessibilityRenderObject::getScrollableAreaIfScrollable):
(WebCore::AccessibilityRenderObject::scrollTo):

  • accessibility/AccessibilityRenderObject.h:
  • accessibility/AccessibilityScrollView.cpp:

(WebCore::AccessibilityScrollView::getScrollableAreaIfScrollable):
(WebCore::AccessibilityScrollView::scrollTo):

  • accessibility/AccessibilityScrollView.h:

Source/WebKit/chromium:

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp:

(WebKit::WebAccessibilityObject::scrollToMakeVisible):
(WebKit::WebAccessibilityObject::scrollToMakeVisibleWithSubFocus):
(WebKit::WebAccessibilityObject::scrollToGlobalPoint):

Tools:

  • DumpRenderTree/AccessibilityUIElement.h:
  • DumpRenderTree/chromium/AccessibilityUIElement.cpp:

(AccessibilityUIElement::AccessibilityUIElement):
(AccessibilityUIElement::scrollToMakeVisibleCallback):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocusCallback):
(AccessibilityUIElement::scrollToGlobalPointCallback):

  • DumpRenderTree/chromium/AccessibilityUIElement.h:
  • DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/mac/AccessibilityUIElementMac.mm:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

  • DumpRenderTree/win/AccessibilityUIElementWin.cpp:

(AccessibilityUIElement::scrollToMakeVisible):
(AccessibilityUIElement::scrollToMakeVisibleWithSubFocus):
(AccessibilityUIElement::scrollToGlobalPoint):

LayoutTests:

  • platform/chromium/accessibility/scroll-to-global-point-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-iframe-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-global-point-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-div-overflow.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-iframe.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-main-window.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-nested.html: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus-expected.txt: Added.
  • platform/chromium/accessibility/scroll-to-make-visible-with-subfocus.html: Added.
22:39 Changeset [105243] by mdelaney@apple.com

Fixing broken build. Missed a file in r105234.

22:06 Changeset [105242] by commit-queue@webkit.org

https://bugs.webkit.org/show_bug.cgi?id=75089
Access-Control-Request-Headers value should be lowercase

Source/WebCore:

Access-Control-Request-Headers is used when issuing a preflight request to let the server know
the HTTP headers that will be used when the actual request is made.
As per the W3C specification, Access-Control-Request-Headers value should be set in lowercase.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-17
Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::createAccessControlPreflightRequest): setting Access-Control-Request-Headers value to lowercase

LayoutTests:

Added test to verify that the Access-Control-Request-Headers value is sent in lowercase.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-17
Reviewed by Alexey Proskuryakov.

  • http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-preflight-request-header-lowercase.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-preflight-request-header-lowercase.php: Added.
21:49 Changeset [105241] by hayato@chromium.org

Clean EventContext and move phase-tweaking logic to EventDispatcher.
https://bugs.webkit.org/show_bug.cgi?id=76414

Reviewed by Dimitri Glazkov.

No tests. No change in behavior.

  • dom/EventContext.cpp:

(WebCore::EventContext::handleLocalEvents):

  • dom/EventContext.h:

(WebCore::EventContext::currentTargetSameAsTarget):

  • dom/EventDispatcher.cpp:

(WebCore::EventDispatcher::dispatchEvent):

20:28 Changeset [105240] by gyuyoung.kim@samsung.com

[EFL] Use static const insted of #define macro.
https://bugs.webkit.org/show_bug.cgi?id=76499

Reviewed by Hajime Morita.

WebKit coding style prefers const to #define. EFL port needs to use const insted of #define macro.
This patch replace global variables defined by #define with const.

  • ewk/ewk_tiled_backing_store.cpp:

(_ewk_tiled_backing_store_smart_add):
(_ewk_tiled_backing_store_zoom_set_internal):

  • ewk/ewk_tiled_backing_store.h:
  • ewk/ewk_tiled_matrix.cpp:

(ewk_tile_matrix_new):

  • ewk/ewk_view.cpp:

(_ewk_view_repaint_add):
(_ewk_view_repaints_flush):
(_ewk_view_scroll_add):
(_ewk_view_scrolls_flush):
(_ewk_view_priv_new):
(ewk_view_base_smart_set):

  • ewk/ewk_view_tiled.cpp:

(_ewk_view_tiled_smart_pre_render_start):

20:15 Changeset [105239] by noel.gordon@gmail.com

[chromium] Remove public/WebWorker.h from the gyp projects
https://bugs.webkit.org/show_bug.cgi?id=76512

Reviewed by David Levin.

public/WebWorker.h was removed in r105020, remove references from the gyp projects.

  • WebKit.gyp:
20:13 Changeset [105238] by levin@chromium.org

Need to figure out which assert is firing when worker-read-blob-async.html fails.
https://bugs.webkit.org/show_bug.cgi?id=76503

Reviewed by Adam Barth.

No new functionality exposed so no new tests.

This is just a quick and dirty way to make these asserts unique
to expose which one of them is firing on a machine that doesn't have a
good stack trace.

  • dom/ActiveDOMObject.cpp:

(WebCore::ContextDestructionObserver::ContextDestructionObserver):
(WebCore::ContextDestructionObserver::~ContextDestructionObserver):
(WebCore::ActiveDOMObject::ActiveDOMObject):
(WebCore::ActiveDOMObject::~ActiveDOMObject):

  • storage/DatabaseSync.cpp:

(WebCore::DatabaseSync::openDatabaseSync):
(WebCore::DatabaseSync::~DatabaseSync):
(WebCore::DatabaseSync::changeVersion):
(WebCore::DatabaseSync::runTransaction):

20:02 Changeset [105237] by lforschler@apple.com

Versioning.

20:01 Changeset [105236] by abarth@webkit.org

Enable tests on the mac-ews
https://bugs.webkit.org/show_bug.cgi?id=76502

Reviewed by Simon Fraser.

Apple now has five machines running the mac-ews. Lucas Forschler has
asked that we try enabling tests to see if we have enough bandwidth.

  • Scripts/webkitpy/tool/commands/earlywarningsystem.py:

(MacEWS):

20:01 Changeset [105235] by lforschler@apple.com

New tag.

19:59 Changeset [105234] by mdelaney@apple.com

On post-Lion releases, preserve the Lion behavior where WebKit explicitly calls -setGeometryFlipped on the hosting layer for applications that were linked on Lion or earlier.

19:24 Changeset [105233] by commit-queue@webkit.org

Clear 'm_size' of DrawingBuffer in the 'clear' function
https://bugs.webkit.org/show_bug.cgi?id=76239

Patch by Yongsheng Zhu <yongsheng.zhu@intel.com> on 2012-01-17
Reviewed by Kenneth Russell.

Clear the resources of DrawingBuffer but don't clear 'm_size'. This makes
's_currentResourceUsePixels' is not calculated correctly.

  • platform/graphics/gpu/DrawingBuffer.cpp:

(WebCore::DrawingBuffer::clear):

19:19 Changeset [105232] by commit-queue@webkit.org

Add a check-webkit-style exception for GDBInterface.cpp
https://bugs.webkit.org/show_bug.cgi?id=76187

Add an exception for Source/JavaScriptCore/jit/GDBInterface.cpp so
that it does not fail the style check.

Patch by Sanjoy Das <sanjoy@playingwithpointers.com> on 2012-01-17
Reviewed by Martin Robinson.

  • Scripts/webkitpy/style/checker.py: Tell the style checker to not run

readability/naming tests on
Source/JavaScriptCore/jit/GDBInterface.cpp.

  • Scripts/webkitpy/style/checker_unittest.py:

(GlobalVariablesTest.test_path_rules_specifier): Add a test for
the above exception.

19:16 Changeset [105231] by commit-queue@webkit.org

Fix getBBox for perpendicular paths
https://bugs.webkit.org/show_bug.cgi?id=76177

Patch by Philip Rogers <pdr@google.com> on 2012-01-17
Reviewed by Darin Adler.

Source/WebCore:

Test: svg/custom/getBBox-perpendicular-path.svg

  • platform/graphics/FloatRect.cpp:

(WebCore::FloatRect::unite):
(WebCore::FloatRect::uniteEvenIfEmpty):
(WebCore::FloatRect::uniteIfNonZero):

  • platform/graphics/FloatRect.h:
  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::computeContainerBoundingBoxes):

LayoutTests:

  • svg/custom/getBBox-perpendicular-path-expected.txt: Added.
  • svg/custom/getBBox-perpendicular-path.svg: Added.
19:09 Changeset [105230] by kbr@google.com

[chromium] Apply color profiles in more cases
https://bugs.webkit.org/show_bug.cgi?id=76498

Reviewed by Stephen White.

Not adding new tests, as application of the color profile is not
guaranteed for images used as textures in WebGL. Ran existing
WebGL layout tests; all pass.

  • platform/image-decoders/skia/ImageDecoderSkia.cpp:

(WebCore::ImageFrame::setStatus):

18:48 Changeset [105229] by jamesr@google.com

[chromium] Mark some compositing tests as failing with an IMAGE diff due to video playback problem

  • platform/chromium/test_expectations.txt:
18:43 Changeset [105228] by simon.fraser@apple.com

Fix media handling in compositing tests after r105219.

Reviewed by James Robinson.

Seeking seems to have issues on Chromium, and cause these tests to
timeout, so change the tests to play, then seek back to time 0.

New image results now show the first frame of the movie.

  • compositing/resources/media-testing.js:

(ensureFrameVisible):

  • platform/mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/mac/compositing/self-painting-layers-expected.png:
18:18 Changeset [105227] by weinig@apple.com

Rename quickLookPreviewItemsAtWindowLocation: to quickLookWithEvent:
<rdar://problem/10688913>

Reviewed by Anders Carlsson.

  • UIProcess/API/mac/WKView.mm:

(-[WKView quickLookWithEvent:]):

18:06 Changeset [105226] by japhet@chromium.org

Ensure we don't cancel revalidation of a CachedResource
in the middle of successful revalidation.
It's more reliable to enforce this in CachedResource than in
SubresourceLoader.
https://bugs.webkit.org/show_bug.cgi?id=75713

Reviewed by Adam Barth.

No new test, the buggy case requires a non-stubbed window.print().

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse):
(WebCore::SubresourceLoader::didFinishLoading):

  • loader/SubresourceLoader.h:
  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::CachedResource):
(WebCore::CachedResource::clearResourceToRevalidate):
(WebCore::CachedResource::switchClientsToRevalidatedResource):

  • loader/cache/CachedResource.h:
18:06 Changeset [105225] by ojan@chromium.org

Tweak results.html keyboard handling and flagging UI
https://bugs.webkit.org/show_bug.cgi?id=76331

Reviewed by Simon Fraser.

-Make it so that hitting j/k at the start selects the first/last test
instead of the second/none'th test.
-Use the unicode black flag character instead of " (flagged)"
-Make the text color of the whole selected row red. This showed
which row was selected without being to garish I think.
-Allow for having the flagged tests be space-separated instead of
newline separated.

  • fast/harness/resources/results-test.js:
  • fast/harness/results-expected.txt:
  • fast/harness/results.html:
18:03 Changeset [105224] by commit-queue@webkit.org

NULL ptr in WebCore::RenderSVGInlineText::localCaretRect
https://bugs.webkit.org/show_bug.cgi?id=75851

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-17
Reviewed by Ryosuke Niwa.

.:

Added a check for null box in localCaretRect, to match test in other
implementations. Adding a manual test because the crash is not
reproducible in DRT.

  • ManualTests/svg-modify-deleted-selection.svg: Added.

Source/WebCore:

Added a check for null box in localCaretRect, to match test in other
implementations. Adding a manual test because the crash is not reproducible
in DRT.

Test: ManualTests/svg-modify-deleted-selection.svg

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::localCaretRect):

18:00 Changeset [105223] by ggaren@apple.com

Factored out some code into a helper function.

I think this might help getting rid of omit-frame-pointer.

Reviewed by Sam Weinig.

No benchmark change.

  • runtime/StringPrototype.cpp:

(JSC::removeUsingRegExpSearch): Moved to here...
(JSC::replaceUsingRegExpSearch): ...from here.

17:56 Changeset [105222] by leviw@chromium.org

Changing pixelSnappedScrollHeight/Width to not directly access member variables. This fixes a bug now that there's a cache and dirty bit.

17:33 Changeset [105221] by lforschler@apple.com

Merged r103913 & r103915.

17:23 Changeset [105220] by lforschler@apple.com

Merge 104593.

17:18 Changeset [105219] by simon.fraser@apple.com

Reduce the number of compositing test failures
https://bugs.webkit.org/show_bug.cgi?id=76495

Reviewed by James Robinson.

General cleanup of compositing tests:

  • video tests now do a seek to guarantee that the pixel result will show a frame
  • video tests use a shared JS file (can't use media/video-test.js because it always calls dumpAsText(), which is not reversible).
  • ideo-with-invalid-source.html fixed to use a file extension so that the error event fires (bug 76494).
  • pixel results rebaselined.
  • compositing/geometry/clipped-video-controller.html:
  • compositing/geometry/video-fixed-scrolling.html:
  • compositing/geometry/video-opacity-overlay.html:
  • compositing/layers-inside-overflow-scroll.html:
  • compositing/overflow/scroll-ancestor-update.html:
  • compositing/reflections/load-video-in-reflection.html:
  • compositing/resources/media-testing.js: Added.

(ensureFrameVisible):

  • compositing/self-painting-layers.html:
  • compositing/video/video-with-invalid-source.html:
  • compositing/visibility/visibility-simple-video-layer.html:
  • platform/mac/compositing/color-matching/image-color-matching-expected.png:
  • platform/mac/compositing/geometry/video-fixed-scrolling-expected.png:
  • platform/mac/compositing/geometry/video-opacity-overlay-expected.png:
  • platform/mac/compositing/layers-inside-overflow-scroll-expected.png:
  • platform/mac/compositing/overflow/scroll-ancestor-update-expected.png:
  • platform/mac/compositing/overflow/scroll-ancestor-update-expected.txt:
  • platform/mac/compositing/plugins/composited-plugin-expected.png:
  • platform/mac/compositing/reflections/load-video-in-reflection-expected.png:
  • platform/mac/compositing/reflections/simple-composited-reflections-expected.png:
  • platform/mac/compositing/self-painting-layers-expected.png:
  • platform/mac/compositing/video/video-background-color-expected.png:
  • platform/mac/test_expectations.txt:
17:16 Changeset [105218] by commit-queue@webkit.org

https://bugs.webkit.org/show_bug.cgi?id=76245
[Mac][DRT] should allow query string for the file URL.

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

Taught DRT about file:// as a url instead of a file path.
We are now able to use a path file:///foo/bar.html?baz as a url
with which DRT opens "/foo/bar.html" with "baz" as a query string.

  • DumpRenderTree/mac/DumpRenderTree.mm:

(runTest):

17:11 Changeset [105217] by caio.oliveira@openbossa.org

Uint8ClampedArray support
https://bugs.webkit.org/show_bug.cgi?id=74455

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/PredictedType.cpp:

(JSC::predictionToString):
(JSC::predictionFromClassInfo):

  • bytecode/PredictedType.h:

(JSC::isUint8ClampedArrayPrediction):
(JSC::isActionableMutableArrayPrediction):

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::initialize):
(JSC::DFG::AbstractState::execute):

  • dfg/DFGNode.h:

(JSC::DFG::Node::shouldSpeculateUint8ClampedArray):

  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):
(JSC::DFG::Propagator::fixupNode):
(JSC::DFG::Propagator::performNodeCSE):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::checkArgumentTypes):
(JSC::DFG::clampDoubleToByte):
(JSC::DFG::compileClampIntegerToByte):
(JSC::DFG::SpeculativeJIT::compilePutByValForByteArray):
(JSC::DFG::SpeculativeJIT::compilePutByValForIntTypedArray):
(JSC::DFG::SpeculativeJIT::compileGetIndexedPropertyStorage):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • runtime/JSCell.h:
  • runtime/JSGlobalData.h:
  • wtf/Forward.h:
  • wtf/Uint8Array.h:
  • wtf/Uint8ClampedArray.h: Added.

(WTF::Uint8ClampedArray::set):
(WTF::Uint8ClampedArray::create):
(WTF::Uint8ClampedArray::Uint8ClampedArray):
(WTF::Uint8ClampedArray::subarray):

Source/WebCore:

Test: fast/js/dfg-uint8clampedarray.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • ForwardingHeaders/wtf/Uint8ClampedArray.h: Added.
  • GNUmakefile.list.am:
  • Target.pri:
  • UseJSC.cmake:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JSDOMWindowCustom.cpp:
  • bindings/js/JSUint8ClampedArrayCustom.cpp: Added.

(WebCore::JSUint8ClampedArray::indexSetter):
(WebCore::toJS):
(WebCore::JSUint8ClampedArray::set):
(WebCore::JSUint8ClampedArrayConstructor::constructJSUint8ClampedArray):

  • bindings/scripts/CodeGeneratorJS.pm:

(IsTypedArrayType):
(GenerateHeader):

  • html/canvas/Uint8ClampedArray.idl: Added.
  • page/DOMWindow.idl:

Source/WTF:

  • WTF.pro:

LayoutTests:

  • fast/canvas/webgl/array-unit-tests-expected.txt:
  • fast/canvas/webgl/array-unit-tests.html:
  • fast/dom/Window/script-tests/window-property-descriptors.js:
  • fast/dom/Window/window-properties.html:
  • fast/dom/script-tests/constructed-objects-prototypes.js:

(constructorPropertiesOnWindow):

  • fast/dom/script-tests/prototype-inheritance-2.js:

(constructorNamesForWindow):

  • fast/js/dfg-uint8clampedarray-expected.txt: Added.
  • fast/js/dfg-uint8clampedarray.html: Added.
  • fast/js/script-tests/dfg-uint8clampedarray.js: Added.

(getter1):
(setter1):
(getter2):
(setter2):
(getter3):
(setter3):
(getter4):
(setter4):
(getters.getter1.a):
(.a):
(setters.setter1.a):
(safeGetter):
(safeSetter):

  • fast/js/script-tests/global-constructors.js:
  • platform/chromium/fast/canvas/webgl/array-unit-tests-expected.txt: Copied from LayoutTests/fast/canvas/webgl/array-unit-tests-expected.txt.
  • platform/chromium/test_expectations.txt:
16:59 Changeset [105216] by lforschler@apple.com

Merged r97303.

16:54 Changeset [105215] by lforschler@apple.com

Merged r96973.

16:50 Changeset [105214] by jamesr@google.com

[chromium] Update baselines

  • platform/chromium-linux/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-mac-snowleopard/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-win/animations/cross-fade-webkit-mask-box-image-expected.png:
  • platform/chromium-win/svg/carto.net/window-expected.png:
  • platform/chromium-win/svg/carto.net/window-expected.txt:
16:41 Changeset [105213] by ojan@chromium.org

Check style on test_expectations.txt files before commit
https://bugs.webkit.org/show_bug.cgi?id=76484

Reviewed by Adam Barth.

Unlike other style rules, if you get the syntax of the test_expectations.txt
file wrong, the layout tests won't run. Also, this check is simple and only
slows down committing if you actually modify one of the test_expectations.txt files.

  • Scripts/webkitpy/tool/steps/commit.py:

(Commit._check_test_expectations):
(Commit.run):

  • Scripts/webkitpy/tool/steps/commit_unittest.py: Added.

(CommitTest):
(CommitTest.test_check_test_expectations):

16:33 Changeset [105212] by inferno@chromium.org

Crash in in WebCore::EventHandler::mouseMoved.
https://bugs.webkit.org/show_bug.cgi?id=76462

Reviewed by Ryosuke Niwa.

Source/WebCore:

handleMouseMoveEvent call in EventHandler::mouseMoved can
blow away the frame from underneath. Protect it with a frameview
refptr.

Test: fast/events/mouse-moved-remove-frame-crash.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::mouseMoved):

LayoutTests:

  • fast/events/mouse-moved-remove-frame-crash-expected.txt: Added.
  • fast/events/mouse-moved-remove-frame-crash.html: Added.
  • fast/events/resources/mouse-move.html: Added.
16:19 Changeset [105211] by lforschler@apple.com

Merge 96966.

16:18 Changeset [105210] by kerz@chromium.org

Merge 105070 - Web Inspector: styles sidebar rendering is broken
https://bugs.webkit.org/show_bug.cgi?id=76065

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection):

  • inspector/front-end/elementsPanel.css:

(.styles-section .header .subtitle):
(.styles-section .properties):

LayoutTests:

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

(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Fix dump output due to DOM changes.

TBR=apavlov@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9242032

16:16 Changeset [105209] by kerz@chromium.org

Merge 105071 - Web Inspector: timeline record bars may overlap with the records column
https://bugs.webkit.org/show_bug.cgi?id=76387

Reviewed by Yury Semikhatsky.

  • inspector/front-end/timelinePanel.css:

(#timeline-container .split-view-sidebar-left):

TBR=pfeldman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9242031

16:13 Changeset [105208] by kerz@chromium.org

Merge 104140 - WebKit adds vertical paddings and borders to the fixed width of CSS tables
https://bugs.webkit.org/show_bug.cgi?id=74955

Patch by Max Vujovic <mvujovic@adobe.com> on 2012-01-05
Reviewed by Julien Chaffraix.

Source/WebCore:

Test: fast/table/css-table-width.html

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::computeLogicalWidth):

Changed the width calculation for CSS tables to take into account horizontal
paddings and borders instead of vertical paddings and borders.

LayoutTests:

Added tests to check that the fixed width style is applied correctly to
CSS tables with respect to table paddings and borders.

  • fast/table/css-table-width-expected.txt: Added.
  • fast/table/css-table-width.html: Added.
  • fast/table/script-tests/css-table-width.js: Added.

(computeCSSTableOffsetWidth):
(computeCSSTableOffsetHeight):
(computeCSSTableProperty):

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/9220007

16:12 Changeset [105207] by alexis.menard@openbossa.org

Increase test coverage for -webkit-border-image.
https://bugs.webkit.org/show_bug.cgi?id=76473

Reviewed by Tony Chang.

Make sure we also set the width of the border in the shorthand. It will help
in the future to remove CSSBorderImageValue class without breaking this property.

  • fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
  • fast/css/getComputedStyle/getComputedStyle-border-image.html:
16:10 Changeset [105206] by ostapenko.viatcheslav@nokia.com

[Qt] Debug build fails with debug qt5
https://bugs.webkit.org/show_bug.cgi?id=76463

Reviewed by Simon Hausmann.

Add QNetworkCookie include in order to satisfy sizeof in QTypeInfo in debug builds.

Source/WebKit/qt:

  • WebCoreSupport/FrameNetworkingContextQt.cpp:

Tools:

  • QtTestBrowser/cookiejar.h:
16:06 Changeset [105205] by jamesr@google.com

[chromium] Update expectations for line-grid tests and one random svg thing

  • platform/chromium-linux/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-linux/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-mac-leopard/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/chromium-win/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/chromium-win/fast/line-grid/line-grid-positioned-expected.txt: Added.
  • platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/chromium-win/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
15:57 Changeset [105204] by jamesr@google.com

[chromium] Update expectations/baselines for cross-fade change

  • css3/images/cross-fade-overflow-position-expected.txt: Renamed from LayoutTests/platform/mac/css3/images/cross-fade-overflow-position-expected.txt.
  • platform/chromium-linux/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium-mac-snowleopard/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium-win/css3/images/cross-fade-overflow-position-expected.png:
  • platform/chromium/test_expectations.txt:
  • platform/qt/css3/images/cross-fade-overflow-position-expected.txt: Removed.
15:46 Changeset [105203] by weinig@apple.com

Add helper macro for forward declaring objective-c classes
https://bugs.webkit.org/show_bug.cgi?id=76485

Reviewed by Anders Carlsson.

Source/JavaScriptCore:

  • wtf/Compiler.h:

Add OBJC_CLASS macro which helps reduce code when forward declaring an
objective-c class in a header which can be included from both Objective-C
and non-Objective-C files.

Source/WebCore:

  • accessibility/AccessibilityObject.h:
  • bindings/js/ScriptController.h:
  • bridge/objc/objc_utility.h:
  • page/DragClient.h:
  • page/EditorClient.h:
  • platform/AutodrainedPool.h:
  • platform/ContextMenuItem.h:
  • platform/Cursor.h:
  • platform/DragData.h:
  • platform/DragImage.h:
  • platform/KURL.h:
  • platform/Pasteboard.h:
  • platform/PlatformKeyboardEvent.h:
  • platform/PlatformMenuDescription.h:
  • platform/PlatformScreen.h:
  • platform/SharedBuffer.h:
  • platform/Widget.h:
  • platform/cf/SchedulePair.h:
  • platform/graphics/BitmapImage.h:
  • platform/graphics/FontPlatformData.h:
  • platform/graphics/GraphicsContext3D.h:
  • platform/graphics/GraphicsLayer.h:
  • platform/graphics/Icon.h:
  • platform/graphics/Image.h:
  • platform/graphics/MediaPlayer.h:
  • platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
  • platform/graphics/ca/PlatformCAAnimation.h:
  • platform/graphics/ca/mac/TileCache.h:
  • platform/graphics/mac/ColorMac.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerProxy.h:
  • platform/mac/ClipboardMac.h:
  • platform/mac/LocalCurrentGraphicsContext.h:
  • platform/mac/PasteboardHelper.h:
  • platform/mac/PopupMenuMac.h:
  • platform/mac/ScrollAnimatorMac.h:
  • platform/mac/WebCoreSystemInterface.h:
  • platform/network/ResourceHandle.h:
  • platform/network/ResourceHandleClient.h:
  • platform/network/ResourceHandleInternal.h:
  • platform/network/cf/AuthenticationChallenge.h:
  • platform/network/cf/ResourceError.h:
  • platform/network/cf/ResourceRequest.h:
  • platform/network/cf/ResourceResponse.h:
  • rendering/RenderThemeMac.h:

Deploy OBJC_CLASS for a little code reduction.

Source/WebKit2:

  • WebProcess/WebCoreSupport/WebDragClient.h:

Deploy OBJC_CLASS for a little code reduction.

  • config.h:

Remove duplicate copy of OBJC_CLASS.

15:31 Changeset [105202] by jamesr@google.com

[chromium] Fix duplicate expectations for canvas tests on mac

  • platform/chromium/test_expectations.txt:
15:26 Changeset [105201] by enrica@apple.com

REGRESSION (r101413): Correction panel overlaps misspelled text.
https://bugs.webkit.org/show_bug.cgi?id=74589
<rdar://problem/10585115>

When converting the rectangle from the root view, we need
to take into account the height of the rectangle.

Reviewed by Anders Carlsson.

  • WebView/WebView.mm:

(-[WebView _convertRectFromRootView:]):

15:25 Changeset [105200] by commit-queue@webkit.org

Convert some fast/regions pixel tests to reftests
https://bugs.webkit.org/show_bug.cgi?id=74133

Patch by Jacob Goldstein <jacobg@adobe.com> on 2012-01-17
Reviewed by Tony Chang.

  • fast/regions/webkit-flow-inlines-dynamic-expected.html: Added.
  • fast/regions/webkit-flow-inlines-dynamic.html:
  • platform/efl/fast/regions/webkit-flow-inlines-dynamic-expected.png: Removed.
  • platform/efl/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Removed.
  • platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.png: Removed.
  • platform/mac/fast/regions/webkit-flow-inlines-dynamic-expected.txt: Removed.
15:10 Changeset [105199] by dpranke@chromium.org

webkitpy: fix json import on linux
https://bugs.webkit.org/show_bug.cgi?id=76481

Reviewed by Adam Barth.

For some reason, the version of simplejson autoinstalled on my linux
box seems to be broken. We should really only be using
simplejson if json isn't available anyway, so this change looks
for json first.

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator_unittest.py:

(JSONGeneratorTest.test_test_timings_trie):

15:04 Changeset [105198] by leviw@chromium.org

Rebaselining expectations for new float/line measuring changes

15:02 Changeset [105197] by leviw@chromium.org

Stop using pixel snapped values for x values when laying out floats. This is necessary when there are two floats on a line both at 50% width. Switching to pixel snapped values for measuring the available width when laying out bidi runs. Switching improper truncating in shrinkAvailableWidthForNewFloatIfNeeded to pixel snapped values.

14:36 Changeset [105196] by fpizlo@apple.com

Merge 105107.

Source/JavaScriptCore:

2012-01-15 Filip Pizlo <fpizlo@apple.com>


DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>


Reviewed by Geoff Garen.


Added the ability to cache JS getter calls and custom getter calls in the DFG.
Most of this is pretty mundane, since the old JIT supported this functionality
as well. But a couple interesting things had to happen:


  • There are now two variants of GetById: GetById, which works as before, and GetByIdFlush, which flushes registers prior to doing the GetById. Only GetByIdFlush can be used for caching getters. We detect which GetById style to use by looking at the inline caches of the old JIT.


  • Exception handling for getter calls planted in stubs uses a separate lookup handler routine, which uses the CodeOrigin stored in the StructureStubInfo.


This is a 40% speed-up in the Dromaeo DOM Traversal average. It removes all of
the DFG regressions we saw in Dromaeo. This is neutral on SunSpider, V8, and
Kraken.


  • bytecode/StructureStubInfo.h:
  • dfg/DFGAbstractState.cpp: (JSC::DFG::AbstractState::execute):
  • dfg/DFGAssemblyHelpers.h: (JSC::DFG::AssemblyHelpers::emitExceptionCheck):
  • dfg/DFGByteCodeParser.cpp: (JSC::DFG::ByteCodeParser::willNeedFlush): (JSC::DFG::ByteCodeParser::parseBlock):
  • dfg/DFGCCallHelpers.h: (JSC::DFG::CCallHelpers::setupResults):
  • dfg/DFGJITCompiler.cpp: (JSC::DFG::JITCompiler::link):
  • dfg/DFGJITCompiler.h: (JSC::DFG::PropertyAccessRecord::PropertyAccessRecord): (JSC::DFG::JITCompiler::addExceptionCheck):
  • dfg/DFGNode.h: (JSC::DFG::Node::hasIdentifier): (JSC::DFG::Node::hasHeapPrediction):
  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPropagator.cpp: (JSC::DFG::Propagator::propagateNodePredictions):
  • dfg/DFGRepatch.cpp: (JSC::DFG::tryCacheGetByID): (JSC::DFG::tryBuildGetByIDList):
  • dfg/DFGSpeculativeJIT.h: (JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):
  • dfg/DFGSpeculativeJIT32_64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::compile):
  • dfg/DFGSpeculativeJIT64.cpp: (JSC::DFG::SpeculativeJIT::cachedGetById): (JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

2012-01-16 Filip Pizlo <fpizlo@apple.com>


DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>


Reviewed by Geoff Garen.


  • fast/js/dfg-custom-getter-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined.html: Added.
  • fast/js/dfg-custom-getter-throw.html: Added.
  • fast/js/dfg-custom-getter.html: Added.
  • fast/js/dfg-getter-expected.txt: Added.
  • fast/js/dfg-getter-throw-expected.txt: Added.
  • fast/js/dfg-getter-throw.html: Added.
  • fast/js/dfg-getter.html: Added.
  • fast/js/script-tests/dfg-custom-getter-throw-inlined.js: Added. (foo): (baz): (bar):
  • fast/js/script-tests/dfg-custom-getter-throw.js: Added. (foo): (bar):
  • fast/js/script-tests/dfg-custom-getter.js: Added. (foo):
  • fast/js/script-tests/dfg-getter-throw.js: Added. (foo): (bar):
  • fast/js/script-tests/dfg-getter.js: Added. (foo):
14:31 Changeset [105195] by dpranke@chromium.org

Fix failures in test-webkitpy caused by r105177.

Unreviewed, build fix.

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

(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):

14:14 Changeset [105194] by ossy@webkit.org

[Qt] Unreviewed gardening after r105172.

  • platform/qt/css3/images/cross-fade-overflow-position-expected.png:
  • platform/qt/css3/images/cross-fade-overflow-position-expected.txt:
14:09 Changeset [105193] by tony@chromium.org

Fix compilation after r105165.

The merge was bad because there have been refactoring changes that weren't
included on the branch.
Review URL: https://chromiumcodereview.appspot.com/9243024

13:44 Changeset [105192] by mrowe@apple.com

Merge r99649.

13:43 Changeset [105191] by commit-queue@webkit.org

Add some canvas tests to test_expectations to prepare for changes to use sw-rasterized paths in skia-gpu
https://bugs.webkit.org/show_bug.cgi?id=76469

Patch by Brian Salomon <bsalomon@google.com> on 2012-01-17
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
13:39 Changeset [105190] by eae@chromium.org

Windows build fixes for webkit, with this patch the apple windows port builds

13:37 Changeset [105189] by mrowe@apple.com

Merge r99982.

13:31 Changeset [105188] by lforschler@apple.com

Merged r91148.

13:04 Changeset [105187] by mrowe@apple.com

Merge r94107.

12:57 Changeset [105186] by kling@webkit.org

SpaceSplitString: Share equivalent string piece vectors.
<http://webkit.org/b/76458>

Reviewed by Antti Koivisto.

Make SpaceSplitStringData ref-counted and cache them in a hashmap to reduce memory
usage and avoid redundant string splitting work. This reduces memory consumption
by 618 kB (on 64-bit) when viewing the full HTML5 spec at <http://whatwg.org/c>

  • dom/SpaceSplitString.h:

Add the source string to SpaceSplitStringData so we have a key for uncaching
in the destructor. Also bumped the vector's inline size from 2 to 4.

  • dom/SpaceSplitString.cpp:

(WebCore::sharedDataMap):
(WebCore::SpaceSplitStringData::create):
(WebCore::SpaceSplitStringData::createUnique):
(WebCore::SpaceSplitStringData::SpaceSplitStringData):
(WebCore::SpaceSplitString::SpaceSplitString):
(WebCore::SpaceSplitString::set):
(WebCore::SpaceSplitStringData::createVector):

Added create helpers for SpaceSplitStringData. Moved case folding from
createVector() to create(AtomicString). Added a hash map for caching
AtomicString -> SpaceSplitStringData.

(WebCore::SpaceSplitStringData::~SpaceSplitStringData):

Remove the SpaceSplitStringData from the sharedDataMap().

  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitString::ensureUnique):

Added, detaches from the shared SpaceSplitStringData if necessary.

(WebCore::SpaceSplitStringData::add):
(WebCore::SpaceSplitStringData::remove):

Assert that add() and remove() are only used on unique SpaceSplitStringData.

(WebCore::SpaceSplitString::add):
(WebCore::SpaceSplitString::remove):

Call ensureUnique() to potentially detach from a shared SpaceSplitStringData
before making modifications.

  • dom/SpaceSplitString.cpp:

(WebCore::SpaceSplitStringData::containsAll):

Added gratuitous fast path for containsAll(*this).

12:44 Changeset [105185] by mrowe@apple.com

Merge r100408.

12:32 Changeset [105184] by dpranke@chromium.org

webkitpy: make PortFactory.get() be fully data-driven
https://bugs.webkit.org/show_bug.cgi?id=76360

Reviewed by Eric Seidel.

Refactor PortFactory.get() to be fully data-driven.

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

(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):

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

(FactoryTest.assert_port):

12:27 Changeset [105183] by dpranke@chromium.org

webkitpy: add determine_full_port_name(), clean up port.init()
https://bugs.webkit.org/show_bug.cgi?id=76357

Reviewed by Adam Barth.

Each Port class is now required to implement a 'port_name' field
that will match the start of all ports constructed by this class and
a 'determine_full_port_name' field that will make the port
fully-qualified.

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

(ApplePort.init):

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

(Port):
(Port.determine_port_name):
(Port.init):

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

(ChromiumPort.for):
(ChromiumPort.init):
(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.path_from_chromium_base):

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

(ChromiumGpuLinuxPort):
(ChromiumGpuLinuxPort.init):
(ChromiumGpuMacPort):
(ChromiumGpuMacPort.init):
(ChromiumGpuWinPort):
(ChromiumGpuWinPort.init):

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

(ChromiumLinuxPort):
(ChromiumLinuxPort.determine_port_name):
(ChromiumLinuxPort.init):

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

(ChromiumMacPort):
(ChromiumMacPort.determine_port_name):
(ChromiumMacPort.init):

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

(ChromiumWinPort):
(ChromiumWinPort.determine_port_name):
(ChromiumWinPort.init):

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

(DryRunPort):
(DryRunPort.determine_port_name):
(DryRunPort.init):

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

(EflPort):

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

(PortFactory):
(PortFactory._default_port):
(PortFactory.get):
(PortFactory.get.in):

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

(FactoryTest.assert_port):

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

(GoogleChromeLinux32Port):
(GoogleChromeLinux32Port.determine_port_name):
(GoogleChromeLinux64Port):
(GoogleChromeLinux64Port.determine_port_name):
(GoogleChromeMacPort):
(GoogleChromeMacPort.determine_port_name):
(GoogleChromeWinPort):
(GoogleChromeWinPort.determine_port_name):

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

(GtkPort):

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

(MacPort):
(MacPort.determine_port_name):
(MacPort.init):

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

(test_versions):

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

(MockDRTPort):
(MockDRTPort.determine_port_name):
(MockDRTPort.init):
(MockDRT):
(MockDRT.determine_port_name):

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

(PortTestCase.make_port):

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

(QtPort):
(QtPort.determine_port_name):
(QtPort.init):

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

(TestPort):
(TestPort.determine_port_name):
(TestPort.init):

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

(WebKitPort.init):

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

(WinPort):
(WinPort.determine_port_name):

  • Scripts/webkitpy/tool/servers/rebaselineserver.py:

(get_test_baselines.AllPlatformsPort.init):

  • Scripts/webkitpy/tool/servers/rebaselineserver_unittest.py:

(get_test_config.TestMacPort):
(get_test_config):

12:14 Changeset [105182] by mrowe@apple.com

Merge r101543.

11:59 Changeset [105181] by mrowe@apple.com

Merge r103118.

11:37 Changeset [105180] by mrowe@apple.com

Merge r101808.

11:25 Changeset [105179] by mrowe@apple.com

Merge r104669.

11:25 Changeset [105178] by mrowe@apple.com

Merge r104619.

11:25 Changeset [105177] by dpranke@chromium.org

webkitpy: clean up port code in preparation for static port names
https://bugs.webkit.org/show_bug.cgi?id=76356

Reviewed by Adam Barth.

To fix bug 76215 and be able to determine appropriate port names
in webkitpy without actually constructing Port objects, we need
to shuffle some logic in the chromium ports to be able to figure
out whether we built DRT in 32 or 64-bit mode.

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

(ChromiumPort):
(ChromiumPort._chromium_base_dir):
(ChromiumPort.init):
(ChromiumPort.path_from_chromium_base):

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

(ChromiumLinuxPort):
(ChromiumLinuxPort._determine_driver_path_statically):
(ChromiumLinuxPort._static_build_path):
(ChromiumLinuxPort._determine_architecture):
(ChromiumLinuxPort.init):
(ChromiumLinuxPort._build_path):

11:16 Changeset [105176] by hyatt@apple.com

Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=76197

Implementation of baseline grid alignment. This patch implements line grid tracking in the layout state,
and also implements the snapping of lines to baselines. It works with normal flow, positioning and floats and
with pagination, as long as the grid is inside the pagination context and not outside.

Reviewed by Simon Fraser.

Added a bunch of new tests in fast/line-grid.

  • WebCore.xcodeproj/project.pbxproj:
  • rendering/InlineFlowBox.h:

(WebCore::InlineFlowBox::setHasTextChildren):

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::propagateLineGridInfo):
(WebCore::LayoutState::establishLineGrid):

  • rendering/LayoutState.h:

(WebCore::LayoutState::LayoutState):
(WebCore::LayoutState::pageLogicalHeight):
(WebCore::LayoutState::currentLineGrid):
(WebCore::LayoutState::currentLineGridOffset):
(WebCore::LayoutState::layoutOffset):
(WebCore::LayoutState::needsBlockDirectionLocationSetBeforeLayout):

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutPositionedObjects):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::positionNewFloats):
(WebCore::RenderBlock::pageLogicalTopForOffset):
(WebCore::RenderBlock::adjustLinePositionForPagination):

  • rendering/RenderBlock.h:

(WebCore::RenderBlock::lineGridBox):
(WebCore::RenderBlock::setLineGridBox):
(WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutInlineChildren):
(WebCore::RenderBlock::layoutLineGridBox):

  • rendering/RenderFlowThread.cpp:

(WebCore::RenderFlowThread::regionLogicalTopForLine):

  • rendering/RenderFlowThread.h:
  • rendering/RenderView.h:

(WebCore::RenderView::pushLayoutState):

  • rendering/RootInlineBox.cpp:

(WebCore::RootInlineBox::alignBoxesInBlockDirection):
(WebCore::RootInlineBox::lineGridSnapAdjustment):

  • rendering/RootInlineBox.h:

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

Add tests for baseline line grid alignment.

Reviewed by Simon Fraser.

  • fast/line-grid/line-grid-floating.html: Added.
  • fast/line-grid/line-grid-inside-columns.html: Added.
  • fast/line-grid/line-grid-into-floats.html: Added.
  • fast/line-grid/line-grid-positioned.html: Added.
  • platform/mac/fast/line-grid: Added.
  • platform/mac/fast/line-grid/line-grid-floating-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-inside-columns-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-into-floats-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/mac/fast/line-grid/line-grid-positioned-expected.png: Added.
  • platform/mac/fast/line-grid/line-grid-positioned-expected.txt: Added.
11:13 Changeset [105175] by mrowe@apple.com

Merge r104727.

11:10 Changeset [105174] by leviw@chromium.org

Fixing truncation vs pixel snapping when drawing broken images.

11:09 Changeset [105173] by vsevik@chromium.org

Merge 104887 - Web Inspector: [Chomium] Resources loaded with 304 status code have receiving time of 15000 days in network panel.
https://bugs.webkit.org/show_bug.cgi?id=76176

Reviewed by Nate Chapin.

No new tests. Can't trigger this with inspector tests. Will add one when the Resource Timing API is in.

  • loader/SubresourceLoader.cpp:

(WebCore::SubresourceLoader::didReceiveResponse): Use monotonic time.

TBR=simonjam@chromium.org
BUG=110154
Review URL: https://chromiumcodereview.appspot.com/9243015

11:02 Changeset [105172] by timothy_horton@apple.com

-webkit-cross-fade doesn't respect background-size
https://bugs.webkit.org/show_bug.cgi?id=74902
<rdar://problem/10605289>

Reviewed by Simon Fraser.

CrossfadeGeneratedImage should report its intrinsic size, instead of
improperly conforming to the size of its container.

Test: css3/images/cross-fade-background-size.html

  • platform/graphics/CrossfadeGeneratedImage.h:

(WebCore::CrossfadeGeneratedImage::setContainerSize):
(WebCore::CrossfadeGeneratedImage::usesContainerSize):
(WebCore::CrossfadeGeneratedImage::hasRelativeWidth):
(WebCore::CrossfadeGeneratedImage::hasRelativeHeight):
(WebCore::CrossfadeGeneratedImage::size):

Add a test (cross-fade-background-size.html) which ensures that the
background-size CSS property interacts reasonably with -webkit-cross-fade.

Modify cross-fade-overflow-position to hit both the tiled and non-tiled codepaths.

  • css3/images/cross-fade-background-size.html: Added.
  • css3/images/cross-fade-overflow-position.html:
  • css3/images/resources/stripes-large.png: Added.
  • css3/images/resources/stripes-small.png: Added.
  • platform/mac/css3/images/cross-fade-background-size-expected.png: Added.
  • platform/mac/css3/images/cross-fade-background-size-expected.txt: Added.
  • platform/mac/css3/images/cross-fade-overflow-position-expected.png:
  • platform/mac/css3/images/cross-fade-overflow-position-expected.txt:
11:00 Changeset [105171] by vsevik@chromium.org

Web Inspector: Refactor JavaScriptOutlineDialog: extract FilteredItemSelectionDialog and reuse DialogDelegate.
https://bugs.webkit.org/show_bug.cgi?id=76455

Reviewed by Yury Semikhatsky.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Dialog.js:

(WebInspector.Dialog):
(WebInspector.Dialog.prototype._hide):

  • inspector/front-end/FilteredItemSelectionDialog.js: Added.

(WebInspector.FilteredItemSelectionDialog):
(WebInspector.FilteredItemSelectionDialog.prototype.position):
(WebInspector.FilteredItemSelectionDialog.prototype.focus):
(WebInspector.FilteredItemSelectionDialog.prototype.willHide):
(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.FilteredItemSelectionDialog.prototype.get _itemsLoaded):
(WebInspector.FilteredItemSelectionDialog.prototype._createItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._hideItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementVisible):
(WebInspector.FilteredItemSelectionDialog.prototype._showItemElement):
(WebInspector.FilteredItemSelectionDialog.prototype._checkItemAt):
(WebInspector.FilteredItemSelectionDialog.prototype._createSearchRegExp):
(WebInspector.FilteredItemSelectionDialog.prototype._filterItems):
(WebInspector.FilteredItemSelectionDialog.prototype._onKeyDown):
(WebInspector.FilteredItemSelectionDialog.prototype._scheduleFilter):
(WebInspector.FilteredItemSelectionDialog.prototype._updateSelection):
(WebInspector.FilteredItemSelectionDialog.prototype._onMouseMove):
(WebInspector.FilteredItemSelectionDialog.prototype._onScroll):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItems):
(WebInspector.FilteredItemSelectionDialog.prototype._clearHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight.changes.this._elementHighlightChanges.get if):
(WebInspector.FilteredItemSelectionDialog.prototype._clearElementHighlight):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem.get var):
(WebInspector.FilteredItemSelectionDialog.prototype._highlightItem):
(WebInspector.FilteredItemSelectionDialog.prototype._itemElementInViewport):
(WebInspector.SelectionDialogContentProvider):
(WebInspector.SelectionDialogContentProvider.prototype.itemTitleAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemKeyAt):
(WebInspector.SelectionDialogContentProvider.prototype.itemsCount):
(WebInspector.SelectionDialogContentProvider.prototype.requestItems):
(WebInspector.SelectionDialogContentProvider.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog):
(WebInspector.JavaScriptOutlineDialog.didAddChunk):
(WebInspector.JavaScriptOutlineDialog.install):
(WebInspector.JavaScriptOutlineDialog._show):
(WebInspector.JavaScriptOutlineDialog.createShortcut):
(WebInspector.JavaScriptOutlineDialog.prototype.itemTitleAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemKeyAt):
(WebInspector.JavaScriptOutlineDialog.prototype.itemsCount):
(WebInspector.JavaScriptOutlineDialog.prototype.requestItems):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):
(WebInspector.JavaScriptOutlineDialog.prototype._appendItemElements):

  • inspector/front-end/JavaScriptOutlineDialog.js: Removed.
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/filteredItemSelectionDialog.css: Renamed from Source/WebCore/inspector/front-end/javaScriptOutlineDialog.css.

(.js-outline-dialog > input):
(.js-outline-dialog > div.progress):
(.js-outline-dialog > div.container):
(.js-outline-dialog > .container > div.item):
(.js-outline-dialog > .container > div.item.selected):
(.js-outline-dialog > .container > div.item > span.highlight):

  • inspector/front-end/inspector.html:
10:57 Changeset [105170] by lforschler@apple.com

Merge fix for 10516690.

10:55 Changeset [105169] by commit-queue@webkit.org

Do not remove pixel failures for ref tests.
https://bugs.webkit.org/show_bug.cgi?id=76243

Patch by Hao Zheng <zhenghao@chromium.org> on 2012-01-17
Reviewed by Tony Chang.

'NRWT --no-pixel-tests' complains when reftests are expected to
be image mismatch.

  • Scripts/webkitpy/layout_tests/controllers/manager.py:

(Manager._update_summary_with_result):

  • Scripts/webkitpy/layout_tests/models/test_failures.py:

(is_reftest_failure):
(determine_result_type):

10:34 WebKit Team edited by dbates@webkit.org
(diff)
10:28 Changeset [105168] by abarth@webkit.org

Import some NodeIterator tests from mozilla
https://bugs.webkit.org/show_bug.cgi?id=76442

Reviewed by Daniel Bates.

These tests are imported from mozilla-central. I tried to make the
minimal changes when importing them rather than rewire them into
script-tests. They appear to have uncovered a bug, which I will
investigate in a followup patch.

  • traversal/moz-bug559526-expected.txt: Added.
  • traversal/moz-bug559526.html: Added.
  • traversal/moz-bug590771-expected.txt: Added.
  • traversal/moz-bug590771.html: Added.
  • traversal/moz-mutations-3-expected.txt: Added.
  • traversal/moz-mutations-3.html: Added.
10:26 Changeset [105167] by simon.fraser@apple.com

<rdar://problem/10703228> ASSERTION FAILED: Uncaught exception - Cannot lock focus on image <NSImage 0x1206572a0 Size={0, 0} Reps=( )>, because it is size zero loading techcrunch.com

Reviewed by Anders Carlsson.

Avoid trying to create image snapshots for zero-sized plugins, because
it causes -[NSView lockFocus] to throw an exception.

  • Plugins/WebBaseNetscapePluginView.mm:

(-[WebBaseNetscapePluginView cacheSnapshot]):

10:11 Changeset [105166] by commit-queue@webkit.org

Move tests out of WebCore/manual-tests to toplevel ManualTests.
It looks like the manual-tests folder wasn't noticed by git (or me :).

Move some SVG manual tests from deprecated WebCore/manual-tests to toplevel ManualTests
https://bugs.webkit.org/show_bug.cgi?id=76437

Patch by Raul Hudea <rhudea@adobe.com> on 2012-01-17
Reviewed by Daniel Bates.

  • ManualTests/svg-animation-css-transform.html: Renamed from Source/WebCore/manual-tests/svg-animation-css-transform.html.
  • ManualTests/svg-css-animate-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-animate-compound.html.
  • ManualTests/svg-css-transition-compound.html: Renamed from Source/WebCore/manual-tests/svg-css-transition-compound.html.
09:44 Changeset [105165] by tony@chromium.org

Merge 104645 - Need to handle absolutely positioned elements inside flexboxes
https://bugs.webkit.org/show_bug.cgi?id=70793

Reviewed by David Hyatt.

Source/WebCore:

Tests: css3/flexbox/insert-text-crash.html

css3/flexbox/position-absolute-child.html

  • rendering/RenderFlexibleBox.cpp:

(WebCore::RenderFlexibleBox::computePreferredMainAxisExtent): Skip the size of positioned elements.
(WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm): Add placeholders for positioned elements.
(WebCore::RenderFlexibleBox::prepareChildForPositionedLayout): Positions the layer for the positioned child.
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Handle positioned elements.
(WebCore::RenderFlexibleBox::layoutColumnReverse): Adjust the main axis offset of the layer for positioned elements.

  • rendering/RenderFlexibleBox.h:

LayoutTests:

  • css3/flexbox/insert-text-crash-expected.txt: Added.
  • css3/flexbox/insert-text-crash.html: Added.
  • css3/flexbox/position-absolute-child-expected.txt: Added.
  • css3/flexbox/position-absolute-child.html: Added.

TBR=tony@chromium.org

09:35 Changeset [105164] by apavlov@chromium.org

[Chromium] Unreviewed, avoid webkit_tests aborts due to clashing SVG test expectations.

  • platform/chromium/test_expectations.txt:
09:06 Changeset [105163] by ossy@webkit.org

[Qt][WK2] Unskip now passing tests.

Patch by Ádám Kallai <Kallai.Adam@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

08:11 Changeset [105162] by ossy@webkit.org

REGRESSION(r81225): ORWT should ignore reftests
https://bugs.webkit.org/show_bug.cgi?id=67936

Patch by Balazs Ankes <Ankes.Balazs@stud.u-szeged.hu> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • Scripts/old-run-webkit-tests:

(isUsedInReftest): $filename should be the first parameter
(findTestsToRun): run test if it isn't reftest

08:03 Changeset [105161] by commit-queue@webkit.org

[Gtk] Input text field not repainted when value is changed
https://bugs.webkit.org/show_bug.cgi?id=76279

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-17
Reviewed by Gustavo Noronha Silva.

Force pending relayouts before freezing the dirty region in a temporary.
This prevents the following code from throwing the dirty updates away
after the original paint is finished.

  • WebCoreSupport/ChromeClientGtk.cpp:

(WebKit::paintWebView): Remove the relayout.
(WebKit::ChromeClient::paint): Move the relayout here, before the
dirty region is frozen.

07:45 Changeset [105160] by commit-queue@webkit.org

Web Inspector: CodeGeneratorInspector.py: start using typedefs
https://bugs.webkit.org/show_bug.cgi?id=76382

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-17
Reviewed by Yury Semikhatsky.

Generator is patched accordingly.

  • inspector/CodeGeneratorInspector.py:

(EnumConstants.get_enum_constant_code):
(TypeBuilderPass):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_):
(TypeBindings.create_type_declaration_.PlainString):
(TypeBindings.create_type_declaration_.PlainString.get_code_generator):
(TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.PlainString.get_in_c_type_text):
(TypeBindings.create_type_declaration_.TypedefString):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.generate_type_builder.String):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.register_use):
(TypeBindings.create_type_declaration_.TypedefString.get_code_generator.CodeGenerator.get_generate_pass_id):
(TypeBindings.create_type_declaration_.TypedefString.reduce_to_raw_type):
(TypeBindings.create_type_declaration_.TypedefString.get_setter_value_expression_pattern):
(TypeBindings.create_type_declaration_.TypedefString.get_in_c_type_text):
(get_generate_pass_id):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.get_generate_pass_id):
(Generator.process_types.create_type_builder_caller):
(Generator.process_types.create_type_builder_caller.call_type_builder):
(Generator.process_types):

07:42 Changeset [105159] by kov@webkit.org

Unreviewed. Fix python unit test I broke with r105142

  • Scripts/webkitpy/common/config/ports_unittest.py:

(WebKitPortTest.test_gtk_port):

07:37 Changeset [105158] by commit-queue@webkit.org

[GTK] [WK2] WebKitPrivate should include the entire WebKit2 C API
https://bugs.webkit.org/show_bug.cgi?id=76345

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-17
Reviewed by Gustavo Noronha Silva.

Isolate all of the WebKit2 C API includes into WebKitPrivate.h and no longer
include anything other than WebKit2.h for the C API.

  • UIProcess/API/gtk/WebKitBackForwardList.cpp: Use WebKitPrivate.h now.
  • UIProcess/API/gtk/WebKitBackForwardListItem.cpp: Ditto.
  • UIProcess/API/gtk/WebKitPrivate.h: Add WebKit2.h, WKAPICast.h and WKRetainPtr.h includes.
  • UIProcess/API/gtk/WebKitSettings.cpp: Use WebKitPrivate.h.
  • UIProcess/API/gtk/WebKitUIClient.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebContext.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebView.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWebViewBase.cpp: Ditto.
  • UIProcess/API/gtk/WebKitWindowProperties.cpp: Ditto.
07:37 Changeset [105157] by yurys@chromium.org

Web Inspector: provide basic information about DOM character data size
https://bugs.webkit.org/show_bug.cgi?id=76059

Memory agent allows to estimate size of DOM character data and size of WebCore
strings held by JavaScript objects.

Reviewed by Pavel Feldman.

  • bindings/js/ScriptProfiler.h:

(WebCore::ScriptProfiler::visitExternalJSStrings):

  • bindings/v8/ScriptProfiler.cpp:

(WebCore::ScriptProfiler::visitExternalJSStrings):

  • bindings/v8/ScriptProfiler.h:
  • bindings/v8/V8Binding.cpp:

(WebCore::WebCoreStringResource::visitStrings):
(WebCore::V8BindingPerIsolateData::visitJSExternalStrings):

  • bindings/v8/V8Binding.h:
  • inspector/DOMWrapperVisitor.h:
  • inspector/Inspector.json:
  • inspector/InspectorMemoryAgent.cpp:

(WebCore::CharacterDataStatistics::DOMTreeStatistics::DOMTreeStatistics):
(WebCore::CharacterDataStatistics::DOMTreeStatistics::collectNodeStatistics):
(WebCore::CharacterDataStatistics::CounterVisitor::CounterVisitor):
(WebCore::CharacterDataStatistics::CounterVisitor::domGroups):
(WebCore::CharacterDataStatistics::CounterVisitor::strings):
(WebCore::CharacterDataStatistics::CounterVisitor::visitNode):
(WebCore::CharacterDataStatistics::CounterVisitor::visitJSExternalString):
(WebCore::InspectorMemoryAgent::getDOMNodeCount):

  • inspector/InspectorMemoryAgent.h:
07:34 Changeset [105156] by vsevik@chromium.org

Web Inspector: Dialogs style and DialogDelegate interface fixes.
https://bugs.webkit.org/show_bug.cgi?id=76449

Reviewed by Pavel Feldman.

  • inspector/front-end/Dialog.js:

(WebInspector.Dialog):
(WebInspector.Dialog.currentInstance):
(WebInspector.Dialog.show):
(WebInspector.Dialog.hide):
(WebInspector.Dialog.prototype._hide):
(WebInspector.Dialog.prototype._onGlassPaneFocus):
(WebInspector.Dialog.prototype._onFocus):
(WebInspector.Dialog.prototype._position):
(WebInspector.Dialog.prototype._onKeyDown):
(WebInspector.DialogDelegate.prototype.wasShown):
(WebInspector.DialogDelegate.prototype.position):
(WebInspector.DialogDelegate.prototype.focus):
(WebInspector.DialogDelegate.prototype.onEnter):
(WebInspector.DialogDelegate.prototype.willHide):

  • inspector/front-end/GoToLineDialog.js:

(WebInspector.GoToLineDialog):
(WebInspector.GoToLineDialog.prototype.focus):
(WebInspector.GoToLineDialog.prototype._onGoClick):
(WebInspector.GoToLineDialog.prototype._applyLineNumber):
(WebInspector.GoToLineDialog.prototype.onEnter):

  • inspector/front-end/dialog.css:

(.dialog):

07:30 Changeset [105155] by vestbo@webkit.org

[Qt] Don't set the 'primary' flag when mocking touch-points in MiniBrowser

Qt 5 no longer has that flag.

Reviewed by Simon Hausmann.

07:29 Changeset [105154] by yurys@chromium.org

Web Inspector: ConsoleMessage.cpp and InspectorResourceAgent.cpp doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76403

A couple of protocol fixes.

Reviewed by Pavel Feldman.

  • inspector/ConsoleMessage.cpp: return 'log' in case some unsupported value is passed.

We cannot omit that return statement as GCC would complain on missing return statement
despite all enum values are listed.
(WebCore::messageTypeValue):

  • inspector/Inspector-0.1.json: fixed v0.1 protocol definition.
  • inspector/Inspector.json: made CachedResource.response field optional.
07:03 Changeset [105153] by loislo@chromium.org

[Chromium] Web Inspector: remove "Document DOM tree" class and "Detached DOM tree" from the Summary view.
https://bugs.webkit.org/show_bug.cgi?id=76450

Reviewed by Yury Semikhatsky.

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype._buildAggregates):

07:02 Changeset [105152] by kubo@profusion.mobi

[EFL] Emit "resource,request,willsend" from ewk_view.
https://bugs.webkit.org/show_bug.cgi?id=76292

Reviewed by Andreas Kling.

Make ewk_view dispatch the "resource,request,willsend" signal as well,
so that it is possible to know whether the request is for the main
frame itself or for anything else.

  • WebCoreSupport/FrameLoaderClientEfl.cpp:

(WebCore::FrameLoaderClientEfl::dispatchWillSendRequest):

  • ewk/ewk_view.h:
06:35 Changeset [105151] by ossy@webkit.org

[Qt][WK2] Crash in fast/text/regional-indicator-symobls.html
https://bugs.webkit.org/show_bug.cgi?id=69419

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0/Skipped: Removing it from skipped list as it is working now.
06:34 Changeset [105150] by ossy@webkit.org

[Qt] fast/canvas/2d.text.draw.fill.maxWidth.gradient.html fails with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=74785

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Upstream bug in Qt 5 is fixed, so we can unskip the test now.

  • platform/qt-5.0/Skipped:
06:31 Changeset [105149] by ossy@webkit.org

[Qt] editing/selection/regional-indicators.html fails
https://bugs.webkit.org/show_bug.cgi?id=66500

Patch by Rafael Brandao <rafael.lobo@openbossa.org> on 2012-01-17
Reviewed by Csaba Osztrogonác.

  • platform/qt-5.0/Skipped: This test is not failing anymore,

removing it from skipped list.

06:28 Changeset [105148] by ossy@webkit.org

[Qt] fast/canvas/canvas-largedraws.html crashes with newer Qt5
https://bugs.webkit.org/show_bug.cgi?id=75167

Patch by Simon Hausmann <simon.hausmann@nokia.com> on 2012-01-17
Reviewed by Csaba Osztrogonác.

Bug is fixed upstream, so it should be safe to unskip it now.

  • platform/qt-5.0/Skipped:
05:22 Changeset [105147] by yurys@chromium.org

2012-01-17 Yury Semikhatsky <yurys@chromium.org>

Unreviewed. Update Chromium dependency 117616:117882

  • DEPS:
05:17 Changeset [105146] by commit-queue@webkit.org

[Qt] Implement HTTP authentication QML API
https://bugs.webkit.org/show_bug.cgi?id=75535

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-17
Reviewed by Kenneth Rohde Christiansen.

This patch implements the QML API for handling HTTP authentication.
The implementation uses a syncronous message between the WebProcess
and the UIProcess which is called when the authenticationRequired
signal is emitted from QNAM.

Based in part upon patch by Peter Hartmann.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleAuthenticationRequiredRequest):
(QQuickWebViewExperimental::authenticationDialog):
(QQuickWebViewExperimental::setAuthenticationDialog):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::authenticationRequiredRequest):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtDialogRunner.cpp:

(AuthenticationDialogContextObject::AuthenticationDialogContextObject):
(AuthenticationDialogContextObject::hostname):
(AuthenticationDialogContextObject::realm):
(AuthenticationDialogContextObject::prefilledUsername):
(AuthenticationDialogContextObject::accept):
(AuthenticationDialogContextObject::reject):
(QtDialogRunner::initForAuthentication):

  • UIProcess/qt/QtDialogRunner.h:

(QtDialogRunner::username):
(QtDialogRunner::password):
(QtDialogRunner::onAuthenticationAccepted):

  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::handleAuthenticationRequiredRequest):

  • UIProcess/qt/QtPageClient.h:
  • WebProcess/qt/QtNetworkAccessManager.cpp:

(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::onAuthenticationRequired):

  • WebProcess/qt/QtNetworkAccessManager.h:
05:09 Changeset [105145] by zimmermann@webkit.org

2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Qt results after r105143..

  • platform/qt/svg/carto.net/window-expected.txt:
  • platform/qt/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/qt/svg/custom/js-late-gradient-and-object-creation-expected.txt:
05:03 Changeset [105144] by zimmermann@webkit.org

2012-01-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Gtk results after r105143..

  • platform/gtk/svg/carto.net/window-expected.txt:
  • platform/gtk/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/gtk/svg/custom/use-detach-expected.txt:
04:42 Changeset [105143] by zimmermann@webkit.org

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Final patch fixing the performance regression from r81168 plus giving us more performance we ever had.
The testcase attached to bug 65711 creates 200 tspans as <text> children, and modifies just the first <tspan>s
content periodically using a timer. It ran with <3 FPS in release builds before, and now at around 60 FPS,
where the most dominant code path remaining is CG painting text. Still theres room to optimize further, as
Intruments shows.

Historically we rebuilt all SVGTextLayoutAttributes stored in the RenderSVGInlineText, whenever any
children of the <text> subtree changed, in any way. This lead to a recomputation of the x/y/dx/dy/rotate
value lists, for the whole tree, a recreation of the line box tree and finally a measurement of all characters
in the subtree.

This patch, and its previous patches preparing this, introduces progressive relayout for the SVG text subtree.
DOM tree mutations, x/y/dx/dy/rotate value lists changes, and measuring-all-characters are now strictly decoupled.

#1) x/y/dx/dy/rotate list changes:
The x/y/dx/dy/rotate lists are only ever rebuilt, if they change or upon the initial RenderSVGText layout.
This information is now cached in the so-called SVGCharacterDataMap, in each of the SVGTextLayoutAttributes,
associated with a specific RenderSVGInlineText.

#2) DOM tree mutations:
If a new RenderSVGInlineText gets added to the tree, we have to create SVGTextLayoutAttributes for the new
renderer, measure its characters, and cache the information in the attributes. Adding a new renderer to
a SVG <text> subtree can affect the positioning of the previous and next sibling in the tree, due the
whitespace merging logic. Example:

<text y="50" x="50 100 150">A<tspan></tspan> C</text>:
RenderSVGText {text} at (50,36) size 111x18 contains 1 chunk(s)

RenderSVGInlineText {#text} at (0,0) size 12x18

chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"

RenderSVGTSpan {tspan} at (0,0) size 0x0
RenderSVGInlineText {#text} at (50,0) size 61x18

chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 4.00: " "
chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 1 width 11.00: "C"

<text y="50" x="50 100 150">A<tspan>B</tspan> C</text>:
RenderSVGText {text} at (50,36) size 115x18 contains 1 chunk(s)

RenderSVGInlineText {#text} at (0,0) size 12x18

chunk 1 text run 1 at (50.00,50.00) startOffset 0 endOffset 1 width 12.00: "A"

RenderSVGTSpan {tspan} at (0,0) size 11x18

RenderSVGInlineText {#text} at (50,0) size 11x18

chunk 1 text run 1 at (100.00,50.00) startOffset 0 endOffset 1 width 11.00: "B"

RenderSVGInlineText {#text} at (100,0) size 15x18

chunk 1 text run 1 at (150.00,50.00) startOffset 0 endOffset 2 width 15.00: " C"

Its obvious that adding a #text node as child to the <tspan> potentially affects the next & previous
siblings in the DOM tree. Take extra care of these possibilities, by properly remeasuring not only
the newly added renderer, but also the previous & next siblings layout attributes.

Mutation of text nodes, or removal of text/tspan elements from the tree is handled in the same way.

#3) Measuring the text subtree:
Don't cache the metrics information in the SVGRootInlineBox, as it doesn't survive relayouts (RenderSVGText::layout).
They're stored in the SVGTextLayoutAttributes, and will be updated if the underlying text content changes.

Tests: svg/text/append-text-node-to-tspan.html

svg/text/modify-text-node-in-tspan.html
svg/text/remove-text-node-from-tspan.html

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::addChild):

  • rendering/svg/RenderSVGInline.h:
  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::willBeDestroyed):
(WebCore::RenderSVGInlineText::setTextInternal):
(WebCore::RenderSVGInlineText::styleDidChange):

  • rendering/svg/RenderSVGInlineText.h:

(WebCore::RenderSVGInlineText::layoutAttributes):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::recursiveUpdateLayoutAttributes):
(WebCore::RenderSVGText::layoutAttributesChanged):
(WebCore::findPreviousAndNextAttributes):
(WebCore::RenderSVGText::layoutAttributesWillBeDestroyed):
(WebCore::RenderSVGText::textDOMChanged):
(WebCore::RenderSVGText::layout):
(WebCore::RenderSVGText::addChild):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):

  • rendering/svg/RenderSVGText.h:

(WebCore::RenderSVGText::layoutAttributes):

  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
(WebCore::SVGRootInlineBox::reorderValueLists):

  • rendering/svg/SVGRootInlineBox.h:
  • rendering/svg/SVGTextLayoutAttributes.h:
  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::SVGTextLayoutEngine):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics):
(WebCore::SVGTextLayoutEngine::currentVisualCharacterMetrics):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):

  • rendering/svg/SVGTextLayoutEngine.h:

(WebCore::SVGTextLayoutEngine::layoutAttributes):

  • rendering/svg/SVGTextMetrics.h:
  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):

  • svg/SVGTextContentElement.cpp:

(WebCore::SVGTextContentElement::childrenChanged):

LayoutTests:

Update some results, that changed again slightly. Land new tests covering partial SVG <text> subtree updating.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/carto.net/window-expected.png:
  • platform/mac/svg/carto.net/window-expected.txt:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/mac/svg/custom/use-detach-expected.png:
  • platform/mac/svg/custom/use-detach-expected.txt:
  • platform/mac/svg/text/append-text-node-to-tspan-expected.png: Added.
  • platform/mac/svg/text/append-text-node-to-tspan-expected.txt: Added.
  • platform/mac/svg/text/modify-text-node-in-tspan-expected.png: Added.
  • platform/mac/svg/text/modify-text-node-in-tspan-expected.txt: Added.
  • platform/mac/svg/text/remove-text-node-from-tspan-expected.png: Added.
  • platform/mac/svg/text/remove-text-node-from-tspan-expected.txt: Added.
  • svg/text/append-text-node-to-tspan.html: Added.
  • svg/text/modify-text-node-in-tspan.html: Added.
  • svg/text/remove-text-node-from-tspan.html: Added.
04:29 Changeset [105142] by kov@webkit.org

GTK+ EWS needs to run update-webkitgtk-libs after applying a patch
https://bugs.webkit.org/show_bug.cgi?id=75857

Patch by Gustavo Noronha Silva <gustavo.noronha@collabora.com> on 2012-01-16
Reviewed by Adam Barth.

  • Scripts/webkitdirs.pm:

(buildAutotoolsProject): move cleaning the build to happen early,
and handle --update-gtk right after that

  • Scripts/webkitpy/common/config/ports.py:

(GtkPort.build_webkit_command): pass --update-gtk as an option to
build-webkit, so that it is used in the EWS

04:20 Changeset [105141] by apavlov@chromium.org

[Chromium] Unreviewed, fix Linux image expectations for two SVG tests.

  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
04:13 Changeset [105140] by apavlov@chromium.org

Web Inspector: [TextPrompt] Autocomplete adds unwanted text that's hard to remove
https://bugs.webkit.org/show_bug.cgi?id=76058

Reviewed by Pavel Feldman.

As per the results of a war room:

  • Auto-suggest only after user typing (avoid showing suggestions when navigating through the user input.)
  • Do not select the first item if the suggest box is shown at the end of prompt (to allow Enter to commit the input.)
  • Only show grayed autocompletion at the end of prompt (otherwise show a suggest box with the first item selected.)
  • Grayed autocompletion can only be accepted with the End or Right keys.
  • Enter can accept a selected suggestion item from the list, without committing the input.
  • Retain the CSS model editing behavior as close to the existing one as possible.
  • Enable PageUp/PageDown to navigate the suggest box items.
  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertyTreeElement.prototype):
():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.set text):
(WebInspector.TextPrompt.prototype._removeSuggestionAids):
(WebInspector.TextPrompt.prototype._selectStart.moveBackIfOutside):
(WebInspector.TextPrompt.prototype._selectStart):
(WebInspector.TextPrompt.prototype.onKeyDown):
(WebInspector.TextPrompt.prototype.acceptAutoComplete):
(WebInspector.TextPrompt.prototype.complete):
(WebInspector.TextPrompt.prototype._completionsReady):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):
(WebInspector.TextPrompt.prototype.tabKeyPressed):
(WebInspector.TextPrompt.prototype.downKeyPressed):
(WebInspector.TextPrompt.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype._onNextItem):
(WebInspector.TextPrompt.SuggestBox.prototype._onPreviousItem):
(WebInspector.TextPrompt.SuggestBox.prototype.updateSuggestions):
(WebInspector.TextPrompt.SuggestBox.prototype._updateItems):
(WebInspector.TextPrompt.SuggestBox.prototype._canShowBox):
(WebInspector.TextPrompt.SuggestBox.prototype._rememberRowCountPerViewport):
(WebInspector.TextPrompt.SuggestBox.prototype._completionsReady):
(WebInspector.TextPrompt.SuggestBox.prototype.pageUpKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.pageDownKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.enterKeyPressed):

03:57 Changeset [105139] by apavlov@chromium.org

Web Inspector: CSS backend doesn't conform to Inspector.json
https://bugs.webkit.org/show_bug.cgi?id=76402

Reviewed by Yury Semikhatsky.

  • inspector/Inspector.json:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::InspectorStyleSheet::buildObjectForStyle):

03:13 Changeset [105138] by tommyw@google.com

MediaStream API: Add the mediaStream constructor
https://bugs.webkit.org/show_bug.cgi?id=76436

Adding support for creating a MediaStream using a collection of MediaStreamTracks.

Reviewed by Adam Barth.

Tests for the Media Stream API will be provided by the bug 56587, pending enough landed code.

  • mediastream/MediaStream.cpp:

(WebCore::MediaStream::create):

  • mediastream/MediaStream.h:
  • mediastream/MediaStream.idl:
  • mediastream/MediaStreamTrack.cpp:

(WebCore::MediaStreamTrack::component):

  • mediastream/MediaStreamTrack.h:
  • platform/mediastream/MediaStreamCenter.cpp:

(WebCore::MediaStreamCenter::didConstructMediaStream):

  • platform/mediastream/MediaStreamCenter.h:
02:51 Changeset [105137] by jsbell@chromium.org

IndexedDB: IDBIndex.get/getKey should yield undefined, not an error
https://bugs.webkit.org/show_bug.cgi?id=76116

Source/WebCore:

Pass an undefined value (for IDBIndex.get()) or a null key
(for IDBIndex.getKey()) back as the result, rather than raising
an exception.

Reviewed by Adam Barth.

Tests: storage/indexeddb/index-basics.html

storage/indexeddb/cursor-index-delete.html
storage/indexeddb/duplicates.html

  • storage/IDBIndexBackendImpl.cpp:

(WebCore::IDBIndexBackendImpl::getInternal):

  • storage/IDBRequest.cpp:

(WebCore::IDBRequest::onSuccess):

LayoutTests:

Reviewed by Adam Barth.

  • storage/indexeddb/cursor-index-delete-expected.txt:
  • storage/indexeddb/cursor-index-delete.html:
  • storage/indexeddb/duplicates-expected.txt:
  • storage/indexeddb/duplicates.html:
  • storage/indexeddb/index-basics-expected.txt:
  • storage/indexeddb/index-basics.html:
02:49 Changeset [105136] by philn@webkit.org

Unreviewed, GTK rebaseline after r105129.

  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
02:39 WebKitGTK/Releasing edited by carlosgc@webkit.org
(diff)
02:26 Changeset [105135] by macpherson@chromium.org

Remove references to CSSPrimitiveValue::primitiveType().
https://bugs.webkit.org/show_bug.cgi?id=76363

Reviewed by Hajime Morita.

No new tests / refactoring only.

Goal is to remove primitiveType() completely. Only code left using it after this patch is in SVG.
I've introduced some abstractions in CSSPrimitiveValue for time and angles to reduce duplicated code elsewhere.

  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseColor):

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeDegrees):

  • css/CSSPrimitiveValue.h:

(WebCore::CSSPrimitiveValue::isAngle):
(WebCore::CSSPrimitiveValue::isAttr):
(WebCore::CSSPrimitiveValue::isCounter):
(WebCore::CSSPrimitiveValue::isFontIndependentLength):
(WebCore::CSSPrimitiveValue::isLength):
(WebCore::CSSPrimitiveValue::isPx):
(WebCore::CSSPrimitiveValue::isRect):
(WebCore::CSSPrimitiveValue::isRGBColor):
(WebCore::CSSPrimitiveValue::isShape):
(WebCore::CSSPrimitiveValue::isTime):
(WebCore::CSSPrimitiveValue::computeTime):

  • css/CSSStyleSelector.cpp:

(WebCore::convertToLength):
(WebCore::createGridTrackBreadth):
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapFillSize):
(WebCore::CSSStyleSelector::mapFillXPosition):
(WebCore::CSSStyleSelector::mapFillYPosition):
(WebCore::CSSStyleSelector::mapAnimationDelay):
(WebCore::CSSStyleSelector::mapAnimationDuration):
(WebCore::CSSStyleSelector::mapNinePieceImageSlice):
(WebCore::CSSStyleSelector::mapNinePieceImageQuad):
(WebCore::CSSStyleSelector::colorFromPrimitiveValue):
(WebCore::CSSStyleSelector::createTransformOperations):
(WebCore::CSSStyleSelector::createCustomFilterOperation):
(WebCore::CSSStyleSelector::createFilterOperations):

  • css/MediaQueryEvaluator.cpp:

(WebCore::parseAspectRatio):
(WebCore::numberValue):
(WebCore::computeLength):

  • editing/EditingStyle.cpp:

(WebCore::cssValueToRGBA):
(WebCore::EditingStyle::extractFontSizeDelta):
(WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
(WebCore::isCSSValueLength):
(WebCore::hasTransparentBackgroundColor):

02:26 Changeset [105134] by bbudge@chromium.org

AssociatedURLLoader adds support for the HTTP response header Access-Control-Expose-Header.
https://bugs.webkit.org/show_bug.cgi?id=76419

Reviewed by Adam Barth.

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):

  • tests/AssociatedURLLoaderTest.cpp:

(WebKit::AssociatedURLLoaderTest::CheckAccessControlHeaders):
(WebKit::TEST_F):

01:28 Changeset [105133] by vestbo@webkit.org

[Qt] Don't add _debug postfix to targets when building debug only

Reviewed by Simon Hausmann.

01:27 Changeset [105132] by vestbo@webkit.org

[Qt] Add more files to project-files for easier navigation in Qt Creator

Reviewed by Simon Hausmann.

00:36 Changeset [105131] by fpizlo@apple.com

DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361

Reviewed by Csaba Osztrogonác.

Fix for 32-bit.

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryBuildGetByIDList):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

00:25 Changeset [105130] by ossy@webkit.org

[Qt] Unreviewed morning gardening.

  • platform/qt/Skipped: Skip a failing test.
  • platform/qt/fast/dom/Window/window-properties-expected.txt: Updated.
00:23 Changeset [105129] by philn@webkit.org

[GTK] fast/dom/constructed-objects-prototypes.html fails
https://bugs.webkit.org/show_bug.cgi?id=75432

Reviewed by Martin Robinson.

Tools:

  • Scripts/build-webkit: Enable video-track in GTK.

LayoutTests:

  • platform/gtk/test_expectations.txt: Test now passing no longer

needs to be skipped.

00:18 Changeset [105128] by philn@webkit.org

Unreviewed, GTK rebaseline after r105075 and r105085.

  • platform/gtk/editing/execCommand/insertImage-expected.txt:
  • platform/gtk/editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt:
  • platform/gtk/fast/block/float/015-expected.txt:
  • platform/gtk/fast/borders/rtl-border-05-expected.txt:
  • platform/gtk/fast/dom/34176-expected.txt:
  • platform/gtk/fast/dom/Window/window-properties-expected.txt:
  • platform/gtk/fast/dom/inner-text-expected.txt:
  • platform/gtk/fast/encoding/utf-16-big-endian-expected.txt:
  • platform/gtk/fast/encoding/utf-16-little-endian-expected.txt:
  • platform/gtk/fast/hidpi/broken-image-icon-hidpi-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug2962-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug56201-expected.txt:
  • platform/gtk/tables/mozilla/collapsing_borders/bug41262-3-expected.txt:

01/16/12:

23:08 Changeset [105127] by rolandsteiner@chromium.org

Unreviewed:more Chromium Linux rebaselining

  • platform/chromium-linux-x86/svg/text/text-align-03-b-expected.png: Removed.
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.png:
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-linux/svg/text/text-align-03-b-expected.png:
22:44 Changeset [105126] by commit-queue@webkit.org

[Internals] member varaibles should follow naming convention.
https://bugs.webkit.org/show_bug.cgi?id=76426

Patch by Hajime Morrita <morrita@chromium.org> on 2012-01-16
Reviewed by Kent Tamura.

No new tests. Just a rename.

  • testing/Internals.cpp:

(WebCore::Internals::Internals):
(WebCore::Internals::setPasswordEchoEnabled):
(WebCore::Internals::setPasswordEchoDurationInSeconds):
(WebCore::Internals::reset):

  • testing/Internals.h:
22:02 Changeset [105125] by rolandsteiner@chromium.org

Unreviewed: updated baselines for Chromium Linux

  • platform/chromium-linux-x86/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/foreignObject/text-tref-02-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/text/text-align-02-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/text/text-spacing-01-b-expected.png: Removed.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Removed.
  • platform/chromium-linux/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
  • platform/chromium-linux/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/chromium-linux/svg/text/text-align-02-b-expected.png:
  • platform/chromium-linux/svg/text/text-spacing-01-b-expected.png:
  • platform/chromium-linux/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/chromium-linux/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
21:28 WebKit Team edited by sh4.seo@samsung.com
(diff)
21:24 Changeset [105124] by rolandsteiner@chromium.org

Unreviewed: rebaselining fast/backgrounds/mask-box-image

  • platform/chromium-mac-snowleopard/fast/backgrounds/mask-box-image-expected.png: Added.
  • platform/chromium-win/fast/backgrounds/mask-box-image-expected.png: Added.
  • platform/chromium-win/fast/backgrounds/mask-box-image-expected.txt: Added.
19:56 Changeset [105123] by hayato@chromium.org

Implement multiple AT_TARGET event dispatching in regard to shadow tree.
https://bugs.webkit.org/show_bug.cgi?id=76217

Reviewed by Dimitri Glazkov.

The original motivation is to fix the regression: Event.eventPhase is not set to 2
(at target) when handling dblclick event in <input> element.
Since the issue is not specific to <input> element, but general one, this patch fixes
the regression by adapting a living draft spec of shadow DOM.
This won't break a compatibility if there is no shadow boundaries in event dispatching.
See the following shadow dom spec how multiple AT_TARGET events work.
http://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#event-dispatch

Source/WebCore:

  • dom/EventContext.cpp:

(WebCore::EventContext::handleLocalEvents):

LayoutTests:

  • fast/dom/shadow/shadow-boundary-events-expected.txt:
  • fast/dom/shadow/shadow-boundary-events.html:
19:47 Changeset [105122] by toyoshim@chromium.org

Add toyoshim as a committer.
https://bugs.webkit.org/show_bug.cgi?id=76390

Reviewed by Hajime Morita.

  • Scripts/webkitpy/common/config/committers.py:
19:35 Changeset [105121] by commit-queue@webkit.org

platformRequest(QNX) need to get the conditional information from ResourceRequest.
https://bugs.webkit.org/show_bug.cgi?id=75216

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-01-16
Reviewed by George Staikos.

Pass the isConditional() flag in ResourceRequest to the QNX platform's network request.
QNX platform's network needs this flag to determine whether to use disk-cache.

  • platform/network/blackberry/ResourceRequestBlackBerry.cpp:

(ResourceRequest::initializePlatformRequest):

18:25 Changeset [105120] by robert@webkit.org

Heap-use-after-free in WebCore::RenderBlock::selectionGaps
https://bugs.webkit.org/show_bug.cgi?id=75013

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/table/multiple-captions-crash3.html

fast/table/multiple-captions-crash4.html
fast/table/multiple-captions-crash5.html

When a child float is removed, the parent needs to ensure any reference to the
child is also removed from the floating objects list in any sibling block that
it intruded into.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::markSiblingsWithFloatsForLayout):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):

LayoutTests:

In multiple-captions-crash3.html a floating object is added as a child to a caption element, then removed and
added as a child to another caption element. When added to the first caption element it is added
to the floating objects list of both the parent tbody element and the keygen element, as it intrudes
into the latter. When removed, a stale reference to the floating object remains in the keygen element.
When the keygen element is in layout it attempts to access the stale reference to the floating object and
crashes. The fix is to ensure that any floats added as intruding floats to sibling blocks are removed
when the child is removed from the tree.

multiple-captions-crash4.html and multiple-captions-crash5.html are variants of this scenario.

  • fast/table/multiple-captions-crash3-expected.html: Added.
  • fast/table/multiple-captions-crash3.html: Added.
  • fast/table/multiple-captions-crash4-expected.html: Added.
  • fast/table/multiple-captions-crash4.html: Added.
  • fast/table/multiple-captions-crash5-expected.html: Added.
  • fast/table/multiple-captions-crash5.html: Added.
18:00 Changeset [105119] by mrowe@apple.com

Merge r99591.

17:49 Changeset [105118] by mrowe@apple.com

Merge r103860.

17:33 Changeset [105117] by mrowe@apple.com

Merge r104049.

17:21 Changeset [105116] by mrowe@apple.com

Merge r103925.

17:21 Changeset [105115] by mrowe@apple.com

Merge r103871.

17:21 Changeset [105114] by mrowe@apple.com

Merge r103869.

17:21 Changeset [105113] by mrowe@apple.com

Merge r103858.

17:17 Changeset [105112] by mitz@apple.com

<rdar://problem/10702758> REGRESSION: Every Safari Reader WKView leaks

Reviewed by John Sullivan and Ada Chan.

  • UIProcess/API/mac/WKView.mm:

(-[WKView viewDidMoveToWindow]): Since this method can be called multiple times in a row
while [self window] is non-nil, check if there isn’t already an event monitor before adding
a new one.

17:12 Changeset [105111] by enrica@apple.com

REGRESSION: r102553 Autocorrection bubble doesn't show up
https://bugs.webkit.org/show_bug.cgi?id=76408
<rdar://problem/10644746>

Prior to r102553 Editor::markAllMisspellingsAndBadGrammarInRanges() used to pass its
textCheckingOptions directly to markAndReplaceFor(). Now a request object is used,
but, when the object is created, the TextCheckingTypeShowCorrectionPanel flag is dropped.

Reviewed by Darin Adler.

  • editing/Editor.cpp:

(WebCore::Editor::resolveTextCheckingTypeMask): Add TextCheckingTypeShowCorrectionPanel to
the returned checkingTypes when appropriate.

17:10 Changeset [105110] by lforschler@apple.com

Merged r100471.

17:06 Changeset [105109] by lforschler@apple.com

Merged r104660.

17:04 Changeset [105108] by lforschler@apple.com

Merged r104762.

16:53 Changeset [105107] by fpizlo@apple.com

DFG should be able to do JS and custom getter caching
https://bugs.webkit.org/show_bug.cgi?id=76361
<rdar://problem/10698060>

Source/JavaScriptCore:

Reviewed by Geoff Garen.

Added the ability to cache JS getter calls and custom getter calls in the DFG.
Most of this is pretty mundane, since the old JIT supported this functionality
as well. But a couple interesting things had to happen:

  • There are now two variants of GetById: GetById, which works as before, and GetByIdFlush, which flushes registers prior to doing the GetById. Only GetByIdFlush can be used for caching getters. We detect which GetById style to use by looking at the inline caches of the old JIT.


  • Exception handling for getter calls planted in stubs uses a separate lookup handler routine, which uses the CodeOrigin stored in the StructureStubInfo.


This is a 40% speed-up in the Dromaeo DOM Traversal average. It removes all of
the DFG regressions we saw in Dromaeo. This is neutral on SunSpider, V8, and
Kraken.

  • bytecode/StructureStubInfo.h:
  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::execute):

  • dfg/DFGAssemblyHelpers.h:

(JSC::DFG::AssemblyHelpers::emitExceptionCheck):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::willNeedFlush):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCCallHelpers.h:

(JSC::DFG::CCallHelpers::setupResults):

  • dfg/DFGJITCompiler.cpp:

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

  • dfg/DFGJITCompiler.h:

(JSC::DFG::PropertyAccessRecord::PropertyAccessRecord):
(JSC::DFG::JITCompiler::addExceptionCheck):

  • dfg/DFGNode.h:

(JSC::DFG::Node::hasIdentifier):
(JSC::DFG::Node::hasHeapPrediction):

  • dfg/DFGOperations.cpp:
  • dfg/DFGOperations.h:
  • dfg/DFGPropagator.cpp:

(JSC::DFG::Propagator::propagateNodePredictions):

  • dfg/DFGRepatch.cpp:

(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::appendCallWithExceptionCheckSetResult):

  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::cachedGetById):
(JSC::DFG::SpeculativeJIT::compile):

LayoutTests:

Reviewed by Geoff Garen.

  • fast/js/dfg-custom-getter-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined-expected.txt: Added.
  • fast/js/dfg-custom-getter-throw-inlined.html: Added.
  • fast/js/dfg-custom-getter-throw.html: Added.
  • fast/js/dfg-custom-getter.html: Added.
  • fast/js/dfg-getter-expected.txt: Added.
  • fast/js/dfg-getter-throw-expected.txt: Added.
  • fast/js/dfg-getter-throw.html: Added.
  • fast/js/dfg-getter.html: Added.
  • fast/js/script-tests/dfg-custom-getter-throw-inlined.js: Added.

(foo):
(baz):
(bar):

  • fast/js/script-tests/dfg-custom-getter-throw.js: Added.

(foo):
(bar):

  • fast/js/script-tests/dfg-custom-getter.js: Added.

(foo):

  • fast/js/script-tests/dfg-getter-throw.js: Added.

(foo):
(bar):

  • fast/js/script-tests/dfg-getter.js: Added.

(foo):

16:36 Changeset [105106] by mrowe@apple.com

Fix <rdar://problem/10678175>.

  • platform/mac/ScrollAnimatorMac.mm:

(WebCore::ScrollAnimatorMac::notityPositionChanged):

16:25 Changeset [105105] by andersca@apple.com

Crash when calling SecItemAdd with a null result pointer
https://bugs.webkit.org/show_bug.cgi?id=76407
<rdar://problem/10696087>

Reviewed by Brady Eidson.

Add null check.

  • WebProcess/mac/SecItemShimMethods.mm:

(WebKit::webSecItemAdd):

16:19 Changeset [105104] by mrowe@apple.com

Merge r102540.

16:16 Changeset [105103] by bfulgham@webkit.org

[WinCairo] Build correction. Switch to Apple style builds without
the _debug postfix so that launching tools, etc., will work properly.

  • win/tools/vsprops/debug_wincairo.vsprops: Remove use of _debug in

output files to be consistent with WebKit build/test tools.

16:08 Changeset [105102] by lforschler@apple.com

Merge fix for 9593456.

16:04 Changeset [105101] by ap@apple.com

A follow-up fix for:
A warning is logged to console when typing a bare "/" in Safari address bar
https://bugs.webkit.org/show_bug.cgi?id=76236

<rdar://problem/10702986>

Reviewed by John Sullivan.

  • Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): It's OK to have a path when there is a base URL.
15:55 Changeset [105100] by mrowe@apple.com

Merge r96014.

15:46 Changeset [105099] by mrowe@apple.com

Merge r104378.

15:46 Changeset [105098] by jonlee@apple.com

Build fix for r105086.

Source/JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:
  • wtf/Platform.h:

Source/WebCore:

  • Configurations/FeatureDefines.xcconfig:
  • notifications/NotificationCenter.idl: change to use ENABLE_TEXT_NOTIFICATIONS_ONLY, which is only defined on Mac platform.

Source/WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

Source/WebKit2:

  • Configurations/FeatureDefines.xcconfig:
15:38 Changeset [105097] by mrowe@apple.com

Merge r104663.

15:38 Changeset [105096] by mrowe@apple.com

Merge r104377.

15:38 Changeset [105095] by kling@webkit.org

Fix typo in StyledElement::mappedAttributeCount().
<http://webkit.org/b/76393>

Rubber-stamped by Antti Koivisto.

  • dom/StyledElement.h:

(WebCore::StyledElement::mappedAttributeCount): Less &&, more ?:

14:49 Changeset [105094] by jonlee@apple.com

Build fix for r105086.

  • notifications/NotificationCenter.idl: expand ENABLE macro for .idl.
14:39 Changeset [105093] by antti@apple.com

Cache CSSStyleSelector::Features in RuleSets
https://bugs.webkit.org/show_bug.cgi?id=76337

Reviewed by Andreas Kling.

Currently whenever the style selector is updated we go through all the applicable rules and
collect the used features again. We should keep the features around as part of the RuleSets
and update them incrementally. Collecting the features will then be just a matter of taking
the union of all features used by the RuleSets.

This is 1-2% CPU time reduction (engadget, nytimes) due less time spent in feature collection.

This also simplifies the code by removing the need to cache the default style sheet features
separately.

  • css/CSSStyleSelector.cpp:


Remove the global siblingRulesInDefaultStyle and uncommonAttributeRulesInDefaultStyle RuleSets.
These are now part of the cached features of the defaultStyle.


(WebCore::RuleSet::features):

Add a field for caching the features.


(WebCore::makeRuleSet):
(WebCore::CSSStyleSelector::collectFeatures):

Unify the features of all RuleSets.
Create RuleSets for sibling and uncommon attribute lookups at the end.


(WebCore::CSSStyleSelector::appendAuthorStylesheets):
(WebCore::CSSStyleSelector::Features::add):
(WebCore::ensureDefaultStyleSheetsForElement):
(WebCore::CSSStyleSelector::locateSharedStyle):
(WebCore::collectFeaturesFromSelector):
(WebCore::collectFeaturesFromRuleData):
(WebCore::RuleSet::addToRuleSet):
(WebCore::RuleSet::addRule):

Collect the features when adding the rules rather than as a separate pass through all the rules.


  • css/CSSStyleSelector.h:

(WebCore::CSSStyleSelector::usesSiblingRules):
(WebCore::CSSStyleSelector::RuleSelectorPair::RuleSelectorPair):

Use Vector instead of a RuleSet for sibling and uncommon attribute selectors so unifying
Features is simpler.

14:37 Changeset [105092] by simon.fraser@apple.com

Huge filter area cause hangs and malloc failures
https://bugs.webkit.org/show_bug.cgi?id=75711

Reviewed by Dean Jackson.

Filtering an element with a child that had a huge negative text-indent
was extremely slow, because transparencyClipBox() returned a huge rect.

Add a method, paintingExtent(), that wraps transparencyClipBox()
and intersects it with the paintDirtyRect to constrain the size
of the rect used for filters and transparency layers.

Transparency layer extent is not testable in layout tests.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintingExtent):
(WebCore::RenderLayer::beginTransparencyLayers): Floating point literals are required
to avoid ambiguous constructor call.
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::paintLayerContents):

  • rendering/RenderLayer.h:
14:21 Changeset [105091] by simon.fraser@apple.com

Borders and box masks behave incorrectly with overlapping offsets
https://bugs.webkit.org/show_bug.cgi?id=76137

Source/WebCore:

Reviewed by Dean Jackson.

There are some correct behaviors for -webkit-mask-box-image where
parts of the mask are missing (when the sum of the slice sizes is
greater than one dimension of the image). To render correctly
in these cases, always use a transparency layer when rendering
the mask.

Test: fast/backgrounds/mask-box-image.html

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::paintMaskImages):

LayoutTests:

Reviewed by Dean Jackson.

Test -webkit-mask-box-image with large slice sizes, with and
without a transform.

  • fast/backgrounds/mask-box-image.html: Added.
  • fast/backgrounds/resources/dot.png: Added.
  • platform/mac/fast/backgrounds/mask-box-image-expected.png: Added.
  • platform/mac/fast/backgrounds/mask-box-image-expected.txt: Added.
14:19 Changeset [105090] by simon.fraser@apple.com

Filtered element with composited content beneath it must be composited
https://bugs.webkit.org/show_bug.cgi?id=76322

Source/WebCore:

Reviewed by Dean Jackson.

If a RenderLayer has a filter effect, and a composited descendant, then
that layer must also be composited so that the filter is applied via
the compositing system, rather than via painting (otherwise the filter
will not affect the descendant).

Test: css3/filters/filtered-compositing-descendant.html

  • rendering/RenderLayerCompositor.cpp:

(WebCore::RenderLayerCompositor::requiresCompositingWhenDescendantsAreCompositing):

LayoutTests:

Reviewed by Dean Jackson.

Testcase with a filtered element having a composited child.

  • css3/filters/filtered-compositing-descendant-expected.png: Added.
  • css3/filters/filtered-compositing-descendant-expected.txt: Added.
  • css3/filters/filtered-compositing-descendant.html: Added.
13:53 Changeset [105089] by kling@webkit.org

Fix assertion failure in mappedAttributesEquivalent().
<http://webkit.org/b/76393>

Rubber-stamped by Antti Koivisto.

The assertion that two mapped attributes with matching name/value will always
have the exact same decl() was wrong, so make it a proper check once again.

  • css/CSSStyleSelector.cpp:

(WebCore::mappedAttributesEquivalent):

13:31 Changeset [105088] by bfulgham@webkit.org

[WinCairo] Build fix after r104155. Several debug targets were not
properly including the '*Common' property sheets.

  • DumpRenderTree/win/DumpRenderTreeLauncherDebugCairoCFLite.vsprops:
  • DumpRenderTree/win/ImageDiffLauncherDebugCairoCFLite.vsprops:
  • MiniBrowser/Configurations/MiniBrowserLauncherDebugCairoCFLite.vsprops:
  • WebKitTestRunner/win/WebKitTestRunnerLauncherDebugCairoCFLite.vsprops:
  • WinLauncher/WinLauncherLauncherDebugCairoCFLite.vsprops:
13:18 Changeset [105087] by bbudge@chromium.org

Changes AssociatedURLLoader to remove non-whitelisted HTTP response headers for CORS requests,
and Set-Cookie and Set-Cookie2 response headers for all requests.
https://bugs.webkit.org/show_bug.cgi?id=76228

Reviewed by Adam Barth.

  • src/AssociatedURLLoader.cpp:

(WebKit::AssociatedURLLoader::ClientAdapter::create):
(WebKit::AssociatedURLLoader::ClientAdapter::ClientAdapter):
(WebKit::AssociatedURLLoader::ClientAdapter::didReceiveResponse):
(WebKit::AssociatedURLLoader::loadAsynchronously):

  • tests/AssociatedURLLoaderTest.cpp:

(WebKit::AssociatedURLLoaderTest::didReceiveResponse):
(WebKit::TEST_F):

13:11 Changeset [105086] by jonlee@apple.com

Remove HTML notifications support on Mac
https://bugs.webkit.org/show_bug.cgi?id=76401
<rdar://problem/10589881>

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • wtf/Platform.h: Define ENABLE_HTML_NOTIFICATIONS macro.

Source/WebCore:

  • notifications/NotificationCenter.idl:
12:50 Changeset [105085] by commit-queue@webkit.org

Add offline web applications API applicationCache.abort.
https://bugs.webkit.org/show_bug.cgi?id=76270

Patch by xueqing huang <huangxueqing@baidu.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

Source/WebCore:

Tests:
http/tests/appcache/abort-cache-onchecking.html
http/tests/appcache/abort-cache-onchecking-manifest-404.html
http/tests/appcache/abort-cache-onchecking-resource-404.html
http/tests/appcache/abort-cache-ondownloading.html
http/tests/appcache/abort-cache-ondownloading-manifest-404.html
http/tests/appcache/abort-cache-ondownloading-resource-404.html
http/tests/appcache/abort-cache-onprogress.html

  • loader/appcache/ApplicationCacheGroup.cpp:

(WebCore::ApplicationCacheGroup::abort):

  • loader/appcache/ApplicationCacheGroup.h:
  • loader/appcache/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::abort):

  • loader/appcache/ApplicationCacheHost.h:
  • loader/appcache/DOMApplicationCache.cpp:

(WebCore::DOMApplicationCache::abort):

  • loader/appcache/DOMApplicationCache.h:
  • loader/appcache/DOMApplicationCache.idl:

Source/WebKit/chromium:

  • src/ApplicationCacheHost.cpp:

(WebCore::ApplicationCacheHost::abort):

LayoutTests:

  • http/tests/appcache/abort-cache-onchecking-expected.txt: Added.
  • http/tests/appcache/abort-cache-onchecking-manifest-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-onchecking-manifest-404.html: Added.
  • http/tests/appcache/abort-cache-onchecking-resource-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-onchecking-resource-404.html: Added.
  • http/tests/appcache/abort-cache-onchecking.html: Added.
  • http/tests/appcache/abort-cache-ondownloading-expected.txt: Added.
  • http/tests/appcache/abort-cache-ondownloading-manifest-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-ondownloading-manifest-404.html: Added.
  • http/tests/appcache/abort-cache-ondownloading-resource-404-expected.txt: Added.
  • http/tests/appcache/abort-cache-ondownloading-resource-404.html: Added.
  • http/tests/appcache/abort-cache-ondownloading.html: Added.
  • http/tests/appcache/abort-cache-onprogress-expected.txt: Added.
  • http/tests/appcache/abort-cache-onprogress.html: Added.
  • http/tests/appcache/resources/abort-cache-onchecking-resource-404.manifest: Added.
  • http/tests/appcache/resources/abort-cache-onchecking.manifest: Added.
  • http/tests/appcache/resources/abort-cache-onchecking.text: Added.
  • http/tests/appcache/resources/abort-cache-ondownloading-resource-404.manifest: Added.
  • http/tests/appcache/resources/abort-cache-ondownloading.manifest: Added.
  • http/tests/appcache/resources/abort-cache-ondownloading.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-1.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-2.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-3.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress-4.text: Added.
  • http/tests/appcache/resources/abort-cache-onprogress.manifest: Added.
  • platform/chromium/test_expectations.txt:
12:28 Changeset [105084] by kling@webkit.org

Remove caching of mapped attribute count on NamedNodeMap.
<http://webkit.org/b/76393>

Reviewed by Antti Koivisto.

Stop caching the mapped attribute count on Element's attribute map, effectively
shrinking NamedNodeMap by one CPU word. The price we pay is always walking over
the map in matchAllRules(), even if it has no mapped attribute styles.

This reduces memory consumption by 605 kB (on 64-bit) when viewing the full
HTML5 spec at <http://whatwg.org/c>

  • css/CSSStyleSelector.cpp:

(WebCore::mappedAttributesEquivalent):

Moved here from NamedNodeMap::mappedMapsEquivalent() to accomodate the only
user under the added assumption that the two attribute maps have the same
number of mapped attributes.

(WebCore::CSSStyleSelector::matchAllRules):

We don't have NamedNodeMap::hasMappedAttributes() at our convenience any
more so walk the attribute map (if there is one) looking for styles to add.

(WebCore::CSSStyleSelector::canShareStyleWithElement):

Compare the elements' mapped attribute counts at an earlier time. This is
slightly more expensive but we used to do it near the end anyway and this
ends up rejecting elements that can't share style before doing a lot of
semi-expensive checks.

  • dom/StyledElement.h:

(WebCore::StyledElement::mappedAttributeCount):

  • dom/NamedNodeMap.h:

(WebCore::NamedNodeMap::mappedAttributeCount):

  • dom/NamedNodeMap.cpp:

(WebCore::NamedNodeMap::clearAttributes):

Remove NamedNodeMap::m_mappedAttributeCount and add a function that walks
the attribute map counting the attributes that have a decl().

  • dom/NamedNodeMap.h:
  • dom/StyledElement.cpp:

(WebCore::StyledElement::attributeChanged):

Remove declAdded()/declRemoved() callbacks.

12:22 Changeset [105083] by lforschler@apple.com

Versioning.

12:02 Changeset [105082] by ossy@webkit.org

REGRESSION(r105072): It broke committers_unittest.py
https://bugs.webkit.org/show_bug.cgi?id=76396

Reviewed by Adam Barth.

  • Scripts/webkitpy/common/config/committers_unittest.py:

(CommittersTest._assert_fuzz_match): It should handle more names.
(CommittersTest.test_contributors_by_fuzzy_match_with_legacy_names): Fix the testcase.

12:01 Changeset [105081] by lforschler@apple.com

New tag.

11:50 Changeset [105080] by lforschler@apple.com

Merged r91324.

11:28 Changeset [105079] by jer.noble@apple.com

Unreviewed build fix.

Added necessary header files to VectorMath.cpp to fix Chromium compile error.

  • platform/audio/VectorMath.cpp:
10:53 Changeset [105078] by jer.noble@apple.com

WebAudio: Optimize AudioChannel::maxAbsValue().
https://bugs.webkit.org/show_bug.cgi?id=74359

Reviewed by Eric Carlson.

No new tests; optimization of existing code, so covered by existing test cases.

  • platform/audio/AudioChannel.cpp:

(WebCore::AudioChannel::maxAbsValue): Replace implementation with optimized vector math

operation.

  • platform/audio/VectorMath.cpp:

(WebCore::VectorMath::vmaxmgv): Vector math operation for determining maximum

magnitude in a vector.

  • platform/audio/VectorMath.h:
10:46 Changeset [105077] by ap@apple.com

A warning is logged to console when typing a bare "/" in Safari address bar
https://bugs.webkit.org/show_bug.cgi?id=76236

Reviewed by John Sullivan.

  • Misc/WebNSURLExtras.mm: (+[NSURL _web_URLWithData:relativeToURL:]): Bail out early for paths.
10:42 Changeset [105076] by commit-queue@webkit.org

https://bugs.webkit.org/show_bug.cgi?id=41210
Cross Origin XMLHttpRequest can not expose headers indicated in Access-Control-Expose-Headers HTTP Response Header

Source/WebCore:

Parsing the "Access-Control-Expose-Headers" in the XMLHTTPRequest response header.
If the custom response-header is part of Access-Control-Expose-Headers, then consider that custom response-header as a valid one.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

Test: http/tests/xmlhttprequest/access-control-response-with-expose-headers.html

  • loader/CrossOriginAccessControl.cpp:

(WebCore::parseAccessControlExposeHeadersAllowList): parsing logic of Access-Control-Expose-Headers

  • loader/CrossOriginAccessControl.h:
  • xml/XMLHttpRequest.cpp:

(WebCore::XMLHttpRequest::getAllResponseHeaders): checking whether the custom response-header is part of "Access-Control-Expose-Headers"
(WebCore::XMLHttpRequest::getResponseHeader): checking whether the custom response-header is part of "Access-Control-Expose-Headers"

LayoutTests:

Added test cases for Access-Control-Expose-Headers

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-16
Reviewed by Alexey Proskuryakov.

  • http/tests/xmlhttprequest/access-control-response-with-expose-headers-expected.txt: Added.
  • http/tests/xmlhttprequest/access-control-response-with-expose-headers.html: Added.
  • http/tests/xmlhttprequest/resources/access-control-response-with-expose-headers.php: Added.
10:40 Changeset [105075] by commit-queue@webkit.org

[GTK] Include gtk+3 in the jhbuild modules
https://bugs.webkit.org/show_bug.cgi?id=76284

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-01-16
Reviewed by Philippe Normand.

  • gtk/jhbuild.modules: Add some gtk+3 to the jhbuild moduleset.
10:17 Changeset [105074] by zeno.albisser@nokia.com

[Qt] Fix QT_VERSION related warnings when building on Mac OS X
https://bugs.webkit.org/show_bug.cgi?id=76340

Source/JavaScriptCore:

This bug was caused by r104826.
As already mentioned for https://bugs.webkit.org/show_bug.cgi?id=57239
we should not use "using namespace WebCore" in header files,
because it might cause ambiguous references.
This patch reverts the changes from r104826 and r104981
and removes the "using namespace WebCore" statement from
two header files.

Reviewed by Tor Arne Vestbø.

  • wtf/Platform.h:

Source/WebKit2:

This bug was caused by r104826.
As was already mentioned for https://bugs.webkit.org/show_bug.cgi?id=57239
we should not use "using namespace WebCore" in header files,
because it might cause ambiguous references.
This patch reverts the changes from r104826 and r104981
and removes the "using namespace WebCore" statement from
two header files.

Reviewed by Tor Arne Vestbø.

  • Shared/WebLayerTreeInfo.h:

(WebKit::WebLayerUpdateInfo::WebLayerUpdateInfo):
(WebKit::WebLayerAnimation::WebLayerAnimation):

  • UIProcess/LayerTreeHostProxy.h:

(WebKit::LayerTreeHostProxy::layerByID):
(WebKit::LayerTreeHostProxy::rootLayer):
(WebKit::LayerTreeHostProxy::notifyAnimationStarted):
(WebKit::LayerTreeHostProxy::notifySyncRequired):

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/qt/LayerTreeHostQt.h:
10:05 Changeset [105073] by apavlov@chromium.org

[Chromium] Unreviewed, rebaseline SVG tests after r105061.

  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/W3C-SVG-1.1/text-text-01-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/foreignObject/text-tref-02-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/text/text-align-02-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/text/text-align-03-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/text/text-spacing-01-b-expected.png: Added.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.png: Added.
  • platform/chromium-linux-x86/svg/transforms/text-with-pattern-with-svg-transform-expected.txt: Copied from LayoutTests/platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.txt.
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-linux/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-linux/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-linux/svg/text/select-textLength-spacing-squeeze-2-expected.txt: Removed.
  • platform/chromium-linux/svg/text/text-path-01-b-expected.png:
  • platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt:
  • platform/chromium-mac-leopard/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-mac-leopard/svg/batik/text/textAnchor-expected.png:
  • platform/chromium-mac-leopard/svg/batik/text/textProperties2-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-align-01-b-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-align-03-b-expected.png:
  • platform/chromium-mac-leopard/svg/text/text-tselect-02-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/batik/text/textAnchor-expected.png:
  • platform/chromium-mac-snowleopard/svg/batik/text/textProperties2-expected.png:
  • platform/chromium-mac-snowleopard/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/bidi-text-anchor-direction-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-1-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-2-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-3-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-align-01-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-align-03-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-spacing-01-b-expected.png:
  • platform/chromium-mac-snowleopard/svg/text/text-tselect-02-f-expected.png:
  • platform/chromium-mac-snowleopard/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt: Renamed from LayoutTests/platform/chromium/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt.
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-win-vista/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-win-vista/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-default-context-expected.txt: Removed.
  • platform/chromium-win-xp/svg/W3C-I18N/tspan-dirRTL-ubOverride-in-ltr-context-expected.txt: Removed.
  • platform/chromium-win-xp/svg/text/bidi-text-anchor-direction-expected.txt: Removed.
  • platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-default-context-expected.txt:
  • platform/chromium-win/svg/W3C-I18N/tspan-dirNone-ubOverride-in-ltr-context-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/animate-elem-04-t-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/coords-trans-04-t-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-text-01-b-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/text-text-01-b-expected.txt:
  • platform/chromium-win/svg/batik/text/verticalTextOnPath-expected.txt:
  • platform/chromium-win/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/chromium-win/svg/custom/tref-update-expected.txt:
  • platform/chromium-win/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/chromium-win/svg/text/select-textLength-spacing-squeeze-2-expected.txt:
  • platform/chromium-win/svg/text/select-textLength-spacing-squeeze-4-expected.png:
  • platform/chromium-win/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.txt:
  • platform/chromium-win/svg/text/text-align-02-b-expected.png:
  • platform/chromium-win/svg/text/text-align-03-b-expected.png:
  • platform/chromium-win/svg/text/text-align-04-b-expected.txt:
  • platform/chromium-win/svg/text/text-align-06-b-expected.png:
  • platform/chromium-win/svg/text/text-align-06-b-expected.txt:
  • platform/chromium-win/svg/text/text-spacing-01-b-expected.png:
  • platform/chromium-win/svg/text/text-text-01-b-expected.txt:
  • platform/chromium-win/svg/text/text-tspan-01-b-expected.txt:
  • platform/chromium-win/svg/text/text-ws-01-t-expected.txt:
  • platform/chromium-win/svg/text/text-ws-02-t-expected.txt:
  • platform/chromium-win/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/chromium-win/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
  • platform/chromium-win/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png:
  • platform/chromium-win/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt:
  • platform/chromium/svg/text/bidi-text-anchor-direction-expected.png: Removed.
10:03 Changeset [105072] by danw@gnome.org

Add myself as a committer

Unreviewed

  • Scripts/webkitpy/common/config/committers.py:
09:31 Changeset [105071] by pfeldman@chromium.org

Web Inspector: timeline record bars may overlap with the records column
https://bugs.webkit.org/show_bug.cgi?id=76387

Reviewed by Yury Semikhatsky.

  • inspector/front-end/timelinePanel.css:

(#timeline-container .split-view-sidebar-left):

09:24 Changeset [105070] by apavlov@chromium.org

Web Inspector: styles sidebar rendering is broken
https://bugs.webkit.org/show_bug.cgi?id=76065

Reviewed by Pavel Feldman.

Source/WebCore:

  • inspector/front-end/StylesSidebarPane.js:

(WebInspector.StylePropertiesSection):

  • inspector/front-end/elementsPanel.css:

(.styles-section .header .subtitle):
(.styles-section .properties):

LayoutTests:

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

(initialize_ElementTest.InspectorTest.dumpSelectedElementStyles): Fix dump output due to DOM changes.

09:18 Changeset [105069] by kubo@profusion.mobi

Unreviewed; fix the build when --as-needed and --no-copy-dt-needed-entries are passed to the linker.

Some recent versions of a few Linux distributions have started passing
--as-needed and --no-copy-dt-needed-entries by default to the linker,
which broke the build when SHARED_CORE was turned on, as libwtf_efl.so
needed a few symbols from libjavascriptcore_efl.so.

  • DumpRenderTree/efl/CMakeLists.txt: Explicitly pass WTF_LIBRARY_NAME

before JavaScriptCore_LIBRARY_NAME in DumpRenderTree_LIBRARIES so the
libraries are searched in the right order by the linker.

09:17 Changeset [105068] by ossy@webkit.org

[Qt] Inremental build problem revealed by https://bugs.webkit.org/show_bug.cgi?id=74455

Reviewed by Tor Arne Vestbø.

  • DerivedSources.pri: supplemental_dependency.tmp must depends on idl files too.
08:56 Changeset [105067] by pfeldman@chromium.org

Web Inspector: do not merge iframes into a single DOM hierarchy.
https://bugs.webkit.org/show_bug.cgi?id=76383

Reviewed by Timothy Hatcher.

Source/WebCore:

  • inspector/DOMEditor.h:
  • inspector/Inspector.json:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::unbind):
(WebCore::InspectorDOMAgent::buildObjectForNode):
(WebCore::InspectorDOMAgent::innerFirstChild):
(WebCore::InspectorDOMAgent::innerParentNode):

  • inspector/front-end/CSSStyleModel.js:

(WebInspector.CSSStyleModel.prototype.setRuleSelector.callback):
(WebInspector.CSSStyleModel.prototype.setRuleSelector):
(WebInspector.CSSStyleModel.prototype.addRule.callback):
(WebInspector.CSSStyleModel.prototype.addRule):
(WebInspector.CSSStyleModel.prototype._ownerDocumentId):

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype._insertChild):
(WebInspector.DOMNode.prototype._setChildrenPayload):
(WebInspector.DOMDocument):
(WebInspector.DOMAgent.prototype._setDetachedRoot):

  • inspector/front-end/ElementsTreeOutline.js:

LayoutTests:

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

(initialize_ElementTest.InspectorTest.findNode.processChildren):

  • inspector/console/console-dirxml-expected.txt:
  • inspector/console/console-tests-expected.txt:
  • inspector/elements/set-outer-html-body.html:
  • inspector/styles/styles-iframe.html:
08:47 Changeset [105066] by vsevik@chromium.org

Web Inspector: setCurrentFocusElement should not update selection when focus is moved to text field or text area.
https://bugs.webkit.org/show_bug.cgi?id=76384

Reviewed by Timothy Hatcher.

  • inspector/front-end/JavaScriptOutlineDialog.js:

(WebInspector.JavaScriptOutlineDialog):

  • inspector/front-end/UIUtils.js:

(WebInspector._isTextEditingElement):
(WebInspector.setCurrentFocusElement):

08:13 Changeset [105065] by philn@webkit.org

[GTK] set audio resources path in NRTW
https://bugs.webkit.org/show_bug.cgi?id=76380

Reviewed by Martin Robinson.

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

(GtkPort.setup_environ_for_server): Set $AUDIO_RESOURCES_PATH so
the uninstalled audio resources are used during webaudio tests.

08:08 Changeset [105064] by philn@webkit.org

Unreviewed, GTK rebaseline after r105061.

  • platform/gtk/svg/carto.net/colourpicker-expected.txt:
  • platform/gtk/svg/carto.net/combobox-expected.txt:
  • platform/gtk/svg/carto.net/slider-expected.txt:
  • platform/gtk/svg/carto.net/textbox-expected.txt:
08:00 Changeset [105063] by philn@webkit.org

Unreviewed, GTK baselines for new tests.

  • platform/gtk/css2.1/20110323/border-collapse-offset-002-expected.txt: Added.
  • platform/gtk/css2.1/20110323/outline-color-applies-to-008-expected.txt: Added.
  • platform/gtk/fast/borders/border-image-slice-constrained-expected.txt: Added.
  • platform/gtk/fast/text/unicode-variation-selector-expected.txt: Added.
  • platform/gtk/http/tests/media/video-buffering-repaints-controls-expected.txt: Added.
  • platform/gtk/media/video-colorspace-yuv420-expected.txt: Added.
  • platform/gtk/media/video-colorspace-yuv422-expected.txt: Added.
  • platform/gtk/svg/custom/pattern-userSpaceOnUse-userToBaseTransform-expected.txt: Added.
  • platform/gtk/svg/filters/filter-refresh-expected.txt: Added.
06:28 Changeset [105062] by commit-queue@webkit.org

[Qt] Remove references to PagePointer in the FrameNetworkingContext
https://bugs.webkit.org/show_bug.cgi?id=76342

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-16
Reviewed by Simon Hausmann.

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::createNetworkingContext):

  • WebProcess/qt/QtNetworkAccessManager.cpp:

(WebKit::QtNetworkAccessManager::obtainOriginatingWebPage):

  • WebProcess/qt/QtNetworkAccessManager.h:
06:04 Changeset [105061] by zimmermann@webkit.org

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Source/WebCore:

Enable simple code path in SVGTextMetricsBuilder, allowing fast-measurement of simple text.
This affects the geometry of several <text> elements, thus several tests need rebaselining.

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceComplexText):

LayoutTests:

Update some test results after enabling the simple code path to measure SVG text.

  • platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/animate-elem-06-t-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/filters-comptran-01-b-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/text-text-01-b-expected.txt:
  • platform/mac/svg/batik/text/smallFonts-expected.png:
  • platform/mac/svg/batik/text/textAnchor-expected.txt:
  • platform/mac/svg/carto.net/window-expected.png:
  • platform/mac/svg/carto.net/window-expected.txt:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-clipPath-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-gradient-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.png:
  • platform/mac/svg/custom/js-late-pattern-and-object-creation-expected.txt:
  • platform/mac/svg/custom/text-repaint-including-stroke-expected.png:
  • platform/mac/svg/custom/use-clipped-hit-expected.txt:
  • platform/mac/svg/custom/use-detach-expected.png:
  • platform/mac/svg/custom/use-detach-expected.txt:
  • platform/mac/svg/foreignObject/text-tref-02-b-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-1-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-2-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-3-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.png:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-squeeze-4-expected.txt:
  • platform/mac/svg/text/select-textLength-spacingAndGlyphs-stretch-4-expected.txt:
  • platform/mac/svg/text/text-align-01-b-expected.png:
  • platform/mac/svg/text/text-align-01-b-expected.txt:
  • platform/mac/svg/text/text-align-02-b-expected.txt:
  • platform/mac/svg/text/text-align-04-b-expected.txt:
  • platform/mac/svg/text/text-align-06-b-expected.png:
  • platform/mac/svg/text/text-align-06-b-expected.txt:
  • platform/mac/svg/text/text-deco-01-b-expected.txt:
  • platform/mac/svg/text/text-fonts-01-t-expected.txt:
  • platform/mac/svg/text/text-spacing-01-b-expected.png:
  • platform/mac/svg/text/text-text-04-t-expected.png:
  • platform/mac/svg/text/text-text-05-t-expected.png:
  • platform/mac/svg/transforms/text-with-pattern-inside-transformed-html-expected.txt:
  • platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.png:
  • platform/mac/svg/transforms/text-with-pattern-with-svg-transform-expected.txt:
05:44 Changeset [105060] by commit-queue@webkit.org

Web Inspector: CodeGeneratorInspector.py: generate array types.
https://bugs.webkit.org/show_bug.cgi?id=75284

Patch by Peter Rybin <peter.rybin@gmail.com> on 2012-01-16
Reviewed by Yury Semikhatsky.

New classes are generated for ecah array type instance. Some includes
and ifdefs are fixed.

  • inspector/CodeGeneratorInspector.py:

(ArrayBinding):
(ArrayBinding.get_code_generator):
(ArrayBinding.get_code_generator.CodeGenerator):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
(ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
(ArrayBinding.get_code_generator.CodeGenerator.generate_forward_declaration):
(ArrayBinding.get_code_generator.CodeGenerator.register_use):
(ArrayBinding.get_in_c_type_text):
(ArrayBinding.get_setter_value_expression_pattern):
(ArrayBinding.reduce_to_raw_type):
(RawTypeBinding):
(RawTypeBinding.init):
(RawTypeBinding.get_code_generator):
(RawTypeBinding.get_in_c_type_text):
(RawTypeBinding.get_setter_value_expression_pattern):
(RawTypeBinding.reduce_to_raw_type):
(TypeData.init):
(TypeData.get_binding):

  • inspector/ConsoleMessage.cpp:
  • inspector/InspectorValues.h:
05:40 Changeset [105059] by carlosgc@webkit.org

[GTK] Update NEWS and configure.ac for 1.7.4 release
https://bugs.webkit.org/show_bug.cgi?id=76375

Reviewed by Philippe Normand.

.:

  • configure.ac: Bumped version number.

Source/WebKit/gtk:

  • NEWS: Added release notes for 1.7.4.
05:35 Changeset [105058] by pfeldman@chromium.org

Web Inspector: editing body multiplies head
https://bugs.webkit.org/show_bug.cgi?id=62272

Patch by Pavel Feldman <pfeldman@chromium.org> on 2012-01-15
Reviewed by Yury Semikhatsky.

Source/WebCore:

Test: inspector/elements/set-outer-html-body.html

  • inspector/DOMEditor.cpp:

(WebCore::DOMEditor::patchDocument):
(WebCore::DOMEditor::patchNode):
(WebCore::DOMEditor::innerPatchChildren):
(WebCore::DOMEditor::insertBefore):

  • inspector/DOMEditor.h:
  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setOuterHTML):

LayoutTests:

  • inspector/elements/resources/set-outer-html-body-iframe.html: Added.
  • inspector/elements/set-outer-html-body-expected.txt: Added.
  • inspector/elements/set-outer-html-body.html: Added.
05:08 Changeset [105057] by zimmermann@webkit.org

Large SVG text layout performance regression in r81168
https://bugs.webkit.org/show_bug.cgi?id=65711

Reviewed by Zoltan Herczeg.

Change the way we store x/y/dx/dy/rotate values for a <text> element and its ancestors.

SVGTextLayoutAttributesBuilder used to hold a Vector<float> for x/y/dx/dy/rotate, each as big
as the whole text subtree length. For each character, that has an absolute position, or rotation
the value was stored in this list. For all other characters a special empty value marker was stored.

This is highly inefficient, and is now replaced with a HashMap<unsigned, SVGCharacterData> where
SVGCharacterData is a struct, holding float x/y/dx/dy/rotate. The code is now optimized for the
common case, where only a few characters actually specify such values, eg:
<text x="50" y="90">looooong text<tspan x="50" y="30">abc</tspan></text>.

NOTE: There are still some inefficiencies in this patch (especially the copying of SVGTextLayoutAttributes).
To keep the patch size smaller, I decided to fix this in another patch, and only fix the memory issue with this patch.

This reduces the memory consumption from 35MB to 10MB on the attached testcase in bug 65711.

Doesn't affect any test, yet. A follow-up commit will enable the usage of the simple code path, using WidthIterator,
in SVGTextMetricsBuilder, which will result in several layout test changes, because of geometry changes.

  • rendering/svg/RenderSVGInlineText.cpp:

(WebCore::RenderSVGInlineText::RenderSVGInlineText):
(WebCore::RenderSVGInlineText::characterStartsNewTextChunk):

  • rendering/svg/RenderSVGInlineText.h:

(WebCore::RenderSVGInlineText::layoutAttributes):

  • rendering/svg/RenderSVGText.cpp:

(WebCore::RenderSVGText::layout):
(WebCore::recursiveCollectLayoutAttributes):
(WebCore::RenderSVGText::rebuildLayoutAttributes):

  • rendering/svg/RenderSVGText.h:
  • rendering/svg/SVGRootInlineBox.cpp:

(WebCore::SVGRootInlineBox::computePerCharacterLayoutInformation):
(WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
(WebCore::SVGRootInlineBox::closestLeafChildForPosition):
(WebCore::swapItemsInLayoutAttributes):
(WebCore::findFirstAndLastAttributesInVector):
(WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):

  • rendering/svg/SVGTextLayoutAttributes.cpp:

(WebCore::SVGTextLayoutAttributes::clear):
(WebCore::dumpSVGCharacterDataMapValue):
(WebCore::SVGTextLayoutAttributes::dump):

  • rendering/svg/SVGTextLayoutAttributes.h:

(WebCore::SVGTextLayoutAttributes::characterDataMap):

  • rendering/svg/SVGTextLayoutAttributesBuilder.cpp:

(WebCore::SVGTextLayoutAttributesBuilder::SVGTextLayoutAttributesBuilder):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesForWholeTree):
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForTextRenderer):
(WebCore::SVGTextLayoutAttributesBuilder::rebuildMetricsForWholeTree):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributesIfNeeded):
(WebCore::processRenderSVGInlineText):
(WebCore::SVGTextLayoutAttributesBuilder::collectTextPositioningElements):
(WebCore::SVGTextLayoutAttributesBuilder::buildLayoutAttributes):
(WebCore::updateCharacterData):
(WebCore::SVGTextLayoutAttributesBuilder::fillCharacterDataMap):

  • rendering/svg/SVGTextLayoutAttributesBuilder.h:

(WebCore::SVGTextLayoutAttributesBuilder::clearTextPositioningElements):

  • rendering/svg/SVGTextLayoutEngine.cpp:

(WebCore::SVGTextLayoutEngine::updateRelativePositionAdjustmentsIfNeeded):
(WebCore::SVGTextLayoutEngine::currentLogicalCharacterAttributes):
(WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath):

  • rendering/svg/SVGTextLayoutEngine.h:

(WebCore::SVGTextLayoutEngine::layoutAttributes):

  • rendering/svg/SVGTextMetricsBuilder.cpp:

(WebCore::SVGTextMetricsBuilder::advance):
(WebCore::SVGTextMetricsBuilder::advanceComplexText):
(WebCore::SVGTextMetricsBuilder::measureTextRenderer):

  • rendering/svg/SVGTextQuery.cpp:

(WebCore::SVGTextQuery::modifyStartEndPositionsRespectingLigatures):

05:00 Changeset [105056] by kling@webkit.org

CSSCanvasValue can't be renamed, enforce this at compile-time.
<http://webkit.org/b/76352>

Reviewed by Antti Koivisto.

Have the CSSCanvasValue constructor take the name as an argument instead of
having a setName() that's only called from one place in CSSParser.

  • css/CSSCanvasValue.h:

(WebCore::CSSCanvasValue::create):
(WebCore::CSSCanvasValue::CSSCanvasValue):

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseCanvas):

04:57 Changeset [105055] by kling@webkit.org

CSSStyleSelector: Dodge parser when creating default LTR/RTL declarations.
<http://webkit.org/b/76374>

Reviewed by Antti Koivisto.

Pass CSSValueLtr/CSSValueRtl directly to setProperty() instead of parsing "ltr"/"rtl".

  • css/CSSStyleSelector.cpp:

(WebCore::leftToRightDeclaration):
(WebCore::rightToLeftDeclaration):

04:25 Changeset [105054] by carlosgc@webkit.org

Unreviewed. Fix make distcheck.

Source/JavaScriptCore:

  • GNUmakefile.list.am: Fix typo.

Source/WebCore:

  • GNUmakefile.list.am: Add missing files.
04:19 Changeset [105053] by carlosgc@webkit.org

[GTK] ldflags and cflags should take precedence over the existing flags in gtkdoc.py
https://bugs.webkit.org/show_bug.cgi?id=76369

Reviewed by Xan Lopez.

If there's an installed version of webkit and there are new
symbols in the build tree, gtkdoc-scanobj fails due to undefined
references, because the env ldflags are given before the local
ones.

  • gtk/gtkdoc.py:

(GTKDoc._run_gtkdoc_scangobj):

04:05 Changeset [105052] by rolandsteiner@chromium.org

CSSStyleSelector constructor and appendAuthorStylesheets() contain duplicated code
https://bugs.webkit.org/show_bug.cgi?id=76043

Re-use appendAuthorStylesheets() from within CSSStyleSelector constructor.

Reviewed by Antti Koivisto.

No new tests. (refactoring)

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::CSSStyleSelector):

  • css/StyleSheetList.h:

(WebCore::StyleSheetList::vector):

03:40 UsingGitWithWebKit edited by peter@chromium.org
Revert spam-change (diff)
03:39 BuildBot edited by peter@chromium.org
Revert spam-change (diff)
03:32 Changeset [105051] by commit-queue@webkit.org

Unreviewed, rolling out r105040.
http://trac.webkit.org/changeset/105040
https://bugs.webkit.org/show_bug.cgi?id=76373

Breaks Win (dbg) canary builder (Requested by apavlov on
#webkit).

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

  • WebKit.gypi:
  • tests/DispatchEventTest.cpp: Removed.
  • tests/data/event_target.html: Removed.
03:31 Changeset [105050] by commit-queue@webkit.org

[crash] Renderer crashes when spell checking a disabled input field.
https://bugs.webkit.org/show_bug.cgi?id=75941

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-16
Reviewed by Hajime Morita.

.:

  • ManualTests/editing-disabled-node-replace-crash.html: Added.

Source/WebCore:

We confirm the selection is editable before replacing text.

Tests: ManualTests/editing-disabled-node-replace-crash.html

  • editing/Editor.cpp:

(WebCore::Editor::replaceSelectionWithFragment):

  • editing/ReplaceSelectionCommand.cpp:

(WebCore::ReplaceSelectionCommand::doApply):

03:28 Changeset [105049] by commit-queue@webkit.org

Fix compilation errors on build-webkit --debug --no-svg --no-svg-fonts --no-svg-dom-objc-bindings on mac.
https://bugs.webkit.org/show_bug.cgi?id=75865

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-16
Reviewed by Hajime Morita.

Source/WebCore:

  • WebCore.exp.in:
  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyDisplay::isValidDisplayValue):

  • loader/cache/CachedImage.cpp:

(WebCore::CachedImage::setContainerSizeForRenderer):
(WebCore::CachedImage::imageSizeForRenderer):

  • platform/graphics/FontFastPath.cpp:

(WebCore::Font::drawGlyphBuffer):

  • rendering/FilterEffectRenderer.cpp:
  • svg/SVGElementInstance.idl:

Source/WebKit/mac:

  • WebView/WebFrame.mm:

(-[WebFrame _pauseSVGAnimation:onSMILNode:atTime:]):

03:09 Changeset [105048] by commit-queue@webkit.org

Compilation error on build-webkit --debug --no-request-animation-frame on mac.
https://bugs.webkit.org/show_bug.cgi?id=75875

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-16
Reviewed by Hajime Morita.

  • dom/Document.cpp:

(WebCore::Document::windowScreenDidChange):

03:04 Changeset [105047] by apavlov@chromium.org

[Chromium] Unreviewed, mark two inspector/debugger tests as SLOW on Linux Debug.

  • platform/chromium/test_expectations.txt:
02:55 Changeset [105046] by apavlov@chromium.org

[Chromium] Unreviewed, suppres webaudio/gain.html failures on Windows.

  • platform/chromium/test_expectations.txt:
02:51 Changeset [105045] by ossy@webkit.org

Web Inspector: Fix GoToLineDialog and extract common dialog functionality.
https://bugs.webkit.org/show_bug.cgi?id=69341

Unreviewed trivial buildfix/typo fix after r105043.

  • inspector/front-end/WebKit.qrc:
02:23 Changeset [105044] by commit-queue@webkit.org

Solaris Studio supports alignment macros too
https://bugs.webkit.org/show_bug.cgi?id=75453

Patch by Pavel Heimlich <tropikhajma@gmail.com> on 2012-01-16
Reviewed by Hajime Morita.

  • wtf/Alignment.h:
01:56 Changeset [105043] by vsevik@chromium.org

Web Inspector: Fix GoToLineDialog and extract common dialog functionality.
https://bugs.webkit.org/show_bug.cgi?id=69341

Fixed dialog: in old implementation dialog never hides if you press mouse button
on Go button and release it somewhere else.
Dialog functionality extracted to be used for search dialog.

Reviewed by Pavel Feldman.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/compile-front-end.sh:
  • inspector/front-end/Dialog.js: Added.

(WebInspector.Dialog):
(WebInspector.Dialog.show):
(WebInspector.Dialog.prototype._hide):
(WebInspector.Dialog.prototype._onFocus):
(WebInspector.Dialog.prototype._doFocus):
(WebInspector.Dialog.prototype._position):
(WebInspector.Dialog.prototype._onKeyDown):
(WebInspector.Dialog.prototype._onClick):
(WebInspector.DialogDelegate):
(WebInspector.DialogDelegate.prototype.get defaultFocusedElement):
(WebInspector.DialogDelegate.prototype.get okButton):
(WebInspector.DialogDelegate.prototype.onAction):

  • inspector/front-end/GoToLineDialog.js:

(WebInspector.GoToLineDialog):
(WebInspector.GoToLineDialog._show):
(WebInspector.GoToLineDialog.prototype.get defaultFocusedElement):
(WebInspector.GoToLineDialog.prototype.get okButton):
(WebInspector.GoToLineDialog.prototype.onAction):

  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/dialog.css: Renamed from Source/WebCore/inspector/front-end/goToLineDialog.css.

(.dialog-glass-pane):
(.dialog):
(.dialog-contents):
(.go-to-line-dialog input):
(.go-to-line-dialog button):
(.go-to-line-dialog button:active):

  • inspector/front-end/inspector.html:
01:41 Changeset [105042] by ryuan.choi@samsung.com

[EFL] Build fix when using pango as font backends.
https://bugs.webkit.org/show_bug.cgi?id=76368

Unreviewed build fix.

  • ewk/ewk_view.cpp: include RefPtrCairo.h
01:37 Changeset [105041] by jochen@chromium.org

ScriptRunner should also keep references to pending async scripts
https://bugs.webkit.org/show_bug.cgi?id=76350

Reviewed by Adam Barth.

Source/WebCore:

The CachedResourceLoader only keeps a raw pointer to a ScriptElement.
If an async ScriptElement is removed from the document before it is
executed, it might be garbage collected before the script is loaded, so
it's never run.

By making the ScriptRunner keep an explicit reference to the
ScriptElement while it's loading (as is done for sync ScriptElements),
we can guarantee that the ScriptElement lives until it is executed.

No more flaky timeouts: http/tests/misc/async-script.html:

  • dom/ScriptElement.cpp:

(WebCore::ScriptElement::prepareScript):
(WebCore::ScriptElement::notifyFinished):

  • dom/ScriptRunner.cpp:

(WebCore::ScriptRunner::~ScriptRunner):
(WebCore::ScriptRunner::queueScriptForExecution):
(WebCore::ScriptRunner::notifyScriptReady):

  • dom/ScriptRunner.h:

(WebCore::ScriptRunner::hasPendingScripts):

LayoutTests:

  • http/tests/misc/async-script.html:
  • platform/qt/Skipped: unskip http/tests/misc/async-script.html
01:23 Changeset [105040] by commit-queue@webkit.org

Reland chromium event dispatch test from https://bugs.webkit.org/show_bug.cgi?id=72988
https://bugs.webkit.org/show_bug.cgi?id=73837

The original patch had a mistake that caused it to fail (not sure how I
missed that or why the bots didn't catch it).

Patch by Dave Michael <dmichael@chromium.org> on 2012-01-16
Reviewed by Hajime Morita.

  • WebKit.gypi:
  • tests/DispatchEventTest.cpp: Added.

(WebKit::MockListener::MockListener):
(WebKit::MockListener::~MockListener):
(WebKit::MockListener::events):
(WebKit::DispatchEventTest::DispatchEventTest):
(WebKit::DispatchEventTest::TearDown):
(WebKit::DispatchEventTest::createMessageEvent):
(WebKit::TEST_F):

  • tests/data/event_target.html: Added.
01:16 Changeset [105039] by reni@webkit.org

Unreviewed build fix; added WebCore.exp.in changes lost in r105036.

  • WebCore.exp.in:
00:47 Changeset [105038] by ossy@webkit.org

ScriptRunner should also keep references to pending async scripts
https://bugs.webkit.org/show_bug.cgi?id=76350

  • platform/qt/Skipped: Skip http/tests/misc/async-script.html until fix.
00:42 Changeset [105037] by yuqiang.xian@intel.com

Build fix on 32bit if verbose debug is enabled in DFG
https://bugs.webkit.org/show_bug.cgi?id=76351

Reviewed by Hajime Morita.

Mostly change "%lu" to "%zu" to print a "size_t" variable.

  • dfg/DFGAbstractState.cpp:

(JSC::DFG::AbstractState::endBasicBlock):

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::parseCodeBlock):

  • dfg/DFGGraph.cpp:

(JSC::DFG::Graph::predictArgumentTypes):

  • dfg/DFGJITCompiler.cpp:

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

  • dfg/DFGOSREntry.cpp:

(JSC::DFG::prepareOSREntry):

01/15/12:

23:33 Changeset [105036] by commit-queue@webkit.org

Add DeviceOrientationEvent.absolute
https://bugs.webkit.org/show_bug.cgi?id=51742

Patch by Xinchao He <xinchao.he@intel.com> on 2012-01-15
Reviewed by Darin Fisher.

This patch add the DeviceOrientationEvent.absolute to follow the
latest w3c device orientation event spec.
http://www.w3.org/TR/orientation-event/

Source/WebCore:

  • bindings/js/JSDeviceOrientationEventCustom.cpp:

(WebCore::JSDeviceOrientationEvent::absolute):
(WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):

  • bindings/v8/custom/V8DeviceOrientationEventCustom.cpp:

(WebCore::V8DeviceOrientationEvent::absoluteAccessorGetter):
(WebCore::V8DeviceOrientationEvent::initDeviceOrientationEventCallback):

  • dom/DeviceOrientation.cpp:

(WebCore::DeviceOrientation::create):
(WebCore::DeviceOrientation::DeviceOrientation):
(WebCore::DeviceOrientation::absolute):
(WebCore::DeviceOrientation::canProvideAbsolute):

  • dom/DeviceOrientation.h:
  • dom/DeviceOrientationEvent.idl:

Source/WebKit/chromium:

  • public/WebDeviceOrientation.h:

(WebKit::WebDeviceOrientation::WebDeviceOrientation):
(WebKit::WebDeviceOrientation::canProvideAbsolute):
(WebKit::WebDeviceOrientation::absolute):

  • src/WebDeviceOrientation.cpp:

(WebKit::WebDeviceOrientation::WebDeviceOrientation):
(WebKit::WebDeviceOrientation::operator=):
(WebKit::WebDeviceOrientation::operator PassRefPtr<WebCore::DeviceOrientation>):

20:03 Changeset [105035] by fpizlo@apple.com

The C calling convention logic in DFG::SpeculativeJIT should be available even
when not generating code for the DFG speculative path
https://bugs.webkit.org/show_bug.cgi?id=76355

Reviewed by Dan Bernstein.

Moved all of the logic for placing C call arguments into the right place (stack
or registers) into a new class, DFG::CCallHelpers. This class inherits from
AssemblyHelpers, another DFG grab-bag of helper functions. I could have moved
this code into AssemblyHelpers, but decided against it, because I wanted to
limit the number of methods each class in the JIT has. Hence now we have a
slightly odd organization of JIT classes in DFG: MacroAssembler (basic instruction
emission) <= AssemblyHelpers (some additional JS smarts) <= CCallHelpers
(understands calls to C functions) <= JITCompiler (can compile a graph to machine
code). Each of these except for JITCompiler can be reused for stub compilation.

  • GNUmakefile.list.am:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • dfg/DFGCCallHelpers.h: Added.

(JSC::DFG::CCallHelpers::CCallHelpers):
(JSC::DFG::CCallHelpers::resetCallArguments):
(JSC::DFG::CCallHelpers::addCallArgument):
(JSC::DFG::CCallHelpers::setupArguments):
(JSC::DFG::CCallHelpers::setupArgumentsExecState):
(JSC::DFG::CCallHelpers::setupArgumentsWithExecState):
(JSC::DFG::CCallHelpers::setupTwoStubArgs):
(JSC::DFG::CCallHelpers::setupStubArguments):

  • dfg/DFGJITCompiler.h:

(JSC::DFG::JITCompiler::JITCompiler):

  • dfg/DFGSpeculativeJIT.h:

(JSC::DFG::SpeculativeJIT::callOperation):

16:57 Changeset [105034] by kling@webkit.org

Fix wrong bug URL in ChangeLog.

15:18 Changeset [105033] by macpherson@chromium.org

Remove external references to CSSPrimitiveValue::UnitTypes enum.
https://bugs.webkit.org/show_bug.cgi?id=76229

Reviewed by Darin Adler.

No new tests / refactoring only.

  • css/CSSFontSelector.cpp:

(WebCore::CSSFontSelector::addFontFaceRule):

  • css/CSSGradientValue.cpp:

(WebCore::CSSGradientValue::addStops):
(WebCore::positionFromValue):
(WebCore::CSSGradientValue::isCacheable):
(WebCore::CSSRadialGradientValue::resolveRadius):
(WebCore::CSSRadialGradientValue::createGradient):

  • css/CSSPrimitiveValue.h:

(WebCore::CSSPrimitiveValue::isUnitTypeLength):
(WebCore::CSSPrimitiveValue::isFontRelativeLength):
(WebCore::CSSPrimitiveValue::isIdent):
(WebCore::CSSPrimitiveValue::isNumber):
(WebCore::CSSPrimitiveValue::isPercentage):
(WebCore::CSSPrimitiveValue::isString):
(WebCore::CSSPrimitiveValue::isURI):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyLength::applyValue):
(WebCore::ApplyPropertyBorderRadius::applyValue):
(WebCore::ApplyPropertyFontSize::applyValue):
(WebCore::ApplyPropertyCursor::applyValue):
(WebCore::ApplyPropertyPageSize::applyValue):
(WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
(WebCore::ApplyPropertyZoom::applyValue):

15:08 BuildBot edited by gulendekorasyon@gmail.com
(diff)
15:07 WikiStart edited by gulendekorasyon@gmail.com
(diff)
15:06 UsingGitWithWebKit edited by gulendekorasyon@gmail.com
(diff)
15:02 WikiStart edited by gulendekorasyon@gmail.com
(diff)
12:14 Changeset [105032] by commit-queue@webkit.org

Fix compilation errors on build-webkit --debug --no-video on mac.
https://bugs.webkit.org/show_bug.cgi?id=75867

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-15
Reviewed by Philippe Normand.

Source/JavaScriptCore:

Make ENABLE_VIDEO_TRACK conditional on ENABLE_VIDEO, video track feature
doesn't build without video.

  • wtf/Platform.h:

Source/WebCore:

  • Some exported HTMLMediaElement symbols were guarded by FULLSCREEN_API feature instead of VIDEO.
  • Unused parameter warning in CanvasRenderingContext::wouldTaintOrigin().
  • RenderThemeMac::shouldShowPlaceholderWhenFocused() implementation wrongly guarded by VIDEO feature.
  • WebCore.exp.in:
  • html/canvas/CanvasRenderingContext.cpp:

(WebCore::CanvasRenderingContext::wouldTaintOrigin):

  • rendering/RenderThemeMac.mm:

Source/WebKit/mac:

  • WebChromeClient::fullScreenRendererChanged() declaration wrongly guarded by VIDEO feature instead of FULLSCREEN_API.
  • _isAnyMoviePlaying implementation depends on VIDEO.
  • WebCoreSupport/WebChromeClient.h:
  • WebView/WebFullScreenController.mm:

(-[WebFullScreenController _isAnyMoviePlaying]):

Tools:

Add --[no-]video-track to build-webkit, since video track feature
depends on video.

  • Scripts/build-webkit:
11:42 Changeset [105031] by kling@webkit.org

CSSParser: Fix failing assertion below BorderImageQuadParseContext.
<http://webkit.org/b/76343> and <rdar://problem/10584969>

Reviewed by Antti Koivisto.

No longer asserts: fast/borders/inline-mask-overlay-image-outset-vertical-rl.html

  • css/CSSParser.cpp:

(WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
(WebCore::BorderImageQuadParseContext::commitBorderImageQuad):

Clone CSSValues by copying the RefPtrs instead of going through
the CSSValuePool's create-from-double factory. This prevents an
assertion when the incoming value is CSSValueAuto.

11:01 WikiStart edited by robert@roberthogan.net
(diff)
09:17 Changeset [105030] by robert@webkit.org

<embed> width and height properties propagate to parent object node
https://bugs.webkit.org/show_bug.cgi?id=17688

Reviewed by Eric Seidel.

Source/WebCore:

Test: fast/images/embed-does-not-propagate-dimensions-to-object-ancestor.html

WebKit seems to have inherited this behaviour from KHTML. When the width/height
of an <embed> element is set, it propagates the values up to any parent <object>
element. There doesn't seem to be any good reason for this and it is not consistent
with the behaviour of Firefox and Opera.

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::insertedIntoDocument):
(WebCore::HTMLEmbedElement::attributeChanged): Removed

  • html/HTMLEmbedElement.h:

(WebCore::HTMLEmbedElement::attributeChanged): Removed

LayoutTests:

  • fast/dom/insertedIntoDocument-child-expected.txt:
  • fast/dom/insertedIntoDocument-sibling-expected.txt: These tests were added by http://trac.webkit.org/changeset/81611. The fact that an <embed> element inserted into the document no longer passes its height/width up to its parent object node seems to prevent the node getting removed by a simple garbage collection now so the <embed> added by the test is still there at the end, creating the trailing spaces. This is consistent with Opera's treatment of the test, FF is entirely different - it doesn't add the embed node in the first place. So given that the purpose of the test is to cause a crash (?), the change in result seems benign.
  • fast/images/embed-does-not-propagate-dimensions-to-object-ancestor-expected.txt: Added.
  • fast/images/embed-does-not-propagate-dimensions-to-object-ancestor.html: Added. This tests that the width/height for an embed element does not get propagated to the parent object.
06:20 WikiStart edited by gulendekorasyon@gmail.com
(diff)
05:48 Changeset [105029] by robert@webkit.org

compareBorders() is called too often during painting
https://bugs.webkit.org/show_bug.cgi?id=73349

Reviewed by Julien Chaffraix.

Collapsed borders are re-calculated every time they are painted.
This is unnecessary, they only change with the layout or style so calculate and
cache them whenever the layout or style changes and use the cached values when
painting. The cache is stored in the table section so that the memory footprint
of a table is only increased when it has collapsing borders.

The gain in performance here consists of skipping collapsed border computation
during painting. The only path that incurs a small performance penalty is the
additional get/set on the cache when a collapsed border is computed. This penalty only applies
during style change, layout, or when the width of the table is calculated. The computed
border value is not stored in the cache when it has been calculated without its color
for borderHalfStart and co., so that code path is unaffected by this change.

No new tests, covered by existing collapsed border tests.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::willBeDestroyed): remove entries from collapsed border cache
(WebCore::RenderTableCell::collapsedStartBorder):

Compute, and also cache if the full border including color was computed.

(WebCore::RenderTableCell::computeCollapsedStartBorder):
(WebCore::RenderTableCell::collapsedEndBorder): ditto
(WebCore::RenderTableCell::computeCollapsedEndBorder):
(WebCore::RenderTableCell::collapsedBeforeBorder): ditto
(WebCore::RenderTableCell::computeCollapsedBeforeBorder):
(WebCore::RenderTableCell::collapsedAfterBorder): ditto
(WebCore::RenderTableCell::computeCollapsedAfterBorder):
(WebCore::RenderTableCell::cachedCollapsedLeftBorder):

Inline the function since it is only called in paintCollapsedBorders and remove
includeColor as a parameter. Move the call to the table's style to the caller rather
than call it 4 times in a row. Use the cached border values directly.

(WebCore::RenderTableCell::cachedCollapsedRightBorder): ditto
(WebCore::RenderTableCell::cachedCollapsedTopBorder): ditto
(WebCore::RenderTableCell::cachedCollapsedBottomBorder): ditto
(WebCore::RenderTableCell::paintCollapsedBorders):

This function always uses the collapsed border cache now.

  • rendering/RenderTableCell.h: Make the collapsed border functions private.
  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::removeCachedCollapsedBorders): The cache is deleted by the HashMap

since it is the only owner of the cached item.

(WebCore::RenderTableSection::setCachedCollapsedBorder):
(WebCore::RenderTableSection::cachedCollapsedBorder):

This will assert if there is no cached collapsed border for the side of the
cell requested by the caller.

  • rendering/RenderTableSection.h: HashMap wouldn't let me use CollapsedBorderSide in the key value for the cache so use int instead.

01/14/12:

19:14 Changeset [105028] by levin@chromium.org

HWndDC should be in platform/win instead of wtf.
https://bugs.webkit.org/show_bug.cgi?id=76314

Reviewed by Sam Weinig.

Source/JavaScriptCore:

Source/WebCore:

No new functionality, so no new tests.

  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • platform/win/HWndDC.h: Renamed from Source/JavaScriptCore/wtf/win/HWndDCWin.h.

I also made the class non-copyable.
(WebCore::HWndDC::HWndDC):
(WebCore::HWndDC::~HWndDC):
(WebCore::HWndDC::operator HDC):

Source/WebKit/chromium:

  • src/win/WebScreenInfoFactory.cpp:

(WebKit::WebScreenInfoFactory::screenInfo):

17:24 Changeset [105027] by commit-queue@webkit.org

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

Take a page from the Gtk and Qt ports and quiet these logs unless they
are explicitly enabled via environment variable.

Patch by Adam Treat <atreat@rim.com> on 2012-01-14
Reviewed by George Staikos.

  • platform/blackberry/LoggingBlackBerry.cpp:

(WebCore::initializeLoggingChannelsIfNecessary):

16:31 Changeset [105026] by mitz@apple.com

<rdar://problem/10696295> Crash in WebProcess at com.apple.CFNetwork: URLCredentialStorage::CreateCurrentPersistentCredentials + 298

Reviewed by Anders Carlsson.

  • WebProcess/mac/SecItemShimMethods.mm:

(WebKit::initializeSecItemShim): Removed an early return that was accidentally added in r105008.

15:53 Changeset [105025] by robert@webkit.org

Chromium results for test added by r105021

Unreviewed gardening.

  • platform/chromium-linux/css2.1/20110323/outline-color-applies-to-008-expected.png: Added.
  • platform/chromium-mac-leopard/css2.1/20110323/outline-color-applies-to-008-expected.png: Added.
  • platform/chromium-mac-snowleopard/css2.1/20110323/outline-color-applies-to-008-expected.png: Added.
  • platform/chromium-mac-snowleopard/css2.1/20110323/outline-color-applies-to-008-expected.txt: Added.
  • platform/chromium-win/css2.1/20110323/outline-color-applies-to-008-expected.png: Added.
  • platform/chromium-win/css2.1/20110323/outline-color-applies-to-008-expected.txt: Added.
12:46 Changeset [105024] by robert@webkit.org

Change expected failures from IMAGE+TEXT to TEXT on Mac.

The Mac bots do not check pixel results so displays results suppressed
as IMAGE+TEXT as unexpected failures. Change the suppressions to TEXT.
These results require rebaseline since the changes landed in r103251.

Unreviewed gardening.

  • platform/mac/test_expectations.txt:
12:31 Changeset [105023] by robert@webkit.org

Remove reference result added in r105021.

This reference result only works in chromium-linux and qt it seems,
so remove it and allow ports to add port-specific png results.

Unreviewed.

  • css2.1/20110323/outline-color-applies-to-008-expected.html: Removed.
11:28 Changeset [105022] by commit-queue@webkit.org

[chromium] Failing webkit_unit_tests does not make the cr-linux EWS bubble red
https://bugs.webkit.org/show_bug.cgi?id=76313

Patch by James Robinson <jamesr@chromium.org> on 2012-01-14
Reviewed by Adam Barth.

The exit code of this script should be the exit code of webkit_unit_tests. Tested manually.

  • Scripts/run-chromium-webkit-unit-tests:
11:13 Changeset [105021] by robert@webkit.org

CSS 2.1 failure: outline-color-applies-to* tests fail
https://bugs.webkit.org/show_bug.cgi?id=71944

Reviewed by Julien Chaffraix.

Source/WebCore:

Paint the outline color for row, row-group, header-group and footer-group
elements.

Tests: css2.1/20110323/outline-color-applies-to-001.htm

css2.1/20110323/outline-color-applies-to-002.htm
css2.1/20110323/outline-color-applies-to-003.htm
css2.1/20110323/outline-color-applies-to-004.htm
css2.1/20110323/outline-color-applies-to-005.htm
css2.1/20110323/outline-color-applies-to-006.htm
css2.1/20110323/outline-color-applies-to-007.htm
css2.1/20110323/outline-color-applies-to-008.htm
css2.1/20110323/outline-color-applies-to-009.htm
css2.1/20110323/outline-color-applies-to-010.htm
(There is no outline-color-applies-to-011.htm in the test suite.)
css2.1/20110323/outline-color-applies-to-012.htm
css2.1/20110323/outline-color-applies-to-013.htm
css2.1/20110323/outline-color-applies-to-014.htm
css2.1/20110323/outline-color-applies-to-015.htm
fast/css/outline-color-self-painting-row.htm

  • rendering/RenderTableRow.cpp:

(WebCore::RenderTableRow::paintOutlineForRowIfNeeded): Wrapper function for painting the outline for the row.

This is used by RenderTableSection::paintObject and RenderTableRow::paint

(WebCore::RenderTableRow::paint): For rows with a self-painting layer, paint the outline. Tested by

fast/css/outline-color-self-painting-row.htm.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::paint): Paint the outline for header-group, row-group and footer-groups.
(WebCore::RenderTableSection::paintObject): When iterating through the cells paint the outline of rows as required.
Doing it here avoids the need to walk the RenderTableSection's tree separately elsewhere.

LayoutTests:

  • css2.1/20110323/outline-color-applies-to-001-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-001.htm: Added.
  • css2.1/20110323/outline-color-applies-to-002-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-002.htm: Added.
  • css2.1/20110323/outline-color-applies-to-003-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-003.htm: Added.
  • css2.1/20110323/outline-color-applies-to-004-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-004.htm: Added.
  • css2.1/20110323/outline-color-applies-to-005-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-005.htm: Added.
  • css2.1/20110323/outline-color-applies-to-006-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-006.htm: Added.
  • css2.1/20110323/outline-color-applies-to-007-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-007.htm: Added.
  • css2.1/20110323/outline-color-applies-to-008-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-008.htm: Added.
  • css2.1/20110323/outline-color-applies-to-009-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-009.htm: Added.
  • css2.1/20110323/outline-color-applies-to-010-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-010.htm: Added.
  • css2.1/20110323/outline-color-applies-to-012-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-012.htm: Added.
  • css2.1/20110323/outline-color-applies-to-013-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-013.htm: Added.
  • css2.1/20110323/outline-color-applies-to-014-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-014.htm: Added.
  • css2.1/20110323/outline-color-applies-to-015-expected.html: Added.
  • css2.1/20110323/outline-color-applies-to-015.htm: Added.
  • fast/css/outline-color-self-painting-row-expected.html: Added.
  • fast/css/outline-color-self-painting-row.htm: Added.
11:11 Changeset [105020] by dslomov@google.com

[Chromium] Remove WebKit::WebWorker class.
https://bugs.webkit.org/show_bug.cgi?id=76327

Reviewed by Darin Fisher.

  • public/WebWorker.h: Removed.
  • src/WebWorkerClientImpl.cpp:
07:51 Changeset [105019] by simon.fraser@apple.com

Unmatched transparency layer begin/end on a filtered element with an opacity ancestor
https://bugs.webkit.org/show_bug.cgi?id=76329

Source/WebCore:

Reviewed by Dan Bernstein.

When doing a paint with painting disabled on the GraphicsContext, as we do
for updating control tints, or computing text rectangles on Find, do not
apply filter effects. This is both a performance gain, and fixes an issue
with mismatched begin/end transparency layers.

  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::paintLayerContents):

Reviewed by Dan Bernstein.

Manual test with a filtered element as a descendant of an element with
opacity. Doing a Find is necessary to exercise the test.

  • ManualTests/filters/opacity-above-filter.html: Added.
05:43 Changeset [105018] by commit-queue@webkit.org

Unreviewed, rolling out r105017.
http://trac.webkit.org/changeset/105017
https://bugs.webkit.org/show_bug.cgi?id=76333

broke the build (Requested by philn-tp on #webkit).

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

  • gtk/jhbuild.modules:
05:23 Changeset [105017] by commit-queue@webkit.org

[GTK] Include gtk+3 in the jhbuild modules
https://bugs.webkit.org/show_bug.cgi?id=76284

Patch by Mario Sanchez Prada <msanchez@igalia.com> on 2012-01-14
Reviewed by Philippe Normand.

  • gtk/jhbuild.modules: Add some gtk+3 to the jhbuild moduleset.
Note: See TracTimeline for information about the timeline view.