Timeline



Jan 23, 2012:

11:47 PM Changeset in webkit [105701] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] http/tests/navigation/anchor-frames-gbk.html fails
https://bugs.webkit.org/show_bug.cgi?id=76896

  • platform/qt-wk2/Skipped: Skip the failing test.
11:38 PM Changeset in webkit [105700] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Avoid spurious rebuilds on vs2010 due to DerivedSources not existing
https://bugs.webkit.org/show_bug.cgi?id=76873

Patch by Scott Graham <scottmg@chromium.org> on 2012-01-23
Reviewed by Adam Barth.

  • WebCore.gyp/WebCore.gyp:
11:37 PM Changeset in webkit [105699] by Csaba Osztrogonác
  • 1 edit
    3 adds in trunk/LayoutTests

[Qt] Unreviewed gardening after r105647.

  • platform/qt/css3/calc/getComputedStyle-margin-percentage-expected.png: Added.
  • platform/qt/css3/calc/getComputedStyle-margin-percentage-expected.txt: Added.
11:34 PM Changeset in webkit [105698] by ggaren@apple.com
  • 93 edits in trunk/Source

JSValue::toString() should return a JSString* instead of a UString
https://bugs.webkit.org/show_bug.cgi?id=76861

../JavaScriptCore:

Reviewed by Gavin Barraclough.

This makes the common case -- toString() on a string -- faster and
inline-able. (Not a measureable speedup, but we can now remove a bunch
of duplicate hand-rolled code for this optimization.)

This also clarifies the boundary between "C++ strings" and "JS strings".

In all cases other than true, false, null, undefined, and multi-digit
numbers, the JS runtime was just retrieving a UString from a JSString,
so returning a JSString* is strictly better. In the other cases, we can
optimize to avoid creating a new JSString if we care to, but it doesn't
seem to be a big deal.


  • jsc.cpp:

(functionPrint):
(functionDebug):
(functionRun):
(functionLoad):
(functionCheckSyntax):
(runWithScripts):
(runInteractive):

  • API/JSValueRef.cpp:

(JSValueToStringCopy):

  • bytecode/CodeBlock.cpp:

(JSC::valueToSourceString): Call value() after calling toString(), to
convert from "JS string" (JSString*) to "C++ string" (UString), since
toString() no longer returns a "C++ string".

  • dfg/DFGOperations.cpp:

(JSC::DFG::operationValueAddNotNumber):

  • jit/JITStubs.cpp:

(op_add): Updated for removal of toPrimitiveString():
all '+' operands can use toString(), except for object operands, which
need to take a slow path to call toPrimitive().

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncToString):
(JSC::arrayProtoFuncToLocaleString):
(JSC::arrayProtoFuncJoin):
(JSC::arrayProtoFuncPush):

  • runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::opIn):

  • runtime/DateConstructor.cpp:

(JSC::dateParse):

  • runtime/DatePrototype.cpp:

(JSC::formatLocaleDate): Call value() after calling toString(), as above.

  • runtime/ErrorInstance.h:

(JSC::ErrorInstance::create): Simplified down to one canonical create()
function, to make string handling easier.

  • runtime/ErrorPrototype.cpp:

(JSC::errorProtoFuncToString):

  • runtime/ExceptionHelpers.cpp:

(JSC::createInvalidParamError):
(JSC::createNotAConstructorError):
(JSC::createNotAFunctionError):
(JSC::createNotAnObjectError):

  • runtime/FunctionConstructor.cpp:

(JSC::constructFunctionSkippingEvalEnabledCheck):

  • runtime/FunctionPrototype.cpp:

(JSC::functionProtoFuncBind):

  • runtime/JSArray.cpp:

(JSC::JSArray::sort): Call value() after calling toString(), as above.

  • runtime/JSCell.cpp:
  • runtime/JSCell.h: Removed JSCell::toString() because JSValue does this

job now. Doing it in JSCell is slower (requires extra type checking), and
creates the misimpression that language-defined toString() behavior is
an implementation detail of JSCell.

  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::encode):
(JSC::decode):
(JSC::globalFuncEval):
(JSC::globalFuncParseInt):
(JSC::globalFuncParseFloat):
(JSC::globalFuncEscape):
(JSC::globalFuncUnescape): Call value() after calling toString(), as above.

  • runtime/JSONObject.cpp:

(JSC::unwrapBoxedPrimitive):
(JSC::Stringifier::Stringifier):
(JSC::JSONProtoFuncParse): Removed some manual optimization that toString()
takes care of.

  • runtime/JSObject.cpp:

(JSC::JSObject::toString):

  • runtime/JSObject.h: Updated to return JSString*.
  • runtime/JSString.cpp:
  • runtime/JSString.h:

(JSC::JSValue::toString): Removed, since I removed JSCell::toString().

  • runtime/JSValue.cpp:

(JSC::JSValue::toStringSlowCase): Removed toPrimitiveString(), and re-
spawned toStringSlowCase() from its zombie corpse, since toPrimitiveString()
basically did what we want all the time. (Note that the toPrimitive()
preference changes from NoPreference to PreferString, because that's
how ToString is defined in the language. op_add does not want this behavior.)

  • runtime/NumberPrototype.cpp:

(JSC::numberProtoFuncToString):
(JSC::numberProtoFuncToLocaleString): A little simpler, now that toString()
returns a JSString*.

  • runtime/ObjectConstructor.cpp:

(JSC::objectConstructorGetOwnPropertyDescriptor):
(JSC::objectConstructorDefineProperty):

  • runtime/ObjectPrototype.cpp:

(JSC::objectProtoFuncHasOwnProperty):
(JSC::objectProtoFuncDefineGetter):
(JSC::objectProtoFuncDefineSetter):
(JSC::objectProtoFuncLookupGetter):
(JSC::objectProtoFuncLookupSetter):
(JSC::objectProtoFuncPropertyIsEnumerable): More calls to value(), as above.

  • runtime/Operations.cpp:

(JSC::jsAddSlowCase): Need to check for object before taking the toString()
fast path becuase adding an object to a string requires calling toPrimitive()
on the object, not toString(). (They differ in their preferred conversion
type.)

  • runtime/Operations.h:

(JSC::jsString):
(JSC::jsStringFromArguments): This code gets simpler, now that toString()
does the right thing.

(JSC::jsAdd): Now checks for object, just like jsAddSlowCase().

  • runtime/RegExpConstructor.cpp:

(JSC::setRegExpConstructorInput):
(JSC::constructRegExp):

  • runtime/RegExpObject.cpp:

(JSC::RegExpObject::match):

  • runtime/RegExpPrototype.cpp:

(JSC::regExpProtoFuncCompile):
(JSC::regExpProtoFuncToString): More calls to value(), as above.

  • runtime/StringConstructor.cpp:

(JSC::constructWithStringConstructor):
(JSC::callStringConstructor): This code gets simpler, now that toString()
does the right thing.

  • runtime/StringPrototype.cpp:

(JSC::replaceUsingRegExpSearch):
(JSC::replaceUsingStringSearch):
(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncCharAt):
(JSC::stringProtoFuncCharCodeAt):
(JSC::stringProtoFuncConcat):
(JSC::stringProtoFuncIndexOf):
(JSC::stringProtoFuncLastIndexOf):
(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch):
(JSC::stringProtoFuncSlice):
(JSC::stringProtoFuncSplit):
(JSC::stringProtoFuncSubstr):
(JSC::stringProtoFuncSubstring):
(JSC::stringProtoFuncToLowerCase):
(JSC::stringProtoFuncToUpperCase):
(JSC::stringProtoFuncLocaleCompare):
(JSC::stringProtoFuncBig):
(JSC::stringProtoFuncSmall):
(JSC::stringProtoFuncBlink):
(JSC::stringProtoFuncBold):
(JSC::stringProtoFuncFixed):
(JSC::stringProtoFuncItalics):
(JSC::stringProtoFuncStrike):
(JSC::stringProtoFuncSub):
(JSC::stringProtoFuncSup):
(JSC::stringProtoFuncFontcolor):
(JSC::stringProtoFuncFontsize):
(JSC::stringProtoFuncAnchor):
(JSC::stringProtoFuncLink):
(JSC::trimString): Some of this code gets simpler, now that toString()
does the right thing. More calls to value(), as above.

../JavaScriptGlue:

Reviewed by Gavin Barraclough.

  • JSUtils.cpp:

(KJSValueToCFTypeInternal):

../WebCore:

Reviewed by Gavin Barraclough.

Mechanical changes to call value() after calling toString(), to
convert from "JS string" (JSString*) to "C++ string" (UString), since
toString() no longer returns a "C++ string".

  • bindings/js/IDBBindingUtilities.cpp:

(WebCore::createIDBKeyFromValue):

  • bindings/js/JSCSSStyleDeclarationCustom.cpp:

(WebCore::JSCSSStyleDeclaration::getPropertyCSSValue):

  • bindings/js/JSClipboardCustom.cpp:

(WebCore::JSClipboard::clearData):
(WebCore::JSClipboard::getData):

  • bindings/js/JSCustomXPathNSResolver.cpp:

(WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):

  • bindings/js/JSDOMBinding.cpp:

(WebCore::valueToStringWithNullCheck):
(WebCore::valueToStringWithUndefinedOrNullCheck):
(WebCore::reportException):

  • bindings/js/JSDOMFormDataCustom.cpp:

(WebCore::JSDOMFormData::append):

  • bindings/js/JSDOMStringMapCustom.cpp:

(WebCore::JSDOMStringMap::putDelegate):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::setLocation):
(WebCore::JSDOMWindow::open):
(WebCore::JSDOMWindow::addEventListener):
(WebCore::JSDOMWindow::removeEventListener):

  • bindings/js/JSDeviceMotionEventCustom.cpp:

(WebCore::JSDeviceMotionEvent::initDeviceMotionEvent):

  • bindings/js/JSDeviceOrientationEventCustom.cpp:

(WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):

  • bindings/js/JSDictionary.cpp:

(WebCore::JSDictionary::convertValue):

  • bindings/js/JSDocumentCustom.cpp:

(WebCore::JSDocument::setLocation):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSHTMLAllCollectionCustom.cpp:

(WebCore::callHTMLAllCollection):
(WebCore::JSHTMLAllCollection::item):
(WebCore::JSHTMLAllCollection::namedItem):

  • bindings/js/JSHTMLCanvasElementCustom.cpp:

(WebCore::JSHTMLCanvasElement::getContext):

  • bindings/js/JSHTMLCollectionCustom.cpp:

(WebCore::JSHTMLCollection::item):
(WebCore::JSHTMLCollection::namedItem):

  • bindings/js/JSHTMLDocumentCustom.cpp:

(WebCore::documentWrite):

  • bindings/js/JSHTMLInputElementCustom.cpp:

(WebCore::JSHTMLInputElement::setSelectionDirection):
(WebCore::JSHTMLInputElement::setSelectionRange):

  • bindings/js/JSInspectorFrontendHostCustom.cpp:

(WebCore::JSInspectorFrontendHost::showContextMenu):

  • bindings/js/JSJavaScriptCallFrameCustom.cpp:

(WebCore::JSJavaScriptCallFrame::evaluate):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::JSLocation::setHref):
(WebCore::JSLocation::setProtocol):
(WebCore::JSLocation::setHost):
(WebCore::JSLocation::setHostname):
(WebCore::JSLocation::setPort):
(WebCore::JSLocation::setPathname):
(WebCore::JSLocation::setSearch):
(WebCore::JSLocation::setHash):
(WebCore::JSLocation::replace):
(WebCore::JSLocation::assign):

  • bindings/js/JSMessageEventCustom.cpp:

(WebCore::handleInitMessageEvent):

  • bindings/js/JSSQLTransactionCustom.cpp:

(WebCore::JSSQLTransaction::executeSql):

  • bindings/js/JSSQLTransactionSyncCustom.cpp:

(WebCore::JSSQLTransactionSync::executeSql):

  • bindings/js/JSSharedWorkerCustom.cpp:

(WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):

  • bindings/js/JSStorageCustom.cpp:

(WebCore::JSStorage::putDelegate):

  • bindings/js/JSWebGLRenderingContextCustom.cpp:

(WebCore::JSWebGLRenderingContext::getExtension):

  • bindings/js/JSWebSocketCustom.cpp:

(WebCore::JSWebSocketConstructor::constructJSWebSocket):
(WebCore::JSWebSocket::send):
(WebCore::JSWebSocket::close):

  • bindings/js/JSWorkerContextCustom.cpp:

(WebCore::JSWorkerContext::importScripts):

  • bindings/js/JSWorkerCustom.cpp:

(WebCore::JSWorkerConstructor::constructJSWorker):

  • bindings/js/JSXMLHttpRequestCustom.cpp:

(WebCore::JSXMLHttpRequest::open):
(WebCore::JSXMLHttpRequest::send):

  • bindings/js/JSXSLTProcessorCustom.cpp:

(WebCore::JSXSLTProcessor::setParameter):
(WebCore::JSXSLTProcessor::getParameter):
(WebCore::JSXSLTProcessor::removeParameter):

  • bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::create):

  • bindings/js/ScriptEventListener.cpp:

(WebCore::eventListenerHandlerBody):

  • bindings/js/ScriptValue.cpp:

(WebCore::ScriptValue::toString):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateEventListenerCall):
(JSValueToNative):
(GenerateConstructorDefinition):

  • bridge/c/c_utility.cpp:

(JSC::Bindings::convertValueToNPVariant):

  • bridge/jni/jni_jsobject.mm:

(JavaJSObject::convertValueToJObject):

  • bridge/jni/jsc/JNIUtilityPrivate.cpp:

(JSC::Bindings::convertArrayInstanceToJavaArray):
(JSC::Bindings::convertValueToJValue):

  • bridge/jni/jsc/JavaFieldJSC.cpp:

(JavaField::dispatchValueFromInstance):
(JavaField::valueFromInstance):
(JavaField::dispatchSetValueToInstance):
(JavaField::setValueToInstance):

  • bridge/jni/jsc/JavaInstanceJSC.cpp:

(JavaInstance::invokeMethod):

  • testing/js/JSInternalsCustom.cpp:

(WebCore::JSInternals::setUserPreferredLanguages):

../WebKit/mac:

Reviewed by Gavin Barraclough.

Mechanical changes to call value() after calling toString(), to
convert from "JS string" (JSString*) to "C++ string" (UString), since
toString() no longer returns a "C++ string".

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm:

(WebKit::NetscapePluginInstanceProxy::addValueToArray):

  • WebView/WebFrame.mm:

(-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):

../WebKit2:

Reviewed by Gavin Barraclough.

Mechanical changes to call value() after calling toString(), to
convert from "JS string" (JSString*) to "C++ string" (UString), since
toString() no longer returns a "C++ string".

  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):

11:09 PM Changeset in webkit [105697] by haraken@chromium.org
  • 3 edits in trunk/Source/WebCore

In CodeGeneratorObjC.pm, overwrite the output .h/.mm
only if the bytes differ
https://bugs.webkit.org/show_bug.cgi?id=76874

Reviewed by Adam Barth.

This is one of steps to stop rebuilding .h/.cpp/.mm files
generated by unchanged IDLs (bug 76836).
This patch makes a change on CodeGeneratorObjC.pm so that
it overwrites the output .h/.mm only if the bytes differ.

No tests. No change in behavior.
I manually confirmed that when I add a new attribute to Element.idl,
the time-stamps of unrelated DOM*.h and DOM*.mm do not change.

  • bindings/scripts/CodeGenerator.pm:

(UpdateFileIfChanged): Added. This method writes data to a file
only if the data is different from the data in the current file.

  • bindings/scripts/CodeGeneratorObjC.pm:

(WriteData): Used UpdateFileIfChanged().

10:46 PM Changeset in webkit [105696] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed. Rolled DEPS.

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

  • DEPS:
10:43 PM Changeset in webkit [105695] by ap@apple.com
  • 7 edits
    10 adds in trunk

REGRESSION: Downloaded file name fallback encodings are not set correctly
https://bugs.webkit.org/show_bug.cgi?id=76862

Reviewed by Adam Barth.

Source/WebCore:

Tests: http/tests/download/default-encoding.html

http/tests/download/form-submission-result.html
http/tests/download/inherited-encoding.html
http/tests/download/literal-utf-8.html

  • loader/DocumentWriter.cpp:
  • loader/DocumentWriter.h:

Removed deprecatedFrameEncoding. Due to changes in Document::encoding behavior, it can now
be used in its place.

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest): Instead of hunting

down a correct loader (and active one is not always correct any more), just use opening document's
encoding.

LayoutTests:

  • http/tests/download/default-encoding-expected.txt: Added.
  • http/tests/download/default-encoding.html: Added.
  • http/tests/download/inherited-encoding-expected.txt: Added.
  • http/tests/download/inherited-encoding.html: Added.
  • http/tests/download/literal-utf-8-expected.txt: Added.
  • http/tests/download/literal-utf-8.html: Added.
  • http/tests/download/resources/literal-koi8-r.php: Added.
  • http/tests/download/resources/literal-utf-8.php: Added.
  • http/tests/download/inherited-encoding-form-submission-result-expected.txt: Added.
  • http/tests/download/inherited-encoding-form-submission-result.html: Added.
10:26 PM Changeset in webkit [105694] by ojan@chromium.org
  • 10 edits in trunk

Implement flex-pack:distribute
https://bugs.webkit.org/show_bug.cgi?id=76864

Reviewed by Tony Chang.

Source/WebCore:

See http://dev.w3.org/csswg/css3-flexbox/#flex-pack.

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator EFlexPack):

  • css/CSSValueKeywords.in:
  • rendering/RenderFlexibleBox.cpp:

(WebCore::initialPackingOffset):
(WebCore::packingSpaceBetweenChildren):
(WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
(WebCore::RenderFlexibleBox::layoutColumnReverse):

  • rendering/style/RenderStyleConstants.h:
  • rendering/style/StyleFlexibleBoxData.h:

LayoutTests:

  • css3/flexbox/004-expected.txt:
  • css3/flexbox/004.html:
9:44 PM Changeset in webkit [105693] by macpherson@chromium.org
  • 5 edits in trunk/Source/WebCore

Implement CSS clip property in CSSStyleApplyProperty.
https://bugs.webkit.org/show_bug.cgi?id=74913

Reviewed by Andreas Kling.

No new tests / refactoring only.

  • css/CSSPrimitiveValue.h:
  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::convertToLength):
This new function aims to provide a single call for converting many CSSPrimitiveValue
values to Lengths. It is templated to allow the caller to specify which conversions
are appropriate depending on the context in which the value is used.

  • css/CSSStyleApplyProperty.cpp:

(WebCore::ApplyPropertyClip::convertToLength):
(WebCore::ApplyPropertyClip::applyInheritValue):
(WebCore::ApplyPropertyClip::applyInitialValue):
(WebCore::ApplyPropertyClip::applyValue):
(WebCore::ApplyPropertyClip::createHandler):
(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

9:19 PM Changeset in webkit [105692] by tkent@chromium.org
  • 2 edits
    2 copies in branches/chromium/963

Merge 105386 - 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.

TBR=tkent@chromium.org
BUG=crbug.com/110068
Review URL: https://chromiumcodereview.appspot.com/9285007

9:08 PM Changeset in webkit [105691] by tsepez@chromium.org
  • 5 edits
    15 adds in trunk

decodeEscapeSequences() not correct for some encodings (GBK, Big5, ...).
https://bugs.webkit.org/show_bug.cgi?id=71316

Reviewed by Daniel Bates.

Source/WebCore:

Pass trailing unescaped bytes into the character set decoder to get correct
results in the presence of encodings which re-use ASCII values in sequences.

Tests: http/tests/navigation/anchor-frames-gbk.html

http/tests/security/xssAuditor/iframe-onload-GBK-char.html
http/tests/security/xssAuditor/img-onerror-GBK-char.html
http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode.html
http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode.html
http/tests/security/xssAuditor/script-tag-Big5-char.html
http/tests/security/xssAuditor/script-tag-Big5-char2.html

  • platform/text/DecodeEscapeSequences.h:

(WebCore::Unicode16BitEscapeSequence::findInString):
(WebCore::Unicode16BitEscapeSequence::findEndOfRun):
(WebCore::Unicode16BitEscapeSequence::decodeRun):
(WebCore::URLEscapeSequence::findInString):
(WebCore::URLEscapeSequence::findEndOfRun):
(WebCore::URLEscapeSequence::decodeRun):
(WebCore::decodeEscapeSequences):

LayoutTests:

  • http/tests/navigation/anchor-frames-gbk-expected.txt: Added.
  • http/tests/navigation/anchor-frames-gbk.html: Added.
  • http/tests/navigation/resources/frame-with-anchor-gbk.html: Added.
  • http/tests/security/xssAuditor/iframe-onload-GBK-char-expected.txt: Added.
  • http/tests/security/xssAuditor/iframe-onload-GBK-char.html: Added.
  • http/tests/security/xssAuditor/img-onerror-GBK-char-expected.txt: Added.
  • http/tests/security/xssAuditor/img-onerror-GBK-char.html: Added.
  • http/tests/security/xssAuditor/resources/echo-intertag-decode-16bit-unicode.pl:
  • http/tests/security/xssAuditor/script-tag-Big5-char-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-16bit-unicode.html: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char-twice-url-encode.html: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char.html: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char2-expected.txt: Added.
  • http/tests/security/xssAuditor/script-tag-Big5-char2.html: Added.
  • platform/chromium/test_expectations.txt:
9:04 PM Changeset in webkit [105690] by abarth@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix a build break in a clean compile of the Chromium port (at least
reported by tbreisacher).

  • css/CSSStyleDeclaration.cpp:
8:53 PM Changeset in webkit [105689] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebKit2

[Qt][WK2] QQuickWebView is initializing touch mode twice while being constructed
https://bugs.webkit.org/show_bug.cgi?id=76859

Patch by Jesus Sanchez-Palencia <jesus.palencia@openbossa.org> on 2012-01-23
Reviewed by Kenneth Rohde Christiansen.

Removing d->initializeTouch() from QQuickWebView::QQuickWebView()
since in QQuickWebViewPrivate::initialize() there is a call for
setUseTraditionalDesktopBehaviour(false), which will call initializeTouch.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebView::QQuickWebView):

8:40 PM Changeset in webkit [105688] by Martin Robinson
  • 6 edits in trunk/Source/WebKit2

[GTK][WK2] Make the LoadTracking and WebView test fixtures more flexible
https://bugs.webkit.org/show_bug.cgi?id=76755

Reviewed by Alejandro G. Castro.

Always clear the loading events when loading new content in the load tracking
test. In the WebView test correctly handle loading HTML with a URL that isn't
"about:blank."

  • UIProcess/API/gtk/tests/LoadTrackingTest.cpp:

(LoadTrackingTest::loadURI): Reset the class state when starting a new load.
(LoadTrackingTest::loadHtml): Ditto.
(LoadTrackingTest::loadPlainText): Ditto.
(LoadTrackingTest::loadRequest): Ditto.

  • UIProcess/API/gtk/tests/LoadTrackingTest.h: Added new method definitions.
  • UIProcess/API/gtk/tests/TestWebKitWebLoaderClient.cpp:

(assertNormalLoadHappened): No longer clear loading events. The fixture handles that now.
(testLoadHtml): Update to reflect new method name.
(testLoadPlainText): Ditto.
(testLoadRequest): Ditto.
(testWebViewReload): Ditto.

  • UIProcess/API/gtk/tests/WebViewTest.cpp:

(WebViewTest::loadHtml): Properly interpret the baseURL parameter.

  • UIProcess/API/gtk/tests/WebViewTest.h: Make loading methods virtual.
8:38 PM Changeset in webkit [105687] by tsepez@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Clean up old WebSharedWorker::startWorkerContext() method.
https://bugs.webkit.org/show_bug.cgi?id=76853

Reviewed by Darin Fisher.

  • public/WebSharedWorker.h:
  • src/WebSharedWorkerImpl.cpp:
  • src/WebSharedWorkerImpl.h:
8:23 PM Changeset in webkit [105686] by commit-queue@webkit.org
  • 10 edits in trunk

[GTK] editing/deleting/5408255.html results are incorrect
https://bugs.webkit.org/show_bug.cgi?id=53644

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

Source/WebCore:

When the WEBKIT_TOP_LEVEL environment variable is set, resources
should be loaded from the source tree to which the variable is
pointing. This approach is used when performing testing on the
Gtk port.

No new tests, changes cause one test to pass.

  • platform/graphics/gtk/ImageGtk.cpp:

(getPathToImageResource): Also make changes to the resource path
construction code on Windows.
(WebCore::Image::loadPlatformResource):

Tools:

WEBKIT_TOP_LEVEL environment variable is now set directly in either
WebKitTestRunner or DumpRenderTree through usage of a compilation-time
macro. This way both tools can be run outside the test harness without
the need to manually set the environment variable.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(getTopLevelPath):

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

(GtkPort.setup_environ_for_server):

  • WebKitTestRunner/GNUmakefile.am:
  • WebKitTestRunner/InjectedBundle/gtk/InjectedBundleGtk.cpp:

(WTR::InjectedBundle::platformInitialize):

LayoutTests:

Unskip newly-passing editing test.

  • platform/gtk/Skipped:
8:15 PM Changeset in webkit [105685] by jchaffraix@webkit.org
  • 3 edits
    2 adds in trunk

Crash in WebCore::RenderTableSection::rowLogicalHeightChanged
https://webkit.org/b/76842

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/table/crash-section-logical-height-changed-needsCellRecalc.html

The issue was that we would access our section's structure when it was dirty.

  • rendering/RenderTableSection.cpp:

(WebCore::RenderTableSection::rowLogicalHeightChanged):
Bail out if we need cells recalculation as our internal structure is not up-to-date
and we will recompute all the rows' heights as part of the recomputation anyway.

LayoutTests:

  • fast/table/crash-section-logical-height-changed-needsCellRecalc-expected.txt: Added.
  • fast/table/crash-section-logical-height-changed-needsCellRecalc.html: Added.
8:07 PM Changeset in webkit [105684] by dslomov@google.com
  • 7 edits
    2 adds in trunk

Source/WebKit/chromium: [Chromium] Implement layoutTestController.workerThreadCount in DRT
https://bugs.webkit.org/show_bug.cgi?id=74653.
Expose WebCore::WorkerThread::workerThreadCount() in API layer
for DumpRenderTree.

Reviewed by Darin Fisher.

  • WebKit.gyp:
  • public/WebWorkerInfo.h: Copied from Source/WebKit/chromium/public/WebCommonWorkerClient.h.
  • src/WebWorkerInfo.cpp: Copied from Source/WebKit/chromium/public/WebCommonWorkerClient.h.

(WebKit::WebWorkerInfo::dedicatedWorkerCount):

Tools: [Chromium] Implement layoutTestController.workerThreadCount in DRT
https://bugs.webkit.org/show_bug.cgi?id=74653.

Reviewed by Darin Fisher.

  • DumpRenderTree/chromium/LayoutTestController.cpp:

(LayoutTestController::LayoutTestController):
(LayoutTestController::workerThreadCount):

  • DumpRenderTree/chromium/LayoutTestController.h:

LayoutTests: [Chromium] Implement layoutTestController.workerThreadCount in DRT
https://bugs.webkit.org/show_bug.cgi?id=74653.

Reviewed by Darin Fisher.

  • platform/chromium/test_expectations.txt:
7:59 PM Changeset in webkit [105683] by haraken@chromium.org
  • 2 edits in trunk/Source/WebCore

[Refactoring] Make finish() of CodeGeneratorJS.pm empty
https://bugs.webkit.org/show_bug.cgi?id=76846

Reviewed by Adam Barth.

This is one of steps to stop rebuilding .h/.cpp files generated
by unchanged IDLs (bug 76836).

As a refactoring, we are planning to remove finish() from all
CodeGenerators. In this bug, we make finish() of CodeGeneratorJS.pm
empty.

No new tests. No change in behavior.

  • bindings/scripts/CodeGeneratorJS.pm:

(finish): Made it empty. We will remove finish() after
making finish() of all CodeGenerators empty.
(GenerateInterface): Modified to call WriteData().
(WriteData): Simple code refactoring.
Removed if(defined $IMPL).
Removed if(defined $HEADER).
Removed if(defined $DEPS).
$IMPL -> IMPL.
$HEADER -> HEADER.
$DEPS -> DEPS.

7:55 PM Changeset in webkit [105682] by macpherson@chromium.org
  • 3 edits in trunk/Source/JavaScriptCore

Unreviewed, rolling out r105676.
http://trac.webkit.org/changeset/105676
https://bugs.webkit.org/show_bug.cgi?id=76665

Breaks build on max due to compile warnings.

  • runtime/JSObject.cpp:

(JSC::JSObject::finalize):
(JSC::JSObject::visitChildren):
(JSC::JSObject::allocatePropertyStorage):

  • runtime/JSObject.h:
7:20 PM Changeset in webkit [105681] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebKit/chromium

Fine tune Web Intents Chromium API
https://bugs.webkit.org/show_bug.cgi?id=76754

Patch by Greg Billock <gbillock@google.com> on 2012-01-23
Reviewed by Darin Fisher.

  • public/WebIntent.h:
  • public/WebIntentServiceInfo.h:
  • src/WebIntent.cpp:
  • src/WebIntentServiceInfo.cpp:

(WebKit::WebIntentServiceInfo::WebIntentServiceInfo):

6:45 PM Changeset in webkit [105680] by shawnsingh@chromium.org
  • 5 edits in trunk/Source

[chromium] updateRect is incorrect when contentBounds != bounds
https://bugs.webkit.org/show_bug.cgi?id=72919

Reviewed by James Robinson.

Source/WebCore:

Unit test added to TiledLayerChromiumTest.cpp

The m_updateRect member in LayerChromium types is used to track
what was painted for that layer. For tiled layers (especially
image layers), the updateRect was being given with respect to the
size of the content, rather than the size of the layer. This patch
adds a conversion so that updateRect is always with respect to the
layer size, so that damage tracking will work correctly in those
cases.

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

(WebCore::TiledLayerChromium::updateCompositorResources):

Source/WebKit/chromium:

  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeTiledLayerWithScaledBounds::FakeTiledLayerWithScaledBounds):
(WTF::FakeTiledLayerWithScaledBounds::setContentBounds):
(WTF::FakeTiledLayerWithScaledBounds::contentBounds):
(WTF::FakeTiledLayerWithScaledBounds::updateRect):
(WTF::TEST):

6:39 PM Changeset in webkit [105679] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Make "Copy as HTML" use the same copy functions as other copy methods.
https://bugs.webkit.org/show_bug.cgi?id=76706

Patch by Konrad Piascik <kpiascik@rim.com> on 2012-01-23
Reviewed by Pavel Feldman.

Changed DOMAgent.copyNode to call getOuterHTML and use the callback function to
return the text to InspectorFrontendHost.copyText. This will make all copy
functions use the same code path.

Not testable.

  • inspector/Inspector.json:
  • inspector/InspectorDOMAgent.cpp:
  • inspector/InspectorDOMAgent.h:
  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode.prototype.copyNode.copy):
(WebInspector.DOMNode.prototype.copyNode):

6:36 PM Changeset in webkit [105678] by macpherson@chromium.org
  • 3 edits in trunk/Source/WebCore

Make zoom multiplier float instead of double to match RenderStyle::effectiveZoom etc. and thus avoid unnecessary precision conversions.
https://bugs.webkit.org/show_bug.cgi?id=69490

Reviewed by Andreas Kling.

Covered by existing tests.

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):
Use float multiplier instead of double.
(WebCore::CSSPrimitiveValue::computeLengthDouble):
Use float multiplier instead of double.

  • css/CSSPrimitiveValue.h:

Change type signatures of computeLength template prototype.

6:33 PM Changeset in webkit [105677] by eae@chromium.org
  • 66 adds in branches/subpixellayout/Source

Add missing files

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

Use copying collector for out-of-line JSObject property storage
https://bugs.webkit.org/show_bug.cgi?id=76665

Reviewed by Geoffrey Garen.

  • runtime/JSObject.cpp:

(JSC::JSObject::visitChildren): Changed to use copyAndAppend whenever the property storage is out-of-line.
(JSC::JSObject::allocatePropertyStorage): Changed to use tryAllocateStorage/tryReallocateStorage as opposed to
operator new.

  • runtime/JSObject.h:
6:18 PM Changeset in webkit [105675] by toyoshim@chromium.org
  • 5 edits in trunk/Source/WebKit/chromium

[Chromium][WebSocket] Remove binary communication using WebData in WebKit API
https://bugs.webkit.org/show_bug.cgi?id=76608

Reviewed by Darin Fisher.

  • public/WebSocket.h: Remove BinaryTypeData definition and sendBinary(const WebData&).
  • public/WebSocketClient.h: Remove didReceiveBinaryData(const WebData&).
  • src/WebSocketImpl.cpp: Remove WebData related code and set default binary type as BinaryTypeBlob.

(WebKit::WebSocketImpl::WebSocketImpl): Remove sendBinary(const WebData&).
(WebKit::WebSocketImpl::didReceiveBinaryData): Remove WebData supporting code.

  • src/WebSocketImpl.h: Remove sendBinary(const WebData&).
6:09 PM Changeset in webkit [105674] by dpranke@chromium.org
  • 4 edits in trunk/Tools

nrwt: make --chromium work like --qt
https://bugs.webkit.org/show_bug.cgi?id=76875

Reviewed by Adam Barth.

--chromium used to have to be handled differently from --qt
due to the way the PortFactory was implemented; there's not
really a good reason for that any more so this patch makes
things slightly more consistent and eliminates the
options.chromium flag (--chromium is now truly a synonym for
--platform chromium).

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

(PortFactory._default_port):
(PortFactory.get):

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

(FactoryTest.setUp):
(FactoryTest.test_chromium_mac):
(FactoryTest.test_chromium_linux):
(FactoryTest.test_chromium_win):

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(parse_args):

6:05 PM Changeset in webkit [105673] by dpranke@chromium.org
  • 2 edits in trunk/Tools

run-webkit-tests needs to propagate --chromium
https://bugs.webkit.org/show_bug.cgi?id=76870

Reviewed by Eric Seidel.

run-webkit-tests removes '--chromium' argument from @ARGV when
determining which port to run, which means that that doesn't
propagate to new-run-webkit-tests. That's bad (and is handled
for the other ports by re-adding the flag, but apparently we're
just now noticing for Chromium).

  • Scripts/run-webkit-tests:
6:00 PM Changeset in webkit [105672] by eae@chromium.org
  • 4 edits in trunk/LayoutTests

Unreviewed test expectations fixes for a couple of window/frame tests.

  • http/tests/security/cross-frame-access-put-expected.txt:

Updated expectations to reflect that window.frameElement now has the type
HTMLIFrameElement. The test itself has already been updated.

  • platform/mac/fast/dom/Window/window-properties-expected.txt:

Added window.applicationCache.abort method.

  • platform/mac/fast/dom/prototype-inheritance-2-expected.txt:

Added DOMURL class.

5:59 PM Changeset in webkit [105671] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[GTK][PATCH] More build silencing with (AM_V_...)
https://bugs.webkit.org/show_bug.cgi?id=76791

Patch by Priit Laes <plaes@plaes.org> on 2012-01-23
Reviewed by Gustavo Noronha Silva.

  • GNUmakefile.am: Silence is golden...
5:54 PM Changeset in webkit [105670] by commit-queue@webkit.org
  • 14 edits in trunk/Source/WebKit2

[Qt] Implement SSL error handling QML API.
https://bugs.webkit.org/show_bug.cgi?id=76793

Patch by Alexander Færøy <alexander.faeroy@nokia.com> on 2012-01-23
Reviewed by Simon Hausmann.

This patch implements support for accepting or rejecting invalid SSL
certificates from the QML API.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::QQuickWebViewPrivate):
(QQuickWebViewPrivate::handleCertificateVerificationRequest):
(QQuickWebViewExperimental::certificateVerificationDialog):
(QQuickWebViewExperimental::setCertificateVerificationDialog):

  • UIProcess/API/qt/qquickwebview_p.h:
  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/PageClient.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::certificateVerificationRequest):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/qt/QtDialogRunner.cpp:

(CertificateVerificationDialogContextObject::CertificateVerificationDialogContextObject):
(CertificateVerificationDialogContextObject::hostname):
(CertificateVerificationDialogContextObject::accept):
(CertificateVerificationDialogContextObject::reject):
(QtDialogRunner::initForCertificateVerification):

  • UIProcess/qt/QtDialogRunner.h:
  • UIProcess/qt/QtPageClient.cpp:

(QtPageClient::handleCertificateVerificationRequest):

  • UIProcess/qt/QtPageClient.h:
  • WebProcess/qt/QtNetworkAccessManager.cpp:

(WebKit::QtNetworkAccessManager::QtNetworkAccessManager):
(WebKit::QtNetworkAccessManager::onSslErrors):

  • WebProcess/qt/QtNetworkAccessManager.h:
5:47 PM Changeset in webkit [105669] by bweinstein@apple.com
  • 4 edits in trunk

More build fixing after r105646.

Source/JavaScriptCore:

Tools:

  • TestWebKitAPI/Tests/WTF/RedBlackTree.cpp:

(TestWebKitAPI::TestNode::key):

5:36 PM Changeset in webkit [105668] by commit-queue@webkit.org
  • 12 edits in trunk/Source/WebCore

MicroData: Remove ExceptionCode& from setAttribute() call.
https://bugs.webkit.org/show_bug.cgi?id=76695

Patch by Arko Saha <nghq36@motorola.com> on 2012-01-23
Reviewed by Hajime Morita.

Changeset http://trac.webkit.org/changeset/103296 removed unused
ExceptionCode& argument from Element::setAttribute(QualifiedName).
Hence updating all calls to setAttribute() method in MicroData code.

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::setItemValueText):

  • html/HTMLAreaElement.cpp:

(WebCore::HTMLAreaElement::setItemValueText):

  • html/HTMLEmbedElement.cpp:

(WebCore::HTMLEmbedElement::setItemValueText):

  • html/HTMLIFrameElement.cpp:

(WebCore::HTMLIFrameElement::setItemValueText):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::setItemValueText):

  • html/HTMLLinkElement.cpp:

(WebCore::HTMLLinkElement::setItemValueText):

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::setItemValueText):

  • html/HTMLMetaElement.cpp:

(WebCore::HTMLMetaElement::setItemValueText):

  • html/HTMLObjectElement.cpp:

(WebCore::HTMLObjectElement::setItemValueText):

  • html/HTMLSourceElement.cpp:

(WebCore::HTMLSourceElement::setItemValueText):

  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::setItemValueText):

5:31 PM Changeset in webkit [105667] by levin@chromium.org
  • 6 edits in trunk/Source

[windows] Convert usages of GetDC to HWndDC Part 2.
https://bugs.webkit.org/show_bug.cgi?id=76750

Reviewed by Adam Roben.

Source/WebKit/win:

  • FullscreenVideoController.cpp:

(createCompatibleDCForWindow): Moved out the code which creates a DC for a window
to keep the same scope for the DC lifetime.
(FullscreenVideoController::draw): Switch to using OwnPtr<HDC>
since createCompatibleDCForWindow returns a PassOwnPtr.

  • WebNodeHighlight.cpp:

(WebNodeHighlight::update):

Cleaned up leaks from calling GetDC without release.
Note that there is a potential leak of hdc that previously existed
and still does in an early exit scenario. (This could be easily fixed
by using OwnPtr<HDC> but I was trying to keep this patch focused.)

  • WebView.cpp:

(WebView::scrollBackingStore): Typical conversion.
(WebView::updateBackingStore): Reduced the scope of windowDC to be
right where it is being used.
(WebView::performLayeredWindowUpdate): Typical conversion.
(WebView::paintIntoBackingStore): Ditto.

Source/WebKit2:

  • Shared/win/ShareableBitmapWin.cpp:

(WebKit::ShareableBitmap::windowsContext): Fix incorrect usage of OwnPtr<HDC> which
would do a DeleteDC instead of a ReleaseDC.

5:21 PM Changeset in webkit [105666] by barraclough@apple.com
  • 2 edits in trunk/Tools

Unreviewed build fix - r105646 broke this.

  • TestWebKitAPI/Tests/WTF/RedBlackTree.cpp:

(TestWebKitAPI::TestNode::TestNode):
(TestWebKitAPI::TestNode::key):
(TestWebKitAPI::RedBlackTreeTest::assertEqual):
(TestWebKitAPI::RedBlackTreeTest::assertSameValuesForKey):
(TestWebKitAPI::RedBlackTreeTest::testDriver):

5:21 PM Changeset in webkit [105665] by hayato@chromium.org
  • 3 edits
    2 adds in trunk

Fix crash when a focused node is removed while in processing focusin event.
https://bugs.webkit.org/show_bug.cgi?id=76656

Reviewed by Dimitri Glazkov.

Source/WebCore:

Test: fast/events/focus-remove-focuesed-node.html

  • dom/Document.cpp:

(WebCore::Document::setFocusedNode):

LayoutTests:

  • fast/events/focus-remove-focuesed-node-expected.txt: Added.
  • fast/events/focus-remove-focuesed-node.html: Added.
5:16 PM Changeset in webkit [105664] by scherkus@chromium.org
  • 4 edits in trunk/LayoutTests

Switch media/audio-data-url.html layout test to base64-encoded WAV data.
https://bugs.webkit.org/show_bug.cgi?id=76759

Reviewed by Eric Carlson.

  • media/audio-data-url-expected.txt:
  • media/audio-data-url.html:
  • platform/chromium/test_expectations.txt:
5:10 PM Changeset in webkit [105663] by abarth@webkit.org
  • 2 edits in trunk/Tools

Unreviewed, rolling out r105658.
http://trac.webkit.org/changeset/105658
https://bugs.webkit.org/show_bug.cgi?id=76883

We want this eventually, but not right at this moment
(Requested by abarth on #webkit).

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

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
5:09 PM Changeset in webkit [105662] by jamesr@google.com
  • 2 edits in trunk/Source/WebKit/chromium

[chromium] Add <(SHARED_INTERMEDIATE_DIR)/webkit to include path of targets that depend on WebKit API so they pick up the copied headers in an onion build
https://bugs.webkit.org/show_bug.cgi?id=76879

Reviewed by Dirk Pranke.

  • WebKit.gyp:
5:07 PM Changeset in webkit [105661] by levin@chromium.org
  • 13 edits in trunk/Source

[windows] Convert usages of GetDC to HWndDC Part 1.
https://bugs.webkit.org/show_bug.cgi?id=76744

Reviewed by Adam Roben.

Source/WebCore:

No new functionality so no new tests.

  • platform/graphics/win/FontCacheWin.cpp:

(WebCore::FontCache::getFontDataForCharacters): Changed GetDC to HWndDC
and removed ReleaseDC.
(WebCore::createGDIFont): Ditto.
(WebCore::FontCache::getTraitsInFamily): Ditto.

  • platform/graphics/win/FontPlatformDataWin.cpp:

(WebCore::FontPlatformData::FontPlatformData): Ditto.

  • platform/graphics/win/SimpleFontDataCGWin.cpp:

(WebCore::SimpleFontData::platformInit): Ditto.

  • platform/graphics/win/SimpleFontDataWin.cpp:

(WebCore::SimpleFontData::initGDIFont): Ditto.
(WebCore::SimpleFontData::containsCharacters): Ditto.
(WebCore::SimpleFontData::determinePitch): Ditto.
(WebCore::SimpleFontData::boundsForGDIGlyph): Ditto.
(WebCore::SimpleFontData::widthForGDIGlyph): Ditto.
(WebCore::SimpleFontData::scriptFontProperties): Ditto.

  • platform/win/CursorWin.cpp:

(WebCore::createSharedCursor): Ditto.

  • platform/win/DragImageCGWin.cpp:

(WebCore::scaleDragImage): Ditto.
(WebCore::createDragImageFromImage): Ditto.

  • platform/win/DragImageWin.cpp:

(WebCore::createDragImageForLink): Ditto.

  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writeImage): Ditto.

Source/WebKit/win:

  • WebIconDatabase.cpp:

(createDIB): Changed GetDC to HWndDC and removed ReleaseDC.

Source/WebKit2:

  • UIProcess/win/WebView.cpp:

(WebKit::WebView::flashBackingStoreUpdates): Typical conversion.

4:54 PM Changeset in webkit [105660] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

[GTK] Scrollbars do not respect the has-backward-stepper and has-forward-stepper properties
https://bugs.webkit.org/show_bug.cgi?id=76747

Patch by Martin Robinson <mrobinson@igalia.com> on 2012-01-23
Reviewed by Gustavo Noronha Silva.

No new tests. Regressions are covered by existing tests, but testing
different GTK+ theme configurations is not possible yet.

  • platform/gtk/ScrollbarThemeGtk.cpp:

(WebCore::ScrollbarThemeGtk::backButtonRect): If there is no back stepper, return an empty rect.
(WebCore::ScrollbarThemeGtk::forwardButtonRect): If there is no forward stepper, return an empty rect.
(WebCore::ScrollbarThemeGtk::trackRect): Adjust track rect calculation to account for when there is
no steppers.

  • platform/gtk/ScrollbarThemeGtk.h: New members describing whether there are primary steppers.
  • platform/gtk/ScrollbarThemeGtk2.cpp:

(WebCore::ScrollbarThemeGtk::updateThemeProperties): Look at the theme to determine if there
are primary foward and back steppers.

  • platform/gtk/ScrollbarThemeGtk3.cpp:

(WebCore::ScrollbarThemeGtk::updateThemeProperties): Ditto.

4:47 PM Changeset in webkit [105659] by rniwa@webkit.org
  • 3 edits
    4 adds in trunk

REGRESSION(r105396): drag state is not cleared after each drag
https://bugs.webkit.org/show_bug.cgi?id=76878

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Revert a part of r105396 that made performDragAndDrop not call clearDragState
when the default action was not prevented since it caused a regression.

I'm pretty certain always calling clearDragState in performDragAndDrop is wrong
but I can't think of a test case where this becomes a problem at the moment.
Since this area is not well tested, revert the change instead of making further
changes to the code base.

Tests: fast/events/clear-drag-state.html

fast/events/clear-edit-drag-state.html

  • page/EventHandler.cpp:

(WebCore::EventHandler::performDragAndDrop):

LayoutTests:

Add a regression test to ensure we don't fire extra dragenter event
on the second drag at an element that contains the dragged content.

  • fast/events/clear-drag-state-expected.txt: Added.
  • fast/events/clear-drag-state.html: Added.
  • fast/events/clear-edit-drag-state-expected.txt: Added.
  • fast/events/clear-edit-drag-state.html: Added.
4:41 PM Changeset in webkit [105658] by abarth@webkit.org
  • 2 edits in trunk/Tools

garden-o-matic should support Chromium Mac Lion
https://bugs.webkit.org/show_bug.cgi?id=76880

Reviewed by Eric Seidel.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/config.js:
4:40 PM Changeset in webkit [105657] by commit-queue@webkit.org
  • 5 edits in trunk/Source/WebCore

Fixed typo in exception messages
https://bugs.webkit.org/show_bug.cgi?id=76710

Patch by Thiago Marcos P. Santos <tmpsantos@gmail.com> on 2012-01-23
Reviewed by Alexey Proskuryakov.

  • dom/DOMCoreException.cpp:
  • fileapi/FileException.cpp:
  • storage/SQLTransaction.cpp:

(WebCore::SQLTransaction::openTransactionAndPreflight):
(WebCore::SQLTransaction::postflightAndCommit):

  • xml/XMLHttpRequestException.cpp:
4:35 PM Changeset in webkit [105656] by levin@chromium.org
  • 2 edits in trunk/Source/WebCore

Allow delayed DC allocation in HWndDC.
https://bugs.webkit.org/show_bug.cgi?id=76737

Reviewed by Adam Roben.

No new functionality exposed so no new tests.

  • platform/win/HWndDC.h: Changed this slightly to allow

for allocating a window DC after the initial creation since
this pattern occurrs in several places so this makes it easy to
replace them in an upcoming change.
(WebCore::HWndDC::HWndDC):
(WebCore::HWndDC::~HWndDC):
(WebCore::HWndDC::setHWnd):
(WebCore::HWndDC::clear):

4:26 PM Changeset in webkit [105655] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

MicroData: Compilation error while building Webkit with --microdata.
https://bugs.webkit.org/show_bug.cgi?id=76703

Patch by Arko Saha <nghq36@motorola.com> on 2012-01-23
Reviewed by Hajime Morita.

  • dom/MicroDataItemList.cpp:

(WebCore::MicroDataItemList::MicroDataItemList):
(WebCore::MicroDataItemList::~MicroDataItemList):

  • dom/MicroDataItemList.h:
  • dom/NodeRareData.h:

(WebCore::NodeRareData::properties):

  • html/HTMLPropertiesCollection.cpp:

(WebCore::HTMLPropertiesCollection::create):
(WebCore::HTMLPropertiesCollection::HTMLPropertiesCollection):

  • html/HTMLPropertiesCollection.h:
4:22 PM Changeset in webkit [105654] by levin@chromium.org
  • 8 edits in trunk/Source/WebCore

[chromium] Convert uses of GetDC to HWndDC.
https://bugs.webkit.org/show_bug.cgi?id=76290

Reviewed by Dmitry Titov.

  • platform/graphics/chromium/FontCacheChromiumWin.cpp:

(WebCore::createFontIndirectAndGetWinName):
(WebCore::fontContainsCharacter):
(WebCore::FontCache::getLastResortFallbackFont):
(WebCore::FontCache::getTraitsInFamily):

  • platform/graphics/chromium/FontPlatformDataChromiumWin.cpp:

(WebCore::FontPlatformData::scriptFontProperties):

  • platform/graphics/chromium/FontUtilsChromiumWin.cpp:

(WebCore::FontMap::getAscent):
(WebCore::FontMap::getSpaceGlyph):

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:

(WebCore::fillBMPGlyphs):

  • platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:

(WebCore::SimpleFontData::platformInit):
(WebCore::SimpleFontData::determinePitch):
(WebCore::SimpleFontData::platformWidthForGlyph):

  • platform/graphics/chromium/UniscribeHelper.cpp:

(WebCore::UniscribeHelper::EnsureCachedDCCreated):

  • rendering/RenderThemeChromiumWin.cpp:

(WebCore::systemFontSize):
(WebCore::pointsToPixels):

4:13 PM Changeset in webkit [105653] by commit-queue@webkit.org
  • 2 edits in trunk/Websites/webkit.org

website: Reword WEBKITOUTPUTDIR documentation on Building WebKit page
https://bugs.webkit.org/show_bug.cgi?id=76544

Patch by Seo Sanghyeon <sh4.seo@samsung.com> on 2012-01-23
Reviewed by Darin Adler.

WEBKITOUTPUTDIR is not only for Windows.

  • building/build.html:
4:01 PM Changeset in webkit [105652] by eae@chromium.org
  • 3 edits in trunk/Tools

check-webkit-style whitespace/operators triggers on overloaded division operator
https://bugs.webkit.org/show_bug.cgi?id=76650

Reviewed by Darin Adler.

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

(check_spacing):

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

(CppStyleTest.test_operator_methods):

4:00 PM Changeset in webkit [105651] by commit-queue@webkit.org
  • 4 edits
    1 add
    3 deletes in trunk/LayoutTests

Reduce throttling on video-buffering-repaints-controls test to prevent timeout.
https://bugs.webkit.org/show_bug.cgi?id=76113

Also reduces flakiness by checking for a repaint between progress and
suspend events versus just between progress events.

Patch by Dale Curtis <dalecurtis@chromium.org> on 2012-01-23
Reviewed by Adam Barth.

  • http/tests/media/video-buffering-repaints-controls-expected.txt: Added.
  • http/tests/media/video-buffering-repaints-controls.html:
  • platform/chromium-linux/http/tests/media/video-buffering-repaints-controls-expected.png:
  • platform/chromium-mac-snowleopard/http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.
  • platform/chromium-win/http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/http/tests/media/video-buffering-repaints-controls-expected.txt: Removed.
3:49 PM Changeset in webkit [105650] by rniwa@webkit.org
  • 4 edits in trunk/Tools

run-perf-tests should report server-side errors
https://bugs.webkit.org/show_bug.cgi?id=76802

Reviewed by Tony Chang.

Report errors whenever server's response doesn't match "OK".

  • Scripts/webkitpy/common/net/file_uploader.py:

(FileUploader.upload_single_text_file):
(FileUploader.upload_as_multipart_form_data):
(FileUploader._upload_data.callback):
(FileUploader):
(FileUploader._upload_data):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._upload_json):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(test_upload_json):
(test_upload_json.MockFileUploader.upload_single_text_file):

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

https://bugs.webkit.org/show_bug.cgi?id=75799
Calling intersectsNode on a detached range should throw.

Source/WebCore:

INVALID_STATE_ERR exception should be thrown if intersectsNode is called on a detached Range.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-23
Reviewed by Darin Adler.

Test: fast/dom/Range/range-intersectsNode-exception.html

  • dom/Range.cpp:

(WebCore::Range::intersectsNode): Throwing INVALID_STATE_ERR exception if the range is detached.

LayoutTests:

Added test case to verify the exception thrown while calling intersectsNode on a detached range.

Patch by Joe Thomas <joethomas@motorola.com> on 2012-01-23
Reviewed by Darin Adler.

  • fast/dom/Range/range-intersectsNode-exception-expected.txt: Added.
  • fast/dom/Range/range-intersectsNode-exception.html: Added.
  • fast/dom/Range/range-intersectsNode-expected.txt:
  • fast/dom/Range/resources/intersectsNode.js: Modified the test case to catch the exception.
3:35 PM Changeset in webkit [105648] by dcheng@chromium.org
  • 19 edits
    1 delete in trunk/Source/WebCore

Convert DataTransferItem/DataTransferItemList back into an interface class
https://bugs.webkit.org/show_bug.cgi?id=76856

When Qt implemented the DataTransferItemList, a lot of logic was moved into the shared
classes since Chromium/Qt happened to implement it the same way. Now that I want to do some
refactoring/cleanup work to better implement DataTransferItemList in Chromium, we won't
share the same data anymore so it doesn't make sense to keep that code in a common location.

Reviewed by David Levin.

Covered by existing tests.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DataTransferItem.cpp:
  • dom/DataTransferItem.h:
  • dom/DataTransferItemList.cpp: Removed.
  • dom/DataTransferItemList.h:
  • platform/chromium/ClipboardChromium.cpp:

(WebCore::ClipboardChromium::mayUpdateItems):

  • platform/chromium/DataTransferItemChromium.cpp:

(WebCore::DataTransferItemChromium::create):
(WebCore::DataTransferItemChromium::DataTransferItemChromium):
(WebCore::DataTransferItemChromium::getAsString):
(WebCore::DataTransferItemChromium::getAsFile):
(WebCore::DataTransferItemChromium::clipboardChromium):

  • platform/chromium/DataTransferItemChromium.h:

(WebCore::DataTransferItemChromium::kind):
(WebCore::DataTransferItemChromium::type):

  • platform/chromium/DataTransferItemListChromium.cpp:

(WebCore::DataTransferItemListChromium::DataTransferItemListChromium):

  • platform/chromium/DataTransferItemListChromium.h:
  • platform/qt/DataTransferItemListQt.cpp:

(WebCore::DataTransferItemListQt::DataTransferItemListQt):
(WebCore::DataTransferItemListQt::length):
(WebCore::DataTransferItemListQt::item):
(WebCore::DataTransferItemListQt::deleteItem):
(WebCore::DataTransferItemListQt::clear):
(WebCore::DataTransferItemListQt::add):

  • platform/qt/DataTransferItemListQt.h:
  • platform/qt/DataTransferItemQt.cpp:

(WebCore::DataTransferItemQt::create):
(WebCore::DataTransferItemQt::DataTransferItemQt):
(WebCore::DataTransferItemQt::getAsString):
(WebCore::DataTransferItemQt::getAsFile):

  • platform/qt/DataTransferItemQt.h:

(WebCore::DataTransferItemQt::kind):
(WebCore::DataTransferItemQt::type):

3:32 PM Changeset in webkit [105647] by mikelawther@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

getComputedStyle margin percentage test for CSS calc
https://bugs.webkit.org/show_bug.cgi?id=76130

Reviewed by Darin Adler.

Tests for future implementation of CSS3 calc() (see http://webkit.org/b/16662)

These tests are expected to 'fail', and will pass once calc() functionality is landed.
For now, they serve to demonstrate that the current code doesn't crash on these tests.

  • css3/calc/getComputedStyle-margin-percentage-expected.txt: Added.
  • css3/calc/getComputedStyle-margin-percentage.html: Added.
3:30 PM Changeset in webkit [105646] by barraclough@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

https://bugs.webkit.org/show_bug.cgi?id=76855
Implement a JIT-code aware sampling profiler for JSC

Reviewed by Geoff Garen.

Step 2: generalize RedBlackTree. The profiler is going to want tio use
a RedBlackTree, allow this class to work with subclasses of
RedBlackTree::Node, Node should not need to know the names of the m_key
and m_value fields (the subclass can provide a key() accessor), and
RedBlackTree does not need to know anything about ValueType.

(WTF::MetaAllocator::findAndRemoveFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):
(WTF::MetaAllocator::addFreeSpace):

  • wtf/MetaAllocator.h:

(WTF::MetaAllocator::FreeSpaceNode::FreeSpaceNode):
(WTF::MetaAllocator::FreeSpaceNode::key):

  • wtf/MetaAllocatorHandle.h:

(WTF::MetaAllocatorHandle::key):

  • wtf/RedBlackTree.h:

(WTF::RedBlackTree::Node::successor):
(WTF::RedBlackTree::Node::predecessor):
(WTF::RedBlackTree::Node::parent):
(WTF::RedBlackTree::Node::setParent):
(WTF::RedBlackTree::Node::left):
(WTF::RedBlackTree::Node::setLeft):
(WTF::RedBlackTree::Node::right):
(WTF::RedBlackTree::Node::setRight):
(WTF::RedBlackTree::insert):
(WTF::RedBlackTree::remove):
(WTF::RedBlackTree::findExact):
(WTF::RedBlackTree::findLeastGreaterThanOrEqual):
(WTF::RedBlackTree::findGreatestLessThanOrEqual):
(WTF::RedBlackTree::first):
(WTF::RedBlackTree::last):
(WTF::RedBlackTree::size):
(WTF::RedBlackTree::treeMinimum):
(WTF::RedBlackTree::treeMaximum):
(WTF::RedBlackTree::treeInsert):
(WTF::RedBlackTree::leftRotate):
(WTF::RedBlackTree::rightRotate):
(WTF::RedBlackTree::removeFixup):

3:01 PM Changeset in webkit [105645] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed buildfix for ENABLE(MUTATION_OBSERVERS) following r105642.

  • css/CSSMutableStyleDeclaration.cpp:
2:42 PM Changeset in webkit [105644] by rniwa@webkit.org
  • 4 edits in trunk/Tools

run-perf-tests ignore Skipped list on chromium
https://bugs.webkit.org/show_bug.cgi?id=76764

Reviewed by Dirk Pranke.

Move skipped_perf_tests from WebKit port to Base port so that Chromium port
can also find skipped list. Chromium port only uses test_expectations.txt for
layout tests but performacne tests don't use test_expectations.txt so Chromium port
also needs to use Skipped list.

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

(Port._tests_from_skipped_file_contents):
(Port):
(Port._expectations_from_skipped_files):
(Port.skipped_perf_tests):

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

(PortTest.test_skipped_perf_tests):
(PortTest.test_skipped_perf_tests.add_text_file):

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

(WebKitPort._skipped_tests_for_unsupported_features):
(WebKitPort._skipped_file_search_paths):
(WebKitPort.skipped_layout_tests):

2:37 PM Changeset in webkit [105643] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Update uniteIfNonZero to use isZero.
https://bugs.webkit.org/show_bug.cgi?id=76637

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

No new tests. (I found no existing codepath that would be affected by
this change but I think this change is still valuable in preventing
future bugs.)

  • platform/graphics/FloatRect.cpp:

(WebCore::FloatRect::uniteIfNonZero):

The following change is a minor followup to
https://bugs.webkit.org/show_bug.cgi?id=76177#c12 and is not directly
related to the rest of this patch.

  • rendering/svg/SVGRenderSupport.cpp:

(WebCore::SVGRenderSupport::computeContainerBoundingBoxes):

2:26 PM Changeset in webkit [105642] by Antti Koivisto
  • 24 edits
    2 deletes in trunk/Source/WebCore

Eliminate CSSElementStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=76848

Reviewed by Andreas Kling.

CSSElementStyleDeclaration has little functionality. It can merge with CSSMutableStyleDeclaration simplifying the code.

Having an element parent is mutually exclusive with having a css rule parent. We can keep them in a union. This also
shrinks all inline style declarations by one pointer.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMBinding.h:

(WebCore::root):

  • css/CSSAllInOne.cpp:
  • css/CSSElementStyleDeclaration.cpp: Removed.
  • css/CSSElementStyleDeclaration.h: Removed.
  • css/CSSMutableStyleDeclaration.cpp:

(WebCore::CSSMutableStyleDeclaration::setNeedsStyleRecalc):

  • css/CSSMutableStyleDeclaration.h:

(WebCore::CSSMutableStyleDeclaration::createInline):
(WebCore::CSSMutableStyleDeclaration::createForSVGFontFaceElement):
(WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):

  • css/CSSStyleDeclaration.cpp:

(WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
(WebCore::CSSStyleDeclaration::parentStyleSheet):

Merge the CSSElementStyleDeclaration::styleSheet() logic here.


  • css/CSSStyleDeclaration.h:

(WebCore::CSSStyleDeclaration::parentRule):
(WebCore::CSSStyleDeclaration::clearParentRule):
(WebCore::CSSStyleDeclaration::parentElement):
(WebCore::CSSStyleDeclaration::clearParentElement):

  • css/CSSStyleRule.cpp:

(WebCore::CSSStyleRule::setSelectorText):

CSSStyleRule's style declaration can't have isElementStyleDeclaration set, the dead code can be removed.
This is asserted in setDeclaration() and again implicitly in the destructor (by clearParentRule()).


  • dom/StyledElement.cpp:

(WebCore::StyledElement::createInlineStyleDecl):
(WebCore::StyledElement::destroyInlineStyleDecl):
(WebCore::StyledElement::ensureInlineStyleDecl):
(WebCore::StyledElement::copyNonAttributeProperties):

  • dom/StyledElement.h:

(WebCore::StyledElement::inlineStyleDecl):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):

  • editing/DeleteButtonController.cpp:

(WebCore::DeleteButtonController::createDeletionUI):

  • html/ValidationMessage.cpp:

(WebCore::adjustBubblePosition):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelElement::setPosition):
(WebCore::MediaControlPanelElement::resetPosition):
(WebCore::MediaControlPanelElement::makeOpaque):
(WebCore::MediaControlPanelElement::makeTransparent):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::TrackLimiterElement::create):

  • svg/SVGFontFaceElement.cpp:

(WebCore::SVGFontFaceElement::SVGFontFaceElement):

2:07 PM Changeset in webkit [105641] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, rolling out r105640.
http://trac.webkit.org/changeset/105640
https://bugs.webkit.org/show_bug.cgi?id=76849

Broke the chromium build.

  • DEPS:
1:41 PM Changeset in webkit [105640] by senorblanco@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

rolling chromium DEPS to r118713
https://bugs.webkit.org/show_bug.cgi?id=76849

Patch by Justin Novosad <junov@chromium.org> on 2012-01-23
Reviewed by Stephen White.

This is to pick up a change to skia build configuration

  • DEPS:
1:39 PM Changeset in webkit [105639] by aestes@apple.com
  • 4 edits in trunk

Fix the build after r105635.

Source/JavaScriptCore:

Tools:

  • TestWebKitAPI/Tests/WTF/StringBuilder.cpp:

(TestWebKitAPI::TEST):

1:36 PM Changeset in webkit [105638] by mhahnenberg@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Remove StackBounds from JSGlobalData
https://bugs.webkit.org/show_bug.cgi?id=76310

Reviewed by Sam Weinig.

Removed StackBounds and the stack() function from JSGlobalData since it no
longer accessed any members of JSGlobalData.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::BytecodeGenerator):

  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::addCurrentThread):
(JSC::MachineThreads::gatherFromCurrentThread):

  • parser/Parser.cpp:

(JSC::::Parser):

  • runtime/JSGlobalData.cpp:

(JSC::JSGlobalData::JSGlobalData):

  • runtime/JSGlobalData.h:
1:35 PM Changeset in webkit [105637] by benjamin@webkit.org
  • 3 edits in trunk/Source/WebCore

Use OVERRIDE for PopupMenuClient's implementations
https://bugs.webkit.org/show_bug.cgi?id=76774

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-01-23
Reviewed by Darin Adler.

  • rendering/RenderMenuList.h: Also sort the methods to the same

order as PopupMenuClient.

  • rendering/RenderTextControlSingleLine.h:
1:08 PM Changeset in webkit [105636] by barraclough@apple.com
  • 24 edits in trunk/Source/JavaScriptCore

Implement a JIT-code aware sampling profiler for JSC
https://bugs.webkit.org/show_bug.cgi?id=76855

Rubber stanmped by Geoff Garen.

Mechanical change - pass CodeBlock through to the executable allocator,
such that we will be able to map ranges of JIT code back to their owner.

  • assembler/ARMAssembler.cpp:

(JSC::ARMAssembler::executableCopy):

  • assembler/ARMAssembler.h:
  • assembler/AssemblerBuffer.h:

(JSC::AssemblerBuffer::executableCopy):

  • assembler/AssemblerBufferWithConstantPool.h:

(JSC::AssemblerBufferWithConstantPool::executableCopy):

  • assembler/LinkBuffer.h:

(JSC::LinkBuffer::LinkBuffer):
(JSC::LinkBuffer::linkCode):

  • assembler/MIPSAssembler.h:

(JSC::MIPSAssembler::executableCopy):

  • assembler/SH4Assembler.h:

(JSC::SH4Assembler::executableCopy):

  • assembler/X86Assembler.h:

(JSC::X86Assembler::executableCopy):
(JSC::X86Assembler::X86InstructionFormatter::executableCopy):

  • dfg/DFGJITCompiler.cpp:

(JSC::DFG::JITCompiler::compile):
(JSC::DFG::JITCompiler::compileFunction):

  • dfg/DFGOSRExitCompiler.cpp:
  • dfg/DFGRepatch.cpp:

(JSC::DFG::generateProtoChainAccessStub):
(JSC::DFG::tryCacheGetByID):
(JSC::DFG::tryBuildGetByIDList):
(JSC::DFG::tryCachePutByID):

  • dfg/DFGThunks.cpp:

(JSC::DFG::osrExitGenerationThunkGenerator):

  • jit/ExecutableAllocator.cpp:

(JSC::ExecutableAllocator::allocate):

  • jit/ExecutableAllocator.h:
  • jit/ExecutableAllocatorFixedVMPool.cpp:

(JSC::ExecutableAllocator::allocate):

  • jit/JIT.cpp:

(JSC::JIT::privateCompile):

  • jit/JITOpcodes.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::privateCompileCTIMachineTrampolines):
(JSC::JIT::privateCompileCTINativeCall):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::stringGetByValStubGenerator):
(JSC::JIT::privateCompilePutByIdTransition):
(JSC::JIT::privateCompilePatchGetArrayLength):
(JSC::JIT::privateCompileGetByIdProto):
(JSC::JIT::privateCompileGetByIdSelfList):
(JSC::JIT::privateCompileGetByIdProtoList):
(JSC::JIT::privateCompileGetByIdChainList):
(JSC::JIT::privateCompileGetByIdChain):

  • jit/JITStubs.cpp:
  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::finalize):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::compile):

12:42 PM Changeset in webkit [105635] by wangxianzhu@chromium.org
  • 16 edits in trunk

Basic enhancements to StringBuilder
https://bugs.webkit.org/show_bug.cgi?id=67081

Source/JavaScriptCore:

This change contains the following enhancements to StringBuilder,
for convenience, performance, testability, etc.:

  • Change toStringPreserveCapacity() to const
  • new public methods: capacity(), swap(), toAtomicString(), canShrink() and append(const StringBuilder&)
  • == and != opearators to compare StringBuilders and a StringBuilder/String

Unit tests: Tools/TestWebKitAPI/Tests/WTF/StringBuilder.cpp

Reviewed by Darin Adler.

(WTF::SubstringTranslator::hash):
(WTF::SubstringTranslator::equal):
(WTF::SubstringTranslator::translate):
(WTF::AtomicString::add):
(WTF::AtomicString::addSlowCase):

  • wtf/text/AtomicString.h:

(WTF::AtomicString::AtomicString):
(WTF::AtomicString::add):

  • wtf/text/StringBuilder.cpp:

(WTF::StringBuilder::reifyString):
(WTF::StringBuilder::resize):
(WTF::StringBuilder::canShrink):
(WTF::StringBuilder::shrinkToFit):

  • wtf/text/StringBuilder.h:

(WTF::StringBuilder::append):
(WTF::StringBuilder::toString):
(WTF::StringBuilder::toStringPreserveCapacity):
(WTF::StringBuilder::toAtomicString):
(WTF::StringBuilder::isEmpty):
(WTF::StringBuilder::capacity):
(WTF::StringBuilder::is8Bit):
(WTF::StringBuilder::swap):
(WTF::equal):
(WTF::operator==):
(WTF::operator!=):

  • wtf/text/StringImpl.h:

Source/WebCore:

These changes are because we explicitly disallowed StringBuilder's
copy constructor and assignment operator, and the change of return
type of StringBuilder::toString().

Reviewed by Darin Adler.

No new tests. All layout tests and unit tests should run as before.

  • platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:

(WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):

  • svg/SVGPathStringBuilder.h:

(WebCore::SVGPathStringBuilder::cleanup):

Source/WebKit/chromium:

This change is because we explicitly disallowed StringBuilder's
copy constructor and assignment operator.

Reviewed by Darin Adler.

No new tests. All layout tests and unit tests should run as before.

  • src/WebPageSerializerImpl.cpp:

(WebKit::WebPageSerializerImpl::encodeAndFlushBuffer):

Tools:

Reviewed by Darin Adler.

  • TestWebKitAPI/Tests/WTF/StringBuilder.cpp:

(TestWebKitAPI::TEST):

12:00 PM Changeset in webkit [105634] by wjmaclean@chromium.org
  • 6 edits
    11 adds in trunk/Source

[chromium] Add WebSolidColorLayer interface to draw non-textured color layers from Aura.
https://bugs.webkit.org/show_bug.cgi?id=75732

Reviewed by James Robinson.

Source/WebCore:

Add WebSolidColorLayer to paint solid-color layers without a backing texture.

Test: unit test for CCSolidColorLayerImpl.

  • WebCore.gypi:
  • platform/graphics/chromium/SolidColorLayerChromium.cpp: Added.

(WebCore::SolidColorLayerChromium::createCCLayerImpl):
(WebCore::SolidColorLayerChromium::create):
(WebCore::SolidColorLayerChromium::SolidColorLayerChromium):
(WebCore::SolidColorLayerChromium::~SolidColorLayerChromium):

  • platform/graphics/chromium/SolidColorLayerChromium.h: Added.
  • platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp: Added.

(WebCore::CCSolidColorLayerImpl::CCSolidColorLayerImpl):
(WebCore::CCSolidColorLayerImpl::~CCSolidColorLayerImpl):
(WebCore::CCSolidColorLayerImpl::quadTransform):
(WebCore::CCSolidColorLayerImpl::appendQuads):

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

(WebCore::CCSolidColorLayerImpl::create):
(WebCore::CCSolidColorLayerImpl::layerTypeAsString):

Source/WebKit/chromium:

  • WebKit.gyp:
  • WebKit.gypi:
  • public/platform/WebSolidColorLayer.h: Added.
  • src/WebSolidColorLayer.cpp: Added.

(WebKit::WebSolidColorLayer::create):
(WebKit::WebSolidColorLayer::WebSolidColorLayer):
(WebKit::WebSolidColorLayer::setBackgroundColor):

  • src/WebSolidColorLayerImpl.cpp: Added.

(WebKit::WebSolidColorLayerImpl::create):
(WebKit::WebSolidColorLayerImpl::WebSolidColorLayerImpl):
(WebKit::WebSolidColorLayerImpl::~WebSolidColorLayerImpl):

  • src/WebSolidColorLayerImpl.h: Added.
  • tests/CCLayerTestCommon.cpp: Added.

(CCLayerTestCommon::completelyContains):
(CCLayerTestCommon::verifyQuadsExactlyCoverRect):

  • tests/CCLayerTestCommon.h: Added.
  • tests/CCSolidColorLayerImplTest.cpp: Added.

(CCLayerTestCommon::TEST):

  • tests/CCTiledLayerImplTest.cpp:
11:39 AM Changeset in webkit [105633] by abarth@webkit.org
  • 32 edits
    15 adds
    24 deletes in trunk/LayoutTests

Update the baselines for a number of tests that use gradients. The new
results are just slightly different than the old results.

  • fast/dom/HTMLMeterElement/meter-element-expected.txt: Added.
  • fast/gradients/border-image-gradient-expected.txt: Added.
  • fast/gradients/border-image-gradient-sides-and-corners-expected.txt: Added.
  • platform/chromium-linux-x86/fast/gradients: Removed.
  • platform/chromium-linux/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-linux/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.png:
  • platform/chromium-linux/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.png:
  • platform/chromium-linux/fast/dom/HTMLMeterElement/meter-styles-expected.png:
  • platform/chromium-linux/fast/gradients/border-image-gradient-sides-and-corners-expected.png: Removed.
  • platform/chromium-linux/fast/gradients/css3-color-stops-expected.png: Removed.
  • platform/chromium-linux/fast/gradients/css3-repeating-linear-gradients-expected.png:
  • platform/chromium-linux/fast/gradients/generated-gradients-expected.png:
  • platform/chromium-linux/fast/gradients/simple-gradients-expected.png:
  • platform/chromium-linux/svg/as-background-image/svg-as-background-2-expected.png: Removed.
  • platform/chromium-linux/svg/wicd/test-scalable-background-image1-expected.png:
  • platform/chromium-mac-leopard/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-mac-leopard/fast/gradients/generated-gradients-expected.png:
  • platform/chromium-mac-leopard/fast/reflections/reflection-masks-expected.png:
  • platform/chromium-mac-snowleopard/fast/canvas/fillrect_gradient-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/canvas/gradient-add-second-start-end-stop-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement: Added.
  • platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/gradients/border-image-gradient-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/gradients/border-image-gradient-sides-and-corners-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/gradients/css3-color-stops-expected.png:
  • platform/chromium-mac-snowleopard/fast/gradients/css3-repeating-linear-gradients-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/gradients/generated-gradients-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/gradients/simple-gradients-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/reflections/reflection-masks-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/as-background-image/svg-as-background-2-expected.png:
  • platform/chromium-mac-snowleopard/svg/filters/big-sized-filter-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/wicd/test-scalable-background-image1-expected.png:
  • platform/chromium-mac/fast/canvas/fillrect_gradient-expected.png: Removed.
  • platform/chromium-mac/fast/canvas/gradient-add-second-start-end-stop-expected.png: Removed.
  • platform/chromium-mac/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.png: Removed.
  • platform/chromium-mac/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png: Removed.
  • platform/chromium-mac/fast/gradients/border-image-gradient-expected.png: Removed.
  • platform/chromium-mac/fast/gradients/border-image-gradient-sides-and-corners-expected.png: Removed.
  • platform/chromium-mac/fast/gradients/css3-repeating-linear-gradients-expected.png: Removed.
  • platform/chromium-mac/fast/gradients/generated-gradients-expected.png: Removed.
  • platform/chromium-mac/fast/gradients/simple-gradients-expected.png: Removed.
  • platform/chromium-mac/fast/reflections/reflection-masks-expected.png: Removed.
  • platform/chromium-mac/svg/filters/big-sized-filter-expected.png: Removed.
  • platform/chromium-win-vista/fast/gradients: Removed.
  • platform/chromium-win-xp/svg/as-background-image: Removed.
  • platform/chromium-win/fast/canvas/fillrect_gradient-expected.png:
  • platform/chromium-win/fast/canvas/gradient-add-second-start-end-stop-expected.png:
  • platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-capacity-expected.png:
  • platform/chromium-win/fast/dom/HTMLMeterElement/meter-appearances-rating-relevancy-expected.png:
  • platform/chromium-win/fast/dom/HTMLMeterElement/meter-element-expected.png:
  • platform/chromium-win/fast/dom/HTMLMeterElement/meter-styles-expected.png:
  • platform/chromium-win/fast/dom/HTMLMeterElement/meter-writing-mode-expected.png:
  • platform/chromium-win/fast/gradients/border-image-gradient-expected.png:
  • platform/chromium-win/fast/gradients/border-image-gradient-sides-and-corners-expected.png:
  • platform/chromium-win/fast/gradients/css3-color-stops-expected.png:
  • platform/chromium-win/fast/gradients/css3-repeating-linear-gradients-expected.png:
  • platform/chromium-win/fast/gradients/generated-gradients-expected.png:
  • platform/chromium-win/fast/gradients/simple-gradients-expected.png:
  • platform/chromium-win/fast/reflections/reflection-masks-expected.png:
  • platform/chromium-win/svg/as-background-image/svg-as-background-2-expected.png:
  • platform/chromium-win/svg/filters/big-sized-filter-expected.png:
  • platform/chromium-win/svg/wicd/test-scalable-background-image1-expected.png:
  • platform/gtk/fast/dom/HTMLMeterElement/meter-element-expected.txt: Removed.
  • platform/gtk/fast/gradients/border-image-gradient-expected.txt: Removed.
  • platform/gtk/fast/gradients/border-image-gradient-sides-and-corners-expected.txt: Removed.
  • platform/mac/fast/gradients/border-image-gradient-expected.txt: Removed.
  • platform/mac/fast/gradients/border-image-gradient-sides-and-corners-expected.txt: Removed.
  • platform/qt/fast/gradients/border-image-gradient-expected.txt: Removed.
  • platform/qt/fast/gradients/border-image-gradient-sides-and-corners-expected.txt: Removed.
9:20 AM Changeset in webkit [105632] by Antti Koivisto
  • 3 edits in trunk/Source/WebCore

Attempt to fix Qt build.

Not reviewed.

  • css/CSSElementStyleDeclaration.cpp:
  • css/CSSElementStyleDeclaration.h:

(WebCore::CSSElementStyleDeclaration::createForSVGFontFaceElement):

9:00 AM Changeset in webkit [105631] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

Move m_rootEditableElementForSelectionOnMouseDown off of HTMLAnchorElement.
<http://webkit.org/b/76833>

Reviewed by Antti Koivisto.

Move HTMLAnchorElement::m_rootEditableElementForSelectionOnMouseDown to a rare
data-style hashmap, effectively shrinking HTMLAnchorElement by one CPU word.

The pointer is only used during interactive event handling, so it shouldn't have
any noticeable effects on web performance.

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

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::HTMLAnchorElement):
(WebCore::HTMLAnchorElement::~HTMLAnchorElement):
(WebCore::HTMLAnchorElement::defaultEventHandler):
(WebCore::HTMLAnchorElement::treatLinkAsLiveForEventType):
(WebCore::rootEditableElementMap):
(WebCore::HTMLAnchorElement::rootEditableElementForSelectionOnMouseDown):
(WebCore::HTMLAnchorElement::setRootEditableElementForSelectionOnMouseDown):

  • html/HTMLAnchorElement.h:
8:49 AM Changeset in webkit [105630] by Antti Koivisto
  • 17 edits
    1 delete in trunk/Source/WebCore

Eliminate CSSElementStyleDeclaration subclasses
https://bugs.webkit.org/show_bug.cgi?id=76827

Reviewed by Andreas Kling.

CSSInlineStyleDeclaration and FontFaceStyleDeclaration serve no real purpose.

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

(WebCore::CSSElementStyleDeclaration::createForSVGFontFaceElement):
(WebCore::CSSElementStyleDeclaration::styleSheet):

  • css/CSSElementStyleDeclaration.h:

(WebCore::CSSElementStyleDeclaration::createInline):
(WebCore::toCSSElementStyleDeclaration):

  • css/CSSInlineStyleDeclaration.h: Removed.
  • css/CSSMutableStyleDeclaration.cpp:
  • dom/StyledElement.cpp:

(WebCore::StyledElement::createInlineStyleDecl):
(WebCore::StyledElement::ensureInlineStyleDecl):
(WebCore::StyledElement::copyNonAttributeProperties):

  • dom/StyledElement.h:

(WebCore::StyledElement::inlineStyleDecl):

  • editing/ApplyStyleCommand.cpp:

(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
(WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):

  • editing/DeleteButtonController.cpp:

(WebCore::DeleteButtonController::createDeletionUI):

  • html/ValidationMessage.cpp:

(WebCore::adjustBubblePosition):

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelElement::setPosition):
(WebCore::MediaControlPanelElement::resetPosition):
(WebCore::MediaControlPanelElement::makeOpaque):
(WebCore::MediaControlPanelElement::makeTransparent):

  • html/shadow/SliderThumbElement.cpp:

(WebCore::TrackLimiterElement::create):

  • svg/SVGFontFaceElement.cpp:

(WebCore::SVGFontFaceElement::SVGFontFaceElement):

8:45 AM Changeset in webkit [105629] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, unskip now passing tests on GTK. Spotted by Zan Dobersek.

  • platform/gtk/Skipped: Unskip tests 5 tests using ArrayBuffer

which is no longer tied to 3D_CANVAS.

8:37 AM Changeset in webkit [105628] by pfeldman@chromium.org
  • 3 edits in trunk/Source/WebCore

Not reviewed: annotate inspector's js so that it compiled.

  • inspector/front-end/ElementsTreeOutline.js:
  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.SuggestBox.prototype.upKeyPressed):
(WebInspector.TextPrompt.SuggestBox.prototype.downKeyPressed):

8:32 AM Changeset in webkit [105627] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, mark another test as flaky crash.

  • platform/gtk/test_expectations.txt:

editing/execCommand/19455.html is flaky, sometimes hitting an ASSERT.

8:24 AM Changeset in webkit [105626] by Philippe Normand
  • 3 edits in trunk/Source/WebCore

[GStreamer] fix WebAudio build after r105431
https://bugs.webkit.org/show_bug.cgi?id=76819

Reviewed by Martin Robinson.

  • platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:

(WebCore::copyGstreamerBuffersToAudioChannel): Use mutableData()
when copying.

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webKitWebAudioSrcLoop): Drop constness when setting the buffer
data pointer.

8:20 AM Changeset in webkit [105625] by pfeldman@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: add touch events to the event listeners list.
https://bugs.webkit.org/show_bug.cgi?id=76830

Reviewed by Yury Semikhatsky.

  • English.lproj/localizedStrings.js:
  • inspector/InjectedScriptSource.js:

(.):

  • inspector/front-end/BreakpointsSidebarPane.js:

(WebInspector.EventListenerBreakpointsSidebarPane):

7:52 AM Changeset in webkit [105624] by Philippe Normand
  • 3 edits
    16 adds in trunk/LayoutTests

Unreviewed, GTK gardening. Rebaseline after r105613, marked 3 svg
flaky tests and added baselines for 15 tests.

  • platform/gtk/css3/images/cross-fade-background-size-expected.txt: Added.
  • platform/gtk/fast/backgrounds/mask-box-image-expected.txt: Added.
  • platform/gtk/fast/borders/scaled-border-image-expected.txt: Added.
  • platform/gtk/fast/css/text-overflow-input-expected.txt: Added.
  • platform/gtk/fast/line-grid/line-grid-floating-expected.txt: Added.
  • platform/gtk/fast/line-grid/line-grid-inside-columns-expected.txt: Added.
  • platform/gtk/fast/line-grid/line-grid-into-floats-expected.txt: Added.
  • platform/gtk/fast/line-grid/line-grid-positioned-expected.txt: Added.
  • platform/gtk/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
  • platform/gtk/svg/custom/relative-sized-image-expected.txt: Added.
  • platform/gtk/svg/custom/transform-with-shadow-and-gradient-expected.txt: Added.
  • platform/gtk/svg/filters/feImage-preserveAspectratio-expected.txt: Added.
  • platform/gtk/svg/text/append-text-node-to-tspan-expected.txt: Added.
  • platform/gtk/svg/text/modify-text-node-in-tspan-expected.txt: Added.
  • platform/gtk/svg/text/remove-text-node-from-tspan-expected.txt: Added.
  • platform/gtk/svg/text/remove-tspan-from-text-expected.txt: Added.
  • platform/gtk/test_expectations.txt:
7:47 AM Changeset in webkit [105623] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebCore

Web Inspector: inspector close button is missing in the dock-to-right mode.
https://bugs.webkit.org/show_bug.cgi?id=76829

Reviewed by Timothy Hatcher.

  • inspector/front-end/inspector.js:

(WebInspector.set attached):
(WebInspector.get _setCompactMode):

7:25 AM BuildingGtk edited by Philippe Normand
added gst modules in example moduleset (diff)
7:24 AM Changeset in webkit [105622] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105613.

  • platform/qt/svg/W3C-SVG-1.1/masking-path-04-b-expected.png: Updated.
  • platform/qt/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt: Updated.
7:17 AM Changeset in webkit [105621] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: IndexedDBModel should keep track of requests sent to the backend.
https://bugs.webkit.org/show_bug.cgi?id=76705

Reviewed by Pavel Feldman.

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

(WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):

  • inspector/InspectorIndexedDBAgent.h:
  • inspector/front-end/IndexedDBModel.js:

(WebInspector.IndexedDBModel):
(WebInspector.IndexedDBModel.prototype._frameDetached):
(WebInspector.IndexedDBModel.prototype._reset):
(WebInspector.IndexedDBModel.prototype._loadDatabaseNamesForFrame):
(WebInspector.IndexedDBRequestManager):
(WebInspector.IndexedDBRequestManager.prototype.requestDatabaseNamesForFrame.innerCallback):
(WebInspector.IndexedDBRequestManager.prototype.requestDatabaseNamesForFrame):
(WebInspector.IndexedDBRequestManager.prototype._databaseNamesLoaded):
(WebInspector.IndexedDBRequestManager.prototype._requestId):
(WebInspector.IndexedDBRequestManager.prototype._frameDetached):
(WebInspector.IndexedDBRequestManager.prototype._reset):
(WebInspector.IndexedDBRequestManager.DatabasesForFrameRequest):
(WebInspector.IndexedDBDispatcher):
(WebInspector.IndexedDBDispatcher.prototype.databaseNamesLoaded):

7:10 AM Changeset in webkit [105620] by pfeldman@chromium.org
  • 5 edits
    3 adds in trunk

Web Inspector: Inspecting an element inside an iframe no longer works
https://bugs.webkit.org/show_bug.cgi?id=76808

Reviewed by Timothy Hatcher.

Source/WebCore:

Test: http/tests/inspector/inspect-element.html

  • inspector/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::innerParentNode):

  • inspector/front-end/DOMAgent.js:

(WebInspector.DOMNode.prototype.getChildNodes.mycallback):
(WebInspector.DOMNode.prototype.getChildNodes):
(WebInspector.DOMNode.prototype._setChildrenPayload):

  • inspector/front-end/ElementsTreeOutline.js:

(WebInspector.ElementsTreeOutline.prototype._selectedNodeChanged):

LayoutTests:

  • http/tests/inspector/inspect-element-expected.txt: Added.
  • http/tests/inspector/inspect-element.html: Added.
  • http/tests/inspector/resources/inspect-element-iframe.html: Added.
6:52 AM Changeset in webkit [105619] by caseq@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: response.bodySize in HAR is invalid (negative) for cached resources
https://bugs.webkit.org/show_bug.cgi?id=76823

Reviewed by Yury Semikhatsky.

  • fix response.bodySize for cached resources;

Also some drive-by fixes:

  • pretty-print HAR when exported
  • proper annotation for JSON.stringify()
  • de-obfuscate a piece of code in TimelinePanel
  • inspector/front-end/HAREntry.js:

(WebInspector.HAREntry.prototype.get responseBodySize):

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkLogView.prototype._exportAll):
(WebInspector.NetworkLogView.prototype._exportResource):

6:45 AM Changeset in webkit [105618] by mario@webkit.org
  • 4 edits
    2 adds in trunk/Source/WebCore

[GTK] Refactor GTK's accessibilitity code to be more modular
https://bugs.webkit.org/show_bug.cgi?id=76783

Reviewed by Martin Robinson.

New files for the implementation of the AtkAction interface,
containing the related code from WebKitAccessibleWrapperAtk.cpp.

  • accessibility/gtk/WebKitAccessibleInterfaceAction.cpp: Added.

(core):
(webkitAccessibleActionInterfaceInit):
(webkitAccessibleActionDoAction):
(webkitAccessibleActionGetNActions):
(webkitAccessibleActionGetDescription):
(webkitAccessibleActionGetKeybinding):
(webkitAccessibleActionGetName):

  • accessibility/gtk/WebKitAccessibleInterfaceAction.h: Added.
  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Remove code

related to the implementation of the AtkAction interface.

Add new files to build files.

  • GNUmakefile.list.am: Add WebKitAccessibleInterfaceAction.[h|cpp].
  • WebCore.gypi: Ditto.
6:36 AM Changeset in webkit [105617] by mario@webkit.org
  • 2 edits in trunk/Tools

[GTK] run-gtk-tests randomly fails while running the xprop comand
https://bugs.webkit.org/show_bug.cgi?id=76817

Reviewed by Gustavo Noronha Silva.

No need to use xprop to remove the AT_SPI_BUS property since
run-gtk-tests will always run new instances of Xvfb.

  • Scripts/run-gtk-tests:

(TestRunner): Unskip TestWebKitAccessibility.
(TestRunner.run): Uncomment lines for launching the accessibility
bus and registry daemon, and remove lines for running xprop.

6:32 AM Changeset in webkit [105616] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Don't warn about override and final being C++11 extensions

Clang will emit a warning when these extensions are used without passing
--std=c++11, but we use feature checking to decide if we have the right
extensions, so we can safely ignore these warnings. The XCode and Windows
project files have the same workaround.

The reason for adding the flag to QMAKE_OBJECTIVE_CFLAGS as well is that
we only have one extra compiler for Objective-C, which is also used for
Objective-C++ sources, so we have to pass the flag, even if it doesn't
make sense for Objective-C.

Reviewed by Simon Hausmann.

6:12 AM Changeset in webkit [105615] by antonm@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed tweaking of test expectations: it should be IMAGE instead of IMAGE+TEXT.

  • platform/chromium/test_expectations.txt:
6:03 AM Changeset in webkit [105614] by antonm@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed rebaseline after r105613 (SVG animation repaint issue...).

  • platform/chromium-mac-leopard/svg/custom/relative-sized-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/svg/custom/relative-sized-image-expected.png: Added.
5:05 AM BuildingGtk edited by kov@webkit.org
(diff)
5:01 AM BuildingGtk edited by kov@webkit.org
(diff)
5:00 AM BuildingGtk edited by kov@webkit.org
(diff)
4:59 AM BuildingGtk edited by kov@webkit.org
Add info on WEBKIT_EXTRA_MODULE{S,SETS} (diff)
4:48 AM Changeset in webkit [105613] by Nikolas Zimmermann
  • 9 edits
    6 adds in trunk

SVG animation repaint issue with image and dynamic clipPath
https://bugs.webkit.org/show_bug.cgi?id=76559

Reviewed by Zoltan Herczeg.

Source/WebCore:

Based on patch by Kelly Norton <knorton@google.com>. I extended the patch
to correctly handle relative length resolution as well.

RenderSVGImage doesn't react on setNeedsBoundariesUpdate() calls
and thus fails to update its boundaries in some cases.

The logic is also inconsistent, compared to the other renderers.
Fix that properly, by reusing the method used in RenderSVGViewportContainer.
Call calculateImageViewport() immediately, after initializing the LayoutRepainter.
Previously we resolved the image viewport in RenderSVGImage::updateFromElement. This is
wrong, as it queries the frameRect() of the RenderSVGRoot in a state, where the renderer
still needs layout, leading to wrong results.

I turned Kellys manual testcase into a predictable test, see svg/repaint/image-with-clip-path.svg
Relative sized image handling is tested in svg/custom/relative-sized-image.xhtml now.

Tests: svg/custom/relative-sized-image.xhtml

svg/repaint/image-with-clip-path.svg

  • rendering/svg/RenderSVGImage.cpp:

(WebCore::RenderSVGImage::RenderSVGImage):
(WebCore::RenderSVGImage::updateImageViewport):
(WebCore::RenderSVGImage::layout):

  • rendering/svg/RenderSVGImage.h:

(WebCore::RenderSVGImage::setNeedsBoundariesUpdate):

  • svg/SVGImageElement.cpp:

(WebCore::SVGImageElement::svgAttributeChanged):

LayoutTests:

Update results after fixing RenderSVGImage repainting.

  • platform/chromium-win/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.png:
  • platform/mac/svg/W3C-SVG-1.1/masking-path-04-b-expected.txt:
  • platform/mac/svg/custom/relative-sized-image-expected.png: Added.
  • platform/mac/svg/custom/relative-sized-image-expected.txt: Added.
  • platform/mac/svg/repaint/image-with-clip-path-expected.png: Added.
  • svg/custom/relative-sized-image.xhtml: Added.
  • svg/repaint/image-with-clip-path-expected.txt: Added.
  • svg/repaint/image-with-clip-path.svg: Added.
4:42 AM Changeset in webkit [105612] by Nikolas Zimmermann
  • 11 edits in trunk

<feImage> has problems referencing local elements
https://bugs.webkit.org/show_bug.cgi?id=76800

Reviewed by Zoltan Herczeg.

Source/WebCore:

<feImage> referencing local elements are currently rendered into an ImageBuffer
by SVGFEImageElement, using the local coordinates of the referenced renderer.

This approach is buggy and should be avoided, by moving the rendering fully
into SVGFEImage, which takes care of respecting the correct transformations.

This fixes <feImage> + local references, which currently breaks two tests in trunk.
Covered by existing tests.

  • rendering/svg/RenderSVGResourceFilterPrimitive.cpp:

(WebCore::RenderSVGResourceFilterPrimitive::determineFilterPrimitiveSubregion):

  • svg/SVGFEImageElement.cpp:

(WebCore::SVGFEImageElement::build):

  • svg/graphics/filters/SVGFEImage.cpp:

(WebCore::FEImage::FEImage):
(WebCore::FEImage::createWithImage):
(WebCore::FEImage::createWithIRIReference):
(WebCore::FEImage::determineAbsolutePaintRect):
(WebCore::FEImage::referencedRenderer):
(WebCore::FEImage::platformApplySoftware):
(WebCore::FEImage::externalRepresentation):

  • svg/graphics/filters/SVGFEImage.h:

(WebCore::FEImage::~FEImage):

  • svg/graphics/filters/SVGFilter.h:

(WebCore::SVGFilter::absoluteTransform):

LayoutTests:

Update svg/filters/feImage-reference-* results, which are fixed now.

  • platform/chromium/test_expectations.txt : Updated.
  • platform/mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png: Update for marginal change.
  • svg/filters/feImage-reference-invalidation-expected.png:
  • svg/filters/feImage-reference-svg-primitive-expected.png:
4:39 AM Changeset in webkit [105611] by Nikolas Zimmermann
  • 2 edits in trunk/Source/WebCore

2012-01-23 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix Mac build, by exporting a new symbol.

  • WebCore.exp.in:
3:55 AM Changeset in webkit [105610] by mario@webkit.org
  • 5 edits
    2 adds in trunk/Source/WebCore

[GTK] Refactor GTK's accessibilitity code to be more modular
https://bugs.webkit.org/show_bug.cgi?id=76783

Reviewed by Martin Robinson.

Move common function returnString() from the wrapper and
hyperlink implementations to a new utility file.

  • accessibility/gtk/WebKitAccessibleUtil.cpp: Added.

(returnString): Taken from WebKitAccessibleWrapperAtk.cpp and
WebKitAccessibleHyperlink.cpp

  • accessibility/gtk/WebKitAccessibleUtil.h: Added.
  • accessibility/gtk/WebKitAccessibleHyperlink.cpp: Remove local

implementation of returnString.

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Ditto.

Add new files to build files.

  • GNUmakefile.list.am: Add WebKitAccessibleUtil.[h|cpp].
  • WebCore.gypi: Ditto.
3:51 AM Changeset in webkit [105609] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

WebKit fails IETC composition event types
https://bugs.webkit.org/show_bug.cgi?id=76690

Unreviewed gardening after r105605.

  • fast/events/ime-composition-events-001-expected.txt: Updated.
3:46 AM Changeset in webkit [105608] by mario@webkit.org
  • 3 edits in trunk/Source/WebCore

[GTK] Refactor GTK's accessibilitity code to be more modular
https://bugs.webkit.org/show_bug.cgi?id=76783

Reviewed by Martin Robinson.

Fix typo in class struct (parent class field had the wrong type),
fix coding style issues and update date in headers.

  • accessibility/gtk/WebKitAccessibleHyperlink.cpp:
  • accessibility/gtk/WebKitAccessibleHyperlink.h:
3:43 AM Changeset in webkit [105607] by mario@webkit.org
  • 7 edits in trunk/Source

[GTK] Refactor GTK's accessibilitity code to be more modular
https://bugs.webkit.org/show_bug.cgi?id=76783

Reviewed by Martin Robinson.

Source/WebCore:

Rename WebKitAccessible's public functions to follow WebKit's
coding style and update callers.

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp:

(webkitAccessibleNew): Renamed from webkit_accessible_new.
(webkitAccessibleGetAccessibilityObject): Likewise.
(webkitAccessibleDetach):Likewise.
(webkitAccessibleGetFocusedElement): Likewise.

  • accessibility/gtk/WebKitAccessibleWrapperAtk.h:

Update calls to WebKitAccessible's public functions.

  • accessibility/gtk/AXObjectCacheAtk.cpp:

(WebCore::AXObjectCache::detachWrapper): Update call.
(WebCore::AXObjectCache::attachWrapper): Ditto.

  • accessibility/gtk/WebKitAccessibleHyperlink.cpp:

(core): Update call.

Source/WebKit/gtk:

Update callers to WebKitAccessible's public functions.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp:

(DumpRenderTreeSupportGtk::getFocusedAccessibleElement):
(modifyAccessibilityValue):
(DumpRenderTreeSupportGtk::accessibilityHelpText):

3:17 AM Changeset in webkit [105606] by Carlos Garcia Campos
  • 2 edits in trunk/Source/JavaScriptCore

Unreviewed. Fix make distcheck.

  • GNUmakefile.list.am: Add missing files, remove deleted files and

fix indentation.

2:41 AM Changeset in webkit [105605] by bashi@chromium.org
  • 4 edits in trunk

WebKit fails IETC composition event types
https://bugs.webkit.org/show_bug.cgi?id=76690

2:21 AM Changeset in webkit [105604] by mario@webkit.org
  • 10 edits
    2 moves in trunk/Source

[GTK] Refactor GTK's accessibilitity code to be more modular
https://bugs.webkit.org/show_bug.cgi?id=76783

Reviewed by Martin Robinson.

Source/WebCore:

Rename the file for the ATK AccessibilityObject wrapper to be more
coherent with the rest of the files in the same directory.

  • accessibility/gtk/WebKitAccessibleWrapperAtk.cpp: Renamed from

Source/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.cpp.
(fallbackObject):
(returnString):
(core):
(webkit_accessible_get_name):
(webkit_accessible_get_description):
(setAtkRelationSetFromCoreObject):
(isRootObject):
(atkParentOfRootObject):
(webkit_accessible_get_parent):
(getNChildrenForTable):
(webkit_accessible_get_n_children):
(getChildForTable):
(webkit_accessible_ref_child):
(getIndexInParentForCellInRow):
(webkit_accessible_get_index_in_parent):
(addAttributeToSet):
(webkit_accessible_get_attributes):
(atkRole):
(webkit_accessible_get_role):
(selectionBelongsToObject):
(isTextWithCaret):
(setAtkStateSetFromCoreObject):
(webkit_accessible_ref_state_set):
(webkit_accessible_ref_relation_set):
(webkit_accessible_init):
(webkit_accessible_finalize):
(webkit_accessible_class_init):
(webkit_accessible_get_type):
(webkit_accessible_action_do_action):
(webkit_accessible_action_get_n_actions):
(webkit_accessible_action_get_description):
(webkit_accessible_action_get_keybinding):
(webkit_accessible_action_get_name):
(atk_action_interface_init):
(listObjectForSelection):
(optionFromList):
(optionFromSelection):
(webkit_accessible_selection_add_selection):
(webkit_accessible_selection_clear_selection):
(webkit_accessible_selection_ref_selection):
(webkit_accessible_selection_get_selection_count):
(webkit_accessible_selection_is_child_selected):
(webkit_accessible_selection_remove_selection):
(webkit_accessible_selection_select_all_selection):
(atk_selection_interface_init):
(utf8Substr):
(convertUniCharToUTF8):
(textForRenderer):
(textForObject):
(webkit_accessible_text_get_text):
(getGailTextUtilForAtk):
(getPangoLayoutForAtk):
(webkit_accessible_text_get_text_after_offset):
(webkit_accessible_text_get_text_at_offset):
(webkit_accessible_text_get_text_before_offset):
(webkit_accessible_text_get_character_at_offset):
(webkit_accessible_text_get_caret_offset):
(baselinePositionForRenderObject):
(getAttributeSetForAccessibilityObject):
(compareAttribute):
(attributeSetDifference):
(accessibilityObjectLength):
(getAccessibilityObjectForOffset):
(getRunAttributesFromAccesibilityObject):
(webkit_accessible_text_get_run_attributes):
(webkit_accessible_text_get_default_attributes):
(textExtents):
(webkit_accessible_text_get_character_extents):
(webkit_accessible_text_get_range_extents):
(webkit_accessible_text_get_character_count):
(webkit_accessible_text_get_offset_at_point):
(getSelectionOffsetsForObject):
(webkit_accessible_text_get_n_selections):
(webkit_accessible_text_get_selection):
(webkit_accessible_text_add_selection):
(webkit_accessible_text_set_selection):
(webkit_accessible_text_remove_selection):
(webkit_accessible_text_set_caret_offset):
(atk_text_interface_init):
(webkit_accessible_editable_text_set_run_attributes):
(webkit_accessible_editable_text_set_text_contents):
(webkit_accessible_editable_text_insert_text):
(webkit_accessible_editable_text_copy_text):
(webkit_accessible_editable_text_cut_text):
(webkit_accessible_editable_text_delete_text):
(webkit_accessible_editable_text_paste_text):
(atk_editable_text_interface_init):
(contentsToAtk):
(atkToContents):
(webkit_accessible_component_ref_accessible_at_point):
(webkit_accessible_component_get_extents):
(webkit_accessible_component_grab_focus):
(atk_component_interface_init):
(webkit_accessible_image_get_image_position):
(webkit_accessible_image_get_image_description):
(webkit_accessible_image_get_image_size):
(atk_image_interface_init):
(cell):
(cellIndex):
(cellAtIndex):
(webkit_accessible_table_ref_at):
(webkit_accessible_table_get_index_at):
(webkit_accessible_table_get_column_at_index):
(webkit_accessible_table_get_row_at_index):
(webkit_accessible_table_get_n_columns):
(webkit_accessible_table_get_n_rows):
(webkit_accessible_table_get_column_extent_at):
(webkit_accessible_table_get_row_extent_at):
(webkit_accessible_table_get_column_header):
(webkit_accessible_table_get_row_header):
(webkit_accessible_table_get_caption):
(webkit_accessible_table_get_column_description):
(webkit_accessible_table_get_row_description):
(atk_table_interface_init):
(webkitAccessibleHypertextGetLink):
(webkitAccessibleHypertextGetNLinks):
(webkitAccessibleHypertextGetLinkIndex):
(atkHypertextInterfaceInit):
(webkitAccessibleHyperlinkImplGetHyperlink):
(atkHyperlinkImplInterfaceInit):
(documentAttributeValue):
(webkit_accessible_document_get_attribute_value):
(webkit_accessible_document_get_attributes):
(webkit_accessible_document_get_locale):
(atk_document_interface_init):
(webkitAccessibleValueGetCurrentValue):
(webkitAccessibleValueGetMaximumValue):
(webkitAccessibleValueGetMinimumValue):
(webkitAccessibleValueSetCurrentValue):
(webkitAccessibleValueGetMinimumIncrement):
(atkValueInterfaceInit):
(GetAtkInterfaceTypeFromWAIType):
(getInterfaceMaskFromObject):
(getUniqueAccessibilityTypeName):
(getAccessibilityTypeFromObject):
(webkit_accessible_new):
(webkit_accessible_get_accessibility_object):
(webkit_accessible_detach):
(webkit_accessible_get_focused_element):
(objectFocusedAndCaretOffsetUnignored):

  • accessibility/gtk/WebKitAccessibleWrapperAtk.h: Renamed from

Source/WebCore/accessibility/gtk/AccessibilityObjectWrapperAtk.h.

Update the include for the AccessibilityObject wrapper header.

  • accessibility/gtk/AXObjectCacheAtk.cpp: Update include.
  • accessibility/gtk/WebKitAccessibleHyperlink.cpp: Ditto.
  • accessibility/gtk/WebKitAccessibleHyperlink.h: Ditto.
  • editing/gtk/FrameSelectionGtk.cpp:

Update filename for the ATK wrapper in build files.

  • GNUmakefile.list.am: Updated.
  • WebCore.gypi: Updated.

Source/WebKit/gtk:

Update the include for the AccessibilityObject wrapper header.

  • WebCoreSupport/DumpRenderTreeSupportGtk.cpp: Update include.
  • webkit/webkitwebframe.cpp: Ditto.
2:14 AM Changeset in webkit [105603] by vestbo@webkit.org
  • 3 edits in trunk/Tools

[Qt] Change how build-webkit decides when to do full incremental builds

Instead of relying on update-webkit (which isn't run on the bots) to
decide when to do a full incremental build (make qmake), we let the
build-webkit script itself check the current SVN revision against the
previous build (by storing it in .webkit.config).

If the two differ we assume a full incremental build is needed, since
the new revisions might have introduced problematic things like new
Q_OBJECT macros. If not, we assume the developer is doing changes
locally, and revert to doing a plain 'make'.

In addition, when the build fails in the latter case, we inform the
developer of possible pitfalls and how to manually run 'make qmake'.

Reviewed by Ossy.

2:09 AM Changeset in webkit [105602] by caseq@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed follow-up to r105596, added missing test resources.

  • http/tests/inspector/resources/har-pages-iframe.html: Added.
  • http/tests/inspector/resources/har-pages-navigation-target.html: Added.
2:05 AM Changeset in webkit [105601] by mario@webkit.org
  • 2 edits in trunk/Tools

[GTK] run-gtk-tests randomly fails while running the xprop comand
https://bugs.webkit.org/show_bug.cgi?id=76817

Reviewed by Philippe Normand.

Temporarily comment the lines related to launching the ATSPI bus
and registry daemon, which are making the bots to fail randomly.

  • Scripts/run-gtk-tests:

(TestRunner): Skip TestWebKitAccessibility, as it won't run
properly if the ATSPI infrastructure is not properly initialized.
(TestRunner.run): Comment lines related to initialization of ATSPI.

2:04 AM Changeset in webkit [105600] by pfeldman@chromium.org
  • 18 edits in trunk/Source

Web Inspector: PageAgent.open() dosen't belong to the protocol.
https://bugs.webkit.org/show_bug.cgi?id=74790

Reviewed by Yury Semikhatsky.

Source/WebCore:

  • inspector/Inspector.json:
  • inspector/InspectorFrontendClient.h:
  • inspector/InspectorFrontendClientLocal.cpp:

(WebCore::InspectorFrontendClientLocal::openInNewTab):

  • inspector/InspectorFrontendClientLocal.h:
  • inspector/InspectorFrontendHost.cpp:

(WebCore::InspectorFrontendHost::openInNewTab):

  • inspector/InspectorFrontendHost.h:
  • inspector/InspectorFrontendHost.idl:
  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::navigate):

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

(WebInspector.ImageView.prototype._openInNewTab):

  • inspector/front-end/InspectorFrontendHostStub.js:

(.WebInspector.InspectorFrontendHostStub.prototype.openInNewTab):

  • inspector/front-end/NetworkPanel.js:

(WebInspector.NetworkDataGridNode.prototype._openInNewTab):

  • inspector/front-end/ResourcesPanel.js:

(WebInspector.FrameResourceTreeElement.prototype.ondblclick):

  • inspector/front-end/inspector.js:

(WebInspector.openResource):

Source/WebKit/chromium:

  • public/WebDevToolsFrontendClient.h:

(WebKit::WebDevToolsFrontendClient::openInNewTab):

  • src/InspectorFrontendClientImpl.cpp:

(WebKit::InspectorFrontendClientImpl::openInNewTab):
(WebKit::InspectorFrontendClientImpl::saveAs):

  • src/InspectorFrontendClientImpl.h:
1:59 AM Changeset in webkit [105599] by Philippe Normand
  • 9 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r101742.

  • platform/gtk/fast/forms/input-placeholder-visibility-1-expected.txt:
  • platform/gtk/fast/forms/input-placeholder-visibility-3-expected.txt:
  • platform/gtk/fast/forms/placeholder-position-expected.txt:
  • platform/gtk/fast/forms/placeholder-pseudo-style-expected.txt:
  • platform/gtk/fast/forms/search-styled-expected.txt:
  • platform/gtk/fast/forms/textarea-placeholder-pseudo-style-expected.txt:
  • platform/gtk/fast/forms/textarea-placeholder-visibility-1-expected.txt:
  • platform/gtk/fast/forms/textarea-placeholder-visibility-2-expected.txt:
1:23 AM Changeset in webkit [105598] by loislo@chromium.org
  • 6 edits in trunk/Source/WebCore

Web Inspector: DetailedHeapSnapshot: Replace the list of retainers with the expandable tree (to get rid of cycles)
https://bugs.webkit.org/show_bug.cgi?id=76813

Reviewed by Pavel Feldman.

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

(WebInspector.HeapSnapshotObjectNode):

  • inspector/front-end/DetailedHeapshotView.js:

(WebInspector.HeapSnapshotContainmentDataGrid.prototype.setDataSource):
(WebInspector.HeapSnapshotRetainmentDataGrid):
(WebInspector.HeapSnapshotRetainmentDataGrid.prototype.reset):
(WebInspector.DetailedHeapshotView.prototype._startRetainersHeaderDragging):

  • inspector/front-end/HeapSnapshot.js:

(WebInspector.HeapSnapshot.prototype.createRetainingEdgesProvider):
(WebInspector.HeapSnapshotEdgesProvider):

  • inspector/front-end/HeapSnapshotProxy.js:

(WebInspector.HeapSnapshotProxy.prototype.createEdgesProvider):
(WebInspector.HeapSnapshotProxy.prototype.createRetainingEdgesProvider):

1:13 AM Changeset in webkit [105597] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK gardening, marked 2 tests as flaky on Debug and
unskipped another needing new baselines.

  • platform/gtk/test_expectations.txt:
1:02 AM Changeset in webkit [105596] by caseq@chromium.org
  • 9 edits
    2 adds in trunk

Web Inspector: HAR pageref attributes are wrong and inconsistent with pages array
https://bugs.webkit.org/show_bug.cgi?id=76398

Reviewed by Pavel Feldman.

Source/WebCore:

  • introduce a notion of LoadPage;
  • move page load times to LoadPage;
  • associate network resources with LoadPage;
  • export pages for all available resoruces to HAR, not just the last page;
  • use page ids, not document URLs in HAR entries to refer to pages;
  • use page URL as a title field of a HAR page;
  • inspector/front-end/AuditsPanel.js:

(WebInspector.AuditsPanel):

  • inspector/front-end/HAREntry.js:

(WebInspector.HAREntry.prototype.build):
(WebInspector.HAREntry.prototype.get responseCompression):
(WebInspector.HARLog.prototype._buildPages):
(WebInspector.HARLog.prototype._convertPage):
(WebInspector.HARLog.prototype._pageEventTime):

  • inspector/front-end/NetworkLog.js:

(WebInspector.NetworkLog):
(WebInspector.NetworkLog.prototype._mainFrameNavigated):
(WebInspector.NetworkLog.prototype._onResourceStarted):
(WebInspector.Page):
(WebInspector.Page.prototype.get id):
(WebInspector.Page.prototype.get url):
(WebInspector.Page.prototype.get contentLoadTime):
(WebInspector.Page.prototype.set contentLoadTime):
(WebInspector.Page.prototype.get loadTime):
(WebInspector.Page.prototype.set loadTime):
(WebInspector.Page.prototype.get startTime):
(WebInspector.Page.prototype._bindResource):

  • inspector/front-end/NetworkManager.js:

(WebInspector.NetworkDispatcher.prototype.requestServedFromMemoryCache):

  • inspector/front-end/Resource.js:

(WebInspector.Resource.prototype.get page):
(WebInspector.Resource.prototype.set page):

  • inspector/front-end/ResourceTreeModel.js:

(WebInspector.ResourceTreeFrame):
(WebInspector.ResourceTreeFrame.prototype.get page):
(WebInspector.PageDispatcher.prototype.domContentEventFired):
(WebInspector.PageDispatcher.prototype.loadEventFired):

LayoutTests:

  • 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:
12:58 AM Changeset in webkit [105595] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK gardening, marked a test as flaky and unskipped
several needing new baselines.

  • platform/gtk/test_expectations.txt:

Jan 22, 2012:

11:08 PM Changeset in webkit [105594] by caseq@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/inspector/front-end/JavaScriptSourceFrame.js

Merge 105261 - 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):

TBR=pfeldman@chromium.org
Review URL: https://chromiumcodereview.appspot.com/9279002

9:36 PM Changeset in webkit [105593] by bashi@chromium.org
  • 1 edit in branches/chromium/963/Source/WebCore/platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp

Merge 105393 - [Chromium] Random characters got rendered as empty boxes or with incorrect glyphs even when a font is present
https://bugs.webkit.org/show_bug.cgi?id=76508

Patch by Kazuhiro Inaba <kinaba@chromium.org> on 2012-01-19
Reviewed by Kent Tamura.

Wrapped GetGlyphIndices() API calls so that when they failed we trigger font
loading outside the sandbox and retry the call.

No new auto tests since the bug involves the system's occasional cache behavior
and thus there's no reliable way to reproduce and test the situation.

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:

(WebCore::getGlyphIndices):
GDI call wrapper ensuring fonts to be loaded.
(WebCore::initSpaceGlyph):
Changed to use the wrapper function.
(WebCore::fillBMPGlyphs):
Changed to use the wrapper function.
Introduced scoped HDC management by HWndDC.
(WebCore::GlyphPage::fill):

TBR=commit-queue@webkit.org
Review URL: https://chromiumcodereview.appspot.com/9280004

6:13 PM Changeset in webkit [105592] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Windows python test build fix.

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner.init):

11:51 AM Changeset in webkit [105591] by Nikolas Zimmermann
  • 2 edits in trunk/LayoutTests

2012-01-22 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix typo, which makes the style bot warn on every patch.

  • platform/chromium/test_expectations.txt:
11:29 AM Changeset in webkit [105590] by mario@webkit.org
  • 7 edits in trunk/Source

[GTK] ATK text-caret-moved and text-selection-changed events not being emitted
https://bugs.webkit.org/show_bug.cgi?id=76069

Reviewed by Martin Robinson.

Source/WebCore:

Fix bug introduced with patch for Bug 72830.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::isDescendantOfObject): New function,
to check if an accessibility object is a descendant of other object.
(WebCore::AccessibilityObject::isAncestorOfObject): New function,
to check if an accessibility object is an ancestor of other object.

  • accessibility/AccessibilityObject.h:
  • accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:

(webkit_accessible_text_get_caret_offset): Make sure to pass the
right reference object to objectFocusedAndCaretOffsetUnignored.
(objectFocusedAndCaretOffsetUnignored): Use positionBeforeNode
instead of firstPositionInNode for calculating the begining of the
range used to calculate the offsets. Ensure that the reference
object is never a descendant of the actual object being returned.

  • editing/gtk/FrameSelectionGtk.cpp:

(WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
Pass the right accessibility object associated with the current
selection to objectFocusedAndCaretOffsetUnignored.

Source/WebKit/gtk:

Update caret browsing related unit tests to check emissions of
'text-caret-moved' and 'text-selection-changed' signals.

  • tests/testatk.c:

(textCaretMovedCallback): New callback for 'text-caret-moved'.
(testWebkitAtkCaretOffsets): Check emissions of 'text-caret-moved'.
(textSelectionChangedCallback): New callback for 'text-selection-changed'.
(testWebkitAtkTextSelections): Check emissions of 'text-selection-changed'.

4:50 AM Changeset in webkit [105589] by sergio@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed, unskipping passing test.

  • platform/gtk/Skipped: unskipped

http/tests/security/mixedContent/empty-url-plugin-in-frame.html

3:52 AM Changeset in webkit [105588] by sergio@webkit.org
  • 2 edits in trunk/LayoutTests

[GTK] Unreviewed, unskipping test passing after r79655.

  • platform/gtk/Skipped: unskipped http/tests/incremental/slow-utf8-html.pl
2:12 AM Changeset in webkit [105587] by sergio@webkit.org
  • 4 edits in trunk

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

Reviewed by Martin Robinson.

Tools:

DumpRenderTree should print "/" as the last path component if the
path is a lone slash instead of empty output.

  • DumpRenderTree/gtk/DumpRenderTree.cpp:

(webViewConsoleMessage):

LayoutTests:

Unskipped a couple of tests after fix.

  • platform/gtk/Skipped:
1:11 AM Changeset in webkit [105586] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Build fix for non-DFG platforms that error out on warn-unused-parameter.

  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFor):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):

  • bytecode/MethodCallLinkStatus.cpp:

(JSC::MethodCallLinkStatus::computeFor):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

12:47 AM Changeset in webkit [105585] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

Build fix for non-DFG platforms.

  • bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::computeFor):

  • bytecode/GetByIdStatus.cpp:

(JSC::GetByIdStatus::computeFor):

  • bytecode/MethodCallLinkStatus.cpp:

(JSC::MethodCallLinkStatus::computeFor):

  • bytecode/PutByIdStatus.cpp:

(JSC::PutByIdStatus::computeFor):

Jan 21, 2012:

7:45 PM Changeset in webkit [105584] by commit-queue@webkit.org
  • 2 edits in trunk

[GTK][PATCH] Enable MathML support by default
https://bugs.webkit.org/show_bug.cgi?id=76790

Patch by Priit Laes <plaes@plaes.org> on 2012-01-21
Reviewed by Martin Robinson.

  • configure.ac: Enable MathML by default.
7:30 PM Changeset in webkit [105583] by commit-queue@webkit.org
  • 13 edits in trunk/Source

[Chromium] Incremental texture updates are not atomic.
https://bugs.webkit.org/show_bug.cgi?id=72672

Patch by David Reveman <reveman@chromium.org> on 2012-01-21
Reviewed by Adam Barth.

Source/WebCore:

Use a new set of textures for each commit when incremental
texture updates are enabled.

This patch is tested by the following unit test:

  • CCLayerTreeHostTestAtomicCommit.runMultiThread
  • platform/graphics/chromium/ManagedTexture.cpp:

(WebCore::ManagedTexture::ManagedTexture):
(WebCore::ManagedTexture::steal):

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

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::deleteTextureAfterCommit):

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

(WebCore::CCSettings::CCSettings):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:

(WebCore::CCSingleThreadProxy::partialTextureUpdateCapability):

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

(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):
(WebCore::CCThreadProxy::partialTextureUpdateCapability):

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

Source/WebKit/chromium:

Add CCLayerTreeHostTestAtomicCommit test that verifies atomicity
of commits.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::create):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::createTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::deleteTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::bindTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::texture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::usedTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::CompositorFakeWebGraphicsContext3DWithTextureTracking):
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
(WTF::MockContentLayerDelegate::drawsContent):
(WTF::MockContentLayerDelegate::paintContents):
(WTF::MockContentLayerDelegate::notifySyncRequired):
(WTF::CCLayerTreeHostTestAtomicCommit::CCLayerTreeHostTestAtomicCommit):
(WTF::CCLayerTreeHostTestAtomicCommit::beginTest):
(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::layout):
(WTF::CCLayerTreeHostTestAtomicCommit::afterTest):
(WTF::TEST_F):

  • tests/CompositorFakeWebGraphicsContext3D.h:
5:43 PM Changeset in webkit [105582] by abarth@webkit.org
  • 1 edit
    2 adds in trunk/LayoutTests

Add baselines for test after http://trac.webkit.org/changeset/105575.
This baseline looks very similar to the existing non-Chromium baseline.

  • platform/chromium-mac-snowleopard/svg/filters/feImage-preserveAspectratio-expected.png: Added.
  • platform/chromium-win/svg/filters/feImage-preserveAspectratio-expected.png: Added.
5:36 PM Changeset in webkit [105581] by fpizlo@apple.com
  • 8 edits
    9 adds
    1 delete in trunk/Source/JavaScriptCore

DFG should not have code that directly decodes the states of old JIT inline
cache data structures
https://bugs.webkit.org/show_bug.cgi?id=76768

Reviewed by Sam Weinig.

Introduced new classes (like GetByIdStatus) that encapsulate the set of things
that the DFG would like to know about property accesses and calls. Whereas it
previously got this information by directly decoding the data structures used
by the old JIT for inline caching, it now uses these classes, which do the work
for it. This should make it somewhat more straight forward to introduce new
ways of profiling the same information.

Also hoisted StructureSet into bytecode/ from dfg/, because it's now used by
code in bytecode/.

Making this work right involved carefully ensuring that the heuristics for
choosing how to handle property accesses was at least as good as what we had
before, since I completely restructured that code. Currently the performance
looks neutral. Since I rewrote the code I did change some things that I never
liked before, like previously if a put_bu_id had executed exactly once then
we'd compile it as if it had taken slow-path. Executing once is special because
then the inline cache is not baked in, so there is no information about how the
DFG should optimize the code. Now this is rationalized: if the put_by_id does
not offer enough information to be optimized (i.e. had executed 0 or 1 times)
then we turn it into a forced OSR exit (i.e. a patch point). However, get_by_id
still has the old behavior; I left it that way because I didn't want to make
too many changes at once.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • Target.pri:
  • bytecode/CallLinkStatus.cpp: Added.

(JSC::CallLinkStatus::computeFor):

  • bytecode/CallLinkStatus.h: Added.

(JSC::CallLinkStatus::CallLinkStatus):
(JSC::CallLinkStatus::isSet):
(JSC::CallLinkStatus::operator!):
(JSC::CallLinkStatus::couldTakeSlowPath):
(JSC::CallLinkStatus::callTarget):

  • bytecode/GetByIdStatus.cpp: Added.

(JSC::GetByIdStatus::computeFor):

  • bytecode/GetByIdStatus.h: Added.

(JSC::GetByIdStatus::GetByIdStatus):
(JSC::GetByIdStatus::state):
(JSC::GetByIdStatus::isSet):
(JSC::GetByIdStatus::operator!):
(JSC::GetByIdStatus::isSimpleDirect):
(JSC::GetByIdStatus::takesSlowPath):
(JSC::GetByIdStatus::makesCalls):
(JSC::GetByIdStatus::structureSet):
(JSC::GetByIdStatus::offset):

  • bytecode/MethodCallLinkStatus.cpp: Added.

(JSC::MethodCallLinkStatus::computeFor):

  • bytecode/MethodCallLinkStatus.h: Added.

(JSC::MethodCallLinkStatus::MethodCallLinkStatus):
(JSC::MethodCallLinkStatus::isSet):
(JSC::MethodCallLinkStatus::operator!):
(JSC::MethodCallLinkStatus::needsPrototypeCheck):
(JSC::MethodCallLinkStatus::structure):
(JSC::MethodCallLinkStatus::prototypeStructure):
(JSC::MethodCallLinkStatus::function):
(JSC::MethodCallLinkStatus::prototype):

  • bytecode/PutByIdStatus.cpp: Added.

(JSC::PutByIdStatus::computeFor):

  • bytecode/PutByIdStatus.h: Added.

(JSC::PutByIdStatus::PutByIdStatus):
(JSC::PutByIdStatus::state):
(JSC::PutByIdStatus::isSet):
(JSC::PutByIdStatus::operator!):
(JSC::PutByIdStatus::isSimpleReplace):
(JSC::PutByIdStatus::isSimpleTransition):
(JSC::PutByIdStatus::takesSlowPath):
(JSC::PutByIdStatus::oldStructure):
(JSC::PutByIdStatus::newStructure):
(JSC::PutByIdStatus::structureChain):
(JSC::PutByIdStatus::offset):

  • bytecode/StructureSet.h: Added.

(JSC::StructureSet::StructureSet):
(JSC::StructureSet::clear):
(JSC::StructureSet::add):
(JSC::StructureSet::addAll):
(JSC::StructureSet::remove):
(JSC::StructureSet::contains):
(JSC::StructureSet::isSubsetOf):
(JSC::StructureSet::isSupersetOf):
(JSC::StructureSet::size):
(JSC::StructureSet::at):
(JSC::StructureSet::operator[]):
(JSC::StructureSet::last):
(JSC::StructureSet::predictionFromStructures):
(JSC::StructureSet::operator==):
(JSC::StructureSet::dump):

  • dfg/DFGAbstractValue.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGStructureSet.h: Removed.
5:09 PM Changeset in webkit [105580] by commit-queue@webkit.org
  • 4 edits
    6 adds in trunk

Add .url attribute alongside .URL in EventSource and WebSocket to comply with the specs but not break existing usage.
https://bugs.webkit.org/show_bug.cgi?id=40899

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

Source/WebCore:

Tests: fast/eventsource/eventsource-url-attribute.html

http/tests/websocket/tests/hixie76/url-attribute.html
http/tests/websocket/tests/hybi/url-attribute.html

  • page/EventSource.idl:
  • websockets/WebSocket.idl:

LayoutTests:

  • fast/eventsource/eventsource-url-attribute-expected.txt: Added.
  • fast/eventsource/eventsource-url-attribute.html: Added.
  • http/tests/websocket/tests/hixie76/url-attribute-expected.txt: Added.
  • http/tests/websocket/tests/hixie76/url-attribute.html: Added.
  • http/tests/websocket/tests/hybi/url-attribute-expected.txt: Added.
  • http/tests/websocket/tests/hybi/url-attribute.html: Added.
4:48 PM Changeset in webkit [105579] by fpizlo@apple.com
  • 5 edits in trunk/Source/JavaScriptCore

JIT compilation should not require ExecState
https://bugs.webkit.org/show_bug.cgi?id=76729
<rdar://problem/10731545>

Reviewed by Gavin Barraclough.

Changed the relevant JIT driver functions to take JSGlobalData& instead of
ExecState*, since really they just needed the global data.

  • dfg/DFGDriver.cpp:

(JSC::DFG::compile):
(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • dfg/DFGDriver.h:

(JSC::DFG::tryCompile):
(JSC::DFG::tryCompileFunction):

  • jit/JITDriver.h:

(JSC::jitCompileIfAppropriate):
(JSC::jitCompileFunctionIfAppropriate):

  • runtime/Executable.cpp:

(JSC::EvalExecutable::compileInternal):
(JSC::ProgramExecutable::compileInternal):
(JSC::FunctionExecutable::compileForCallInternal):
(JSC::FunctionExecutable::compileForConstructInternal):

3:56 PM Changeset in webkit [105578] by commit-queue@webkit.org
  • 13 edits in trunk/Source

Unreviewed, rolling out r105564.
http://trac.webkit.org/changeset/105564
https://bugs.webkit.org/show_bug.cgi?id=76792

Does not compile on Chromium Mac (Requested by abarth on
#webkit).

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

Source/WebCore:

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

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::commitComplete):

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

(WebCore::CCSettings::CCSettings):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:
  • platform/graphics/chromium/cc/CCThreadProxy.cpp:

(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):

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

Source/WebKit/chromium:

  • tests/CCLayerTreeHostTest.cpp:

(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):

  • tests/CompositorFakeWebGraphicsContext3D.h:
9:19 AM Changeset in webkit [105577] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed weekend gardening. Skip the new failing tests to paint the bots green.

  • platform/qt-wk2/Skipped:
  • platform/qt/Skipped:
7:40 AM Changeset in webkit [105576] by cmarrin@apple.com
  • 19 edits
    6 adds in trunk

Implement hardware accelerated Brightness and contrast filters
https://bugs.webkit.org/show_bug.cgi?id=75521
https://bugs.webkit.org/show_bug.cgi?id=76719

Reviewed by Simon Fraser.

Source/WebCore:

Implemented hardware accelerated brightness and contrast filters. This also fixes
the bug where grayscale filter was accidentally never getting hardware accelerated.
It also complies with proposed spec changes for the brightness filter to be additive
rather than multiplicative, according to https://bugs.webkit.org/show_bug.cgi?id=76719.
Had to make both fixes in the same patch because I had to change the allowed brightness
values for the hardware version, so I had to change the software version as well.

Tests: css3/filters/effect-brightness-hw.html

css3/filters/effect-contrast-hw.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseBuiltinFilterArguments):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::createFilterOperations):

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

(PlatformCALayer::setFilters):
(PlatformCALayer::filtersCanBeComposited):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::FilterEffectRenderer::build):

LayoutTests:

New tests for hardware accelerated brightness and contrast filters. Also
added brightness and contrast values to effect-combined-hw test. And changed
brightness values in effect-brightness.html to reflect new spec.
Also fixed parsing and computed style tests to reflect new brightness spec.

  • css3/filters/effect-brightness-expected.png:
  • css3/filters/effect-brightness-hw-expected.png: Added.
  • css3/filters/effect-brightness-hw-expected.txt: Added.
  • css3/filters/effect-brightness-hw.html: Added.
  • css3/filters/effect-brightness.html:
  • css3/filters/effect-combined-expected.png:
  • css3/filters/effect-combined-hw-expected.png:
  • css3/filters/effect-combined-hw-expected.txt:
  • css3/filters/effect-combined-hw.html:
  • css3/filters/effect-combined.html:
  • css3/filters/effect-contrast-hw-expected.png: Added.
  • css3/filters/effect-contrast-hw-expected.txt: Added.
  • css3/filters/effect-contrast-hw.html: Added.
  • css3/filters/filter-property-computed-style-expected.txt:
  • css3/filters/filter-property-parsing-expected.txt:
  • css3/filters/filter-property-parsing-invalid-expected.txt:
  • css3/filters/script-tests/filter-property-computed-style.js:
  • css3/filters/script-tests/filter-property-parsing-invalid.js:
  • css3/filters/script-tests/filter-property-parsing.js:
4:28 AM Changeset in webkit [105575] by Nikolas Zimmermann
  • 5 edits
    3 adds in trunk

2012-01-21 Nikolas Zimmermann <nzimmermann@rim.com>

<feImage> ignores preserveAspectRatio="none"
https://bugs.webkit.org/show_bug.cgi?id=76780

Reviewed by Antti Koivisto.

Add new testcase covering preserveAspectRatio="none" + <feImage>, which is now fixed.

  • platform/chromium/test_expectations.txt: Add new test, that needs a rebaseline.
  • platform/mac/svg/filters/feImage-preserveAspectratio-expected.png: Added.
  • platform/mac/svg/filters/feImage-preserveAspectratio-expected.txt: Added.
  • svg/filters/feImage-preserveAspectratio.svg: Added.

2012-01-21 Nikolas Zimmermann <nzimmermann@rim.com>

<feImage> ignores preserveAspectRatio="none"
https://bugs.webkit.org/show_bug.cgi?id=76780

Reviewed by Antti Koivisto.

preserveAspectRatio="none" was ignored in SVGFEImage. It always called transformRect() w/o checking
whether it was supposed to transform the rect or not - move code from RenderSVGImage right into
transformRect(), to do nothing if preserveAspectRatio="none" was given.

Test: svg/filters/feImage-preserveAspectratio.svg

  • rendering/svg/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint):
  • svg/SVGPreserveAspectRatio.cpp: (WebCore::SVGPreserveAspectRatio::transformRect):
2:18 AM Changeset in webkit [105574] by jochen@chromium.org
  • 3 edits
    6 adds in trunk

history.replaceState should update the HistoryItem to use a GET method if previously non-GET (POST)
https://bugs.webkit.org/show_bug.cgi?id=76721

Reviewed by Mihai Parparita.

Source/WebCore:

Tests: http/tests/history/replacestate-post-to-get-2.html

http/tests/history/replacestate-post-to-get.html

  • loader/HistoryController.cpp:

(WebCore::HistoryController::replaceState):

LayoutTests:

  • http/tests/history/replacestate-post-to-get-2-expected.txt: Added.
  • http/tests/history/replacestate-post-to-get-2.html: Added.
  • http/tests/history/replacestate-post-to-get-expected.txt: Added.
  • http/tests/history/replacestate-post-to-get.html: Added.
  • http/tests/history/resources/replacestate-current.php: Added.
  • http/tests/history/resources/replacestate-forward-back.php: Added.
2:00 AM Changeset in webkit [105573] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk

Null dereference in SVGDocumentExtensions::removePendingResource when updating <use>'s href
https://bugs.webkit.org/show_bug.cgi?id=69284

Patch by Florin Malita <fmalita@google.com> on 2012-01-21
Reviewed by Nikolas Zimmermann.

Source/WebCore:

Test: svg/custom/use-crash-pending-resource.svg

The crash is caused by assumptions in SVGUseElement that xlink:href is the only
pending resource. This patch adds support for dealing with multiple pending resources.

  • rendering/svg/RenderSVGResourceContainer.cpp:

(WebCore::RenderSVGResourceContainer::registerResource):

  • svg/SVGDocumentExtensions.cpp:

(WebCore::SVGDocumentExtensions::hasPendingResource):
(WebCore::SVGDocumentExtensions::isElementPendingResources):
(WebCore::SVGDocumentExtensions::isElementPendingResource):
(WebCore::SVGDocumentExtensions::removePendingResourceForElement):

  • svg/SVGDocumentExtensions.h:
  • svg/SVGStyledElement.cpp:

(WebCore::SVGStyledElement::buildPendingResourcesIfNeeded):
(WebCore::SVGStyledElement::clearHasPendingResourcesIfPossible):
Renamed SVGDocumentExtensions::hasPendingResources -> Renamed SVGDocumentExtensions::hasPendingResource.
Renamed SVGDocumentExtensions::isElementInPendingResources -> SVGDocumentExtensions::isElementPendingResources.
Added support for querying and removing pending resources for a specific element.

  • svg/SVGUseElement.cpp:

(WebCore::SVGUseElement::svgAttributeChanged):
(WebCore::SVGUseElement::buildPendingResource):
Refactored to support multiple pending resources.

LayoutTests:

  • svg/custom/use-crash-pending-resource-expected.txt: Added.
  • svg/custom/use-crash-pending-resource.svg: Added.
12:51 AM Changeset in webkit [105572] by commit-queue@webkit.org
  • 4 edits in trunk

REGRESSION (Safari 5.0.5 - ToT): crash in SVG test http://dev.w3.org/SVG/profiles/1.1F2/test/harness/htmlObjectApproved/animate-elem-39-t.html
https://bugs.webkit.org/show_bug.cgi?id=64671

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-21
Reviewed by Nikolas Zimmermann.

Source/WebCore:

No new tests. This change is to fix crashes in existing tests.

  • svg/animation/SVGSMILElement.cpp:

(WebCore::SVGSMILElement::beginListChanged): If the new begin time is
later than the current end time, and the event time is also after then
end time (but we have not yet updated to that time) and the animation
is active, we need to make the animation inactive explicitly.

LayoutTests:

  • platform/chromium/test_expectations.txt: Marking all svg/W3C-SVG-1.1/animate-elem* tests

as flakey pending this change being committed and new results.

12:42 AM Changeset in webkit [105571] by timothy@apple.com
  • 4 edits in trunk/Source/WebKit2

Make WebKit2 remember the height of the Web Inspector when it is docked.

https://webkit.org/b/76769

Reviewed by Dan Bernstein.

  • Shared/WebPreferencesStore.h: Added InspectorAttachedHeight.
  • UIProcess/WebInspectorProxy.cpp:

(WebKit::WebInspectorProxy::setAttachedWindowHeight): Call WebPreferencesStore::setInspectorAttachedHeight.

  • UIProcess/mac/WebInspectorProxyMac.mm:

(WebKit::WebInspectorProxy::platformAttach): Set the height of the inspector's WKView to inspectorAttachedHeight.
(WebKit::WebInspectorProxy::platformSetAttachedWindowHeight): Remove unneeded setNeedsDisplay: calls.

12:17 AM Changeset in webkit [105570] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebCore

PopupMenuClient::multiple() should be const
https://bugs.webkit.org/show_bug.cgi?id=76771

Patch by Benjamin Poulain <bpoulain@apple.com> on 2012-01-21
Reviewed by Kent Tamura.

  • platform/PopupMenuClient.h:

(WebCore::PopupMenuClient::multiple):

  • rendering/RenderMenuList.cpp:

(WebCore::RenderMenuList::multiple):

  • rendering/RenderMenuList.h:

Jan 20, 2012:

10:06 PM Changeset in webkit [105569] by commit-queue@webkit.org
  • 6 edits
    4 adds in trunk/Source/WebCore

Switch indexeddb to use supplemental IDL for DOMWindow
https://bugs.webkit.org/show_bug.cgi?id=76723

Patch by Mark Pilgrim <pilgrim@chromium.org> on 2012-01-20
Reviewed by Adam Barth.

No new tests required, all existing tests pass.

  • Modules/indexeddb: Added.
  • Modules/indexeddb/DOMWindowIndexedDatabase.cpp: Added. webkitIndexedDB() method previously in DOMWindow.cpp

(WebCore::DOMWindowIndexedDatabase::DOMWindowIndexedDatabase):
(WebCore::DOMWindowIndexedDatabase::~DOMWindowIndexedDatabase):
(WebCore::DOMWindowIndexedDatabase::webkitIndexedDB):

  • Modules/indexeddb/DOMWindowIndexedDatabase.h: Added.
  • Modules/indexeddb/DOMWindowIndexedDatabase.idl: Added. attributes previously in DOMWindow.idl
  • WebCore.gyp/WebCore.gyp: add Modules/indexeddb/ directory
  • WebCore.gypi: add Modules/indexeddb/*
  • page/DOMWindow.cpp: remove webkitIndexedDB() method, add accessor methods for m_idbFactory

(WebCore::DOMWindow::getIDBFactory):
(WebCore::DOMWindow::setIDBFactory):

  • page/DOMWindow.h:
  • page/DOMWindow.idl:
8:11 PM Changeset in webkit [105568] by levin@chromium.org
  • 2 edits in trunk/Source/WebCore

Allow isContextThread to be called while in ~ScriptExecutionContext.
https://bugs.webkit.org/show_bug.cgi?id=76756

Reviewed by Adam Barth.

It is possible for objects to get torn down or get called from ~ScriptExecutionContext
and in turn call isContextThread. The resulting behavior is undefined. This change defines
the behavior. I don't know of any places that do this but I have a test that is rarely
failing due to isContextThread being false. This is my best guess as to why, and I
don't see a reason to try to avoid calling isContextThread at this point.

No new functionality exposed so no new tests.

  • dom/ScriptExecutionContext.h:

(WebCore::ScriptExecutionContext::isContextThread):

7:32 PM Changeset in webkit [105567] by levin@chromium.org
  • 3 edits in trunk/Tools

The leaky DC check should use adoptPtr as a signal instead of OwnPtr to get less false positives.
https://bugs.webkit.org/show_bug.cgi?id=76752

Reviewed by Eric Seidel.

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

(check_for_leaky_patterns):

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

(LeakyPatternTest.test_create_dc):
(LeakyPatternTest.test_create_compatible_dc):

7:19 PM Changeset in webkit [105566] by commit-queue@webkit.org
  • 6 edits in trunk/Source

[chromium] Write unit tests for compositor-thread zooming
https://bugs.webkit.org/show_bug.cgi?id=71529

Patch by Alexandre Elias <aelias@google.com> on 2012-01-20
Reviewed by James Robinson.

Add unit tests for pinch zoom and page scale animation. Includes
small cleanups in CCLayerTreeHostImpl for testability.

Source/WebCore:

  • platform/graphics/chromium/cc/CCInputHandler.h:
  • platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:

(WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
(WebCore::CCLayerTreeHostImpl::setViewportSize):

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

Source/WebKit/chromium:

  • tests/CCLayerTreeHostImplTest.cpp:

(WebKit::CCLayerTreeHostImplTest::setupScrollAndContentsLayers):
(WebKit::TEST_F):

7:03 PM Changeset in webkit [105565] by ostapenko.viatcheslav@nokia.com
  • 2 edits in trunk/Source/WebKit2

[Qt] [WK2] Division by zero error in QtViewportInteractionEngine::setItemRectVisible
https://bugs.webkit.org/show_bug.cgi?id=76674

Reviewed by Kenneth Rohde Christiansen.

Make sure that itemRect is not empty.

  • UIProcess/qt/QtViewportInteractionEngine.cpp:

(WebKit::QtViewportInteractionEngine::setItemRectVisible):

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

[Chromium] Incremental texture updates are not atomic.
https://bugs.webkit.org/show_bug.cgi?id=72672

Patch by David Reveman <reveman@chromium.org> on 2012-01-20
Reviewed by James Robinson.

Source/WebCore:

Use a new set of textures for each commit when incremental
texture updates are enabled.

This patch is tested by the following unit test:

  • CCLayerTreeHostTestAtomicCommit.runMultiThread
  • platform/graphics/chromium/ManagedTexture.cpp:

(WebCore::ManagedTexture::ManagedTexture):
(WebCore::ManagedTexture::steal):

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

(WebCore::TiledLayerChromium::prepareToUpdateTiles):

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

(WebCore::CCLayerTreeHost::initialize):
(WebCore::CCLayerTreeHost::commitComplete):
(WebCore::CCLayerTreeHost::deleteTextureAfterCommit):

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

(WebCore::CCSettings::CCSettings):

  • platform/graphics/chromium/cc/CCProxy.h:
  • platform/graphics/chromium/cc/CCSingleThreadProxy.h:

(WebCore::CCSingleThreadProxy::partialTextureUpdateCapability):

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

(WebCore::CCThreadProxy::scheduledActionUpdateMoreResources):
(WebCore::CCThreadProxy::partialTextureUpdateCapability):

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

Source/WebKit/chromium:

Add CCLayerTreeHostTestAtomicCommit test that verifies atomicity
of commits.

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::create):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::createTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::deleteTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::bindTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::texture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::numUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::usedTexture):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::resetUsedTextures):
(WTF::CompositorFakeWebGraphicsContext3DWithTextureTracking::CompositorFakeWebGraphicsContext3DWithTextureTracking):
(WTF::MockLayerTreeHostClient::createLayerTreeHostContext3D):
(WTF::MockContentLayerDelegate::drawsContent):
(WTF::MockContentLayerDelegate::paintContents):
(WTF::MockContentLayerDelegate::notifySyncRequired):
(WTF::CCLayerTreeHostTestAtomicCommit::CCLayerTreeHostTestAtomicCommit):
(WTF::CCLayerTreeHostTestAtomicCommit::beginTest):
(WTF::CCLayerTreeHostTestAtomicCommit::commitCompleteOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::drawLayersOnCCThread):
(WTF::CCLayerTreeHostTestAtomicCommit::layout):
(WTF::CCLayerTreeHostTestAtomicCommit::afterTest):
(WTF::TEST_F):

  • tests/CompositorFakeWebGraphicsContext3D.h:
6:35 PM Changeset in webkit [105563] by eae@chromium.org
  • 720 edits in branches/subpixellayout/Source

Merge missing trunk changes (up until 105194) into branch.

6:34 PM Changeset in webkit [105562] by crogers@google.com
  • 2 edits in trunk/Source/WebCore

De-zippering incorrectly snaps to target gain
https://bugs.webkit.org/show_bug.cgi?id=76741

Reviewed by Kenneth Russell.

  • platform/audio/AudioBus.cpp:
6:21 PM Changeset in webkit [105561] by commit-queue@webkit.org
  • 3 edits
    4 adds in trunk

[chromium] Partially filled pixels do not occlude pixels below them.
https://bugs.webkit.org/show_bug.cgi?id=76658

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

Source/WebCore:

Test: compositing/culling/tile-occlusion-boundaries.html

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

(WebCore::enclosedIntRect):
(WebCore::CCQuadCuller::cullOccludedQuads):

LayoutTests:

  • compositing/culling/tile-occlusion-boundaries-expected.png: Added.
  • compositing/culling/tile-occlusion-boundaries-expected.txt: Added.
  • compositing/culling/tile-occlusion-boundaries.html: Added.
  • compositing/resources/green.jpg: Added.
6:06 PM Changeset in webkit [105560] by shawnsingh@chromium.org
  • 2 edits in trunk/Tools

Changed my status in commiters.py

Unreviewed.

  • Scripts/webkitpy/common/config/committers.py:
5:34 PM Changeset in webkit [105559] by commit-queue@webkit.org
  • 4 edits in trunk/Source

Small cleanup of {get,put}CurrentFrame for WebMediaPlayerClientImpl/CCVideoLayerImpl.
https://bugs.webkit.org/show_bug.cgi?id=76332

Patch by Ami Fischman <fischman@chromium.org> on 2012-01-20
Reviewed by James Robinson.

Source/WebCore:

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

(WebCore::CCVideoLayerImpl::draw):

Source/WebKit/chromium:

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::getCurrentFrame):
(WebKit::WebMediaPlayerClientImpl::putCurrentFrame):

5:16 PM Changeset in webkit [105558] by sfalken@apple.com
  • 2 edits in trunk/Source/WebKit2

Drag/drop of a file into a WebView on Windows needs to allow access to that file
https://bugs.webkit.org/show_bug.cgi?id=76753
<rdar://problem/10731719>

Reviewed by Alexey Proskuryakov.

The Windows drag/drop code path was missing the code to open a file read exception.

Added code to match the Mac version, while allowing directories and multiple files to
also be dragged (matching our previous behavior).

  • UIProcess/win/WebView.cpp:

(WebKit::maybeCreateSandboxExtensionFromDragData): Added.
(WebKit::WebView::Drop): Add a universal read exception if we're dragging a file into a WebView to open it.

5:11 PM Changeset in webkit [105557] by abarth@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add a Chromium-specific baselines for
fast/dom/Window/open-invalid-url.html. Although this expected result
says "FAIL", the behavior seems to be reasonable.

  • platform/chromium/fast/dom/Window/open-invalid-url-expected.txt: Added.
4:45 PM Changeset in webkit [105556] by beidson@apple.com
  • 2 edits in trunk/Source/WebCore

<rdar://problem/9328684> and https://bugs.webkit.org/show_bug.cgi?id=62764 Frequent crashes due to null frame below ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache

Reviewed by Sam Weinig.

No way to reproduce without special malloc debugging and that doesn't even reproduce on all platforms. So still no test.

  • loader/DocumentLoader.cpp:

(WebCore::DocumentLoader::detachFromFrame): Protect m_frame for the duration of this method.

4:36 PM Changeset in webkit [105555] by levin@chromium.org
  • 3 edits in trunk/Source/JavaScriptCore

Make OwnPtr<HDC> work for the Chromium Windows port.
https://bugs.webkit.org/show_bug.cgi?id=76738

Reviewed by Jian Li.

Chromium Windows build.

  • wtf/OwnPtrCommon.h: Changed from platform WIN to OS WIN for

OwnPtr<HDC> and similar constructs.

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

WebCore should not send invalid URLs to client createWindow methods.
https://bugs.webkit.org/show_bug.cgi?id=39017

Unreviewed test fix.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::createWindow): Let empty URLs through.
4:05 PM Changeset in webkit [105553] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from 118291 to 118493.

  • DEPS:
4:03 PM Changeset in webkit [105552] by weinig@apple.com
  • 23 edits in trunk/Source

Make WebCore RunLoop work for WebKit1
https://bugs.webkit.org/show_bug.cgi?id=76739

Reviewed by Anders Carlsson.

Source/WebCore:

  • platform/RunLoop.cpp:

Specialize RunLoop initialization for Mac, where it can happen on any thread.

  • platform/RunLoop.h:

Add RunLoop constructor that takes a CFRunLoopRef on the mac for initializing
the main thread.

  • platform/mac/RunLoopMac.mm:

(WebCore::RunLoop::initializeMainRunLoop):
Add new implementation that can work from any thread (and multiple threads at the
same time if necessary).

(WebCore::RunLoop::current):
Treat the main thread specially, not storing it in thread specific data.

(WebCore::RunLoop::main):
Copy main accessor since it needs access to the file static.

(WebCore::RunLoop::RunLoop):
Add constructor which takes a CFRunLoopRef.

Source/WebKit/mac:

  • Carbon/CarbonWindowAdapter.mm:

(+[CarbonWindowAdapter initialize]):

  • History/WebBackForwardList.mm:

(+[WebBackForwardList initialize]):

  • History/WebHistoryItem.mm:

(+[WebHistoryItem initialize]):

  • Misc/WebElementDictionary.mm:

(+[WebElementDictionary initialize]):

  • Misc/WebIconDatabase.mm:

(+[WebIconDatabase initialize]):

  • Plugins/Hosted/WebHostedNetscapePluginView.mm:

(+[WebHostedNetscapePluginView initialize]):

  • Plugins/WebBaseNetscapePluginView.mm:
  • Plugins/WebBasePluginPackage.mm:
  • Plugins/WebNetscapePluginView.mm:

(+[WebNetscapePluginView initialize]):

  • WebCoreSupport/WebEditorClient.mm:

(+[WebUndoStep initialize]):

  • WebCoreSupport/WebFrameLoaderClient.mm:
  • WebView/WebArchive.mm:

(+[WebArchivePrivate initialize]):

  • WebView/WebDataSource.mm:

(+[WebDataSourcePrivate initialize]):

  • WebView/WebHTMLView.mm:

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

  • WebView/WebResource.mm:

(+[WebResourcePrivate initialize]):

  • WebView/WebTextIterator.mm:

(+[WebTextIteratorPrivate initialize]):

  • WebView/WebView.mm:

(+[WebView initialize]):

  • WebView/WebViewData.mm:

(+[WebViewPrivate initialize]):
Initialized the main run loop in addition to other initialization.

3:47 PM Changeset in webkit [105551] by ojan@chromium.org
  • 2 edits in trunk/Tools

run-webkit-tests --lint-test-files crawls the whole LayoutTests subtree
https://bugs.webkit.org/show_bug.cgi?id=76748

Reviewed by Ryosuke Niwa.

It crawls the whole subtree and then doesn't use the data. Cutting this out
saves 4 seconds warm and 17 seconds cold on my Mac Pro.

  • Scripts/webkitpy/layout_tests/run_webkit_tests.py:

(run):

3:36 PM Changeset in webkit [105550] by abarth@webkit.org
  • 2 edits in trunk/Tools

Another tiny tweak to the garden-o-matic CSS. This makes things line
up slightly nicer when there aren't any failures.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/onebar.css:

(#summary):

3:23 PM Changeset in webkit [105549] by timothy_horton@apple.com
  • 4 edits
    2 adds in trunk

Crash in RenderSVGResourceContainer::markAllClientsForInvalidation
https://bugs.webkit.org/show_bug.cgi?id=76606
<rdar://problem/10720970>

Reviewed by Dirk Schulze.

Notify SVGResourcesCache and superclass when RenderSVGInline is about
to be destroyed, preventing a crash.

Test: svg/custom/crash-inline-container-client.html

  • rendering/svg/RenderSVGInline.cpp:

(WebCore::RenderSVGInline::willBeDestroyed):

  • rendering/svg/RenderSVGInline.h:
  • svg/custom/crash-inline-container-client-expected.txt: Added.
  • svg/custom/crash-inline-container-client.html: Added.
3:22 PM Changeset in webkit [105548] by ap@apple.com
  • 3 edits
    2 adds in trunk

WebCore should not send invalid URLs to client createWindow methods.
https://bugs.webkit.org/show_bug.cgi?id=39017

Reviewed by Sam Weinig.

Test: fast/dom/window/open-invalid-url.html

  • page/DOMWindow.cpp: (WebCore::DOMWindow::createWindow): Bail out early for invalid URLs.
3:21 PM Changeset in webkit [105547] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Revert r105545. Something got broken about gclient/gyp but I can't figure out what.

  • DEPS:
3:00 PM Changeset in webkit [105546] by caio.oliveira@openbossa.org
  • 2 edits in trunk/Source/WebCore

Remove unused variable in RenderReplaced after r105513
https://bugs.webkit.org/show_bug.cgi?id=76742

Reviewed by Daniel Bates.

  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):

2:59 PM Changeset in webkit [105545] by rniwa@webkit.org
  • 2 edits in trunk/Source/WebKit/chromium

Roll Chromium DEPS from 118291 to 118530.

  • DEPS:
2:49 PM Changeset in webkit [105544] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[chromium] Plumb damage from accelerated canvas 2D.
https://bugs.webkit.org/show_bug.cgi?id=76728

Patch by Jonathan Backer <backer@chromium.org> on 2012-01-20
Reviewed by Kenneth Russell.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::contentChanged):

2:17 PM Changeset in webkit [105543] by rniwa@webkit.org
  • 5 edits in trunk/Tools

run-perf-tests should support --test-results-server option
https://bugs.webkit.org/show_bug.cgi?id=76680

Reviewed by Adam Barth.

Add --test-results-server, --builder-name, and --build-number options to run-perf-tests
to be used by perf bots. Also refactor file_uploader as needed.

  • Scripts/webkitpy/common/net/file_uploader.py:

(FileUploader.init):
(FileUploader.upload_single_file):
(FileUploader.upload_as_multipart_form_data):
(FileUploader):
(FileUploader._upload_data):
(FileUploader._upload_data.callback):

  • Scripts/webkitpy/layout_tests/layout_package/json_results_generator.py:

(JSONResultsGeneratorBase.upload_json_files):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner):
(PerfTestsRunner._parse_args):
(PerfTestsRunner.run):
(PerfTestsRunner._generate_json):
(PerfTestsRunner._upload_json):
(PerfTestsRunner._run_tests_set):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(create_runner):
(test_run_with_upload_json):
(test_run_with_upload_json.mock_upload_json):
(test_upload_json):
(test_upload_json.MockFileUploader):
(test_upload_json.MockFileUploader.init):
(test_upload_json.MockFileUploader.upload_single_file):
(test_parse_args):

2:16 PM Changeset in webkit [105542] by jchaffraix@webkit.org
  • 4 edits
    2 adds in trunk

Crash in RenderTable::borderBefore
https://bugs.webkit.org/show_bug.cgi?id=75215

Reviewed by David Hyatt.

Source/WebCore:

Test: fast/table/crash-beforeBorder-dirty-section.html

This is a regression from r97661 that added some calls to get the object's borders but tables are a
special case and they may need to recompute some sections' pointers.

The whole sections' pointers lazy recomputation logic is unfortunately far from being bullet proof and
this change is only a mitigation for the current crash.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::borderBefore):
(WebCore::RenderTable::borderAfter):
Make sure we recompute our sections. The change was made here to avoid hitting the
path used inside the table code (ie outerBorder{Before|After}) that shouldn't be
affected.

  • rendering/RenderTable.h:

(WebCore::RenderTable::topSection):
Added an ASSERT to catch more bad use in the future.

LayoutTests:

  • fast/table/crash-beforeBorder-dirty-section-expected.txt: Added.
  • fast/table/crash-beforeBorder-dirty-section.html: Added.
2:10 PM Changeset in webkit [105541] by leviw@chromium.org
  • 14 edits in branches/subpixellayout/Source

Fixing widget painting on all platforms, and fixing an issue where nested NSViews were handed a subpixel value for the visible area. Correcting an enclosingIntRect usage in PaintInfo. Cleaning up some unnecessary changes to shrink patch noise.

1:19 PM Changeset in webkit [105540] by Simon Fraser
  • 3 edits in trunk/Source/WebKit/mac

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

This breaks builds.

  • WebView/WebPreferences.mm:
  • WebView/WebPreferencesPrivate.h:
1:05 PM Changeset in webkit [105539] by ggaren@apple.com
  • 7 edits in trunk/Source/JavaScriptCore

Removed some regexp entry boilerplate code
https://bugs.webkit.org/show_bug.cgi?id=76687

Reviewed by Darin Adler.

1% - 2% speedup on regexp tests, no change overall.

  • runtime/RegExp.cpp:

(JSC::RegExp::match):

  • ASSERT that our startIndex is non-negative, because anything less would be uncivilized.


  • ASSERT that our input is not the null string for the same reason.
  • No need to test for startOffset being past the end of the string, since the regular expression engine will do this test for us.
  • No need to initialize the output vector, since the regular expression engine will fill it in for us.
  • yarr/YarrInterpreter.cpp:

(JSC::Yarr::Interpreter::interpret):

  • yarr/YarrJIT.cpp:

(JSC::Yarr::YarrGenerator::compile):

RegExp used to do these jobs for us, but now we do them for ourselves
because it's a better separation of concerns, and the JIT can do them
more efficiently than C++ code:

  • Test for "past the end" before doing any matching -- otherwise a* will match with zero length past the end of the string, which is wrong.
  • Initialize the output vector before doing any matching.
1:05 PM Changeset in webkit [105538] by commit-queue@webkit.org
  • 3 edits
    1 add in trunk

Add proper offset to position right click to simulate a context menu invocation.
https://bugs.webkit.org/show_bug.cgi?id=76421

Patch by Marc-Andre Decoste <mad@chromium.org> on 2012-01-20
Reviewed by Ojan Vafai.

.:

  • ManualTests/win/contextmenu-key3.html: Added.

Source/WebCore:

Manual tests only because DRT doesn't support context menu key.

  • page/EventHandler.cpp:

(WebCore::EventHandler::sendContextMenuEventForKey):

1:01 PM Changeset in webkit [105537] by fpizlo@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Build fix for no-DFG configuration.
Needed for <rdar://problem/10727689>.

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitProfiledOpcode):

  • jit/JIT.h:

(JSC::JIT::emitValueProfilingSite):

12:55 PM Changeset in webkit [105536] by abarth@webkit.org
  • 2 edits in trunk/Tools

The party time image overlaps real content! This patch makes the
image centered vertically.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/styles/onebar.css:

(#onebar.partytime #summary):

12:40 PM Changeset in webkit [105535] by ojan@chromium.org
  • 6 edits in trunk/Tools

Refactor TestExpectationsParser in preparation for caching the results
https://bugs.webkit.org/show_bug.cgi?id=76669

Reviewed by Dimitri Glazkov.

Make everything private expect for the parse method.
Eventually, we'll need the expectations lines to not be modified
outside of TestExpectationsParser so we can cache the results.
This makes check-webkit-style of the chromium test_expectations.txt file
go from ~17 seconds to ~12 seconds on my Mac Pro.

This patch is just a refactor in preparation, so no new tests.

  • Scripts/webkitpy/layout_tests/controllers/test_expectations_editor_unittest.py:

(TestExpectationEditorTests.make_parsed_expectation_lines):

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationParser.parse):
(TestExpectationParser):
(TestExpectationParser._parse_line):
(TestExpectationParser._tokenize):
(TestExpectationParser._tokenize_list):
(TestExpectationsModel._clear_expectations_for_test):
(TestExpectations.init):
(TestExpectations._add_expectations):
(TestExpectations._add_skipped_tests):

  • Scripts/webkitpy/layout_tests/models/test_expectations_unittest.py:

(TestExpectationParserTests.test_tokenize_blank):
(TestExpectationParserTests.test_tokenize_missing_colon):
(TestExpectationParserTests.test_tokenize_extra_colon):
(TestExpectationParserTests.test_tokenize_empty_comment):
(TestExpectationParserTests.test_tokenize_comment):
(TestExpectationParserTests.test_tokenize_missing_equal):
(TestExpectationParserTests.test_tokenize_extra_equal):
(TestExpectationParserTests.test_tokenize_valid):
(TestExpectationParserTests.test_tokenize_valid_with_comment):
(TestExpectationParserTests.test_tokenize_valid_with_multiple_modifiers):
(TestExpectationParserTests.test_parse_empty_string):
(TestExpectationSerializerTests.assert_round_trip):
(TestExpectationSerializerTests.assert_list_round_trip):

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

(OptimizeExpectations.execute):

  • Scripts/webkitpy/tool/servers/gardeningserver.py:

(GardeningExpectationsUpdater.update_expectations):

12:22 PM Changeset in webkit [105534] by abarth@webkit.org
  • 3 edits in trunk/Tools

Follow-up to previous patch: don't produce NaN when the revision number
is missing.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model_unittests.js:
12:22 PM Changeset in webkit [105533] by fpizlo@apple.com
  • 20 edits in trunk/Source/JavaScriptCore

Bytecode instructions that may have value profiling should have a direct inline
link to the ValueProfile instance
https://bugs.webkit.org/show_bug.cgi?id=76682
<rdar://problem/10727689>

Reviewed by Sam Weinig.

Each opcode that gets value profiled now has a link to its ValueProfile. This
required rationalizing the emission of value profiles for opcode combos, like
op_method_check/op_get_by_id and op_call/op_call_put_result. It only makes
sense for one of them to have a value profile link, and it makes most sense
for it to be the one that actually sets the result. The previous behavior was
to have op_method_check profile for op_get_by_id when they were used together,
but otherwise for op_get_by_id to have its own profiles. op_call already did
the right thing; all profiling was done by op_call_put_result.

But rationalizing this code required breaking some of the natural boundaries
that the code had; for instance the code in DFG that emits a GetById in place
of both op_method_check and op_get_by_id must now know that it's the latter of
those that has the value profile, while the first of those constitutes the OSR
target. Hence each CodeOrigin must now have two bytecode indices - one for
OSR exit and one for profiling.

Finally this change required some refiddling of our optimization heuristics,
because now all code blocks have "more instructions" due to the value profile
slots.

  • bytecode/CodeBlock.cpp:

(JSC::CodeBlock::printGetByIdOp):
(JSC::CodeBlock::dump):

  • bytecode/CodeBlock.h:

(JSC::CodeBlock::valueProfileForBytecodeOffset):

  • bytecode/CodeOrigin.h:

(JSC::CodeOrigin::CodeOrigin):
(JSC::CodeOrigin::bytecodeIndexForValueProfile):

  • bytecode/Instruction.h:

(JSC::Instruction::Instruction):

  • bytecode/Opcode.h:
  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitProfiledOpcode):
(JSC::BytecodeGenerator::emitResolve):
(JSC::BytecodeGenerator::emitGetScopedVar):
(JSC::BytecodeGenerator::emitResolveBase):
(JSC::BytecodeGenerator::emitResolveBaseForPut):
(JSC::BytecodeGenerator::emitResolveWithBase):
(JSC::BytecodeGenerator::emitResolveWithThis):
(JSC::BytecodeGenerator::emitGetById):
(JSC::BytecodeGenerator::emitGetByVal):
(JSC::BytecodeGenerator::emitCall):
(JSC::BytecodeGenerator::emitCallVarargs):
(JSC::BytecodeGenerator::emitConstruct):

  • bytecompiler/BytecodeGenerator.h:
  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::ByteCodeParser):
(JSC::DFG::ByteCodeParser::currentCodeOrigin):
(JSC::DFG::ByteCodeParser::addCall):
(JSC::DFG::ByteCodeParser::getPredictionWithoutOSRExit):
(JSC::DFG::ByteCodeParser::getPrediction):
(JSC::DFG::ByteCodeParser::handleCall):
(JSC::DFG::ByteCodeParser::handleInlining):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::parse):

  • dfg/DFGGraph.h:

(JSC::DFG::Graph::valueProfileFor):

  • jit/JIT.h:

(JSC::JIT::emitValueProfilingSite):

  • jit/JITCall.cpp:

(JSC::JIT::emit_op_call_put_result):

  • jit/JITCall32_64.cpp:

(JSC::JIT::emit_op_call_put_result):

  • jit/JITInlineMethods.h:

(JSC::JIT::emitValueProfilingSite):

  • jit/JITOpcodes.cpp:

(JSC::JIT::emit_op_resolve):
(JSC::JIT::emit_op_resolve_base):
(JSC::JIT::emit_op_resolve_skip):
(JSC::JIT::emit_op_resolve_global):
(JSC::JIT::emitSlow_op_resolve_global):
(JSC::JIT::emit_op_resolve_with_base):
(JSC::JIT::emit_op_resolve_with_this):
(JSC::JIT::emitSlow_op_resolve_global_dynamic):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::emit_op_resolve):
(JSC::JIT::emit_op_resolve_base):
(JSC::JIT::emit_op_resolve_skip):
(JSC::JIT::emit_op_resolve_global):
(JSC::JIT::emitSlow_op_resolve_global):
(JSC::JIT::emit_op_resolve_with_base):
(JSC::JIT::emit_op_resolve_with_this):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_method_check):
(JSC::JIT::emitSlow_op_method_check):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emit_op_get_scoped_var):
(JSC::JIT::emit_op_get_global_var):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_method_check):
(JSC::JIT::emitSlow_op_method_check):
(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emitSlow_op_get_by_val):
(JSC::JIT::emit_op_get_by_id):
(JSC::JIT::emitSlow_op_get_by_id):
(JSC::JIT::emit_op_get_scoped_var):
(JSC::JIT::emit_op_get_global_var):

  • jit/JITStubCall.h:

(JSC::JITStubCall::callWithValueProfiling):

  • runtime/Options.cpp:

(JSC::Options::initializeOptions):

12:21 PM Changeset in webkit [105532] by commit-queue@webkit.org
  • 4 edits in trunk

Unreviewed, rolling out r105426.
http://trac.webkit.org/changeset/105426
https://bugs.webkit.org/show_bug.cgi?id=76726

Might have caused a 20% regression in the PLT (Requested by
abarth|gardener on #webkit).

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

Source/WebCore:

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

  • platform/mac-snowleopard/Skipped:
12:08 PM Changeset in webkit [105531] by commit-queue@webkit.org
  • 17 edits in trunk/Source

[chromium] Revert a couple of changes in fileapi/ that break tests in chromeos.
https://bugs.webkit.org/show_bug.cgi?id=76718

Patch by Sadrul Habib Chowdhury <sadrul@chromium.org> on 2012-01-20
Reviewed by Darin Fisher.

Source/WebCore:

  • fileapi/BlobURL.cpp:

(WebCore::BlobURL::getIdentifier):
(WebCore::BlobURL::createBlobURL):

  • fileapi/BlobURL.h:

(WebCore::BlobURL::blobProtocol):

  • fileapi/DOMFileSystemBase.cpp:

(WebCore::DOMFileSystemBase::crackFileSystemURL):

  • fileapi/DOMFileSystemBase.h:
  • fileapi/EntryBase.cpp:

(WebCore::EntryBase::toURL):

  • fileapi/FileWriter.cpp:

(WebCore::FileWriter::write):
(WebCore::FileWriter::truncate):

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::webkitRequestFileSystem):

  • page/DOMWindow.h:
  • platform/AsyncFileSystem.cpp:
  • platform/AsyncFileSystem.h:
  • workers/WorkerContext.cpp:

(WebCore::WorkerContext::webkitRequestFileSystem):
(WebCore::WorkerContext::webkitRequestFileSystemSync):

Source/WebKit/chromium:

  • public/platform/WebFileSystem.h:
  • src/AssertMatchingEnums.cpp:
  • src/AsyncFileSystemChromium.cpp:
  • src/AsyncFileSystemChromium.h:
11:44 AM Changeset in webkit [105530] by abarth@webkit.org
  • 4 edits in trunk/Tools

Garden-o-matic should tell me which revisions have been checked by all the bots
https://bugs.webkit.org/show_bug.cgi?id=76722

Reviewed by Dimitri Glazkov.

This information helps me know when it's safe for me to roll a
candidate revision.

  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/garden-o-matic.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model.js:
  • BuildSlaveSupport/build.webkit.org-config/public_html/TestFailures/scripts/model_unittests.js:
11:23 AM Changeset in webkit [105529] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebCore

Refactor canvas drawing to be more data driven
https://bugs.webkit.org/show_bug.cgi?id=76635

CCCanvasLayerImpl no longer handles drawing itself, but produces a list of CCCanvasDrawQuads.
These quads are then drawn by LayerRendererChromium.

This is a refactor, so no new tests were added.

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

  • platform/graphics/chromium/LayerRendererChromium.cpp:

(WebCore::LayerRendererChromium::drawCanvasQuad):

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

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

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

(WebCore::CCCanvasDrawQuad::textureId):
(WebCore::CCCanvasDrawQuad::hasAlpha):
(WebCore::CCCanvasDrawQuad::premultipliedAlpha):

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

(WebCore::CCCanvasLayerImpl::appendQuads):

  • platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
11:08 AM Changeset in webkit [105528] by fsamuel@chromium.org
  • 4 edits in trunk/Source/WebKit/chromium

[Chromium] Do not recompute viewport on same page navigation
https://bugs.webkit.org/show_bug.cgi?id=75576

Reviewed by Darin Fisher.

Added parameter isNavigationWithinPage to WebViewImpl::didCommitLoad
that indicates whether a same-page navigation has just occurred.

The page scale factor flag is reset only on navigation to a new page.
If the flag is not set, viewport and page scale will be recomputed on
layoutUpdated.

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchDidNavigateWithinPage):
(WebKit::FrameLoaderClientImpl::dispatchDidCommitLoad):

  • src/WebViewImpl.cpp:

(WebKit::WebViewImpl::didCommitLoad):
(WebKit::WebViewImpl::observeNewNavigation):

  • src/WebViewImpl.h:
11:06 AM Changeset in webkit [105527] by abarth@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

Add new baselines for a test introduced in
http://trac.webkit.org/changeset/105515. These all appear to be
correct.

  • platform/chromium-linux/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-mac-leopard/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-win/fast/borders/scaled-border-image-expected.png: Added.
  • platform/chromium-win/fast/borders/scaled-border-image-expected.txt: Added.
11:03 AM Changeset in webkit [105526] by abarth@webkit.org
  • 10 edits
    9 adds
    23 deletes in trunk/LayoutTests

Update baselines after http://trac.webkit.org/changeset/105513. Even
though these results look different on different platforms, the tests
seem to be aiming for the two boxes to look the same, which they do.

Also, removed some redundant results.

  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux-x86/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/chromium-linux/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug101674-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla/bugs/bug86708-expected.png:
  • platform/chromium-mac-leopard/tables/mozilla_expected_failures/bugs/97619-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug101674-expected.png: Added.
  • platform/chromium-mac-snowleopard/tables/mozilla/bugs/bug86708-expected.png: Added.
  • platform/chromium-mac-snowleopard/tables/mozilla_expected_failures/bugs/97619-expected.png: Added.
  • platform/chromium-mac/tables/mozilla/bugs/bug101674-expected.png: Removed.
  • platform/chromium-mac/tables/mozilla/bugs/bug86708-expected.png: Removed.
  • platform/chromium-mac/tables/mozilla_expected_failures/bugs/97619-expected.png: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Removed.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Removed.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Added.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Added.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Added.
10:52 AM Changeset in webkit [105525] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

This test fails.

  • platform/chromium/test_expectations.txt:
10:17 AM Changeset in webkit [105524] by inferno@chromium.org
  • 3 edits
    2 adds in trunk

Crash in xsltParseGlobalVariable.
https://bugs.webkit.org/show_bug.cgi?id=75978

Reviewed by Andreas Kling.

Source/WebCore:

The code missed to reset the stylesheet pointer after we fail
to compile the XSLT stylesheet. As a result, the stylesheet gets
reused with a removed document in the next transformToFragment call.

Test: fast/xsl/xslt-transform-to-fragment-crash.html

  • xml/XSLTProcessorLibxslt.cpp:

(WebCore::XSLTProcessor::transformToString):

LayoutTests:

  • fast/xsl/xslt-transform-to-fragment-crash-expected.txt: Added.
  • fast/xsl/xslt-transform-to-fragment-crash.html: Added.
9:36 AM Changeset in webkit [105523] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] REGRESSION(r105517): It made 49 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=76708

  • platform/qt-wk2/Skipped: Typo fix after last change.
9:35 AM Changeset in webkit [105522] by vestbo@webkit.org
  • 2 edits in trunk/Tools

build-webkit: Don't spit out congratulations message on Ctrl+C

Reviewed by Andreas Kling.

9:07 AM Changeset in webkit [105521] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt][WK2] REGRESSION(r105517): It made 49 tests timeout
https://bugs.webkit.org/show_bug.cgi?id=76708

  • platform/qt-wk2/Skipped: Skip failing tests to paint the bot green.
9:06 AM Changeset in webkit [105520] by Philippe Normand
  • 4 edits in trunk/LayoutTests

Unreviewed, GTK rebaseline after r105486.

  • fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/gtk/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/gtk/fast/js/global-constructors-expected.txt:
8:49 AM Changeset in webkit [105519] by Philippe Normand
  • 2 edits in trunk/Tools

[GTK] Allow extra jhbuild modulesets
https://bugs.webkit.org/show_bug.cgi?id=76691

Reviewed by Gustavo Noronha Silva.

  • gtk/jhbuildrc: Extra modulesets and modules can be added in

JHBuild using the WEBKIT_EXTRA_MODULESETS and WEBKIT_EXTRA_MODULES
env variables respectively. Use comma-separated values. Example:
WEBKIT_EXTRA_MODULES=file:///path/to/module.set,file:///other/path.

8:32 AM Changeset in webkit [105518] by Csaba Osztrogonác
  • 22 edits in trunk/LayoutTests

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Unreviewed gardening after r105513, update Qt specific results.

  • platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/qt/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/qt/svg/foreignObject/text-tref-02-b-expected.txt:
  • platform/qt/svg/wicd/rightsizing-grid-expected.png:
  • platform/qt/svg/wicd/rightsizing-grid-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug101674-expected.png:
  • platform/qt/tables/mozilla/bugs/bug101674-expected.txt:
  • platform/qt/tables/mozilla/bugs/bug86708-expected.png:
  • platform/qt/tables/mozilla/bugs/bug86708-expected.txt:
  • platform/qt/tables/mozilla_expected_failures/bugs/97619-expected.png:
  • platform/qt/tables/mozilla_expected_failures/bugs/97619-expected.txt:
8:24 AM Changeset in webkit [105517] by jocelyn.turcotte@nokia.com
  • 9 edits in trunk/Source/WebKit2

[Qt] Trigger forcing accelerated compositing from the UI process side.
https://bugs.webkit.org/show_bug.cgi?id=76296

Reviewed by Noam Rosenthal.

Some messages can be sent from the web view to the LayerTreeHost before
accelerated compositing is entered on the web process and signaled back.
By letting the UI process decide if AC has to be forced, we can create
the LayerTreeHostProxy earlier to send messages to the web process while
AC is being entered there.

This patch also fixes the flow of DidRenderFrame and RenderNextFrame messages
by setting the m_waitingForUIProcess flag properly and only send the
RenderNextFrame once the painting thread on the UI process is ready to paint.

This fixes the first visible content rect message not being received when
loading pages from the disk.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):

  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::flushLayerChanges):
(WebKit::LayerTreeHostProxy::didRenderFrame):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::DrawingAreaImpl):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::performScheduledLayerFlush):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::platformInitialize):

7:56 AM Changeset in webkit [105516] by Nikolas Zimmermann
  • 13 edits in trunk/LayoutTests

2012-01-20 Nikolas Zimmermann <nzimmermann@rim.com>

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Not reviewed. Rebaseline gtk results.

  • platform/gtk/fast/block/float/015-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/gtk/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/gtk/svg/custom/use-font-face-crash-expected.txt:
  • platform/gtk/svg/wicd/rightsizing-grid-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug101674-expected.txt:
  • platform/gtk/tables/mozilla/bugs/bug86708-expected.txt:
  • platform/gtk/tables/mozilla_expected_failures/bugs/97619-expected.txt:
7:51 AM Changeset in webkit [105515] by Nikolas Zimmermann
  • 3 edits
    3 adds in trunk

REGRESSION (r98852): apple.com navigation bar is broken under full-page zoom
https://bugs.webkit.org/show_bug.cgi?id=76249

Reviewed by Andreas Kling.

Source/WebCore:

Fix regression with full-page zoom & border-image. paintNinePieceImage() expects local, unzoomed coordinates.
Restore the behaviour as it was before r98852, fixing the regression.

Test: fast/borders/scaled-border-image.html

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::paintNinePieceImage):

LayoutTests:

Add new test covering zooming + border-image, which regressed.

  • fast/borders/scaled-border-image.html: Added.
  • platform/mac/fast/borders/scaled-border-image-expected.png: Added.
  • platform/mac/fast/borders/scaled-border-image-expected.txt: Added.
7:33 AM Changeset in webkit [105514] by mihnea@adobe.com
  • 39 edits
    3 adds in trunk

[CSSRegion]Expose DOM interface for WebKitCSSRegionRule
https://bugs.webkit.org/show_bug.cgi?id=73985

Reviewed by Antti Koivisto.

Source/WebCore:

Start by exposing the interface and the cssRules attribute of type CSSRuleList.
Test: fast/regions/webkit-region-rule.html

  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • DerivedSources.pri:
  • GNUmakefile.list.am:
  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSCSSRuleCustom.cpp:

(WebCore::toJS):

  • bindings/objc/DOMCSS.mm:

(kitClass):

  • bindings/v8/custom/V8CSSRuleCustom.cpp:

(WebCore::toV8):

  • css/WebKitCSSRegionRule.cpp:
  • css/WebKitCSSRegionRule.h:
  • css/WebKitCSSRegionRule.idl:
  • page/DOMWindow.idl:

LayoutTests:

Start by exposing the interface and the cssRules attribute of type CSSRuleList.

  • fast/dom/Window/window-properties-expected.txt:
  • fast/dom/Window/window-property-descriptors-expected.txt:
  • fast/dom/prototype-inheritance-2-expected.txt:
  • fast/regions/webkit-region-rule-expected.txt: Added.
  • fast/regions/webkit-region-rule.html: Added.
  • 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:
  • platform/mac/fast/dom/Window/window-properties-expected.txt:
  • platform/mac/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/mac/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/mac/fast/js/global-constructors-expected.txt:
  • platform/qt-arm/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt-wk2/fast/dom/Window/window-properties-expected.txt:
  • platform/qt-wk2/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt-wk2/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/qt/fast/dom/Window/window-properties-expected.txt:
  • platform/qt/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/qt/fast/js/global-constructors-expected.txt:
  • platform/win/fast/dom/Window/window-properties-expected.txt:
  • platform/win/fast/dom/Window/window-property-descriptors-expected.txt:
  • platform/win/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/win/fast/js/global-constructors-expected.txt:
7:30 AM Changeset in webkit [105513] by Nikolas Zimmermann
  • 58 edits in trunk

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Reviewed by Antti Koivisto.

Source/WebCore:

Remove a gazillion of hacks out of our SVG implementation, by correctly differentiating between the
SVG width/height attributes and the CSS width/height properties. They need to be treated independently
when handling the intrinsic size negotiation, according to both CSS 2.1 & SVG 1.1 2nd Edition specs.

Fixes several bugs in the LayoutTests/svg/custom/*object*sizing tests, we now match Opera perfectly. FF still has some bugs, and IE9 as well.

  • css/svg.css: Remove hardcoded, width/height: 100% on <svg>.
  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation): Make 'intrinsicRatio' a float, and add 'intrinsicSize' as seperated FloatSize, to avoid confusion.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Add forgotton case for percentage intrinsic sizes, that lead to workarounds in other places, that can now be removed.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth): Directly use imageHasRelativeWidth/Height(), it does differentiate between SVG/CSS width/height attributes/properties now.
(WebCore::RenderImage::computeIntrinsicRatioInformation): Adapt to 'intrinsicRatio' argument change.

  • rendering/RenderImage.h: Ditto.
  • rendering/RenderReplaced.cpp: Refactor existing code, break out firstContainingBlockWithLogicalWidth/hasReplacedLogicalWidth/hasReplacedLogicalHeight/hasAutoHeightOrContainingBlockWithAutoHeight.

(WebCore::firstContainingBlockWithLogicalWidth): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalWidth): Refactored, and exported, so SVGSVGElement::widthAttributeEstablishesViewport() can use it.
(WebCore::hasAutoHeightOrContainingBlockWithAutoHeight): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalHeight): Refactored, and exported, so SVGSVGElement::heightAttributeEstablishesViewport() can use it.
(WebCore::RenderReplaced::computeReplacedLogicalWidth): Adapt to 'intrinsicRatio' changes ('intrinsicSize' is now decoupled from it). Refactor so that RenderSVGRoot can directly use it as well!
(WebCore::RenderReplaced::computeReplacedLogicalHeight): Ditto.

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Only determine the intrinsic size & ratio using the SVG width/height attributes, not the CSS width/height properties, as it's specified.
(WebCore::resolveLengthAttributeForSVG): Helper function for computeReplacedLogicalWidth/Height, that scales Length values that come from SVG width/height attributes.
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Finally remove home-brewn size computation logic - it can be fully shared with RenderReplaced now that we inherit from it.
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::RenderSVGViewportContainer::viewport): Export viewport() for easier length resolution.

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport): Finally clean up this hell, and make it easy to understand. Only need to resolve lengths against either RenderSVGRoot or RenderSVGViewportContainer now.

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport): Remove wrong code and disable this. Its not used, and we have no test coverage for it. Its current implementation didn't make any sense.
(WebCore::SVGSVGElement::parseMappedAttribute): Remove hacks mapping SVG width/height attributes to CSS properties.
(WebCore::SVGSVGElement::svgAttributeChanged): Ditto.
(WebCore::SVGSVGElement::localCoordinateSpaceTransform): Refactored.
(WebCore::SVGSVGElement::currentViewBoxRect): Ditto.
(WebCore::SVGSVGElement::currentViewportSize): Ditto.
(WebCore::SVGSVGElement::widthAttributeEstablishesViewport): Main logic determining if the SVG or CSS properties establish the viewport - a direct transliteration from the spec.
(WebCore::SVGSVGElement::heightAttributeEstablishesViewport): Ditto.
(WebCore::SVGSVGElement::intrinsicWidth): Helper.
(WebCore::SVGSVGElement::intrinsicHeight): Ditto.

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size): Cleanup code.
(WebCore::SVGImage::hasRelativeWidth): Added, avoids hacks in RenderBoxModelObject.
(WebCore::SVGImage::hasRelativeHeight): Ditto.
(WebCore::SVGImage::computeIntrinsicDimensions): Make use of new SVGSVGElement::computeIntrinsicDimensions.

  • svg/graphics/SVGImage.h:

LayoutTests:

Update SVG pixel test baseline.

  • platform/mac/svg/custom/dynamic-empty-path-expected.png: Marginal changes.
  • platform/mac/svg/custom/fractional-rects-expected.png: Ditto.
  • platform/mac/svg/custom/js-update-container-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Align with Opera, gives same result now. All *object*sizing* tests are passing now.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png: Marginal changes.
  • platform/mac/svg/custom/viewBox-hit-expected.png: Ditto.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-background-image-tiled-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-background-images-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-img-preserveAspectRatio-support-1-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-replaced-intrinsic-ratio-001-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-huge-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-override-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-percentage-size-expected.png: Ditto.
  • platform/mac/tables/mozilla/bugs/bug101674-expected.png: Ditto.
  • platform/mac/tables/mozilla/bugs/bug101674-expected.txt: Ditto.
  • platform/mac/tables/mozilla/bugs/bug86708-expected.png: Ditto.
  • platform/mac/tables/mozilla/bugs/bug86708-expected.txt: Ditto.
  • platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.png: Ditto.
  • platform/mac/tables/mozilla_expected_failures/bugs/97619-expected.txt: Ditto.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml: Fix test, now that our bug is fixed.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/foreignObject/text-tref-02-b-expected.txt: Size is not reported anymore.
7:03 AM Changeset in webkit [105512] by commit-queue@webkit.org
  • 5 edits
    4 adds in trunk

window.innerWidth/Height should not include page scale
https://bugs.webkit.org/show_bug.cgi?id=76555

Source/WebCore:

The DOM attributes window.innerWidth and window.innerHeight should be in
CSS pixels instead of device pixels. Currently the text zoom factor is
cancelled out when calculating these values, but the same also needs to
be done for the page scale.

There is an additional subtlety concerning frames/iframes since their
visible content rectangle is already in (unscaled) CSS pixels. By using
Frame::frameScaleFactor() we avoid unnecessarily cancelling out the page
scale factor in this case.

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-01-20
Reviewed by Kenneth Rohde Christiansen.

Tests: fast/dom/iframe-inner-size-scaling.html

fast/dom/window-inner-size-scaling.html

  • page/DOMWindow.cpp:

(WebCore::DOMWindow::innerHeight):
(WebCore::DOMWindow::innerWidth):

LayoutTests:

Add two tests for window.innerWidth and window.innerHeight interaction
with page scaling.

Patch by Sami Kyostila <skyostil@chromium.org> on 2012-01-20
Reviewed by Kenneth Rohde Christiansen.

  • fast/dom/iframe-inner-size-scaling-expected.txt: Added.
  • fast/dom/iframe-inner-size-scaling.html: Added.
  • fast/dom/window-inner-size-scaling-expected.txt: Added.
  • fast/dom/window-inner-size-scaling.html: Added.
  • fast/frames/frame-set-rotation-hit.html: Calculate the panel height before changing the page scale, because the visual viewport changes with the page scale.
  • fast/frames/frame-set-scaling-hit.html: Ditto.
6:53 AM Changeset in webkit [105511] by Csaba Osztrogonác
  • 2 edits
    1 add in trunk/LayoutTests

[Qt] animations tests fails which uses suspend/resume
https://bugs.webkit.org/show_bug.cgi?id=43905

Patch by Alexis Menard <alexis.menard@openbossa.org> on 2012-01-20
Reviewed by Csaba Osztrogonác.

They seem to pass correctly on my machine.

  • platform/qt/Skipped:
  • platform/qt/animations/additive-transform-animations-expected.txt: Added.
6:49 AM Changeset in webkit [105510] by commit-queue@webkit.org
  • 9 edits
    2 adds in trunk/LayoutTests

new baselines for crbug 110493
https://bugs.webkit.org/show_bug.cgi?id=76629

Patch by Elliot Poger <epoger@google.com> on 2012-01-20
Reviewed by Dirk Pranke.

  • platform/chromium-linux/fast/borders/border-image-rotate-transform-expected.png:
  • platform/chromium-linux/svg/custom/focus-ring-expected.png:
  • platform/chromium-mac-leopard/svg/custom/focus-ring-expected.png:
  • platform/chromium-mac-leopard/svg/transforms/animated-path-inside-transformed-html-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/borders/border-image-rotate-transform-expected.png:
  • platform/chromium-mac-snowleopard/svg/custom/focus-ring-expected.png:
  • platform/chromium-mac-snowleopard/svg/transforms/animated-path-inside-transformed-html-expected.png: Added.
  • platform/chromium-win/fast/borders/border-image-rotate-transform-expected.png:
  • platform/chromium-win/svg/custom/focus-ring-expected.png:
  • platform/chromium/test_expectations.txt:
6:29 AM Changeset in webkit [105509] by kinuko@chromium.org
  • 2 edits
    1 delete in trunk

Unreviewed; Windows buildbot update failure fix.

  • ../ManualTests/data-transfer-items-file-dragout.html: Removed the notion of test:lorem-text.html.
  • ../ManualTests/resources/test:lorem-text.html: Removed as this doesn't work on Windows.
4:36 AM Changeset in webkit [105508] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

Unreviewed gardening. Skip failing tests.

4:31 AM Changeset in webkit [105507] by pfeldman@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Web Inspector: [chromium] add WebDevToolsFrontendClient::openInNewTab for upcoming WebCore change.
https://bugs.webkit.org/show_bug.cgi?id=76698

Reviewed by Yury Semikhatsky.

  • public/WebDevToolsFrontendClient.h:

(WebKit::WebDevToolsFrontendClient::openInNewTab):

4:21 AM BuildingGtk edited by kov@webkit.org
Added libxtst-dev - needed for jhbuilding the at-spi bits required for … (diff)
4:08 AM Changeset in webkit [105506] by kinuko@chromium.org
  • 30 edits
    8 adds in trunk

Add DataTransferItems support for drag-and-drop'ed files and texts
https://bugs.webkit.org/show_bug.cgi?id=76367

Reviewed by Tony Chang.

WebKit-svn:

  • ManualTests/data-transfer-items-file-dragout.html: Added.
  • ManualTests/resources/test:lorem-text.html: Added.

WebKit-svn/LayoutTests:

  • editing/pasteboard/data-transfer-items-drag-drop-file-expected.txt: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-file.html: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-string-expected.txt: Added.
  • editing/pasteboard/data-transfer-items-drag-drop-string.html: Added.
  • platform/gtk/Skipped: Added the new tests as the platform does not support dataTransferItems yet.
  • platform/mac/Skipped: Ditto.
  • platform/qt/Skipped: Ditto.
  • platform/win/Skipped: Ditto.

WebKit-svn/Source/WebCore:

Per http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#the-datatransfer-interface
the new interface should also support drag-and-dropped files and texts in
addition to pasted texts/images. The user apps should also be able to add
texts/files to the drag store by calling event.dataTransfer.items.add().

This patch adds drag-and-drop'ed items support in DataTransferItem and
DataTransferItemList so that they work for dropped files and texts (as well as
the copy-pasted texts/images).

This patch also adds customized toJS()/toV8() code to Blob/File javascript
binding so that the JS code can get either Blob or File underlying object
where the API returns Blob. This change is necessary since we return Blob
from DataTransferItem.getAsFile() for pasted images but want to return File
for dropped files.

Tests: editing/pasteboard/data-transfer-items-drag-drop-file.html

editing/pasteboard/data-transfer-items-drag-drop-string.html

  • GNUmakefile.list.am: Added entries for the new {JS,V8}BlobCustom.
  • Target.pri: Ditto.
  • UseJSC.cmake: Ditto.
  • WebCore.gypi: Ditto.
  • bindings/js/JSBindingsAllInOne.cpp: Ditto.
  • bindings/js/JSBlobCustom.cpp: Added toJS custom code that returns File or

Blob depending on the return value of isFile().
(WebCore::toJS):

  • bindings/v8/custom/V8BlobCustom.cpp: Added toV8 custom code.

(WebCore::toV8):

  • dom/DataTransferItem.h: Added a new create() method which takes File.
  • dom/DataTransferItemList.cpp: Added add(File) method.

(WebCore::DataTransferItemList::add):

  • dom/DataTransferItemList.h: Ditto.
  • dom/DataTransferItemList.idl: Ditto.
  • fileapi/Blob.idl: Added CustomToJS for toJS/toV8.
  • platform/chromium/ClipboardChromium.cpp: Added code for drag-and-drop'ed items.

(WebCore::ClipboardChromium::items): Revised.
(WebCore::ClipboardChromium::mayUpdateItems): Added.
(WebCore::ClipboardChromium::isStorageUpdated): Added.

  • platform/chromium/ClipboardChromium.h:
  • platform/chromium/DataTransferItemChromium.cpp: Added a new constructor that

takes File and updated getAsFile() to make it support dropped files.
(WebCore::DataTransferItem::create):
(WebCore::DataTransferItemChromium::DataTransferItemChromium):
(WebCore::DataTransferItemChromium::getAsFile):

  • platform/chromium/DataTransferItemChromium.h:
  • platform/chromium/DataTransferItemListChromium.cpp:

(WebCore::DataTransferItemListChromium::addInternalItem):

  • platform/chromium/DataTransferItemListChromium.cpp: Added overrides implementation for m_item accessors to make them reflect the changes in the owner clipboard.

(WebCore::DataTransferItemListChromium::length):
(WebCore::DataTransferItemListChromium::item):
(WebCore::DataTransferItemListChromium::deleteItem):
(WebCore::DataTransferItemListChromium::clear):
(WebCore::DataTransferItemListChromium::add):
(WebCore::DataTransferItemListChromium::mayUpdateItems): Added.

  • platform/qt/DataTransferItemQt.cpp: Added a new constructor that takes File and updated

getAsFile() to make it support dropped files.
(WebCore::DataTransferItem::create):
(WebCore::DataTransferItemQt::DataTransferItemQt):
(WebCore::DataTransferItemQt::getAsFile):

  • platform/qt/DataTransferItemQt.h:
3:43 AM Changeset in webkit [105505] by mario@webkit.org
  • 2 edits in trunk/LayoutTests

[Gtk] Unreviewed, unskipping test passing after r105286.

  • platform/gtk/Skipped: Unskip test.
3:39 AM Changeset in webkit [105504] by commit-queue@webkit.org
  • 7 edits in trunk/Source/WebKit2

Unreviewed, rolling out r105497.
http://trac.webkit.org/changeset/105497
https://bugs.webkit.org/show_bug.cgi?id=76696

Leaking in Qt layout tests and timing out in GTK API tests.
(Requested by jturcotte on #webkit).

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

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::DrawingAreaImpl):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::platformInitialize):

3:29 AM Changeset in webkit [105503] by mario@webkit.org
  • 17 edits
    6 adds in trunk

[GTK] Expose accessibility hierarchy in WebKit2 to ATK/AT-SPI based ATs
https://bugs.webkit.org/show_bug.cgi?id=72589

Reviewed by Martin Robinson.

.:

New optional dependency for WK2's accessibility unit test: AT-SPI2.

  • configure.ac: Check for AT-SPI2 when building with WK2 support.

Source/WebKit2:

Expose the accessibility hierarchy in the multi-process
architecture of WK2 through AtkSocket and AtkPlug.

Make the WebView widget return an AtkSocket when calling to
gtk_widget_get_accessible().

  • GNUmakefile.am: Add new files.
  • UIProcess/API/gtk/WebKitWebViewBase.cpp:

(webkit_web_view_base_init):
(webkitWebViewBaseGetAccessible):
(webkit_web_view_base_class_init):

  • UIProcess/API/gtk/WebKitWebViewBaseAccessible.cpp: Added.

(webkitWebViewBaseAccessibleWidgetFinalize):
(webkitWebViewBaseAccessibleWidgetDestroyed):
(webkitWebViewBaseAccessibleInitialize):
(webkitWebViewBaseAccessibleRefStateSet):
(webkitWebViewBaseAccessibleGetIndexInParent):
(webkit_web_view_base_accessible_init):
(webkit_web_view_base_accessible_class_init):
(webkitWebViewBaseAccessibleNew):

  • UIProcess/API/gtk/WebKitWebViewBaseAccessible.h: Added.

Make the WebPage create an AtkPlug on its initialization and
sending the ID of that plug to the UI process, so it can embed the
plug in the socket.

Also, take care of all the needed wrapping around the WebCore's
accessibility objects, exposing them in the UI process's
accessibility hierarchy thanks to the socket-plug connection.

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::accessibilityPlugID):

  • UIProcess/WebPageProxy.messages.in:
  • UIProcess/gtk/WebPageProxyGtk.cpp:

(WebKit::WebPageProxy::bindAccessibilityTree):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::dispatchDidFinishLoad):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

  • WebProcess/WebPage/gtk/WebPageAccessibilityObject.cpp: Added.

(accessibilityRootObjectWrapper):
(webPageAccessibilityObjectInitialize):
(webPageAccessibilityObjectGetIndexInParent):
(webPageAccessibilityObjectGetNChildren):
(webPageAccessibilityObjectRefChild):
(web_page_accessibility_object_init):
(web_page_accessibility_object_class_init):
(webPageAccessibilityObjectNew):
(webPageAccessibilityObjectRefresh):

  • WebProcess/WebPage/gtk/WebPageAccessibilityObject.h: Added.
  • WebProcess/WebPage/gtk/WebPageGtk.cpp:

(WebKit::WebPage::platformInitialize):
(WebKit::WebPage::updateAccessibilityTree):

New unit test for checking accessibility support in WK2GTK.

  • UIProcess/API/gtk/tests/AccessibilityTestServer.cpp: Added.

(loadChangedCallback): Notify the parent process (the test)
when ready.
(main):

  • UIProcess/API/gtk/tests/GNUmakefile.am:
  • UIProcess/API/gtk/tests/TestWebKitAccessibility.cpp: Added.

(stopTestServer):
(sigAbortHandler):
(testServerMonitorThreadFunc):
(startTestServerMonitor):
(startTestServer):
(checkAtspiAccessible):
(findTestServerApplication):
(testAtspiBasicHierarchy):
(beforeAll):
(afterAll):

Tools:

Ensure the accessibility infrastructure is available when running
the unit tests, otherwise WK2's accessibility tests won't work.

  • Scripts/run-gtk-tests:

(TestRunner):
(TestRunner._lookup_atspi2_binary): New. Looks for the directory
where at-spi2's stuff is located (like at-spi-bus-launcher and
at-spi2-registryd).
(TestRunner.run): Initialize the accessibility infrastructure.

  • gtk/generate-gtkdoc:

(get_webkit2_options): Add 'WebKitWebViewBaseAccessible.*'.

  • gtk/jhbuild.modules: Added at-spi2-core and at-spi2-atk.
3:10 AM Changeset in webkit [105502] by alexis.menard@openbossa.org
  • 16 edits
    2 adds
    2 deletes in trunk

remove CSSBorderImageValue
https://bugs.webkit.org/show_bug.cgi?id=75563

Reviewed by Tony Chang.

Source/WebCore:

Remove CSSBorderImageValue as border-image is a shorthand therefore we don't
need a dedicated CSS class type for it. CSSBorderImageValue was here for
-webkit-border-image which is not a shorthand. This is the first step to move border-image
close to a correct shorthand implementation while keeping -webkit-border-image being a regular
CSS property.

No new tests : It's a refactor, existing tests should cover it.

  • CMakeLists.txt:
  • GNUmakefile.list.am:
  • Target.pri:
  • WebCore.gypi:
  • WebCore.order:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • css/CSSAllInOne.cpp:
  • css/CSSBorderImage.cpp: Added.

(WebCore::createBorderImageValue):

  • css/CSSBorderImage.h: Added.
  • css/CSSBorderImageValue.cpp: Removed.
  • css/CSSBorderImageValue.h: Removed.
  • css/CSSComputedStyleDeclaration.cpp:

(WebCore::valueForNinePieceImage):

  • css/CSSParser.cpp:

(WebCore::BorderImageParseContext::commitBorderImage):

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::mapNinePieceImage):

  • css/CSSValue.cpp:

(WebCore::CSSValue::addSubresourceStyleURLs):
(WebCore::CSSValue::cssText):
(WebCore::CSSValue::destroy):

  • css/CSSValue.h:

LayoutTests:

Modify the expected output as now border-image is a CSSValueList.

  • fast/css/getComputedStyle/getComputedStyle-border-image-expected.txt:
2:51 AM Changeset in webkit [105501] by apavlov@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Merge 105140 (re-land) - 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/9271002

2:29 AM Changeset in webkit [105500] by hayato@chromium.org
  • 21 edits
    3 adds in trunk

Add ShadowRoot.idl which is enabled by newly introduced SHADOW_DOM flag.
https://bugs.webkit.org/show_bug.cgi?id=76353

Reviewed by Hajime Morita.

Add ShadowRoot.idl, which is enabled only on chromium port since this is
under development feature.
ShadowRoot.idl contains minimum API so that we can test it.
Other APIs should be added on other changes so that we can isolate issues.

Source/WebCore:

Test: fast/dom/shadow/shadow-root-js-api.html

  • WebCore.gypi:
  • bindings/generic/RuntimeEnabledFeatures.cpp:
  • bindings/generic/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::shadowDOMEnabled):
(WebCore::RuntimeEnabledFeatures::setShadowDOMEnabled):

  • dom/ShadowRoot.h:

(WebCore::ShadowRoot::host):

  • dom/ShadowRoot.idl: Added.
  • testing/Internals.cpp:

(WebCore::Internals::ensureShadowRoot):
(WebCore::Internals::shadowRoot):

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

Source/WebKit/chromium:

  • features.gypi:
  • public/WebRuntimeFeatures.h:
  • src/WebRuntimeFeatures.cpp:

(WebKit::WebRuntimeFeatures::enableShadowDOM):
(WebKit::WebRuntimeFeatures::isShadowDOMEnabled):

Tools:

  • DumpRenderTree/chromium/TestShell.cpp:

(TestShell::TestShell):

LayoutTests:

  • fast/dom/shadow/shadow-root-js-api-expected.txt: Added.
  • fast/dom/shadow/shadow-root-js-api.html: Added.
  • platform/efl/Skipped:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
  • platform/wincairo/Skipped:
2:17 AM Changeset in webkit [105499] by apavlov@chromium.org
  • 2 edits in branches/chromium/963/Source/WebCore/inspector/front-end

Revert 105252 - 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

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

2:04 AM Changeset in webkit [105498] by jocelyn.turcotte@nokia.com
  • 3 edits
    3 adds in trunk

[Qt] Public API watch dog auto test.
https://bugs.webkit.org/show_bug.cgi?id=73922

Reviewed by Simon Hausmann.

This test aims to prevent unintended/unapproved
modifications to the public QML API.

.:

  • Source/tests.pri:

Source/WebKit2:

  • UIProcess/API/qt/tests/publicapi/publicapi.pro: Added.
  • UIProcess/API/qt/tests/publicapi/tst_publicapi.cpp: Added.

(isCheckedEnum):
(isCheckedClass):
(checkKnownType):
(gatherAPI):
(tst_publicapi::publicAPI):

2:02 AM Changeset in webkit [105497] by jocelyn.turcotte@nokia.com
  • 7 edits in trunk/Source/WebKit2

[Qt] Trigger forcing accelerated compositing from the UI process side.
https://bugs.webkit.org/show_bug.cgi?id=76296

Reviewed by Noam Rosenthal.

Some messages can be sent from the web view to the LayerTreeHost before
accelerated compositing is entered on the web process and signaled back.
By letting the UI process decide if AC has to be forced, we can create
the LayerTreeHostProxy earlier to send messages to the web process while
AC is being entered there.

This fixes the first visible content rect message not being received when
loading pages from the disk.

  • Shared/WebPreferencesStore.h:
  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initialize):

  • UIProcess/DrawingAreaProxyImpl.cpp:

(WebKit::DrawingAreaProxyImpl::DrawingAreaProxyImpl):

  • WebProcess/WebPage/DrawingAreaImpl.cpp:

(WebKit::DrawingAreaImpl::DrawingAreaImpl):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

  • WebProcess/WebPage/qt/WebPageQt.cpp:

(WebKit::WebPage::platformInitialize):

1:57 AM Changeset in webkit [105496] by mario@webkit.org
  • 2 edits in trunk/Tools

[GTK] GTK's DRT not to log events for already defunct objects
https://bugs.webkit.org/show_bug.cgi?id=76620

Reviewed by Martin Robinson.

Do not log 'state-change:defunct' events.

  • DumpRenderTree/gtk/AccessibilityCallbacks.cpp:

(printAccessibilityEvent): Early return if a
'state-change:defunct' signal is passed.
(axObjectEventListener): Pass the signal name and value in
separate parameters to printAccessibilityEvent.

1:39 AM Changeset in webkit [105495] by commit-queue@webkit.org
  • 2 edits in trunk/Source/JavaScriptCore

undefined reference to symbol eina_module_free
https://bugs.webkit.org/show_bug.cgi?id=76681

Patch by ChangSeok Oh <ChangSeok Oh> on 2012-01-20
Reviewed by Martin Robinson.

eina_module_free has been used without including eina libraries after r104936.

  • wtf/PlatformEfl.cmake: Add EINA_LIBRARIES.
1:23 AM Changeset in webkit [105494] by tkent@chromium.org
  • 2 edits in trunk/Websites/webkit.org

Each style rule should have its own ID.
https://bugs.webkit.org/show_bug.cgi?id=76428

Reviewed by David Levin.

  • coding/coding-style.html: Add an id attribute to each of li elements,

and add code to set title="#id-name" and to make li elements clickable.

1:12 AM Changeset in webkit [105493] by Csaba Osztrogonác
  • 4 edits in trunk/LayoutTests

[Qt] Unreviewed gardening after r105486.

  • platform/qt/fast/dom/constructed-objects-prototypes-expected.txt:
  • platform/qt/fast/dom/prototype-inheritance-2-expected.txt:
  • platform/qt/fast/js/global-constructors-expected.txt:
1:05 AM Changeset in webkit [105492] by Csaba Osztrogonác
  • 2 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip a new failing test.

  • platform/qt/Skipped:
12:59 AM Changeset in webkit [105491] by commit-queue@webkit.org
  • 7 edits
    2 copies in trunk/Source/WebKit/chromium

[chromium] Chromium should have EditorClientImpl::checkTextOfParagraph.
https://bugs.webkit.org/show_bug.cgi?id=74071

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-20
Reviewed by Darin Fisher.

Spellchecker on Mac has more sophisticated interface for spellchecking (checkTextOfParagraph).
If the other ports have the same interface, code can be clearer and easy to extend.
This patch introduces such an interface. The implementation will be done not in WebKit but in Chromium.

Also, currently WebKit::WebTextCheckingResult and WebCore::TextCheckingResult have different forms.
They should be corresponding apparently. This patch introduces such correspondence.

  • WebKit.gyp:
  • public/WebSpellCheckClient.h:

(WebKit::WebSpellCheckClient::checkTextOfParagraph):

A new interface for spellchecking.

  • public/WebTextCheckingResult.h:

(WebKit::WebTextCheckingResult::WebTextCheckingResult):

Changed so that WebTextCheckingResult corresponds to WebCore::TextCheckingResult.

  • public/WebTextCheckingType.h: Copied from Source/WebKit/chromium/public/WebTextCheckingResult.h.
  • src/AssertMatchingEnums.cpp:
  • src/EditorClientImpl.cpp:

(WebKit::EditorClientImpl::checkTextOfParagraph):

  • src/EditorClientImpl.h:
  • src/WebTextCheckingResult.cpp: Copied from Source/WebKit/chromium/public/WebTextCheckingResult.h.

(WebKit::WebTextCheckingResult::operator TextCheckingResult):

12:47 AM Changeset in webkit [105490] by tkent@chromium.org
  • 6 edits in trunk/Source/WebCore

Change LocalizedNumber interface
https://bugs.webkit.org/show_bug.cgi?id=76613

Reviewed by Hajime Morita.

Change the functions of LocalizedNumber from:

double parseLocalizedNumber(const String&);
String formatLocalizedNumber(double, unsigned fractionDigits);

To:

String convertToLocalizedNumber(const String&, usnigned fractionDigits);
String convertFromLocalizedNumber(const String&);

in order that we can avoid conversion from/to a double value.

The fractionDigits argumetn of convertToLocalizedNumber() will be
removed in the future. We need it because we'd like to recycle the old
functions to implement new functions for now and functions in
LocalizedNumber can't call functions in HTMLParserIdioms.cpp.

No new tests because the change doesn't make any behavior change.

  • html/NumberInputType.cpp:

(WebCore::NumberInputType::visibleValue):
Use convertToLocalizedNumber.
(WebCore::NumberInputType::convertFromVisibleValue):
Use convertFromLocalizedNumber.
(WebCore::NumberInputType::isAcceptableValue): ditto.

  • platform/text/LocalizedNumber.h:

Remove parseLocalizedNumber and formatLocalizedNumber, and
introduce convertToLocalizedNumber and convertFromLocalizedNumber.

  • platform/text/LocalizedNumberICU.cpp:

(WebCore::parseLocalizedNumber): Make this static.
(WebCore::formatLocalizedNumber): Make this static.
(WebCore::convertToLocalizedNumber): Implement this with formatLocalizedNumber.
(WebCore::convertFromLocalizedNumber): Implement this with parseLocalizedNumber.

  • platform/text/LocalizedNumberNone.cpp:

(WebCore::convertToLocalizedNumber):
Implement this as a function returning the input string.
(WebCore::convertFromLocalizedNumber): ditto.

  • platform/text/mac/LocalizedNumberMac.mm:

(WebCore::parseLocalizedNumber): Make this static.
(WebCore::formatLocalizedNumber): Make this static.
(WebCore::convertToLocalizedNumber): Implement this with formatLocalizedNumber.
(WebCore::convertFromLocalizedNumber): Implement this with parseLocalizedNumber.

12:42 AM Changeset in webkit [105489] by commit-queue@webkit.org
  • 6 edits in trunk/Source/WebKit/chromium

[chromium] WebFrame should have an interface to invoke spellchecking in arbitrarily.
https://bugs.webkit.org/show_bug.cgi?id=73971

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-20
Reviewed by Darin Fisher.

This interface is necessary to recheck spelling of an arbitrary element.

  • public/WebFrame.h:
  • public/WebNode.h:
  • src/WebFrameImpl.cpp:

(WebKit::WebFrameImpl::requestTextChecking):

Requests spellchecking for the element having current selection.

  • src/WebFrameImpl.h:
  • src/WebNode.cpp:

(WebKit::WebNode::rootEditableElement):

Takes a root editable element from Node.

12:26 AM Changeset in webkit [105488] by pfeldman@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: problem with Ctrl - <arrows> shortcuts in Scripts panel
https://bugs.webkit.org/show_bug.cgi?id=76622

Reviewed by Yury Semikhatsky.

  • inspector/front-end/InspectorView.js:

(WebInspector.InspectorView.prototype._keyDown):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextViewer.prototype.set readOnly):
(WebInspector.TextViewer.prototype._cancelEditing):
(WebInspector.TextViewer.prototype.wasShown):
(WebInspector.TextViewer.prototype.willHide):

  • inspector/front-end/UIUtils.js:

(WebInspector.isInEditMode):

  • inspector/front-end/inspector.js:

(WebInspector.documentKeyDown):

12:04 AM Changeset in webkit [105487] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, test results rebaseline after r105457.

  • fast/canvas/canvas-webkitLineDash-expected.txt:
12:00 AM Changeset in webkit [105486] by arv@chromium.org
  • 11 edits
    3 adds in trunk

Source/WebCore: Migrate createObjectURL & revokeObjectURL to static (Class) methods.
https://bugs.webkit.org/show_bug.cgi?id=74386

Reviewed by Adam Barth.

Test: fast/dom/DOMURL/check-instanceof-domurl-functions.html
Already Existing -

fast/files/revoke-blob-url.html
fast/dom/window-domurl-crash.html
fast/files/apply-blob-url-to-img.html
fast/files/create-blob-url-crash.html
fast/files/workers/inline-worker-via-blob-url.html

  • html/DOMURL.cpp: Added HashMap for local static objects.

(WebCore::PublicURLManager::PublicURLManager):
(WebCore::PublicURLManager::contextDestroyed):
(WebCore::PublicURLManager::blobURLs):
(WebCore::PublicURLManager::streamURLs):
(WebCore::publicURLManagerMap):
(WebCore::publicURLManager):
(WebCore::publicBlobURLs):
(WebCore::publicStreamURLs):
(WebCore::DOMURL::createObjectURL): Changed to static.
(WebCore::DOMURL::revokeObjectURL): ditto.

  • html/DOMURL.h:

(WebCore::DOMURL::create):
(WebCore::DOMURL::~DOMURL):
(WebCore::DOMURL::DOMURL):

  • html/DOMURL.idl:
  • page/DOMWindow.cpp: Removed object initialization for DOMURL.
  • page/DOMWindow.h: ditto.
  • page/DOMWindow.idl: ditto.
  • workers/WorkerContext.cpp: ditto.
  • workers/WorkerContext.h: ditto.
  • workers/WorkerContext.idl: ditto.

LayoutTests: Migrate createObjectURL & revokeObjectURL to static (Class) methods
https://bugs.webkit.org/show_bug.cgi?id=74386

Reviewed by Adam Barth.

Added test to check if createObjectURL & revokeObjectURL are static functions.

  • fast/dom/DOMURL: Added.
  • fast/dom/DOMURL/check-instanceof-domurl-functions-expected.txt: Added.
  • fast/dom/DOMURL/check-instanceof-domurl-functions.html: Added.

Jan 19, 2012:

11:45 PM Changeset in webkit [105485] by Alexandru Chiculita
  • 18 edits
    3 adds in trunk

Source/WebCore: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Added setCSSCustomFilterEnabled/isCSSCustomFilterEnabled that is false by default.
I've enabled it by default on Apple Mac, to make sure there's no behavior change. Anyway, CSS shaders need
WebGL enabled, so it ends up being disabled by default.

Reviewed by Nikolas Zimmermann.

Test: css3/filters/effect-custom-disabled.html

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseFilter):

Do not parse the custom() function when shaders are disabled.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::applyProperty):

Do not overwrite the old style->filter() if parsing fails.

(WebCore::CSSStyleSelector::createFilterOperations):

Do not continue if one custom() filter fails to parse.

  • page/Settings.cpp:

(WebCore::Settings::Settings):

  • page/Settings.h:

(WebCore::Settings::setCSSCustomFilterEnabled):
(WebCore::Settings::isCSSCustomFilterEnabled):

  • rendering/FilterEffectRenderer.cpp:

(WebCore::isCSSCustomFilterEnabled):
(WebCore::FilterEffectRenderer::build):

Avoid creating the filter when shaders are disabled. It may happen to get here if shaders were disabled between parsing and rendering.

Source/WebKit/mac: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Added private WebPreference property called "WebKitCSSCustomFilterEnabled".

Reviewed by Nikolas Zimmermann.

  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm:

(+[WebPreferences initialize]):
(-[WebPreferences cssCustomFilterEnabled]):
(-[WebPreferences setCSSCustomFilterEnabled:]):

  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm:

(-[WebView _preferencesChanged:]):

Source/WebKit2: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Reviewed by Nikolas Zimmermann.

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

(WKPreferencesSetCSSCustomFilterEnabled):
(WKPreferencesGetCSSCustomFilterEnabled):

  • UIProcess/API/C/WKPreferencesPrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::updatePreferences):

LayoutTests: CSS Shaders: Add a Settings flag to enable/disable CSS Shaders at runtime
https://bugs.webkit.org/show_bug.cgi?id=76444

Reviewed by Nikolas Zimmermann.

  • css3/filters/effect-custom-disabled-expected.txt: Added.
  • css3/filters/effect-custom-disabled.html: Added.
  • css3/filters/script-tests/effect-custom-disabled.js: Added.

(testInvalidFilterRule):

  • platform/wk2/Skipped:

Skipped a couple of tests that call overridePreference.

11:18 PM Changeset in webkit [105484] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebCore

Node::canHaveLightChildRendererWithShadow is not used anywhere.
https://bugs.webkit.org/show_bug.cgi?id=76627

Patch by Shinya Kawanaka <shinyak@google.com> on 2012-01-19
Reviewed by Darin Adler.

Since Node::canHaveLightChildRendererWithShadow is not overriden anywhere, and it returns always false.
We can remove it.

No new tests, because no change in behavior.

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

(WebCore::NodeRenderingContext::shouldCreateRenderer):

10:39 PM Changeset in webkit [105483] by kinuko@chromium.org
  • 8 edits in trunk/Source

Cleanup: make constant variable names in fileapi/ conform to WebKit's coding guideline
https://bugs.webkit.org/show_bug.cgi?id=76625

Reviewed by David Levin.

Source/WebCore:

No new tests as this patch has no functional changes.

  • fileapi/BlobURL.cpp:

(WebCore::BlobURL::getIdentifier):
(WebCore::BlobURL::createBlobURL):

  • fileapi/BlobURL.h:
  • fileapi/FileWriter.cpp:

(WebCore::FileWriter::write):
(WebCore::FileWriter::truncate):

  • platform/AsyncFileSystem.cpp:

(WebCore::AsyncFileSystem::crackFileSystemURL):
(WebCore::AsyncFileSystem::toURL):
(WebCore::AsyncFileSystem::isAvailable):

  • platform/AsyncFileSystem.h:

Source/WebKit/chromium:

Also removing (almost) duplicated implementation of AsyncFileSystem::crackFileSystem.

  • src/AsyncFileSystemChromium.cpp:
9:25 PM Changeset in webkit [105482] by rolandsteiner@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed: add layout test to Chromium test_expectations.txt file after changes to Mac underline drawing.

  • platform/chromium/test_expectations.txt:
8:58 PM Changeset in webkit [105481] by Lucas Forschler
  • 5 edits in tags/Safari-535.18.1/Source

Versioning

8:54 PM Changeset in webkit [105480] by Lucas Forschler
  • 5 edits in trunk/Source

Versioning.

8:33 PM Changeset in webkit [105479] by Lucas Forschler
  • 1 copy in tags/Safari-535.18.1

New Tag.

7:44 PM Changeset in webkit [105478] by Lucas Forschler
  • 1 copy in tags/Safari-535.18

New Tag.

7:36 PM Changeset in webkit [105477] by dbates@webkit.org
  • 2 edits in trunk/Websites/webkit.org

Remove "Safari 5.1 shipped" text from debugging instructions; move misplaced </ol>

Rubber-stamped by Sam Weinig.

  • building/debug.html:
7:22 PM Changeset in webkit [105476] by weinig@apple.com
  • 2 edits in trunk/Source/WebKit2

Replace improper #import with an #include.

  • UIProcess/Plugins/PluginProcessProxy.cpp:

Fixes warnings.

7:04 PM Changeset in webkit [105475] by weinig@apple.com
  • 64 edits
    6 moves in trunk/Source

Move RunLoop to WebCore/platform
https://bugs.webkit.org/show_bug.cgi?id=76471

Reviewed by Anders Carlsson.

Source/WebCore:

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

Add newly moved files.

  • platform/RunLoop.cpp: Moved from Source/WebKit2/Platform/RunLoop.cpp.
  • platform/RunLoop.h: Moved from Source/WebKit2/Platform/RunLoop.h.
  • platform/gtk/RunLoopGtk.cpp: Moved from Source/WebKit2/Platform/gtk/RunLoopGtk.cpp.
  • platform/mac/RunLoopMac.mm: Moved from Source/WebKit2/Platform/mac/RunLoopMac.mm.
  • platform/qt/RunLoopQt.cpp: Moved from Source/WebKit2/Platform/qt/RunLoopQt.cpp.
  • platform/win/RunLoopWin.cpp: Moved from Source/WebKit2/Platform/win/RunLoopWin.cpp.

Move the files.

Source/WebKit2:

  • GNUmakefile.am:
  • Platform/CoreIPC/Connection.cpp:
  • Platform/CoreIPC/Connection.h:
  • Platform/CoreIPC/mac/ConnectionMac.cpp:
  • PluginProcess/PluginControllerProxy.h:
  • PluginProcess/PluginProcess.cpp:
  • PluginProcess/PluginProcess.h:
  • PluginProcess/WebProcessConnection.cpp:
  • PluginProcess/mac/PluginProcessMainMac.mm:
  • PluginProcess/qt/PluginProcessMainQt.cpp:
  • Shared/ChildProcess.cpp:
  • Shared/ChildProcess.h:
  • Target.pri:
  • UIProcess/API/mac/FindIndicatorWindow.h:
  • UIProcess/API/mac/WKView.mm:
  • UIProcess/DrawingAreaProxyImpl.h:
  • UIProcess/Launcher/ThreadLauncher.cpp:
  • UIProcess/Launcher/gtk/ProcessLauncherGtk.cpp:
  • UIProcess/Launcher/mac/ProcessLauncherMac.mm:
  • UIProcess/Launcher/mac/ThreadLauncherMac.mm:
  • UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
  • UIProcess/Launcher/qt/ThreadLauncherQt.cpp:
  • UIProcess/Launcher/win/ProcessLauncherWin.cpp:
  • UIProcess/Launcher/win/ThreadLauncherWin.cpp:
  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/Plugins/PluginProcessProxy.cpp:
  • UIProcess/ResponsivenessTimer.cpp:
  • UIProcess/ResponsivenessTimer.h:
  • UIProcess/TiledDrawingAreaProxy.h:
  • UIProcess/VisitedLinkProvider.h:
  • UIProcess/WebConnectionToWebProcess.cpp:
  • UIProcess/WebConnectionToWebProcess.h:
  • UIProcess/WebContext.cpp:
  • UIProcess/win/WebView.cpp:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/Plugins/Netscape/NPRuntimeObjectMap.h:
  • WebProcess/Plugins/Netscape/NetscapePlugin.h:
  • WebProcess/Plugins/Netscape/NetscapePluginStream.h:
  • WebProcess/Plugins/PluginView.h:
  • WebProcess/WebConnectionToUIProcess.cpp:
  • WebProcess/WebConnectionToUIProcess.h:
  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/DrawingAreaImpl.h:
  • WebProcess/WebPage/EventDispatcher.cpp:
  • WebProcess/WebPage/PageOverlay.h:
  • WebProcess/WebPage/WebPage.cpp:
  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebProcess.cpp:
  • WebProcess/WebProcess.h:

(WebKit::WebProcess::runLoop):

  • WebProcess/gtk/WebProcessMainGtk.cpp:
  • WebProcess/mac/WebProcessMainMac.mm:
  • WebProcess/qt/WebProcessMainQt.cpp:
  • WebProcess/win/WebProcessMainWin.cpp:
  • win/WebKit2.vcproj:

Remove RunLoop code and update #includes.

7:02 PM Changeset in webkit [105474] by kov@webkit.org
  • 2 edits in trunk/Tools

Unreviewed build fix. Wrong variable being used as the cwd for git
remote update command.

  • gtk/run-with-jhbuild:

(update_jhbuild):

6:51 PM Changeset in webkit [105473] by commit-queue@webkit.org
  • 4 edits
    2 adds in trunk

Fix inconsistent text selection behavior with option-shift-left/right/up/down.
https://bugs.webkit.org/show_bug.cgi?id=75652

Patch by Pablo Flouret <pablof@motorola.com> on 2012-01-19
Reviewed by Enrica Casucci.

On Mac, selecting backwards by word, line or paragraph from the middle
of some text, and then going forward leaves the caret back in the middle
with no selection, instead of directly selecting to the other end of the
word/line/paragraph (Unix/Windows behavior). Fix this by adding a new
editing behavior to control whether the selection should go across the
initial position of the caret directly or not in situations like the one
outlined above.

Source/WebCore:

Test: editing/selection/selection-extend-should-not-move-across-caret-on-mac.html

  • editing/EditingBehavior.h:

(WebCore::EditingBehavior::shouldExtendSelectionByWordOrLineAcrossCaret):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::modify):

LayoutTests:

  • editing/selection/selection-extend-should-not-move-across-caret-on-mac-expected.txt: Added.
  • editing/selection/selection-extend-should-not-move-across-caret-on-mac.html: Added.
6:45 PM Changeset in webkit [105472] by kov@webkit.org
  • 2 edits in trunk/Tools

[GTK] ensure the jhbuild used by webkit is as up-to-date as needed
https://bugs.webkit.org/show_bug.cgi?id=76585

Reviewed by Martin Robinson.

This allows us to specify a minimum version of jhbuild required,
while also providing stability against changes done to the master
branch, by letting us choose what is the exact version that will
be used.

  • gtk/run-with-jhbuild: refactored for more hackability and easier

reading
(jhbuild_installed): checks whether jhbuild is installed
(jhbuild_cloned): checks whether jhbuild has been cloned
(jhbuild_at_expected_revision): checks whether jhbuild is at the
expected revision
(update_jhbuild): brings jhbuild to the expected revision
(clone_jhbuild): clones jhbuild
(install_jhbuild): build and installs jhbuild
(update_webkitgtk_libs): runs update-webkitgtk-libs
(ensure_jhbuild): high-level logic to decide whether and which of
the steps above are executed

6:41 PM Changeset in webkit [105471] by Simon Fraser
  • 4 edits
    3 adds in trunk

Regression (r98735): Video chat moles in Gmail render incorrectly on Mac OS
https://bugs.webkit.org/show_bug.cgi?id=75682

Source/WebCore:

Reviewed by James Robinson.

RenderLayerBacking::isSimpleContainerCompositingLayer() gave incorret
results in the case where the layer itself was visibility:hidden, but
where it had visible, non-composited descendant layers.

Fix by breaking RenderLayerBacking::hasVisibleNonCompositingDescendants()
into two methods, one that tests for renderers in this layer which
render stuff (and are thus affected by visibility on this layer), and
another which walks descendant, non-composited layers looking for those
which are visible.

Removed an early return in the "renderObject->node()->isDocumentNode()"
clause, because we want to run the same code that we run for non-document
nodes.

Test: compositing/visibility/layer-visible-content.html

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
(WebCore::RenderLayerBacking::containsNonEmptyRenderers):
(WebCore::RenderLayerBacking::hasVisibleNonCompositingDescendantLayers):

  • rendering/RenderLayerBacking.h:

LayoutTests:

Reviewed by James Robinson.

Testcase with a combination of visibility:hidden, overflow, positioning and
transforms.

  • compositing/visibility/layer-visible-content-expected.png: Added.
  • compositing/visibility/layer-visible-content-expected.txt: Added.
  • compositing/visibility/layer-visible-content.html: Added.
6:21 PM Changeset in webkit [105470] by commit-queue@webkit.org
  • 11 edits in trunk/Source

[chromium] Draw gutter quads outside root content layer
https://bugs.webkit.org/show_bug.cgi?id=76328

Patch by Alexandre Elias <aelias@google.com> on 2012-01-19
Reviewed by James Robinson.

Add new layer property "backgroundCoversViewport". If the content
layers don't fully cover the render surface, this code calculates the
difference between the root clip rect and the root content layer and
draws up to four background-color quads in exactly the area that would
be undrawn.

Test: CCTiledLayerImplTest::backgroundCoversViewport

Source/WebCore:

  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::LayerChromium):
(WebCore::LayerChromium::setBackgroundCoversViewport):
(WebCore::LayerChromium::pushPropertiesTo):

  • platform/graphics/chromium/LayerChromium.h:

(WebCore::LayerChromium::backgroundCoversViewport):

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

(WebCore::CCLayerImpl::CCLayerImpl):
(WebCore::CCLayerImpl::setBackgroundCoversViewport):

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

(WebCore::CCLayerImpl::backgroundCoversViewport):

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

(WebCore::CCTiledLayerImpl::appendQuads):

Source/WebKit/chromium:

  • src/NonCompositedContentHost.cpp:

(WebKit::NonCompositedContentHost::NonCompositedContentHost):

  • tests/CCLayerImplTest.cpp:

(WebCore::TEST):

  • tests/CCTiledLayerImplTest.cpp:

(WebCore::TEST):

  • tests/LayerChromiumTest.cpp:
6:03 PM Changeset in webkit [105469] by commit-queue@webkit.org
  • 7 edits
    2 copies in trunk/Source/WebKit/chromium

Web Intents chromium API modifications to track IntentRequest invocation method
https://bugs.webkit.org/show_bug.cgi?id=76014

Patch by Greg Billock <gbillock@google.com> on 2012-01-19
Reviewed by Darin Fisher.

  • public/WebFrameClient.h:

(WebKit::WebFrameClient::dispatchIntent):

  • public/WebIntent.h:
  • public/WebIntentRequest.h: Added.
  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::dispatchIntent):

  • src/FrameLoaderClientImpl.h:
  • src/WebIntent.cpp:
  • src/WebIntentRequest.cpp: Added.
5:47 PM Changeset in webkit [105468] by caryclark@google.com
  • 4 edits in trunk

[Skia Mac] Match style of platform error underline for misspellings
https://bugs.webkit.org/show_bug.cgi?id=76556

Reviewed by Stephen White.

Source/WebCore:

Add Darwin-specific code in Skia to draw the error underline so that
it matches the CoreGraphics style.

Many existing layout tests inadvertantly trigger the misspelling
underline by including the word 'foo' in an editable field. Those
tests are temporarily suppressed separately in an edit to
test_expectations.txt.

  • platform/graphics/skia/GraphicsContextSkia.cpp:

(WebCore::GraphicsContext::drawLineForTextChecking):

LayoutTests:

Suppress editing tests with misspellings, since the error underline
is drawn differently.

  • platform/chromium/test_expectations.txt:
5:34 PM Changeset in webkit [105467] by noam.rosenthal@nokia.com
  • 5 edits in trunk/Source/WebCore

[Texmap] TextureMapper creates two many big intermediate surfaces
https://bugs.webkit.org/show_bug.cgi?id=76336

Reviewed by Simon Hausmann.

The following has been done to optimize surface allocation:

  1. Instead of using a viewport-size surface, use a surface in the size of the layer's bounding rect and apply the transform after the content has been rendered into it.
  2. Avoid generating intermediate surface for occasions where they're not necessary, such as nested reflections without opacity.
  3. Releasing of textures from the pool is now implicit, based on refCount.
  4. Do not use intermediate surfaces for preserve-3d layers. This is in alignment with other ports.

Tests in LayoutTests/compositing/masks and LayoutTests/compositing/reflection cover this.

  • platform/graphics/texmap/TextureMapper.cpp:

(WebCore::TextureMapper::acquireTextureFromPool):

  • platform/graphics/texmap/TextureMapper.h:
  • platform/graphics/texmap/TextureMapperNode.cpp:

(WebCore::TextureMapperNode::paintSelf):
(WebCore::TextureMapperNode::paintSelfAndChildren):
(WebCore::TextureMapperNode::intermediateSurfaceRect):
(WebCore::TextureMapperNode::shouldPaintToIntermediateSurface):
(WebCore::TextureMapperNode::isVisible):
(WebCore::TextureMapperNode::paintSelfAndChildrenWithReplica):
(WebCore::TextureMapperNode::paintRecursive):
(WebCore::TextureMapperNode::syncCompositingStateSelf):
(WebCore::TextureMapperNode::syncCompositingState):

  • platform/graphics/texmap/TextureMapperNode.h:

(WebCore::TextureMapperPaintOptions::TextureMapperPaintOptions):

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

[Chromium] A Skia roll will break some tests - marking as expected
https://bugs.webkit.org/show_bug.cgi?id=76638

Unreviewed test_expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-19

  • platform/chromium/test_expectations.txt: Adding MAC to svg/custom/zero-path-square-cap-rendering.svg
5:10 PM Changeset in webkit [105465] by ap@apple.com
  • 2 edits in trunk/Tools

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

Reviewed by John Sullivan.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp: (WTR::lastFileURLPathComponent):

Do print a slash if there are no path components.

4:57 PM Changeset in webkit [105464] by eric@webkit.org
  • 3 edits in trunk/Tools

webkit-patch cannot rollout patches without changelog/bug number
https://bugs.webkit.org/show_bug.cgi?id=75962

Reviewed by Adam Barth.

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

(AbstractRolloutPrepCommand._prepare_state):

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

(AbstractRolloutPrepCommandTest.test_prepare_state):

4:44 PM Changeset in webkit [105463] by eric@webkit.org
  • 3 edits
    2 adds in trunk

Assertion failure in WebCore::HTMLFrameElementBase::insertedIntoDocument()
https://bugs.webkit.org/show_bug.cgi?id=50312

Reviewed by Alexey Proskuryakov.

Source/WebCore:

Removed the ASSERT and updated the comment.

Test: fast/frames/assert-on-insertedIntoDocument.html

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::insertedIntoDocument):

LayoutTests:

  • fast/frames/assert-on-insertedIntoDocument-expected.txt: Added.
  • fast/frames/assert-on-insertedIntoDocument.html: Added.
4:29 PM Changeset in webkit [105462] by commit-queue@webkit.org
  • 4 edits in trunk/Source/WebKit/chromium

[chromium] Replace WGC3D visibility extension with resource_usage extension. [Part 1 of 3]
https://bugs.webkit.org/show_bug.cgi?id=76634

Patch by Michal Mocny <mmocny@google.com> on 2012-01-19
Reviewed by Kenneth Russell.

  • public/platform/WebGraphicsContext3D.h:

(WebKit::WebGraphicsContext3D::setVisibilityCHROMIUM):
(WebKit::WebGraphicsContext3D::setResourceUsageCHROMIUM):

  • src/GraphicsContext3DChromium.cpp:

(WebCore::GraphicsContext3DPrivate::setVisibilityCHROMIUM):

  • tests/FakeWebGraphicsContext3D.h:

(WebKit::FakeWebGraphicsContext3D::setResourceUsageCHROMIUM):

4:13 PM Changeset in webkit [105461] by ap@apple.com
  • 4 edits in trunk

[WK2] fast/url/degenerate-file-base.html fails
https://bugs.webkit.org/show_bug.cgi?id=76619

Reviewed by Adam Roben.

Tools:

A URL generated form local path for loading had an extra slash, making document.URL
incorrect in all WebKit2 tests (file://localhost//path/to/test.html).

  • WebKitTestRunner/TestInvocation.cpp: (WTR::createWKURL):

LayoutTests:

  • platform/qt-wk2/Skipped: Unskipped the test.
4:07 PM Changeset in webkit [105460] by jamesr@google.com
  • 36 edits in trunk/Source

[chromium] Remove CCLayerDelegate, add ContentLayerDelegate for painting
https://bugs.webkit.org/show_bug.cgi?id=76663

Reviewed by Kenneth Russell.

Source/WebCore:

CCLayerDelegate used to be an interface with a half-dozen callbacks on it, but now it has only one call -
paintContents() - and that one call is only valid for one subclass of LayerChromium, ContentLayerChromium. This
removes the CCLayerDelegate pointer from LayerChromium and adds a ContentLayerDelegate for the paint call.

The majority of the code changes in this patch are removing the nil parameter from various places that construct
LayerChromium instances. Also tightens the type of GraphicsLayerChromium::m_layer to ContentLayerChromium.

Refactoring/removing dead code, so no new tests.

  • platform/graphics/chromium/Canvas2DLayerChromium.cpp:

(WebCore::Canvas2DLayerChromium::Canvas2DLayerChromium):

  • platform/graphics/chromium/CanvasLayerChromium.cpp:

(WebCore::CanvasLayerChromium::CanvasLayerChromium):

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

(WebCore::ContentLayerPainter::create):
(WebCore::ContentLayerPainter::ContentLayerPainter):
(WebCore::ContentLayerChromium::create):
(WebCore::ContentLayerChromium::ContentLayerChromium):

  • platform/graphics/chromium/ContentLayerChromium.h:

(WebCore::ContentLayerDelegate::~ContentLayerDelegate):
(WebCore::ContentLayerChromium::clearDelegate):

  • platform/graphics/chromium/DrawingBufferChromium.cpp:

(WebCore::DrawingBuffer::platformLayer):

  • platform/graphics/chromium/GraphicsLayerChromium.cpp:

(WebCore::GraphicsLayerChromium::~GraphicsLayerChromium):
(WebCore::GraphicsLayerChromium::setContentsToImage):
(WebCore::GraphicsLayerChromium::setContentsToCanvas):
(WebCore::GraphicsLayerChromium::setContentsToMedia):
(WebCore::GraphicsLayerChromium::updateLayerPreserves3D):

  • platform/graphics/chromium/GraphicsLayerChromium.h:
  • platform/graphics/chromium/ImageLayerChromium.cpp:

(WebCore::ImageLayerChromium::create):
(WebCore::ImageLayerChromium::ImageLayerChromium):

  • platform/graphics/chromium/ImageLayerChromium.h:
  • platform/graphics/chromium/LayerChromium.cpp:

(WebCore::LayerChromium::create):
(WebCore::LayerChromium::LayerChromium):

  • platform/graphics/chromium/LayerChromium.h:
  • platform/graphics/chromium/PluginLayerChromium.cpp:

(WebCore::PluginLayerChromium::create):
(WebCore::PluginLayerChromium::PluginLayerChromium):

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

(WebCore::TiledLayerChromium::TiledLayerChromium):
(WebCore::TiledLayerChromium::drawsContent):

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

(WebCore::VideoLayerChromium::create):
(WebCore::VideoLayerChromium::VideoLayerChromium):

  • platform/graphics/chromium/VideoLayerChromium.h:
  • platform/graphics/chromium/WebGLLayerChromium.cpp:

(WebCore::WebGLLayerChromium::create):
(WebCore::WebGLLayerChromium::WebGLLayerChromium):

  • platform/graphics/chromium/WebGLLayerChromium.h:

Source/WebKit/chromium:

  • src/WebContentLayerImpl.cpp:

(WebKit::WebContentLayerImpl::~WebContentLayerImpl):

  • src/WebContentLayerImpl.h:
  • src/WebExternalTextureLayerImpl.cpp:

(WebKit::WebExternalTextureLayerImpl::WebExternalTextureLayerImpl):
(WebKit::WebExternalTextureLayerImpl::~WebExternalTextureLayerImpl):

  • src/WebExternalTextureLayerImpl.h:
  • src/WebLayerImpl.cpp:

(WebKit::WebLayerImpl::WebLayerImpl):
(WebKit::WebLayerImpl::~WebLayerImpl):

  • src/WebLayerImpl.h:
  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::readyStateChanged):

  • src/WebPluginContainerImpl.cpp:

(WebKit::WebPluginContainerImpl::WebPluginContainerImpl):

  • tests/CCLayerIteratorTest.cpp:
  • tests/CCLayerTreeHostCommonTest.cpp:

(WebCore::LayerChromiumWithForcedDrawsContent::LayerChromiumWithForcedDrawsContent):
(WebCore::TEST):

  • tests/CCLayerTreeHostTest.cpp:

(WTF::CCLayerTreeHostTest::doBeginTest):
(WTF::ContentLayerChromiumWithUpdateTracking::create):
(WTF::ContentLayerChromiumWithUpdateTracking::ContentLayerChromiumWithUpdateTracking):

  • tests/LayerChromiumTest.cpp:
  • tests/TiledLayerChromiumTest.cpp:

(WTF::FakeTiledLayerChromium::FakeTiledLayerChromium):

  • tests/TreeSynchronizerTest.cpp:

(WebCore::MockLayerChromium::MockLayerChromium):
(WebCore::TEST):

4:00 PM Changeset in webkit [105459] by tony@chromium.org
  • 2 edits in trunk/Source/JavaScriptCore

[chromium] Remove an obsolete comment about features.gypi
https://bugs.webkit.org/show_bug.cgi?id=76643

There can be only one features.gypi.

Reviewed by James Robinson.

3:48 PM Changeset in webkit [105458] by abarth@webkit.org
  • 1 edit
    5 adds in trunk/LayoutTests

Add Chromium-specific image baselines for
fast/css/text-overflow-input.html. These results all appear to be
correct.

  • platform/chromium-linux/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-mac-leopard/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-mac-snowleopard/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-win/fast/css/text-overflow-input-expected.png: Added.
  • platform/chromium-win/fast/css/text-overflow-input-expected.txt: Added.
3:47 PM Changeset in webkit [105457] by commit-queue@webkit.org
  • 9 edits in trunk

[Coverity] Fix uninitialized constructor defects in .../html
https://bugs.webkit.org/show_bug.cgi?id=74965

Patch by Greg Billock <gbillock@google.com> on 2012-01-19
Reviewed by Simon Fraser.

Test: fast/canvas/script-tests/canvas-webkitLineDash.js

  • html/HTMLFormCollection.cpp:

(WebCore::HTMLFormCollection::HTMLFormCollection):

  • html/StepRange.cpp:

(WebCore::StepRange::StepRange):

  • html/canvas/CanvasRenderingContext2D.cpp:

(WebCore::CanvasRenderingContext2D::State::State):

  • html/canvas/CanvasStyle.h:

(WebCore::CanvasStyle::CMYKAValues::CMYKAValues):

  • html/canvas/WebGLGetInfo.cpp:

(WebCore::WebGLGetInfo::WebGLGetInfo):

  • html/parser/CSSPreloadScanner.cpp:

(WebCore::CSSPreloadScanner::CSSPreloadScanner):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::WebVTTParser):

3:38 PM Changeset in webkit [105456] by abarth@webkit.org
  • 13 edits
    1 move
    1 add in trunk/PerformanceTests

PerformanceTests's runner.js shouldn't be Parser-specific
https://bugs.webkit.org/show_bug.cgi?id=76670

Reviewed by Ryosuke Niwa.

This runner script is used by a bunch of difference performance tests.
It shouldn't be in the Parser directory anymore.

  • Bindings/event-target-wrapper.html:
  • Mutation/append-child-deep.html:
  • Mutation/append-child.html:
  • Mutation/inner-html.html:
  • Mutation/remove-child-deep.html:
  • Mutation/remove-child.html:
  • Parser/html-parser.html:
  • Parser/html5-full-render.html:
  • Parser/resources/runner.js: Removed.
  • Parser/simple-url.html:
  • Parser/tiny-innerHTML.html:
  • Parser/url-parser.html:
  • Parser/xml-parser.html:
  • resources: Added.
  • resources/runner.js: Copied from PerformanceTests/Parser/resources/runner.js.
3:34 PM Changeset in webkit [105455] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[SKIA / CHROMIUM] Add another test to test_expectations to prepare for change 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-19
Reviewed by Stephen White.

  • platform/chromium/test_expectations.txt:
3:20 PM Changeset in webkit [105454] by Alexandru Chiculita
  • 8 edits in trunk

CSS Shaders: Remove the setTimeout from the layout tests
https://bugs.webkit.org/show_bug.cgi?id=76535

Reviewed by Tony Chang.

Source/WebCore:

We had setTimeout on old tests because the snapshot picture was taken too early, before the shaders were loaded.
The problem was that the RenderLayer was notified that the shader was loaded only after the onload event was triggered,
so a simple setTimeout(0) would have fixed the issue, but better than that would be to to always call CachedResource::data
in CachedShader::data, which notifies the load earlier (before onload).

No new tests, just removed the setTimeout from old ones.

  • loader/cache/CachedShader.cpp:

(WebCore::CachedShader::data):

LayoutTests:

No need for setTimeout anymore, so I've removed them from the custom filter tests.

  • css3/filters/custom-filter-shader-cache.html:
  • css3/filters/effect-custom-combined-missing.html:
  • css3/filters/effect-custom-parameters.html:
  • css3/filters/effect-custom.html:
  • css3/filters/missing-custom-filter-shader.html:
3:07 PM Changeset in webkit [105453] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Improve touch handling performance by reusing the hitTest result
https://bugs.webkit.org/show_bug.cgi?id=75506

Patch by Min Qin <qinmin@google.com> on 2012-01-19
Reviewed by Adam Barth.

This is a performance optimization and should not cause behavior changes. Existing tests should cover it.

  • page/EventHandler.cpp:

(WebCore::EventHandler::handleTouchEvent):

3:01 PM Changeset in webkit [105452] by ojan@chromium.org
  • 3 edits in trunk/Tools

check-webkit-style of the chromium test_expectations.txt file doesn't test all chromium ports
https://bugs.webkit.org/show_bug.cgi?id=76510

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/style/checkers/test_expectations.py:

(TestExpectationsChecker.check_test_expectations):
(TestExpectationsChecker.check):

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

(TestExpectationsTestCase.test_check_covers_all_configurations):
(TestExpectationsTestCase.test_check_covers_all_configurations.mock_check_test_expectations):
(TestExpectationsTestCase):
(assert_lines_lint):

2:56 PM Changeset in webkit [105451] by jonlee@apple.com
  • 8 edits
    7 adds in trunk

Add text-overflow support that allows placeholder and value text to show an ellipsis when not focused
https://bugs.webkit.org/show_bug.cgi?id=76118
<rdar://problem/9271742>

Reviewed by Dan Bernstein.

Source/WebCore:

Tests: fast/css/text-overflow-input-focus-placeholder-expected.html

fast/css/text-overflow-input-focus-placeholder.html
fast/css/text-overflow-input-focus-value-expected.html
fast/css/text-overflow-input-focus-value.html
fast/css/text-overflow-input.html

  • rendering/RenderTextControlSingleLine.cpp:

(WebCore::RenderTextControlSingleLine::styleDidChange): When the style of the text control
changes, we update the text overflow property of the placeholder.
(WebCore::RenderTextControlSingleLine::createInnerTextStyle): When the style of the text control
changes, we update the text overflow property of the inner text block.
(WebCore::RenderTextControlSingleLine::textShouldBeTruncated): The text of the value and placeholder should
only contain the ellipsis if the input's text-overflow property is set to ellipsis, and the input is not focused.

  • rendering/RenderTextControlSingleLine.h:

LayoutTests:

  • fast/css/text-overflow-input-focus-placeholder-expected.html: Added.
  • fast/css/text-overflow-input-focus-placeholder.html: Added.
  • fast/css/text-overflow-input-focus-value-expected.html: Added.
  • fast/css/text-overflow-input-focus-value.html: Added.
  • fast/css/text-overflow-input.html: Added.

New baselines:

  • platform/mac/fast/css/text-overflow-input-expected.png: Added.
  • platform/mac/fast/css/text-overflow-input-expected.txt: Added.

Needs baselines:

  • platform/chromium/test_expectations.txt:
  • platform/gtk/test_expectations.txt:
  • platform/qt/test_expectations.txt:
  • platform/win/test_expectations.txt:
2:50 PM Changeset in webkit [105450] by rniwa@webkit.org
  • 2 edits in trunk/Tools

Build fix. Revert an unintentional change to WebKitDriver in r105443.

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

(DriverProxy.init):

2:46 PM Changeset in webkit [105449] by dpranke@chromium.org
  • 6 edits in trunk

remove the duplicated build rules from WebKit.gyp, Tools.gyp
https://bugs.webkit.org/show_bug.cgi?id=73384

Reviewed by Tony Chang.

Source/WebKit/chromium:

This patch removes the no-longer-necessary conditional logic for
build_webkit_exes_from_webkit_gyp; we now always build the exes
from their own dedicated gyp files.

  • WebKit.gyp:
  • WebKitUnitTests.gyp:
  • gyp_webkit:

Tools:

This patch removes the no-longer-necessary conditional logic for
build_webkit_exes_from_webkit_gyp; we now always build the exes
from their own dedicated gyp files.

  • DumpRenderTree/DumpRenderTree.gyp/DumpRenderTree.gyp:
2:36 PM Changeset in webkit [105448] by abarth@webkit.org
  • 1 edit
    1 add in trunk/LayoutTests

Add a V8-specific baseline for fast/regex/syntax-errors.html.

  • platform/chromium/fast/regex/syntax-errors-expected.txt: Added.
2:07 PM Changeset in webkit [105447] by Lucas Forschler
  • 2 edits in branches/safari-534.54-branch/Source/WebKit/win

Merged r92291.

2:07 PM Changeset in webkit [105446] by abarth@webkit.org
  • 2 edits in trunk/LayoutTests

This test can also timeout.

  • platform/chromium/test_expectations.txt:
2:04 PM Changeset in webkit [105445] by ap@apple.com
  • 2 edits in trunk/Tools

make-new-script-test should work with HTTP tests
https://bugs.webkit.org/show_bug.cgi?id=76603

Reviewed by Adam Roben.

  • Scripts/make-new-script-test:

(makePathToSharedSources): Renamed from makeTestRelativePathToSharedSources(), since it
now also creates absolute paths for HTTP.

1:57 PM Changeset in webkit [105444] by ggaren@apple.com
  • 6 edits
    2 adds in trunk

Implicit creation of a regular expression should eagerly check for syntax errors
https://bugs.webkit.org/show_bug.cgi?id=76642

Source/JavaScriptCore:

Reviewed by Oliver Hunt.

This is a correctness fix and a slight optimization.

  • runtime/StringPrototype.cpp:

(JSC::stringProtoFuncMatch):
(JSC::stringProtoFuncSearch): Check for syntax errors because that's the
correct behavior.

  • runtime/RegExp.cpp:

(JSC::RegExp::match): ASSERT that we aren't a syntax error. (One line
of code change, many lines of indentation change.)

Since we have no clients that try to match a RegExp that is a syntax error,
let's optimize out the check.

LayoutTests:

Reviewed by Oliver Hunt.

  • fast/js/code-serialize-paren-expected.txt:
  • fast/js/script-tests/code-serialize-paren.js: This test was secretly

broken due to a regexp syntax error. Now fixed.

  • fast/regex/syntax-errors-expected.txt: Added.
  • fast/regex/syntax-errors.html: Added.
1:50 PM Changeset in webkit [105443] by rniwa@webkit.org
  • 13 edits
    1 copy in trunk

Some perf tests time out when ran by run-perf-tests
https://bugs.webkit.org/show_bug.cgi?id=76612

Reviewed by Dirk Pranke and Eric Seidel.

PerformanceTests:

Replace all images in html5.html by geenbox.png to avoid accessing whatwg.org when
running the parser tests. Also call dumpAsText, waitUntilDone, and notifyDone automatically
inside runner.js to avoid having to call them in individual tests.

  • Bindings/event-target-wrapper.html: Removed calls to layoutTestController methods since

they are now called by runner.js automatically.

  • Parser/resources/greenbox.png: Copied from LayoutTests/fast/css/resources/greenbox.png.
  • Parser/resources/html5.html:
  • Parser/resources/runner.js:

(runLoop):

Tools:

Always pass --no-timeout to DumpRenderTree from run-perf-tests.
Otherwise some tests such as Parser/xml-parser.html will timeout.

--no-timeout option is currently supported by Chromium and Mac ports.

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

(Port.to.create_driver):

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

(ChromiumDriver.init):
(ChromiumDriver._wrapper_options):

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

(Driver.init):
(DriverProxy.init):

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

(WebKitDriver.init):
(WebKitDriver.cmd_line):

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

(WebKitDriverTest.test_read_binary_block):
(WebKitDriverTest):
(WebKitDriverTest.test_no_timeout):

  • Scripts/webkitpy/layout_tests/run_webkit_tests_integrationtest.py:

(get_tests_run.RecordingTestDriver.init):

  • Scripts/webkitpy/performance_tests/perftestsrunner.py:

(PerfTestsRunner._parse_args):
(PerfTestsRunner._run_tests_set):

  • Scripts/webkitpy/performance_tests/perftestsrunner_unittest.py:

(create_runner):

1:49 PM Changeset in webkit [105442] by mhahnenberg@apple.com
  • 28 edits
    8 adds in trunk/Source

Implement a new allocator for backing stores
https://bugs.webkit.org/show_bug.cgi?id=75181

Reviewed by Filip Pizlo.

Source/JavaScriptCore:

We want to move away from using fastMalloc for the backing stores for
some of our objects (e.g. JSArray, JSObject, JSString, etc). These backing
stores have a nice property in that they only have a single owner (i.e. a
single pointer to them at any one time). One way that we can take advantage
of this property is to implement a simple bump allocator/copying collector,
which will run alongside our normal mark/sweep collector, that only needs to
update the single owner pointer rather than having to redirect an arbitrary
number of pointers in from-space to to-space.

This plan can give us a number of benefits. We can beat fastMalloc in terms
of both performance and memory usage, we can track how much memory we're using
far more accurately than our rough estimation now through the use of
reportExtraMemoryCost, and we can allocate arbitrary size objects (as opposed
to being limited to size classes like we have been historically). This is also
another step toward moving away from lazy destruction, which will improve our memory footprint.

We start by creating said allocator and moving the ArrayStorage for JSArray
to use it rather than fastMalloc.

The design of the collector is as follows:
Allocation:
-The collector allocates 64KB chunks from the OS to use for object allocation.
-Each chunk contains an offset, a flag indicating if the block has been pinned,

and a payload, along with next and prev pointers so that they can be put in DoublyLinkedLists.

-Any allocation greater than 64KB gets its own separate oversize block, which

is managed separately from the rest.

-If the allocator receives a request for more than the remaining amount in the

current block, it grabs a fresh block.

-Grabbing a fresh block means grabbing one off of the global free list (which is now

shared between the mark/sweep allocator and the bump allocator) if there is one.
If there isn't a new one we do one of two things: allocate a new block from the OS
if we're not ready for a GC yet, or run a GC and then try again. If we still don't
have enough space after the GC, we allocate a new block from the OS.

Garbage collection:
-At the start of garbage collection during conservative stack scanning, if we encounter

what appears to be a pointer to a bump-allocated block of memory, we pin that block so
that it will not be copied for this round of collection.

-We also pin any oversize blocks that we encounter, which effectively doubles as a

"mark bit" for that block. Any oversize blocks that aren't pinned at the end of copying
are given back to the OS.

-Marking threads are now also responsible for copying bump-allocated objects to newSpace
-Each marking thread has a private 64KB block into which it copies bump-allocated objects that it encounters.
-When that block fills up, the marking thread gives it back to the allocator and requests a new one.
-When all marking has concluded, each thread gives back its copy block, even if it isn't full.
-At the conclusion of copying (which is done by the end of the marking phase), we un-pin

any pinned blocks and give any blocks left in from-space to the global free list.

(JSC::AllocationSpace::allocateSlowCase):
(JSC::AllocationSpace::allocateBlock):
(JSC::AllocationSpace::freeBlocks):

  • heap/AllocationSpace.h:

(JSC::AllocationSpace::waterMark):

  • heap/BumpBlock.h: Added.

(JSC::BumpBlock::BumpBlock):

  • heap/BumpSpace.cpp: Added.

(JSC::BumpSpace::tryAllocateSlowCase):

  • heap/BumpSpace.h: Added.

(JSC::BumpSpace::isInCopyPhase):
(JSC::BumpSpace::totalMemoryAllocated):
(JSC::BumpSpace::totalMemoryUtilized):

  • heap/BumpSpaceInlineMethods.h: Added.

(JSC::BumpSpace::BumpSpace):
(JSC::BumpSpace::init):
(JSC::BumpSpace::contains):
(JSC::BumpSpace::pin):
(JSC::BumpSpace::startedCopying):
(JSC::BumpSpace::doneCopying):
(JSC::BumpSpace::doneFillingBlock):
(JSC::BumpSpace::recycleBlock):
(JSC::BumpSpace::getFreshBlock):
(JSC::BumpSpace::borrowBlock):
(JSC::BumpSpace::addNewBlock):
(JSC::BumpSpace::allocateNewBlock):
(JSC::BumpSpace::fitsInBlock):
(JSC::BumpSpace::fitsInCurrentBlock):
(JSC::BumpSpace::tryAllocate):
(JSC::BumpSpace::tryAllocateOversize):
(JSC::BumpSpace::allocateFromBlock):
(JSC::BumpSpace::tryReallocate):
(JSC::BumpSpace::tryReallocateOversize):
(JSC::BumpSpace::isOversize):
(JSC::BumpSpace::isPinned):
(JSC::BumpSpace::oversizeBlockFor):
(JSC::BumpSpace::blockFor):

  • heap/ConservativeRoots.cpp:

(JSC::ConservativeRoots::ConservativeRoots):
(JSC::ConservativeRoots::genericAddPointer):
(JSC::ConservativeRoots::add):

  • heap/ConservativeRoots.h:
  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::blockFreeingThreadMain):
(JSC::Heap::reportExtraMemoryCostSlowCase):
(JSC::Heap::getConservativeRegisterRoots):
(JSC::Heap::markRoots):
(JSC::Heap::collect):
(JSC::Heap::releaseFreeBlocks):

  • heap/Heap.h:

(JSC::Heap::waterMark):
(JSC::Heap::highWaterMark):
(JSC::Heap::setHighWaterMark):
(JSC::Heap::tryAllocateStorage):
(JSC::Heap::tryReallocateStorage):

  • heap/HeapBlock.h: Added.

(JSC::HeapBlock::HeapBlock):

  • heap/MarkStack.cpp:

(JSC::MarkStackThreadSharedData::MarkStackThreadSharedData):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::drainFromShared):
(JSC::SlotVisitor::startCopying):
(JSC::SlotVisitor::allocateNewSpace):
(JSC::SlotVisitor::copy):
(JSC::SlotVisitor::copyAndAppend):
(JSC::SlotVisitor::doneCopying):

  • heap/MarkStack.h:
  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::recycle):
(JSC::MarkedBlock::MarkedBlock):

  • heap/MarkedBlock.h:
  • heap/MarkedSpace.cpp:

(JSC::MarkedSpace::MarkedSpace):

  • heap/MarkedSpace.h:

(JSC::MarkedSpace::allocate):
(JSC::MarkedSpace::forEachBlock):
(JSC::MarkedSpace::SizeClass::resetAllocator):

  • heap/SlotVisitor.h:

(JSC::SlotVisitor::SlotVisitor):

  • heap/TinyBloomFilter.h:

(JSC::TinyBloomFilter::reset):

  • runtime/JSArray.cpp:

(JSC::JSArray::JSArray):
(JSC::JSArray::finishCreation):
(JSC::JSArray::tryFinishCreationUninitialized):
(JSC::JSArray::~JSArray):
(JSC::JSArray::enterSparseMode):
(JSC::JSArray::defineOwnNumericProperty):
(JSC::JSArray::setLengthWritable):
(JSC::JSArray::getOwnPropertySlotByIndex):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::putByIndexBeyondVectorLength):
(JSC::JSArray::deletePropertyByIndex):
(JSC::JSArray::getOwnPropertyNames):
(JSC::JSArray::increaseVectorLength):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::visitChildren):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::compactForSorting):
(JSC::JSArray::subclassData):
(JSC::JSArray::setSubclassData):
(JSC::JSArray::checkConsistency):

  • runtime/JSArray.h:

(JSC::JSArray::inSparseMode):
(JSC::JSArray::isLengthWritable):

  • wtf/CheckedBoolean.h: Added.

(CheckedBoolean::CheckedBoolean):
(CheckedBoolean::~CheckedBoolean):
(CheckedBoolean::operator bool):

  • wtf/DoublyLinkedList.h:

(WTF::::push):

  • wtf/StdLibExtras.h:

(WTF::isPointerAligned):

Source/JavaScriptGlue:

Added forwarding header for new CheckedBoolean used in the bump allocator.

  • ForwardingHeaders/wtf/CheckedBoolean.h: Added.

Source/WebCore:

No new tests.

Added forwarding header for new CheckedBoolean used in the bump allocator.

  • ForwardingHeaders/wtf/CheckedBoolean.h: Added.
1:41 PM Changeset in webkit [105441] by rniwa@webkit.org
  • 5 edits
    2 adds in trunk

Crash in CompositeEditCommand::ensureComposition
https://bugs.webkit.org/show_bug.cgi?id=76207

Reviewed by Chang Shu.

Source/WebCore:

The crash was caused by TypingCommand not kept alive when new editing commands are executed
during adding more typings to the open last typing command since m_lastEditCommand is replaced
by the new command. Fixed the bug by keeping them alive a little longer with RefPtr.

Test: editing/execCommand/editing-command-while-executing-typing-command-crash.html

  • editing/FrameSelection.cpp:

(WebCore::shouldStopBlinkingDueToTypingCommand):
(WebCore::FrameSelection::updateAppearance):

  • editing/TypingCommand.cpp:

(WebCore::TypingCommand::deleteSelection):
(WebCore::TypingCommand::deleteKeyPressed):
(WebCore::TypingCommand::forwardDeleteKeyPressed):
(WebCore::TypingCommand::insertText):
(WebCore::TypingCommand::insertLineBreak):
(WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent):
(WebCore::TypingCommand::insertParagraphSeparator):
(WebCore::TypingCommand::lastTypingCommandIfStillOpenForTyping):
(WebCore::TypingCommand::closeTyping):

  • editing/TypingCommand.h:

LayoutTests:

Add a regression test.

  • editing/execCommand/editing-command-while-executing-typing-command-crash-expected.txt: Added.
  • editing/execCommand/editing-command-while-executing-typing-command-crash.html: Added.
1:16 PM Changeset in webkit [105440] by kling@webkit.org
  • 2 edits in trunk/Source/WebCore

Unreviewed debug build fix.

Remove ASSERT that the cached match is cacheable (we don't store that flag anymore.)

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):

12:55 PM Changeset in webkit [105439] by adachan@apple.com
  • 10 edits in trunk/Source/WebKit2

Need a WebKit2 API for setting media volume https://bugs.webkit.org/show_bug.cgi?id=76560

Reviewed by Dan Bernstein.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::encode): Encode the mediaVolume parameter.
(WebKit::WebPageCreationParameters::decode): Decode the mediaVolume parameter.

  • Shared/WebPageCreationParameters.h:
  • UIProcess/API/C/WKPage.cpp:

(WKPageSetMediaVolume): Call WebPageProxy::setMediaVolume().

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

(WebKit::WebPageProxy::WebPageProxy): Initialize new data member m_mediaVolume.
(WebKit::WebPageProxy::setMediaVolume): Bail if the volume hasn't changed. Update m_mediaVolume
and bail if the page is no longer valid. Otherwise, send a WebPage::SetMediaVolume message to
the web process.
(WebKit::WebPageProxy::creationParameters): Add media volume to the creation parameters.

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

(WebKit::WebPage::WebPage): Initialize media volume from the WebPageCreationParameters.
(WebKit::WebPage::setMediaVolume): Call Page::setMediaVolume().

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in: Add the SetMediaVolume message.
12:52 PM Changeset in webkit [105438] by robert@webkit.org
  • 2 edits in trunk/Source/WebCore

Fix Debug build after r105433

Unreviewed, build fix.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::recalcCollapsedBorders):

12:47 PM Changeset in webkit [105437] by benwells@chromium.org
  • 3 edits in trunk/Tools

Add support for window.print to chromium DRT
https://bugs.webkit.org/show_bug.cgi?id=76479

When used in a test window.print goes into print mode and then
straight out again. This will allow the afterprint event to be
tested by having the afterprint event happen before the dump
happens.

Reviewed by Mihai Parparita.

  • DumpRenderTree/chromium/WebViewHost.cpp:

(WebViewHost::printPage):

  • DumpRenderTree/chromium/WebViewHost.h:
12:35 PM Changeset in webkit [105436] by dpranke@chromium.org
  • 2 edits in trunk/Source/WebKit/chromium

Unreviewed, Roll DEPS to most recent LKGR (118291).

  • DEPS:
12:32 PM Changeset in webkit [105435] by kling@webkit.org
  • 3 edits in trunk/Source/WebCore

CSSStyleSelector: Factor 'isCacheable' flag out of MatchedResult.
<http://webkit.org/b/76376>

Reviewed by Antti Koivisto.

Break up the MatchResult struct into MatchResult and MatchRanges. The matched
declaration cache only needs the ranges, so we save 4 bytes per entry.

  • css/CSSStyleSelector.cpp:

(WebCore::CSSStyleSelector::matchAllRules):
(WebCore::CSSStyleSelector::matchUARules):
(WebCore::CSSStyleSelector::pseudoStyleForElement):
(WebCore::CSSStyleSelector::pseudoStyleRulesForElement):
(WebCore::operator==):
(WebCore::operator!=):
(WebCore::CSSStyleSelector::findFromMatchedDeclarationCache):
(WebCore::CSSStyleSelector::addToMatchedDeclarationCache):
(WebCore::CSSStyleSelector::applyMatchedDeclarations):

  • css/CSSStyleSelector.h:

(WebCore::CSSStyleSelector::MatchRanges::MatchRanges):
(WebCore::CSSStyleSelector::MatchResult::MatchResult):

12:28 PM Changeset in webkit [105434] by eric.carlson@apple.com
  • 6 edits
    2 adds in trunk

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

Reviewed by Darin Adler.

Notify the media element when tracks are added to and removed from a document instead of
a tree because we don't want to trigger loading unless a track element is in the document.

Test: media/track/track-delete-during-setup.html

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::trackWasRemoved): Renamed from trackWillBeRemoved because it is

now called after removal.

  • html/HTMLMediaElement.h:
  • html/HTMLTrackElement.cpp:

(WebCore::HTMLTrackElement::insertedIntoDocument): Was insertedIntoTree. Use this instead

because we care about when a track is inserted and removed from a document, not a tree.

(WebCore::HTMLTrackElement::removedFromDocument): Ditto.

  • html/HTMLTrackElement.h:
12:27 PM Changeset in webkit [105433] by robert@webkit.org
  • 3 edits
    2 adds in trunk

Hit ASSERTION FAILED: table()->collapseBorders() on techcrunch.com
https://bugs.webkit.org/show_bug.cgi?id=76405

Reviewed by Julien Chaffraix.

Source/WebCore:

Tests: fast/css/nested-table-with-collapsed-borders.html

Change recalcCollapsedBorders() so that it only collects border values for the current
table. Calculating the borders for nested tables was wrong as well as wasting cycles, though it would never
have impacted rendering since a cell only paints the borders that match its own.

  • rendering/RenderTable.cpp:

(WebCore::RenderTable::recalcCollapsedBorders):

LayoutTests:

  • fast/css/nested-table-with-collapsed-borders-expected.html: Added.
  • fast/css/nested-table-with-collapsed-borders.html: Added.
12:03 PM Changeset in webkit [105432] by dbates@webkit.org
  • 2 edits
    5 adds
    4 deletes in trunk/Websites/webkit.org

Update Debugging on Mac OS X instructions for Safari 5.1/WebKit 2
https://bugs.webkit.org/show_bug.cgi?id=67102

Reviewed by Eric Seidel.

Add instructions for debugging UIProcess and WebProcess using Xcode 4.

  • building/active-scheme-xcode4.png: Added.
  • building/build-settings-tab-xcode4.png: Added.
  • building/build-window.png: Removed.
  • building/custom-executable-xcode4.png: Added.
  • building/custom-executable.png: Removed.
  • building/debug-mac-uiprocess.html: Added.
  • building/debug.html:
  • building/debug.png: Removed.
  • building/info-tab.png: Removed.
  • building/run-xcode4.png: Added.
12:01 PM Changeset in webkit [105431] by jer.noble@apple.com
  • 54 edits in trunk/Source

Make WebAudio API const-correct.
https://bugs.webkit.org/show_bug.cgi?id=76573

Reviewed by Daniel Bates.

Source/WebCore:

No new tests; no net change in functionality, so covered by existing tests.

The non-const data() accessor was renamed mutableData() to expose const-correctness
bugs during compile time:

  • platform/audio/AudioChannel.h:

(WebCore::AudioChannel::mutableData):

The following functions were made const correct:

  • platform/audio/AudioArray.h:

(WebCore::AudioArray::copyToRange):

  • platform/audio/AudioBus.h:

(WebCore::AudioBus::createBufferFromRange):
(WebCore::AudioBus::createBySampleRateConverting):
(WebCore::AudioBus::createByMixingToMono):

  • platform/audio/FFTConvolver.cpp:

(WebCore::FFTConvolver::process):

  • platform/audio/FFTConvolver.h:
  • platform/audio/FFTFrame.cpp:

(WebCore::FFTFrame::doPaddedFFT):
(WebCore::FFTFrame::doFFT):

  • platform/audio/FFTFrame.h:
  • platform/audio/ReverbConvolverStage.cpp:

(WebCore::ReverbConvolverStage::ReverbConvolverStage):
(WebCore::ReverbConvolverStage::process):

  • platform/audio/ReverbConvolverStage.h:
  • platform/audio/ReverbInputBuffer.cpp:

(WebCore::ReverbInputBuffer::write):

  • platform/audio/ReverbInputBuffer.h:
  • platform/audio/SincResampler.cpp:

(WebCore::SincResampler::process):

  • platform/audio/SincResampler.h:
  • platform/audio/ZeroPole.cpp:

(WebCore::ZeroPole::process):

  • platform/audio/ZeroPole.h:
  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::channelByType):

  • platform/audio/AudioBus.h:

(WebCore::AudioBus::gain):

  • platform/audio/AudioDSPKernelProcessor.cpp:

(WebCore::AudioDSPKernelProcessor::process):

  • platform/audio/AudioDSPKernelProcessor.h:
  • platform/audio/AudioProcessor.h:
  • platform/audio/DynamicsCompressor.cpp:

(WebCore::DynamicsCompressor::process):

  • platform/audio/DynamicsCompressor.h:
  • platform/audio/DynamicsCompressorKernel.cpp:

(WebCore::DynamicsCompressorKernel::process):

  • platform/audio/DynamicsCompressorKernel.h:
  • platform/audio/EqualPowerPanner.cpp:

(WebCore::EqualPowerPanner::pan):

  • platform/audio/EqualPowerPanner.h:
  • platform/audio/HRTFElevation.h:

(WebCore::HRTFElevation::numberOfAzimuths):

  • platform/audio/HRTFPanner.cpp:

(WebCore::HRTFPanner::pan):

  • platform/audio/HRTFPanner.h:
  • platform/audio/Panner.h:
  • platform/audio/Reverb.cpp:

(WebCore::Reverb::process):

  • platform/audio/Reverb.h:
  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::process):

  • platform/audio/ReverbConvolver.h:
  • platform/audio/ffmpeg/FFTFrameFFMPEG.cpp:

(WebCore::FFTFrame::doFFT):

  • platform/audio/mkl/FFTFrameMKL.cpp:

(WebCore::FFTFrame::doFFT):

The following functions were modified to use the renamed mutableData() accessor:

  • platform/audio/AudioBus.cpp:

(WebCore::AudioBus::processWithGainFromMonoStereo):
(WebCore::AudioBus::copyWithSampleAccurateGainValuesFrom):

  • platform/audio/AudioChannel.cpp:

(WebCore::AudioChannel::scale):
(WebCore::AudioChannel::copyFrom):
(WebCore::AudioChannel::copyFromRange):
(WebCore::AudioChannel::sumFrom):

  • platform/audio/AudioDSPKernelProcessor.cpp:

(WebCore::AudioDSPKernelProcessor::process):

  • platform/audio/AudioResampler.cpp:

(WebCore::AudioResampler::process):

  • platform/audio/DynamicsCompressor.cpp:

(WebCore::DynamicsCompressor::process):

  • platform/audio/EqualPowerPanner.cpp:

(WebCore::EqualPowerPanner::pan):

  • platform/audio/HRTFKernel.cpp:

(WebCore::extractAverageGroupDelay):
(WebCore::HRTFKernel::HRTFKernel):
(WebCore::HRTFKernel::createImpulseResponse):

  • platform/audio/HRTFPanner.cpp:

(WebCore::HRTFPanner::pan):

  • platform/audio/MultiChannelResampler.cpp:

(WebCore::MultiChannelResampler::process):

  • platform/audio/Reverb.cpp:

(WebCore::Reverb::process):

  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::ReverbConvolver):
(WebCore::ReverbConvolver::process):

  • platform/audio/mac/AudioFileReaderMac.cpp:

(WebCore::AudioFileReader::createBus):

  • platform/audio/mac/FFTFrameMac.cpp:

(WebCore::FFTFrame::doFFT):

  • webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::process):
(WebCore::AudioBufferSourceNode::renderFromBuffer):

  • webaudio/BiquadProcessor.cpp:

(WebCore::BiquadProcessor::process):

  • webaudio/JavaScriptAudioNode.cpp:

(WebCore::JavaScriptAudioNode::process):

  • webaudio/OfflineAudioDestinationNode.cpp:

(WebCore::OfflineAudioDestinationNode::render):

  • webaudio/RealtimeAnalyser.cpp:

(WebCore::RealtimeAnalyser::writeInput):

  • webaudio/WaveShaperProcessor.cpp:

(WebCore::WaveShaperProcessor::process):

Source/WebKit/chromium:

The following functions were modified to use the renamed mutableData() accessor:

  • src/AudioDestinationChromium.cpp:

(WebCore::AudioDestinationChromium::FIFO::fillBuffer):
(WebCore::AudioDestinationChromium::FIFO::consume):

  • src/WebAudioData.cpp:

(WebCore::WebAudioBus::channelData):

  • src/WebMediaPlayerClientImpl.cpp:

(WebKit::WebMediaPlayerClientImpl::AudioSourceProviderImpl::provideInput):

11:15 AM Changeset in webkit [105430] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Unreviewed, inspector closure compilation fix.

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedEditorContainer.js:
11:13 AM Changeset in webkit [105429] by hyatt@apple.com
  • 8 edits in trunk

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

Before landing support for centering, fix the keyword value to match the latest draft.
The new keyword is "contain" instead of "bounds."

Revised the existing parsing tests to reflect the updated value.

Reviewed by Dan Bernstein.

Source/WebCore:

  • css/CSSParser.cpp:

(WebCore::CSSParser::parseValue):

  • css/CSSPrimitiveValueMappings.h:

(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator LineGridSnap):

  • css/CSSValueKeywords.in:
  • rendering/style/RenderStyleConstants.h:

LayoutTests:

  • fast/line-grid/line-grid-snap-parsing-expected.txt:
  • fast/line-grid/script-tests/line-grid-snap-parsing.js:
11:00 AM Changeset in webkit [105428] by tony@chromium.org
  • 10 edits
    1 copy
    2 adds in trunk/Source

Enable use of precompiled headers in Chromium port on Windows.

Bug 76381 - Use precompiled headers in Chromium port on Windows
https://bugs.webkit.org/show_bug.cgi?id=76381

Patch by Joi Sigurdsson <joi@chromium.org> on 2012-01-19
Reviewed by Tony Chang.

Source/JavaScriptCore:

Source/Platform:

  • Platform.gyp/Platform.gyp: Include WinPrecompile.gypi.

Source/WebCore:

No new tests needed; if the change builds and existing tests pass
that should provide enough coverage.

  • WebCore.gyp/WebCore.gyp: Include WinPrecompile.gypi.

Source/WebKit/chromium:

  • WebKit.gyp: Include WinPrecompile.gypi.
  • WinPrecompile.cpp: Added.
  • WinPrecompile.gypi: Added.
  • WinPrecompile.h: Added.

Source/WTF:

  • WTF.gyp/WTF.gyp: Include WinPrecompile.gypi.
10:57 AM Changeset in webkit [105427] by vsevik@chromium.org
  • 4 edits in trunk/Source/WebCore

Web Inspector: Switching tabs in TabbedEditorContainer should reveal selected script in navigator.
https://bugs.webkit.org/show_bug.cgi?id=76636

Reviewed by Pavel Feldman.

Renamed FileSelector's ScriptSelected event into FileSelected, added EditorSelected
event to EditorContainer.
Renamed _showSourceFrame into _showFile.
Made _uiSourceCodeRemoved reuse _removeSourceFrame.

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype.scriptSelected):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._uiSourceCodeRemoved):
(WebInspector.ScriptsPanel.prototype._showAndRevealInFileSelector):
(WebInspector.ScriptsPanel.prototype._editorSelected):
(WebInspector.ScriptsPanel.prototype._fileSelected):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goBack):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._goForward):
(WebInspector.ScriptsPanel.ComboBoxFileSelector.prototype._filesSelectChanged):

  • inspector/front-end/TabbedEditorContainer.js:

(WebInspector.TabbedEditorContainer):
(WebInspector.TabbedEditorContainer.prototype._tabSelected):

10:55 AM Changeset in webkit [105426] by mihnea@adobe.com
  • 4 edits in trunk

[CSSRegions]Add support for background-color in region styling
https://bugs.webkit.org/show_bug.cgi?id=71488

Reviewed by David Hyatt.

Source/WebCore:

This patch enables region styling again. The region styling tests were also added back.
With the improvements from https://bugs.webkit.org/show_bug.cgi?id=76265, hopefully we will not see the same 3% regressions
in performance.

  • rendering/RenderObject.h:

(WebCore::RenderObject::style):

LayoutTests:

Add back the region styling tests.

  • platform/mac-snowleopard/Skipped:
10:53 AM Changeset in webkit [105425] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

Crash at WebCore::MediaControlRootElement::makeOpaque + 97
https://bugs.webkit.org/show_bug.cgi?id=76391

Reviewed by John Sullivan.

No new tests; Speculative fix for crash.

Crash report data suggests this crash is occurring as the document is being
closed. Check the nullity of document()->page() before deref-ing.

  • html/shadow/MediaControlElements.cpp:

(WebCore::MediaControlPanelElement::makeOpaque):

10:36 AM Changeset in webkit [105424] by kov@webkit.org
  • 2 edits in trunk

Rubber-stamped by Martin Robinson.

  • Source/autotools/symbols.filter: try to fix the 32 bits release

bot by also adding the symbol it generates

10:05 AM Changeset in webkit [105423] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Layout Test fast/text/international/spaces-combined-in-vertical-text.html is failing
https://bugs.webkit.org/show_bug.cgi?id=75787

Patch by Ken Buchanan <kenrb@chromium.org> on 2012-01-19
Reviewed by Simon Fraser.

This is a tweak to my patch in r104322. On some platforms
RenderCombineText::combineText() can abort early during inline
iteration, causing this loop in skipLeadingWhitespace to spin,
hence the layout test timeouts. This patch accounts for that
condition and makes the loop iteration more robust.

No new test because this is fixing a failure on an existing test.

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::LineBreaker::skipLeadingWhitespace):

9:54 AM Changeset in webkit [105422] by kerz@chromium.org
  • 1 edit in branches/chromium/963/LayoutTests/platform/chromium/test_expectations.txt

clean up branch expectations

9:52 AM Changeset in webkit [105421] by jer.noble@apple.com
  • 2 edits in trunk/Source/WebCore

HRTFPanner not rendering correctly on mac port
https://bugs.webkit.org/show_bug.cgi?id=76397

Reviewed by Eric Carlson.

No new tests; HRTF results are currently not testable.

Re-generate the Composite.wav file from its constituent azimuth & elevation files.

  • platform/audio/resources/Composite.wav:
9:45 AM Changeset in webkit [105420] by hyatt@apple.com
  • 3 edits
    2 adds in trunk

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

Fix crash when nested line grids are used. Make sure to bail out if no line grid
is found rather than crashing.

Reviewed by Dan Bernstein.

Source/WebCore:

Added fast/line-grid/line-grid-nested.html.

  • rendering/LayoutState.cpp:

(WebCore::LayoutState::establishLineGrid):

LayoutTests:

  • fast/line-grid/line-grid-nested-expected.txt: Added.
  • fast/line-grid/line-grid-nested.html: Added.
9:40 AM Changeset in webkit [105419] by Carlos Garcia Campos
  • 2 edits in trunk/Source/WebKit2

[GTK] WebKit2 GTK+ API public headers are not installed
https://bugs.webkit.org/show_bug.cgi?id=76626

Reviewed by Martin Robinson.

  • GNUmakefile.am: Rename webkit2gtk_headers as

libwebkit2gtkinclude_HEADERS to match libwebkit2gtkincludedir so
that headers are installed during make install.

9:34 AM Changeset in webkit [105418] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

[Chromium] A Skia roll will break some tests - marking as expected
https://bugs.webkit.org/show_bug.cgi?id=76638

Unreviewed test_expectations update.

Patch by Stephen Chenney <schenney@chromium.org> on 2012-01-19

  • platform/chromium/test_expectations.txt:
9:30 AM Changeset in webkit [105417] by Carlos Garcia Campos
  • 5 edits in trunk/Source/WebKit2

[GTK] Add print-backgrounds setting to WebKit2 GTK+ API
https://bugs.webkit.org/show_bug.cgi?id=76616

Reviewed by Martin Robinson.

  • UIProcess/API/gtk/WebKitSettings.cpp:

(webKitSettingsSetProperty):
(webKitSettingsGetProperty):
(webkit_settings_class_init):
(webkit_settings_get_print_backgrounds):
(webkit_settings_set_print_backgrounds):

  • UIProcess/API/gtk/WebKitSettings.h:
  • UIProcess/API/gtk/docs/webkit2gtk-sections.txt:
  • UIProcess/API/gtk/tests/TestWebKitSettings.cpp:

(testWebKitSettings):

8:55 AM Changeset in webkit [105416] by enrica@apple.com
  • 4 edits in trunk

editingAttributedStringFromRange in WebHTMLConverter does not handle NSUnderlineStyleAttributeName.
https://bugs.webkit.org/show_bug.cgi?id=76588
<rdar://problem/9325183>

Source/WebCore:

Reviewed by Dan Bernstein.

Added TestWebKitAPI test.

  • platform/mac/HTMLConverter.mm:

(+[WebHTMLConverter editingAttributedStringFromRange:]):

Tools:

Added test.

Reviewed by Dan Bernstein.

  • TestWebKitAPI/Tests/mac/InspectorBar.mm:

(TestWebKitAPI::TEST):

8:39 AM Changeset in webkit [105415] by apavlov@chromium.org
  • 11 edits
    2 adds in trunk

Web Inspector: Implement screen resolution emulation backend
https://bugs.webkit.org/show_bug.cgi?id=76532

Reviewed by Pavel Feldman.

Source/WebCore:

The emulation affects [min-|max-]device-(width|height) media queries, window.screen.(width|height),
and window.inner(Width|Height).

Test: inspector/styles/override-screen-size.html

  • css/MediaQueryEvaluator.cpp:

(WebCore::device_heightMediaFeatureEval): Apply device-height override if necessary.
(WebCore::device_widthMediaFeatureEval): Apply device-width override if necessary.

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

(WebCore::InspectorCSSAgent::InspectorCSSAgent):
(WebCore::InspectorCSSAgent::startSelectorProfiler):
(WebCore::InspectorCSSAgent::stopSelectorProfilerImpl):
(WebCore::InspectorCSSAgent::willMatchRule):
(WebCore::InspectorCSSAgent::didMatchRule):
(WebCore::InspectorCSSAgent::willProcessRule):
(WebCore::InspectorCSSAgent::didProcessRule):

  • inspector/InspectorInstrumentation.cpp:

(WebCore::InspectorInstrumentation::applyScreenWidthOverrideImpl):
(WebCore::InspectorInstrumentation::applyScreenHeightOverrideImpl):

  • inspector/InspectorInstrumentation.h:

(WebCore::InspectorInstrumentation::applyScreenWidthOverride):
(WebCore::InspectorInstrumentation::applyScreenHeightOverride):

  • inspector/InspectorPageAgent.cpp:

(WebCore::InspectorPageAgent::InspectorPageAgent):
(WebCore::InspectorPageAgent::restore):
(WebCore::InspectorPageAgent::disable):
(WebCore::InspectorPageAgent::setScreenSizeOverride):
(WebCore::InspectorPageAgent::applyScreenWidthOverride):
(WebCore::InspectorPageAgent::applyScreenHeightOverride):
(WebCore::InspectorPageAgent::updateFrameViewFixedLayout):
(WebCore::InspectorPageAgent::clearFrameViewFixedLayout):
(WebCore::InspectorPageAgent::setFrameViewFixedLayout):

  • inspector/InspectorPageAgent.h:
  • page/DOMWindow.cpp:

(WebCore::DOMWindow::innerHeight): Apply height override if necessary.
(WebCore::DOMWindow::innerWidth): Apply width override if necessary.

  • page/Screen.cpp:

(WebCore::Screen::height): Apply height override if necessary.
(WebCore::Screen::width): Apply width override if necessary.

LayoutTests:

  • inspector/styles/override-screen-size-expected.txt: Added.
  • inspector/styles/override-screen-size.html: Added.
8:36 AM Changeset in webkit [105414] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK test_expectations update for a new failing test.

  • platform/gtk/test_expectations.txt:
7:37 AM Changeset in webkit [105413] by jocelyn.turcotte@nokia.com
  • 13 edits in trunk/Source

[Qt] Handle the layers visible rect calculation on the web process.
https://bugs.webkit.org/show_bug.cgi?id=74720

Reviewed by Noam Rosenthal.

Source/WebCore:

Remove all visible rect calculation related code from TextureMapperNode.

  • platform/graphics/texmap/TextureMapperNode.cpp:
  • platform/graphics/texmap/TextureMapperNode.h:

Source/WebKit2:

The layers now get their visible rect on the web process through the
root layer when the UI process call setVisibleContentRectAndScale,
previously only used for the non-composited content layer.
The rect is then carried down the layers in the tree which apply it the inverse
of their transform before handing it to their tiled backing store.

This ensures that new layers get a proper visible rect right on creation,
and also that simultaneous visible rect and scale changes are applied synchronously.

This patch also uses clampedBoundsOfProjectedQuad instead of mapRect
to transform the visible rect correctly for 3D transformed layers.

  • UIProcess/API/qt/qquickwebview.cpp:

(QQuickWebViewPrivate::initializeDesktop):
(QQuickWebViewPrivate::initializeTouch):
(QQuickWebViewPrivate::updateDesktopViewportSize):
(QQuickWebViewPrivate::updateTouchViewportSize):
(QQuickWebView::geometryChanged):
Make sure that the visible rect is updated for the desktop view as well.

  • UIProcess/API/qt/qquickwebview_p_p.h:
  • UIProcess/LayerTreeHostProxy.h:
  • UIProcess/qt/LayerTreeHostProxyQt.cpp:

(WebKit::LayerTreeHostProxy::paintToCurrentGLContext):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.cpp:

(WebCore::WebGraphicsLayer::setChildren):
(WebCore::WebGraphicsLayer::addChild):
(WebCore::WebGraphicsLayer::addChildAtIndex):
(WebCore::WebGraphicsLayer::addChildAbove):
(WebCore::WebGraphicsLayer::addChildBelow):
(WebCore::WebGraphicsLayer::replaceChild):
(WebCore::WebGraphicsLayer::setMaskLayer):
(WebCore::WebGraphicsLayer::syncCompositingState):
(WebCore::WebGraphicsLayer::syncCompositingStateForThisLayerOnly):
(WebCore::WebGraphicsLayer::setVisibleContentRectAndScale):
(WebCore::WebGraphicsLayer::tiledBackingStoreVisibleRect):
(WebCore::WebGraphicsLayer::computeTransformedVisibleRect):

  • WebProcess/WebCoreSupport/WebGraphicsLayer.h:
  • WebProcess/WebPage/LayerTreeHost.messages.in:
  • WebProcess/WebPage/qt/LayerTreeHostQt.cpp:

(WebKit::LayerTreeHostQt::setVisibleContentRectAndScale):

  • WebProcess/WebPage/qt/LayerTreeHostQt.h:
7:27 AM Changeset in webkit [105412] by Philippe Normand
  • 2 edits in trunk/LayoutTests

Unreviewed, GTK gardening skipping 3 new test failures.

  • platform/gtk/Skipped:
7:12 AM Changeset in webkit [105411] by vsevik@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, unskip passing test.

  • platform/qt/Skipped:
7:05 AM Changeset in webkit [105410] by vsevik@chromium.org
  • 5 edits in trunk/Source/WebCore

Web Inspector: Improve focus switching in scripts panel.
https://bugs.webkit.org/show_bug.cgi?id=76628

Reviewed by Pavel Feldman.

  • inspector/front-end/Dialog.js:

(WebInspector.Dialog.prototype._hide):

  • inspector/front-end/FilteredItemSelectionDialog.js:

(WebInspector.FilteredItemSelectionDialog.prototype.onEnter):
(WebInspector.JavaScriptOutlineDialog.prototype.selectItem):

  • inspector/front-end/ScriptsNavigator.js:

(WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):

  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype._showSourceLine):

5:56 AM Changeset in webkit [105409] by vsevik@chromium.org
  • 11 edits in trunk/Source/WebCore

Web Inspector: Add isSelfOrAnsector and isSelfOrDescendant methods to utilities.
https://bugs.webkit.org/show_bug.cgi?id=76618

Added isSelfOrAncestor, isSelfOrDescendant and WebInspector.restoreFocusFromElement methods.

Reviewed by Pavel Feldman.

  • inspector/front-end/Drawer.js:
  • inspector/front-end/HelpScreen.js:

(WebInspector.HelpScreen.prototype._onBlur):

  • inspector/front-end/MetricsSidebarPane.js:

(WebInspector.MetricsSidebarPane.prototype._handleKeyDown):

  • inspector/front-end/Popover.js:
  • inspector/front-end/ScriptsPanel.js:

(WebInspector.ScriptsPanel.prototype.showUISourceCode):

  • inspector/front-end/StylesSidebarPane.js:

():

  • inspector/front-end/TextPrompt.js:

(WebInspector.TextPrompt.prototype.detach):
(WebInspector.TextPrompt.prototype.isCaretAtEndOfPrompt):

  • inspector/front-end/TextViewer.js:

(WebInspector.TextEditorMainPanel.prototype._updateSelectionOnStartEditing):
(WebInspector.TextEditorMainPanel.prototype._handleDOMUpdates):

  • inspector/front-end/UIUtils.js:

(WebInspector.startEditing.cleanUpAfterEditing):
(WebInspector.restoreFocusFromElement):

  • inspector/front-end/utilities.js:

(Element.prototype.isInsertionCaretInside):
():

5:53 AM Changeset in webkit [105408] by kling@webkit.org
  • 6 edits in trunk/Source/WebCore

DynamicNodeList: Simplify internal Caches object.
<http://webkit.org/b/76600>

Reviewed by Ryosuke Niwa.

Move m_caches from DynamicSubtreeNodeList and ChildNodeList up into DynamicNodeList.
Remove the inheritance from RefCounted and store it simply as "Caches m_caches"
This avoids one heap allocation per DynamicNodeList. Also reordered the Caches members
to pack slightly better on 64-bit.

  • dom/ChildNodeList.cpp:

(WebCore::ChildNodeList::ChildNodeList):
(WebCore::ChildNodeList::length):
(WebCore::ChildNodeList::item):

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

(WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
(WebCore::DynamicSubtreeNodeList::length):
(WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
(WebCore::DynamicSubtreeNodeList::item):

  • dom/DynamicNodeList.h:

(WebCore::DynamicNodeList::invalidateCache):

  • dom/Node.cpp:

(WebCore::NodeRareData::clearChildNodeListCache):

5:47 AM Changeset in webkit [105407] by vsevik@chromium.org
  • 3 edits in trunk/Source/WebCore

Web Inspector: TabbedPane closeAllTabs does not close all tabs.
https://bugs.webkit.org/show_bug.cgi?id=76624

Reviewed by Pavel Feldman.

  • inspector/front-end/ScriptsPanel.js:
  • inspector/front-end/TabbedPane.js:

(WebInspector.TabbedPane.prototype.closeAllTabs):

5:32 AM Changeset in webkit [105406] by rwlbuis@webkit.org
  • 2 edits in trunk/Source/WebCore

image/pjpeg not supported for decoding on BlackBerry platform
https://bugs.webkit.org/show_bug.cgi?id=76595

Reviewed by Antonio Gomes.

Add image/pjpeg as one of the supported types for image decoding on BlackBerry platform.

  • platform/MIMETypeRegistry.cpp:

(WebCore::initializeSupportedImageMIMETypes):

5:04 AM Changeset in webkit [105405] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Skip new failing tests.

  • platform/qt-wk2/Skipped:
  • platform/qt/Skipped:
5:03 AM Changeset in webkit [105404] by commit-queue@webkit.org
  • 45 edits in trunk

Unreviewed, rolling out r105402.
http://trac.webkit.org/changeset/105402
https://bugs.webkit.org/show_bug.cgi?id=76623

Layout test problems (Requested by WildFox on #webkit).

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

Source/WebCore:

  • css/svg.css:

(svg):

  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions):

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth):
(WebCore::RenderImage::computeIntrinsicRatioInformation):

  • rendering/RenderImage.h:
  • rendering/RenderReplaced.cpp:

(WebCore::RenderReplaced::computeReplacedLogicalWidth):
(WebCore::RenderReplaced::logicalHeightIsAuto):
(WebCore::RenderReplaced::computeReplacedLogicalHeight):

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation):
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight):

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:
  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport):

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport):
(WebCore::SVGSVGElement::parseMappedAttribute):
(WebCore::updateCSSForAttribute):
(WebCore::SVGSVGElement::svgAttributeChanged):
(WebCore::SVGSVGElement::localCoordinateSpaceTransform):
(WebCore::SVGSVGElement::currentViewBoxRect):

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size):
(WebCore::SVGImage::computeIntrinsicDimensions):

  • svg/graphics/SVGImage.h:

LayoutTests:

  • platform/mac/svg/custom/dynamic-empty-path-expected.png:
  • platform/mac/svg/custom/fractional-rects-expected.png:
  • platform/mac/svg/custom/js-update-container-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png:
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt:
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png:
  • platform/mac/svg/custom/viewBox-hit-expected.png:
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png:
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png:
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt:
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml:
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml:
  • svg/foreignObject/text-tref-02-b-expected.txt:
4:59 AM Changeset in webkit [105403] by alexis.menard@openbossa.org
  • 11 edits
    2 adds in trunk

Strange Result for getComputedStyle on borderWidth set in em
https://bugs.webkit.org/show_bug.cgi?id=18294

Reviewed by Tony Chang.

Source/WebCore:

BorderValue stores its width on a 12 bits unsigned. This patch
increase it to 27. The patch also modify the way to set the
width or to get it, we now use a unsigned rather than a short.

Test: fast/css/border-width-large.html

  • css/CSSPrimitiveValue.cpp:

(WebCore::CSSPrimitiveValue::computeLength):

  • css/CSSStyleApplyProperty.cpp:

(WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):

  • page/animation/AnimationBase.cpp:

(WebCore::blendFunc):
(WebCore::AnimationBase::ensurePropertyMap):

  • platform/animation/AnimationUtilities.h:

(WebCore::blend):

  • rendering/RenderTheme.cpp:

(WebCore::RenderTheme::adjustStyle):

  • rendering/style/BorderData.h:

(WebCore::BorderData::borderLeftWidth):
(WebCore::BorderData::borderRightWidth):
(WebCore::BorderData::borderTopWidth):
(WebCore::BorderData::borderBottomWidth):

  • rendering/style/BorderValue.h:

(WebCore::BorderValue::width):

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

(WebCore::RenderStyleBitfields::borderLeftWidth):
(WebCore::RenderStyleBitfields::borderRightWidth):
(WebCore::RenderStyleBitfields::borderTopWidth):
(WebCore::RenderStyleBitfields::borderBottomWidth):
(WebCore::RenderStyleBitfields::setBorderLeftWidth):
(WebCore::RenderStyleBitfields::setBorderRightWidth):
(WebCore::RenderStyleBitfields::setBorderTopWidth):
(WebCore::RenderStyleBitfields::setBorderBottomWidth):
(WebCore::RenderStyleBitfields::initialBorderWidth):
(WebCore::RenderStyleBitfields::initialColumnRuleWidth):
(WebCore::RenderStyleBitfields::initialOutlineWidth):

LayoutTests:

This test covers that setting big values to border-width will
return correct values.

  • fast/css/border-width-large-expected.txt: Added.
  • fast/css/border-width-large.html: Added.
4:41 AM Changeset in webkit [105402] by Nikolas Zimmermann
  • 45 edits in trunk

Differentiate between SVG/CSS width/height attributes/properties
https://bugs.webkit.org/show_bug.cgi?id=76447

Reviewed by Antti Koivisto.

Source/WebCore:

Remove a gazillion of hacks out of our SVG implementation, by correctly differentiating between the
SVG width/height attributes and the CSS width/height properties. They need to be treated independently
when handling the intrinsic size negotiation, according to both CSS 2.1 & SVG 1.1 2nd Edition specs.

Fixes several bugs in the LayoutTests/svg/custom/*object*sizing tests, we now match Opera perfectly. FF still has some bugs, and IE9 as well.

  • css/svg.css: Remove hardcoded, width/height: 100% on <svg>.
  • rendering/RenderBox.h:

(WebCore::RenderBox::computeIntrinsicRatioInformation): Make 'intrinsicRatio' a float, and add 'intrinsicSize' as seperated FloatSize, to avoid confusion.

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::calculateImageIntrinsicDimensions): Add forgotton case for percentage intrinsic sizes, that lead to workarounds in other places, that can now be removed.

  • rendering/RenderImage.cpp:

(WebCore::RenderImage::computeReplacedLogicalWidth): Directly use imageHasRelativeWidth/Height(), it does differentiate between SVG/CSS width/height attributes/properties now.
(WebCore::RenderImage::computeIntrinsicRatioInformation): Adapt to 'intrinsicRatio' argument change.

  • rendering/RenderImage.h: Ditto.
  • rendering/RenderReplaced.cpp: Refactor existing code, break out firstContainingBlockWithLogicalWidth/hasReplacedLogicalWidth/hasReplacedLogicalHeight/hasAutoHeightOrContainingBlockWithAutoHeight.

(WebCore::firstContainingBlockWithLogicalWidth): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalWidth): Refactored, and exported, so SVGSVGElement::widthAttributeEstablishesViewport() can use it.
(WebCore::hasAutoHeightOrContainingBlockWithAutoHeight): Refactored.
(WebCore::RenderReplaced::hasReplacedLogicalHeight): Refactored, and exported, so SVGSVGElement::heightAttributeEstablishesViewport() can use it.
(WebCore::RenderReplaced::computeReplacedLogicalWidth): Adapt to 'intrinsicRatio' changes ('intrinsicSize' is now decoupled from it). Refactor so that RenderSVGRoot can directly use it as well!
(WebCore::RenderReplaced::computeReplacedLogicalHeight): Ditto.

  • rendering/RenderReplaced.h:
  • rendering/svg/RenderSVGRoot.cpp:

(WebCore::RenderSVGRoot::computeIntrinsicRatioInformation): Only determine the intrinsic size & ratio using the SVG width/height attributes, not the CSS width/height properties, as it's specified.
(WebCore::resolveLengthAttributeForSVG): Helper function for computeReplacedLogicalWidth/Height, that scales Length values that come from SVG width/height attributes.
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth): Finally remove home-brewn size computation logic - it can be fully shared with RenderReplaced now that we inherit from it.
(WebCore::RenderSVGRoot::computeReplacedLogicalHeight): Ditto.

  • rendering/svg/RenderSVGRoot.h:
  • rendering/svg/RenderSVGViewportContainer.h:

(WebCore::RenderSVGViewportContainer::viewport): Export viewport() for easier length resolution.

  • svg/SVGLengthContext.cpp:

(WebCore::SVGLengthContext::determineViewport): Finally clean up this hell, and make it easy to understand. Only need to resolve lengths against either RenderSVGRoot or RenderSVGViewportContainer now.

  • svg/SVGSVGElement.cpp:

(WebCore::SVGSVGElement::viewport): Remove wrong code and disable this. Its not used, and we have no test coverage for it. Its current implementation didn't make any sense.
(WebCore::SVGSVGElement::parseMappedAttribute): Remove hacks mapping SVG width/height attributes to CSS properties.
(WebCore::SVGSVGElement::svgAttributeChanged): Ditto.
(WebCore::SVGSVGElement::localCoordinateSpaceTransform): Refactored.
(WebCore::SVGSVGElement::currentViewBoxRect): Ditto.
(WebCore::SVGSVGElement::currentViewportSize): Ditto.
(WebCore::SVGSVGElement::widthAttributeEstablishesViewport): Main logic determining if the SVG or CSS properties establish the viewport - a direct transliteration from the spec.
(WebCore::SVGSVGElement::heightAttributeEstablishesViewport): Ditto.
(WebCore::SVGSVGElement::intrinsicWidth): Helper.
(WebCore::SVGSVGElement::intrinsicHeight): Ditto.

  • svg/SVGSVGElement.h:
  • svg/graphics/SVGImage.cpp:

(WebCore::SVGImage::size): Cleanup code.
(WebCore::SVGImage::hasRelativeWidth): Added, avoids hacks in RenderBoxModelObject.
(WebCore::SVGImage::hasRelativeHeight): Ditto.
(WebCore::SVGImage::computeIntrinsicDimensions): Make use of new SVGSVGElement::computeIntrinsicDimensions.

  • svg/graphics/SVGImage.h:

LayoutTests:

Update SVG pixel test baseline.

  • platform/mac/svg/custom/dynamic-empty-path-expected.png: Marginal changes.
  • platform/mac/svg/custom/fractional-rects-expected.png: Ditto.
  • platform/mac/svg/custom/js-update-container-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.png: Align with Opera, gives same result now. All *object*sizing* tests are passing now.
  • platform/mac/svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-height-75p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute-expected.txt: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.png: Ditto.
  • platform/mac/svg/custom/object-sizing-width-75p-height-50p-on-target-svg-expected.txt: Ditto.
  • platform/mac/svg/custom/use-css-no-effect-on-shadow-tree-expected.png: Marginal changes.
  • platform/mac/svg/custom/viewBox-hit-expected.png: Ditto.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-absolute-size-2-expected.txt: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.png: Ditto.
  • platform/mac/svg/zoom/page/zoom-svg-through-object-with-auto-size-expected.txt: Ditto.
  • svg/custom/object-sizing-width-50p-height-50p-on-target-svg-absolute.xhtml: Fix test, now that our bug is fixed.
  • svg/custom/object-sizing-width-50p-height-75p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/custom/object-sizing-width-75p-height-50p-on-target-svg-absolute.xhtml: Ditto.
  • svg/foreignObject/text-tref-02-b-expected.txt: Size is not reported anymore.
4:17 AM Changeset in webkit [105401] by Nikolas Zimmermann
  • 3 edits in trunk/LayoutTests

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

Reviewed by Pavel Feldman.

Fix Chromium specific problem with svg/text/select-x-list-4.svg, making it fail on the bots.
After transforming the endPos.x + 1 -> absEndPos.x, subtract -1 again, to be sure we don't
select text too far after the end position, making the selection currently disappear, which
is a bug, but can be avoided in this testcase.

  • platform/chromium/test_expectations.txt: Unskip test.
  • svg/text/resources/SelectionTestCase.js:

(selectRange): Subtract -1 from absEndPos.x.

3:18 AM Changeset in webkit [105400] by vestbo@webkit.org
  • 2 edits in trunk/Tools

[Qt] Do full incremental builds until bots use update-webkit

Rubber-stamped by Simon Hausmann.

3:06 AM Changeset in webkit [105399] by vestbo@webkit.org
  • 2 edits in trunk/Tools

Fix the Qt build

Unreviewed build fix.

  • Scripts/webkitdirs.pm:

(buildQMakeProjects):

3:00 AM Changeset in webkit [105398] by vestbo@webkit.org
  • 6 edits in trunk

[Qt] Make build-webkit always do safe incremental builds after update-webkit

When building against Qt5 with GCC we would just run 'make' in the build dir,
and rely on the dependency files output by GCC (-MD) to handle dependency
tracking, but that fails for special-cases like adding a Q_OBJECT macro
to a header.

To guarantee that an incrmental build will work, we have to run 'make qmake',
which we now do on every build-webkit that's followed by a successful run
of update-webkit. The reasoning is that update-webkit can result in such
potential corner-cases being applied, and since we can't know for sure
unless we inspect the diff and account for all the corner cases we assume
the worst and always run 'make qmake'.

After a succesful run of build-webkit we proceed to do just 'make' for any
subsequent runs, since we assume that the developer knows what kind of
changes he/she is doing, and when a 'make qmake' is needed.

Reviewed by Simon Hausmann.

2:24 AM Changeset in webkit [105397] by Csaba Osztrogonác
  • 3 edits in trunk/LayoutTests

[Qt] Unreviewed gardening. Unskip now passing tests.

  • platform/qt-5.0/Skipped:
  • platform/qt-wk2/Skipped:
2:16 AM Changeset in webkit [105396] by rniwa@webkit.org
  • 5 edits
    4 adds in trunk

drop event isn't fired for contentEditable in edit drag
https://bugs.webkit.org/show_bug.cgi?id=57185

Reviewed by Adam Barth.

Source/WebCore:

Dispatch drop and dragend events after edit drag per HTML5 spec:
http://www.whatwg.org/specs/web-apps/current-work/multipage/dnd.html#drag-and-drop-processing-model

There are two major differences between the spec and WebKit's new behavior:

While the spec says we have to insert the dragged contents immediately after dispatching drop event
and delete the source in the default event handler of dragend event, doing so in WebKit is extremely
difficult because of the way we manage the selection. Instead, we continue to delete the source
and insert the dragged contents immediately after the drop event; this behavior matches that of Firefox 9.

When the dragged contents and the destination of the move is in the same text node, ReplaceSelectionCommand
may end up replacing it with a new text node. But this removal causes a problem when EventHandler uses
the node to dispatch dragend event because the node is "orphaned" from its parent at that point. To mitigate
this issue, we update the dragState's m_dragSrc when the node is orphaned by the edit drag. While this behavior
may differ from the spec and other browsers, not delivering dragend to the editing host seems strictly worse than
dispatching it at the slightly wrong target.

Tests: fast/events/moving-text-should-fire-drop-and-dragend-events-2.html

fast/events/moving-text-should-fire-drop-and-dragend-events.html

  • page/DragController.cpp:

(WebCore::DragController::performDrag): Dispatch drop event even when m_isHandlingDrag is true as long
as DragDestinationActionDHTML is an acceptable action.
(WebCore::DragController::concludeEditDrag): Call updateDragStateAfterEditDragIfNeeded after inserting
the dragged contents. This is necessary when ReplaceSelectionCommand or MoveSelectionCommand modifies
the source node while inserting the dragged contents.

  • page/EventHandler.cpp:

(WebCore::EventHandler::performDragAndDrop): Clear the drag state only if drop event's default action
was prevented so that we dispatch dragevent event later.
(WebCore::EventHandler::updateDragStateAfterEditDragIfNeeded): Update dragState's m_dragSrc when the node
is orphaned. See above for the rationale.

  • page/EventHandler.h:

LayoutTests:

Added tests ensure moving text in contenteditable regions fire dragstart, drop, and dragend events.

  • fast/events/moving-text-should-fire-drop-and-dragend-events-2-expected.txt: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events-2.html: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events-expected.txt: Added.
  • fast/events/moving-text-should-fire-drop-and-dragend-events.html: Added.
1:58 AM Changeset in webkit [105395] by kinuko@chromium.org
  • 14 edits in trunk/Source

Cleanup: Move chrome-specific filesystem type handling code (for FileSystem API) under chromium directory
https://bugs.webkit.org/show_bug.cgi?id=76551

Reviewed by Darin Fisher.

WebKit-svn/Source/WebCore:

Moved the implementation of crackFileSystemURL() and toURL() from
WebCore/fileapi/DOMFileSystemBase into WebCore/platform/AsyncFileSystem
so that each platform can extend/implement their behavior if necessary.

No new tests since this patch has no functionality changes. (Existing
tests should pass)

  • fileapi/DOMFileSystemBase.cpp: Moved the implementation of

crackFileSystemURL() to AsyncFileSystem
(WebCore::DOMFileSystemBase::crackFileSystemURL):

  • fileapi/DOMFileSystemBase.h:
  • fileapi/EntryBase.cpp: Moved the implementation of toURL() to AsyncFileSystem

(WebCore::EntryBase::toURL):

  • page/DOMWindow.cpp: Removed chrome-specific type handling code.

(WebCore::DOMWindow::webkitRequestFileSystem):

  • page/DOMWindow.h: Removed chrome-specific filesystem type

(EXTERNAL).

  • platform/AsyncFileSystem.cpp: Added default implementation of toURL() and crackFileSystemURL()

(WebCore::AsyncFileSystem::toURL):
(WebCore::AsyncFileSystem::crackFileSystemURL):

  • platform/AsyncFileSystem.h:
  • workers/WorkerContext.cpp: Removed chrome-specific type handling code.

(WebCore::WorkerContext::webkitRequestFileSystem):
(WebCore::WorkerContext::webkitRequestFileSystemSync):

WebKit-svn/Source/WebKit/chromium:

  • src/AssertMatchingEnums.cpp: Removed matching assertion for TypeExternal as it's no longer defined separately.
  • src/AsyncFileSystemChromium.cpp: Added crackFileSystemURL() and toURL() implementation that

handle chrome-specific filesystem type (EXTERNAL) as well as regular TEMPORARY/PERSISTENT types.
(WebCore::AsyncFileSystem::crackFileSystemURL): Added.
(WebCore::AsyncFileSystemChromium::toURL): Added.

  • src/AsyncFileSystemChromium.h:
1:22 AM Changeset in webkit [105394] by mihnea@adobe.com
  • 7 edits in trunk/Source/WebCore

Cache RenderStyle pointer as a method to avoid performance regression for region styling
https://bugs.webkit.org/show_bug.cgi?id=76265

Reviewed by David Hyatt.

No new tests since this is just refactoring.
When region styling was enabled in https://bugs.webkit.org/show_bug.cgi?id=71488,
it introduced a performance regression due to the change of RenderObject::style() method.
This patch tries to avoid a new performance regression when region styling will be enabled again.

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::styleWillChange):
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::layoutBlockChildren):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::computePreferredLogicalWidths):
(WebCore::getBorderPaddingMargin):
(WebCore::RenderBlock::computeInlinePreferredLogicalWidths):
(WebCore::RenderBlock::computeBlockPreferredLogicalWidths):

  • rendering/RenderBlockLineLayout.cpp:

(WebCore::RenderBlock::layoutRunsAndFloatsInRange):
(WebCore::RenderBlock::LineBreaker::nextLineBreak):

  • rendering/RenderBox.cpp:

(WebCore::RenderBox::willBeDestroyed):
(WebCore::RenderBox::styleWillChange):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::updateBoxModelInfoFromStyle):
(WebCore::RenderBox::computeRectForRepaint):
(WebCore::RenderBox::computeLogicalWidthInRegion):
(WebCore::RenderBox::computeLogicalWidthUsing):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::computePercentageLogicalHeight):
(WebCore::RenderBox::computePositionedLogicalHeight):

  • rendering/RenderBoxModelObject.cpp:

(WebCore::RenderBoxModelObject::styleWillChange):
(WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):

  • rendering/RenderInline.cpp:

(WebCore::RenderInline::styleDidChange):

  • rendering/RenderText.cpp:

(WebCore::RenderText::styleDidChange):
(WebCore::RenderText::computePreferredLogicalWidths):

1:08 AM Changeset in webkit [105393] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

[Chromium] Random characters got rendered as empty boxes or with incorrect glyphs even when a font is present
https://bugs.webkit.org/show_bug.cgi?id=76508

Patch by Kazuhiro Inaba <kinaba@chromium.org> on 2012-01-19
Reviewed by Kent Tamura.

Wrapped GetGlyphIndices() API calls so that when they failed we trigger font
loading outside the sandbox and retry the call.

No new auto tests since the bug involves the system's occasional cache behavior
and thus there's no reliable way to reproduce and test the situation.

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:

(WebCore::getGlyphIndices):
GDI call wrapper ensuring fonts to be loaded.
(WebCore::initSpaceGlyph):
Changed to use the wrapper function.
(WebCore::fillBMPGlyphs):
Changed to use the wrapper function.
Introduced scoped HDC management by HWndDC.
(WebCore::GlyphPage::fill):

12:58 AM Changeset in webkit [105392] by dmazzoni@google.com
  • 14 edits in trunk/LayoutTests

Unreviewed - re-enables tests on chromium-mac by making minor changes to cause the expectations to be identical on all Chromium configurations.

12:31 AM Changeset in webkit [105391] by abarth@webkit.org
  • 7 edits in trunk

createAttributeNS should understand that "xmlns" is allowed in the http://www.w3.org/2000/xmlns/
https://bugs.webkit.org/show_bug.cgi?id=76579

Reviewed by Eric Seidel.

Source/WebCore:

This patch cleans up a tiny corner case involving the (somewhat
magical) xmlns attribute that we uncovered when working on
setAttributeNS.

Tests: fast/dom/Document/createAttributeNS-namespace-err.html

  • dom/Document.cpp:

(WebCore::Document::importNode):
(WebCore::Document::hasValidNamespaceForElements):
(WebCore::Document::hasValidNamespaceForAttributes):
(WebCore::Document::createElementNS):
(WebCore::Document::createAttributeNS):

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

(WebCore::Element::setAttributeNS):

LayoutTests:

  • fast/dom/Document/createAttributeNS-namespace-err-expected.txt:
  • fast/dom/Document/script-tests/createAttributeNS-namespace-err.js:
12:29 AM Changeset in webkit [105390] by rolandsteiner@chromium.org
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for DEBUG: remove comparison of an unsigned variable with '>= 0' in ASSERT.

No new tests. (no functionality change)

  • webaudio/AudioNodeOutput.cpp:

(WebCore::AudioNodeOutput::AudioNodeOutput):

Note: See TracTimeline for information about the timeline view.