⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



May 19, 2004:

7:25 PM Changeset in webkit [6646] by hyatt
  • 6 edits in trunk/WebCore

Implement support for notification posting to accessibility clients for layouts and loads.

  • khtml/khtmlview.cpp: (KHTMLView::layout):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):
  • kwq/KWQAccObjectCache.h: (KWQAccObjectCache::enableAccessibility): (KWQAccObjectCache::accessibilityEnabled):
  • kwq/KWQAccObjectCache.mm: (KWQAccObjectCache::accObject): (KWQAccObjectCache::setAccObject): (KWQAccObjectCache::removeAccObject): (KWQAccObjectCache::detach): (KWQAccObjectCache::childrenChanged): (KWQAccObjectCache::postNotification):
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge accessibilityTree]):
5:48 PM Changeset in webkit [6645] by cblu
  • 19 edits in trunk

WebCore:

Tweaks for forthcoming dragging improvements.

Reviewed by john.

  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge moveDragCaretToPoint:]): renamed for future reasons, removed text only restrictions

WebKit:

Fixed: <rdar://problem/3462627>: (API: Need a way to disable/customize dragging)

Reviewed by john.

  • Misc.subproj/WebNSPasteboardExtras.m: (-[NSPasteboard _web_writeImage:URL:title:archive:types:]): fixed bug that caused exception
  • WebView.subproj/WebDefaultUIDelegate.m: (-[WebDefaultUIDelegate webView:shouldBeginDragForElement:dragImage:mouseDownEvent:mouseDraggedEvent:]): new, returns YES (-[WebDefaultUIDelegate webView:dragOperationForDraggingInfo:overElement:]): new, returns [WebView dragOperationForDraggingInfo:] (-[WebDefaultUIDelegate webView:shouldProcessDragWithDraggingInfo:overElement:]): new, returns YES
  • WebView.subproj/WebDocumentInternal.h: added WebDocumentDragging and WebDocumentElement for document dragging
  • WebView.subproj/WebDocumentPrivate.h: moved WebDocumentSelection to WebDocumentInternal.h
  • WebView.subproj/WebFrame.m: (-[WebFrame _actionInformationForNavigationType:event:originalURL:]):
  • WebView.subproj/WebHTMLView.h:
  • WebView.subproj/WebHTMLView.m: (+[WebHTMLView _insertablePasteboardTypes]): new (-[WebHTMLView _handleMouseDragged:]): call shouldBeginDragForElement:::: delegate API (-[WebHTMLView _mayStartDragWithMouseDragged:]): call renamed elementAtPoint SPI (-[WebHTMLView initWithFrame:]): don't register for drag types since this is handled at the WebView (-[WebHTMLView menuForEvent:]): call renamed elementAtPoint SPI (-[WebHTMLView _isSelectionEvent:]): call renamed elementAtPoint SPI (-[WebHTMLView dragImage:at:offset:event:pasteboard:source:slideBack:]): rather than unregistering drag types on the WebView, just tell it that we're dragging (-[WebHTMLView draggedImage:endedAt:operation:]): ditto (-[WebHTMLView _canProcessDragWithDraggingInfo:]): new (-[WebHTMLView dragOperationForDraggingInfo:]): new WebDocumentDragging SPI (-[WebHTMLView draggingUpdatedWithDraggingInfo:]): ditto (-[WebHTMLView concludeDragForDraggingInfo:]): ditto (-[WebHTMLView elementAtPoint:]): renamed from _elementAtPoint since this is part of the WebDocumentElement SPI
  • WebView.subproj/WebHTMLViewPrivate.h:
  • WebView.subproj/WebImageView.h:
  • WebView.subproj/WebImageView.m: (-[WebImageView elementAtPoint:]): new (-[WebImageView menuForEvent:]): call elementAtPoint (-[WebImageView mouseDragged:]): rather than unregistering drag types on the WebView, just tell it that we're dragging (-[WebImageView draggedImage:endedAt:operation:]): ditto
  • WebView.subproj/WebTextView.h:
  • WebView.subproj/WebTextView.m: (-[WebTextView _elementAtWindowPoint:]): new (-[WebTextView elementAtPoint:]): new (-[WebTextView menuForEvent:]): call _elementAtWindowPoint
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m: (-[WebViewPrivate dealloc]): removed draggedTypes ivar (+[WebView URLFromPasteboard:]): implemented (+[WebView URLTitleFromPasteboard:]): implemented (-[WebView _registerDraggedTypes]): moved (-[WebView _frameViewAtWindowPoint:]): new (-[WebView _draggingDocumentViewAtWindowPoint:]): new (-[WebView _elementAtWindowPoint:]): new (-[WebView dragOperationForDraggingInfo:]): updated this API to handle subviews that may want to handle drags (-[WebView _dragOperationForDraggingInfo:]): new, handles UI delegate for drag control (-[WebView draggingEntered:]): call _dragOperationForDraggingInfo: (-[WebView draggingUpdated:]): ditto (-[WebView concludeDragOperation:]): work with the UI delegate and the subview to handle what happens
  • WebView.subproj/WebViewPrivate.h:
12:18 PM Changeset in webkit [6644] by rjw
  • 5 edits in trunk

WebKit:

Removed extraneous tabs that were added (by XCode?).

  • DOM.subproj/DOM-compat.h:
  • Plugins.subproj/WebScriptObject.h:

JavaScriptCore:

Removed extraneous tabs that were added (by XCode?).

  • bindings/objc/WebScriptObject.h:
12:14 PM Changeset in webkit [6643] by rjw
  • 2 edits in trunk/WebKit

Updated header copy script to only copy if modified headers
are different.

  • copy-webcore-files-to-webkit:
11:36 AM Changeset in webkit [6642] by kocienda
  • 9 edits in trunk

WebCore:

Reviewed by Hyatt and Darin

Fix for this bug:

<rdar://problem/3643230>: "can't tab out of contentEditable Elements"

  • khtml/xml/dom_elementimpl.cpp: Now checks if key event was intercepted by the editing key-handler before setting the event as defaultHandled. (ElementImpl::defaultEventHandler):
  • kwq/KWQKHTMLPart.h: Name change from editingKeyEvent. Also now returns a BOOL to report whether the event was handled or not.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::interceptEditingKeyEvent): Ditto.
  • kwq/WebCoreBridge.h: Renamed from _editingKeyDown.

WebKit:

Reviewed by Hyatt and Darin

Fix for this bug:

<rdar://problem/3643230>: "can't tab out of contentEditable Elements"

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge interceptEditingKeyEvent:]): Renamed from _editingKeyDown. Also now returns a BOOL to report whether the event was handled or not.
  • WebView.subproj/WebView.m: (-[WebView _interceptEditingKeyEvent:]): Also renamed from _editingKeyDown. Now includes a check if the web view is editable and whether the event is a tab key event. If the former is not true and the latter is, the key is not intercepted. This causes the tab to shift once the key is processed by other non-editing key-handling mechanisms.
  • WebView.subproj/WebViewPrivate.h: Changed declaration due to name change.
11:21 AM Changeset in webkit [6641] by kocienda
  • 9 edits in trunk/WebCore

Reviewed by John

Fix for this bug:

<rdar://problem/3655601>: "deleting characters is much slower than inserting them"

Cleaned up the way selections are set in edit commands, and how KHTMLPart is
notified of these changes. This clears up a number of inefficiencies, including unnecessary repaints
which were causing the performace problem.

  • khtml/editing/htmlediting.cpp: Removed moveToStartingSelection and moveToEndingSelection functions. This work is going to be done using another pre-existing communication facility shared by edit commands and the part.
  • khtml/editing/htmlediting.h: Ditto.
  • khtml/editing/htmlediting_impl.cpp: (khtml::EditCommandImpl::setStartingSelection): Fix coding mistake which caused double recursion while setting ancestor values. (khtml::EditCommandImpl::setEndingSelection): Ditto. (khtml::CompositeEditCommandImpl::doUnapply): No longer calls moveToStartingSelection. Work done in the part now. (khtml::CompositeEditCommandImpl::doReapply): No longer calls moveToEndingSelection. Work done in the part now. (khtml::TypingCommandImpl::typingAddedToOpenCommand): New function. Provides a hook for typing commands to tell the part about additional typing that has been done. (khtml::TypingCommandImpl::insertText): Now calls typingAddedToOpenCommand. (khtml::TypingCommandImpl::insertNewline): Ditto. (khtml::TypingCommandImpl::issueCommandForDeleteKey): Ditto. (khtml::TypingCommandImpl::deleteKeyPressed): Ditto.
  • khtml/editing/htmlediting_impl.h: Removed moveToStartingSelection and moveToEndingSelection functions.
  • khtml/khtml_part.cpp: (KHTMLPart::setSelection): Modified to take an argument which tells whether the set closes an active typing command. (KHTMLPart::notifySelectionChanged): Changed endTyping variable to be consistent with "close typing" terminology used elsewhere. (KHTMLPart::appliedEditing): Now sets the selection using the value of the passed-in command. Added an assert for typing cases. Fixed problem where didChangeNotification was not being posted for typing changes after the first one. (KHTMLPart::unappliedEditing): Now sets the selection using the value of the passed-in command. (KHTMLPart::reappliedEditing): Now sets the selection using the value of the passed-in command.
  • khtml/khtml_part.h:
  • khtml/rendering/render_canvas.cpp: (RenderCanvas::clearSelection): Do not call repaint when the selection is a caret.
9:42 AM Changeset in webkit [6640] by kocienda
  • 10 edits in trunk

Tests:

Reviewed by Hyatt

  • Blot/BlotDocument.m: (-[BlotDocument windowControllerDidLoadNib:]): Add call to setEditable:YES on web view. (-[BlotDocument webView:didFinishLoadForFrame:]): Remove hack to insert contenteditable attribute on body elements after loading a document.

WebCore:

Reviewed by Hyatt

  • khtml/html/html_elementimpl.cpp: (HTMLElementImpl::isContentEditable): Ask if the part is contenteditable. True value is treated as an "override" and will short-circuit, returning true.
  • khtml/khtml_part.cpp: (KHTMLPart::isContentEditable): Call over bridge. Has the effect of checking the isEditable method on the WebView which contains this part.
  • khtml/khtml_part.h: Declare isContentEditable.
  • kwq/KWQKHTMLPart.h: Declare isContentEditable.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::isContentEditable): Call over bridge, as described above.
  • kwq/WebCoreBridge.h: Declare isEditable.

WebKit:

Reviewed by Hyatt

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge isEditable]): Return the isEditable value for the WebView which contains this bridge's frame.
7:37 AM Changeset in webkit [6639] by darin
  • 12 edits in trunk/WebCore
  • fixed headers with licenses mangled by Xcode auto-indenting
  • kwq/DOMExtensions.h:
  • kwq/KWQAccObject.h:
  • kwq/KWQAccObject.mm:
  • kwq/KWQAccObjectCache.h:
  • kwq/KWQKSSLKeyGen.mm:
  • kwq/KWQScrollBar.mm:
  • kwq/KWQSlider.mm:
  • kwq/WebCoreGraphicsBridge.h:
  • kwq/WebCoreGraphicsBridge.m:
  • kwq/WebCoreKeyGenerator.h:
  • kwq/WebCoreKeyGenerator.m:
7:34 AM Changeset in webkit [6638] by darin
  • 4 edits in trunk/WebKit
  • fixed headers with licenses mangled by Xcode auto-indenting
  • DOM.subproj/DOMExtensions.h:
  • WebCoreSupport.subproj/WebGraphicsBridge.h:
  • WebCoreSupport.subproj/WebGraphicsBridge.m:
7:33 AM Changeset in webkit [6637] by darin
  • 6 edits in trunk/JavaScriptCore
  • fixed headers with licenses mangled by Xcode auto-indenting
  • bindings/jni/jni_jsobject.cpp:
  • bindings/jni/jni_jsobject.h:
  • bindings/runtime_array.h:
  • bindings/runtime_root.cpp:
  • bindings/runtime_root.h:
1:58 AM Changeset in webkit [6636] by mjs
  • 1 edit in branches/Safari-1-2-branch/WebCore/ChangeLog-2005-08-23

WebCore-125.6.8

1:56 AM Changeset in webkit [6635] by mjs
  • 4 edits in branches/Safari-1-2-branch/WebCore

Merged more Epiphany changes.

2004-05-18 David Hyatt <hyatt@apple.com>

Add two new attributes for accessibility that can be polled by the screen reader. AXLayoutCount indicates
the number of layouts that have occurred, and AXLoaded indicates whether or not a page has finished loading.

  • khtml/khtmlview.cpp: (KHTMLViewPrivate::reset): (KHTMLView::layoutCount): (KHTMLView::layout):
  • khtml/khtmlview.h:
  • kwq/KWQAccObject.mm: (-[KWQAccObject roleDescription]): (-[KWQAccObject accessibilityAttributeNames]): (-[KWQAccObject accessibilityAttributeValue:]):

2004-05-18 David Hyatt <hyatt@apple.com>

Fix crash when retrieving the AXHelp text.

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

May 18, 2004:

10:54 PM Changeset in webkit [6634] by hyatt
  • 3 edits in trunk/WebCore

Fix build bustage.

10:24 PM Changeset in webkit [6633] by hyatt
  • 4 edits in trunk/WebCore

Add two new attributes for accessibility that can be polled by the screen reader. AXLayoutCount indicates
the number of layouts that have occurred, and AXLoaded indicates whether or not a page has finished loading.

  • khtml/khtmlview.cpp: (KHTMLViewPrivate::reset): (KHTMLView::layoutCount): (KHTMLView::layout):
  • khtml/khtmlview.h:
  • kwq/KWQAccObject.mm: (-[KWQAccObject roleDescription]): (-[KWQAccObject accessibilityAttributeNames]): (-[KWQAccObject accessibilityAttributeValue:]):
8:03 PM Changeset in webkit [6632] by hyatt
  • 2 edits in trunk/WebCore

Fix crash when retrieving the AXHelp text.

  • kwq/KWQAccObject.mm: (-[KWQAccObject helpText]):
7:54 PM Changeset in webkit [6631] by hyatt
  • 14 edits in trunk

WebCore:

Improve layout scheduling and add instrumentation for debugging layout scheduling

Reviewed by kocienda

  • khtml/khtml_part.cpp: (KHTMLPart::slotFinishedParsing): (KHTMLPart::checkCompleted):
  • khtml/khtmlview.cpp: (KHTMLViewPrivate::KHTMLViewPrivate): (KHTMLViewPrivate::reset): (KHTMLView::layout): (KHTMLView::scheduleRelayout): (KHTMLView::haveDelayedLayoutScheduled): (KHTMLView::unscheduleRelayout):
  • khtml/khtmlview.h:
  • khtml/rendering/render_object.cpp: (RenderObject::repaintAfterLayoutIfNeeded):
  • khtml/rendering/render_replaced.cpp: (RenderWidget::updateWidgetPositions):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::DocumentImpl): (DocumentImpl::close): (DocumentImpl::setParsing): (DocumentImpl::shouldScheduleLayout): (DocumentImpl::minimumLayoutDelay): (DocumentImpl::elapsedTime): (DocumentImpl::finishParsing): (DocumentImpl::updateStyleSelector):
  • khtml/xml/dom_docimpl.h: (DOM::DocumentImpl::allDataReceived):
  • kwq/KWQDateTime.h:
  • kwq/KWQDateTime.mm: (QTime::elapsed):
  • kwq/KWQWidget.mm: (QWidget::setFrameGeometry):

WebKit:

Improve layout scheduling.

Reviewed by kocienda

  • WebView.subproj/WebFrame.m: (-[WebFrame _transitionToLayoutAcceptable]): (-[WebFrame _checkLoadCompleteForThisFrame]):
  • WebView.subproj/WebHTMLRepresentation.m: (-[WebHTMLRepresentation finishedLoadingWithDataSource:]):
7:50 PM Changeset in webkit [6630] by rjw
  • 2 edits in trunk/JavaScriptCore

Added exception logging. Also check for exception and
set results as appropriate.

Reviewed by Maciej (partially reviewed).

  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject callWebScriptMethod:withArguments:]): (-[WebScriptObject evaluateWebScript:]): (-[WebScriptObject setValue:forKey:]): (-[WebScriptObject valueForKey:]):
6:16 PM Changeset in webkit [6629] by rjw
  • 10 edits in trunk

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:
5:57 PM Changeset in webkit [6628] by kdecker
  • 2 edits in trunk/WebCore
  • roll out previous change -- I (Vicki) accidentally committed this change!
5:50 PM Changeset in webkit [6627] by kdecker
  • 2 edits in trunk/WebCore

Reviewed by NOBODY (OOPS!).

  • khtml/xml/dom_stringimpl.cpp: (DOM::parseLength):
4:15 PM Changeset in webkit [6626] by rjw
  • 13 edits in trunk

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:
3:18 PM Changeset in webkit [6625] by mjs
  • 6 edits in trunk/WebCore

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.
1:20 PM Changeset in webkit [6624] by kocienda
  • 12 edits in trunk/WebCore

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.
9:55 AM Changeset in webkit [6623] by darin
  • 4 edits in trunk/WebKit

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.

May 17, 2004:

10:01 PM Changeset in webkit [6622] by hyatt
  • 2 edits in trunk/WebKit

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:]):
6:33 PM Changeset in webkit [6621] by cblu
  • 15 edits in trunk/WebKit

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
6:29 PM Changeset in webkit [6620] by rjw
  • 18 edits
    1 add in trunk

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]):
2:56 PM Changeset in webkit [6619] by kocienda
  • 3 edits in trunk/WebKit

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.

May 16, 2004:

5:19 PM Changeset in webkit [6618]
  • 58 copies
    2 deletes in tags/WebCore-125~6~7

This commit was manufactured by cvs2svn to create tag
'WebCore-125~6~7'.

5:19 PM Changeset in webkit [6617] by mjs
  • 2 edits in branches/Safari-1-2-branch/WebCore

WebCore-125.6.7

5:18 PM Changeset in webkit [6616] by mjs
  • 2 edits in branches/Safari-1-2-branch/WebCore

More build breakage in last change, needed to merge this unrelated
change from HEAD.

  • khtml/rendering/render_list.h: (khtml::RenderListMarker::text):

May 14, 2004:

6:06 PM Changeset in webkit [6615] by vicki
  • 6 edits in trunk

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
5:49 PM Changeset in webkit [6614]
  • 57 copies
    2 deletes in tags/WebCore-125~6~6

This commit was manufactured by cvs2svn to create tag
'WebCore-125~6~6'.

5:49 PM Changeset in webkit [6613] by mjs
  • 2 edits in branches/Safari-1-2-branch/WebCore

WebCore-125.6.6

5:48 PM Changeset in webkit [6612] by mjs
  • 2 edits in branches/Safari-1-2-branch/WebCore

Fix build bustage in last change, merge did not work in older tree.

  • khtml/rendering/render_image.cpp: (RenderImage::imageMap):
4:51 PM Changeset in webkit [6611]
  • 57 copies
    2 deletes in tags/WebCore-125~6~5

This commit was manufactured by cvs2svn to create tag
'WebCore-125~6~5'.

4:51 PM Changeset in webkit [6610] by mjs
  • 2 edits in branches/Safari-1-2-branch/WebCore

WebCore-125.6.5

4:47 PM Changeset in webkit [6609] by mjs
  • 8 edits in branches/Safari-1-2-branch/WebCore

Merge Dave's changes for Epiphany.

2004-04-29 David Hyatt <hyatt@apple.com>

Expose summary on tables.

Reviewed by darin

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

2004-04-29 David Hyatt <hyatt@apple.com>

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):

2004-04-29 David Hyatt <hyatt@apple.com>

  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]):
4:02 PM Changeset in webkit [6608] by darin
  • 2 edits in trunk/WebCore

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.
3:56 PM Changeset in webkit [6607] by hyatt
  • 3 edits in trunk/WebKit

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:
3:51 PM Changeset in webkit [6606]
  • 7 copies in tags/Safari-140

This commit was manufactured by cvs2svn to create tag 'Safari-140'.

3:51 PM Changeset in webkit [6605] by vicki
  • 2 edits in trunk

move the Safari-140 release markers in the WebCore and WebKit ChangeLogs

3:44 PM Changeset in webkit [6604] by darin
  • 2 edits in trunk/WebCore

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.
2:21 PM Changeset in webkit [6603] by cblu
  • 2 edits in trunk/WebKit

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
1:59 PM Changeset in webkit [6602] by cblu
  • 2 edits in trunk/WebKit

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
12:28 PM Changeset in webkit [6601] by hyatt
  • 5 edits in trunk/WebCore

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:
12:09 PM Changeset in webkit [6600] by vicki
  • 3 edits in trunk

set version number to 141u

12:05 PM Changeset in webkit [6599] by vicki
  • 6 edits in trunk

Safari-140 stamp

10:29 AM Changeset in webkit [6598] by cblu
  • 3 edits in trunk/WebKit

Copied headers from WebCore.

  • DOM.subproj/DOMCore.h:
  • DOM.subproj/DOMEvents.h:
10:27 AM Changeset in webkit [6597] by cblu
  • 5 edits in trunk/WebCore
  • 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:
7:23 AM Changeset in webkit [6596] by kocienda
  • 2 edits in trunk/WebKit

Reviewed by me

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

May 13, 2004:

6:23 PM Changeset in webkit [6595] by rjw
  • 4 edits in trunk

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:
6:08 PM Changeset in webkit [6594] by rjw
  • 7 edits in trunk

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:
5:40 PM Changeset in webkit [6593] by cblu
  • 9 edits in trunk/WebKit

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:
5:30 PM Changeset in webkit [6592] by kocienda
  • 3 edits in trunk/WebKit

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
5:24 PM Changeset in webkit [6591] by rjw
  • 5 edits in trunk/WebKit

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]):
4:58 PM Changeset in webkit [6590] by cblu
  • 18 edits in trunk

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:
4:39 PM Changeset in webkit [6589] by rjw
  • 1 add in trunk/WebKit/Plugins.subproj/WebJavaPlugIn.h

Added WebJavaPlugIn.h, fixed build problem.

4:24 PM Changeset in webkit [6588] by rjw
  • 37 edits
    2 adds in trunk

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:]):
11:01 AM Changeset in webkit [6587] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by me

  • khtml/editing/htmlediting_impl.cpp: (khtml::ApplyStyleCommandImpl::applyStyleIfNeeded): Fix deployment build bustage. Uninitialized variable.
10:53 AM Changeset in webkit [6586] by kocienda
  • 7 edits
    1 add in trunk/WebKit

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.
9:41 AM Changeset in webkit [6585] by kocienda
  • 14 edits in trunk/WebCore

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.

May 12, 2004:

6:01 PM Changeset in webkit [6584] by hyatt
  • 6 edits in trunk/WebCore

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:
5:50 PM Changeset in webkit [6583] by rjw
  • 1 edit in trunk/WebKit/WebView.subproj/WebHTMLView.m

Updated CarbonWeb example to include work-arounds for printing problems. The
work-around makes use of SPI, unfortunate, but necessary.

5:17 PM Changeset in webkit [6582] by cblu
  • 3 edits in trunk/WebKit

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
2:30 PM Changeset in webkit [6581] by rjw
  • 4 edits
    1 add in trunk

Changes to plugin scripting extensions.`

May 11, 2004:

7:05 PM Changeset in webkit [6580] by cblu
  • 20 edits in trunk

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
2:58 PM Changeset in webkit [6579] by hyatt
  • 4 adds in trunk/LayoutTests/fast/block/float

Add new layout tests for float bug fixes.

2:45 PM Changeset in webkit [6578] by hyatt
  • 10 edits in trunk/LayoutTests

Revised layout test with image and float changes.

1:29 PM Changeset in webkit [6577] by hyatt
  • 6 edits in trunk/WebCore

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):
10:30 AM Changeset in webkit [6576]
  • 6 copies
    2 deletes in tags/WebCore-139~2

This commit was manufactured by cvs2svn to create tag
'WebCore-139~2'.

10:30 AM Changeset in webkit [6575] by vicki
  • 2 edits in trunk/WebCore

fix B&I build failure caused by case sensitivity

May 10, 2004:

4:47 PM Changeset in webkit [6574] by mjs
  • 8 edits in trunk

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]):
4:42 PM Changeset in webkit [6573] by hyatt
  • 1 edit in trunk/WebCore/khtml/xml/dom_docimpl.cpp

Back out the optimization since it will break the ibench cheat.

4:34 PM Changeset in webkit [6572] by mjs
  • 2 edits in trunk/WebKit

Fix build.

  • WebView.subproj/WebFrame.m:
4:28 PM Changeset in webkit [6571] by hyatt
  • 1 edit in trunk/WebCore/khtml/xml/dom_docimpl.cpp

Fix build failure

4:21 PM Changeset in webkit [6570] by mjs
  • 3 edits in trunk/WebKit

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
4:20 PM Changeset in webkit [6569] by mjs
  • 5 edits in trunk/WebKit

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
4:19 PM Changeset in webkit [6568] by hyatt
  • 3 edits in trunk/WebCore

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):
2:47 PM Changeset in webkit [6567] by mjs
  • 5 edits in trunk/WebCore

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
2:29 PM Changeset in webkit [6566] by hyatt
  • 11 edits in trunk/WebCore

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:
11:05 AM Changeset in webkit [6565] by cblu
  • 2 edits in trunk/WebKit

Forgot to commit this copied header.

  • DOM.subproj/DOMExtensions.h:
9:47 AM Changeset in webkit [6564]
  • 4 copies
    2 deletes in tags/WebCore-139~1

This commit was manufactured by cvs2svn to create tag
'WebCore-139~1'.

9:47 AM Changeset in webkit [6563] by darin
  • 2 edits in trunk/WebCore

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.

May 8, 2004:

9:55 PM Changeset in webkit [6562] by mjs
  • 3 edits in trunk/WebCore

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

May 7, 2004:

7:38 PM Changeset in webkit [6561] by gramps
  • 2 edits in trunk/WebCore

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):
3:31 PM Changeset in webkit [6560]
  • 2 copies
    3 deletes in tags/JavaScriptCore-139~1

This commit was manufactured by cvs2svn to create tag
'JavaScriptCore-139~1'.

3:31 PM Changeset in webkit [6559] by vicki
  • 2 edits in trunk/JavaScriptCore

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
11:10 AM Changeset in webkit [6558] by vicki
  • 3 edits in trunk

set version number to 140u. the tree is open!

11:03 AM Changeset in webkit [6557]
  • 3 copies in tags/Safari-139

This commit was manufactured by cvs2svn to create tag 'Safari-139'.

11:03 AM Changeset in webkit [6556] by vicki
  • 6 edits in trunk

Safari-139 stamp

9:51 AM Changeset in webkit [6555] by mjs
  • 4 edits in trunk/WebCore

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.
9:50 AM Changeset in webkit [6554] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Darin.

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

May 6, 2004:

3:50 PM Changeset in webkit [6553] by cblu
  • 3 edits in trunk/WebCore

Added alpha to DOMRGBColor as an extension.

Reviewed by dave.

  • kwq/DOM-CSS.mm: (-[DOMRGBColor alpha]): new
  • kwq/DOMExtensions.h:
3:04 PM Changeset in webkit [6552] by hyatt
  • 2 adds in trunk/LayoutTests/fast/text/whitespace

Add layout test for pres and brs.

3:01 PM Changeset in webkit [6551] by hyatt
  • 2 edits in trunk/WebCore

Fix whitespace rendering for brs inside pres. The bug is 3640711.

Reviewed by kocienda

  • khtml/rendering/bidi.cpp: (khtml::RenderBlock::layoutInlineChildren): (khtml::RenderBlock::findNextLineBreak):
2:41 PM Changeset in webkit [6550] by cblu
  • 2 edits in trunk/WebKit
  • DOM.subproj/WebDOMOperations.h: improved a header doc comment

May 5, 2004:

11:41 PM Changeset in webkit [6549] by mjs
  • 14 edits in trunk

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.
6:28 PM Changeset in webkit [6548] by beard
  • 16 edits in branches/AutoZoneGC_Branch_20040430

Changes for GC stability/compatibility.

1:50 PM Changeset in webkit [6547]
  • 3 copies in branches/AutoZoneGC_Branch_20040430

This commit was manufactured by cvs2svn to create branch
'AutoZoneGC_Branch_20040430'.

1:50 PM Changeset in webkit [6546]
  • 3 copies in tags/AutoZoneGC_Base_20040430

This commit was manufactured by cvs2svn to create tag
'AutoZoneGC_Base_20040430'.

1:50 PM Changeset in webkit [6545] by hyatt
  • 2 edits in trunk/WebCore

Fixes for 3637924, 3643356, 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:
1:24 PM Changeset in webkit [6544] by hyatt
  • 2 adds in trunk/LayoutTests/fast/block/basic

Add quirk body height test.

1:23 PM Changeset in webkit [6543] by hyatt
  • 4 edits
    2 adds in trunk/LayoutTests/fast/table

Fixed layout tests plus added a new test.

1:21 PM Changeset in webkit [6542] by hyatt
  • 4 edits in trunk/WebCore

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):
11:37 AM Changeset in webkit [6541] by cblu
  • 10 edits in trunk

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

May 4, 2004:

5:16 PM Changeset in webkit [6540] by hyatt
  • 4 edits in trunk/WebCore

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:
4:43 PM Changeset in webkit [6539] by kocienda
  • 4 edits in trunk/WebCore

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.
4:31 PM Changeset in webkit [6538] by kocienda
  • 1 edit
    24 adds in trunk

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.
4:30 PM Changeset in webkit [6537] by kocienda
  • 2 edits in trunk/WebCore

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.
3:38 PM Changeset in webkit [6536] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by me

  • WebCore.pbproj/project.pbxproj: Backed out unintentional change.
3:38 PM Changeset in webkit [6535] by kocienda
  • 22 edits in trunk

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
9:29 AM Changeset in webkit [6534] by darin
  • 8 edits in trunk/WebCore

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.

May 3, 2004:

3:54 PM Changeset in webkit [6533] by kocienda
  • 2 edits in trunk/WebCore

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)
3:29 PM Changeset in webkit [6532] by darin
  • 13 edits
    4 adds in trunk/WebCore

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.
10:53 AM Changeset in webkit [6531] by hyatt
  • 2 edits in trunk/WebCore

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):

May 2, 2004:

9:13 AM Changeset in webkit [6530] by darin
  • 2 edits in trunk/WebKit

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.

Apr 30, 2004:

4:19 PM Changeset in webkit [6529] by rjw
  • 2 edits in trunk/JavaScriptCore

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):
4:16 PM Changeset in webkit [6528] by cblu
  • 2 edits in trunk/WebCore

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
12:19 PM Changeset in webkit [6527] by hyatt
  • 2 edits in trunk/WebCore

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):
10:59 AM Changeset in webkit [6526] by sullivan
  • 2 edits in trunk/WebKit
  • WebView.subproj/WebView.m: fixed deployment build breakage
10:30 AM Changeset in webkit [6525] by sullivan
  • 5 edits in trunk

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

Apr 29, 2004:

6:44 PM Changeset in webkit [6524] by rjw
  • 9 edits in trunk/JavaScriptCore

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::]):
4:26 PM Changeset in webkit [6523] by hyatt
  • 2 edits in trunk/WebCore

Expose summary on tables.

Reviewed by darin

  • kwq/KWQAccObject.mm: (-[KWQAccObject helpText]):
4:08 PM Changeset in webkit [6522] by hyatt
  • 8 edits in trunk/WebCore

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):
2:30 PM Changeset in webkit [6521] by cblu
  • 4 edits in trunk/WebCore

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
1:49 PM Changeset in webkit [6520] by darin
  • 3 edits in trunk/WebCore

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.
1:33 PM Changeset in webkit [6519] by sullivan
  • 2 edits in trunk/WebKit
  • 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.
11:52 AM Changeset in webkit [6518] by hyatt
  • 3 edits in trunk/WebCore
  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]):
9:20 AM Changeset in webkit [6517] by darin
  • 2 edits in trunk/WebCore

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.
8:24 AM Changeset in webkit [6516] by darin
  • 2 edits in trunk/WebCore

Reviewed by Ken.

  • fixed <rdar://problem/3636673>: "unrepro nil-deref crash in KHTMLPart::frameDetached() (espn.com)"
  • kwq/KWQKHTMLPart.mm: (KHTMLPart::frameDetached): Check for nil.

Apr 28, 2004:

7:05 PM Changeset in webkit [6515] by cblu
  • 8 edits
    1 add in trunk/WebCore
  • 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
6:19 PM Changeset in webkit [6514] by hyatt
  • 37 edits in trunk/WebCore

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):
5:56 PM Changeset in webkit [6513] by cblu
  • 6 edits in trunk/WebKit
  • 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
3:49 PM Changeset in webkit [6512] by darin
  • 6 edits in trunk/WebCore

Reviewed by Chris.

  • another step of refinement on the reinterpret_cast stuff; now it's a compile-time error if you do it wrong
  • fixed a couple of storage leaks
  • kwq/DOMInternal.h: Added new DOM_cast template function. Like reinterpret_cast, but a compile-time error if you use it with the wrong parameters. Also added type-safe versions of the wrapper functions that do the DOM_cast automatically.
  • kwq/DOMInternal.mm: (getDOMWrapperImpl): Changed name and parameter type as part of above change. (addDOMWrapperImpl): Ditto. (removeDOMWrapper): Ditto.
  • kwq/DOM.mm: Use the new DOM_cast instead of reinterpret_cast, and the new DOM wrapper calls that do the cast automatically.
  • kwq/DOM-CSS.mm: More of the same. (-[DOMCSSStyleSheet dealloc]): Added override to deref, fixes leak.
  • kwq/DOMHTML.mm: More of the same. (-[DOMHTMLCollection dealloc]): Added override to deref, fixes leak. (-[DOMHTMLOptionsCollection dealloc]): Added override to deref, fixes theoretical leak.
3:40 PM Changeset in webkit [6511]
  • 52 copies
    2 deletes in tags/WebCore-125~6~4

This commit was manufactured by cvs2svn to create tag
'WebCore-125~6~4'.

3:40 PM Changeset in webkit [6510]
  • 62 copies
    1 delete in branches/SecurityUpdate-10~3~4-branch

This commit was manufactured by cvs2svn to create branch
'SecurityUpdate-10~3~4-branch'.

3:40 PM Changeset in webkit [6509]
  • 62 copies
    1 delete in tags/SecurityUpdate-10~3~4-anchor

This commit was manufactured by cvs2svn to create tag
'SecurityUpdate-10~3~4-anchor'.

3:40 PM Changeset in webkit [6508] by vicki
  • 2 edits in branches/Safari-1-2-branch/WebCore

bump WebCore version number to 125.6.4

2:44 PM Changeset in webkit [6507] by sullivan
  • 4 edits in trunk/WebKit

A little bit more progress in wiring up the font panel.

Reviewed by Ken.

  • WebView.subproj/WebViewInternal.h: put _updateFontPanel here. Also moved _isLoading here, since it was already in a category named WebInternal
  • WebView.subproj/WebView.m: (-[WebView _isLoading]): moved into WebInternal category implementation (_textAttributesFromStyle): changed from method to function (_fontFromStyle): added, guts not filled in yet (-[WebView _updateFontPanel]): now calls these two functions (but results are always nil) (-[WebView setSelectedDOMRange:affinity:]): remove call to _updateFontPanel here since it's now called in the proper bottleneck
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge postDidChangeNotification]): call -[WebView _updateFontPanel] in addition to sending notification (-[WebBridge postDidChangeSelectionNotification]): ditto
1:05 PM Changeset in webkit [6506] by sullivan
  • 4 edits in trunk/WebKit

WebKit:

  • fixed these bugs: <rdar://problem/3636570>: "API: [WebPreferences tabsToLinks] should be public API" <rdar://problem/3610597>: "API: could turn "stealth browsing" preference into API"

Reviewed by Darin.

I just moved the declarations and implementations from one place to another.
(No clients in WebKit needed their #imports updated.) This confused cvs diff quite a bit.

  • WebView.subproj/WebPreferences.h:
  • WebView.subproj/WebPreferences.m: (-[WebPreferences setTabsToLinks:]): (-[WebPreferences tabsToLinks]): (-[WebPreferences setPrivateBrowsingEnabled:]): (-[WebPreferences privateBrowsingEnabled]): (-[WebPreferences _pageCacheSize]): (-[WebPreferences _objectCacheSize]): (-[WebPreferences _backForwardCacheExpirationInterval]):
  • WebView.subproj/WebPreferencesPrivate.h:

WebBrowser:

  • fixed up #imports for WebPreferencesPrivate

Reviewed by Darin.

  • AppController.m: removed #import <WebKit/WebPreferencesPrivate.h>
  • BrowserWindowController.m: replaced #import <WebKit/WebPreferencesPrivate.h> with #import <WebKit/WebPreferences.h>
  • DownloadProgressEntry.m: ditto
  • FormCompletionController.m: ditto
  • Preferences.subproj/AdvancedPreferences.m: removed #import <WebKit/WebPreferencesPrivate.h>
12:52 PM Changeset in webkit [6505] by hyatt
  • 2 edits in trunk/WebKit

Cut the time spent on an operation inside widthForNextCharacter from 17% of the function time down to less than
5% merely by adding a check for non-zero letter-spacing (thus avoiding double precision math in the
common case where we just add 0 between letters).

Reviewed by rjw

  • WebCoreSupport.subproj/WebTextRenderer.m: (widthForNextCharacter):
11:45 AM Changeset in webkit [6504] by sullivan
  • 2 edits in trunk/WebKit

Initial plumbing to get the font panel to be updated from an editable
WebView.

Reviewed by Ken.

  • WebView.subproj/WebView.m: (-[WebView _textAttributesFromStyle:]): new dummy method, will need implementation (-[WebView _updateFontPanel]): new method, sets the font shown in the font panel from the current selection. Lots of placeholder stuff. (-[WebView setSelectedDOMRange:affinity:]): call _updateFontPanel here for now.
11:12 AM Changeset in webkit [6503] by darin
  • 3 edits
    1 delete in trunk/WebCore

Reviewed by Chris.

  • fixed reinterpret_cast mistakes and some style issues in DOM implementation
  • kwq/DOM-CSS.mm: (-[DOMCSSStyleRule _styleRuleImpl]): Fix broken reinterpret_cast; you must reinterpret_cast back to the class you reinterpret_casted from, not to a derived class. (-[DOMCSSMediaRule _mediaRuleImpl]): Ditto. (-[DOMCSSFontFaceRule _fontFaceRuleImpl]): Ditto. (-[DOMCSSPageRule _pageRuleImpl]): Ditto. (-[DOMCSSImportRule _importRuleImpl]): Ditto. (-[DOMCSSCharsetRule _importRuleImpl]): Ditto.
  • kwq/DOMHTML.mm: (-[DOMHTMLOptionsCollection length]): Put in an "unimplemented" version instead of leaving out the class implementation altogether. (-[DOMHTMLOptionsCollection setLength:]): Ditto. (-[DOMHTMLOptionsCollection item:]): Ditto. (-[DOMHTMLOptionsCollection namedItem:]): Ditto. (+[DOMHTMLElement _elementWithImpl:]): Corrected this implementation. The wrapper must use a standard node wrapper, since this is a subclass of DOMNode. Also moved into a separate category so it gets checked against the declarations above. (-[DOMHTMLElement _HTMLElementImpl]): Fix broken reinterpret_cast. (-[DOMHTMLHtmlElement _HTMLHtmlElementImpl]): Ditto. (-[DOMHTMLHeadElement _headElementImpl]): Ditto. (-[DOMHTMLLinkElement _linkElementImpl]): Ditto. (-[DOMHTMLTitleElement _titleElementImpl]): Ditto. (-[DOMHTMLMetaElement _metaElementImpl]): Ditto. (-[DOMHTMLBaseElement _baseElementImpl]): Ditto. (-[DOMHTMLStyleElement _styleElementImpl]): Ditto. (-[DOMHTMLBodyElement _bodyElementImpl]): Ditto. (-[DOMHTMLFormElement _formElementImpl]): Ditto. (+[DOMHTMLFormElement _formElementWithImpl:]): Another DOMNode subclass wrapper fix. (-[DOMHTMLIsIndexElement _isIndexElementImpl]): Fix broken reinterpret_cast. (-[DOMHTMLSelectElement _selectElementImpl]): Ditto. (-[DOMHTMLOptGroupElement _optGroupElementImpl]): Ditto. (-[DOMHTMLOptionElement _optionElementImpl]): Ditto. (-[DOMHTMLInputElement _inputElementImpl]): Ditto. (-[DOMHTMLTextAreaElement _textAreaElementImpl]): Ditto. (-[DOMHTMLButtonElement _buttonElementImpl]): Ditto. (-[DOMHTMLLabelElement _labelElementImpl]): Ditto. (-[DOMHTMLFieldSetElement _fieldSetElementImpl]): Ditto. (-[DOMHTMLLegendElement _legendElementImpl]): Ditto. (-[DOMHTMLUListElement _uListElementImpl]): Ditto. (-[DOMHTMLOListElement _oListElementImpl]): Ditto. (-[DOMHTMLDListElement _dListElementImpl]): Ditto. (-[DOMHTMLDirectoryElement _directoryListElementImpl]): Ditto. (-[DOMHTMLMenuElement _menuListElementImpl]): Ditto. (-[DOMHTMLLIElement _liElementImpl]): Ditto. (-[DOMHTMLQuoteElement _quoteElementImpl]): Ditto. (-[DOMHTMLDivElement _divElementImpl]): Ditto. (-[DOMHTMLParagraphElement _paragraphElementImpl]): Ditto. (-[DOMHTMLHeadingElement _headingElementImpl]): Ditto. (-[DOMHTMLPreElement _preElementImpl]): Ditto. (-[DOMHTMLBRElement _BRElementImpl]): Ditto. (-[DOMHTMLBaseFontElement _baseFontElementImpl]): Ditto. (-[DOMHTMLFontElement _fontElementImpl]): Ditto. (-[DOMHTMLHRElement _HRElementImpl]): Ditto. (-[DOMHTMLModElement _modElementImpl]): Ditto. (-[DOMHTMLAnchorElement _anchorElementImpl]): Ditto. (-[DOMHTMLImageElement _imageElementImpl]): Ditto. (-[DOMHTMLObjectElement _objectElementImpl]): Ditto. (-[DOMHTMLParamElement _paramElementImpl]): Ditto. (-[DOMHTMLAppletElement _appletElementImpl]): Ditto. (-[DOMHTMLMapElement _mapElementImpl]): Ditto. (-[DOMHTMLAreaElement _areaElementImpl]): Ditto. (-[DOMHTMLScriptElement _scriptElementImpl]): Ditto. (+[DOMHTMLTableCaptionElement _tableCaptionElementWithImpl:]): Another DOMNode subclass wrapper fix. (-[DOMHTMLTableCaptionElement _tableCaptionElementImpl]): Fix broken reinterpret_cast. (+[DOMHTMLTableSectionElement _tableSectionElementWithImpl:]): Another DOMNode subclass wrapper fix. (-[DOMHTMLTableSectionElement _tableSectionElementImpl]): Fix broken reinterpret_cast. (+[DOMHTMLTableElement _tableElementWithImpl:]): Another DOMNode subclass wrapper fix. (-[DOMHTMLTableElement _tableElementImpl]): Fix broken reinterpret_cast. (-[DOMHTMLTableColElement _tableColElementImpl]): Ditto. (-[DOMHTMLTableRowElement _tableRowElementImpl]): Ditto. (+[DOMHTMLTableCellElement _tableCellElementWithImpl:]): Another DOMNode subclass wrapper fix. (-[DOMHTMLTableCellElement _tableCellElementImpl]): Fix broken reinterpret_cast. (-[DOMHTMLFrameSetElement _frameSetElementImpl]): Ditto. (-[DOMHTMLFrameElement _frameElementImpl]): Ditto. (-[DOMHTMLIFrameElement _IFrameElementImpl]): Ditto. (-[DOMHTMLEmbedElement _embedElementImpl]): Ditto.
  • kwq/HTMLDOM.mm: Removed.
9:55 AM Changeset in webkit [6502] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by Darin

  • khtml/khtml_part.cpp: (KHTMLPart::notifySelectionChanged): Call new postDidChangeSelectionNotification function to send Cocoa notification when the selection changes. (KHTMLPart::appliedEditing): Call postDidChangeNotification to send Cocoa notification when the document changes due to editing. (KHTMLPart::unappliedEditing): Ditto. (KHTMLPart::reappliedEditing): Ditto.
  • kwq/DOMHTML.mm: (-[DOMHTMLDocument _HTMLDocumentImpl]): Fix cast to account for multiple inheritance used by the impl class.
  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::postDidChangeSelectionNotification): New function. Call the bridge to post the notification. (KWQKHTMLPart::postDidChangeNotification): Ditto.
  • kwq/WebCoreBridge.h: Declare new -postDidChangeSelectionNotification and -postDidChangeNotification methods.

WebKit:

Reviewed by Darin

  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge postDidChangeNotification]): Posts Cocoa notification when the document changes due to editing. (-[WebBridge postDidChangeSelectionNotification]): Posts Cocoa notification when the document selection changes.
  • WebKit.exp: Export editing notification string constants.
  • WebView.subproj/WebView.m: Define editing notification string constants. (-[WebView computedStyleForElement:pseudoElement:]): Add implementation. (-[WebView setEditingDelegate:]): Do work to set up delegate to receive notification callbacks. (-[WebView DOMDocument]): Simplify to just call the bridge DOMDocument. No need to jump through hoops here. (-[WebView insertNewline:]): Consult delegate before taking action. (-[WebView deleteBackward:]): Ditto. (-[WebView insertText:]): Ditto.
9:21 AM Changeset in webkit [6501] by darin
  • 2 edits in trunk/WebCore

Reviewed by Ken.

  • fixed <rdar://problem/3636261>: "nil-deref in selectedStylesheetSet iterating through properties in a non-view document"
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::selectedStylesheetSet): Add nil check. (DocumentImpl::setSelectedStylesheetSet): Ditto.

Apr 27, 2004:

11:42 PM Changeset in webkit [6500] by vicki
  • 3 edits in branches/Safari-1-2-branch/WebCore
  • merge fix for <rdar://problem/3634233>: innerText problem makes FedEx tracking page (and others) so slow it's effectively a hang (clone for SU) from HEAD

2004-04-25 Maciej Stachowiak <mjs@apple.com>

Reviewed by Darin.

<rdar://problem/3628309>: Fedex tracking page so slow it seems like a hang (site change?)
<rdar://problem/3608061>: "ATI Developer site so slow it seems like a hang"
<rdar://problem/3612130>: "Reproducible hang in JavaScript at www.tfl.gov.uk"
<rdar://problem/3626022>: "Safari was consuming > 100% CPU on dual-G5 Mac, sample shows JavaScript"
<rdar://problem/3632348>: "www.whatis.com search for "pivot table" leads to JavaScript hang"

  • khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::getValueProperty): The "text" property for anchors should be innerText, not innerHTML.
  • khtml/html/html_elementimpl.cpp: (HTMLElementImpl::innerText): Make sure not to include all the text after an element if it has no children.
6:32 PM Changeset in webkit [6499] by sullivan
  • 2 edits in trunk/WebKit

Fixed broken development build.

  • WebView.subproj/WebFrame.m: (-[WebFrame _transitionToLayoutAcceptable]): updated bad variable name used only in LOG statement to match recent change.
6:00 PM Changeset in webkit [6498] by rjw
  • 18 edits in trunk

WebCore:

<rdar://problem/3564519>: API: please add a way to set the media type for a WebView

Reviewed by Chris.

  • khtml/khtmlview.cpp: (KHTMLView::mediaType):
  • kwq/KWQKHTMLPart.h:
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::overrideMediaType):
  • kwq/WebCoreBridge.h:

WebKit:

<rdar://problem/3279301>: API: WebKitErrorCannotFindPlugin and WebKitErrorCannotLoadPlugin should use PlugIn

<rdar://problem/3278513>: API: Need API to control the size of WebHistory

<rdar://problem/3564519>: API: please add a way to set the media type for a WebView
<rdar://problem/3565642>: API: allow a way to extend the MIME types that a WebView will display
<rdar://problem/3577693>: API: add ability to subclass WebView but still use it with Carbon

Reviewed by Chris.

  • Carbon.subproj/HIWebView.h:
  • Carbon.subproj/HIWebView.m: (HIWebViewCreate): (HIWebViewCreateWithClass): (HIWebViewConstructor):
  • History.subproj/WebHistory.h:
  • History.subproj/WebHistory.m: (-[WebHistoryPrivate setHistoryAgeInDaysLimit:]): (-[WebHistoryPrivate historyAgeInDaysLimit]): (-[WebHistoryPrivate setHistoryItemLimit:]): (-[WebHistoryPrivate historyItemLimit]): (-[WebHistoryPrivate _ageLimitDate]): (-[WebHistoryPrivate arrayRepresentation]): (-[WebHistory setHistoryItemLimit:]): (-[WebHistory historyItemLimit]): (-[WebHistory setHistoryAgeInDaysLimit:]): (-[WebHistory historyAgeInDaysLimit]):
  • History.subproj/WebHistoryPrivate.h:
  • Misc.subproj/WebKitErrors.h:
  • Misc.subproj/WebKitErrors.m: (registerErrors):
  • Plugins.subproj/WebNetscapePluginDocumentView.m: (-[WebNetscapePluginDocumentView setDataSource:]):
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge isViewSelected:]): (-[WebBridge overrideMediaType]):
  • WebView.subproj/WebView.h:
  • WebView.subproj/WebView.m: (-[WebViewPrivate dealloc]): (+[WebView MIMETypesShownAsHTML]): (+[WebView setMIMETypesShownAsHTML:]): (-[WebView customUserAgent]): (-[WebView setMediaStyle:]): (-[WebView mediaStyle]):
  • WebView.subproj/WebViewPrivate.h:

WebBrowser:

<rdar://problem/3279301>: API: WebKitErrorCannotFindPlugin and WebKitErrorCannotLoadPlugin should use PlugIn

Reviewed by Chris.

  • LoadProgressMonitor.m: (-[LoadProgressMonitor webView:plugInFailedWithError:dataSource:]):
4:29 PM Changeset in webkit [6497] by hyatt
  • 5 edits in trunk/WebKit

Eliminate the preferences for timed/resource layouts. Accessing them is now taking 0.5% on the cvs-base
test, so we're just going to hardcode the values instead.

Reviewed by mjs

  • WebView.subproj/WebFrame.m: (-[WebFrame _transitionToLayoutAcceptable]): (-[WebFrame _isLoadComplete]):
  • WebView.subproj/WebPreferences.m: (+[WebPreferences initialize]): (-[WebPreferences _objectCacheSize]):
  • WebView.subproj/WebPreferencesPrivate.h:
  • WebView.subproj/WebView.m: (-[WebView _mainReceivedBytesSoFar:fromDataSource:complete:]):
3:57 PM Changeset in webkit [6496] by kocienda
  • 23 edits in trunk

WebCore:

Reviewed by Hyatt

Make selections draw in a more Cocoa-like way, where
fully-selected lines draw out to the ends of lines, and
spaces between lines are drawn with the selection color as well.

  • WebCore-combined.exp: Add _WebCoreInitializeEmptyTextGeometry symbol
  • WebCore.exp: Ditto.
  • khtml/khtml_part.cpp: (KHTMLPart::isPointInsideSelection): Marginally-related change. Fix up this function so that it works right, given my recent changes to positionForCoordinates. This fix "really" fixes the problem. Unlike my attempt to fix yesterday.
  • khtml/rendering/font.cpp: (Font::drawHighlightForText): New drawHighlightForText interface which includes extra information to draw the selection.
  • khtml/rendering/font.h: Ditto.
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): Some minor improvements and cleanups to make this code work correctly in more cases.
  • khtml/rendering/render_block.h: Remove spurious semi-colon after namespace block.
  • khtml/rendering/render_container.cpp: (RenderContainer::positionForCoordinates): Fix typo in comment. Also, clean up one unnecessary call to absolutePosition.
  • khtml/rendering/render_image.cpp: (RenderImage::paint): Many changes to add the new selection drawing behavior.
  • khtml/rendering/render_inline.cpp: (RenderInline::positionForCoordinates): Added to help make selections work right with continuations.
  • khtml/rendering/render_inline.h: Ditto.
  • khtml/rendering/render_object.h: Give zero default argument to inlineBox() helper.
  • khtml/rendering/render_text.cpp: (InlineTextBox::paintSelection): Many changes to add the new selection drawing behavior.
  • kwq/KWQListBox.mm: (-[KWQTableView drawRow:clipRect:]): Use new WebCoreTextGeometry struct.
  • kwq/KWQPainter.h: New drawHighlightForText interface which includes extra information to draw the selection.
  • kwq/KWQPainter.mm: (QPainter::drawText): Use new WebCoreInitializeEmptyTextGeometry struct. (QPainter::drawHighlightForText): Use new WebCoreTextGeometry struct.
  • kwq/WebCoreTextRenderer.h: Declare new WebCoreTextGeometry struct.
  • kwq/WebCoreTextRendererFactory.m: (WebCoreInitializeEmptyTextGeometry): Initializer for WebCoreTextGeometry struct.

WebKit:

Reviewed by Hyatt

Make selections draw in a more Cocoa-like way, where
fully-selected lines draw out to the ends of lines, and
spaces between lines are drawn with the selection color as well.

  • Misc.subproj/WebKitNSStringExtras.m: Use new WebCoreTextGeometry struct. No change in functionality.
  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer drawRun:style:geometry:]): Use new WebCoreTextGeometry struct. No change in functionality. (-[WebTextRenderer drawHighlightForRun:style:geometry:]): Ditto. (-[WebTextRenderer _CG_drawHighlightForRun:style:geometry:]): Many changes to add the new selection drawing behavior. (-[WebTextRenderer _CG_drawRun:style:geometry:]): Use new WebCoreTextGeometry struct. No change in functionality. (-[WebTextRenderer _ATSU_drawHighlightForRun:style:geometry:]): Many changes to add the new selection drawing behavior. (-[WebTextRenderer _ATSU_drawRun:style:geometry:]): Use new WebCoreTextGeometry struct. No change in functionality.
12:54 PM Changeset in webkit [6495] by rjw
  • 2 edits in trunk/WebCore

Don't do unnecessary string comparisons when no composite operator is
specified.

Reviewed by Hyatt.

  • kwq/KWQPainter.mm: (compositeOperatorFromString):
10:38 AM Changeset in webkit [6494] by darin
  • 5 edits in trunk/WebCore

Reviewed by Ken.

  • fixed <rdar://problem/3623694>: "top level <option> and <optgroup> labels look identical in pop-up menus; should not"
  • khtml/rendering/render_form.cpp: (RenderSelect::updateFromElement): Call appendGroupLabel instead of appendItem for group labels.
  • kwq/KWQComboBox.h: Added appendGroupLabel, private setControlSize, labelFont, setTitle, _labelFont, and make _items a QValueList<KWQListBoxItem> instead of QStringList.
  • kwq/KWQComboBox.mm: (QComboBox::QComboBox): Initializes _labelFont to nil. (QComboBox::~QComboBox): Release _labelFont. (QComboBox::setTitle): Added helper function. Uses an attributed string for group labels, and also sets the action to NULL so they are disabled. (QComboBox::appendItem): Added isLabel boolean parameter, make KWQListBoxItem, call setTitle. (QComboBox::sizeHint): Changed to handle group labels with a separate renderer to measure bolded text. (QComboBox::setCurrentItem): Changed to use setTitle helper. (QComboBox::setFont): Release _labelFont if control size changed. (QComboBox::labelFont): Compute label font lazily. (QComboBox::populateMenu): Changed to use setTitle helper.
  • kwq/KWQListBox.h: Removed excess includes, fixed comment.

Apr 26, 2004:

9:20 PM Changeset in webkit [6493] by darin
  • 3 edits in trunk/WebCore

Reviewed by Maciej.

  • follow-on to fix for <rdar://problem/3488892>: "anchor names with non-ASCII characters in them do not work" This part fixes anchor names with non-ASCII characters in local files.
  • kwq/KWQKURL.mm: (KURL::KURL): For file and help URLs, force UTF-8 only for the path part of the URL. Use the document encoding for the rest of the URL.
  • kwq/KWQTextCodec.h: (operator!=): Added.
6:24 PM Changeset in webkit [6492] by hyatt
  • 4 edits in trunk/WebCore

Fix for Emerson truncation problem using apple-line-clamp. Always dirty positioned objects so that they
will move when the height changes.

Reviewed by darin

  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::markPositionedObjectsForLayout):
  • khtml/rendering/render_block.h:
  • khtml/rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::layoutVerticalBox):
4:10 PM Changeset in webkit [6491] by rjw
  • 13 edits in trunk

WebCore:

Added support for specifying composite operation on an
image element. Attribute name is "composite", possible values
are:

clear,
copy
source-over
source-in
source-out
source-atop
destination-over
destination-in
destination-out
destination-atop
xor
darker
highlight
lighter

<img composite="source-over" src="triangle.png">
<img style="position:relative; left:-200px;" composite="destination-in" src="circle.png">

Reviewed by Ken.

  • khtml/html/html_imageimpl.cpp: (HTMLImageElementImpl::parseHTMLAttribute):
  • khtml/html/html_imageimpl.h: (DOM::HTMLImageElementImpl::compositeOperator):
  • khtml/misc/htmlattrs.c: (findAttr):
  • khtml/misc/htmlattrs.h:
  • khtml/misc/htmlattrs.in:
  • khtml/rendering/render_image.cpp: (RenderImage::paint):
  • kwq/KWQPainter.h:
  • kwq/KWQPainter.mm: (compositeOperatorFromString): (QPainter::drawPixmap):
  • kwq/WebCoreImageRenderer.h:

WebKit:

Added support for specifying composite operation on an
image element, i.e.:

<img composite="source-over" src="triangle.png">
<img style="position:relative; left:-200px;" composite="destination-in" src="circle.png">

This feature was requested by the dashboard guys. They can use it to apply
transparency masks to widgies.

Reviewed by Ken.

  • WebCoreSupport.subproj/WebImageRenderer.h:
  • WebCoreSupport.subproj/WebImageRenderer.m: (-[WebImageRenderer initWithMIMEType:]): (-[WebImageRenderer initWithData:MIMEType:]): (-[WebImageRenderer initWithContentsOfFile:]): (-[WebImageRenderer copyWithZone:]): (-[WebImageRenderer drawClippedToValidInRect:fromRect:]): (-[WebImageRenderer drawImageInRect:fromRect:]): (-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:]):

WebBrowser:

Added debug menu to make browser window transparent. Useful
for testing widgies.

  • Debug/DebugUtilities.m: (-[DebugUtilities createDebugMenu]): (-[BrowserDocument toggleBackForwardEnabled:]): (-[BrowserDocument toggleTransparentWindow:]):
3:19 PM Changeset in webkit [6490] by cblu
  • 3 edits in trunk/WebKit

More header doc changes after John's review.

  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebResource.h:
3:03 PM Changeset in webkit [6489] by darin
  • 1 edit in trunk/WebCore/kwq/KWQKURL.mm

Fix semicolon.

3:01 PM Changeset in webkit [6488] by darin
  • 2 edits in trunk/WebCore
  • fixed <rdar://problem/3634145>: "REGRESSION: nil-deref in QTextCodec::toUnicode every time loading page at wiki.wordpress.org"
  • kwq/KWQKURL.mm: (KURL::KURL): Simplify check for nil that defaults to UTF-8. (KURL::decode_string): Add a similar test here.
2:19 PM Changeset in webkit [6487] by hyatt
  • 297 edits in trunk/LayoutTests

Update layout tests to reflect WinIE body-height quirk.

2:16 PM Changeset in webkit [6486] by hyatt
  • 2 edits in trunk/WebCore

Implement the quirk that makes the <body> and <html> size to fill the viewport in quirks mode. This
matches WinIE.

Reviewed by john

  • khtml/rendering/render_box.cpp: (RenderBox::calcHeight):
11:52 AM Changeset in webkit [6485] by cblu
  • 3 edits in trunk/WebKit
  • WebView.subproj/WebDataSourcePrivate.h: added some header doc comments
  • WebView.subproj/WebFramePrivate.h: fixed header doc typo
11:34 AM Changeset in webkit [6484] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by John

Fix for this bug:

<rdar://problem/3633458>: "REGRESSION (125-137): Can't drag a selection unless it starts at beginning of line"

  • khtml/khtml_part.cpp: (KHTMLPart::isPointInsideSelection): I flubbed when I converted this code to use my new positionForCoordinates helper. I failed to add in the passed in values for x and y to the absolute coordinates for the clicked node. So, the "unless it starts at beginning of line" behavior is exactly as one would expect.
1:58 AM Changeset in webkit [6483] by hyatt
  • 8 edits in trunk/WebCore

Eliminate overhangingContents. This concept was redundant with the overflowHeight mechanism that I
implemented some time ago, and in fact, it causes us to grovel through much more of the render tree
than we should when painting. It turns out that none of the places that used this boolean needed
to any longer, and so the entire implementation can now be removed from the tree.

Reviewed by mjs, darin

  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::addChildToFlow): (khtml::RenderBlock::layoutBlock): (khtml::RenderBlock::paint): (khtml::RenderBlock::insertPositionedObject):
  • khtml/rendering/render_box.cpp: (RenderBox::calcHeight):
  • khtml/rendering/render_image.cpp: (RenderImage::setStyle):
  • khtml/rendering/render_inline.cpp: (RenderInline::addChildToFlow):
  • khtml/rendering/render_object.cpp: (RenderObject::RenderObject): (RenderObject::containingBlock): (RenderObject::information): (RenderObject::dump): (RenderObject::nodeAtPoint):
  • khtml/rendering/render_object.h: (khtml::RenderObject::minMaxKnown):
  • khtml/rendering/render_table.cpp: (RenderTable::layout): (RenderTable::paint): (RenderTableCell::paint):

Apr 25, 2004:

11:38 PM Changeset in webkit [6482] by hyatt
  • 4 edits
    2 adds in trunk

Fix for 3258403, implement support for min-height and max-height on normal flow elements. With this patch the
only min-height/max-height work that remains to be done is for table cells and positioned elements.

Reviewed by darin

  • khtml/rendering/render_box.cpp: (RenderBox::calcHeight): (RenderBox::calcHeightUsing): (RenderBox::calcPercentageHeight):
  • khtml/rendering/render_box.h:
  • layout-tests/fast/block/basic/minheight-expected.txt: Added.
  • layout-tests/fast/block/basic/minheight.html: Added.
7:33 PM Changeset in webkit [6481] by darin
  • 4 edits in trunk/WebCore

Reviewed by Dave.

  • fixed <rdar://problem/3633091>: "add overrideMimeType function to XMLHttpRequest"
  • khtml/ecma/xmlhttprequest.cpp: (KJS::XMLHttpRequest::getValueProperty): Add logic to override MIME type if OverrideMIMEType was called. (KJS::XMLHttpRequestProtoFunc::tryCall): Store the MIME type when overrideMimeType is called.
  • khtml/ecma/xmlhttprequest.h: Add OverrideMIMEType to the XMLHttpRequest property enum, and also add a MIMETypeOverride data member to the class.
  • khtml/ecma/xmlhttprequest.lut.h: Regenerated.
5:08 PM Changeset in webkit [6480] by mjs
  • 3 edits
    5 adds in trunk

Reviewed by Darin.

<rdar://problem/3628309>: Fedex tracking page so slow it seems like a hang (site change?)
<rdar://problem/3608061>: "ATI Developer site so slow it seems like a hang"
<rdar://problem/3612130>: "Reproducible hang in JavaScript at www.tfl.gov.uk"
<rdar://problem/3626022>: "Safari was consuming > 100% CPU on dual-G5 Mac, sample shows JavaScript"
<rdar://problem/3632348>: "www.whatis.com search for "pivot table" leads to JavaScript hang"

  • khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::getValueProperty): The "text" property for anchors should be innerText, not innerHTML.
  • khtml/html/html_elementimpl.cpp: (HTMLElementImpl::innerText): Make sure not to include all the text after an element if it has no children.
  • layout-tests/fast/dom/anchor-text-expected.txt: Added.
  • layout-tests/fast/dom/anchor-text.html: Added.
  • layout-tests/fast/dom/inner-text-expected.txt: Added.
  • layout-tests/fast/dom/inner-text.html: Added.
8:10 AM Changeset in webkit [6479] by darin
  • 10 edits in trunk/WebCore

Reviewed by Dave.

  • fixed <rdar://problem/3488892>: "anchor names with non-ASCII characters in them do not work"
  • khtml/khtml_part.h: Add new gotoAnchor helper function, private.
  • khtml/khtml_part.cpp: (KHTMLPart::openURL): Call new gotoAnchor helper, since the code is now complex enough that I don't want to copy and paste. (KHTMLPart::gotoAnchor): Use the pages own encoding when decoding the string for an anchor reference when going to an anchor. This matches the behavior of other browsers. (KHTMLPart::slotFinishedParsing): Call new gotoAnchor helper.
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::scrollToAnchor): Call new gotoAnchor helper.
  • kwq/KWQKURL.h: Removed htmlRef function, and made encodedHtmlRef an inline. Removed unused encoding hint parameter from setQuery (it's not a "hint" at all, but we don't use it). Added a codec parameter to decode_string.
  • kwq/KWQKURL.mm: (hexDigitValue): Added. Helper function. (KURL::setQuery): Removed unused parameter. (KURL::decode_string): Implemented this function. It needs to use an encoding specified by the web page. Also, we wanted to make a version that did not use the CFURLCreateStringByReplacingPercentEscapes function anyway.
  • kwq/KWQString.h: Added parameters to copyLatin1. Now you can copy an arbitrary substring.
  • kwq/KWQString.mm: (QString::copyLatin1): Updated implementation to handle the two new parameters.
  • WebCore-tests.exp: Updated for change in signature of setQuery and decode_string.
  • WebCore-combined.exp: Regenerated.
8:10 AM Changeset in webkit [6478] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Dave.

  • kjs/ustring.cpp: (KJS::UString::append): Fix one case that was allocating a buffer that is 2x too big.
8:10 AM Changeset in webkit [6477] by darin
  • 2 edits in trunk/WebKit

Reviewed by Dave.

  • Misc.subproj/WebNSURLExtras.m: (hexDigit): Use capitalized hex, not lowercase, for consistency with similar functions in WebCore and what other web browsers do.

Apr 24, 2004:

7:46 PM Changeset in webkit [6476] by darin
  • 2 edits in trunk/WebCore

WebCore:

  • fixed <rdar://problem/3570953>: "Update "Acknowledgements" to remove expat and possibly include libxml"
  • WebCore.pbproj/project.pbxproj: Removed the part of the copyright notice that was for expat contributors.

WebBrowser:

  • fixed <rdar://problem/3570953>: "Update "Acknowledgements" to remove expat and possibly include libxml"
  • Help/Acknowledgments.rtf: New version of the file from legal, removing expat-related section.

Apr 23, 2004:

7:50 PM Changeset in webkit [6475] by darin
  • 2 edits in trunk/WebKit

Reviewed by Maciej.

  • fixed <rdar://problem/3627362>: "bad access with libgmalloc in -[_WebCoreHistoryProvider containsItemForURLUnicode:length:]"
  • History.subproj/WebHistory.m: (-[_WebCoreHistoryProvider containsItemForURLUnicode:length:]): Add range checks so we don't overrun the buffer while looking for slashes.
4:57 PM Changeset in webkit [6474] by hyatt
  • 2 edits in trunk/WebCore

Fix the apple-line-clamp values to more closely match what is needed, an even split of the max lines between the possible
values.

  • khtml/rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::layoutVerticalBox):
4:43 PM Changeset in webkit [6473] by hyatt
  • 3 edits in trunk/WebCore

Fix to make the containing block percentage height calculation actually work according to the CSS2 spec.
Percentages other than 100% are now supported, and flexing percentage height blocks inside table cells
are now supported.

Reviewed by kocienda

  • khtml/rendering/render_box.cpp: (RenderBox::calcHeight): (RenderBox::calcPercentageHeight):
  • khtml/rendering/render_box.h:
3:40 PM Changeset in webkit [6472] by mjs
  • 7 edits
    2 adds in trunk/JavaScriptCore

Reviewed by Darin.

Implementation of conservative GC, based partly on code from
Darin. It's turned off for now, so it shouldn't have any effect on
the normal build.

  • JavaScriptCore.pbproj/project.pbxproj:
  • kjs/collector.cpp: (KJS::Collector::markStackObjectsConservatively): (KJS::Collector::markProtectedObjects): (KJS::Collector::collect):
  • kjs/collector.h:
  • kjs/protect.h: (KJS::gcProtect): (KJS::gcUnprotect):
  • kjs/protected_values.cpp: Added. (KJS::ProtectedValues::getProtectCount): (KJS::ProtectedValues::increaseProtectCount): (KJS::ProtectedValues::insert): (KJS::ProtectedValues::decreaseProtectCount): (KJS::ProtectedValues::expand): (KJS::ProtectedValues::shrink): (KJS::ProtectedValues::rehash): (KJS::ProtectedValues::computeHash):
  • kjs/protected_values.h: Added.
  • kjs/value.cpp: (ValueImp::useConservativeMark): (ValueImp::mark): (ValueImp::marked):
  • kjs/value.h: (KJS::ValueImp::):
2:20 PM Changeset in webkit [6471] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by John

Fix for this bug:
<rdar://problem/3632163>: "REGRESSSION: crash on css home page"

  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForRenderer): Add null check.
2:17 PM Changeset in webkit [6470] by cblu
  • 4 edits in trunk/WebKit

Reviewed by John

Added header doc comments to proposed API's.

  • WebView.subproj/WebArchive.h:
  • WebView.subproj/WebFramePrivate.h:
  • WebView.subproj/WebResource.h:
12:01 PM Changeset in webkit [6469] by hyatt
  • 3 edits in trunk/WebCore

Fix hiermenu opacity bug. Make sure to save/restore the graphics state before pushing and popping
transparency layers, so that alterations to alpha don't accidentally persist.

Reviewed by kocienda

  • kwq/KWQPainter.mm: (QPainter::beginTransparencyLayer): (QPainter::endTransparencyLayer):
10:18 AM Changeset in webkit [6468] by kocienda
  • 8 edits in trunk/WebCore

Reviewed by Darin

Changed inlineBoxForRenderer(RenderObject *, int) helper that was static
in dom_position.cpp into a virtual method on RenderObjects. Function is
now called inlineBox(int). Functionality unchanged.

  • khtml/rendering/render_br.cpp: (RenderBR::inlineBox)
  • khtml/rendering/render_br.h:
  • khtml/rendering/render_object.cpp: (RenderObject::caretMaxRenderedOffset) (RenderObject::inlineBox)
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_text.cpp: (RenderText::inlineBox)
  • khtml/rendering/render_text.h:
  • khtml/xml/dom_position.cpp: (DOM::renderersOnDifferentLine): (DOM::nextRenderedEditable) (DOM::previousRenderedEditable) (DOM::Position::previousLinePosition) (DOM::Position::nextLinePosition) (DOM::Position::rendersInDifferentPosition)
10:02 AM Changeset in webkit [6467] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Darin

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): Fix editing test regression with deleting whitespace at the end of the line. I just made this "improvement" yesterday, and the concept of the change is a good one, but instead of short-circuiting if the selection after deleting collapsible whitespace is a range (which can be confused by "significant" collapsed whitespace at the end of a line), short-circuit if the upstream start position equals the downstream end position.
9:41 AM Changeset in webkit [6466] by vicki
  • 3 edits in trunk

Change version number to '139u'. The tree is open!

9:33 AM Changeset in webkit [6465]
  • 3 copies in tags/Safari-138

This commit was manufactured by cvs2svn to create tag 'Safari-138'.

9:33 AM Changeset in webkit [6464] by vicki
  • 6 edits in trunk

Safari-138 stamp

8:13 AM Changeset in webkit [6463] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by John

Added some plumbing for applying styles.

  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::createCSSStyleDeclaration): New factory method.
  • khtml/xml/dom_docimpl.h: Declare the above.
  • kwq/DOM-CSS.mm: (-[DOMCSSStyleDeclaration _styleDeclarationImpl]): Expose this in the WebCoreInternal category, "promoting" it from being private to the DOM-CSS.mm file.
  • kwq/DOM.mm: Add -(DOMCSSStyleDeclaration *)createCSSStyleDeclaration extension.
  • kwq/DOMExtensions.h: Delcare the above.
  • kwq/DOMInternal.h: Add _styleDeclarationImpl to WebCoreInternal category.

WebKit:

Reviewed by John

Added some plumbing for applying styles.

  • DOM.subproj/DOMExtensions.h: Copied from WebCore.
  • WebView.subproj/WebView.m: (-[WebView DOMDocument]): Added new helper. (-[WebView styleDeclarationWithText:]): Added new helper.
  • WebView.subproj/WebViewPrivate.h: Declare above methods.
3:40 AM Changeset in webkit [6462] by sullivan
  • 2 edits in trunk/WebCore
  • fixed <rdar://problem/3631541>: "repro crash in KHTMLPart::setFocusNodeIfNeeded"

Reviewed by Maciej.

  • khtml/khtml_part.cpp: (KHTMLPart::setFocusNodeIfNeeded): added nil check
1:43 AM Changeset in webkit [6461] by mjs
  • 2 edits in trunk/WebCore

Back out one of the previous changes, it causes a crash. Whoops!

  • kwq/KWQScrollView.mm: (QScrollView::addChild):

Apr 22, 2004:

2:55 PM Changeset in webkit [6460] by rjw
  • 2 edits in trunk/JavaScriptCore

Fixed build snafu (re-declaration of NPBool in npruntime.h and
npapi.h).

  • bindings/npruntime.h:
2:54 PM Changeset in webkit [6459] by rjw
  • 5 edits
    2 adds in trunk/WebKit

Updates to plugin binding APIs.
Updates to Java plugin APIs.
Transparency fix for Dashboard.

Reviewed by John and Greg Bolsinga.

  • Plugins.subproj/WebPluginJava.h: Added. New API for Java plugin.
  • Plugins.subproj/npfunctions.h:
  • Plugins.subproj/npruntime.h: (_NPString::): (_NPString::_NPVariant::):
  • Plugins.subproj/npsap.h: Added. New API for plugin bindings.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView drawRect:]): Update for Dashboard. View must fill with transparency when not drawing background.
  • copy-webcore-files-to-webkit:
2:49 PM Changeset in webkit [6458] by kocienda
  • 2 edits in trunk/WebCore

Reviewed by Hyatt

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): Short-circuit return if the selection is not a range after collapsing whitespace.
2:38 PM Changeset in webkit [6457] by rjw
  • 11 edits in trunk/JavaScriptCore

Updated plugin binding API to reflect latest revision from
working group.

Biggest change is the introduction of NPVariant used to represent
value types. NPVariant replaces the use of NPObject for the
exchange of values between scripting environment and native code.

Reviewed by John.

  • JavaScriptCore.pbproj/project.pbxproj:
  • bindings/NP_jsobject.cpp: (identiferFromNPIdentifier): (NPN_Call): (NPN_Evaluate): (NPN_GetProperty): (NPN_SetProperty): (NPN_ToString): (NPN_GetPropertyAtIndex): (NPN_SetPropertyAtIndex):
  • bindings/c/c_class.cpp: (CClass::methodsNamed): (CClass::fieldNamed):
  • bindings/c/c_instance.cpp: (CInstance::invokeMethod): (CInstance::defaultValue):
  • bindings/c/c_runtime.cpp: (CField::valueFromInstance): (CField::setValueToInstance):
  • bindings/c/c_utility.cpp: (convertNPStringToUTF16): (convertUTF8ToUTF16): (coerceValueToNPVariantStringType): (convertValueToNPVariant): (convertNPVariantToValue):
  • bindings/c/c_utility.h:
  • bindings/npruntime.cpp: (NPN_GetIdentifier): (NPN_GetIdentifiers): (NPN_UTF8FromIdentifier): (NPN_VariantIsVoid): (NPN_VariantIsNull): (NPN_VariantIsUndefined): (NPN_VariantIsBool): (NPN_VariantIsInt32): (NPN_VariantIsDouble): (NPN_VariantIsString): (NPN_VariantIsObject): (NPN_VariantToBool): (NPN_VariantToString): (NPN_VariantToInt32): (NPN_VariantToDouble): (NPN_VariantToObject): (NPN_InitializeVariantAsVoid): (NPN_InitializeVariantAsNull): (NPN_InitializeVariantAsUndefined): (NPN_InitializeVariantWithBool): (NPN_InitializeVariantWithInt32): (NPN_InitializeVariantWithDouble): (NPN_InitializeVariantWithString): (NPN_InitializeVariantWithStringCopy): (NPN_InitializeVariantWithObject): (NPN_InitializeVariantWithVariant): (NPN_ReleaseVariantValue): (NPN_CreateObject): (NPN_RetainObject): (NPN_ReleaseObject): (NPN_IsKindOfClass): (NPN_SetExceptionWithUTF8): (NPN_SetException):
  • bindings/npruntime.h: (_NPString::): (_NPString::_NPVariant::):
  • bindings/testbindings.cpp: (logMessage): (setDoubleValue): (setIntValue): (setStringValue): (setBooleanValue): (getDoubleValue): (getIntValue): (getStringValue): (getBooleanValue): (myGetProperty): (mySetProperty): (myInvoke): (myAllocate):
1:06 PM Changeset in webkit [6456] by kocienda
  • 13 edits in trunk

WebCore:

Reviewed by Hyatt

More work to bring code up to date with the latest API proposal.

  • khtml/xml/dom_selection.h: Fix typo in comment.
  • kwq/WebCoreBridge.h: -applyStyle:toElementsInDOMRange: is now applyStyle:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge applyStyle:]): Ditto.

WebKit:

Reviewed by Hyatt

More work to bring code up to date with the latest API proposal. Note that
all of the replaceXXX methods below now operate on the current selection, so
the method implementations have been simplifed accordingly.

  • WebView.subproj/WebDataSource.m: (-[WebDataSource _replaceSelectionWithArchive:]): New name for _replaceSelectionWithWebArchive.
  • WebView.subproj/WebDataSourcePrivate.h: Ditto.
  • WebView.subproj/WebDefaultEditingDelegate.m: (-[WebDefaultEditingDelegate webViewShouldBeginEditing:inDOMRange:]): Added inDOMRange: parameter. (-[WebDefaultEditingDelegate webViewShouldEndEditing:inDOMRange:]): Ditto. (-[WebDefaultEditingDelegate webView shouldChangeSelectedDOMRange:toDOMRange:proposedRange affinity:stillSelecting:]): Missed adding affinity in last patch.
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView _pasteFromPasteboard:]): Call old method with new name: _replaceSelectionWithArchive
  • WebView.subproj/WebView.m: (-[WebView replaceSelectionWithNode:]): New version of insertNode:replacingDOMRange: (-[WebView replaceSelectionWithText:]): New version of insertText:replacingDOMRange: (-[WebView replaceSelectionWithMarkupString:]): New version of insertMarkupString:replacingDOMRange: (-[WebView replaceSelectionWithArchive:]): New version of insertWebArchive:replacingDOMRange: (-[WebView deleteSelection]): New version of deleteDOMRange: (-[WebView applyStyle:]): New version of applyStyle:toElementsInDOMRange:
  • WebView.subproj/WebViewPrivate.h:
10:54 AM Changeset in webkit [6455] by kocienda
  • 12 edits in trunk

Tests:

Reviewed by John

  • Blot/BlotDocument.m: (-[BlotDocument webView:didFinishLoadForFrame:]): Send along selection affinity in call to set selection.

WebCore:

Reviewed by John

Adds the notion of selection affinity to the editing API, bringing it up to
date with the latest proposal.

  • khtml/xml/dom_selection.cpp: (DOM::Selection::Selection): Adds support for selection affinity member variable. (DOM::Selection::init): Ditto. (DOM::Selection::operator=): Ditto. (DOM::Selection::setAffinity): New function. (DOM::Selection::layoutCaret): Added comment to indicate that we need to enhance this function to handle selection affinity.
  • khtml/xml/dom_selection.h: Added EAffinity enum and m_affinity member variable. (DOM::Selection::): Moved the enums above the constructors. No code change. (DOM::Selection::affinity): New accessor.
  • kwq/WebCoreBridge.h:
  • kwq/WebCoreBridge.mm: Add selection affinity to API declarations as needed. (-[WebCoreBridge setSelectedDOMRange:affinity:]): Ditto. (-[WebCoreBridge selectedDOMRange]): Ditto. (-[WebCoreBridge selectionAffinity]): Ditto.

WebKit:

Reviewed by John

Adds the notion of selection affinity to the editing API, bringing it up to
date with the latest proposal.

  • WebView.subproj/WebView.m: (-[WebView _alterCurrentSelection:direction:granularity:]): Pass selection affinity to the delegate. We can just pass the current one since this does not change with arrow keys. (-[WebView setSelectedDOMRange:affinity:]): Set the affinity on the selection. (-[WebView selectionAffinity]): New accessor. (-[WebView insertNode:replacingDOMRange:]): Change to pass selection affinity to call to set selection. This is just to get the code to compile for now, since this method will soon be removed in place of a similar one from the latest proposal that always works on the current selection. (-[WebView insertText:replacingDOMRange:]): Ditto. (-[WebView insertMarkupString:replacingDOMRange:]): Ditto. (-[WebView insertWebArchive:replacingDOMRange:]): Ditto. (-[WebView deleteDOMRange:]): Ditto. (-[WebView applyStyle:toElementsInDOMRange:]): Ditto.
  • WebView.subproj/WebViewPrivate.h: Add selection affinity to API declarations as needed.
10:10 AM Changeset in webkit [6454] by darin
  • 2 edits in trunk/JavaScriptCore

Reviewed by Maciej.

  • fixed <rdar://problem/3627473>: "REGRESSION (125-137): memory trasher in UString::append, causing many different crashes"
  • kjs/ustring.cpp: (KJS::UString::expandCapacity): Fix sizeof(UChar *) that should be sizeof(UChar). Was resulting in a buffer 2x the needed size. (KJS::UString::expandPreCapacity): Ditto. (KJS::UString::append): Fix malloc that is missing a sizeof(UChar).
10:07 AM Changeset in webkit [6453] by mjs
  • 1 add in trunk/JavaScriptCore/kjs/protect.h

* empty log message *

9:53 AM Changeset in webkit [6452] by mjs
  • 14 edits
    1 add in trunk

JavaScriptCore:

Reviewed by Darin.

Preliminary change for conservative GC. Create "protected"
subclasses to GC-protect objects when on heap, since we will soon
remove the built-in refcounting of the normal wrapper classes. Use
them where needed.

  • JavaScriptCore.pbproj/project.pbxproj:
  • kjs/context.h:
  • kjs/internal.h: (KJS::InterpreterImp::globalObject):
  • kjs/interpreter.h:
  • kjs/property_map.cpp:
  • kjs/reference.h:
  • kjs/reference_list.cpp:

WebCore:

Reviewed by Darin.

Preliminary change for conservative GC. Use new "protected"
subclasses to GC-protect objects when on heap, since we will soon
remove the built-in refcounting of the normal wrapper classes.

  • ForwardingHeaders/kjs/protect.h: Added.
  • khtml/ecma/kjs_binding.h:
  • khtml/ecma/kjs_events.h:
  • khtml/ecma/kjs_traversal.h:
  • khtml/ecma/kjs_window.h:
9:16 AM Changeset in webkit [6451] by kocienda
  • 2 edits in trunk/WebKit

Reviewed by Darin

Work around this bug:
<rdar://problem/3630640>: "Calling interpretKeyEvents: in a custom text view can fail to process keys right after app startup"

  • WebView.subproj/WebView.m: (-[WebView _editingKeyDown:]): The issue is with a message to nil in AppKit key binding manager code. Add call to [NSKeyBindingManager sharedKeyBindingManager] to make sure the not-supposed-to-be-nil object is created before calling interpretKeyEvents:.
8:39 AM Changeset in webkit [6450] by darin
  • 2 edits in trunk/WebCore
  • khtml/ecma/kjs_window.cpp: (Window::get): Removed code that gets properties from the parent. This was a mistake we inherited from KHTML, and they have long since fixed it.
6:24 AM Changeset in webkit [6449] by kocienda
  • 11 edits in trunk

WebCore:

Reviewed by Hyatt

Ensures caret visibility after making an editing action.

  • khtml/xml/dom_selection.cpp: (DOM::Selection::getRepaintRect): Expose this as public.
  • khtml/xml/dom_selection.h: Ditto.
  • kwq/WebCoreBridge.h: Add ensureCaretVisible method.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge replaceSelectionWithMarkupString:baseURLString:]): Unrelated crash fix. Null-check baseURLString. (-[WebCoreBridge ensureCaretVisible]): Added.

WebKit:

Reviewed by Hyatt

Added calls to ensure caret visibility after the editing action is done.

  • WebView.subproj/WebView.m: (-[WebView _alterCurrentSelection:direction:granularity:]): (-[WebView insertNewline:]): (-[WebView deleteBackward:]): (-[WebView insertText:]):

Apr 21, 2004:

9:41 PM Changeset in webkit [6448] by hyatt
  • 1 edit in trunk/LayoutTests/fast/table/rowspan-paint-order-expected.txt

Fix multiple rowspan test.

9:39 PM Changeset in webkit [6447] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test with multiple rows expanding in percentage heights.

9:37 PM Changeset in webkit [6446] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3245627, nested tables don't expand vertically. I actually fixed the basic problem in the
previous checkin, but this exposed another basic math error where |numVariable| was not being
decremented properly. This meant space was mis-allocated when multiple variable height rows both needed
to expand.

  • khtml/rendering/render_table.cpp: (RenderTableSection::layoutRows):
7:26 PM Changeset in webkit [6445] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test for weird rowspan case.

7:24 PM Changeset in webkit [6444] by hyatt
  • 2 edits in trunk/WebCore

Fix for 3020449, ensure that the paint order of cells with rowspans matches other browsers.

Reviewed by darin

  • khtml/rendering/render_table.cpp: (RenderTableSection::paint):
2:49 PM Changeset in webkit [6443] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add test case for nested percent height tables.

2:48 PM Changeset in webkit [6442] by hyatt
  • 2 edits in trunk/WebCore

Remove the (incorrect) restriction on table flexing that required the cell to have a fixed width. In
reality, the style on the cell is completely irrelevant.

Reviewed by kocienda

  • khtml/rendering/render_table.cpp: (RenderTable::layout):
2:25 PM Changeset in webkit [6441] by hyatt
  • 2 adds in trunk/LayoutTests/fast/table

Add layout test to cover percentage height cells case.

2:24 PM Changeset in webkit [6440] by hyatt
  • 2 edits in trunk/WebCore

Make sure cells that get flexed vertically in tables don't check text children when looking for
percentage height children.

Reviewed by kocienda

  • khtml/rendering/render_table.cpp: (RenderTableSection::layoutRows):
1:56 PM Changeset in webkit [6439] by hyatt
  • 2 adds in trunk/LayoutTests/fast/block/positioning

Add test for the hiermenu image positioning bug.

1:49 PM Changeset in webkit [6438] by hyatt
  • 2 edits in trunk/WebCore

Fix for hiermenus bug. Absolutely positioned images should not contribute to their containing block's
max width. Make sure to disregard positioned elements when computing min/max width.

Reviewed by kocienda

  • khtml/rendering/render_block.cpp: (khtml::InlineMinMaxIterator::next):
1:43 PM Changeset in webkit [6437] by kocienda
  • 8 edits
    2 adds in trunk

Reviewed by Hyatt

A small collection of fixups.

  • khtml/editing/htmlediting_impl.cpp: (DeleteSelectionCommandImpl::doApply): Do not shift ending selection downstream when at position zero of a BR. That's just wrong. Simplify code that does "onlyWhitespace" delete. No need to handle multiple characters here; we can only ever have one thanks to the delete-collapsible-whitespace code. (TypingCommandImpl::issueCommandForDeleteKey): Don't do anything if at the start of a root editable block. This is a no-op....not an opportunity to crash.
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForRenderer): Return this renderer's element position if the passed-in renderer is nil. This helps to make clicking in empty blocks work.
  • khtml/rendering/render_container.cpp: (RenderContainer::positionForCoordinates): Fixed typo in comment.
  • khtml/xml/dom_position.cpp: (DOM::Position::equivalentLeafPosition): Do not attempt to find a leaf if the position's node does not have a renderer, if the renderer has no kids.
  • layout-tests/editing/deleting/delete-br-001-expected.txt: Update expected results for BR fix.
  • layout-tests/editing/deleting/delete-br-003-expected.txt: Ditto.
  • layout-tests/editing/deleting/delete-br-006-expected.txt: Ditto.
  • layout-tests/editing/deleting/delete-br-007.html: Added. New BR test.
  • layout-tests/editing/deleting/delete-br-007-expected.txt: Added.
9:47 AM Changeset in webkit [6436] by kocienda
  • 3 edits in trunk/WebCore

Reviewed by Hyatt

  • khtml/css/css_computedstyle.cpp: (DOM::CSSComputedStyleDeclarationImpl::getPropertyCSSValue): Added implementations for these properties: CSS_PROP_TEXT_DECORATION, CSS_PROP_VERTICAL_ALIGN, CSS_PROP_TEXT_INDENT, CSS_PROP_LETTER_SPACING, CSS_PROP_WORD_SPACING, CSS_PROP_LINE_HEIGHT
9:42 AM Changeset in webkit [6435] by kocienda
  • 17 edits in trunk/WebCore

Reviewed by John

The Selection class now uses the Position class throughout its public and
private interface. This replaces the inconsistent use of the Position
class here and node/offset pairs there. There are no functional changes, only
updates to the new Selection class API.

  • khtml/ecma/kjs_window.cpp: (Selection::get): (SelectionFunc::tryCall):
  • khtml/editing/htmlediting_impl.cpp: (DeleteCollapsibleWhitespaceCommandImpl::doApply): (DeleteSelectionCommandImpl::joinTextNodesWithSameStyle): (DeleteSelectionCommandImpl::doApply): (InputNewlineCommandImpl::doApply): (InputTextCommandImpl::deleteCharacter): (InputTextCommandImpl::prepareForTextInsertion): (InputTextCommandImpl::execute): (PasteMarkupCommandImpl::doApply): (TypingCommandImpl::issueCommandForDeleteKey):
  • khtml/khtml_part.cpp: (KHTMLPart::findTextNext): (KHTMLPart::setFocusNodeIfNeeded): (KHTMLPart::notifySelectionChanged): (KHTMLPart::isPointInsideSelection): (KHTMLPart::handleMouseMoveEventSelection): (KHTMLPart::khtmlMouseReleaseEvent): (KHTMLPart::selectAll):
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::paintObject):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::updateSelection):
  • khtml/xml/dom_nodeimpl.cpp:
  • khtml/xml/dom_selection.cpp: (DOM::emptyPosition): (DOM::Selection::Selection): (DOM::Selection::init): (DOM::Selection::operator=): (DOM::Selection::moveTo): (DOM::Selection::modify): (DOM::Selection::xPosForVerticalArrowNavigation): (DOM::Selection::clear): (DOM::Selection::setBase): (DOM::Selection::setExtent): (DOM::Selection::setBaseAndExtent): (DOM::Selection::setStart): (DOM::Selection::setEnd): (DOM::Selection::setStartAndEnd): (DOM::Selection::toRange): (DOM::Selection::layoutCaret): (DOM::Selection::needsCaretRepaint): (DOM::Selection::paintCaret): (DOM::Selection::validate): (DOM::Selection::moveToRenderedContent): (DOM::Selection::nodeIsBeforeNode): (DOM::startAndEndLineNodesIncludingNode): (DOM::Selection::debugRenderer): (DOM::Selection::debugPosition):
  • khtml/xml/dom_selection.h: (DOM::Selection::~Selection): (DOM::Selection::base): (DOM::Selection::extent): (DOM::Selection::start): (DOM::Selection::end): (DOM::Selection::assignBase): (DOM::Selection::assignExtent): (DOM::Selection::assignBaseAndExtent): (DOM::Selection::assignStart): (DOM::Selection::assignEnd): (DOM::Selection::assignStartAndEnd): (DOM::operator==):
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::jumpToSelection): (KWQKHTMLPart::selectionStartOffset): (KWQKHTMLPart::selectionEndOffset): (KWQKHTMLPart::selectionStart): (KWQKHTMLPart::selectionEnd):
  • kwq/KWQRenderTreeDebug.cpp: (writeSelection):
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge isSelectionEditable]): (-[WebCoreBridge setSelectionFrom:startOffset:to:endOffset:]): (-[WebCoreBridge setSelectedDOMRange:]):

Apr 20, 2004:

4:36 PM Changeset in webkit [6434] by hyatt
  • 3 edits in trunk/LayoutTests/fast

Fix frames layout tests now that regression has been fixed.

3:59 PM Changeset in webkit [6433] by cblu
  • 2 edits in trunk/WebKit

Fixed: <rdar://problem/3605209>: "HITLIST: REGRESSION (131-132): iframes/frames no longer dump on layout tests"

Reviewed by hyatt.

  • WebView.subproj/WebHTMLRepresentation.m: (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): the encoding was not being set in the about:blank case. Call receivedData:textEncodingName: as we did in the past to set it.
3:17 PM Changeset in webkit [6432] by kocienda
  • 45 edits
    1 add
    2 deletes in trunk/WebCore

Reviewed by Hyatt

Renamed DOMPosition class to Position.
Renamed KHTMLSelection to Selection and moved to DOM namespace.

  • ForwardingHeaders/xml/dom_selection.h: Added.
  • WebCore.pbproj/project.pbxproj: Go Xcode!
  • khtml/khtml_selection.cpp: Removed.
  • khtml/khtml_selection.h: Removed.
  • khtml/xml/dom_position.cpp: Renamed DOMPosition to Position
  • khtml/xml/dom_position.h: Ditto.
  • khtml/xml/dom_selection.cpp: New home for renamed Selection object.
  • khtml/xml/dom_selection.h: Ditto.
2:20 PM Changeset in webkit [6431] by kocienda
  • 22 edits
    2 adds in trunk

WebCore:

Reviewed by Hyatt

  • WebCore.pbproj/project.pbxproj:
  • khtml/khtml_part.cpp: (KHTMLPart::handleMousePressEventDoubleClick): Improved name of expandToElement. Now is expandUsingGranularity. (KHTMLPart::handleMousePressEventTripleClick): Ditto. (KHTMLPart::handleMouseMoveEventSelection): Ditto.
  • khtml/khtml_selection.cpp: (KHTMLSelection::modify): Added support for modifying and extending selection right and left by word. Also added support for extending selection up and down. (KHTMLSelection::expandUsingGranularity): New name for expandToElement. (KHTMLSelection::xPosForVerticalArrowNavigation): Made this function handle cases where we know we want to use a particular position for calculating the right x position. We need this to handle extending selection up and down, and for setting the caret to the right place when moving up and down when a range is already selected. (KHTMLSelection::validate): Name tweak. expandTo variable now granularity.
  • khtml/khtml_selection.h: Make declaration changes for changes to cpp file.
  • khtml/misc/helper.cpp: (khtml::findWordBoundary): Added this hook for KDE to do their version of KWQFindWordBoundary
  • khtml/misc/helper.h:
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): Factor out closest box finder code to its own function
  • khtml/rendering/render_line.cpp: (InlineFlowBox::closestChildForXPos): New function. This is the factored code that was taken out of render_block.cpp. (InlineBox::closestLeafChildForXPos): Ditto.
  • khtml/rendering/render_line.h: Ditto.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::positionForCoordinates): I think I am starting to get how the coordinate transforms work. Made some fixups based on this greater sense of enlightenment.
  • khtml/rendering/render_text.cpp: (RenderText::positionForCoordinates): Ditto. Fix lastTextBox/firstTextBox code mistake.
  • khtml/xml/dom_position.cpp: (DOMPosition::previousWordPosition): Added. (DOMPosition::nextWordPosition): Added. (DOMPosition::previousLinePosition): No longer use nodeAtPoint. Use new closestLeafChildForXPos instead. (DOMPosition::nextLinePosition): Ditto. (DOMPosition::inLastEditableInContainingEditableBlock):
  • khtml/xml/dom_position.h:
  • kwq/KWQTextUtilities.cpp: Added. (KWQFindWordBoundary): Factored out code that was in a static function in khtml_selection.cpp so that DOMPosition can use it too.
  • kwq/KWQTextUtilities.h: Added.

WebKit:

Reviewed by Hyatt

Added implementations for these methods.

  • WebView.subproj/WebView.m: (-[WebView moveUpAndModifySelection:]): (-[WebView moveWordLeft:]): (-[WebView moveWordLeftAndModifySelection:]): (-[WebView moveWordRight:]): (-[WebView moveWordRightAndModifySelection:]):
1:36 PM Changeset in webkit [6430]
  • 51 copies
    2 deletes in tags/WebCore-125~6~3

This commit was manufactured by cvs2svn to create tag
'WebCore-125~6~3'.

1:36 PM Changeset in webkit [6429] by vicki
  • 2 edits in branches/Safari-1-2-branch/WebCore

WebCore versioning, WebCore-125.6.3

1:05 PM Changeset in webkit [6428] by vicki
  • 4 edits in branches/Safari-1-2-branch/WebCore
  • fixed <rdar://problem/3626076>: (REGRESSION (10.3.3-7H40): some tables rendering incorrectly) by merging more of the zeldman change (3609695) and fixing HRs
  • khtml/css/html4.css: margins on HRs should be smaller, to match other browsers
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::layoutBlockChildren):
  • khtml/rendering/render_table.cpp: (RenderTableCell::paint):
11:28 AM Changeset in webkit [6427] by sullivan
  • 3 edits in trunk/WebKit

WebKit:

  • fixed <rdar://problem/3622393>: When in stealth mode, visited webpage contents should not be cached to disk

Reviewed by Ken.

  • WebView.subproj/WebBaseResourceHandleDelegate.m: (-[WebBaseResourceHandleDelegate willCacheResponse:]): if will cache to disk and in stealth mode, replace cache response with an identical one that won't cache to disk.

WebBrowser:

  • fixed the following bugs: <rdar://problem/3529727>: click and hold on an auto-tab folder in the bookmarks bar should show the items in a menu <rdar://problem/3546013>: bookmark button is left in the wrong state when closing a tab with bookmarks in it <rdar://problem/3612787>: When printed page has no HTML title, put URL in header instead of footer <rdar://problem/3628119>: Would like "Reveal in Collections" context menu item in bookmarks filter search results <rdar://problem/3628143>: Would like "Reveal in Collections" context menu item in Bookmarks bar

Reviewed by Chris.

  • BookmarksViewController.m: (-[BookmarksViewController revealBookmark:expand:]): generalized this to work with content items that aren't bookmarks (e.g. history items) (-[BookmarksViewController outlineView:menuForEvent:inRow:tableColumn:]): add a "Reveal in Collections" item just before Delete (-[BookmarksViewController revealSelectedFilterSearchItem]): new method, sets the collection appropriately and then reveals the item
  • BrowserWebBookmarkExtras.m: (-[WebBookmark revealFavorite]): new method, calls through to BrowserWindowController
  • BrowserWebViewPrinting.m: (-[BrowserWebView webView:drawFooterInRect:]): don't draw URL in footer if it's already being drawn in the header
  • BrowserWindowController.h:
  • BrowserWindowController.m: (-[BrowserWindowController revealFavorite:]): new method, calls through to BookmarksViewController (-[BrowserWindowController closeTab:]): update the show/hide bookmarks button here also (we were already updating it when showing a tab)
  • English.lproj/Localizable.strings: updated for these changes
  • FavoriteButton.m: (-[FavoriteButton menu]): add "Reveal in Collections" item (-[FavoriteButton shouldShowContentsMenuFromEvent:waitedForDragDelay:]): added waitedForDragDelay parameter, use it to decide whether to show the menu even for the auto-tab case (-[FavoriteButton performClick:]): pass NO for waitedForDragDelay (-[FavoriteButton mouseDown:]): pass appropriate value for waitedForDragDelay

Apr 19, 2004:

3:54 PM Changeset in webkit [6426] by kocienda
  • 23 edits in trunk

WebCore:

Reviewed by Hyatt

  • khtml/khtml_part.cpp: (KHTMLPart::notifySelectionChanged): Clear the value used for maintaining x position when doing vertical arrow navigation. WebCoreBridge restores this value when needed. (KHTMLPart::setXPosForVerticalArrowNavigation): New accessor. (KHTMLPart::xPosForVerticalArrowNavigation): New accessor.
  • khtml/khtml_part.h: (KHTMLPart::): Add NoXPosForVerticalArrowNavigation constant.
  • khtml/khtml_selection.cpp: (KHTMLSelection::modify): Add cases for UP and DOWN navigation (KHTMLSelection::xPosForVerticalArrowNavigation): New helper.
  • khtml/khtml_selection.h: Add UP and DOWN constants to EDirection enum. (KHTMLSelection::):
  • khtml/khtmlpart_p.h: Declare storage for m_xPosForVerticalArrowNavigation, the value used for maintaining x position when doing vertical arrow navigation.
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): Improved this function to handle deficiencies exposed when trying to implement new behavior.
  • khtml/rendering/render_br.cpp: (RenderBR::positionForCoordinates): Added implementation of this virtual function.
  • khtml/rendering/render_br.h: Declare implementation for positionForCoordinates virtual function.
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::positionForCoordinates): Improved this function to handle deficiencies exposed when trying to implement new behavior.
  • khtml/rendering/render_text.cpp: (InlineTextBox::offsetForPosition): Remove left/right "bounds" check here. (RenderText::positionForCoordinates): Improved this function to handle deficiencies exposed when trying to implement new behavior.
  • khtml/xml/dom_position.cpp: (inlineBoxForRenderer): Moved to top of file so all code in the file can see this static function. (renderersOnDifferentLine): Ditto. (nextRenderedEditable): Ditto. (previousRenderedEditable): Ditto. (DOMPosition::previousLinePosition): New function. Implements the guts of up/down navigation. (DOMPosition::nextLinePosition): Ditto.
  • khtml/xml/dom_position.h: Added declarations for nextLinePosition and previousLinePosition.
  • kwq/WebCoreBridge.h: Add WebSelectUp and WebSelectDown constants.
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge alterCurrentSelection:direction:granularity:]): Handles saving and restoring the x position used for doing vertical arrow navigation.

WebKit:

Reviewed by Hyatt

  • WebView.subproj/WebView.m: (-[WebView moveDown:]): Added implementation. (-[WebView moveUp:]): Added implementation.
2:26 PM Changeset in webkit [6425] by mjs
  • 3 edits in trunk/JavaScriptCore

Reviewed by Dave.

Optimize prepend using the shared substring optimization. Also,
limit the applicability of shared append and shared prepend. If
you overdo it, it does more harm than good, because you create a
bunch of strings that are disqualified from future shared
append/prepend, for not much immediate savings in allocate/copy
expense.

  • kjs/ustring.cpp: (KJS::): (KJS::UString::Rep::create): (KJS::UString::expandedSize): (KJS::UString::usedPreCapacity): (KJS::UString::expandCapacity): (KJS::UString::expandPreCapacity): (KJS::UString::UString): (KJS::UString::append): (KJS::UString::operator=):
  • kjs/ustring.h: (KJS::UString::Rep::data):
9:55 AM Changeset in webkit [6424] by cblu
  • 5 edits in trunk/WebKit

Added support for pasting frames via WebArchives.

Reviewed by kocienda.

  • WebView.subproj/WebDataSource.m: (-[WebDataSource _addSubframeArchives:]): renamed, now allows subframe archives to be added at anytime (-[WebDataSource _popSubframeArchiveWithName:]): renamed, now deletes the returned subframe to consume less memory (-[WebDataSource _replaceSelectionWithWebArchive:]): added support for subframes
  • WebView.subproj/WebDataSourcePrivate.h:
  • WebView.subproj/WebFrame.m: (-[WebFrame _loadRequest:subresources:subframeArchives:]): call renamed methods (-[WebFrame _loadURL:intoChild:]): ditto
  • WebView.subproj/WebHTMLRepresentation.m: (-[WebHTMLRepresentation loadArchive]): ditto
Note: See TracTimeline for information about the timeline view.