16 years ago Rubber stamped by Geoff.
bdakin [Fri, 17 Mar 2006 00:13:04 +0000 (00:13 +0000)]
    Rubber stamped by Geoff.

        Another round of Mozilla table tests.

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

16 years ago2006-03-16 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 23:08:20 +0000 (23:08 +0000)]
2006-03-16  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Add additional hackish Font, focusring and caret code.

        * WebCore.vcproj/WebCore/WebCore.vcproj:
        * WebCore.vcproj/WebCore/build-generated-files.sh:
        * bindings/js/JSCanvasRenderingContext2DBase.cpp:
        * bridge/win/FrameWin.cpp:
        * bridge/win/FrameWin.h:
        * html/CanvasRenderingContext2D.h:
        * platform/IntSize.h:
        * platform/KeyEvent.h:
        * platform/cairo/GraphicsContextCairo.cpp:
        * platform/win/FontWin.cpp:
        * platform/win/IntSizeWin.cpp: Added.
        (WebCore::IntSize::operator SIZE):
        * platform/win/ScrollViewWin.cpp:
        * platform/win/TemporaryLinkStubs.cpp:
        * rendering/render_canvasimage.h:

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

16 years ago Reviewed by Darin.
mjs [Thu, 16 Mar 2006 23:06:31 +0000 (23:06 +0000)]
    Reviewed by Darin.

        - tweaks to my change to redo KJS::Node refcounting

        * kjs/nodes.cpp:
        * kjs/nodes.h:

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

16 years ago2006-03-16 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 23:05:49 +0000 (23:05 +0000)]
2006-03-16  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Add resize, scroll event support.

        * Spinneret/Spinneret/WebView.cpp:
        * Spinneret/Spinneret/WebView.h:

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

16 years ago Reviewed by Eric.
mjs [Thu, 16 Mar 2006 23:00:38 +0000 (23:00 +0000)]
    Reviewed by Eric.

        - renamed URLArgs to ResourceRequest, split it into its own header
        - moved methods to get and set ResourceRequest to Frame

        * WebCore.xcodeproj/project.pbxproj:
        * bridge/BrowserExtension.h:
        * bridge/mac/BrowserExtensionMac.h:
        * bridge/mac/BrowserExtensionMac.mm:
        * bridge/mac/MacFrame.h:
        * bridge/mac/MacFrame.mm:
        * bridge/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
        * khtml/ecma/kjs_window.cpp:
        * page/Frame.cpp:
        * page/Frame.h:
        * page/FramePrivate.h:
        * page/ResourceRequest.h: Added.

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

16 years ago Rubber stamped by Geoff.
bdakin [Thu, 16 Mar 2006 21:24:27 +0000 (21:24 +0000)]
    Rubber stamped by Geoff.

        Still adding more mozilla table tests.

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

16 years ago Rubber stamped by Geoff.
bdakin [Thu, 16 Mar 2006 18:54:35 +0000 (18:54 +0000)]
    Rubber stamped by Geoff.

        Adding more mozilla table tests.

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

16 years ago - need to touch one more file to fix the build
darin [Thu, 16 Mar 2006 09:28:01 +0000 (09:28 +0000)]
    - need to touch one more file to fix the build
          (Darn the lack of dependencies for autogenerated bindings!)

        * dom/Element.idl: Touch. (Really this time.)

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

16 years ago2006-03-16 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 09:21:26 +0000 (09:21 +0000)]
2006-03-16  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Make build-webkit print correctly to stdout on windows.

        * Scripts/webkitdirs.pm: Fix to use devenv.com instead of devenv.exe

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

16 years ago - need to touch one more file to fix the build
darin [Thu, 16 Mar 2006 09:11:42 +0000 (09:11 +0000)]
    - need to touch one more file to fix the build
          (Darn the lack of dependencies for autogenerated bindings!)

        * dom/Element.idl: Touch.

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

16 years ago2006-03-16 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 08:59:28 +0000 (08:59 +0000)]
2006-03-16  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Pushed focus ring handling down into GraphicsContext.cpp

        * bridge/mac/MacFrame.mm:
        * platform/GraphicsContext.cpp:
        * platform/GraphicsContext.h:
        * platform/mac/GraphicsContextMac.mm:
        * rendering/render_flow.cpp:
        * rendering/render_object.cpp:

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

16 years agoOops, these files were supposed to go in.
darin [Thu, 16 Mar 2006 08:54:13 +0000 (08:54 +0000)]
Oops, these files were supposed to go in.

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

16 years ago Reviewed by Hyatt.
darin [Thu, 16 Mar 2006 08:41:16 +0000 (08:41 +0000)]
    Reviewed by Hyatt.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7749
          canvas should be in DOM, not implemented in the JS bindings

        * WebCore.xcodeproj/project.pbxproj: Added new files.
        Changed bindings-generation code to work on the new html directory
        as well as the dom one.

        * bindings/js/JSCanvasRenderingContext2DBase.cpp: Added.
        * bindings/js/JSCanvasRenderingContext2DBase.h: Added.
        * bindings/js/JSDOMHTML.cpp: Added.
        * html: Added.
        * html/CanvasGradient.cpp: Added.
        * html/CanvasGradient.h: Added.
        * html/CanvasGradient.idl: Added.
        * html/CanvasPattern.cpp: Added.
        * html/CanvasPattern.h: Added.
        * html/CanvasPattern.idl: Added.
        * html/CanvasRenderingContext2D.cpp: Added.
        * html/CanvasRenderingContext2D.h: Added.
        * html/CanvasRenderingContext2D.idl: Added.
        * html/CanvasStyle.cpp: Added.
        * html/CanvasStyle.h: Added.

        * bindings/js/JSDOMCore.cpp: Touched so that it will recompile.
        * bindings/js/JSDOMEvents.cpp: Ditto.
        * dom/Attr.idl: Ditto.
        * dom/DOMImplementation.idl: Ditto.
        * dom/DocumentType.idl: Ditto.
        * dom/MutationEvent.idl: Ditto.
        * dom/ProcessingInstruction.idl: Ditto.
        * dom/Text.idl: Ditto.

        * khtml/ecma/kjs_binding.h: (KJS::toJS): Added. Template so that you can call
        toJS on a PassRefPtr as well as on a raw pointer.

        * bindings/scripts/CodeGeneratorJS.pm: Fixed handling of a class that has only
        a legacy parent, no conventional parents. Added JSCanvasRenderingContext2DBase
        as a legacy parent, and html as a legacy module. Added CanvasRenderingContext2D,
        CanvasGradient, and CanvasPattern to the "waht to include". Added a special
        case for strings beginning with Canvas to not add an "Impl" suffix. Made the
        generated impl() function be a const member function. Made m_mimpl be private
        instead of protected. Generate a toJS function for each class. Added flaot as
        a type. Generate String, not DOMString. Made the HashTable const.

        * bindings/scripts/IDLParser.pm: Fix a couple small things. I had started to
        try to make a missing semicolon trigger an error, but ended up giving up on
        that for now.

        * khtml/html/html_canvasimpl.h:
        * khtml/html/html_canvasimpl.cpp:
        (WebCore::HTMLCanvasElementImpl::HTMLCanvasElementImpl): Set m_2DContext to 0.
        (WebCore::HTMLCanvasElementImpl::~HTMLCanvasElementImpl): Call detachCanvas
        on m_2DContext, if any.
        (WebCore::HTMLCanvasElementImpl::detach): Call reset on m_2DContext, if any.
        (WebCore::HTMLCanvasElementImpl::getContext): Added.
        (WebCore::HTMLCanvasElementImpl::size): Added.
        (WebCore::HTMLCanvasElementImpl::createPlatformImage): Added.

        * platform/Image.h:
        * platform/Image.cpp: (WebCore::Image::compositeOperatorFromString):
        Changed to take a String instead of a const char*.

        * khtml/html/html_imageimpl.h:
        * khtml/html/html_imageimpl.cpp: (WebCore::HTMLMapElementImpl::areas):
        Tweaked formatting. Changed to use PassRefPtr.

        * bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]):
        * khtml/ecma/JSXMLHttpRequest.cpp: (KJS::JSXMLHttpRequest::getValueProperty):
        * khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorProtoFunc::callAsFunction):
        * khtml/ecma/domparser.cpp: (KJS::DOMParserProtoFunc::callAsFunction):
        * khtml/ecma/kjs_css.cpp:
        * khtml/ecma/kjs_css.h:
        * khtml/ecma/kjs_dom.cpp:
        * khtml/ecma/kjs_dom.h:
        * khtml/ecma/kjs_events.cpp:
        * khtml/ecma/kjs_events.h:
        * khtml/ecma/kjs_html.cpp:
        * khtml/ecma/kjs_html.h:
        * khtml/ecma/kjs_proxy.cpp: (WebCore::KJSProxyImpl::evaluate):
        * khtml/ecma/kjs_range.cpp:
        * khtml/ecma/kjs_range.h:
        * khtml/ecma/kjs_traversal.cpp:
        * khtml/ecma/kjs_traversal.h:
        * khtml/ecma/kjs_views.cpp:
        * khtml/ecma/kjs_views.h:
        * khtml/ecma/kjs_window.cpp:
        Rename uses and definitions of all the various converstions to JavaScript
        wrappers to the new common overloaded name: "toJS".

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

16 years ago Reviewed by Maciej.
darin [Thu, 16 Mar 2006 08:40:08 +0000 (08:40 +0000)]
    Reviewed by Maciej.

        - fixed Vector so that you can pass a reference to something in the vector
          to the append or insert functions

        * kxmlcore/Vector.h:
        (KXMLCore::Vector::expandCapacity): Added new overloads that take a pointer to adjust
        and return the adjusted value of the pointer.
        (KXMLCore::Vector::append): Pass a pointer when expanding the vector, and use it when
        adding the new element. Makes the case where the element moves when the vector
        is expanded work.
        (KXMLCore::Vector::insert): Ditto.

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

16 years ago2006-03-15 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 08:10:17 +0000 (08:10 +0000)]
2006-03-15  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Push more of MacFrame down into Frame.
        Add visibleContentRect method to ScrollView.

        * bridge/mac/MacFrame.h:
        * bridge/mac/MacFrame.mm:
        * bridge/mac/WebCoreFrameBridge.mm:
        * page/Frame.cpp:
        * page/Frame.h:
        * platform/ScrollView.h:
        * platform/mac/ScrollViewMac.mm:

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

16 years ago2006-03-15 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 07:15:34 +0000 (07:15 +0000)]
2006-03-15  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Remove unused code and clean-up style.

        * bridge/mac/MacFrame.mm:
        * page/Frame.cpp:
        * page/Frame.h:
        * page/FrameView.cpp:

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

16 years ago2006-03-15 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 06:21:24 +0000 (06:21 +0000)]
2006-03-15  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        addEventListener does not work with "dblclick" event.
        Renamed khtmlDblclickEvent to dblclickEvent to fix.

        Test: fast/events/dblclick-addEventListener.html

        * WebCore.xcodeproj/project.pbxproj:
        * bridge/mac/MacFrame.mm:
        * dom/EventNames.h:
        * dom/NodeImpl.cpp:
        * dom/NodeImpl.h:
        * khtml/ecma/kjs_binding.cpp:
        * khtml/ecma/kjs_dom.cpp:
        * khtml/ecma/kjs_window.cpp:
        * khtml/html/HTMLElementImpl.cpp:
        * page/FrameView.cpp:
        * page/FrameView.h:

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

16 years ago Reviewed by Maciej.
ap [Thu, 16 Mar 2006 06:12:58 +0000 (06:12 +0000)]
    Reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4395
         REGRESSION: document.open doesn't clear the document

        Test: fast/dom/Document/document-reopen.html
        Test: fast/dom/Document/doc-open-while-parsing.html

        * dom/DocumentImpl.cpp:
        (WebCore::DocumentImpl::open): Only ignore open() while the frame is still loading the main resource.
        * page/Frame.cpp:
        (WebCore::Frame::isComplete): Added const specifier.
        (WebCore::Frame::isLoadingMainResource): New function.
        * page/Frame.h:

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

16 years ago Reviewed by Maciej.
darin [Thu, 16 Mar 2006 04:53:21 +0000 (04:53 +0000)]
    Reviewed by Maciej.

        * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Fix path
        that had a lowercase "i" in it so this builds on case-sensitive
        file systems.

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

16 years agoRemoved a few stray .cvsignore files that crept in.
darin [Thu, 16 Mar 2006 03:44:16 +0000 (03:44 +0000)]
Removed a few stray .cvsignore files that crept in.

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

16 years ago Rubber stamped by Geoff.
bdakin [Thu, 16 Mar 2006 02:00:22 +0000 (02:00 +0000)]
    Rubber stamped by Geoff.

        even more mozilla table tests.

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

16 years ago Reviewed by Eric.
ggaren [Thu, 16 Mar 2006 01:44:42 +0000 (01:44 +0000)]
    Reviewed by Eric.

        Added run-testkjs and compare-timing-files scripts, to support super
        accurate JS iBench.

        * Scripts/compare-timing-files: Added.
        * Scripts/run-testkjs: Added.

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

16 years ago Fix by Patrick Beard, reviewed by me.
darin [Thu, 16 Mar 2006 01:15:20 +0000 (01:15 +0000)]
    Fix by Patrick Beard, reviewed by me.

        - fix <rdar://problem/4478181> WebPluginController leaks NSArray and NSMutableSet objects

        * Plugins/WebPluginController.m:
        (-[WebPluginController initWithDocumentView:]): Call CFMakeCollectable on the CFSet
        so we can act like it's an NSSet.
        (-[WebPluginController dealloc]): Release _views and _checksInProgress.

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

16 years ago2006-03-15 Eric Seidel <eseidel@apple.com>
eseidel [Thu, 16 Mar 2006 00:44:31 +0000 (00:44 +0000)]
2006-03-15  Eric Seidel  <eseidel@apple.com>

        Reviewed by adele.

        Build fix.

        * kjs/date_object.cpp:
        (KJS::DateProtoFunc::callAsFunction): use size() not "len()"

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

16 years ago Reviewed by Eric.
adele [Thu, 16 Mar 2006 00:40:11 +0000 (00:40 +0000)]
    Reviewed by Eric.

        - Fixes win32 build.

        * page/Frame.cpp: (WebCore::Frame::autoscrollTimerFired): Calls isMouseButtonDown instead of CG function.
        * platform/MouseEvent.h: Added isMouseButtonDown
        * platform/mac/MouseEventMac.mm: (WebCore::MouseEvent::isMouseButtonDown): Calls CG function to get state of mouse button.
        * platform/win/TemporaryLinkStubs.cpp: (MouseEvent::isMouseButtonDown): Added stub.

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

16 years ago Rubber stamped by Geoff.
bdakin [Thu, 16 Mar 2006 00:35:40 +0000 (00:35 +0000)]
    Rubber stamped by Geoff.

        Even more Mozilla tables tests.

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

16 years ago Rubber stamped by Geoff
bdakin [Thu, 16 Mar 2006 00:03:37 +0000 (00:03 +0000)]
    Rubber stamped by Geoff

        More Mozilla table tests.

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

16 years ago Rubber stamped by Geoff.
bdakin [Wed, 15 Mar 2006 23:01:41 +0000 (23:01 +0000)]
    Rubber stamped by Geoff.

        First round of committing Mozilla table tests to our tree.

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

16 years agoforgot to change the date
aliceli1 [Wed, 15 Mar 2006 22:46:24 +0000 (22:46 +0000)]
forgot to change the date

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

16 years ago2006-03-15 Eric Seidel <eseidel@apple.com>
eseidel [Wed, 15 Mar 2006 22:28:53 +0000 (22:28 +0000)]
2006-03-15  Eric Seidel  <eseidel@apple.com>

        Reviewed by geoff.

        * platform/KeyEvent.h: Fix #define from QEvent_H to KeyEvent_H

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

16 years ago2006-03-15 Eric Seidel <eseidel@apple.com>
eseidel [Wed, 15 Mar 2006 22:26:37 +0000 (22:26 +0000)]
2006-03-15  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Fix CString copy constructor, fixes Date.parse("") on Win32.

        * kjs/date_object.cpp:
        * kjs/ustring.cpp:

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

16 years agoadded www.live.com to list and reordered by bug number.
aliceli1 [Wed, 15 Mar 2006 21:59:50 +0000 (21:59 +0000)]
added live.com to list and reordered by bug number.

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

16 years ago Reviewed by TimH.
ggaren [Wed, 15 Mar 2006 21:29:59 +0000 (21:29 +0000)]
    Reviewed by TimH.

        * projects/compat/hitlist.html: Moved delta.com to the alumni list,
        added description of alumni list.

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

16 years agoCheck in updated results for fast/box-sizing/percentage-height.html. All results...
hyatt [Wed, 15 Mar 2006 20:56:32 +0000 (20:56 +0000)]
Check in updated results for fast/box-sizing/percentage-height.html.   All results for this test are wrong, but only in DumpRenderTree.  Safari renders it correctly.

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

16 years ago Fix the box-sizing layout test by stopping integer overflowing from
hyatt [Wed, 15 Mar 2006 20:12:18 +0000 (20:12 +0000)]
    Fix the box-sizing layout test by stopping integer overflowing from
        occurring in the flexbox code.

        Reviewed by beth

        * rendering/render_flexbox.cpp:

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

16 years ago Reviewed by Eric
bdakin [Wed, 15 Mar 2006 18:43:08 +0000 (18:43 +0000)]
    Reviewed by Eric

        Fix for some leaks and intermittent broken pipes in the layout
        tests after check-in for http://bugzilla.opendarwin.org/

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

16 years agoUpdate information about when a bug was fixed.
darin [Wed, 15 Mar 2006 18:26:00 +0000 (18:26 +0000)]
Update information about when a bug was fixed.

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

16 years ago Reviewed by Anders.
mjs [Wed, 15 Mar 2006 10:21:48 +0000 (10:21 +0000)]
    Reviewed by Anders.

        - KJS::Node and KJS::StatementNode are bigger than they need to be

        The memory usage of Node was reduced by 2 machine words per node:

        - sourceURL was removed and only kept on FunctionBodyNode. The
        source URL can only be distinct per function or top-level program node,
        and you always have one.

        - refcount was removed and kept in a separate hashtable when
        greater than 1. newNodes set represents floating nodes with
        refcount of 0. This helps because almost all nodes have a refcount of 1
        for almost all of their lifetime.

        * bindings/runtime_method.cpp:
        (RuntimeMethod::RuntimeMethod): Pass null body, added FIXME.
        * kjs/Parser.cpp:
        (KJS::clearNewNodes): New nodes are tracked in nodes.cpp now, but still clear
        them at the appropriate time.
        * kjs/context.h:
        (KJS::ContextImp::currentBody): added; used to retrieve source URL and sid
        for current code.
        (KJS::ContextImp::pushIteration): moved here from LabelStack
        (KJS::ContextImp::popIteration): ditto
        (KJS::ContextImp::inIteration): ditto
        (KJS::ContextImp::pushSwitch): ditto
        (KJS::ContextImp::popSwitch): ditto
        (KJS::ContextImp::inSwitch): ditto
        * kjs/function.cpp:
        (KJS::FunctionImp::FunctionImp): Add FunctionBodyNode* parameter.
        (KJS::FunctionImp::callAsFunction): Pass body to ContextImp.
        (KJS::FunctionImp::argumentsGetter): _context renamed to m_context.
        (KJS::DeclaredFunctionImp::DeclaredFunctionImp): Pass body to superclass
        (KJS::GlobalFuncImp::callAsFunction): Pass progNode as body for ContextImp in
        * kjs/function.h: Move body field from DeclaredFunctionImp to
        * kjs/grammar.y: Change DBG; statements no longer have a sourceid.
        * kjs/internal.cpp:
        (KJS::ContextImp::ContextImp): Initialize new m_currentBody, m_iterationDepth
        and m_switchDepth data members. New FunctionBodyNode* parameter - the
        function body provides source URL and SourceId.
        (KJS::InterpreterImp::mark): Use exception() function, not _exception directly.
        (KJS::InterpreterImp::evaluate): Pass progNode to ContextImp constructor
        to use as the body.
        * kjs/internal.h:
        (KJS::LabelStack::LabelStack): Remove iteration depth and switch depth;
        statement label stacks don't need these and it bloats their size. Put them
        in the ContextImp instead.
        * kjs/interpreter.cpp:
        (KJS::ExecState::lexicalInterpreter): Renamed _context to m_context.
        * kjs/interpreter.h:
        (KJS::ExecState::dynamicInterpreter): Renamed _context to m_context.
        (KJS::ExecState::context): ditto
        (KJS::ExecState::setException): Renamed _exception to m_exception
        (KJS::ExecState::clearException): ditto
        (KJS::ExecState::exception): ditto
        (KJS::ExecState::hadException): ditto
        (KJS::ExecState::ExecState): ditto both above renames
        * kjs/nodes.cpp:
        (Node::Node): Removed initialization of line, source URL and refcount. Add to
        local newNodes set instead of involving parser.
        (Node::ref): Instead of managing refcount directly, story refcount over 1 in a
        HashCountedSet, and keep a separate HashSet of "floating" nodes with refcount
        (Node::deref): ditto
        (Node::refcount): ditto
        (Node::clearNewNodes): Destroy anything left in the new nodes set.
        (currentSourceId): Inline helper to get sourceId from function body via context.
        (currentSourceURL): ditto for sourceURL.
        (Node::createErrorCompletion): use new helper
        (Node::throwError): ditto
        (Node::setExceptionDetailsIfNeeded): ditto
        (StatementNode::StatementNode): remove initialization of l0 and sid, rename
        l1 to m_lastLine.
        (StatementNode::setLoc): Set own m_lastLine and Node's m_line.
        (StatementNode::hitStatement): Get sid, first line, last line in the proper new ways.
        (StatListNode::StatListNode): updated for setLoc changes
        (BlockNode::BlockNode): ditto
        (DoWhileNode::execute): excpect iteraton counts on ContextImp, not LabelStack
        (WhileNode::execute): ditto
        (ForNode::execute): ditto
        (ForInNode::execute): ditto
        (ContinueNode::execute): excpect inIteration on ContextImp, not LabelStack
        (BreakNode::execute): excpect inIteration and inSwitch on ContextImp, not LabelStack
        (SwitchNode::execute): expect switch counts on ContextImp, not LabelStack
        (FunctionBodyNode::FunctionBodyNode): update for new setLoc
        (FunctionBodyNode::processFuncDecl): reindent
        (SourceElementsNode::SourceElementsNode): update for new setLoc
        * kjs/nodes.h:
        (KJS::Node::lineNo): Renamed _line to m_line
        (KJS::StatementNode::firstLine): Use lineNo()
        (KJS::StatementNode::lastLine): Renamed l1 to m_lastLine
        (KJS::FunctionBodyNode::sourceId): added
        (KJS::FunctionBodyNode::sourceURL): added
        * kjs/testkjs.cpp:

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

16 years ago Reviewed by Maciej.
adele [Wed, 15 Mar 2006 09:41:41 +0000 (09:41 +0000)]
   Reviewed by Maciej.

       Followup fix for previous checkin.
       <rdar://problem/3695120> dragging to scroll doesn't work with overflow:auto/scroll/overlay areas

       Many of the bugs related to the Radar bug have to do with autoscrolling in the RSS View.
       This fix walks the layer tree to find the first scrollable layer, so that autoscrolling will
       also work with nested layers, like those in the RSS View.

       * bridge/mac/MacFrame.mm: (WebCore::MacFrame::khtmlMouseMoveEvent):

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

16 years ago Reviewed by Maciej.
adele [Wed, 15 Mar 2006 09:05:41 +0000 (09:05 +0000)]
    Reviewed by Maciej.

        - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7114
        Dragging to scroll doesn't work for overflow areas

        No test case.  There doesn't appear to be a way to trigger the autoscroll with the EventSender.

        * bridge/mac/MacFrame.mm:
        (WebCore::MacFrame::khtmlMouseMoveEvent):  If we have a layer that can scroll, let the layer handle its autoscroll.
         Otherwise, call over the bridge to let AppKit scroll the view.
        (WebCore::MacFrame::khtmlMouseReleaseEvent): Stops the autoscroll timer.
        * page/Frame.cpp:
        (WebCore::Frame::khtmlMouseReleaseEvent): Stops the autoscroll timer.
        (WebCore::Frame::handleAutoscroll): Added. Saves the layer, and starts the timer.
        (WebCore::Frame::autoscrollTimerFired): Added. Calls autoscroll() on the layer.
        (WebCore::Frame::startAutoscrollTimer): Added.
        (WebCore::Frame::stopAutoscrollTimer): Added.
        * page/Frame.h: Added new autoscroll methods.
        * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Initialize m_autoscrollTimer and m_autoscrollLayer.
        * rendering/render_layer.cpp:
        (WebCore::RenderLayer::autoscroll): Calculates how much the layer should scroll, and actually scrolls.
        (WebCore::RenderLayer::shouldAutoscroll): If the layer has overflow then it should be able to scroll.
         Except for overflow:hidden areas that aren't editable.
         In the future, we may want to have a css property that indicates an overflow:hidden style that should also scroll.
        * rendering/render_layer.h: Added new autoscroll methods.

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

16 years agoLayoutTests:
justing [Wed, 15 Mar 2006 07:01:21 +0000 (07:01 +0000)]

        Reviewed by mjs

        TinyMCE: Implement execCommand CreateLink

        * editing/editing.js:
        * editing/execCommand/createLink-expected.checksum: Added.
        * editing/execCommand/createLink-expected.png: Added.
        * editing/execCommand/createLink-expected.txt: Added.
        * editing/execCommand/createLink.html: Added.


        Reviewed by mjs

        TinyMCE: Implement execCommand CreateLink

        Used ApplyStyleCommand so that creating a link from
        a selection doesn't change document structure.

        * WebCore.xcodeproj/project.pbxproj:
        * editing/ApplyStyleCommand.cpp:
        * editing/ApplyStyleCommand.h:
        * editing/CompositeEditCommand.cpp:
        * editing/CreateLinkCommand.cpp: Added.
        * editing/CreateLinkCommand.h: Added.
        * editing/jsediting.cpp:
        * page/Frame.cpp:

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

16 years ago Reviewed by Maciej
bdakin [Wed, 15 Mar 2006 06:40:42 +0000 (06:40 +0000)]
    Reviewed by Maciej

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=4171
        This patch changes the word-break algorithm used to apply text-
        transform:capitalize to use a UBreakIterator. This fixes some
        existing edge cases we have in our text-transform:capitalize
        support and generally makes our results more consistent.

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

16 years ago Rubber stamped by Hyatt.
darin [Wed, 15 Mar 2006 03:41:55 +0000 (03:41 +0000)]
    Rubber stamped by Hyatt.

        - land new results for two tests affected by Hyatt's layer change

        * fast/encoding/utf-16-big-endian-expected.checksum: Updated.
        * fast/encoding/utf-16-big-endian-expected.png: Ditto.
        * fast/encoding/utf-16-big-endian-expected.txt: Ditto.
        * fast/encoding/utf-16-little-endian-expected.checksum: Ditto.
        * fast/encoding/utf-16-little-endian-expected.png: Ditto.
        * fast/encoding/utf-16-little-endian-expected.txt: Ditto.

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

16 years ago Reviewed by adele
justing [Wed, 15 Mar 2006 03:25:50 +0000 (03:25 +0000)]
    Reviewed by adele

        Should only dispatch the khtmlTextInsertedEvent for high level editing operations

        Dispatching this event for low level editing operations
        isn't necessary and causes a big performance regression.
        Also renamed the event because it's dispatched for changes
        other than just text insertion.

        * dom/EventNames.h:
        * editing/EditCommand.cpp:
        * khtml/html/HTMLTextFieldInnerElementImpl.cpp:
        * page/Frame.cpp:

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

16 years ago - land new results for tests affected by my setAttribute change
darin [Wed, 15 Mar 2006 02:47:25 +0000 (02:47 +0000)]
    - land new results for tests affected by my setAttribute change

        * dom/xhtml/level3/core/nodeisequalnode15-expected.txt: Updated to
        reflect a new kind of failure.
        * dom/xhtml/level3/core/nodeisequalnode16-expected.txt: Updated to
        reflect success.

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

16 years ago Oops, forgot to add this file.
ggaren [Wed, 15 Mar 2006 02:07:09 +0000 (02:07 +0000)]
    Oops, forgot to add this file.

        * fast/js/resources/string-sort.js: Added.

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

16 years ago Reviewed by Eric.
darin [Wed, 15 Mar 2006 01:17:59 +0000 (01:17 +0000)]
    Reviewed by Eric.

        - fix <rdar://problem/4478121> -[WebCoreFrameBridge finalize] crashes under GC

        * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge finalize]):
        Don't call setBridge(nil).

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

16 years agoJavaScriptCore:
ggaren [Wed, 15 Mar 2006 01:09:15 +0000 (01:09 +0000)]

        - Fixed <rdar://problem/4478239> string sort puts "closed" before

        Reviewed by Eric.

        * kjs/ustring.cpp:
        (KJS::compare): Inverted a < in order to treat the longer string as >
        the shorter string.


        Reviewed by Eric.

        Layout test for <rdar://problem/4478239> string sort puts "closed"
        before "close"

        Also changed the engine to report data types when tests fail, so that
        you don't get messages like, "should be A, was A."

        Updated results for these files:

        * fast/js/kde/Array-expected.txt:
        * fast/js/kde/RegExp-expected.txt:
        * fast/js/kde/encode_decode_uri-expected.txt:
        * fast/js/resources/js-test-pre.js:

        Added these files:

        * fast/js/string-sort-expected.txt: Added.
        * fast/js/string-sort.html: Added.

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

16 years ago - oops, didn't mean to check this in
darin [Tue, 14 Mar 2006 23:54:21 +0000 (23:54 +0000)]
    - oops, didn't mean to check this in

        * dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::parseMappedAttribute):
        Reverted nil-document check that I didn't mean to remove.

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

16 years ago Reviewed by Hyatt
bdakin [Tue, 14 Mar 2006 23:53:50 +0000 (23:53 +0000)]
    Reviewed by Hyatt

        Layout test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6796

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

16 years ago Reviewed by Hyatt
bdakin [Tue, 14 Mar 2006 23:50:51 +0000 (23:50 +0000)]
    Reviewed by Hyatt

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6796
        This fix prevents infinite recursion when a block with overflow:
        auto can't decide if it needs scrollbars or not. This fix puts a
        guard in place in updateScrollInforAfterLayout that only allows you
        to re-layout if you are not currently laying out.

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

16 years ago Reviewed by Maciej.
darin [Tue, 14 Mar 2006 23:01:44 +0000 (23:01 +0000)]
    Reviewed by Maciej.

        - Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=4059
        Some values used with setAttribute() cause the attribute to be removed
        (null strings vs. empty strings)

        The fix occurred somewhere between r9638 (2005-07-09) and the first CVS
        nightly build (WebKit-CVS-2005-10-01 03-27-01 GMT.dmg).

        * fast/dom/setAttribute-using-initial-input-value-expected.txt: Added.
        * fast/dom/setAttribute-using-initial-input-value.html: Added.

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

16 years agoLayoutTests:
darin [Tue, 14 Mar 2006 22:58:25 +0000 (22:58 +0000)]

        Reviewed by Geoff and Eric.

        - test for <http://bugzilla.opendarwin.org/show_bug.cgi?id=7765>, <rdar://problem/4474884>
          hasAttribute always returns false for uppercase attribute names like "STYLE"
        - also incidentally tests getAttributeNS and handling of null namespace parameters

        * fast/dom/Element/attribute-uppercase.html: Added.
        * fast/dom/Element/attribute-uppercase-expected.txt: Added.


        Reviewed by Geoff and Eric.

        - fix <http://bugzilla.opendarwin.org/show_bug.cgi?id=7765>, <rdar://problem/4474884>
          hasAttribute always returns false for uppercase attribute names like "STYLE"
        - re-add missing JavaScript binding for getAttributeNS
        - fixed handling of null namespace parameters in getAttributeNS and friends

        Test: fast/dom/Element/attribute-uppercase.html

        To match Gecko's behavior, the magic "lowercasing" of all attribute names
        is only done when calling DOM Level 1 functions that lack an NS suffix.
        The functions with an NS suffix are case sensitive, even in HTML documents.

        * dom/NamedNodeMapImpl.h: Changed getNamedItem and removeNamedItem to be pure virtual
        functions instead of calling through to getNamedItemNS and removeNamedItemNS.

        * dom/dom_elementimpl.h: Eliminated inline versions of non-NS functions that called
        the NS functions. They can't work that way any more since the lowercasing behavior
        is different.
        * dom/dom_elementimpl.cpp:
        (WebCore::ElementImpl::getAttribute): Added. Lowercases the name if the document
        is an HTML document, and then calls through to the qualified name version. Removed
        the null check since getDocument is guaranteed to never return 0 now that nodes
        hold a reference to their document.
        (WebCore::ElementImpl::getAttributeNS): Removed the lowercasing code.
        (WebCore::ElementImpl::setAttribute): More of the same.
        (WebCore::ElementImpl::setAttributeNS): Ditto.
        (WebCore::ElementImpl::removeAttribute): Ditto.
        (WebCore::ElementImpl::removeAttributeNS): Ditto.
        (WebCore::ElementImpl::getAttributeNode): Ditto.
        (WebCore::ElementImpl::getAttributeNodeNS): Ditto.
        (WebCore::ElementImpl::hasAttribute): Ditto.
        (WebCore::ElementImpl::hasAttributeNS): Ditto.
        (WebCore::NamedAttrMapImpl::getNamedItem): Ditto.
        (WebCore::NamedAttrMapImpl::getNamedItemNS): Ditto.
        (WebCore::NamedAttrMapImpl::removeNamedItem): Ditto.
        (WebCore::NamedAttrMapImpl::removeNamedItemNS): Ditto.
        (WebCore::StyledElementImpl::parseMappedAttribute): Removed another unneeded null
        check like the one mentioned above.

        * dom/Element.idl: Set ConvertNullToNullString for all the namespaceURI
        parameters, since we don't want null to turn into "null". Added a semicolon
        to the end of the hasAttributeNS line -- was causing the next declaration to
        be eaten up (so getAttributeNS was completely broken).

        * khtml/ecma/kjs_dom.cpp: (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
        Call valueToStringWithNullCheck to do the equivalent of ConvertNullToNullString
        for both getNamedItemNS and removeNamedItemNS.

        * bindings/js/JSDOMCore.cpp: Touched so that the changes above will take effect.

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

16 years ago Reviewed by Maciej.
tomernic [Tue, 14 Mar 2006 20:11:29 +0000 (20:11 +0000)]
    Reviewed by Maciej.

        <rdar://problem/4476873> Support printing for plugin documents (not embedded plugins)

        * WebView/WebFrameViewPrivate.h:
        * WebView/WebFrameView.m:
        (-[WebFrameView documentViewShouldHandlePrint]):
        Called by the host application before it initializes and runs a print operation.  If NO
        is returned, the host application will abort its print operation and call
        -printDocumentView on the WebFrameView.  The document view is then expected to run its
        own print operation.  If YES is returned, the host application's print operation will
        continue as normal.
        (-[WebFrameView printDocumentView]):
        Called by the host application when the WebFrameView returns YES from -documentViewShouldHandlePrint.

        * Plugins/WebNetscapePluginDocumentView.m:
        (-[WebNetscapePluginDocumentView documentViewShouldHandlePrint]):
        Allow the plugin to take over printing if it defines an NPP_Print function
        (-[WebNetscapePluginDocumentView printDocumentView]):
        Print the plugin document.

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

16 years agoFix the setpos to move screwup. Didn't realize move was a delta.
hyatt [Tue, 14 Mar 2006 11:21:11 +0000 (11:21 +0000)]
Fix the setpos to move screwup.  Didn't realize move was a delta.

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

16 years ago Fix for bug 7259, opacity performs badly.
hyatt [Tue, 14 Mar 2006 11:03:25 +0000 (11:03 +0000)]
    Fix for bug 7259, opacity performs badly.

        Reviewed by mjs

        Adding some tests in fast/opacity.

        * rendering/RenderTableRow.h:
        * rendering/render_layer.cpp:
        * rendering/render_layer.h:

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

16 years ago2006-03-14 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 10:52:37 +0000 (10:52 +0000)]
2006-03-14  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Make the URL bar relinquish focus on page load.

        * Spinneret/Spinneret/Spinneret.cpp:

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

16 years ago2006-03-14 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 10:33:50 +0000 (10:33 +0000)]
2006-03-14  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Fix WebView to allow KeyFocus.
        Add handling of space and shift-space for scrolling.

        * Spinneret/Spinneret/WebView.cpp:

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

16 years ago2006-03-14 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 09:49:47 +0000 (09:49 +0000)]
2006-03-14  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Fix Gif crasher.

        * platform/image-decoders/gif/GIFImageReader.cpp:
        (GIFImageReader::do_lzw): Initialize array after new.

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

16 years ago2006-03-14 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 09:19:36 +0000 (09:19 +0000)]
2006-03-14  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Make MouseEvents aware of current scroll position.

        * platform/win/ScrollViewWin.cpp:

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

16 years ago2006-03-13 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 07:40:34 +0000 (07:40 +0000)]
2006-03-13  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Fix mouse events to be window-relative.

        * platform/win/MouseEventWin.cpp:

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

16 years ago2006-03-10 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 07:05:29 +0000 (07:05 +0000)]
2006-03-10  Eric Seidel  <eseidel@apple.com>

        Reviewed by hyatt.

        Add scrolling support into Spinneret.

        * Spinneret/Spinneret/WebFrame.cpp:
        * Spinneret/Spinneret/WebView.cpp:

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

16 years ago2006-03-13 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 06:25:17 +0000 (06:25 +0000)]
2006-03-13  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Close DeviceContext leaks in Font code.
        Also add moveCursor stub to make maps.google.com not crash.

        * platform/win/FontWin.cpp:
        * platform/win/TemporaryLinkStubs.cpp:

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

16 years ago2006-03-13 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 04:50:09 +0000 (04:50 +0000)]
2006-03-13  Eric Seidel  <eseidel@apple.com>

        Reviewed by mjs.

        Fix checksum generation on Intel machines.
        Also moved to CGImage APIs instead of NSBitmapImageRep, may possibly
        give a small speed boost now that it uses a shared buffer.

        * DumpRenderTree/DumpRenderTree.m:
        * DumpRenderTree/ImageDiff.m:

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

16 years ago2006-03-13 Eric Seidel <eseidel@apple.com>
eseidel [Tue, 14 Mar 2006 03:30:36 +0000 (03:30 +0000)]
2006-03-13  Eric Seidel  <eseidel@apple.com>

        Reviewed by ggaren & TimH.

        <rdar://problem/4473288> XSL file containing <xsl:include href="../Styles/EscapeString.xsl" /> fails to load file
        XML_DTD_NODE objects in the tree were causing loadChildSheets to
        fail to preload child stylesheets, this patch causes us to
        correctly ignore all nodes besides the first XML_ELEMENT_NODE at
        the root level when searching the tree for xsl:include statements
        to pre-load.

        Test: fast/xsl/xslt-second-level-import.xml

        * khtml/xsl/xsl_stylesheetimpl.cpp:

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

16 years ago2006-03-10 Rob Buis <buis@kde.org>
eseidel [Tue, 14 Mar 2006 02:26:07 +0000 (02:26 +0000)]
2006-03-10  Rob Buis  <buis@kde.org>

        Reviewed by darin.  Landed by eseidel.

        Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7666:
        dasharray on rounded rectangles is broken

        Make sure the rounded rectangle is drawn clockwise, as outlined
        in the specification.

        Test: svg/custom/dashArrayOrigin.svg

        * kcanvas/KCanvasCreator.cpp:

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

16 years ago Reviewed by timo.
ggaren [Mon, 13 Mar 2006 22:16:12 +0000 (22:16 +0000)]
    Reviewed by timo.

        - Fixed the load progress indicator to give more incremental feedback,
        and to stop spending so much time near 100%.

        I did two things:
        (1) Fixed some bugs and a misspelling in the previous heuristic's
        (2) Added two new rules to the heuristic:
            (a) Treat the first layout as the half-way point.
            (b) Just like we jump the first 10% to indicate that a load has
            started, jump the last 10% to indicate that a load has finished.

        Rule 2a is good for two reasons. First, it seems unnatural for loading
        to be "more than half done" when you can't even see anything. Second,
        in the early stages of laading our estimate of how much we'll need to
        load is often off by as much as 6000% (e.g., cnn.com). So anything that
        makes the progress indicator more conservative in the early stages of
        loading is helpful.

        Rule 2b is good because it's confusing for loading to be "100% done"
        but still ongoing.

        FIXME: The indicator still isn't perfect. For example, the old behavior
        shows up @ moviefone.com. Two areas for future work:
        (1) Estimate number of linked resources. Our code estimates the size
        of a single resource, but does nothing to estimate the number of
        resources that resource might link to. This is the key to why we're
        so wrong at the beginning.
        (2) Improve "when to do first layout" heuristic. A JavaScript query
        for a style property forces layout, creating a phantom first layout
        with no content, essentially nullifying 2a for certain pages.

        Filed <rdar://problem/4475834> to track estimating the number of
        linked resources. Phantom layouts are already on Hyatt's radar.

        * WebView/WebFrame.m:
        (-[WebFrame _setState:]): Update firstLayoutDone
        (-[WebFrame _numPendingOrLoadingRequests:]): Bug fix: In the recurisve
        case, query 'frame' instead of 'self', so that we actually recurse.
        (-[WebFrame _firstLayoutDone]): New method
        (-[WebFrame _didFirstLayout]): Update firstLayoutDone
        * WebView/WebFramePrivate.h: Added firstLayoutDone ivar
        * WebView/WebView.m:
        (-[WebView _incrementProgressForConnectionDelegate:data:]):
        (1) Implemented 2a and 2b
        (2) Bug fix: only update the 'last time I sent a notification' time if
        we actually send a notification.
        (3) Don't test for progress < 0 because ensuring progress < max
        also ensures max - progress > 0. (Do still test for progress > max
        because rounding errors make that a possibility -- although a very
        minor one.)
        (4) Query only the loading frame and its subframes for pending
        requests instead of defaulting to the main frame. This is a slight
        optimization in cases where the main frame did not begin the load,
        and it makes the code more consistent.

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

16 years ago Reviewed by Tim Hatcher.
darin [Mon, 13 Mar 2006 20:00:54 +0000 (20:00 +0000)]
    Reviewed by Tim Hatcher.

        * Scripts/run-webkit-tests: Fix httpd handling to work on systems that
        have it named httpd-1.3 instead.

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

16 years ago Fix proposed by Mitz Pettel, reviewed by Darin.
ap [Mon, 13 Mar 2006 19:55:58 +0000 (19:55 +0000)]
    Fix proposed by Mitz Pettel, reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7718
          run-webkit-tests fast/dom/HTMLObjectElement/ hangs

        * Scripts/run-webkit-tests: Make test paths canonical, to form proper URLs
        (sequences of slashes are equivalent to a single slash in POSIX paths, but not
        in URLs).

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

16 years ago Reviewed by Tim Omernick.
sullivan [Mon, 13 Mar 2006 19:29:24 +0000 (19:29 +0000)]
    Reviewed by Tim Omernick.

        - fixed <rdar://problem/4475857> API: Setting a history item limit programmatically doesn't work

        * History/WebHistory.m:
        (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
        use [self historyItemLimit], which prefers the explicitly-set value and falls back to the
        NSUserDefaults value, instead of using the NSUserDefaults value explicitly.

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

16 years ago Fix by Mitz Pettel, reviewed by Maciej.
ap [Sun, 12 Mar 2006 22:17:38 +0000 (22:17 +0000)]
    Fix by Mitz Pettel, reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=5923
          REGRESSION: scrolling on Google maps continues after the mouse is
          released outside the window

        Test: fast/events/drag-outside-window.html

        * rendering/render_layer.cpp:
        (WebCore::RenderLayer::containsPoint): Always return true for the root
        object to ensure that mouse events occurring outside the window target
        the document.

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

16 years ago - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7735
ap [Sun, 12 Mar 2006 22:09:08 +0000 (22:09 +0000)]
    - Fix for bugzilla.opendarwin.org/show_bug.cgi?id=7735
        REGRESSION: crash on importing bookmarks

        No test - only reproducible when Safari imports the bookmarks.

        * dom/EventNames.cpp:
        (WebCore::EventNames::init): Initialize AtomicString before using it.
        * dom/QualifiedName.cpp:
        (WebCore::QualifiedName::init): Ditto.
        * khtml/html/htmlnames.cpp:
        (WebCore::HTMLNames::init): Ditto.
        * ksvg2/scripts/make_names.pl: Ditto.

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

16 years ago Reviewed by Maciej.
ap [Sun, 12 Mar 2006 20:30:58 +0000 (20:30 +0000)]
    Reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7708
        REGRESSION: Flash callback to JavaScript function not working.

        Test: plugins/invoke.html

        * bindings/c/c_utility.cpp:
        (KJS::Bindings::convertUTF8ToUTF16): Return a correct string length.

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

16 years ago Patch by David Kilzer, reviewed by Darin.
ap [Sun, 12 Mar 2006 08:29:20 +0000 (08:29 +0000)]
    Patch by David Kilzer, reviewed by Darin.

        - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7724
        Minor refactoring to HTMLParser::handleError() to remove duplicate code

        * khtml/html/htmlparser.cpp:
        (WebCore::HTMLParser::handleError): Refactored code.

        These tests cover the changed code.  No change in behavior.

        * fast/invalid/missing-address-end-tag-expected.checksum: Added.
        * fast/invalid/missing-address-end-tag-expected.png: Added.
        * fast/invalid/missing-address-end-tag-expected.txt: Added.
        * fast/invalid/missing-address-end-tag.html: Added.
        * fast/invalid/missing-dl-end-tag-expected.checksum: Added.
        * fast/invalid/missing-dl-end-tag-expected.png: Added.
        * fast/invalid/missing-dl-end-tag-expected.txt: Added.
        * fast/invalid/missing-dl-end-tag.html: Added.
        * fast/invalid/missing-dt-end-tag-expected.checksum: Added.
        * fast/invalid/missing-dt-end-tag-expected.png: Added.
        * fast/invalid/missing-dt-end-tag-expected.txt: Added.
        * fast/invalid/missing-dt-end-tag.html: Added.
        * fast/invalid/missing-font-end-tag-expected.checksum: Added.
        * fast/invalid/missing-font-end-tag-expected.png: Added.
        * fast/invalid/missing-font-end-tag-expected.txt: Added.
        * fast/invalid/missing-font-end-tag.html: Added.

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

16 years ago - fix Windows build
darin [Sat, 11 Mar 2006 03:32:35 +0000 (03:32 +0000)]
    - fix Windows build

        * bridge/win/FrameWin.h: Removed declaration of generateFrameName.

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

16 years agoWebCore:
darin [Sat, 11 Mar 2006 03:30:51 +0000 (03:30 +0000)]

        Reviewed by Adele.

        - removed some unused stuff from Frame and MacFrame

        * page/Frame.h: Removed autoloadImages (the setter), enableMetaRefresh,
        setCharset, backgroundURL, findTextBegin, findTextNext, preloadStyleSheet,
        preloadScript, restored, onURL, selectionChanged, htmlError, openFile,
        updateActions, openURLInFrame, overURL, checkLinkSecurity, and cacheId.
        * page/FramePrivate.h: Removed m_restored, m_frameNameId, m_strSelectedURL,
        m_strSelectedURLTarget, m_bDnd, m_bClearing, m_bSecurityInQuestion,
        m_focusNodeRestored, m_focusNodeNumber, and m_newJSInterpreterExists.
        * page/Frame.cpp:
        (WebCore::Frame::didOpenURL): Removed use of m_restored, code to set
        (WebCore::Frame::clear): Removed code to set m_bClearing and m_frameNameId.
        (WebCore::Frame::khtmlMousePressEvent): Removed code to set m_strSelectedURL
        and m_strSelectedURLTarget.

        * bridge/mac/MacFrame.h: Removed scheduleHistoryNavigation and
        * bridge/mac/MacFrame.mm:
        (WebCore::MacFrame::openURLFromPageCache): Removed use of m_restored.
        Removed unused requestedURLString.

        * bridge/mac/WebCoreFrameBridge.h: Removed requestedURLString.


        Reviewed by Adele.

        * WebCoreSupport/WebFrameBridge.m: Remove unused requestedURLString method.

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

16 years ago - fix Windows build
darin [Sat, 11 Mar 2006 03:25:35 +0000 (03:25 +0000)]
    - fix Windows build

        * page/FrameTree.cpp: Add include of <stdarg.h>.

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

16 years ago Reviewed by Geoff.
darin [Sat, 11 Mar 2006 03:21:52 +0000 (03:21 +0000)]
    Reviewed by Geoff.

        - change how frame namespacing works to be more completely on the WebCore side

        * WebView/WebFrameInternal.h: Remove _setFrameNamespace: and _frameNamespace.
        * WebView/WebFrame.m: Ditto.

        * WebView/WebView.m:
        (-[WebView setGroupName:]): Call -[WebCorePageBridge setGroupName:].
        (-[WebView groupName]): Call -[WebCorePageBridge groupName].

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

16 years agoLayoutTests:
darin [Sat, 11 Mar 2006 03:17:11 +0000 (03:17 +0000)]

        Reviewed by Geoff, except for frame-name-reset, which was done by Alexey.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=3308
          Pop-up blocking blocks window.open for already open windows

        * fast/dom/Window/open-existing-pop-up-blocking-expected.checksum: Added.
        * fast/dom/Window/open-existing-pop-up-blocking-expected.png: Added.
        * fast/dom/Window/open-existing-pop-up-blocking-expected.txt: Added.
        * fast/dom/Window/open-existing-pop-up-blocking.html: Added.
        * fast/dom/Window/resources/open-sibling-subframe.html: Added.
        * fast/dom/Window/resources/sibling-subframe-content.html: Added.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=7422
          Setting a frame name to the same value resets it to a generated one

        * fast/frames/frame-name-reset.html: Added.
        * fast/frames/frame-name-reset-expected.txt: Added.


        Reviewed by Geoff.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3308
          Pop-up blocking blocks window.open for already open windows

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7422
          Setting a frame name to the same value resets it to a generated one

        - refactor frame-name-related functions into the FrameTree object

        * WebCore.xcodeproj/project.pbxproj: Update for rename.
        * bridge/mac/MacFrame.h: Remove generateFrameName.
        * bridge/mac/MacFrame.mm: Ditto.
        * bridge/mac/PageMac.h: Added a declaration for WebCorePageBridge.

        * bridge/mac/WebCoreFrameBridge.h: Remove _frameNamespace, generateFrameName,
        setFrameNamespace, frameNamespace.
        * bridge/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge childFrameNamed:]): Change to call the new child
        function on the FrameTree.
        (-[WebCoreFrameBridge findFrameNamed:]): Change to call the new find
        function on the FrameTree.
        (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:]): Change since the
        contentPart function has been renamed to contentFrame.

        * bridge/mac/WebCoreFrameNamespaces.h: Removed everything except for the
        one method still used on the WebKit side, framesInNamespace:.
        * bridge/mac/WebCoreFrameNamespaces.m: Renamed.
        * bridge/mac/WebCoreFrameNamespaces.mm: Added. Reimplemented the
        framesInNamespace method to use the namespace in WebCore::Page.

        * bridge/mac/WebCorePageBridge.h: Added setGroupName and groupName.
        * bridge/mac/WebCorePageBridge.mm:
        (-[WebCorePageBridge setGroupName:]): Added. Calls through to Page.
        (-[WebCorePageBridge groupName]): Ditto.

        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLDocument::namedItemGetter): Changed to call contentFrame by its new name.
        (KJS::HTMLElement::frameGetter): Ditto.
        (KJS::HTMLElement::iFrameGetter): Ditto.

        * khtml/ecma/kjs_window.cpp:
        (KJS::Window::getValueProperty): Changed to call FrameTree::childCount
        instead of Frame::frames.
        (KJS::Window::childFrameGetter): Changed to call FrameTree::child
        instead of Frame::childFrameNamed.
        (KJS::Window::namedFrameGetter): Changed to call FrameTree::find
        instead of Frame::findFrame.
        (KJS::Window::indexGetter): Changed to call FrameTree::child
        instead of Frame::frames.
        (KJS::Window::getOwnPropertySlot): Changed to call FrameTree::child,
        FrameTree::find, and FrameTree::childCount instead of Frame::childFrameNamed,
        and Frame::findFrame, and Frame::frames.
        (KJS::WindowFunc::callAsFunction): Call FrameTree::find to check if the window
        is already open when considering whether to block a pop-up.
        (KJS::FrameArray::getValueProperty): Changed to call FrameTree::childCount
        instead of Frame::frames.
        (KJS::FrameArray::indexGetter): Changed to call FrameTree::child
        instead of Frame::frames.
        (KJS::FrameArray::nameGetter): Changed to call FrameTree::child
        instead of Frame::findFrame.
        (KJS::FrameArray::getOwnPropertySlot): Changed to call FrameTree::child,
        and FrameTree::childCount instead of Frame::findFrame and Frame::frames.

        * khtml/html/html_baseimpl.h:
        * khtml/html/html_baseimpl.cpp:
        (WebCore::HTMLFrameElementImpl::isURLAllowed): Changed to call Page::frameCount
        instead of Frame::topLevelFrameCount.
        (WebCore::HTMLFrameElementImpl::openURL): Changed to call FrameTree::child
        instead of Frame::findFrame.
        (WebCore::HTMLFrameElementImpl::attach): Changed to call Page::incrementFrameCount
        instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName
        instead of Frame::requestFrameName.
        (WebCore::HTMLFrameElementImpl::close): Changed to call Page::decrementFrameCount
        instead of Frame::decrementFrameCount. Changed to call FrameTree::child
        instead of Frame::findFrame.
        (WebCore::HTMLFrameElementImpl::contentFrame): Renamed from contentPart. Also
        changed to call FrameTree::child instead of Frame::findFrame.
        (WebCore::HTMLFrameElementImpl::contentDocument): Updated for name change of
        contentFrame from contentPart.
        (WebCore::HTMLIFrameElementImpl::attach): Changed to call Page::incrementFrameCount
        instead of Frame::incrementFrameCount. Changed to call FrameTree::uniqueChildName
        instead of Frame::requestFrameName.

        * rendering/render_frames.cpp: (WebCore::isURLAllowed): Changed to call Page::frameCount
        instead of Frame::topLevelFrameCount.

        * page/Frame.h: Removed frameNames, frames, childFrameNamed, findFrame, currentFrame,
        frameExists, incrementFrameCount, decrementFrameCount, topLevelFrameCount,
        generateFrameName, and requestFrameName functions.
        * page/Frame.cpp: (WebCore::Frame::requestFrame): Changed to use FrameTree::child
        instead of Frame::childFrameNamed.

        * page/FrameTree.h: Changed name to an atomic string. Changed childCount to unsigned.
        Added isDescendantOf, traverseNext, child, find, uniqueChildName.
        * page/FrameTree.cpp:
        (WebCore::FrameTree::setName): Changed to call uniqueChildName to handle name
        duplication logic.
        (WebCore::FrameTree::uniqueChildName): Added. Checks for duplication and generates
        an appropriate frame name if there is a duplicate.
        (WebCore::FrameTree::child): Added.
        (WebCore::FrameTree::find): Added.
        (WebCore::FrameTree::isDescendantOf): Added.
        (WebCore::FrameTree::traverseNext): Added.

        * page/Page.h: Added setGroupName, groupName, frameNamespace, incrementFrameCount,
        decrementFrameCount, and frameCount.
        * page/Page.cpp:
        (WebCore::Page::Page): Initialize m_frameCount to 0.
        (WebCore::Page::~Page): Call setGroupName to remove the page from any group it's in.
        (WebCore::Page::setGroupName): Added.
        (WebCore::Page::frameNamespace): Added.

        * platform/win/TemporaryLinkStubs.cpp: Removed FrameWin::generateFrameName.

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

16 years ago Reviewed by darin, harrison
justing [Sat, 11 Mar 2006 01:35:55 +0000 (01:35 +0000)]
    Reviewed by darin, harrison

        ~3x speedup pasting plain text from the console

        * dom/dom_position.cpp:

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

16 years agoFont refactoring on win32.
hyatt [Sat, 11 Mar 2006 00:19:56 +0000 (00:19 +0000)]
Font refactoring on win32.

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

16 years ago Reviewed by Eric.
mjs [Fri, 10 Mar 2006 23:20:21 +0000 (23:20 +0000)]
    Reviewed by Eric.

        - fix win32 networking to properly use async load API

        * platform/win/TransferJobWin.cpp:

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

16 years ago2006-03-10 Eric Seidel <eseidel@apple.com>
eseidel [Fri, 10 Mar 2006 21:15:21 +0000 (21:15 +0000)]
2006-03-10  Eric Seidel  <eseidel@apple.com>

        Fix build.

        * platform/win/FontWin.cpp:
        * platform/win/TemporaryLinkStubs.cpp:

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

16 years agoLayoutTests:
adele [Fri, 10 Mar 2006 21:13:35 +0000 (21:13 +0000)]

        - Test for <rdar://problem/4469419>
        REGRESSION: RadioButtons are not checked in Safari when name attribute comes after checked attribute

        * fast/forms/radio-attr-order-expected.checksum: Added.
        * fast/forms/radio-attr-order-expected.png: Added.
        * fast/forms/radio-attr-order-expected.txt: Added.
        * fast/forms/radio-attr-order.html: Added.


        Reviewed by Tim Hatcher.

        - fix for <rdar://problem/4469419>
        REGRESSION: RadioButtons are not checked in Safari when name attribute comes after checked attribute

        Test: fast/forms/radio-attr-order.html

        * khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::parseMappedAttribute):
        When the name attribute gets parsed for radio buttons, if its supposed to be checked by default, call setChecked.
        Also, when the name changes on a checked button, we don't need to check that
        there's a form before removing it as the checked button for that group.
        That was an old check from when we required a form to keep track of checked buttons.

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

16 years ago2006-03-10 Eric Seidel <eseidel@apple.com>
eseidel [Fri, 10 Mar 2006 21:05:05 +0000 (21:05 +0000)]
2006-03-10  Eric Seidel  <eseidel@apple.com>

        Reviewed by darin.

        Add real ScrollViewWin implementation (fixes redraw bugs, adds ScrollBar support.)

        * platform/ScrollView.h:
        * platform/Widget.h:
        * platform/win/FontWin.cpp:
        (WebCore::getCairoFont): Fix crasher.
        * platform/win/ScrollViewWin.cpp:
        * platform/win/TemporaryLinkStubs.cpp:
        * platform/win/WidgetWin.cpp:
        (WebCore::Widget::windowHandle): mark as const

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

16 years ago Rename the m_renderer variable to m_dataSet now that the class name
hyatt [Fri, 10 Mar 2006 19:28:14 +0000 (19:28 +0000)]
    Rename the m_renderer variable to m_dataSet now that the class name
        has changed.

        Reviewed by adele

        * platform/Font.cpp:
        * platform/Font.h:
        * platform/FontDataSet.h:
        * platform/mac/FontMac.mm:
        * platform/win/FontWin.cpp:

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

16 years ago Rename FontRenderer to FontDataSet.
hyatt [Fri, 10 Mar 2006 18:58:31 +0000 (18:58 +0000)]
    Rename FontRenderer to FontDataSet.

        Reviewed by adele

        * WebCore.xcodeproj/project.pbxproj:
        * platform/Font.cpp:
        * platform/Font.h:
        * platform/FontDataSet.h: Added.
        * platform/FontRenderer.h: Removed.
        * platform/mac/FontMac.mm:
        * platform/win/FontWin.cpp:

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

16 years agoFIx a couple of font crashers.
hyatt [Fri, 10 Mar 2006 18:40:58 +0000 (18:40 +0000)]
FIx a couple of font crashers.

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

16 years ago Reviewed by adele
justing [Fri, 10 Mar 2006 07:37:36 +0000 (07:37 +0000)]
    Reviewed by adele

        Should use an iterator in CompositeEditCommand::doUnapply()

        ~30% speedup of a big undo

        * editing/CompositeEditCommand.cpp:

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

16 years ago Reviewed by Tim O.
adele [Fri, 10 Mar 2006 02:20:26 +0000 (02:20 +0000)]
    Reviewed by Tim O.

        Removed unnecessary alerts in TextIterator advance methods.
        We want to be able to use advance() even if the iterator is already at the end.

        * editing/visible_text.cpp:
        (khtml::TextIterator::advance): remove assert since TextIterator will just do nothing if its already at the end.
        (khtml::CharacterIterator::advance): ditto.
        * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex):
        Since the asserts in the iterator are removed, we don't have to check for it.atEnd() before calling advance.

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

16 years agoMake text paint with the pen color on Win32. Force ClearType quality. Make the...
hyatt [Thu, 9 Mar 2006 23:39:06 +0000 (23:39 +0000)]
Make text paint with the pen color on Win32.  Force ClearType quality.  Make the face validation case-insensitive.

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

16 years agoLayoutTests:
adele [Thu, 9 Mar 2006 23:30:15 +0000 (23:30 +0000)]

        - Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=7675
        When new text fields change from visibility:hidden to visibility:visible, value doesn't display

        * fast/forms/input-appearance-visibility-expected.checksum: Added.
        * fast/forms/input-appearance-visibility-expected.png: Added.
        * fast/forms/input-appearance-visibility-expected.txt: Added.
        * fast/forms/input-appearance-visibility.html: Added.


        Reviewed by Hyatt.

        - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7675
        When new text fields change from visibility:hidden to visibility:visible, value doesn't display

        Test: fast/forms/input-appearance-visibility.html

        * rendering/RenderTextField.cpp: (WebCore::RenderTextField::setStyle):
        Sets the style directly on the children of the inner div.

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

16 years agoSetBkMode to transparent so that TextOut doesn't erase the background when drawing...
hyatt [Thu, 9 Mar 2006 22:48:30 +0000 (22:48 +0000)]
SetBkMode to transparent so that TextOut doesn't erase the background when drawing text.

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

16 years agoCheck in basic text rendering on Win32.
hyatt [Thu, 9 Mar 2006 21:24:54 +0000 (21:24 +0000)]
Check in basic text rendering on Win32.

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

16 years ago Reviewed by harrison
justing [Thu, 9 Mar 2006 20:02:21 +0000 (20:02 +0000)]
    Reviewed by harrison

        Fixed formatting and changed functions to take in
        a const Selection& instead of a Selection.

        * editing/ModifySelectionListLevelCommand.cpp:
        * editing/ModifySelectionListLevelCommand.h:

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

16 years agoLayoutTests:
adele [Thu, 9 Mar 2006 19:43:30 +0000 (19:43 +0000)]

        - Tests for http://bugzilla.opendarwin.org/show_bug.cgi?id=6814
        Implement selection methods for RenderTextField

        * fast/forms/input-appearance-selection-expected.checksum: Added.
        * fast/forms/input-appearance-selection-expected.png: Added.
        * fast/forms/input-appearance-selection-expected.txt: Added.
        * fast/forms/input-appearance-selection.html: Added.


        Reviewed by Darin.

        - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6814
        Implement selection methods for RenderTextField

        Test: fast/forms/input-appearance-selection.html

        * rendering/RenderTextField.cpp:
        (WebCore::RenderTextField::createDivStyle): removed extra space.
        (WebCore::RenderTextField::select): Removed checks for document and m_div since there should always be a document and
         m_div will be initialized as the renderer gets attached.
        (WebCore::RenderTextField::selectionStart): Calls indexForVisiblePosition.
        (WebCore::RenderTextField::selectionEnd): ditto.
        (WebCore::RenderTextField::setSelectionStart): calls setSelectionRange.
        (WebCore::RenderTextField::setSelectionEnd): ditto.
        (WebCore::RenderTextField::setSelectionRange): gets VisiblePositions for both indices, and sets the selection.
        (WebCore::RenderTextField::visiblePositionForIndex): Added helper method.
        (WebCore::RenderTextField::indexForVisiblePosition): Added helper method.
        * rendering/RenderTextField.h: Added new helper methods for selection.

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

16 years ago Reviewed by John Sullivan.
darin [Thu, 9 Mar 2006 17:19:48 +0000 (17:19 +0000)]
    Reviewed by John Sullivan.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7681
          memory leak in the plug-in tests

        * DumpRenderTree/TestNetscapePlugIn.subproj/main.c:
        (NPP_Destroy): Added code to release the plug-in object. This is the leak fix.
        (NPP_SetWindow): Remove unneeded code to store the window pointer.

        * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.c:
        Moved the browser global in here since it's declared in this file's header.
        Changed the code to set up the pluginClass structure to not use function
        pointer casts. Those are dangerous because they can hide many types of mismatch.
        And indeed when I did this I discovered that many functions were missing their
        boolean return values or had parameter declarations with the wrong types.
        (pluginGetProperty): Use STRINGZ_TO_NPVARIANT macro for greater simplicity and
        clarity. Added boolean return value: return true when successful and false when not.
        (pluginSetProperty): Added boolean return value, return false since we have no
        properties we can set.
        (pluginInvoke): Added boolean return value. Return true when successful and false
        when not. Use NPVARIANT macros where appropriate. Added a missing release for the
        return value from calling the browser. Changed code to put the strings in malloc
        buffers instead of relying on GCC's extension that allows variable-sized arrays
        on the stack.
        (pluginInvokeDefault): Added boolean return value, return false since we have no
        default function to call.
        (pluginInvalidate): Added missing parameter. Removed comment.
        (pluginAllocate): Removed unneeded cast. This is C code, not C++, so you don't have
        to cast the result of malloc.
        (pluginDeallocate): Removed uneeded cast.

        * DumpRenderTree/TestNetscapePlugIn.subproj/PluginObject.h: Removed some unneeded
        includes. Changed our PluginObject to use NPObject instead of re-declaring fields
        that match NPObject's fields. Removed unused NPWindow pointer.

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

16 years agoLayoutTests:
darin [Thu, 9 Mar 2006 16:35:57 +0000 (16:35 +0000)]

        Reviewed by Darin.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=7583
          DRT hangs when doing eventSender.mouseDown on native widgets

        * fast/events/event-sender-mouse-click-expected.txt: Added.
        * fast/events/event-sender-mouse-click.html: Added.


        Test: fast/events/event-sender-mouse-click.html

        Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7583
          DRT hangs when doing eventSender.mouseDown on native widgets

        * DumpRenderTree/DumpRenderTree.m:
        (+[EventSendingController isSelectorExcludedFromWebScript:]):
        (-[EventSendingController mouseClick]): Simulates a click in a native
        widget by queueing a mouseUp before sending the mouseDown, so that
        the widget's mouse tracking event loop doesn't hang indefinitely.

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

16 years agoLayoutTests:
darin [Thu, 9 Mar 2006 16:32:31 +0000 (16:32 +0000)]

        Reviewed by Darin.

        * fast/canvas: Added.

        - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6103
          Rectangles are not filled according to the Web Applications Working Draft

        * fast/canvas/fillrect_gradient-expected.checksum: Added.
        * fast/canvas/fillrect_gradient-expected.png: Added.
        * fast/canvas/fillrect_gradient-expected.txt: Added.
        * fast/canvas/fillrect_gradient.html: Added.

        - moved other canvas tests here

        * fast/canvas/image-object-in-canvas-expected.checksum: Added.
        * fast/canvas/image-object-in-canvas-expected.png: Added.
        * fast/canvas/image-object-in-canvas-expected.txt: Added.
        * fast/canvas/image-object-in-canvas.html: Added.
        * fast/canvas/quadraticCurveTo-expected.checksum: Added.
        * fast/canvas/quadraticCurveTo-expected.png: Added.
        * fast/canvas/quadraticCurveTo-expected.txt: Added.
        * fast/canvas/quadraticCurveTo.xml: Added.
        * fast/canvas/resources: Added.
        * fast/canvas/resources/apple.gif: Added.

        * fast/dom/image-object-in-canvas-expected.checksum: Removed.
        * fast/dom/image-object-in-canvas-expected.png: Removed.
        * fast/dom/image-object-in-canvas-expected.txt: Removed.
        * fast/dom/image-object-in-canvas.html: Removed.
        * fast/dom/quadraticCurveTo-expected.checksum: Removed.
        * fast/dom/quadraticCurveTo-expected.png: Removed.
        * fast/dom/quadraticCurveTo-expected.txt: Removed.
        * fast/dom/quadraticCurveTo.xml: Removed.


        Test: fast/canvas/fillrect_gradient.html

        Reviewed by Darin.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6103
          Rectangles are not filled according to the Web Applications Working Draft

        * khtml/ecma/kjs_html.cpp: (KJS::Context2DFunction::callAsFunction):
        Modified fillrect function to check and use a gradient if set.
        Builds a path to fill rects with a gradient.

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

16 years ago No test because this fixes an existing pixel test (and does not affect
darin [Thu, 9 Mar 2006 16:10:09 +0000 (16:10 +0000)]
    No test because this fixes an existing pixel test (and does not affect
        the render tree).

        Reviewed by Maciej.

        - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7664
          REGRESSION: tests that include numeric list markers fail in pixel mode

        * platform/GraphicsContext.cpp:
        (WebCore::GraphicsContext::drawText): Restored AlignRight behavior.

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