Timeline


and

01/05/09:

23:39 Changeset [39642] by dsmith@webkit.org
  • 3 edits in trunk/WebCore

2009-01-05 David Smith <catfish.man@gmail.com>

Reviewed by Oliver Hunt.

https://bugs.webkit.org/show_bug.cgi?id=23084
Avoid redundant AtomicString conversions

  • dom/Node.cpp: Create an AtomicString early to avoid converting twice (WebCore::Node::getElementsByTagNameNS):
  • dom/QualifiedName.h: Use the appropriate AtomicString constructor instead of converting from a String
22:13 Changeset [39641] by ddkilzer@apple.com
  • 8 edits in trunk/WebKit

WebKit/mac:

2009-01-05 David Kilzer <ddkilzer@apple.com>

Add SPI to enable, disable and check state of WebIconDatabase

Reviewed by Darin Adler & Timothy Hatcher.

Add -[WebIconDatabase isEnabled] and -[WebIconDatabase setEnabled:]
SPI to make it possible to enable, disable and check the state of
the icon database.

  • Misc/WebIconDatabase.mm: (-[WebIconDatabase init]): Extracted code into -_startUpIconDatabase. (-[WebIconDatabase iconForURL:withSize:cache:]): Switched to use -isEnabled instead of -_isEnabled. (-[WebIconDatabase iconURLForURL:]): Ditto. (-[WebIconDatabase retainIconForURL:]): Ditto. (-[WebIconDatabase releaseIconForURL:]): Ditto. (-[WebIconDatabase isEnabled]): Renamed from -_isEnabled in WebInternal category. (-[WebIconDatabase setEnabled:]): Added. Takes care of changing the enabled/disabled state of the icon database. (-[WebIconDatabase removeAllIcons]): Switched to use -isEnabled instead of -_isEnabled. (-[WebIconDatabase _startUpIconDatabase]): Added. Extrated from -init. (-[WebIconDatabase _shutDownIconDatabase]): Added. Remove observers when the icon database is disabled.
  • Misc/WebIconDatabaseInternal.h: Added declarations for -_startUpIconDatabase and -_shutDownIconDatabase.
  • Misc/WebIconDatabasePrivate.h: Added declarations for -isEnabled and -setEnabled:.

WebKit/win:

2009-01-05 David Kilzer <ddkilzer@apple.com>

Add API to enable, disable and check state of WebIconDatabase

Reviewed by Darin Adler & Timothy Hatcher.

Add WebIconDatabase::isEnabled() and WebIconDatabase::setEnabled()
API to make it possible to enable, disable and check the state of
the icon database.

  • Interfaces/IWebIconDatabase.idl: Declared isEnabled() and setEnabled() methods.
  • WebIconDatabase.cpp: (WebIconDatabase::init): Extracted code into startUpIconDatabase(). (WebIconDatabase::startUpIconDatabase): Added. Extracted from init(). (WebIconDatabase::shutDownIconDatabase): Added. Method is empty since there is nothing to do yet on Windows. (isEnabled): Added. (setEnabled): Added.
  • WebIconDatabase.h: Added method declarations.
21:37 Changeset [39640] by simon.fraser@apple.com
  • 4 edits in trunk/WebCore

2009-01-05 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dave Hyatt

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

Add an assertion that clip rects are being used when painting with the same
rootLayer that they were computed with.

Fix two issues detected by the assertion:

RenderLayer::updateClipRects() should not unconditionally update the clip rects
on its parent, but stop when reaching rootLayer (just like calculateClipRects()).

We need to pass the temporaryClipRects flag down through reflection painting
to handle the case of nested reflections.

Also use temporary clip rects in RenderTreeAsText, since that code does not
reset the painting root for transformed layers, so cached clip rects will not
match those used for painting.

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::updateClipRects): (WebCore::RenderLayer::clearClipRects):
  • rendering/RenderLayer.h:
  • rendering/RenderTreeAsText.cpp: (WebCore::writeLayers):
21:15 Changeset [39639] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build

21:12 Changeset [39638] by mrowe@apple.com
  • 2 edits in trunk/WebCore

Fix the build some more.

  • platform/graphics/cairo/AffineTransformCairo.cpp:

(WebCore::TransformationMatrix::TransformationMatrix):

20:20 Changeset [39637] by oliver@apple.com
  • 2 edits in trunk/WebCore

Fix gtk build

20:08 Changeset [39636] by beidson@apple.com
  • 3 edits in trunk/WebKit/mac

2009-01-05 Brady Eidson <beidson@apple.com>

Reviewed by Jon Honeycutt

Expose setting the last-visit-was-failure flag on a history items in preparation for <rdar://problem/6173319>

  • History/WebHistoryItem.mm: (-[WebHistoryItem _setLastVisitWasFailure:]):
  • History/WebHistoryItemPrivate.h:
19:00 Changeset [39635] by dino@apple.com
  • 141 edits
    2 moves in trunk/WebCore

2009-01-05 Dean Jackson <dino@apple.com>

Reviewed by Darin Adler.

Rename AffineTransform to TransformationMatrix in
preparation for future enhancements (non-affine matrices)

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

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.scons:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • WebCoreSources.bkl:
  • platform/graphics/transforms/AffineTransform.cpp: Removed.
  • platform/graphics/transforms/AffineTransform.h: Removed.
  • platform/graphics/transforms/TransformationMatrix.cpp: Copied from WebCore/platform/graphics/transforms/AffineTransform.cpp.
  • platform/graphics/transforms/TransformationMatrix.h: Copied from WebCore/platform/graphics/transforms/AffineTransform.h.
  • lots of other files with s/AffineTransform/TransformationMatrix/g
18:35 Changeset [39634] by dino@apple.com
  • 43 edits
    5 adds in trunk

2008-01-05 Dean Jackson <dino@apple.com>

Reviewed by David Hyatt.

Implement 'pointer-events' for HTML content. This involved
adding a new value 'auto' which behaves as 'visiblePainted'
in SVG content.

Moved the property out of the SVG CSS code and into
the general CSS (both parsing and RenderStyle).

Changes to the hit testing functionality of the Render tree,
specifically the nodeAtPoint methods. Where they used to
test for visibility, they now use a helper function defined
on base classes (RenderObject and InlineBox) that checks both
visibility and pointer-events.

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

Tests: fast/events/pointer-events-2.html

fast/events/pointer-events.html

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSPrimitiveValueMappings.h: (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): (WebCore::CSSPrimitiveValue::operator EPointerEvents):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • css/SVGCSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
  • css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
  • manual-tests/pointer-events.html: Added.
  • rendering/EllipsisBox.cpp: (WebCore::EllipsisBox::nodeAtPoint):
  • rendering/InlineBox.h: (WebCore::InlineBox::visibleToHitTesting):
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::nodeAtPoint):
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::nodeAtPoint):
  • rendering/PointerEventsHitRules.cpp: (WebCore::PointerEventsHitRules::PointerEventsHitRules):
  • rendering/PointerEventsHitRules.h: (WebCore::PointerEventsHitRules::):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::nodeAtPoint):
  • rendering/RenderBox.cpp: (WebCore::RenderBox::nodeAtPoint):
  • rendering/RenderObject.h: (WebCore::RenderObject::visibleToHitTesting):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::nodeAtPoint):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::nodeAtPoint):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::nodeAtPoint):
  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::nodeAtPoint):
  • rendering/TextControlInnerElements.cpp: (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
  • rendering/style/RenderStyle.h: (WebCore::): (WebCore::InheritedFlags::setBitDefaults): (WebCore::InheritedFlags::pointerEvents): (WebCore::InheritedFlags::setPointerEvents): (WebCore::InheritedFlags::initialPointerEvents):
  • rendering/style/RenderStyleConstants.h: (WebCore::):
  • rendering/style/SVGRenderStyle.h: (WebCore::SVGRenderStyle::InheritedFlags::operator==): (WebCore::SVGRenderStyle::setBitDefaults):
  • rendering/style/SVGRenderStyleDefs.h:
  • css/CSSValueKeywords.in:
  • css/SVGCSSValueKeywords.in:
17:50 Changeset [39633] by alice.liu@apple.com
  • 1 edit in trunk/WebCore/DerivedSources.cpp

Build fix from 39625

17:37 Changeset [39632] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Fix Wx build.

17:34 Changeset [39631] by alice.liu@apple.com
  • 4 edits in trunk/JavaScriptCore

2009-01-05 Oliver Hunt <oliver@apple.com>

Windows build fixes

Rubber-stamped by Alice Liu.

  • interpreter/Interpreter.cpp: (JSC::Interpreter::Interpreter):
  • runtime/ByteArray.cpp: (JSC::ByteArray::create):
  • runtime/ByteArray.h:
17:27 Changeset [39630] by andersca@apple.com
  • 3 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Jon Honeycutt.

Pass more information in the property bag passed to embeddedViewWithArguments.


  • Interfaces/IWebUIDelegatePrivate.idl: Declare new keys.


  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::createPlugin): Pass the base URL, MIME type and the containing element to embeddedViewWithArguments.
17:16 Changeset [39629] by andersca@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Darin Adler, Jon Honeycutt.

Add a templatized COMVariant constructor so we can make COMVariants out of
everything that has a COMVariantSetter specialization.


Add a COMVariantSetter specialization for COMVariant.


  • COMVariantSetter.h: (COMVariant::COMVariant):
17:04 Changeset [39628] by pewtermoose@webkit.org
  • 2 edits
    2 adds in trunk/WebKit/win

2009-01-05 Brent Fulgham <bfulgham@gmail.com>

Reviewed by Oliver Hunt.

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

Removes the WebKitGraphics files from the Cairo build, as well
as excluding their link definitions. These are not used outside
of Safari, and should not be part of the 'Redistributable API.'

  • WebKit.vcproj/WebKit.vcproj: Update *_Cairo targets to exclude the WebKitGraphics.cpp/.h files.
  • WebKit.vcproj/WebKit_Cairo.def: Added. File without Safari link definitions.
  • WebKit.vcproj/WebKit_Cairo_debug.def: Added. File without Safari link definitions.
16:19 Changeset [39627] by andersca@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Jon Honeycutt.

Add a simple, memory managed, wrapper around a VARIANT struuct.


  • COMVariantSetter.h: (COMVariant::COMVariant): (COMVariant::~COMVariant): (COMVariant::operator=): (COMVariant::copyTo): (COMVariant::variantType):
16:06 Changeset [39626] by oliver@apple.com
  • 2 edits in trunk/WebCore

Fix Cairo/Gtk build

15:57 Changeset [39625] by oliver@apple.com
  • 23 edits
    1 copy
    1 move
    4 adds
    3 deletes in trunk

CanvasPixelArray performance is too slow
<https://bugs.webkit.org/show_bug.cgi?id=23123>

Reviewed by Gavin Barraclough

JavaScriptCore:
The fix to this is to devirtualise get and put in a manner similar to
JSString and JSArray. To do this I've added a ByteArray implementation
and JSByteArray wrapper to JSC. We can then do vptr comparisons to
devirtualise the calls.

This devirtualisation improves performance by 1.5-2x in my somewhat ad
hoc tests.

WebCore:
Remove the WebCore CanvasPixelArray implementation and replace
CPA usage with JSC::ByteArray. Replace the JSCanvasPixelArray
wrapper with an explicitly instantiated JSByteArray put on the
JSImageData object as an ordinary ReadOnly, DontDelete property.

15:36 Changeset [39624] by adele@apple.com
  • 2 edits in trunk/WebKit/win

2009-01-05 Adele Peterson <adele@apple.com>

Windows build fix.

  • WebCoreSupport/WebChromeClient.cpp:
15:32 Changeset [39623] by andersca@apple.com
  • 3 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Adam Roben.

Make it possible to have per value variant types.


  • COMPropertyBag.h: (::Read): Call variantType here, passing in the value.


(::GetPropertyInfo):
Ditto.


  • COMVariantSetter.h: (COMVariantSetterBase::variantType): Add COMVariantSetterBase, whose variantType implementation just returns the VariantType variable. Make all existing classes inherit from COMVariantSetterBase.
15:31 Changeset [39622] by treat@webkit.org
  • 2 edits in trunk/WebKit/mac

Another blind mac build fix

15:18 Changeset [39621] by treat@webkit.org
  • 2 edits in trunk/WebKit/mac

Blind mac build fix

15:11 Changeset [39620] by treat@webkit.org
  • 2 edits in trunk/WebKit/mac

Fix mac build

15:09 Changeset [39619] by treat@webkit.org
  • 2 edits in trunk/WebKit/win

Fix win build

15:08 Changeset [39618] by treat@webkit.org
  • 2 edits in trunk/WebKit/gtk

Fix build

14:53 Changeset [39617] by treat@webkit.org
  • 26 edits in trunk

Add new API for contentsSizeChanged which Qt will introduce

14:27 Changeset [39616] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-01-05 Anders Carlsson <andersca@apple.com>

Build fix.


  • plugins/PluginView.h: (WebCore::PluginManualLoader::~PluginManualLoader):
14:25 Changeset [39615] by treat@webkit.org
  • 4 edits in trunk

Fix ChangeLogs to reflect work done by Torchmobile

14:02 Changeset [39614] by andersca@apple.com
  • 3 edits in trunk/WebKit/win

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.

Use the ManualLoader class instead of assuming that the manual loader
is a plug-in view.


  • WebCoreSupport/WebFrameLoaderClient.cpp: (WebFrameLoaderClient::WebFrameLoaderClient): (WebFrameLoaderClient::setMainDocumentError): (WebFrameLoaderClient::committedLoad): (WebFrameLoaderClient::finishedLoading): (WebFrameLoaderClient::redirectDataToPlugin):
  • WebCoreSupport/WebFrameLoaderClient.h:
13:46 Changeset [39613] by andersca@apple.com
  • 3 edits in trunk/WebCore

2009-01-05 Anders Carlsson <andersca@apple.com>

Reviewed by Kevin Decker.


Add an abstract PluginManualLoader class and make PluginView inherit from it.


Add some error checking that currently exists in WebKit (but not for long!)


  • plugins/PluginView.cpp: (WebCore::PluginView::didReceiveResponse): (WebCore::PluginView::didReceiveData): (WebCore::PluginView::didFinishLoading): (WebCore::PluginView::didFail):
  • plugins/PluginView.h:
13:33 Changeset [39612] by darin@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

Fix failing set-colors test.

  • fast/canvas/resources/set-colors.js: Change the CMYK test cases to use the black channel only.
  • fast/canvas/set-colors-expected.txt: Updated. The old version I checked in accidentally expected failure for the bug I fixed. Also need new results for the CMYK test cases.
13:14 Changeset [39611] by treat@webkit.org
  • 8 edits in trunk

Fixes QWebFrame::setScrollBarPolicy(..) to actually work. Also happens
to fix 192 layout tests that were previously failing for Qt.

11:53 Changeset [39610] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

Fix platforms that don't have Workers enabled.

  • platform/ThreadGlobalData.cpp: (WebCore::threadGlobalData): Create ThreadGlobalData in two stages, so that EventNames constructor can access the just-created atomic string table. This matches what happens in ThreadSpecific case.
11:50 Changeset [39609] by darin@apple.com
  • 3 edits
    1 copy
    3 adds in trunk

WebCore:

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23109: REGRESSION: Backwards search in a long document matches incorrectly
https://bugs.webkit.org/show_bug.cgi?id=23109

Test: fast/text/find-backwards.html

  • editing/TextIterator.cpp: (WebCore::SearchBuffer::append): Fix incorrect size passed to memcpy. (WebCore::SearchBuffer::search): Handle case where we have an empty buffer but we're at a break; must not try to search because ICU will give us an error. Fix incorrect size passed to memcpy and memmove. (WebCore::findPlainText): Fix case where we found a match and need to search again because we want to find the last match. We need to try again without adding any more text or handling the break before moving on.

LayoutTests:

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23109: REGRESSION: Backwards search in a long document matches incorrectly
https://bugs.webkit.org/show_bug.cgi?id=23109

  • fast/text/find-backwards-expected.txt: Added.
  • fast/text/find-backwards.html: Added.
  • fast/text/resources/TEMPLATE.html: Copied from fast/js/resources/TEMPLATE.html.
  • fast/text/resources/find-backwards.js: Added.
11:45 Changeset [39608] by treat@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build

11:13 Changeset [39607] by ap@webkit.org
  • 2 edits in trunk/WebCore

Suggested by Dave Levin.

Mac release build fix.

  • WebCore.base.exp: Remove ThreadGlobalData::eventNames(), which is now inline.
10:24 Changeset [39606] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-05 Darin Adler <darin@apple.com>

  • dom/Document.cpp: Fix build. Oops again.
10:19 Changeset [39605] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Fix hang whenever following an anchor.

  • dom/Document.cpp: (WebCore::Document::findAnchor): Oops!
10:13 Changeset [39604] by ap@webkit.org
  • 6 edits in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23073
<rdar://problem/6471129> Workers crash on Windows Release builds

JavaScriptCore:

  • wtf/ThreadSpecific.h: (WTF::ThreadSpecific::destroy): Changed to clear the pointer only after data object destruction is finished - otherwise, WebCore::ThreadGlobalData destructor was re-creating the object in order to access atomic string table. (WTF::ThreadSpecific::operator T*): Symmetrically, set up the per-thread pointer before data constructor is called.
  • wtf/ThreadingWin.cpp: (WTF::wtfThreadEntryPoint): Remove a Windows-only hack to finalize a thread - pthreadVC2 is a DLL, so it gets thread detached messages, and cleans up thread specific data automatically. Besides, this code wasn't even compiled in for some time now.

WebCore:

  • platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::ThreadGlobalData):
  • platform/ThreadGlobalData.h: (WebCore::ThreadGlobalData::eventNames): Now that ThreadSpecific sets up the pointer before invoking data constructor, we can initialize EventNames right away.
09:32 Changeset [39603] by darin@apple.com
  • 13 edits in trunk/WebCore

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Bug 23106: HTMLFormCollection::namedItem ignores caseSensitive argument
https://bugs.webkit.org/show_bug.cgi?id=23106

This led me to a bunch of dead code. It turns out that HTML collections
were carrying the case-insensitive code just so they could be used to
find anchors, something we can do more simply and efficiently without
creating a DOM HTMLCollection object.

No behavior change. Just adding a new function findAnchor function and
removing some dead code.

  • dom/Document.cpp: (WebCore::Document::findAnchor): Added.
  • dom/Document.h: Ditto.
  • html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::accessKey): Take and return AtomicString references for better efficiency. (WebCore::HTMLAnchorElement::setAccessKey): Ditto. (WebCore::HTMLAnchorElement::charset): Ditto. (WebCore::HTMLAnchorElement::setCharset): Ditto. (WebCore::HTMLAnchorElement::coords): Ditto. (WebCore::HTMLAnchorElement::setCoords): Ditto. (WebCore::HTMLAnchorElement::setHref): Ditto. (WebCore::HTMLAnchorElement::hreflang): Ditto. (WebCore::HTMLAnchorElement::setHreflang): Ditto. (WebCore::HTMLAnchorElement::name): Ditto. (WebCore::HTMLAnchorElement::setName): Ditto. (WebCore::HTMLAnchorElement::rel): Ditto. (WebCore::HTMLAnchorElement::setRel): Ditto. (WebCore::HTMLAnchorElement::rev): Ditto. (WebCore::HTMLAnchorElement::setRev): Ditto. (WebCore::HTMLAnchorElement::shape): Ditto. (WebCore::HTMLAnchorElement::setShape): Ditto. (WebCore::HTMLAnchorElement::setTarget): Ditto. (WebCore::HTMLAnchorElement::type): Ditto. (WebCore::HTMLAnchorElement::setType): Ditto.
  • html/HTMLAnchorElement.h: Ditto.
  • html/HTMLCollection.cpp: (WebCore::HTMLCollection::checkForNameMatch): Changed argument to an AtomicString and removed the caseSensitive boolean, since we're now always case sensitive. (WebCore::HTMLCollection::namedItem): Ditto. (WebCore::HTMLCollection::nextNamedItem): Ditto.
  • html/HTMLCollection.h: Ditto.
  • html/HTMLFormCollection.cpp: (WebCore::HTMLFormCollection::getNamedItem): Ditto. (WebCore::HTMLFormCollection::getNamedFormItem): Ditto. (WebCore::HTMLFormCollection::nextNamedItemInternal): Ditto. (WebCore::HTMLFormCollection::namedItem): Ditto. (WebCore::HTMLFormCollection::nextNamedItem): Ditto.
  • html/HTMLFormCollection.h: Ditto.
  • html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::namedItem): Ditto.
  • html/HTMLSelectElement.h: Ditto.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::gotoAnchor): Use the new findAnchor function.
  • page/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::internalLinkElement): Ditto.
09:29 Changeset [39602] by darin@apple.com
  • 7 edits
    3 adds in trunk

WebCore:

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Bug 23104: minor mistakes in init functions for animation and transition events
https://bugs.webkit.org/show_bug.cgi?id=23104

Test: fast/events/init-events.html

Also fixed two StorageEvent problems the test case uncovered:

Made document.createEvent("StorageEvent") work.
Allow null values for StorageEvent.oldValue and StorageEvent.newValue.

  • dom/Document.cpp: (WebCore::Document::createEvent): Sorted alphabetically by the name of the event class. Added StorageEvent.
  • dom/UIEvent.idl: Fixed typo in a comment.
  • dom/WebKitAnimationEvent.cpp: (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent): Use all the arguments.
  • dom/WebKitTransitionEvent.cpp: (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent): Ditto.
  • storage/StorageEvent.idl: Use the ConvertNullToNullString keyword on the arguments to initStorageEvent so it can create events with null values for the oldValue and newValue, just like the real storage events. Note that the properties already had ConvertNullStringTo=Null, so this is just the other half of that.

LayoutTests:

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Anders Carlsson.

Bug 23104: minor mistakes in init functions for animation and transition events
https://bugs.webkit.org/show_bug.cgi?id=23104

  • fast/events/init-events-expected.txt: Added.
  • fast/events/init-events.html: Added.
  • fast/events/resources/init-events.js: Added.
09:26 Changeset [39601] by darin@apple.com
  • 192 edits in trunk/WebCore

2009-01-05 Darin Adler <darin@apple.com>

Reviewed by Alexey Proskuryakov.

Bug 23102: turn on unused parameter warnings in WebCore
https://bugs.webkit.org/show_bug.cgi?id=23102

First step: Fix the simple cases where we can just remove an argument name.
Also made a few more things protected and private.

  • many files
09:21 Changeset [39600] by ap@webkit.org
  • 8 edits in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23115
Create a version of ASSERT for use with otherwise unused variables

JavaScriptCore:

  • wtf/Assertions.h: Added ASSERT_UNUSED.
  • jit/ExecutableAllocatorPosix.cpp: (JSC::ExecutablePool::systemRelease):
  • runtime/Collector.cpp: (JSC::Heap::destroy): (JSC::Heap::heapAllocate):
  • runtime/JSNotAnObject.cpp: (JSC::JSNotAnObject::toPrimitive): (JSC::JSNotAnObject::getPrimitiveNumber): (JSC::JSNotAnObject::toBoolean): (JSC::JSNotAnObject::toNumber): (JSC::JSNotAnObject::toString): (JSC::JSNotAnObject::getOwnPropertySlot): (JSC::JSNotAnObject::put): (JSC::JSNotAnObject::deleteProperty): (JSC::JSNotAnObject::getPropertyNames):
  • wtf/TCSystemAlloc.cpp: (TCMalloc_SystemRelease): Use it in some places that used other idioms for this purpose.

WebCore:

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): Use the new ASSERT_UNUSED macro.
09:18 Changeset [39599] by ap@webkit.org
  • 2 edits in trunk/WebCore

Non-Mac build fix.

  • loader/appcache/ApplicationCacheStorage.cpp: Include wtf/StringExtras.h for snprintf.
09:15 Changeset [39598] by treat@webkit.org
  • 2 edits in trunk/WebCore

Remove unnecessary methods from EmptyFrameLoaderClient

00:55 Changeset [39597] by ap@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23077
Make application cache use SQLite built-in user_version

  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::verifySchemaVersion): Changed to track versions with PRAGMA user_version.
  • loader/appcache/ApplicationCacheResource.h: (WebCore::ApplicationCacheResource::): Used the occasion to get rid of the hole in bitmask that was a leftover from opportunistic cache entries.
00:39 Changeset [39596] by dsmith@webkit.org
  • 3 edits in trunk/WebCore

2009-01-04 David Smith <catfish.man@gmail.com>

Reviewed by Oliver Hunt.

Avoid redundant AtomicString conversions

  • dom/Node.cpp: (WebCore::Node::getElementsByTagName): Pass starAtom instead of "*" (WebCore::Node::getElementsByTagNameNS): Take an AtomicString for the namespace URI (WebCore::Node::isDefaultNamespace): Ditto (WebCore::Node::lookupPrefix): Ditto (WebCore::Node::lookupNamespacePrefix): Ditto
  • dom/Node.h: Ditto

01/04/09:

23:25 Changeset [39595] by darin@apple.com
  • 4 edits
    3 adds in trunk

WebCore:

2009-01-04 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

Bug 23105: canvas setFillColor function ignores alpha argument
https://bugs.webkit.org/show_bug.cgi?id=23105

Test: fast/canvas/set-colors.html

  • html/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::setFillColor): Pass alpha value through instead of ignoring it and always passing 1.
  • html/CanvasStyle.cpp: (WebCore::CanvasStyle::applyStrokeColor): Fix spelling of transparent in comments. (WebCore::CanvasStyle::applyFillColor): Ditto.

LayoutTests:

2009-01-04 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

Bug 23105: canvas setFillColor function ignores alpha argument
https://bugs.webkit.org/show_bug.cgi?id=23105

  • fast/canvas/resources/set-colors.js: Added.
  • fast/canvas/set-colors-expected.txt: Added.
  • fast/canvas/set-colors.html: Added.
21:41 Changeset [39594] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-04 Darin Adler <darin@apple.com>

Bug 23086: REGRESSION(r39540/r39541): Windows build fails due to ICU errors
https://bugs.webkit.org/show_bug.cgi?id=23086

  • editing/TextIterator.cpp: Check UCONFIG_NO_COLLATION and don't compile in the new search path if it's 0.
16:18 Changeset [39593] by alice.liu@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-01-04 Alice Liu <alice.liu@apple.com>

<rdar://problem/6341776> Merge m_transitionCount and m_offset in Structure.

Reviewed by Darin Adler.

  • runtime/Structure.cpp: (JSC::Structure::Structure): Remove m_transitionCount (JSC::Structure::addPropertyTransitionToExistingStructure): No need to wait until after the assignment to offset to assert if it's notFound; move it up. (JSC::Structure::addPropertyTransition): Use method for transitionCount instead of m_transitionCount. Remove line that maintains the m_transitionCount. (JSC::Structure::changePrototypeTransition): Remove line that maintains the m_transitionCount. (JSC::Structure::getterSetterTransition): Remove line that maintains the m_transitionCount.
  • runtime/Structure.h: Changed s_maxTransitionLength and m_offset from size_t to signed char. m_offset will never become greater than 64 because the structure transitions to a dictionary at that time. (JSC::Structure::transitionCount): method to replace the data member
13:09 Changeset [39592] by ddkilzer@apple.com
  • 4 edits
    4 adds in trunk

Don't install internal headers in WebKit framework

Reviewed by Darin Adler.

WebKit:

  • WebKit.xcodeproj/project.pbxproj: Remove roles from internal headers so they're not installed.

WebKitTools:

Since WebHTMLRepresentationInternal.h and WebTypesInternal.h are
no longer installed in WebKit.framework/PrivateHeaders, use the
special relationship of DumpRenderTree within the WebKit source
tree to include the internal headers through relative paths.
Created the concept of mac/InternalHeaders to hide the ugly
paths.

  • DumpRenderTree/mac/Configurations/Base.xcconfig: Added mac/InternalHeaders to HEADER_SEARCH_PATHS.
  • DumpRenderTree/mac/InternalHeaders/WebKit/WebHTMLRepresentationInternal.h: Added.
  • DumpRenderTree/mac/InternalHeaders/WebKit/WebTypesInternal.h: Added.
12:14 Changeset [39591] by mitz@apple.com
  • 4 edits in trunk

Fixed change log entry dates.

11:57 Changeset [39590] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Don't install *.idl and *.in files as resources

Reviewed by Oliver Hunt.

Don't install these files as resources in the WebCore framework:

  • WMLAttributeNames.in
  • WMLTagNames.in
  • WorkerContext.idl
  • WorkerLocation.idl
  • WorkerNavigator.idl
  • WebCore.xcodeproj/project.pbxproj: Removed resources.
11:10 Changeset [39589] by simon.fraser@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-04 Simon Fraser <simon.fraser@apple.com>

Fix the expected image to account for a typo fix done on 2008-12-23.

  • platform/mac/fast/transforms/identity-matrix-expected.checksum:
  • platform/mac/fast/transforms/identity-matrix-expected.png:
10:38 Changeset [39588] by simon.fraser@apple.com
  • 3 edits
    4 adds in trunk

2009-01-04 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

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

If an object gets a Layout hint, and the style change will result in
the creation of a RenderLayer, then we need to repaint the old position
of the object. This was done for transform, but we have to test opacity too.

Test: fast/repaint/create-layer-repaint.html

  • rendering/RenderObject.cpp: (WebCore::RenderObject::styleWillChange):
10:24 Changeset [39587] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-04 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23103: Safari's auto-fill no longer works for <select> elements
https://bugs.webkit.org/show_bug.cgi?id=23103
rdar://problem/6472061

  • bindings/objc/DOMHTML.mm: (-[DOMHTMLSelectElement _activateItemAtIndex:]): Implemented this.
10:23 Changeset [39586] by darin@apple.com
  • 4 edits in trunk

Fixed change log entry dates.

10:00 Changeset [39585] by darin@apple.com
  • 2 edits in trunk/JavaScriptCore

2009-01-04 Darin Adler <darin@apple.com>

Reviewed by David Kilzer.

Bug 15114: Provide compile-time assertions for sizeof(UChar), sizeof(DeprecatedChar), etc.
https://bugs.webkit.org/show_bug.cgi?id=15114

  • wtf/unicode/Unicode.h: Assert size of UChar. There is no DeprecatedChar any more.
09:39 Changeset [39584] by treat@webkit.org
  • 4 edits in trunk/WebKit/qt

Add new API to QWebHitTestResult to return a rect for the smallest enclosing
block element of the hit test

09:28 Changeset [39583] by treat@webkit.org
  • 2 edits in trunk/WebKit/win

Make the apple windows port build with the new fixedLayoutSize feature

09:26 Changeset [39582] by treat@webkit.org
  • 2 edits in trunk/WebKit/gtk

Make the gtk port build with the new fixedLayoutSize feature

09:25 Changeset [39581] by treat@webkit.org
  • 9 edits
    3 adds in trunk

Make the qt port build and work with the new fixedLayoutSize feature

09:25 Changeset [39580] by treat@webkit.org
  • 10 edits in trunk/WebCore

Add fixedLayoutSize feature to ScrollView to allow for controlling the
layout beyond the constraint of the current viewports dynamic size

06:26 Changeset [39579] by darin@apple.com
  • 2 edits in trunk/LayoutTests

2009-01-04 Darin Adler <darin@apple.com>

Suggested by Dan Bernstein.

  • platform/mac/editing/selection/move-left-right-expected.txt: Remove WARNING lines that are no longer showing up. Dan said he didn't know why we were seeing those before and why they're gone now, but it's good that they're gone.
06:12 Changeset [39578] by darin@apple.com
  • 2 edits in trunk/LayoutTests

2009-01-03 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23095: REGRESSION: fast/text/find-case-folding.html regression test failing when ICU used for text search
https://bugs.webkit.org/show_bug.cgi?id=23095

  • fast/text/find-case-folding.html: Work around this ICU bug in the test for now. Later we might want to work around it in our search code instead, or in addition, if we can figure out how to do that.

01/03/09:

22:19 Changeset [39577] by weinig@apple.com
  • 3 edits in trunk/JavaScriptCore

2009-01-03 Sam Weinig <sam@webkit.org>

Reviewed by Oliver Hunt.

Change the pcVector from storing native code pointers to storing offsets
from the base pointer. This will allow us to generate the pcVector on demand
for exceptions.

  • bytecode/CodeBlock.h: (JSC::PC::PC): (JSC::getNativePCOffset): (JSC::CodeBlock::getBytecodeIndex):
  • jit/JIT.cpp: (JSC::JIT::privateCompile):
19:22 Changeset [39576] by ddkilzer@apple.com
  • 7 edits in trunk

Bug 23091: Some webarchive http tests intermittently fail due to Connection/Keep-Alive header differences

<https://bugs.webkit.org/show_bug.cgi?id=23091>

Reviewed by Darin Adler.

WebKitTools:

  • DumpRenderTree/mac/DumpRenderTree.mm: (normalizeHTTPResponseHeaderFields): Remove Keep-Alive and Connection headers from webarchive results.

LayoutTests:

Updated test results after removing Keep-Alive and Connection
headers from webarchive tests.

  • http/tests/webarchive/test-css-url-encoding-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-shift-jis-expected.webarchive:
  • http/tests/webarchive/test-css-url-encoding-utf-8-expected.webarchive:
  • http/tests/webarchive/test-preload-resources-expected.webarchive:
12:00 Applications using WebKit edited by andrejohn.mas@gmail.com
formatting correction (diff)
11:59 Applications using WebKit edited by andrejohn.mas@gmail.com
Added Google Chrome (diff)
11:52 Changeset [39575] by zecke@webkit.org
  • 7 edits in trunk/WebKit/gtk

[GTK] Fix the reference counting of WebKitWebFrames

The ownership is the following: WebKitWebView owns a WebCore::Page.
WebKitWebView is creating one WebKitWebFrame which will be the
mainFrame of the WebCore::Page (having the reference on the Frame).

The FrameLoaderClient has the reference of the WebKitWebFrame for
the main frame and also any other frame. This means when the
WebCore::Frame goes away the FrameLoaderClient will go away which
will normally remove the last reference of the WebKitWebFrame. Because
an API user might have g_object_ref'ed the WebKitWebFrame null
checks had to be added to WebKitWebFrame.

For WebCore::Frames created by the FrameLoaderClient the ownership
will be passed down to the FrameTree, the WebKitWebFrame is not holding
a reference to the WebCore::Frame.

Do not g_object_unref the mainFrame in the destructor of the
WebKitWebFrame as this will happen from within the WebCore::Page
destruction. Do not hold a reference to the WebCore::Frame (circle) in
WebKitWebFrame, add null checks as the WebCore::Frame might have gone
away. Do not keep track of the FrameLoaderClient in the private
structures as it was mostly unusued.

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

08:48 Changeset [39574] by rwlbuis@webkit.org
  • 4 edits
    4 adds in trunk

Reviewed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=22660
SVG elements that are moved are nor fully invalidated/earsed

Mark the SVG root as needing a layout when its position changes.

Tests: svg/custom/circle-move-invalidation.svg

00:21 Changeset [39573] by sfalken@apple.com
  • 2 edits in trunk/WebCore

Build fix.

  • loader/FrameLoader.h:

01/02/09:

21:23 Changeset [39572] by oliver@apple.com
  • 2 edits in trunk/JavaScriptCore

Build fix.

20:36 Changeset [39571] by oliver@apple.com
  • 7 edits
    3 adds in trunk

Build fix. Include FrameState.h

19:08 Changeset [39570] by zecke@webkit.org
  • 2 edits in trunk/WebKit/gtk

Build fix. Include FrameState.h

18:35 Changeset [39569] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-02 Cary Clark <caryclark@google.com>

Reviewed and landed by Darin Adler.

Bug 22963: write icons before reading them
https://bugs.webkit.org/show_bug.cgi?id=22963

Reverse the order in the icon database main thread loop to
write the pending icons to the database before trying
to read any requested icons. This ensures that a requested icon
has the correct data when read.


  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::syncThreadMainLoop):
18:33 Changeset [39568] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-01-02 Darin Adler <darin@apple.com>

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadItem): One small thing I forgot in my last check-in. This cuts down on the number of hash table operations during loading.
18:27 Changeset [39567] by darin@apple.com
  • 3 edits in trunk/WebCore

2009-01-02 Dmitry Titov <dimich@chromium.org>

Reviewed and landed by Darin.

https://bugs.webkit.org/show_bug.cgi?id=23025
DOMTimer lifetime cleanup: timeoutMap methods on Document now do not delete the timer.
Instead, all 3 places that delete timers do it directly calling 'delete' and then timer's dtor removes the ID from the timeoutMap.
Note that in case the context is destroyed and timers are deleted at once, the check in ~DOMTimer() prevents
unnecessary HashMap remove in case the Document is being destroyed.

  • bindings/js/DOMTimer.cpp: (WebCore::DOMTimer::~DOMTimer): removes the id from the timeoutMap. (WebCore::DOMTimer::install): (WebCore::DOMTimer::removeById): simply uses 'delete this'. (WebCore::DOMTimer::fired): same. (WebCore::DOMTimer::contextDestroyed): same.
  • dom/Document.cpp: (WebCore::Document::removeTimeout): now it only removes the id from the map, does not delete the timer.
18:04 Changeset [39566] by darin@apple.com
  • 10 edits in trunk

WebCore:

2009-01-02 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears
inside its web view when resizing its window
https://bugs.webkit.org/show_bug.cgi?id=23072
rdar://problem/6368028

The first attempt at fixing this did not work.
This time I was able to reproduce the bug and test the fix.

Bug 11212: REGRESSION: Activity window doesn't always list all files until refresh
https://bugs.webkit.org/show_bug.cgi?id=11212
rdar://problem/4959702

I had to fix this second bug because otherwise the WebKit code to trigger the first
fix didn't run.

Also fixes memory use that kept growing as we maintained a set of all URLs loaded in
a particular frame. Bad idea! It's bad enough that we do it for each document, but
the old version kept the set around forever as you moved from one document to the next.

  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseMappedAttribute): Change this so that we allow turning off scrolling when the quirk is enabled. We just don't allow turning it on. This fixes one of the two problems with the initial patch; the other fix is in WebKit.
  • loader/DocumentLoader.h: Moved didTellClientAboutLoad and haveToldClientAboutLoad here from FrameLoader. The old way meant that a given frame would forever remember the URL of any resources loaded in that frame and never send any "loaded from cache" client calls about those URLs.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadResourceSynchronously): Removed call to didTellCientAboutLoad. This is now handled by dispatchWillSendRequest, which is safer since that's the actual function that tells the client about the load. (WebCore::FrameLoader::loadedResourceFromMemoryCache): Changed calls to haveToldClientAboutLoad and didTellClientAboutLoad to call the document loader. Also removed the call in the case where we don't load from the cache, since dispatchWillSendRequest now takes care of it. (WebCore::FrameLoader::dispatchWillSendRequest): Put calls to didTellClientAboutLoad here. Call it both on the URL we pass in and the URL the client returns; we won't tell the client about either if it's loaded from the memory cache.
  • loader/FrameLoader.h: Removed didTellClientAboutLoad, haveToldClientAboutLoad, and m_urlsClientKnowsAbout.
  • loader/SubresourceLoader.cpp: Removed unneeded load function that called didTellClientAboutLoad. That's now taken care of in dispatchWillSendRequest.
  • loader/SubresourceLoader.h: Removed load function. Also made all members private except for create and clearClient.

WebKit/mac:

2009-01-02 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears
inside its web view when resizing its window
https://bugs.webkit.org/show_bug.cgi?id=23072
rdar://problem/6368028

The first attempt at fixing this did not work.
This time I was able to reproduce the bug and test the fix.

  • WebCoreSupport/WebFrameLoaderClient.mm: (applyAppleDictionaryApplicationQuirkNonInlinePart): Changed the arguments and function names around a bit to make even less code at the call site. (applyAppleDictionaryApplicationQuirk): Put the check for whether this is the Dictionary application in here. (WebFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache): Put a call to applyAppleDictionaryApplicationQuirk here. This was a case I had missed before, when the script is cached. This fixes one of the two problems with the initial patch; the other fix is in WebCore. (WebFrameLoaderClient::dispatchWillSendRequest): Changed the applyAppleDictionaryApplicationQuirk call here to work the new simpler way.
  • WebView/WebView.mm: Had to add an include due to changes in WebCore header includes.
17:13 Changeset [39565] by mitz@apple.com
  • 7 edits in trunk/LayoutTests/platform/mac/fast

Set the svn:mime-type property of recently-added PNG files to image/png.

17:06 Changeset [39564] by simon.fraser@apple.com
  • 3 edits
    5 adds in trunk

2009-01-02 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

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

Fix GIF animation by ensuring that the signature of
startAnimation() in the base class matches the method in BitmapImage.

Test: fast/backgrounds/animated-gif-as-background.html

  • platform/graphics/Image.h: (WebCore::Image::startAnimation):
16:25 Changeset [39563] by dsmith@webkit.org
  • 14 edits
    2 adds in trunk

JavaScriptCore:

2009-01-02 David Smith <catfish.man@gmail.com>

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=22699
Enable NodeList caching for getElementsByTagName

  • wtf/HashFunctions.h: Moved the definition of PHI here and renamed to stringHashingStartValue

WebCore:

2009-01-02 David Smith <catfish.man@gmail.com>

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=22699
Enable NodeList caching for getElementsByTagName


test: fast/dom/getelementsbytagnamens-mixed-namespaces.html

  • dom/Document.cpp: (WebCore::FormElementKeyHash::hash): Use WTF::stringHashingStartValue
  • dom/Node.cpp: (WebCore::Node::getElementsByTagNameNS): Ensure rare data and add a node list cache (WebCore::NodeListsNodeData::invalidateCaches): Invalidate the tag name node list cache as well as the others (WebCore::NodeListsNodeData::isEmpty): Check the tag name node list cache as well as the others
  • dom/NodeRareData.h: Add m_tagNodeListCaches
  • dom/QualifiedName.cpp:
  • dom/QualifiedName.h: Move QNameHash to the header, make it work on QualifiedNames, and rename to QualifiedNameHash
  • dom/StyledElement.cpp: (WebCore::MappedAttributeHash::hash): Use WTF::stringHashingStartValue
  • dom/TagNodeList.cpp: (WebCore::TagNodeList::TagNodeList): Add a NodeList cache argument
  • dom/TagNodeList.h: (WebCore::TagNodeList::create): Add a NodeList cache argument
  • platform/text/StringHash.h: (WebCore::CaseFoldingHash::hash): Use WTF::stringHashingStartValue
  • platform/text/TextEncodingRegistry.cpp: (WebCore::TextEncodingNameHash::hash): Use WTF::stringHashingStartValue

LayoutTests:

2009-01-02 David Smith <catfish.man@gmail.com>

Reviewed by Darin Adler.


https://bugs.webkit.org/show_bug.cgi?id=22699
Enable NodeList caching for getElementsByTagName


  • fast/dom/getelementsbytagnamens-mixed-namespaces-expected.txt: Added.
  • fast/dom/getelementsbytagnamens-mixed-namespaces.html: Added.
16:02 Changeset [39562] by eric.carlson@apple.com
  • 3 edits
    2 adds in trunk

2009-01-02 Eric Carlson <eric.carlson@apple.com>

Reviewed by Darin Adler

Fix for https://bugs.webkit.org/show_bug.cgi?id=23066 & <rdar://problem/6028417>
Full Page Zoom: a <video> element that doesn't include width/height attribute does not scale

  • rendering/RenderVideo.cpp: (WebCore::RenderVideo::calcReplacedWidth): Multiply aspect ratio width by style()->effectiveZoom() (WebCore::RenderVideo::calcReplacedHeight): Multiply aspect ratio height by style()->effectiveZoom()

2009-01-02 Eric Carlson <eric.carlson@apple.com>

Reviewed by Darin Adler

https://bugs.webkit.org/show_bug.cgi?id=23066 & <rdar://problem/6028417>
Full Page Zoom: a <video> element that doesn't include width/height attribute does not scale


Add test for <video> zoom with and without width/height attributes

  • media/video-zoom.html: Added.
  • platform/mac/media/video-zoom-expected.txt: Added.
14:19 Changeset [39561] by ddkilzer@apple.com
  • 4 edits in trunk/WebCore

BUILD FIX (r39552): Add mediaControls.css to other build files

  • GNUmakefile.am:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
13:52 Changeset [39560] by ddkilzer@apple.com
  • 2 edits in trunk/WebCore

Try to fix Wx build after r39427

  • platform/graphics/wx/PathWx.cpp: (WebCore::Path::strokeBoundingRect): Added stub.
13:47 Changeset [39559] by ap@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Adele Peterson.

<rdar://problem/6471356> Failed assertion on quit

  • platform/ThreadGlobalData.cpp: (WebCore::ThreadGlobalData::~ThreadGlobalData): Only assert that empty string are all removed on secondary threads.
13:25 Changeset [39558] by ddkilzer@apple.com
  • 2 edits in trunk/JavaScriptCore

Attempt to fix Qt Linux build after r39553

  • wtf/RandomNumberSeed.h: Include <sys/time.h> for gettimeofday(). Include <sys/types.h> and <unistd.h> for getpid().
13:22 Changeset [39557] by simon.fraser@apple.com
  • 3 edits in trunk/WebCore

2009-01-02 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

Use an OwnPtr for m_chromeClient.

  • svg/graphics/SVGImage.cpp: (WebCore::SVGImage::~SVGImage): (WebCore::SVGImage::dataChanged):
  • svg/graphics/SVGImage.h:
13:10 Changeset [39556] by ddkilzer@apple.com
  • 21 edits in trunk

Bug 23081: These files are no longer part of the KDE libraries

<https://bugs.webkit.org/show_bug.cgi?id=23081>

Reviewed by Darin Adler.

Removed "This file is part of the KDE libraries" comment from
source files. Added or updated Apple copyrights as well.

JavaScriptCore:

  • parser/Lexer.h:
  • wtf/HashCountedSet.h:
  • wtf/RetainPtr.h:
  • wtf/VectorTraits.h:

WebCore:

No tests since there are only changes to comments.

  • bridge/testbindings.cpp:
  • html/HTMLEntityNames.gperf:
  • loader/Cache.h:
  • loader/CachedCSSStyleSheet.h:
  • loader/CachedResourceClient.h:
  • loader/CachedResourceClientWalker.cpp:
  • loader/CachedResourceClientWalker.h:
  • loader/CachedScript.cpp:
  • loader/CachedScript.h:
  • loader/CachedXBLDocument.cpp:
  • loader/CachedXBLDocument.h:
  • loader/CachedXSLStyleSheet.cpp:
  • loader/CachedXSLStyleSheet.h:
  • rendering/GapRects.h:
  • xml/XMLSerializer.cpp:
13:04 Changeset [39555] by simon.fraser@apple.com
  • 30 edits
    24 adds in trunk

2009-01-02 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

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

Repaints inside of an SVGImage were thrown on the floor,
which broke incremental painting due to loading, or SVG animation.
Fix this by assigning the SVGImage a ChromeClient subclass that passes
along repaints via a new method on ImageObserver, which also takes
a rect parameter for the changed rect, allowing incremental repaints.
Fix RenderImage::imageChanged to take advantage of this changedRect to
only repaint the changed parts of the image.

This also enables incremental painting for canvas-as-image, so
add tests for that too.

Tests: fast/backgrounds/animated-svg-as-background.html

fast/backgrounds/animated-svg-as-mask.html
fast/canvas/canvas-as-image-incremental-repaint.html
fast/canvas/canvas-as-image.html
fast/images/animated-svg-as-image.html

12:59 Changeset [39554] by ddkilzer@apple.com
  • 38 edits in trunk/JavaScriptCore

Bug 23080: Remove last vestiges of KJS references

<https://bugs.webkit.org/show_bug.cgi?id=23080>

Reviewed by Darin Adler.

Also updated Apple copyright statements.

  • DerivedSources.make: Changed bison "kjsyy" prefix to "jscyy".
  • GNUmakefile.am: Ditto.
  • JavaScriptCore.pri: Ditto. Also changed KJSBISON to JSCBISON and kjsbison to jscbison.
  • JavaScriptCoreSources.bkl: Changed JSCORE_KJS_SOURCES to JSCORE_JSC_SOURCES.
  • jscore.bkl: Ditto.
  • create_hash_table: Updated copyright and removed old comment.
  • parser/Grammar.y: Changed "kjsyy" prefix to "jscyy" prefix.
  • parser/Lexer.cpp: Ditto. Also changed KJS_DEBUG_LEX to JSC_DEBUG_LEX. (jscyylex): (JSC::Lexer::lex):
  • parser/Parser.cpp: Ditto. (JSC::Parser::parse):
  • pcre/dftables: Changed "kjs_pcre_" prefix to "jsc_pcre_".
  • pcre/pcre_compile.cpp: Ditto. (getOthercaseRange): (encodeUTF8): (compileBranch): (calculateCompiledPatternLength):
  • pcre/pcre_exec.cpp: Ditto. (matchRef): (getUTF8CharAndIncrementLength): (match):
  • pcre/pcre_internal.h: Ditto. (toLowerCase): (flipCase): (classBitmapForChar): (charTypeForChar):
  • pcre/pcre_tables.cpp: Ditto.
  • pcre/pcre_ucp_searchfuncs.cpp: Ditto. (jsc_pcre_ucp_othercase):
  • pcre/pcre_xclass.cpp: Ditto. (getUTF8CharAndAdvancePointer): (jsc_pcre_xclass):
  • runtime/Collector.h: Updated header guards using the clean-header-guards script.
  • runtime/CollectorHeapIterator.h: Added missing header guard.
  • runtime/Identifier.h: Updated header guards.
  • runtime/JSFunction.h: Fixed end-of-namespace comment.
  • runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::reset): Renamed "kjsprint" debug function to "jscprint". Changed implementation method from globalFuncKJSPrint() to globalFuncJSCPrint().
  • runtime/JSGlobalObjectFunctions.cpp: (JSC::globalFuncJSCPrint): Renamed from globalFuncKJSPrint().
  • runtime/JSGlobalObjectFunctions.h: Ditto.
  • runtime/JSImmediate.h: Updated header guards.
  • runtime/JSLock.h: Ditto.
  • runtime/JSType.h: Ditto.
  • runtime/JSWrapperObject.h: Ditto.
  • runtime/Lookup.h: Ditto.
  • runtime/Operations.h: Ditto.
  • runtime/Protect.h: Ditto.
  • runtime/RegExp.h: Ditto.
  • runtime/UString.h: Ditto.
  • tests/mozilla/js1_5/Array/regress-157652.js: Changed "KJS" reference in comment to "JSC".
  • wrec/CharacterClassConstructor.cpp: Change "kjs_pcre_" function prefixes to "jsc_pcre_". (JSC::WREC::CharacterClassConstructor::put): (JSC::WREC::CharacterClassConstructor::flush):
  • wtf/unicode/Unicode.h: Change "KJS_" header guard to "WTF_".
  • wtf/unicode/icu/UnicodeIcu.h: Ditto.
  • wtf/unicode/qt4/UnicodeQt4.h: Ditto.
12:17 Changeset [39553] by oliver@apple.com
  • 3 edits in trunk/JavaScriptCore

Make randomNumber generate 253 values instead of 232 (or 231 for rand() platforms)

Reviewed by Maciej Stachowiak

10:33 Changeset [39552] by eric.carlson@apple.com
  • 5 edits
    1 add in trunk/WebCore

2009-01-02 Eric Carlson <eric.carlson@apple.com>

Reviewed by Darin Adler

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

Pull media controls css out of html4.css into separate file. Don't generate
wml, svg, or media css globals unless the feature is enabled.

  • DerivedSources.make:

Don't include css for unused features.

  • WebCore.xcodeproj/project.pbxproj:

include mediaControls.css

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::styleForElement):

don't parse or add media css unless VIDEO feature is enabled and the target
element is video or audio

  • css/html4.css:

moved media controls css to mediaControls.css

  • css/mediaControls.css: Added.
10:11 Changeset [39551] by ddkilzer@apple.com
  • 2 edits in trunk/JavaScriptCore

Remove declaration for JSC::Identifier::initializeIdentifierThreading()

Reviewed by Alexey Proskuryakov.

  • runtime/Identifier.h: (JSC::Identifier::initializeIdentifierThreading): Removed declaration since the implementation was removed in r34412.
09:44 Changeset [39550] by ap@webkit.org
  • 2 edits
    6 adds in trunk/LayoutTests

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23076
Add tests for application cache manifest parse failures

  • http/tests/appcache/resources/.htaccess:
  • http/tests/appcache/resources/wrong-content-type.manifest: Added.
  • http/tests/appcache/resources/wrong-signature.manifest: Added.
  • http/tests/appcache/wrong-content-type-expected.txt: Added.
  • http/tests/appcache/wrong-content-type.html: Added.
  • http/tests/appcache/wrong-signature-expected.txt: Added.
  • http/tests/appcache/wrong-signature.html: Added.
07:18 Changeset [39549] by cwzwarich@webkit.org
  • 2 edits in trunk/WebKit/mac

2009-01-02 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin Adler.

Bug 23060: REGRESSION (r38629): Cannot scroll a WebHTMLView using Home/End/Page up/Page down
<https://bugs.webkit.org/show_bug.cgi?id=23060>
<rdar://problem/6467830>

After r38629, all keyboard events get sent by Editor to the EditorClient, even
if the selection is not editable. If the event's command is unsupported by
WebHTMLView, WebHTMLView mistakenly thinks that the event was handled when it
was not. When using the page up / page down keys, the events generated are of
the form scrollPageUp rather than movePageUp, so they are unsupported by
WebHTMLView and cause this bug to occur.

  • WebView/WebHTMLView.mm: (-[WebHTMLView doCommandBySelector:]):
03:12 Changeset [39548] by ap@webkit.org
  • 8 edits
    4 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23022
Fix multiple issues with appcache online whitelist handling

Test: http/tests/appcache/online-whitelist.html

  • loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::isURLInOnlineWhitelist): Test whitelist entries as prefixes, making it possible to use them for CGI invocation (as required by HTML5).
  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache): Re-ordered checks, so that resources that are cached, but are also listed in online whitelist are loaded from the cache. This is required by HTML5, although Firefox doesn't match.
  • loader/appcache/ManifestParser.cpp: (WebCore::parseManifest):
  • loader/appcache/ManifestParser.h:
  • loader/appcache/ApplicationCache.h: (WebCore::ApplicationCache::onlineWhitelist):
  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::store): (WebCore::ApplicationCacheStorage::loadCache): Changed online whitelist to be a vector of URLs, which is better suited for the new algorithm.
01:27 Changeset [39547] by darin@apple.com
  • 10 edits in trunk

WebCore:

2009-01-02 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears inside its web view when resizing its window
https://bugs.webkit.org/show_bug.cgi?id=23072
rdar://problem/6368028

  • WebCore.base.exp: Updated.
  • WebCore.xcodeproj/project.pbxproj: Mark HTMLHeadElement.h Private so it can be used in WebKit.
  • dom/Document.cpp: (WebCore::Document::Document): Initialize m_frameElementsShouldIgnoreScrolling to false.
  • dom/Document.h: Added setFrameElementsShouldIgnoreScrolling, frameElementsShouldIgnoreScrolling, and m_frameElementsShouldIgnoreScrolling.
  • html/HTMLFrameElementBase.cpp: (WebCore::HTMLFrameElementBase::parseMappedAttribute): Don't allow changes to the scrolling attribute to affect the scrolling mode if frameElementsShouldIgnoreScrolling() returns true. This is only triggered on Mac OS X when running the Dictionary application.

WebKit:

2009-01-02 Darin Adler <darin@apple.com>

  • StringsNotToBeLocalized.txt: Updated.

WebKit/mac:

2009-01-02 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

Bug 23072: REGRESSION (r37371): In the Dictionary application, scroll bar appears inside its web view when resizing its window
https://bugs.webkit.org/show_bug.cgi?id=23072
rdar://problem/6368028

  • WebCoreSupport/WebFrameLoaderClient.mm: (isAppleDictionaryApplication): Added. (applyAppleDictionaryApplicationQuirk): Added. Under the right conditions, sets a flag to ask HTMLFrameElementBase to ignore the scrolling attribute. (WebFrameLoaderClient::dispatchWillSendRequest): Call the two functions above to apply the quirk when the relevant script is loaded.
01:25 Changeset [39546] by ap@webkit.org
  • 17 edits
    4 adds in trunk

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=23036
<rdar://problem/6451666> Implement AppCache fallback entries (23036)

Test: http/tests/appcache/fallback.html

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::loadResourceSynchronously): Use fallback entries if normal loading fails.
  • loader/DocumentLoader.cpp: (WebCore::DocumentLoader::shouldLoadResourceFromApplicationCache): Do not prevent normal loading for resources that match fallback namespaces - they are only loaded from the cache if that fails. (WebCore::DocumentLoader::getApplicationCacheFallbackResource): Get a fallback entry for resource from associated appcache, or from passed in one, if any. (WebCore::DocumentLoader::scheduleLoadFallbackResourceFromApplicationCache): If a fallback entry for resourse exists, add it to pending substitute loads.
  • loader/DocumentLoader.h: Added new functions for loading fallback data for resources.
  • loader/ResourceLoader.h:
  • loader/ResourceLoader.cpp: (WebCore::ResourceLoader::scheduleLoadFallbackResourceFromApplicationCache): This function is called when normal loading fails (which includes network failures, 4xx and 5xx responses, and cross-origin redirects) to load appcache fallback data instead. It can use either the cache that is associated with the browsing context, or a custom one if association is yet to take place. (WebCore::ResourceLoader::willSendRequest): Try using fallback data. (WebCore::ResourceLoader::didReceiveResponse): Ditto. (WebCore::ResourceLoader::didFail): Ditto.
  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::didReceiveResponse): Locate an appropriate cache and load fallback data from it if loading fails. The browsing context may still be associated with its previous document here, so the cache to load from must be passed explicitly. (WebCore::MainResourceLoader::didFail): Ditto. (WebCore::MainResourceLoader::load): Remove unnecessary check and FIXME.
  • loader/appcache/ApplicationCache.cpp: (WebCore::ApplicationCache::setFallbackURLs): (WebCore::ApplicationCache::urlMatchesFallbackNamespace):
  • loader/appcache/ApplicationCache.h: (WebCore::ApplicationCache::fallbackURLs):
  • loader/appcache/ApplicationCacheStorage.cpp: (WebCore::ApplicationCacheStorage::cacheGroupForURL): (WebCore::ApplicationCacheStorage::fallbackCacheGroupForURL): (WebCore::ApplicationCacheStorage::store): (WebCore::ApplicationCacheStorage::loadCache): (WebCore::ApplicationCacheStorage::storeCopyOfCache):
  • loader/appcache/ApplicationCacheStorage.h:
  • loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::fallbackCacheForMainRequest): (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
  • loader/appcache/ApplicationCacheGroup.h: Implement fallback map saving and loading, pass it to the cache.
  • loader/appcache/ManifestParser.h: Use a correct data structure for fallback map - keys are matched by prefix, so HAshMap cannot be used.
  • loader/appcache/ManifestParser.cpp: (WebCore::parseManifest): Fix bugs in fallback section parsing.

01/01/09:

23:49 Changeset [39545] by oliver@apple.com
  • 2 edits in trunk/WebCore

<rdar://problem/6450530> WebCore::FontPlatformData should not leak

Reviewed by Dan Bernstein.

Whoops, previous patch should also have fixed the font referencing in
the constructor.

23:46 Changeset [39544] by oliver@apple.com
  • 2 edits in trunk/WebCore

<rdar://problem/6450530> WebCore::FontPlatformData should not leak

Reviewed by Dan Bernstein.

Make sure we only adopt the new font, rather than re-referencing (and so leaking).

22:09 Changeset [39543] by darin@apple.com
  • 3 edits in trunk/LayoutTests

2009-01-01 Darin Adler <darin@apple.com>

Add one more String.replace test case that I should have included in that last check-in.

  • fast/js/resources/string-replace-3.js: Added test case that covers more of the cases where $0-$99 are used but are actually valid.
  • fast/js/string-replace-3-expected.txt: Added new result.
21:56 Changeset [39542] by darin@apple.com
  • 5 edits in trunk

JavaScriptCore:

2009-01-01 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

String.replace does not support $& replacement metacharacter when search term is not a RegExp
<https://bugs.webkit.org/show_bug.cgi?id=21431>
<rdar://problem/6274993>

Test: fast/js/string-replace-3.html

  • runtime/StringPrototype.cpp: (JSC::substituteBackreferences): Added a null check here so we won't try to handle $$-$9 backreferences when the search term is a string, not a RegExp. Added a check for 0 so we won't try to handle $0 or $00 as a backreference. (JSC::stringProtoFuncReplace): Added a call to substituteBackreferences.

LayoutTests:

2009-01-01 Darin Adler <darin@apple.com>

Reviewed by Oliver Hunt.

String.replace does not support $& replacement metacharacter when search term is not a RegExp
<https://bugs.webkit.org/show_bug.cgi?id=21431>
<rdar://problem/6274993>

  • fast/js/resources/string-replace-3.js: Added test cases to cover replace with non-regexp and to cover "$0" and "$00".
  • fast/js/string-replace-3-expected.txt: Added new results.
20:47 Changeset [39541] by darin@apple.com
  • 3 edits
    1 delete in trunk

WebCore:

2009-01-01 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23071: REGRESSION (r39536): New test failures after committing patch in bug 23051 (ICU search)
https://bugs.webkit.org/show_bug.cgi?id=23071

Also fix some things that Dan suggested during review of the ICU search patch that I forgot
the first time around.

  • editing/TextIterator.cpp: Use ICU search on all platforms that use ICU, now that we've double checked it works everywhere, removing HAVE_ICU_SEARCH entirely. Removed unused m_atBreak data member from the non-ICU code path. (WebCore::TextIterator::TextIterator): Move null check up. (WebCore::TextIterator::handleTextBox): Fix mistake that made the iterator include collapsed whitespace. This was left over from an earlier version of the patch. (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Move null check up.

LayoutTests:

2009-01-01 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Turn on the regression test for ICU search on Mac OS X Tiger too.
It was already on for Windows (by accident, failing), but now WebCore has been changed
so it should work fine on all platforms using ICU, which includes both of those.

  • platform/mac-tiger/editing/execCommand: Removed.
  • platform/mac-tiger/editing/execCommand/findString-diacriticals-expected.txt: Removed.
19:06 Changeset [39540] by barraclough@apple.com
  • 9 edits in trunk/JavaScriptCore

2009-01-01 Gavin Barraclough <barraclough@apple.com>

Reviewed by Darin Adler.

Allow 32-bit integers to be stored in JSImmediates, on x64-bit.
Presently the top 32-bits of a 64-bit JSImmediate serve as a sign extension of a 31-bit
int stored in the low word (shifted left by one, to make room for a tag). In the new
format, the top 31-bits serve as a sign extension of a 32-bit int, still shifted left by
one.

The new behavior is enabled using a flag in Platform.h, 'WTF_USE_ALTERNATE_JSIMMEDIATE'.
When this is set the constants defining the range of ints allowed to be stored as
JSImmediate values is extended. The code in JSImmediate.h can safely operate on either
format. This patch updates the JIT so that it can also operate with the new format.

~2% progression on x86-64, with & without the JIT, on sunspider & v8 tests.

  • assembler/MacroAssembler.h: (JSC::MacroAssembler::addPtr): (JSC::MacroAssembler::orPtr): (JSC::MacroAssembler::or32): (JSC::MacroAssembler::rshiftPtr): (JSC::MacroAssembler::rshift32): (JSC::MacroAssembler::subPtr): (JSC::MacroAssembler::xorPtr): (JSC::MacroAssembler::xor32): (JSC::MacroAssembler::move): (JSC::MacroAssembler::compareImm64ForBranch): (JSC::MacroAssembler::compareImm64ForBranchEquality): (JSC::MacroAssembler::jePtr): (JSC::MacroAssembler::jgePtr): (JSC::MacroAssembler::jlPtr): (JSC::MacroAssembler::jlePtr): (JSC::MacroAssembler::jnePtr): (JSC::MacroAssembler::jnzSubPtr): (JSC::MacroAssembler::joAddPtr): (JSC::MacroAssembler::jzSubPtr):
  • assembler/X86Assembler.h: (JSC::X86Assembler::addq_rr): (JSC::X86Assembler::orq_ir): (JSC::X86Assembler::subq_ir): (JSC::X86Assembler::xorq_rr): (JSC::X86Assembler::sarq_CLr): (JSC::X86Assembler::sarq_i8r): (JSC::X86Assembler::cmpq_ir):
  • jit/JIT.cpp: (JSC::JIT::compileOpStrictEq): (JSC::JIT::privateCompileMainPass): (JSC::JIT::privateCompileSlowCases): (JSC::JIT::privateCompileCTIMachineTrampolines):
  • jit/JIT.h:
  • jit/JITArithmetic.cpp: (JSC::JIT::compileFastArith_op_lshift): (JSC::JIT::compileFastArithSlow_op_lshift): (JSC::JIT::compileFastArith_op_rshift): (JSC::JIT::compileFastArithSlow_op_rshift): (JSC::JIT::compileFastArith_op_bitand): (JSC::JIT::compileFastArithSlow_op_bitand): (JSC::JIT::compileFastArith_op_mod): (JSC::JIT::compileFastArithSlow_op_mod): (JSC::JIT::compileFastArith_op_add): (JSC::JIT::compileFastArithSlow_op_add): (JSC::JIT::compileFastArith_op_mul): (JSC::JIT::compileFastArithSlow_op_mul): (JSC::JIT::compileFastArith_op_post_inc): (JSC::JIT::compileFastArithSlow_op_post_inc): (JSC::JIT::compileFastArith_op_post_dec): (JSC::JIT::compileFastArithSlow_op_post_dec): (JSC::JIT::compileFastArith_op_pre_inc): (JSC::JIT::compileFastArithSlow_op_pre_inc): (JSC::JIT::compileFastArith_op_pre_dec): (JSC::JIT::compileFastArithSlow_op_pre_dec): (JSC::JIT::compileBinaryArithOp):
  • jit/JITInlineMethods.h: (JSC::JIT::getConstantOperand): (JSC::JIT::getConstantOperandImmediateInt): (JSC::JIT::isOperandConstantImmediateInt): (JSC::JIT::isOperandConstant31BitImmediateInt): (JSC::JIT::emitFastArithDeTagImmediate): (JSC::JIT::emitFastArithDeTagImmediateJumpIfZero): (JSC::JIT::emitFastArithReTagImmediate): (JSC::JIT::emitFastArithImmToInt): (JSC::JIT::emitFastArithIntToImmNoCheck):
  • runtime/JSImmediate.h: (JSC::JSImmediate::isPositiveNumber): (JSC::JSImmediate::isNegative): (JSC::JSImmediate::rightShiftImmediateNumbers): (JSC::JSImmediate::canDoFastAdditiveOperations): (JSC::JSImmediate::makeValue): (JSC::JSImmediate::makeInt): (JSC::JSImmediate::makeBool): (JSC::JSImmediate::intValue): (JSC::JSImmediate::rawValue): (JSC::JSImmediate::toBoolean): (JSC::JSImmediate::from):
  • wtf/Platform.h:
18:21 Changeset [39539] by mitz@apple.com
  • 13 edits in trunk/LayoutTests/platform/mac/fast

Set the svn:mime-type property of recently-added PNG files to image/png.

18:07 Changeset [39538] by simon.fraser@apple.com
  • 7 edits
    4 adds in trunk

2009-01-01 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler, Oliver Hunt

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

Enable incremental painting of canvas. This turns incremental painting
back on, and fixes issues with stroke width and miters, calling willDraw()
for strokeText and fillText, and taking shadows into account.

Test: fast/canvas/canvas-incremental-repaint.html

17:08 Changeset [39537] by oliver@apple.com
  • 4 edits in trunk/WebCore

2008-12-29 Konstantin Käfer <kkaefer@gmail.com>

Reviewed by Tim Hatcher.

Fix for https://bugs.webkit.org/show_bug.cgi?id=17229
<rdar://problem/5732829> Inspector should show properties of all JS objects in Console

Prints objects not as plain text but makes them expandable so that
they can be inspected.

  • inspector/front-end/Console.js: (): added a parameter "inline" to the WebInspector.Console._format function which indicates

whether the object is printed in the context of another string (with console.log()) or
as sole element.

(.): objects and DOM nodes are now printed in an expandable form when they are printed alone

(i.e. not in the context of a console.log() string) so that they can be inspected.

  • inspector/front-end/PropertiesSection.js: (WebInspector.PropertiesSection.prototype.set title): Allow DOM Nodes as title instead of strings

in that case, the Node is inserted into the title instead of the string value of the passed
object. This is used for displaying linkified titles, for example when inspecting DOM nodes,
the syntax highlighted HTML representation is shown instead of the plain source code.

  • inspector/front-end/inspector.css: correct the offsetParent for the expandable object inspector.
13:19 Changeset [39536] by darin@apple.com
  • 3 edits
    7 adds in trunk

WebCore:

2009-01-01 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23051: web page searching should use ICU's search so it can ignore diacritical differences
https://bugs.webkit.org/show_bug.cgi?id=23051
rdar://problem/3574497

Test: editing/execCommand/findString-diacriticals.html

  • editing/TextIterator.cpp: Changed the CircularSearchBuffer class to have a new name, since it doesn't always use a circular buffer any more. Changed the interface so it can work well in the new chunky comparison mode for ICU search, and also added private data members for both the ICU-search and non-ICU-search code paths. (WebCore::TextIterator::TextIterator): Use the versions of the Range functions that don't take an exception code. (WebCore::TextIterator::handleTextBox): Added a special case to handle the position of a collapsed-away space better. This is not needed for search mechanism, but was helpful in an earlier version of this patch, and is still an improvement. (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator): Use the versions of the Range functions that don't take an exception code. (WebCore::CharacterIterator::range): Ditto. (WebCore::characterSubrange): Added. Helper function used in both places below where we want to convert a range and character offsets into a subrange. (WebCore::WordAwareIterator::advance): Use the versions of the Range functions that don't take an exception code. (WebCore::createSearcher): Added. (WebCore::searcher): Added. (WebCore::lockSearcher): Added. (WebCore::unlockSearcher): Added. (WebCore::SearchBuffer::SearchBuffer): Added. (WebCore::SearchBuffer::~SearchBuffer): Added. (WebCore::SearchBuffer::append): Added. (WebCore::SearchBuffer::atBreak): Added. (WebCore::SearchBuffer::reachedBreak): Added. (WebCore::SearchBuffer::search): Added. (WebCore::SearchBuffer::length): Added. (WebCore::TextIterator::subrange): Changed to call the characterSubrange function above. (WebCore::TextIterator::rangeFromLocationAndLength): Use the versions of the Range functions that don't take an exception code. Also tweak some other details of the code. (WebCore::isAllCollapsibleWhitespace): Added. (WebCore::collapsedToBoundary): Added. (WebCore::findPlainText): Rewrote to use new interface and streamline the logic a bit.

Add the relevant files in the icu directory. As icu/README says, the "icu"
directory is really just for Mac OS X, where we have the ICU library but not
the headers installed. It should be moved inside platform/mac at some point
to make this more clear (and the copy in JavaScriptCore should be moved
somewhere similar for the same reason).

  • icu/unicode/ucoleitr.h: Added.
  • icu/unicode/usearch.h: Added.

LayoutTests:

2009-01-01 Darin Adler <darin@apple.com>

Reviewed by Dan Bernstein.

Bug 23051: web page searching should use ICU's search so it can ignore diacritical differences
https://bugs.webkit.org/show_bug.cgi?id=23051
rdar://problem/3574497

Currently this is only activated on the Mac platform, not including Tiger.

  • editing/execCommand/findString-diacriticals-expected.txt: Added. Expect failure.
  • editing/execCommand/findString-diacriticals.html: Added.
  • platform/mac-tiger/editing/execCommand: Added.
  • platform/mac-tiger/editing/execCommand/findString-diacriticals-expected.txt: Added. Expect failure.
  • platform/mac/editing/execCommand/findString-diacriticals-expected.txt: Added. Expect success.
00:34 Changeset [39535] by oliver@apple.com
  • 2 edits in trunk/WebCore

CrashTracer: [REGRESSION] 1090 crashes in Safari at com.apple.JavaScriptCore: KJS::JSGlobalObject::stopTimeoutCheck + 0
<rdar://problem/5821130>

Reviewed by Cameron Zwarich.

This was caused by a plugin instance calling into JS code that removed the plugin
object. This fix is to cache the global object locally in a ProtectedPtr so we don't
need to rely on the continued existence of the plugin instance.

00:22 Changeset [39534] by oliver@apple.com
  • 7 edits in trunk

[jsfunfuzz] Assertion + incorrect behaviour with dynamically created local variable in a catch block
<https://bugs.webkit.org/show_bug.cgi?id=23063>

Reviewed by Cameron Zwarich

Eval inside a catch block attempts to use the catch block's static scope in
an unsafe way by attempting to add new properties to the scope. This patch
fixes this issue simply by preventing the catch block from using a static
scope if it contains an eval.

Note: See TracTimeline for information about the timeline view.