WebKit-https.git
18 years agoWebKit:
rjw [Wed, 19 May 2004 01:16:40 +0000 (01:16 +0000)]
WebKit:
Finished implementation of windowScriptObject.

        Reviewed by Maciej.

        * WebView.subproj/WebView.m:
        (-[WebView windowScriptObject]):

WebCore:
Finished implementing support for windowScriptObject.

        Reviewed by Maciej.

        * khtml/khtml_part.cpp:
        (KHTMLPart::begin):
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::KWQKHTMLPart):
        (KWQKHTMLPart::~KWQKHTMLPart):
        (KWQKHTMLPart::windowScriptObject):
        * kwq/WebCoreBridge.mm:
        (updateRenderingForBindings):

JavaScriptCore:
Finsished implementing support for windowScriptObject.
Had to make WebScriptObjectPrivate.h accessible from
WebCore.

        Reviewed by Maciej.

        * JavaScriptCore.pbproj/project.pbxproj:
        * bindings/objc/WebScriptObjectPrivate.h:

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

18 years ago- roll out previous change -- I (Vicki) accidentally committed this change!
kdecker [Wed, 19 May 2004 00:57:25 +0000 (00:57 +0000)]
- roll out previous change -- I (Vicki) accidentally committed this change!

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

18 years ago Reviewed by NOBODY (OOPS!).
kdecker [Wed, 19 May 2004 00:50:03 +0000 (00:50 +0000)]
    Reviewed by NOBODY (OOPS!).

        * khtml/xml/dom_stringimpl.cpp:
        (DOM::parseLength):

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

18 years agoWebKit:
rjw [Tue, 18 May 2004 23:15:30 +0000 (23:15 +0000)]
WebKit:
Added WebKit portion of webView:windowScriptObjectAvailable:
implementation.  Still need to implement creating the WebScriptObject
wrapper on the WebCore side.

        Reviewed by Maciej.

Removed "_" from _setPageWidthForPrinting:.  This method facilitates
a work-around for carbon printing.  At some point we may make this
method public API.

        Reviewed by Chris.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge overrideMediaType]):
        (-[WebBridge windowObjectCleared]):
        * WebView.subproj/WebDefaultFrameLoadDelegate.m:
        (-[WebDefaultFrameLoadDelegate webView:windowScriptObjectAvailable:]):
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView setPageWidthForPrinting:]):

WebCore:
Added stubs to get the WebScriptObject for the window
JS object.

Made updateRenderingForBindings more robust when handed a
nil root object.  This was causing a crash in DB.  Still need to
address root cause of nil root object.

        Reviewed by Maciej.

        * khtml/khtml_part.cpp:
        (KHTMLPart::begin):
        * kwq/KWQKHTMLPart.h:
        * kwq/KWQKHTMLPart.mm:
        (KWQKHTMLPart::windowScriptObject):
        (KWQKHTMLPart::partClearedInBegin):
        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (updateRenderingForBindings):
        (-[WebCoreBridge init]):
        (-[WebCoreBridge stringByEvaluatingJavaScriptFromString:]):
        (-[WebCoreBridge windowScriptObject]):

JavaScriptCore:
Use KVC to set/get values instead of directly accessing
ivars.

        Reviewed by Maciej.

        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject callWebScriptMethod:withArguments:]):
        (+[WebScriptObject _convertValueToObjcValue:KJS::root:Bindings::]):
        * bindings/objc/objc_runtime.mm:
        (ObjcField::valueFromInstance):
        (convertValueToObjcObject):
        (ObjcField::setValueToInstance):

WebKitExamples:
Changed printing work-around to use a method that may be
made public at some point in the future.

        Reviewed by Chris.

        * CarbonWeb/TWebWindow.cp:

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

18 years ago Reviewed by Ken.
mjs [Tue, 18 May 2004 22:18:06 +0000 (22:18 +0000)]
    Reviewed by Ken.

<rdar://problem/3656719>: Implement outerHTML and setOuterHTML DOM extensions

They were already implemented (by Chris), all that was required
was exporting them to JavaScript.

        * khtml/dom/html_element.cpp:
        (HTMLElement::outerHTML): Call impl.
        (HTMLElement::setOuterHTML): Ditto.
        * khtml/dom/html_element.h: Prototype new methods.
        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLElement::getValueProperty): Add OuterHTML.
        (KJS::HTMLElement::putValue): Add OuterHTML.
        * khtml/ecma/kjs_html.h: Add new enum values.
        * khtml/ecma/kjs_html.lut.h: Regenerated.

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

18 years ago Reviewed by Hyatt
kocienda [Tue, 18 May 2004 20:20:40 +0000 (20:20 +0000)]
    Reviewed by Hyatt

        Removed support for designMode attribute, which we will not be supporting for Tiger.
        Removed inEditMode from KHTMLPart. This cached designMode value.
        Removed KHTMLPart::isEditingAtNode function. Asking a node if it is content-editable
        is a suitable replacement.

        * khtml/dom/dom_misc.h: Remove TristateFlag enum that was used to track designMode values.
        * khtml/dom/html_document.cpp: Remove designMode and setDesignMode.
        * khtml/dom/html_document.h: Ditto.
        * khtml/ecma/kjs_html.cpp:
        (KJS::HTMLDocument::tryGet): Remove designMode.
        (KJS::HTMLDocument::putValue): Ditto.
        * khtml/ecma/kjs_html.lut.h:
        (KJS::): Ditto.
        * khtml/html/html_documentimpl.cpp: Remove designMode and setDesignMode.
        * khtml/html/html_documentimpl.h: Ditto.
        * khtml/khtml_part.cpp: Remove setEditMode, editMode, inEditMode, and isEditingAtNode.
        * khtml/khtml_part.h: Ditto.
        * khtml/khtmlpart_p.h: Remove m_inEditMode variable.
        (KHTMLPartPrivate::KHTMLPartPrivate):
        * khtml/khtmlview.cpp:
        (KHTMLView::focusNextPrevNode): Change over one use in tree of isEditingAtNode to use
        isContentEditable instead. isContentEditable will be modified in future patch to handle
        whether the per-part switch has been thrown to override whether something is editable or not.

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

18 years ago Reviewed by John.
darin [Tue, 18 May 2004 16:55:52 +0000 (16:55 +0000)]
    Reviewed by John.

        - fixed <rdar://problem/3520322>: "can't use <WebKit/HIWebView.h> or <WebKit/CarbonUtils.h> from non-Objective C"

        * Carbon.subproj/CarbonUtils.h: Added ifdefs so file compiles when included from non-Objective-C.
        Changed style to match other Carbon headers a bit more closely. Also remove unnecessary includes.
        * Carbon.subproj/HIWebView.h: Ditto.

        - fixed <rdar://problem/3648505>: "this text file scrolls to the second line instead of first when pressing home"

        * WebView.subproj/WebFrameView.m:
        (-[WebFrameView _scrollToTopLeft]): Scroll to origin.y instead of assuming that top is 0; can be non-0 for text view.
        (-[WebFrameView _scrollToBottomLeft]): Use NSMaxY instead of height for the same reason.

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

18 years ago Fix for performance "regression." This wasn't really a regression... I just forgot...
hyatt [Tue, 18 May 2004 05:01:56 +0000 (05:01 +0000)]
Fix for performance "regression."  This wasn't really a regression... I just forgot to update a variable that
I can only assume is used by the PLT.

        * WebView.subproj/WebFrame.m:
        (-[WebFrame _setState:]):

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

18 years agoWebKit:
cblu [Tue, 18 May 2004 01:33:49 +0000 (01:33 +0000)]
WebKit:

Implemented new WebView pasteboard methods. Made a lot of factoring changes related to pasteboard management.

        Reviewed by john.

        * Misc.subproj/WebNSPasteboardExtras.h:
        * Misc.subproj/WebNSPasteboardExtras.m:
        (+[NSPasteboard _web_writableTypesForURL]): renamed to not include "drag" these types are also used for copying
        (+[NSPasteboard _web_writableTypesForImage]): new
        (-[NSPasteboard _web_bestURL]): tweak
        (-[NSPasteboard _web_writeURL:andTitle:types:]): take an array of types that this method should write, don't declare the types since this complicates things for the caller
        (-[NSPasteboard _web_writeImage:URL:title:archive:types:]): ditto
        * Misc.subproj/WebNSViewExtras.m:
        (-[NSView _web_dragImage:archive:rect:URL:title:event:]): call renamed methods
        * WebView.subproj/WebDefaultContextMenuDelegate.m:
        (-[WebDefaultUIDelegate copyLinkToClipboard:]): call code factored out to WebView
        (-[WebDefaultUIDelegate copyImageToClipboard:]): ditto
        * WebView.subproj/WebDocumentPrivate.h:
        * WebView.subproj/WebHTMLView.h:
        * WebView.subproj/WebHTMLView.m:
        (-[WebHTMLView _selectedRTFData]): new factored out method
        (-[WebHTMLView _writeSelectionToPasteboard:]): factored code out to writeSelectionWithPasteboardTypes:toPasteboard:
        (-[WebHTMLView _dragImageForLinkElement:]): tweak
        (-[WebHTMLView _handleMouseDragged:]): call renamed methods
        (-[WebHTMLView pasteboardTypesForSelection]): new
(-[WebTextView writeSelectionWithPasteboardTypes:toPasteboard:]): new, code moved from _writeSelectionToPasteboard:
        * WebView.subproj/WebHTMLViewPrivate.h:
        * WebView.subproj/WebImageView.h:
        * WebView.subproj/WebImageView.m:
        (-[WebImageView writeImageToPasteboard:types:]): call renamed methods
        (-[WebImageView copy:]):
        (-[WebImageView writeSelectionToPasteboard:types:]): call renamed methods
        * WebView.subproj/WebTextView.h:
        * WebView.subproj/WebTextView.m:
        (-[WebTextView pasteboardTypesForSelection]): new
        (-[WebTextView writeSelectionWithPasteboardTypes:toPasteboard:]): new
        * WebView.subproj/WebView.m:
        (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]): new
        (-[WebView _writeLinkElement:withPasteboardTypes:toPasteboard:]): mew
        (-[WebView dragOperationForDraggingInfo:]): implemented API
        (-[WebView draggingEntered:]): call API
        (-[WebView draggingUpdated:]): ditto
        (-[WebView concludeDragOperation:]): ditto
        (-[WebView pasteboardTypesForSelection]): implemented API
        (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): ditto
        (-[WebView pasteboardTypesForElement:]): ditto
        (-[WebView writeElement:withPasteboardTypes:toPasteboard:]): ditto
        * WebView.subproj/WebViewPrivate.h:

WebBrowser:

Change to support renamed WebKit methods

        Reviewed by john.

        * BrowserNSPasteboardExtras.m: call renamed _web_writeURL
        * ContextMenuHandler.m:
        (-[BrowserWebView copyImageAddress:]): ditto

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

18 years agoJavaScriptCore:
rjw [Tue, 18 May 2004 01:29:50 +0000 (01:29 +0000)]
JavaScriptCore:
Implemented new API for WebScriptObject.

Fixed <rdar://problem/3657145>: (objc to javascript method calls do not cause updates.)
Fixed <rdar://problem/3654887>: (Update to JSC to refer to new JSObject LiveConnect object)  (w/ help from Vicki)

        Reviewed by Hyatt.

        * JavaScriptCore.pbproj/project.pbxproj:
        * bindings/c/c_instance.cpp:
        (CInstance::invokeMethod):
        * bindings/jni/jni_instance.cpp:
        (JavaInstance::invokeMethod):
        * bindings/jni/jni_jsobject.cpp:
        (JSObject::convertValueToJObject):
        * bindings/jni/jni_utility.cpp:
        (KJS::Bindings::getJNIField):
        * bindings/objc/WebScriptObject.mm:
        (_didExecute):
        (-[WebScriptObject _initWithObjectImp:KJS::root:Bindings::]):
        (-[WebScriptObject KJS::]):
        (-[WebScriptObject dealloc]):
        (+[WebScriptObject throwException:]):
        (listFromNSArray):
        (-[WebScriptObject callWebScriptMethod:withArguments:]):
        (-[WebScriptObject evaluateWebScript:]):
        (-[WebScriptObject setValue:forKey:]):
        (-[WebScriptObject valueForKey:]):
        (-[WebScriptObject stringRepresentation]):
        (+[WebScriptObject _convertValueToObjcValue:KJS::root:Bindings::]):
        (+[WebUndefined undefined]):
        (-[WebUndefined initWithCoder:]):
        (-[WebUndefined encodeWithCoder:]):
        (-[WebUndefined copyWithZone:]):
        (-[WebUndefined retain]):
        (-[WebUndefined release]):
        (-[WebUndefined retainCount]):
        (-[WebUndefined autorelease]):
        (-[WebUndefined dealloc]):
        (-[WebUndefined copy]):
        (-[WebUndefined replacementObjectForPortCoder:]):
        * bindings/objc/WebScriptObjectPrivate.h: Added.
        * bindings/objc/objc_class.mm:
        (ObjcClass::methodsNamed):
        (ObjcClass::fieldNamed):
        * bindings/objc/objc_instance.mm:
        (ObjcInstance::invokeMethod):
        * bindings/objc/objc_jsobject.h:
        * bindings/objc/objc_jsobject.mm:
        * bindings/objc/objc_runtime.mm:
        (ObjcField::valueFromInstance):
        * bindings/objc/objc_utility.mm:
        (KJS::Bindings::JSMethodNameToObjCMethodName):
        (KJS::Bindings::convertValueToObjcValue):
        (KJS::Bindings::convertObjcValueToValue):
        * bindings/runtime.cpp:
        (Instance::setDidExecuteFunction):
        (Instance::didExecuteFunction):
        (Instance::setValueOfField):
        * bindings/runtime.h:
        * bindings/testbindings.mm:
        (+[MyFirstInterface webScriptNameForSelector:]):
        (-[MyFirstInterface callJSObject::]):

WebCore:
Implemented new API for WebScriptObject.
Fixed <rdar://problem/3657145>: (objc to javascript method calls do not cause updates.)

        Reviewed by Hyatt.

        * kwq/WebCoreBridge.mm:
        (updateRenderingForBindings):
        (-[WebCoreBridge init]):

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

18 years ago Reviewed by John
kocienda [Mon, 17 May 2004 21:56:34 +0000 (21:56 +0000)]
    Reviewed by John

        Remove overrides in WebView for scrollPageDown and scrollPageUp.
        NSView behavior gives us just what we want, and there is no
        special behavior required for editing.

        <rdar://problem/3655364>: "Editing:�scrollPageDown:�ethod�nimplemented�WebKit�diting�PI)"
        <rdar://problem/3655365>: "Editing:�scrollPageUp:�ethod�nimplemented�WebKit�diting�PI)"

        * WebView.subproj/WebView.h: Comment methods out and add a note about why.
        * WebView.subproj/WebView.m: Remove stubbed out implementation.

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

18 years ago Reviewed by mjs.
vicki [Sat, 15 May 2004 01:06:15 +0000 (01:06 +0000)]
    Reviewed by mjs.

<rdar://problem/3642427>: framework marketing number should be 2.0 for DoubleBarrel release

        * JavaScriptCore.pbproj/project.pbxproj: change CFBundleShortVersionString to 2.0
        * WebCore.pbproj/project.pbxproj: change CFBundleShortVersionString to 2.0
        * WebKit.pbproj/project.pbxproj: change CFBundleShortVersionString to 2.0

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

18 years ago Reviewed by Darin, coded by Maciej.
darin [Fri, 14 May 2004 23:02:28 +0000 (23:02 +0000)]
    Reviewed by Darin, coded by Maciej.

        - fixed extra repaints when doing auto-fill checks on all pages that have pop-up buttons

        * kwq/KWQComboBox.mm:
        (QComboBox::populateMenu): Set the populating-menu flag and clear it when done.
        (-[KWQPopUpButton setPopulatingMenu:]): Added. Sets flag.
        (-[KWQPopUpButton setNeedsDisplayInRect:]): Do nothing if the flag is set.

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

18 years ago Eliminate timedLayout.
hyatt [Fri, 14 May 2004 22:56:11 +0000 (22:56 +0000)]
Eliminate timedLayout.

        Reviewed by darin

        * WebView.subproj/WebFrame.m:
        (-[WebFramePrivate dealloc]):
        (-[WebFrame _detachFromParent]):
        (-[WebFrame _transitionToLayoutAcceptable]):
        (-[WebFrame _setState:]):
        (-[WebFrame _checkLoadCompleteForThisFrame]):
        (-[WebFrame stopLoading]):
        * WebView.subproj/WebFramePrivate.h:

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

18 years agomove the Safari-140 release markers in the WebCore and WebKit ChangeLogs
vicki [Fri, 14 May 2004 22:51:05 +0000 (22:51 +0000)]
move the Safari-140 release markers in the WebCore and WebKit ChangeLogs

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

18 years ago Reviewed by Dave.
darin [Fri, 14 May 2004 22:44:23 +0000 (22:44 +0000)]
    Reviewed by Dave.

        - fixed <rdar://problem/3650026>: "background property doesn't work right on webdevtips.com due to background:inherit"

        * khtml/css/cssstyleselector.cpp: (khtml::CSSStyleSelector::applyDeclarations):
        Added CSS_PROP_BACKGROUND to the list of properties that must be applied in the first pass.

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

18 years ago Fixed: <rdar://problem/3655495>: (exception loading applets)
cblu [Fri, 14 May 2004 21:21:14 +0000 (21:21 +0000)]
Fixed: <rdar://problem/3655495>: (exception loading applets)

        Reviewed by kocienda.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): when calling old cocoa plug-ins, use old keys

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

18 years ago Fixed: <rdar://problem/3655204>: (repro assertion failure and crash loading java...
cblu [Fri, 14 May 2004 20:59:58 +0000 (20:59 +0000)]
Fixed: <rdar://problem/3655204>: (repro assertion failure and crash loading java applets)

        Reviewed by kocienda.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]): call pluginViewWithArguments: for old Cocoa plug-ins

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

18 years ago Fix image loading for <input type=image> and <object>. Make sure it works dynamical...
hyatt [Fri, 14 May 2004 19:28:42 +0000 (19:28 +0000)]
Fix image loading for <input type=image> and <object>.  Make sure it works dynamically and make sure
the renderer is properly null-checked at attach time.

        Reviewed by darin

        * khtml/html/html_formimpl.cpp:
        (HTMLInputElementImpl::HTMLInputElementImpl):
        (HTMLInputElementImpl::~HTMLInputElementImpl):
        (HTMLInputElementImpl::parseHTMLAttribute):
        (HTMLInputElementImpl::attach):
        * khtml/html/html_formimpl.h:
        * khtml/html/html_objectimpl.cpp:
        (HTMLObjectElementImpl::HTMLObjectElementImpl):
        (HTMLObjectElementImpl::~HTMLObjectElementImpl):
        (HTMLObjectElementImpl::parseHTMLAttribute):
        (HTMLObjectElementImpl::attach):
        * khtml/html/html_objectimpl.h:

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

18 years agoset version number to 141u
vicki [Fri, 14 May 2004 19:09:21 +0000 (19:09 +0000)]
set version number to 141u

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

18 years agoSafari-140 stamp
vicki [Fri, 14 May 2004 19:05:04 +0000 (19:05 +0000)]
Safari-140 stamp

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

18 years ago Copied headers from WebCore.
cblu [Fri, 14 May 2004 17:29:55 +0000 (17:29 +0000)]
Copied headers from WebCore.

        * DOM.subproj/DOMCore.h:
        * DOM.subproj/DOMEvents.h:

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

18 years ago - Made DOMEventTarget a formal protocol that is implemented by DOMNode
cblu [Fri, 14 May 2004 17:27:43 +0000 (17:27 +0000)]
- Made DOMEventTarget a formal protocol that is implemented by DOMNode
- Made DOMEventListener a formal protocol that any object can implement

        Reviewed by kocienda.

        * kwq/DOMCore.h:
        * kwq/DOMEvents.h:

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

18 years ago Reviewed by me
kocienda [Fri, 14 May 2004 14:23:20 +0000 (14:23 +0000)]
    Reviewed by me

        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Fixed a compile error: undeclared identifier.
        Looked like a typo.

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

18 years agoWebKit:
rjw [Fri, 14 May 2004 01:23:24 +0000 (01:23 +0000)]
WebKit:
Backed out mistaken change that I didn't mean to checkin.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):

JavaScriptCore:
Fixed indentation.

        Reviewed by Chris.

        * ChangeLog:
        * bindings/objc/WebScriptObject.h:

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

18 years agoWebKit:
rjw [Fri, 14 May 2004 01:08:24 +0000 (01:08 +0000)]
WebKit:
Updated to reflect new API.

        Reviewed by Chris.

        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge setIsSelected:forView:]):
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _reloadForPluginChanges]):

WebCore:
Removed vestigial isSelected method.

        Reviewed by Chris.

        * kwq/KWQWidget.h:
        * kwq/KWQWidget.mm:
        (QWidget::setIsSelected):
        * kwq/WebCoreBridge.h:

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

18 years ago Fixed some indenting issues in public headers.
cblu [Fri, 14 May 2004 00:40:10 +0000 (00:40 +0000)]
Fixed some indenting issues in public headers.

        * Plugins.subproj/WebJavaPlugIn.h:
        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebScriptObject.h:
        * WebView.subproj/WebEditingDelegate.h:
        * WebView.subproj/WebFrameView.h:
        * WebView.subproj/WebPolicyDelegate.h:
        * WebView.subproj/WebResourceLoadDelegate.h:
        * WebView.subproj/WebView.h:

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

18 years ago Reviewed by Chris
kocienda [Fri, 14 May 2004 00:30:06 +0000 (00:30 +0000)]
    Reviewed by Chris

        Moved -DOMDocument convenience back to private header.
        I mistakenly moved it to the public header earlier today.

        * WebView.subproj/WebView.h: Removed
        * WebView.subproj/WebViewPrivate.h: Re-added

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

18 years ago Updated to implementation to reflect new API. Left old SPI
rjw [Fri, 14 May 2004 00:24:54 +0000 (00:24 +0000)]
Updated to implementation to reflect new API.  Left old SPI
in place for compatibility.  Can remove when the Java plug-in
updates.

        Reviewed by Chris.

        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebPluginContainer.h:
        * Plugins.subproj/WebPluginController.h:
        * Plugins.subproj/WebPluginController.m:
        (-[WebPluginController startAllPlugins]):
        (-[WebPluginController stopAllPlugins]):
        (-[WebPluginController addPlugin:]):
        (-[WebPluginController destroyAllPlugins]):
        (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
        (-[WebPluginController showURL:inFrame:]):
        (-[WebPluginController webPlugInContainerShowStatus:]):
        (-[WebPluginController showStatus:]):
        (-[WebPluginController webPlugInContainerSelectionColor]):
        (-[WebPluginController selectionColor]):
        (-[WebPluginController webFrame]):

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

18 years agoTests:
cblu [Thu, 13 May 2004 23:58:43 +0000 (23:58 +0000)]
Tests:

Updated Blot to use new API's.

        * Blot/BlotDocument.m:
        (-[BlotDocument dataRepresentationOfType:]):
        (-[BlotDocument webView:didFinishLoadForFrame:]):

WebCore:

Fixed: <rdar://problem/3616555>: (API: Make DOM extensions and WebKit DOM operations public)

        Reviewed by rjw.

        * kwq/DOM.h: added DOMExtensions.h
        * kwq/DOMHTML.h: renamed frame on DOMHTMLTableElement to frameBorders to avoid NSView conflicts
        * kwq/DOMHTML.mm:
        (-[DOMHTMLTableElement frameBorders]):
        (-[DOMHTMLTableElement setFrameBorders:]):

WebKit:

- Added stubs for WebView action and drag & drop customization API's
- Fixed: <rdar://problem/3616555>: (API: Make DOM extensions and WebKit DOM operations public)

        Reviewed by rjw.

        * DOM.subproj/WebDOMOperations.h: added remaining DOM operations
        * DOM.subproj/WebDOMOperationsPrivate.h:
* Misc.subproj/WebKit.h: added new public headers
        * WebKit.pbproj/project.pbxproj:
* WebKit.exp: added symbol for WebElementDOMNodeKey
        * WebView.subproj/WebUIDelegate.h: added new UI delegate methods
        * WebView.subproj/WebView.h: added new pasteboard related methods
        * WebView.subproj/WebView.m:
        (+[WebView URLFromPasteboard:]): new stub
        (+[WebView URLTitleFromPasteboard:]): new stub
        (-[WebView dragOperationForDraggingInfo:]): new stub
        (-[WebView pasteboardTypesForSelection]): new stub
        (-[WebView writeSelectionWithPasteboardTypes:toPasteboard:]): new stub
        (-[WebView pasteboardTypesForElement:]): new stub
        (-[WebView writeElement:withPasteboardTypes:toPasteboard:]): new stub
        * WebView.subproj/WebViewPrivate.h:

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

18 years agoAdded WebJavaPlugIn.h, fixed build problem.
rjw [Thu, 13 May 2004 23:39:06 +0000 (23:39 +0000)]
Added WebJavaPlugIn.h, fixed build problem.

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

18 years agoWebKit:
rjw [Thu, 13 May 2004 23:24:24 +0000 (23:24 +0000)]
WebKit:
Changed imports of all DOM headers.  DOM headers
should be imported using the normal #import <WebCore/foo.h>,
they import is modified when copied to WebKit.

Other approved API changes.  Currently unimplemented.

        Reviewed by Chris.

        * ChangeLog:
        * DOM.subproj/DOM.h:
        * DOM.subproj/DOMCSS.h:
        * DOM.subproj/DOMCore.h:
        * DOM.subproj/DOMEvents.h:
        * DOM.subproj/DOMExtensions.h:
        * DOM.subproj/DOMHTML.h:
        * DOM.subproj/DOMRange.h:
        * DOM.subproj/DOMStylesheets.h:
        * DOM.subproj/DOMTraversal.h:
        * DOM.subproj/DOMViews.h:
        * Plugins.subproj/WebPlugin.h:
        * Plugins.subproj/WebPluginContainer.h:
        * Plugins.subproj/WebPluginPackage.m:
        * Plugins.subproj/WebPluginViewFactory.h:
        * Plugins.subproj/WebScriptObject.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
        (-[WebBridge pluginViewWithPackage:attributes:baseURL:]):
        * WebKit.exp:
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebFrameLoadDelegate.h:
        * WebView.subproj/WebView.h:
        * WebView.subproj/WebView.m:
        (-[WebView windowScriptObject]):
        * copy-webcore-files-to-webkit:

WebCore:
Changed imports of all DOM headers.  DOM headers
should be imported using the normal #import <WebCore/foo.h>,
they import is modified when copied to WebKit.

        Reviewed by Chris.

        * ChangeLog:
        * kwq/DOM.h:
        * kwq/DOMCSS.h:
        * kwq/DOMCore.h:
        * kwq/DOMEvents.h:
        * kwq/DOMExtensions.h:
        * kwq/DOMHTML.h:
        * kwq/DOMInternal.h:
        * kwq/DOMRange.h:
        * kwq/DOMStylesheets.h:
        * kwq/DOMTraversal.h:
        * kwq/DOMViews.h:

JavaScriptCore:
Approved API changes.  Currently unimplemented.

        Reviewed by Chris.

        * ChangeLog:
        * JavaScriptCore.pbproj/project.pbxproj:
        * bindings/objc/WebScriptObject.h: Added.
        * bindings/objc/WebScriptObject.mm: Added.
        (+[WebScriptObject throwException:]):
        (-[WebScriptObject callWebScriptMethod:withArguments:]):
        (-[WebScriptObject evaluateWebScript:]):
        (-[WebScriptObject stringRepresentation]):
        (+[WebUndefined undefined]):
        (-[WebUndefined initWithCoder:]):
        (-[WebUndefined encodeWithCoder:]):
        (-[WebUndefined copyWithZone:]):

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

18 years ago Reviewed by me
kocienda [Thu, 13 May 2004 18:01:59 +0000 (18:01 +0000)]
    Reviewed by me

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::ApplyStyleCommandImpl::applyStyleIfNeeded): Fix deployment
        build bustage. Uninitialized variable.

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

18 years ago Reviewed by Kevin
kocienda [Thu, 13 May 2004 17:53:05 +0000 (17:53 +0000)]
    Reviewed by Kevin

        Move WebKit editing APIs to public API files.

        * WebCoreSupport.subproj/WebBridge.m: Add WebEditingDelegate include.
        * WebKit.pbproj/project.pbxproj: Go Xcode!
        * WebView.subproj/WebDefaultEditingDelegate.m: Remove WebViewPrivate include; add WebEditingDelegate include.
        * WebView.subproj/WebEditingDelegate.h: Added. New file.
        * WebView.subproj/WebView.h: Move API-approved interfaces to this file.
        * WebView.subproj/WebView.m: Add WebEditingDelegate include.
        * WebView.subproj/WebViewPrivate.h: Move API-approved interfaces from this file.

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

18 years agoWebCore:
kocienda [Thu, 13 May 2004 16:41:20 +0000 (16:41 +0000)]
WebCore:

        Reviewed by Hyatt

        Implemented first cut at text style change code.

        * khtml/editing/htmlediting.cpp:
        (khtml::ApplyStyleCommand::ApplyStyleCommand):
        (khtml::ApplyStyleCommand::~ApplyStyleCommand):
        (khtml::ApplyStyleCommand::impl):
        (khtml::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
        (khtml::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):
        (khtml::RemoveCSSPropertyCommand::impl):
        (khtml::RemoveCSSPropertyCommand::styleDeclaration):
        (khtml::RemoveCSSPropertyCommand::property):
        (khtml::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand):
        (khtml::RemoveNodeAttributeCommand::~RemoveNodeAttributeCommand):
        (khtml::RemoveNodeAttributeCommand::impl):
        (khtml::RemoveNodeAttributeCommand::element):
        (khtml::RemoveNodeAttributeCommand::attribute):
        (khtml::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand):
        (khtml::RemoveNodePreservingChildrenCommand::~RemoveNodePreservingChildrenCommand):
        (khtml::RemoveNodePreservingChildrenCommand::impl):
        (khtml::RemoveNodePreservingChildrenCommand::node):
        (khtml::SetNodeAttributeCommand::SetNodeAttributeCommand):
        (khtml::SetNodeAttributeCommand::~SetNodeAttributeCommand):
        (khtml::SetNodeAttributeCommand::impl):
        (khtml::SetNodeAttributeCommand::element):
        (khtml::SetNodeAttributeCommand::attribute):
        (khtml::SetNodeAttributeCommand::value):
        * khtml/editing/htmlediting.h:
        (khtml::):
        (khtml::ApplyStyleCommand::):

        Removed a bunch of unnecessary DOM namespace qualifiers.
        Fixed calls to parent(), which relied on the TreeShared interface to get a parent,
        and changed to the parentNode() DOM Node call, which is more suitable given the
        intention.

        * khtml/editing/htmlediting_impl.cpp:
        (khtml::CompositeEditCommandImpl::insertNodeBefore):
        (khtml::CompositeEditCommandImpl::insertNodeAfter):
        (khtml::CompositeEditCommandImpl::appendNode):
        (khtml::CompositeEditCommandImpl::removeNode):
        (khtml::CompositeEditCommandImpl::removeNodeAndPrune):
        (khtml::CompositeEditCommandImpl::removeNodePreservingChildren):
        (khtml::CompositeEditCommandImpl::splitTextNode):
        (khtml::CompositeEditCommandImpl::joinTextNodes):
        (khtml::CompositeEditCommandImpl::insertText):
        (khtml::CompositeEditCommandImpl::deleteText):
        (khtml::CompositeEditCommandImpl::replaceText):
        (khtml::CompositeEditCommandImpl::removeCSSProperty):
        (khtml::CompositeEditCommandImpl::removeNodeAttribute):
        (khtml::CompositeEditCommandImpl::setNodeAttribute):

        Text style change command implementations.
        There are a couple more parent() -> parentNode() changes in here as well.

        (khtml::ApplyStyleCommandImpl::ApplyStyleCommandImpl):
        (khtml::ApplyStyleCommandImpl::~ApplyStyleCommandImpl):
        (khtml::ApplyStyleCommandImpl::commandID):
        (khtml::ApplyStyleCommandImpl::doApply):
        (khtml::ApplyStyleCommandImpl::isHTMLStyleNode):
        (khtml::ApplyStyleCommandImpl::removeHTMLStyleNode):
        (khtml::ApplyStyleCommandImpl::removeCSSStyle):
        (khtml::ApplyStyleCommandImpl::removeCSSProperty):
        (khtml::ApplyStyleCommandImpl::setNodeAttribute):
        (khtml::ApplyStyleCommandImpl::removeNodeAttribute):
        (khtml::ApplyStyleCommandImpl::removeNodePreservingChildren):
        (khtml::ApplyStyleCommandImpl::mustExlicitlyApplyStyle):
        (khtml::ApplyStyleCommandImpl::createExplicitApplyStyleNode):
        (khtml::ApplyStyleCommandImpl::currentlyHasStyle):
        (khtml::ApplyStyleCommandImpl::cssProperty):
        (khtml::ApplyStyleCommandImpl::matchesTargetStyle):
        (khtml::ApplyStyleCommandImpl::positionInsertionPoint):
        (khtml::ApplyStyleCommandImpl::splitTextAtStartIfNeeded):
        (khtml::ApplyStyleCommandImpl::splitTextAtEndIfNeeded):
        (khtml::ApplyStyleCommandImpl::applyStyleIfNeeded):
        (khtml::ApplyStyleCommandImpl::removeStyle):
        (khtml::ApplyStyleCommandImpl::cloneSelection):
        (khtml::ApplyStyleCommandImpl::insertFragment):
        (khtml::ApplyStyleCommandImpl::applyInPlace):
        (khtml::ApplyStyleCommandImpl::applyUsingFragment):
        (khtml::DeleteSelectionCommandImpl::DeleteSelectionCommandImpl):
        (khtml::InsertNodeBeforeCommandImpl::doApply):
        (khtml::InsertNodeBeforeCommandImpl::doUnapply):
        (khtml::JoinTextNodesCommandImpl::doApply):
        (khtml::PasteMarkupCommandImpl::PasteMarkupCommandImpl):
        (khtml::RemoveCSSPropertyCommandImpl::RemoveCSSPropertyCommandImpl):
        (khtml::RemoveCSSPropertyCommandImpl::~RemoveCSSPropertyCommandImpl):
        (khtml::RemoveCSSPropertyCommandImpl::commandID):
        (khtml::RemoveCSSPropertyCommandImpl::doApply):
        (khtml::RemoveCSSPropertyCommandImpl::doUnapply):
        (khtml::RemoveNodeAttributeCommandImpl::RemoveNodeAttributeCommandImpl):
        (khtml::RemoveNodeAttributeCommandImpl::~RemoveNodeAttributeCommandImpl):
        (khtml::RemoveNodeAttributeCommandImpl::commandID):
        (khtml::RemoveNodeAttributeCommandImpl::doApply):
        (khtml::RemoveNodeAttributeCommandImpl::doUnapply):
        (khtml::RemoveNodePreservingChildrenCommandImpl::RemoveNodePreservingChildrenCommandImpl):
        (khtml::RemoveNodePreservingChildrenCommandImpl::~RemoveNodePreservingChildrenCommandImpl):
        (khtml::RemoveNodePreservingChildrenCommandImpl::commandID):
        (khtml::RemoveNodePreservingChildrenCommandImpl::doApply):
        (khtml::SetNodeAttributeCommandImpl::SetNodeAttributeCommandImpl):
        (khtml::SetNodeAttributeCommandImpl::~SetNodeAttributeCommandImpl):
        (khtml::SetNodeAttributeCommandImpl::commandID):
        (khtml::SetNodeAttributeCommandImpl::doApply):
        (khtml::SetNodeAttributeCommandImpl::doUnapply):
        (khtml::SplitTextNodeCommandImpl::doUnapply):
        (khtml::TypingCommandImpl::insertText):

        Text style change command implementations.

        * khtml/editing/htmlediting_impl.h:
        (khtml::ApplyStyleCommandImpl::):
        (khtml::ApplyStyleCommandImpl::removingStyle):
        (khtml::RemoveCSSPropertyCommandImpl::styleDeclaration):
        (khtml::RemoveCSSPropertyCommandImpl::property):
        (khtml::RemoveNodeAttributeCommandImpl::element):
        (khtml::RemoveNodeAttributeCommandImpl::attribute):
        (khtml::RemoveNodePreservingChildrenCommandImpl::node):
        (khtml::SetNodeAttributeCommandImpl::element):
        (khtml::SetNodeAttributeCommandImpl::attribute):
        (khtml::SetNodeAttributeCommandImpl::value):

        Fixed a bug where the TreeWalker returned the current node instead
        of null when an attempt was made to use the iterator to go to a
        non-existent location.

        * khtml/xml/dom2_traversalimpl.cpp:
        (DOM::TreeWalkerImpl::parentNode):
        (DOM::TreeWalkerImpl::firstChild):
        (DOM::TreeWalkerImpl::lastChild):
        (DOM::TreeWalkerImpl::previousSibling):
        (DOM::TreeWalkerImpl::nextSibling):
        (DOM::TreeWalkerImpl::previousNode):
        (DOM::TreeWalkerImpl::nextNode):

        A convenience.

        * khtml/xml/dom_elementimpl.cpp:
        (ElementImpl::hasAttributes):
        * khtml/xml/dom_elementimpl.h:

        New helpers to begin moving us to using DOM Range-compliant positions in our code.

        * khtml/xml/dom_position.cpp:
        (DOM::Position::equivalentRangeCompliantPosition):
        (DOM::Position::equivalentShallowPosition):
        (DOM::Position::inLastEditableInContainingEditableBlock):

        (DOM::Position::debugPosition): Debugging aid.
        * khtml/xml/dom_position.h:

        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge applyStyle:]): First bit of wiring up. Some hard-coded temporary code
        in here will need to be improved soon.

WebKit:

Fixed:
<rdar://problem/3633296>: (Japanese input is not working properly in Carbon Web Kit applications (including CarbonWeb))
<rdar://problem/3631390>: (can't toggle between Input Methods (IMEs) using cmd-space in Carbon Web Kit applications)

        Reviewed by rjw.

* Carbon.subproj/CarbonWindowAdapter.m:
        (-[CarbonWindowAdapter sendSuperEvent:]): call [NSInputContext processInputKeyBindings:inEvent] just as NSApp does
        * Carbon.subproj/HIWebView.m:
        (HIWebViewEventHandler): [NSApp setWindowsNeedUpdate:YES] must be called before events so that ActivateTSMDocument is called to set an active document. Without an active document, TSM will use a default document which uses a bottom-line input window which we don't want.

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

18 years ago Improve layout scheduling. Make sure no layouts can be scheduled until over a minim...
hyatt [Thu, 13 May 2004 01:01:58 +0000 (01:01 +0000)]
Improve layout scheduling.  Make sure no layouts can be scheduled until over a minimum delay threshold.

        * khtml/khtmlview.cpp:
        (KHTMLView::scheduleRelayout):
        * khtml/rendering/render_frames.cpp:
        (RenderPart::updateWidgetPositions):
        * khtml/rendering/render_text.cpp:
        (RenderText::paint):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        (DocumentImpl::close):
        (DocumentImpl::setParsing):
        (DocumentImpl::shouldScheduleLayout):
        (DocumentImpl::minimumLayoutDelay):
        * khtml/xml/dom_docimpl.h:

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

18 years agoUpdated CarbonWeb example to include work-arounds for printing problems. The
rjw [Thu, 13 May 2004 00:50:05 +0000 (00:50 +0000)]
Updated CarbonWeb example to include work-arounds for printing problems.  The
work-around makes use of SPI, unfortunate, but necessary.

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

18 years agoWebKit:
cblu [Thu, 13 May 2004 00:17:38 +0000 (00:17 +0000)]
WebKit:

Fixed:
<rdar://problem/3633296>: (Japanese input is not working properly in Carbon Web Kit applications (including CarbonWeb))
<rdar://problem/3631390>: (can't toggle between Input Methods (IMEs) using cmd-space in Carbon Web Kit applications)

        Reviewed by rjw.

* Carbon.subproj/CarbonWindowAdapter.m:
        (-[CarbonWindowAdapter sendSuperEvent:]): call [NSInputContext processInputKeyBindings:inEvent] just as NSApp does
        * Carbon.subproj/HIWebView.m:
        (HIWebViewEventHandler): [NSApp setWindowsNeedUpdate:YES] must be called before events so that ActivateTSMDocument is called to set an active document. Without an active document, TSM will use a default document which uses a bottom-line input window which we don't want.

WebKitExamples:

Workaround for:
<rdar://problem/3633296>: (Japanese input is not working properly in Carbon Web Kit applications (including CarbonWeb))
<rdar://problem/3631390>: (can't toggle between Input Methods (IMEs) using cmd-space in Carbon Web Kit applications)

        Reviewed by rjw.

        * CarbonWeb/CarbonWeb.pbproj/project.pbxproj: xcode project update
        * CarbonWeb/TWebWindow.cp:
- [NSApp setWindowsNeedUpdate:YES] must be called before events so that ActivateTSMDocument is called to set an active document. Without an active document, TSM will use a default document which uses a bottom-line input window which we don't want.
- use Larry's command-space workaround for cmd-space toggling

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

18 years agoChanges to plugin scripting extensions.`
rjw [Wed, 12 May 2004 21:30:50 +0000 (21:30 +0000)]
Changes to plugin scripting extensions.`

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

18 years agoWebCore:
cblu [Wed, 12 May 2004 02:05:30 +0000 (02:05 +0000)]
WebCore:

Support for: <rdar://problem/3616471>: (API: provide way to get from WebFrame to DOMDocument and vice versa)

        Reviewed by rjw.

        * kwq/DOM.mm:
        (-[DOMDocument _ownerElement]): new
        * kwq/DOMInternal.h:
        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge frameElement]): new

WebKit:

Fixed:
<rdar://problem/3616537>: (API: Make WebResource, WebArchive and related API's public)
<rdar://problem/3616471>: (API: provide way to get from WebFrame to DOMDocument and vice versa)

        Reviewed by rjw.

        * DOM.subproj/WebDOMOperations.h:
        * DOM.subproj/WebDOMOperations.m:
        (-[DOMHTMLFrameElement contentFrame]): new
        (-[DOMHTMLIFrameElement contentFrame]): new
        (-[DOMHTMLObjectElement contentFrame]): new
        * DOM.subproj/WebDOMOperationsPrivate.h:
        * Misc.subproj/WebNSImageExtras.m:
        (-[NSImage _web_saveAndOpen]): fixed leak
        * WebKit.pbproj/project.pbxproj:
        * WebView.subproj/WebDataSource.h:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _addSubresources:]): made private
        (-[WebDataSource _archiveWithMarkupString:nodes:]): handle object tags with frame content
        (-[WebDataSource _archiveWithCurrentState:]): renamed from _archive, now takes flag
        (-[WebDataSource _replaceSelectionWithArchive:]): call renamed _addSubresources
        (-[WebDataSource webArchive]): new
        (-[WebDataSource mainResource]): new
        (-[WebDataSource subresources]): made public
        (-[WebDataSource subresourceForURL:]): made public
        (-[WebDataSource addSubresource:]): made public
        * WebView.subproj/WebDataSourcePrivate.h:
        * WebView.subproj/WebDocumentPrivate.h:
        * WebView.subproj/WebFrame.h:
        * WebView.subproj/WebFrame.m:
        (-[WebFrame _loadRequest:subresources:subframeArchives:]): call renamed _addSubresources
        (-[WebFrame DOMDocument]): new
        (-[WebFrame frameElement]): new
        (-[WebFrame loadArchive:]): made public
        * WebView.subproj/WebFramePrivate.h:
        * WebView.subproj/WebHTMLRepresentation.m:
        (-[WebHTMLRepresentation loadArchive]): call renamed _addSubresources
        * WebView.subproj/WebImageRepresentation.m:
        (-[WebImageRepresentation archive]): call webArchive on WebDataSource

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

18 years agoAdd new layout tests for float bug fixes.
hyatt [Tue, 11 May 2004 21:58:00 +0000 (21:58 +0000)]
Add new layout tests for float bug fixes.

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

18 years agoRevised layout test with image and float changes.
hyatt [Tue, 11 May 2004 21:45:39 +0000 (21:45 +0000)]
Revised layout test with image and float changes.

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

18 years ago Fix makeChildrenNonInline so that it does not wrap floats unless an inline is actual...
hyatt [Tue, 11 May 2004 20:29:19 +0000 (20:29 +0000)]
Fix makeChildrenNonInline so that it does not wrap floats unless an inline is actually found.

        Fix block minmaxwidth to add together contiguous runs of floats.

Fix the content image loader to not destroy the image when removed from the document.

        Reviewed by darin

        * ChangeLog:
        * khtml/html/html_imageimpl.cpp:
        (HTMLImageLoader::~HTMLImageLoader):
        (HTMLImageElementImpl::detach):
        * khtml/html/html_imageimpl.h:
        (DOM::):
        * khtml/html/html_objectimpl.cpp:
        (HTMLObjectElementImpl::createRenderer):
        * khtml/html/html_objectimpl.h:
        * khtml/rendering/render_block.cpp:
        (khtml::getInlineRun):
        (khtml::RenderBlock::calcInlineMinMaxWidth):
        (khtml::RenderBlock::calcBlockMinMaxWidth):

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

18 years agofix B&I build failure caused by case sensitivity
vicki [Tue, 11 May 2004 17:30:43 +0000 (17:30 +0000)]
fix B&I build failure caused by case sensitivity

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

18 years agoWebCore:
mjs [Mon, 10 May 2004 23:47:08 +0000 (23:47 +0000)]
WebCore:

        Reviewed by Darin.

- avoid redecoding animated images that are only used once for
~2.5% iBench speedup (WebCore part of fix)

        * khtml/rendering/render_image.cpp:
        (RenderImage::setPixmap): Maintain use count for pixmap.
        (RenderImage::~RenderImage): Likewise.
        * kwq/KWQPixmap.h:
        * kwq/KWQPixmap.mm:
        (QPixmap::increaseUseCount): Call WebCoreImageRenderer
        (QPixmap::decreaseUseCount): Call WebCoreImageRenderer
        * kwq/WebCoreImageRenderer.h: Prototype new protocol methods.

WebKit:

        Reviewed by Darin.

- avoid redecoding animated images that are only used once for
~2.5% iBench speedup (WebCore part of fix)

        * WebCoreSupport.subproj/WebImageRenderer.h:
        * WebCoreSupport.subproj/WebImageRenderer.m:
        (-[WebImageRenderer increaseUseCount]):
        (-[WebImageRenderer decreaseUseCount]):
        (-[WebImageRenderer retainOrCopyIfNeeded]):

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

18 years agoBack out the optimization since it will break the ibench cheat.
hyatt [Mon, 10 May 2004 23:42:12 +0000 (23:42 +0000)]
Back out the optimization since it will break the ibench cheat.

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

18 years ago Fix build.
mjs [Mon, 10 May 2004 23:34:23 +0000 (23:34 +0000)]
    Fix build.

        * WebView.subproj/WebFrame.m:

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

18 years agoFix build failure
hyatt [Mon, 10 May 2004 23:28:59 +0000 (23:28 +0000)]
Fix build failure

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

18 years ago Reviewed by Ken.
mjs [Mon, 10 May 2004 23:21:17 +0000 (23:21 +0000)]
    Reviewed by Ken.

- avoid messing with undo manager needlessly for ~1% HTML iBench speedup

        * WebCoreSupport.subproj/WebBridge.h:
        * WebCoreSupport.subproj/WebBridge.m:
        (-[WebBridge registerCommandForUndo:]): mark undo/redo item flag
        (-[WebBridge registerCommandForRedo:]): ditto
        (-[WebBridge clearUndoRedoOperations]): check flag before removing items,
and clear it after removing them

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

18 years ago Reviewed by Darin.
mjs [Mon, 10 May 2004 23:20:12 +0000 (23:20 +0000)]
    Reviewed by Darin.

- -[WebFrame childFrames] is so hot that a special internal
version which avoids the copy and autorelease results in a .75%
performance improvement on HTML iBench.

        * WebView.subproj/WebFramePrivate.h: Prototype new method.
        * WebView.subproj/WebFrame.m:
(-[WebFrame _internalChildFrames]): New method, just returns
internal value instead of copying.

        (-[WebFrame _descendantFrameNamed:]): Use it
        (-[WebFrame _textSizeMultiplierChanged]): likewise
        (-[WebFrame _viewWillMoveToHostWindow:]): likewise
        (-[WebFrame _viewDidMoveToHostWindow]): likewise
        (-[WebFrame _saveDocumentAndScrollState]): likewise
        (-[WebFrame _numPendingOrLoadingRequests:]): likewise
        (-[WebFrame _checkLoadComplete]): Refactored this and it's two
helpers a little so we could get away with using
_internalChildFrames.
        (-[WebFrame _checkLoadCompleteForThisFrame]): Renamed from
_isLoadComplete
(-[WebFrame _recursiveCheckLoadComplete]): renamed from (class
method) _recursiveCheckCompleteFromFrame:
        * WebView.subproj/WebDataSource.m:
        (-[WebDataSource _defersCallbacksChanged]): Use it
        (-[WebDataSource isLoading]): likewise
        * WebView.subproj/WebView.m:
        (-[WebView _frameForDataSource:fromFrame:]): likewise
        (-[WebView _frameForView:fromFrame:]): likewise

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

18 years ago Make sure that when finished parsing if all the right conditions are met, we just...
hyatt [Mon, 10 May 2004 23:19:27 +0000 (23:19 +0000)]
Make sure that when finished parsing if all the right conditions are met, we just go ahead and updateRendering and
layout.

        Reviewed by rjw

        * khtml/khtmlview.cpp:
        (KHTMLView::scheduleRelayout):

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

18 years ago Reviewed by Dave.
mjs [Mon, 10 May 2004 21:47:37 +0000 (21:47 +0000)]
    Reviewed by Dave.

- some minor performance tweaks that together give .5% or so on
the HTML iBench

        * khtml/css/css_valueimpl.h: don't use a bitfield for id and important,
unpacking the bitfield is too expensive
        * kwq/KWQArrayImpl.h:
        * kwq/KWQArrayImpl.mm:
        (KWQArrayImpl::at): inline this method because it's so hot
        * kwq/KWQString.mm:
        (allocateHandle): inline this function because it's so hot
        (initializeHandleNodes): move this in the file so above can be inlined
        (allocateNode): ditto

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

18 years ago Move image loading to content.
hyatt [Mon, 10 May 2004 21:29:42 +0000 (21:29 +0000)]
Move image loading to content.

        Reviewed by kocienda

        * khtml/html/html_imageimpl.cpp:
        (m_imageComplete):
        (HTMLImageLoader::~HTMLImageLoader):
        (HTMLImageLoader::updateFromElement):
        (HTMLImageLoader::removedFromDocument):
        (HTMLImageLoader::dispatchLoadEvent):
        (HTMLImageLoader::notifyFinished):
        (HTMLImageElementImpl::HTMLImageElementImpl):
        (HTMLImageElementImpl::parseHTMLAttribute):
        (HTMLImageElementImpl::attach):
        (HTMLImageElementImpl::detach):
        (HTMLImageElementImpl::removedFromDocument):
        (HTMLImageElementImpl::currentImage):
        * khtml/html/html_imageimpl.h:
        (DOM::):
        * khtml/html/html_objectimpl.cpp:
        (HTMLObjectElementImpl::HTMLObjectElementImpl):
        (HTMLObjectElementImpl::removedFromDocument):
        (HTMLObjectElementImpl::attach):
        * khtml/html/html_objectimpl.h:
        * khtml/misc/loader.cpp:
        (CachedImage::ref):
        * khtml/rendering/render_image.cpp:
        (RenderImage::RenderImage):
        (RenderImage::setImage):
        (RenderImage::updateAltText):
        * khtml/rendering/render_image.h:
        (khtml::RenderImage::getImage):
        * khtml/rendering/render_object.cpp:
        (RenderObject::canvas):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::dispatchImageLoadEventSoon):
        (DocumentImpl::removeImage):
        (DocumentImpl::dispatchImageLoadEventsNow):
        * khtml/xml/dom_docimpl.h:

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

18 years ago Forgot to commit this copied header.
cblu [Mon, 10 May 2004 18:05:03 +0000 (18:05 +0000)]
Forgot to commit this copied header.

        * DOM.subproj/DOMExtensions.h:

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

18 years ago Reviewed by Vicki.
darin [Mon, 10 May 2004 16:47:45 +0000 (16:47 +0000)]
    Reviewed by Vicki.

        - fixed build failure seen in B&I log (due to case sensitive file system?)

        * kwq/KWQLoader.h: Include "KWQCString.h" rather than "QCString.h". The latter was
        failing because the forwarding header is called "qcstring.h" and I guess B&I started
        building with a case sensitive file system. I could have changed this to "qcstring.h",
        but it seemed better to use the header's real name since we're inside KWQ here.

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

18 years ago Reviewed by Dave.
mjs [Sun, 9 May 2004 04:55:11 +0000 (04:55 +0000)]
    Reviewed by Dave.

- change things around so extremely hot TokenizerString::current()
method doesn't have to do any work. It's cheaper to maintain the
relevant state than to always compute it.

        * khtml/misc/stringit.h:
        (khtml::TokenizerString::TokenizerString): Initialize m_currentChar
        (khtml::TokenizerString::push): update m_currentChar
        (khtml::TokenizerString::advance): ditto
        (khtml::TokenizerString::current): return m_currentChar
        * khtml/misc/stringit.cpp:
        (khtml::TokenizerString::clear): update m_currentChar
        (khtml::TokenizerString::append): update m_currentChar
        (khtml::TokenizerString::prepend): update m_currentChar

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

18 years ago Reviewed by Dave.
gramps [Sat, 8 May 2004 02:38:58 +0000 (02:38 +0000)]
    Reviewed by Dave.

Fixed minor, edge-case regression in KEYGEN RSA logic caused by Dave's
"atomic string" patch back in January.

        * khtml/html/html_formimpl.cpp:
        (HTMLKeygenElementImpl::encoding):

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

18 years ago Reviewed by darin.
vicki [Fri, 7 May 2004 22:31:01 +0000 (22:31 +0000)]
    Reviewed by darin.

Turn off GC since it uses ppc only instructions (which breaks
the B&I build).

        * kjs/value.h: set USE_CONSERVATIVE_GC to 0

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

18 years agoset version number to 140u. the tree is open!
vicki [Fri, 7 May 2004 18:10:18 +0000 (18:10 +0000)]
set version number to 140u.  the tree is open!

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

18 years agoSafari-139 stamp
vicki [Fri, 7 May 2004 18:03:16 +0000 (18:03 +0000)]
Safari-139 stamp

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

18 years ago Reviewed by Darin.
mjs [Fri, 7 May 2004 16:51:56 +0000 (16:51 +0000)]
    Reviewed by Darin.

- two trivial changes for a 1% speedup, thanks to Shark

        * khtml/dom/dom_string.cpp:
        * khtml/dom/dom_string.h:
        (DOM::DOMString::~DOMString): inline this method because it's hot and the
function call overhead was very costly.
        * WebCore.pbproj/project.pbxproj: Add -falign-loops=16
optimization flag, as suggested by Shark.

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

18 years ago Reviewed by Darin.
mjs [Fri, 7 May 2004 16:50:16 +0000 (16:50 +0000)]
    Reviewed by Darin.

- add -funroll-loops=16 compiler option for approx .5% speedup on
HTML iBench and .5-1% speedup on JS iBench.

        * JavaScriptCore.pbproj/project.pbxproj:

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

18 years ago Added alpha to DOMRGBColor as an extension.
cblu [Thu, 6 May 2004 22:50:17 +0000 (22:50 +0000)]
Added alpha to DOMRGBColor as an extension.

        Reviewed by dave.

        * kwq/DOM-CSS.mm:
        (-[DOMRGBColor alpha]): new
        * kwq/DOMExtensions.h:

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

18 years agoAdd layout test for pres and brs.
hyatt [Thu, 6 May 2004 22:04:23 +0000 (22:04 +0000)]
Add layout test for pres and brs.

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

18 years ago Fix whitespace rendering for brs inside pres. The bug is 3640711.
hyatt [Thu, 6 May 2004 22:01:33 +0000 (22:01 +0000)]
Fix whitespace rendering for brs inside pres. The bug is 3640711.

        Reviewed by kocienda

        * khtml/rendering/bidi.cpp:
        (khtml::RenderBlock::layoutInlineChildren):
        (khtml::RenderBlock::findNextLineBreak):

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

18 years ago * DOM.subproj/WebDOMOperations.h: improved a header doc comment
cblu [Thu, 6 May 2004 21:41:14 +0000 (21:41 +0000)]
    * DOM.subproj/WebDOMOperations.h: improved a header doc comment

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

18 years agoJavaScriptCore:
mjs [Thu, 6 May 2004 06:41:06 +0000 (06:41 +0000)]
JavaScriptCore:

        Reviewed by Darin.

Enable full conservative GC mode in addition to test mode. When
conservative GC is enabled, we now get an 11% speed improvement on
the iBench. Also fix some spots I missed before.

Specific noteworth changes:

        * kjs/collector.cpp:
(KJS::Collector::markStackObjectsConservatively): Check possible
cell pointers for 8-byte aligment and verify they are not 0.

        * kjs/protected_values.cpp:
        (KJS::ProtectedValues::increaseProtectCount): Move null-tolerance from here...
        (KJS::ProtectedValues::decreaseProtectCount): ...and here...
        * kjs/protect.h:
        (KJS::gcProtectNullTolerant): ...to here...
        (KJS::gcUnprotectNullTolerant): ...and here, because not all callers need the null
tolerance, and doing the check is expensive.

        * kjs/protected_values.cpp:
        (KJS::ProtectedValues::computeHash): Replace hash function with a much faster one
that is still very good.

        * kjs/protect.h:
        (KJS::gcProtect):
        (KJS::gcUnprotect):
        (KJS::ProtectedValue::ProtectedValue):
        (KJS::ProtectedValue::~ProtectedValue):
        (KJS::ProtectedValue::operator=):
        (KJS::ProtectedObject::ProtectedObject):
        (KJS::ProtectedObject::~ProtectedObject):
        (KJS::ProtectedObject::operator=):
        (KJS::ProtectedReference::ProtectedReference):
        (KJS::ProtectedReference::~ProtectedReference):
        (KJS::ProtectedReference::operator=):
        * kjs/protected_values.cpp:
        (KJS::ProtectedValues::getProtectCount):
        (KJS::ProtectedValues::increaseProtectCount):
        (KJS::ProtectedValues::decreaseProtectCount):
        (KJS::ProtectedValues::computeHash):
        * bindings/runtime_root.cpp:
        (KJS::Bindings::addNativeReference):
        (KJS::Bindings::removeNativeReference):
        (RootObject::removeAllNativeReferences):
        * bindings/runtime_root.h:
        (KJS::Bindings::RootObject::~RootObject):
        (KJS::Bindings::RootObject::setRootObjectImp):
        * kjs/collector.cpp:
        (KJS::Collector::allocate):
        (KJS::Collector::collect):
        * kjs/collector.h:
        * kjs/internal.cpp:
        (NumberImp::create):
        (InterpreterImp::globalInit):
        (InterpreterImp::globalClear):
        (InterpreterImp::mark):
        * kjs/list.cpp:
        (KJS::List::derefValues):
        (KJS::List::refValues):
        (KJS::List::append):
        * kjs/object.cpp:
        (KJS::ObjectImp::setInternalValue):
        (KJS::ObjectImp::putDirect):
        * kjs/value.cpp:
        (ValueImp::mark):
        (ValueImp::marked):
        * kjs/value.h:
        (KJS::ValueImp::ValueImp):
        (KJS::ValueImp::~ValueImp):
        (KJS::ValueImp::):
        (KJS::Value::Value):
        (KJS::Value::~Value):
        (KJS::Value::operator=):

WebCore:

        Reviewed by Darin.

        * khtml/ecma/kjs_events.cpp:
        (JSLazyEventListener::parseCode): Make sure to protect the
permanent "event" string object.

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

18 years ago Fixes for 3637924, 3643356, and 3558513, all crashes in recalcStyle. Make sure...
hyatt [Wed, 5 May 2004 20:50:21 +0000 (20:50 +0000)]
Fixes for 36379243643356, and 3558513, all crashes in recalcStyle.  Make sure the tree is always in a
sane state when removing children while changing .innerHTML.

        Reviewed by darin

        * khtml/xml/dom_nodeimpl.cpp:

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

18 years agoAdd quirk body height test.
hyatt [Wed, 5 May 2004 20:24:33 +0000 (20:24 +0000)]
Add quirk body height test.

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

18 years agoFixed layout tests plus added a new test.
hyatt [Wed, 5 May 2004 20:23:48 +0000 (20:23 +0000)]
Fixed layout tests plus added a new test.

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

18 years ago A collection of fixes.
hyatt [Wed, 5 May 2004 20:21:09 +0000 (20:21 +0000)]
A collection of fixes.

(1) Fix a regression from the style sharing landing that made visited and unvisited links accidentally share.
(2) Make sure 100% height divs fill the <body> in quirks mode, even if the body has no height specified.
(3) Make sure table cell percentage heights exclude border/padding.
(4) Make sure that before flexing auto height is used for the contents of the cells.

        Reviewed by darin

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::canShareStyleWithElement):
        (khtml::CSSStyleSelector::locateSharedStyle):
        * khtml/rendering/render_box.cpp:
        (RenderBox::calcPercentageHeight):
        * khtml/rendering/render_table.cpp:
        (RenderTable::layout):
        (RenderTableSection::layoutRows):

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

18 years agoTests:
cblu [Wed, 5 May 2004 18:37:31 +0000 (18:37 +0000)]
Tests:

        Reviewed by kocienda.

        * Blot/BlotDocument.m:
        (-[BlotDocument dataRepresentationOfType:]): updated to use outerHTML

WebCore:

- DOM Extensions API tweaks
- Implemented outerHTML

        Reviewed by kocienda.

        * WebCore-combined.exp:
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::outerHTML): new
        (HTMLElementImpl::setOuterHTML): mew
        * khtml/html/html_elementimpl.h:
        * kwq/DOMExtensions.h: removed background methods on table and table cell since these are unnecessary conveniences
        * kwq/DOMHTML.mm:
        (-[DOMHTMLElement outerHTML]): new
        (-[DOMHTMLElement setOuterHTML:]): mew

WebKit:

- DOM Extensions API tweaks

        Reviewed by kocienda.

        * DOM.subproj/DOMExtensions.h: copied from WebCore
        * DOM.subproj/WebDOMOperations.h: added header doc comments
        * DOM.subproj/WebDOMOperations.m:
        (-[DOMNode _URLsFromSelectors:]): use renamed URLWithAttributeString
        (-[DOMDocument URLWithAttributeString:]): renamed
        (-[DOMHTMLTableElement _web_background]): new private method
        (-[DOMHTMLTableElement _subresourceURLs]): use new private method
        (-[DOMHTMLTableCellElement _web_background]): new private method
        (-[DOMHTMLTableCellElement _subresourceURLs]): use new private method

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

18 years ago Fix for 3641331, make sure <th> elements don't reset text-align to center if they...
hyatt [Wed, 5 May 2004 00:16:21 +0000 (00:16 +0000)]
Fix for 3641331, make sure <th> elements don't reset text-align to center if they inherit a specified
value.

Also remove the styles from <abbr> and <acronym>.

        Reviewed by darin

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::adjustRenderStyle):
        * khtml/css/html4.css:
        * khtml/css/quirks.css:

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

18 years ago Reviewed by Hyatt
kocienda [Tue, 4 May 2004 23:43:16 +0000 (23:43 +0000)]
    Reviewed by Hyatt

        Fix for behavior which extends selection drawing to beginning and end of blocks.
        I added this feature a few days ago, but my checks to see if the extension should
        be done was naive: Is first or last item in root line box selected? Clearly this
        needs to be "selection is *beyond* first or last item in root line box. Done.

        * khtml/rendering/render_image.cpp:
        (RenderImage::paint): Add selectionState() == SelectionInside check.
        * khtml/rendering/render_text.cpp:
        (InlineTextBox::paintSelection): Constrain passed-in offsets to be relative to box.
        Use passed-in offsets to check whether selection extends beyond this box. Also, now
        passes in flag to tell whether the whole RenderText has selectionState() == SelectionInside
        (in which case you always want to extend).
        (RenderText::paint): Remove box offset constraining from here. Now done in above function.
        * khtml/rendering/render_text.h: Modify paintSelection interface to add
        selectionState() == SelectionInside flag.

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

18 years ago Reviewed by me
kocienda [Tue, 4 May 2004 23:31:42 +0000 (23:31 +0000)]
    Reviewed by me

        Added layout tests for DOM traversal objects.

        * layout-tests/traversal/node-iterator-001-expected.txt: Added.
        * layout-tests/traversal/node-iterator-001.html: Added.
        * layout-tests/traversal/node-iterator-002-expected.txt: Added.
        * layout-tests/traversal/node-iterator-002.html: Added.
        * layout-tests/traversal/node-iterator-003-expected.txt: Added.
        * layout-tests/traversal/node-iterator-003.html: Added.
        * layout-tests/traversal/node-iterator-004-expected.txt: Added.
        * layout-tests/traversal/node-iterator-004.html: Added.
        * layout-tests/traversal/node-iterator-005-expected.txt: Added.
        * layout-tests/traversal/node-iterator-005.html: Added.
        * layout-tests/traversal/node-iterator-006-expected.txt: Added.
        * layout-tests/traversal/node-iterator-006.html: Added.
        * layout-tests/traversal/node-iterator-007-expected.txt: Added.
        * layout-tests/traversal/node-iterator-007.html: Added.
        * layout-tests/traversal/traversal.js: Added.
        * layout-tests/traversal/tree-walker-001-expected.txt: Added.
        * layout-tests/traversal/tree-walker-001.html: Added.
        * layout-tests/traversal/tree-walker-002-expected.txt: Added.
        * layout-tests/traversal/tree-walker-002.html: Added.
        * layout-tests/traversal/tree-walker-003-expected.txt: Added.
        * layout-tests/traversal/tree-walker-003.html: Added.
        * layout-tests/traversal/tree-walker-004-expected.txt: Added.
        * layout-tests/traversal/tree-walker-004.html: Added.

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

18 years ago Reviewed by Hyatt
kocienda [Tue, 4 May 2004 23:30:30 +0000 (23:30 +0000)]
    Reviewed by Hyatt

        * khtml/xml/dom2_traversalimpl.cpp:
        (DOM::NodeIteratorImpl::nextNode): Change to make NodeIterators behave like the spec in that
        reference node is null until you iterate the first time.
        (DOM::NodeIteratorImpl::previousNode): Ditto.

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

18 years ago Reviewed by me
kocienda [Tue, 4 May 2004 22:38:51 +0000 (22:38 +0000)]
    Reviewed by me

        * WebCore.pbproj/project.pbxproj: Backed out unintentional
        change.

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

18 years agoWebCore:
kocienda [Tue, 4 May 2004 22:38:00 +0000 (22:38 +0000)]
WebCore:

        Reviewed by Hyatt

        Implemented DOM traversal objects, NodeIterator and TreeWalker.

        * WebCore-combined.exp: Regenerate
        * WebCore.exp: Export DOMNodeFilter protocol
        * khtml/dom/dom2_traversal.cpp: Completed half-done implementation pulled from KDE tree.
        * khtml/dom/dom2_traversal.h: Ditto.
        * khtml/dom/dom_doc.cpp:
        (DOM::Document::createNodeIterator): Ditto.
        (DOM::Document::createTreeWalker): Ditto.
        * khtml/dom/dom_doc.h: Ditto.
        * khtml/ecma/kjs_dom.cpp:
        (DOMDocumentProtoFunc::tryCall): Fix cases that create traversal objects.
        * khtml/ecma/kjs_traversal.cpp:
        (DOMNodeIterator::getValueProperty): Add referenceNode and pointerBeforeReferenceNode
        properties to node interator.
        (DOMTreeWalkerProtoFunc::tryCall): Fix typo where DOMTreeWalker::PreviousNode case called previousSibling function.
        (JSNodeFilterCondition::JSNodeFilterCondition): Implement JS glue class for node filter conditions.
        (JSNodeFilterCondition::acceptNode): Ditto.
        * khtml/ecma/kjs_traversal.h:
        (KJS::DOMNodeIterator::): Add ReferenceNode and PointerBeforeReferenceNode constants.
        * khtml/ecma/kjs_traversal.lut.h:
        (KJS::): Regenerated
        * khtml/xml/dom2_traversalimpl.cpp: Completed half-done implementation pulled from KDE tree.
        * khtml/xml/dom2_traversalimpl.h: Ditto.
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::createNodeIterator): Ditto.
        (DocumentImpl::createTreeWalker): Ditto.
        * khtml/xml/dom_docimpl.h: Ditto.
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::checkAddChild): Patched due to change in isAncestor function. This was the one pre-existing caller.
        (NodeImpl::isAncestor): Changed so that it does not return true for itself: node->isAncestor(node) now returns false.
        * khtml/xml/dom_nodeimpl.h: Made isAncestor const.
        * kwq/DOM.mm: Implemented obj-c glue for traversal objects.
        * kwq/DOMInternal.h: Ditto.
        * kwq/DOMTraversal.h: Ditto.

WebKit:

        Reviewed by Hyatt

        * DOM.subproj/DOMTraversal.h: File coppied from WebCore

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

18 years ago Reviewed by Ken.
darin [Tue, 4 May 2004 16:29:50 +0000 (16:29 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3642252>: "starting to drag a link and then releasing needs to activate the link if you are still over it"

        * khtml/khtmlview.cpp:
        (KHTMLView::viewportMouseMoveEvent): Put hysteresis check inside !APPLE_CHANGES because
        the Web Kit does our hysteresis checks.
        (KHTMLView::viewportMouseReleaseEvent): Ditto.

        * kwq/KWQApplication.h: Removed startDragDistance and globalStrut; unused.
        * kwq/KWQApplication.mm: Removed the implementations.
        * kwq/KWQPointArray.h: Removed manhattanLength; unused.
        * kwq/KWQPoint.mm:  Removed the implementation.

        * WebCore-tests.exp: Removed manhattanLength.
        * WebCore-combined.exp: Regenerated.

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

18 years ago Reviewed by Hyatt
kocienda [Mon, 3 May 2004 22:54:25 +0000 (22:54 +0000)]
    Reviewed by Hyatt

Nifty hack to work around problem where BR's inserted at the end of a block do not
render. Since only the *last* BR has this quirk, insert two when at the end of a block.
Once done, you can't caret past the last one, so you never insert two again.

        * khtml/editing/htmlediting_impl.cpp:
        (InputNewlineCommandImpl::doApply)

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

18 years ago Reviewed by Ken
darin [Mon, 3 May 2004 22:29:59 +0000 (22:29 +0000)]
    Reviewed by Ken

        - fixed <rdar://problem/3091531>: "should format copied tables with tabs between cells, spreadsheet-style, for pasting to Excel"
        - fixed <rdar://problem/3110002>: "Find doesn't match across formatting boundaries"
        - fixed <rdar://problem/3640340>: "REGRESSION (136-137): nil-deref in KHTMLPart::setFocusNodeIfNeeded inside triple click code after repeatedly click/drag selecting text"
        - fixed <rdar://problem/3640422>: "too many blank lines between paragraphs in copied text"

        * khtml/dom/dom2_range.h: Added == and != operators to DOMRange.
        * khtml/dom/dom2_range.cpp: (DOM::operator==): Added.

        * khtml/khtml_part.cpp:
        (KHTMLPart::init): Don't call findTextBegin any more; it's now not used at all
        in WebCore.
        (KHTMLPart::clear): Don't call findTextBegin any more. Also don't set up the
        load statistics variables.
        (KHTMLPart::findTextNext): Roll out APPLE_CHANGES; this function is no longer
        used in WebCore any more and instead the entire thing is compiled out.
        (KHTMLPart::text): Reimplement this by calling one of the new text operations. All the interesting
        parts were moved into the TextIterator class.
        (KHTMLPart::setFocusNodeIfNeeded): Add a check for nil; this is the fix for 364030.

        * khtml/khtmlpart_p.h: (KHTMLPartPrivate::KHTMLPartPrivate): Put m_findPos,
        m_findNode, m_overURL, m_overURLTarget, m_scrollTimer, m_loadedObjects,
        m_totalObjectCount, and m_jobPercent inside !APPLE_CHANGES.

        * khtml/xml/dom_selection.h: Replaced uses of 4-character tabs with spaces.
        (DOM::Selection::Selection): Added a constructor that takes a DOM range.
        (DOM::Selection::operator=): Overloaded operator= for DOM range and position.
        This is slightly more efficient than letting a second Selection object be constructed.
        * khtml/xml/dom_selection.cpp: Replaced uses of 4-character tabs with spaces.
        (DOM::Selection::Selection): Added a constructor that takes a DOM range.

        * kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::findString): Reimplement find so it uses
        the new text operations function for finding.

        * khtml/misc/khtml_text_operations.h:
        * khtml/misc/khtml_text_operations.cpp:
        * WebCore.pbproj/project.pbxproj:
        Added new text iterator classes that do the heavy lifting.

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

18 years ago Make sure that XML processing instructions set themselves as the parent node of...
hyatt [Mon, 3 May 2004 17:53:06 +0000 (17:53 +0000)]
Make sure that XML processing instructions set themselves as the parent node of the stylesheets they load,
so that they will get stylesheetLoaded() notifications when @imported stylesheets are contained inside the
sheet.

        Reviewed by cblu

        * khtml/xml/dom_xmlimpl.cpp:
        (ProcessingInstructionImpl::setStyleSheet):

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

18 years ago Reviewed by Ken.
darin [Sun, 2 May 2004 16:13:40 +0000 (16:13 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3640419>: "_webkit_stringByReplacingValidPercentEscapes does not handle %00 properly"

        * Misc.subproj/WebNSURLExtras.m: (-[NSString _webkit_stringByReplacingValidPercentEscapes]):
        Use the function in NSURL instead of implementing our own here.

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

18 years ago Asking an NSInvocation for it's return value when return type
rjw [Fri, 30 Apr 2004 23:19:24 +0000 (23:19 +0000)]
Asking an NSInvocation for it's return value when return type
is void throws an exception.  Added check for void return types
to avoid this exception.

        Reviewed by Ken.

        * bindings/objc/objc_instance.mm:
        (ObjcInstance::invokeMethod):

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

18 years ago Fixed: <rdar://problem/3543662>: HITLIST-137: REGRESSION: reproducible hang copying...
cblu [Fri, 30 Apr 2004 23:16:59 +0000 (23:16 +0000)]
Fixed: <rdar://problem/3543662>: HITLIST-137: REGRESSION: reproducible hang copying all text at Dave's blog, and other pages

        Reviewed by dave.

        * khtml/xml/dom2_rangeimpl.cpp:
        (RangeImpl::toHTMLWithOptions): when looping with containingBlock, check the value to see if it is the same

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

18 years ago Fix for 3639530, regression on generated content pages. They crash because I forgot...
hyatt [Fri, 30 Apr 2004 19:19:52 +0000 (19:19 +0000)]
Fix for 3639530, regression on generated content pages.  They crash because I forgot to null-check the style
object.

        Reviewed by kocienda

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::checkOneSelector):

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

18 years ago * WebView.subproj/WebView.m:
sullivan [Fri, 30 Apr 2004 17:59:26 +0000 (17:59 +0000)]
    * WebView.subproj/WebView.m:
        fixed deployment build breakage

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

18 years agoWebCore:
sullivan [Fri, 30 Apr 2004 17:30:54 +0000 (17:30 +0000)]
WebCore:

        - added bridge method to get the NSFont used to render a node, to
        help with supporting the font panel

        Reviewed by Ken.

        * kwq/WebCoreBridge.h:
        * kwq/WebCoreBridge.mm:
        (-[WebCoreBridge renderedFontForNode:]):
        return nil if no renderer, otherwise return NSFont

WebKit:

        - more work on getting the font panel to work with editable HTML.
        The font panel in Blot now correctly reflects the first selected font when the
        selection is at least one character long.

        Reviewed by Ken.

        * WebView.subproj/WebView.m:
        removed unfinished plumbing to support reflecting selected attributes (e.g. text color,
        underline) in font panel, since this doesn't work in Mail or TextEdit either.
        (_fontFromStyle):
        removed assertion for now
        (-[WebView _updateFontPanel]):
        now uses new bridge method to get the NSFont from the node, instead of trying
        to create an NSFont from a DOMCSSStyleDeclaration

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

18 years ago Fixed several bad problems with the ObjC bindings. In particular, conversion
rjw [Fri, 30 Apr 2004 01:44:16 +0000 (01:44 +0000)]
Fixed several bad problems with the ObjC bindings.  In particular, conversion
to/from JavaScriptObject (soon to be WebScriptObject) was completely broken.

        Reviewed by Chris.

        * bindings/objc/objc_jsobject.h:
        * bindings/objc/objc_jsobject.mm:
        (-[JavaScriptObject initWithObjectImp:KJS::root:Bindings::]):
        (-[JavaScriptObject KJS::]):
        (+[JavaScriptObject _convertValueToObjcValue:KJS::root:Bindings::]):
        (-[JavaScriptObject call:arguments:]):
        (-[JavaScriptObject evaluate:]):
        (-[JavaScriptObject getMember:]):
        (-[JavaScriptObject getSlot:]):
        * bindings/objc/objc_runtime.mm:
        (ObjcField::valueFromInstance):
        (ObjcField::setValueToInstance):
        * bindings/objc/objc_utility.mm:
        (KJS::Bindings::convertValueToObjcValue):
        (KJS::Bindings::convertObjcValueToValue):
        * bindings/runtime.h:
        * bindings/runtime_root.cpp:
        (KJS::Bindings::rootForInterpreter):
        (KJS::Bindings::addNativeReference):
        (KJS::Bindings::removeNativeReference):
        * bindings/runtime_root.h:
        * bindings/testbindings.mm:
        (-[MyFirstInterface logMessage:]):
        (-[MyFirstInterface setJSObject:]):
        (-[MyFirstInterface callJSObject::]):

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

18 years ago Expose summary on tables.
hyatt [Thu, 29 Apr 2004 23:26:02 +0000 (23:26 +0000)]
Expose summary on tables.

        Reviewed by darin

        * kwq/KWQAccObject.mm:
        (-[KWQAccObject helpText]):

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

18 years ago Implement image maps for accessibility.
hyatt [Thu, 29 Apr 2004 23:08:13 +0000 (23:08 +0000)]
Implement image maps for accessibility.

        Reviewed by darin

        * khtml/html/html_imageimpl.cpp:
        (HTMLAreaElementImpl::getRect):
        * khtml/html/html_imageimpl.h:
        * khtml/rendering/render_image.cpp:
        (RenderImage::imageMap):
        (RenderImage::nodeAtPoint):
        * khtml/rendering/render_image.h:
        * kwq/KWQAccObject.h:
        * kwq/KWQAccObject.mm:
        (-[KWQAccObject initWithRenderer:]):
        (-[KWQAccObject anchorElement]):
        (-[KWQAccObject parentObject]):
        (-[KWQAccObject parentObjectUnignored]):
        (-[KWQAccObject addChildrenToArray:]):
        (-[KWQAccObject role]):
        (-[KWQAccObject helpText]):
        (-[KWQAccObject value]):
        (-[KWQAccObject title]):
        (-[KWQAccObject position]):
        (-[KWQAccObject size]):
        (-[KWQAccObject accessibilityIsIgnored]):
        (-[KWQAccObject accessibilityAttributeNames]):
        (-[KWQAccObject accessibilityAttributeValue:]):
        * kwq/KWQRegion.mm:
        (QRegion::boundingRect):

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

18 years ago Fixed:
cblu [Thu, 29 Apr 2004 21:30:47 +0000 (21:30 +0000)]
Fixed:
<rdar://problem/3631431>: web archive of .Mac welcome page renders has gaps in layout
<rdar://problem/3631470>: news.google.com web archive has a different font than the live site

        Reviewed by kocienda.

        * khtml/html/html_documentimpl.cpp:
        (HTMLDocumentImpl::determineParseMode): don't set a name on the doc type when there is no doc type in the source
        * khtml/xml/dom_docimpl.cpp:
        (DocumentTypeImpl::toString): don't return "<!DOCTYPE>" when there is no doc type in the source
        * khtml/xml/dom_nodeimpl.cpp:
        (NodeImpl::recursive_toHTMLWithOptions): don't escape STYLE text, don't include the end tags for document nodes just as we don't for start tags

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

18 years ago Reviewed by Dave.
darin [Thu, 29 Apr 2004 20:49:34 +0000 (20:49 +0000)]
    Reviewed by Dave.

        - some tweaks on image

        * khtml/html/html_imageimpl.h: Remove unused noref bit and unneeded override of isURLAttribute.
        * khtml/html/html_imageimpl.cpp:
        (HTMLAreaElementImpl::HTMLAreaElementImpl): Remove unused noref bit.
        (HTMLAreaElementImpl::parseHTMLAttribute): Remove parsing of noref; no need to store the
        bit since it has no meaning.

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

18 years ago - more work on getting the font panel to work with editable HTML
sullivan [Thu, 29 Apr 2004 20:33:01 +0000 (20:33 +0000)]
    - more work on getting the font panel to work with editable HTML

        Reviewed by Ken.

        * WebView.subproj/WebView.m:
        (-[WebView computedStyleForElement:pseudoElement:]):
        convert nil pseudoElement to empty string because lower level chokes on nil
        (_fontFromStyle):
        I tried to implement this, but was thwarted by missing API, so I added a
        bunch of FIXMEs instead
        (_stylesRepresentSameFont):
        new function, not yet implementable
        (_stylesRepresentSameAttributes):
        new function, not yet implementable
        (-[WebView _updateFontPanel]):
        added code to get first and last element in selection, and to use
        NodeIterator to walk through the entire selection to see if more than one
        font or set of attributes is in use. However, createNodeIterator is declared
        in DOMTraversal.h but not actually defined anywhere, so I had to prevent this
        code from actually being called.

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

18 years ago 1. Change the role of links from AXButton to AXLink.
hyatt [Thu, 29 Apr 2004 18:52:06 +0000 (18:52 +0000)]
1. Change the role of links from AXButton to AXLink.
2. Add support for list markers using a new role, AXListMarker.

        Reviewed by kocienda

        * khtml/rendering/render_list.h:
        (khtml::RenderListMarker::text):
        * kwq/KWQAccObject.mm:
        (-[KWQAccObject role]):
        (-[KWQAccObject roleDescription]):
        (-[KWQAccObject value]):
        (-[KWQAccObject accessibilityIsIgnored]):

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

18 years ago Reviewed by Ken.
darin [Thu, 29 Apr 2004 16:20:36 +0000 (16:20 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3636566>: "space bar on a form button hits default button instead (autorestore.apple.com)"

        * khtml/html/html_formimpl.cpp: (HTMLInputElementImpl::defaultEventHandler):
        Remove special handling for space, falling back to default AppKit behavior. Change enter handling to
        click the form element itself in the case of elements other than text input ones.

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

18 years ago Reviewed by Ken.
darin [Thu, 29 Apr 2004 15:24:22 +0000 (15:24 +0000)]
    Reviewed by Ken.

        - fixed <rdar://problem/3636673>: "unrepro nil-deref crash in KHTMLPart::frameDetached() (espn.com)"

        * kwq/KWQKHTMLPart.mm: (KHTMLPart::frameDetached): Check for nil.

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

18 years ago - Implemented DOMHTMLElementExtensions.
cblu [Thu, 29 Apr 2004 02:05:28 +0000 (02:05 +0000)]
- Implemented DOMHTMLElementExtensions.
- Added stubs for the rest of the DOM API.

        Reviewed by dave.

        * WebCore.pbproj/project.pbxproj:
        * khtml/dom/html_element.cpp:
        (HTMLElement::setContentEditable): moved implementation from here to HTMLElementImpl
        * khtml/html/html_elementimpl.cpp:
        (HTMLElementImpl::setContentEditable): new, moved from HTMLElement
        * khtml/html/html_elementimpl.h:
        * kwq/DOM-CSS.mm:
        (-[DOMObject sheet]):
        (-[DOMDocument getComputedStyle::]):
        * kwq/DOM.mm:
        (-[DOMAbstractView document]):
        (-[DOMDocumentView defaultView]):
        (-[DOMDocument createNodeIterator::::]):
        (-[DOMDocument createTreeWalker::::]):
        (-[DOMNodeFilter acceptNode:]):
        (-[DOMNodeIterator root]):
        (-[DOMNodeIterator whatToShow]):
        (-[DOMNodeIterator filter]):
        (-[DOMNodeIterator expandEntityReferences]):
        (-[DOMNodeIterator nextNode]):
        (-[DOMNodeIterator previousNode]):
        (-[DOMNodeIterator detach]):
        (-[DOMTreeWalker root]):
        (-[DOMTreeWalker whatToShow]):
        (-[DOMTreeWalker filter]):
        (-[DOMTreeWalker expandEntityReferences]):
        (-[DOMTreeWalker currentNode]):
        (-[DOMTreeWalker setCurrentNode:]):
        (-[DOMTreeWalker parentNode]):
        (-[DOMTreeWalker firstChild]):
        (-[DOMTreeWalker lastChild]):
        (-[DOMTreeWalker previousSibling]):
        (-[DOMTreeWalker nextSibling]):
        (-[DOMTreeWalker previousNode]):
        (-[DOMTreeWalker nextNode]):
        * kwq/DOMEvents.mm: Added.
        (-[DOMEvent type]):
        (-[DOMEvent target]):
        (-[DOMEvent currentTarget]):
        (-[DOMEvent eventPhase]):
        (-[DOMEvent bubbles]):
        (-[DOMEvent cancelable]):
        (-[DOMEvent timeStamp]):
        (-[DOMEvent stopPropagation]):
        (-[DOMEvent preventDefault]):
        (-[DOMEvent initEvent:::]):
        (-[DOMEventTarget addEventListener:::]):
        (-[DOMEventTarget removeEventListener:::]):
        (-[DOMEventTarget dispatchEvent:]):
        (-[DOMMouseEvent screenX]):
        (-[DOMMouseEvent screenY]):
        (-[DOMMouseEvent clientX]):
        (-[DOMMouseEvent clientY]):
        (-[DOMMouseEvent ctrlKey]):
        (-[DOMMouseEvent shiftKey]):
        (-[DOMMouseEvent altKey]):
        (-[DOMMouseEvent metaKey]):
        (-[DOMMouseEvent button]):
        (-[DOMMouseEvent relatedTarget]):
        (-[DOMMouseEvent initMouseEvent:::::::::::::::]):
        (-[DOMMutationEvent relatedNode]):
        (-[DOMMutationEvent prevValue]):
        (-[DOMMutationEvent newValue]):
        (-[DOMMutationEvent attrName]):
        (-[DOMMutationEvent attrChange]):
        (-[DOMMutationEvent initMutationEvent::::::::]):
        (-[DOMUIEvent view]):
        (-[DOMUIEvent detail]):
        (-[DOMUIEvent initUIEvent:::::]):
        (-[DOMDocument createEvent:]):
        * kwq/DOMHTML.mm:
        (-[DOMHTMLElement innerHTML]): implemented
        (-[DOMHTMLElement setInnerHTML:]): implemented
        (-[DOMHTMLElement innerText]): implemented
        (-[DOMHTMLElement setInnerText:]): implemented
        (-[DOMHTMLElement children]): implemented
        (-[DOMHTMLElement contentEditable]): implemented
        (-[DOMHTMLElement setContentEditable:]): implemented
        (-[DOMHTMLElement isContentEditable]): implemented

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

18 years ago Implement sharing of similar style objects. Cuts the # of style objects allocated...
hyatt [Thu, 29 Apr 2004 01:19:04 +0000 (01:19 +0000)]
Implement sharing of similar style objects. Cuts the # of style objects allocated on the PLT by more
than half.

        Reviewed by kocienda

        * khtml/css/cssstyleselector.cpp:
        (khtml::CSSStyleSelector::initElementAndPseudoState):
        (khtml::CSSStyleSelector::initForStyleResolve):
        (khtml::cleanpath):
        (khtml::checkPseudoState):
        (khtml::CSSStyleSelector::locateSiblingList):
        (khtml::CSSStyleSelector::canShareStyleWithElement):
        (khtml::CSSStyleSelector::locateSharedStyle):
        (khtml::CSSStyleSelector::styleForElement):
        (khtml::CSSStyleSelector::pseudoStyleForElement):
        (khtml::CSSStyleSelector::checkOneSelector):
        * khtml/css/cssstyleselector.h:
        * khtml/css/html4.css:
        * khtml/css/parser.cpp:
        * khtml/css/parser.y:
        * khtml/html/html_baseimpl.cpp:
        (HTMLBodyElementImpl::mapToEntry):
        (HTMLIFrameElementImpl::mapToEntry):
        * khtml/html/html_baseimpl.h:
        * khtml/html/html_blockimpl.cpp:
        (HTMLDivElementImpl::mapToEntry):
        (HTMLHRElementImpl::mapToEntry):
        (HTMLParagraphElementImpl::mapToEntry):
        (HTMLMarqueeElementImpl::mapToEntry):
        * khtml/html/html_blockimpl.h:
        * khtml/html/html_elementimpl.cpp:
        (HTMLNamedAttrMapImpl::declCount):
        (HTMLNamedAttrMapImpl::mapsEquivalent):
        (HTMLElementImpl::attributeChanged):
        (HTMLElementImpl::mapToEntry):
        * khtml/html/html_elementimpl.h:
        (DOM::HTMLElementImpl::isMappedAttribute):
        * khtml/html/html_formimpl.cpp:
        (HTMLInputElementImpl::mapToEntry):
        * khtml/html/html_formimpl.h:
        * khtml/html/html_imageimpl.cpp:
        (HTMLImageElementImpl::mapToEntry):
        * khtml/html/html_imageimpl.h:
        * khtml/html/html_inlineimpl.cpp:
        (HTMLBRElementImpl::mapToEntry):
        (HTMLFontElementImpl::mapToEntry):
        * khtml/html/html_inlineimpl.h:
        * khtml/html/html_listimpl.cpp:
        (HTMLUListElementImpl::mapToEntry):
        (HTMLOListElementImpl::mapToEntry):
        (HTMLLIElementImpl::mapToEntry):
        * khtml/html/html_listimpl.h:
        * khtml/html/html_objectimpl.cpp:
        (HTMLAppletElementImpl::mapToEntry):
        (HTMLEmbedElementImpl::mapToEntry):
        (HTMLObjectElementImpl::mapToEntry):
        * khtml/html/html_objectimpl.h:
        * khtml/html/html_tableimpl.cpp:
        (HTMLTableElementImpl::mapToEntry):
        (HTMLTablePartElementImpl::mapToEntry):
        (HTMLTableCellElementImpl::mapToEntry):
        (HTMLTableColElementImpl::mapToEntry):
        (HTMLTableCaptionElementImpl::mapToEntry):
        * khtml/html/html_tableimpl.h:
        * khtml/rendering/render_object.cpp:
        (RenderObject::setStyle):
        * khtml/rendering/render_style.cpp:
        (m_affectedByAttributeSelectors):
        (RenderStyle::RenderStyle):
        * khtml/rendering/render_style.h:
        (khtml::):
        (khtml::RenderStyle::pseudoState):
        (khtml::RenderStyle::setPseudoState):
        (khtml::RenderStyle::affectedByAttributeSelectors):
        (khtml::RenderStyle::setAffectedByAttributeSelectors):
        * khtml/xml/dom_docimpl.cpp:
        (DocumentImpl::DocumentImpl):
        * khtml/xml/dom_docimpl.h:
        (DOM::DocumentImpl::usesSiblingRules):
        (DOM::DocumentImpl::setUsesSiblingRules):

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

18 years ago - Made WebArchive and WebResource conform to NSCoding and NSCopying.
cblu [Thu, 29 Apr 2004 00:56:23 +0000 (00:56 +0000)]
- Made WebArchive and WebResource conform to NSCoding and NSCopying.

        Reviewed by rjw.

        * DOM.subproj/WebDOMOperations.h: added header doc comment for WebArchive methods
        * WebView.subproj/WebArchive.h:
        * WebView.subproj/WebArchive.m:
        (-[WebArchive initWithCoder:]): new
        (-[WebArchive encodeWithCoder:]): new
        (-[WebArchive copyWithZone:]): new
        * WebView.subproj/WebResource.h:
        * WebView.subproj/WebResource.m:
        (-[WebResource init]): new
        (-[WebResource initWithData:URL:MIMEType:textEncodingName:frameName:]): call [self init]
        (-[WebResource initWithCoder:]): new
        (-[WebResource encodeWithCoder:]): new
        (-[WebResource copyWithZone:]): new

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