WebKit.git
14 years ago2008-09-20 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 21 Sep 2008 06:16:21 +0000 (06:16 +0000)]
2008-09-20  Maciej Stachowiak  <mjs@apple.com>

        Not reviewed, build fix.

        - speculative fix for non-AllInOne builds

        * kjs/operations.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36728 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Sun, 21 Sep 2008 05:54:23 +0000 (05:54 +0000)]
2008-09-20  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin.

        - assorted optimizations to === and !== operators
        (work towards <https://bugs.webkit.org/show_bug.cgi?id=20820>)

        2.5% speedup on earley-boyer test

        * VM/Machine.cpp:
        (JSC::Machine::cti_op_stricteq): Use inline version of
        strictEqualSlowCase; remove unneeded exception check.
        (JSC::Machine::cti_op_nstricteq): ditto
        * kjs/operations.cpp:
        (JSC::strictEqual): Use strictEqualSlowCaseInline
        (JSC::strictEqualSlowCase): ditto
        * kjs/operations.h:
        (JSC::strictEqualSlowCaseInline): Version of strictEqualSlowCase that can be inlined,
        since the extra function call indirection is a lose for CTI.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36727 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoJavaScriptCore:
darin@apple.com [Sun, 21 Sep 2008 02:29:12 +0000 (02:29 +0000)]
JavaScriptCore:

2008-09-20  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        - finish https://bugs.webkit.org/show_bug.cgi?id=20858
          make each distinct C++ class get a distinct JSC::Structure

        This also includes some optimizations that make the change an overall
        small speedup. Without those it was a bit of a slowdown.

        * API/JSCallbackConstructor.cpp:
        (JSC::JSCallbackConstructor::JSCallbackConstructor): Take a structure.
        * API/JSCallbackConstructor.h: Ditto.
        * API/JSCallbackFunction.cpp:
        (JSC::JSCallbackFunction::JSCallbackFunction): Pass a structure.
        * API/JSCallbackObject.h: Take a structure.
        * API/JSCallbackObjectFunctions.h:
        (JSC::JSCallbackObject::JSCallbackObject): Ditto.

        * API/JSClassRef.cpp:
        (OpaqueJSClass::prototype): Pass in a structure. Call setPrototype
        if there's a custom prototype involved.
        * API/JSObjectRef.cpp:
        (JSObjectMake): Ditto.
        (JSObjectMakeConstructor): Pass in a structure.

        * JavaScriptCore.exp: Updated.

        * VM/Machine.cpp:
        (JSC::jsLess): Added a special case for when both arguments are strings.
        This avoids converting both strings to with UString::toDouble.
        (JSC::jsLessEq): Ditto.
        (JSC::Machine::privateExecute): Pass in a structure.
        (JSC::Machine::cti_op_construct_JSConstruct): Ditto.
        (JSC::Machine::cti_op_new_regexp): Ditto.
        (JSC::Machine::cti_op_is_string): Ditto.
        * VM/Machine.h: Made isJSString public so it can be used in the CTI.

        * kjs/Arguments.cpp:
        (JSC::Arguments::Arguments): Pass in a structure.

        * kjs/JSCell.h: Mark constructor explicit.

        * kjs/JSGlobalObject.cpp:
        (JSC::markIfNeeded): Added an overload for marking structures.
        (JSC::JSGlobalObject::reset): Eliminate code to set data members to
        zero. We now do that in the constructor, and we no longer use this
        anywhere except in the constructor. Added code to create structures.
        Pass structures rather than prototypes when creating objects.
        (JSC::JSGlobalObject::mark): Mark the structures.

        * kjs/JSGlobalObject.h: Removed unneeded class declarations.
        Added initializers for raw pointers in JSGlobalObjectData so
        everything starts with a 0. Added structure data and accessor
        functions.

        * kjs/JSImmediate.cpp:
        (JSC::JSImmediate::nonInlineNaN): Added.
        * kjs/JSImmediate.h:
        (JSC::JSImmediate::toDouble): Rewrote to avoid PIC branches.

        * kjs/JSNumberCell.cpp:
        (JSC::jsNumberCell): Made non-inline to avoid PIC branches
        in functions that call this one.
        (JSC::jsNaN): Ditto.
        * kjs/JSNumberCell.h: Ditto.

        * kjs/JSObject.h: Removed constructor that takes a prototype.
        All callers now pass structures.

        * kjs/ArrayConstructor.cpp:
        (JSC::ArrayConstructor::ArrayConstructor):
        (JSC::constructArrayWithSizeQuirk):
        * kjs/ArrayConstructor.h:
        * kjs/ArrayPrototype.cpp:
        (JSC::ArrayPrototype::ArrayPrototype):
        * kjs/ArrayPrototype.h:
        * kjs/BooleanConstructor.cpp:
        (JSC::BooleanConstructor::BooleanConstructor):
        (JSC::constructBoolean):
        (JSC::constructBooleanFromImmediateBoolean):
        * kjs/BooleanConstructor.h:
        * kjs/BooleanObject.cpp:
        (JSC::BooleanObject::BooleanObject):
        * kjs/BooleanObject.h:
        * kjs/BooleanPrototype.cpp:
        (JSC::BooleanPrototype::BooleanPrototype):
        * kjs/BooleanPrototype.h:
        * kjs/DateConstructor.cpp:
        (JSC::DateConstructor::DateConstructor):
        (JSC::constructDate):
        * kjs/DateConstructor.h:
        * kjs/DateInstance.cpp:
        (JSC::DateInstance::DateInstance):
        * kjs/DateInstance.h:
        * kjs/DatePrototype.cpp:
        (JSC::DatePrototype::DatePrototype):
        * kjs/DatePrototype.h:
        * kjs/ErrorConstructor.cpp:
        (JSC::ErrorConstructor::ErrorConstructor):
        (JSC::constructError):
        * kjs/ErrorConstructor.h:
        * kjs/ErrorInstance.cpp:
        (JSC::ErrorInstance::ErrorInstance):
        * kjs/ErrorInstance.h:
        * kjs/ErrorPrototype.cpp:
        (JSC::ErrorPrototype::ErrorPrototype):
        * kjs/ErrorPrototype.h:
        * kjs/FunctionConstructor.cpp:
        (JSC::FunctionConstructor::FunctionConstructor):
        * kjs/FunctionConstructor.h:
        * kjs/FunctionPrototype.cpp:
        (JSC::FunctionPrototype::FunctionPrototype):
        (JSC::FunctionPrototype::addFunctionProperties):
        * kjs/FunctionPrototype.h:
        * kjs/GlobalEvalFunction.cpp:
        (JSC::GlobalEvalFunction::GlobalEvalFunction):
        * kjs/GlobalEvalFunction.h:
        * kjs/InternalFunction.cpp:
        (JSC::InternalFunction::InternalFunction):
        * kjs/InternalFunction.h:
        (JSC::InternalFunction::InternalFunction):
        * kjs/JSArray.cpp:
        (JSC::JSArray::JSArray):
        (JSC::constructEmptyArray):
        (JSC::constructArray):
        * kjs/JSArray.h:
        * kjs/JSFunction.cpp:
        (JSC::JSFunction::JSFunction):
        (JSC::JSFunction::construct):
        * kjs/JSObject.cpp:
        (JSC::constructEmptyObject):
        * kjs/JSString.cpp:
        (JSC::StringObject::create):
        * kjs/JSWrapperObject.h:
        * kjs/MathObject.cpp:
        (JSC::MathObject::MathObject):
        * kjs/MathObject.h:
        * kjs/NativeErrorConstructor.cpp:
        (JSC::NativeErrorConstructor::NativeErrorConstructor):
        (JSC::NativeErrorConstructor::construct):
        * kjs/NativeErrorConstructor.h:
        * kjs/NativeErrorPrototype.cpp:
        (JSC::NativeErrorPrototype::NativeErrorPrototype):
        * kjs/NativeErrorPrototype.h:
        * kjs/NumberConstructor.cpp:
        (JSC::NumberConstructor::NumberConstructor):
        (JSC::constructWithNumberConstructor):
        * kjs/NumberConstructor.h:
        * kjs/NumberObject.cpp:
        (JSC::NumberObject::NumberObject):
        (JSC::constructNumber):
        (JSC::constructNumberFromImmediateNumber):
        * kjs/NumberObject.h:
        * kjs/NumberPrototype.cpp:
        (JSC::NumberPrototype::NumberPrototype):
        * kjs/NumberPrototype.h:
        * kjs/ObjectConstructor.cpp:
        (JSC::ObjectConstructor::ObjectConstructor):
        (JSC::constructObject):
        * kjs/ObjectConstructor.h:
        * kjs/ObjectPrototype.cpp:
        (JSC::ObjectPrototype::ObjectPrototype):
        * kjs/ObjectPrototype.h:
        * kjs/PrototypeFunction.cpp:
        (JSC::PrototypeFunction::PrototypeFunction):
        * kjs/PrototypeFunction.h:
        * kjs/RegExpConstructor.cpp:
        (JSC::RegExpConstructor::RegExpConstructor):
        (JSC::RegExpMatchesArray::RegExpMatchesArray):
        (JSC::constructRegExp):
        * kjs/RegExpConstructor.h:
        * kjs/RegExpObject.cpp:
        (JSC::RegExpObject::RegExpObject):
        * kjs/RegExpObject.h:
        * kjs/RegExpPrototype.cpp:
        (JSC::RegExpPrototype::RegExpPrototype):
        * kjs/RegExpPrototype.h:
        * kjs/Shell.cpp:
        (GlobalObject::GlobalObject):
        * kjs/StringConstructor.cpp:
        (JSC::StringConstructor::StringConstructor):
        (JSC::constructWithStringConstructor):
        * kjs/StringConstructor.h:
        * kjs/StringObject.cpp:
        (JSC::StringObject::StringObject):
        * kjs/StringObject.h:
        * kjs/StringObjectThatMasqueradesAsUndefined.h:
        (JSC::StringObjectThatMasqueradesAsUndefined::StringObjectThatMasqueradesAsUndefined):
        * kjs/StringPrototype.cpp:
        (JSC::StringPrototype::StringPrototype):
        * kjs/StringPrototype.h:
        Take and pass structures.

WebCore:

2008-09-20  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        - finish https://bugs.webkit.org/show_bug.cgi?id=20858
          make each distinct C++ class get a distinct JSC::Structure

        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
        (WebCore::JSCSSStyleDeclaration::nameGetter): Pass in a structure
        ID. Note that this makes a new structure every time -- we could
        optimize this slightly be caching and reusing a single one.

        * bridge/runtime_method.cpp:
        (JSC::RuntimeMethod::RuntimeMethod): Create a unique structure using
        getDOMStructure.
        * bridge/runtime_method.h:
        (JSC::RuntimeMethod::createPrototype): Added createPrototype so
        getDOMStructure will work.

        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::JSDOMWindowShell): Initialize m_window to
        0; needed in case garbage collection happens while creating the
        JSDOMWindow.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36726 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoRoll out r36719 and attempted build fixes r36121 and r36722 due to massive build...
mrowe@apple.com [Sun, 21 Sep 2008 01:29:08 +0000 (01:29 +0000)]
Roll out r36719 and attempted build fixes r36121 and r36722 due to massive build breakage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36725 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoAdded Radar link
mitz@apple.com [Sun, 21 Sep 2008 00:52:41 +0000 (00:52 +0000)]
Added Radar link

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36724 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago Reviewed by Eric Seidel.
mitz@apple.com [Sun, 21 Sep 2008 00:49:49 +0000 (00:49 +0000)]
    Reviewed by Eric Seidel.

        - fix https://bugs.webkit.org/show_bug.cgi?id=20950
          Reproducible assertion failure running svg/custom/acid3-test-77.html multiple times under guard malloc

        * svg/SVGTextContentElement.cpp:
        (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): Changed to
        not include the first character in the extraCharsAvailable count.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36723 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago - Mac build fix
mitz@apple.com [Sun, 21 Sep 2008 00:42:30 +0000 (00:42 +0000)]
    - Mac build fix

        * WebCore.xcodeproj/project.pbxproj: Made DashArray.h a private header.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36722 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoAdded a file that was missing from r36719
mitz@apple.com [Sun, 21 Sep 2008 00:36:57 +0000 (00:36 +0000)]
Added a file that was missing from r36719

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36721 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoAdd missing bug reference to ChangeLog.
kevino@webkit.org [Sat, 20 Sep 2008 23:56:57 +0000 (23:56 +0000)]
Add missing bug reference to ChangeLog.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36720 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Dirk Schulze <vbs85@gmx.de>
eric@webkit.org [Sat, 20 Sep 2008 23:46:23 +0000 (23:46 +0000)]
2008-09-20  Dirk Schulze  <vbs85@gmx.de>

        Reviewed by eseidel.  Landed by eseidel.

        Moved DashArray to the GraphicsContext.

        * GNUmakefile.am:
        * platform/graphics/DashArray.h: Added.
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/cairo/GraphicsContextCairo.cpp:
        (WebCore::GraphicsContext::setLineDash):
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::setLineDash):
        * platform/graphics/qt/GraphicsContextQt.cpp:
        (WebCore::GraphicsContext::setLineDash):
        * svg/graphics/SVGPaintServer.cpp:
        (WebCore::applyStrokeStyleToContext):
        * svg/graphics/SVGPaintServer.h:
        * svg/graphics/cg/CgSupport.cpp:
        * svg/graphics/cg/CgSupport.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36719 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoReviewed by Dan Bernstein.
kevino@webkit.org [Sat, 20 Sep 2008 23:39:25 +0000 (23:39 +0000)]
Reviewed by Dan Bernstein.

Fix two memory leaks.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36718 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agowx build fixes. Added/removed build sources, and nativeWindow->platformWidget updates.
kevino@webkit.org [Sat, 20 Sep 2008 22:31:24 +0000 (22:31 +0000)]
wx build fixes. Added/removed build sources, and nativeWindow->platformWidget updates.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36717 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago Fix the new Node Search button image to not be blurry.
timothy@apple.com [Sat, 20 Sep 2008 22:21:59 +0000 (22:21 +0000)]
    Fix the new Node Search button image to not be blurry.

        * page/inspector/Images/nodeSearchButtons.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36716 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Sat, 20 Sep 2008 21:53:43 +0000 (21:53 +0000)]
2008-09-20  Matt Lilek  <webkit@mattlilek.com>

        Reviewed by Tim Hatcher.

        Cut down some of the inspector javascript -> InspectorController glue code
        with two new macros. Also rearrange the exposed function list to be grouped
        by implementation and to all explicitly use the WebCore namespace.

        * page/InspectorController.cpp:
        (WebCore::InspectorController::windowScriptObjectAvailable):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36715 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Sat, 20 Sep 2008 21:53:10 +0000 (21:53 +0000)]
2008-09-20  Matt Lilek  <webkit@mattlilek.com>

        Reviewed by Tim Hatcher.

        Revert r35688. We use a textured window on Leopard, which does not have the
        square corners of the standard Aqua window on Tiger.

        * WebCoreSupport/WebInspectorClient.mm:
        (-[WebInspectorWindowController window]): Add back the call to WKNSWindowMakeBottomCornersSquare.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36714 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Sat, 20 Sep 2008 21:30:43 +0000 (21:30 +0000)]
2008-09-20  Matt Lilek  <webkit@mattlilek.com>

        Reviewed by Tim Hatcher.

        Fix regression from my previous patch where the breadcrumbs bar was not displayed.

        * page/inspector/inspector.css:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36713 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoReviewed by Eric.
zimmermann@webkit.org [Sat, 20 Sep 2008 20:19:45 +0000 (20:19 +0000)]
Reviewed by Eric.

Refactor HTMLImageLoader/SVGImageLoader code.
Move html/HTMLImageLoader.* to loader/ImageLoader.*

Let HTMLImageLoader & SVGImageLoader inherit from the new base class.
SVGImageLoader used to inherit from HTMLImageLoader which is awkward.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36712 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Darin Adler <darin@apple.com>
darin@apple.com [Sat, 20 Sep 2008 14:36:57 +0000 (14:36 +0000)]
2008-09-20  Darin Adler  <darin@apple.com>

        - fix build

        * WebCoreSupport/WebChromeClient.cpp:
        (WebChromeClient::paintCustomScrollbar): Tweaked constant names to make this
        compile, but it may not be working correctly. Hyatt should do the real fix.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36711 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Darin Adler <darin@apple.com>
darin@apple.com [Sat, 20 Sep 2008 14:29:36 +0000 (14:29 +0000)]
2008-09-20  Darin Adler  <darin@apple.com>

        * DumpRenderTree/mac/DumpRenderTree.mm:
        (convertMIMEType): Turn on Stephanie's workaround for Tiger too.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36710 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[qtwebkit] ScrollBar build fix after r36684.
zecke@webkit.org [Sat, 20 Sep 2008 14:24:45 +0000 (14:24 +0000)]
[qtwebkit] ScrollBar build fix after r36684.
    BackButtonPart was split into Start and End Part
    ForwardButtonPart was split into Start and End Part

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36709 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[qtwebkit] Make qt_instance.cpp compile.
zecke@webkit.org [Sat, 20 Sep 2008 14:24:27 +0000 (14:24 +0000)]
[qtwebkit] Make qt_instance.cpp compile.
    Revision of 36675 introduced getDOMStructure to give unique
    structure id's to C++ classes. Catch up. RuntimeObjectImp assigns
    the the StructureID inside the c'tor, do the same in QtRuntimeObjectImp

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36708 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[svg] Change SVGLocatable to deal with a plain SVGElement
zecke@webkit.org [Sat, 20 Sep 2008 14:24:10 +0000 (14:24 +0000)]
[svg] Change SVGLocatable to deal with a plain SVGElement
    There is no requirement in the code that we have to have a
    SVGStyledElement. Remove that artificial limitation and compile
    with SVGElement.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36707 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[svg] Use OwnPtr for the SVGExtensions
zecke@webkit.org [Sat, 20 Sep 2008 14:23:55 +0000 (14:23 +0000)]
[svg] Use OwnPtr for the SVGExtensions
    Use OwnPtr to avoid custom lifetime management.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36706 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Alp Toker <alp@nuanti.com>
alp@webkit.org [Sat, 20 Sep 2008 06:34:35 +0000 (06:34 +0000)]
2008-09-19  Alp Toker  <alp@nuanti.com>

        Build fix for the 'gold' linker and recent binutils. New behaviour
        requires that we link to used libraries explicitly.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36705 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Sat, 20 Sep 2008 05:17:06 +0000 (05:17 +0000)]
2008-09-19  Stephanie Lewis  <slewis@apple.com>

        Reviewed by Oliver Hunt.

        Implement a workaround for an incorrect mime-type on machines with
        Dashcode 2.0.1.  Dashcode is overriding the UTI type for .js files.
        See radar <rdar://problem/6234318>.

        * DumpRenderTree/mac/DumpRenderTree.mm:
        (convertMIMEType):

        Use correct mime-type for javascript

        * svg/webarchive/svg-script-subresouces-expected.webarchive:
        * webarchive/test-duplicate-resources-expected.webarchive:
        * webarchive/test-script-src-expected.webarchive:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36704 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Sat, 20 Sep 2008 05:09:44 +0000 (05:09 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

        Fix for crash in updateTransitions.  Make sure to test for a style
        being null when comparing two RenderStyles.

        Reviewed by Oliver Hunt

        * page/animation/AnimationBase.cpp:
        (WebCore::PropertyWrapperGetter::equals):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36703 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Sat, 20 Sep 2008 04:50:21 +0000 (04:50 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

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

        Roll out r36628 since it has caused horrible regressions with
        animated GIF CPU usage.

        * platform/graphics/BitmapImage.cpp:
        (WebCore::BitmapImage::cacheFrame):
        (WebCore::BitmapImage::startAnimation):
        * platform/graphics/BitmapImage.h:
        (WebCore::FrameData::FrameData):
        * platform/graphics/cairo/ImageCairo.cpp:
        (WebCore::FrameData::clear):
        * platform/graphics/cg/ImageCG.cpp:
        (WebCore::FrameData::clear):
        * platform/graphics/qt/ImageQt.cpp:
        (WebCore::FrameData::clear):
        * platform/graphics/wx/ImageWx.cpp:
        (WebCore::FrameData::clear):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36702 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 20 Sep 2008 04:35:33 +0000 (04:35 +0000)]
2008-09-19  Sam Weinig  <sam@webkit.org>

        Roll r36694 back in.  It did not cause the crash.

        * JavaScriptCore.exp:
        * VM/JSPropertyNameIterator.cpp:
        (JSC::JSPropertyNameIterator::~JSPropertyNameIterator):
        (JSC::JSPropertyNameIterator::invalidate):
        * VM/JSPropertyNameIterator.h:
        (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
        (JSC::JSPropertyNameIterator::create):
        * kjs/JSObject.cpp:
        (JSC::JSObject::getPropertyNames):
        * kjs/PropertyMap.cpp:
        (JSC::PropertyMap::getEnumerablePropertyNames):
        * kjs/PropertyMap.h:
        * kjs/PropertyNameArray.cpp:
        (JSC::PropertyNameArray::add):
        * kjs/PropertyNameArray.h:
        (JSC::PropertyNameArrayData::create):
        (JSC::PropertyNameArrayData::propertyNameVector):
        (JSC::PropertyNameArrayData::setCachedPrototypeChain):
        (JSC::PropertyNameArrayData::cachedPrototypeChain):
        (JSC::PropertyNameArrayData::begin):
        (JSC::PropertyNameArrayData::end):
        (JSC::PropertyNameArrayData::PropertyNameArrayData):
        (JSC::PropertyNameArray::PropertyNameArray):
        (JSC::PropertyNameArray::addKnownUnique):
        (JSC::PropertyNameArray::size):
        (JSC::PropertyNameArray::operator[]):
        (JSC::PropertyNameArray::begin):
        (JSC::PropertyNameArray::end):
        (JSC::PropertyNameArray::setData):
        (JSC::PropertyNameArray::data):
        (JSC::PropertyNameArray::releaseData):
        * kjs/StructureID.cpp:
        (JSC::structureIDChainsAreEqual):
        (JSC::StructureID::getEnumerablePropertyNames):
        (JSC::StructureID::clearEnumerationCache):
        (JSC::StructureID::createCachedPrototypeChain):
        * kjs/StructureID.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36701 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-20 Alp Toker <alp@nuanti.com>
alp@webkit.org [Sat, 20 Sep 2008 03:43:42 +0000 (03:43 +0000)]
2008-09-20  Alp Toker  <alp@nuanti.com>

        Reviewed by Timothy Hatcher.

        https://bugs.webkit.org/show_bug.cgi?id=20913
        Avoid redudant includes

        Document.h is included excessively such that a modification to Document.h (or
        any of the header it includes itself) triggers a rebuild of many files
        including the whole of SVG and a lot of the JS bindings.

        Some of these includes can be avoided by only including Document.h where
        necessary.

        * bindings/js/JSAttrCustom.cpp:
        * bindings/js/JSElementCustom.cpp:
        * bindings/js/JSEventTargetBase.cpp:
        * bindings/js/JSEventTargetBase.h:
        * bindings/js/JSEventTargetNode.cpp:
        * bindings/js/JSHTMLFrameElementCustom.cpp:
        * bindings/js/JSHTMLIFrameElementCustom.cpp:
        * bindings/scripts/CodeGeneratorJS.pm:
        * css/CSSCursorImageValue.cpp:
        * css/SVGCSSStyleSelector.cpp:
        * dom/make_names.pl:
        * svg/SVGAnimateElement.h:
        * svg/SVGAnimatedProperty.h:
        (WebCore::::baseValue):
        (WebCore::::setBaseValue):
        (WebCore::::startAnimation):
        (WebCore::::stopAnimation):
        * svg/SVGElement.cpp:
        (WebCore::SVGElement::accessDocumentSVGExtensions):
        * svg/SVGElement.h:
        * svg/SVGElementInstance.cpp:
        * svg/SVGFitToViewBox.cpp:
        * svg/SVGFontElement.cpp:
        * svg/SVGFontFaceElement.cpp:
        * svg/SVGLinearGradientElement.cpp:
        * svg/SVGMPathElement.cpp:
        * svg/SVGViewSpec.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36700 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoReviewed by Antti & Eric.
zimmermann@webkit.org [Sat, 20 Sep 2008 03:33:43 +0000 (03:33 +0000)]
Reviewed by Antti & Eric.

Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
Finish HTMLScriptElement / SVGScriptElement unification.
SVG <script> support is complete now, full SVGLoad event
respecting the influence of the externalResourcesRequired attribute
as well as SVGError event support. All other features shared with HTML.

Tests: fast/dom/HTMLScriptElement/script-reexecution.html
       svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg
       svg/dom/SVGScriptElement/script-load-and-error-events.svg
       svg/dom/SVGScriptElement/script-reexecution.svg
       svg/dom/SVGScriptElement/script-set-href.svg

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36699 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago Reviewed by John Sullivan.
mitz@apple.com [Sat, 20 Sep 2008 03:23:22 +0000 (03:23 +0000)]
    Reviewed by John Sullivan.

        - fix https://bugs.webkit.org/show_bug.cgi?id=20951
          Typo in Position::getInlineBoxAndOffset()
          and add an assertion

        Without the fix, the newly-added assertion fails in platform/mac/editing/input/caret-primary-bidi.html

        * dom/Position.cpp:
        (WebCore::Position::getInlineBoxAndOffset):
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::positionForOffset):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36698 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Sat, 20 Sep 2008 03:21:14 +0000 (03:21 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

        Add support for hit testing of all five possible scrollbar button placements.

        Reviewed by Sam Weinig

        * platform/ScrollbarThemeComposite.cpp:
        (WebCore::ScrollbarThemeComposite::paint):
        * platform/mac/ScrollbarThemeMac.mm:
        (WebCore::):
        (WebCore::ScrollbarThemeMac::backButtonRect):
        (WebCore::ScrollbarThemeMac::forwardButtonRect):
        (WebCore::ScrollbarThemeMac::trackRect):
        (WebCore::ScrollbarThemeMac::paintButton):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36697 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 20 Sep 2008 03:19:17 +0000 (03:19 +0000)]
2008-09-19  Sam Weinig  <sam@webkit.org>

        Roll out r36694.

        * JavaScriptCore.exp:
        * VM/JSPropertyNameIterator.cpp:
        (JSC::JSPropertyNameIterator::~JSPropertyNameIterator):
        (JSC::JSPropertyNameIterator::invalidate):
        * VM/JSPropertyNameIterator.h:
        (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
        (JSC::JSPropertyNameIterator::create):
        * kjs/JSObject.cpp:
        (JSC::JSObject::getPropertyNames):
        * kjs/PropertyMap.cpp:
        (JSC::PropertyMap::getEnumerablePropertyNames):
        * kjs/PropertyMap.h:
        * kjs/PropertyNameArray.cpp:
        (JSC::PropertyNameArray::add):
        * kjs/PropertyNameArray.h:
        (JSC::PropertyNameArray::PropertyNameArray):
        (JSC::PropertyNameArray::addKnownUnique):
        (JSC::PropertyNameArray::begin):
        (JSC::PropertyNameArray::end):
        (JSC::PropertyNameArray::size):
        (JSC::PropertyNameArray::operator[]):
        (JSC::PropertyNameArray::releaseIdentifiers):
        * kjs/StructureID.cpp:
        (JSC::StructureID::getEnumerablePropertyNames):
        * kjs/StructureID.h:
        (JSC::StructureID::clearEnumerationCache):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36696 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoImprove peformance of local variable initialisation.
oliver@apple.com [Sat, 20 Sep 2008 03:00:43 +0000 (03:00 +0000)]
Improve peformance of local variable initialisation.

Reviewed by Maciej Stachowiak

Pull local and constant initialisation out of slideRegisterWindowForCall
and into its own opcode.  This allows the JIT to generate the initialisation
code for a function directly into the instruction stream and so avoids a few
branches on function entry.

Results a 1% progression in SunSpider, particularly in a number of the bitop
tests where the called functions are very fast.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36695 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Sam Weinig <sam@webkit.org>
weinig@apple.com [Sat, 20 Sep 2008 02:23:42 +0000 (02:23 +0000)]
2008-09-19  Sam Weinig  <sam@webkit.org>

        Reviewed by Darin Adler.

        Patch for https://bugs.webkit.org/show_bug.cgi?id=20928
        Speed up JS property enumeration by caching entire PropertyNameArray

        1.3% speedup on Sunspider, 30% on string-fasta.

        * JavaScriptCore.exp:
        * VM/JSPropertyNameIterator.cpp:
        (JSC::JSPropertyNameIterator::~JSPropertyNameIterator):
        (JSC::JSPropertyNameIterator::invalidate):
        * VM/JSPropertyNameIterator.h:
        (JSC::JSPropertyNameIterator::JSPropertyNameIterator):
        (JSC::JSPropertyNameIterator::create):
        * kjs/JSObject.cpp:
        (JSC::JSObject::getPropertyNames):
        * kjs/PropertyMap.cpp:
        (JSC::PropertyMap::getEnumerablePropertyNames):
        * kjs/PropertyMap.h:
        * kjs/PropertyNameArray.cpp:
        (JSC::PropertyNameArray::add):
        * kjs/PropertyNameArray.h:
        (JSC::PropertyNameArrayData::create):
        (JSC::PropertyNameArrayData::propertyNameVector):
        (JSC::PropertyNameArrayData::setCachedPrototypeChain):
        (JSC::PropertyNameArrayData::cachedPrototypeChain):
        (JSC::PropertyNameArrayData::begin):
        (JSC::PropertyNameArrayData::end):
        (JSC::PropertyNameArrayData::PropertyNameArrayData):
        (JSC::PropertyNameArray::PropertyNameArray):
        (JSC::PropertyNameArray::addKnownUnique):
        (JSC::PropertyNameArray::size):
        (JSC::PropertyNameArray::operator[]):
        (JSC::PropertyNameArray::begin):
        (JSC::PropertyNameArray::end):
        (JSC::PropertyNameArray::setData):
        (JSC::PropertyNameArray::data):
        (JSC::PropertyNameArray::releaseData):
        * kjs/ScopeChain.cpp:
        (JSC::ScopeChainNode::print):
        * kjs/StructureID.cpp:
        (JSC::structureIDChainsAreEqual):
        (JSC::StructureID::getEnumerablePropertyNames):
        (JSC::StructureID::clearEnumerationCache):
        (JSC::StructureID::createCachedPrototypeChain):
        * kjs/StructureID.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36694 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix a mismatched new[]/delete in JSObject::allocatePropertyStorage
zecke@webkit.org [Sat, 20 Sep 2008 01:54:18 +0000 (01:54 +0000)]
Fix a mismatched new[]/delete in JSObject::allocatePropertyStorage

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36693 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Alice Liu <alice.liu@apple.com>
alice.liu@apple.com [Sat, 20 Sep 2008 01:22:19 +0000 (01:22 +0000)]
2008-09-19  Alice Liu  <alice.liu@apple.com>

        Fix crash when submitting form at bugreport.apple.com rdar://6234126

        Reviewed by Mark Rowe.

        * COMPropertyBag.h:
        (::GetPropertyInfo):
        correct mis-use of comma operator

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36692 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix build bustage on Win.
hyatt@apple.com [Sat, 20 Sep 2008 01:08:47 +0000 (01:08 +0000)]
Fix build bustage on Win.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36691 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Darin Adler <darin@apple.com>
darin@apple.com [Sat, 20 Sep 2008 01:05:35 +0000 (01:05 +0000)]
2008-09-19  Darin Adler  <darin@apple.com>

        - try to fix Qt build

        * bridge/qt/qt_instance.cpp:
        (JSC::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp): Add structure argument.
        (JSC::Bindings::QtInstance::getRuntimeObject): Ditto.
        * bridge/runtime_object.cpp:
        (JSC::RuntimeObjectImp::RuntimeObjectImp): Add an overload just for Qt.
        * bridge/runtime_object.h: Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36690 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix build bustage.
hyatt@apple.com [Sat, 20 Sep 2008 00:57:34 +0000 (00:57 +0000)]
Fix build bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36689 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix build bustage.
hyatt@apple.com [Sat, 20 Sep 2008 00:54:40 +0000 (00:54 +0000)]
Fix build bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36688 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Chris Marrin <cmarrin@apple.com>
dino@apple.com [Sat, 20 Sep 2008 00:53:49 +0000 (00:53 +0000)]
2008-09-19  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Dave Hyatt.

        Transition starts running when it shouldn't
        https://bugs.webkit.org/show_bug.cgi?id=20892

        When there is a transition and an animation on the
        same element, make sure the animation wins.

        The fix is to save the unanimated style when an animation is started.
        Then, when starting a transition, check to see if there is a current
        animation on the same prop. If so, use the unanimated style as the
        fromStyle rather than the current style.

        Test: animations/transition-and-animation-1.html

        * page/animation/CompositeAnimation.cpp:
        (WebCore::CompositeAnimation::updateTransitions):
        (WebCore::CompositeAnimation::updateKeyframeAnimations):
        (WebCore::CompositeAnimation::animate):
        (WebCore::CompositeAnimation::getAnimationForProperty):
        * page/animation/CompositeAnimation.h:
        * page/animation/ImplicitAnimation.cpp:
        (WebCore::ImplicitAnimation::reset):
        * page/animation/ImplicitAnimation.h:
        * page/animation/KeyframeAnimation.cpp:
        (WebCore::KeyframeAnimation::hasAnimationForProperty):
        * page/animation/KeyframeAnimation.h:
        (WebCore::KeyframeAnimation::KeyframeAnimation):
        (WebCore::KeyframeAnimation::unanimatedStyle):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36687 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Sat, 20 Sep 2008 00:42:36 +0000 (00:42 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

        Add support for painting/hit testing of four possible scrollbar buttons.
        The Windows themes simply ignore the two parts that they will never
        show.  The Mac theme also ignores the other two buttons for now.

        The cross-platform base for all three themes, ScrollbarThemeComposite,
        has all the proper support though.

        Reviewed by Sam Weinig

        * platform/ScrollbarThemeComposite.cpp:
        (WebCore::ScrollbarThemeComposite::hitTest):
        (WebCore::ScrollbarThemeComposite::invalidatePart):
        * platform/ScrollbarThemeComposite.h:
        * platform/mac/ScrollbarThemeMac.h:
        * platform/mac/ScrollbarThemeMac.mm:
        (WebCore::ScrollbarThemeMac::backButtonRect):
        (WebCore::ScrollbarThemeMac::forwardButtonRect):
        (WebCore::ScrollbarThemeMac::paintButton):
        * platform/win/ScrollbarThemeSafari.cpp:
        (WebCore::ScrollbarThemeSafari::backButtonRect):
        (WebCore::ScrollbarThemeSafari::forwardButtonRect):
        (WebCore::ScrollbarThemeSafari::paintButton):
        * platform/win/ScrollbarThemeSafari.h:
        * platform/win/ScrollbarThemeWin.cpp:
        (WebCore::ScrollbarThemeWin::backButtonRect):
        (WebCore::ScrollbarThemeWin::forwardButtonRect):
        (WebCore::ScrollbarThemeWin::paintButton):
        * platform/win/ScrollbarThemeWin.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36686 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Sat, 20 Sep 2008 00:11:32 +0000 (00:11 +0000)]
2008-09-19  Matt Lilek  <webkit@mattlilek.com>

        Reviewed by Tim Hatcher.

        Bug 17772: Inspector should support point-and-click to select a node to inspect
        https://bugs.webkit.org/show_bug.cgi?id=17772
        <rdar://problem/5792395>

        * English.lproj/localizedStrings.js:
        * page/Chrome.cpp:
        (WebCore::Chrome::mouseDidMoveOverElement):
        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleMousePressEvent):
        * page/InspectorController.cpp:
        (WebCore::toggleNodeSearch):
        (WebCore::searchingForNode):
        (WebCore::InspectorController::InspectorController):
        (WebCore::InspectorController::toggleSearchForNodeInPage):
        (WebCore::InspectorController::mouseDidMoveOverElement):
        (WebCore::InspectorController::handleMousePressOnNode):
        (WebCore::InspectorController::windowScriptObjectAvailable):
        * page/InspectorController.h:
        (WebCore::InspectorController::searchingForNodeInPage):
        * page/inspector/ElementsPanel.js:
        * page/inspector/Images/nodeSearchButtons.png: Added.
        * page/inspector/inspector.css:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36685 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 23:39:26 +0000 (23:39 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

        Add new scrollbar parts to be able to represent back and forward buttons
        at either end of the scrollbar.  The current scrollbar still just draws
        a single button at either end, but the parts now exist.

        Reviewed by Sam Weinig

        * platform/ScrollTypes.h:
        (WebCore::):
        * platform/Scrollbar.cpp:
        (WebCore::Scrollbar::autoscrollTimerFired):
        (WebCore::Scrollbar::pressedPartScrollDirection):
        (WebCore::Scrollbar::pressedPartScrollGranularity):
        (WebCore::Scrollbar::handleMouseMoveEvent):
        * platform/ScrollbarTheme.h:
        (WebCore::ScrollbarTheme::buttonsPlacement):
        (WebCore::ScrollbarTheme::invalidateParts):
        * platform/ScrollbarThemeComposite.cpp:
        (WebCore::ScrollbarThemeComposite::paint):
        (WebCore::ScrollbarThemeComposite::hitTest):
        (WebCore::ScrollbarThemeComposite::invalidatePart):
        * platform/ScrollbarThemeComposite.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36684 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoWebCore:
bdakin@apple.com [Fri, 19 Sep 2008 23:02:03 +0000 (23:02 +0000)]
WebCore:

2008-09-19  Beth Dakin  <bdakin@apple.com>

        Reviewed by Dave Hyatt.

        Fix for <rdar://problem/6231308> crash in AutoTableLayout

        The code assumes later on that a TableSection's grid's row vector
        will never be empty. So make 1 the minimum number of columns.

        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::ensureRows):

LayoutTests:

2008-09-19  Beth Dakin  <bdakin@apple.com>

        Reviewed by Dave Hyatt.

        Test for <rdar://problem/6231308> crash in AutoTableLayout

        * fast/table/empty-row-crash.html: Added.
        * platform/mac/fast/table/empty-row-crash-expected.checksum: Added.
        * platform/mac/fast/table/empty-row-crash-expected.png: Added.
        * platform/mac/fast/table/empty-row-crash-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36683 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 22:55:56 +0000 (22:55 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

        Add a new ScrollbarButtonsPlacement type for specifying where
        the button arrows are in a scrollbar.

        Read in the placement settings for Mac.  Nothing is done with the
        setting yet.

        Add a new buttonsPlacement() method to ScrollbarTheme composite
        so that the arrow settings can be obtained.

        Reviewed by Sam Weinig

        * platform/ScrollTypes.h:
        (WebCore::):
        * platform/ScrollbarThemeComposite.h:
        (WebCore::ScrollbarThemeComposite::buttonsPlacement):
        * platform/mac/ScrollbarThemeMac.mm:
        (WebCore::updateArrowPlacement):
        (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36682 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago Roll out r36626. It is causing variance in SunSpider numbers on XP.
sfalken@apple.com [Fri, 19 Sep 2008 22:47:45 +0000 (22:47 +0000)]
    Roll out r36626. It is causing variance in SunSpider numbers on XP.

        Rubber stamped by Mark Rowe.

        * platform/win/SharedTimerWin.cpp:
        (WebCore::isRunningOnVistaOrLater):
        (WebCore::setSharedTimerFireTime):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36681 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Windows bustage
cfleizach@apple.com [Fri, 19 Sep 2008 22:46:05 +0000 (22:46 +0000)]
Fix Windows bustage

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36680 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Kevin McCullough <kmccullough@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 22:12:07 +0000 (22:12 +0000)]
2008-09-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        https://bugs.webkit.org/show_bug.cgi?id=20942
        Bug 20942: Repeated messages in resources don't collapse
        - Now repeated messages in a resource's view are collapsed and a message
        says how many were repeated.

        * English.lproj/localizedStrings.js:
        * manual-tests/inspector/multiple-console-messages.html:
        * page/inspector/Console.js: Send all the messages to the resource's
        view before possibly returning early if the message is a repeat.
        * page/inspector/SourceFrame.js: Add the text about the message being
        repeated, if it is, and increment it when necessary.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36679 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Fri, 19 Sep 2008 21:56:14 +0000 (21:56 +0000)]
2008-09-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        https://bugs.webkit.org/show_bug.cgi?id=20942
        Bug 20942: Repeated messages in resources don't collapse
        - Now repeated messages in a resource's view are collapsed and a message
        says how many were repeated.

        * English.lproj/localizedStrings.js:
        * manual-tests/inspector/multiple-console-messages.html:
        * page/inspector/Console.js: Send all the messages to the resource's
        view before possibly returning early if the message is a repeat.
        * page/inspector/SourceFrame.js: Add the text about the message being
        repeated, if it is, and increment it when necessary.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36678 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoRemoved unnecessary #if
cfleizach@apple.com [Fri, 19 Sep 2008 21:39:21 +0000 (21:39 +0000)]
Removed unnecessary #if

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36677 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 21:20:59 +0000 (21:20 +0000)]
2008-09-19  David Hyatt  <hyatt@apple.com>

        Move ScrollbarThemeMac.cpp to ScrollbarThemeMac.mm so it can use Obj-C.
        Set the initial button repeat delay to 0.5 for Mac.

        Reviewed by Sam Weinig

        * WebCore.xcodeproj/project.pbxproj:
        * platform/mac/ScrollbarThemeMac.cpp: Removed.
        * platform/mac/ScrollbarThemeMac.h:
        (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
        * platform/mac/ScrollbarThemeMac.mm: Copied from platform/mac/ScrollbarThemeMac.cpp.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36676 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoJavaScriptCore:
darin@apple.com [Fri, 19 Sep 2008 21:15:14 +0000 (21:15 +0000)]
JavaScriptCore:

2008-09-19  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
          make each distinct C++ class get a distinct JSC::Structure

        * JavaScriptCore.exp: Exported constructEmptyObject for use in WebCore.

        * kjs/JSGlobalObject.h: Changed the protected constructor to take a
        structure instead of a prototype.

        * kjs/JSVariableObject.h: Removed constructor that takes a prototype.

WebCore:

2008-09-19  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
          make each distinct C++ class get a distinct JSC::Structure

          + Fixed all cases where we were using a shared structure for multiple
            C++ classes in WebCore. This still has to be done in JavaScriptCore.

          + Got rid of cacheGlobalObject.

          + Improved use of PassRefPtr in bindings code.

          + Removed a couple cases where we were potentially allocating prototypes
            inside a JSObject's construction process -- this can lead to trouble if
            we do a garbage collection while an object is only partly constructed.

        * bindings/js/JSAudioConstructor.cpp:
        (WebCore::JSAudioConstructor::JSAudioConstructor): Create a structure explicitly
        so we don't implicitly share the structure with other objects that use the object
        prototype.

        * bindings/js/JSDOMBinding.cpp:
        (WebCore::getCachedDOMConstructor): Added. To be used for constructors so we
        don't need cacheGlobalObject any more.
        (WebCore::cacheDOMConstructor): Ditto.

        * bindings/js/JSDOMBinding.h: Removed DOMObject constructor that takes a prototype.
        Added functions and a function template for getting cached DOM constructors.
        Removed cacheGlobalObject function template.

        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::JSDOMWindowBase::JSDOMWindowBase): Take a PassRefPtr<DOMWindow> since
        we're taking ownership.
        * bindings/js/JSDOMWindowBase.h: Changed constructor to take PassRefPtr, since
        we're taking ownership. Added constructor map.
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::mark): Mark the constructors in the map.

        * bindings/js/JSDOMWindowShell.cpp:
        (WebCore::JSDOMWindowShell::JSDOMWindowShell): Take a PassRefPtr<DOMWindow> since
        we're taking ownership. Use the new setWindow function to create the JSDOMWindow;
        this is now done in only that one place.
        (WebCore::JSDOMWindowShell::setWindow): Added. Creates the JSDOMWindow based on
        the passed-in DOMWindow. Code was moved here and changed to allocate unique
        structures for both the window prototype and the window.
        * bindings/js/JSDOMWindowShell.h: Ditto.

        * bindings/js/JSEventTargetBase.h: Changed class template argument so it doesn't
        have the same name (JSEventTarget) as an actual class. Removed unhelpful use of
        private/friend in JSEventTargetBase. Removed comments referring to defunct
        macros. Changed JSEventTargetBasePrototype to get the prototype with the new
        rather than its own copy of cacheGlobalObject (I missed this during pass 1).
        Changed JSEventTargetBasePrototype so it doesn't have so many template arguments.

        * bindings/js/JSEventTargetNode.cpp: Added s_info; needed for the new scheme
        for caching structures and prototypes.
        (WebCore::JSEventTargetNode::JSEventTargetNode): Use PassRefPtr.
        (WebCore::JSEventTargetNode::createPrototype): Added.
        * bindings/js/JSEventTargetNode.h: Updated for above changes.

        * bindings/js/JSHTMLAllCollection.h:
        (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Use PassRefPtr.
        * bindings/js/JSHTMLCollectionCustom.cpp:
        (WebCore::getNamedItems): Pass ExecState instead of prototype.
        * bindings/js/JSHTMLFormElementCustom.cpp:
        (WebCore::JSHTMLFormElement::nameGetter): Ditto.
        * bindings/js/JSHTMLInputElementBase.cpp:
        (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Use PassRefPtr.
        * bindings/js/JSHTMLInputElementBase.h: Ditto.
        * bindings/js/JSHTMLOptionElementConstructor.cpp:
        (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
        Create a unique structure instead of sharing.
        * bindings/js/JSImageConstructor.cpp:
        (WebCore::JSImageConstructor::JSImageConstructor): Ditto.

        * bindings/js/JSInspectedObjectWrapper.cpp:
        (WebCore::JSInspectedObjectWrapper::wrap): Removed overload that takes
        a prototype rather than a structure. Made the use of inheritorID() here
        explicit.
        * bindings/js/JSInspectedObjectWrapper.h: Ditto.
        * bindings/js/JSInspectorCallbackWrapper.cpp:
        (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
        * bindings/js/JSInspectorCallbackWrapper.h: Ditto.

        * bindings/js/JSNamedNodesCollection.cpp:
        (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Changed to
        take an ExecState argument instead of a prototype. Create a unique
        StructureID instead of sharing.
        * bindings/js/JSNamedNodesCollection.h: Ditto.

        * bindings/js/JSQuarantinedObjectWrapper.cpp: Removed overloaded
        constructor that takes a prototype instead of a structure.
        * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.

        * bindings/js/JSRGBColor.cpp:
        (WebCore::JSRGBColor::JSRGBColor): Take ExecState instead of a
        prototype; create a unique structure.
        (WebCore::getJSRGBColor): Ditto.
        * bindings/js/JSRGBColor.h: Ditto.

        * bindings/js/JSSQLResultSetRowListCustom.cpp:
        (WebCore::JSSQLResultSetRowList::item): Use constructEmptyObject instead
        of explicit coding the idiom for making a new object.

        * bindings/js/JSXMLHttpRequestConstructor.cpp:
        (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
        Create a unique structure instead of the shared one.
        * bindings/js/JSXSLTProcessorConstructor.cpp:
        (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
        Ditto.

        * bindings/js/ScriptController.cpp:
        (WebCore::ScriptController::clearWindowShell): Let the window shell's
        setWindow function create the JSDOMWindow instead of doing it here.

        * bindings/scripts/CodeGeneratorJS.pm: Changed to use PassRefPtr for
        the structure and the wrapped object when creating wrappers.
        Simplified some of the special cases for DOMWindow so they are
        different only in ways the need to be. Eliminated the
        JSDOMWindow::createPrototype and JSDOMWindowPrototype::self
        functions. Moved responsibility for creating the structure and
        parent prototype out of the prototype constructor into the
        createPrototype function. Removed the unused "DoNotCache" flag for
        objects other than DOMWindow. Use getDOMConstructor instead of
        cacheGlobalObject for constructors. Make each constructor have
        a unique structure ID.

        * bridge/objc/objc_runtime.h: Added createPrototype and changed the
        name of the info member to s_info so we can use the standard DOM
        binding macros to handl the prototype.
        * bridge/objc/objc_runtime.mm: Fixed namespacing a bit.
        (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
        Create a unique structure using getDOMStructure.

        * bridge/runtime_array.cpp: Fixed namespacing a bit.
        (JSC::RuntimeArray::RuntimeArray): Create a unique structure using
        getDOMStructure.
        * bridge/runtime_array.h: Added createPrototype so getDOMStructure
        will work.

        * bridge/runtime_object.cpp:
        (JSC::RuntimeObjectImp::RuntimeObjectImp): Create a unique structure using
        getDOMStructure.
        * bridge/runtime_object.h: Added createPrototype so getDOMStructure
        will work.

        * history/CachedPage.cpp:
        (WebCore::CachedPage::restore): Let the window shell's
        setWindow function create the JSDOMWindow instead of doing it here.

        * page/DOMWindow.idl: Removed DoNotCache, which is no longer used.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36675 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFixed ChangeLog typo
mitz@apple.com [Fri, 19 Sep 2008 21:10:48 +0000 (21:10 +0000)]
Fixed ChangeLog typo

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36674 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago Reviewed by Dave Hyatt.
mitz@apple.com [Fri, 19 Sep 2008 21:02:55 +0000 (21:02 +0000)]
    Reviewed by Dave Hyatt.

        This optimization was suggested by Daniel Fenwick

        - speed up measuring text on the Core Text code path by not specifying a paragraph writing direction

        Specifying LTR paragraph directionality when measuring runs of RTL text
        resulted in typically two CTRuns being generated for every run instad
        of one, due to the leading space being reordered to the left.

        * platform/graphics/SimpleFontData.h: Removed the ltr parameter to
        getCFStringAttributes() and changed m_CFStringAttributes from an array
        to a single value.
        * platform/graphics/mac/CoreTextController.cpp:
        (WebCore::CoreTextController::CoreTextController): Added a
        mayUseNaturalWritingDirection parameter.
        (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Changed
        to force the bidi embedding level whenever
        m_mayUseNaturalWritingDirectrion is false. Since this is now a common
        case, made the typesetter options dictionaries static.
        * platform/graphics/mac/CoreTextController.h:
        * platform/graphics/mac/FontMacCoreText.cpp:
        (WebCore::Font::selectionRectForComplexText): Renamed a local variable.
        (WebCore::Font::floatWidthForComplexText): Changed to allow the
        CoreTextController to not set the writing direction.
        * platform/graphics/mac/SimpleFontDataMac.mm:
        (WebCore::SimpleFontData::getCFStringAttributes): Removed the ltr
        parameter and the paragraph style attribute.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36673 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoWebCore:
hyatt@apple.com [Fri, 19 Sep 2008 20:54:33 +0000 (20:54 +0000)]
WebCore:

2008-09-19  David Hyatt  <hyatt@apple.com>

        Reviewed by Sam Weinig

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

        Incorrect height calculation for replaced element inside nested
        positioned elements (where the inner has a percentage height and
        the outer implicitly has a fixed height because of explicit top/bottom
        values).

        Added fast/block/positioning/replaced-inside-top-bottom.html

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::availableHeightUsing):

LayoutTests:

2008-09-19  David Hyatt  <hyatt@apple.com>

        Fix for bug 20941.

        Reviewed by Sam Weinig

        * fast/block/positioning/replaced-inside-fixed-top-bottom.html: Added.
        * platform/mac/fast/block/positioning/replaced-inside-fixed-top-bottom-expected.checksum: Added.
        * platform/mac/fast/block/positioning/replaced-inside-fixed-top-bottom-expected.png: Added.
        * platform/mac/fast/block/positioning/replaced-inside-fixed-top-bottom-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36672 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Tiger bustage
cfleizach@apple.com [Fri, 19 Sep 2008 20:48:57 +0000 (20:48 +0000)]
Fix Tiger bustage

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36671 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago<rdar://problem/6211041> Expose legend tag in accessibility
cfleizach@apple.com [Fri, 19 Sep 2008 20:24:48 +0000 (20:24 +0000)]
<rdar://problem/6211041> Expose legend tag in accessibility

Makes the <legend> tag the titleUIElement of the field set.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36670 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago<rdar://problem/6213171> WebKit should use new array-centric methods for AX performance
cfleizach@apple.com [Fri, 19 Sep 2008 20:04:13 +0000 (20:04 +0000)]
<rdar://problem/6213171> WebKit should use new array-centric methods for AX performance

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36669 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 19 Sep 2008 18:47:00 +0000 (18:47 +0000)]
2008-09-19  Darin Adler  <darin@apple.com>

        Reviewed by Dan Bernstein.

        - speculative fix for https://bugs.webkit.org/show_bug.cgi?id=20943
          Assertion failure in RefCountedLeakCounter::cancelMessageSuppression() when closing a window

        * WebView/WebView.mm:
        (-[WebView _commonInitializationWithFrameName:groupName:]): Moved call to
        RefCountedLeakCounter::suppressMessages in here.
        (-[WebView initWithFrame:frameName:groupName:]): Moved it out of here.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36668 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[qtwebkit] Set the m_should* flags to their proper value on entry
zecke@webkit.org [Fri, 19 Sep 2008 11:43:27 +0000 (11:43 +0000)]
[qtwebkit] Set the m_should* flags to their proper value on entry
    With plugins it was possible that we finished a job twice. This was
    some kind of reentrancy in QNetworkReplyHandler::sendQueuedItems. By
    setting the flag to (m_loadMode == LoadDeferred) they will always have
    the right value and we will not send responses twice.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36667 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[qtwebkit] Pass test 70 of acid3. Handle text decoding errors
zecke@webkit.org [Fri, 19 Sep 2008 11:06:55 +0000 (11:06 +0000)]
[qtwebkit] Pass test 70 of acid3. Handle text decoding errors
    Handle text decoding errors before instructing the parser to parse. We
    have converted the text to QString and all encoding errors are gone and
    the parser will not be able to detect them. So handle them before parsing.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36666 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Gtk bustage.
hyatt@apple.com [Fri, 19 Sep 2008 09:55:25 +0000 (09:55 +0000)]
Fix Gtk bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36665 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Qt bustage.
hyatt@apple.com [Fri, 19 Sep 2008 09:54:21 +0000 (09:54 +0000)]
Fix Qt bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36664 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-19 Julien Chaffraix <jchaffraix@pleyo.com>
jchaffraix@webkit.org [Fri, 19 Sep 2008 08:50:13 +0000 (08:50 +0000)]
2008-09-19  Julien Chaffraix  <jchaffraix@pleyo.com>

        Reviewed by Alexey Proskuryakov.

        Use the template hoisting technique on the RefCounted class. This reduces the code bloat due to
        non-template methods' code been copied for each instance of the template.
        The patch splits RefCounted between a base class that holds non-template methods and attributes
        and the template RefCounted class that keeps the same functionnality.

        On my Linux with gcc 4.3 for the Gtk port, this is:
        - a ~600KB save on libwebkit.so in release.
        - a ~1.6MB save on libwebkit.so in debug.

        It is a wash on Sunspider and a small win on Dromaeo (not sure it is relevant).
        On the whole, it should be a small win as we reduce the compiled code size and the only
        new function call should be inlined by the compiler.

        * wtf/RefCounted.h:
        (WTF::RefCountedBase::ref): Copied from RefCounted.
        (WTF::RefCountedBase::hasOneRef): Ditto.
        (WTF::RefCountedBase::refCount): Ditto.
        (WTF::RefCountedBase::RefCountedBase): Ditto.
        (WTF::RefCountedBase::~RefCountedBase): Ditto.
        (WTF::RefCountedBase::derefBase): Tweaked from the RefCounted version to remove
        template section.
        (WTF::RefCounted::RefCounted):
        (WTF::RefCounted::deref): Small wrapper around RefCountedBase::derefBase().
        (WTF::RefCounted::~RefCounted): Keep private destructor.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36663 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoJavaScriptCore:
darin@apple.com [Fri, 19 Sep 2008 06:49:35 +0000 (06:49 +0000)]
JavaScriptCore:

2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
          make each distinct C++ class get a distinct JSC::Structure

        * kjs/lookup.h: Removed things here that were used only in WebCore:
        cacheGlobalObject, JSC_DEFINE_PROTOTYPE, JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE,
        and JSC_IMPLEMENT_PROTOTYPE.

WebCore:

2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
          make each distinct C++ class get a distinct JSC::Structure

        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
        (WebCore::JSCSSStyleDeclaration::customPut): Use setDOMException
        instead of DOMExceptionTranslator.

        * bindings/js/JSDOMBinding.cpp:
        (WebCore::getCachedDOMObjectWrapper): Updated function name.
        (WebCore::cacheDOMObjectWrapper): Ditto.
        (WebCore::forgetDOMObject): Ditto.
        (WebCore::getCachedDOMNodeWrapper): Ditto.
        (WebCore::forgetDOMNode): Ditto.
        (WebCore::cacheDOMNodeWrapper): Ditto.
        (WebCore::forgetAllDOMNodesForDocument): Ditto.
        (WebCore::markDOMNodesForDocument): Ditto.
        (WebCore::updateDOMNodeDocument): Ditto.
        (WebCore::getCachedDOMStructure): Added.
        (WebCore::createDOMStructure): Ditto.

        * bindings/js/JSDOMBinding.h: Get rid of the ScriptInterpreter
        class and replace the static member functions with non-member
        functions. Added many other functions for getting at structures,
        prototypes, wrappers, and creating them. Also moved the
        cacheGlobalObject function here from JavaScriptCore; eventually
        I'll remove that once I get rid of the remaining callers. Also
        removed the DOMExceptionTranslator class.

        * bindings/js/JSDOMWindowBase.h: Added JSDOMStructureMap type,
        and put one of those maps in each window.

        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::markDOMObjectWrapper): Updated for function name change.
        (WebCore::JSDOMWindow::mark): Added code to mark all the structures
        in the structure map.

        * bindings/js/JSEventTargetNode.cpp:
        (WebCore::JSEventTargetNode::JSEventTargetNode): Changed to take
        a structure instead of a prototype.
        * bindings/js/JSEventTargetNode.h: Ditto.
        * bindings/js/JSHTMLAllCollection.h:
        (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Ditto.

        * bindings/js/JSHTMLInputElementBase.cpp:
        (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Removed
        use of the JSC_IMPLEMENT_PROTOTYPE macro, and changed to take a
        structure instead of a prototype.
        * bindings/js/JSHTMLInputElementBase.h: Removed use of the
        JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE macro, and changed constructor
        to take a structure instead of a prototype. Created a dummy prototype
        class that causes the HTMLInputElement prototype to have the
        HTMLElement prototype.

        * bindings/scripts/CodeGeneratorJS.pm: Change constructors to take
        structures instead of prototypes. Changed the prototype self function
        to use the getDOMPrototype function -- later we can eliminate it and
        have callers invoke getDOMPrototype directly instead. Updated other
        functions that have name changes. Added code to generate the
        createPrototype member function. Changed use of cacheGlobalObject to
        get it from the WebCore namespace instead of the JSC namespace.
        Changed cacheDOMObject calls to use getDOMObjectWrapper instead.

        * dom/Document.cpp:
        (WebCore::Document::~Document): Updated for name change and also
        removed unnecessary JSLock use -- there's no need to lock around this.
        * dom/Node.cpp:
        (WebCore::Node::setDocument): Ditto.

        * dom/make_names.pl: Changed to use CREATE_DOM_NODE_WRAPPER macro
        instead of calling new directly.

        * bindings/js/JSCSSRuleCustom.cpp:
        (WebCore::toJS): Updated for function name changes and used the
        CREATE_DOM_OBJECT_WRAPPER macro.
        * bindings/js/JSCSSValueCustom.cpp:
        (WebCore::toJS): Ditto.
        * bindings/js/JSCanvasPixelArrayCustom.cpp:
        (WebCore::toJS): Ditto.
        * bindings/js/JSDocumentCustom.cpp:
        (WebCore::JSDocument::mark): Ditto.
        (WebCore::toJS): Ditto.
        * bindings/js/JSElementCustom.cpp:
        (WebCore::toJSNewlyCreated): Ditto.
        * bindings/js/JSEventCustom.cpp:
        (WebCore::toJS): Ditto.
        * bindings/js/JSEventTargetBase.cpp:
        (WebCore::jsEventTargetDispatchEvent): Use setDOMException instead
        of DOMExceptionTranslator.
        (WebCore::toJS): Updated for function name changes and used the
        CREATE_DOM_OBJECT_WRAPPER macro.
        * bindings/js/JSHTMLCollectionCustom.cpp:
        (WebCore::toJS): Ditto.
        * bindings/js/JSNodeCustom.cpp:
        (WebCore::JSNode::mark): Ditto.
        (WebCore::createWrapper): Ditto.
        (WebCore::toJS): Ditto.
        * bindings/js/JSSVGPathSegCustom.cpp:
        (WebCore::toJS): Ditto.
        * bindings/js/JSStyleSheetCustom.cpp:
        (WebCore::toJS): Ditto.
        (WebCore::JSStyleSheet::mark): Ditto.
        * bindings/js/JSTextCustom.cpp:
        (WebCore::toJSNewlyCreated): Ditto.
        * bindings/js/JSXMLHttpRequestConstructor.cpp:
        (WebCore::constructXMLHttpRequest): Ditto.
        * bindings/js/JSXMLHttpRequestCustom.cpp:
        (WebCore::JSXMLHttpRequest::mark): Ditto.
        * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
        (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
        * bindings/js/JSXSLTProcessorConstructor.cpp:
        (WebCore::constructXSLTProcessor): Ditto.
        * bindings/js/ScriptController.cpp:
        (WebCore::ScriptController::finishedWithEvent): Ditto.
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
        (WebCore::XMLHttpRequest::dropProtection): Ditto.

LayoutTests:

2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        * platform/mac/fast/dom/wrapper-classes-expected.txt: Update results to
        reflect correct prototype for CSSStyleRule.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36662 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix conflict inXCode file.
hyatt@apple.com [Fri, 19 Sep 2008 06:48:30 +0000 (06:48 +0000)]
Fix conflict inXCode file.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36661 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 19 Sep 2008 06:32:12 +0000 (06:32 +0000)]
2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Maciej Stachowiak.

        - https://bugs.webkit.org/show_bug.cgi?id=20927
          simplify/streamline the code to turn strings into identifiers while parsing

        * kjs/grammar.y: Get rid of string from the union, and use ident for STRING as
        well as for IDENT.

        * kjs/lexer.cpp:
        (JSC::Lexer::lex): Use makeIdentifier instead of makeUString for String.
        * kjs/lexer.h: Remove makeUString.

        * kjs/nodes.h: Changed StringNode to hold an Identifier instead of UString.

        * VM/CodeGenerator.cpp:
        (JSC::keyForCharacterSwitch): Updated since StringNode now holds an Identifier.
        (JSC::prepareJumpTableForStringSwitch): Ditto.
        * kjs/nodes.cpp:
        (JSC::StringNode::emitCode): Ditto. The comment from here is now in the lexer.
        (JSC::processClauseList): Ditto.
        * kjs/nodes2string.cpp:
        (JSC::StringNode::streamTo): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36660 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 06:30:16 +0000 (06:30 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        This patch gets a viewless scrollbar working on Mac. It is turned off
        by default.  Hit testing works.  For now the scrollbar just paints ugly
        debug rects in the place of the buttons, track and thumb.  It does match
        Aqua metrics though.

        Reviewed by Sam Weinig

        * WebCore.xcodeproj/project.pbxproj:
        * page/mac/EventHandlerMac.mm:
        (WebCore::EventHandler::passMousePressEventToScrollbar):
        * platform/ScrollbarThemeComposite.cpp:
        (WebCore::ScrollbarThemeComposite::paint):
        (WebCore::ScrollbarThemeComposite::trackPosition):
        * platform/ScrollbarThemeComposite.h:
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::addChild):
        * platform/mac/ScrollbarThemeMac.cpp:
        (WebCore::):
        (WebCore::ScrollbarThemeMac::hasButtons):
        (WebCore::ScrollbarThemeMac::hasThumb):
        (WebCore::buttonRepaintRect):
        (WebCore::ScrollbarThemeMac::backButtonRect):
        (WebCore::ScrollbarThemeMac::forwardButtonRect):
        (WebCore::trackRepaintRect):
        (WebCore::ScrollbarThemeMac::trackRect):
        (WebCore::ScrollbarThemeMac::minimumThumbLength):
        (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
        (WebCore::ScrollbarThemeMac::paintTrack):
        (WebCore::ScrollbarThemeMac::paintButton):
        (WebCore::ScrollbarThemeMac::paintThumb):
        * platform/mac/ScrollbarThemeMac.h:
        (WebCore::ScrollbarThemeMac::supportsControlTints):
        * platform/qt/ScrollbarThemeQt.cpp:
        (WebCore::ScrollbarThemeQt::trackPosition):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Collin Jackson <collinj@webkit.org>
collinj@webkit.org [Fri, 19 Sep 2008 06:13:22 +0000 (06:13 +0000)]
2008-09-18  Collin Jackson  <collinj@webkit.org>

        Build fix; added missing header file to GNUmakefile.am

        * GNUmakefile.am:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36658 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Mac release build bustage.
hyatt@apple.com [Fri, 19 Sep 2008 05:54:49 +0000 (05:54 +0000)]
Fix Mac release build bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36657 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Mac release build bustage.
hyatt@apple.com [Fri, 19 Sep 2008 05:53:07 +0000 (05:53 +0000)]
Fix Mac release build bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36656 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 19 Sep 2008 05:52:55 +0000 (05:52 +0000)]
2008-09-18  Darin Adler  <darin@apple.com>

        * Scripts/do-webcore-rename: More renaming plans.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36655 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Collin Jackson <collinj@webkit.org>
collinj@webkit.org [Fri, 19 Sep 2008 05:24:49 +0000 (05:24 +0000)]
2008-09-18  Collin Jackson  <collinj@webkit.org>

        Reviewed by Antti Koivisto and Mark Rowe.

        This is correct expected output for the DNS prefetch control
        layout test I just checked in.

        * http/tests/misc/dns-prefetch-control-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36654 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Sam Weinig <sam@webkit.org>
weinig@apple.com [Fri, 19 Sep 2008 04:56:21 +0000 (04:56 +0000)]
2008-09-18  Sam Weinig  <sam@webkit.org>

        Reviewed by David "the Hair" Hyatt.

        Move DataRef, SVGRenderStyle and SVGRenderStyleDefs in render/style.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * rendering/DataRef.h: Removed.
        * rendering/SVGRenderStyle.cpp: Removed.
        * rendering/SVGRenderStyle.h: Removed.
        * rendering/SVGRenderStyleDefs.cpp: Removed.
        * rendering/SVGRenderStyleDefs.h: Removed.
        * rendering/style/DataRef.h: Copied from rendering/DataRef.h.
        * rendering/style/SVGRenderStyle.cpp: Copied from rendering/SVGRenderStyle.cpp.
        * rendering/style/SVGRenderStyle.h: Copied from rendering/SVGRenderStyle.h.
        * rendering/style/SVGRenderStyleDefs.cpp: Copied from rendering/SVGRenderStyleDefs.cpp.
        * rendering/style/SVGRenderStyleDefs.h: Copied from rendering/SVGRenderStyleDefs.h.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36653 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoClear the main frame's name between tests to get more consistent test results
mrowe@apple.com [Fri, 19 Sep 2008 04:47:58 +0000 (04:47 +0000)]
Clear the main frame's name between tests to get more consistent test results
when running the WebKit tests with --nthly.

Reviewed by Dan Bernstein.

* DumpRenderTree/mac/DumpRenderTree.mm:
(resetWebViewToConsistentStateBeforeTesting):
* DumpRenderTree/win/DumpRenderTree.cpp:
(resetWebViewToConsistentStateBeforeTesting):

Add SPI to WebView to allow DRT to clear the main frame's name between tests.

* Interfaces/IWebViewPrivate.idl:
* WebView.cpp:
(WebView::clearMainFrameName):
* WebView.h:

Add SPI to WebView to allow DRT to clear the main frame's name between tests.

* WebView/WebView.mm:
(-[WebView _clearMainFrameName]):
* WebView/WebViewPrivate.h:

Add a means of clearing a FrameTree's name.

* WebCore.base.exp:
* page/FrameTree.cpp:
(WebCore::FrameTree::clearName):
* page/FrameTree.h:

Update test results now that frame tree names are cleared between tests.

* fast/events/onunload-clears-onbeforeunload-expected.txt:
* fast/events/onunload-expected.txt:
* fast/events/onunload-not-on-body-expected.txt:
* fast/events/onunload-window-property-expected.txt:
* fast/forms/button-state-restore-expected.txt:
* fast/forms/form-and-frame-interaction-retains-values-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36652 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 04:30:53 +0000 (04:30 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Eliminate addToSuperview from Widget, since it was only called
        by ScrollViewMac's addChild method.  Just shift the original body
        of addToSuperView into addChild.

        Reviewed by Sam Weinig

        * platform/Widget.h:
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::addChild):
        * platform/mac/WidgetMac.mm:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agogit-svn-id: http://svn.webkit.org/repository/webkit/trunk@36650 268f45cc-cd09-0410...
collinj@webkit.org [Fri, 19 Sep 2008 04:15:14 +0000 (04:15 +0000)]
git-svn-id: svn.webkit.org/repository/webkit/trunk@36650 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 04:01:56 +0000 (04:01 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Eliminate the convertToScreenCoordinate method on Widget, since
        ScrollView has redundant methods that already do the same thing.

        Reviewed by Sam Weinig

        * editing/mac/SelectionControllerMac.mm:
        (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
        * platform/Widget.h:
        * platform/mac/WidgetMac.mm:
        (WebCore::Widget::containingWindow):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Qt warning.
hyatt@apple.com [Fri, 19 Sep 2008 03:18:54 +0000 (03:18 +0000)]
Fix Qt warning.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36648 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 03:16:26 +0000 (03:16 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Move to only one constructor for Widgets.  Rename data to m_data and make
        it have an #ifdef only for platforms that have platform-specific data (Mac
        and Gtk).

        Reviewed by Sam Weinig

        * WebCore.base.exp:
        * platform/Widget.cpp:
        (WebCore::Widget::init):
        * platform/Widget.h:
        * platform/gtk/WidgetGtk.cpp:
        (WebCore::Widget::Widget):
        (WebCore::Widget::~Widget):
        (WebCore::Widget::cursor):
        (WebCore::Widget::setCursor):
        * platform/mac/WidgetMac.mm:
        (WebCore::Widget::Widget):
        (WebCore::Widget::~Widget):
        (WebCore::Widget::addToSuperview):
        (WebCore::Widget::removeFromSuperview):
        (WebCore::Widget::beforeMouseDown):
        (WebCore::Widget::afterMouseDown):
        * platform/qt/WidgetQt.cpp:
        (WebCore::Widget::Widget):
        * platform/win/WidgetWin.cpp:
        (WebCore::Widget::Widget):
        * platform/wx/WidgetWx.cpp:
        (WebCore::Widget::Widget):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix Qt/Win/Gtk bustage.
hyatt@apple.com [Fri, 19 Sep 2008 03:04:05 +0000 (03:04 +0000)]
Fix Qt/Win/Gtk bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 03:01:08 +0000 (03:01 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Move Qt's isNPAPIPlugin boolean from Widget down to PluginView, since there
        was no reason for it to be on Widget.  This change eliminates Qt ifdefs
        from Widget.

        Reviewed by Sam Weinig

        * bindings/js/ScriptControllerQt.cpp:
        (WebCore::ScriptController::createScriptInstanceForWidget):
        * platform/qt/WidgetQt.cpp:
        (WebCore::WidgetPrivate::WidgetPrivate):
        (WebCore::WidgetPrivate::~WidgetPrivate):
        (WebCore::Widget::Widget):
        (WebCore::Widget::~Widget):
        * plugins/PluginView.cpp:
        (WebCore::PluginView::PluginView):
        * plugins/PluginView.h:
        (WebCore::PluginView::isNPAPIPlugin):
        (WebCore::PluginView::setIsNPAPIPlugin):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 19 Sep 2008 02:53:37 +0000 (02:53 +0000)]
2008-09-18  Maciej Stachowiak  <mjs@apple.com>

        Not reviewed.

        * blog-files/animation-demo.svg: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 02:36:08 +0000 (02:36 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Make geometryChanged() cross-platform on Widget.  GTK and WIN platform
        ifdefs are now gone from Widget!

        Reviewed by Sam Weinig

        * platform/Widget.h:
        (WebCore::Widget::geometryChanged):
        * platform/gtk/WidgetGtk.cpp:
        * platform/qt/WidgetQt.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36643 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 02:29:27 +0000 (02:29 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Consolidate convertTo/FromContainingWindow methods so that all platforms
        but Mac share the same code.

        Move convertSelfToChild and convertChildToSelf to ScrollView, since
        Widget should know nothing about children.  Make the methods cross-platform
        on ScrollView.

        Reviewed by Sam Weinig

        * platform/ScrollView.h:
        (WebCore::ScrollView::convertChildToSelf):
        (WebCore::ScrollView::convertSelfToChild):
        * platform/Widget.cpp:
        (WebCore::Widget::convertToContainingWindow):
        (WebCore::Widget::convertFromContainingWindow):
        * platform/Widget.h:
        (WebCore::Widget::geometryChanged):
        * platform/gtk/ScrollViewGtk.cpp:
        (WebCore::ScrollView::isScrollViewScrollbar):
        * platform/gtk/WidgetGtk.cpp:
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::isScrollViewScrollbar):
        * platform/mac/WidgetMac.mm:
        * platform/qt/ScrollViewQt.cpp:
        (WebCore::ScrollView::isScrollViewScrollbar):
        * platform/qt/WidgetQt.cpp:
        * platform/win/ScrollViewWin.cpp:
        (WebCore::ScrollView::isScrollViewScrollbar):
        * platform/win/WidgetWin.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 19 Sep 2008 01:51:55 +0000 (01:51 +0000)]
2008-09-18  Maciej Stachowiak  <mjs@apple.com>

        Not reviewed.

        * blog-files/sfx-perf.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36641 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Sam Weinig <sam@webkit.org>
weinig@apple.com [Fri, 19 Sep 2008 01:34:01 +0000 (01:34 +0000)]
2008-09-18  Sam Weinig  <sam@webkit.org>

        Fix style.

        * VM/Instruction.h:
        (JSC::Instruction::Instruction):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36640 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago[qt] Build fixes after the Widget/ScrollView cleanup
zecke@webkit.org [Fri, 19 Sep 2008 01:00:18 +0000 (01:00 +0000)]
[qt] Build fixes after the Widget/ScrollView cleanup
    topLevel() is now root()

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36639 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoFix WIndows bustage.
hyatt@apple.com [Fri, 19 Sep 2008 00:51:03 +0000 (00:51 +0000)]
Fix WIndows bustage.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36638 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoBug 20911: REGRESSION(r36480?): Reproducible assertion failure below derefStructureID...
oliver@apple.com [Fri, 19 Sep 2008 00:46:56 +0000 (00:46 +0000)]
Bug 20911: REGRESSION(r36480?): Reproducible assertion failure below derefStructureIDs 64-bit JavaScriptCore
<https://bugs.webkit.org/show_bug.cgi?id=20911>

Reviewed by Maciej Stachowiak.

The problem was simply caused by the int constructor for Instruction
failing to initialise the full struct in 64bit builds.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36637 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 19 Sep 2008 00:39:51 +0000 (00:39 +0000)]
2008-09-18  David Hyatt  <hyatt@apple.com>

        Make the conversion methods that go to and from some containingWindow
        cross-platform.  Implement them on Mac.

        Reviewed by Sam Weinig

        * platform/Widget.h:
        (WebCore::Widget::setContainingWindow):
        * platform/mac/WidgetMac.mm:
        (WebCore::Widget::convertFromContainingWindow):
        (WebCore::Widget::convertToContainingWindow):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36636 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Sam Weinig <sam@webkit.org>
weinig@apple.com [Fri, 19 Sep 2008 00:28:05 +0000 (00:28 +0000)]
2008-09-18  Sam Weinig  <sam@webkit.org>

        Rubber-stamped by David "Yeah-yeah" Hyatt.

        Cleanup RenderStyle.

        * WebCore.xcodeproj/project.pbxproj:
        * rendering/style/CounterContent.h:
        * rendering/style/RenderStyle.cpp:
        * rendering/style/RenderStyle.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36635 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Chris Marrin <cmarrin@apple.com>
dino@apple.com [Fri, 19 Sep 2008 00:01:07 +0000 (00:01 +0000)]
2008-09-18  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Sam Weinig

        Fixed https://bugs.webkit.org/show_bug.cgi?id=20908
        Now TransformOperations and AnimationList no longer
        inherit from Vector<> but rather have API to access.

        * css/CSSComputedStyleDeclaration.cpp:
        * css/CSSStyleSelector.cpp:
        * page/animation/AnimationBase.cpp:
        * page/animation/CompositeAnimation.cpp:
        * page/animation/ImplicitAnimation.cpp:
        * page/animation/KeyframeAnimation.cpp:
        * rendering/RenderLayer.cpp:
        * rendering/style/AnimationList.cpp:
        * rendering/style/AnimationList.h:
        * rendering/style/RenderStyle.cpp:
        * rendering/style/RenderStyle.h:
        * rendering/style/TransformOperations.cpp:
        * rendering/style/TransformOperations.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36634 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Darin Adler <darin@apple.com>
darin@apple.com [Thu, 18 Sep 2008 23:47:32 +0000 (23:47 +0000)]
2008-09-18  Darin Adler  <darin@apple.com>

        - fix release build

        * wtf/RefCountedLeakCounter.cpp: Removed stray "static".

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36633 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Darin Adler <darin@apple.com>
darin@apple.com [Thu, 18 Sep 2008 23:34:09 +0000 (23:34 +0000)]
2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        * kjs/JSGlobalObject.h: Tiny style guideline tweak.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36632 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Darin Adler <darin@apple.com>
darin@apple.com [Thu, 18 Sep 2008 23:30:23 +0000 (23:30 +0000)]
2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - fix https://bugs.webkit.org/show_bug.cgi?id=20925
          LEAK messages appear every time I quit

        * JavaScriptCore.exp: Updated, and also added an export
        needed for future WebCore use of JSC::StructureID.

        * wtf/RefCountedLeakCounter.cpp:
        (WTF::RefCountedLeakCounter::suppressMessages): Added.
        (WTF::RefCountedLeakCounter::cancelMessageSuppression): Added.
        (WTF::RefCountedLeakCounter::RefCountedLeakCounter): Tweaked a bit.
        (WTF::RefCountedLeakCounter::~RefCountedLeakCounter): Added code to
        log the reason there was no leak checking done.
        (WTF::RefCountedLeakCounter::increment): Tweaked a bit.
        (WTF::RefCountedLeakCounter::decrement): Ditto.

        * wtf/RefCountedLeakCounter.h: Replaced setLogLeakMessages with two
        new functions, suppressMessages and cancelMessageSuppression. Also
        added m_ prefixes to the data member names.

2008-09-18  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - fix https://bugs.webkit.org/show_bug.cgi?id=20925
          LEAK messages appear every time I quit

        * WebView/WebPreferences.mm:
        (-[WebPreferences setFullDocumentTeardownEnabled:]): Removed unneeded call
        to setLogLeakMessages.
        * WebView/WebView.mm:
        (-[WebView _closeWithFastTeardown]): Call RefCountedLeakCounter::suppressMessages,
        telling it that we can't track leaks because at least one WebView was closed with
        fast teardown.
        (-[WebView _close]): Removed unneeded call to setLogLeakMessages. Added a call to
        cancelMessageSuppression since the WebView is no longer open.
        Added an explicit garbage collect to help with the case where we're closing during
        the quit process -- the garbageCollectSoon() calls done inside WebCore won't help
        us in that case.
        (-[WebView initWithFrame:frameName:groupName:]): Call
        RefCountedLeakCounter::suppressMessages telling it that we can't track leaks
        because at least one WebView is currently open.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36631 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years agoJavaScriptCore
zecke@webkit.org [Thu, 18 Sep 2008 23:28:34 +0000 (23:28 +0000)]
JavaScriptCore
2008-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Mark Rowe.

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

        Add a proper #define to define which XML Parser implementation to use. Client
        code can use #if USE(QXMLSTREAM) to decide if the Qt XML StreamReader
        implementation is going to be used.

        * wtf/Platform.h:

WebCore
2008-09-18  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Mark Rowe.

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

        XMLTokenizer.cpp used to contain two different implementations. One was using
        libxml2 and the other was using the Qt XML StreamReader. Clean up the code by
        separating the two implementations from each other.
        Common code and some small bits are kept inside the XMLTokenizer.cpp, the Qt code
        was moved to XMLTokenizerQt.cpp and the Libxml2 based code was moved to
        XMLTokenizerLibxml2.cpp. There should be no functional changes.

        Attempt to add XMLTokenizerLibxml2.cpp to every buildsystem so the build continues
        to work.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * dom/XMLTokenizer.cpp:
        (WebCore::isScriptElement):
        (WebCore::castToScriptElement):
        (WebCore::XMLTokenizer::setCurrentNode):
        (WebCore::XMLTokenizer::write):
        (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated):
        (WebCore::XMLTokenizer::enterText):
        (WebCore::toString):
        (WebCore::XMLTokenizer::exitText):
        (WebCore::XMLTokenizer::end):
        (WebCore::XMLTokenizer::insertErrorMessageBlock):
        * dom/XMLTokenizer.h:
        (WebCore::XMLTokenizer::wellFormed):
        * dom/XMLTokenizerLibxml2.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
        (WebCore::createMemoryParser):
        (WebCore::XMLTokenizer::XMLTokenizer):
        (WebCore::XMLTokenizer::~XMLTokenizer):
        (WebCore::XMLTokenizer::doWrite):
        (WebCore::ignorableWhitespaceHandler):
        (WebCore::XMLTokenizer::initializeParserContext):
        (WebCore::XMLTokenizer::doEnd):
        (WebCore::XMLTokenizer::lineNumber):
        (WebCore::XMLTokenizer::columnNumber):
        (WebCore::XMLTokenizer::stopParsing):
        (WebCore::XMLTokenizer::resumeParsing):
        (WebCore::parseXMLDocumentFragment):
        (WebCore::attributesStartElementNsHandler):
        (WebCore::parseAttributes):
        * dom/XMLTokenizerQt.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
        (WebCore::EntityResolver::resolveUndeclaredEntity):
        (WebCore::XMLTokenizer::XMLTokenizer):
        (WebCore::XMLTokenizer::~XMLTokenizer):
        (WebCore::XMLTokenizer::doWrite):
        (WebCore::XMLTokenizer::initializeParserContext):
        (WebCore::XMLTokenizer::doEnd):
        (WebCore::XMLTokenizer::lineNumber):
        (WebCore::XMLTokenizer::columnNumber):
        (WebCore::XMLTokenizer::stopParsing):
        (WebCore::XMLTokenizer::resumeParsing):
        (WebCore::parseXMLDocumentFragment):
        (WebCore::attributesStartElementNsHandler):
        (WebCore::parseAttributes):
        (WebCore::):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36630 268f45cc-cd09-0410-ab3c-d52691b4dbfc

14 years ago2008-09-18 Beth Dakin <bdakin@apple.com>
bdakin@apple.com [Thu, 18 Sep 2008 23:08:35 +0000 (23:08 +0000)]
2008-09-18  Beth Dakin  <bdakin@apple.com>

        Reviewed by Geoff Garen.

        Build fix for non-Mac builds.

        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::cssText):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36629 268f45cc-cd09-0410-ab3c-d52691b4dbfc