Timeline


and

02/19/10:

19:06 Changeset [55043] by mjs@apple.com

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

  • Configurations/FeatureDefines.xcconfig:

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

  • win/tools/vsprops/FeatureDefines.vsprops:

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

  • features.gypi:

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

  • Configurations/FeatureDefines.xcconfig:

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

I made ENABLE(SANDBOX) only control the sandbox attribute itself;
I did not ifdef the infrastructure to make sandboxing
switchable. This is because the likely concerns about sandboxing
are not stability of the infrastructure code, but rather the fact
that the security model exposed to authors is still evolving.

  • Configurations/FeatureDefines.xcconfig:
  • GNUmakefile.am:
  • WebCore.pri:
  • html/HTMLIFrameElement.cpp: (WebCore::HTMLIFrameElement::parseMappedAttribute):

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

  • configure.ac:

2010-02-19 Maciej Stachowiak <mjs@apple.com>

Reviewed by David Levin.

Add an ENABLE flag for sandboxed iframes to make it possible to disable it in releases
https://bugs.webkit.org/show_bug.cgi?id=35147

  • Scripts/build-webkit: Handle new flag.
18:08 Changeset [55042] by eric@webkit.org

2010-02-19 Leandro Pereira <leandro@profusion.mobi>

Reviewed by Shinichiro Hamaji.

[style-queue] should not complain about identifier names with underscores under WebKit/efl/ewk/
https://bugs.webkit.org/show_bug.cgi?id=35091

White list unix_hacker_style names in WebKit/efl/ewk because these
are used in the EFL API.

  • Scripts/webkitpy/style/checker.py:
    • Filter out readability/naming on WebKit/efl/ewk.
17:23 Changeset [55041] by ap@apple.com

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=35132
<rdar://problem/7664353> Mouse cursor sometimes flickers over Flash content (35132)

WebCore:

  • page/EventHandler.cpp: (WebCore::EventHandler::handleMouseMoveEvent): Don't set mouse pointer when above a plug-in or applet to prevent flicker.

WebKit:

  • Plugins/WebNetscapePluginEventHandlerCarbon.mm: (WebNetscapePluginEventHandlerCarbon::mouseMoved): Send adjustCursor events on every mouse move. This matches Firefox, and is actually required for plug-ins to manipulate cursor wihout resorting to techniques such as fast firing timers.
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView handleMouseEntered:]): Some plug-ins handle mouse cursor internally, but those that don't just need to get an arrow cursor (matching Firefox). This means that e.g. a plugin inside <A> won't get a finger mouse pointer.
  • Plugins/WebHostedNetscapePluginView.mm: (-[WebNetscapePluginView handleMouseEntered:]): (-[WebNetscapePluginView handleMouseExited:]): Implement this behavior here, too. Also, out of process code didn't reset mouse pointer on mouse exit, which it needed to do.
  • WebView/WebHTMLView.mm: (needsCursorRectsSupportAtPoint): (setCursor): (resetCursorRects): Make sure that the same workaround we have for Web content also applies to Netscape plug-ins, as AppKit would reset the mouse pointer to arrow if given a chance. (+[WebHTMLViewPrivate initialize]): Renamed setCursorIMP on Leopard and higher to prevent confusion - the method we override is completely different. (-[WebHTMLView hitTest:]): Added a FIXME about a likely bug.
16:51 Changeset [55040] by eric@webkit.org

2010-02-19 Eric Seidel <eric@webkit.org>

Reviewed by Dimitri Glazkov.

fast/forms/search-event-delay.html failed on Snow Leopard Debug Bot
https://bugs.webkit.org/show_bug.cgi?id=33543

  • platform/mac-snowleopard/Skipped:
    • This test prints times and expects 0.1s precision even on Debug bots. That can't work. Skipping the test to make the bots green until this can be made non-flakey or until we have a layout test system which allows "failure" expectations.
16:45 Changeset [55039] by pkasting@chromium.org

Fix regression in calculating an animated image's start time.
https://bugs.webkit.org/show_bug.cgi?id=35115

Reviewed by Adam Barth.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::startAnimation):

16:44 Changeset [55038] by eric@webkit.org

2010-02-19 Eric Seidel <eric@webkit.org>

Reviewed by Dimitri Glazkov.

editing/pasteboard/4641033.html timed out on Tiger Bot
https://bugs.webkit.org/show_bug.cgi?id=33310

  • platform/mac-tiger/Skipped:
16:41 Changeset [55037] by eric@webkit.org

2010-02-19 James Hawkins <jhawkins@chromium.org>

Reviewed by Darin Fisher.

[Chromium] Call WebViewClient::didAcceptAutoFillSuggestion when the
user selects a suggestion from the AutoFill suggestions popup.

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

  • public/WebViewClient.h: (WebKit::WebViewClient::didAcceptAutoFillSuggestion):
  • src/AutoFillPopupMenuClient.cpp: (WebKit::AutoFillPopupMenuClient::valueChanged):
  • src/AutoFillPopupMenuClient.h:
15:44 Changeset [55036] by ap@apple.com

Reviewed by Geoffrey Garen.

https://bugs.webkit.org/show_bug.cgi?id=35178
LiveConnect code uses hand-rolled fprintf logging

Changed to use LOG, LOG_ERROR and ASSERT.

  • platform/Logging.cpp: (WebCore::getChannelFromName):
  • platform/Logging.h:
  • platform/mac/LoggingMac.mm: (WebCore::InitializeLoggingChannelsIfNecessary):
  • platform/win/LoggingWin.cpp: (WebCore::InitializeLoggingChannelsIfNecessary): TextConversion channel was (almost) unused, renamed to LiveConnect.
  • platform/text/gtk/TextCodecGtk.cpp: (WebCore::TextCodecGtk::registerEncodingNames): The only use of this channel was in platform specific code, commandeered it for cross-platform needs.
  • bridge/jni/JNIBridge.cpp:
  • bridge/jni/JNIUtility.cpp: (JSC::Bindings::getJavaVM): (JSC::Bindings::getJNIEnv): (JSC::Bindings::getJNIField):
  • bridge/jni/JNIUtility.h: (JSC::Bindings::callJNIMethodV): (JSC::Bindings::callJNIStaticMethod):
  • bridge/jni/jni_jsobject.mm: (completedJavaScriptAccess): (dispatchToJavaScriptThread): (performJavaScriptAccess): (JavaJSObject::invoke): (JavaJSObject::call): (JavaJSObject::eval): (JavaJSObject::getMember): (JavaJSObject::setMember): (JavaJSObject::removeMember): (JavaJSObject::getSlot): (JavaJSObject::setSlot): (JavaJSObject::toString): (JavaJSObject::createNative):
  • bridge/jni/jsc/JNIBridgeJSC.cpp: (JavaField::valueFromInstance): (JavaField::setValueToInstance):
  • bridge/jni/jsc/JavaClassJSC.cpp: (JavaClass::JavaClass):
  • bridge/jni/jsc/JavaInstanceJSC.cpp: (JavaInstance::invokeMethod): (JObjectWrapper::JObjectWrapper): (JObjectWrapper::~JObjectWrapper):
15:36 Changeset [55035] by barraclough@apple.com

JSString::getIndex() calls value() to resolve the string value (is a rope)
to a UString, then passes the result to jsSingleCharacterSubstring without
checking for an exception. In case of out-of-memory the returned UString
is null(), which may result in an out-of-buounds substring being created.
This is bad.

Reviewed by Oliver Hunt.

Simple fix is to be able to get an index from a rope without resolving to
UString. This may be a useful optimization in some test cases.

The same bug exists in some other methods is JSString, these can be fixed
by changing them to call getIndex().

  • runtime/JSString.cpp:

(JSC::JSString::resolveRope):
(JSC::JSString::getStringPropertyDescriptor):

  • runtime/JSString.h:

(JSC::jsSingleCharacterSubstring):
(JSC::JSString::getIndex):
(JSC::jsSingleCharacterString):
(JSC::JSString::getStringPropertySlot):

  • runtime/UStringImpl.cpp:

(JSC::singleCharacterSubstring):

  • runtime/UStringImpl.h:

(JSC::UStringImpl::singleCharacterSubstring):

15:07 Changeset [55034] by eric@webkit.org

2010-02-19 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

Split out "prepare-rollout" from "rollout" and make --complete-rollout default
https://bugs.webkit.org/show_bug.cgi?id=33745

  • Scripts/webkitpy/commands/download.py:
    • Add a new AbstractRolloutPrepCommand to share code between PrepareRollout and Rollout
    • Add PrepareRollout
  • Scripts/webkitpy/commands/download_unittest.py: Test PrepareRollout, remove CompleteRollout tests.
  • Scripts/webkitpy/steps/init.py: include ReopenBugAfterRollout step.
  • Scripts/webkitpy/steps/completerollout.py: Removed.
  • Scripts/webkitpy/steps/options.py: remove complete_rollout
  • Scripts/webkitpy/steps/reopenbugafterrollout.py: Added.
15:06 Changeset [55033] by krit@webkit.org

2010-02-19 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

RenderSVGResourceMasker causes an Assert on Wind builds during DRT
https://bugs.webkit.org/show_bug.cgi?id=35182

We remove the Assert for now and return earlier, if the HashMap of the Masker
does not contain the RenderObject. The RenderObject is an identifiert to get
a already calculated mask.
A race condition during parsing can cause the invalidation call, before the mask
got calculated (only during DRT on Win build bots).
The real bug will be fixed with: https://bugs.webkit.org/show_bug.cgi?id=35181

  • rendering/RenderSVGResourceMasker.cpp: (WebCore::RenderSVGResourceMasker::invalidateClient):
14:50 Changeset [55032] by eric@webkit.org

2010-02-19 James Hawkins <jhawkins@chromium.org>

Reviewed by Eric Seidel.

[Chromium] Use the m_suggestionsPopupClient pointer to refer to the
popup client, as the Autocomplete popup might not be the current
popup.

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

  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::autocompleteHandleKeyEvent): (WebKit::WebViewImpl::refreshSuggestionsPopup):
14:34 Changeset [55031] by eric@webkit.org

2010-02-19 James Hawkins <jhawkins@chromium.org>

Reviewed by Eric Seidel.

[Chromium] Rename EditorClientImpl::onAutofillSuggestionAccepted to
onAutocompleteSuggestionAccepted to better match the purpose of the
function.

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

  • src/EditorClientImpl.cpp: (WebKit::EditorClientImpl::onAutocompleteSuggestionAccepted):
  • src/EditorClientImpl.h:
  • src/SuggestionsPopupMenuClient.cpp: (WebKit::SuggestionsPopupMenuClient::valueChanged):
14:10 Changeset [55030] by simon.fraser@apple.com

2010-02-19 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/7535894> Page contents missing from snapshot on Newsweek.com article

Followup to avoid capturing compositing layers twice in snapshots. Add private
methods to WebView to specify whether drawing the WebView into an image will
include flattened compositing layers (the default behavior) or not.

  • WebView/WebFrame.mm: (-[WebFrame _drawRect:contentsOnly:]): Consult the WebView flag to see if we want flattening.
  • WebView/WebViewPrivate.h: New methods.
  • WebView/WebView.mm: Ditto. (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): (-[WebView _setIncludesFlattenedCompositingLayersWhenDrawingToBitmap:]): (-[WebView _includesFlattenedCompositingLayersWhenDrawingToBitmap]):
  • WebView/WebViewData.h: New member variable.
13:44 Changeset [55029] by pkasting@chromium.org

WebCore: Make Pasteboard::writeImage() safe against NULL cachedImages, and clean
up some code.
https://bugs.webkit.org/show_bug.cgi?id=35136

Reviewed by Darin Fisher.

  • loader/ImageLoader.cpp:

(WebCore::ImageLoader::updateRenderer): Shorten some code.

  • page/DragController.cpp:

(WebCore::getImage): Shorten some code.

  • platform/chromium/PasteboardChromium.cpp:

(WebCore::Pasteboard::writeImage): NULL-check cachedImage().

  • platform/gtk/PasteboardGtk.cpp:

(WebCore::Pasteboard::writeImage): NULL-check cachedImage().

  • platform/mac/PasteboardMac.mm:

(WebCore::Pasteboard::writeImage): NULL-check cachedImage().

  • platform/qt/PasteboardQt.cpp:

(WebCore::Pasteboard::writeImage): NULL-check cachedImage().

  • platform/win/PasteboardWin.cpp:

(WebCore::Pasteboard::writeImage): NULL-check cachedImage().

WebKit/chromium: Add an isImageBlocked bool to the WebContextMenuData struct.
https://bugs.webkit.org/show_bug.cgi?id=35136

Reviewed by Darin Fisher.

This lets us properly enable/disable the "Copy Image" context menu entry
(and, in the future, maybe add a "Load Image" function).

  • public/WebContextMenuData.h:
  • src/ContextMenuClientImpl.cpp:

(WebKit::ContextMenuClientImpl::getCustomMenuFromDefaultItems):

13:30 Changeset [55028] by kenneth@webkit.org

Rubberstamped by Noam Rosenthal, who wrote the original code.

Make mouse wheel scrolling work when using the GraphicsLayer.

  • platform/graphics/qt/GraphicsLayerQt.cpp:

(WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):

13:08 Changeset [55027] by oliver@apple.com

2010-02-19 Oliver Hunt <oliver@apple.com>

RS = Gavin Barraclough.

Split the 32/64 version of JITPropertyAccess into a separate file.

  • GNUmakefile.am:
  • JavaScriptCore.gypi:
  • JavaScriptCore.pri:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • jit/JITPropertyAccess.cpp:
  • jit/JITPropertyAccess32_64.cpp: Added. (JSC::JIT::emit_op_put_by_index): (JSC::JIT::emit_op_put_getter): (JSC::JIT::emit_op_put_setter): (JSC::JIT::emit_op_del_by_id): (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_put_by_val): (JSC::JIT::emitSlow_op_put_by_val): (JSC::JIT::emit_op_get_by_id): (JSC::JIT::emitSlow_op_get_by_id): (JSC::JIT::emit_op_put_by_id): (JSC::JIT::emitSlow_op_put_by_id): (JSC::JIT::compileGetByIdHotPath): (JSC::JIT::compileGetByIdSlowCase): (JSC::JIT::compilePutDirectOffset): (JSC::JIT::compileGetDirectOffset): (JSC::JIT::testPrototype): (JSC::JIT::privateCompilePutByIdTransition): (JSC::JIT::patchGetByIdSelf): (JSC::JIT::patchMethodCallProto): (JSC::JIT::patchPutByIdReplace): (JSC::JIT::privateCompilePatchGetArrayLength): (JSC::JIT::privateCompileGetByIdProto): (JSC::JIT::privateCompileGetByIdSelfList): (JSC::JIT::privateCompileGetByIdProtoList): (JSC::JIT::privateCompileGetByIdChainList): (JSC::JIT::privateCompileGetByIdChain): (JSC::JIT::emit_op_get_by_pname): (JSC::JIT::emitSlow_op_get_by_pname):
12:30 Changeset [55026] by wsiegrist@apple.com

2010-02-19 William Siegrist <wsiegrist@apple.com>

Add GTK Linux 64-bit Release bot. Rename GTK Linux Release to GTK Linux 32-bit Release.

11:47 Changeset [55025] by eric@webkit.org

2010-02-19 Jesus Sanchez-Palencia <jesus.palencia@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Need a final integration between QtLauncher and QGVLauncher
https://bugs.webkit.org/show_bug.cgi?id=35161

Add animated flip support to QtLauncher when running on QGraphicsView mode.

  • QtLauncher/main.cpp: (LauncherWindow::initializeView): (LauncherWindow::setupUI):
  • QtLauncher/webview.cpp: (WebViewGraphicsBased::WebViewGraphicsBased): (WebViewGraphicsBased::animatedFlip): (WebViewGraphicsBased::animatedYFlip):
  • QtLauncher/webview.h: (WebViewGraphicsBased::setYRotation): (WebViewGraphicsBased::yRotation):
11:30 Changeset [55024] by eric@webkit.org

2010-02-19 Patrick Gansterer <paroga@paroga.com>

Reviewed by Laszlo Gombos.

Added additional parameter to create_rvct_stubs
for setting the regularexpression prefix.
Renamed it because it now works for other platforms too.
https://bugs.webkit.org/show_bug.cgi?id=34951

  • DerivedSources.pro:
  • create_jit_stubs: Copied from JavaScriptCore/create_rvct_stubs.
  • create_rvct_stubs: Removed.
11:22 Changeset [55023] by japhet@chromium.org

2010-02-19 Nate Chapin <japhet@chromium.org>

Reviewed by Dimitri Glazkov.

[V8] Fix Worker crash regression in r54972

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

  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::instantiateV8Object): Properly unwrap global objects when inside a WorkerContext.
11:09 Changeset [55022] by steveblock@google.com

Not reviewed. Reverts r55020 which causes crashes in Chromium LayoutTests

10:59 Changeset [55021] by ap@apple.com

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=35165
plugins/set-status.html fails on Windows bot

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::status):
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView status:]): Match Windows port behavior (and also Firefox one, in a way) - pass null status messages as empty ones to chrome.
09:13 Changeset [55020] by eric@webkit.org

2010-02-19 Steve Block <steveblock@google.com>

Reviewed by David Levin.

Sets default values of V8 runtime enabler flags to match behavior with JSC
https://bugs.webkit.org/show_bug.cgi?id=35095

No new tests, modifies a Chromium feature only.

  • bindings/generic/RuntimeEnabledFeatures.cpp: Modified. Sets appcache and geolocation flag defaults to 'on'
  • storage/Database.cpp: Modified. Sets database flag default to 'on'.
09:13 Changeset [55019] by abecsi@webkit.org

[Qt] Implement textZoomIn() and textZoomOut() in DRT's EventSender, add results
for passing new tests and unskip the passing ones from the Skipped list.
https://bugs.webkit.org/show_bug.cgi?id=35159

Reviewed by Kenneth Rohde Christiansen.

WebKitTools:

  • DumpRenderTree/qt/EventSenderQt.cpp:

(EventSender::textZoomIn):
(EventSender::textZoomOut):

  • DumpRenderTree/qt/EventSenderQt.h:

LayoutTests:

  • platform/qt/Skipped: unskip passing tests
  • platform/qt/svg/custom/text-zoom-expected.txt: Added.
  • platform/qt/svg/zoom: Added.
  • platform/qt/svg/zoom/page: Added.
  • platform/qt/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.txt: Added.
  • platform/qt/svg/zoom/page/absolute-sized-document-scrollbars-expected.txt: Added.
  • platform/qt/svg/zoom/page/relative-sized-document-scrollbars-expected.txt: Added.
  • platform/qt/svg/zoom/page/zoom-foreignObject-expected.txt: Added.
  • platform/qt/svg/zoom/page/zoom-hixie-mixed-008-expected.txt: Added.
  • platform/qt/svg/zoom/page/zoom-hixie-mixed-009-expected.txt: Added.
  • platform/qt/svg/zoom/page/zoom-hixie-rendering-model-004-expected.txt: Added.
  • platform/qt/svg/zoom/page/zoom-svg-float-border-padding-expected.txt: Added.
  • platform/qt/svg/zoom/text: Added.
  • platform/qt/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.txt: Added.
  • platform/qt/svg/zoom/text/absolute-sized-document-scrollbars-expected.txt: Added.
  • platform/qt/svg/zoom/text/relative-sized-document-scrollbars-expected.txt: Added.
  • platform/qt/svg/zoom/text/zoom-foreignObject-expected.txt: Added.
  • platform/qt/svg/zoom/text/zoom-hixie-mixed-008-expected.txt: Added.
  • platform/qt/svg/zoom/text/zoom-hixie-mixed-009-expected.txt: Added.
  • platform/qt/svg/zoom/text/zoom-hixie-rendering-model-004-expected.txt: Added.
  • platform/qt/svg/zoom/text/zoom-svg-float-border-padding-expected.txt: Added.
08:57 Changeset [55018] by eric@webkit.org

2010-02-19 Marcus Bulach <bulach@chromium.org>

Reviewed by Jeremy Orlow.

Fixes GeolocationServiceBridgeImpl::stopUpdating (it can be called multiple times).

  • src/GeolocationServiceBridgeChromium.cpp: (WebKit::GeolocationServiceBridgeImpl::stopUpdating):
08:50 Changeset [55017] by philn@webkit.org

2010-02-19 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Gustavo Noronha Silva.

[GTK] fast/forms/restore-selection-after-layout.html fails on 32bits Debug build
https://bugs.webkit.org/show_bug.cgi?id=35158

  • platform/gtk/Skipped: Skip failing test
07:16 Changeset [55016] by eric@webkit.org

2010-02-19 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

WebInspector: Elements panel: Correctly show empty elements' ending tags
for XML and HTML documents.
https://bugs.webkit.org/show_bug.cgi?id=26315

  • inspector/console-dirxml-expected.txt:
  • inspector/console-format-collections-expected.txt:
  • inspector/console-format-expected.txt:
  • inspector/elements-panel-limited-children-expected.txt:
  • inspector/elements-panel-structure-expected.txt: Re-baselined due to closing tags and ellipses between opening and closing tags
  • inspector/elements-panel-xhtml-structure-expected.txt: Added.
  • inspector/elements-panel-xhtml-structure.xhtml: Added.

2010-02-19 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

WebInspector: Elements panel: Correctly show empty elements' ending tags
for XML and HTML documents.
https://bugs.webkit.org/show_bug.cgi?id=26315

Test: inspector/elements-panel-xhtml-structure.xhtml

  • inspector/InspectorController.cpp: (WebCore::InspectorController::populateScriptObjects):
  • inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeOutline.prototype.set rootDOMNode): (WebInspector.ElementsTreeOutline.prototype.get isXMLMimeType): (WebInspector.ElementsTreeOutline.prototype._contextMenuEventFired): (WebInspector.ElementsTreeElement.prototype.onexpand): (WebInspector.ElementsTreeElement.prototype.oncollapse): (WebInspector.ElementsTreeElement.prototype.updateTitle.callback): (WebInspector.ElementsTreeElement.prototype.updateTitle): (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo):
06:52 Changeset [55015] by abecsi@webkit.org

Unreviewed Changelog typo fix.

r5993 should be r54993.

06:45 Changeset [55014] by abecsi@webkit.org

Rubber-stamped by Kenneth Rohde Christiansen.

[Qt] plugins/set-status.html introduced in r5993 fails skipping it until fix.
https://bugs.webkit.org/show_bug.cgi?id=35144

  • platform/qt/Skipped:
06:34 Changeset [55013] by eric@webkit.org

2010-02-19 Laszlo Gombos <laszlo.1.gombos@nokia.com>

Reviewed by Eric Seidel.

[Qt] Clean-up the handling of HTML5 persistent data for LayoutTests
https://bugs.webkit.org/show_bug.cgi?id=35004

DumpRenderTreeQt.cpp calls QWebSettings::enablePersistentStorage which sets up
and enables all HTML5 persistent data. All the other calls for setting the
persistent path or enabling the persistent feature are redundant.

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::WebPage::WebPage): No need to enable AppCache again.
  • DumpRenderTree/qt/main.cpp: (main): No need to setup and enable HTML5 LocalStorage again.
05:13 Changeset [55012] by eric@webkit.org

2010-02-19 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Send the context menu event from contextClick() of EventSender
and do not show context menu in DRT.

LayoutTests:

fast/events/contextmenu-scrolled-page-with-frame.html

[Qt] DRT: Send context menu event from EventSender
https://bugs.webkit.org/show_bug.cgi?id=35131

  • platform/qt/Skipped:

2010-02-19 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Kenneth Rohde Christiansen.

Send the context menu event from contextClick() of EventSender
and do not show context menu in DRT.

LayoutTests:

fast/events/contextmenu-scrolled-page-with-frame.html

[Qt] DRT: Send context menu event from EventSender
https://bugs.webkit.org/show_bug.cgi?id=35131

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::DumpRenderTree):
  • DumpRenderTree/qt/EventSenderQt.cpp: (EventSender::contextClick):
05:01 Changeset [55011] by pfeldman@chromium.org

2010-02-19 Pavel Feldman <pfeldman@chromium.org>

Not reviewed. Chromium build fix: reverting r54997 and r54998.
This is a two-sided change that should be coordinated.

  • bindings/v8/custom/V8LocationCustom.cpp: (WebCore::V8Location::protocolAccessorSetter):
  • platform/KURLGoogle.cpp: (WebCore::KURL::setProtocol): (WebCore::KURL::isHierarchical):
04:41 Changeset [55010] by ossy@webkit.org

[Qt] editing tests fails after r54980
https://bugs.webkit.org/show_bug.cgi?id=35145

Reviewed by Kenneth Rohde Christiansen.

After r54980 two tests fail, skip them until fix.
Another two tests pass, they have same results as Win port.

  • platform/qt/Skipped:
    • editing/selection/extend-selection.html skipped.
    • editing/selection/extend-after-mouse-selection.html skipped.
  • platform/qt/editing/selection/click-in-margins-inside-editable-div-expected.txt: Copied from LayoutTests/platform/win/editing/selection/click-in-margins-inside-editable-div-expected.txt.
  • platform/qt/editing/selection/click-in-padding-with-multiple-line-boxes-expected.txt: Copied from LayoutTests/platform/win/editing/selection/click-in-padding-with-multiple-line-boxes-expected.txt.
04:40 Changeset [55009] by pfeldman@chromium.org

2010-02-19 Pavel Feldman <pfeldman@chromium.org>

Not reviewed. Chromium tests fix: update devtools code to match new
web inspector object proxy format.

  • src/js/DebuggerAgent.js: (devtools.DebuggerAgent.prototype.formatCallFrame_): (devtools.DebuggerAgent.formatObjectProxy_):
04:06 Changeset [55008] by philn@webkit.org

2010-02-19 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Xan Lopez.

[GTK] plugins/set-status.html fails
https://bugs.webkit.org/show_bug.cgi?id=35144

  • platform/gtk/Skipped: Skip failing test.
01:18 Changeset [55007] by philn@webkit.org

2010-02-19 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Xan Lopez.

Adding a GTK layout test result for a new test
added in r54980.

  • platform/gtk/editing/selection/extend-after-mouse-selection-expected.txt: Added.
01:18 Changeset [55006] by philn@webkit.org

2010-02-19 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Xan Lopez.

Adding a GTK layout test result for a new test
added in r54982.

  • platform/gtk/fast/repaint/selection-gap-overflow-scroll-2-expected.txt: Added.
00:30 Changeset [55005] by philn@webkit.org

2010-02-17 Philippe Normand <pnormand@igalia.com>

Reviewed by Eric Seidel.

[GTK] RTP/RTSP streams playback support
https://bugs.webkit.org/show_bug.cgi?id=33662

Added live pipelines support in updateStates().

  • manual-tests/video-rtsp.html: Added.
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: (WebCore::MediaPlayerPrivate::seek): (WebCore::MediaPlayerPrivate::updateStates):

02/18/10:

23:49 Changeset [55004] by mjs@apple.com

mark-radar-fixed
<rdar://problem/7540469> Disable ruby support for the branch

JavaScriptCore:

  • Configurations/FeatureDefines.xcconfig:

WebCore:

  • Configurations/FeatureDefines.xcconfig:

WebKit/mac:

  • Configurations/FeatureDefines.xcconfig:

WebKitLibraries:

  • win/tools/vsprops/FeatureDefines.vsprops:

WebKitTools:

  • Scripts/build-webkit:
23:32 Changeset [55003] by ossy@webkit.org

Rubber-stamped by Simon Hausmann.

[Qt] Update platform specific expected files after r54991.

  • platform/qt/svg/css/circle-in-mask-with-shadow-expected.txt: updated.
  • platform/qt/svg/css/mask-with-shadow-expected.txt: updated.
  • platform/qt/svg/custom/empty-mask-expected.txt: updated.
  • platform/qt/svg/custom/mask-with-default-value-expected.txt: updated.
  • platform/qt/svg/custom/transformedMaskFails-expected.txt: updated.
22:23 Changeset [55002] by oliver@apple.com

2010-02-18 Oliver Hunt <oliver@apple.com>

Reviewed by Gavin Barraclough.

Improve interpreter getter performance
https://bugs.webkit.org/show_bug.cgi?id=35138

Improve the performance of getter dispatch by making it possible
for the interpreter to cache the GetterSetter object lookup.

To do this we simply need to make PropertySlot aware of getters
as a potentially cacheable property, and record the base and this
objects for a getter access. This allows us to use more-or-less
identical code to that used by the normal get_by_id caching, with
the dispatch being the only actual difference.

I'm holding off of implementing this in the JIT until I do some
cleanup to try and making coding in the JIT not be as horrible
as it is currently.

  • bytecode/CodeBlock.cpp: (JSC::CodeBlock::dump): (JSC::CodeBlock::derefStructures): (JSC::CodeBlock::refStructures):
  • bytecode/Opcode.h:
  • interpreter/Interpreter.cpp: (JSC::Interpreter::resolveGlobal): (JSC::Interpreter::tryCacheGetByID): (JSC::Interpreter::privateExecute):
  • jit/JIT.cpp: (JSC::JIT::privateCompileMainPass):
  • jit/JITStubs.cpp: (JSC::JITThunks::tryCacheGetByID): (JSC::DEFINE_STUB_FUNCTION):
  • runtime/JSObject.cpp: (JSC::JSObject::fillGetterPropertySlot):
  • runtime/PropertySlot.cpp: (JSC::PropertySlot::functionGetter):
  • runtime/PropertySlot.h: (JSC::PropertySlot::isGetter): (JSC::PropertySlot::isCacheable): (JSC::PropertySlot::isCacheableValue): (JSC::PropertySlot::setValueSlot): (JSC::PropertySlot::setGetterSlot): (JSC::PropertySlot::setCacheableGetterSlot): (JSC::PropertySlot::clearOffset): (JSC::PropertySlot::thisValue):
21:17 Changeset [55001] by eric@webkit.org

2010-02-18 Chris Jerdonek <cjerdonek@webkit.org>

Reviewed by Shinichiro Hamaji.

Moved parsing-related code to a separate file. Also increased
the unit test coverage in some affected areas.

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

This revision contains no new functionality.

  • Scripts/check-webkit-style:
    • Adjusted to call check_webkit_style_parser().
  • Scripts/webkitpy/style/checker.py:
    • Added check_webkit_style_parser() to pass checker.py configuration settings to optparser.py.
    • Moved _create_usage() and the CommandOptionValues, DefaultCommandOptionValues, ArgumentPrinter, and ArgumentParser classes to optparser.py.
  • Scripts/webkitpy/style/checker_unittest.py:
    • Moved the ProcessorOptionsTest, ArgumentPrinterTest, and ArgumentParserTest classes to optparser.py.
    • Added the CheckWebKitStyleFunctionTest class to check the check_webkit_style_configuration() and check_webkit_style_parser() code paths.
  • Scripts/webkitpy/style/optparser.py: Added.
    • From checker.py, added _create_usage() and the CommandOptionValues, DefaultCommandOptionValues, ArgumentPrinter, and ArgumentParser classes.
    • In the ArgumentParser constructor--
      • Added all_categories as a required parameter.
      • Removed the default value from the default_options parameter.
  • Scripts/webkitpy/style/optparser_unittest.py: Added.
    • From checker_unittest.py, added the ProcessorOptionsTest, ArgumentPrinterTest, and ArgumentParserTest classes.
    • Added the CreateUsageTest class to test _create_usage().
  • Scripts/webkitpy/style/unittests.py:
    • Added optparser_unittest import.
21:14 Changeset [55000] by mjs@apple.com
  • Add change I missed in the last commit.


  • win/tools/vsprops/FeatureDefines.vsprops:
21:00 Changeset [54999] by eric@webkit.org

2010-02-18 Yaar Schnitman <yaar@chromium.org>

Reviewed by Darin Adler.

Normalize custom ctors for Image, Option, Audio
https://bugs.webkit.org/show_bug.cgi?id=34782

  • fast/js/custom-constructors-expected.txt: Added.
  • fast/js/custom-constructors.html: Added.
  • fast/js/script-tests/custom-constructors.js: Added.

2010-02-18 Yaar Schnitman <yaar@chromium.org>

Reviewed by Darin Adler.

Normalize custom ctors for Image, Option, Audio
https://bugs.webkit.org/show_bug.cgi?id=34782

Test: fast/js/custom-constructors.html

  • bindings/js/JSAudioConstructor.cpp: (WebCore::JSAudioConstructor::JSAudioConstructor): (WebCore::constructAudio):
  • bindings/js/JSImageConstructor.cpp: (WebCore::constructImage):
  • bindings/js/JSOptionConstructor.cpp: (WebCore::constructHTMLOptionElement):
  • bindings/v8/custom/V8HTMLAudioElementConstructor.cpp: (WebCore::v8HTMLAudioElementConstructorCallback):
  • bindings/v8/custom/V8HTMLImageElementConstructor.cpp: (WebCore::v8HTMLImageElementConstructorCallback):
  • bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: (WebCore::v8HTMLOptionElementConstructorCallback):
  • html/HTMLAudioElement.cpp: (WebCore::HTMLAudioElement::HTMLAudioElement): (WebCore::HTMLAudioElement::createForJSConstructor):
  • html/HTMLAudioElement.h:
  • html/HTMLImageElement.cpp: (WebCore::HTMLImageElement::createForJSConstructor): (WebCore::HTMLImageElement::mapToEntry): (WebCore::HTMLImageElement::createRenderer): (WebCore::HTMLImageElement::attach): (WebCore::HTMLImageElement::width): (WebCore::HTMLImageElement::height): (WebCore::HTMLImageElement::naturalHeight):
  • html/HTMLImageElement.h:
  • html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::HTMLOptionElement): (WebCore::HTMLOptionElement::createForJSConstructor): (WebCore::HTMLOptionElement::ownerSelectElement): (WebCore::HTMLOptionElement::nonRendererRenderStyle): (WebCore::HTMLOptionElement::disabled): (WebCore::HTMLOptionElement::insertedIntoTree):
  • html/HTMLOptionElement.h:
20:29 Changeset [54998] by tkent@chromium.org

2010-02-12 Kent Tamura <tkent@chromium.org>

Unreviewed. Fix Chromium build.

  • DEPS: Bump Google URL revision to 123.
18:06 Changeset [54997] by brettw@chromium.org

2010-02-12 Brett Wilson <brettw@chromium.org>

Reviewed by Adam Barth.

Update the Google-URL version of KURL and the V8 bindings to the new
behavior of KURL.IsStandard.

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

This is covered by fast/dom/Window/invalid-protocol.html

  • bindings/v8/custom/V8LocationCustom.cpp: (WebCore::V8Location::protocolAccessorSetter):
  • platform/KURLGoogle.cpp: (WebCore::KURL::setProtocol): (WebCore::KURL::isHierarchical):
17:21 Changeset [54996] by ap@apple.com

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=35134
<rdar://problem/7246280> Crash when a plugin calls NPN_SetStatus(0)

  • DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.cpp: (testSetStatus): (pluginInvoke): Added a setStatus() method.
16:47 Changeset [54995] by simon.fraser@apple.com

2010-02-18 Simon Fraser <simon.fraser@apple.com>

No Review.

Remove a couple of extraneous spaces that got added to the project file
by hand-ending.

  • WebCore.xcodeproj/project.pbxproj:
16:44 Changeset [54994] by simon.fraser@apple.com

2010-02-18 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein.

<rdar://problem/7535894> Page contents missing from snapshot on Newsweek.com article

Add logic to determine when painting via the software rendering path will give an equivalent
result to the accelerated compositing presentation. This tests for the presence of 3D transforms
via the existing RenderLayerCompositor::has3DContent() method.

  • WebCore.base.exp: Export FrameView's isSoftwareRenderable(), paintBehavior() and setPaintBehavior().
  • page/FrameView.h:
  • page/FrameView.cpp: (WebCore::FrameView::isSoftwareRenderable): New method. (WebCore::FrameView::paintBehavior): Make this non-inline so that we can reliably export it.
16:37 Changeset [54993] by ap@apple.com

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=35134
<rdar://problem/7246280> Crash when a plugin calls NPN_SetStatus(0)

Test: plugins/set-status.html

  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::status): (WebKit::NetscapePluginInstanceProxy::loadURL): Added null checks for CFStringCreateWithCString arguments.
16:19 Changeset [54992] by mitz@apple.com

<rdar://problem/7658811> Multiple style recalcs due to getComputedStyle() on “display: none;” element
when there are pending style sheets

Reviewed by John Sullivan.

WebCore:

Test: fast/css/getComputedStyle/pending-stylesheet.html

When querying a property of a computed style declaration for a non-rendered element,
CSSStyleSelector::styleForElement() was called, and if there were pending style sheet, it
would behave as if the lack of renderer is due to FOUC suppression, and set a flag on
the document causing it to recalculate style. On the next computed style property access,
style would be recalculated for the document, but then the flag would get set again if the
element did not have a renderer.

  • dom/Document.cpp:

(WebCore::Document::styleForElementIgnoringPendingStylesheets): Added. Temporarily sets
m_ignorePendingStylesheets around the call to CSSStyleSelector::styleForElement().

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

(WebCore::Element::computedStyle): Use Document::styleForElementIgnoringPendingStylesheets().

LayoutTests:

  • fast/css/getComputedStyle/pending-stylesheet-expected.txt: Added.
  • fast/css/getComputedStyle/pending-stylesheet.html: Added.
15:12 Changeset [54991] by krit@webkit.org

2010-02-18 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Move SVGResources to Renderers, starting with Masker
https://bugs.webkit.org/show_bug.cgi?id=35020

We have rendering specific code in WebCore/svg/graphics. The goal is to move
this code into suitable Renderers. This helps us to clean up the code and makes
maintenance easier. It also makes it possible to remove rendering specific code
from SVG*Elements into this renderers. So the Renderer contains everything that
is needed to use the resource.
RenderSVGResource will be the base class for all new resource render classes like
RenderSVGResourceMasker, RenderSVGResourceClipper and the other resources.

This patch starts moving SVGResourceMasker to RenderSVGResourceMasker.
Another benefit is the much more useful result in DRT on using masker.

  • Android.mk:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::toRenderSVGResource): Conversion to RenderSVGResource base class.
  • rendering/RenderObject.h: (WebCore::RenderObject::isSVGResource): Check if renderer is a resource.
  • rendering/RenderPath.cpp:
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::destroy): Renderer gets destroyed, unregister it from it's resources.
  • rendering/RenderSVGImage.h: Some code clean up according to the webkit style. (WebCore::RenderSVGImage::toSVGRenderBase): (WebCore::RenderSVGImage::renderName): (WebCore::RenderSVGImage::isSVGImage): (WebCore::RenderSVGImage::localToParentTransform): (WebCore::RenderSVGImage::strokeBoundingBox): (WebCore::RenderSVGImage::requiresLayer): (WebCore::RenderSVGImage::localTransform):
  • rendering/RenderSVGInlineText.h: (WebCore::RenderSVGInlineText::objectBoundingBox): Needed for SVGRenderTreeAsText
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::destroy): Renderer gets destroyed, unregister it from it's resources.
  • rendering/RenderSVGModelObject.h:
  • rendering/RenderSVGResource.h: Added. (WebCore::): Base class for all Resource renderers like masker, clipper and others. (WebCore::RenderSVGResource::RenderSVGResource): (WebCore::RenderSVGResource::cast): (WebCore::RenderSVGResource::toRenderSVGResource): (WebCore::RenderSVGResource::isSVGResource): (WebCore::RenderSVGResource::drawsContents): (WebCore::getRenderSVGResourceById):
  • rendering/RenderSVGResourceMasker.cpp: Added. (WebCore::RenderSVGResourceMasker::RenderSVGResourceMasker): (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker): (WebCore::RenderSVGResourceMasker::invalidateClients): Status of masker changed, remove all clients. (WebCore::RenderSVGResourceMasker::invalidateClient): Status of an object changed, remove pending client. (WebCore::RenderSVGResourceMasker::applyResource): Apply masker to object. (WebCore::RenderSVGResourceMasker::resourceBoundingBox): boundingBox of the resource, depending on the object. (WebCore::RenderSVGResourceMasker::createMaskImage): Creates the mask image, the context gets clipped with.
  • rendering/RenderSVGResourceMasker.h: Added. (WebCore::MaskerData::MaskerData): (WebCore::RenderSVGResourceMasker::renderName): (WebCore::RenderSVGResourceMasker::maskUnits): Unit of mask for DRT. (WebCore::RenderSVGResourceMasker::maskContentUnits): Unit of childs from mask for DRT. (WebCore::RenderSVGResourceMasker::resourceType):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::destroy): Renderer gets destroyed, unregister it from it's resources.
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::destroy): dito.
  • rendering/RenderSVGText.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::write):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::prepareToRenderSVGContent): (WebCore::SVGRenderBase::maskerBoundingBoxForRenderer): (WebCore::SVGRenderBase::deregisterFromResources): Unregister object from all it's resources after status changed.
  • rendering/SVGRenderSupport.h: (WebCore::SVGRenderBase::toSVGRenderBase): (WebCore::SVGRenderBase::strokeBoundingBox): (WebCore::SVGRenderBase::markerBoundingBox):
  • rendering/SVGRenderTreeAsText.cpp: Update TreeAsText to dump maskers correctly. (WebCore::operator<<): (WebCore::writeSVGResource): (WebCore::writeSVGContainer): (WebCore::writeSVGText): (WebCore::writeSVGInlineText): (WebCore::writeSVGImage): (WebCore::write): (WebCore::writeResourcesToObject):
  • rendering/SVGRenderTreeAsText.h:
  • svg/SVGMaskElement.cpp: Update Masker to use the new renderer. (WebCore::SVGMaskElement::svgAttributeChanged): (WebCore::SVGMaskElement::childrenChanged): (WebCore::SVGMaskElement::maskBoundingBox): (WebCore::SVGMaskElement::createRenderer):
  • svg/SVGMaskElement.h:
  • svg/SVGStyledElement.cpp: We need to tell the renderer to unregister object, after the status changed. (WebCore::SVGStyledElement::invalidateResources): (WebCore::SVGStyledElement::invalidateResourcesInAncestorChain):
  • svg/SVGUnitTypes.h: Conversion of integer to SVGUnitType. (WebCore::toUnitType):
  • svg/graphics/SVGResource.h: (WebCore::): (WebCore::SVGResource::isMarker):
  • svg/graphics/SVGResourceMasker.cpp: Removed.
  • svg/graphics/SVGResourceMasker.h: Removed.

2010-02-18 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Move SVGResources to Renderers, starting with Masker
https://bugs.webkit.org/show_bug.cgi?id=35020

With the move from SVGResourceMasker to RenderSVGResourceMasker, I changed
the way DRT dumps resources. DRT is now able to dump multi-access
of resources.
Also the size of a Mask resource (depending of the object) and the access of
the resource (togeter with the resource name) is pointed out as an insertion
under the object.

  • platform/mac/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt:
  • platform/mac/svg/batik/masking/maskRegions-expected.txt:
  • platform/mac/svg/css/circle-in-mask-with-shadow-expected.txt:
  • platform/mac/svg/css/mask-with-shadow-expected.txt:
  • platform/mac/svg/custom/empty-mask-expected.txt:
  • platform/mac/svg/custom/grayscale-gradient-mask-expected.txt:
  • platform/mac/svg/custom/js-late-mask-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-mask-creation-expected.txt:
  • platform/mac/svg/custom/mask-changes-expected.txt:
  • platform/mac/svg/custom/mask-child-changes-expected.txt:
  • platform/mac/svg/custom/mask-excessive-malloc-expected.txt:
  • platform/mac/svg/custom/mask-inside-defs-expected.txt:
  • platform/mac/svg/custom/mask-invalidation-expected.txt:
  • platform/mac/svg/custom/mask-on-multiple-objects-expected.txt:
  • platform/mac/svg/custom/mask-with-all-units-expected.txt:
  • platform/mac/svg/custom/mask-with-default-value-expected.txt:
  • platform/mac/svg/custom/resource-invalidate-on-target-update-expected.txt:
  • platform/mac/svg/custom/visibility-override-mask-expected.txt:
  • platform/mac/svg/filters/filter-clip-expected.txt:
  • svg/custom/transformedMaskFails-expected.txt:
14:51 Changeset [54990] by dumi@chromium.org

Allow creating/dropping virtual tables when the module is FTS2.

Reviewed by Dimitri Glazkov.

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

  • storage/DatabaseAuthorizer.cpp:

(WebCore::DatabaseAuthorizer::createVTable):
(WebCore::DatabaseAuthorizer::dropVTable):

14:40 Changeset [54989] by pkasting@chromium.org

Not reviewed, Chromium build fix.

r54963 had a typo in the WebCore.gypi change.
https://bugs.webkit.org/show_bug.cgi?id=35003

  • WebCore.gypi:
14:15 Changeset [54988] by ggaren@apple.com

Fixed a portion of:
<rdar://problem/7165917> | https://bugs.webkit.org/show_bug.cgi?id=28676
Safari 4 does not release memory back to the operating system fast enough (28676)

Reviewed by Oliver Hunt.

This patch fixes a surprisingly common edge case in which the page heap
would have only one free span, but that span would be larger than the
minimum free size, so we would decide not to free it, even though it
could be as large as 100MB or more!

SunSpider reports no change on Mac or Windows.

  • wtf/FastMalloc.cpp:

(WTF::TCMalloc_PageHeap::scavenge): Call shouldContinueScavenging() instead
of doing the math ourselves. Don't keep a local value for pagesDecommitted
because that lets free_committed_pages_ be wrong temporarily. Instead,
update free_committed_pages_ as we go. ASSERT that we aren't releasing
a span that has already been released, because we think this is impossible.
Finally, don't be afraid to release all free memory in the page heap when
scavenging. We only scavenge after 5 seconds of the application's working
set not growing, and we keep both thread caches and a central cache on
top of the page heap, so the extra free pages in the page heap were just
overkill.

14:08 Changeset [54987] by eric@webkit.org

2010-02-18 Vangelis Kokkevis <vangelis@chromium.org>

Reviewed by Simon Fraser.

Changing forward declaration of TimingFunction in GraphicsLayer.h from
class to struct to match its actual definition in TimingFunction.h

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

  • platform/graphics/GraphicsLayer.h:

Change forward declaration from: class TimingFunction to:
struct TimingFunction

13:50 Changeset [54986] by eric@webkit.org

2010-02-18 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Minor improvement to hybrid QPixmap
https://bugs.webkit.org/show_bug.cgi?id=34507
Instead of having toHTMLImageElement which creates a new element,
assignToHTMLImageElement would set an existing HTML <img/> element to
contain the native QPixmap/QImge.
Also made some style fixes.

Additions to existing tests: see WebKit/qt/tests

  • bridge/qt/qt_pixmapruntime.cpp: (JSC::Bindings::QtPixmapWidthField::valueFromInstance): style (JSC::Bindings::QtPixmapHeightField::valueFromInstance): style (JSC::Bindings::QtPixmapAssignToElementMethod::name): assignTo (JSC::Bindings::QtPixmapAssignToElementMethod::invoke): new function (JSC::Bindings::QtPixmapAssignToElementMethod::numParameters): 1 (JSC::Bindings::QtPixmapToDataUrlMethod::invoke): style (JSC::Bindings::QtPixmapToStringMethod::invoke): style (JSC::Bindings::QtPixmapInstance::invokeMethod): style (JSC::Bindings::QtPixmapClass::methodsNamed): new func, removed old (JSC::Bindings::QtPixmapInstance::getPropertyNames): ditto (JSC::Bindings::QtPixmapInstance::defaultValue): style (JSC::Bindings::QtPixmapInstance::valueOf): style (JSC::Bindings::QtPixmapInstance::toPixmap): style (JSC::Bindings::QtPixmapInstance::variantFromObject): style

2010-02-18 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] Minor improvement to hybrid QPixmap
https://bugs.webkit.org/show_bug.cgi?id=34507

  • tests/hybridPixmap/test.html: use assignToHTMLImageElement on an existing element instead of toHTMLImageElement which creates a new one
13:15 Changeset [54985] by kov@webkit.org

2010-02-18 Gustavo Noronha Silva <gns@gnome.org>

[Qt][GTK] fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html fails (DRT sideeffect)
https://bugs.webkit.org/show_bug.cgi?id=35086

Skip both new tests that fail. It may be a DRT problem, and the
file path that is reported in the error message also seems to
require tweaking.

  • platform/gtk/Skipped:
13:07 Changeset [54984] by pkasting@chromium.org

Not reviewed, bustage fix.

An extraneous line in r54839 broke GIF animation.

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::read):

13:03 Changeset [54983] by kov@webkit.org

2010-02-18 Gustavo Noronha Silva <gns@gnome.org>

[GTK] Fails fast/multicol/client-rects.html
https://bugs.webkit.org/show_bug.cgi?id=35127

Skip test that fails in GTK+ - trying to get bot green again.

  • platform/gtk/Skipped:
12:55 Changeset [54982] by mitz@apple.com

<rdar://problem/7650652> REGRESSION: Selection painting issue in bug review textbox
https://bugs.webkit.org/show_bug.cgi?id=34946

Reviewed by Simon Fraser.

WebCore:

Test: fast/repaint/selection-gap-overflow-scroll-2.html

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::paintSelection): localToContainerQuad() adjusts for
overflow scroll, but RenderLayer::addBlockSelectionGapsBounds() takes
non-scrolled coordinates, so account for that.

LayoutTests:

  • fast/repaint/selection-gap-overflow-scroll-2.html: Copied from LayoutTests/fast/repaint/selection-gap-overflow-scroll.html.
  • platform/mac/fast/repaint/selection-gap-overflow-scroll-2-expected.checksum: Added.
  • platform/mac/fast/repaint/selection-gap-overflow-scroll-2-expected.png: Added.
  • platform/mac/fast/repaint/selection-gap-overflow-scroll-2-expected.txt: Added.
12:52 Changeset [54981] by dumi@chromium.org

WebCore: Change the V8 and JSC SQLStatementErrorCallback to interpret
'undefined' return values as 'true', as required by the spec.

Reviewed by Darin Adler.

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

  • bindings/js/JSCustomSQLStatementErrorCallback.cpp:

(WebCore::JSCustomSQLStatementErrorCallback::handleEvent):

  • bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:

(WebCore::V8CustomSQLStatementErrorCallback::handleEvent):

  • bindings/v8/custom/V8CustomVoidCallback.cpp:

(WebCore::invokeCallbackHelper):
(WebCore::invokeCallback):
(WebCore::invokeCallbackTreatUndefinedAsTrue):

  • bindings/v8/custom/V8CustomVoidCallback.h:

LayoutTests: 'undefined' return values from statement error callbacks are not
treated as 'true'. Fix the tests that did not use this
assumption.

Reviewed by NOBODY Darin Adler.

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

  • storage/database-lock-after-reload.html:
  • storage/private-browsing-readonly.html:
  • storage/statement-error-callback.html:
  • storage/statement-error-callback-expected.txt:
11:38 Changeset [54980] by ojan@chromium.org

2010-02-17 Ojan Vafai <ojan@chromium.org>

Reviewed by Adam Barth.

keyboard selection sometimes moves the wrong end of the selection for Win/Linux
https://bugs.webkit.org/show_bug.cgi?id=35066

The changes to js-test-selection-shared.js are just to make the selection editing tests
easier to debug in the future.

The mac results for extend-after-mouse-selection.html contain a "FAIL" line. This is
a case where WebKit doesn't match TextEdit.

  • editing/editing.js: (execMoveSelectionForwardByLineBoundaryCommand): (moveSelectionForwardByLineBoundaryCommand): (execExtendSelectionForwardByLineBoundaryCommand): (extendSelectionForwardByLineBoundaryCommand): (execExtendSelectionBackwardByLineBoundaryCommand): (extendSelectionBackwardByLineBoundaryCommand): (execMoveSelectionBackwardByLineBoundaryCommand): (moveSelectionBackwardByLineBoundaryCommand):
  • editing/selection/extend-after-mouse-selection.html: Added.
  • editing/selection/move-begin-end-expected.txt:
  • editing/selection/move-begin-end.html:
  • editing/selection/resources/js-test-selection-shared.js: (objectAsString): (assertSelectionAt):
  • platform/mac/editing/selection/click-in-margins-inside-editable-div-expected.txt:
  • platform/mac/editing/selection/click-in-padding-with-multiple-line-boxes-expected.txt:
  • platform/mac/editing/selection/extend-after-mouse-selection-expected.txt: Added.
  • platform/win/editing/selection/click-in-margins-inside-editable-div-expected.txt:
  • platform/win/editing/selection/click-in-padding-with-multiple-line-boxes-expected.txt:
  • platform/win/editing/selection/extend-after-mouse-selection-expected.txt: Added.
  • platform/win/editing/selection/extend-selection-expected.txt: Added.

2010-02-17 Ojan Vafai <ojan@chromium.org>

Reviewed by Adam Barth.

keyboard selection sometimes moves the wrong end of the selection for Win/Linux
https://bugs.webkit.org/show_bug.cgi?id=35066

On Windows/Linux keyboard based selections should always move the same
end of the seleciton. On Mac, lineboundary and documentboundary changes
move different ends of the selection depending on which direction your
extending.

Test: editing/selection/extend-after-mouse-selection.html

  • editing/SelectionController.cpp: (WebCore::SelectionController::positionForPlatform): (WebCore::SelectionController::startForPlatform): (WebCore::SelectionController::endForPlatform): (WebCore::SelectionController::modifyExtendingRight): (WebCore::SelectionController::modifyExtendingForward): (WebCore::SelectionController::modifyMovingForward): (WebCore::SelectionController::modifyExtendingBackward): (WebCore::SelectionController::modifyMovingBackward):
  • editing/SelectionController.h:
11:36 Changeset [54979] by timothy@apple.com

Add "with" to the list of keywords to syntax highlight.

http://webkit.org/b/35123

Reviewed by Pavel Feldman.

  • inspector/front-end/SourceJavaScriptTokenizer.js:

(WebInspector.SourceJavaScriptTokenizer): Add "width" to _keywords.

  • inspector/front-end/SourceJavaScriptTokenizer.re2js:

(WebInspector.SourceJavaScriptTokenizer): Ditto.

11:35 Changeset [54978] by pkasting@chromium.org

Rework PNG-in-ICO decoding to copy the decoded framebuffer into the ICO
decoder, making the logic less crazy and more like the other decoders.
https://bugs.webkit.org/show_bug.cgi?id=28751

Reviewed by Adam Barth.

  • platform/image-decoders/ImageDecoder.cpp:

(WebCore::RGBA32Buffer::operator=):

  • platform/image-decoders/ImageDecoder.h:

(WebCore::RGBA32Buffer::RGBA32Buffer):

  • platform/image-decoders/ico/ICOImageDecoder.cpp:

(WebCore::ICOImageDecoder::frameBufferAtIndex):
(WebCore::ICOImageDecoder::decodeAtIndex):

  • platform/image-decoders/ico/ICOImageDecoder.h:
  • platform/image-decoders/qt/RGBA32BufferQt.cpp:

(WebCore::RGBA32Buffer::operator=):

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

(WebCore::RGBA32Buffer::operator=):

11:19 CommitQueue edited by eric@webkit.org
(diff)
11:19 CommitQueue edited by eric@webkit.org
(diff)
11:14 CommitQueue edited by eric@webkit.org
(diff)
11:13 CommitQueue edited by eric@webkit.org
(diff)
11:11 CommitQueue edited by eric@webkit.org
(diff)
11:10 CommitQueue edited by eric@webkit.org
(diff)
11:08 Changeset [54977] by japhet@chromium.org

2010-02-18 Nate Chapin <japhet@chromium.org>

Unreviewed, build fix.

Provide good expected results for fast/dom/Window/window-event-override-no-crash.html.

11:05 Changeset [54976] by sfalken@apple.com

Windows build fix.

10:59 Changeset [54975] by kov@webkit.org

2010-02-18 Gustavo Noronha Silva <gns@gnome.org>

[GTK][Qt] Fails glyph reordering test fast/text/glyph-reordering.html
https://bugs.webkit.org/show_bug.cgi?id=34918

Unskipping that now passes, after r54912.

  • platform/gtk/Skipped:
10:53 Changeset [54974] by pfeldman@chromium.org

2010-02-18 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: multiple popovers on screen at the same time.

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

  • inspector/front-end/Popover.js: (WebInspector.Popover.prototype.show): (WebInspector.Popover.prototype.hide):
  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype._showPopup):
10:45 Changeset [54973] by pfeldman@chromium.org

2010-02-18 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: Expand Object.proto properly.

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

  • inspector/front-end/EventListenersSidebarPane.js:
  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor):
  • inspector/front-end/ObjectProxy.js: (WebInspector.ObjectProxy):
  • inspector/front-end/PropertiesSidebarPane.js: (WebInspector.PropertiesSidebarPane.prototype.update.callback):
  • inspector/front-end/inspector.js: (WebInspector.log.logMessage): (WebInspector.log):
10:40 Changeset [54972] by japhet@chromium.org

2010-02-18 Nate Chapin <japhet@chromium.org>

Reviewed by Adam Barth.

[V8] Merge the DOMWindow and WorkerContext object wrapping code paths,
and use a faster method of disambiguating between the types of contexts.

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

  • bindings/scripts/CodeGeneratorV8.pm: Remove logic determining whether we need to

handle the WorkerContext case.

  • bindings/v8/V8DOMWrapper.cpp: (WebCore::globalObjectPrototypeIsDOMWindow): (WebCore::V8DOMWrapper::instantiateV8Object): Merge instantiateV8Object paths.
  • bindings/v8/V8DOMWrapper.h:
10:25 Changeset [54971] by xan@webkit.org

2010-02-18 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Remove some duplication between PluginView and Widget methods, and
move the setSelfVisible calls to the parent class.

  • platform/gtk/WidgetGtk.cpp: (WebCore::Widget::show): (WebCore::Widget::hide):
  • plugins/gtk/PluginViewGtk.cpp: (WebCore::PluginView::setFocus): (WebCore::PluginView::show): (WebCore::PluginView::hide):
09:51 Changeset [54970] by simon.fraser@apple.com

2010-02-18 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler.

<rdar://problem/7655195> Switch Leopard back to using CGShading to avoid CGGradient leaks

Define USE_CG_SHADING on for Tiger and Leopard, and use it to toggle the methods
used for Core Graphics gradient drawing.

  • platform/graphics/Gradient.h:
  • platform/graphics/cg/GradientCG.cpp: (WebCore::Gradient::platformDestroy): (WebCore::Gradient::paint):
09:36 Changeset [54969] by pfeldman@chromium.org

2010-02-18 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: on-hover evaluation renders nodes and arrays as strings.

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

  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup):
09:32 Changeset [54968] by yurys@chromium.org

2010-02-18 Yury Semikhatsky <yurys@chromium.org>

Reviewed by Pavel Feldman.

Don't truncate long lines when evaluating expressions on a breakpoint.

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

  • src/js/DebuggerAgent.js:
09:31 Changeset [54967] by kov@webkit.org

2010-02-18 A S Alam <amanpreet.alam@gmail.com>

Punjabi translation.

  • pa.po: Added.
09:13 Changeset [54966] by beidson@apple.com

Particularly constructed WebFrames can try to access a null HistoryItem
<rdar://problem/7638892> and https://bugs.webkit.org/show_bug.cgi?id=35063

Reviewed by Sam Weinig.

WebCore:

Test: fast/loader/api-test-new-window-data-load-base-url.html

  • loader/HistoryController.cpp:

(WebCore::HistoryController::updateBackForwardListForFragmentScroll): We have a known case where a fragment scroll

might take place with a null m_currentItem. updateBackForwardListClippedAtTarget() will either move m_currentItem
to m_previousItem then create a new m_currentItem... or it will do nothing. So we either have both an m_currentItem
and m_previousItem, or we have neither. In the case where we have no m_previousItem, return early.

WebKitTools:

Add the specific ability to test this API pattern.

For now only on Mac, perhaps on the main Windows port later, probably not relevant for other ports.

  • DumpRenderTree/LayoutTestController.cpp:

(apiTestNewWindowDataLoadBaseURLCallback):
(LayoutTestController::staticFunctions):

  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm:

(-[APITestDelegate initWithCompletionCondition:]):
(-[APITestDelegate webView:didFailLoadWithError:forFrame:]):
(-[APITestDelegate webView:didFailProvisionalLoadWithError:forFrame:]):
(-[APITestDelegate webView:didFinishLoadForFrame:]):
(LayoutTestController::apiTestNewWindowDataLoadBaseURL): Create a WebView, do a loadData: in its

mainFrame, and synchronously wait for main load completion.

  • DumpRenderTree/win/LayoutTestControllerWin.cpp:

(LayoutTestController::apiTestNewWindowDataLoadBaseURL):

  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:

(LayoutTestController::apiTestNewWindowDataLoadBaseURL):

  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:

(LayoutTestController::apiTestNewWindowDataLoadBaseURL):

LayoutTests:

  • fast/loader/api-test-new-window-data-load-base-url-expected.txt: Added.
  • fast/loader/api-test-new-window-data-load-base-url.html: Added.
  • platform/gtk/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
09:08 Changeset [54965] by japhet@chromium.org

2010-02-18 Nate Chapin <japhet@chromium.org>

Reviewed by Eric Seidel.

Actually submitting test for https://bugs.webkit.org/show_bug.cgi?id=34899 this time.

  • fast/dom/Window/window-event-override-no-crash-expected.txt: Added.
  • fast/dom/Window/window-event-override-no-crash.html: Added.
09:04 Changeset [54964] by japhet@chromium.org

2010-02-18 Nate Chapin <japhet@chromium.org>

Reviewed by Eric Seidel.

[V8] Correctly handle the case where the event field on the
global object is a v8::Object, but not a DOM wrapper.

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

Test: fast/dom/Window/window-event-override-no-crash.html

  • bindings/v8/ScriptController.cpp: (WebCore::ScriptController::processingUserGesture):
  • bindings/v8/V8DOMWrapper.cpp: (WebCore::V8DOMWrapper::isValidDOMObject): (WebCore::V8DOMWrapper::isWrapperOfType):
  • bindings/v8/V8DOMWrapper.h:
08:56 Changeset [54963] by pfeldman@chromium.org

2010-02-18 Pavel Feldman <pfeldman@chromium.org>

Not reviewed, Qt build fix.

  • inspector/front-end/WebKit.qrc:
08:12 Changeset [54962] by pfeldman@chromium.org

2010-02-18 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: Implement evaluate-on-hover for scripts panel.

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


  • WebCore.gypi:
  • WebCore.vcproj/WebCore.vcproj:
  • inspector/front-end/Images/gearButtonGlyph.png: Added.
  • inspector/front-end/Images/popoverArrows.png: Added.
  • inspector/front-end/Images/popoverBackground.png: Added.
  • inspector/front-end/Images/thumbActiveHoriz.png: Added.
  • inspector/front-end/Images/thumbActiveVert.png: Added.
  • inspector/front-end/Images/thumbHoriz.png: Added.
  • inspector/front-end/Images/thumbHoverHoriz.png: Added.
  • inspector/front-end/Images/thumbHoverVert.png: Added.
  • inspector/front-end/Images/thumbVert.png: Added.
  • inspector/front-end/Images/trackHoriz.png: Added.
  • inspector/front-end/Images/trackVert.png: Added.
  • inspector/front-end/Popup.js: (WebInspector.Popup): (WebInspector.Popup.prototype.show): (WebInspector.Popup.prototype.hide): (WebInspector.Popup.prototype._positionElement):
  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype._createViewerIfNeeded): (WebInspector.SourceFrame.prototype._scroll): (WebInspector.SourceFrame.prototype._mouseDown): (WebInspector.SourceFrame.prototype._mouseUp): (WebInspector.SourceFrame.prototype._mouseMove): (WebInspector.SourceFrame.prototype._mouseOut): (WebInspector.SourceFrame.prototype._resetHoverTimer): (WebInspector.SourceFrame.prototype._hidePopup): (WebInspector.SourceFrame.prototype._mouseHover): (WebInspector.SourceFrame.prototype._showPopup.showTextPopup): (WebInspector.SourceFrame.prototype._showPopup.showObjectPopup): (WebInspector.SourceFrame.prototype._showPopup.evaluateCallback): (WebInspector.SourceFrame.prototype._showPopup): (WebInspector.HoverPropertiesSection): (WebInspector.HoverPropertiesSection.prototype.update):
  • inspector/front-end/TextEditorHighlighter.js: (WebInspector.TextEditorHighlighter): (WebInspector.TextEditorHighlighter.prototype._lex):
  • inspector/front-end/TextViewer.js: (WebInspector.TextViewer.prototype._paintLine):
  • inspector/front-end/WebKit.qrc:
  • inspector/front-end/inspector.css:
  • inspector/front-end/inspector.html:
  • inspector/front-end/inspectorSyntaxHighlight.css:
  • inspector/front-end/popover.css: Added.
08:03 Changeset [54961] by abecsi@webkit.org

Rubber-stamped by Kenneth Rohde Christiansen.

[Qt] Skip the following tests because of missing eventSender.textZoomIn():

svg/zoom/text/absolute-sized-document-no-scrollbars.svg
svg/zoom/text/absolute-sized-document-scrollbars.svg
svg/zoom/text/relative-sized-document-scrollbars.svg
svg/zoom/text/zoom-foreignObject.svg
svg/zoom/text/zoom-hixie-mixed-008.xml
svg/zoom/text/zoom-hixie-mixed-009.xml
svg/zoom/text/zoom-hixie-rendering-model-004.xhtml
svg/zoom/text/zoom-svg-float-border-padding.xml

  • platform/qt/Skipped:
07:55 UsingGitWithWebKit edited by vestbo@webkit.org
(diff)
07:54 UsingGitWithWebKit edited by vestbo@webkit.org
(diff)
07:51 Changeset [54960] by vestbo@webkit.org

Teach resolve-ChangeLogs to act as a merge-driver for Git

Reviewed by Eric Seidel.

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

To enable automatic merging of ChangeLog files, use the following command:

git config merge.changelog.driver "resolve-ChangeLogs --merge-driver %O %A %B"

The driver always works in "downstream" merge mode, meaning
it will always put the user's changelog entries on top.

  • Scripts/resolve-ChangeLogs:
  • .gitattributes: Add instruction to use merge-driver for ChangeLogs
06:27 Changeset [54959] by eric@webkit.org

2010-02-18 Diego Escalante Urrelo <descalante@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GTK] WebKitDownload documentation is incomplete
https://bugs.webkit.org/show_bug.cgi?id=35018

Concretely the error signal was undocumented. Also two relevant enums
were not included.

  • docs/webkitgtk-sections.txt:
  • docs/webkitgtk.types:
  • webkit/webkitdownload.cpp: (webkit_download_class_init):
06:22 Changeset [54958] by benm@google.com

2010-02-18 Ben Murdoch <benm@google.com>

Reviewed by Jeremy Orlow.

[v8] Complete upstreaming of V8 Touch Event bindings
https://bugs.webkit.org/show_bug.cgi?id=35094

No new tests required.

  • bindings/v8/V8Index.cpp: Add generated touch event headers.
06:12 Changeset [54957] by steveblock@google.com

2010-02-18 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Updates Android V8 build to use DerivedSourcesAllInOne.cpp
https://bugs.webkit.org/show_bug.cgi?id=35083

No new tests, build fix only.

  • Android.derived.v8bindings.mk:
  • Android.v8bindings.mk:
05:32 Changeset [54956] by kov@webkit.org

2009-12-05 Gustavo Noronha Silva <gns@gnome.org>

Reviewed by Eric Seidel.

Enable running of GTK+ API tests.

  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
  • Scripts/run-gtk-tests: Added.
05:27 Changeset [54955] by kov@webkit.org

2010-02-18 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

fast/frames/iframe-reparenting.html crashing on GTK Debug bots
https://bugs.webkit.org/show_bug.cgi?id=35081

Check that the client is alive after every call to it, since any
of them could cause the load to be cancelled, and the client to go
away.

This is much better than protecting a specific subclass of
ResourceHandleClient (ResourceLoader), which makes us fail when
any other client is used.

Test: fast/frames/iframe-reparenting.html

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::parseDataUrl):
04:00 Changeset [54954] by ossy@webkit.org

[Qt] fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html fails (DRT sideeffect)
https://bugs.webkit.org/show_bug.cgi?id=35086

fast/xmlhttprequest/xmlhttprequest-no-file-access.html cause
this fail indirectly, but both of them pass in separated DRT.

  • platform/qt/Skipped: fast/xmlhttprequest/xmlhttprequest-no-file-access.html

skipped until fix to make buildbot happy.

03:46 Changeset [54953] by philn@webkit.org

2010-02-18 Philippe Normand <pnormand@igalia.com>

Not reviewed, adding a GTK layout test result for a new test
added in r54926.

  • platform/gtk/fast/css/first-letter-first-line-hover-expected.txt: Added.
03:37 Changeset [54952] by philn@webkit.org

2010-02-18 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Xan Lopez.

plugins/iframe-shims.html crashing on GTK Debug bots
https://bugs.webkit.org/show_bug.cgi?id=35085

  • platform/gtk/Skipped: Skip crashing tests.
02:29 Changeset [54951] by philn@webkit.org

2010-02-18 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Xan Lopez.

fast/frames/iframe-reparenting.html crashing on GTK Debug bots
https://bugs.webkit.org/show_bug.cgi?id=35081

  • platform/gtk/Skipped: Skip crashing test.
02:21 Changeset [54950] by benm@google.com

[v8] [Android] V8 bindings for touch events are missing.
https://bugs.webkit.org/show_bug.cgi?id=33795

Reviewed by Nate Chapin.

No new tests as this just enables touch events in V8. Existing touch tests suffice.

  • WebCore.gypi: Add Touch idl files.
  • bindings/scripts/CodeGeneratorV8.pm: Add TouchList to typeCanFailConversion map.
  • bindings/v8/DOMObjectsInclude.h: Add touch headers.
  • bindings/v8/DerivedSourcesAllInOne.cpp: Add touch generated bindings.
  • bindings/v8/V8Index.h: Add touch DOM object types.
  • bindings/v8/custom/V8EventCustom.cpp: Add conversion of event to touch event.
  • Android.derived.jscbindings.mk: Add the touch derived sources to the makefile.
  • Android.derived.v8bindings.mk: Add the touch derived sources to the makefile.
02:07 Changeset [54949] by philn@webkit.org

2010-02-18 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Xan Lopez.

fast/css/font-face-opentype.html crashing on GTK bots
https://bugs.webkit.org/show_bug.cgi?id=35080

  • platform/gtk/Skipped: Skip crashing test.
01:27 Changeset [54948] by eric@webkit.org

2010-02-18 Jay Campan <jcampan@google.com>

Reviewed by Adam Barth.

Exposing the title in WebDocument.

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

  • public/WebDocument.h:
  • src/WebDocument.cpp: (WebKit::WebDocument::title):
01:17 Changeset [54947] by hamaji@chromium.org

2010-02-18 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Adam Barth.

debug-safari doesn't pass --debug option to gdb-safari on MacOSX
https://bugs.webkit.org/show_bug.cgi?id=34411

  • Scripts/webkitdirs.pm:
01:10 Changeset [54946] by eric@webkit.org

2010-02-18 William Chan <willchan@chromium.org>

Reviewed by Adam Barth.

https://bugs.webkit.org/show_bug.cgi?id=35071
Disable loader limiting of requests per host for the chromium port.

No tests because we're only changing a constant.

  • platform/network/chromium/ResourceRequest.cpp: (WebCore::initializeMaximumHTTPConnectionCountPerHost):
00:54 Changeset [54945] by eric@webkit.org

2010-02-18 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

run-chromium-webkit-tests --platform=mac-leopard needs to run build-dumprendertree
https://bugs.webkit.org/show_bug.cgi?id=35053

  • Scripts/webkitpy/layout_tests/port/base.py: Add script_path() function for finding scripts.
  • Scripts/webkitpy/layout_tests/port/chromium.py: Remove unused argument.
  • Scripts/webkitpy/layout_tests/port/mac.py:
    • Make sure that calling webkit-build-directory works even if Scripts/ is not in the user's path.
    • Call build-dumprendertree (and make sure it succeeds) before running the tests.
00:38 Changeset [54944] by eric@webkit.org

2010-02-18 Chris Evans <cevans@chromium.org>

Reviewed by Adam Barth.

Add the promised test for the unique file:// origins support.
See https://bugs.webkit.org/show_bug.cgi?id=34778 for more details.

  • fast/xmlhttprequest/xmlhttprequest-no-file-access.html: Added.
  • fast/xmlhttprequest/resources/xmlhttprequest-no-file-access-real.html: Added.
  • fast/xmlhttprequest/xmlhttprequest-no-file-access-expected.txt: Added.
00:36 Changeset [54943] by sfalken@apple.com

WebKit on Windows needs a mechanism to listen for WM_SETTINGCHANGED messages
https://bugs.webkit.org/show_bug.cgi?id=35076

Reviewed by Dan Bernstein.

WebKit/win:

  • WebKit.vcproj/WebKit.def: Added WebKitSystemParameterChanged.
  • WebKit.vcproj/WebKit_debug.def: Added WebKitSystemParameterChanged.
  • WebKitGraphics.cpp:

(WebKitSystemParameterChanged): Call through to wkSystemFontSmoothingChanged for font smoothing changes.

  • WebKitGraphics.h: Added WebKitSystemParameterChanged.

WebKitLibraries:

  • win/include/WebKitSystemInterface/WebKitSystemInterface.h:
  • win/lib/WebKitSystemInterface.lib: Updated to add wkSystemFontSmoothingChanged.
  • win/lib/WebKitSystemInterface_debug.lib: Updated to add wkSystemFontSmoothingChanged.
00:17 Changeset [54942] by hamaji@chromium.org

2010-02-16 Chris Jerdonek <cjerdonek@webkit.org>

Reviewed by Shinichiro Hamaji.

Refactored check-webkit-style's ProcessorOptions class into two
classes. This revision contains no new functionality.

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

Divided the ProcessorOptions class into a CommandOptionValues
class (the result of parsing the command-line options) and
a StyleCheckerConfiguration class (which configures the main
StyleChecker).

  • Scripts/check-webkit-style:
    • Updated main() to convert the parsed command option values to a StyleCheckConfiguration instance prior to constructing a StyleChecker.
  • Scripts/webkitpy/style/checker.py:
    • Added check_webkit_style_configuration() to convert a CommandOptionValues instance into a StyleCheckerConfiguration instance.
    • Renamed the ProcessorOptions class to CommandOptionValues.
    • In the CommandOptionValues class--
      • Replaced the filter_configuration attribute with the simpler filter_rules attribute.
      • Removed the max_reports_per_error attribute.
      • Moved the is_reportable() method to the new StyleCheckerConfiguration class.
    • Removed the base_filter_rules attribute from the DefaultCommandOptionValues class.
    • In the ArgumentParser class--
      • Added base_filter_rules to the constructor.
      • Changed the parse() method to return a CommandOptionValues instance instead of a ProcessorOptions instance.
    • Created a StyleCheckerConfiguration class.
      • Added the data attributes max_reports_per_category, stderr_write, and verbosity.
      • Added is_reportable() (moved from the ProcessorOptions class) and write_style_error() (moved from the DefaultStyleErrorHandler class).
    • In the StyleChecker class--
      • Replaced the ProcessorOptions options attribute with the StyleCheckerConfiguration _configuration attribute.
      • Removed the _stderr_write attribute.
  • Scripts/webkitpy/style/checker_unittest.py:
    • Updated the existing unit test classes as necessary.
    • Added a StyleCheckerConfigurationTest class.
  • Scripts/webkitpy/style/error_handlers.py:
    • Updated the DefaultStyleErrorHandler class to accept a StyleCheckerConfiguration instance instead of a ProcessorOptions instance and an stderr_write method.
  • Scripts/webkitpy/style/error_handlers_unittest.py:
    • Updated the unit test classes as necessary.
  • Scripts/webkitpy/style/filter.py:
    • Addressed the FIXME in the FilterConfiguration class to change the user_rules attribute to _user_rules (since it is now accessed only internally).
  • Scripts/webkitpy/style/filter_unittest.py:
    • Updated to reflect the change from user_rules to _user_rules.
00:17 Changeset [54941] by tony@chromium.org

2010-02-18 Tony Chang <tony@chromium.org>

Not reviewed, adding a QT layout test result for a new test
added in r54932.

  • platform/qt/editing/pasteboard/page-zoom-expected.txt: Copied from LayoutTests/platform/gtk/editing/pasteboard/page-zoom-expected.txt.
00:06 Changeset [54940] by xan@webkit.org

2010-02-18 Xan Lopez <xlopez@igalia.com>

Reviewed by Eric Seidel.

[Linux] Webkit incompatible with Java plugins
https://bugs.webkit.org/show_bug.cgi?id=24912

The NP Version supported by WebKit is at the moment hardcoded in
PluginPackage.cpp (to 24), but not all backends actually implement
the methods needed to claim this. Introduce a new method to be
implemented by each backend where the maximum supported version
can be specified, and set the GTK+ port NPVersion to 19. This
fixes an instantaneous crasher in the Sun Java NPAPI plugin.

  • plugins/PluginPackage.cpp: (WebCore::PluginPackage::initializeBrowserFuncs):
  • plugins/PluginPackage.h:
  • plugins/gtk/PluginPackageGtk.cpp: (WebCore::PluginPackage::NPVersion):
  • plugins/mac/PluginPackageMac.cpp: (WebCore::PluginPackage::NPVersion):
  • plugins/qt/PluginPackageQt.cpp: (WebCore::PluginPackage::NPVersion):
  • plugins/symbian/PluginPackageSymbian.cpp: (WebCore::PluginPackage::NPVersion):
  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::NPVersion):
00:04 Changeset [54939] by ossy@webkit.org

[Qt] editing/pasteboard/page-zoom.html fails
https://bugs.webkit.org/show_bug.cgi?id=35077

  • platform/qt/Skipped: editing/pasteboard/page-zoom.html skipped until fix.

02/17/10:

23:55 Changeset [54938] by dimich@chromium.org

When a live iframe element is moved between pages, it still depends on the old page.
https://bugs.webkit.org/show_bug.cgi?id=34382

Reviewed by David Levin, Darin Fisher, Simon Hausmann.

WebCore:

Test: fast/frames/iframe-reparenting-new-page.html

  • html/HTMLFrameElementBase.cpp:

(WebCore::HTMLFrameElementBase::setName):
Move the code setting the frame name into a separate function.

(WebCore::HTMLFrameElementBase::setNameAndOpenURL):
(WebCore::HTMLFrameElementBase::updateOnReparenting):
Called on the frame that was just re-parented and inserted into another Document.
Simply invoke Frame::transferChildFrameToNewDocument(...);

(WebCore::HTMLFrameElementBase::insertedIntoDocument):

  • html/HTMLFrameElementBase.h:
  • html/HTMLFrameOwnerElement.h:

(WebCore::HTMLFrameOwnerElement::setName):
Make this a virtual function, to be able to reach it via Frame::m_ownerElement.

  • loader/EmptyClients.h:

(WebCore::EmptyFrameLoaderClient::adoptFrame):

  • loader/FrameLoaderClient.h:

Add a new method, didTransferChildFrameToNewDocument().
It compliments createFrame() in that a frame which was re-parented
in DOM and potentially changes Page, should notify the WebKit
implementation about potential ownership change.
Many embedders assume that Page owns all the Frames, or at least
all Frames are destroyed before 'their' Page is destroyed. Obviously, if Frame
can be transferred to another Page, the embedders should be notified.

  • page/Frame.cpp:

(WebCore::Frame::transferChildFrameToNewDocument):
Added, makes actual adjustments for Frame - resets the Page,
updates the frame tree and frame name, calls to FrameLoaderClient
to update external objects and recurses into children.
Can only be used on child frames.

  • page/Frame.h:

WebKit/chromium:

  • src/FrameLoaderClientImpl.cpp:

(WebKit::FrameLoaderClientImpl::detachedFromParent3):
(WebKit::FrameLoaderClientImpl::didTransferChildFrameToNewDocument):
Since Chromium's WebFrameClient is destroyed once a window is closed,
if Frame moves between Pages, the client of corresponding WebFrame
should be replaced as well.

  • src/FrameLoaderClientImpl.h:
  • src/WebFrameImpl.h:

(WebKit::WebFrameImpl::setClient):

WebKit/gtk:

  • WebCoreSupport/FrameLoaderClientGtk.cpp:

(WebKit::FrameLoaderClient::didTransferChildFrameToNewDocument):
Added empty implementation of a new virtual method.

  • WebCoreSupport/FrameLoaderClientGtk.h:

WebKit/haiku:

  • WebCoreSupport/FrameLoaderClientHaiku.cpp:

(WebCore::FrameLoaderClientHaiku::didTransferChildFrameToNewDocument):
Added empty implementation of a new virtual method.

  • WebCoreSupport/FrameLoaderClientHaiku.h:

WebKit/mac:

  • WebCoreSupport/WebFrameLoaderClient.h:
  • WebCoreSupport/WebFrameLoaderClient.mm:

Added empty implementation of a new virtual method.

(WebFrameLoaderClient::didTransferChildFrameToNewDocument):

WebKit/qt:

  • Api/qwebframe_p.h:

(QWebFramePrivate::setPage): Added.

  • WebCoreSupport/FrameLoaderClientQt.cpp:

(WebCore::FrameLoaderClientQt::didTransferChildFrameToNewDocument):
The QWebFrame caches a QWebPage which should be replaced when Frame is re-parented.
Also, the QWebFrame is a child (in QT terms) of QWebPage - so update that relationship as well.
Emit a signal that QWebFrame moved to a different QWebPage.

  • WebCoreSupport/FrameLoaderClientQt.h:

WebKit/win:

  • WebCoreSupport/WebFrameLoaderClient.cpp:

(WebFrameLoaderClient::didTransferChildFrameToNewDocument):
Added empty implementation of a new virtual method.

  • WebCoreSupport/WebFrameLoaderClient.h:

WebKit/wx:

  • WebKitSupport/FrameLoaderClientWx.cpp:

(WebCore::FrameLoaderClientWx::didTransferChildFrameToNewDocument):
Added empty implementation of a new virtual method.

  • WebKitSupport/FrameLoaderClientWx.h:

LayoutTests:

  • fast/frames/iframe-reparenting-new-page-expected.txt: Added.
  • fast/frames/iframe-reparenting-new-page.html: Added.
  • fast/frames/resources/iframe-reparenting-new-page-1.html: Added.
  • fast/frames/resources/iframe-reparenting-new-page-2.html: Added.
  • fast/frames/resources/iframe-reparenting-new-page-iframe.html: Added.
  • fast/frames/script-tests/TEMPLATE.html: Copied from LayoutTests/fast/canvas/script-tests/TEMPLATE.html.
  • fast/frames/script-tests/iframe-reparenting-new-page.js: Added.
23:49 Changeset [54937] by ossy@webkit.org

[Qt] DRT: Get total number of pages to be printed
https://bugs.webkit.org/show_bug.cgi?id=34955

Fix landed in r54902, so we can unskip the test.

  • platform/qt/Skipped: printing/numberOfPages.html unskipped.
23:41 Changeset [54936] by ossy@webkit.org

[Qt] Fails glyph reordering test fast/text/glyph-reordering.html
https://bugs.webkit.org/show_bug.cgi?id=34918

Fix landed in r54912, so we can unskip the test.

  • platform/qt/Skipped: fast/text/glyph-reordering.html unskipped.
23:30 Changeset [54935] by tony@chromium.org

2010-02-17 Tony Chang <tony@chromium.org>

Not reviewed, adding a GTK+ layout test result for a new test
added in r54932.

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

  • platform/gtk/editing/pasteboard/page-zoom-expected.txt: Added.
23:29 Changeset [54934] by cjerdonek@webkit.org

Refactored check-webkit-style's ProcessorOptions class into two
classes. This revision contains no new functionality.

Reviewed by Shinichiro Hamaji.

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

Divided the ProcessorOptions class into a CommandOptionValues
class (the result of parsing the command-line options) and
a StyleCheckerConfiguration class (which configures the main
StyleChecker).

  • Scripts/check-webkit-style:
    • Updated main() to convert the parsed command option values to a StyleCheckConfiguration instance prior to constructing a StyleChecker.
  • Scripts/webkitpy/style/checker.py:
    • Added check_webkit_style_configuration() to convert a CommandOptionValues instance into a StyleCheckerConfiguration instance.
    • Renamed the ProcessorOptions class to CommandOptionValues.
    • In the CommandOptionValues class--
      • Replaced the filter_configuration attribute with the simpler filter_rules attribute.
      • Removed the max_reports_per_error attribute.
      • Moved the is_reportable() method to the new StyleCheckerConfiguration class.
    • Removed the base_filter_rules attribute from the DefaultCommandOptionValues class.
    • In the ArgumentParser class--
      • Added base_filter_rules to the constructor.
      • Changed the parse() method to return a CommandOptionValues instance instead of a ProcessorOptions instance.
    • Created a StyleCheckerConfiguration class.
      • Added the data attributes max_reports_per_category, stderr_write, and verbosity.
      • Added is_reportable() (moved from the ProcessorOptions class) and write_style_error() (moved from the DefaultStyleErrorHandler class).
    • In the StyleChecker class--
      • Replaced the ProcessorOptions options attribute with the StyleCheckerConfiguration _configuration attribute.
      • Removed the _stderr_write attribute.
  • Scripts/webkitpy/style/checker_unittest.py:
    • Updated the existing unit test classes as necessary.
    • Added a StyleCheckerConfigurationTest class.
  • Scripts/webkitpy/style/error_handlers.py:
    • Updated the DefaultStyleErrorHandler class to accept a StyleCheckerConfiguration instance instead of a ProcessorOptions instance and an stderr_write method.
  • Scripts/webkitpy/style/error_handlers_unittest.py:
    • Updated the unit test classes as necessary.
  • Scripts/webkitpy/style/filter.py:
    • Addressed the FIXME in the FilterConfiguration class to change the user_rules attribute to _user_rules (since it is now accessed only internally).
  • Scripts/webkitpy/style/filter_unittest.py:
    • Updated to reflect the change from user_rules to _user_rules.
23:12 Changeset [54933] by tony@chromium.org

2010-02-17 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=26937
No longer allow span styles to surround block elements like
divs when pasting (see paste-text-012 and 5065605 which had divs in
spans). This also causes a few cases of empty spans to be removed
(see 19089 and 5245519).

  • editing/execCommand/19089-expected.txt:
  • editing/pasteboard/5245519-expected.txt:
  • editing/pasteboard/5245519.html:
  • platform/mac/editing/pasteboard/5065605-expected.txt:
  • platform/mac/editing/pasteboard/paste-text-011-expected.txt:
  • platform/mac/editing/pasteboard/paste-text-012-expected.txt:

2010-02-17 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

Copying and pasting into a contenteditable area can create <div>s surrounded by <span>s
https://bugs.webkit.org/show_bug.cgi?id=26937

This happens because of a span added when we copy that is used to
preserve styles. To avoid this, when we paste, make sure to apply
the styles to the span's children and then remove the style span.

This change is covered by existing layout tests.

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::handleStyleSpans): (WebCore::ReplaceSelectionCommand::copyStyleToChildren):
  • editing/ReplaceSelectionCommand.h:
22:44 Changeset [54932] by eric@webkit.org

2010-02-17 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=34914
When pasting absolute font sizes into a content editable area with
page zoom, adjust the font sizes to be the same after page zoom is
applied.

  • editing/pasteboard/page-zoom-expected.txt: Added.
  • editing/pasteboard/page-zoom.html: Added.

2010-02-17 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=34914
When pasting absolute font sizes into a content editable area with
page zoom, adjust the font sizes to be the same after page zoom is
applied.

Test: editing/pasteboard/page-zoom.html

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::negateStyleRulesThatAffectAppearance):
22:28 Changeset [54931] by eric@webkit.org

2010-02-17 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=34737
Test to verify that pasting styled list items works
the same as pasting unstyle list items.

  • editing/pasteboard/paste-list-003-expected.txt: Added.
  • editing/pasteboard/paste-list-003.html: Added.

2010-02-17 Tony Chang <tony@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=34737
Copying styled list items then pasting into a list
should work the same as copying unstyle list items:
it shouldn't indent an extra level, but styles should
be copied.

Small cleanups to insertAsListItems to make variable names
more descriptive.

Test: editing/pasteboard/paste-list-003.html

  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): (WebCore::ReplaceSelectionCommand::insertAsListItems):
22:12 Changeset [54930] by eric@webkit.org

2010-02-17 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Port PlatformKeyboardEvent
https://bugs.webkit.org/show_bug.cgi?id=34794

Retrieve the type, key code, text and modifiers from BREW's keyboard event.

  • platform/PlatformKeyboardEvent.h:
  • platform/brew/PlatformKeyboardEventBrew.cpp: Added. (WebCore::keyIdentifierForBrewKeyCode): (WebCore::windowsKeyCodeForKeyEvent): (WebCore::singleCharacterString): (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): (WebCore::PlatformKeyboardEvent::disambiguateKeyDownEvent): (WebCore::PlatformKeyboardEvent::currentCapsLockState):
21:55 Changeset [54929] by eric@webkit.org

2010-02-17 Hayato Ito <hayato@chromium.org>

Reviewed by Eric Seidel.

Support CSS page-break-inside with a value of 'avoid'.

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

  • printing/page-break-inside-expected.txt: Added.
  • printing/page-break-inside.html: Added.
  • printing/script-tests/page-break-inside.js: Added. (createParagraph): (pageNumber):

2010-02-17 Hayato Ito <hayato@chromium.org>

Reviewed by Eric Seidel.

Support CSS page-break-inside with a value of 'avoid'.

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

Test: printing/page-break-inside.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintChildren):
21:38 Changeset [54928] by eric@webkit.org

2010-02-17 Evan Martin <evan@chromium.org>

Reviewed by Eric Seidel.

[chromium] expose cache-bypass flag in reload() API
https://bugs.webkit.org/show_bug.cgi?id=34969

This flag is used to force a reload to ignore caches.
(Aka "shift-reload".)

  • public/WebFrame.h:
  • src/WebFrameImpl.cpp: (WebKit::WebFrameImpl::reload):
  • src/WebFrameImpl.h:
21:32 Changeset [54927] by ukai@chromium.org

2010-02-17 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket bufferedAmount should not be 0 when send after close.
https://bugs.webkit.org/show_bug.cgi?id=34633

  • websocket/tests/bufferedAmount-after-close-expected.txt: Added.
  • websocket/tests/bufferedAmount-after-close.html: Added.
  • websocket/tests/script-tests/bufferedAmount-after-close.js: Added.

2010-02-17 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Alexey Proskuryakov.

WebSocket bufferedAmount should not be 0 when send after close.
https://bugs.webkit.org/show_bug.cgi?id=34633

Fixed bug in webkit r54694. check m_client after it calls user
callback, because user callback may call close(), which would
call onclose event handler.

Test: websocket/tests/bufferedAmount-after-close.html

  • websockets/ThreadableWebSocketChannelClientWrapper.h: (WebCore::ThreadableWebSocketChannelClientWrapper::didClose):
  • websockets/WebSocket.cpp: (WebCore::WebSocket::WebSocket): (WebCore::WebSocket::send): (WebCore::WebSocket::close): (WebCore::WebSocket::bufferedAmount): (WebCore::WebSocket::didConnect): (WebCore::WebSocket::didClose):
  • websockets/WebSocket.h:
  • websockets/WebSocketChannel.cpp: (WebCore::WebSocketChannel::WebSocketChannel): (WebCore::WebSocketChannel::send): (WebCore::WebSocketChannel::bufferedAmount): (WebCore::WebSocketChannel::didClose): (WebCore::WebSocketChannel::didReceiveData):
  • websockets/WebSocketChannel.h:
  • websockets/WebSocketChannelClient.h: (WebCore::WebSocketChannelClient::didClose):
  • websockets/WorkerThreadableWebSocketChannel.cpp: (WebCore::workerContextDidClose): (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
  • websockets/WorkerThreadableWebSocketChannel.h:
21:14 Changeset [54926] by eric@webkit.org

2010-02-17 Yuzo Fujishima <yuzo@google.com>

Reviewed by Eric Seidel.

In diffing render styles, consider all pseudo style changes.
Without this patch, only :before and :after are considered. This is the cause of the following bug.
https://bugs.webkit.org/show_bug.cgi?id=32187

  • fast/css/first-letter-first-line-hover.html: Added.
  • platform/mac/fast/css/first-letter-first-line-hover-expected.checksum: Added.
  • platform/mac/fast/css/first-letter-first-line-hover-expected.png: Added.
  • platform/mac/fast/css/first-letter-first-line-hover-expected.txt: Added.

2010-02-17 Yuzo Fujishima <yuzo@google.com>

Reviewed by Eric Seidel.

In diffing render styles, consider all pseudo style changes.
Without this patch, only :before and :after are considered. This is the cause of the following bug.
https://bugs.webkit.org/show_bug.cgi?id=32187

Test: fast/css/first-letter-first-line-hover.html

  • dom/Node.cpp: (WebCore::Node::diff):
  • rendering/style/RenderStyle.cpp: (WebCore::RenderStyle::hasAnyPublicPseudoStyles):
  • rendering/style/RenderStyle.h:
  • rendering/style/RenderStyleConstants.h: (WebCore::):
21:07 Changeset [54925] by barraclough@apple.com

https://bugs.webkit.org/show_bug.cgi?id=35070
Addition of 2 strings of length 231 may result in a string of length 0.

Reviewed by Oliver Hunt.

Check for overflow when creating a new JSString as a result of an addition
or concatenation, throw an out of memory exception.

  • runtime/JSString.h:

(JSC::):

  • runtime/Operations.h:

(JSC::jsString):

20:55 Changeset [54924] by eric@webkit.org

2010-02-17 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Add WebCore::prefetchDNS
https://bugs.webkit.org/show_bug.cgi?id=34873

DNS prefetching is not implemented because the maximum number
of UDP sockets is quite small in most BREW devices.

  • platform/network/brew/DNSBrew.cpp: Added. (WebCore::prefetchDNS):
20:36 Changeset [54923] by tkent@chromium.org

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

It's hard for Chromium port to load an icon inside
Icon::createIconForFiles() because of sanbox and multi-process
architecture. So this change adds a method to request an icon to
Chrome class, and makes FileChooser receives an Icon instance
asynchronously. Synchronous loading also works with the new interface.

Because all ports don't have implementations of Chrome::iconForFiles()
yet, FileChooser tries to load an Icon synchronously with
Icon::createIconForFiles(), then tries to load an Icon asynchronously
with Chrome::iconForFiles() if Icon::createIconForFiles() returns 0.

The existing Icon::createIconForFiles() implementations should be
moved to Chrome::iconForFiles(). We're going to remove
Icon::createIconForFiles().

  • loader/EmptyClients.h: (WebCore::EmptyChromeClient::iconForFiles): Add an empty implementation.
  • page/Chrome.cpp: (WebCore::Chrome::iconForFiles): Delegate to ChromeClient::iconForFiles().
  • page/Chrome.h:
  • page/ChromeClient.h: (WebCore::ChromeClient::iconForFiles): Add a declaration as a pure virtual method.
  • platform/FileChooser.cpp: (WebCore::FileChooser::FileChooser): Use loadIcon(). (WebCore::FileChooser::chooseFiles): ditto. (WebCore::FileChooser::loadIcon): Added. (WebCore::FileChooser::iconLoaded): Added.
  • platform/FileChooser.h: Add two methods to FileChooserClient; repaint() and iconForFiles().
  • platform/graphics/Icon.h: Add a FIXME comment.
  • platform/graphics/gtk/IconGtk.cpp: ditto.
  • platform/graphics/mac/IconMac.mm: ditto.
  • platform/graphics/qt/IconQt.cpp: ditto.
  • platform/graphics/win/IconWin.cpp: ditto.
  • rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::iconForFiles): Delegate to Chrome::iconForFiles(). (WebCore::RenderFileUploadControl::click): Use chrome(). (WebCore::RenderFileUploadControl::chrome):
  • rendering/RenderFileUploadControl.h: (WebCore::RenderFileUploadControl::repaint):

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • src/ChromeClientImpl.cpp: (WebKit::ChromeClientImpl::iconForFiles):
  • src/ChromeClientImpl.h:

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::iconForFiles):
  • WebCoreSupport/ChromeClientGtk.h:

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • WebCoreSupport/ChromeClientHaiku.cpp: (WebCore::ChromeClientHaiku::iconForFiles):
  • WebCoreSupport/ChromeClientHaiku.h:

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::iconForFiles):

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::iconForFiles):
  • WebCoreSupport/ChromeClientQt.h:

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::iconForFiles):
  • WebCoreSupport/WebChromeClient.h:

2010-02-17 Kent Tamura <tkent@chromium.org>

Reviewed by Eric Seidel.

Introduces new Icon loading interface in order to support
asynchronous loading.
https://bugs.webkit.org/show_bug.cgi?id=32054

Add an empty implementation of ChromeClient::iconForFiles().

  • WebKitSupport/ChromeClientWx.cpp: (WebCore::ChromeClientWx::iconForFiles):
  • WebKitSupport/ChromeClientWx.h:
20:19 Changeset [54922] by hamaji@chromium.org

2010-02-17 Shinichiro Hamaji <hamaji@chromium.org>

Unreviewed. Touch WebKit.idl to fix the build.

[Win] Implement test functions for printing
https://bugs.webkit.org/show_bug.cgi?id=34570

  • Interfaces/WebKit.idl:
18:42 Changeset [54921] by hamaji@chromium.org

2010-02-17 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

[Win] Implement layoutTestController.pageNumberForElementById
https://bugs.webkit.org/show_bug.cgi?id=34570

  • platform/win/Skipped:

2010-02-17 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

[Win] Implement test functions for printing
https://bugs.webkit.org/show_bug.cgi?id=34570

  • Interfaces/IWebFramePrivate.idl:
  • WebFrame.cpp: (WebFrame::pageNumberForElementById): (WebFrame::numberOfPages):
  • WebFrame.h:

2010-02-17 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

[Win] Implement test functions for printing
https://bugs.webkit.org/show_bug.cgi?id=34570

  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::pageNumberForElementById): (LayoutTestController::numberOfPages):
18:19 Changeset [54920] by ukai@chromium.org

2010-02-17 Fumitoshi Ukai <ukai@chromium.org>

Reviewed by Eric Seidel.

websocket/tests/cookies/httponly-cookie.pl fails every time under run-chromium-webkit-tests
https://bugs.webkit.org/show_bug.cgi?id=35001

  • Scripts/webkitpy/layout_tests/port/websocket_server.py: add -x flag to run pywebsocket.
18:19 Changeset [54919] by mrowe@apple.com

Bug 35065: Delay between page loading and animated GIF playing
<http://webkit.org/b/35065> / <rdar://problem/7109548>

Reviewed by Darin Adler.

BitmapImage::startAnimation was adding the current frame duration to the desired start time
of the frame for every time it was called. If the function then bailed out due to not having
sufficient data to render the frame, this would lead to the desired start time of the frame
being pushed out multiple times. On an animated GIF that took mulitple seconds to load this
could happen many times for a single frame, resulting in the start time of the second frame
of the animation being pushed out by as much as five seconds.

  • platform/graphics/BitmapImage.cpp:

(WebCore::BitmapImage::startAnimation): Change the order of the code slightly so that the
desired start time is only updated after determining that we have sufficient data to handle
the next frame.

18:13 Changeset [54918] by hamaji@chromium.org

2010-02-17 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

check-webkit-style: Misses variables that contain underscores.
https://bugs.webkit.org/show_bug.cgi?id=33724

  • Check identifiers whose types are unsigned.
  • Check bitfields properly.
  • Scripts/webkitpy/style/processors/cpp.py:
  • Scripts/webkitpy/style/processors/cpp_unittest.py:
18:00 Changeset [54917] by hamaji@chromium.org

2010-02-17 Shinichiro Hamaji <hamaji@chromium.org>

Reviewed by Eric Seidel.

check-webkit-style should report the number of files checked
https://bugs.webkit.org/show_bug.cgi?id=34971

  • Scripts/check-webkit-style:
  • Scripts/webkitpy/style/checker.py:
  • Scripts/webkitpy/style/checker_unittest.py:
17:35 Changeset [54916] by eric@webkit.org

2010-02-17 Stephan Aßmus <superstippi@gmx.de>

Reviewed by Eric Seidel.

Implemented homeDirectoryPath() and listDirectory() on the Haiku platform.
https://bugs.webkit.org/show_bug.cgi?id=34687

Covered by existing tests.

  • platform/haiku/FileSystemHaiku.cpp: (WebCore::homeDirectoryPath): Implemented (WebCore::listDirectory): Implemented
17:19 Changeset [54915] by eric@webkit.org

2010-02-17 Kwang Yul Seo <skyul@company100.net>

Reviewed by Eric Seidel.

[BREWMP] Port userIdleTime
https://bugs.webkit.org/show_bug.cgi?id=34259

Return an arbitrarily high userIdleTime so that releasing pages from the page
cache isn't postponed.

  • platform/brew/SystemTimeBrew.cpp: Added. (WebCore::userIdleTime):
16:51 Changeset [54914] by bweinstein@apple.com

Actually land the changes to the Skipped list

16:50 Changeset [54913] by bweinstein@apple.com

Rubber-stamped by Dan Bernstein.

Unskip glyph-reordering, because now it passes on Windows.

  • platform/win/Skipped:
16:28 Changeset [54912] by mitz@apple.com

[GTK][Qt] Fails glyph reordering test fast/text/glyph-reordering.html
https://bugs.webkit.org/show_bug.cgi?id=34918

Reviewed by Eric Seidel.

Made the test less dependent on the complex text implementation.

  • fast/text/glyph-reordering-expected.txt:
  • fast/text/glyph-reordering.html:
15:10 Changeset [54911] by krit@webkit.org

2010-02-17 Dirk Schulze <krit@webkit.org>

Rolling out r54909. Breaks SL and Win.

14:29 Changeset [54910] by dumi@chromium.org

WebCore: Fix Chromium's bindings for Database.transaction(): a 'null'
callback should be treated as no callback.

Reviewed by Dimitri Glazkov.

Test: storage/null-callbacks.html

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

  • bindings/v8/custom/V8DatabaseCustom.cpp:

(WebCore::createTransaction):

LayoutTests: Add a test that verifies that null transaction callbacks are
accepted and treated as no callbacks.

Reviewed by Dimitri Glazkov.

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

  • storage/null-callbacks-expected.txt: Added.
  • storage/null-callbacks.html: Added.
14:12 Changeset [54909] by krit@webkit.org

2010-02-17 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Move SVGResources to Renderers, starting with Masker
https://bugs.webkit.org/show_bug.cgi?id=35020

We have rendering specific code in WebCore/svg/graphics. The goal is to move
this code into suitable Renderers. This helps us to clean up the code and makes
maintenance easier. It also makes it possible to remove rendering specific code
from SVG*Elements into this renderers. So the Renderer contains everything that
is needed to use the resource.
RenderSVGResource will be the base class for all new resource render classes like
RenderSVGResourceMasker, RenderSVGResourceClipper and the other resources.

This patch starts moving SVGResourceMasker to RenderSVGResourceMasker.
Another benefit is the much more useful result in DRT on using masker.

  • Android.mk:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderObject.cpp: (WebCore::RenderObject::toRenderSVGResource): Conversion to RenderSVGResource base class.
  • rendering/RenderObject.h: (WebCore::RenderObject::isSVGResource): Check if renderer is a resource.
  • rendering/RenderPath.cpp:
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::destroy): Renderer gets destroyed, unregister it from it's resources.
  • rendering/RenderSVGImage.h: Some code clean up according to the webkit style. (WebCore::RenderSVGImage::toSVGRenderBase): (WebCore::RenderSVGImage::renderName): (WebCore::RenderSVGImage::isSVGImage): (WebCore::RenderSVGImage::localToParentTransform): (WebCore::RenderSVGImage::strokeBoundingBox): (WebCore::RenderSVGImage::requiresLayer): (WebCore::RenderSVGImage::localTransform):
  • rendering/RenderSVGInlineText.h: (WebCore::RenderSVGInlineText::objectBoundingBox): Needed for SVGRenderTreeAsText
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::destroy): Renderer gets destroyed, unregister it from it's resources.
  • rendering/RenderSVGModelObject.h:
  • rendering/RenderSVGResource.h: Added. (WebCore::): Base class for all Resource renderers like masker, clipper and others. (WebCore::RenderSVGResource::RenderSVGResource): (WebCore::RenderSVGResource::cast): (WebCore::RenderSVGResource::toRenderSVGResource): (WebCore::RenderSVGResource::isSVGResource): (WebCore::RenderSVGResource::drawsContents): (WebCore::getRenderSVGResourceById):
  • rendering/RenderSVGResourceMasker.cpp: Added. (WebCore::RenderSVGResourceMasker::RenderSVGResourceMasker): (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker): (WebCore::RenderSVGResourceMasker::invalidateClients): Status of masker changed, remove all clients. (WebCore::RenderSVGResourceMasker::invalidateClient): Status of an object changed, remove pending client. (WebCore::RenderSVGResourceMasker::applyResource): Apply masker to object. (WebCore::RenderSVGResourceMasker::resourceBoundingBox): boundingBox of the resource, depending on the object. (WebCore::RenderSVGResourceMasker::createMaskImage): Creates the mask image, the context gets clipped with.
  • rendering/RenderSVGResourceMasker.h: Added. (WebCore::MaskerData::MaskerData): (WebCore::RenderSVGResourceMasker::renderName): (WebCore::RenderSVGResourceMasker::maskUnits): Unit of mask for DRT. (WebCore::RenderSVGResourceMasker::maskContentUnits): Unit of childs from mask for DRT. (WebCore::RenderSVGResourceMasker::resourceType):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::destroy): Renderer gets destroyed, unregister it from it's resources.
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::destroy): dito.
  • rendering/RenderSVGText.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::write):
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderBase::prepareToRenderSVGContent): (WebCore::SVGRenderBase::maskerBoundingBoxForRenderer): (WebCore::SVGRenderBase::deregisterFromResources): Unregister object from all it's resources after status changed.
  • rendering/SVGRenderSupport.h: (WebCore::SVGRenderBase::toSVGRenderBase): (WebCore::SVGRenderBase::strokeBoundingBox): (WebCore::SVGRenderBase::markerBoundingBox):
  • rendering/SVGRenderTreeAsText.cpp: Update TreeAsText to dump maskers correctly. (WebCore::operator<<): (WebCore::writeSVGResource): (WebCore::writeSVGContainer): (WebCore::writeSVGText): (WebCore::writeSVGInlineText): (WebCore::writeSVGImage): (WebCore::write): (WebCore::writeResourcesToObject):
  • rendering/SVGRenderTreeAsText.h:
  • svg/SVGMaskElement.cpp: Update Masker to use the new renderer. (WebCore::SVGMaskElement::svgAttributeChanged): (WebCore::SVGMaskElement::childrenChanged): (WebCore::SVGMaskElement::maskBoundingBox): (WebCore::SVGMaskElement::createRenderer):
  • svg/SVGMaskElement.h:
  • svg/SVGStyledElement.cpp: We need to tell the renderer to unregister object, after the status changed. (WebCore::SVGStyledElement::invalidateResources): (WebCore::SVGStyledElement::invalidateResourcesInAncestorChain):
  • svg/SVGUnitTypes.h: Conversion of integer to SVGUnitType. (WebCore::toUnitType):
  • svg/graphics/SVGResource.h: (WebCore::): (WebCore::SVGResource::isMarker):
  • svg/graphics/SVGResourceMasker.cpp: Removed.
  • svg/graphics/SVGResourceMasker.h: Removed.

2010-02-17 Dirk Schulze <krit@webkit.org>

Reviewed by Nikolas Zimmermann.

Move SVGResources to Renderers, starting with Masker
https://bugs.webkit.org/show_bug.cgi?id=35020

With the move from SVGResourceMasker to RenderSVGResourceMasker, I changed
the way DRT dumps resources. DRT is now able to dump multi-access
of resources.
Also the size of a Mask resource (depending of the object) and the access of
the resource (togeter with the resource name) is pointed out as an insertion
under the object.

  • platform/mac/svg/W3C-SVG-1.1/masking-intro-01-f-expected.txt:
  • platform/mac/svg/W3C-SVG-1.1/masking-mask-01-b-expected.txt:
  • platform/mac/svg/batik/masking/maskRegions-expected.txt:
  • platform/mac/svg/css/circle-in-mask-with-shadow-expected.txt:
  • platform/mac/svg/css/mask-with-shadow-expected.txt:
  • platform/mac/svg/custom/empty-mask-expected.txt:
  • platform/mac/svg/custom/grayscale-gradient-mask-expected.txt:
  • platform/mac/svg/custom/js-late-mask-and-object-creation-expected.txt:
  • platform/mac/svg/custom/js-late-mask-creation-expected.txt:
  • platform/mac/svg/custom/mask-changes-expected.txt:
  • platform/mac/svg/custom/mask-child-changes-expected.txt:
  • platform/mac/svg/custom/mask-excessive-malloc-expected.txt:
  • platform/mac/svg/custom/mask-inside-defs-expected.txt:
  • platform/mac/svg/custom/mask-invalidation-expected.txt:
  • platform/mac/svg/custom/mask-on-multiple-objects-expected.txt:
  • platform/mac/svg/custom/mask-with-all-units-expected.txt:
  • platform/mac/svg/custom/mask-with-default-value-expected.txt:
  • platform/mac/svg/custom/resource-invalidate-on-target-update-expected.txt:
  • platform/mac/svg/custom/visibility-override-mask-expected.txt:
  • platform/mac/svg/filters/filter-clip-expected.txt:
  • svg/custom/transformedMaskFails-expected.txt:
13:45 Changeset [54908] by timothy@apple.com

Add a way for WebView and its dependancies to be selectively included
in WebKitStatistics leak tracking. By default WebView is not included and
you need to subclass WebView and implement +isIncludedInWebKitStatistics
to be included.

rdar://problem/7567677&7572900
https://webkit.org/b/35045

Reviewed by Adam Roben.

  • WebView/WebDataSource.mm:

(-[WebDataSource _initWithDocumentLoader:]): Increment WebDataSourceCount if the WebFrame is included in statistics.
(-[WebDataSource dealloc]): Only --WebDataSourceCount if _private->includedInWebKitStatistics is YES.
(-[WebDataSource finalize]): Ditto.

  • WebView/WebFrame.mm:

(-[WebFrame _isIncludedInWebKitStatistics]): Return _private->includedInWebKitStatistics.
(-[WebFrame _initWithWebFrameView:webView:]): Increment WebFrameCount if the WebView's class is included in statistics.
(-[WebFrame dealloc]): Only --WebFrameCount if _private->includedInWebKitStatistics is YES.
(-[WebFrame finalize]): Ditto.

  • WebView/WebFrameInternal.h:
  • WebView/WebFrameView.mm:

(-[WebFrameView _setWebFrame:]): Increment WebFrameViewCount if the WebFrame is included in statistics.
(-[WebFrameView initWithFrame:]): Move ++WebFrameViewCount from here since we don't
know what WebFrame we belong to yet.
(-[WebFrameView dealloc]): Only --WebFrameViewCount if _private->includedInWebKitStatistics is YES.
(-[WebFrameView finalize]): Ditto.

  • WebView/WebHTMLRepresentation.mm:

(-[WebHTMLRepresentation init]): Move ++WebHTMLRepresentationCount from here since we don't
know what WebFrame we belong to yet.
(-[WebHTMLRepresentation dealloc]): Only --WebHTMLRepresentationCount if _private->includedInWebKitStatistics is YES.
(-[WebHTMLRepresentation finalize]): Ditto.
(-[WebHTMLRepresentation setDataSource:]): Increment WebHTMLRepresentationCount if the WebFrame of the dataSource is
included in statistics.

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
(-[WebView dealloc]):
(+[WebView shouldIncludeInWebKitStatistics]): Return NO, so any WebView wont be included.
Subclasses that care can return YES to be included.

  • WebView/WebViewInternal.h:
13:05 Changeset [54907] by eric@webkit.org

2010-02-17 Kenneth Russell <kbr@google.com>

Reviewed by Oliver Hunt.

Refactor texImage2D and texSubImage2D taking Image to use common code
https://bugs.webkit.org/show_bug.cgi?id=34458

Merged the Safari and Chromium code which extracts the data from
Image objects into common entry points on GraphicsContext3D. This
immediately fixes the following three problems:

  • Chromium not implementing texSubImage2D taking Image.
  • Safari not obeying the flipY parameter to texImage2D or texSubImage2D taking Image.
  • Safari not obeying the premultipyAlpha parameter to texImage2D or texSubImage2D taking Image.

Added new test verifying the behavior of texImage2D and
texSubImage2D and the flipY parameter. The premultiplyAlpha
parameter can not be tested yet as the implementation is not yet
spec compliant. This will be fixed in a follow-on bug.

Ran all WebGL demos in demo repository on Safari and Chromium;
textures are now the right way up in both browsers, and
transparent textures in Particles demo now look correct in Safari.

  • fast/canvas/webgl/resources/red-green.png: Added.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image-expected.txt: Added.
  • fast/canvas/webgl/tex-image-and-sub-image-2d-with-image.html: Added.

2010-02-17 Kenneth Russell <kbr@google.com>

Reviewed by Oliver Hunt.

Refactor texImage2D and texSubImage2D taking Image to use common code
https://bugs.webkit.org/show_bug.cgi?id=34458

Merged the Safari and Chromium code which extracts the data from
Image objects into common entry points on GraphicsContext3D. This
immediately fixes the following three problems:

  • Chromium not implementing texSubImage2D taking Image.
  • Safari not obeying the flipY parameter to texImage2D or texSubImage2D taking Image.
  • Safari not obeying the premultipyAlpha parameter to texImage2D or texSubImage2D taking Image.

Added new test verifying the behavior of texImage2D and
texSubImage2D and the flipY parameter. The premultiplyAlpha
parameter can not be tested yet as the implementation is not yet
spec compliant. This will be fixed in a follow-on bug.

Ran all WebGL demos in demo repository on Safari and Chromium;
textures are now the right way up in both browsers, and
transparent textures in Particles demo now look correct in Safari.

Test: fast/canvas/webgl/tex-image-and-sub-image-2d-with-image.html

  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/graphics/GraphicsContext3D.cpp: Added. (WebCore::GraphicsContext3D::extractImageData): (WebCore::GraphicsContext3D::processImageData): (WebCore::GraphicsContext3D::premultiplyAlpha): (WebCore::GraphicsContext3D::unmultiplyAlpha):
  • platform/graphics/GraphicsContext3D.h: (WebCore::GraphicsContext3D::):
  • platform/graphics/cg/GraphicsContext3DCG.cpp: Added. (WebCore::GraphicsContext3D::getImageData):
  • platform/graphics/mac/GraphicsContext3DMac.cpp: (WebCore::GraphicsContext3D::texImage2D): (WebCore::GraphicsContext3D::texSubImage2D):
  • platform/graphics/skia/GraphicsContext3DSkia.cpp: Added. (WebCore::GraphicsContext3D::getImageData):

2010-02-17 Kenneth Russell <kbr@google.com>

Reviewed by Oliver Hunt.

Refactor texImage2D and texSubImage2D taking Image to use common code
https://bugs.webkit.org/show_bug.cgi?id=34458

Merged the Safari and Chromium code which extracts the data from
Image objects into common entry points on GraphicsContext3D. This
immediately fixes the following three problems:

  • Chromium not implementing texSubImage2D taking Image.
  • Safari not obeying the flipY parameter to texImage2D or texSubImage2D taking Image.
  • Safari not obeying the premultipyAlpha parameter to texImage2D or texSubImage2D taking Image.

Added new test verifying the behavior of texImage2D and
texSubImage2D and the flipY parameter. The premultiplyAlpha
parameter can not be tested yet as the implementation is not yet
spec compliant. This will be fixed in a follow-on bug.

Ran all WebGL demos in demo repository on Safari and Chromium;
textures are now the right way up in both browsers, and
transparent textures in Particles demo now look correct in Safari.

  • src/GraphicsContext3D.cpp: (WebCore::GraphicsContext3D::texImage2D): (WebCore::GraphicsContext3D::texSubImage2D):
12:08 Changeset [54906] by eric@webkit.org

2010-02-17 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] GraphicsLayer: support perspective and 3D transforms
https://bugs.webkit.org/show_bug.cgi?id=34960

  • WebKit.pri: added appropriate define: ENABLED_3D_RENDERING

2010-02-17 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] GraphicsLayer: support perspective and 3D transforms
https://bugs.webkit.org/show_bug.cgi?id=34960

New tests: http://webkit.org/blog-files/3d-transforms/perspective-by-example.html

  • platform/graphics/qt/GraphicsLayerQt.cpp: (WebCore::GraphicsLayerQtImpl::updateTransform): (WebCore::GraphicsLayerQtImpl::setBaseTransform): (WebCore::GraphicsLayerQtImpl::computeTransform): (WebCore::GraphicsLayerQtImpl::flushChanges): (WebCore::TransformAnimationQt::~TransformAnimationQt):
11:51 Changeset [54905] by pkasting@chromium.org

Unreviewed, build fix.

Fix crashes due to an omitted line in r54839.

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::decodingFailed):

11:28 Changeset [54904] by eric@webkit.org

2010-02-17 Alok Priyadarshi <alokp@chromium.org>

Reviewed by Ariya Hidayat.

Bug 34900: Implement accelerated compositing for chromium.
https://bugs.webkit.org/show_bug.cgi?id=34900

Do not exclude files needed for accelerated compositing. In fact there is no need to exclude these files.
These files are already guarded with WTF_USE_ACCELERATED_COMPOSITING flag.

  • WebCore.gyp/WebCore.gyp: Removed GraphicsLayer.cpp, RenderLayerBacking.cpp, and RenderLayerCompositor.cpp from excluded list.

2010-02-17 Alok Priyadarshi <alokp@chromium.org>

Reviewed by Ariya Hidayat.

Bug 34900: Implement accelerated compositing for chromium.
https://bugs.webkit.org/show_bug.cgi?id=34900

  • features.gypi: Added WTF_USE_ACCELERATED_COMPOSITING flag.
11:08 Changeset [54903] by jianli@chromium.org

[chromium] Remove the obsolete chromium interface for handling DownloadURL.
https://bugs.webkit.org/show_bug.cgi?id=34982

Reviewed by Darin Fisher.

WebCore:

  • platform/chromium/ChromiumDataObject.cpp:

(WebCore::ChromiumDataObject::clear):
(WebCore::ChromiumDataObject::hasData):
(WebCore::ChromiumDataObject::ChromiumDataObject):

  • platform/chromium/ChromiumDataObject.h:
  • platform/chromium/ClipboardChromium.cpp:

(WebCore::ClipboardChromium::setData):

WebKit/chromium:

  • public/WebDragData.h:
  • src/WebDragData.cpp:
11:06 Changeset [54902] by eric@webkit.org

2010-02-17 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Ariya Hidayat.

Make possible Qt DRT to get total number of pages to be printed

LayoutTests:

printing/numberOfPages.html

[Qt] DRT: Get total number of pages to be printed
https://bugs.webkit.org/show_bug.cgi?id=34955

  • Api/qwebframe.cpp: (qt_drt_numberOfPages): (qt_drt_evaluateScriptInIsolatedWorld):

2010-02-17 Diego Gonzalez <diego.gonzalez@openbossa.org>

Reviewed by Ariya Hidayat.

Make possible Qt DRT to get total number of pages to be printed

LayoutTests:

printing/numberOfPages.html

[Qt] DRT: Get total number of pages to be printed
https://bugs.webkit.org/show_bug.cgi?id=34955

  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::numberOfPages):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
11:02 Changeset [54901] by mitz@apple.com

<rdar://problem/7645569> REGRESSION (r51324): Incorrect marker rects for blocks that span multiple columns

Reviewed by Darin Adler.

  • manual-tests/match-marker-rects.html: Added.
  • rendering/InlineTextBox.cpp:

(WebCore::InlineTextBox::paintTextMatchMarker): Use the text renderer rather
than its ancestor block for the local-to-absolute transformation.
(WebCore::InlineTextBox::computeRectForReplacementMarker): Ditto.

10:33 Changeset [54900] by xan@webkit.org

WebKit/gtk:

2010-02-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Rename 'enable-java' setting to 'enable-java-applet', since it
only controls whether <applet> is supported or not instead of
whether all Java content is supported or not.

  • webkit/webkitwebsettings.cpp: (webkit_web_settings_class_init): (webkit_web_settings_set_property): (webkit_web_settings_get_property): (webkit_web_settings_copy):
  • webkit/webkitwebview.cpp: (DNDContentsRequest::webkit_web_view_update_settings): (DNDContentsRequest::webkit_web_view_settings_notify):

WebKitTools:

2010-02-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Update to use new property name.

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues):
09:49 Changeset [54899] by eric@webkit.org

2010-02-17 Julien Chaffraix <jchaffraix@webkit.org>

Reviewed by Ariya Hidayat.

Remove some warnings seen when building Qt
https://bugs.webkit.org/show_bug.cgi?id=35017

Using a machine without the needed tools to build WebKit leads to
several errors and warnings.

  • Scripts/webkitdirs.pm: Refactored the code testing the command's presence into a commandExists routine. While doing so removed, stderr output as it usually does not give anything more than our message. Also added a Qt check for qmake that was missing.
07:47 Changeset [54898] by zimmermann@webkit.org

2010-02-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Try to turn windows slaves again, by skipping two websocket tests that fail reliable.

  • platform/win/Skipped:
07:17 Changeset [54897] by kov@webkit.org

Typo in test name

07:14 Changeset [54896] by ossy@webkit.org

Rubber-stamped by Tor Arne Vestbø.

[Qt] Add platform specific expected files for new tests pass in fast/css.

Rendertree results compared to Mac expected files with --ignore-metrics,
pixel results compared to Mac png files.

fast/css/font-face-opentype.html introduced in r54855.
fast/css/inline-element-line-break.html introduced in r54544.
fast/css/pseudo-element-line-break.html introduced in r54544.

  • platform/qt/fast/css/font-face-opentype-expected.txt: Added.
  • platform/qt/fast/css/inline-element-line-break-expected.txt: Added.
  • platform/qt/fast/css/pseudo-element-line-break-expected.txt: Added.
07:09 Changeset [54895] by zimmermann@webkit.org

2010-02-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Try to turn SnowLeopard slave green again. Skipping media/video-load-networkState.html - already filed a bug last year.

  • platform/mac-snowleopard/Skipped:
07:05 Changeset [54894] by zimmermann@webkit.org

2010-02-17 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Try to turn Tiger slave green again. Skipping media/video-display-aspect-ratio.html - already skipped on the other mac variants & win.

  • platform/mac-tiger/Skipped:
06:48 Changeset [54893] by kov@webkit.org

Skipping new test that does not pass on Qt.

06:30 Changeset [54892] by kov@webkit.org

2010-02-17 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Does not send an Accept header for subresources, causing some sites to break
https://bugs.webkit.org/show_bug.cgi?id=33242

Set */* as the Accept header when downloading resources
that did not set an Accept header. This behaviour is similar to
the one adopted by Chromium.

Test: http/tests/misc/image-checks-for-accept.html

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::startHttp):
06:24 Changeset [54891] by jorlow@chromium.org

Fix a mistake I just committed to the change log.

Note that the last svn commit message should have read like this:

2010-02-17 Marcus Bulach <bulach@chromium.org>

Reviewed by Jeremy Orlow.

Fixes initialization order of members for GeolocationServiceChromium.
https://bugs.webkit.org/show_bug.cgi?id=35034

  • platform/chromium/GeolocationServiceChromium.cpp:
06:20 Changeset [54890] by jorlow@chromium.org

2

06:08 Changeset [54889] by xan@webkit.org

2010-02-17 Xan Lopez <xlopez@igalia.com>

Rubber-stamped by Gustavo Noronha.

Disable Java by default in DRT.

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues):
05:46 Changeset [54888] by xan@webkit.org

2010-02-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

[Linux] Webkit incompatible with Java plugins
https://bugs.webkit.org/show_bug.cgi?id=24912

Implement FrameLoaderClient::createJavaAppletWidget.

  • WebCoreSupport/FrameLoaderClientGtk.cpp: (WebKit::FrameLoaderClient::createJavaAppletWidget):
05:46 Changeset [54887] by xan@webkit.org

WebCore:

2010-02-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

[Linux] Webkit incompatible with Java plugins
https://bugs.webkit.org/show_bug.cgi?id=24912

Resolve symlinks before trying to load plugins as modules, since
GModule won't do it.

Based on original work by Gustavo Noronha.

  • plugins/gtk/PluginPackageGtk.cpp: (WebCore::PluginPackage::load):

JavaScriptCore:

2010-02-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

[Linux] Webkit incompatible with Java plugins
https://bugs.webkit.org/show_bug.cgi?id=24912

Add support for GFile to GOwnPtr.

Based on original work by Gustavo Noronha.

  • wtf/gtk/GOwnPtr.cpp: (WTF::GFile):
  • wtf/gtk/GOwnPtr.h:
05:41 Changeset [54886] by xan@webkit.org

2010-02-17 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

[Linux] Webkit incompatible with Java plugins
https://bugs.webkit.org/show_bug.cgi?id=24912

Add a WebKitWebSetting to enable/disable the Java plugin support.

  • webkit/webkitwebsettings.cpp: (webkit_web_settings_class_init): (webkit_web_settings_set_property): (webkit_web_settings_get_property): (webkit_web_settings_copy):
  • webkit/webkitwebview.cpp: (webkit_web_view_update_settings): (webkit_web_view_settings_notify):
05:39 Changeset [54885] by kov@webkit.org

2010-02-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by NOBODY (OOPS!).

Protect the resource loader object from disappearing during
parseDataUrl.

Tested by testdownload API test.

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::parseDataUrl):
05:12 Changeset [54884] by kov@webkit.org

Skip a number of new tests

04:00 Changeset [54883] by eric@webkit.org

2010-02-17 Marcus Bulach <bulach@chromium.org>

Reviewed by Jeremy Orlow.

Implements GeolocationServices for Chromium.
https://bugs.webkit.org/show_bug.cgi?id=32068

This is part of implementing Geolocation framework for Chromium. Existing layout tests should pass.

  • WebCore.gypi:
  • page/Geolocation.h:
  • platform/GeolocationService.h:
02:49 Changeset [54882] by philn@webkit.org

2010-02-17 Philippe Normand <pnormand@igalia.com>

Reviewed by Xan Lopez.

Missing property warning after r54873
https://bugs.webkit.org/show_bug.cgi?id=35023

Add a new WebKitWebSettings setting, 'enable-file-access-from-file-uris', set to
FALSE by default, that when enabled will assign each file:// URI
their own security domain.

  • webkit/webkitwebsettings.cpp: (webkit_web_settings_class_init): (webkit_web_settings_set_property): (webkit_web_settings_get_property): (webkit_web_settings_copy):
02:21 Changeset [54881] by eric@webkit.org

2010-02-17 Steve Block <steveblock@google.com>

Reviewed by Ariya Hidayat.

Adds missing platform and feature guards to V8 bindings
https://bugs.webkit.org/show_bug.cgi?id=34987

No new tests, build fix only.

  • bindings/v8/V8Proxy.cpp: Modified. Adds CHROMIUM guards and uses PlatformBridge in place of ChromiumBridge
  • bindings/v8/V8Proxy.h: Modified. Adds CHROMIUM guards and uses PlatformBridge in place of ChromiumBridge
  • bindings/v8/custom/V8DocumentCustom.cpp: Modified. Adds XPATH guards
02:04 Changeset [54880] by eric@webkit.org

2010-02-17 Steve Block <steveblock@google.com>

Reviewed by Ariya Hidayat.

Include WebCore's npruntime.h for Android in V8 bindings
https://bugs.webkit.org/show_bug.cgi?id=35002

Currently, the V8 bindings include bindings/npruntime.h, which is a
Chromium-specific file outside of the WebKit tree.

No new tests, build fix only.

  • bindings/v8/NPV8Object.cpp:
  • bindings/v8/NPV8Object.h:
  • bindings/v8/V8NPObject.h:
  • bindings/v8/V8NPUtils.h:
  • bindings/v8/npruntime_impl.h:
  • bindings/v8/npruntime_priv.h:
00:38 Changeset [54879] by mjs@apple.com

Not reviewed - demo.

Made some examples of using <details> for table descriptions.

  • demos/hover-summary: Added.
  • demos/hover-summary/details.css: Added.
  • demos/hover-summary/details.js: Added.

(summaryClickListener):
():
(window.onload):

  • demos/hover-summary/example1.html: Added.
  • demos/hover-summary/example2.html: Added.
  • demos/hover-summary/horizontal-triangle.png: Added.
  • demos/hover-summary/vertical-triangle.png: Added.
00:37 Changeset [54878] by philn@webkit.org

2010-02-15 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GStreamer] Should handle BUFFERING messages
https://bugs.webkit.org/show_bug.cgi?id=30004

  • configure.ac: Bump gstreamer -core/-plugins-base requirements to 0.10.25 which is the minimum required version for on-disk buffering.

2010-01-07 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GStreamer] Should handle BUFFERING messages
https://bugs.webkit.org/show_bug.cgi?id=30004

Draw the buffering status in the media controls. The timebar is
now 2 pixels shorter so dragging it at same absolute position than
before produces a seek at a new position in the media, this
explains the rebaselining of the controls-drag-timebar test.

  • platform/gtk/media/controls-after-reload-expected.txt:
  • platform/gtk/media/controls-drag-timebar-expected.txt:
  • platform/gtk/media/controls-strict-expected.txt:
  • platform/gtk/media/controls-styling-expected.txt:
  • platform/gtk/media/video-controls-rendering-expected.txt: Re-baselined due to 1px left/right border added in controls timeline.

2010-01-07 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[GStreamer] Should handle BUFFERING messages
https://bugs.webkit.org/show_bug.cgi?id=30004

Initial support for on-disk buffering of videos. This works only
for Quicktime and flv though.

  • css/mediaControlsGtk.css:
  • platform/gtk/RenderThemeGtk.cpp: (WebCore::RenderThemeGtk::paintMediaSliderTrack): Draw the buffering status in the media controls.
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: (WebCore::mediaPlayerPrivateMessageCallback): Defer buffering messages handling to processBufferingStats(). (WebCore::bufferingTimeoutCallback): Closure called periodically during the on-disk buffering process. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): New instance variables and create playbin2 here instead of doing it in load(). (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate): New instance variables. (WebCore::MediaPlayerPrivate::load): Simply set uri on playbin2 instead of creating the pipeline and setting uri all together. (WebCore::MediaPlayerPrivate::processBufferingStats): Start a new timeout source if the player is starting on-disk buffering. (WebCore::MediaPlayerPrivate::queryBufferingStats): Method called 200ms during on-disk buffering to update the maxTimeLoaded and few other private variables. (WebCore::MediaPlayerPrivate::maxTimeSeekable): (WebCore::MediaPlayerPrivate::maxTimeLoaded): (WebCore::MediaPlayerPrivate::bytesLoaded): Fixed implementations regarding buffering. (WebCore::MediaPlayerPrivate::totalBytes): Improved logging. (WebCore::MediaPlayerPrivate::updateStates): Start playback if it was internally paused at beginning of on-disk buffering and set ready/network states depending on the state of the on-disk buffering process. (WebCore::MediaPlayerPrivate::didEnd): Emit durationChanged. (WebCore::MediaPlayerPrivate::setAutobuffer): Edit playbin2 flags property depending on autoBuffer value. (WebCore::MediaPlayerPrivate::createGSTPlayBin): Don't set uri there, it is now done in load().
  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: New methods and instance variables.
00:17 Changeset [54877] by bweinstein@apple.com

Build fix by adding a return statement.

00:04 Changeset [54876] by xan@webkit.org

2010-02-17 Xan Lopez <xlopez@igalia.com>

Skip tests requiring new results.

  • platform/gtk/Skipped:

02/16/10:

23:56 Changeset [54875] by bweinstein@apple.com

Touch WebKit.idl to fix the build

23:38 Changeset [54874] by cjerdonek@webkit.org

Some minor check-webkit-style code clean-ups. This revision
contains no new functionality.

Reviewed by Shinichiro Hamaji.

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

  • Scripts/check-webkit-style:
    • Replaced the call to webkit_argument_defaults() with a default parameter in the ArgumentParser constructor.
  • Scripts/webkitpy/style/checker.py:
    • Removed the WEBKIT prefix from the default global variables.
    • Prefixed several of the global variables with an underscore to reflect that they are used internally.
    • Renamed _DEFAULT_FILTER_RULES to _BASE_FILTER_RULES.
    • Addressed a FIXME by changing the _PATH_RULES_SPECIFIER configuration from list-tuple pairs to list-list pairs.
    • Renamed style_categories() to _all_categories().
    • Renamed webkit_argument_defaults() to _check_webkit_style_defaults().
    • Renamed the ArgumentDefaults class to DefaultCommandOptionValues.
    • In the ArgumentParser class--
      • Renamed the doc_print attribute to stderr_write.
      • Other minor updates.
  • Scripts/webkitpy/style/checker_unittest.py:
    • Updated the import statements and unit test classes as necessary.
    • Added assertions to test _PATH_RULES_SPECIFIER more fully.
  • Scripts/webkitpy/style/error_handlers_unittest.py:
    • Updated the unit test classes as necessary.
    • Changed StyleErrorHandlerTestBase to store a list of error messages rather than just the last one.
  • Scripts/webkitpy/style/filter.py:
    • Altered FilterConfiguration._path_rules_from_path() to convert the path_rules list to a tuple.
  • Scripts/webkitpy/style/filter_unittest.py:
    • Updated the unit tests to reflect the change from tuples to lists in the _PATH_RULES_SPECIFIER configuration variable.
23:32 Changeset [54873] by eric@webkit.org

2010-02-16 Chris Evans <cevans@chromium.org>

Reviewed by Adam Barth.

Add a new setting which gives the option of assigning every file:///
to its own unique domain.

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

Test: Pending in forthcoming separate change due to non-trivial
dependencies.

  • dom/Document.cpp: (WebCore::Document::initSecurityContext): Place file:/// URI documents into their own unique domains if the new setting requires it.
  • page/Settings.h:
  • page/Settings.cpp: (WebCore::Settings::setAllowFileAccessFromFileURLs): Simple setter.
  • page/SecurityOrigin.h:
  • page/SecurityOrigin.cpp: (WebCore::SecurityOrigin::makeUnique): Add simple ability to force an origin to be considered unique.
23:12 Changeset [54872] by eric@webkit.org

2010-02-16 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: drosera/demo.js not syntax highlighted correctly.

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

  • inspector/front-end/SourceTokenizer.js: (WebInspector.SourceTokenizer.Registry): (WebInspector.SourceTokenizer.Registry.prototype.getTokenizer):
22:56 Changeset [54871] by eric@webkit.org

2010-02-16 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: prefer smooth scrolling to instant highlight.

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

21:57 Changeset [54870] by mrowe@apple.com

Fix a handful of other leaks seen on the buildbot.

Patch by Gavin Barraclough <barraclough@apple.com> on 2010-02-16
Reviewed by Mark Rowe.

  • runtime/UStringImpl.h:

(JSC::UStringOrRopeImpl::deref): Delegate through to the subclass version of deref to ensure that
the correct cleanup takes place. This function previously featured some code that attempted to
skip deletion of static UStringImpl's. Closer inspection revealed that it was in fact equivalent
to "if (false)", meaning that UStringImpl's which had their final deref performed via this function
were leaked.

21:26 Changeset [54869] by bweinstein@apple.com

Forgot a .get() because this is an OwnPtr

20:55 Changeset [54868] by bweinstein@apple.com

Try using m_qtVideoLayer instead of platformLayer() to fix the build

20:21 Changeset [54867] by bweinstein@apple.com

Build fix when Accelerated Compositing is on

20:06 Changeset [54866] by mrowe@apple.com

Fix a handful of leaks seen on the buildbot.

Reviewed by Gavin Barraclough.

  • runtime/UStringImpl.h:

(JSC::UStringOrRopeImpl::deref): Call URopeImpl::destructNonRecursive rather than delete
to ensure that the rope's fibers are also destroyed.

19:54 Changeset [54865] by eric@webkit.org

2010-02-16 Yael Aharon <yael.aharon@nokia.com>

Reviewed by Nikolas Zimmermann.

SVG not rendered as background-image from data URI
https://bugs.webkit.org/show_bug.cgi?id=33630

  • platform/mac/svg/css/background-image-svg-expected.checksum: Added.
  • platform/mac/svg/css/background-image-svg-expected.png: Added.
  • platform/qt/svg/css/background-image-svg-expected.checksum: Added.
  • platform/qt/svg/css/background-image-svg-expected.png: Added.
  • svg/css/background-image-svg.html: Added.
  • svg/css/background-image-svg-expected.txt: Added.

2010-02-16 Yael Aharon <yael.aharon@nokia.com>

Reviewed by Nikolas Zimmermann.

SVG not rendered as background-image from data URI
https://bugs.webkit.org/show_bug.cgi?id=33630

When the background image is an SVG image, and it is smaller than the area
it is supposed to fill, we were using renderSubTreeToImage to draw it.
That call was not going through all the drawing phases, and so the SVG itself
would not be drawn.

Test: svg/css/background-image-svg.html

  • svg/graphics/SVGImage.cpp: (WebCore::SVGImage::nativeImageForCurrentFrame):
19:37 Changeset [54864] by eric@webkit.org

2010-02-16 Bryan Yeung <bryeung@chromium.org>

Reviewed by Nikolas Zimmermann.

Remove the bounds on stroke width and miter for the skia platform.
https://bugs.webkit.org/show_bug.cgi?id=34954

Test: svg/custom/stroke-width-large.svg

  • platform/graphics/skia/PlatformContextSkia.cpp: (PlatformContextSkia::setupPaintForStroking):
19:27 Changeset [54863] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Correct typo in test name in Skipped list. Should turn SL slave green again.

  • platform/mac-snowleopard/Skipped:
19:25 Changeset [54862] by bweinstein@apple.com

Add a missing semicolon

19:21 Changeset [54861] by eric@webkit.org

2010-02-16 James Hawkins <jhawkins@chromium.org>

Reviewed by Eric Seidel.

[Chromium] Remove calls to releaseRef when passing PassRefPtrs to base
classes. releaseRef releases the original pointer without decreasing
the reference count, and the base class constructor increases the
reference count, leading to a leak.

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

  • src/WebDocument.cpp: (WebKit::WebDocument::WebDocument):
  • src/WebElement.cpp: (WebKit::WebElement::WebElement):
  • src/WebFormElement.cpp: (WebKit::WebFormElement::WebFormElement):
  • src/WebInputElement.cpp: (WebKit::WebInputElement::WebInputElement):
19:10 Changeset [54860] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Attempt to fix win slave. Skip same tests failing on SL, add bug references to skipped list.

  • platform/mac-snowleopard/Skipped:
  • platform/win/Skipped:
19:05 Changeset [54859] by eric@webkit.org

2010-02-16 Bryan Yeung <bryeung@chromium.org>

Reviewed by Nikolas Zimmermann.

Add a new layout test for large stroke widths in SVG.
This regression tests a bug in the Skia platform where the width was
limited to 512.

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

  • platform/mac/svg/custom/stroke-width-large-expected.checksum: Added.
  • platform/mac/svg/custom/stroke-width-large-expected.png: Added.
  • platform/mac/svg/custom/stroke-width-large-expected.txt: Added.
  • svg/custom/stroke-width-large.svg: Added.

2010-02-16 Bryan Yeung <bryeung@chromium.org>

Reviewed by Nikolas Zimmermann.

Remove the bounds on stroke width and miter for the skia platform.
https://bugs.webkit.org/show_bug.cgi?id=34954

Test: svg/custom/stroke-width-large.svg

  • platform/graphics/skia/PlatformContextSkia.cpp: (PlatformContextSkia::setupPaintForStroking):
18:49 Changeset [54858] by eric@webkit.org

2010-02-16 MORITA Hajime <morrita@gmail.com>

Reviewed by Nikolas Zimmermann.

REGRESSION: SVG text disappaears after double click
https://bugs.webkit.org/show_bug.cgi?id=34880

  • platform/mac/svg/text/selection-doubleclick-expected.checksum: Added.
  • platform/mac/svg/text/selection-doubleclick-expected.png: Added.
  • platform/mac/svg/text/selection-doubleclick-expected.txt: Added.
  • platform/mac/svg/text/selection-tripleclick-expected.checksum: Added.
  • platform/mac/svg/text/selection-tripleclick-expected.png: Added.
  • platform/mac/svg/text/selection-tripleclick-expected.txt: Added.
  • svg/text/selection-doubleclick.svg: Added.
  • svg/text/selection-tripleclick.svg: Added.

2010-02-16 MORITA Hajime <morrita@gmail.com>

Reviewed by Nikolas Zimmermann.

REGRESSION: SVG text disappaears after double click
https://bugs.webkit.org/show_bug.cgi?id=34880

Tests: svg/text/selection-doubleclick.svg

svg/text/selection-tripleclick.svg

  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::mayHaveSelection): Use InlineTextBox::selectionStartEnd() instead of RenderObject::selectionStartEnd() because latter may span multiple comparing startPos and endPos is irrelevant in some cases. former selectionStartEnd() is for single line and comparing startPos and endPos will make sense.
18:29 Changeset [54857] by ariya@webkit.org

2010-02-16 Ariya Hidayat <ariya.hidayat@gmail.com>

Reviewed by Simon Hausmann.

[Qt] Allow scrolling to an anchor programmatically.
https://bugs.webkit.org/show_bug.cgi?id=29856

  • Api/qwebframe.cpp: (QWebFrame::scrollToAnchor): New API function.
  • Api/qwebframe.h:
  • tests/qwebframe/tst_qwebframe.cpp: New tests for scrollToAnchor().
18:25 Changeset [54856] by jberlin@webkit.org

Inspector should display Array lengths in the property lists.
https://bugs.webkit.org/show_bug.cgi?id=20695

Reviewed by Timothy Hatcher.

  • inspector/front-end/InjectedScript.js:

(injectedScriptConstructor):
For objects of type 'array' (which includes Arrays, NodeLists, and HTMLCollections), make the length of the object available via propertyLength on the proxy object.

  • inspector/front-end/ObjectPropertiesSection.js:

(WebInspector.ObjectPropertyTreeElement.prototype.update):
For properties that have propertyLength defined, append it to the displayed description.

18:16 Changeset [54855] by eric@webkit.org

2010-02-16 Yusuke Sato <yusukes@chromium.org>

Reviewed by Dimitri Glazkov.

[Chromium] OpenType font with CFF glyphs is not handled correctly on Windows XP
https://bugs.webkit.org/show_bug.cgi?id=34735

  • fast/css/font-face-opentype.html: Added.
  • fast/css/resources/Ahem.otf: Added. Ahem font which has CFF glyphs, converted from Ahem.ttf by FontForge (http://fontforge.sourceforge.net/).
  • platform/mac/fast/css/font-face-opentype-expected.checksum: Added.
  • platform/mac/fast/css/font-face-opentype-expected.png: Added.
  • platform/mac/fast/css/font-face-opentype-expected.txt: Added.

2010-02-16 Yusuke Sato <yusukes@chromium.org>

Reviewed by Dimitri Glazkov.

[Chromium] OpenType font with CFF glyphs is not handled correctly on Windows XP
https://bugs.webkit.org/show_bug.cgi?id=34735

Use 0xFFFF as invalidGlyph when fontData is a OpenType font with CFF glyphs.

Test: fast/css/font-face-opentype.html

  • platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp: (WebCore::fillBMPGlyphs):
18:11 Changeset [54854] by ariya@webkit.org

2010-02-16 Ariya Hidayat <ariya.hidayat@gmail.com>

Reviewed by Laszlo Gombos.

Fix building with Qt < 4.6.
https://bugs.webkit.org/show_bug.cgi?id=34885

  • Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::updateResizesToContentsForPage):
17:51 Changeset [54853] by dumi@chromium.org

Change quota-tracking.html to open databases only as they're
needed. Otherwise, open databases end up using more space from
this origin than the test expects.

Reviewed by Simon Fraser.

  • storage/quota-tracking.html:
17:42 Changeset [54852] by simon.fraser@apple.com

2010-02-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Nikolas Zimmermann.

Make this test more robust to slow-loading media.

  • media/video-load-networkState.html:
17:33 Changeset [54851] by darin@apple.com
  • page/MediaCanStartListener.h: Fixed license.
17:26 Changeset [54850] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Rubber-stamped by Simon Fraser.

Skip svg/zoom/(page|text)/zoom-coords-viewattr-01-b.svg on SnowLeopard.
svg/W3C-SVG-1.1/coords-viewattr* fail on SL and are already Skipped, seems related to entity parsing, not SVG.

  • platform/mac-snowleopard/Skipped:
17:23 Changeset [54849] by darin@apple.com

2010-02-16 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Generalize delayed plug-in start for background tabs for use for other media
https://bugs.webkit.org/show_bug.cgi?id=34981

  • WebView.cpp: (WebView::setCanStartPlugins): Change to call setCanStartMedia. In a later patch we can change the of the public function in the IDL file too, but for now this should be enough.

2010-02-16 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Generalize delayed plug-in start for background tabs for use for other media
https://bugs.webkit.org/show_bug.cgi?id=34981

  • WebView/WebHTMLView.mm: (-[WebHTMLView viewWillMoveToWindow:]): Added comment. (-[WebHTMLView viewDidMoveToWindow]): Ditto.
  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]): Call setCanStartMedia right away so that if this view is not in a window, it will not start any media. (-[WebView viewWillMoveToWindow:]): Call setCanStartMedia(false) when moving to a window of nil. (-[WebView viewDidMoveToWindow]): Call setCanStartMedia(true) when moved to a window that is non-nil.

2010-02-16 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Generalize delayed plug-in start for background tabs for use for other media
https://bugs.webkit.org/show_bug.cgi?id=34981

Also did some simple cleanup of HTMLMediaElement to get ready to make it
a client of the same mechanism.

  • WebCore.base.exp: Added Page::setCanStartMedia and resorted.
  • WebCore.xcodeproj/project.pbxproj: Added MediaCanStartListener.h.
  • html/HTMLAudioElement.h: Added an implementation of isVideo since that is now a pure virtual function in HTMLMediaElement. Also made tagPriority private.
  • html/HTMLMediaElement.h: Made it clearer that HTMLMediaElement is an abstract base class by making its constructor protected and making the isVideo function a pure virtual function.
  • page/Page.cpp: (WebCore::Page::Page): Updated for name change from m_canStartPlugins to m_canStartMedia. (WebCore::Page::addMediaCanStartListener): Renamed and added an assertion. (WebCore::Page::removeUnstartedMedia): Ditto. (WebCore::Page::setCanStartMedia): Renamed plugin to media and moved the code here from PageWin.cpp. The main change from the one in PageWin.cpp is that this function calls mediaCanStart rather than explicitly calling a combination of start and dispatchDidFailToStartPlugin on a PluginView.
  • page/Page.h: Re-sorted forward class declarations. Renamed the plugin starting functions to media starting names and changed types from PluginView to MediaCanStartListener.
  • page/MediaCanStartListener.h: Added.
  • page/win/PageWin.cpp: Moved setCanStartPlugins to the platform-independent Page.cpp file so it can be used for more than just Windows plug-ins.
  • plugins/PluginView.cpp: Sorted includes. (WebCore::PluginView::startOrAddToUnstartedList): Use addMediaCanStartListener. (WebCore::PluginView::mediaCanStart): Added. Called when the page decides that media can start. Contains the code that used to be in Page::setCanStartPlugins. (WebCore::PluginView::removeFromUnstartedListIfNecessary): Use removeMediaCanStartListener.
  • plugins/PluginView.h: Adopted MediaCanStartListener.
16:50 Changeset [54848] by simon.fraser@apple.com

2010-02-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein.

https://bugs.webkit.org/show_bug.cgi?id=34999
Compositing layers inside overflow:scroll divs are not always updated on scrolling

When RenderLayer::scrollToOffset() updates compositing layer positions, it needs
to start updating at its stacking context rather than just its compositing ancestor.
The stacking context is guaranteed to contain all descendants of the overflow
layer, including those that are not direct descendants of the overflow layer in stacking
(and therefore compositing) order.

Test: compositing/overflow/scroll-ancestor-update.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::scrollToOffset):
16:25 Changeset [54847] by barraclough@apple.com

Disable warnings preventing use of anonymous structs/onions -
don't take all my fun toys away, these are useful & awesome!

Reviewed by NOBODY (Build fix).

  • win/tools/vsprops/common.vsprops:
16:09 Changeset [54846] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Rubber-stamped by Dirk Schulze.

Add missing .checksum file in platform/mac/svg/zoom/page. All parts of the original patch for bug 14004 have been landed.

  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.checksum: Added.
16:08 Changeset [54845] by mitz@apple.com

Allow FloatRect::center() to return fractional coordinates. It was
mistakenly converting to integers.

Reviewed by Simon Fraser.

  • platform/graphics/FloatRect.h:

(WebCore::FloatRect::center):

16:05 Changeset [54844] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by David Hyatt.

SVG units don't stay consistently sized on zoom
https://bugs.webkit.org/show_bug.cgi?id=14004

  • platform/mac/svg/zoom: Added.
  • platform/mac/svg/zoom/page: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-foreignObject-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-foreignObject-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-foreignObject-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.txt: Added.
  • platform/mac/svg/zoom/text: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.txt: Added.
  • svg/zoom: Added.
  • svg/zoom/NOTE: Added.
  • svg/zoom/page: Added.
  • svg/zoom/page/absolute-sized-document-no-scrollbars.svg: Added.
  • svg/zoom/page/absolute-sized-document-scrollbars.svg: Added.
  • svg/zoom/page/relative-sized-document-scrollbars.svg: Added.
  • svg/zoom/page/zoom-coords-viewattr-01-b.svg: Added.
  • svg/zoom/page/zoom-foreignObject.svg: Added.
  • svg/zoom/page/zoom-hixie-mixed-008.xml: Added.
  • svg/zoom/page/zoom-hixie-mixed-009.xml: Added.
  • svg/zoom/page/zoom-hixie-rendering-model-004.xhtml: Added.
  • svg/zoom/page/zoom-svg-float-border-padding.xml: Added.
  • svg/zoom/resources: Added.
  • svg/zoom/resources/testPageZoom.js: Added.
  • svg/zoom/resources/testTextZoom.js: Added.
  • svg/zoom/text: Added.
  • svg/zoom/text/absolute-sized-document-no-scrollbars.svg: Added.
  • svg/zoom/text/absolute-sized-document-scrollbars.svg: Added.
  • svg/zoom/text/relative-sized-document-scrollbars.svg: Added.
  • svg/zoom/text/zoom-coords-viewattr-01-b.svg: Added.
  • svg/zoom/text/zoom-foreignObject.svg: Added.
  • svg/zoom/text/zoom-hixie-mixed-008.xml: Added.
  • svg/zoom/text/zoom-hixie-mixed-009.xml: Added.
  • svg/zoom/text/zoom-hixie-rendering-model-004.xhtml: Added.
  • svg/zoom/text/zoom-svg-float-border-padding.xml: Added.
16:01 Changeset [54843] by barraclough@apple.com

https://bugs.webkit.org/show_bug.cgi?id=34964
Leaks tool reports false memory leaks due to Rope implementation.

Reviewed by Oliver Hunt.

JavaScriptCore:

A rope is a recursive data structure where each node in the rope holds a set of
pointers, each of which may reference either a string (in UStringImpl form) or
another rope node. A low bit in each pointer is used to distinguish between
rope & string elements, in a fashion similar to the recently-removed
PtrAndFlags class (see https://bugs.webkit.org/show_bug.cgi?id=33731 ). Again,
this causes a problem for Leaks – refactor to remove the magic pointer
mangling.

Move Rope out from JSString.h and rename to URopeImpl, to match UStringImpl.
Give UStringImpl and URopeImpl a common parent class, UStringOrRopeImpl.
Repurpose an otherwise invalid permutation to flags (static & should report
memory cost) to identify ropes.

This allows us to change the rope's fibers to interrogate the object rather
than storing a bool within the low bits of the pointer (or in some cases the
use of a common parent class removes the need to determine the type at all -
there is a common interface to ref or get the length of either ropes or strings).

  • API/JSClassRef.cpp:

(OpaqueJSClass::OpaqueJSClass):
(OpaqueJSClassContextData::OpaqueJSClassContextData):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::keyForCharacterSwitch):

  • interpreter/Interpreter.cpp:

(JSC::Interpreter::privateExecute):

  • jit/JITStubs.cpp:

(JSC::DEFINE_STUB_FUNCTION):

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncToString):

  • runtime/Identifier.cpp:

(JSC::Identifier::equal):
(JSC::Identifier::addSlowCase):

  • runtime/JSString.cpp:

(JSC::JSString::resolveRope):

  • runtime/JSString.h:

(JSC::):
(JSC::RopeBuilder::JSString):
(JSC::RopeBuilder::~JSString):
(JSC::RopeBuilder::appendStringInConstruct):
(JSC::RopeBuilder::appendValueInConstructAndIncrementLength):
(JSC::RopeBuilder::JSStringFinalizerStruct::JSStringFinalizerStruct):
(JSC::RopeBuilder::JSStringFinalizerStruct::):

  • runtime/UString.cpp:

(JSC::UString::toStrictUInt32):
(JSC::equal):

  • runtime/UString.h:

(JSC::UString::isEmpty):
(JSC::UString::size):

  • runtime/UStringImpl.cpp:

(JSC::URopeImpl::derefFibersNonRecursive):
(JSC::URopeImpl::destructNonRecursive):

  • runtime/UStringImpl.h:

(JSC::UStringOrRopeImpl::isRope):
(JSC::UStringOrRopeImpl::length):
(JSC::UStringOrRopeImpl::ref):
(JSC::UStringOrRopeImpl::):
(JSC::UStringOrRopeImpl::operator new):
(JSC::UStringOrRopeImpl::UStringOrRopeImpl):
(JSC::UStringImpl::adopt):
(JSC::UStringImpl::createUninitialized):
(JSC::UStringImpl::tryCreateUninitialized):
(JSC::UStringImpl::data):
(JSC::UStringImpl::cost):
(JSC::UStringImpl::deref):
(JSC::UStringImpl::UStringImpl):
(JSC::UStringImpl::):
(JSC::URopeImpl::tryCreateUninitialized):
(JSC::URopeImpl::initializeFiber):
(JSC::URopeImpl::fiberCount):
(JSC::URopeImpl::fibers):
(JSC::URopeImpl::deref):
(JSC::URopeImpl::URopeImpl):
(JSC::URopeImpl::hasOneRef):
(JSC::UStringOrRopeImpl::deref):

WebCore:

Renamed cUStringImpl::size() to UStringImpl::size()UStringImpl::length()
(matches WebCore::StringImpl).

  • bridge/jni/jsc/JavaStringJSC.h:

(JSC::Bindings::JavaStringImpl::length):

  • platform/text/AtomicString.cpp:

(WebCore::AtomicString::add):
(WebCore::AtomicString::find):

15:55 Changeset [54842] by ossy@webkit.org

[Qt] REGRESSION(r54811) fast/canvas/drawImage-with-negative-source-destination.html fails
https://bugs.webkit.org/show_bug.cgi?id=35005

  • platform/qt/Skipped:
    • fast/canvas/drawImage-with-negative-source-destination.html skipped until fix.
    • inspector/timeline-paint.html skipped because it is flakey.
15:49 Changeset [54841] by jhoneycutt@apple.com

<rdar://problem/7288853> Message about missing plugin does not specify
the type or download link for download

Reviewed by Mark Rowe.

  • plugins/PluginDatabase.cpp:

(WebCore::PluginDatabase::findPlugin):
Only update the mimeType out param if we find a plug-in for the file
extension.

15:41 Changeset [54840] by simon.fraser@apple.com

2010-02-16 Simon Fraser <simon.fraser@apple.com>

Build fix for Tiger.

Add #if USE(ACCELERATED_COMPOSITING) around the call to mediaPlayerRenderingModeChanged().

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::setUpVideoRendering):
15:03 Changeset [54839] by ossy@webkit.org

Buildfix for r54826.

Reviewed by Eric Carlson.

HTMLMediaElement class defined by HTMLMediaElement.h in #if ENABLE(VIDEO) block,
it should be in #if ENABLE(VIDEO) block in rendering/RenderLayerBacking.cpp too.

  • rendering/RenderLayerBacking.cpp: Missing #if ENABLE(VIDEO) guard added.

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):

15:02 Changeset [54838] by mrowe@apple.com

Roll out the rest of r54833 as it includes more unrelated changes.

15:00 Changeset [54837] by mrowe@apple.com

Let's not check garbage in to common build scripts and hose the world now eh guys?

  • Scripts/webkitdirs.pm:
14:56 Changeset [54836] by jparent@chromium.org

Unreviewed: Chromium build fix.

http://trac.webkit.org/changeset/54823 introduced an unused variable. Remove it.

  • platform/image-decoders/ImageDecoder.cpp:

(WebCore::ImageDecoder::create):

14:53 Changeset [54835] by mrowe@apple.com

Bug 34974: Leak of ScheduledAction during layout tests
<https://bugs.webkit.org/show_bug.cgi?id=34974>

Reviewed by Alexey Proskuryakov.

ScheduledAction::create was returning a raw pointer which was threaded down through to an OwnPtr in DOMTimer.
If any of the code paths in between hit an error case and returned early the raw pointer would be leaked. We
can avoid this by passing it as a PassOwnPtr. This will ensure that the ScheduledAction is cleaned up should
an error case be hit.

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::setTimeout): Store the newly-created ScheduledAction in an OwnPtr and then hand it off
as the function argument.
(WebCore::JSDOMWindow::setInterval): Ditto.

  • bindings/js/JSWorkerContextCustom.cpp:

(WebCore::JSWorkerContext::setTimeout): Ditto.
(WebCore::JSWorkerContext::setInterval): Ditto.

  • bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::create): Return a PassOwnPtr.

  • bindings/js/ScheduledAction.h:
  • page/DOMTimer.cpp:

(WebCore::DOMTimer::DOMTimer): Update argument type.
(WebCore::DOMTimer::install): Ditto.

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

(WebCore::DOMWindow::setTimeout): Ditto.
(WebCore::DOMWindow::setInterval): Ditto.

  • page/DOMWindow.h:
14:51 Changeset [54834] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by David Hyatt.

SVG units don't stay consistently sized on zoom
https://bugs.webkit.org/show_bug.cgi?id=14004

Large step towards making WebKit an usable SVG viewer.

Make zooming into SVG documents work as expected, in both standalone and XHTML/SVG compound documents.
SVG applies a global scale to the document, whereas CSS zooms all individual length units (on full-page-zoom).
Scaling has to be avoided for all SVG specific CSS properties (already works) and for some selected CSS
properties shared between CSS & SVG that explicitely need a different treatment in the context of SVG.
To name a few: font-size, letter-spacing, etc. should stay invariant under zoom in SVG document fragments.

Some new rules regarding zooming:

  • "Zoom text only" should never affect SVG documents, neither text nor content should zoom. This option doesn't make much sense for SVG, so it's wise to avoid side-effects and disable it. In compound documents the SVG would stay as-is and only text of surrounding XHTML content would zoom.
  • "Full page zoom" is the only zoom mode affecting SVG. (Panning only works in standalone documents.)

Cover all mentioned cases above by a new set of layout tests.

Tests: svg/zoom/page/absolute-sized-document-no-scrollbars.svg

svg/zoom/page/absolute-sized-document-scrollbars.svg
svg/zoom/page/relative-sized-document-scrollbars.svg
svg/zoom/page/zoom-coords-viewattr-01-b.svg
svg/zoom/page/zoom-foreignObject.svg
svg/zoom/page/zoom-hixie-mixed-008.xml
svg/zoom/page/zoom-hixie-mixed-009.xml
svg/zoom/page/zoom-hixie-rendering-model-004.xhtml
svg/zoom/page/zoom-svg-float-border-padding.xml
svg/zoom/text/absolute-sized-document-no-scrollbars.svg
svg/zoom/text/absolute-sized-document-scrollbars.svg
svg/zoom/text/relative-sized-document-scrollbars.svg
svg/zoom/text/zoom-coords-viewattr-01-b.svg
svg/zoom/text/zoom-foreignObject.svg
svg/zoom/text/zoom-hixie-mixed-008.xml
svg/zoom/text/zoom-hixie-mixed-009.xml
svg/zoom/text/zoom-hixie-rendering-model-004.xhtml
svg/zoom/text/zoom-svg-float-border-padding.xml

  • css/CSSStyleSelector.cpp: Blacklist certain properties not to be zoomed for SVG elements. (WebCore::CSSStyleSelector::styleForDocument): Don't zoom font-sizes. (WebCore::CSSStyleSelector::applyProperty): Ditto (+ letter/word-spacing). (WebCore::CSSStyleSelector::setFontSize): Ditto. (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize): Never apply text zoom to SVG.
  • css/CSSStyleSelector.h:
  • css/SVGCSSStyleSelector.cpp: -webkit-shadow + SVG was incorrectly respecting zoom factor. (WebCore::CSSStyleSelector::applySVGProperty):
  • page/Frame.cpp: (WebCore::Frame::shouldApplyTextZoom): Remove SVG special cases. (WebCore::Frame::shouldApplyPageZoom): Ditto. (WebCore::Frame::setZoomFactor): Don't force setZoomsTextOnly() - SVG now uses FPZ as well.
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::calcReplacedWidth): CSSPropertyWidth is explicitely not scaled by CSSStyleSelector, fix that for outermost <svg> elements. (WebCore::RenderSVGRoot::calcReplacedHeight): Ditto for CSSPropertyHeight. (WebCore::RenderSVGRoot::layout): Simplify & cleanup code, take advantage of new calcWidth/Height functionality, no need to scale anything here. (WebCore::RenderSVGRoot::paint): Use parentOriginToBorderBox() instead of duplicating code. (WebCore::RenderSVGRoot::calcViewport): Simplify code. (WebCore::RenderSVGRoot::localToBorderBoxTransform): Calculate viewBoxToViewTransformation() against unscaled width()/height() values.
  • rendering/RenderSVGRoot.h:
  • svg/SVGLength.cpp: (WebCore::SVGLength::PercentageOfViewport): Cleanup & document function.
  • svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::currentScale): Return pageZoomFactor(), not just the zoomFactor() - as we want to ignore text-only zoom. (WebCore::SVGSVGElement::setCurrentScale): Pass isTextOnly=false to setZoomFactor().
14:46 Changeset [54833] by zimmermann@webkit.org

2010-02-16 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by David Hyatt.

SVG units don't stay consistently sized on zoom
https://bugs.webkit.org/show_bug.cgi?id=14004

  • platform/mac/svg/zoom: Added.
  • platform/mac/svg/zoom/page: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-no-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/page/absolute-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/page/relative-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-coords-viewattr-01-b-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-foreignObject-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-foreignObject-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-foreignObject-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-008-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-mixed-009-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-hixie-rendering-model-004-expected.txt: Added.
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.checksum: Added.
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.png: Added.
  • platform/mac/svg/zoom/page/zoom-svg-float-border-padding-expected.txt: Added.
  • platform/mac/svg/zoom/text: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-no-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/text/absolute-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.checksum: Added.
  • platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.png: Added.
  • platform/mac/svg/zoom/text/relative-sized-document-scrollbars-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-coords-viewattr-01-b-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-foreignObject-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-008-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-mixed-009-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-hixie-rendering-model-004-expected.txt: Added.
  • platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.checksum: Added.
  • platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.png: Added.
  • platform/mac/svg/zoom/text/zoom-svg-float-border-padding-expected.txt: Added.
  • svg/zoom: Added.
  • svg/zoom/NOTE: Added.
  • svg/zoom/page: Added.
  • svg/zoom/page/absolute-sized-document-no-scrollbars.svg: Added.
  • svg/zoom/page/absolute-sized-document-scrollbars.svg: Added.
  • svg/zoom/page/relative-sized-document-scrollbars.svg: Added.
  • svg/zoom/page/zoom-coords-viewattr-01-b.svg: Added.
  • svg/zoom/page/zoom-foreignObject.svg: Added.
  • svg/zoom/page/zoom-hixie-mixed-008.xml: Added.
  • svg/zoom/page/zoom-hixie-mixed-009.xml: Added.
  • svg/zoom/page/zoom-hixie-rendering-model-004.xhtml: Added.
  • svg/zoom/page/zoom-svg-float-border-padding.xml: Added.
  • svg/zoom/resources: Added.
  • svg/zoom/resources/testPageZoom.js: Added.
  • svg/zoom/resources/testTextZoom.js: Added.
  • svg/zoom/text: Added.
  • svg/zoom/text/absolute-sized-document-no-scrollbars.svg: Added.
  • svg/zoom/text/absolute-sized-document-scrollbars.svg: Added.
  • svg/zoom/text/relative-sized-document-scrollbars.svg: Added.
  • svg/zoom/text/zoom-coords-viewattr-01-b.svg: Added.
  • svg/zoom/text/zoom-foreignObject.svg: Added.
  • svg/zoom/text/zoom-hixie-mixed-008.xml: Added.
  • svg/zoom/text/zoom-hixie-mixed-009.xml: Added.
  • svg/zoom/text/zoom-hixie-rendering-model-004.xhtml: Added.
  • svg/zoom/text/zoom-svg-float-border-padding.xml: Added.
14:44 Changeset [54832] by eric.carlson@apple.com

2010-02-16 Eric Carlson <eric.carlson@apple.com>

Reviewed by Simon Fraser.

https://bugs.webkit.org/show_bug.cgi?id=34988
WebHTMLView.mm has two -willRemoveSubview: methods

  • WebView/WebHTMLView.mm: (-[WebHTMLView willRemoveSubview:]): Consolidate the two copies of this method.
14:30 Changeset [54831] by jparent@chromium.org

Unreviewed: Chromium build fix.

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

Move include of JavaScriptProfile.h behind if (USE_JSC).

  • inspector/InspectorController.cpp:
14:21 Changeset [54830] by eric@webkit.org

2010-02-16 Eric Seidel <eric@webkit.org>

Reviewed by Adam Barth.

re-factor Skipped list parsing code into multiple functions and unit test it
https://bugs.webkit.org/show_bug.cgi?id=34986

  • Scripts/test-webkitpy: Add new unit test.
  • Scripts/webkitpy/layout_tests/init.py: Copied from WebKitTools/QueueStatusServer/filters/init.py.
  • Scripts/webkitpy/layout_tests/port/mac.py: Split parsing function into multiple functions for testing.
  • Scripts/webkitpy/layout_tests/port/mac_unittest.py: Added.
14:16 Changeset [54829] by ap@apple.com

Reviewed by Geoffrey Garen and Kevin Decker.

https://bugs.webkit.org/show_bug.cgi?id=34989
<rdar://problem/7417965> Cursor disappears on scroll bars that are over plugin content

This fixes event dispatch for both Cocoa and Carbon event models (mouseEntered/mouseExited
in the former case, and adjustCursor in the latter).

  • Plugins/Hosted/WebHostedNetscapePluginView.mm: (-[WebHostedNetscapePluginView handleMouseEntered:]): (-[WebHostedNetscapePluginView handleMouseExited:]):
  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView handleMouseEntered:]): (-[WebBaseNetscapePluginView handleMouseExited:]):
  • Plugins/WebNetscapePluginView.h:
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView handleMouseEntered:]): (-[WebNetscapePluginView handleMouseExited:]): AppKit cannot reliably dispatch events for overlapping views. We are now asking WebCore to notify plug-in views of mouse entered/exited as part of DOM event dispatch.
  • WebCoreSupport/WebFrameLoaderClient.mm: (NetscapePluginWidget::handleEvent): Besides mouse moved, dispatch plugin mouse entered/exit events in HTMLPlugInElement default event handler. Other mouse events are passed down by EventHandler.
14:04 Changeset [54828] by simon.fraser@apple.com

2010-02-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Eric Carlson.

With hardware acceleration turned off, video frames never display if poster
image is specified
https://bugs.webkit.org/show_bug.cgi?id=34965

HTMLVideoElement's m_shouldDisplayPosterImage was never updated after
the movie supplied its first video frame, so the poster would continue to show.

Fixed by calling updatePosterImage() from mediaPlayerRepaint(), which is called
each time a new frame is available. updatePosterImage() is cheap.

Also made updatePosterImage() virtual on HTMLMediaElement to avoid a number of
ugly casts.

Test: manual-tests/media-elements/video-replaces-poster.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::noneSupported): Call updatePosterImage() without video check. (WebCore::HTMLMediaElement::setNetworkState): Ditto. (WebCore::HTMLMediaElement::setReadyState): Ditto. (WebCore::HTMLMediaElement::mediaPlayerRepaint): Call udpatePosterImage().
  • html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::updatePosterImage): Make this an empty virtual method on the base class.
  • html/HTMLVideoElement.h: Override updatePosterImage().
13:55 Changeset [54827] by simon.fraser@apple.com

2010-02-16 Simon Fraser <simon.fraser@apple.com>

Build fix for platforms without ACCELERATED_COMPOSITING defined.

mediaPlayerRenderingModeChanged() is only available when ACCELERATED_COMPOSITING is defined.

  • platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::setUpVideoRendering):
13:46 Changeset [54826] by simon.fraser@apple.com

2010-02-16 Simon Fraser <simon.fraser@apple.com>

Reviewed by Eric Carlson.

Autoplaying video with poster doesn't reliably show up
https://bugs.webkit.org/show_bug.cgi?id=34966

A timing issue with compositing updates when replacing the poster image
with the video could cause the video to not display.

Fix by making video layer hook up more similar to WebGL etc, by having the
video kick off a recalcStyle() via a SyntheticStyleChange. This requires
vending a PlaformLayer* from the media player, up through the element.

Test: media/video-replaces-poster.html

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerRenderingModeChanged): Use setNeedsStyleRecalc() to kick off a compositing update.
  • html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::platformLayer): Export the media engine's layer.
  • platform/graphics/MediaPlayer.cpp: (WebCore::NullMediaPlayerPrivate::platformLayer): Method to vend the media layer. (WebCore::MediaPlayer::platformLayer):
  • platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::mediaPlayerRenderingModeChanged): New client callback to indicate that the rendering mode changed. The element uses this to kick off a recalcStyle.
  • platform/graphics/MediaPlayerPrivate.h: (WebCore::MediaPlayerPrivateInterface::platformLayer): Method to vend the media layer.
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h: Ditto
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::createQTMovieLayer): No longer parent the layer directly via setContentsToMedia(). (WebCore::MediaPlayerPrivate::acceleratedRenderingStateChanged): Ditto. (WebCore::MediaPlayerPrivate::setUpVideoRendering): Tell the client that the rendering mode changed. (WebCore::MediaPlayerPrivate::platformLayer): Method to vend the media layer.
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Call setContentsToMedia() here.
  • platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: Add platformLayer().
  • platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: (WebCore::MediaPlayerPrivate::platformLayer): Method to vend the media layer. (WebCore::MediaPlayerPrivate::setUpVideoRendering): Call mediaPlayerRenderingModeChanged() (WebCore::MediaPlayerPrivate::createLayerForMovie): Don't parent the layer ourselves any more.
  • rendering/RenderVideo.h: videoGraphicsLayer() is no longer needed.
  • rendering/RenderVideo.cpp: Ditto.
13:06 Changeset [54825] by kov@webkit.org

2010-02-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Refreshed all localization-related files, so that they are
up-to-date with the code.

  • de.po: Updated.
  • en_GB.po: Updated.
  • es.po: Updated.
  • it.po: Updated.
  • lt.po: Updated.
  • nl.po: Updated.
  • pt_BR.po: Updated.
  • ru.po: Updated.
  • sr.po: Updated.
  • sr@latin.po: Updated.
  • sv.po: Updated.
  • vi.po: Updated.
  • webkit.pot: Updated.
  • zh_CN.po: Updated.
13:06 Changeset [54824] by kov@webkit.org

2010-02-16 Gil Osher <gilosher@gmail.com>

Reviewed by Gustavo Noronha.

Localization of WebKitGTK+ in Hebrew.

  • he.po: Added.
12:50 Changeset [54823] by pkasting@chromium.org

Code cleanup in ImageDecoders; no functional change.
https://bugs.webkit.org/show_bug.cgi?id=28751

Reviewed by Adam Barth.

  • Make code mostly comply with the style guide (switch indenting, use of "!" vs. "== 0", don't unnecessarily wrap lines, etc.)
  • Eliminate m_allDataReceived in ICO/BMP decoders since it's in the base ImageDecoder class
  • Remove some useless or wrong comments, add others
  • Wrap comments at 80 columns (most already were) for consistency/readability
  • Avoid casts by using correct variable types
  • Consistent naming of decode() function/args
  • Shorter code in some places
  • Make declaration and definition order match
  • platform/graphics/qt/ImageDecoderQt.cpp:

(WebCore::ImageDecoderQt::frameCount):
(WebCore::ImageDecoderQt::frameBufferAtIndex):
(WebCore::ImageDecoderQt::forceLoadEverything):

  • platform/image-decoders/ImageDecoder.cpp:

(WebCore::ImageDecoder::create):
(WebCore::RGBA32Buffer::clear):
(WebCore::RGBA32Buffer::setSize):

  • platform/image-decoders/ImageDecoder.h:

(WebCore::RGBA32Buffer::):
(WebCore::ImageDecoder::ImageDecoder):

  • platform/image-decoders/bmp/BMPImageDecoder.cpp:

(WebCore::BMPImageDecoder::BMPImageDecoder):
(WebCore::BMPImageDecoder::setData):
(WebCore::BMPImageDecoder::isSizeAvailable):
(WebCore::BMPImageDecoder::frameBufferAtIndex):
(WebCore::BMPImageDecoder::decode):
(WebCore::BMPImageDecoder::decodeHelper):
(WebCore::BMPImageDecoder::processFileHeader):

  • platform/image-decoders/bmp/BMPImageDecoder.h:

(WebCore::BMPImageDecoder::readUint32):

  • platform/image-decoders/bmp/BMPImageReader.cpp:

(WebCore::BMPImageReader::BMPImageReader):
(WebCore::BMPImageReader::decodeBMP):
(WebCore::BMPImageReader::readInfoHeaderSize):
(WebCore::BMPImageReader::processInfoHeader):
(WebCore::BMPImageReader::readInfoHeader):
(WebCore::BMPImageReader::isInfoHeaderValid):
(WebCore::BMPImageReader::processBitmasks):
(WebCore::BMPImageReader::processColorTable):
(WebCore::BMPImageReader::processRLEData):
(WebCore::BMPImageReader::processNonRLEData):

  • platform/image-decoders/bmp/BMPImageReader.h:

(WebCore::BMPImageReader::readUint32):
(WebCore::BMPImageReader::pastEndOfImage):
(WebCore::BMPImageReader::readCurrentPixel):
(WebCore::BMPImageReader::getComponent):
(WebCore::BMPImageReader::getAlpha):
(WebCore::BMPImageReader::setI):
(WebCore::BMPImageReader::setRGBA):

  • platform/image-decoders/gif/GIFImageDecoder.cpp:

(WebCore::GIFImageDecoder::GIFImageDecoder):
(WebCore::GIFImageDecoder::setData):
(WebCore::GIFImageDecoder::isSizeAvailable):
(WebCore::GIFImageDecoder::frameCount):
(WebCore::GIFImageDecoder::frameBufferAtIndex):
(WebCore::GIFImageDecoder::clearFrameBufferCache):
(WebCore::GIFImageDecoder::sizeNowAvailable):
(WebCore::GIFImageDecoder::haveDecodedRow):
(WebCore::GIFImageDecoder::frameComplete):
(WebCore::GIFImageDecoder::decode):
(WebCore::GIFImageDecoder::initFrameBuffer):

  • platform/image-decoders/gif/GIFImageDecoder.h:

(WebCore::GIFImageDecoder::):
(WebCore::GIFImageDecoder::filenameExtension):

  • platform/image-decoders/gif/GIFImageReader.cpp:

(GIFImageReader::do_lzw):
(GIFImageReader::read):

  • platform/image-decoders/gif/GIFImageReader.h:

(GIFImageReader::~GIFImageReader):

  • platform/image-decoders/ico/ICOImageDecoder.cpp:

(WebCore::ICOImageDecoder::ICOImageDecoder):
(WebCore::ICOImageDecoder::~ICOImageDecoder):
(WebCore::ICOImageDecoder::setData):
(WebCore::ICOImageDecoder::isSizeAvailable):
(WebCore::ICOImageDecoder::frameSizeAtIndex):
(WebCore::ICOImageDecoder::frameCount):
(WebCore::ICOImageDecoder::frameBufferAtIndex):
(WebCore::ICOImageDecoder::compareEntries):
(WebCore::ICOImageDecoder::setDataForPNGDecoderAtIndex):
(WebCore::ICOImageDecoder::decode):
(WebCore::ICOImageDecoder::decodeDirectory):
(WebCore::ICOImageDecoder::decodeAtIndex):
(WebCore::ICOImageDecoder::processDirectoryEntries):
(WebCore::ICOImageDecoder::readDirectoryEntry):

  • platform/image-decoders/ico/ICOImageDecoder.h:

(WebCore::ICOImageDecoder::readUint16):
(WebCore::ICOImageDecoder::readUint32):

  • platform/image-decoders/jpeg/JPEGImageDecoder.cpp:

(WebCore::):
(WebCore::JPEGImageReader::JPEGImageReader):
(WebCore::JPEGImageReader::skipBytes):
(WebCore::JPEGImageReader::decode):
(WebCore::error_exit):
(WebCore::fill_input_buffer):
(WebCore::term_source):
(WebCore::JPEGImageDecoder::setData):
(WebCore::JPEGImageDecoder::setSize):
(WebCore::JPEGImageDecoder::frameBufferAtIndex):
(WebCore::JPEGImageDecoder::jpegComplete):
(WebCore::JPEGImageDecoder::decode):

  • platform/image-decoders/jpeg/JPEGImageDecoder.h:

(WebCore::JPEGImageDecoder::filenameExtension):

  • platform/image-decoders/png/PNGImageDecoder.cpp:

(WebCore::decodingFailed):
(WebCore::decodingWarning):
(WebCore::headerAvailable):
(WebCore::rowAvailable):
(WebCore::pngComplete):
(WebCore::PNGImageReader::PNGImageReader):
(WebCore::PNGImageReader::close):
(WebCore::PNGImageReader::decode):
(WebCore::PNGImageReader::createInterlaceBuffer):
(WebCore::PNGImageDecoder::setData):
(WebCore::PNGImageDecoder::frameBufferAtIndex):
(WebCore::PNGImageDecoder::headerAvailable):
(WebCore::PNGImageDecoder::rowAvailable):
(WebCore::PNGImageDecoder::pngComplete):
(WebCore::PNGImageDecoder::decode):

  • platform/image-decoders/png/PNGImageDecoder.h:

(WebCore::PNGImageDecoder::filenameExtension):

  • platform/image-decoders/qt/RGBA32BufferQt.cpp:

(WebCore::RGBA32Buffer::setDecodedImage):

06:44 Changeset [54822] by kov@webkit.org

2010-02-16 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

Check if the handle has a SoupMessage before trying to use
it. This will be the case in non-HTTP(S) URLs.

  • webkit/webkitdownload.cpp: (webkit_download_new_with_handle): (webkit_download_start):
05:32 Changeset [54821] by ossy@webkit.org

[Qt] Unreviewed buildfix.

  • WebCore.pro: Missing backslash added.
05:17 Changeset [54820] by mnaganov@chromium.org

2010-02-16 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Pavel Feldman.

Move JSC-specific wrappers for Profile and ProfileNode to bindings/js.

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

  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JavaScriptProfile.cpp: Added. (WebCore::profileCache): (WebCore::getTitleCallback): (WebCore::getHeadCallback): (WebCore::getUniqueIdCallback): (WebCore::focus): (WebCore::exclude): (WebCore::restoreAll): (WebCore::finalize): (WebCore::ProfileClass): (WebCore::toJS):
  • bindings/js/JavaScriptProfile.h: Added.
  • bindings/js/JavaScriptProfileNode.cpp: Added. (WebCore::profileNodeCache): (WebCore::getFunctionName): (WebCore::getURL): (WebCore::getLineNumber): (WebCore::getTotalTime): (WebCore::getSelfTime): (WebCore::getNumberOfCalls): (WebCore::getChildren): (WebCore::getVisible): (WebCore::getCallUID): (WebCore::finalize): (WebCore::ProfileNodeClass): (WebCore::toJS):
  • bindings/js/JavaScriptProfileNode.h: Added.
  • inspector/JavaScriptProfile.cpp: Removed.
  • inspector/JavaScriptProfile.h: Removed.
  • inspector/JavaScriptProfileNode.cpp: Removed.
  • inspector/JavaScriptProfileNode.h: Removed.
05:11 Changeset [54819] by apavlov@chromium.org

2010-02-16 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: Elements Panel: Limit the number of initially loaded element children
https://bugs.webkit.org/show_bug.cgi?id=34421

Test: inspector/elements-panel-limited-children.html

WebCore:

  • English.lproj/localizedStrings.js:
  • inspector/front-end/DOMAgent.js: (WebInspector.DOMNode.prototype._insertChild):
  • inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
  • inspector/front-end/ElementsTreeOutline.js: (WebInspector.ElementsTreeOutline.prototype.createTreeElementFor): (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode): (WebInspector.ElementsTreeElement): (WebInspector.ElementsTreeElement.prototype.get expandedChildrenLimit): (WebInspector.ElementsTreeElement.prototype.set expandedChildrenLimit): (WebInspector.ElementsTreeElement.prototype.get expandedChildCount): (WebInspector.ElementsTreeElement.prototype.showChild): (WebInspector.ElementsTreeElement.prototype.insertChildElement): (WebInspector.ElementsTreeElement.prototype.moveChild): (WebInspector.ElementsTreeElement.prototype._updateChildren.updateChildrenOfNode): (WebInspector.ElementsTreeElement.prototype._updateChildren): (WebInspector.ElementsTreeElement.prototype.adjustCollapsedRange): (WebInspector.ElementsTreeElement.prototype.handleLoadAllChildren): ():
  • inspector/front-end/inspector.css:

LayoutTests:

  • inspector/elements-panel-limited-children-expected.txt: Added.
  • inspector/elements-panel-limited-children.html: Added.
04:54 Changeset [54818] by xan@webkit.org

2010-02-16 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Bump version to 1.1.22 so we can depend on it in applications.

  • configure.ac:

WebKit/gtk:

2010-02-16 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Add a new WebKitWebSettings setting, 'auto-resize-window', set to
FALSE by default, that when enabled will apply any resizes or
moves done by a page through various DOM methods (moveTo,
resizeTo, moveBy, resizeBy).

  • WebCoreSupport/ChromeClientGtk.cpp:
  • webkit/webkitwebsettings.cpp: (webkit_web_settings_class_init): (webkit_web_settings_set_property): (webkit_web_settings_get_property): (webkit_web_settings_copy):

WebKitTools:

2010-02-16 Xan Lopez <xlopez@igalia.com>

Reviewed by Gustavo Noronha.

Enable 'auto-resize-window' in our DRT.

  • DumpRenderTree/gtk/DumpRenderTree.cpp: (resetDefaultsToConsistentValues):
03:18 Changeset [54817] by benm@google.com

Refactor and split up basic-touch-events test
https://bugs.webkit.org/show_bug.cgi?id=34476

Reviewed by Simon Hausmann.

Split the basic-touch-events test into two separate tests, one for single and another for multi touch. Also refactor the tests to run in an asynchronous manner.

  • fast/events/touch/basic-multi-touch-events.html: Copied from LayoutTests/fast/events/touch/basic-touch-events.html. Tests the same multi touch tests cases from the old basic-touch-events test.
  • fast/events/touch/basic-multi-touch-events-expected.txt: Added.
  • fast/events/touch/script-tests/basic-multi-touch-events.js: Added.
  • fast/events/touch/basic-single-touch-events.html: Copied from LayoutTests/fast/events/touch/basic-touch-events.html. Tests the same single touch tests cases from the old basic-touch-events test.
  • fast/events/touch/script-tests/basic-single-touch-events.js: Added.
  • fast/events/touch/basic-single-touch-events-expected.txt: Added.
  • fast/events/touch/basic-touch-events.html: Removed.
  • fast/events/touch/script-tests/basic-touch-events.js: Removed.
  • fast/events/touch/basic-touch-events-expected.txt: Removed.
03:14 Changeset [54816] by hausmann@webkit.org

Unreviewed Symbian build fix.

Updated the def file with two new exports used by QtLauncher.

  • symbian/eabi/QtWebKitu.def:
03:10 Changeset [54815] by eric@webkit.org

2010-02-16 Ismail Donmez <ismail@namtrac.org>

Reviewed by Pavel Feldman.

Fix compilation with inspector disabled.
https://bugs.webkit.org/show_bug.cgi?id=32724

  • rendering/RenderLayerBacking.cpp: (WebCore::inspectorTimelineAgent):

2010-02-16 Ismail Donmez <ismail@namtrac.org>

Reviewed by Pavel Feldman.

Fix compilation with inspector disabled.
https://bugs.webkit.org/show_bug.cgi?id=32724

  • Api/qwebpage.cpp: (qt_drt_webinspector_executeScript): (qt_drt_webinspector_close): (qt_drt_webinspector_show): (qt_drt_setTimelineProfilingEnabled):
02:27 Changeset [54814] by hausmann@webkit.org

[Qt] Fix include paths for forwarding headers in standalone builds.

Patch by Jocelyn Turcotte <jocelyn.turcotte@nokia.com> on 2010-02-16
Reviewed by Simon Hausman.

  • Api/DerivedSources.pro: Use relative paths for package builds and added some

documentation.

02:25 Changeset [54813] by pfeldman@chromium.org

2010-02-16 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: turn off line wrapping in source view.

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

  • inspector/front-end/TextViewer.js: (WebInspector.TextViewer.prototype.markAndRevealRange): (WebInspector.TextViewer.prototype._paintLine):
  • inspector/front-end/textViewer.css:
  • inspector/front-end/utilities.js:
02:08 Changeset [54812] by pfeldman@chromium.org

2010-02-16 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: let search iterate over views in Resources
and keep the view in Scripts.

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

  • inspector/front-end/Panel.js: (WebInspector.Panel.prototype.jumpToNextSearchResult): (WebInspector.Panel.prototype.jumpToPreviousSearchResult): (WebInspector.Panel.prototype.showSourceLineForURL): (WebInspector.Panel.prototype.searchIteratesOverViews):
  • inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel.prototype.get _resources): (WebInspector.ResourcesPanel.prototype.searchIteratesOverViews):
  • inspector/front-end/SourceView.js: (WebInspector.SourceView.prototype.showingLastSearchResult):
  • inspector/front-end/inspector.js: (WebInspector.documentKeyDown): (WebInspector.focusSearchField):
01:17 Changeset [54811] by eric@webkit.org

2010-02-16 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Ariya Hidayat.

[Qt] canvas clipping is buggy
https://bugs.webkit.org/show_bug.cgi?id=32405

Apparently the bug was in GraphicsContext::roundToDevicePixels, we
didn't take unto accounts rotation, so the device pixels were rounded
incorrectly. The new formula is a 1:1 copy from GraphicsContextCG so
it should be rather safe

Test: http://glimr.rubyforge.org/cake/canvas.html#Polaroids now looks right

  • platform/graphics/qt/GraphicsContextQt.cpp: (WebCore::GraphicsContext::roundToDevicePixels): Copy the formula from GraphicsContextCG
00:48 Changeset [54810] by yurys@chromium.org

2010-02-16 Yury Semikhatsky <yurys@chromium.org>

Not Reviewed, build fix.

  • platform/graphics/FloatRect.h: (WebCore::FloatRect::center): make conversion from float to int explicit so that compiler doesn't complain about that.

02/15/10:

23:42 Changeset [54809] by eric@webkit.org

2010-02-15 Gabor Loki <loki@webkit.org>

Reviewed by Gavin Barraclough.

Fix the SP at ctiOpThrowNotCaught on Thumb2 (JSVALUE32)
https://bugs.webkit.org/show_bug.cgi?id=34939

  • jit/JITStubs.cpp:
22:17 Changeset [54808] by mrobinson@webkit.org

2010-02-15 Martin Robinson <mrobinson@webkit.org>

Reviewed by Darin Adler.

check-webkit-style should not complain about NULL sentinel in calls to g_strconcat and g_strjoin
https://bugs.webkit.org/show_bug.cgi?id=34834

  • Scripts/webkitpy/style/processors/cpp.py:
  • Scripts/webkitpy/style/processors/cpp_unittest.py:
20:19 Changeset [54807] by mitz@apple.com

WebCore: <rdar://problem/7645609> [webView selectionRect] API is broken for multicolumn layout

Reviewed by Simon Fraser.

Refine the fix for https://bugs.webkit.org/show_bug.cgi?id=34923 by using the center of
a quad’s bounding box, rather than its top left, as the reference point passed to
offsetFromContainer(). This ensures that if a sliver off the top of the selection rect is in
one column, but most of it is on another column, the single rect we return will be for the
second column.

  • platform/graphics/FloatRect.h:

(WebCore::FloatRect::center): Added.

  • rendering/RenderObject.cpp:

(WebCore::RenderObject::localToContainerQuad): Use the center instead of the top left.

LayoutTests: Add test case for <rdar://problem/7645609> [webView selectionRect] API is broken for multicolumn layout

Reviewed by Simon Fraser.

  • fast/multicol/client-rects-expected.checksum:
  • fast/multicol/client-rects-expected.png:
  • fast/multicol/client-rects-expected.txt:
  • fast/multicol/client-rects.html:
18:36 Changeset [54806] by eric@webkit.org

2010-02-15 MORITA Hajime <morrita@gmail.com>

Reviewed by Nikolas Zimmermann.

SVG text refactor: reduce paint specific callbacks on SVGTextChunkWalker

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

No new tests, no change of functionality.

  • rendering/SVGCharacterLayoutInfo.h: (WebCore::SVGTextChunkWalker::SVGTextChunkWalker): Removed setupBackground(), setupFill(), setupFillSelection(), setupStroke(), setupStrokeSelection(), setupForeground() and associated member variables.
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::setupBackground): renamed from chunkSetupBackgroundCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupFill): renamed from chunkSetupFillCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupFillSelection): renamed from chunkSetupFillSelectionCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupStroke): renamed from chunkSetupStrokeCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupStrokeSelection): renamed from chunkSetupStrokeSelectionCallback. (WebCore::SVGRootInlineBoxPaintWalker::setupForeground): renamed from chunkSetupForegroundCallback. (WebCore::SVGRootInlineBoxPaintWalker::paintChunk): renamed from chunkPortionCallback. (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): extracted from walkTextChunks. (WebCore::SVGRootInlineBox::paint): follow SVGTextChunkWalker change. (WebCore::SVGRootInlineBox::walkTextChunks): moved paint some specific code to SVGRootInlineBoxPaintWalker::chunkPortionCallback().
17:54 Changeset [54805] by barraclough@apple.com

Reviewed by NOBODY (Build Fix!).

17:32 Changeset [54804] by barraclough@apple.com

Some general Rope related refactoring.

Reviewed by Oliver Hunt.

Rename Rope::m_ropeLength to m_fiberCount, to be more descriptive.
Rename Rope::m_stringLength to simply m_length (since this is the
more conventional name for the length of a string). Move append
behaviour out into a new RopeBuilder class, so that Rope no longer
needs any knowledge of the JSString or UString implementation.

Make Rope no longer be nested within JSString.
(Rope now no-longer need reside within JSString.h, but leaving
the change of moving this out to a different header as a separate
change from these renames).

(JSC::JIT::privateCompileCTIMachineTrampolines):

  • runtime/JSString.cpp:

(JSC::Rope::destructNonRecursive):
(JSC::Rope::~Rope):
(JSC::JSString::resolveRope):
(JSC::JSString::toBoolean):
(JSC::JSString::getStringPropertyDescriptor):

  • runtime/JSString.h:

(JSC::Rope::Fiber::Fiber):
(JSC::Rope::Fiber::deref):
(JSC::Rope::Fiber::ref):
(JSC::Rope::Fiber::refAndGetLength):
(JSC::Rope::Fiber::isRope):
(JSC::Rope::Fiber::rope):
(JSC::Rope::Fiber::isString):
(JSC::Rope::Fiber::string):
(JSC::Rope::Fiber::nonFiber):
(JSC::Rope::tryCreateUninitialized):
(JSC::Rope::append):
(JSC::Rope::fiberCount):
(JSC::Rope::length):
(JSC::Rope::fibers):
(JSC::Rope::Rope):
(JSC::Rope::operator new):
(JSC::):
(JSC::RopeBuilder::JSString):
(JSC::RopeBuilder::~JSString):
(JSC::RopeBuilder::length):
(JSC::RopeBuilder::canGetIndex):
(JSC::RopeBuilder::appendStringInConstruct):
(JSC::RopeBuilder::appendValueInConstructAndIncrementLength):
(JSC::RopeBuilder::isRope):
(JSC::RopeBuilder::fiberCount):
(JSC::JSString::getStringPropertySlot):

  • runtime/Operations.h:

(JSC::jsString):

16:25 Changeset [54803] by jorlow@chromium.org

[Chromium] Fix StorageNamespaceProxy::copy() for test shell
https://bugs.webkit.org/show_bug.cgi?id=34949

Reviewed by Darin Fisher.

Chromium passes back NULL when you call WebStorageNamespace::proxy()
but TestShell returns a valid object. Both need to work via
the WebStorageNamespace.

  • src/StorageNamespaceProxy.cpp:

(WebCore::StorageNamespaceProxy::copy):

16:19 Changeset [54802] by mitz@apple.com

Try to fix the Chromium build.

  • rendering/RenderThemeChromiumMac.mm:

(WebCore::RenderThemeChromiumMac::convertToPaintingRect):

15:44 Changeset [54801] by barraclough@apple.com

Add missing cast for !YARR (PPC) builds.

Reviewed by NOBODY (Build fix).

  • runtime/RegExp.cpp:

(JSC::RegExp::match):

14:58 Changeset [54800] by bweinstein@apple.com

Add newline to end of Windows skipped list

14:57 Changeset [54799] by bweinstein@apple.com

Rubber-stamped by Dan Bernstein.

Skipped glyph-reordering on Windows since it has failed since it was landed. Left a comment
in <https://bugs.webkit.org/show_bug.cgi?id=34865> to track the failure.

  • platform/win/Skipped:
14:37 Changeset [54798] by barraclough@apple.com

https://bugs.webkit.org/show_bug.cgi?id=33731
Many false leaks in release builds due to PtrAndFlags

Reviewed by Darin Adler.

JavaScriptCore:

StructureTransitionTable was effectively a smart pointer type,
one machine word in size and wholly contained as a member of
of Structure. It either pointed to an actual table, or could
be used to describe a single transtion entry without use of a
table.

This, however, worked by using a PtrAndFlags, which is not
compatible with the leaks tool. Since there is no clear way to
obtain another bit for 'free' here, and since there are bits
available up in Structure, merge this functionality back up into
Structure. Having this in a separate class was quite clean
from an enacapsulation perspective, but this solution doesn't
seem to bad - all table access is now intermediated through the
Structure::structureTransitionTableFoo methods, keeping the
optimization fairly well contained.

This was the last use of PtrAndFlags, so removing the file too.

  • JavaScriptCore.xcodeproj/project.pbxproj:
  • bytecode/CodeBlock.h:
  • runtime/Structure.cpp:

(JSC::Structure::Structure):
(JSC::Structure::~Structure):
(JSC::Structure::addPropertyTransitionToExistingStructure):
(JSC::Structure::addPropertyTransition):
(JSC::Structure::hasTransition):

  • runtime/Structure.h:

(JSC::Structure::):
(JSC::Structure::structureTransitionTableContains):
(JSC::Structure::structureTransitionTableGet):
(JSC::Structure::structureTransitionTableHasTransition):
(JSC::Structure::structureTransitionTableRemove):
(JSC::Structure::structureTransitionTableAdd):
(JSC::Structure::structureTransitionTable):
(JSC::Structure::setStructureTransitionTable):
(JSC::Structure::singleTransition):
(JSC::Structure::setSingleTransition):

  • runtime/StructureTransitionTable.h:
  • wtf/PtrAndFlags.h: Removed.

WebCore:

PtrAndFlags has now been removed; remove forwarding header.

  • ForwardingHeaders/wtf/PtrAndFlags.h: Removed.
14:21 Changeset [54797] by ap@apple.com

Skip more plugin tests on Snow Leopard buildbot, as they need updated closed source components.

  • platform/mac-snowleopard/Skipped: Skip netscape-dom-access.html and netscape-browser-object-identity.html.
13:48 Changeset [54796] by aroben@apple.com

Add IWebFramePrivate::visibleContentRect

Fixes <http://webkit.org/b/34956> Add API to get a WebFrame's visible
content rect

Reviewed by Jon Honeycutt.

  • Interfaces/IWebFramePrivate.idl: Added visibleContentRect.
  • Interfaces/WebKit.idl: Touched to force a build.
  • WebFrame.cpp:

(WebFrame::visibleContentRect):

  • WebFrame.h:

Added. Calls through to FrameView::visibleContentRect.

13:43 Changeset [54795] by barraclough@apple.com

Rubber Stamped by Geoff Garen.

Bug 34948 - tryMakeString should fail on error in length calculation

Ooops! - "bool overflow" argument should have been "bool& overflow".

  • runtime/UString.h:

(JSC::sumWithOverflow):
(JSC::tryMakeString):

13:41 Changeset [54794] by barraclough@apple.com

Some symbol names have changed, remove, will readd if required.

Reviewed by NOBODY (Build Fix (pt 2!)).

13:37 Changeset [54793] by ossy@webkit.org

[Qt] fast/multicol/client-rects.html fails in QtLauncher
https://bugs.webkit.org/show_bug.cgi?id=34959

  • platform/qt/Skipped: fast/multicol/client-rects.html skipped until fix.
13:24 Changeset [54792] by barraclough@apple.com

Some symbol names have changed, remove, will readd if required.

Reviewed by NOBODY (Build Fix (pt 1?)).

13:18 Changeset [54791] by ap@apple.com

More build fixing (for what is actually a 64-bit failure, as 32-bit apparently includes
headers that aren't included in 64-bit).

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::contains): (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::get): Move inline functions to .cpp; also made the class Noncopyable.
13:09 Changeset [54790] by ggaren@apple.com

Removed some mistaken code added in http://trac.webkit.org/changeset/53860.

Reviewed by Oliver Hunt.

  • API/APIShims.h:

(JSC::APICallbackShim::APICallbackShim):
(JSC::APICallbackShim::~APICallbackShim): No need to start/stop the
timeout checker when calling out from the API to the client; we want to
monitor the VM for timeouts, not the client. This mistake was harmless /
undetectable, since it's totally redundant with the APIEntryShim, which
also starts / stops the timeout checker.

13:03 Changeset [54789] by barraclough@apple.com

Bug 34952 - String lengths in UString should be unsigned.
This matches WebCore::StringImpl, and better unifies behaviour throughout JSC.

Reviewed by Geoff Garen.

JavaScriptCore:

  • JavaScriptCore.exp:
  • bytecode/EvalCodeCache.h:
  • runtime/Identifier.cpp:

(JSC::Identifier::equal):

  • runtime/Identifier.h:
  • runtime/JSGlobalObjectFunctions.cpp:

(JSC::globalFuncEscape):

  • runtime/JSONObject.cpp:

(JSC::gap):
(JSC::Stringifier::indent):

  • runtime/NumberPrototype.cpp:

(JSC::numberProtoFuncToFixed):
(JSC::numberProtoFuncToPrecision):

  • runtime/RegExp.cpp:

(JSC::RegExp::match):

  • runtime/StringPrototype.cpp:

(JSC::substituteBackreferencesSlow):
(JSC::stringProtoFuncReplace):
(JSC::stringProtoFuncSplit):
(JSC::trimString):

  • runtime/UString.cpp:

(JSC::UString::UString):
(JSC::UString::from):
(JSC::UString::getCString):
(JSC::UString::ascii):
(JSC::UString::operator[]):
(JSC::UString::toStrictUInt32):
(JSC::UString::find):
(JSC::UString::rfind):
(JSC::UString::substr):
(JSC::operator<):
(JSC::operator>):
(JSC::compare):
(JSC::equal):
(JSC::UString::UTF8String):

  • runtime/UString.h:

(JSC::UString::size):
(JSC::operator==):

  • runtime/UStringImpl.cpp:

(JSC::UStringImpl::create):

  • runtime/UStringImpl.h:

(JSC::UStringImpl::create):
(JSC::UStringImpl::size):
(JSC::UStringImpl::computeHash):
(JSC::UStringImpl::UStringImpl):

WebCore:

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::atob):
(WebCore::JSDOMWindow::btoa):

12:59 Changeset [54788] by barraclough@apple.com

Bug 34948 - tryMakeString should fail on error in length calculation

Reviewed by Geoff Garen.

The sum of the length of substrings could overflow.

  • runtime/UString.h:

(JSC::sumWithOverflow):
(JSC::tryMakeString):

12:42 Changeset [54787] by ap@apple.com

Mac release build fix attempt.

  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::LocalObjectMap::~LocalObjectMap): Implement destructor in .cpp file, where necessary headers are already included.
12:35 Changeset [54786] by kov@webkit.org

2010-02-15 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Xan Lopez.

[GTK] Crashes when going back to a page that has data: URIs, with page cache enabled
https://bugs.webkit.org/show_bug.cgi?id=34944

Set the URL in the newly created response, when parsing data:
URIs.

Test: fast/harness/page-cache-crash-on-data-urls.html

  • platform/network/soup/ResourceHandleSoup.cpp: (WebCore::parseDataUrl):
12:32 Changeset [54785] by ggaren@apple.com

Fixed <rdar://problem/7628524> Crash beneath JSGlobalContextRelease when
typing in Google search field with GuardMalloc/full page heap enabled

Reviewed by Oliver Hunt.

  • API/JSContextRef.cpp: Don't use APIEntryShim, since that requires

a JSGlobalData, which this function destroys. Do use setCurrentIdentifierTable
and JSLock instead, since those are the two features of APIEntryShim we
require.

11:48 Changeset [54784] by mitz@apple.com

<rdar://problem/7647300> Incorrect client rects for blocks the span multiple columns and their descendants
https://bugs.webkit.org/show_bug.cgi?id=34923

Reviewed by Simon Fraser.

WebCore:

Test: fast/multicol/client-rects.html

In column layout, a different transform applies to different points in
the block and its descendants, depending on their y coordinate within the
block. offsetFromContainer() used to return the offset that applied to
the origin. With this change, it returns the offset that applies to a
given reference point. When mapping a quad from local to absolute
coordinates, the top left of the quad’s bounding box is used as that
reference point.

  • editing/SelectionController.cpp:

(WebCore::SelectionController::layout): Pass the caret’s origin as the
reference point to offsetFromContainer().

  • rendering/RenderBlock.cpp:

(WebCore::RenderBlock::adjustForColumns): Adds the offset between the
given point and its image under the column paint-time transform to the
given offset. Used by offsetFromContainer() where it had previously used
adjustRectForColumns(), which takes a rect and operates less efficiently.

  • rendering/RenderBlock.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::mapLocalToContainer): Pass the transformed point as
the reference point to offsetFromContainer().
(WebCore::RenderBox::mapAbsoluteToLocalPoint): Pass a point to
offsetFromContainer().
(WebCore::RenderBox::offsetFromContainer): Use adjustForColumns() instead
of adjustRectForColumns(), and use the reference point to get the right
adjustment for the point of interest, instead of the origin, in case this
box spans multiple columns.

  • rendering/RenderBox.h:
  • rendering/RenderInline.cpp:

(WebCore::RenderInline::offsetFromContainer): Ditto. Actually apply the
column offset to the computation, which previously this function didn’t
do.
(WebCore::RenderInline::mapLocalToContainer): Pass the transformed point
as the reference point to offsetFromContainer().
(WebCore::RenderInline::mapAbsoluteToLocalPoint): Pass a point to
offsetFromContainer().

  • rendering/RenderInline.h:
  • rendering/RenderObject.cpp:

(WebCore::RenderObject::mapLocalToContainer): Apply column adjustment,
based on the reference point, to the transform if needed.
(WebCore::RenderObject::localToContainerQuad): Initialize the
TransformState with the top left corner of the quad’s bounding box. It
is later used as the reference point when deciding on which column to
base the calculations.
(WebCore::RenderObject::offsetFromContainer): Adjust for columns.
(WebCore::RenderObject::offsetFromAncestorContainer): Pass the origin
as the reference point to offsetFromContainer().

  • rendering/RenderObject.h:

(WebCore::RenderObject::adjustForColumns): Added.

  • rendering/RenderTableCell.cpp:

(WebCore::RenderTableCell::offsetFromContainer): Pass the reference
point through.

  • rendering/RenderTableCell.h:
  • rendering/RenderText.cpp:

(WebCore::RenderText::absoluteRectsForRange): Map (the origin of) each
rect to absolute coordinates individually.

  • rendering/RenderThemeMac.mm:

(WebCore::RenderThemeMac::convertToPaintingRect): Pass a point to
offsetFromContainer().

LayoutTests:

  • fast/multicol/client-rects-expected.checksum: Added.
  • fast/multicol/client-rects-expected.png: Added.
  • fast/multicol/client-rects-expected.txt: Added.
  • fast/multicol/client-rects.html: Added.
11:16 Changeset [54783] by ap@apple.com

Reviewed by Kevin Decker.

<rdar://problem/7130641> Browser objects identity is not preserved by Safari

Test: plugins/netscape-browser-object-identity.html

  • bridge/runtime_root.h: (JSC::Bindings::RootObject::addInvalidationCallback): RootObject can now call out during invalidation, making it possible for other code to know when this happens.
  • bridge/runtime_root.cpp: (JSC::Bindings::RootObject::InvalidationCallback::~InvalidationCallback): Empty destructor, in cpp file since it's virtual. (JSC::Bindings::RootObject::invalidate): Invoke invalidation callbacks.
  • bridge/NP_jsobject.cpp: (ObjectMap): Keep a JSObject->NPObject map for each RootObject. It somewhat cleaner to keep it outside RootObject, because (1) it is agnostic of what kinds of objects can wrap JSObject, and (2) out of process NPAPI implementation also keeps its corresponding map separately, due to supporting per-instance granularity (as opposed to per-RootObject here). (jsDeallocate): Remove the corresponding map entry. (_NPN_CreateScriptObject): Try to fetch existing object from the map, incrementing refcount.
10:35 Changeset [54782] by philn@webkit.org

2010-02-15 Philippe Normand <pnormand@igalia.com>

Rubber-stamped by Gustavo Noronha Silva.

Removed redefine of LOG_VERBOSE. This should not have commited in
the first place.

  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
10:04 Changeset [54781] by eric@webkit.org

2010-02-15 Patrick Gansterer <paroga@paroga.com>

Reviewed by Laszlo Gombos.

Added additional parameter to create_rvct_stubs
for setting the offset of thunkReturnAddress.
https://bugs.webkit.org/show_bug.cgi?id=34657

  • create_rvct_stubs:
  • jit/JITStubs.cpp:
09:48 Changeset [54780] by pfeldman@chromium.org

2010-02-15 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: incorrect syntax highlighting as HTML in a script tag.
We were preserving initial lexer state upon entering other tags while in <script>
but were not doing it for <script tag itself. As a result, nested script
tags were failing to highlight.

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

  • inspector/front-end/SourceHTMLTokenizer.js: (WebInspector.SourceHTMLTokenizer.prototype.nextToken):
  • inspector/front-end/SourceHTMLTokenizer.re2js:
09:46 Changeset [54779] by eric@webkit.org

2010-02-15 Emilio Pozuelo Monfort <pochu27@gmail.com>

Reviewed by Gustavo Noronha Silva.

[GTK] Fails to build on GNU/Hurd because of PATH_MAX usage
https://bugs.webkit.org/show_bug.cgi?id=34920

Use dynamic allocation instead of fixed PATH_MAX size buffers to
fix the build on GNU/Hurd, where PATH_MAX is undefined.

  • tests/testmimehandling.c: (main):
  • tests/testwebview.c: (main):
09:31 Changeset [54778] by beidson@apple.com

Add a progress-indicator logging channel to WebCore, and convert the old WebKit Logging
messages over to WebCore-style.

Reviewed by Dan Bernstein.

No new tests. (Logging changes only)

  • loader/ProgressTracker.cpp:

(WebCore::ProgressTracker::progressStarted):
(WebCore::ProgressTracker::progressCompleted):
(WebCore::ProgressTracker::finalProgressComplete):
(WebCore::ProgressTracker::incrementProgress):

  • platform/Logging.cpp:

(WebCore::):
(WebCore::getChannelFromName):

  • platform/Logging.h:
09:10 Changeset [54777] by mnaganov@chromium.org

Revert 54776

Move JSC-specific wrappers for Profile and ProfileNode to bindings/js.
https://bugs.webkit.org/show_bug.cgi?id=34848

08:59 Changeset [54776] by mnaganov@chromium.org

2010-02-15 Mikhail Naganov <mnaganov@chromium.org>

Reviewed by Pavel Feldman.

Move JSC-specific wrappers for Profile and ProfileNode to bindings/js.

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

  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSBindingsAllInOne.cpp:
  • bindings/js/JavaScriptProfile.cpp: Added. (WebCore::profileCache): (WebCore::getTitleCallback): (WebCore::getHeadCallback): (WebCore::getUniqueIdCallback): (WebCore::focus): (WebCore::exclude): (WebCore::restoreAll): (WebCore::finalize): (WebCore::ProfileClass): (WebCore::toJS):
  • bindings/js/JavaScriptProfile.h: Added.
  • bindings/js/JavaScriptProfileNode.cpp: Added. (WebCore::profileNodeCache): (WebCore::getFunctionName): (WebCore::getURL): (WebCore::getLineNumber): (WebCore::getTotalTime): (WebCore::getSelfTime): (WebCore::getNumberOfCalls): (WebCore::getChildren): (WebCore::getVisible): (WebCore::getCallUID): (WebCore::finalize): (WebCore::ProfileNodeClass): (WebCore::toJS):
  • bindings/js/JavaScriptProfileNode.h: Added.
  • inspector/JavaScriptProfile.cpp: Removed.
  • inspector/JavaScriptProfile.h: Removed.
  • inspector/JavaScriptProfileNode.cpp: Removed.
  • inspector/JavaScriptProfileNode.h: Removed.
07:36 Changeset [54775] by eric@webkit.org

2010-02-15 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Simon Hausmann.

[Qt] QtWebkit bridge: enable passing a QWebElement to a signal/slot/property
https://bugs.webkit.org/show_bug.cgi?id=34901

When a signal/slot/property is of type QWebElement, it can seamlessly
connect with JS objects that hold a WebCore element.

New tests, see WebKit/qt/ChangeLog

  • bridge/qt/qt_runtime.cpp: (JSC::Bindings::QtWebElementRuntime::create): A proxy to QWebElement constructor (JSC::Bindings::QtWebElementRuntime::get): A proxy to QWebElement::element (JSC::Bindings::convertValueToQVariant): handle QWebElement (JSC::Bindings::convertQVariantToValue): handle QWebElement

2010-02-15 Noam Rosenthal <noam.rosenthal@nokia.com>

Reviewed by Simon Hausmann.

[Qt] QtWebkit bridge: enable passing a QWebElement to a signal/slot/property
Add Q_DECLARE_METATYPE to QWebElement, add relevant tests to
tst_qwebframe
https://bugs.webkit.org/show_bug.cgi?id=34901

  • Api/qwebelement.h: declare metatype
  • tests/qwebframe/tst_qwebframe.cpp: (MyQObject::webElementProperty): new test for QWebElement (MyQObject::setWebElementProperty): new test for QWebElement (MyQObject::myOverloadedSlot): new test for QWebElement
05:56 Changeset [54774] by pfeldman@chromium.org

2010-02-15 Pavel Feldman <pfeldman@chromium.org>

Not reviewed, Chromium tests fix (force conversion of property names to
strings in Web Inspector's injected script).

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor):
04:52 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
04:46 HackingGtk edited by joel@jms.id.au
(diff)
04:08 Changeset [54773] by eric@webkit.org

2010-02-15 Jedrzej Nowacki <jedrzej.nowacki@nokia.com>

Reviewed by Simon Hausmann.

Fix QScriptValue::toIntXX methods.

More ECMA Script compliance.

[Qt] QScriptValue::toIntXX returns incorrect values
https://bugs.webkit.org/show_bug.cgi?id=34847

  • qt/api/qscriptvalue_p.h: (QScriptValuePrivate::toInteger): (QScriptValuePrivate::toInt32): (QScriptValuePrivate::toUInt32): (QScriptValuePrivate::toUInt16):
  • qt/tests/qscriptvalue/tst_qscriptvalue.h:
  • qt/tests/qscriptvalue/tst_qscriptvalue_generated.cpp: (tst_QScriptValue::toInteger_initData): (tst_QScriptValue::toInteger_makeData): (tst_QScriptValue::toInteger_test): (tst_QScriptValue::toInt32_initData): (tst_QScriptValue::toInt32_makeData): (tst_QScriptValue::toInt32_test): (tst_QScriptValue::toUInt32_initData): (tst_QScriptValue::toUInt32_makeData): (tst_QScriptValue::toUInt32_test): (tst_QScriptValue::toUInt16_initData): (tst_QScriptValue::toUInt16_makeData): (tst_QScriptValue::toUInt16_test):
03:11 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
02:56 Changeset [54772] by eric@webkit.org

2010-02-15 Robert Hogan <robert@roberthogan.net>

Reviewed by Simon Hausmann.

[Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled().

Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT.

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

This allows the following tests to pass:

inspector/console-format-collections.html
inspector/styles-iframe.html
inspector/syntax-highlight-css.html
inspector/syntax-highlight-javascript.html
inspector/timeline-enum-stability.html
inspector/timeline-layout.html
inspector/timeline-mark-timeline.html
inspector/timeline-paint.html
inspector/timeline-parse-html.html
inspector/timeline-recalculate-styles.html
inspector/timeline-script-tag-1.html
inspector/timeline-script-tag-2.html
inspector/timeline-trivial.html
inspector/cookie-resource-match.html
inspector/elements-img-tooltip.html
inspector/elements-panel-selection-on-refresh.html
inspector/inspected-objects-not-overriden.html
inspector/timeline-event-dispatch.html
inspector/timeline-network-resource.html
inspector/elements-panel-rewrite-href.html
inspector/console-dir.html
inspector/console-dirxml.html
inspector/console-format.html
inspector/console-tests.html
inspector/elements-panel-structure.html
inspector/evaluate-in-frontend.html
inspector/console-clear.html

  • platform/qt/Skipped:

2010-02-15 Robert Hogan <robert@roberthogan.net>, Jocelyn Turcotte <jocelyn.turcotte@nokia.com>

Reviewed by Simon Hausmann.

[Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled().

Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT.

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

This allows the following tests to pass:

inspector/console-format-collections.html
inspector/styles-iframe.html
inspector/syntax-highlight-css.html
inspector/syntax-highlight-javascript.html
inspector/timeline-enum-stability.html
inspector/timeline-layout.html
inspector/timeline-mark-timeline.html
inspector/timeline-paint.html
inspector/timeline-parse-html.html
inspector/timeline-recalculate-styles.html
inspector/timeline-script-tag-1.html
inspector/timeline-script-tag-2.html
inspector/timeline-trivial.html
inspector/cookie-resource-match.html
inspector/elements-img-tooltip.html
inspector/elements-panel-selection-on-refresh.html
inspector/inspected-objects-not-overriden.html
inspector/timeline-event-dispatch.html
inspector/timeline-network-resource.html
inspector/elements-panel-rewrite-href.html
inspector/console-dir.html
inspector/console-dirxml.html
inspector/console-format.html
inspector/console-tests.html
inspector/elements-panel-structure.html
inspector/evaluate-in-frontend.html
inspector/console-clear.html

  • Api/qwebpage.cpp: (qt_drt_webinspector_executeScript): (qt_drt_webinspector_close): (qt_drt_webinspector_show): (qt_drt_setTimelineProfilingEnabled):
  • WebCoreSupport/InspectorClientQt.cpp: (InspectorClientQt::createPage)

2010-02-15 Robert Hogan <robert@roberthogan.net>

Reviewed by Simon Hausmann.

[Qt] DRT: Support evaluateInWebInspector(), setTimelineProfilingEnabled().

Support LayoutTestController.evaluateInWebInspector(), setTimelineProfilingEnabled() in Qt DRT.

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

This allows the following tests to pass:

inspector/console-format-collections.html
inspector/styles-iframe.html
inspector/syntax-highlight-css.html
inspector/syntax-highlight-javascript.html
inspector/timeline-enum-stability.html
inspector/timeline-layout.html
inspector/timeline-mark-timeline.html
inspector/timeline-paint.html
inspector/timeline-parse-html.html
inspector/timeline-recalculate-styles.html
inspector/timeline-script-tag-1.html
inspector/timeline-script-tag-2.html
inspector/timeline-trivial.html
inspector/cookie-resource-match.html
inspector/elements-img-tooltip.html
inspector/elements-panel-selection-on-refresh.html
inspector/inspected-objects-not-overriden.html
inspector/timeline-event-dispatch.html
inspector/timeline-network-resource.html
inspector/elements-panel-rewrite-href.html
inspector/console-dir.html
inspector/console-dirxml.html
inspector/console-format.html
inspector/console-tests.html
inspector/elements-panel-structure.html
inspector/evaluate-in-frontend.html
inspector/console-clear.html

  • DumpRenderTree/qt/DumpRenderTreeQt.cpp: (WebCore::DumpRenderTree::resetToConsistentStateBeforeTesting): (WebCore::isWebInspectorTest): (WebCore::DumpRenderTree::open):
  • DumpRenderTree/qt/DumpRenderTreeQt.h: (WebCore::DumpRenderTree::display):
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::closeWebInspector): (LayoutTestController::showWebInspector): (LayoutTestController::evaluateInWebInspector): (LayoutTestController::setTimelineProfilingEnabled): (LayoutTestController::display):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
02:51 Changeset [54771] by pfeldman@chromium.org

2010-02-15 Pavel Feldman <pfeldman@chromium.org>

Not reviewed: touch InspectorController in order to kick win bot tests
with new injected script contents.

  • inspector/InspectorController.cpp:
02:44 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
02:34 Changeset [54770] by pfeldman@chromium.org

2010-02-14 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: highlight actual search match in elements panel.

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

  • inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.searchCanceled): (WebInspector.ElementsPanel.prototype.performSearch): (WebInspector.ElementsPanel.prototype.addNodesToSearchResult): (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): (WebInspector.ElementsPanel.prototype._highlightCurrentSearchResult): (WebInspector.ElementsPanel.prototype._hideSearchHighlights):
  • inspector/front-end/InjectedScript.js:
  • inspector/front-end/SourceFrame.js: (WebInspector.SourceFrame.prototype.findSearchMatches):
  • inspector/front-end/TextViewer.js: (WebInspector.TextViewer.prototype._paintLine):
  • inspector/front-end/textViewer.css:
  • inspector/front-end/utilities.js:
02:22 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
02:20 Changeset [54769] by pfeldman@chromium.org

2010-02-14 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Timothy Hatcher.

Web Inspector: XPathResult objects are not expanded in console.

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

  • inspector/front-end/InjectedScript.js: (injectedScriptConstructor):
  • inspector/front-end/ObjectPropertiesSection.js: (WebInspector.ObjectPropertiesSection.prototype.updateProperties): (WebInspector.ObjectPropertiesSection.CompareProperties): (WebInspector.ObjectPropertyTreeElement.prototype.update):
  • inspector/front-end/Section.js: (WebInspector.Section):
  • inspector/front-end/inspector.css:

Tests:

  • inspector/console-dir-expected.txt:
  • inspector/console-dir.html:
02:20 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
02:14 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
02:07 QtWebKitTableOfFeatures46 edited by henry.haverinen@nokia.com
(diff)
01:51 Changeset [54768] by philn@webkit.org

2010-02-15 Philippe Normand <pnormand@igalia.com>

media/video-display-aspect-ratio.html fails
https://bugs.webkit.org/show_bug.cgi?id=34933

Skipped the new test that fails.

  • platform/mac-leopard/Skipped:
  • platform/mac-snowleopard/Skipped:
  • platform/win/Skipped:
01:28 Changeset [54767] by antti@apple.com

2010-02-12 Antti Koivisto <koivisto@iki.fi>

Reviewed by Kenneth Rohde Christiansen and Simon Hausmann.


https://bugs.webkit.org/show_bug.cgi?id=34885
Add a QGraphicsWebView mode that makes it automatically resize itself to the size of the content.

This is useful for cases where the client wants to implement page panning and zooming by manipulating
the graphics item.


Add a option to QGVLauncher to test this mode.

  • Api/qgraphicswebview.cpp: (QGraphicsWebViewPrivate::QGraphicsWebViewPrivate): (QGraphicsWebViewPrivate::updateResizesToContentsForPage): (QGraphicsWebViewPrivate::_q_contentsSizeChanged): (QGraphicsWebView::setPage): (QGraphicsWebView::setResizesToContents): (QGraphicsWebView::resizesToContents):
  • Api/qgraphicswebview.h:
  • QGVLauncher/main.cpp: (WebView::WebView): (MainView::MainView): (MainView::setMainWidget): (MainView::resizeEvent): (main):
00:48 Changeset [54766] by philn@webkit.org

2010-02-10 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[Gtk] wrong video aspect ratio
https://bugs.webkit.org/show_bug.cgi?id=34790

Fixed natural size calculation regarding pixel aspect ratio and
display aspect ratio.

Test: media/video-display-aspect-ratio.html

  • platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: (WebCore::greatestCommonDivisor): (WebCore::MediaPlayerPrivate::naturalSize):

2010-02-12 Philippe Normand <pnormand@igalia.com>

Reviewed by Gustavo Noronha Silva.

[Gtk] wrong video aspect ratio
https://bugs.webkit.org/show_bug.cgi?id=34790

Test checking the size of a 4:3 video with a 16:9 pixel aspect
ratio.

  • media/content/test-par-16-9.mp4: Added.
  • media/video-display-aspect-ratio-expected.txt: Added.
  • media/video-display-aspect-ratio.html: Added.
Note: See TracTimeline for information about the timeline view.