Timeline



Aug 1, 2010:

7:03 PM Changeset in webkit [64451] by tkent@chromium.org
  • 2 edits in trunk/WebKitTools

2010-08-01 Kent Tamura <tkent@chromium.org>

Reviewed by Dimitri Glazkov.

[DRT/Chromium] Remove string_util.h dependency
https://bugs.webkit.org/show_bug.cgi?id=43312

  • DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::pathToLocalResource): Use string::find() instead of StartsWithASCII(). (LayoutTestController::cppVariantToInt32): Use strtol() instead of StringToNumber().
7:02 PM Changeset in webkit [64450] by tkent@chromium.org
  • 3 edits in trunk/LayoutTests

2010-08-01 Kent Tamura <tkent@chromium.org>

Unreviewed, test expectation update.

  • platform/chromium/drt_expectations.txt:
  • platform/chromium/test_expectations.txt:
4:05 PM Changeset in webkit [64449] by andersca@apple.com
  • 7 edits in trunk/WebKit2

Implement NPN_SetException
https://bugs.webkit.org/show_bug.cgi?id=43320

Reviewed by Sam Weinig.

  • WebProcess/Plugins/JSNPObject.cpp:

(WebKit::JSNPObject::callConstructor):
(WebKit::JSNPObject::put):
(WebKit::JSNPObject::getOwnPropertyNames):
(WebKit::JSNPObject::propertyGetter):
Call NPRuntimeObjectMap::moveGlobalExceptionToExecState.

  • WebProcess/Plugins/NPRuntimeObjectMap.cpp:

(WebKit::globalExceptionString):
Add static global.

(WebKit::NPRuntimeObjectMap::setGlobalException):
Set the global exception string.

(WebKit::NPRuntimeObjectMap::moveGlobalExceptionToExecState):
Create an error from the exception string.

  • WebProcess/Plugins/NPRuntimeObjectMap.h:
  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_SetException):
Call NetscapePlugin::setException.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::setException):
Call NPRuntimeObjectMap::setGlobalException.

3:50 PM Changeset in webkit [64448] by weinig@apple.com
  • 2 edits in trunk/WebKit2

Roll r64446 out. It broke the test runner.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::postMessageToInjectedBundle):

2:42 PM Changeset in webkit [64447] by andersca@apple.com
  • 7 edits in trunk

Minor NPRuntime fixes
https://bugs.webkit.org/show_bug.cgi?id=43318

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/JSNPObject.h:

(WebKit::JSNPObject::npObject):

  • WebProcess/Plugins/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
If we see an JSNPObject, extract the NPObject.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetProperty):
Don't check for whether the property exists before getting it.

LayoutTests:

Remove now passing tests.

  • platform/mac-wk2/Skipped:
2:11 PM Changeset in webkit [64446] by weinig@apple.com
  • 2 edits in trunk/WebKit2

Don't send user messages to the injected bundle if the process is not active
https://bugs.webkit.org/show_bug.cgi?id=43317

Reviewed by Anders Carlsson.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::postMessageToInjectedBundle):

2:05 PM Changeset in webkit [64445] by weinig@apple.com
  • 9 edits in trunk

Add ability to reset frame names for WebKitTestRunner
https://bugs.webkit.org/show_bug.cgi?id=43316

Reviewed by Anders Carlsson.

WebKit2:

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

(WKBundlePageClearMainFrameName):

  • WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h:
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::clearMainFrameName):

  • WebProcess/WebPage/WebPage.h:

WebKitTools:

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::reset):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::reset):

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.h:
2:02 PM Changeset in webkit [64444] by andersca@apple.com
  • 12 edits
    3 adds in trunk

Implement NPN_RemoveProperty
https://bugs.webkit.org/show_bug.cgi?id=43315

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::removeProperty):
Try to remove the property.

(WebKit::NPJSObject::npClass):
Add NP_RemoveProperty.

(WebKit::NPJSObject::NP_RemoveProperty):
Call NPJSObject::removeProperty.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_RemoveProperty):
Call the NPClass::removeProperty function.

WebKitTools:

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

Add NPRuntimeRemoveProperty.cpp

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:

(PluginTest::NPN_GetStringIdentifier):
(PluginTest::NPN_GetIntIdentifier):
(PluginTest::NPN_RemoveProperty):
Add NPN_ helpers.

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.h:

Support more NPClass functions.

  • DumpRenderTree/TestNetscapePlugIn/Tests/NPRuntimeRemoveProperty.cpp: Added.

(NPRuntimeRemoveProperty::NPRuntimeRemoveProperty):
Test for NPN_RemoveProperty.

(NPRuntimeRemoveProperty::TestObject::hasMethod):
(NPRuntimeRemoveProperty::TestObject::invoke):
Add a testRemoveProperty method.

(NPRuntimeRemoveProperty::NPP_GetValue):
Return the test object.

  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
  • DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
  • GNUmakefile.am:

Add NPRuntimeRemoveProperty.cpp

LayoutTests:

Add a test for NPN_RemoveProperty.

  • plugins/npruntime/remove-property-expected.txt: Added.
  • plugins/npruntime/remove-property.html: Added.
12:39 PM Changeset in webkit [64443] by andersca@apple.com
  • 4 edits in trunk/WebKitTools

Add an NPObject class template helper to TestNetscapePlugin
https://bugs.webkit.org/show_bug.cgi?id=43288

Reviewed by Sam Weinig.

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.h:

Add some template magic to be able to figure out if a class has a member function of a given type.

(PluginTest::Object::create):
Create an object.

(PluginTest::Object::invokeDefault):
Add dummy function, this should never be called.

(PluginTest::Object::Object):
Initialize m_pluginTest to 0.

(PluginTest::Object::~Object):
Add virtual destructor.

(PluginTest::Object::NP_Allocate):
Create a new object.

(PluginTest::Object::NP_Deallocate):
Delete the object.

(PluginTest::Object::NP_InvokeDefault):
Call invokeDefault.

(PluginTest::Object::npClass):
Initialize the NPClass struct.

  • DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp:

(DocumentOpenInDestroyStream::NPP_DestroyStream):
Move this inline.

  • DumpRenderTree/TestNetscapePlugIn/Tests/PluginScriptableNPObjectInvokeDefault.cpp:

(PluginScriptableNPObjectInvokeDefault::NPObjectWithInvokeDefault::invokeDefault):
(PluginScriptableNPObjectInvokeDefault::NPP_GetValue):
Use the PluginTest::Object class template.

5:39 AM Changeset in webkit [64442] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

2010-08-01 Kent Tamura <tkent@chromium.org>

Unreviewed, test expectation update.

  • platform/chromium/drt_expectations.txt:
4:42 AM Changeset in webkit [64441] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

2010-08-01 Kent Tamura <tkent@chromium.org>

Unreviewed, test expectation update.

  • platform/chromium/drt_expectations.txt:
2:49 AM Changeset in webkit [64440] by Nikolas Zimmermann
  • 15 edits
    4 adds in trunk

2010-08-01 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

SVG gradients do not update when scripted via xlink
https://bugs.webkit.org/show_bug.cgi?id=42953

Unify cycle detection logic for chainable (through xlink:href) and ordinary resources.
All operate on the render tree now, instead of falling back to the DOM tree for xlink:href queries.

When linking resources, register as regular client, so the regular update mechanisms work as expected.
<linearGradient id="foo"><stop../> </linearGradient>
<linearGradient id="bar" xlink:href="#foo"/>
<rect fill="url(#bar)"/>

Without that the rect won't receive invalidation notifications, as foo <-> bar had no connection.
Fixes the last outstanding class of invalidations. Also speeds up the cycle detetion, when using chained resources,
as no SVG DOM queries have to be executed anymore.

Test: svg/custom/js-update-stop-linked-gradient.svg

  • rendering/RenderSVGResourceContainer.cpp: (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): (WebCore::linkedResourceForContainer):
  • rendering/SVGResources.cpp: (WebCore::SVGResources::SVGResources): (WebCore::chainableResourceTags): (WebCore::targetReferenceFromResource): (WebCore::registerPendingResource): (WebCore::SVGResources::buildCachedResources): (WebCore::SVGResources::invalidateClient): (WebCore::SVGResources::resourceDestroyed): (WebCore::SVGResources::buildSetOfResources): (WebCore::SVGResources::setLinkedResource): (WebCore::SVGResources::resetLinkedResource): (WebCore::SVGResources::dump):
  • rendering/SVGResources.h: (WebCore::SVGResources::linkedResource):
  • rendering/SVGResourcesCycleSolver.cpp: (WebCore::SVGResourcesCycleSolver::resolveCycles): (WebCore::SVGResourcesCycleSolver::breakCycle):
  • rendering/SVGResourcesCycleSolver.h:
  • svg/SVGFilterElement.cpp: (WebCore::SVGFilterElement::SVGFilterElement):
  • svg/SVGFilterElement.h:
  • svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::SVGGradientElement):
  • svg/SVGGradientElement.h:
  • svg/SVGLinearGradientElement.cpp: (WebCore::SVGLinearGradientElement::collectGradientProperties):
  • svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::SVGPatternElement): (WebCore::SVGPatternElement::collectPatternProperties):
  • svg/SVGPatternElement.h:
  • svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::collectGradientProperties):

2010-08-01 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

SVG gradients do not update when scripted via xlink
https://bugs.webkit.org/show_bug.cgi?id=42953

Add new test covering updates of linked gradients.

  • platform/mac/svg/custom/js-update-stop-linked-gradient-expected.checksum: Added.
  • platform/mac/svg/custom/js-update-stop-linked-gradient-expected.png: Added.
  • platform/mac/svg/custom/js-update-stop-linked-gradient-expected.txt: Added.
  • svg/custom/js-update-stop-linked-gradient.svg: Added.

Jul 31, 2010:

11:12 PM Changeset in webkit [64439] by mitz@apple.com
  • 2 edits in trunk/WebCore

Try to fix the Windows build when zlib is not available.

  • platform/graphics/WOFFFileFormat.cpp:
11:05 PM Changeset in webkit [64438] by mitz@apple.com
  • 2 edits in trunk/WebCore

Try to fix the Windows build when zlib is not available.

  • platform/graphics/WOFFFileFormat.cpp:
11:03 PM Changeset in webkit [64437] by mitz@apple.com
  • 2 edits in trunk/WebCore

Try to fix the Windows build when zlib is not available.

  • platform/graphics/WOFFFileFormat.cpp:
10:53 PM Changeset in webkit [64436] by mitz@apple.com
  • 2 edits in trunk/WebCore

Fix typo in attempted build fix.

  • platform/graphics/WOFFFileFormat.cpp:
10:47 PM Changeset in webkit [64435] by mitz@apple.com
  • 2 edits in trunk/WebCore

Try to fix the Windows build when zlib is not available.

  • platform/graphics/WOFFFileFormat.cpp:
10:04 PM Changeset in webkit [64434] by mitz@apple.com
  • 24 edits
    5 adds in trunk

<rdar://problem/8234766> Add WOFF support for @font-face
https://bugs.webkit.org/show_bug.cgi?id=31302

Reviewed by Darin Adler.

WebCore:

  • WebCore.vcproj/WebCore.vcproj: Added WOFFFileFormat.{cpp,h}.
  • WebCore.vcproj/WebCoreCommon.vsprops: Added $(WebKitLibraries)\include\zlib to the header search path.
  • WebCore.xcodeproj/project.pbxproj: Added WOFFFileFormat.{cpp,h} and linking against libz.
  • css/CSSFontFaceSrcValue.cpp:

(WebCore::CSSFontFaceSrcValue::isSupportedFormat): Replaced hard-coded list of supported formats with
call to FontCustomPlatformData::supportsFormat().

  • platform/graphics/WOFFFileFormat.cpp: Added.

(WebCore::isWOFF): Checks if the buffer has the WOFF signature.
(WebCore::convertWOFFToSfnt): Extracts the sfnt payload of a WOFF package.

  • platform/graphics/WOFFFileFormat.h: Added.
  • platform/graphics/cairo/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype.

  • platform/graphics/cairo/FontCustomPlatformData.h:
  • platform/graphics/chromium/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype,
and also for woff if the OpenType sanitizer is enabled.

  • platform/graphics/chromium/FontCustomPlatformData.h:
  • platform/graphics/gtk/FontCustomPlatformDataPango.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns false.

  • platform/graphics/haiku/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Ditto.

  • platform/graphics/haiku/FontCustomPlatformData.h:
  • platform/graphics/mac/FontCustomPlatformData.cpp:

(WebCore::freeSfntData):
(WebCore::createFontCustomPlatformData): If the OpenType font sanitizer is not enabled, use convertWOFFToSfnt().
(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype, opentype and woff.

  • platform/graphics/mac/FontCustomPlatformData.h:
  • platform/graphics/qt/FontCustomPlatformData.h:
  • platform/graphics/qt/FontCustomPlatformDataQt.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype.

  • platform/graphics/win/FontCustomPlatformData.cpp:

(WebCore::createFontCustomPlatformData): If the OpenType font sanitizer is not enabled, use convertWOFFToSfnt().
(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype, opentype and woff.

  • platform/graphics/win/FontCustomPlatformData.h:
  • platform/graphics/win/FontCustomPlatformDataCairo.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Added. Returns true for truetype and opentype.

  • platform/graphics/win/FontCustomPlatformDataCairo.h:
  • platform/graphics/wince/FontCustomPlatformData.cpp:

(WebCore::FontCustomPlatformData::supportsFormat): Ditto.

  • platform/graphics/wince/FontCustomPlatformData.h:

LayoutTests:

  • platform/mac/Skipped: Enabled fast/css/font-face-woff.html.
  • platform/mac/fast/css/font-face-woff-expected.checksum: Added.
  • platform/mac/fast/css/font-face-woff-expected.png: Added.
  • platform/mac/fast/css/font-face-woff-expected.txt: Added.
9:19 PM Changeset in webkit [64433] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

Update skipped list to get us to ~100 failures for Mac WebKit2.

Rubber-stamped by Dan Bernstein.

  • platform/mac-wk2/Skipped:
6:10 PM Changeset in webkit [64432] by rniwa@webkit.org
  • 10 edits in trunk

2010-07-31 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Ojan Vafai.

SplitElementCommand shouldn't be duplicating id attribute
https://bugs.webkit.org/show_bug.cgi?id=27156

Modified SplitElementCommand to delete the id attribute from the second element when splitting an element.
Since this causes WebKit not to merge split elements, added shouldSplitElement to ApplyStyleCommand which
determines the necessity of splitting the element.

To share code between shouldSplitElement and removeInlineStyleFromElement (extracted from applyInlineStyle)
dontRemove was added as the 3rd argument to removeHTMLFontStyle, removeHTMLBidiEmbeddingStyle, and removeCSSStyle.

Test: editing/style/split-element-id-duplication.html

  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyBlockStyle): Added 3rd argument for removeCSSStyle. (WebCore::ApplyStyleCommand::applyInlineStyle): Calls shouldSplitElement. (WebCore::ApplyStyleCommand::removeInlineStyleFromElement): Extracted from removeInlineStyle. (WebCore::ApplyStyleCommand::shouldRemoveInlineStyleFromElement): Inline helper for removeInlineStyleFromElement. (WebCore::ApplyStyleCommand::removeHTMLFontStyle): Added dontRemove. (WebCore::ApplyStyleCommand::removeHTMLBidiEmbeddingStyle): Added dontRemove. (WebCore::ApplyStyleCommand::removeCSSStyle): Added dontRemove. (WebCore::ApplyStyleCommand::removeInlineStyle): Calls removeInlineStyleFromElement. (WebCore::ApplyStyleCommand::splitTextElementAtStart): Removed the call to splitTextAtStart. Branching is now done in applyInlineStyle. (WebCore::ApplyStyleCommand::splitTextElementAtEnd): Ditto for splitTextAtEnd. (WebCore::ApplyStyleCommand::shouldSplitElement): Added.
  • editing/ApplyStyleCommand.h:
  • editing/SplitElementCommand.cpp: (WebCore::SplitElementCommand::executeApply): Deletes the id attribute from the second element. (WebCore::SplitElementCommand::doUnapply): Recovers the id attribute of the second element.

2010-07-31 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Ojan Vafai.

SplitElementCommand shouldn't be duplicating id attribute
https://bugs.webkit.org/show_bug.cgi?id=27156

Added a test to ensure splitting element doesn't produce multiple nodes with the same id.

  • editing/execCommand/indent-nested-blockquotes-expected.txt: Removed the duplication of nodes with the same id.
  • editing/execCommand/indent-pre-expected.txt: Ditto.
  • editing/execCommand/indent-second-paragraph-in-blockquote-expected.txt: Ditto.
  • editing/execCommand/outdent-regular-blockquote-expected.txt:
  • editing/style/split-element-id-duplication-expected.txt: Added.
  • editing/style/split-element-id-duplication.html: Added.
  • editing/undo/redo-style-expected.txt: Editing delegates changed.
5:59 PM Changeset in webkit [64431] by atwilson@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed text expectations change for Chromium.

Patch by Satish Sampath <satish@chromium.org> on 2010-07-31
Disable speech input layout tests while they get updated.
https://bugs.webkit.org/show_bug.cgi?id=43310

  • platform/chromium/test_expectations.txt: Disabled speech input tests.
5:42 PM Changeset in webkit [64430] by weinig@apple.com
  • 4 edits in trunk/WebKit2

Crash due to calling StringImpl::createCFString() from non-main thread in plug-in code
https://bugs.webkit.org/show_bug.cgi?id=43306
<rdar://problem/8259687>

Reviewed by Darin Adler.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::getMIMETypeForExtension):
(WebKit::PluginInfoStore::findPlugin):

  • UIProcess/Plugins/PluginInfoStore.h:
  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::safeCreateCFString):
(WebKit::PluginInfoStore::getMIMETypeForExtension):
Bypass MIMETypeRegistry in the UIProcess until we can safely convert Strings
to CFStringRefs.

4:43 PM Changeset in webkit [64429] by luiz@webkit.org
  • 4 edits in trunk

2010-07-31 Luiz Agostini <luiz.agostini@openbossa.org>

Build fix: Windows.

  • platform/win/PopupMenuWin.h:

2010-07-31 Luiz Agostini <luiz.agostini@openbossa.org>

Build fix: Windows.

  • WebView.cpp: (WebView::mouseWheel):
4:41 PM Changeset in webkit [64428] by ddkilzer@apple.com
  • 2 edits in trunk/WebKit

<http://webkit.org/b/43307> Make sure all private headers are copied to PrivateHeaders directory

Reviewed by Dan Bernstein.

This also fixes compilation of DumpRenderTree after changes for
Bug 40627.

  • WebKit.xcodeproj/project.pbxproj: Set the PRIVATE attribute on

the following headers:

  • WebFormDelegatePrivate.h
  • WebKitStatisticsPrivate.h
  • WebSecurityOriginPrivate.h
4:12 PM Changeset in webkit [64427] by luiz@webkit.org
  • 2 edits in trunk/WebCore

2010-07-31 Luiz Agostini <luiz.agostini@openbossa.org>

Windows build fix.

  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenuWin::PopupMenuWndProc):
3:37 PM Changeset in webkit [64426] by weinig@apple.com
  • 7 edits in trunk

Patch for https://bugs.webkit.org/show_bug.cgi?id=43305
Add back WKBundleFrameCopyInnerText to fix ~50 test failures
due to SVGElements not having the innerText function.

Reviewed by Dan Bernstein.

WebKit2:

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

(WKBundleFrameCopyInnerText):

  • WebProcess/InjectedBundle/API/c/WKBundleFramePrivate.h:
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::innerText):

  • WebProcess/WebPage/WebFrame.h:

WebKitTools:

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::dumpFrameText):

3:25 PM Changeset in webkit [64425] by luiz@webkit.org
  • 67 edits
    20 copies
    1 add in trunk

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

Classes PopupMenu and SearchPopupMenu have been made pure virtual.

  • platform/PopupMenu.h: (WebCore::PopupMenu::~PopupMenu):
  • platform/SearchPopupMenu.h: (WebCore::SearchPopupMenu::~SearchPopupMenu):

Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use
the new pure virtual PopupMenu and SearchPopupMenu.

  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::adjustInnerStyle): (WebCore::RenderMenuList::showPopup):
  • rendering/RenderMenuList.h:
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): (WebCore::RenderTextControlSingleLine::addSearchResult): (WebCore::RenderTextControlSingleLine::showPopup): (WebCore::RenderTextControlSingleLine::hidePopup): (WebCore::RenderTextControlSingleLine::updateFromElement): (WebCore::RenderTextControlSingleLine::valueChanged):
  • rendering/RenderTextControlSingleLine.h:

Chrome and ChromeClient were made responsible for providing instances of classes
PopupMenu and SearchPopupMenu to its users.

  • loader/EmptyClients.h: (WebCore::EmptyPopupMenu::show): (WebCore::EmptyPopupMenu::hide): (WebCore::EmptyPopupMenu::updateFromElement): (WebCore::EmptyPopupMenu::disconnectClient): (WebCore::EmptySearchPopupMenu::popupMenu): (WebCore::EmptySearchPopupMenu::saveRecentSearches): (WebCore::EmptySearchPopupMenu::loadRecentSearches): (WebCore::EmptySearchPopupMenu::enabled): (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural): (WebCore::EmptyChromeClient::createPopupMenu): (WebCore::EmptyChromeClient::createSearchPopupMenu):
  • page/Chrome.cpp: (WebCore::Chrome::selectItemWritingDirectionIsNatural): (WebCore::Chrome::createPopupMenu): (WebCore::Chrome::createSearchPopupMenu):
  • page/Chrome.h:
  • page/ChromeClient.h:

Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited
in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h).
Each of new the files contain the concrete classes that inherit form PopupMenu or
SearchPopupMenu and are specific for the corresponding platform.

brew:

  • platform/brew/PopupMenuBrew.cpp: (WebCore::PopupMenuBrew::PopupMenuBrew): (WebCore::PopupMenuBrew::~PopupMenuBrew): (WebCore::PopupMenuBrew::disconnectClient): (WebCore::PopupMenuBrew::show): (WebCore::PopupMenuBrew::hide): (WebCore::PopupMenuBrew::updateFromElement):
  • platform/brew/PopupMenuBrew.h: Added. (WebCore::PopupMenuBrew::client):
  • platform/brew/SearchPopupMenuBrew.cpp: (WebCore::SearchPopupMenuBrew::saveRecentSearches): (WebCore::SearchPopupMenuBrew::loadRecentSearches): (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew): (WebCore::SearchPopupMenuBrew::enabled): (WebCore::SearchPopupMenuBrew::popupMenu):
  • platform/brew/SearchPopupMenuBrew.h: Added.

chromium:

  • WebCore.gypi:
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupMenuChromium::PopupMenuChromium): (WebCore::PopupMenuChromium::~PopupMenuChromium): (WebCore::PopupMenuChromium::show): (WebCore::PopupMenuChromium::hide): (WebCore::PopupMenuChromium::updateFromElement): (WebCore::PopupMenuChromium::disconnectClient):
  • platform/chromium/PopupMenuChromium.h: (WebCore::PopupMenuChromium::client):
  • platform/chromium/SearchPopupMenuChromium.cpp: (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium): (WebCore::SearchPopupMenuChromium::popupMenu): (WebCore::SearchPopupMenuChromium::enabled): (WebCore::SearchPopupMenuChromium::saveRecentSearches): (WebCore::SearchPopupMenuChromium::loadRecentSearches):
  • platform/chromium/SearchPopupMenuChromium.h: Added.

efl:

  • platform/efl/PopupMenuEfl.cpp: (WebCore::PopupMenuEfl::PopupMenuEfl): (WebCore::PopupMenuEfl::~PopupMenuEfl): (WebCore::PopupMenuEfl::show): (WebCore::PopupMenuEfl::hide): (WebCore::PopupMenuEfl::updateFromElement): (WebCore::PopupMenuEfl::disconnectClient):
  • platform/efl/PopupMenuEfl.h: Added. (WebCore::PopupMenuEfl::client):
  • platform/efl/SearchPopupMenuEfl.cpp: (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl): (WebCore::SearchPopupMenuEfl::popupMenu): (WebCore::SearchPopupMenuEfl::saveRecentSearches): (WebCore::SearchPopupMenuEfl::loadRecentSearches): (WebCore::SearchPopupMenuEfl::enabled):
  • platform/efl/SearchPopupMenuEfl.h: Added.

gtk:

  • GNUmakefile.am:
  • platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenuGtk::PopupMenuGtk): (WebCore::PopupMenuGtk::~PopupMenuGtk): (WebCore::PopupMenuGtk::show): (WebCore::PopupMenuGtk::hide): (WebCore::PopupMenuGtk::updateFromElement): (WebCore::PopupMenuGtk::disconnectClient): (WebCore::PopupMenuGtk::menuItemActivated): (WebCore::PopupMenuGtk::menuUnmapped): (WebCore::PopupMenuGtk::menuPositionFunction): (WebCore::PopupMenuGtk::menuRemoveItem):
  • platform/gtk/PopupMenuGtk.h: Added. (WebCore::PopupMenuGtk::client):
  • platform/gtk/SearchPopupMenuGtk.cpp: (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk): (WebCore::SearchPopupMenuGtk::popupMenu): (WebCore::SearchPopupMenuGtk::saveRecentSearches): (WebCore::SearchPopupMenuGtk::loadRecentSearches): (WebCore::SearchPopupMenuGtk::enabled):
  • platform/gtk/SearchPopupMenuGtk.h: Added.

haiku:

  • platform/haiku/PopupMenuHaiku.cpp: (WebCore::HaikuPopup::HaikuPopup): (WebCore::HaikuPopup::~HaikuPopup): (WebCore::PopupMenuHaiku::PopupMenuHaiku): (WebCore::PopupMenuHaiku::~PopupMenuHaiku): (WebCore::PopupMenuHaiku::disconnectClient): (WebCore::PopupMenuHaiku::show): (WebCore::PopupMenuHaiku::hide): (WebCore::PopupMenuHaiku::updateFromElement):
  • platform/haiku/PopupMenuHaiku.h: Added. (WebCore::PopupMenuHaiku::disconnectClient): (WebCore::PopupMenuHaiku::client):
  • platform/haiku/SearchPopupMenuHaiku.cpp: (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku): (WebCore::SearchPopupMenuHaiku::saveRecentSearches): (WebCore::SearchPopupMenuHaiku::loadRecentSearches): (WebCore::SearchPopupMenuHaiku::enabled): (WebCore::SearchPopupMenuHaiku::popupMenu):
  • platform/haiku/SearchPopupMenuHaiku.h: Added.

mac:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mac/PopupMenuMac.h: Added. (WebCore::PopupMenuMac::disconnectClient): (WebCore::PopupMenuMac::client):
  • platform/mac/PopupMenuMac.mm: (WebCore::PopupMenuMac::PopupMenuMac): (WebCore::PopupMenuMac::~PopupMenuMac): (WebCore::PopupMenuMac::clear): (WebCore::PopupMenuMac::populate): (WebCore::PopupMenuMac::show): (WebCore::PopupMenuMac::hide): (WebCore::PopupMenuMac::updateFromElement): (WebCore::PopupMenuMac::itemWritingDirectionIsNatural):
  • platform/mac/SearchPopupMenuMac.h: Added.
  • platform/mac/SearchPopupMenuMac.mm: (WebCore::SearchPopupMenuMac::SearchPopupMenuMac): (WebCore::SearchPopupMenuMac::popupMenu): (WebCore::SearchPopupMenuMac::enabled): (WebCore::SearchPopupMenuMac::saveRecentSearches): (WebCore::SearchPopupMenuMac::loadRecentSearches):

qt:

  • WebCore.pro:
  • platform/qt/PopupMenuQt.cpp: (WebCore::PopupMenuQt::PopupMenuQt): (WebCore::PopupMenuQt::~PopupMenuQt): (WebCore::PopupMenuQt::disconnectClient): (WebCore::PopupMenuQt::show): (WebCore::PopupMenuQt::hide): (WebCore::PopupMenuQt::updateFromElement):
  • platform/qt/PopupMenuQt.h: Added.
  • platform/qt/QtAbstractWebPopup.h:
  • platform/qt/SearchPopupMenuQt.cpp: (WebCore::SearchPopupMenuQt::SearchPopupMenuQt): (WebCore::SearchPopupMenuQt::popupMenu): (WebCore::SearchPopupMenuQt::saveRecentSearches): (WebCore::SearchPopupMenuQt::loadRecentSearches): (WebCore::SearchPopupMenuQt::enabled):
  • platform/qt/SearchPopupMenuQt.h: Added.

win:

  • WebCore.vcproj/WebCore.vcproj:
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenuWin::PopupMenuWin): (WebCore::PopupMenuWin::~PopupMenuWin): (WebCore::PopupMenuWin::disconnectClient): (WebCore::PopupMenuWin::popupClassName): (WebCore::PopupMenuWin::show): (WebCore::PopupMenuWin::hide): (WebCore::PopupMenuWin::calculatePositionAndSize): (WebCore::PopupMenuWin::setFocusedIndex): (WebCore::PopupMenuWin::visibleItems): (WebCore::PopupMenuWin::listIndexAtPoint): (WebCore::PopupMenuWin::focusedIndex): (WebCore::PopupMenuWin::focusFirst): (WebCore::PopupMenuWin::focusLast): (WebCore::PopupMenuWin::down): (WebCore::PopupMenuWin::up): (WebCore::PopupMenuWin::invalidateItem): (WebCore::PopupMenuWin::clientRect): (WebCore::PopupMenuWin::incrementWheelDelta): (WebCore::PopupMenuWin::reduceWheelDelta): (WebCore::PopupMenuWin::scrollToRevealSelection): (WebCore::PopupMenuWin::updateFromElement): (WebCore::PopupMenuWin::paint): (WebCore::PopupMenuWin::valueChanged): (WebCore::PopupMenuWin::invalidateScrollbarRect): (WebCore::PopupMenuWin::registerClass): (WebCore::PopupMenuWin::PopupMenuWndProc): (WebCore::PopupMenuWin::wndProc):
  • platform/win/PopupMenuWin.h: Added. (WebCore::PopupMenuWin::client): (WebCore::PopupMenuWin::scrollbar): (WebCore::PopupMenuWin::itemHeight): (WebCore::PopupMenuWin::windowRect): (WebCore::PopupMenuWin::popupHandle): (WebCore::PopupMenuWin::setWasClicked): (WebCore::PopupMenuWin::wasClicked): (WebCore::PopupMenuWin::setScrollOffset): (WebCore::PopupMenuWin::scrollOffset): (WebCore::PopupMenuWin::wheelDelta): (WebCore::PopupMenuWin::scrollbarCapturingMouse): (WebCore::PopupMenuWin::setScrollbarCapturingMouse):
  • platform/win/SearchPopupMenuWin.cpp: (WebCore::SearchPopupMenuWin::SearchPopupMenuWin): (WebCore::SearchPopupMenuWin::popupMenu): (WebCore::SearchPopupMenuWin::enabled): (WebCore::SearchPopupMenuWin::saveRecentSearches): (WebCore::SearchPopupMenuWin::loadRecentSearches):
  • platform/win/SearchPopupMenuWin.h: Added.

wx:

  • platform/wx/PopupMenuWx.cpp: (WebCore::PopupMenuWx::PopupMenuWx): (WebCore::PopupMenuWx::~PopupMenuWx): (WebCore::PopupMenuWx::disconnectClient): (WebCore::PopupMenuWx::show): (WebCore::PopupMenuWx::OnMenuItemSelected): (WebCore::PopupMenuWx::hide): (WebCore::PopupMenuWx::updateFromElement):
  • platform/wx/PopupMenuWx.h: Added. (WebCore::PopupMenuWx::client):
  • platform/wx/SearchPopupMenuWx.cpp: (WebCore::SearchPopupMenuWx::SearchPopupMenuWx): (WebCore::SearchPopupMenuWx::saveRecentSearches): (WebCore::SearchPopupMenuWx::loadRecentSearches): (WebCore::SearchPopupMenuWx::enabled): (WebCore::SearchPopupMenuWx::popupMenu):
  • platform/wx/SearchPopupMenuWx.h: Added.

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • src/ChromeClientImpl.cpp: (WebKit::ChromeClientImpl::selectItemWritingDirectionIsNatural): (WebKit::ChromeClientImpl::createPopupMenu): (WebKit::ChromeClientImpl::createSearchPopupMenu):
  • src/ChromeClientImpl.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientEfl.cpp: (WebCore::ChromeClientEfl::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientEfl::createPopupMenu): (WebCore::ChromeClientEfl::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientEfl.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::selectItemWritingDirectionIsNatural): (WebKit::ChromeClient::createPopupMenu): (WebKit::ChromeClient::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientGtk.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientHaiku.cpp: (WebCore::ChromeClientHaiku::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientHaiku::createPopupMenu): (WebCore::ChromeClientHaiku::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientHaiku.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::selectItemWritingDirectionIsNatural): (WebChromeClient::createPopupMenu): (WebChromeClient::createSearchPopupMenu):

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientQt::createPopupMenu): (WebCore::ChromeClientQt::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientQt.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::selectItemWritingDirectionIsNatural): (WebChromeClient::createPopupMenu): (WebChromeClient::createSearchPopupMenu):
  • WebCoreSupport/WebChromeClient.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebKitSupport/ChromeClientWx.cpp: (WebCore::ChromeClientWx::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientWx::createPopupMenu): (WebCore::ChromeClientWx::createSearchPopupMenu):
  • WebKitSupport/ChromeClientWx.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

Classes WebPopupMenu and WebSearchPopupMenu inherit from PopupMenu and
SearchPopupMenu respectively. At this point they are just empty implementations.

  • WebProcess/WebCoreSupport/WebPopupMenu.cpp: Added. (WebKit::WebPopupMenu::WebPopupMenu): (WebKit::WebPopupMenu::~WebPopupMenu): (WebKit::WebPopupMenu::disconnectClient): (WebKit::WebPopupMenu::show): (WebKit::WebPopupMenu::hide): (WebKit::WebPopupMenu::updateFromElement):
  • WebProcess/WebCoreSupport/WebPopupMenu.h: Added.
  • WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Added. (WebKit::WebSearchPopupMenu::WebSearchPopupMenu): (WebKit::WebSearchPopupMenu::popupMenu): (WebKit::WebSearchPopupMenu::saveRecentSearches): (WebKit::WebSearchPopupMenu::loadRecentSearches): (WebKit::WebSearchPopupMenu::enabled):
  • WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Added.

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural): (WebKit::WebChromeClient::createPopupMenu): (WebKit::WebChromeClient::createSearchPopupMenu):
  • WebProcess/WebCoreSupport/WebChromeClient.h:

build issues:

  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:
2:55 PM Changeset in webkit [64424] by atwilson@chromium.org
  • 7 edits
    6 adds in trunk/LayoutTests

Unreviewed un-rollback of r64375 so Satish can land his fixes.

  • fast/speech/input-appearance-numberandspeech-expected.txt: Added.
  • fast/speech/input-appearance-numberandspeech.html: Added.
  • fast/speech/input-appearance-searchandspeech-expected.txt: Added.
  • fast/speech/input-appearance-searchandspeech.html: Added.
  • fast/speech/input-appearance-speechbutton-expected.txt: Added.
  • fast/speech/input-appearance-speechbutton.html: Added.
  • platform/chromium/drt_expectations.txt:
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
2:04 PM Changeset in webkit [64423] by commit-queue@webkit.org
  • 66 edits
    21 deletes in trunk

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • GNUmakefile.am:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • loader/EmptyClients.h:
  • page/Chrome.cpp:
  • page/Chrome.h:
  • page/ChromeClient.h:
  • platform/PopupMenu.h: (WebCore::PopupMenu::create): (WebCore::PopupMenu::disconnectClient): (WebCore::PopupMenu::client): (WebCore::PopupMenu::scrollbar): (WebCore::PopupMenu::itemHeight): (WebCore::PopupMenu::windowRect): (WebCore::PopupMenu::popupHandle): (WebCore::PopupMenu::setWasClicked): (WebCore::PopupMenu::wasClicked): (WebCore::PopupMenu::setScrollOffset): (WebCore::PopupMenu::scrollOffset): (WebCore::PopupMenu::wheelDelta): (WebCore::PopupMenu::scrollbarCapturingMouse): (WebCore::PopupMenu::setScrollbarCapturingMouse): (WebCore::PopupMenu::isActive): (WebCore::PopupMenu::scrollbarCornerPresent):
  • platform/SearchPopupMenu.h: (WebCore::SearchPopupMenu::create):
  • platform/brew/PopupMenuBrew.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/brew/PopupMenuBrew.h: Removed.
  • platform/brew/SearchPopupMenuBrew.cpp: (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches): (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::enabled):
  • platform/brew/SearchPopupMenuBrew.h: Removed.
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/chromium/PopupMenuChromium.h:
  • platform/chromium/SearchPopupMenuChromium.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::enabled): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches):
  • platform/chromium/SearchPopupMenuChromium.h: Removed.
  • platform/efl/PopupMenuEfl.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/efl/PopupMenuEfl.h: Removed.
  • platform/efl/SearchPopupMenuEfl.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches): (WebCore::SearchPopupMenu::enabled):
  • platform/efl/SearchPopupMenuEfl.h: Removed.
  • platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural): (WebCore::PopupMenu::menuItemActivated): (WebCore::PopupMenu::menuUnmapped): (WebCore::PopupMenu::menuPositionFunction): (WebCore::PopupMenu::menuRemoveItem):
  • platform/gtk/PopupMenuGtk.h: Removed.
  • platform/gtk/SearchPopupMenuGtk.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches): (WebCore::SearchPopupMenu::enabled):
  • platform/gtk/SearchPopupMenuGtk.h: Removed.
  • platform/haiku/PopupMenuHaiku.cpp: (WebCore::PopupMenuHaiku::PopupMenuHaiku): (WebCore::PopupMenuHaiku::~PopupMenuHaiku): (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/haiku/PopupMenuHaiku.h: Removed.
  • platform/haiku/SearchPopupMenuHaiku.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches): (WebCore::SearchPopupMenu::enabled):
  • platform/haiku/SearchPopupMenuHaiku.h: Removed.
  • platform/mac/PopupMenuMac.h: Removed.
  • platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::clear): (WebCore::PopupMenu::populate): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/mac/SearchPopupMenuMac.h: Removed.
  • platform/mac/SearchPopupMenuMac.mm: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::enabled): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches):
  • platform/qt/PopupMenuQt.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/qt/PopupMenuQt.h: Removed.
  • platform/qt/QtAbstractWebPopup.h:
  • platform/qt/SearchPopupMenuQt.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches): (WebCore::SearchPopupMenu::enabled):
  • platform/qt/SearchPopupMenuQt.h: Removed.
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::popupClassName): (WebCore::PopupMenu::show): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::calculatePositionAndSize): (WebCore::PopupMenu::setFocusedIndex): (WebCore::PopupMenu::visibleItems): (WebCore::PopupMenu::listIndexAtPoint): (WebCore::PopupMenu::focusedIndex): (WebCore::PopupMenu::focusFirst): (WebCore::PopupMenu::focusLast): (WebCore::PopupMenu::down): (WebCore::PopupMenu::up): (WebCore::PopupMenu::invalidateItem): (WebCore::PopupMenu::clientRect): (WebCore::PopupMenu::incrementWheelDelta): (WebCore::PopupMenu::reduceWheelDelta): (WebCore::PopupMenu::scrollToRevealSelection): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural): (WebCore::PopupMenu::paint): (WebCore::PopupMenu::valueChanged): (WebCore::PopupMenu::invalidateScrollbarRect): (WebCore::PopupMenu::registerClass): (WebCore::PopupMenu::PopupMenuWndProc): (WebCore::PopupMenu::wndProc):
  • platform/win/PopupMenuWin.h: Removed.
  • platform/win/SearchPopupMenuWin.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::enabled): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches):
  • platform/win/SearchPopupMenuWin.h: Removed.
  • platform/wx/PopupMenuWx.cpp: (WebCore::PopupMenu::PopupMenu): (WebCore::PopupMenu::~PopupMenu): (WebCore::PopupMenu::show): (WebCore::PopupMenu::OnMenuItemSelected): (WebCore::PopupMenu::hide): (WebCore::PopupMenu::updateFromElement): (WebCore::PopupMenu::itemWritingDirectionIsNatural):
  • platform/wx/PopupMenuWx.h: Removed.
  • platform/wx/SearchPopupMenuWx.cpp: (WebCore::SearchPopupMenu::SearchPopupMenu): (WebCore::SearchPopupMenu::saveRecentSearches): (WebCore::SearchPopupMenu::loadRecentSearches): (WebCore::SearchPopupMenu::enabled):
  • platform/wx/SearchPopupMenuWx.h: Removed.
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::adjustInnerStyle): (WebCore::RenderMenuList::showPopup):
  • rendering/RenderMenuList.h:
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): (WebCore::RenderTextControlSingleLine::addSearchResult): (WebCore::RenderTextControlSingleLine::showPopup): (WebCore::RenderTextControlSingleLine::hidePopup): (WebCore::RenderTextControlSingleLine::updateFromElement): (WebCore::RenderTextControlSingleLine::valueChanged):
  • rendering/RenderTextControlSingleLine.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • src/ChromeClientImpl.cpp:
  • src/ChromeClientImpl.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebCoreSupport/ChromeClientEfl.cpp:
  • WebCoreSupport/ChromeClientEfl.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebCoreSupport/ChromeClientGtk.cpp:
  • WebCoreSupport/ChromeClientGtk.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebCoreSupport/ChromeClientHaiku.cpp:
  • WebCoreSupport/ChromeClientHaiku.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebCoreSupport/ChromeClientQt.cpp:
  • WebCoreSupport/ChromeClientQt.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebCoreSupport/WebChromeClient.cpp:
  • WebCoreSupport/WebChromeClient.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebKitSupport/ChromeClientWx.cpp:
  • WebKitSupport/ChromeClientWx.h:

2010-07-31 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64422.
http://trac.webkit.org/changeset/64422
https://bugs.webkit.org/show_bug.cgi?id=43304

Build fixes are needed for Snow Leopard and Windows.
(Requested by lca on #webkit).

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:
  • WebProcess/WebCoreSupport/WebChromeClient.h:
  • WebProcess/WebCoreSupport/WebPopupMenu.cpp: Removed.
  • WebProcess/WebCoreSupport/WebPopupMenu.h: Removed.
  • WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Removed.
  • WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Removed.
  • win/WebKit2.vcproj:
1:17 PM Changeset in webkit [64422] by luiz@webkit.org
  • 66 edits
    19 copies
    2 adds in trunk

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

Classes PopupMenu and SearchPopupMenu have been made pure virtual.

  • platform/PopupMenu.h: (WebCore::PopupMenu::~PopupMenu):
  • platform/SearchPopupMenu.h: (WebCore::SearchPopupMenu::~SearchPopupMenu):

Classes RenderMenuList and RenderTexyControlSingleLine have been changed to use
the new pure virtual PopupMenu and SearchPopupMenu.

  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::adjustInnerStyle): (WebCore::RenderMenuList::showPopup):
  • rendering/RenderMenuList.h:
  • rendering/RenderTextControlSingleLine.cpp: (WebCore::RenderTextControlSingleLine::~RenderTextControlSingleLine): (WebCore::RenderTextControlSingleLine::addSearchResult): (WebCore::RenderTextControlSingleLine::showPopup): (WebCore::RenderTextControlSingleLine::hidePopup): (WebCore::RenderTextControlSingleLine::updateFromElement): (WebCore::RenderTextControlSingleLine::valueChanged):
  • rendering/RenderTextControlSingleLine.h:

Chrome and ChromeClient were made responsible for providing instances of classes
PopupMenu and SearchPopupMenu to its users.

  • loader/EmptyClients.h: (WebCore::EmptyPopupMenu::show): (WebCore::EmptyPopupMenu::hide): (WebCore::EmptyPopupMenu::updateFromElement): (WebCore::EmptyPopupMenu::disconnectClient): (WebCore::EmptySearchPopupMenu::popupMenu): (WebCore::EmptySearchPopupMenu::saveRecentSearches): (WebCore::EmptySearchPopupMenu::loadRecentSearches): (WebCore::EmptySearchPopupMenu::enabled): (WebCore::EmptyChromeClient::selectItemWritingDirectionIsNatural): (WebCore::EmptyChromeClient::createPopupMenu): (WebCore::EmptyChromeClient::createSearchPopupMenu):
  • page/Chrome.cpp: (WebCore::Chrome::selectItemWritingDirectionIsNatural): (WebCore::Chrome::createPopupMenu): (WebCore::Chrome::createSearchPopupMenu):
  • page/Chrome.h:
  • page/ChromeClient.h:

Original contents of files PopupMenu.h and SearchPopupMenu.h have been splited
in several files, two for each platform (PopupMenuXXX.h and SearchPopupMenuXXX.h).
Each of new the files contain the concrete classes that inherit form PopupMenu or
SearchPopupMenu and are specific for the corresponding platform.

brew:

  • platform/brew/PopupMenuBrew.cpp: (WebCore::PopupMenuBrew::PopupMenuBrew): (WebCore::PopupMenuBrew::~PopupMenuBrew): (WebCore::PopupMenuBrew::disconnectClient): (WebCore::PopupMenuBrew::show): (WebCore::PopupMenuBrew::hide): (WebCore::PopupMenuBrew::updateFromElement):
  • platform/brew/PopupMenuBrew.h: Added. (WebCore::PopupMenuBrew::client):
  • platform/brew/SearchPopupMenuBrew.cpp: (WebCore::SearchPopupMenuBrew::saveRecentSearches): (WebCore::SearchPopupMenuBrew::loadRecentSearches): (WebCore::SearchPopupMenuBrew::SearchPopupMenuBrew): (WebCore::SearchPopupMenuBrew::enabled): (WebCore::SearchPopupMenuBrew::popupMenu):
  • platform/brew/SearchPopupMenuBrew.h: Added.

chromium:

  • WebCore.gypi:
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupMenuChromium::PopupMenuChromium): (WebCore::PopupMenuChromium::~PopupMenuChromium): (WebCore::PopupMenuChromium::show): (WebCore::PopupMenuChromium::hide): (WebCore::PopupMenuChromium::updateFromElement): (WebCore::PopupMenuChromium::disconnectClient):
  • platform/chromium/PopupMenuChromium.h: (WebCore::PopupMenuChromium::client):
  • platform/chromium/SearchPopupMenuChromium.cpp: (WebCore::SearchPopupMenuChromium::SearchPopupMenuChromium): (WebCore::SearchPopupMenuChromium::popupMenu): (WebCore::SearchPopupMenuChromium::enabled): (WebCore::SearchPopupMenuChromium::saveRecentSearches): (WebCore::SearchPopupMenuChromium::loadRecentSearches):
  • platform/chromium/SearchPopupMenuChromium.h: Added.

efl:

  • platform/efl/PopupMenuEfl.cpp: (WebCore::PopupMenuEfl::PopupMenuEfl): (WebCore::PopupMenuEfl::~PopupMenuEfl): (WebCore::PopupMenuEfl::show): (WebCore::PopupMenuEfl::hide): (WebCore::PopupMenuEfl::updateFromElement): (WebCore::PopupMenuEfl::disconnectClient):
  • platform/efl/PopupMenuEfl.h: Added. (WebCore::PopupMenuEfl::client):
  • platform/efl/SearchPopupMenuEfl.cpp: (WebCore::SearchPopupMenuEfl::SearchPopupMenuEfl): (WebCore::SearchPopupMenuEfl::popupMenu): (WebCore::SearchPopupMenuEfl::saveRecentSearches): (WebCore::SearchPopupMenuEfl::loadRecentSearches): (WebCore::SearchPopupMenuEfl::enabled):
  • platform/efl/SearchPopupMenuEfl.h: Added.

gtk:

  • GNUmakefile.am:
  • platform/gtk/PopupMenuGtk.cpp: (WebCore::PopupMenuGtk::PopupMenuGtk): (WebCore::PopupMenuGtk::~PopupMenuGtk): (WebCore::PopupMenuGtk::show): (WebCore::PopupMenuGtk::hide): (WebCore::PopupMenuGtk::updateFromElement): (WebCore::PopupMenuGtk::disconnectClient): (WebCore::PopupMenuGtk::menuItemActivated): (WebCore::PopupMenuGtk::menuUnmapped): (WebCore::PopupMenuGtk::menuPositionFunction): (WebCore::PopupMenuGtk::menuRemoveItem):
  • platform/gtk/PopupMenuGtk.h: Added. (WebCore::PopupMenuGtk::client):
  • platform/gtk/SearchPopupMenuGtk.cpp: (WebCore::SearchPopupMenuGtk::SearchPopupMenuGtk): (WebCore::SearchPopupMenuGtk::popupMenu): (WebCore::SearchPopupMenuGtk::saveRecentSearches): (WebCore::SearchPopupMenuGtk::loadRecentSearches): (WebCore::SearchPopupMenuGtk::enabled):
  • platform/gtk/SearchPopupMenuGtk.h: Added.

haiku:

  • platform/haiku/PopupMenuHaiku.cpp: (WebCore::HaikuPopup::HaikuPopup): (WebCore::HaikuPopup::~HaikuPopup): (WebCore::PopupMenuHaiku::PopupMenuHaiku): (WebCore::PopupMenuHaiku::~PopupMenuHaiku): (WebCore::PopupMenuHaiku::disconnectClient): (WebCore::PopupMenuHaiku::show): (WebCore::PopupMenuHaiku::hide): (WebCore::PopupMenuHaiku::updateFromElement):
  • platform/haiku/PopupMenuHaiku.h: Added. (WebCore::PopupMenuHaiku::disconnectClient): (WebCore::PopupMenuHaiku::client):
  • platform/haiku/SearchPopupMenuHaiku.cpp: (WebCore::SearchPopupMenuHaiku::SearchPopupMenuHaiku): (WebCore::SearchPopupMenuHaiku::saveRecentSearches): (WebCore::SearchPopupMenuHaiku::loadRecentSearches): (WebCore::SearchPopupMenuHaiku::enabled): (WebCore::SearchPopupMenuHaiku::popupMenu):
  • platform/haiku/SearchPopupMenuHaiku.h: Added.

mac:

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mac/PopupMenuMac.h: Added. (WebCore::PopupMenuMac::disconnectClient): (WebCore::PopupMenuMac::client):
  • platform/mac/PopupMenuMac.mm: (WebCore::PopupMenuMac::PopupMenuMac): (WebCore::PopupMenuMac::~PopupMenuMac): (WebCore::PopupMenuMac::clear): (WebCore::PopupMenuMac::populate): (WebCore::PopupMenuMac::show): (WebCore::PopupMenuMac::hide): (WebCore::PopupMenuMac::updateFromElement): (WebCore::PopupMenuMac::itemWritingDirectionIsNatural):
  • platform/mac/SearchPopupMenuMac.h: Added.
  • platform/mac/SearchPopupMenuMac.mm: (WebCore::SearchPopupMenuMac::SearchPopupMenuMac): (WebCore::SearchPopupMenuMac::popupMenu): (WebCore::SearchPopupMenuMac::enabled): (WebCore::SearchPopupMenuMac::saveRecentSearches): (WebCore::SearchPopupMenuMac::loadRecentSearches):

qt:

  • WebCore.pro:
  • platform/qt/PopupMenuQt.cpp: (WebCore::PopupMenuQt::PopupMenuQt): (WebCore::PopupMenuQt::~PopupMenuQt): (WebCore::PopupMenuQt::disconnectClient): (WebCore::PopupMenuQt::show): (WebCore::PopupMenuQt::hide): (WebCore::PopupMenuQt::updateFromElement):
  • platform/qt/PopupMenuQt.h: Added.
  • platform/qt/QtAbstractWebPopup.h:
  • platform/qt/SearchPopupMenuQt.cpp: (WebCore::SearchPopupMenuQt::SearchPopupMenuQt): (WebCore::SearchPopupMenuQt::popupMenu): (WebCore::SearchPopupMenuQt::saveRecentSearches): (WebCore::SearchPopupMenuQt::loadRecentSearches): (WebCore::SearchPopupMenuQt::enabled):
  • platform/qt/SearchPopupMenuQt.h: Added.

win:

  • WebCore.vcproj/WebCore.vcproj:
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenuWin::PopupMenuWin): (WebCore::PopupMenuWin::~PopupMenuWin): (WebCore::PopupMenuWin::disconnectClient): (WebCore::PopupMenuWin::popupClassName): (WebCore::PopupMenuWin::show): (WebCore::PopupMenuWin::hide): (WebCore::PopupMenuWin::calculatePositionAndSize): (WebCore::PopupMenuWin::setFocusedIndex): (WebCore::PopupMenuWin::visibleItems): (WebCore::PopupMenuWin::listIndexAtPoint): (WebCore::PopupMenuWin::focusedIndex): (WebCore::PopupMenuWin::focusFirst): (WebCore::PopupMenuWin::focusLast): (WebCore::PopupMenuWin::down): (WebCore::PopupMenuWin::up): (WebCore::PopupMenuWin::invalidateItem): (WebCore::PopupMenuWin::clientRect): (WebCore::PopupMenuWin::incrementWheelDelta): (WebCore::PopupMenuWin::reduceWheelDelta): (WebCore::PopupMenuWin::scrollToRevealSelection): (WebCore::PopupMenuWin::updateFromElement): (WebCore::PopupMenuWin::paint): (WebCore::PopupMenuWin::valueChanged): (WebCore::PopupMenuWin::invalidateScrollbarRect): (WebCore::PopupMenuWin::registerClass): (WebCore::PopupMenuWin::PopupMenuWndProc): (WebCore::PopupMenuWin::wndProc):
  • platform/win/PopupMenuWin.h: Added. (WebCore::PopupMenuWin::client): (WebCore::PopupMenuWin::scrollbar): (WebCore::PopupMenuWin::itemHeight): (WebCore::PopupMenuWin::windowRect): (WebCore::PopupMenuWin::popupHandle): (WebCore::PopupMenuWin::setWasClicked): (WebCore::PopupMenuWin::wasClicked): (WebCore::PopupMenuWin::setScrollOffset): (WebCore::PopupMenuWin::scrollOffset): (WebCore::PopupMenuWin::wheelDelta): (WebCore::PopupMenuWin::scrollbarCapturingMouse): (WebCore::PopupMenuWin::setScrollbarCapturingMouse):
  • platform/win/SearchPopupMenuWin.cpp: (WebCore::SearchPopupMenuWin::SearchPopupMenuWin): (WebCore::SearchPopupMenuWin::popupMenu): (WebCore::SearchPopupMenuWin::enabled): (WebCore::SearchPopupMenuWin::saveRecentSearches): (WebCore::SearchPopupMenuWin::loadRecentSearches):
  • platform/win/SearchPopupMenuWin.h: Added.

wx:

  • platform/wx/PopupMenuWx.cpp: (WebCore::PopupMenuWx::PopupMenuWx): (WebCore::PopupMenuWx::~PopupMenuWx): (WebCore::PopupMenuWx::disconnectClient): (WebCore::PopupMenuWx::show): (WebCore::PopupMenuWx::OnMenuItemSelected): (WebCore::PopupMenuWx::hide): (WebCore::PopupMenuWx::updateFromElement):
  • platform/wx/PopupMenuWx.h: Added. (WebCore::PopupMenuWx::client):
  • platform/wx/SearchPopupMenuWx.cpp: (WebCore::SearchPopupMenuWx::SearchPopupMenuWx): (WebCore::SearchPopupMenuWx::saveRecentSearches): (WebCore::SearchPopupMenuWx::loadRecentSearches): (WebCore::SearchPopupMenuWx::enabled): (WebCore::SearchPopupMenuWx::popupMenu):
  • platform/wx/SearchPopupMenuWx.h: Added.

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • src/ChromeClientImpl.cpp: (WebKit::ChromeClientImpl::selectItemWritingDirectionIsNatural): (WebKit::ChromeClientImpl::createPopupMenu): (WebKit::ChromeClientImpl::createSearchPopupMenu):
  • src/ChromeClientImpl.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientEfl.cpp: (WebCore::ChromeClientEfl::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientEfl::createPopupMenu): (WebCore::ChromeClientEfl::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientEfl.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::selectItemWritingDirectionIsNatural): (WebKit::ChromeClient::createPopupMenu): (WebKit::ChromeClient::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientGtk.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientHaiku.cpp: (WebCore::ChromeClientHaiku::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientHaiku::createPopupMenu): (WebCore::ChromeClientHaiku::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientHaiku.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::selectItemWritingDirectionIsNatural): (WebChromeClient::createPopupMenu): (WebChromeClient::createSearchPopupMenu):

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/ChromeClientQt.cpp: (WebCore::ChromeClientQt::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientQt::createPopupMenu): (WebCore::ChromeClientQt::createSearchPopupMenu):
  • WebCoreSupport/ChromeClientQt.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebCoreSupport/WebChromeClient.cpp: (WebChromeClient::selectItemWritingDirectionIsNatural): (WebChromeClient::createPopupMenu): (WebChromeClient::createSearchPopupMenu):
  • WebCoreSupport/WebChromeClient.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebKitSupport/ChromeClientWx.cpp: (WebCore::ChromeClientWx::selectItemWritingDirectionIsNatural): (WebCore::ChromeClientWx::createPopupMenu): (WebCore::ChromeClientWx::createSearchPopupMenu):
  • WebKitSupport/ChromeClientWx.h:

2010-07-27 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Darin Fisher.

PopupMenu refactoring in preparation to WebKit2
https://bugs.webkit.org/show_bug.cgi?id=42592

Classes WebPopupMenu and WebSearchPopupMenu inherit from PopupMenu and
SearchPopupMenu respectively. At this point they are just empty implementations.

  • WebProcess/WebCoreSupport/WebPopupMenu.cpp: Added. (WebKit::WebPopupMenu::WebPopupMenu): (WebKit::WebPopupMenu::~WebPopupMenu): (WebKit::WebPopupMenu::disconnectClient): (WebKit::WebPopupMenu::show): (WebKit::WebPopupMenu::hide): (WebKit::WebPopupMenu::updateFromElement):
  • WebProcess/WebCoreSupport/WebPopupMenu.h: Added.
  • WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp: Added. (WebKit::WebSearchPopupMenu::WebSearchPopupMenu): (WebKit::WebSearchPopupMenu::popupMenu): (WebKit::WebSearchPopupMenu::saveRecentSearches): (WebKit::WebSearchPopupMenu::loadRecentSearches): (WebKit::WebSearchPopupMenu::enabled):
  • WebProcess/WebCoreSupport/WebSearchPopupMenu.h: Added.

As ChromeClient was made responsible for providing PopupMenu and SearchPopupMenu
instances, concrete classes that inherit from ChromeClient needed to be changed to
implement the new methods.

  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::selectItemWritingDirectionIsNatural): (WebKit::WebChromeClient::createPopupMenu): (WebKit::WebChromeClient::createSearchPopupMenu):
  • WebProcess/WebCoreSupport/WebChromeClient.h:

build issues:

  • WebKit2.xcodeproj/project.pbxproj:
  • win/WebKit2.vcproj:
11:36 AM Changeset in webkit [64421] by ddkilzer@apple.com
  • 4 edits in trunk

<http://webkit.org/b/43300> Simplify variables in *.xcconfig files after adding iOS support

Reviewed by Darin Adler.

WebCore:

  • Configurations/WebCore.xcconfig: Extracted

PRODUCTION_FRAMEWORKS_DIR variable.

WebKit/mac:

  • Configurations/WebKit.xcconfig: Extracted

PRODUCTION_FRAMEWORKS_DIR and PRODUCTION_ROOT variables.

10:30 AM Changeset in webkit [64420] by Nikolas Zimmermann
  • 7 edits in trunk/WebCore

2010-07-31 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

HTMLStyleElement/SVGStyleElement need to share more code
https://bugs.webkit.org/show_bug.cgi?id=43293

Simplify HTMLStyleElement/SVGStyleElement. They look identically now, as all code is shared in StyleElement.
Doesn't affect any tests.

  • dom/StyleElement.cpp: (WebCore::StyleElement::StyleElement): Take createdByParser & Document arguments, to share the line number extraction logic. Store it in m_lineNumber. (WebCore::StyleElement::insertedIntoDocument): Moved addStyleSheetCandidateNode here, to share code between HTML/SVGStyleElement. (WebCore::StyleElement::removedFromDocument): Same for removeStyleSheetCandidateNode. (WebCore::StyleElement::childrenChanged): Introduced new helper function. (WebCore::StyleElement::finishParsingChildren): Ditto. (WebCore::StyleElement::process): Use stored m_lineNumber, avoids a parameter. (WebCore::StyleElement::createSheet): No need to call the virtual setLoading() function, just store m_loading in StyleElement, and set it from here. (WebCore::StyleElement::isLoading): Introduced new helper function. (WebCore::StyleElement::sheetLoaded): Ditto.
  • dom/StyleElement.h:
  • html/HTMLStyleElement.cpp: (WebCore::HTMLStyleElement::HTMLStyleElement): Pass Document & createdByParser arguments to StyleElement. (WebCore::HTMLStyleElement::finishParsingChildren): Delegate work to StyleElement. (WebCore::HTMLStyleElement::insertedIntoDocument): Ditto. (WebCore::HTMLStyleElement::removedFromDocument): Ditto. (WebCore::HTMLStyleElement::childrenChanged): Ditto.
  • html/HTMLStyleElement.h: (WebCore::HTMLStyleElement::isLoading): Ditto. (WebCore::HTMLStyleElement::sheetLoaded): Ditto.
  • svg/SVGStyleElement.cpp: (WebCore::SVGStyleElement::SVGStyleElement): Pass Document & createdByParser arguments to StyleElement. (WebCore::SVGStyleElement::finishParsingChildren): Delegate work to StyleElement. (WebCore::SVGStyleElement::insertedIntoDocument): Ditto. (WebCore::SVGStyleElement::removedFromDocument): Ditto. (WebCore::SVGStyleElement::childrenChanged): Ditto.
  • svg/SVGStyleElement.h: (WebCore::SVGStyleElement::isLoading): Ditto. (WebCore::SVGStyleElement::sheetLoaded): Ditto.
9:07 AM Changeset in webkit [64419] by atwilson@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

Unreviewed expectations change for Chromium.

  • platform/chromium-linux/svg/custom/massive-coordinates-expected.txt: Added.
3:55 AM Changeset in webkit [64418] by Nikolas Zimmermann
  • 2 edits
    1 add in trunk/LayoutTests

2010-07-31 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Some more housekeeping to turn Leopard but green again.

  • platform/mac-leopard/Skipped: Skip fast/text/hyphens* on Leopard, as they fail since days on the bots. Filed bug 43296.
  • platform/mac/fast/table/early-table-layout-expected.txt: Added, missing in bug r64225.
3:44 AM Changeset in webkit [64417] by Nikolas Zimmermann
  • 1 edit
    2 adds in trunk/LayoutTests

2010-07-31 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Add missing pixel baseline for new svg/custom/massive-coordinates.svg test.

  • platform/mac/svg/custom/massive-coordinates-expected.checksum: Added.
  • platform/mac/svg/custom/massive-coordinates-expected.png: Added.
3:15 AM Changeset in webkit [64416] by kinuko@chromium.org
  • 2 edits in trunk/WebCore

2010-07-31 Kinuko Yasuda <kinuko@chromium.org>

Unreviewed. Attempt to fix release build failure.

Having 'fail:' label without goto statement generates a compiler
warning that causes a build failure in release build.

  • bindings/scripts/CodeGeneratorV8.pm:
2:44 AM Changeset in webkit [64415] by kinuko@chromium.org
  • 10 edits in trunk/WebCore

2010-07-31 Kinuko Yasuda <kinuko@chromium.org>

Reviewed by Nikolas Zimmermann.

Fix 'bool' in bindings/scripts/test/TestObj.

  • bindings/scripts/test/CPP/WebDOMTestObj.cpp: (WebDOMTestObj::CREATE): (WebDOMTestObj::setCREATE):
  • bindings/scripts/test/CPP/WebDOMTestObj.h:
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: (webkit_dom_test_obj_get_create): (webkit_dom_test_obj_set_create): (webkit_dom_test_obj_set_property): (webkit_dom_test_obj_get_property): (webkit_dom_test_obj_class_init):
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h:
  • bindings/scripts/test/JS/JSTestObj.cpp: (WebCore::jsTestObjCreate): (WebCore::setJSTestObjCreate):
  • bindings/scripts/test/ObjC/DOMTestObj.h:
  • bindings/scripts/test/ObjC/DOMTestObj.mm: (-[DOMTestObj CREATE]): (-[DOMTestObj setCREATE:]):
  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp: (WebCore::TestObjInternal::CREATEAttrGetter): (WebCore::TestObjInternal::CREATEAttrSetter):
1:44 AM Changeset in webkit [64414] by kinuko@chromium.org
  • 15 edits
    18 adds in trunk/WebCore

2010-07-30 Kinuko Yasuda <kinuko@chromium.org>

Reviewed by Dumitru Daniliuc.

Add idl and mock implementation for HTML5 FileSystem API
https://bugs.webkit.org/show_bug.cgi?id=43134

Add idl for: FileSystem (as DOMFileSystem), Entry, Flags, Metadata,
FileSystemCallback, EntryCallback and ErrorCallback.
http://dev.w3.org/2009/dap/file-system/file-dir-sys.html

They are added only for Mac and chromium.

Tests will be added when we expose the entry point and add implementation.

  • DerivedSources.make:
  • WebCore.gypi:
  • WebCore.xcodeproj/project.pbxproj:
  • storage/DOMFileSystem.cpp: Added.
  • storage/DOMFileSystem.h: Added.
  • storage/DOMFileSystem.idl: Added.
  • storage/Entry.cpp: Added.
  • storage/Entry.h: Added.
  • storage/Entry.idl: Added.
  • storage/EntryCallback.h: Added.
  • storage/EntryCallback.idl: Added.
  • storage/ErrorCallback.h: Added.
  • storage/ErrorCallback.idl: Added.
  • storage/FileSystemCallback.h: Added.
  • storage/FileSystemCallback.idl: Added.
  • storage/Flags.h: Added.
  • storage/Flags.idl: Added.
  • storage/Metadata.h: Added.
  • storage/Metadata.idl: Added.
  • storage/MetadataCallback.h: Added.
  • storage/MetadataCallback.idl: Added.
  • bindings/scripts/CodeGenerator.pm: Added special case handlings for generating setter/getter names for CREATE/EXCLUSIVE attributes in Flags.idl.
  • bindings/scripts/test/TestObj.idl: Updated.
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated.
  • bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated.
  • bindings/scripts/test/CPP/WebDOMTestObj.h: Updated.
  • bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Updated.
  • bindings/scripts/test/GObject/WebKitDOMTestObj.h: Updated.
  • bindings/scripts/test/JS/JSTestObj.cpp: Updated.
  • bindings/scripts/test/JS/JSTestObj.h: Updated.
  • bindings/scripts/test/ObjC/DOMTestObj.h: Updated.
  • bindings/scripts/test/ObjC/DOMTestObj.mm: Updated.
12:35 AM Changeset in webkit [64413] by atwilson@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed expectations to mark stretch-to-view-height.html failing on
Chromium.

  • platform/chromium/test_expectations.txt:
12:07 AM Changeset in webkit [64412] by dbates@webkit.org
  • 2 edits in trunk/WebKit/win

2010-07-31 Daniel Bates <dbates@rim.com>

Attempt to fix the Windows build after changeset 64409 <http://trac.webkit.org/changeset/64409>.

  • WebFrame.cpp: (WebFrame::setPrinting):

Jul 30, 2010:

11:58 PM Changeset in webkit [64411] by commit-queue@webkit.org
  • 26 edits
    3 deletes in trunk

2010-07-30 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64408.
http://trac.webkit.org/changeset/64408
https://bugs.webkit.org/show_bug.cgi?id=43292

Causing failed tests on Chromium canaries due to wrong history
item counts (Requested by atwilson on #webkit).

  • fast/css/target-fragment-match.html:
  • fast/dom/Window/timer-resume-on-navigation-back.html:
  • fast/dom/location-hash.html:
  • fast/events/pageshow-pagehide-on-back-cached-with-frames-expected.txt:
  • fast/events/pageshow-pagehide-on-back-cached-with-frames.html:
  • fast/frames/resources/cached-page-1.html:
  • fast/frames/resources/cached-page-2.html:
  • fast/harness/resources/cached-page-1.html:
  • fast/harness/resources/cached-page-with-data-urls.html:
  • fast/history/gesture-before-onload-expected.txt: Removed.
  • fast/history/gesture-before-onload.html: Removed.
  • fast/history/history-length.html:
  • fast/history/resources/gesture-before-onload-target.html: Removed.
  • fast/history/saves-state-after-fragment-nav.html:
  • fast/loader/input-element-page-cache-crash.html:
  • fast/loader/stateobjects/document-destroyed-navigate-back.html:
  • fast/loader/stateobjects/pushstate-clears-forward-history.html:
  • fast/loader/subframe-navigate-during-main-frame-load.html:
  • http/tests/history/redirect-js-document-location-before-load-expected.txt:
  • http/tests/history/redirect-js-location-assign-before-load-expected.txt:
  • http/tests/history/redirect-js-location-before-load-expected.txt:
  • http/tests/history/redirect-js-location-href-before-load-expected.txt:
  • http/tests/navigation/resources/document-location.js: (start):
  • security/autocomplete-cleared-on-back.html:
  • storage/hash-change-with-xhr.js: (runTest):

2010-07-30 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64408.
http://trac.webkit.org/changeset/64408
https://bugs.webkit.org/show_bug.cgi?id=43292

Causing failed tests on Chromium canaries due to wrong history
item counts (Requested by atwilson on #webkit).

  • loader/RedirectScheduler.cpp: (WebCore::RedirectScheduler::scheduleRedirect): (WebCore::RedirectScheduler::mustLockBackForwardList): (WebCore::RedirectScheduler::scheduleLocationChange): (WebCore::RedirectScheduler::scheduleFormSubmission):
  • loader/RedirectScheduler.h:
11:27 PM Changeset in webkit [64410] by commit-queue@webkit.org
  • 1 edit
    1 add in trunk

2010-07-30 Patrick Gansterer <paroga@paroga.com>

Reviewed by Nikolas Zimmermann.

[CMake] Add FindGperf.cmake
https://bugs.webkit.org/show_bug.cgi?id=39163

Add a clean gperf dedection since we need it for building.

  • CMakeLists.txt:
  • cmake/FindGperf.cmake: Added.
10:59 PM Changeset in webkit [64409] by mitz@apple.com
  • 18 edits
    3 adds in trunk

<rdar://problem/8257783> Short documents may print a second blank page
https://bugs.webkit.org/show_bug.cgi?id=43271

Reviewed by Darin Adler.

WebCore:

Test: printing/stretch-to-view-height.html

  • WebCore.exp.in: Export Frame::forceLayoutForPagination(), replacing forceLayoutWithPageWidthRange().
  • page/Frame.cpp:

(WebCore::Frame::setPrinting): Now takes a page width and height and a maximum shrink factor and passes
them down to forceLayoutForPagination().

  • page/Frame.h:

(WebCore::Frame::):

  • page/FrameView.cpp:

(WebCore::FrameView::reset): Initialize m_pageHeight.
(WebCore::FrameView::forceLayoutForPagination): Renamed forceLayoutWithPageWidthRange() to this and
changed it to take a page width and height and a maximum shrink factor. Sets m_pageHeight, which is
queried by RenderBox::calcHeight() during layout. If the given pageHeight is 0, m_pageHeight is set
to the visible height, retaining the behavior before this change.

  • page/FrameView.h:

(WebCore::FrameView::pageHeight): Added this accessor.

  • page/PrintContext.cpp:

(WebCore::PrintContext::begin): Added a height parameter, used when calling setPrinting().
(WebCore::PrintContext::end): Updated for setPrinting() changes.
(WebCore::PrintContext::pageNumberForElement): Account for shrink-to-fit.
(WebCore::PrintContext::pageProperty): Pass 0 for the height, retaining current behavior.
(WebCore::PrintContext::numberOfPages): Account for shrink-to-fit.
(WebCore::PrintContext::spoolAllPagesWithBoundaries): Pass the page width to begin().

  • page/PrintContext.h:
  • rendering/RenderBox.cpp:

(WebCore::RenderBox::calcHeight): When printing, use FrameView::pageHeight() as the basis for
viewport-relative heights.

WebKit/mac:

  • WebView/WebHTMLView.mm:

(-[WebHTMLView _web_setPrintingModeRecursive]): Updated for additional height parameter
to _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView _web_clearPrintingModeRecursive]): Ditto.
(-[WebHTMLView _web_setPrintingModeRecursiveAndAdjustViewSize]): Ditto.
(-[WebHTMLView _beginPrintModeWithPageWidth:height:shrinkToFit:]): Added height parameter,
which is scaled and passed on to _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView _endPrintMode]): Updated for additional height parameter to
_setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView layoutToMinimumPageWidth:height:maximumPageWidth:adjustingViewSize:]): Added
height parameter, which is passed on to FrameView::forceLayoutForPagination().
(-[WebHTMLView layout]): Updated for additional height parameter.
(-[WebHTMLView _setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize:]): Added height
parameter, which is passed on to -layoutToMinimumPageWidth:height:maximumPageWidth:adjustViewSize:.
(-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Updated for additional height
parameter.
(-[WebHTMLView setPageWidthForPrinting:]): Ditto.
(-[WebHTMLView knowsPageRange:]): Pass the available height on the page on to
_setPrinting:minimumPageWidth:height:maximumPageWidth:adjustViewSize.

  • WebView/WebHTMLViewPrivate.h:

WebKit/win:

  • WebFrame.cpp:

(WebFrame::setPrinting): Updated for changes to Frame::setPrinting(). Passing 0 for the
page height, which maintains existing behavior.

LayoutTests:

  • platform/mac/printing/media-queries-print-expected.txt:
  • printing/page-break-margin-collapsed-expected.txt:
  • printing/resources/paged-media-test-utils.js:

(ratioToPageHeightToPixels): Changed to reflect the default shrink factor of 1.25.

  • printing/script-tests/stretch-to-view-height.js: Added.

(test):

  • printing/stretch-to-view-height-expected.txt: Added.
  • printing/stretch-to-view-height.html: Added.
10:39 PM Changeset in webkit [64408] by commit-queue@webkit.org
  • 26 edits
    3 adds in trunk

2010-07-30 Mihai Parparita <mihaip@chromium.org>

Reviewed by Darin Fisher.

Session history should skip over JS redirects
https://bugs.webkit.org/show_bug.cgi?id=42861

Lock the back/forward list for location changes that happen before the
onload event fires that are not the result of user gestures.

http/tests/history tests now pass, their expectatiosn were updated
accordingly. Other tests needed a setTimeout wrapper around location
changes during onload, otherwise they would not generate history
entries as expected anymore.

  • fast/css/target-fragment-match.html:
  • fast/dom/Window/timer-resume-on-navigation-back.html:
  • fast/dom/location-hash.html:
  • fast/events/pageshow-pagehide-on-back-cached-with-frames-expected.txt:
  • fast/events/pageshow-pagehide-on-back-cached-with-frames.html:
  • fast/frames/resources/cached-page-1.html:
  • fast/frames/resources/cached-page-2.html:
  • fast/harness/resources/cached-page-1.html:
  • fast/harness/resources/cached-page-with-data-urls.html:
  • fast/history/gesture-before-onload-expected.txt: Added.
  • fast/history/gesture-before-onload.html: Added.
  • fast/history/history-length.html:
  • fast/history/resources/gesture-before-onload-target.html: Added.
  • fast/history/saves-state-after-fragment-nav.html:
  • fast/loader/input-element-page-cache-crash.html:
  • fast/loader/stateobjects/document-destroyed-navigate-back.html:
  • fast/loader/stateobjects/pushstate-clears-forward-history.html:
  • fast/loader/subframe-navigate-during-main-frame-load.html:
  • http/tests/history/redirect-js-document-location-before-load-expected.txt:
  • http/tests/history/redirect-js-location-assign-before-load-expected.txt:
  • http/tests/history/redirect-js-location-before-load-expected.txt:
  • http/tests/history/redirect-js-location-href-before-load-expected.txt:
  • http/tests/navigation/resources/document-location.js: (start):
  • security/autocomplete-cleared-on-back.html:
  • storage/hash-change-with-xhr.js: (updateDatabase): (invokeBack): (runTest): (runTestsInner):

2010-07-30 Mihai Parparita <mihaip@chromium.org>

Reviewed by Darin Fisher.

Session history should skip over JS redirects
https://bugs.webkit.org/show_bug.cgi?id=42861

Lock the back/forward list for location changes that happen before the
onload event fires that are not the result of user gestures.

Test: fast/history/gesture-before-onload.html and updated expectations
for http/tests/history tests that used to fail.

  • loader/RedirectScheduler.cpp: (WebCore::RedirectScheduler::scheduleRedirect): (WebCore::RedirectScheduler::mustLockBackForwardList): (WebCore::RedirectScheduler::scheduleLocationChange): (WebCore::RedirectScheduler::scheduleFormSubmission):
  • loader/RedirectScheduler.h:
10:08 PM Changeset in webkit [64407] by commit-queue@webkit.org
  • 5 edits
    6 adds in trunk

2010-07-30 Matthew Delaney <mdelaney@apple.com>

Reviewed by Darin Adler.

ctx.clearRect improperly clears shadow
https://bugs.webkit.org/show_bug.cgi?id=43213

  • canvas/philip/tests/2d.clearRect+fillRect.alpha0-expected.txt: Added.
  • canvas/philip/tests/2d.clearRect+fillRect.alpha0.5-expected.txt: Added.
  • canvas/philip/tests/2d.clearRect+fillRect.alpha0.5.html: Added. Same as above but with alpha of one half.
  • canvas/philip/tests/2d.clearRect+fillRect.alpha0.html: Added. Tests that clearing rect with alpha or 0 has no unwanted side-effects
  • canvas/philip/tests/2d.clearRect+fillRect.basic-expected.txt: Added.
  • canvas/philip/tests/2d.clearRect+fillRect.basic.html: Added. Tests clearing a rect and then filling back over doesn't show any side effects (such as caused by not ignoring/restoring appropriate context attributes).
  • platform/mac/Skipped: unskipping now passing test

2010-07-30 Matthew Delaney <mdelaney@apple.com>

Reviewed by Darin Adler.

ctx.clearRect improperly clears shadow
https://bugs.webkit.org/show_bug.cgi?id=43213

Tests: canvas/philip/tests/2d.clearRect+fillRect.alpha0.5.html

canvas/philip/tests/2d.clearRect+fillRect.alpha0.html
canvas/philip/tests/2d.clearRect+fillRect.basic.html

  • html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setAllAttributesToDefault): Added a new method to wipe out all context attributes to their defaults. (WebCore::CanvasRenderingContext2D::clearRect): Updated clearRect to ignore shadow, alpha, and global composite attributes when clearing the input rect to match the canvas spec.
  • html/canvas/CanvasRenderingContext2D.h:
10:04 PM Changeset in webkit [64406] by kinuko@chromium.org
  • 4 edits in trunk/WebCore

2010-07-30 Kinuko Yasuda <kinuko@chromium.org>

Reviewed by Jian Li.

Decouple FileThread from FileStream to support generic file-related async tasks
https://bugs.webkit.org/show_bug.cgi?id=43135

No new tests as this doesn't change any functionality.

  • html/FileThread.cpp: (WebCore::FileThread::stop): (WebCore::SameInstancePredicate::SameFilePredicate): (WebCore::SameInstancePredicate::operator()): (WebCore::FileThread::unscheduleTasksInternal):
  • html/FileThread.h: (WebCore::FileThread::create): (WebCore::FileThread::Task::instance): (WebCore::FileThread::Task::Task):
  • html/FileThreadTask.h: Changed all templates to take any type as a callee instance. (WebCore::createFileThreadTask):
9:39 PM Changeset in webkit [64405] by luiz@webkit.org
  • 2 edits in trunk/LayoutTests

2010-07-30 Luiz Agostini <luiz.agostini@openbossa.org>

Fix chromium test expectations.

Test fast/media/media-feature-wgt-view-mode.html rename to
fast/media/view-mode-media-feature.html.

  • platform/chromium/test_expectations.txt:
9:01 PM Changeset in webkit [64404] by darin@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-30 Darin Fisher <darin@chromium.org>

Fix layout test oops.

  • fast/loader/stateobjects/resources/pushstate-in-iframe-child.html:
8:38 PM Changeset in webkit [64403] by Joseph Pecoraro
  • 5 edits in trunk/WebKit/mac

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Fix for tests that broke after r64400. Tracking a more
ideal solution in https://bugs.webkit.org/show_bug.cgi?id=40627

Switch the interface back to (unsigned long long), and move
the WebDatabaseSecurityOrigin implementation up into WebSecurityOrigin.
The subclasses' implementations were not getting called.

  • Storage/WebDatabaseSecurityOrigin.mm:
  • WebCoreSupport/WebApplicationCacheSecurityOrigin.mm: (-[WebApplicationCacheSecurityOrigin quota]): (-[WebApplicationCacheSecurityOrigin setQuota:]):
  • WebCoreSupport/WebSecurityOrigin.mm: (-[WebSecurityOrigin usage]): (-[WebSecurityOrigin quota]): (-[WebSecurityOrigin setQuota:]):
  • WebCoreSupport/WebSecurityOriginPrivate.h:
8:19 PM Changeset in webkit [64402] by darin@chromium.org
  • 10 edits
    1 move in trunk

2010-07-30 Darin Fisher <darin@chromium.org>

Reviewed by Darin Adler.

Eliminate BackForwardList::pushStateItem
https://bugs.webkit.org/show_bug.cgi?id=43282

The layout test was previously disabled because of the assertion being
hit in BackForwardList::pushStateItem. That assertion revealed the need
for this patch.

Test: fast/loader/stateobjects/pushstate-in-iframe.html

  • history/BackForwardList.h:
  • history/BackForwardListChromium.cpp:
  • history/BackForwardListImpl.cpp:
  • history/BackForwardListImpl.h:
  • loader/HistoryController.cpp: Move the logic, of adding a null state object to the HistoryItem that was previously the current HistoryItem, to HistoryController::pushState from BackForwardList::pushStateItem. The BackForwardList was the wrong place for that logic since it lacked convenient access to the target HistoryItem. It is just given the top-most HistoryItem corresponding to the new navigation.

(WebCore::HistoryController::updateBackForwardListClippedAtTarget):
(WebCore::HistoryController::pushState):

7:46 PM Changeset in webkit [64401] by commit-queue@webkit.org
  • 17 edits
    2 moves in trunk

2010-07-30 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Simon Fraser.

Enabling view modes to all platforms
https://bugs.webkit.org/show_bug.cgi?id=37505

Removing ENABLE_WIDGETS_10_SUPPORT flag.

As view mode media feature is not part of widget 1.0 specification
any more the ENABLE_WIDGETS_10_SUPPORT flag may be removed. The only use
of this flag was related to view mode media feature implementation in Qt.

  • wtf/Platform.h:

2010-07-30 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Simon Fraser.

Enabling view modes to all platforms
https://bugs.webkit.org/show_bug.cgi?id=37505

Removing 'widget' reference from the layout tests because the view mode media feature
is not part of widget 1.0 specification any more.

The layout tests are stil skipped for all platforms except Qt because of the lack
of support of LayoutTestController in those platforms.

  • fast/media/view-mode-media-feature-expected.txt: Renamed from LayoutTests/fast/media/media-feature-wgt-view-mode-expected.txt.
  • fast/media/view-mode-media-feature.html: Renamed from LayoutTests/fast/media/media-feature-wgt-view-mode.html.
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/win/Skipped:

2010-07-30 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Simon Fraser.

Enabling view modes to all platforms
https://bugs.webkit.org/show_bug.cgi?id=37505

View mode media feature implementation as specified in http://www.w3.org/TR/view-mode.

The view mode media feature layout tests are stil skipped for all platforms except Qt
because of the lack of support of LayoutTestController in those platforms.

Test: fast/media/view-mode-media-feature.html

  • css/MediaFeatureNames.h:
  • css/MediaQueryEvaluator.cpp: (WebCore::view_modeMediaFeatureEval):
  • page/ChromeClient.h:
  • page/Page.cpp: (WebCore::Page::Page): (WebCore::createViewModesSet): (WebCore::Page::setViewMode):
  • page/Page.h: (WebCore::Page::viewMode):

2010-07-30 Luiz Agostini <luiz.agostini@openbossa.org>

Reviewed by Simon Fraser.

Enabling view modes to all platforms
https://bugs.webkit.org/show_bug.cgi?id=37505

As view mode media feature is now supported by WebCore there is no need
to keep its implementation here. QtWebKit now uses WebCore's view mode media feature
implementation.

  • Api/qwebpage.cpp: (QWebPagePrivate::dynamicPropertyChangeEvent):
  • Api/qwebpage_p.h:
  • WebCoreSupport/ChromeClientQt.cpp:
  • WebCoreSupport/ChromeClientQt.h:
7:22 PM Changeset in webkit [64400] by Joseph Pecoraro
  • 39 edits
    3 moves
    4 adds in trunk

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by David Kilzer.

WebCore:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Part 4 - Client Notification when the Quota is Reached

Notify the WebKit client when the per-origin quota is reached
via a delegate method reachedApplicationCacheOriginQuota.

Call the delegate method when the quota is reached.

  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): (WebCore::ApplicationCacheGroup::didFinishLoading): (WebCore::ApplicationCacheGroup::didReachOriginQuota): (WebCore::ApplicationCacheGroup::cacheUpdateFailedDueToOriginQuota): (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): (WebCore::ApplicationCacheGroup::scheduleReachedOriginQuotaCallback):
  • loader/appcache/ApplicationCacheGroup.h:

Some minor refactoring to access more quota information
without repeating code. Such as origin usage, and creating
an origin record.

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::usageForOrigin): (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): (WebCore::ApplicationCacheStorage::store): (WebCore::ApplicationCacheStorage::ensureOriginRecord):
  • loader/appcache/ApplicationCacheStorage.h:

Boilerplate. Exports and definition of the delegate method.

  • WebCore.OfflineWebApplications.exp:
  • loader/EmptyClients.h: (WebCore::EmptyChromeClient::reachedApplicationCacheOriginQuota):
  • page/ChromeClient.h:

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

WebKit:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

  • WebKit.xcodeproj/project.pbxproj:
  • efl/WebCoreSupport/ChromeClientEfl.cpp: (WebCore::ChromeClientEfl::reachedApplicationCacheOriginQuota):
  • efl/WebCoreSupport/ChromeClientEfl.h:

WebKit/chromium:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

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

WebKit/gtk:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

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

WebKit/haiku:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

  • WebCoreSupport/ChromeClientHaiku.cpp: (WebCore::ChromeClientWx::reachedApplicationCacheOriginQuota):
  • WebCoreSupport/ChromeClientHaiku.h:

WebKit/mac:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Part 4 - Client Notification when the Quota is Reached

Notify the WebKit client when the per-origin quota is reached
via a delegate method reachedApplicationCacheOriginQuota.

Refactor the WebSecurityOrigin class to be generic enough to
allow quota management of both Databases or Application Caches
via subclasses.

  • Storage/WebDatabaseSecurityOrigin.h: Added.
  • Storage/WebDatabaseSecurityOrigin.mm: Added. (-[WebDatabaseSecurityOrigin quota]): (-[WebDatabaseSecurityOrigin setQuota:]):
  • WebCoreSupport/WebApplicationCacheSecurityOrigin.h: Added.
  • WebCoreSupport/WebApplicationCacheSecurityOrigin.mm: Added. (-[WebApplicationCacheSecurityOrigin quota]): (-[WebApplicationCacheSecurityOrigin setQuota:]):
  • Storage/WebSecurityOrigin.mm: Removed. (Moved to WebCoreSupport)
  • Storage/WebSecurityOriginPrivate.h: Removed. (Moved to WebCoreSupport)
  • WebCoreSupport/WebSecurityOrigin.mm: Added. (-[WebSecurityOrigin usage]): to be implemented by subclasses. (-[WebSecurityOrigin quota]): to be implemented by subclasses. (-[WebSecurityOrigin setQuota:]): to be implemented by subclasses.
  • WebCoreSupport/WebSecurityOriginInternal.h: Renamed from WebKit/mac/Storage/WebSecurityOriginInternal.h.
  • WebCoreSupport/WebSecurityOriginPrivate.h: Added.

Turn the notification into a WebUI Delegate to call. Following
the example of Databases.

  • DefaultDelegates/WebDefaultUIDelegate.m: (-[WebDefaultUIDelegate webView:exceededApplicationCacheOriginQuotaForSecurityOrigin:]):
  • WebCoreSupport/WebChromeClient.h:
  • WebCoreSupport/WebChromeClient.mm: (WebChromeClient::exceededDatabaseQuota): use the Databases Security Origin subclass. (WebChromeClient::reachedApplicationCacheOriginQuota): use the Application Cache Security Origin subclass.
  • WebView/WebUIDelegatePrivate.h:

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

WebKit/qt:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

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

WebKit/win:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

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

WebKit/wx:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

  • WebKitSupport/ChromeClientWx.cpp: (WebCore::ChromeClientWx::reachedApplicationCacheOriginQuota):
  • WebKitSupport/ChromeClientWx.h:

WebKit2:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::reachedApplicationCacheOriginQuota):
  • WebProcess/WebCoreSupport/WebChromeClient.h:
7:22 PM Changeset in webkit [64399] by Joseph Pecoraro
  • 5 edits in trunk/WebCore

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by David Kilzer.

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

Part 3 - Refactor storeNewestCache to allow Failure Reason Output

Storing can result in an error in a number of reasons. Previously
the reasons were global and binary and could be determined by
checking ApplicationCacheStorage state. Now, with per-origin quotas
a per-origin quota can cause a failure that is not in global state.
Current failure reasons are:

OriginQuotaReached = per-origin quota reached, no storage is allowed.
TotalQuotaReached = database quota reached, no storage is allowed.
DiskOrOperationFailure = SQL error such as failed prepare or query. Not expected to happen.

This part provides an implementation of storeNewestCache for those
that care about the failure reason, and not just if it succeeded
or not. This moves the final origin quota check into the transaction.

  • loader/appcache/ApplicationCache.h: style fix for forwarding headers.
  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): move origin quota check into storeNewestCache's SQL transaction.
  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::storeNewestCache): old implementation calls the new implementation ignoring failure reason. (WebCore::ApplicationCacheStorage::storeNewestCache): new implementation provides a failure reason in case of failure.
  • loader/appcache/ApplicationCacheStorage.h: (WebCore::ApplicationCacheStorage::): added FailureReason enum and storeNewestCache allowing it.
7:22 PM Changeset in webkit [64398] by Joseph Pecoraro
  • 5 edits in trunk/WebCore

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by David Kilzer.

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

Part 2 - Update Schema and enforce Per-Origin Quotas

Added an "Origins" table to the application cache databases.
This, like the Database's Origins table, is a list of origin
and quota pairs. Origins records are added as soon as they are
needed, and deleted only when the ApplicationCacheStorage is
emptied. This means Origins records persist even after all
caches for that origin may be deleted. The "CacheGroups" table
now has a foreign key column "origin" which relates to the
"Origins" table.

To enforce the quotas, remaining quota space is checked at
the start of update as an estimate and at the end before
inserting. Currently, reaching the quota limit will simply
cause an update error. A later part will provide a
notification to the client to allow an action, and refactor
the final quota limit check into a transaction.

Respect the quota during the update process. And cause
the update process to fail when the quota is reached.

  • loader/appcache/ApplicationCacheGroup.cpp: added loading counter, counts bytes as they load (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): (WebCore::ApplicationCacheGroup::didReceiveData): (WebCore::ApplicationCacheGroup::didFinishLoading): (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
  • loader/appcache/ApplicationCacheGroup.h: added security origin, based on the manifest URL (WebCore::ApplicationCacheGroup::origin): accessor

Updates the schema of the database tables as described
above. Handle other SQL operations such as checking the
remaining space and inserting and deleting Origins records.

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::quotaForOrigin): query for the quota of an origin, may return the default origin quota if it didn't exist. (WebCore::ApplicationCacheStorage::remainingSizeForOriginExcludingCache): calculate the remaining size in a quota for an origin, possibly excluding a cache. (WebCore::ApplicationCacheStorage::storeUpdatedQuotaForOrigin): persistent update. (WebCore::ApplicationCacheStorage::openDatabase): updated schema for CachesGroups, added new table Origins. (WebCore::ApplicationCacheStorage::empty): wipe Origins table as well. (WebCore::ApplicationCacheStorage::unknownQuota): constant to mean unknown quota
7:22 PM Changeset in webkit [64397] by Joseph Pecoraro
  • 13 edits in trunk

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Reviewed by David Kilzer.

Limit ApplicationCache Total and Per-Origin Storage Capacity (Quotas)
https://bugs.webkit.org/show_bug.cgi?id=40627

Part 1 - Add Total and Per-Origin Quota Preferences.

Allow the application cache total size to be a preference, and
add a new preference for the default per-origin quota.

WebCore:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Allow the application cache total size to be a preference, and
add a new preference for the default per-origin quota.

Handle the per-origin quota in the global cacheStorage() object.
The per-origin quota will be used in a later part, this just
handles interaction with it from a client.

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::setDefaultOriginQuota): setter (WebCore::ApplicationCacheStorage::ApplicationCacheStorage): default to "noQuota" on construction
  • loader/appcache/ApplicationCacheStorage.h: (WebCore::ApplicationCacheStorage::noQuota): constant to mean unlimited storage (WebCore::ApplicationCacheStorage::defaultOriginQuota): accessor

Move around some exports around for Offline Web Applications.

  • WebCore.exp.in: Added OFFLINE_WEB_APPLICATIONS exports.

WebKit/mac:

2010-07-30 Joseph Pecoraro <Joseph Pecoraro>

Storage quotas were int64_t (long long). Boilerplate for
these types added for consistency.

  • Misc/WebNSDictionaryExtras.h:
  • Misc/WebNSDictionaryExtras.m: (-[NSMutableDictionary _webkit_setLongLong:forKey:]):
  • WebCoreSupport/WebApplicationCache.h: setters and accessors for WebCore's cacheStorage.
  • WebCoreSupport/WebApplicationCache.mm: (+[WebApplicationCache maximumSize:]): (+[WebApplicationCache setMaximumSize:]): (+[WebApplicationCache defaultOriginQuota]): (+[WebApplicationCache setDefaultOriginQuota:]):
  • WebView/WebPreferenceKeysPrivate.h:
  • WebView/WebPreferences.mm: (+[WebPreferences initialize]): defaults to noQuota for both preferences. (-[WebPreferences _longLongValueForKey:]): (-[WebPreferences _setLongLongValue:forKey:]): (-[WebPreferences applicationCacheTotalQuota]): (-[WebPreferences setApplicationCacheTotalQuota:]): (-[WebPreferences applicationCacheDefaultOriginQuota]): (-[WebPreferences setApplicationCacheDefaultOriginQuota:]):
  • WebView/WebPreferencesPrivate.h:
  • WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): respect updates to the preferences.
6:58 PM Changeset in webkit [64396] by weinig@apple.com
  • 24 edits
    1 add in trunk

Patch for https://bugs.webkit.org/show_bug.cgi?id=43290
Add structured message passing from the injected bundle to UIProcess

Reviewed by Maciej Stachowiak.

WebKit2:

  • Platform/CoreIPC/MessageID.h:
  • Shared/CoreIPCSupport/WebContextMessageKinds.h: Added.
  • Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h:

(WebProcessProxyMessage::):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContext.cpp:

(WebKit::):
(WebKit::PostMessageEncoder::PostMessageDecoder::PostMessageDecoder):
(WebKit::PostMessageEncoder::PostMessageDecoder::decode):
(WebKit::WebContext::didReceiveMessageFromInjectedBundle):
(WebKit::WebContext::didReceiveMessage):

  • UIProcess/WebContext.h:
  • UIProcess/WebContextInjectedBundleClient.cpp:

(WebKit::WebContextInjectedBundleClient::didReceiveMessageFromInjectedBundle):

  • UIProcess/WebContextInjectedBundleClient.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::didReceiveMessage):
(WebKit::WebProcessProxy::didReceiveSyncMessage):

  • UIProcess/WebProcessProxy.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundlePostMessage):

  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::):
(WebKit::InjectedBundle::InjectedBundle):
(WebKit::InjectedBundle::~InjectedBundle):
(WebKit::InjectedBundle::initializeClient):
(WebKit::InjectedBundle::postMessage):
(WebKit::InjectedBundle::setShouldTrackVisitedLinks):
(WebKit::InjectedBundle::removeAllVisitedLinks):
(WebKit::InjectedBundle::didCreatePage):
(WebKit::InjectedBundle::willDestroyPage):
(WebKit::InjectedBundle::didReceiveMessage):

  • WebProcess/InjectedBundle/InjectedBundle.h:

WebKitTools:

  • MiniBrowser/mac/AppDelegate.m:

(didRecieveMessageFromInjectedBundle):

  • MiniBrowser/mac/WebBundle/WebBundleMain.m:

(didClearWindowForFrame):
(didRecieveMessage):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::done):
(WTR::InjectedBundle::didReceiveMessage):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize):
(WTR::TestController::didReceiveMessageFromInjectedBundle):

  • WebKitTestRunner/TestController.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):

  • WebKitTestRunner/TestInvocation.h:
  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
6:58 PM Changeset in webkit [64395] by atwilson@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

Unreviewed expectations change for chromium.

  • platform/chromium-mac/fast/forms/search-transformed-expected.checksum: Added.
  • platform/chromium-mac/fast/forms/search-transformed-expected.png: Added.
6:50 PM Changeset in webkit [64394] by atwilson@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed fix to expectations.

  • platform/chromium/test_expectations.txt:
6:48 PM Changeset in webkit [64393] by atwilson@chromium.org
  • 2 edits
    7 adds in trunk/LayoutTests

Unreviewed expectations changes.

  • platform/chromium-mac/svg/custom/massive-coordinates-expected.checksum: Added.
  • platform/chromium-mac/svg/custom/massive-coordinates-expected.png: Added.
  • platform/chromium-win/svg/custom/massive-coordinates-expected.checksum: Added
  • platform/chromium-win/svg/custom/massive-coordinates-expected.png: Added
  • platform/chromium-win/svg/custom/massive-coordinates-expected.txt: Added.
  • platform/chromium-win/svg/custom/pattern-excessive-malloc-expected.checksum: Added
  • platform/chromium-win/svg/custom/pattern-excessive-malloc-expected.png: Added
  • platform/chromium/test_expectations.txt:
6:34 PM Writing Layout Tests for DumpRenderTree edited by mihaip@chromium.org
(diff)
5:50 PM Changeset in webkit [64392] by aestes@apple.com
  • 1 edit in trunk/WebCore/ChangeLog

I duplicated several ChangeLog entries when resolving a conflict.

5:39 PM Changeset in webkit [64391] by jamesr@google.com
  • 3 edits in trunk/WebKit/chromium

2010-07-30 James Robinson <jamesr@chromium.org>

Compile fix. Put GLES2 functions behind USE(GLES2_RENDERING) instead of
USE(ACCELERATED_COMPOSITING) to match WebCore. Fixes the compile when
USE(GLES2_RENDERING) is true and USE(ACCELERATED_COMPOSITING) is false.

  • src/ChromeClientImpl.cpp:
  • src/ChromeClientImpl.h:
5:28 PM Changeset in webkit [64390] by aestes@apple.com
  • 18 edits in trunk

JavaScriptCore: Add Xcode support for compiling WebKit against iOS SDKs.
https://bugs.webkit.org/show_bug.cgi?id=42796

Reviewed by David Kilzer.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/FeatureDefines.xcconfig:

WebCore: Add Xcode support for compiling WebKit against iOS SDKs.
https://bugs.webkit.org/show_bug.cgi?id=42796

Reviewed by David Kilzer.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/Version.xcconfig:
  • Configurations/WebCore.xcconfig:

WebKit/mac: Add Xcode support for compiling WebKit against iOS SDKs.
https://bugs.webkit.org/show_bug.cgi?id=42796

Reviewed by David Kilzer.

  • Configurations/Base.xcconfig:
  • Configurations/DebugRelease.xcconfig:
  • Configurations/FeatureDefines.xcconfig:
  • Configurations/Version.xcconfig:
  • Configurations/WebKit.xcconfig:

WebKit2: Add support to Xcode for compiling WebKit against iOS SDKs.
https://bugs.webkit.org/show_bug.cgi?id=42796

Reviewed by David Kilzer.

  • Configurations/FeatureDefines.xcconfig:
5:18 PM Changeset in webkit [64389] by jamesr@google.com
  • 3 edits in trunk/WebCore

2010-07-30 James Robinson <jamesr@chromium.org>

Compile fix: fix a typo in forward declaration, add EmptyClients impl.

  • loader/EmptyClients.h: (WebCore::EmptyChromeClient::getOnscreenGLES2Context): (WebCore::EmptyChromeClient::getOffscreenGLES2Context):
  • page/ChromeClient.h:
4:46 PM Changeset in webkit [64388] by atwilson@chromium.org
  • 7 edits
    6 deletes in trunk/LayoutTests

Unreviewed rollback for r64375 because it broke chromium tests
downstream due to expectation files that were not moved.

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

  • fast/forms/input-appearance-numberandspeech-expected.txt: Renamed from LayoutTests/fast/speech/input-appearance-numberandspeech-expected.txt.
  • fast/forms/input-appearance-numberandspeech.html: Renamed from LayoutTests/fast/speech/input-appearance-numberandspeech.html.
  • fast/forms/input-appearance-searchandspeech-expected.txt: Renamed from LayoutTests/fast/speech/input-appearance-searchandspeech-expected.txt.
  • fast/forms/input-appearance-searchandspeech.html: Renamed from LayoutTests/fast/speech/input-appearance-searchandspeech.html.
  • fast/forms/input-appearance-speechbutton-expected.txt: Renamed from LayoutTests/fast/speech/input-appearance-speechbutton-expected.txt.
  • fast/forms/input-appearance-speechbutton.html: Renamed from LayoutTests/fast/speech/input-appearance-speechbutton.html.
  • platform/chromium/drt_expectations.txt:
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
4:45 PM Changeset in webkit [64387] by beidson@apple.com
  • 2 edits in trunk/WebKit2

Cast the return value for the templated ImmutableArray::at().

Reviewed by Sam Weinig.

  • Shared/ImmutableArray.h:

(WebKit::ImmutableArray::at):

4:38 PM Changeset in webkit [64386] by weinig@apple.com
  • 31 edits in trunk/WebKit2

Patch for https://bugs.webkit.org/show_bug.cgi?id=43283
Add APIObject template introspection support.

Reviewed by Anders Carlsson.

Add a way to get the type the APIObject::Type from the APIObject subclass typenames
for template fun. Use this to make a type checking version of ImmutableArray::at.

  • Shared/ImmutableArray.h:

(WebKit::ImmutableArray::at):
(WebKit::ImmutableArray::type):

  • Shared/WebString.h:

(WebKit::WebString::type):

  • Shared/WebURL.h:

(WebKit::WebURL::type):

  • UIProcess/API/C/WKArray.cpp:

(WKArrayGetTypeID):

  • UIProcess/API/C/WKBackForwardList.cpp:

(WKBackForwardListGetTypeID):

  • UIProcess/API/C/WKBackForwardListItem.cpp:

(WKBackForwardListItemGetTypeID):

  • UIProcess/API/C/WKContext.cpp:

(WKContextGetTypeID):

  • UIProcess/API/C/WKFrame.cpp:

(WKFrameGetTypeID):

  • UIProcess/API/C/WKFramePolicyListener.cpp:

(WKFramePolicyListenerGetTypeID):

  • UIProcess/API/C/WKNavigationData.cpp:

(WKNavigationDataGetTypeID):

  • UIProcess/API/C/WKPage.cpp:

(WKPageGetTypeID):

  • UIProcess/API/C/WKPageNamespace.cpp:

(WKPageNamespaceGetTypeID):

  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesGetTypeID):

  • UIProcess/API/C/WKString.cpp:

(WKStringGetTypeID):

  • UIProcess/API/C/WKURL.cpp:

(WKURLGetTypeID):

  • UIProcess/WebBackForwardList.h:

(WebKit::WebBackForwardList::type):

  • UIProcess/WebBackForwardListItem.h:

(WebKit::WebBackForwardListItem::type):

  • UIProcess/WebContext.h:

(WebKit::WebContext::type):

  • UIProcess/WebFramePolicyListenerProxy.h:

(WebKit::WebFramePolicyListenerProxy::type):

  • UIProcess/WebFrameProxy.h:

(WebKit::WebFrameProxy::type):

  • UIProcess/WebNavigationData.h:

(WebKit::WebNavigationData::type):

  • UIProcess/WebPageNamespace.h:

(WebKit::WebPageNamespace::type):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::type):

  • UIProcess/WebPreferences.h:

(WebKit::WebPreferences::type):

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

(WKBundleGetTypeID):

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

(WKBundleFrameGetTypeID):

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

(WKBundlePageGetTypeID):

  • WebProcess/InjectedBundle/InjectedBundle.h:

(WebKit::InjectedBundle::type):

  • WebProcess/WebPage/WebFrame.h:

(WebKit::WebFrame::type):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::type):

4:34 PM Changeset in webkit [64385] by jamesr@google.com
  • 3 edits in trunk/WebCore

2010-07-30 James Robinson <jamesr@chromium.org>

Reviewed by Darin Fisher.

Move GLES2 context manipulation to ChromeClient.h and put it behind the right #if guard
https://bugs.webkit.org/show_bug.cgi?id=43281

These calls were initially put in ChromeClientChromium, but they aren't chromium specific.
In theory any port that could create the proper OpenGL ES 2 contexts could implement
these functions. Also moves the calls to be behind the correct #if guard.

  • page/ChromeClient.h:
  • page/chromium/ChromeClientChromium.h:
4:19 PM Changeset in webkit [64384] by dumi@chromium.org
  • 26 edits in trunk

JavaScriptCore: Added a yield() function.
https://bugs.webkit.org/show_bug.cgi?id=42843

Reviewed by Davin Levin.

(WTF::yield):

  • wtf/ThreadingWin.cpp:

(WTF::yield):

  • wtf/gtk/ThreadingGtk.cpp:

(WTF::yield):

  • wtf/qt/ThreadingQt.cpp:

(WTF::yield):

WebCore: Interrupt all DB operations when the worker is terminating.
https://bugs.webkit.org/show_bug.cgi?id=42843

Reviewed by David Levin.

Tests: fast/workers/storage/interrupt-database-sync.html

fast/workers/storage/interrupt-database.html

  • bindings/js/JSCustomVoidCallback.cpp:

(WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): If the
destructor is called on the context thread, delete m_data directly
instead of posting a task to do that. We need to do that to make
sure that all JS objects are destroyed before
WorkerThreadShutdownFinishTask (in WorkerThread.cpp) calls
WorkerContext::clearScript().

  • bindings/scripts/CodeGeneratorJS.pm: Same change as above, for

all auto-generated callbacks.

  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::~JSTestCallback): Updated the
expectations for run-bindings-tests.

  • platform/sql/SQLiteDatabase.cpp: Added the ability to interrupt

all DB operations in progress, unless the database was closed or
is being closed. Unlike sqlite3_interrupt(),
SQLiteDatabase::interrupt() is sticky: once it's called, trying to
run any statement on that database will fail with a
SQLITE_INTERRUPT error code.
(WebCore::SQLiteDatabase::SQLiteDatabase):
(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::interrupt):
(WebCore::SQLiteDatabase::isInterrupted):

  • platform/sql/SQLiteDatabase.h: Added a mutex that can used by

SQLiteStatement to check if the database was interrupted.
(WebCore::SQLiteDatabase::databaseMutex):

  • platform/sql/SQLiteStatement.cpp: Changed prepare() and step()

to check if the database was interrupted, before trying to prepare
or run the statement. The other methods don't need to hold on to
the DB lock while running, because they're fast, so we don't need
to interrupt them.
(WebCore::SQLiteStatement::prepare):
(WebCore::SQLiteStatement::step):

  • storage/AbstractDatabase.cpp: Made SQLiteDatabase::interrupt()

and isInterrupted() visible to WebSQLDatabases classes.
(WebCore::AbstractDatabase::interrupt):
(WebCore::AbstractDatabase::isInterrupted):

  • storage/AbstractDatabase.h:
  • storage/DatabaseTracker.cpp: Added a method to interrupt all

databases in a given context.
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):

  • storage/DatabaseTracker.h:
  • storage/SQLStatement.cpp: Changed the exception/error reported

when a statement is interrupted.
(WebCore::SQLStatement::execute):

  • storage/SQLStatementSync.cpp:

(WebCore::SQLStatementSync::execute):

  • storage/SQLTransaction.cpp: Changed the code to release the

callback objects as soon as they're not needed.
(WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
Changed this method to not schedule the next transaction step when
the database is interrupted.
(WebCore::SQLTransaction::performNextStep):
(WebCore::SQLTransaction::performPendingCallback):
(WebCore::SQLTransaction::deliverTransactionCallback):
(WebCore::SQLTransaction::postflightAndCommit):
(WebCore::SQLTransaction::deliverTransactionErrorCallback):
(WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):

  • storage/SQLTransaction.h:
  • storage/chromium/DatabaseTrackerChromium.cpp: Added a method to

interrupt all databases in a given context.
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):

  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::stop): Added a call to
DatabaseTracker::interruptAllDatabasesForContext().

LayoutTests: Test that terminating a worker interrupts all DB operations in that worker.
https://bugs.webkit.org/show_bug.cgi?id=42843

Reviewed by Davin Levin.

  • fast/workers/storage/interrupt-database-expected.txt: Added.
  • fast/workers/storage/interrupt-database-sync-expected.txt: Added.
  • fast/workers/storage/interrupt-database-sync.html: Added.
  • fast/workers/storage/interrupt-database.html: Added.
  • fast/workers/storage/resources/interrupt-database-sync.js: Added.
  • fast/workers/storage/resources/interrupt-database.js: Added.

(runTransaction):

4:02 PM Changeset in webkit [64383] by Simon Fraser
  • 7 edits
    2 adds in trunk/WebCore

2010-07-30 Simon Fraser <Simon Fraser>

Reviewed by Darin Adler.

connect-compositing-iframe2.html test sometimes shows blank iframe content
https://bugs.webkit.org/show_bug.cgi?id=42046

Hooking up compositing iframes requires setNeedsStyleRecalc(SyntheticStyleChange) to
always result in a call to RenderLayer::styleChanged(). However, the semantics of
setNeedsStyleRecalc() was that each call would overwrite the existing styleChangeType,
allowing a "lesser" style change to override a "greater" one. In the test content,
SyntheticStyleChange was being replaced by FullStyleChange when the classname changed.
This resulted in RenderLayer::styleChanged() not being called.

Fix by changing the behavior of setNeedsStyleRecalc() to only touch the style change
type if a "lesser" change is being replaced with a "greater" one. This required adding
a new clearNeedsStyleRecalc() method to reset the style change type to NoStyleChange.

In addition, in Node::setNeedsStyleRecalc(), only propagate the childNeedsStyleRecalc
up the parent change if the node was not already needing recalc. In order to fix issues
with attaching, this required new call to clearNeedsStyleRecalc() at the end of attach().

  • manual-tests/compositing/missing-iframe-contents.html: Added.
  • manual-tests/compositing/resources/composited-subframe.html: Copied from LayoutTests/compositing/iframes/resources/composited-subframe.html.
  • dom/Document.cpp: (WebCore::Document::recalcStyle): Call clearNeedsStyleRecalc().
  • dom/Element.cpp: (WebCore::Element::recalcStyle): Call clearNeedsStyleRecalc().
  • dom/Node.h: (WebCore::Node::clearNeedsStyleRecalc): New method.
  • dom/Node.cpp: (WebCore::Node::setNeedsStyleRecalc): Only call setStyleChange() if the change type is greater than the current change type. (WebCore::Node::attach): After attaching, we can call clearNeedsStyleRecalc().
  • dom/Text.cpp: (WebCore::Text::recalcStyle): Call clearNeedsStyleRecalc().
  • html/HTMLFrameSetElement.cpp: (WebCore::HTMLFrameSetElement::recalcStyle): Call clearNeedsStyleRecalc().
3:49 PM Changeset in webkit [64382] by weinig@apple.com
  • 5 edits in trunk

Patch for https://bugs.webkit.org/show_bug.cgi?id=43275
Make WKArrayRef more usable.

Reviewed by Anders Carlsson.

WebKit2:

  • Add Create functions.
  • Make WKArrayGetItemAtIndex return a WKTypeRef.
  • UIProcess/API/C/WKArray.cpp:

(WKArrayCreate):
(WKArrayCreateAdoptingValues):
(WKArrayGetItemAtIndex):

  • UIProcess/API/C/WKArray.h:

WebKitTools:

Remove now unnecessary const_casts.

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::dumpDescendantFrameScrollPositions):
(WTR::dumpDescendantFramesText):

3:38 PM Changeset in webkit [64381] by adachan@apple.com
  • 2 edits in trunk/WebKit2

Reviewed by John Sullivan.

Fix issue with populating the back list when limit is a huge number.
https://bugs.webkit.org/show_bug.cgi?id=43270

  • UIProcess/WebBackForwardList.cpp: (WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
3:27 PM Changeset in webkit [64380] by weinig@apple.com
  • 29 edits
    1 add in trunk

Patch for https://bugs.webkit.org/show_bug.cgi?id=43274
Add first pass of structured message passing.

Reviewed by Anders Carlsson.

WebKit2:

  • Only supports passing messages from the UIProcess -> InjectedBundle
  • Only supports passing Strings, Arrays, and WebPage references (NOTE: There currently isn't a way to make an array).
  • Changed ImmutableArray to operate on APIObjects instead of void*'s and removed the retain/release abstraction.
  • Platform/CoreIPC/MessageID.h:

(CoreIPC::):

  • Shared/CoreIPCSupport/InjectedBundleMessageKinds.h: Added.

(InjectedBundleMessage::):
(CoreIPC::):

  • Shared/CoreIPCSupport/WebProcessMessageKinds.h:

(WebProcessMessage::):

  • Shared/ImmutableArray.cpp:

(WebKit::ImmutableArray::ImmutableArray):
(WebKit::ImmutableArray::~ImmutableArray):

  • Shared/ImmutableArray.h:

(WebKit::ImmutableArray::create):
(WebKit::ImmutableArray::adopt):
(WebKit::ImmutableArray::at):

  • UIProcess/API/C/WKBase.h:
  • UIProcess/API/C/WKContext.cpp:

(WKContextPostMessageToInjectedBundle):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKType.cpp:

(WKGetTypeID):

  • UIProcess/API/C/WebKit2.h:
  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
(WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::postMessageToInjectedBundle):
(WebKit::WebContext::didReceiveMessageFromInjectedBundle):

  • UIProcess/WebContext.h:
  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::didReceiveMessage):

  • WebProcess/InjectedBundle/InjectedBundle.h:
  • WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::childFrames):

  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::didReceiveMessage):

  • WebProcess/WebProcess.h:
  • win/WebKit2.vcproj:

WebKitTools:

Update Minibrowser and WebKitTestRunner to work with the new post message
function.

  • MiniBrowser/mac/AppDelegate.m:

(didRecieveMessageFromInjectedBundle):
(-[BrowserAppDelegate init]):

  • MiniBrowser/mac/MiniBrowser_Prefix.pch:
  • MiniBrowser/mac/WebBundle/WebBundleMain.m:

(didStartProvisionalLoadForFrame):
(didReceiveServerRedirectForProvisionalLoadForFrame):
(didFailProvisionalLoadWithErrorForFrame):
(didCommitLoadForFrame):
(didFinishLoadForFrame):
(didFailLoadWithErrorForFrame):
(didReceiveTitleForFrame):
(didClearWindowForFrame):
(didCreatePage):
(willDestroyPage):
(didRecieveMessage):
(WKBundleInitialize):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:

(WTR::InjectedBundle::_didReceiveMessage):
(WTR::InjectedBundle::didReceiveMessage):

  • WebKitTestRunner/InjectedBundle/InjectedBundle.h:
  • WebKitTestRunner/TestInvocation.cpp:

(WTR::TestInvocation::invoke):

  • WebKitTestRunner/WebKitTestRunner.xcodeproj/project.pbxproj:
3:24 PM Changeset in webkit [64379] by commit-queue@webkit.org
  • 6 edits
    1 copy
    1 move
    3 adds
    3 deletes in trunk

2010-07-30 W. James MacLean <wjmaclean@google.com>

Reviewed by Nikolas Zimmermann.

SVG - numeric overflow for very large elements
https://bugs.webkit.org/show_bug.cgi?id=25645

Two of the expected test outputs were incorrect now that parsing of large values
is handled correctly.

  • Revised FloatRect to remove bad float-to-int conversions in enclosingIntRect()
  • Revised _parseNumber to do right-to-left float-based parsing of input value
  • platform/gtk/svg/custom/pattern-excessive-malloc-expected.txt: Removed.
  • platform/mac/svg/custom/mask-excessive-malloc-expected.txt:
  • platform/mac/svg/custom/massive-coordinates-expected.txt: Added.
  • platform/mac/svg/custom/pattern-excessive-malloc-expected.txt:
  • platform/qt/svg/custom/pattern-excessive-malloc-expected.checksum: Removed.
  • platform/qt/svg/custom/pattern-excessive-malloc-expected.png: Removed.
  • platform/qt/svg/custom/pattern-excessive-malloc-expected.txt: Removed.
  • svg/custom/mask-excessive-malloc-expected.txt: Added.
  • svg/custom/massive-coordinates-expected.txt: Added.
  • svg/custom/massive-coordinates.svg: Added.
  • svg/custom/pattern-excessive-malloc-expected.txt: Added.

2010-07-30 W. James MacLean <wjmaclean@google.com>

Reviewed by Nikolas Zimmermann.

SVG - numeric overflow for very large elements
https://bugs.webkit.org/show_bug.cgi?id=25645

Two of the expected test outputs were incorrect now that parsing of large values
is handled correctly.

  • Revised FloatRect to remove bad float-to-int conversions in enclosingIntRect()
  • Revised _parseNumber to do right-to-left float-based parsing of input value

Test: svg/custom/massive-coordinates.svg

  • platform/graphics/FloatRect.cpp: (WebCore::safeFloatToInt): (WebCore::enclosingIntRect):
  • svg/SVGParserUtilities.cpp: (WebCore::_parseNumber):
2:49 PM Changeset in webkit [64378] by mrowe@apple.com
  • 5 edits in trunk

Versioning.

2:43 PM Changeset in webkit [64377] by andersca@apple.com
  • 11 edits
    2 adds in trunk

Implement NPN_Evaluate
https://bugs.webkit.org/show_bug.cgi?id=43268

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::evaluate):
Evaluate the passed in string.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_Evaluate):
Call NetscapePlugin::evaluate.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::evaluate):
Call PluginController::evaluate.

  • WebProcess/Plugins/PluginController.h:

Add evaluate pure virtual member function.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::evaluate):
Update the popup window state and call NPRuntimeObjectMap::evaluate.

LayoutTests:

Add test.

  • plugins/npruntime/evaluate-expected.txt: Added.
  • plugins/npruntime/evaluate.html: Added.
2:36 PM Changeset in webkit [64376] by mrowe@apple.com
  • 1 copy in tags/Safari-534.4

New tag.

2:29 PM Changeset in webkit [64375] by commit-queue@webkit.org
  • 7 edits
    6 moves
    1 add in trunk/LayoutTests

2010-07-30 Satish Sampath <satish@chromium.org>

Reviewed by David Levin.

Move speech input layout tests to their own directory.
https://bugs.webkit.org/show_bug.cgi?id=43261

  • fast/speech/input-appearance-numberandspeech-expected.txt: Renamed from LayoutTests/fast/forms/input-appearance-numberandspeech-expected.txt.
  • fast/speech/input-appearance-numberandspeech.html: Renamed from LayoutTests/fast/forms/input-appearance-numberandspeech.html.
  • fast/speech/input-appearance-searchandspeech-expected.txt: Renamed from LayoutTests/fast/forms/input-appearance-searchandspeech-expected.txt.
  • fast/speech/input-appearance-searchandspeech.html: Renamed from LayoutTests/fast/forms/input-appearance-searchandspeech.html.
  • fast/speech/input-appearance-speechbutton-expected.txt: Renamed from LayoutTests/fast/forms/input-appearance-speechbutton-expected.txt.
  • fast/speech/input-appearance-speechbutton.html: Renamed from LayoutTests/fast/forms/input-appearance-speechbutton.html.
  • platform/chromium/drt_expectations.txt:
  • platform/chromium/test_expectations.txt:
  • platform/gtk/Skipped:
  • platform/mac/Skipped:
  • platform/qt/Skipped:
  • platform/win/Skipped:
2:20 PM Changeset in webkit [64374] by jamesr@google.com
  • 5 edits in trunk/WebCore

2010-07-30 James Robinson <jamesr@chromium.org>

Reviewed by Darin Fisher.

[chromium] Make the GLES2 texture map generic and teach ImageSkia and ImageBufferSkia about GLES2
https://bugs.webkit.org/show_bug.cgi?id=43218

This makes the GLES2Canvas' TextureHashMap key on void* instead of NativeImagePtr
to make it easier to use with other backends. It also teaches ImageSkia how
to draw to a GLES2Canvas instead of a skia buffer.

No change in functionality (yet), no new tests.

  • platform/graphics/chromium/GLES2Canvas.cpp: (WebCore::GLES2Canvas::GLES2Canvas): (WebCore::GLES2Canvas::createTexture): (WebCore::GLES2Canvas::getTexture):
  • platform/graphics/chromium/GLES2Canvas.h:
  • platform/graphics/skia/ImageBufferSkia.cpp: (WebCore::ImageBuffer::getUnmultipliedImageData): (WebCore::ImageBuffer::getPremultipliedImageData):
  • platform/graphics/skia/ImageSkia.cpp: (WebCore::drawBitmapGLES2): (WebCore::BitmapImage::draw): (WebCore::BitmapImageSingleFrameSkia::draw):
2:15 PM Changeset in webkit [64373] by commit-queue@webkit.org
  • 3 edits in trunk/WebCore

2010-07-30 Yong Li <yoli@rim.com>

Reviewed by Darin Adler.

Implement SVGScriptElement::shouldExecuteAsJavaScript() otherwise
SVGScriptElement cannot run when XHTMLMP is enabled.
https://bugs.webkit.org/show_bug.cgi?id=43267

No test needed, because it fails all SVG <script> tests when XHTMLMP is on.

  • svg/SVGScriptElement.cpp: (WebCore::SVGScriptElement::shouldExecuteAsJavaScript):
  • svg/SVGScriptElement.h:
2:14 PM Changeset in webkit [64372] by darin@chromium.org
  • 1 edit
    1 move in trunk/LayoutTests

2010-07-30 Darin Fisher <darin@chromium.org>

Temporarily disable this test. For some reason, the test is reporting
'PASS' but notifyDone() is not running.

  • fast/loader/stateobjects/pushstate-in-iframe.html: Removed.
  • fast/loader/stateobjects/pushstate-in-iframe.html-disabled: Copied from fast/loader/stateobjects/pushstate-in-iframe.html.
2:13 PM Changeset in webkit [64371] by Chris Fleizach
  • 2 edits in trunk/WebCore

Style errors in Navigator.h
https://bugs.webkit.org/show_bug.cgi?id=43262

Reviewed by Darin Adler.

Fixing style changes. No new tests.

  • page/Navigator.h:

(WebCore::Navigator::create):
(WebCore::Navigator::frame):
(WebCore::Navigator::optionalGeolocation):

2:09 PM Changeset in webkit [64370] by atwilson@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed test expectations fix.

  • platform/chromium/test_expectations.txt:
2:06 PM UsingGitWithWebKit edited by mihaip@chromium.org
(diff)
1:39 PM Changeset in webkit [64369] by darin@chromium.org
  • 5 edits
    3 adds in trunk

2010-07-27 Darin Fisher <darin@chromium.org>

Reviewed by Brady Eidson.

History.pushState() + navigation operates on top frame when called from
nested context
https://bugs.webkit.org/show_bug.cgi?id=43080

Test: fast/loader/stateobjects/pushstate-in-iframe.html

  • loader/HistoryController.cpp: (WebCore::HistoryController::pushState): createTreeItem should be called on the top-most HistoryController so that we properly clone the HistoryItem tree starting at the root node.
12:35 PM Changeset in webkit [64368] by mrobinson@webkit.org
  • 2 edits in trunk/LayoutTests

2010-07-30 Martin Robinson <mrobinson@igalia.com>

Unreviewed.

[Gtk] Needs a signal for didFinishDocumentLoadForFrame - fails fast/history/saves-state-after-fragment-nav.html
https://bugs.webkit.org/show_bug.cgi?id=27637

This feature was added in a different bug, so we can unskip this test.

  • platform/gtk/Skipped:
12:06 PM Changeset in webkit [64367] by commit-queue@webkit.org
  • 3 edits in trunk/WebCore

2010-07-30 fsamuel@chromium.org <fsamuel@chromium.org>

Reviewed by Dimitri Glazkov.

Expand SVG Attribute Macros
https://bugs.webkit.org/show_bug.cgi?id=43254

Expanded SVG Attribute Macros to reduce debugging headache.

No change in behavior, so no new tests.

  • rendering/style/SVGRenderStyle.h: Expanded and removed references to SVG_RS_DEFINE_ATTRIBUTE* macros.
  • rendering/style/SVGRenderStyleDefs.h: Removed definitons for expanded macros.
12:04 PM Changeset in webkit [64366] by kinuko@chromium.org
  • 7 edits in trunk/WebCore

2010-07-30 Kinuko Yasuda <kinuko@chromium.org>

Reviewed by Dumitru Daniliuc.

Add callback arguments support to binding code generator scripts
https://bugs.webkit.org/show_bug.cgi?id=43130

Tests: bindings/scripts/test/TestObj.idl

  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorV8.pm:
  • bindings/scripts/test/JS/JSTestObj.cpp: (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg): (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg): (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
  • bindings/scripts/test/JS/JSTestObj.h:
  • bindings/scripts/test/TestObj.idl:
  • bindings/scripts/test/V8/V8TestObj.cpp: (WebCore::TestObjInternal::methodWithCallbackArgCallback): (WebCore::TestObjInternal::methodWithNonCallbackArgAndCallbackArgCallback): (WebCore::TestObjInternal::methodWithCallbackAndOptionalArgCallback): (WebCore::ConfigureV8TestObjTemplate):
11:47 AM Changeset in webkit [64365] by andersca@apple.com
  • 10 edits in trunk

Implement NPN_InvokeDefault
https://bugs.webkit.org/show_bug.cgi?id=43266

Reviewed by Sam Weinig.

WebCore:

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::isPluginElement):
Add convenience function.

(WebCore::pluginInstance):
Call isPluginElement.

(WebCore::pluginScriptObjectFromPluginViewBase):
Given an JSHTMLElement, ask the PluginViewBase for the scriptable object.

(WebCore::pluginScriptObject):
Call isPluginElement. Call pluginScriptObjectFromPluginViewBase.

(WebCore::callPlugin):
Get the script object, assemble the arguments and call "call" directly.

(WebCore::runtimeObjectGetCallData):
Try to get the script object from the PluginViewBase first.

  • plugins/PluginViewBase.h:

(WebCore::PluginViewBase::scriptObject):
Remove ExecState parameter.

WebKit2:

  • WebProcess/Plugins/JSNPObject.cpp:

(WebKit::JSNPObject::JSNPObject):
Remove ExecState parameter.

(WebKit::JSNPObject::callObject):
Call the NPClass::invokeDefault function.

(WebKit::callNPJSObject):
Call JSNPObject::callObject.

(WebKit::JSNPObject::getCallData):
Check if the NPClass has an invokeDefault function.

  • WebProcess/Plugins/JSNPObject.h:
  • WebProcess/Plugins/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::getOrCreateJSObject):
Remove ExecState parameter.

(WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
Remove ExecState parameter.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::scriptObject):
Remove ExecState parameter.

11:18 AM Changeset in webkit [64364] by Adam Roben
  • 13 edits in trunk

Roll our r64361 and r64363

We can't make these changes until QuartzCore.lib is included in
WebKitSupportLibrary.

11:01 AM Changeset in webkit [64363] by Adam Roben
  • 2 edits in trunk/WebKit2

Windows build fix

  • win/WebKit2Apple.vsprops: Always link against QuartzCore, since

WebKitSystemInterface requires it.

10:39 AM Changeset in webkit [64362] by andersca@apple.com
  • 2 edits in trunk/WebKitTools

Try to fix the layout test failures.

  • DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:

(webkit_test_plugin_get_value):

10:37 AM Changeset in webkit [64361] by Adam Roben
  • 11 edits in trunk

Remove uses of CACFContextRef and CARender* from WebCore

These types are now wrapped in a WKCACFContext type exported by
WebKitSystemInterface.

Fixes <http://webkit.org/b/43244>.

Reviewed by Sam Weinig.

WebCore:

  • platform/graphics/win/WKCACFContextFlusher.cpp:

(WebCore::WKCACFContextFlusher::addContext):
(WebCore::WKCACFContextFlusher::removeContext):
(WebCore::WKCACFContextFlusher::flushAllContexts):

  • platform/graphics/win/WKCACFContextFlusher.h:

Changed to use WKCACFContext. We don't retain/release the context when
putting it into/taking it out of the set. WKCACFContext is not a
ref-counted type, so we can't retain/release it, but the
retain/release was also unnecessary as WKCACFLayerRenderer calls
removeContext before the context is destroyed.

  • platform/graphics/win/WKCACFLayer.cpp:

(WebCore::WKCACFLayer::becomeRootLayerForContext):

  • platform/graphics/win/WKCACFLayer.h:

Changed to use WKCACFContext.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFLayerRenderer::didFlushContext):
(WebCore::WKCACFLayerRenderer::WKCACFLayerRenderer):
(WebCore::WKCACFLayerRenderer::~WKCACFLayerRenderer):
(WebCore::WKCACFLayerRenderer::layerTreeDidChange):
(WebCore::WKCACFLayerRenderer::createRenderer):
(WebCore::WKCACFLayerRenderer::destroyRenderer):
(WebCore::WKCACFLayerRenderer::render): Also replaced uses of
CGSRegion with WebKitSystemInterface functions/types.
(WebCore::WKCACFLayerRenderer::resetDevice):

  • platform/graphics/win/WKCACFLayerRenderer.h:

Replaced our CACFContextRef, CARenderContext, and CARenderOGLContext
with a single WKCACFContext, which wraps all three. We hold a bare
pointer to it and destroy it in our destructor.

WebKitLibraries:

Add WKCACFContext and related functions

Also added some functions used by WKCAImageQueue.

  • win/include/WebKitSystemInterface/WebKitSystemInterface.h:
  • win/lib/WebKitSystemInterface.lib:
  • win/lib/WebKitSystemInterface_debug.lib:
10:37 AM Changeset in webkit [64360] by Adam Roben
  • 4 edits in trunk/WebCore

Remove knowledge of WKCACFContextFlusher from WKCACFLayer

Fixes <http://webkit.org/b/43248> WKCACFLayer shouldn't know about
WKCACFContextFlusher

Reviewed by Sam Weinig.

  • platform/graphics/win/WKCACFLayer.cpp:

(WebCore::WKCACFLayer::setNeedsCommit): Don't bother calling to
WKCACFContextFlusher. Our root layer will do this for us.

  • platform/graphics/win/WKCACFLayerRenderer.cpp:

(WebCore::WKCACFRootLayer::setNeedsRender): Changed to call the new
layerTreeDidChange function.
(WebCore::WKCACFLayerRenderer::layerTreeDidChange): Added. Tells
WKCACFContextFlusher that the context has changed, and schedules a
render.

  • platform/graphics/win/WKCACFLayerRenderer.h: Added

layerTreeDidChange.

10:30 AM Changeset in webkit [64359] by andersca@apple.com
  • 12 edits
    3 adds
    2 deletes in trunk

Replace plugins/npruntime/bindings-test.html with a more sophisticated test
https://bugs.webkit.org/show_bug.cgi?id=43232

Reviewed by Adam Roben.

WebKitTools:

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

Add PluginScriptableNPObjectInvokeDefault.cpp.

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:

Remove invokeDefault callback function.

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:

(PluginTest::create):
Move this to the top of the file.

(PluginTest::NPP_GetValue):
Add default implementation.

(PluginTest::NPN_CreateObject):
Add NPN_ wrapper.

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.h:

(PluginTest::identifier):
Add identifier getter.

  • DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp:

(DocumentOpenInDestroyStream::DocumentOpenInDestroyStream):
Add "using namespace std".

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_GetValue):
Give PluginTest a chance to return a value.

  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:
  • DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
  • GNUmakefile.am:

Add PluginScriptableNPObjectInvokeDefault.cpp.

  • DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:

(webkit_test_plugin_get_value):
Give PluginTest a chance to return a value.

LayoutTests:

  • plugins/npruntime/bindings-test-expected.txt: Removed.
  • plugins/npruntime/bindings-test.html: Removed.
  • plugins/npruntime/plugin-scriptable-object-invoke-default-expected.txt: Added.
  • plugins/npruntime/plugin-scriptable-object-invoke-default.html: Added.
8:29 AM Changeset in webkit [64358] by jorlow@chromium.org
  • 37 edits
    1 copy
    6 moves
    1 delete in trunk

2010-07-29 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Steve Block.

Rename all the IDBIndex classses to match the latest conventions
https://bugs.webkit.org/show_bug.cgi?id=43190

No functionality has changed.

IDBIndexRequest -> IDBIndex in the spec. So that's the first change.
IDBIndex was the name of our interface class though, so we need to rename
it to get it out of the way. While we're at it, we might as well clean
up the naming in general to make things more clear. In the future, we're
going to need another layer (yes, yuck) which will be shared by the async
and sync classes which will do caching and other optimizations. That will
then connect to the backend. We also added "Interface" to make it more
clear that's what the file/class is.

Existing layout tests are enough since nothing should change as far as JavaScript can see.

  • Android.derived.jscbindings.mk:
  • Android.derived.v8bindings.mk:
  • Android.mk:
  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSIDBAnyCustom.cpp: (WebCore::toJS):
  • bindings/v8/custom/V8IDBAnyCustom.cpp: (WebCore::toV8):
  • storage/IDBAny.cpp: (WebCore::IDBAny::idbIndex): (WebCore::IDBAny::set):
  • storage/IDBAny.h: (WebCore::IDBAny::):
  • storage/IDBCallbacks.h:
  • storage/IDBIndex.cpp: Added. (WebCore::IDBIndex::IDBIndex): (WebCore::IDBIndex::~IDBIndex):
  • storage/IDBIndex.h: (WebCore::IDBIndex::create): (WebCore::IDBIndex::name): (WebCore::IDBIndex::keyPath): (WebCore::IDBIndex::unique):
  • storage/IDBIndex.idl: Added.
  • storage/IDBIndexBackendImpl.cpp: Added. (WebCore::IDBIndexBackendImpl::IDBIndexBackendImpl): (WebCore::IDBIndexBackendImpl::~IDBIndexBackendImpl):
  • storage/IDBIndexBackendImpl.h: Added. (WebCore::IDBIndexBackendImpl::create): (WebCore::IDBIndexBackendImpl::name): (WebCore::IDBIndexBackendImpl::keyPath): (WebCore::IDBIndexBackendImpl::unique):
  • storage/IDBIndexBackendInterface.h: Added. (WebCore::IDBIndexBackendInterface::~IDBIndexBackendInterface):
  • storage/IDBIndexImpl.cpp: Removed.
  • storage/IDBIndexImpl.h: Removed.
  • storage/IDBIndexRequest.cpp: Removed.
  • storage/IDBIndexRequest.h: Removed.
  • storage/IDBIndexRequest.idl: Removed.
  • storage/IDBObjectStore.h:
  • storage/IDBObjectStoreImpl.cpp: (WebCore::IDBObjectStoreImpl::createIndex): (WebCore::IDBObjectStoreImpl::index):
  • storage/IDBObjectStoreImpl.h:
  • storage/IDBObjectStoreRequest.cpp: (WebCore::IDBObjectStoreRequest::index):
  • storage/IDBObjectStoreRequest.h:
  • storage/IDBObjectStoreRequest.idl:
  • storage/IDBRequest.cpp: (WebCore::IDBRequest::onSuccess):
  • storage/IDBRequest.h:

2010-07-29 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Steve Block.

Rename all the IDBIndex classses to match the latest conventions
https://bugs.webkit.org/show_bug.cgi?id=43190

Fix up stuff in WebKit layer to handle the renamings in WebCore.

  • WebKit.gyp:
  • src/IDBCallbacksProxy.cpp: (WebCore::IDBCallbacksProxy::onSuccess):
  • src/IDBCallbacksProxy.h:
  • src/IDBIndexBackendProxy.cpp: Added. (WebCore::IDBIndexBackendProxy::create): (WebCore::IDBIndexBackendProxy::IDBIndexBackendProxy): (WebCore::IDBIndexBackendProxy::~IDBIndexBackendProxy): (WebCore::IDBIndexBackendProxy::name): (WebCore::IDBIndexBackendProxy::keyPath): (WebCore::IDBIndexBackendProxy::unique):
  • src/IDBIndexBackendProxy.h: Added.
  • src/IDBIndexProxy.cpp: Removed.
  • src/IDBIndexProxy.h: Removed.
  • src/IDBObjectStoreProxy.cpp: (WebCore::IDBObjectStoreProxy::index):
  • src/IDBObjectStoreProxy.h:
  • src/WebIDBCallbacksImpl.cpp: (WebCore::WebIDBCallbacksImpl::onSuccess):
  • src/WebIDBIndexImpl.cpp: (WebKit::WebIDBIndexImpl::WebIDBIndexImpl): (WebKit::WebIDBIndexImpl::name): (WebKit::WebIDBIndexImpl::keyPath): (WebKit::WebIDBIndexImpl::unique):
  • src/WebIDBIndexImpl.h:
  • src/WebIDBObjectStoreImpl.cpp: (WebKit::WebIDBObjectStoreImpl::index):
7:31 AM Changeset in webkit [64357] by commit-queue@webkit.org
  • 10 edits in trunk

2010-07-30 Rafael Antognolli <antognolli@profusion.mobi>

Reviewed by Antonio Gomes.

[EFL] Add library version and soname to EFL generated libraries and binary.
https://bugs.webkit.org/show_bug.cgi?id=43212

Make WebKit-EFL follow libtool soname versioning scheme.

  • cmake/OptionsEfl.cmake: Added PROJECT_VERSION_PATCH to PROJECT_VERSION.

2010-07-30 Rafael Antognolli <antognolli@profusion.mobi>

Reviewed by Antonio Gomes.

[EFL] Add library version and soname to EFL generated libraries and binary.
https://bugs.webkit.org/show_bug.cgi?id=43212

Add version and soname to libjavascriptcore.so and libwtf.so in case of
linking as shared libraries, and version to jsc executable.

  • CMakeLists.txt:
  • jsc/CMakeLists.txt:
  • wtf/CMakeLists.txt:

2010-07-30 Rafael Antognolli <antognolli@profusion.mobi>

Reviewed by Antonio Gomes.

[EFL] Add library version and soname to EFL generated libraries and binary.
https://bugs.webkit.org/show_bug.cgi?id=43212

Add version and soname to libwebcore.so in case of linking as shared
library.

No new feature, so no new tests.

  • CMakeLists.txt:

2010-07-30 Rafael Antognolli <antognolli@profusion.mobi>

Reviewed by Antonio Gomes.

[EFL] Add library version and soname to EFL generated libraries and binary.
https://bugs.webkit.org/show_bug.cgi?id=43212

Add version and soname to libewebkit.so.

  • CMakeLists.txt:
7:16 AM Changeset in webkit [64356] by steveblock@google.com
  • 26 edits
    2 copies
    3 adds in trunk

2010-07-30 Steve Block <steveblock@google.com>

Reviewed by Steve Block.

Add LayoutTestController methods to test DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39589

  • fast/dom/DeviceOrientation/basic-operation-expected.txt: Added.
  • fast/dom/DeviceOrientation/basic-operation.html: Added.
  • fast/dom/DeviceOrientation/script-tests/basic-operation.js: Added.
  • platform/gtk/Skipped:

2010-07-30 Steve Block <steveblock@google.com>

Reviewed by Steve Block.

Add LayoutTestController methods to test DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39589

This patch does not hook up the new LayoutTestController method to WebKit
for any platform. This will be done in later patches.
https://bugs.webkit.org/show_bug.cgi?id=43181 tracks this for Mac.

Test: fast/dom/DeviceOrientation/basic-operation.html

  • Android.mk:
  • CMakeLists.txt:
  • GNUmakefile.am:
  • WebCore.exp.in:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DeviceOrientationClient.h: (WebCore::DeviceOrientationClient::~DeviceOrientationClient):
  • dom/DeviceOrientationController.cpp: (WebCore::DeviceOrientationController::DeviceOrientationController):
  • dom/DeviceOrientationEvent.cpp:
  • platform/mock/DeviceOrientationClientMock.cpp: Added. (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock): (WebCore::DeviceOrientationClientMock::setController): (WebCore::DeviceOrientationClientMock::startUpdating): (WebCore::DeviceOrientationClientMock::stopUpdating): (WebCore::DeviceOrientationClientMock::setOrientation): (WebCore::DeviceOrientationClientMock::timerFired):
  • platform/mock/DeviceOrientationClientMock.h: Added. (WebCore::DeviceOrientationClientMock::lastOrientation):

2010-07-30 Steve Block <steveblock@google.com>

Reviewed by Steve Block.

Add LayoutTestController methods to test DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39589

  • DumpRenderTree/LayoutTestController.cpp: (setMockDeviceOrientationCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController): (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/chromium/LayoutTestController.h:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setMockDeviceOrientation):
  • Scripts/build-webkit:
6:47 AM Changeset in webkit [64355] by abecsi@webkit.org
  • 4 edits in trunk/WebKit2

2010-07-30 Balazs Kelemen <kb@inf.u-szeged.hu>

Unreviewed build fix.

[Qt] Build fix for recent API changes in WebKit2.

  • UIProcess/API/cpp/qt/WKStringQt.cpp: (WKStringCopyQString):
  • UIProcess/API/cpp/qt/WKURLQt.cpp: (WKURLCopyQUrl):
  • UIProcess/API/qt/qwkpage.cpp: (QWKPage::QWKPage):
6:31 AM Changeset in webkit [64354] by tonikitoo@webkit.org
  • 3 edits in trunk/WebKitTools

2010-07-29 Antonio Gomes <tonikitoo@webkit.org>

Reviewed by Kenneth Christiansen.

[Qt] QtTestBrowser: -resizes-to-contents command line parameter is broken
https://bugs.webkit.org/show_bug.cgi?id=43209

When -resizes-to-content was being passed as a command line parameter it was simply
not being set (although the corresponding menu item was marked as ON).
User had to toggle the menu OFF and then ON again for it to take place.

Reason: LauncherWindow::applyPrefs method sets many user options passed in from
the command line, but not resizesToContents. Patch addresses that.

  • QtTestBrowser/launcherwindow.cpp: (LauncherWindow::createChrome): (LauncherWindow::applyPrefs): (LauncherWindow::toggleResizesToContents):
  • QtTestBrowser/webview.h: (WebViewGraphicsBased::resizesToContents):
6:31 AM Changeset in webkit [64353] by tonikitoo@webkit.org
  • 3 edits in trunk/WebKitTools

2010-07-29 Antonio Gomes <tonikitoo@webkit.org>

Rubber-stamped by Simon Fraser.

[Qt] QtTestBrowser: more method grouping and clean ups.

Moving blocks of code around. Basically grouping related methods close to each.

  • QtTestBrowser/launcherwindow.cpp: (LauncherWindow::initializeView): (LauncherWindow::createChrome): (LauncherWindow::changeViewportUpdateMode): (LauncherWindow::showFPS): (LauncherWindow::newWindow): (LauncherWindow::cloneWindow):
  • QtTestBrowser/launcherwindow.h:
6:19 AM Changeset in webkit [64352] by jorlow@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-07-30 Satish Sampath <satish@chromium.org>

Reviewed by Jeremy Orlow.

Add a check for WebViewClient being null.
https://bugs.webkit.org/show_bug.cgi?id=43240

  • src/SpeechInputClientImpl.cpp: (WebKit::SpeechInputClientImpl::SpeechInputClientImpl):
5:21 AM Changeset in webkit [64351] by commit-queue@webkit.org
  • 7 edits
    2 adds in trunk/WebCore

2010-07-30 Satish Sampath <satish@chromium.org>

Reviewed by Jeremy Orlow.

Add a mock in WebCore for testing speech input
https://bugs.webkit.org/show_bug.cgi?id=42603

Layout tests will be added in a subsequent patch using this mock.

  • Android.mk:
  • GNUmakefile.am:
  • WebCore.gypi:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/mock/SpeechInputClientMock.cpp: Added. (WebCore::SpeechInputClientMock::SpeechInputClientMock): (WebCore::SpeechInputClientMock::startRecognition): (WebCore::SpeechInputClientMock::stopRecording): (WebCore::SpeechInputClientMock::cancelRecognition): (WebCore::SpeechInputClientMock::setRecognitionResult): (WebCore::SpeechInputClientMock::timerFired):
  • platform/mock/SpeechInputClientMock.h: Added.
4:43 AM Changeset in webkit [64350] by commit-queue@webkit.org
  • 2 edits in trunk/WebKit/chromium

2010-07-30 Hans Wennborg <hans@chromium.org>

Reviewed by Steve Block.

Disable runtime switch for device orientation in chromium
https://bugs.webkit.org/show_bug.cgi?id=43237

Explicitly set the runtime switch for device orientation
in WebView::create until we implement the feature.
If the flag is accidentally on while no DeviceOrientationClient
is provided, the program will crash.

  • src/WebViewImpl.cpp: (WebKit::WebView::create):
4:32 AM Changeset in webkit [64349] by commit-queue@webkit.org
  • 2 edits in trunk/WebKitTools

2010-07-30 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>

Reviewed by Tor Arne Vestbø.

[QT][Symbian] QtTestBrowser missing location capabilities
https://bugs.webkit.org/show_bug.cgi?id=43235

QtTestBrowser missing capabilities to use QtMobility::QLocation.

  • QtTestBrowser/QtTestBrowser.pro:
4:18 AM Changeset in webkit [64348] by krit@webkit.org
  • 2 edits in trunk/WebKitSite

2010-07-30 Renata Hodovan <reni@inf.u-szeged.hu>

Reviewed by Nikolas Zimmermann.

Update SVG implementation status.

  • projects/svg/status.xml:
4:10 AM Changeset in webkit [64347] by Nikolas Zimmermann
  • 17 edits in trunk/LayoutTests

2010-07-30 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

svg/dynamic-updates: cursor attribute changes not respected
https://bugs.webkit.org/show_bug.cgi?id=42615

Turns out the tests were wrong, specifying a hot spot which is too large.
Switched to a larger cursor image to make the changes easier to detect, when using the browser.

All svg/dynamic-updates tests work again, without regressions.

  • platform/mac/svg/dynamic-updates/SVGCursorElement-dom-x-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-dom-x-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-dom-y-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-dom-y-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-svgdom-x-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-svgdom-x-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-svgdom-y-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGCursorElement-svgdom-y-prop-expected.png:
  • svg/dynamic-updates/SVGCursorElement-dom-x-attr-expected.txt:
  • svg/dynamic-updates/SVGCursorElement-dom-y-attr-expected.txt:
  • svg/dynamic-updates/SVGCursorElement-svgdom-x-prop-expected.txt:
  • svg/dynamic-updates/SVGCursorElement-svgdom-y-prop-expected.txt:
  • svg/dynamic-updates/script-tests/SVGCursorElement-dom-x-attr.js:
  • svg/dynamic-updates/script-tests/SVGCursorElement-dom-y-attr.js:
  • svg/dynamic-updates/script-tests/SVGCursorElement-svgdom-x-prop.js:
  • svg/dynamic-updates/script-tests/SVGCursorElement-svgdom-y-prop.js:
4:10 AM Changeset in webkit [64346] by commit-queue@webkit.org
  • 2 edits in trunk/JavaScriptCore

2010-07-30 Mahesh Kulkarni <mahesh.kulkarni@nokia.com>

Reviewed by Simon Hausmann.

[QT] build fix for symbian
https://bugs.webkit.org/show_bug.cgi?id=43234

  • wtf/PageAllocation.h: (WTF::PageAllocation::PageAllocation):
4:02 AM Changeset in webkit [64345] by Nikolas Zimmermann
  • 3 edits in trunk/WebCore

2010-07-30 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

Optimize SVGResources memory usage
https://bugs.webkit.org/show_bug.cgi?id=43236

Instead of storing pointers to all possible resources that could be applied to an element, group them in three categories:
clipper/filter/masker, marker-start/marker-mid/marker-end, and fill/stroke.

Only build the cached resources data for elements where the properties can be applied to. Maintain a static list of tagnames
for each of the three categories, to avoid doing unncessary work.

Doesn't affect any tests.

  • rendering/SVGResources.cpp: (WebCore::SVGResources::SVGResources): (WebCore::clipperFilterMaskerTags): (WebCore::markerTags): (WebCore::fillAndStrokeTags): (WebCore::SVGResources::buildCachedResources): (WebCore::SVGResources::invalidateClient): (WebCore::SVGResources::resourceDestroyed): (WebCore::SVGResources::buildSetOfResources): (WebCore::SVGResources::setClipper): (WebCore::SVGResources::resetClipper): (WebCore::SVGResources::setFilter): (WebCore::SVGResources::resetFilter): (WebCore::SVGResources::setMarkerStart): (WebCore::SVGResources::resetMarkerStart): (WebCore::SVGResources::setMarkerMid): (WebCore::SVGResources::resetMarkerMid): (WebCore::SVGResources::setMarkerEnd): (WebCore::SVGResources::resetMarkerEnd): (WebCore::SVGResources::setMasker): (WebCore::SVGResources::resetMasker): (WebCore::SVGResources::setFill): (WebCore::SVGResources::resetFill): (WebCore::SVGResources::setStroke): (WebCore::SVGResources::resetStroke): (WebCore::SVGResources::dump):
  • rendering/SVGResources.h: (WebCore::SVGResources::clipper): (WebCore::SVGResources::filter): (WebCore::SVGResources::markerStart): (WebCore::SVGResources::markerMid): (WebCore::SVGResources::markerEnd): (WebCore::SVGResources::masker): (WebCore::SVGResources::fill): (WebCore::SVGResources::stroke): (WebCore::SVGResources::ClipperFilterMaskerData::ClipperFilterMaskerData): (WebCore::SVGResources::ClipperFilterMaskerData::create): (WebCore::SVGResources::MarkerData::MarkerData): (WebCore::SVGResources::MarkerData::create): (WebCore::SVGResources::FillStrokeData::FillStrokeData): (WebCore::SVGResources::FillStrokeData::create):
3:48 AM Changeset in webkit [64344] by andreip@google.com
  • 30 edits
    13 moves in trunk

2010-07-26 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] IndexedDatabase should be called IDBFactory.
https://bugs.webkit.org/show_bug.cgi?id=42967

Rename IndexedDatabase to IDBFactory to match the specification.

Also implement the following new naming convention:
IDBFoo IDL interfaces are implemented using IDBFoo C++ classes.
IDBFoo objects have pointers to IDBFooBackendInterface objects.
IDBFooBackendInterface is implemented by IDBFooBackendImpl and
IDBFooBackendProxy (for Chromium).

No new tests needed, just renaming.

  • Android.derived.jscbindings.mk:
  • Android.derived.v8bindings.mk:
  • Android.mk:
  • CMakeLists.txt:
  • DerivedSources.cpp:
  • DerivedSources.make:
  • GNUmakefile.am:
  • WebCore.gyp/WebCore.gyp:
  • WebCore.gypi:
  • WebCore.pri:
  • WebCore.pro:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSIDBAnyCustom.cpp: (WebCore::toJS):
  • bindings/v8/custom/V8IDBAnyCustom.cpp: (WebCore::toV8):
  • page/DOMWindow.cpp: (WebCore::DOMWindow::clear): (WebCore::DOMWindow::indexedDB):
  • page/DOMWindow.h:
  • page/DOMWindow.idl:
  • page/PageGroup.cpp: (WebCore::PageGroup::idbFactory):
  • page/PageGroup.h:
  • platform/chromium/ChromiumBridge.h:
  • storage/IDBAny.cpp: (WebCore::IDBAny::idbFactory): (WebCore::IDBAny::set):
  • storage/IDBAny.h: (WebCore::IDBAny::):
  • storage/IDBDatabaseRequest.cpp:
  • storage/IDBFactory.cpp: Added. (WebCore::IDBFactory::IDBFactory): (WebCore::IDBFactory::~IDBFactory): (WebCore::IDBFactory::open):
  • storage/IDBFactory.h: Added. (WebCore::IDBFactory::create):
  • storage/IDBFactory.idl: Added.
  • storage/IDBFactoryBackendInterface.cpp: Added. (WebCore::IDBFactoryBackendInterface::create):
  • storage/IDBFactoryBackendInterface.h: Added. (WebCore::IDBFactoryBackendInterface::~IDBFactoryBackendInterface):
  • storage/IDBFactoryBackendImpl.cpp: Added. (WebCore::IDBFactoryBackendImpl::create): (WebCore::IDBFactoryBackendImpl::IDBFactoryBackendImpl): (WebCore::IDBFactoryBackendImpl::~IDBFactoryBackendImpl): (WebCore::IDBFactoryBackendImpl::open):
  • storage/IDBFactoryBackendImpl.h: Added.
  • storage/IDBKeyRange.cpp: (WebCore::IDBKeyRange::only): (WebCore::IDBKeyRange::leftBound): (WebCore::IDBKeyRange::rightBound): (WebCore::IDBKeyRange::bound):
  • storage/IDBKeyRange.h:
  • storage/IDBKeyRange.idl:
  • storage/IndexedDatabase.cpp: Removed.
  • storage/IndexedDatabase.h: Removed.
  • storage/IndexedDatabaseImpl.cpp: Removed.
  • storage/IndexedDatabaseImpl.h: Removed.
  • storage/IndexedDatabaseRequest.cpp: Removed.
  • storage/IndexedDatabaseRequest.h: Removed.
  • storage/IndexedDatabaseRequest.idl: Removed.
  • storage/chromium/IDBFactoryBackendInterface.cpp: Added. (WebCore::IDBFactoryBackendInterface::create):
  • storage/chromium/IndexedDatabase.cpp: Removed.

2010-07-26 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] IndexedDatabase should be called IDBFactory.
https://bugs.webkit.org/show_bug.cgi?id=42967

  • WebKit.gyp:
  • public/WebIDBFactory.h: Added. (WebKit::WebIDBFactory::~WebIDBFactory): (WebKit::WebIDBFactory::databases): (WebKit::WebIDBFactory::open):
  • public/WebIndexedDatabase.h: Removed.
  • public/WebKitClient.h: (WebKit::WebKitClient::idbFactory):
  • src/ChromiumBridge.cpp: (WebCore::ChromiumBridge::idbFactory):
  • src/IDBFactoryBackendProxy.cpp: Added. (WebCore::IDBFactoryBackendProxy::create): (WebCore::IDBFactoryBackendProxy::IDBFactoryBackendProxy): (WebCore::IDBFactoryBackendProxy::~IDBFactoryBackendProxy): (WebCore::IDBFactoryBackendProxy::open):
  • src/IDBFactoryBackendProxy.h: Added.
  • src/IndexedDatabaseProxy.cpp: Removed.
  • src/IndexedDatabaseProxy.h: Removed.
  • src/WebIDBFactoryImpl.cpp: Added. (WebKit::WebIDBFactory::create): (WebKit::WebIDBFactoryImpl::WebIDBFactoryImpl): (WebKit::WebIDBFactoryImpl::~WebIDBFactoryImpl): (WebKit::WebIDBFactoryImpl::open):
  • src/WebIDBFactoryImpl.h: Added.
  • src/WebIndexedDatabaseImpl.cpp: Removed.
  • src/WebIndexedDatabaseImpl.h: Removed.
3:12 AM Changeset in webkit [64343] by tkent@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, test expectation update.

  • platform/chromium/drt_expectations.txt:
2:48 AM Changeset in webkit [64342] by jorlow@chromium.org
  • 5 edits in trunk/LayoutTests

2010-07-30 Jeremy Orlow <jorlow@chromium.org>

Another svg baseline that was wrong and now visually matches mac (minus
font issues, of course). Unreviewed.

  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-turb-01-f-expected.checksum:
  • platform/chromium-linux/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-turb-01-f-expected.checksum:
  • platform/chromium-win/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:
1:44 AM Changeset in webkit [64341] by apavlov@chromium.org
  • 3 edits in trunk/WebCore

2010-07-29 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: Crash on refresh with a comment selected in the Elements panel
https://bugs.webkit.org/show_bug.cgi?id=43183

  • inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::nodeForPath):
  • inspector/front-end/ElementsPanel.js: (WebInspector.ElementsPanel.prototype.reset):
1:22 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
1:17 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
1:15 AM QtWebKit edited by Henry Haverinen
(diff)
1:14 AM QtWebKit edited by Henry Haverinen
(diff)
1:13 AM QtWebKit edited by Henry Haverinen
(diff)
12:49 AM Changeset in webkit [64340] by commit-queue@webkit.org
  • 7 edits in trunk

2010-07-30 Renata Hodovan <reni@inf.u-szeged.hu>

Reviewed by Nikolas Zimmermann.

Update expectation for turbulence filter:
svg/W3C-SVG-1.1/filters-turb-01-f.svg

  • platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.checksum:
  • platform/mac/svg/W3C-SVG-1.1/filters-turb-01-f-expected.png:

2010-07-30 Renata Hodovan <reni@inf.u-szeged.hu>

Reviewed by Nikolas Zimmermann.

feTurbulence is not implemented.
https://bugs.webkit.org/show_bug.cgi?id=5864

This code is based on the previous implementation of
Dirk Schulze, extended with some modification and optimization.

LayoutTests: Updating expected values for turbulence filter.
svg/W3C-SVG-1.1/filters-turb-01-f.svg

  • svg/SVGFETurbulenceElement.cpp: (WebCore::SVGFETurbulenceElement::build):
  • svg/graphics/filters/SVGFETurbulence.cpp: (WebCore::FETurbulence::FETurbulence): (WebCore::FETurbulence::create): (WebCore::FETurbulence::PaintingData::PaintingData): (WebCore::FETurbulence::PaintingData::random): (WebCore::smoothCurve): (WebCore::linearInterpolation): (WebCore::FETurbulence::initPaint): (WebCore::checkNoise): (WebCore::FETurbulence::noise2D): (WebCore::Noise::if): (WebCore::FETurbulence::calculateTurbulenceValueForPoint): (WebCore::FETurbulence::apply):
  • svg/graphics/filters/SVGFETurbulence.h: (WebCore::):

Jul 29, 2010:

11:50 PM Changeset in webkit [64339] by mrobinson@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Fix another bad ChangeLog merge.

11:44 PM Changeset in webkit [64338] by mrobinson@webkit.org
  • 4 edits
    64 adds in trunk

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Reviewed by Dirk Schulze.

Cairo: Need to implement GraphicsContext::clipConvexPolygon()
https://bugs.webkit.org/show_bug.cgi?id=41308

Enable tests for path based borders.

  • platform/gtk/fast/borders/border-radius-circle-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-circle-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-circle-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-circle-expected.txt.
  • platform/gtk/fast/borders/border-radius-groove-01-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-groove-01-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-groove-01-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-groove-01-expected.txt.
  • platform/gtk/fast/borders/border-radius-groove-02-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-groove-02-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-groove-02-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-groove-02-expected.txt.
  • platform/gtk/fast/borders/border-radius-groove-03-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-groove-03-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-groove-03-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-groove-03-expected.txt.
  • platform/gtk/fast/borders/border-radius-wide-border-01-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-01-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-01-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-wide-border-01-expected.txt.
  • platform/gtk/fast/borders/border-radius-wide-border-02-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-02-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-02-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-wide-border-02-expected.txt.
  • platform/gtk/fast/borders/border-radius-wide-border-03-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-03-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-03-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-wide-border-03-expected.txt.
  • platform/gtk/fast/borders/border-radius-wide-border-04-expected.checksum: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-04-expected.png: Added.
  • platform/gtk/fast/borders/border-radius-wide-border-04-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/border-radius-wide-border-04-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDashed04-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDashed04-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDashed04-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDashed04-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDashed05-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDashed05-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDashed05-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDashed05-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDashed06-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDashed06-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDashed06-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDashed06-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDotted04-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDotted04-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDotted04-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDotted04-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDotted05-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDotted05-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDotted05-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDotted05-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDotted06-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDotted06-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDotted06-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDotted06-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDouble04-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDouble04-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDouble04-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDouble04-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDouble05-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDouble05-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDouble05-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDouble05-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDouble06-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDouble06-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDouble06-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDouble06-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDouble07-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDouble07-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDouble07-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDouble07-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDouble08-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDouble08-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDouble08-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDouble08-expected.txt.
  • platform/gtk/fast/borders/borderRadiusDouble09-expected.checksum: Added.
  • platform/gtk/fast/borders/borderRadiusDouble09-expected.png: Added.
  • platform/gtk/fast/borders/borderRadiusDouble09-expected.txt: Copied from LayoutTests/platform/mac/fast/borders/borderRadiusDouble09-expected.txt.
  • platform/gtk/fast/borders/different-color-borders-expected.checksum: Added.
  • platform/gtk/fast/borders/different-color-borders-expected.png: Added.
  • platform/gtk/fast/borders/different-color-borders-expected.txt: Added.

2010-07-29 Ryosuke Niwa <rniwa@webkit.org>

Reviewed by Darin Adler.

InsertOrderedList does not switch the list type properly when it has an inner list.
https://bugs.webkit.org/show_bug.cgi?id=43166

The bug was caused by forcedCreateList was not set to true when the start and the end
of the selection lies in the same list. Added selectionHasListOfType to fix this problem.

WebKit used not to convert the outer lists even when the list is fully selected.
Corrected this behavior by converting the entire list at once when the list is fully selected.
To decide whether or not a list is fully selected, added currentSelection argument to doApplyForSingleParagraph.

Tests: editing/execCommand/switch-list-type-with-inner-list.html

editing/execCommand/switch-list-type-with-orphaned-li.html

  • editing/InsertListCommand.cpp: (WebCore::InsertListCommand::mergeWithNeighboringLists): Extracted the code to merge lists. (WebCore::InsertListCommand::selectionHasListOfType): attachment.cgi (WebCore::InsertListCommand::doApply): Calls selectionHasListOfType. (WebCore::InsertListCommand::doApplyForSingleParagraph): See above. (WebCore::InsertListCommand::listifyParagraph): Calls mergeWithNeighboringLists.
  • editing/InsertListCommand.h:
  • editing/htmlediting.cpp: (WebCore::canMergeLists): Ensures lists being merged are instances of HTMLElement. (WebCore::isNodeVisiblyContainedWithin): Works properly when one end is inside the range.
11:39 PM Changeset in webkit [64337] by rniwa@webkit.org
  • 8 edits
    4 adds in trunk

InsertOrderedList does not switch the list type properly when it has an inner list.
https://bugs.webkit.org/show_bug.cgi?id=43166

Reviewed by Darin Adler.

WebCore:

The bug was caused by forcedCreateList was not set to true when the start and the end
of the selection lies in the same list. Added selectionHasListOfType to fix this problem.

WebKit used not to convert the outer lists even when the list is fully selected.
Corrected this behavior by converting the entire list at once when the list is fully selected.
To decide whether or not a list is fully selected, added currentSelection argument to doApplyForSingleParagraph.

Tests: editing/execCommand/switch-list-type-with-inner-list.html

editing/execCommand/switch-list-type-with-orphaned-li.html

  • editing/InsertListCommand.cpp:

(WebCore::InsertListCommand::mergeWithNeighboringLists): Extracted the code to merge lists.
(WebCore::InsertListCommand::selectionHasListOfType): attachment.cgi
(WebCore::InsertListCommand::doApply): Calls selectionHasListOfType.
(WebCore::InsertListCommand::doApplyForSingleParagraph): See above.
(WebCore::InsertListCommand::listifyParagraph): Calls mergeWithNeighboringLists.

  • editing/InsertListCommand.h:
  • editing/htmlediting.cpp:

(WebCore::canMergeLists): Ensures lists being merged are instances of HTMLElement.
(WebCore::isNodeVisiblyContainedWithin): Works properly when one end is inside the range.

LayoutTests:

Added a test to convert an unordered list with a nested list to an ordered list.
Also added a test to convert multiple lists with an orphaned list to an ordered list.
The behavior of WebKit is changed not to flatten the lists when inserting ordered/unordered
lists on nested lists.

  • editing/execCommand/5207369-expected.txt: No longer flattens the list to match Firefox and MSIE.
  • editing/execCommand/5207369.html: Updated.
  • editing/execCommand/remove-list-items-expected.txt: Removed one whitespace.
  • editing/execCommand/switch-list-type-with-inner-list-expected.txt: Added.
  • editing/execCommand/switch-list-type-with-inner-list.html: Added.
  • editing/execCommand/switch-list-type-with-orphaned-li-expected.txt: Added.
  • editing/execCommand/switch-list-type-with-orphaned-li.html: Added.
11:22 PM Changeset in webkit [64336] by mrobinson@webkit.org
  • 1 edit in trunk/WebCore/ChangeLog

Fix ChangeLog snafu caused by bad merge.

11:13 PM Changeset in webkit [64335] by mrobinson@webkit.org
  • 3 edits in trunk/WebCore

2010-07-29 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64313.
http://trac.webkit.org/changeset/64313
https://bugs.webkit.org/show_bug.cgi?id=43233

Some Chromium bots are not happy with it for some unknown
reason. (Requested by dumi on #webkit).

  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/test/JS/JSTestCallback.cpp: (WebCore::JSTestCallback::~JSTestCallback):
  • platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::SQLiteDatabase): (WebCore::SQLiteDatabase::close): (WebCore::SQLiteDatabase::lock): (WebCore::SQLiteDatabase::unlock):
  • platform/sql/SQLiteDatabase.h:
  • platform/sql/SQLiteStatement.cpp: (WebCore::SQLiteStatement::prepare): (WebCore::SQLiteStatement::step):
  • storage/AbstractDatabase.cpp:
  • storage/AbstractDatabase.h:
  • storage/DatabaseTracker.cpp:
  • storage/DatabaseTracker.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::execute):
  • storage/SQLStatementSync.cpp: (WebCore::SQLStatementSync::execute):
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::checkAndHandleClosedDatabase): (WebCore::SQLTransaction::performNextStep): (WebCore::SQLTransaction::performPendingCallback): (WebCore::SQLTransaction::deliverTransactionCallback): (WebCore::SQLTransaction::postflightAndCommit): (WebCore::SQLTransaction::deliverTransactionErrorCallback): (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  • storage/SQLTransaction.h:
  • storage/chromium/DatabaseTrackerChromium.cpp:
  • workers/WorkerThread.cpp: (WebCore::WorkerThread::stop):
10:09 PM Changeset in webkit [64334] by commit-queue@webkit.org
  • 26 edits
    6 deletes in trunk

2010-07-29 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64313.
http://trac.webkit.org/changeset/64313
https://bugs.webkit.org/show_bug.cgi?id=43233

Some Chromium bots are not happy with it for some unknown
reason. (Requested by dumi on #webkit).

  • JavaScriptCore.exp:
  • JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def:
  • wtf/Threading.h:
  • wtf/ThreadingPthreads.cpp:
  • wtf/ThreadingWin.cpp:
  • wtf/gtk/ThreadingGtk.cpp:
  • wtf/qt/ThreadingQt.cpp:

2010-07-29 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64313.
http://trac.webkit.org/changeset/64313
https://bugs.webkit.org/show_bug.cgi?id=43233

Some Chromium bots are not happy with it for some unknown
reason. (Requested by dumi on #webkit).

  • fast/workers/storage/interrupt-database-expected.txt: Removed.
  • fast/workers/storage/interrupt-database-sync-expected.txt: Removed.
  • fast/workers/storage/interrupt-database-sync.html: Removed.
  • fast/workers/storage/interrupt-database.html: Removed.
  • fast/workers/storage/resources/interrupt-database-sync.js: Removed.
  • fast/workers/storage/resources/interrupt-database.js: Removed.

2010-07-29 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64313.
http://trac.webkit.org/changeset/64313
https://bugs.webkit.org/show_bug.cgi?id=43233

Some Chromium bots are not happy with it for some unknown
reason. (Requested by dumi on #webkit).

  • bindings/js/JSCustomVoidCallback.cpp: (WebCore::JSCustomVoidCallback::~JSCustomVoidCallback):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/test/JS/JSTestCallback.cpp: (WebCore::JSTestCallback::~JSTestCallback):
  • platform/sql/SQLiteDatabase.cpp: (WebCore::SQLiteDatabase::SQLiteDatabase): (WebCore::SQLiteDatabase::close): (WebCore::SQLiteDatabase::lock): (WebCore::SQLiteDatabase::unlock):
  • platform/sql/SQLiteDatabase.h:
  • platform/sql/SQLiteStatement.cpp: (WebCore::SQLiteStatement::prepare): (WebCore::SQLiteStatement::step):
  • storage/AbstractDatabase.cpp:
  • storage/AbstractDatabase.h:
  • storage/DatabaseTracker.cpp:
  • storage/DatabaseTracker.h:
  • storage/SQLStatement.cpp: (WebCore::SQLStatement::execute):
  • storage/SQLStatementSync.cpp: (WebCore::SQLStatementSync::execute):
  • storage/SQLTransaction.cpp: (WebCore::SQLTransaction::checkAndHandleClosedDatabase): (WebCore::SQLTransaction::performNextStep): (WebCore::SQLTransaction::performPendingCallback): (WebCore::SQLTransaction::deliverTransactionCallback): (WebCore::SQLTransaction::postflightAndCommit): (WebCore::SQLTransaction::deliverTransactionErrorCallback): (WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):
  • storage/SQLTransaction.h:
  • storage/chromium/DatabaseTrackerChromium.cpp:
  • workers/WorkerThread.cpp: (WebCore::WorkerThread::stop):
7:09 PM Changeset in webkit [64333] by andersca@apple.com
  • 2 edits in trunk/WebKitTools

Add PluginTest.cpp

  • DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
6:43 PM Changeset in webkit [64332] by dpranke@chromium.org
  • 2 edits in trunk/WebKitTools

2010-07-29 Dirk Pranke <dpranke@chromium.org>

Reviewed by Eric Seidel.

Update download URLs for python irclib package; the old URLs
pointed at a specific mirror host and not the general sourceforge
URLs.

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

  • Scripts/webkitpy/thirdparty/init.py:
6:41 PM Changeset in webkit [64331] by andersca@apple.com
  • 2 edits in trunk/WebKitTools

Fix typo.

  • DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
6:39 PM Changeset in webkit [64330] by andersca@apple.com
  • 2 edits in trunk/WebKitTools

Another attempt at fixing the Qt and GTK+ build.

  • DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:

(webkit_test_plugin_new_instance):
(webkit_test_plugin_destroy_stream):

6:34 PM Changeset in webkit [64329] by victorw@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-29 Victor Wang <victorw@chromium.org>

Unreviewed. Update chromium test expectations for test:
plugins/document-open.html

  • platform/chromium/test_expectations.txt:
6:29 PM Changeset in webkit [64328] by andersca@apple.com
  • 5 edits in trunk/WebKitTools

Another build fix attempt.

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp:
  • DumpRenderTree/qt/TestNetscapePlugin/TestNetscapePlugin.pro:
  • DumpRenderTree/unix/TestNetscapePlugin/TestNetscapePlugin.cpp:

(webkit_test_plugin_new_instance):

  • GNUmakefile.am:
6:27 PM Changeset in webkit [64327] by commit-queue@webkit.org
  • 10 edits in trunk/JavaScriptCore

2010-07-29 Sheriff Bot <webkit.review.bot@gmail.com>

Unreviewed, rolling out r64302.
http://trac.webkit.org/changeset/64302
https://bugs.webkit.org/show_bug.cgi?id=43223

Assertion is bogus (Requested by olliej on #webkit).

  • assembler/ARMAssembler.cpp: (JSC::ARMAssembler::executableCopy):
  • assembler/AssemblerBuffer.h: (JSC::AssemblerBuffer::putShortUnchecked): (JSC::AssemblerBuffer::putIntUnchecked): (JSC::AssemblerBuffer::putInt64Unchecked):
  • jit/JITStubs.cpp:
  • pcre/pcre_compile.cpp: (jsRegExpCompile):
  • wtf/FastMalloc.cpp: (WTF::PageHeapAllocator::New): (WTF::TCMalloc_Central_FreeList::Populate):
  • wtf/MD5.cpp: (WTF::reverseBytes): (WTF::MD5::addBytes): (WTF::MD5::checksum):
  • wtf/StdLibExtras.h:
  • wtf/Vector.h: (WTF::VectorBuffer::inlineBuffer):
  • wtf/qt/StringQt.cpp: (WebCore::String::String):
6:03 PM Changeset in webkit [64326] by andersca@apple.com
  • 3 edits in trunk/WebKitTools

Unreviewed build fix.

Patch by Martin Robinson <mrobinson@igalia.com> on 2010-07-29
Fix installation of autogenerated header files.

  • GNUmakefile.am: Fix autogenerated header file installation.
5:51 PM Changeset in webkit [64325] by dumi@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, re-enabling all storage tests on Windows in Chromium.

  • platform/chromium/test_expectations.txt:
5:40 PM Changeset in webkit [64324] by beidson@apple.com
  • 3 edits in trunk/WebKit2

2010-07-29 Brady Eidson <beidson@apple.com>

Reviewed by Sam Weinig.

Setting empty document schemes on the WKContext shouldn't start the WebProcess
<rdar://problem/8253734> and https://bugs.webkit.org/show_bug.cgi?id=43222


  • UIProcess/WebContext.cpp: (WebKit::WebContext::ensureWebProcess): (WebKit::WebContext::registerURLSchemeAsEmptyDocument):
  • UIProcess/WebContext.h:
5:11 PM Changeset in webkit [64323] by andersca@apple.com
  • 8 edits
    4 adds in trunk

Refactor TestNetscapePlugin so tests can be split in separate files
https://bugs.webkit.org/show_bug.cgi?id=43220

Reviewed by Sam Weinig.

WebKitTools:

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:

Add PluginTest.cpp, PluginTest.h and Tests/DocumentOpenInDestroyStream.cpp.

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:

(pluginAllocate):
Initialize pluginTest to 0. Remove testDocumentOpenInDestroyStream.

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.h:
  • DumpRenderTree/TestNetscapePlugIn/PluginTest.cpp: Added.

(PluginTest::PluginTest):
Initialize m_npp and the test identifier.

(PluginTest::createTestFunctions):
Return the map from identifiers to createTest functions.

(PluginTest::registerCreateTestFunction):
Insert the identifier and create function pair in the map.

(PluginTest::create):
Look for a createTest function. If one is found, call it. Otherwise create a vanilla PluginTest object.

  • DumpRenderTree/TestNetscapePlugIn/PluginTest.h: Added.

(PluginTest::Register::Register):
Helper class template for registering plug-in tests.

(PluginTest::Register::create):
Create a new test of the given type.

  • DumpRenderTree/TestNetscapePlugIn/Tests/DocumentOpenInDestroyStream.cpp: Added.

(DocumentOpenInDestroyStream::DocumentOpenInDestroyStream):
Add a test that calls testDocumentOpen from its NPP_DestroyStream callback.

  • DumpRenderTree/TestNetscapePlugIn/main.cpp:

(NPP_New):
Create a PluginTest given the identifier. Remove the check for "testdocumentopenindestroystream".

(NPP_DestroyStream):
Call the plug-in test NPP_DestroyStream member function.

  • DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.vcproj:

Add PluginTest.cpp, PluginTest.h and Tests/DocumentOpenInDestroyStream.cpp.

LayoutTests:

  • plugins/document-open.html:

Pass the test identifier as an attribute of the embed tag.

4:43 PM Changeset in webkit [64322] by mrobinson@webkit.org
  • 3 edits in trunk/WebCore

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Unreviewed, rolling out r64318.
http://trac.webkit.org/changeset/64318
https://bugs.webkit.org/show_bug.cgi?id=41732

This change broke many tests.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::drawPath): (WebCore::GraphicsContext::drawFocusRing): (WebCore::GraphicsContext::addInnerRoundedRectClip): (WebCore::GraphicsContext::beginPath): (WebCore::GraphicsContext::addPath): (WebCore::GraphicsContext::clipOut): (WebCore::GraphicsContext::fillRoundedRect):
  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
4:34 PM Changeset in webkit [64321] by dumi@chromium.org
  • 2 edits in trunk/LayoutTests

Unreviewed, updating Chromium expectations.

All storage tests started failing on the Windows canary bot after
r64313. Disabling these tests on that bot until we figure out
what's wrong.

  • platform/chromium/test_expectations.txt:
4:29 PM Changeset in webkit [64320] by barraclough@apple.com
  • 6 edits in trunk/JavaScriptCore

Changed the handling for removing and adding elements at the front
of an array. The code now keeps a bias that indicates the amount of
JSValue sized holes are prior to the ArrayStorage block. This means
that shift operations are now memmove's of the header part of
the ArrayStorage and unshift operations are similar, but may require a
realloc first to create the space. Similar operations are performed
for special cases of splice and slice.
Also optimized the new Array(size) case so that we don't allocate and
initialize array elements until the JS code starts using elements.
The array growth code is slightly more aggressive for initial growth
based on size growth of any previous array.

Patch by Michael Saboff <msaboff@apple.com> on 2010-07-29
Reviewed by Gavin Barraclough.

  • Configurations/JavaScriptCore.xcconfig:
  • jit/JITPropertyAccess.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • jit/JITPropertyAccess32_64.cpp:

(JSC::JIT::emit_op_get_by_val):
(JSC::JIT::emit_op_put_by_val):
(JSC::JIT::privateCompilePatchGetArrayLength):

  • runtime/ArrayPrototype.cpp:

(JSC::arrayProtoFuncShift):
(JSC::arrayProtoFuncSplice):
(JSC::arrayProtoFuncUnShift):

  • runtime/JSArray.cpp:

(JSC::JSArray::JSArray):
(JSC::JSArray::~JSArray):
(JSC::JSArray::getOwnPropertySlot):
(JSC::JSArray::getOwnPropertyDescriptor):
(JSC::JSArray::put):
(JSC::JSArray::putSlowCase):
(JSC::JSArray::deleteProperty):
(JSC::JSArray::getOwnPropertyNames):
(JSC::JSArray::getNewVectorLength):
(JSC::JSArray::increaseVectorLength):
(JSC::JSArray::increaseVectorPrefixLength):
(JSC::JSArray::setLength):
(JSC::JSArray::pop):
(JSC::JSArray::push):
(JSC::JSArray::shiftCount):
(JSC::JSArray::unshiftCount):
(JSC::JSArray::sortNumeric):
(JSC::JSArray::sort):
(JSC::JSArray::fillArgList):
(JSC::JSArray::copyToRegisters):
(JSC::JSArray::compactForSorting):
(JSC::JSArray::subclassData):
(JSC::JSArray::setSubclassData):
(JSC::JSArray::checkConsistency):

  • runtime/JSArray.h:

(JSC::JSArray::length):
(JSC::JSArray::canGetIndex):
(JSC::JSArray::getIndex):
(JSC::JSArray::setIndex):
(JSC::JSArray::uncheckedSetIndex):
(JSC::JSArray::arrayStorage):
(JSC::JSArray::setArrayStorage):
(JSC::JSArray::markChildrenDirect):

4:19 PM Changeset in webkit [64319] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Changed MINIMUM_CELL_SIZE to be fixed at 64 bytes.

Patch by Michael Saboff <msaboff@apple.com> on 2010-07-29
Reviewed by Darin Adler.

  • runtime/Collector.h:
4:17 PM Changeset in webkit [64318] by mrobinson@webkit.org
  • 3 edits in trunk/WebCore

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Reviewed by Dirk Schulze.

[Cairo] Bring behavior of paths on the Cairo GraphicsContext into line with the CoreGraphics port
https://bugs.webkit.org/show_bug.cgi?id=41732

Do not apply paths added to the Cairo GraphicsContext, until they are used.
This prevents drawing routines such as fillRect from interacting with any
path which callers are constructing on the GraphicsContext.

This behavior is necessary to close bug https://bugs.webkit.org/show_bug.cgi?id=41308
so tests for that issue will test this fix.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::appendPathToCairoContext): Added. A helper method which adds a path to a native Cairo context. (WebCore::setPathOnCairoContext): Added. Like appendPathToCairoContext, but clears the existing path first. (WebCore::appendWebCorePathToCairoContext): Added. Like appendPathToCairoContext, but operates on a WebCore path. (WebCore::GraphicsContext::drawEllipse): Only clear the Cairo path if cairo_stroke was not called, because cairo_stroke implicitly clears the path. (WebCore::GraphicsContext::drawConvexPolygon): Ditto. (WebCore::GraphicsContext::fillPath): Copy the path from m_pendingPath to the context and clear m_pendingPath, instead of relying on the pre-existing context path. (WebCore::GraphicsContext::strokePath): Ditto. (WebCore::GraphicsContext::drawPath): Ditto. (WebCore::GraphicsContext::drawFocusRing): Use the new appendWebCorePathToCairoContext helper instead of addPath (which will blow away any path callers are building). (WebCore::GraphicsContext::addInnerRoundedRectClip): Use the new appendWebCorePathToCairoContext helper instead of addPath (which will blow away any path callers are building). (WebCore::GraphicsContext::beginPath): Clear out m_pendingPath here instead of the main native context. (WebCore::GraphicsContext::addPath): Add the path to m_pendingPath instead of the main native context. Also ensure that the transformation matrix of the m_pendingPath is equal to that of the main cairo context. (WebCore::GraphicsContext::clipOut): Use the appendWebCorePathToCairoContext helper here. (WebCore::GraphicsContext::fillRoundedRect): Ditto and remove an unnecessary beginPath call.
  • platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h: Add a new m_pendingPath member.
4:16 PM Changeset in webkit [64317] by beidson@apple.com
  • 19 edits in trunk/WebKit2

2010-07-29 Brady Eidson <beidson@apple.com>

Reviewed by Sam Weinig.

Make all public facing client setters take const pointers
https://bugs.webkit.org/show_bug.cgi?id=43219

  • UIProcess/API/C/WKContext.cpp: (WKContextSetInjectedBundleClient): (WKContextSetHistoryClient):
  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKPage.cpp: (WKPageSetPageLoaderClient): (WKPageSetPagePolicyClient): (WKPageSetPageUIClient):
  • UIProcess/API/C/WKPage.h:
  • UIProcess/WebContext.cpp: (WebKit::WebContext::initializeInjectedBundleClient): (WebKit::WebContext::initializeHistoryClient):
  • UIProcess/WebContext.h:
  • UIProcess/WebContextInjectedBundleClient.cpp: (WebKit::WebContextInjectedBundleClient::initialize):
  • UIProcess/WebContextInjectedBundleClient.h:
  • UIProcess/WebHistoryClient.cpp: (WebKit::WebHistoryClient::initialize):
  • UIProcess/WebHistoryClient.h:
  • UIProcess/WebLoaderClient.cpp: (WebKit::WebLoaderClient::initialize):
  • UIProcess/WebLoaderClient.h:
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::initializeLoaderClient): (WebKit::WebPageProxy::initializePolicyClient): (WebKit::WebPageProxy::initializeUIClient):
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPolicyClient.cpp: (WebKit::WebPolicyClient::initialize):
  • UIProcess/WebPolicyClient.h:
  • UIProcess/WebUIClient.cpp: (WebKit::WebUIClient::initialize):
  • UIProcess/WebUIClient.h:
3:42 PM Changeset in webkit [64316] by andersca@apple.com
  • 4 edits in trunk/WebKit2

Implement NPN_SetProperty
https://bugs.webkit.org/show_bug.cgi?id=43217

Reviewed by Sam Weinig.

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::setProperty):
Convert the NPVariant to a JSValue and set it on the underlying JSObject.

(WebKit::NPJSObject::NP_SetProperty):
Call NPJSObject::setProperty.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetProperty):
Remove unused parameter name.

(WebKit::NPN_SetProperty):
Call the NPClass::setProperty function.

3:37 PM Changeset in webkit [64315] by mrobinson@webkit.org
  • 2 edits in trunk/WebCore

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Reviewed by Dirk Schulze.

[Cairo] Remove setStrokeStyle workaround for InlineTextBoxes
https://bugs.webkit.org/show_bug.cgi?id=43136

Remove workaround added in https://bugs.webkit.org/show_bug.cgi?id=15659
to fix stroke style for InlineTextBox underlines.

No new tests as this should not change functionality.

  • platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawLineForText): Remove old workaround.
3:36 PM Changeset in webkit [64314] by mrobinson@webkit.org
  • 2 edits in trunk/WebKitTools

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Unreviewed build fix.

Add missing second argument to assert_lint in new style checker tests.

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:
3:30 PM Changeset in webkit [64313] by dumi@chromium.org
  • 26 edits
    6 adds in trunk

JavaScriptCore: Added a yield() function.
https://bugs.webkit.org/show_bug.cgi?id=42843

Reviewed by David Levin.

(WTF::yield):

  • wtf/ThreadingWin.cpp:

(WTF::yield):

  • wtf/gtk/ThreadingGtk.cpp:

(WTF::yield):

  • wtf/qt/ThreadingQt.cpp:

(WTF::yield):

WebCore: Interrupt all DB operations when the worker is terminating.
https://bugs.webkit.org/show_bug.cgi?id=42843

Reviewed by David Levin.

Tests: fast/workers/storage/interrupt-database-sync.html

fast/workers/storage/interrupt-database.html

  • bindings/js/JSCustomVoidCallback.cpp:

(WebCore::JSCustomVoidCallback::~JSCustomVoidCallback): If the
destructor is called on the context thread, delete m_data directly
instead of posting a task to do that. We need to do that to make
sure that all JS objects are destroyed before
WorkerThreadShutdownFinishTask (in WorkerThread.cpp) calls
WorkerContext::clearScript().

  • bindings/scripts/CodeGeneratorJS.pm: Same change as above, for

all auto-generated callbacks.

  • bindings/scripts/test/JS/JSTestCallback.cpp:

(WebCore::JSTestCallback::~JSTestCallback): Updated the
expectations for run-bindings-tests.

  • platform/sql/SQLiteDatabase.cpp: Added the ability to interrupt

all DB operations in progress, unless the database was closed or
is being closed. Unlike sqlite3_interrupt(),
SQLiteDatabase::interrupt() is sticky: once it's called, trying to
run any statement on that database will fail with a
SQLITE_INTERRUPT error code.
(WebCore::SQLiteDatabase::SQLiteDatabase):
(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::interrupt):
(WebCore::SQLiteDatabase::isInterrupted):

  • platform/sql/SQLiteDatabase.h: Added a mutex that can used by

SQLiteStatement to check if the database was interrupted.
(WebCore::SQLiteDatabase::databaseMutex):

  • platform/sql/SQLiteStatement.cpp: Changed prepare() and step()

to check if the database was interrupted, before trying to prepare
or run the statement. The other methods don't need to hold on to
the DB lock while running, because they're fast, so we don't need
to interrupt them.
(WebCore::SQLiteStatement::prepare):
(WebCore::SQLiteStatement::step):

  • storage/AbstractDatabase.cpp: Made SQLiteDatabase::interrupt()

and isInterrupted() visible to WebSQLDatabases classes.
(WebCore::AbstractDatabase::interrupt):
(WebCore::AbstractDatabase::isInterrupted):

  • storage/AbstractDatabase.h:
  • storage/DatabaseTracker.cpp: Added a method to interrupt all

databases in a given context.
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):

  • storage/DatabaseTracker.h:
  • storage/SQLStatement.cpp: Changed the exception/error reported

when a statement is interrupted.
(WebCore::SQLStatement::execute):

  • storage/SQLStatementSync.cpp:

(WebCore::SQLStatementSync::execute):

  • storage/SQLTransaction.cpp: Changed the code to release the

callback objects as soon as they're not needed.
(WebCore::SQLTransaction::checkAndHandleClosedOrInterruptedDatabase):
Changed this method to not schedule the next transaction step when
the database is interrupted.
(WebCore::SQLTransaction::performNextStep):
(WebCore::SQLTransaction::performPendingCallback):
(WebCore::SQLTransaction::deliverTransactionCallback):
(WebCore::SQLTransaction::postflightAndCommit):
(WebCore::SQLTransaction::deliverTransactionErrorCallback):
(WebCore::SQLTransaction::cleanupAfterTransactionErrorCallback):

  • storage/SQLTransaction.h:
  • storage/chromium/DatabaseTrackerChromium.cpp: Added a method to

interrupt all databases in a given context.
(WebCore::DatabaseTracker::interruptAllDatabasesForContext):

  • workers/WorkerThread.cpp:

(WebCore::WorkerThread::stop): Added a call to
DatabaseTracker::interruptAllDatabasesForContext().

LayoutTests: Test that terminating a worker interrupts all DB operations in that worker.
https://bugs.webkit.org/show_bug.cgi?id=42843

Reviewed by David Levin.

  • fast/workers/storage/interrupt-database-expected.txt: Added.
  • fast/workers/storage/interrupt-database-sync-expected.txt: Added.
  • fast/workers/storage/interrupt-database-sync.html: Added.
  • fast/workers/storage/interrupt-database.html: Added.
  • fast/workers/storage/resources/interrupt-database-sync.js: Added.
  • fast/workers/storage/resources/interrupt-database.js: Added.

(runTransaction):

3:21 PM Changeset in webkit [64312] by andersca@apple.com
  • 7 edits in trunk/WebKit2

Implement NPN_Enumerate
https://bugs.webkit.org/show_bug.cgi?id=43215

Reviewed by Sam Weinig.

  • WebProcess/Plugins/JSNPObject.cpp:

(WebKit::npIdentifierFromIdentifier):
Get the UTF-8 string representation instead of the lossy ASCII representation.

(WebKit::JSNPObject::getOwnPropertyNames):
Implement by calling the NPClass::enumerate function.

  • WebProcess/Plugins/JSNPObject.h:
  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::enumerate):
Implement by calling JSObject::getPropertyNames.

(WebKit::NPJSObject::npClass):
(WebKit::NPJSObject::NP_Enumerate):
Call NPJSObject::enumerate.

  • WebProcess/Plugins/NPJSObject.h:
  • WebProcess/Plugins/NPRuntimeUtilities.cpp:

(WebKit::createNPObject):
Fix a comment.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_Enumerate):
Call the NPClass::enumerate function.

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

2010-07-29 Bernhard Bauer <bauerb@chromium.org>

Reviewed by Darin Fisher.

Check if plugins are allowed before creating a Java applet.
https://bugs.webkit.org/show_bug.cgi?id=43196

  • loader/SubframeLoader.cpp: (WebCore::SubframeLoader::createJavaAppletWidget):
3:05 PM Changeset in webkit [64310] by victorw@chromium.org
  • 1 edit
    1 add in trunk/LayoutTests

2010-07-29 Victor Wang <victorw@chromium.org>

Unreviewed. Update chromium expectation for test:
fast/js/regexp-look-ahead-empty.html

  • platform/chromium/fast/js/regexp-look-ahead-empty-expected.txt: Added.
2:35 PM Changeset in webkit [64309] by andersca@apple.com
  • 3 edits in trunk/WebKitTools

check-webkit-style shouldn't complain about NPAPI functions
https://bugs.webkit.org/show_bug.cgi?id=43211

Reviewed by Adam Roben.

Allow underscores in functions that start with NPN_, NPP_ or NP_.

  • Scripts/webkitpy/style/checkers/cpp.py:
  • Scripts/webkitpy/style/checkers/cpp_unittest.py:
2:35 PM Changeset in webkit [64308] by jamesr@google.com
  • 5 edits in trunk/WebCore

2010-07-29 James Robinson <jamesr@chromium.org>

Reviewed by Simon Fraser.

Ask a canvas' rendering context if it is accelerated instead tying it directly to webgl
https://bugs.webkit.org/show_bug.cgi?id=43206

This unifies the logic for whether a canvas is accelerated or not into one place
and makes it easier to expand the logic in the future to, for example, cover some
2d canvases.

Just a refactoring, no change in behavior so no new tests.

  • html/canvas/CanvasRenderingContext.h: (WebCore::CanvasRenderingContext::isAccelerated):
  • html/canvas/WebGLRenderingContext.h: (WebCore::WebGLRenderingContext::isAccelerated):
  • rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::requiresLayer):
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
2:33 PM Changeset in webkit [64307] by commit-queue@webkit.org
  • 3 edits
    3 adds in trunk

2010-07-29 Michael Saboff <msaboff@apple.com>

Reviewed by Oliver Hunt.

Fixed issue where RegExp greedy jit code loops when no input is
consumed. Changed the code to only loop if some input was consumed,
but fall through if we successfully match an alternative that
doesn't consume any input.
https://bugs.webkit.org/show_bug.cgi?id=42664

  • yarr/RegexJIT.cpp: (JSC::Yarr::RegexGenerator::generateParenthesesGreedyNoBacktrack):

2010-07-29 Michael Saboff <msaboff@apple.com>

Reviewed by Oliver Hunt.

Added tests to correspond to the changes made in
JavaScriptCore/yarr/RegexJIT.cpp to fix
https://bugs.webkit.org/show_bug.cgi?id=42664.
Note that some of the new test cases fail due to one or more
unrelated bugs in the pcre interpreter. The expected results
for these tests will need to be updated when the implementation
conforms to the JS standard.

  • fast/js/regexp-look-ahead-empty-expected.txt: Added.
  • fast/js/regexp-look-ahead-empty.html: Added.
  • fast/js/script-tests/regexp-look-ahead-empty.js: Added.
2:05 PM Changeset in webkit [64306] by sullivan@apple.com
  • 2 edits in trunk/WebKit2

<https://bugs.webkit.org/show_bug.cgi?id=43203>
WebBackForwardList::back/ForwardListWithLimit() crashes if passed a limit larger than max int

Reviewed by Sam Weinig.

  • UIProcess/WebBackForwardList.cpp:

(WebKit::WebBackForwardList::backListAsImmutableArrayWithLimit):
Fixed casting so that a large unsigned won't become a negative int.
(WebKit::WebBackForwardList::forwardListAsImmutableArrayWithLimit):
Ditto.

2:00 PM Changeset in webkit [64305] by ojan@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-29 Ojan Vafai <ojan@chromium.org>

Reviewed by Tor Arne Vestbø.

fix for editing/style/remove-underline-from-stylesheet.html on qt after r64303
https://bugs.webkit.org/show_bug.cgi?id=43208

  • platform/qt/editing/style/remove-underline-from-stylesheet-expected.txt:
1:41 PM Changeset in webkit [64304] by andersca@apple.com
  • 11 edits in trunk

Implement NPN_Status
https://bugs.webkit.org/show_bug.cgi?id=43205

Reviewed by Sam Weinig.

WebCore:

  • WebCore.exp.in:

Export Chrome::setStatusText.

WebKit2:

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_Status):
Convert the message char* to a String and call NetscapePlugin::setStatusbarText.

  • WebProcess/Plugins/Netscape/NetscapePlugin.cpp:

(WebKit::NetscapePlugin::setStatusbarText):
Call PluginController::setStatusbarText.

  • WebProcess/Plugins/PluginController.h:

Add setStatusbarText.

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::setStatusbarText):
Call the Chrome member function.

LayoutTests:

  • platform/mac-wk2/Skipped:

Add plugins/access-after-page-destroyed.html since we don't support
layoutTestController.setCanOpenWindows.

Remove plugins/set-status.html.

1:16 PM Changeset in webkit [64303] by ojan@chromium.org
  • 18 edits
    1 delete in trunk/LayoutTests

2010-07-27 Ojan Vafai <ojan@chromium.org>

Reviewed by Adam Barth.

dump-as-markup should have better output
https://bugs.webkit.org/show_bug.cgi?id=43015

-Merge dom2string into dump-as-markup and pull over all dom2string features (e.g. indent).
-#-prefix selection markers

  • editing/deleting/delete-br-in-last-table-cell-expected.txt:
  • editing/execCommand/crash-indenting-list-item-expected.txt:
  • editing/execCommand/crash-on-enter-in-contentEditable-list-expected.txt:
  • editing/execCommand/create-list-from-range-selection-expected.txt:
  • editing/execCommand/hilitecolor-expected.txt:
  • editing/execCommand/indent-pre-expected.txt:
  • editing/execCommand/insert-list-empty-div-expected.txt:
  • editing/selection/dump-as-markup-expected.txt:
  • editing/selection/dump-as-markup.html:
  • editing/selection/home-inside-noneditable-table-expected.txt:
  • editing/style/remove-underline-from-stylesheet-expected.txt:
  • editing/style/style-text-node-without-editable-parent-expected.txt:
  • editing/undo/redo-split-text-node-expected.txt:
  • editing/undo/redo-split-text-with-removal-expected.txt:
  • html5lib/resources/dom2string.js: Removed.
  • html5lib/resources/tests4.dat:
  • html5lib/resources/tests6.dat:
  • html5lib/runner-expected.txt:
  • html5lib/runner.html:
  • html5lib/webkit-resumer.html:
  • resources/dump-as-markup.js: (Markup.notifyDone): (Markup._get): (Markup._namespace): (Markup._dumpCalls.0.Markup._indent): (Markup._toAsciiLowerCase): (Markup._getMarkupForTextNode): (Markup._getSelectionMarker):
12:52 PM Changeset in webkit [64302] by Csaba Osztrogonác
  • 10 edits in trunk/JavaScriptCore

2010-07-29 Gabor Loki <loki@webkit.org>

Reviewed by Gavin Barraclough.

Avoid increasing required alignment of target type warning on ARM
https://bugs.webkit.org/show_bug.cgi?id=38045

The reinterpret_cast<Type1*>([pointer to Type2]) expressions - where
sizeof(Type1) > sizeof(Type2) - cause the following warning on ARM:
increases required alignment of target type warnings.
Casting the type of [pointer to Type2] object to void* bypasses the
warning.

  • assembler/ARMAssembler.cpp: (JSC::ARMAssembler::executableCopy):
  • assembler/AssemblerBuffer.h: (JSC::AssemblerBuffer::putShortUnchecked): (JSC::AssemblerBuffer::putIntUnchecked): (JSC::AssemblerBuffer::putInt64Unchecked):
  • jit/JITStubs.cpp:
  • pcre/pcre_compile.cpp: (jsRegExpCompile):
  • wtf/FastMalloc.cpp: (WTF::PageHeapAllocator::New): (WTF::TCMalloc_Central_FreeList::Populate):
  • wtf/MD5.cpp: (WTF::reverseBytes): (WTF::MD5::addBytes): (WTF::MD5::checksum):
  • wtf/StdLibExtras.h: (reinterpret_cast_ptr):
  • wtf/Vector.h: (WTF::VectorBuffer::inlineBuffer):
  • wtf/qt/StringQt.cpp: (WebCore::String::String):
12:51 PM Changeset in webkit [64301] by victorw@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-29 Victor Wang <victorw@chromium.org>

Reviewed by Jeremy Orlow.

Update png baseline in mac-leopard for test svg/custom/mask-colorspace.html

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

  • platform/mac-leopard/svg/custom/mask-colorspace-expected.png:
12:31 PM Changeset in webkit [64300] by andersca@apple.com
  • 7 edits in trunk/WebKit2

Add JSNPObject::getConstructData
https://bugs.webkit.org/show_bug.cgi?id=43165

Reviewed by Sam Weinig.

  • WebProcess/Plugins/JSNPObject.cpp:

(WebKit::JSNPObject::callMethod):
Add a null check for m_npObject.

(WebKit::JSNPObject::callConstructor):
Call NPClass::construct.

(WebKit::JSNPObject::getConstructData):
Set up the construct data.

(WebKit::JSNPObject::propertyGetter):
convertNPVariantToJSValue now takes a JSGlobalObject as well.

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::invoke):
(WebKit::NPJSObject::invokeDefault):
(WebKit::NPJSObject::construct):
convertNPVariantToJSValue now takes a JSGlobalObject as well.

  • WebProcess/Plugins/NPJSObject.h:

Make isNPJSObject and toNPJSObject public.

  • WebProcess/Plugins/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::convertNPVariantToJSValue):
Convert NPObjects correctly.

(WebKit::NPRuntimeObjectMap::globalObject):
Get the globalObject from the frame.

(WebKit::NPRuntimeObjectMap::globalExec):
Call globalObject.

  • WebProcess/Plugins/NPRuntimeObjectMap.h:
12:09 PM Changeset in webkit [64299] by victorw@chromium.org
  • 20 edits
    5 deletes in trunk

2010-07-29 Victor Wang <victorw@chromium.org>

Unreviewed, rolling out r64270.
http://trac.webkit.org/changeset/64270
https://bugs.webkit.org/show_bug.cgi?id=39589

The patch breaks chromium webkit unittest

  • WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DeviceOrientationClient.h: (WebCore::DeviceOrientationClient::~DeviceOrientationClient):
  • dom/DeviceOrientationController.cpp: (WebCore::DeviceOrientationController::DeviceOrientationController):
  • dom/DeviceOrientationEvent.cpp:
  • platform/mock/DeviceOrientationClientMock.cpp: Removed.
  • platform/mock/DeviceOrientationClientMock.h: Removed.

2010-07-29 Victor Wang <victorw@chromium.org>

Unreviewed, rolling out r64270.
http://trac.webkit.org/changeset/64270
https://bugs.webkit.org/show_bug.cgi?id=39589

The patch breaks chromium webkit unittest

  • fast/dom/DeviceOrientation/basic-operation-expected.txt: Removed.
  • fast/dom/DeviceOrientation/basic-operation.html: Removed.
  • fast/dom/DeviceOrientation/script-tests/basic-operation.js: Removed.
  • platform/gtk/Skipped:

2010-07-29 Victor Wang <victorw@chromium.org>

Unreviewed, rolling out r64270.
http://trac.webkit.org/changeset/64270
https://bugs.webkit.org/show_bug.cgi?id=39589

The patch breaks chromium webkit unittest

  • DumpRenderTree/LayoutTestController.cpp: (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/chromium/LayoutTestController.cpp: (LayoutTestController::LayoutTestController):
  • DumpRenderTree/chromium/LayoutTestController.h:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
  • DumpRenderTree/mac/LayoutTestControllerMac.mm:
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp:
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
  • DumpRenderTree/win/LayoutTestControllerWin.cpp:
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp:
  • Scripts/build-webkit:
11:50 AM Changeset in webkit [64298] by Simon Fraser
  • 4 edits
    2 adds in trunk

2010-07-29 Simon Fraser <Simon Fraser>

Reviewed by Darin Adler.

Resizer control does not paint in otherwise empty compositing layer
https://bugs.webkit.org/show_bug.cgi?id=42306

Ensure that we create backing store for an empty element with resize: both,
in order to render the resizer control.

Test: compositing/overflow/resize-painting.html

  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer): Check for hasOverflowControls() earlier, before any child checks. (WebCore::RenderLayerBacking::hasNonCompositingDescendants): Renamed from hasNonCompositingContent() to clarify its purpose.
11:44 AM Changeset in webkit [64297] by tonikitoo@webkit.org
  • 3 edits in trunk/WebKitTools

2010-07-29 Antonio Gomes <tonikitoo@webkit.org>

Reviewed by Kenneth Christiansen.

[Qt] QtTestBrowser: Move WebPage class methods definitions from main.cpp to webpage.cpp
https://bugs.webkit.org/show_bug.cgi?id=43199

There is no sense in keeping WebPage method definitions in main.cpp once
webpage.cpp already exists.

No behavior change.

  • QtTestBrowser/main.cpp:
  • QtTestBrowser/webpage.cpp: (WebPage::createWindow): (WebPage::createPlugin):
11:41 AM Changeset in webkit [64296] by Simon Fraser
  • 2 edits
    1 add in trunk/WebCore

2010-07-29 Simon Fraser <Simon Fraser>

Reviewed by Darin Adler.

SHOULD NEVER BE REACHED assertion when switching tabs with composited content
https://bugs.webkit.org/show_bug.cgi?id=43167

When the root layer becomes unattached (e.g. when switching tabs), don't return
'false' from paintingGoesToWindow() because that will cause a -setNeedsDispay, which
both allocates wasteful backing store, and causes an assertion when we try to
paint the layer.

Test: manual-tests/compositing/assert-on-tab-switch.html: Added.

  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::paintingGoesToWindow):
11:36 AM Changeset in webkit [64295] by Adam Roben
  • 3 edits in trunk/WebCore

Remove WKCACFLayer::Lanczos

This member is also unused.

Rubber-stamped in advance by John Sullivan.

  • platform/graphics/win/WKCACFLayer.cpp:

(WebCore::toCACFFilterType):
(WebCore::fromCACFFilterType):

  • platform/graphics/win/WKCACFLayer.h:

(WebCore::WKCACFLayer::):

11:14 AM Changeset in webkit [64294] by Adam Roben
  • 2 edits in trunk/WebCore

Remove some unused WKCACFLayer members

Fixes <http://webkit.org/b/43200> WKCACFLayer has some unused members

Reviewed by John Sullivan.

  • platform/graphics/win/WKCACFLayer.h: Removed [set]ClearsContext,

[set]Filters, and [set]SortsSublayers.

11:11 AM Changeset in webkit [64293] by jschuh@chromium.org
  • 3 edits
    2 adds in trunk

2010-07-28 Justin Schuh <jschuh@chromium.org>

Reviewed by Nate Chapin.

Clear PluginData's page pointer on Page destruction
https://bugs.webkit.org/show_bug.cgi?id=43147

Test: plugins/access-after-page-destroyed.html

  • page/Page.cpp: (WebCore::Page::~Page):

2010-07-28 Justin Schuh <jschuh@chromium.org>

Reviewed by Nate Chapin.

Clear PluginData's page pointer on Page destruction
https://bugs.webkit.org/show_bug.cgi?id=43147

  • plugins/access-after-page-destroyed-expected.txt: Added.
  • plugins/access-after-page-destroyed.html: Added.
10:49 AM Changeset in webkit [64292] by jorlow@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

2010-07-29 Jeremy Orlow <jorlow@chromium.org>

Rebaseline 2 tests that are actually a bit distinct from mac (because of fonts).

Not reviewed.

  • platform/chromium-win/svg/custom/use-events-crash-expected.txt: Added.
  • platform/chromium-win/svg/hixie/error/017-expected.txt: Added.
10:48 AM Changeset in webkit [64291] by tonikitoo@webkit.org
  • 3 edits
    1 copy
    1 add in trunk/WebKitTools

2010-07-29 Antonio Gomes <tonikitoo@webkit.org>

Reviewed by Kenneth Christiansen.

[Qt] Factor out LauncherWindow class out of main.cpp (QtTestBrowser)
https://bugs.webkit.org/show_bug.cgi?id=43170

Moving LauncherWindow class out of main.cpp to its own .cpp and .h files:
launcherwindow.{cpp|h}

No behavior change.

Also changed all global static variables (named "gXXX") from main.cpp to
static public variables of the LauncherWindow class.

  • QtTestBrowser/QtTestBrowser.pro:
  • QtTestBrowser/launcherwindow.cpp: Added.
  • QtTestBrowser/launcherwindow.h: Added.
  • QtTestBrowser/main.cpp: (LauncherApplication::handleUserOptions): (main):
10:32 AM Changeset in webkit [64290] by mrobinson@webkit.org
  • 2 edits in trunk/WebKitTools

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Reviewed by Xan Lopez.

Build fix for building against GTK+ 3.x. GSEAL requires that we
access internals of the GdkDragContext via methods. For older versions
of GTK+, define those methods.

  • DumpRenderTree/gtk/EventSender.cpp: (gdk_drag_context_get_selected_action): Added. (gdk_drag_context_get_actions): Added. (dispatchEvent): Use the two new accessor methods.
9:56 AM Changeset in webkit [64289] by Simon Fraser
  • 5 edits
    2 adds in trunk

2010-07-29 Simon Fraser <Simon Fraser>

Reviewed by Pavel Feldman.

Crash when computing pseudo-style of a vanished scrollbar in inspector
https://bugs.webkit.org/show_bug.cgi?id=42561

When a styled overflow:scroll scrollbar gets destroyed, we need to clear out the m_owner pointer,
otherwise the event handling code (which keeps the Scrollbar alive) later causes the scrollbar
to try to use m_owner to get pseudo style.

Test: scrollbars/overflow-custom-scrollbar-crash.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::destroyScrollbar): If this is a custom scrollbar, clear the owning renderer.
  • rendering/RenderScrollbar.cpp: (WebCore::RenderScrollbar::getScrollbarPseudoStyle): Bail if m_owner is 0.
  • rendering/RenderScrollbar.h: (WebCore::RenderScrollbar::clearOwningRenderer): New method.
9:55 AM Changeset in webkit [64288] by kevino@webkit.org
  • 1 edit
    1 add in trunk/WebKit/wx

[wx] Build fix, add file missing from DOM bindings commit.

9:53 AM Changeset in webkit [64287] by Adam Roben
  • 12 edits in trunk

Always say "plugins directory" when referring to a directory containing one or more plugins

Fixes <http://webkit.org/b/43197> WebKit2 often says "plugin
directory" when it means "plugins directory"

Reviewed by John Sullivan.

WebKit2:

  • UIProcess/API/C/WKContext.cpp:

(_WKContextSetAdditionalPluginsDirectory):

  • UIProcess/API/C/WKContextPrivate.h:

Renamed from _WKContextSetAdditionalPluginDirectory.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::setAdditionalPluginsDirectories): Renamed
from setAdditionalPluginDirectories.
(WebKit::PluginInfoStore::loadPluginsIfNecessary): Updated for rename.

  • UIProcess/Plugins/PluginInfoStore.h: Renamed

m_additionalPluginDirectories to m_additionalPluginsDirectories.

  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:

(WebKit::PluginInfoStore::pluginsDirectories):

  • UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:

(WebKit::PluginInfoStore::pluginsDirectories):

  • UIProcess/Plugins/win/PluginInfoStoreWin.cpp:

(WebKit::PluginInfoStore::pluginsDirectories):
Renamed from pluginDirectories.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setAdditionalPluginsDirectory):

  • UIProcess/WebContext.h:

Renamed from setAdditionalPluginDirectory.

WebKitTools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize): Updated for rename.

9:40 AM Changeset in webkit [64286] by Adam Roben
  • 12 edits in trunk

Always say "directory" when referring to a plugin directory

Fixes <http://webkit.org/b/43195> WebKit2 often says "plugin path"
when it means "plugin directory"

Reviewed by John Sullivan.

WebKit2:

  • UIProcess/API/C/WKContext.cpp:

(_WKContextSetAdditionalPluginDirectory):

  • UIProcess/API/C/WKContextPrivate.h:

Renamed from _WKContextSetAdditionalPluginPath.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::setAdditionalPluginDirectories): Renamed
from setAdditionalPluginPaths.
(WebKit::PluginInfoStore::loadPluginsIfNecessary): Updated for rename.

  • UIProcess/Plugins/PluginInfoStore.h: Renamed m_additionalPluginPaths

to m_additionalPluginDirectories.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::setAdditionalPluginDirectory):

  • UIProcess/WebContext.h:

Renamed from setAdditionalPluginPath, and updated for PluginInfoStore
rename.

WebKitTools:

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::initialize): Updated for renames.

  • WebKitTestRunner/TestController.h: Renamed m_testPluginPath to

m_testPluginDirectory.
(WTR::TestController::testPluginDirectory): Renamed from
testPluginPath.

  • WebKitTestRunner/mac/TestControllerMac.mm:

(WTR::TestController::initializeTestPluginDirectory):

  • WebKitTestRunner/win/TestControllerWin.cpp:

(WTR::TestController::initializeTestPluginDirectory):
Renamed from initializeTestPluginPath and updated for rename.

9:35 AM Changeset in webkit [64285] by Csaba Osztrogonác
  • 2 edits in trunk/WebKitTools

Reviewed by Antonio Gomes.

Initialize all members of NPClass struct.
https://bugs.webkit.org/show_bug.cgi?id=43193

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.cpp:
9:29 AM Changeset in webkit [64284] by commit-queue@webkit.org
  • 4 edits in trunk/WebKit/qt

2010-07-29 Alexis Menard <alexis.menard@nokia.com>

Reviewed by Antonio Gomes.

QWebFrame and QWebView documentation fix.

The QWebFrame and the QWebView setHtml() methods are a bit confusing.
There are a few registered bugs in Webkit's bugzilla that source is
in a bad usage of the function.
Additional information were added.

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

  • Api/qgraphicswebview.cpp:
  • Api/qwebframe.cpp:
  • Api/qwebview.cpp:
9:15 AM Changeset in webkit [64283] by jorlow@chromium.org
  • 16 edits
    14 adds
    2 deletes in trunk/LayoutTests

2010-07-29 Jeremy Orlow <jorlow@chromium.org>

Reviewed by Dimitri Glazkov.

[Chromium] Rebaseline 8 tests which are no longer failing
https://bugs.webkit.org/show_bug.cgi?id=43194

http://trac.webkit.org/changeset/64275/ appears to have fixed
a bunch of SVG stuff for Chromium. Rebaseline all of these. (The
baselines that are modified or deleted were all incorrect, btw. I don't
know why they were committed rather than just being "fail"s.)

  • platform/chromium-linux/svg/custom/gradient-cycle-detection-expected.checksum:
  • platform/chromium-linux/svg/custom/gradient-cycle-detection-expected.png:
  • platform/chromium-linux/svg/custom/recursive-clippath-expected.checksum: Added.
  • platform/chromium-linux/svg/custom/recursive-clippath-expected.png: Added.
  • platform/chromium-linux/svg/custom/recursive-filter-expected.checksum: Added.
  • platform/chromium-linux/svg/custom/recursive-filter-expected.png: Added.
  • platform/chromium-linux/svg/custom/recursive-gradient-expected.checksum:
  • platform/chromium-linux/svg/custom/recursive-gradient-expected.png: Added.
  • platform/chromium-linux/svg/custom/recursive-mask-expected.checksum: Added.
  • platform/chromium-linux/svg/custom/recursive-mask-expected.png: Added.
  • platform/chromium-linux/svg/custom/recursive-pattern-expected.checksum:
  • platform/chromium-linux/svg/custom/recursive-pattern-expected.png: Added.
  • platform/chromium-win/svg/custom/gradient-cycle-detection-expected.checksum:
  • platform/chromium-win/svg/custom/gradient-cycle-detection-expected.png:
  • platform/chromium-win/svg/custom/recursive-clippath-expected.checksum: Added.
  • platform/chromium-win/svg/custom/recursive-clippath-expected.png:
  • platform/chromium-win/svg/custom/recursive-clippath-expected.txt: Added.
  • platform/chromium-win/svg/custom/recursive-filter-expected.checksum:
  • platform/chromium-win/svg/custom/recursive-filter-expected.png:
  • platform/chromium-win/svg/custom/recursive-filter-expected.txt: Added.
  • platform/chromium-win/svg/custom/recursive-gradient-expected.checksum:
  • platform/chromium-win/svg/custom/recursive-gradient-expected.png:
  • platform/chromium-win/svg/custom/recursive-gradient-expected.txt: Added.
  • platform/chromium-win/svg/custom/recursive-mask-expected.checksum:
  • platform/chromium-win/svg/custom/recursive-mask-expected.png:
  • platform/chromium-win/svg/custom/recursive-mask-expected.txt: Added.
  • platform/chromium-win/svg/custom/recursive-pattern-expected.checksum:
  • platform/chromium-win/svg/custom/recursive-pattern-expected.png:
  • platform/chromium-win/svg/custom/recursive-pattern-expected.txt: Added.
  • platform/chromium-win/svg/custom/use-events-crash-expected.txt: Removed.
  • platform/chromium-win/svg/hixie/error/017-expected.txt: Removed.
9:13 AM Changeset in webkit [64282] by Csaba Osztrogonác
  • 2 edits in trunk/WebKitTools

2010-07-29 Csaba Osztrogonác <Csaba Osztrogonác>

Reviewed by Antonio Gomes.

Warning fix on platforms where XP_MACOSX is undefined.
https://bugs.webkit.org/show_bug.cgi?id=43192

  • DumpRenderTree/TestNetscapePlugIn/PluginObject.h: Use #if defined(XP_MACOSX) instead of #if XP_MACOSX .
9:07 AM Changeset in webkit [64281] by mrobinson@webkit.org
  • 4 edits in trunk

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Unreviewed build fix.

Fix installation of autogenerated header files.

  • GNUmakefile.am: Fix autogenerated header file installation.

2010-07-29 Martin Robinson <mrobinson@igalia.com>

Unreviewed build fix.

Include a missing header in the source list to fix 'make dist.'

  • GNUmakefile.am: Include missing header.
8:41 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
8:38 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
8:10 AM Changeset in webkit [64280] by Adam Roben
  • 2 edits in trunk/WebKitTools

Give find-included-framework-headers our standard license

  • Scripts/find-included-framework-headers: Used the license from

WebCore/LICENSE-APPLE.

8:10 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
8:09 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
8:06 AM Changeset in webkit [64279] by Nikolas Zimmermann
  • 4 edits in trunk/LayoutTests

2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Update Qt specific baselines for three svg/custom tests.

  • platform/qt/svg/custom/recursive-gradient-expected.txt:
  • platform/qt/svg/custom/recursive-mask-expected.txt:
  • platform/qt/svg/custom/recursive-pattern-expected.txt:
8:02 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
7:43 AM Changeset in webkit [64278] by Adam Roben
  • 6 edits in trunk/WebKit2

Remove PluginInfoStore::mimeTypeFromExtension

WebCore::MIMETypeRegistry already provides a cross-platform interface
for this.

Fixes <http://webkit.org/b/43188>
PluginInfoStore::mimeTypeFromExtension is unnecessary

Reviewed by Nikolas Zimmermann.

  • UIProcess/Plugins/PluginInfoStore.cpp:

(WebKit::PluginInfoStore::findPlugin): Changed to use
MIMETypeRegistry.

  • UIProcess/Plugins/PluginInfoStore.h:
  • UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
  • UIProcess/Plugins/qt/PluginInfoStoreQt.cpp:
  • UIProcess/Plugins/win/PluginInfoStoreWin.cpp:

Removed mimeTypeFromExtension.

7:12 AM Changeset in webkit [64277] by Nikolas Zimmermann
  • 2 edits in trunk/WebCore

2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix release builds, by removing unused variables, that only served for ASSERTs that are no longer needed.

  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::prepareToRenderSVGContent): (WebCore::SVGRenderSupport::pointInClippingArea):
7:08 AM Changeset in webkit [64276] by Nikolas Zimmermann
  • 3 edits in trunk/WebCore

2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix build warning about unreachable code, seen on the windows slave.

  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::selfWillPaint):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::selfWillPaint):
6:50 AM Changeset in webkit [64275] by Nikolas Zimmermann
  • 134 edits in trunk

2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

WebKit shouldn't ignore resource cycles, but break them as Opera does
https://bugs.webkit.org/show_bug.cgi?id=43031

mask images are not updated when render objects' bounds change
https://bugs.webkit.org/show_bug.cgi?id=15124

SVG Gradients do not resize correctly
https://bugs.webkit.org/show_bug.cgi?id=41902

svg/dynamic-updates: SVGMarkerElement markerHeight/Width tests are broken
https://bugs.webkit.org/show_bug.cgi?id=42616

svg/dynamic-updates: SVGMaskElement tests are all broken
https://bugs.webkit.org/show_bug.cgi?id=42617

Don't ignore resources containing cyclic references, but break them, as discussed on SVG WG mailing lists - to be compatible with Opera which already does that.

We used to lookup RenderSVGResourceContainers objects, by extracting the URI reference from the SVGRenderStyle, then utilizing getElementById() to lookup the
node, and access its renderer. Opera ignores such references, if they point to resources that contain cyclic references. Ignoring them would mean we have
to mutate the render style to empty the resource strings. That obviously doesn't work, as it would break expectations (getComputedStyle, etc.).

Introduce a SVGResources class that stores pointers to all resources, that can be applied to a RenderObject (clipper/filter/markers/masker).
Add a SVGResourcesCache class, which is basically a HashMap<RenderObject*, SVGResources*>. Whenever a RenderObject receives style, we extract the URI references
from the SVGRenderStyle, look up the RenderSVGResourceContainer* objects, and store them in a SVGResources* class. Then we execute a cycle detection logic,
which detects cyclic references and breaks them. Breaking them means just nulling the pointer to the resource in the SVGResources object. Those SVGResources
objects are cached, and used throughout the render tree to access resources. This way it's guaranteed that all cyclic references are resolved until layout/paint
phase begins.

Add destroy/styleDidChange/updateFromElement methods to all SVG renderers, in order to keep track of resource/client changes in the SVGResourcesCache.
As side-effect the SVGResourcesCache now knows which RenderObject references which resource, and thus can handle client registration for a RenderSVGResourceContainer.
The RenderSVGResourceContainer now holds a HashSet of RenderObjects, that's always up2date, and not related to the fact wheter a resources has already been used
for painting. The old logic missed to register clients for a resource, when the resource was in an invalid state. Fixing that fixes the svg/dynamic-updates/SVGMaskElement* tests.

Rewrite all svg/custom/recursive-(filter|gradient|mask|pattern).svg tests to contain a reference image how it should be renderered. All 1:1 compatible with Opera now.

  • rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::layout): Grab selfNeedsLayout() before calling RenderBlock::layout(), otherwhise it's always false.
  • rendering/RenderPath.cpp: Don't look up resources manually, use SVGResourcesCache. (WebCore::RenderPath::fillContains): Remove constness, to avoid the need to pass around const RenderObjects* to the SVGResourcesCache. (WebCore::RenderPath::strokeContains): Ditto. (WebCore::RenderPath::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. (WebCore::RenderPath::calculateMarkerBoundsIfNeeded): Remove special client handling for markers, it's all unified now. (WebCore::RenderPath::styleWillChange): Only call setNeedsBoundariesUpdate when handling StyleDifferenceRepaint/Layout.
  • rendering/RenderPath.h:
  • rendering/RenderSVGBlock.cpp: (WebCore::RenderSVGBlock::destroy): Forward to SVGResourcesCache::clientDestroyed. (WebCore::RenderSVGBlock::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. (WebCore::RenderSVGBlock::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  • rendering/RenderSVGBlock.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. (WebCore::RenderSVGContainer::selfWillPaint): Don't look up resources manually, use SVGResourcesCache.
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGGradientStop.cpp: (WebCore::RenderSVGGradientStop::styleDidChange): Rewrite, as invalidateResourceClients() is gone.
  • rendering/RenderSVGHiddenContainer.h: Make layout() protected, as RenderSVGResourceContainer overrides it.
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/. (WebCore::RenderSVGImage::destroy): Forward to SVGResourcesCache::clientDestroyed. (WebCore::RenderSVGImage::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. (WebCore::RenderSVGImage::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement. (WebCore::RenderSVGImage::imageChanged): Don't look up resources manually, use SVGResourcesCache.
  • rendering/RenderSVGImage.h:
  • rendering/RenderSVGInline.cpp: (WebCore::RenderSVGInline::destroy): Forward to SVGResourcesCache::clientDestroyed. (WebCore::RenderSVGInline::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. (WebCore::RenderSVGInline::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  • rendering/RenderSVGInline.h:
  • rendering/RenderSVGModelObject.cpp: (WebCore::RenderSVGModelObject::destroy): Forward to SVGResourcesCache::clientDestroyed. (WebCore::RenderSVGModelObject::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. (WebCore::RenderSVGModelObject::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  • rendering/RenderSVGModelObject.h:
  • rendering/RenderSVGResource.cpp: (WebCore::RenderSVGResource::fillPaintingResource): Remove const from RenderObject parameter. (WebCore::RenderSVGResource::strokePaintingResource): Ditto. (WebCore::RenderSVGResource::markForLayoutAndParentResourceInvalidation): Early exit if we found the first parent resource.
  • rendering/RenderSVGResource.h:
  • rendering/RenderSVGResourceClipper.cpp: (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper): Early exit if m_clipper is empty. (WebCore::RenderSVGResourceClipper::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. (WebCore::RenderSVGResourceClipper::invalidateClient): Ditto. (WebCore::RenderSVGResourceClipper::applyResource): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore. (WebCore::RenderSVGResourceClipper::createClipData): Don't look up resources manually, use SVGResourcesCache. (WebCore::RenderSVGResourceClipper::hitTestClipContent): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  • rendering/RenderSVGResourceClipper.h:
  • rendering/RenderSVGResourceContainer.cpp: (WebCore::svgExtensionsFromNode): (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): Stop registering resource from the constructor, delegate to styleDidChange. (WebCore::RenderSVGResourceContainer::~RenderSVGResourceContainer): Only deregister resource if it was ever registered. (WebCore::RenderSVGResourceContainer::layout): invalidateClients() here, to avoid the need for invalidateResourceClients() in the SVG DOM. Just call setNeedsLayout() from the SVG DOM. (WebCore::RenderSVGResourceContainer::destroy): Forward to SVGResourcesCache::resourceDestroyed. (WebCore::RenderSVGResourceContainer::styleDidChange): Register resource not in the constructor but when it first receives style. (WebCore::RenderSVGResourceContainer::idChanged): Don't duplicate code, use existing methods from SVGResourcesCache. (WebCore::RenderSVGResourceContainer::markAllClientsForInvalidation): Add new helper function, to share code between all resources. (WebCore::RenderSVGResourceContainer::markClientForInvalidation): Ditto. (WebCore::RenderSVGResourceContainer::addClient): SVGResourcesCache now manages the list of clients. It calls addClient() for each RenderObject that uses this resource. (WebCore::RenderSVGResourceContainer::removeClient): SVGResourcesCache now manages the list of clients. (WebCore::RenderSVGResourceContainer::registerResource): New helper function sharing code between idChanged / styleDidChange. (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): Add FIXME that the function is misplaced.
  • rendering/RenderSVGResourceContainer.h: Move most functions to the new RenderSVGResourceContainer.cpp file.
  • rendering/RenderSVGResourceFilter.cpp: (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter): Early exit if m_filter is empty. (WebCore::RenderSVGResourceFilter::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. (WebCore::RenderSVGResourceFilter::invalidateClient): Ditto.
  • rendering/RenderSVGResourceGradient.cpp: (WebCore::RenderSVGResourceGradient::~RenderSVGResourceGradient): Early exit if m_gradient is empty. (WebCore::RenderSVGResourceGradient::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. (WebCore::RenderSVGResourceGradient::invalidateClient): Ditto.
  • rendering/RenderSVGResourceMarker.cpp: (WebCore::RenderSVGResourceMarker::~RenderSVGResourceMarker): Now a no-op, markers are unified within the new client handling concept, no more special code needed. (WebCore::RenderSVGResourceMarker::layout): As RenderSVGResourceMarker skips the RenderSVGResourceContainer::layout() method, we also need to call invalidateClients() here. (WebCore::RenderSVGResourceMarker::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. (WebCore::RenderSVGResourceMarker::invalidateClient): Ditto. (WebCore::RenderSVGResourceMarker::draw): Remove marker specific logic to catch circular references.
  • rendering/RenderSVGResourceMarker.h:
  • rendering/RenderSVGResourceMasker.cpp: (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker): Early exit if m_masker is empty. (WebCore::RenderSVGResourceMasker::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. (WebCore::RenderSVGResourceMasker::invalidateClient): Ditto. (WebCore::RenderSVGResourceMasker::applyResource): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  • rendering/RenderSVGResourceMasker.h:
  • rendering/RenderSVGResourcePattern.cpp: (WebCore::RenderSVGResourcePattern::~RenderSVGResourcePattern): Early exit if m_pattern is empty. (WebCore::RenderSVGResourcePattern::invalidateClients): Use new helper functions to invalidate clients, shared between all resources in RenderSVGResourceContainer. (WebCore::RenderSVGResourcePattern::invalidateClient): Ditto. (WebCore::RenderSVGResourcePattern::createTileImage): Remove containsCyclicReference() check, SVGResourcesCycleSolver breaks cyclic references, resources do not need to take care anymore.
  • rendering/RenderSVGResourcePattern.h:
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::selfWillPaint): Don't look up resources manually, use SVGResourcesCache. (WebCore::RenderSVGRoot::destroy): Forward to SVGResourcesCache::clientDestroyed. (WebCore::RenderSVGRoot::styleDidChange): Forward to SVGResourcesCache::clientStyleChanged. (WebCore::RenderSVGRoot::updateFromElement): Forward to SVGResourcesCache::clientUpdatedFromElement.
  • rendering/RenderSVGRoot.h:
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout): s/RenderSVGResource::invalidateAllResourcesOfRenderer/SVGResourcesCache::clientLayoutChanged/.
  • rendering/RenderSVGText.h:
  • rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::acquirePaintingResource): Add RenderObject* parameter, don't assume the style comes from the InlineTextBox parent renderer. (WebCore::SVGInlineTextBox::prepareGraphicsContextForTextPainting): Pass the parent()->renderer() to acquirePaintingResource. (WebCore::SVGInlineTextBox::paintDecoration): Pass the decoration renderer to acquirePaintingResource. (WebCore::SVGInlineTextBox::paintDecorationWithStyle): Ditto. (WebCore::SVGInlineTextBox::paintText): When a selection pseudo style is used to paint the selection, swap styles in the SVGResourcesCache, to take the right resources when painting.
  • rendering/SVGInlineTextBox.h:
  • rendering/SVGRenderSupport.cpp: (WebCore::SVGRenderSupport::prepareToRenderSVGContent): Don't look up resources manually, use SVGResourcesCache. (WebCore::SVGRenderSupport::finishRenderSVGContent): Ditto. (WebCore::SVGRenderSupport::intersectRepaintRectWithResources): Ditto. (WebCore::SVGRenderSupport::pointInClippingArea): Remove const from RenderObject parameter.
  • rendering/SVGRenderSupport.h:
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::writeStyle): Add two const_cast now that fill/strokePaintingResource take RenderObject* parameters. This was the less intrusive approach, otherwhise more const_casts would be needed. (WebCore::writeResources): Add FIXME that we should dump the resources present in the SVGResourcesCache instead of manually looking them up from the SVGRenderStyle, to avoid dumping cycles.
  • rendering/SVGResourcesCache.cpp: (WebCore::SVGResourcesCache::clientStyleChanged): Use markForLayoutAndParentResourceInvalidation() instead of duplicating code.
  • rendering/SVGResourcesCycleSolver.cpp: (WebCore::setFollowLinkForChainableResource): Implemented stub method.
  • rendering/style/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::diff): Return StyleDifferenceLayout, not Repaint for stroke paint changes, otherwhise the cached boundaries are not correctly updated.
  • svg/SVGClipPathElement.cpp: (WebCore::SVGClipPathElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGClipPathElement::childrenChanged): Ditto.
  • svg/SVGClipPathElement.h: (WebCore::SVGClipPathElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  • svg/SVGElement.cpp: (WebCore::SVGElement::insertedIntoDocument): Only execute buildPendingResource() logic, if needsPendingResourceHandling() returns true. Cleaned up code a bit, to deploy early returns.
  • svg/SVGElement.h: (WebCore::SVGElement::needsPendingResourceHandling): Return true (default). Only needed by SVGTextPathElement/SVGUseElement, and should be removed in future.
  • svg/SVGFilterElement.cpp: (WebCore::SVGFilterElement::SVGFilterElement): Initialize m_followLink=true. (WebCore::SVGFilterElement::setFilterRes): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGFilterElement::svgAttributeChanged): Ditto. (WebCore::SVGFilterElement::childrenChanged): Ditto.
  • svg/SVGFilterElement.h: (WebCore::SVGFilterElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. (WebCore::SVGFilterElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references.
  • svg/SVGFilterPrimitiveStandardAttributes.cpp: (WebCore::SVGFilterPrimitiveStandardAttributes::childrenChanged): Don't use invalidateResourceClients(), it's a no-op as effects don't have a renderer -> use invalidateFilter().
  • svg/SVGFilterPrimitiveStandardAttributes.h: (WebCore::SVGFilterPrimitiveStandardAttributes::invalidateFilter): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer.
  • svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::SVGGradientElement): Initialize m_followLink=true. (WebCore::SVGGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGGradientElement::childrenChanged): Ditto.
  • svg/SVGGradientElement.h: (WebCore::SVGGradientElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. (WebCore::SVGGradientElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references.
  • svg/SVGLinearGradientElement.cpp: (WebCore::SVGLinearGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGLinearGradientElement::collectGradientProperties): Only follow xlink:href links if m_followLinks == true.
  • svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGMarkerElement::childrenChanged): Ditto. (WebCore::SVGMarkerElement::setOrientToAuto): Ditto. (WebCore::SVGMarkerElement::setOrientToAngle): Ditto.
  • svg/SVGMarkerElement.h: (WebCore::SVGMarkerElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGMaskElement::childrenChanged): Ditto.
  • svg/SVGMaskElement.h: (WebCore::SVGMaskElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer.
  • svg/SVGPatternElement.cpp: (WebCore::SVGPatternElement::SVGPatternElement): Initialize m_followLink=true. (WebCore::SVGPatternElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGPatternElement::childrenChanged): Ditto. (WebCore::SVGPatternElement::collectPatternProperties): Only follow xlink:href links if m_followLinks == true.
  • svg/SVGPatternElement.h: (WebCore::SVGPatternElement::needsPendingResourceHandling): Return false, buildPendingResource() logic not needed anymore for resources, handled by RenderSVGResourceContainer. (WebCore::SVGPatternElement::setFollowLink): Used by SVGResourcesCycleSolver, to stop following xlink:href links, if that leads to cyclic references.
  • svg/SVGRadialGradientElement.cpp: (WebCore::SVGRadialGradientElement::svgAttributeChanged): Don't use invalidateResourceClients(), it's not needed anymore, only call setNeedsLayout() on the renderer. (WebCore::SVGRadialGradientElement::collectGradientProperties): Only follow xlink:href links if m_followLinks == true.
  • svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::attach): Call updateFromElement upon attach(), needed by all resource renderers. Defaults to a no-op in RenderObject.h
  • svg/SVGStyledElement.h: Remove invalidateResourceClients(), it's not needed anymore.

2010-07-29 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

WebKit shouldn't ignore resource cycles, but break them as Opera does
https://bugs.webkit.org/show_bug.cgi?id=43031

Rebaseline results now that cycles are broken, instead of ignored.

  • platform/mac/svg/clip-path/clip-path-recursive-call-by-child-expected.txt:
  • platform/mac/svg/clip-path/clip-path-recursive-call-expected.checksum:
  • platform/mac/svg/clip-path/clip-path-recursive-call-expected.png:
  • platform/mac/svg/custom/circular-marker-reference-4-expected.txt:
  • platform/mac/svg/custom/gradient-cycle-detection-expected.checksum:
  • platform/mac/svg/custom/gradient-cycle-detection-expected.png:
  • platform/mac/svg/custom/recursive-clippath-expected.checksum:
  • platform/mac/svg/custom/recursive-clippath-expected.png:
  • platform/mac/svg/custom/recursive-clippath-expected.txt:
  • platform/mac/svg/custom/recursive-filter-expected.checksum:
  • platform/mac/svg/custom/recursive-filter-expected.png:
  • platform/mac/svg/custom/recursive-filter-expected.txt:
  • platform/mac/svg/custom/recursive-gradient-expected.checksum:
  • platform/mac/svg/custom/recursive-gradient-expected.png:
  • platform/mac/svg/custom/recursive-gradient-expected.txt:
  • platform/mac/svg/custom/recursive-mask-expected.checksum:
  • platform/mac/svg/custom/recursive-mask-expected.png:
  • platform/mac/svg/custom/recursive-mask-expected.txt:
  • platform/mac/svg/custom/recursive-pattern-expected.checksum:
  • platform/mac/svg/custom/recursive-pattern-expected.png:
  • platform/mac/svg/custom/recursive-pattern-expected.txt:
  • platform/mac/svg/custom/use-events-crash-expected.txt:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-height-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskContentUnits-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-maskUnits-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-width-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-x-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-dom-y-attr-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-height-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskContentUnits-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-maskUnits-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-width-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-x-prop-expected.png:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.checksum:
  • platform/mac/svg/dynamic-updates/SVGMaskElement-svgdom-y-prop-expected.png:
  • platform/mac/svg/hixie/error/017-expected.txt:
  • svg/clip-path/clip-path-recursive-call-by-child.svg: Rewrite test to match expectations, now that cycles are broken, not ignored. Looks like in Opera.
  • svg/custom/js-late-clipPath-and-object-creation.svg: Don't update from within the onload event, instead use zero-ms timeouts, to test updating reliable. It failed before this patch.
  • svg/custom/js-late-clipPath-creation.svg: Ditto.
  • svg/custom/js-late-gradient-and-object-creation.svg: Ditto.
  • svg/custom/js-late-gradient-creation.svg: Ditto.
  • svg/custom/js-late-marker-and-object-creation.svg: Ditto.
  • svg/custom/js-late-marker-creation.svg: Ditto.
  • svg/custom/js-late-mask-and-object-creation.svg: Ditto.
  • svg/custom/js-late-mask-creation.svg: Ditto.
  • svg/custom/js-late-pattern-and-object-creation.svg: Ditto.
  • svg/custom/js-late-pattern-creation.svg: Ditto.
  • svg/custom/recursive-clippath.svg: Add a reference rendering, side by side to the test, for the ease of comparision. Passes in WebKit + Opera.
  • svg/custom/recursive-filter.svg: Ditto.
  • svg/custom/recursive-gradient.svg: Ditto.
  • svg/custom/recursive-mask.svg: Ditto.
  • svg/custom/recursive-pattern.svg: Ditto.
6:45 AM Changeset in webkit [64274] by Adam Roben
  • 2 edits in trunk/WebKitTools

Speed up find-included-framework-headers

We only do one invocation of find now, no longer pipe to grep, and
replace uniq with sort -u.

Also added a license header.

  • Scripts/find-included-framework-headers:
6:33 AM Changeset in webkit [64273] by commit-queue@webkit.org
  • 2 edits in trunk/WebCore

2010-07-29 Gyuyoung Kim <gyuyoung.kim@samsung.com>

Reviewed by Kenneth Rohde Christiansen.

[EFL] Support to enable WML in WebKit EFL
https://bugs.webkit.org/show_bug.cgi?id=43178

WebKit EFL cannot enable WML. WML files are added to CMakeLists.txt
to enable WML in WebKit EFL.

  • CMakeLists.txt: Support to enable WML.
6:19 AM Changeset in webkit [64272] by tonikitoo@webkit.org
  • 25 edits
    4 adds in trunk

2010-07-21 Grace Kloba <klobag@gmail.com> , Antonio Gomes <tonikitoo@webkit.org>

Reviewed by David Hyatt.

Enhance the hit testing to take a rectangle instead of a point
https://bugs.webkit.org/show_bug.cgi?id=40197

The primary goal of this change is to provide mechanisms for more precise tap
actions by the users on mobile devices.

Patch extends the hit testing system to work considering a rectangular area
as input instead of a point, when applicable. For that, the HitTestResult class
was modified to take a padding (IntSize). The padding specifies a fuzzy range for
accepting input events in pixels coordinates for both vertical and horizontal
orientations. In other words, it tells how much to expand the search rect
around a supposed touch point.

If it non-positive, hit testing will behavior as the current point based hit testing,
and methods are no-op'ed to not regress this common behavior performance-wise.
When positive IntSize is provided, the hit test result will keep record of all
nodes that intersect the built up test area. The logic will continue searching when it
finds a candidate until the rectangle is fully enclosed by the boundaries of a candidate.
The result will be a list of nodes in the z-order they are hit-tested.
Caller will decide how to process them.

In order to expose the functionality, the patch:

  • Adds a nodesFromRect method to the Document class, exposing the funcionality to the DOM. Method returns a NodeList with all nodes that intersect the given hit-tested area.
  • Extends hitTestResultAtPoint method of the EventHandler with an extra 'padding' parameter, defaulting to IntSize(0, 0). The rect-based hit test is performed when a positive padding is passed in.

Test: fast/dom/nodesFromRect-basic.html

  • WebCore.base.exp:
  • dom/Document.cpp: (WebCore::Document::nodesFromRect): This method exposes the rect based funcionality to the DOM. It works similarly to elementFromPoint, however receiving a rectangular area as input instead of a point, and returning a z-index ordered list of nodes (not elements) whose area intersect the hit test rect.
  • dom/Document.h: Ditto.
  • dom/Document.idl: Ditto.
  • page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint): The funcionality is also exposed through this method. Patch adds a additional IntSize parameter to work as the padding area, building up the hit test rect.
  • page/EventHandler.h: Ditto.
  • rendering/HitTestResult.cpp: (WebCore::HitTestResult::HitTestResult): Rect based hit test constructor. Receives a padding IntSize as parameter. It can be (0,0). (WebCore::HitTestResult::operator=): Modified to assign the m_rectBasedTestResult as well. (WebCore::HitTestResult::append): Merge to HitTestResult objects in a way that the list node's of both objects get amended. (WebCore::HitTestResult::addNodeToRectBasedTestResult): Adds a given Node to the list of hit nodes.
  • rendering/HitTestResult.h: (WebCore::HitTestResult::padding): Returns the padding as an IntSize. (WebCore::HitTestResult::isRectBasedTest): Returns if the HitTestResult is rect based or not. (WebCore::HitTestResult::.rectBasedTestResult): Returns the list nodes hit. (WebCore::HitTestResult::rectFromPoint): Returns the hit test rect given the hit test point and padding.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::hitTestLayer): (WebCore::RenderLayer::hitTestList): (WebCore::RenderLayer::hitTestChildLayerColumns):
  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::nodeAtPoint): Method is modified to support rect based hit test extension. Now it not just checks if the boundary of the node being hit-tested contains a hit test point, but instead it checks if the boundary of the node intersects a hit test rect. It is implemented so that the common case (point based hit test) works as previously.
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::nodeAtPoint): Ditto.
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::nodeAtPoint): Ditto.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint): Ditto. (WebCore::RenderBlock::hitTestColumns): Ditto.
  • rendering/RenderBox.cpp: (WebCore::RenderBox::nodeAtPoint): Ditto.
  • rendering/RenderImage.cpp: (WebCore::RenderImage::nodeAtPoint): Ditto.
  • rendering/RenderLineBoxList.cpp: (WebCore::RenderLineBoxList::hitTest):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::nodeAtPoint): Ditto.
  • rendering/RenderTable.cpp: (WebCore::RenderTable::nodeAtPoint): Ditto.
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::nodeAtPoint): Ditto.
  • rendering/RenderWidget.cpp: (WebCore::RenderWidget::nodeAtPoint): Ditto.
6:16 AM QtWebKitTriageRoster edited by Simon Hausmann
(diff)
5:00 AM Changeset in webkit [64271] by andreip@google.com
  • 2 edits in trunk/WebKit/chromium

2010-07-29 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] WebDOMStringList ctor is not exported and causes link errors for the multi-dll chromium build
https://bugs.webkit.org/show_bug.cgi?id=43186

Add WEBKIT_API to WebDOMStringList default ctor.

  • public/WebDOMStringList.h:
4:52 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:46 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:43 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:41 AM Changeset in webkit [64270] by steveblock@google.com
  • 20 edits
    2 copies
    3 adds in trunk

2010-07-29 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Add LayoutTestController methods to test DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39589

  • fast/dom/DeviceOrientation/basic-operation-expected.txt: Added.
  • fast/dom/DeviceOrientation/basic-operation.html: Added.
  • fast/dom/DeviceOrientation/script-tests/basic-operation.js: Added.
  • platform/gtk/Skipped:

2010-07-29 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Add LayoutTestController methods to test DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39589

This patch does not hook up the new LayoutTestController method to WebKit
for any platform. This will be done in later patches.
https://bugs.webkit.org/show_bug.cgi?id=43181 tracks this for Mac.

Test: fast/dom/DeviceOrientation/basic-operation.html

  • WebCore/WebCore.exp.in:
  • WebCore.xcodeproj/project.pbxproj:
  • dom/DeviceOrientationClient.h: (WebCore::DeviceOrientationClient::~DeviceOrientationClient):
  • dom/DeviceOrientationController.cpp: (WebCore::DeviceOrientationController::DeviceOrientationController):
  • dom/DeviceOrientationEvent.cpp:
  • platform/mock/DeviceOrientationClientMock.cpp: Added. (WebCore::DeviceOrientationClientMock::DeviceOrientationClientMock): (WebCore::DeviceOrientationClientMock::setController): (WebCore::DeviceOrientationClientMock::startUpdating): (WebCore::DeviceOrientationClientMock::stopUpdating): (WebCore::DeviceOrientationClientMock::setOrientation): (WebCore::DeviceOrientationClientMock::timerFired):
  • platform/mock/DeviceOrientationClientMock.h: Added. (WebCore::DeviceOrientationClientMock::lastOrientation):

2010-07-29 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Add LayoutTestController methods to test DeviceOrientation
https://bugs.webkit.org/show_bug.cgi?id=39589

  • DumpRenderTree/LayoutTestController.cpp: (setMockDeviceOrientationCallback): (LayoutTestController::staticFunctions):
  • DumpRenderTree/LayoutTestController.h:
  • DumpRenderTree/chromium/LayoutTestController.cpp:
  • DumpRenderTree/chromium/LayoutTestController.h:
  • DumpRenderTree/gtk/LayoutTestControllerGtk.cpp: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/qt/LayoutTestControllerQt.cpp: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/qt/LayoutTestControllerQt.h:
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setMockDeviceOrientation):
  • DumpRenderTree/wx/LayoutTestControllerWx.cpp: (LayoutTestController::setMockDeviceOrientation):
  • Scripts/build-webkit:
4:39 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:39 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:31 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:27 AM Changeset in webkit [64269] by commit-queue@webkit.org
  • 8 edits in trunk

2010-07-29 Satish Sampath <satish@chromium.org>

Reviewed by Steve Block.

Runtime feature switch for speech input.
https://bugs.webkit.org/show_bug.cgi?id=43146

Add a runtime feature switch that decides whether speech input attributes are available or not.
Defaults to true.

  • bindings/generic/RuntimeEnabledFeatures.cpp:
  • bindings/generic/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::setSpeechInputEnabled): (WebCore::RuntimeEnabledFeatures::speechInputEnabled): (WebCore::RuntimeEnabledFeatures::speechEnabled):
  • html/HTMLInputElement.idl:

2010-07-29 Satish Sampath <satish@chromium.org>

Reviewed by Steve Block.

Runtime feature switch for speech input
https://bugs.webkit.org/show_bug.cgi?id=43146

Add a runtime feature switch that decides whether speech input attributes are available or not.
Defaults to true.

  • public/WebRuntimeFeatures.h:
  • src/SpeechInputClientImpl.cpp: (WebKit::SpeechInputClientImpl::SpeechInputClientImpl):
  • src/WebRuntimeFeatures.cpp: (WebKit::WebRuntimeFeatures::enableSpeechInput): (WebKit::WebRuntimeFeatures::isSpeechInputEnabled):
4:15 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:10 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
4:09 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
3:27 AM Changeset in webkit [64268] by jorlow@chromium.org
  • 1 edit
    2 adds in trunk/LayoutTests

2010-07-29 Jeremy Orlow <jorlow@chromium.org>

http://trac.webkit.org/changeset/64266 and its parents missed one
baseline. Add it.

Not reviewed.

  • platform/chromium-win/svg/custom/convolution-crash-expected.checksum: Added.
  • platform/chromium-win/svg/custom/convolution-crash-expected.png: Added.
2:05 AM Changeset in webkit [64267] by apavlov@chromium.org
  • 6 edits in trunk

2010-07-27 Alexander Pavlov <apavlov@chromium.org>

Reviewed by Pavel Feldman.

Inspector should display CDATA section data
https://bugs.webkit.org/show_bug.cgi?id=16259

WebCore:

  • inspector/InspectorDOMAgent.cpp: (WebCore::InspectorDOMAgent::buildObjectForNode):
  • inspector/front-end/ElementsTreeOutline.js: ():

LayoutTests:

  • inspector/elements-panel-xhtml-structure-expected.txt:
  • inspector/elements-panel-xhtml-structure.xhtml:
1:22 AM Changeset in webkit [64266] by commit-queue@webkit.org
  • 2 edits in trunk/LayoutTests

2010-07-29 Alex Nicolaou <anicolao@chromium.org>

Reviewed by Dirk Schulze.

[chromium] new svg failures after r63485
https://bugs.webkit.org/show_bug.cgi?id=42428

Now that my fix for https://bugs.webkit.org/show_bug.cgi?id=43102
is checked in, 42428 is fixed also as well as a bunch of other tests
that were previously failing because of the wrong colourspace for the
SVG mask. This change resets expectations to pass for the appropriate
tests.

  • platform/chromium/test_expectations.txt:

Jul 28, 2010:

11:27 PM WinCE edited by paroga@paroga.com
(diff)
10:52 PM Changeset in webkit [64265] by commit-queue@webkit.org
  • 5 edits in trunk

2010-07-28 Kavita Kanetkar <kkanetkar@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: Enable UI for chromium's appcache inspection.
https://bugs.webkit.org/show_bug.cgi?id=43098

  • inspector/front-end/Settings.js: Removed appCacheEnabled.
  • inspector/front-end/StoragePanel.js: Removed appCacheEnabled condition. (WebInspector.StoragePanel): (WebInspector.StoragePanel.prototype.reset): (WebInspector.StoragePanel.prototype.addApplicationCache):

2010-07-28 Kavita Kanetkar <kkanetkar@chromium.org>

Reviewed by Pavel Feldman.

Web Inspector: Enable UI for chromium's appcache inspection.
https://bugs.webkit.org/show_bug.cgi?id=43098

9:02 PM Changeset in webkit [64264] by victorw@chromium.org
  • 1 edit
    2 adds
    32 deletes in trunk/LayoutTests

2010-07-28 Victor Wang <victorw@chromium.org>

Unreviewed. Update chromium test expectations for svg test.
After Alex Nicolaou's patch http://trac.webkit.org/changeset/64254,
Chromium should have same results with platform/mac or platform/mac-leopard.
Also rebaselin leopard result for the new test added by r64254.

  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-composite-02-b-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-conv-01-f-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-diffuse-01-f-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-displace-01-f-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-example-01-b-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-example-01-b-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-image-01-b-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-image-01-b-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-light-01-f-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-light-01-f-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-light-04-f-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-light-04-f-expected.png: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.checksum: Removed.
  • platform/chromium-mac/svg/W3C-SVG-1.1/filters-specular-01-f-expected.png: Removed.
  • platform/chromium-mac/svg/custom/feDisplacementMap-01-expected.checksum: Removed.
  • platform/chromium-mac/svg/custom/feDisplacementMap-01-expected.png: Removed.
  • platform/chromium-mac/svg/custom/image-with-transform-clip-filter-expected.checksum: Removed.
  • platform/chromium-mac/svg/custom/image-with-transform-clip-filter-expected.png: Removed.
  • platform/chromium-mac/svg/custom/recursive-filter-expected.checksum: Removed.
  • platform/chromium-mac/svg/custom/recursive-filter-expected.png: Removed.
  • platform/chromium-mac/svg/filters/feLighting-crash-expected.checksum: Removed.
  • platform/chromium-mac/svg/filters/feLighting-crash-expected.png: Removed.
  • platform/chromium-mac/svg/filters/filter-on-tspan-expected.checksum: Removed.
  • platform/chromium-mac/svg/filters/filter-on-tspan-expected.png: Removed.
  • platform/chromium-mac/svg/filters/filter-width-update-expected.checksum: Removed.
  • platform/chromium-mac/svg/filters/filteredImage-expected.checksum: Removed.
  • platform/chromium-mac/svg/filters/parent-children-with-same-filter-expected.checksum: Removed.
  • platform/chromium-mac/svg/filters/parent-children-with-same-filter-expected.png: Removed.
  • platform/mac-leopard/svg/custom/mask-colorspace-expected.checksum: Added.
  • platform/mac-leopard/svg/custom/mask-colorspace-expected.png: Added.
8:36 PM Changeset in webkit [64263] by commit-queue@webkit.org
  • 3 edits in trunk/WebKitTools

2010-07-28 Kenichi Ishibashi <bashi@google.com>

Reviewed by Shinichiro Hamaji.

Fixed <https://bugs.webkit.org/show_bug.cgi?id=33814>
check-webkit-style gives false positives in single-line functions.

  • Scripts/webkitpy/style/checkers/cpp.py:
  • Scripts/webkitpy/style/checkers/cpp_unittest.py:
8:24 PM Changeset in webkit [64262] by commit-queue@webkit.org
  • 2 edits in trunk/WebCore

2010-07-28 Bryan Gislason <bgislason@rim.com>

Reviewed by Nate Chapin.

Minor compile errors in loadMediaPlayerProxyPlugin
https://bugs.webkit.org/show_bug.cgi?id=43141

  • WebCore/loader/SubframeLoader.cpp:
8:22 PM Changeset in webkit [64261] by barraclough@apple.com
  • 2 edits in trunk/JavaScriptCore

Bug 43162 - Add support for MADV_FREE to PageAllocation.

Reviewed by Darin Adler.

  • wtf/PageAllocation.cpp:

(WTF::PageAllocation::commit):
(WTF::PageAllocation::decommit):

8:12 PM Changeset in webkit [64260] by commit-queue@webkit.org
  • 5 edits in trunk

2010-07-28 Dominic Mazzoni <dmazzoni@google.com>

Reviewed by Dimitri Glazkov.

Add a missing dependency.
https://bugs.webkit.org/show_bug.cgi?id=43044

  • css/CSSPrimitiveValueMappings.h:

2010-07-28 Dominic Mazzoni <dmazzoni@google.com>

Reviewed by Dimitri Glazkov.

Add access to the computed style display to WebAccessibilityObject.
https://bugs.webkit.org/show_bug.cgi?id=43044

  • public/WebAccessibilityObject.h:
  • src/WebAccessibilityObject.cpp: (WebKit::WebAccessibilityObject::hasComputedStyle): (WebKit::WebAccessibilityObject::computedStyleDisplay):
8:08 PM Changeset in webkit [64259] by dbates@webkit.org
  • 6 edits in trunk/LayoutTests

2010-07-28 Daniel Bates <dbates@rim.com>

Reviewed by Darin Adler.

Output more descriptive PASS messages for list layout tests
https://bugs.webkit.org/show_bug.cgi?id=42938

Output a more descriptive PASS message so that it is clear
what we are testing in the test cases: fast/lists/w3-css3-list-styles-alphabetic.html
and fast/lists/w3-css3-list-styles-numeric.html.

Currently, we only output "PASS" if the list marker equals
its list item text for every <li> in the list. Instead, we
should output a PASS message for each <li> so that we can
ensure that we are comparing the list marker and list
item text.

  • fast/lists/resources/dump-list.js: Removed printPassedIfEmptyString() instead merged pass message into testListItemMarkerEqualsListItemText(). (filterListsWithReplacement): Removed support for a post filter function as this is not needed anymore. (testListItemMarkerEquals): Added. (testListItemMarkerEqualsListItemText): Added.
  • fast/lists/w3-css3-list-styles-alphabetic-expected.txt: Rebased result.
  • fast/lists/w3-css3-list-styles-alphabetic.html: Updated to call testListItemMarkerEqualsListItemText().
  • fast/lists/w3-css3-list-styles-numeric-expected.txt: Rebased result.
  • fast/lists/w3-css3-list-styles-numeric.html: Modified JavaScript to call testListItemMarkerEquals() so that we can remove the redundant code.
8:01 PM Changeset in webkit [64258] by weinig@apple.com
  • 3 edits in trunk/WebKit2

Another Windows build fix.

  • UIProcess/API/C/WKBase.h:
  • win/WebKit2Generated.make:
7:52 PM Changeset in webkit [64257] by crogers@google.com
  • 1 edit in branches/audio/WebCore/WebCore.xcodeproj/project.pbxproj

fix audio branch build

7:18 PM Changeset in webkit [64256] by commit-queue@webkit.org
  • 2 edits in trunk/WebKit/chromium

2010-07-28 Hans Wennborg <hans@chromium.org>

Reviewed by Jeremy Orlow.

Set ENABLE_DEVICE_ORIENTATION=1 in features.gypi for chromium
https://bugs.webkit.org/show_bug.cgi?id=43122

Enable the compile-time switch for device orientation.
The switch was already enabled in features_override.gypi in the Chromium
repository (in revision 53317), and should be set here as well.

The feature is being implemented behind a run-time flag which
defaults to off in Chromium.

  • features.gypi: Set ENABLE_DEVICE_ORIENTATION=1.
7:03 PM Changeset in webkit [64255] by weinig@apple.com
  • 3 edits in trunk/WebKit2

Fix builds.

  • UIProcess/API/C/WKAPICast.h:

(WebKit::ProxyingRefPtr::operator APIType):
(toURLRef):
(toCopiedRef):
(toCopiedURLRef):

  • UIProcess/win/WebView.h:

(WebKit::WebView::type):

6:52 PM Changeset in webkit [64254] by victorw@chromium.org
  • 5 edits in trunk

2010-07-28 Alex Nicolaou <anicolao@chromium.org>

Reviewed by Ojan Vafai.

Set incorrect but close expectations for mask-colorspace.svg on mac
https://bugs.webkit.org/show_bug.cgi?id=43102

Blocks:

[chromium] r63450 caused some svg mask tests to fail pixel tests
https://bugs.webkit.org/show_bug.cgi?id=42403

ImageBufferCG.cpp uses CoreGraphics to do the transform of SVG masks
into LinearRGB, but only for MAC which means not for CHROMIUM, so I
have changed the #if to account for both platforms. I am assuming this
isn't in for windows because it's missing in CG itself, but I didn't
verify that.

  • platform/graphics/cg/ImageBufferCG.cpp: (WebCore::ImageBuffer::ImageBuffer):

2010-07-28 Alex Nicolaou <anicolao@chromium.org>

Reviewed by Ojan Vafai.

Set incorrect but close expectations for mask-colorspace.svg on mac
https://bugs.webkit.org/show_bug.cgi?id=43102

Blocks:

[chromium] r63450 caused some svg mask tests to fail pixel tests
https://bugs.webkit.org/show_bug.cgi?id=42403

On my Mac, after my best efforts, the mask colorspace doesn't
seem to come out right. Though the pixel values in the test
rectangle should be 111, they come out to 104, and ultimately
it is because the pixel values coming out of ImageBufferCG are
not linearized properly. Checking in this expected result because
visually the colours are close enough and I want to catch other
regressions, but if this starts to fail because the first image
has color 111,111,111 in the rectange and 76,76,76 or 78,78,78 in
the circle, the actual problem will have been corrected. (111 and
78 are the correct values).

Also removed fail expectations for those tests that are now
passing on my Mac.

  • platform/chromium/test_expectations.txt:
  • platform/mac/svg/custom/mask-colorspace-expected.checksum:
  • platform/mac/svg/custom/mask-colorspace-expected.png:
6:41 PM Changeset in webkit [64253] by weinig@apple.com
  • 52 edits
    3 adds in trunk/WebKit2

Patch for https://bugs.webkit.org/show_bug.cgi?id=43163
Add a CF-style base type (WKTypeRef) as a base for polymorphic functions.

Reviewed by Darin Adler.

  • Add first polymorphic function, WKGetTypeID.
  • Add functions to each WK type to get their respective TypeIDs.
  • Adds WebURL to complement WebString.
  • Shared/APIObject.h:

(WebKit::APIObject::):
(WebKit::APIObject::~APIObject):

  • Shared/ImmutableArray.h:

(WebKit::ImmutableArray::type):

  • Shared/WebString.h:

(WebKit::WebString::type):

  • Shared/WebURL.h: Added.

(WebKit::WebURL::create):
(WebKit::WebURL::type):
(WebKit::WebURL::isNull):
(WebKit::WebURL::isEmpty):
(WebKit::WebURL::string):
(WebKit::WebURL::WebURL):

  • UIProcess/API/C/WKAPICast.h:

(WebKit::ProxyingRefPtr::ProxyingRefPtr):
(WebKit::ProxyingRefPtr::operator APIType):
(toRef):
(toURLRef):
(toCopiedURLRef):

  • UIProcess/API/C/WKArray.cpp:

(WKArrayGetTypeID):

  • UIProcess/API/C/WKArray.h:
  • UIProcess/API/C/WKBackForwardList.cpp:

(WKBackForwardListGetTypeID):

  • UIProcess/API/C/WKBackForwardList.h:
  • UIProcess/API/C/WKBackForwardListItem.cpp:

(WKBackForwardListItemGetTypeID):

  • UIProcess/API/C/WKBackForwardListItem.h:
  • UIProcess/API/C/WKBase.h:
  • UIProcess/API/C/WKContext.cpp:

(WKContextGetTypeID):

  • UIProcess/API/C/WKContext.h:
  • UIProcess/API/C/WKFrame.cpp:

(WKFrameGetTypeID):

  • UIProcess/API/C/WKFrame.h:
  • UIProcess/API/C/WKFramePolicyListener.cpp:

(WKFramePolicyListenerGetTypeID):

  • UIProcess/API/C/WKFramePolicyListener.h:
  • UIProcess/API/C/WKNavigationData.cpp:

(WKNavigationDataGetTypeID):

  • UIProcess/API/C/WKNavigationData.h:
  • UIProcess/API/C/WKPage.cpp:

(WKPageGetTypeID):

  • UIProcess/API/C/WKPage.h:
  • UIProcess/API/C/WKPageNamespace.cpp:

(WKPageNamespaceGetTypeID):

  • UIProcess/API/C/WKPageNamespace.h:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesGetTypeID):

  • UIProcess/API/C/WKPreferences.h:
  • UIProcess/API/C/WKString.cpp:

(WKStringGetTypeID):

  • UIProcess/API/C/WKString.h:
  • UIProcess/API/C/WKType.cpp: Added.

(WKGetTypeID):

  • UIProcess/API/C/WKType.h: Added.
  • UIProcess/API/C/WKURL.cpp:

(WKURLGetTypeID):

  • UIProcess/API/C/WKURL.h:
  • UIProcess/API/win/WKView.cpp:

(WKViewGetTypeID):

  • UIProcess/API/win/WKView.h:
  • UIProcess/WebBackForwardList.h:

(WebKit::WebBackForwardList::type):

  • UIProcess/WebBackForwardListItem.h:

(WebKit::WebBackForwardListItem::type):

  • UIProcess/WebContext.h:

(WebKit::WebContext::type):

  • UIProcess/WebFramePolicyListenerProxy.h:

(WebKit::WebFramePolicyListenerProxy::type):

  • UIProcess/WebFrameProxy.h:

(WebKit::WebFrameProxy::type):

  • UIProcess/WebNavigationData.h:

(WebKit::WebNavigationData::type):

  • UIProcess/WebPageNamespace.h:

(WebKit::WebPageNamespace::type):

  • UIProcess/WebPageProxy.h:

(WebKit::WebPageProxy::type):

  • UIProcess/WebPreferences.h:

(WebKit::WebPreferences::type):

  • WebKit2.xcodeproj/project.pbxproj:
  • WebProcess/InjectedBundle/API/c/WKBundle.cpp:

(WKBundleGetTypeID):

  • WebProcess/InjectedBundle/API/c/WKBundle.h:
  • WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:

(WKBundleFrameGetTypeID):

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

(WKBundlePageGetTypeID):
(WKBundlePageSetEditorClient):
(WKBundlePageSetLoaderClient):
(WKBundlePageSetUIClient):

  • WebProcess/InjectedBundle/API/c/WKBundlePage.h:
  • WebProcess/WebPage/WebFrame.h:

(WebKit::WebFrame::type):

  • WebProcess/WebPage/WebPage.h:

(WebKit::WebPage::type):

  • win/WebKit2.vcproj:
6:31 PM Changeset in webkit [64252] by tkent@chromium.org
  • 2 edits
    5 adds in trunk/LayoutTests

2010-07-28 Kent Tamura <tkent@chromium.org>

Unreviewed, test expectation update.

  • Rebaseline input-appearance-spinbutton-disabled-readonly.html for Chromium-mac and Chromium-linux.
  • Remove input-number-events.html. It passes on Chromium now.
  • platform/chromium-linux/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.checksum: Added.
  • platform/chromium-linux/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png: Added.
  • platform/chromium-linux/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.txt: Added.
  • platform/chromium-mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.checksum: Added.
  • platform/chromium-mac/fast/forms/input-appearance-spinbutton-disabled-readonly-expected.png: Added.
  • platform/chromium/test_expectations.txt:
6:27 PM Changeset in webkit [64251] by Darin Adler
  • 11 edits in trunk

WebKitTestRunner needs to support layoutTestController.execCommand
<https://bugs.webkit.org/show_bug.cgi?id=42538>

Reviewed by Sam Weinig.

WebKitTestRunner needs layoutTestController.isCommandEnabled
<https://bugs.webkit.org/show_bug.cgi?id=42671>

WebKit2:

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

(WKBundlePageExecuteEditingCommand): Added.
(WKBundlePageIsEditingCommandEnabled): Added.

  • WebProcess/InjectedBundle/API/c/WKBundlePagePrivate.h: Ditto.
  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::executeEditingCommand): Added.
(WebKit::WebPage::isEditingCommandEnabled): Added.

  • WebProcess/WebPage/WebPage.h: Ditto.

WebKitTools:

  • WebKitTestRunner/InjectedBundle/Bindings/LayoutTestController.idl:

Added execCommand and isCommandEnabled.

  • WebKitTestRunner/InjectedBundle/LayoutTestController.cpp:

(WTR::LayoutTestController::execCommand): Added.
(WTR::LayoutTestController::isCommandEnabled): Added.

  • WebKitTestRunner/InjectedBundle/LayoutTestController.h: Ditto.

LayoutTests:

  • platform/mac-wk2/Skipped: Don't skip the now-functioning tests.
5:56 PM Changeset in webkit [64250] by tkent@chromium.org
  • 2 edits in trunk/WebCore

[Chromium] Improve read-only arrow button appearance
https://bugs.webkit.org/show_bug.cgi?id=43108

Reviewed by Darin Fisher.

No new tests. This is a fix for fast/forms/
input-appearance-spinbutton-disabled-readonly.html

  • platform/chromium/PlatformThemeChromiumGtk.cpp:

(WebCore::PlatformThemeChromiumGtk::paintArrowButton):
If the button has ReadOnlyState, paint the button as same as it is disabled.

5:54 PM Changeset in webkit [64249] by tkent@chromium.org
  • 3 edits
    1 add in trunk

2010-07-28 Kent Tamura <tkent@chromium.org>

Reviewed by Dimitri Glazkov.

[DRT/Chromium] Introduce drt_expectations.txt for NRWT
https://bugs.webkit.org/show_bug.cgi?id=43123

  • platform/chromium/drt_expectations.txt: Added.

2010-07-28 Kent Tamura <tkent@chromium.org>

Reviewed by Dimitri Glazkov.

[DRT/Chromium] Introduce drt_expectations.txt for NRWT
https://bugs.webkit.org/show_bug.cgi?id=43123

Introduce LayoutTests/platform/chromium/drt_expectations.txt,
which overrides test expectations only for DumpRenderTree, in
order to manage what problems are investigated.
This change will be reverted when we switch to DRT completely.

  • Scripts/webkitpy/layout_tests/port/chromium.py: Add drt_expectations.txt content to the result of test_expectations_overrides() if --use-drt is specified.
5:51 PM Changeset in webkit [64248] by andersca@apple.com
  • 2 edits in trunk/WebKit2

Fix 64-bit build.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue):

5:41 PM Changeset in webkit [64247] by beidson@apple.com
  • 21 edits in trunk

2010-07-28 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

First pass at visited link support for WK2
https://bugs.webkit.org/show_bug.cgi?id=43157

  • MiniBrowser/mac/AppDelegate.m: (didNavigateWithNavigationData): (didPerformClientRedirect): (didPerformServerRedirect): (didUpdateHistoryTitle): (populateVisitedLinks): Added for the new version of the HistoryClient. (-[BrowserAppDelegate init]): Set the HistoryClient right after creating the context(s)


  • MiniBrowser/mac/BrowserWindowController.m: (-[BrowserWindowController awakeFromNib]):

2010-07-28 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler.

First pass at visited link support for WK2
https://bugs.webkit.org/show_bug.cgi?id=43157

  • Shared/CoreIPCSupport/WebPageProxyMessageKinds.h: (WebPageProxyMessage::):
  • Shared/CoreIPCSupport/WebProcessMessageKinds.h: (WebProcessMessage::):
  • Shared/CoreIPCSupport/WebProcessProxyMessageKinds.h: (WebProcessProxyMessage::):

Move HistoryClient support from the page...:

  • UIProcess/API/C/WKPage.cpp:
  • UIProcess/API/C/WKPage.h:


...to the Context

  • UIProcess/API/C/WKContext.cpp: (WKContextSetHistoryClient):
  • UIProcess/API/C/WKContext.h:
  • UIProcess/WebContext.cpp: (WebKit::WebContext::initializeHistoryClient): (WebKit::WebContext::ensureWebProcess): When a new WebProcess is created, set its "should track visited links" mode. (WebKit::WebContext::didNavigateWithNavigationData): (WebKit::WebContext::didPerformClientRedirect): (WebKit::WebContext::didPerformServerRedirect): (WebKit::WebContext::didUpdateHistoryTitle): (WebKit::WebContext::populateVisitedLinks):
  • UIProcess/WebContext.h: (WebKit::WebContext::hasValidProcess):
  • UIProcess/WebHistoryClient.cpp: (WebKit::WebHistoryClient::initialize): (WebKit::WebHistoryClient::didNavigateWithNavigationData): (WebKit::WebHistoryClient::didPerformClientRedirect): (WebKit::WebHistoryClient::didPerformServerRedirect): (WebKit::WebHistoryClient::didUpdateHistoryTitle): (WebKit::WebHistoryClient::populateVisitedLinks):
  • UIProcess/WebHistoryClient.h: (WebKit::WebHistoryClient::shouldTrackVisitedLinks):
  • UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::didReceiveMessage):
  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessProxy.cpp: (WebKit::WebProcessProxy::didReceiveMessage): (WebKit::WebProcessProxy::didReceiveSyncMessage):
  • WebProcess/WebCoreSupport/WebChromeClient.cpp: (WebKit::WebChromeClient::populateVisitedLinks):
  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp: (WebKit::WebFrameLoaderClient::updateGlobalHistory): (WebKit::WebFrameLoaderClient::updateGlobalHistoryRedirectLinks): (WebKit::WebFrameLoaderClient::setTitle):
  • WebProcess/WebProcess.cpp: (WebKit::WebProcess::didReceiveMessage):
5:26 PM WebKitGtkLayoutTests edited by mrobinson@webkit.org
(diff)
5:25 PM WebKitGtkLayoutTests edited by mrobinson@webkit.org
Fix depth argument to Xvfb (16 -> 24) (diff)
5:14 PM Changeset in webkit [64246] by andersca@apple.com
  • 6 edits in trunk

Implement NPN_InvokeDefault and NPN_Construct
https://bugs.webkit.org/show_bug.cgi?id=43160

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::invoke):
Just call invoke directly.

(WebKit::NPJSObject::invokeDefault):
Call invoke.

(WebKit::NPJSObject::construct):
Implement this.

(WebKit::NPJSObject::invoke):
Add new invoke overload that takes the function as a JSValue.

(WebKit::NPJSObject::npClass):
Add NP_Construct.

(WebKit::NPJSObject::NP_InvokeDefault):
Call NPJSObject::invokeDefault.

(WebKit::NPJSObject::NP_Construct):
Call NPJSObject::construct.

  • WebProcess/Plugins/NPJSObject.h:
  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_GetValue):
Handle the Core Animation drawing model and the Carbon event model.

(WebKit::NPN_InvokeDefault):
Call the NPClass::invokeDefault function.

(WebKit::NPN_Construct):
Call the NPClass::construct function.

LayoutTests:

  • platform/mac-wk2/Skipped:

Remove plugins/npruntime/invoke-default.html

4:45 PM Changeset in webkit [64245] by kim.1.gronholm@nokia.com
  • 5 edits in trunk/WebKit/qt

2010-07-28 Kim Grönholm <kim.1.gronholm@nokia.com>

Reviewed by Antonio Gomes.

[Qt] Decouple QTouchEvent's accepted flag from JS prevent default
https://bugs.webkit.org/show_bug.cgi?id=42892

Added comments to the touch event handling code.

  • Api/qgraphicswebview.cpp: (QGraphicsWebView::sceneEvent):
  • Api/qwebpage.cpp: (QWebPagePrivate::touchEvent): (QWebPage::event):
  • Api/qwebpage_p.h:
  • Api/qwebview.cpp: (QWebView::event):
4:38 PM Changeset in webkit [64244] by andersca@apple.com
  • 6 edits in trunk

Implement NPN_Invoke
https://bugs.webkit.org/show_bug.cgi?id=43158

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::hasMethod):
Use the free getCallData function.

(WebKit::NPJSObject::invoke):
Get the JavaScript function and call it.

(WebKit::NPJSObject::NP_Invoke):
Call NPJSObject::invoke.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_Invoke):
Call the NPClass::invoke function.

LayoutTests:

  • platform/mac-wk2/Skipped:

Remove plugins/npruntime/invoke.html.

4:32 PM Changeset in webkit [64243] by darin@chromium.org
  • 4 edits in trunk/WebKit/chromium

2010-07-28 Gene Gutnik <gene@google.com>

Reviewed by Darin Fisher.

Fix mouse coordinate conversion. WindowX,Y is an absolute
mouse coordinates within browser window, x,y - are coordinates
relative to the plugin.
https://bugs.webkit.org/show_bug.cgi?id=42987

  • src/WebInputEventConversion.cpp: (WebKit::WebMouseEventBuilder::WebMouseEventBuilder): (WebKit::WebMouseWheelEventBuilder::WebMouseWheelEventBuilder):
  • src/WebInputEventConversion.h:
  • src/WebPluginContainerImpl.cpp: (WebKit::WebPluginContainerImpl::handleMouseEvent): (WebKit::WebPluginContainerImpl::handleWheelEvent):
4:21 PM Changeset in webkit [64242] by tony@chromium.org
  • 6 edits in trunk

2010-07-28 Tony Chang <tony@chromium.org>

Reviewed by Ojan Vafai.

implement getData('text/html') for webkit win
https://bugs.webkit.org/show_bug.cgi?id=37981

  • platform/win/Skipped: 2 tests now pass

2010-07-28 Tony Chang <tony@chromium.org>

Reviewed by Ojan Vafai.

implement getData('text/html') for webkit win
https://bugs.webkit.org/show_bug.cgi?id=37981

  • platform/win/ClipboardUtilitiesWin.cpp: (WebCore::extractMarkupFromCFHTML): (WebCore::getCFHTML): (WebCore::fragmentFromCFHTML): (WebCore::fragmentFromHTML):
  • platform/win/ClipboardUtilitiesWin.h:
  • platform/win/ClipboardWin.cpp: (WebCore::): (WebCore::clipboardTypeFromMIMEType): (WebCore::ClipboardWin::getData):
4:18 PM Changeset in webkit [64241] by commit-queue@webkit.org
  • 2 edits
    2 adds in trunk/LayoutTests

2010-07-28 Alex Nicolaou <anicolao@chromium.org>

Reviewed by Darin Adler.

mask-colorspace.svg result for chromium-linux
https://bugs.webkit.org/show_bug.cgi?id=43100

blocking:

[chromium] r63450 caused some svg mask tests to fail pixel tests
https://bugs.webkit.org/show_bug.cgi?id=42403

New expectations and baseline for mask-colorspace on Linux that
reflect my idea of what should be the passing output as of when
I wrote the original patch. In fact the inner circle should be
78,78,78 instead of 76,76,76 but while I sort out the broken
baselines I'm going to consider this an improvement; at least
the two images match each other as intended in the original test.

  • platform/chromium-linux/svg/custom/mask-colorspace-expected.checksum: Added.
  • platform/chromium-linux/svg/custom/mask-colorspace-expected.png: Added.
  • platform/chromium/test_expectations.txt:
4:03 PM Changeset in webkit [64240] by andersca@apple.com
  • 6 edits in trunk

Implement NPN_HasMethod
https://bugs.webkit.org/show_bug.cgi?id=43155

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::hasMethod):
Check if the JSObject has a property with the given name. If it does, check that the value is a function.

(WebKit::NPJSObject::hasProperty):
Add a JSLock.

(WebKit::NPJSObject::npClass):
Add some stubbed out functions.

(WebKit::NPJSObject::NP_HasMethod):
Call NPJSObject::hasMethod.

(WebKit::NPJSObject::NP_Invoke):
(WebKit::NPJSObject::NP_InvokeDefault):
(WebKit::NPJSObject::NP_SetProperty):
Stub out functions.

  • WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:

(WebKit::NPN_HasMethod):
Call the NPClass::hasMethod function.

LayoutTests:

  • platform/mac-wk2/Skipped:

Remove plugins/npruntime/invoke-browserfuncs.html.

3:50 PM Changeset in webkit [64239] by kevino@webkit.org
  • 2 edits in trunk/WebKit/wx

[wx] wxPython build fix that was missed in last commit.

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

Make sure new pages are always added to the same PageGroup (for now).

Rubberstamped by Sam Weinig.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::WebPage::WebPage):

3:31 PM Changeset in webkit [64237] by abarth@webkit.org
  • 6 edits in trunk

2010-07-28 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Update numbered header element closing to match recent spec change
https://bugs.webkit.org/show_bug.cgi?id=43072

  • html5lib/runner-expected-html5.txt:

2010-07-28 Adam Barth <abarth@webkit.org>

Reviewed by Eric Seidel.

Update numbered header element closing to match recent spec change
https://bugs.webkit.org/show_bug.cgi?id=43072

Pretty straightforward transcription of the spec change.

  • html/HTMLElementStack.cpp: (WebCore::HTMLNames::isNumberedHeaderElement): (WebCore::HTMLElementStack::popUntilNumberedHeaderElementPopped): (WebCore::HTMLElementStack::hasOnlyHTMLElementsInScope): (WebCore::HTMLElementStack::hasNumberedHeaderElementInScope):
  • html/HTMLElementStack.h:
  • html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::HTMLTreeBuilder): (WebCore::HTMLTreeBuilder::processEndTagForInBody):
3:15 PM Changeset in webkit [64236] by kevino@webkit.org
  • 2 edits
    1 add in trunk/WebKit/wx

[wx] Build fix after recent changes.

3:09 PM Changeset in webkit [64235] by andersca@apple.com
  • 5 edits in trunk

Implement JSNPObject::put
https://bugs.webkit.org/show_bug.cgi?id=43149

Reviewed by Sam Weinig.

WebKit2:

  • WebProcess/Plugins/JSNPObject.cpp:

(WebKit::JSNPObject::getOwnPropertySlot):
Fix a typo.

(WebKit::JSNPObject::getOwnPropertyDescriptor):
Implement this in the same way as it's implemented in RuntimeObject.

(WebKit::JSNPObject::put):
Implement this, call NPClass::setProperty.

  • WebProcess/Plugins/JSNPObject.h:

LayoutTests:

  • platform/mac-wk2/Skipped:

Remove now passing tests.

2:55 PM Changeset in webkit [64234] by eric@webkit.org
  • 2 edits in trunk/LayoutTests

2010-07-28 Eric Seidel <eric@webkit.org>

No review. Skipping test to restore peace and justice.

REGRESSION(63862): animations/play-state.html fails intermittently
https://bugs.webkit.org/show_bug.cgi?id=42821

  • platform/mac/Skipped:
    • Attempt to staunch the bleeding by skipping this flake-zor.
2:51 PM UsingGitWithWebKit edited by dimich@chromium.org
(diff)
2:47 PM Changeset in webkit [64233] by victorw@chromium.org
  • 1 edit
    8 adds in trunk/LayoutTests

2010-07-28 Victor Wang <victorw@chromium.org>

Unreviewed. Add chromium baselines for test:
fast/table/early-table-layout

  • platform/chromium-linux/fast/table/early-table-layout-expected.checksum: Added.
  • platform/chromium-linux/fast/table/early-table-layout-expected.png: Added.
  • platform/chromium-mac/fast/table/early-table-layout-expected.checksum: Added.
  • platform/chromium-mac/fast/table/early-table-layout-expected.png: Added.
  • platform/chromium-mac/fast/table/early-table-layout-expected.txt: Added.
  • platform/chromium-win/fast/table/early-table-layout-expected.checksum: Added.
  • platform/chromium-win/fast/table/early-table-layout-expected.png: Added.
  • platform/chromium-win/fast/table/early-table-layout-expected.txt: Added.
2:42 PM Changeset in webkit [64232] by weinig@apple.com
  • 29 edits
    2 adds in trunk/WebKit2

Patch for https://bugs.webkit.org/show_bug.cgi?id=43097
Make all objects in the WebKit2 API inherit from a single base class

Reviewed by Anders Carlsson.

  • Adds an APIObject base class for all objects which can get vender through the C API to inherit from.
  • Adds a WebString class which wraps WebCore::String for now. I am not too fond of this solution, so we continue should iterate on it.
  • This is a first step toward make a CF-style base type (eg. CFTypeRef) for the C-API.
  • Shared/APIObject.h: Added.

(WebKit::APIObject::APIObject):
Base class for API objects.

  • Shared/ImmutableArray.h:

Make inherit from APIObject.

  • Shared/WebString.h: Added.

(WebKit::WebString::create):
(WebKit::WebString::isNull):
(WebKit::WebString::isEmpty):
(WebKit::WebString::string):
(WebKit::WebString::WebString):
Wraps a WebCore::String so that it can be passed out to the API
and still inherit from APIObject.

  • UIProcess/API/C/WKAPICast.h:

(WebKit::WebStringAdaptor::WebStringAdaptor):
(WebKit::WebStringAdaptor::operator WKStringRef):
(WebKit::WebStringAdaptor::operator WKURLRef):
Update conversion methods to deal in terms of WebStrings. Added WebStringAdaptor
to ease passing strings to client functions.

  • UIProcess/API/C/WKContext.cpp:

(WKContextCreateWithInjectedBundlePath):
(WKContextPostMessageToInjectedBundle):
(_WKContextSetAdditionalPluginPath):
(_WKContextRegisterURLSchemeAsEmptyDocument):
Get the WebCore::String from the WebString.

  • UIProcess/API/C/WKPage.cpp:

(WKPageLoadURL):
Ditto.

  • UIProcess/API/C/WKString.cpp:

(WKStringIsEmpty):
Implement in terms of WebString.

  • UIProcess/API/C/WKURL.cpp:
  • UIProcess/API/C/cf/WKStringCF.cpp:

(WKStringCreateWithCFString):
(WKStringCopyCFString):
Ditto.

  • UIProcess/API/C/cf/WKURLCF.cpp:

(WKURLCreateWithCFURL):
(WKURLCopyCFURL):
Ditto.

  • UIProcess/WebBackForwardList.h:

Make inherit from APIObject.

  • UIProcess/WebBackForwardListItem.h:

Ditto.

  • UIProcess/WebContext.cpp:

(WebKit::WebContext::didReceiveMessageFromInjectedBundle):
(WebKit::WebContext::postMessageToInjectedBundle):
(WebKit::WebContext::registerURLSchemeAsEmptyDocument):
Use String instead of StringImpl to be consistent.

  • UIProcess/WebContext.h:

Make inherit from APIObject.

  • UIProcess/WebFramePolicyListenerProxy.h:

Ditto.

  • UIProcess/WebFrameProxy.h:

Ditto.

  • UIProcess/WebNavigationData.h:

Ditto.

  • UIProcess/WebPageNamespace.h:

Ditto.

  • UIProcess/WebPageProxy.h:

Ditto.

  • UIProcess/WebPreferences.h:

Ditto.

  • UIProcess/WebUIClient.cpp:

(WebKit::WebUIClient::runJavaScriptPrompt):
Implement in terms of WebString.

  • UIProcess/win/WebView.h:

Make inherit from APIObject.

  • WebKit2.xcodeproj/project.pbxproj:

Add new files.

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

(WKBundlePostMessage):
Get the WebCore::String from the WebString.

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

(WKBundleFramePauseAnimationOnElementWithId):
Ditto.

  • WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::postMessage):

  • WebProcess/InjectedBundle/InjectedBundle.h:

Use String instead of StringImpl to be consistent.

  • WebProcess/WebPage/WebFrame.h:

Make inherit from APIObject.

  • WebProcess/WebPage/WebPage.h:

Make inherit from APIObject.

  • win/WebKit2.vcproj:

Add new files.

2:30 PM Changeset in webkit [64231] by andersca@apple.com
  • 15 edits
    1 copy
    1 add in trunk

Add support for calling NPObject methods
https://bugs.webkit.org/show_bug.cgi?id=43145

Reviewed by Sam Weinig.

WebCore:

  • WebCore.exp.in:

Export JSHTMLElement::s_info and pluginScriptObject.

  • WebCore.xcodeproj/project.pbxproj:

Make JSHTMLElement.h and JSPluginElementFunctions.h private headers.

  • bindings/js/JSPluginElementFunctions.cpp:

(WebCore::pluginScriptObject):

  • bindings/js/JSPluginElementFunctions.h:

Make pluginScriptObject a public function.

WebKit2:

  • WebKit2.xcodeproj/project.pbxproj:

Add JSNPMethod.cpp and JSNPMethod.h

  • WebProcess/Plugins/JSNPMethod.cpp: Added.
  • WebProcess/Plugins/JSNPMethod.h: Added.
  • WebProcess/Plugins/JSNPObject.cpp:

(WebKit::):
Add a ClassInfo static variable for JSNPObject.

(WebKit::JSNPObject::callMethod):
Convert the passed in arguments, call the method and convert the result back.

(WebKit::JSNPObject::getOwnPropertySlot):
Check if the NPObject has a method.

(WebKit::JSNPObject::methodGetter):
Return a new JSNPMethod.

  • WebProcess/Plugins/JSNPObject.h:

(WebKit::JSNPObject::classInfo):
Return the s_info.

  • WebProcess/Plugins/NPJSObject.cpp:

(WebKit::NPJSObject::getProperty):
Get the property from the JSObject.

  • WebProcess/Plugins/NPRuntimeObjectMap.cpp:

(WebKit::NPRuntimeObjectMap::convertJSValueToNPVariant):
Convert the given JSValue to an NPVariant.

  • win/WebKit2.vcproj:

Add JSNPMethod.cpp and JSNPMethod.h

LayoutTests:

  • platform/mac-wk2/Skipped:

Remove plugins/npruntime/get-int-identifier-special-values.html since it passes now.

2:18 PM Changeset in webkit [64230] by jamesr@google.com
  • 7 edits in trunk

2010-07-28 James Robinson <jamesr@chromium.org>

Reviewed by Darin Fisher.

[chromium] Add a bool to Settings to control accelerated 2d canvas
https://bugs.webkit.org/show_bug.cgi?id=43094

  • public/WebSettings.h:
  • src/WebSettingsImpl.cpp: (WebKit::WebSettingsImpl::setAccelerated2dCanvasEnabled):
  • src/WebSettingsImpl.h:

2010-07-28 James Robinson <jamesr@chromium.org>

Reviewed by Darin Fisher.

[chromium] Add a bool to Settings to control accelerated 2d canvas
https://bugs.webkit.org/show_bug.cgi?id=43094

Currently this doesn't control anything, but it will soon.

  • page/Settings.cpp: (WebCore::Settings::Settings): (WebCore::Settings::setAccelerated2dCanvasEnabled):
  • page/Settings.h: (WebCore::Settings::accelerated2dCanvasEnabled):
1:51 PM Changeset in webkit [64229] by kevino@webkit.org
  • 23 edits
    2 adds in trunk

Reviewed by Kevin Ollivier.

Add DOM bindings support for wx port.

1:47 PM WebKitGtkLayoutTests edited by mrobinson@webkit.org
(diff)
1:46 PM WebKitGtkLayoutTests edited by mrobinson@webkit.org
(diff)
1:45 PM WebKitGtkLayoutTests edited by mrobinson@webkit.org
Added some further information about running layout tests (diff)
1:41 PM WebKitGtkLayoutTests created by mrobinson@webkit.org
1:41 PM Changeset in webkit [64228] by victorw@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-28 Victor Wang <victorw@chromium.org>

Unreviewed. Fix chromium test expectations:
Remove duplicate expectation for test:
tables/mozilla/other/slashlogo.html

  • platform/chromium/test_expectations.txt:
1:24 PM WebKitGTK edited by mrobinson@webkit.org
(diff)
1:23 PM WebKitGTK edited by mrobinson@webkit.org
(diff)
1:21 PM Changeset in webkit [64227] by senorblanco@chromium.org
  • 4 edits in trunk/WebCore

2010-07-28 Stephen White <senorblanco@chromium.org>

Reviewed by Darin Fisher.

Hook the GLES2 rendering path up to GraphicsContextSkia.
https://bugs.webkit.org/show_bug.cgi?id=43119


This connects the state-setting and drawing calls implemented in
so far in GLES2Canvas, and calls PlatformContextSkia's
prepareForSoftwareDraw() for all the non-accelerated paths.

  • platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::addInnerRoundedRectClip): (WebCore::GraphicsContext::addPath): (WebCore::GraphicsContext::beginPath): (WebCore::GraphicsContext::clip): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::drawFocusRing): (WebCore::GraphicsContext::drawLine): (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar): (WebCore::GraphicsContext::drawLineForText): (WebCore::GraphicsContext::drawRect): (WebCore::GraphicsContext::fillPath): (WebCore::GraphicsContext::fillRoundedRect): (WebCore::GraphicsContext::strokeArc): (WebCore::GraphicsContext::strokePath): (WebCore::GraphicsContext::strokeRect): These calls are software-only; call preSoftwareDraw() for these. (WebCore::GraphicsContext::savePlatformState): (WebCore::GraphicsContext::restorePlatformState): (WebCore::GraphicsContext::setAlpha): (WebCore::GraphicsContext::setCompositeOperation): (WebCore::GraphicsContext::setPlatformFillColor): (WebCore::GraphicsContext::scale): (WebCore::GraphicsContext::rotate): (WebCore::GraphicsContext::translate): (WebCore::GraphicsContext::concatCTM): These ones set state on both Skia and GLES2Canvas. (WebCore::GraphicsContext::clearRect): (WebCore::GraphicsContext::fillRect): These ones have a GLES2 implementation; call through to it if PlatformContextSkia's useGPU() flag is set and the state permits.
  • platform/graphics/skia/PlatformContextSkia.cpp: (PlatformContextSkia::prepareForSoftwareDraw): (PlatformContextSkia::prepareForHardwareDraw): Rename preXXXDraw() -> prepareForXXXDraw().
  • platform/graphics/skia/PlatformContextSkia.h: (PlatformContextSkia::prepareForSoftwareDraw): (PlatformContextSkia::prepareForHardwareDraw): Rename preXXXDraw() -> prepareForXXXDraw().
1:12 PM Changeset in webkit [64226] by crogers@google.com
  • 1 edit in branches/audio/WebCore/WebCore.xcodeproj/project.pbxproj

another audio branch build fix

1:07 PM Changeset in webkit [64225] by jamesr@google.com
  • 7 edits
    4 adds in trunk

2010-07-28 fsamuel@chromium.org <fsamuel@chromium.org>

Reviewed by David Hyatt.

REGRESSION (r63994): Bank of America's home page is horribly mis-rendered
https://bugs.webkit.org/show_bug.cgi?id=42993

Fixed bug introduced by patch for bug 40775.

The new table rendering code did not take into account table layouts starting
during a partial construction of the table render tree. As such,
multiple layouts on the same table resulted in more columns being generated.
This patch solves this issue.

  • rendering/AutoTableLayout.cpp: (WebCore::AutoTableLayout::recalcColumn):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::cellAbove): (WebCore::RenderTable::cellBelow): (WebCore::RenderTable::cellBefore):
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::ensureRows): (WebCore::RenderTableSection::addCell): (WebCore::RenderTableSection::setCellWidths): (WebCore::RenderTableSection::calcRowHeight): (WebCore::RenderTableSection::layoutRows): (WebCore::RenderTableSection::paintObject): (WebCore::RenderTableSection::appendColumn): (WebCore::RenderTableSection::splitColumn):
  • rendering/RenderTableSection.h: (WebCore::RenderTableSection::CellStruct::CellStruct):

2010-07-28 fsamuel@chromium.org <fsamuel@chromium.org>

Reviewed by David Hyatt.

REGRESSION (r63994): Bank of America's home page is horribly mis-rendered
https://bugs.webkit.org/show_bug.cgi?id=42993

Restored the expectation for the slashdot logo table test.

Added a new layout test to check for the correctness of early table layout.

  • fast/table/early-table-layout.html: Added.
  • platform/chromium/test_expectations.txt:
  • platform/gtk/fast/table/early-table-layout-expected.checksum: Added.
  • platform/gtk/fast/table/early-table-layout-expected.png: Added.
  • platform/gtk/fast/table/early-table-layout-expected.txt: Added.
12:54 PM Changeset in webkit [64224] by Adam Roben
  • 2 edits in trunk/WebKit2

Teach CoreIPC how to handle with a pipe closing during a write

Fixes <http://webkit.org/b/43131> Assertion failure in
Connection::sendOutgoingMessage if the other process exits at just the
wrong time

Reviewed by Darin Adler.

  • Platform/CoreIPC/win/ConnectionWin.cpp:

(CoreIPC::Connection::sendOutgoingMessage): If ::WriteFile fails with
ERROR_NO_DATA, the pipe (and thus the connection) has closed.

12:54 PM Changeset in webkit [64223] by Adam Roben
  • 7 edits in trunk/WebKit2

Teach CoreIPC the right way to send large messages on Windows

r63776 added support for ::WriteFile failing with ERROR_IO_PENDING,
but it had a major flaw: we didn't ensure that the data being sent
(which is owned by the ArgumentEncoder) stayed around until the write
finished. We'd destroy the data immediately, leading to ::WriteFile
accessing that freed memory later. This seemed to always manifest
itself as a crash in ::WaitForMultipleObjects.

The correct solution (as hinted above) is to make sure that the data
being written is not destroyed until the write completes. When
::WriteFile fails with ERROR_IO_PENDING, we store the data being sent
in Connection::m_pendingWriteArguments, and don't send any more
messages until that write completes. We use an event in the OVERLAPPED
structure passed to ::WriteFile to detect when the write has completed
(similar to what we do for reads).

Fixes <http://webkit.org/b/42785> <rdar://problem/8218522> Crash in
WebKit2WebProcess in WaitForMultipleObjects beneath
WorkQueue::workQueueThreadBody when running tests that produce a lot
of output

Reviewed by Anders Carlsson.

  • Platform/CoreIPC/Connection.cpp:

(CoreIPC::Connection::canSendOutgoingMessages): Added. This calls out
to a platform-specific function to allow each platform to have its own
policy for when messages can and can't be sent.
(CoreIPC::Connection::sendOutgoingMessages): Use the new
canSendOutgoingMessages to determine whether we can send any messages
right now. We now remove one message at a time from m_outgoingMessages
and send it. We stop sending messages when sendOutgoingMessage returns
false.

  • Platform/CoreIPC/Connection.h: Added m_pendingWriteArguments and

m_writeState on Windows.
(CoreIPC::Connection::Message::Message): Added this default
constructor.

  • Platform/CoreIPC/MessageID.h:

(CoreIPC::MessageID::MessageID): Made the default constructor public
for Message's benefit.

  • Platform/CoreIPC/mac/ConnectionMac.cpp:

(CoreIPC::Connection::platformCanSendOutgoingMessages): Added. Always
returns true.
(CoreIPC::Connection::sendOutgoingMessage): Changed to return a
boolean indicating whether more messages can be sent at this time.

  • Platform/CoreIPC/qt/ConnectionQt.cpp:

(CoreIPC::Connection::platformCanSendOutgoingMessages): Added. Returns
true if we have a socket.
(CoreIPC::Connection::sendOutgoingMessage): Changed a null-check of
m_socket to an assertion since it should be checked for null in
platformCanSendOutgoingMessages. Changed to return a boolean
indicating whether more messages can be sent at this time.

  • Platform/CoreIPC/win/ConnectionWin.cpp:

(CoreIPC::Connection::platformInitialize): Added initialization of
m_writeState.
(CoreIPC::Connection::platformInvalidate): Close m_writeState's event
handle.
(CoreIPC::Connection::writeEventHandler): Added. Checks if the pending
write has completed, cleans up our pending write state, and sends any
remaining messages.
(CoreIPC::Connection::open): Register our write event with the
WorkQueue so that writeEventHandler will be called when the event is
signaled.
(CoreIPC::Connection::platformCanSendOutgoingMessages): Added. We can
only send messages if there isn't a write pending.
(CoreIPC::Connection::sendOutgoingMessage): Changed to return a
boolean indicating whether more messages can be sent at this time. We
now pass m_writeState to ::WriteFile instead of an empty OVERLAPPED
struct so that our write event will be signaled when the write
completes. We also no longer pass a pointer to receive how many bytes
were written, as recommended by MSDN. If ::WriteFile fails with
ERROR_IO_PENDING, we save the ArgumentEncoder for this message and
return false to indicate that no more messages can be sent at this
time.

12:53 PM Changeset in webkit [64222] by crogers@google.com
  • 1 edit in branches/audio/WebCore/WebCore.xcodeproj/project.pbxproj

Fix audio branch build

12:53 PM Changeset in webkit [64221] by Adam Roben
  • 2 edits in trunk/WebKit2

Stop leaking Connection::m_readState.hEvent on Windows

Fixes <http://webkit.org/b/43129> CoreIPC::Connection leaks its read
event on Windows

Reviewed by Darin Adler.

  • Platform/CoreIPC/win/ConnectionWin.cpp:

(CoreIPC::Connection::platformInvalidate): Close the event handle.

12:44 PM Changeset in webkit [64220] by brettw@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-07-28 Brett Wilson <brettw@chromium.org>

Reviewed by Darin Fisher.

Fix forward declares to be struct instead of class.
https://bugs.webkit.org/show_bug.cgi?id=43127

  • public/WebFont.h:
12:23 PM Changeset in webkit [64219] by tony@chromium.org
  • 3 edits in trunk/WebKitTools

2010-07-28 Tony Chang <tony@chromium.org>

Reviewed by Kent Tamura.

[chromium] cleanup temp files left by Linux DRT
https://bugs.webkit.org/show_bug.cgi?id=43062

  • BuildSlaveSupport/build.webkit.org-config/config.json: Rename the chromium bots to include the OS
  • BuildSlaveSupport/build.webkit.org-config/master.cfg: add a step on chromium-linux to delete temp files left

by crashed DRTs

12:20 PM Changeset in webkit [64218] by victorw@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-28 Victor Wang <victorw@chromium.org>

Unreviewed. Update chromium test expectations for tesst that
may crash on mac or linux:
fast/dom/prototype-inheritance-2.html

  • platform/chromium/test_expectations.txt:
12:16 PM Changeset in webkit [64217] by tonikitoo@webkit.org
  • 2 edits in trunk/WebKitTools

2010-07-28 Antonio Gomes <tonikitoo@webkit.org>

Rubber-stamped by Kenneth Christiansen.

More Developer menu items reordering.

Grouping related menu items together, visually and logically (in the code).

No behavior change.

  • QtTestBrowser/main.cpp:
12:04 PM Changeset in webkit [64216] by crogers@google.com
  • 18 edits in branches/audio/WebCore

Add DelayNode variable audio delay effect

  • currently limited to no more than one second delay, but not difficult to increase limit
12:04 PM Changeset in webkit [64215] by crogers@google.com
  • 11 edits
    2 copies
    4 adds in branches/audio/WebCore

Add AudioChannelSplitter and AudioChannelMerger classes

  • works with the limited testing so far
  • currently hard-coded to limit of no more than six channels (sufficient for up to 5.1) but can easily be increased
11:31 AM Changeset in webkit [64214] by victorw@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-28 Victor Wang <victorw@chromium.org>

Unreviewed. Update chromium test expectations for test:
storage/indexeddb/objectstore-basics.html

  • storage/indexeddb/objectstore-basics-expected.txt:
11:18 AM WebKit Team edited by noam.rosenthal@nokia.com
(diff)
11:17 AM WebKit Team edited by noam.rosenthal@nokia.com
(diff)
11:04 AM WebKitGTK edited by mrobinson@webkit.org
Small cleanups (diff)
11:01 AM WebKitGTK edited by mrobinson@webkit.org
Added information about filing bugs against WebKitGTK (diff)
10:54 AM Changeset in webkit [64213] by tonyg@chromium.org
  • 2 edits in trunk/WebCore

2010-07-28 Tony Gentilcore <tonyg@chromium.org>

Reviewed by Pavel Feldman.

Exclude DNS and SSL time from connect time
https://bugs.webkit.org/show_bug.cgi?id=43083

The ResourceLoadTiming API's definition of the connect phase includes
DNS and SSL time. However, the Web Timing spec wants just the TCP time.
So this patch subtracts those phases out.

No new tests because ResourceLoadTiming fields are not populated by
TestShell yet.

  • page/Timing.cpp: (WebCore::Timing::connectStart): (WebCore::Timing::connectEnd):
10:40 AM Changeset in webkit [64212] by andreip@google.com
  • 2 edits in trunk/LayoutTests

2010-07-28 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

The text expectations for storage/objectore-basics.html are out of date
https://bugs.webkit.org/show_bug.cgi?id=43126

Following http://trac.webkit.org/changeset/64209
the objectstore-basics-expected.txt file should be updated to reflect
the new tests.

  • storage/indexeddb/objectstore-basics-expected.txt:
10:17 AM Changeset in webkit [64211] by pfeldman@chromium.org
  • 2 edits in trunk/WebKit/chromium

2010-07-28 Pavel Feldman <pfeldman@chromium.org>

Reviewed by Dimitri Glazkov.

Chromium DevTools: [REGRESSION] sourceURL is not respected.

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

  • src/js/DebuggerScript.js:
9:34 AM Changeset in webkit [64210] by andreip@google.com
  • 3 edits in trunk/LayoutTests

2010-07-28 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

Skip IDBKeyRange from the prototype-inheritance layout test.
IDBKeyRange is a DOM object and, with V8, it seems that such objects
do not respect the prototype inheritance.

Once IndexedDatabase is done, we should remove indexedDB and IDBKeyRange
from the list of skipped window properties and we should update the
Chromium and Android test expectations.

fast/dom/prototype-inheritance.html fails from r64141
https://bugs.webkit.org/show_bug.cgi?id=43067

  • fast/dom/script-tests/prototype-inheritance.js:
  • platform/chromium/test_expectations.txt:
9:27 AM Changeset in webkit [64209] by andreip@google.com
  • 5 edits in trunk

2010-07-28 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] WebDOMStringList default ctor does not initialize its m_private member
variable so any attempt to append strings to a WebDOMStringList instance results in a crash.
https://bugs.webkit.org/show_bug.cgi?id=43120

  • storage/indexeddb/script-tests/objectstore-basics.js: (openSuccess): (createSuccess):

2010-07-28 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] WebDOMStringList default ctor does not initialize its m_private member
variable so any attempt to append strings to a WebDOMStringList instance results in a crash.
https://bugs.webkit.org/show_bug.cgi?id=43120

Makes the default WebKit::WebDOMStringList ctor actually create its wrapped
WebCore::DOMStringList instance.

  • public/WebDOMStringList.h:
  • src/WebDOMStringList.cpp: (WebKit::WebDOMStringList::WebDOMStringList):
9:13 AM Changeset in webkit [64208] by steveblock@google.com
  • 21 edits in trunk

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::WebViewImpl):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • Api/qwebpage.cpp: (QWebPagePrivate::QWebPagePrivate):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • webkit/webkitwebview.cpp: (webkit_web_view_init):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • WebView.cpp: (WebView::initWithFrame):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • WebView.cpp: (wxWebView::Create):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • WebView/WebView.mm: (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • ewk/ewk_view.cpp: (_ewk_view_priv_new):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

No new tests, refactoring only.

  • WebCore.exp.in:
  • page/Page.cpp: (WebCore::Page::Page):
  • page/Page.h: (WebCore::Page::PageClients::PageClients):
  • svg/graphics/SVGImage.cpp: (WebCore::SVGImage::dataChanged):

2010-07-26 Steve Block <steveblock@google.com>

Reviewed by Jeremy Orlow.

Page clients should be passed to Page constructor via structure of pointers
https://bugs.webkit.org/show_bug.cgi?id=42834

  • WebKit2/WebProcess/WebPage/WebPage.cpp: (WebPage::WebPage):
9:00 AM Changeset in webkit [64207] by commit-queue@webkit.org
  • 3 edits
    2 adds in trunk

2010-07-28 Xianzhu Wang <phnixwxz@gmail.com>

Reviewed by Dan Bernstein.

Line not wrapped at certain punctuations
https://bugs.webkit.org/show_bug.cgi?id=37698

  • fast/text/line-breaks-after-closing-punctuations-expected.txt: Added.
  • fast/text/line-breaks-after-closing-punctuations.html: Added.

2010-07-28 Xianzhu Wang <phnixwxz@gmail.com>

Reviewed by Dan Bernstein.

Line not wrapped at certain punctuations
https://bugs.webkit.org/show_bug.cgi?id=37698
Added a line breaking table for all printable ASCII chars to replace
the original line breaking table for only '?'.

Test: fast/text/line-breaks-after-closing-punctuations.html

  • rendering/break_lines.cpp: (WebCore::isBreakableSpace): (WebCore::): (WebCore::shouldBreakAfter): (WebCore::needsLineBreakIterator):
8:26 AM Changeset in webkit [64206] by leandro@webkit.org
  • 2 edits in trunk/WebCore

2010-07-28 Lucas De Marchi <lucas.demarchi@profusion.mobi>

Unreviewed build fix.

Fix EFL build with SHARED_CORE=ON after r64124.

  • CMakeLists.txt:
8:19 AM Changeset in webkit [64205] by jcivelli@chromium.org
  • 2 edits in trunk/WebCore

2010-07-28 Jay Civelli <jcivelli@chromium.org>

Reviewed by Kent Tamura.

[Chromium] The popup now layouts properly its rows by
taking into account the label width.
https://bugs.webkit.org/show_bug.cgi?id=42910

  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupListBox::layout):
7:59 AM Changeset in webkit [64204] by pfeldman@chromium.org
  • 4 edits in trunk

2010-07-28 Pavel Feldman <pfeldman@chromium.org>

Not reviewed: chromium tests fix.
Chromium Dev Tools: [REGRESSION] Pause is not working.

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

  • src/js/DevTools.js: (InspectorBackend.pause):
7:32 AM Changeset in webkit [64203] by loislo@chromium.org
  • 3 edits in trunk/WebCore

2010-07-28 Ilya Tikhonovsky <loislo@chromium.org>

Reviewed by Pavel Feldman.

WebInspector: Navigating to anchor prior to opening WebInspector
makes resource have 'other' type.
https://bugs.webkit.org/show_bug.cgi?id=43110

  • inspector/InspectorResource.cpp: (WebCore::InspectorResource::type): (WebCore::InspectorResource::resourceData):
  • inspector/front-end/ResourceView.js: (WebInspector.ResourceView.prototype._innerSelectContentTab):
5:55 AM Changeset in webkit [64202] by andreas.kling@nokia.com
  • 2 edits in trunk/WebCore

2010-07-28 Andreas Kling <andreas.kling@nokia.com>

Reviewed by Kenneth Rohde Christiansen.

[Qt] putImageData(): Combine premultiplication and BGR->RGB
https://bugs.webkit.org/show_bug.cgi?id=43114

Further optimized putImageData() by doing BGR->RGB inside the
premultiplication routine.

  • platform/graphics/qt/ImageBufferQt.cpp: (WebCore::premultiplyABGRtoARGB): Renamed from premultiply. (WebCore::putImageData):
5:37 AM Changeset in webkit [64201] by andreip@google.com
  • 3 edits in trunk/WebCore

2010-07-28 Andrei Popescu <andreip@google.com>

Reviewed by Jeremy Orlow.

[IndexedDB] IDBKeyRange should be a runtime-enabled feature.
https://bugs.webkit.org/show_bug.cgi?id=43116

IDBKeyRange should be enabled at runtime only when IndexedDB is also
enabled.

No new tests needed, functionality not changed.

  • bindings/generic/RuntimeEnabledFeatures.h: (WebCore::RuntimeEnabledFeatures::iDBKeyRangeEnabled):
  • page/DOMWindow.idl:
4:53 AM WinCE edited by cortexian@gmail.com
(diff)
4:20 AM Changeset in webkit [64200] by Nikolas Zimmermann
  • 2 edits in trunk/WebCore

2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Forgot to land GNUmakefile.am changes, broke build in r64196.

  • GNUmakefile.am: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build.
4:16 AM Changeset in webkit [64199] by Nikolas Zimmermann
  • 1 edit
    1 delete in trunk/LayoutTests

2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix two layout test failure on the windows slave. Remove win-xp specific results after the r64186 change.

  • platform/win-xp/fast/lists: Removed.
  • platform/win-xp/fast/lists/w3-css3-list-styles-alphabetic-expected.txt: Removed.
  • platform/win-xp/fast/lists/w3-css3-list-styles-numeric-expected.txt: Removed.
4:14 AM Changeset in webkit [64198] by Nikolas Zimmermann
  • 1 edit
    1 delete in trunk/LayoutTests

2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Fix layout test failure on Leopard Intel Debug slave. Remove leopard specific result after the r64186 change.

  • platform/mac-leopard/fast/lists: Removed.
  • platform/mac-leopard/fast/lists/w3-css3-list-styles-numeric-expected.txt: Removed.
4:09 AM Changeset in webkit [64197] by Nikolas Zimmermann
  • 5 edits in trunk/WebCore

2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

SVGMaskElement/SVGForeignObjectElement should not inherit from SVGURIReference
https://bugs.webkit.org/show_bug.cgi?id=43113

Remove wrong SVGURIReference inheritance for SVGMaskElement/SVGForeignObjectElement. Old copy/paste bug.

  • svg/SVGForeignObjectElement.cpp: (WebCore::SVGForeignObjectElement::synchronizeProperty):
  • svg/SVGForeignObjectElement.h:
  • svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::SVGMaskElement): (WebCore::SVGMaskElement::parseMappedAttribute): (WebCore::SVGMaskElement::svgAttributeChanged): (WebCore::SVGMaskElement::synchronizeProperty):
  • svg/SVGMaskElement.h:
3:55 AM Changeset in webkit [64196] by Nikolas Zimmermann
  • 13 edits
    7 adds in trunk/WebCore

2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>

Reviewed by Dirk Schulze.

WebKit shouldn't ignore resource cycles, but break them as Opera does
https://bugs.webkit.org/show_bug.cgi?id=43031

Don't ignore resources containing cyclic references, but break them, as discussed on SVG WG mailing lists - to be compatible with Opera which already does that.

We used to lookup RenderSVGResourceContainers objects, by extracting the URI reference from the SVGRenderStyle, then utilizing getElementById() to lookup the
node, and access its renderer. Opera ignores such references, if they point to resources that contain cyclic references. Ignoring them would mean we have
to mutate the render style to empty the resource strings. That obviously doesn't work, as it would break expectations (getComputedStyle, etc.).

Introduce a SVGResources class that stores pointers to all resources, that can be applied to a RenderObject (clipper/filter/markers/masker).
Add a SVGResourcesCache class, which is basically a HashMap<RenderObject*, SVGResources*>. Whenever a RenderObject receives style, we extract the URI references
from the SVGRenderStyle, look up the RenderSVGResourceContainer* objects, and store them in a SVGResources* class. Then we execute a cycle detection logic,
which detects cyclic references and breaks them. Breaking them means just nulling the pointer to the resource in the SVGResources object. Those SVGResources
objects are cached, and used throughout the render tree to access resources. This way it's guaranteed that all cyclic references are resolved until layout/paint
phase begins.

This is the first chunk, which just adds the new SVGResources/SVGResourcesCache/SVGResourcesCycleSolver files, and does minor cleanups.
It's not yet glued in and doesn't affect any tests.

  • Android.mk: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build.
  • CMakeLists.txt: Ditto.
  • WebCore.gypi: Ditto.
  • WebCore.pro: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • rendering/RenderInline.h: Make styleDidChange protected, RenderSVGInline wants to override it.
  • rendering/RenderSVGAllInOne.cpp: Add SVGResources.* / SVGResourcesCache.* / SVGResourcesCycleSolver.* to build.
  • rendering/RenderSVGHiddenContainer.h: (WebCore::RenderSVGHiddenContainer::isSVGHiddenContainer): Make isSVGHiddenContainer() private and renderName() public.
  • rendering/RenderSVGResourceContainer.cpp: Added. Moved most methods from the header in the implementation file. (WebCore::RenderSVGResourceContainer::RenderSVGResourceContainer): (WebCore::RenderSVGResourceContainer::~RenderSVGResourceContainer): (WebCore::RenderSVGResourceContainer::idChanged): (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke): (WebCore::RenderSVGResourceContainer::containsCyclicReference):
  • rendering/RenderSVGResourceContainer.h: Add stubs, that SVGResourcesCache uses - a follow-up patch will add the logic. (WebCore::RenderSVGResourceContainer::addClient): (WebCore::RenderSVGResourceContainer::removeClient):
  • rendering/SVGResources.cpp: Added. Holds a list of resources applyable to a RenderObject (fill/stroke, mask/markers/clipper/filter) (WebCore::paintingResourceFromSVGPaint): Helper function looking up a RenderSVGResource for a SVGPaint object. (WebCore::registerPendingResource): Helper function that register a RenderSVGResource as pending in the SVGDocumentExtensions. (WebCore::SVGResources::buildCachedResources): Build a list of resources for a RenderObject/RenderStyle pair, handles pending resources, if needed. (WebCore::SVGResources::invalidateClient): Helper function that calls invalidateClient() on all resources. (WebCore::SVGResources::resourceDestroyed): Helper function that calls invalidateClients() on a certain resource, and nulls it. (WebCore::SVGResources::buildSetOfResources): Helper function that stashes all resources present in the SVGResources members in a HashSet, used in SVGResourcesCycleSolver. (WebCore::SVGResources::resetClipper): Helper methods nulling a resource. (WebCore::SVGResources::resetFilter): Ditto. (WebCore::SVGResources::resetMarkerStart): Ditto. (WebCore::SVGResources::resetMarkerMid): Ditto. (WebCore::SVGResources::resetMarkerEnd): Ditto. (WebCore::SVGResources::resetMasker): Ditto. (WebCore::SVGResources::resetFill): Ditto. (WebCore::SVGResources::resetStroke): Ditto. (WebCore::SVGResources::dump):
  • rendering/SVGResources.h: Added. (WebCore::SVGResources::clipper): Accesor of the cached m_foo variable. (WebCore::SVGResources::filter): Ditto. (WebCore::SVGResources::markerStart): Ditto. (WebCore::SVGResources::markerMid): Ditto. (WebCore::SVGResources::markerEnd): Ditto. (WebCore::SVGResources::masker): Ditto. (WebCore::SVGResources::fill): Ditto. (WebCore::SVGResources::stroke): Ditto.
  • rendering/SVGResourcesCache.cpp: Added. Holds a HashMap<RenderObject*, SVGResources*> and utility functions that update/invalidate the cache. (WebCore::SVGResourcesCache::SVGResourcesCache): (WebCore::SVGResourcesCache::~SVGResourcesCache): (WebCore::SVGResourcesCache::addResourcesFromRenderObject): Build a SVGResources object for a RenderObject and adds it to the cache, then detects & breaks cycles using SVGResourcesCycleSolver. (WebCore::SVGResourcesCache::removeResourcesFromRenderObject): Remove a SVGResources object from the cache. (WebCore::resourcesCacheFromRenderObject): Helper function, retrieving a SVGResourcesCache method from a RenderObject. (WebCore::SVGResourcesCache::cachedResourcesForRenderObject): Returns a SVGResources object from the cache. (WebCore::SVGResourcesCache::clientLayoutChanged): (static) Calls invalidateClient() on all resources that are used by the passed RenderObject. (WebCore::SVGResourcesCache::clientStyleChanged): (static) Updates the cache (calling removeResourceFromRenderObject/addResourcesFrom...) and invalidates resources in the ancestor chain. (WebCore::SVGResourcesCache::clientUpdatedFromElement): (static) Does the same, without invalidating the ancestor chain. (WebCore::SVGResourcesCache::clientDestroyed): (static) Calls removeResourcesFromRenderObject() on the SVGResourcesCache, for the given renderer. (WebCore::SVGResourcesCache::resourceDestroyed): (static) Updates all SVGResources objects in the cache, that refer to the given resource.
  • rendering/SVGResourcesCache.h: Added.
  • rendering/SVGResourcesCycleSolver.cpp: Added. Detects and breaks cyclic references, just the way Opera handles it. Break cycles as they are detected. (WebCore::SVGResourcesCycleSolver::SVGResourcesCycleSolver): (WebCore::SVGResourcesCycleSolver::~SVGResourcesCycleSolver): (WebCore::SVGResourcesCycleSolver::resourceContainsCycles): Operates only on the render tree (WebCore::targetReferenceFromResource): Helper method for chainableResourceContainsCycles(). (WebCore::setFollowLinkForChainableResource): Ditto. (WebCore::SVGResourcesCycleSolver::chainableResourceContainsCycles): Handles cycles for resources that are chainable through xlink:href (filter/gradient/pattern). (WebCore::SVGResourcesCycleSolver::resolveCycles): Main method executing the cycle breaking logic, utilizing (chainableResource)resourceContainsCycles. (WebCore::SVGResourcesCycleSolver::breakCycle): Nulls a resource in the given SVGResources* object, to avoid using an invalid resource while rendering/layouting.
  • rendering/SVGResourcesCycleSolver.h: Added.
  • svg/SVGDocumentExtensions.cpp: (WebCore::SVGDocumentExtensions::SVGDocumentExtensions): Create SVGResourcesCache object once per SVGDocumentExtensions.
  • svg/SVGDocumentExtensions.h: (WebCore::SVGDocumentExtensions::resourcesCache): Expose accesor method for the SVGResourcesCache.
3:12 AM Changeset in webkit [64195] by jorlow@chromium.org
  • 2 edits in trunk/LayoutTests

2010-07-28 Jeremy Orlow <jorlow@chromium.org>

Updating Chromium test expectations to expect 8 tests to fail since
our "test shell" doesn't implement a method required by Daniel Bates'
http://trac.webkit.org/changeset/64186/ change.

Not reviewed.

  • platform/chromium/test_expectations.txt:
3:01 AM Changeset in webkit [64194] by Nikolas Zimmermann
  • 3 edits in trunk/LayoutTests

2010-07-28 Nikolas Zimmermann <nzimmermann@rim.com>

Not reviewed. Rebaseline mac-leopard specific pixel test result after the path cleanup patch.

  • platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.checksum:
  • platform/mac-leopard/svg/custom/svg-fonts-in-html-expected.png:
2:50 AM Changeset in webkit [64193] by abecsi@webkit.org
  • 2 edits in trunk/WebKit2

2010-07-28 Andras Becsi <abecsi@webkit.org>

Unreviewed trivial build fix.

[Qt] Follow the API changes after r64172.

  • UIProcess/API/qt/qwkpage.cpp: (QWKPage::url): (QWKPage::title):
1:56 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
1:44 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
1:33 AM QtWebKitTableOfFeatures20 edited by Henry Haverinen
(diff)
1:08 AM Changeset in webkit [64192] by zherczeg@webkit.org
  • 4 edits
    30 adds in trunk

SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
https://bugs.webkit.org/show_bug.cgi?id=42244

Reviewed by Nikolas Zimmermann.

WebCore:

Implementing svgAttributeChanged for SVGFEOffsetElement object.

Tests: svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr.html

svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr.html
svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr.html
svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop.html
svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop.html
svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop.html

  • svg/SVGFEOffsetElement.cpp:

(WebCore::SVGFEOffsetElement::svgAttributeChanged):

  • svg/SVGFEOffsetElement.h:

LayoutTests:

  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop-expected.png: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-dom-dx-attr.html: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-dom-dy-attr.html: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-dom-in-attr.html: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-svgdom-dx-prop.html: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-svgdom-dy-prop.html: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEOffsetElement-svgdom-in-prop.html: Added.
  • svg/dynamic-updates/script-tests/SVGFEOffsetElement-dom-dx-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEOffsetElement-dom-dy-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEOffsetElement-dom-in-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEOffsetElement-svgdom-dx-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEOffsetElement-svgdom-dy-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEOffsetElement-svgdom-in-prop.js: Added.

(executeTest):

1:03 AM Changeset in webkit [64191] by zherczeg@webkit.org
  • 4 edits
    40 adds in trunk

SVGFilterElement & SVGFE*Element don't support dynamic invalidation, when attributes change
https://bugs.webkit.org/show_bug.cgi?id=42244

Reviewed by Nikolas Zimmermann.

WebCore:

Implementing svgAttributeChanged for SVGFEDiffuseLightingElement object.

Tests: svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr.html

svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr.html
svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr.html
svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr.html
svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop.html
svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop.html
svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop.html
svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop.html

  • svg/SVGFEDiffuseLightingElement.cpp:

(WebCore::SVGFEDiffuseLightingElement::svgAttributeChanged):

  • svg/SVGFEDiffuseLightingElement.h:

LayoutTests:

  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop-expected.png: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop-expected.checksum: Added.
  • platform/mac/svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop-expected.png: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-in-attr.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-lighting-color-attr.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-dom-surfaceScale-attr.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-lighting-color-css-prop.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-in-prop.html: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop-expected.txt: Added.
  • svg/dynamic-updates/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop.html: Added.
  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-dom-diffuseConstant-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-dom-in-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-dom-lighting-color-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-dom-surfaceScale-attr.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-lighting-color-css-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-svgdom-diffuseConstant-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-svgdom-in-prop.js: Added.

(executeTest):

  • svg/dynamic-updates/script-tests/SVGFEDiffuseLightingElement-svgdom-surfaceScale-prop.js: Added.

(executeTest):

Note: See TracTimeline for information about the timeline view.