Timeline



Feb 15, 2005:

4:31 PM Changeset in webkit [8598] by rjw
  • 2 edits in trunk/WebKit

Fixed <rdar://problem/3998368> Tiger8A376: WebTextRenderer assertion failure in Safari while browsing news.bbc.co.uk

Removed use of FATAL_ALWAYS from getUncachedWidth(). It's unclear
why we would trigger the FATAL_ALWAYS. In the past we've seen
the message triggered because of corrupt fonts. Anyway, in this
particular case, we will now return 0 for the character width,
rather than exiting.

Reviewed by David Harrison.

  • WebCoreSupport.subproj/WebTextRenderer.m: (getUncachedWidth):
3:48 PM Changeset in webkit [8597] by mjs
  • 6 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/3942428> reproducible crash loading cbs.sportsline.com

This change reverts the fix for <rdar://problem/3805311>, and
re-fixes it in a different (better) way. Instead of preventing
programmatic open from setting the parsing flag, instead make sure
that programmatic close resets it.

  • khtml/khtml_part.cpp: (KHTMLPart::openURL): (KHTMLPart::didExplicitOpen): (KHTMLPart::closeURL): (KHTMLPart::begin): (KHTMLPart::end): (KHTMLPart::endIfNotLoading): (KHTMLPart::slotFinishedParsing): (KHTMLPart::checkEmitLoadEvent):
  • khtml/khtml_part.h:
  • khtml/khtmlpart_p.h: (KHTMLPartPrivate::KHTMLPartPrivate):
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::open): (DocumentImpl::implicitOpen): (DocumentImpl::close): (DocumentImpl::implicitClose):
  • khtml/xml/dom_docimpl.h:
3:41 PM Changeset in webkit [8596] by harrison
  • 4 edits in trunk/WebCore

Reviewed by Maciej.

<rdar://problem/3933665> smart delete seems to delete too much after expanding selection with arrow keys

Fixed by updating the selection granularity. Only byWord granularity enables smart delete, but in this
case the granularity changed from byWord to byCharacter.

  • khtml/khtml_part.cpp: (KHTMLPart::setSelectionGranularity):
  • khtml/khtml_part.h:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge rangeByExpandingSelectionWithGranularity:]): (-[WebCoreBridge rangeByAlteringCurrentSelection:direction:granularity:]): (-[WebCoreBridge alterCurrentSelection:direction:granularity:]):
3:31 PM Changeset in webkit [8595] by harrison
  • 2 edits in trunk/WebCore

Reviewed by Darin.

(continued) <rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line

This was supposed have been committed yesterday with the other part of the fix, but was not.

  • khtml/editing/visible_units.cpp: (khtml::endOfWord):
2:53 PM Changeset in webkit [8594] by rjw
  • 4 edits in trunk/WebKit

Fixed <rdar://problem/3999467> when Osaka-Mono is specified as fixed width font, Osaka used instead

Lie about Osaka-Mono. Treat it as fixed pitch, even though,
strictly speaking it isn't. (Similar to what we do with
Courier New.)

Reviewed by David Harrison.

  • WebCoreSupport.subproj/WebTextRenderer.m: (-[WebTextRenderer _computeWidthForSpace]):
  • WebCoreSupport.subproj/WebTextRendererFactory.h:
  • WebCoreSupport.subproj/WebTextRendererFactory.m: (-[NSFont _web_isFakeFixedPitch]): (-[WebTextRendererFactory isFontFixedPitch:]): (-[WebTextRendererFactory fontWithFamily:traits:size:]):
9:01 AM Changeset in webkit [8593] by kocienda
  • 4 edits
    2 adds in trunk

Reviewed by John

Fix for this bug:

<rdar://problem/3951178> REGRESSION (Mail): blank line lost after pasting as quotation

Problem was that the blank line after the selection was getting deleted incorrectly since the
paste code thought this was an unneeded placeholder rather than a placeholder outside of the
selection.

  • khtml/editing/htmlediting.cpp: (khtml::CompositeEditCommand::removeBlockPlaceholderIfNeeded): Now calls findBlockPlaceholder. (khtml::CompositeEditCommand::findBlockPlaceholder): Moved finding code formerly in removeBlockPlaceholderIfNeeded to this new helper. (khtml::ReplaceSelectionCommand::doApply): Do not delete placeholder up front. Call findBlockPlaceholder, and delete it later if needed in the already-existing cleanup step.
  • khtml/editing/htmlediting.h: Add new function.

New layout test.

  • layout-tests/editing/pasteboard/paste-text-017-expected.txt: Added.
  • layout-tests/editing/pasteboard/paste-text-017.html: Added.

Result changed for the better.

  • layout-tests/editing/pasteboard/paste-text-011-expected.txt

Feb 14, 2005:

5:52 PM Changeset in webkit [8592] by harrison
  • 2 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line

  • khtml/editing/visible_text.cpp: (khtml::SimplifiedBackwardsTextIterator::advance): Add BR in for <rdar://problem/3917929> fix only if leaving a visible text node.
  • khtml/editing/visible_units.cpp: (khtml::endOfWord): Do not move left over a paragraph boundary.
1:09 PM Changeset in webkit [8591] by darin
  • 6 edits
    4 deletes in trunk/WebCore

Reviewed by John.

  • fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)
  • khtml/html/html_formimpl.cpp: (DOM::FormDataList::begin): Updated to use a list of FormDataListItem instead of QCString. (DOM::FormDataList::end): Ditto. (DOM::HTMLFormElementImpl::formData): Same here, and also use appendFile rather than appendData when we encounter a path name rather than data. (DOM::HTMLInputElementImpl::appendFormData): Use appendFile here rather than reading the file in; the reading now happens inside WebKit. (DOM::FormDataList::appendString): Updated for FormDataListItem. (DOM::FormDataList::appendFile): Added.
  • ForwardingHeaders/kfileitem.h: Emptied out the file; no longer includes KWQKFileItem.h.
  • ForwardingHeaders/netaccess.h: Emptied out the file; no longer includes KWQKIONetAccess.h.
  • kwq/KWQKFileItem.h: Removed.
  • kwq/KWQKFileItem.mm: Removed.
  • kwq/KWQKIONetAccess.h: Removed.
  • kwq/KWQKIONetAccess.mm: Removed.
  • WebCore.pbproj/project.pbxproj: Removed the 4 files above.
  • small unrelated fix (not reviewed by John)
  • khtml/ecma/kjs_window.cpp: (Window::isSafeScript): Put some logging code outside if statements so it works all the time.
12:06 PM Changeset in webkit [8590] by darin
  • 8 edits in trunk/WebKit

Reviewed by John.

  • fixed <rdar://problem/3686434> Safari uses too much RAM on file upload, leading to malloc errors and crashes (HP printers)
  • WebView.subproj/WebFormDataStream.h: Added webSetHTTPBody, which creates and connects an appropriate stream to an NSMutableURLRequest.
  • WebView.subproj/WebFormDataStream.m: Added implementation here.
  • WebCoreSupport.subproj/WebBridge.m: (-[WebBridge syncLoadResourceWithURL:customHeaders:postData:finalURL:responseHeaders:statusCode:]): Use webSetHTTPBody.
  • WebCoreSupport.subproj/WebSubresourceClient.m: (+[WebSubresourceClient startLoadingResource:withURL:customHeaders:postData:referrer:forDataSource:]): Use webSetHTTPBody.
  • WebView.subproj/WebFrame.m: (-[WebFrame _loadItem:withLoadType:]): Use webSetHTTPBody. (-[WebFrame _postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]): Ditto.
  • English.lproj/StringsNotToBeLocalized.txt: Updated for this change and other recent changes.
10:19 AM Changeset in webkit [8589] by harrison
  • 28 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/4004305> REGRESSION (Mail): Command-right-arrow on wrapped text goes to end of previous line

Fixed nextLinePosition to calculate affinity rather than take it as a parameter. Propagated the parameter change out to related methods.

  • khtml/editing/htmlediting.cpp: (khtml::DeleteSelectionCommand::initializePositionData): (khtml::InsertLineBreakCommand::doApply): (khtml::InsertParagraphSeparatorCommand::doApply): (khtml::InsertTextCommand::input): (khtml::ReplaceSelectionCommand::doApply): (khtml::ReplaceSelectionCommand::applyStyleToInsertedNodes):
  • khtml/editing/selection.cpp: (khtml::Selection::modifyExtendingRightForward): (khtml::Selection::modifyMovingRightForward): (khtml::Selection::modifyExtendingLeftBackward): (khtml::Selection::modifyMovingLeftBackward): (khtml::Selection::modify): (khtml::Selection::validate):
  • khtml/editing/visible_position.cpp: (khtml::visiblePositionsOnDifferentLines):
  • khtml/editing/visible_units.cpp: (khtml::rootBoxForLine): (khtml::startOfLine): (khtml::endOfLine): (khtml::inSameLine): (khtml::isStartOfLine): (khtml::isEndOfLine): (khtml::previousLinePosition): (khtml::nextLinePosition): (khtml::previousSentencePosition): (khtml::nextSentencePosition): (khtml::previousParagraphPosition): (khtml::nextParagraphPosition):
  • khtml/editing/visible_units.h:
  • khtml/khtml_events.cpp: (khtml::MouseEvent::offset):
  • khtml/khtml_part.cpp: (KHTMLPart::isPointInsideSelection): (KHTMLPart::selectClosestWordFromMouseEvent): (KHTMLPart::handleMousePressEventTripleClick): (KHTMLPart::handleMousePressEventSingleClick): (KHTMLPart::handleMouseMoveEventSelection): (KHTMLPart::khtmlMouseReleaseEvent):
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates):
  • khtml/rendering/render_block.h:
  • khtml/rendering/render_br.cpp: (RenderBR::positionForCoordinates):
  • khtml/rendering/render_br.h:
  • khtml/rendering/render_container.cpp: (RenderContainer::positionForCoordinates):
  • khtml/rendering/render_container.h:
  • khtml/rendering/render_inline.cpp: (RenderInline::positionForCoordinates):
  • khtml/rendering/render_inline.h:
  • khtml/rendering/render_object.cpp: (RenderObject::caretRect): (RenderObject::positionForCoordinates):
  • khtml/rendering/render_object.h:
  • khtml/rendering/render_replaced.cpp: (RenderReplaced::positionForCoordinates):
  • khtml/rendering/render_replaced.h:
  • khtml/rendering/render_text.cpp: (RenderText::positionForCoordinates):
  • khtml/rendering/render_text.h:
  • khtml/xml/dom_position.cpp: (DOM::Position::previousCharacterPosition): (DOM::Position::nextCharacterPosition): (DOM::Position::leadingWhitespacePosition): (DOM::Position::trailingWhitespacePosition):
  • khtml/xml/dom_position.h:
  • kwq/KWQAccObject.mm: (-[KWQAccObject value]): (-[KWQAccObject accessibilityAttributeValue:]): (-[KWQAccObject doAXLineForTextMarker:]): (-[KWQAccObject doAXTextMarkerRangeForLine:]): (-[KWQAccObject doAXTextMarkerForPosition:]): (-[KWQAccObject doAXLeftLineTextMarkerRangeForTextMarker:]): (-[KWQAccObject doAXRightLineTextMarkerRangeForTextMarker:]): (-[KWQAccObject doAXNextLineEndTextMarkerForTextMarker:]): (-[KWQAccObject doAXPreviousLineStartTextMarkerForTextMarker:]):
  • kwq/KWQKHTMLPart.mm:
  • kwq/WebCoreBridge.mm: (-[WebCoreBridge _visiblePositionForPoint:]):

Feb 12, 2005:

8:08 PM Changeset in webkit [8588] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Ken and John.

Re-fixed a specific case of the following:

<rdar://problem/3790449> REGRESSION (Mail): underline behavior is flaky because of how CSS handles text-decoration

Oddly, Cmd-B, Cmd-U, type some text, return, Cmd-U, Cmd-B, type
some text, worked fine. But hitting the second Cmd-B before the
second Cmd-U still failed to remove underlining. The reason for
this is that our code to compute the style of the current position
did not work when you had a typing style and were positioned right
at a <br> element. For various reasons, this did not show up for
bold and italic, since those are handled through the font manager.

The following change fixes this - for elements that can't have
children, we add the dummy span after the element of interest,
rather than as a child of it.

  • khtml/khtml_part.cpp: (KHTMLPart::selectionComputedStyle):

Feb 11, 2005:

5:51 PM Changeset in webkit [8587] by rjw
  • 2 edits in trunk/WebKit

Fixed <rdar://problem/4002505> 8A378: Endlessly animating gif's on http://www.entropy.ch

If animated images had no loop count property we were incorrectly
looping forver. Note, that in the course of fixing this bug
I found that ImageIO is incorrectly NOT reporting the loop count
for a whole class of animated GIFs.

Reviewed by Ken Kocienda.

  • WebCoreSupport.subproj/WebImageData.m: (-[WebImageData _repetitionCount]):
5:03 PM Changeset in webkit [8586] by harrison
  • 2 edits in trunk/WebCore

Reviewed by Darin.

<rdar://problem/3978980> Double Clicking on a line in Mail selected the entire body

  • khtml/editing/visible_units.cpp: (khtml::startOfWord): (khtml::endOfWord): Pay attention to being at the end of a paragraph.

(khtml::previousLinePosition):
(khtml::nextLinePosition):
(khtml::endOfParagraph):
Use DOWNSTREAM per recent affinity changes.

4:58 PM Changeset in webkit [8585] by rjw
  • 17 edits
    1 add in trunk

WebCore:

Fixed <rdar://problem/3985118> DOM objects not being marshaled on JS->native calls

Re-factored how 'native' wrappers for JS objects are created. The interpreter now
creates these wrappers. The WebCore subclass of the interpreter now overrides
createLanguageInstanceForValue() and creates a DOM ObjC wrapper for DOM objects.

  • WebCore.pbproj/project.pbxproj:
  • khtml/ecma/kjs_binding.cpp: (ScriptInterpreter::createLanguageInstanceForValue):
  • khtml/ecma/kjs_binding.h:
  • kwq/DOMUtility.mm: Added. (KJS::ScriptInterpreter::createObjcInstanceForValue):
  • kwq/KWQKHTMLPart.mm: (KWQKHTMLPart::getAppletInstanceForView): (getInstanceForView): (KWQKHTMLPart::getEmbedInstanceForView): (KWQKHTMLPart::getObjectInstanceForView):

JavaScriptCore:

Fixed <rdar://problem/3985118> DOM objects not being marshaled on JS->native calls

Re-factored how 'native' wrappers for JS objects are created. The interpreter now
creates these wrappers. The WebCore subclass of the interpreter now overrides
createLanguageInstanceForValue() and creates a DOM ObjC wrapper for DOM objects.

Reviewed by Ken.

  • bindings/c/c_utility.cpp: (convertValueToNPVariant):
  • bindings/jni/jni_instance.cpp: (JavaInstance::invokeMethod):
  • bindings/jni/jni_runtime.cpp: (JavaField::valueFromInstance): (JavaArray::valueAt):
  • bindings/objc/WebScriptObject.mm: (-[WebScriptObject _setExecutionContext:KJS::Bindings::]): (+[WebScriptObject _convertValueToObjcValue:KJS::originExecutionContext:Bindings::executionContext:Bindings::]):
  • bindings/objc/WebScriptObjectPrivate.h:
  • bindings/objc/objc_utility.h:
  • bindings/objc/objc_utility.mm: (KJS::Bindings::convertObjcValueToValue): (KJS::Bindings::createObjcInstanceForValue):
  • bindings/runtime.cpp: (Instance::createBindingForLanguageInstance): (Instance::createRuntimeObject): (Instance::createLanguageInstanceForValue):
  • bindings/runtime.h:
  • kjs/interpreter.cpp: (Interpreter::createLanguageInstanceForValue):
  • kjs/interpreter.h:
3:50 PM Changeset in webkit [8584] by cblu
  • 4 edits in trunk/WebCore

Fixed: <rdar://problem/3937352> Quote level not maintained when copied and pasted within a Mail message

Reviewed by harrison.

  • khtml/editing/markup.cpp: (khtml::isMailBlockquote): new (khtml::createMarkup): retain the Mail quote level by including all ancestor mail block quotes
  • khtml/rendering/render_block.cpp: (khtml::RenderBlock::positionForCoordinates): default to downstream for the affinity since the affinity is only upstream when the cursor is clicked to the right of a wrapped line
  • khtml/rendering/render_text.cpp: (RenderText::positionForCoordinates): ditto
3:22 PM Changeset in webkit [8583] by adele
  • 2 edits in trunk/WebCore

Reviewed by Darin.

fix for <rdar://problem/4004004> no need to add body element for xml documents

In the fix for <rdar://problem/3758785> we decided to add a body element when closing a document
to ensure that the onload handler would fire. This is unnecessary for xml documents,
so now we also check to see if we're dealing with an html document before adding the body element.

  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::close):
2:59 PM Changeset in webkit [8582] by adele
  • 3 edits in trunk

Reviewed by Darin.

  • layout-tests/apple-only/base/www.excite.com/index-expected.txt: updates tests because of custom tag change.
  • layout-tests/apple-only/base/www.msnbc.com/index-expected.txt:
  • layout-tests/apple-only/base/www.time.com/index-expected.txt:
  • layout-tests/apple-only/base/www.travelocity.com/index-expected.txt:
  • layout-tests/apple-only/base/www.zdnet.com/index-expected.txt:
  • layout-tests/fast/overflow/003-expected.txt:
  • layout-tests/fast/js/window-object-cross-frame-calls-expected.txt: updated test because of added Body (see rdar://problem/3758785)
2:47 PM Changeset in webkit [8581] by vicki
  • 3 edits in trunk

versioning for TOT, Safari 2.0 (186+)

2:22 PM Changeset in webkit [8580]
  • 1 copy in tags/Safari-186

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

2:22 PM Changeset in webkit [8579] by vicki
  • 6 edits in trunk

Safari-186 stamp

11:59 AM Changeset in webkit [8578] by vicki
  • 2 edits in trunk/WebKit

Reviewed by Darin.

  • fix deployment build on Panther
  • WebView.subproj/WebHTMLView.m: (-[WebHTMLView changeBaseWritingDirection:]): ifdef out NSWritingDirectionNatural (-[WebHTMLView toggleBaseWritingDirection:]): fix a spacing issue
9:05 AM Changeset in webkit [8577] by darin
  • 4 edits in trunk/WebCore

Reviewed by John.

  • fixed <rdar://problem/3915449> paths are relative to the old src URL after document.open, which is supposed to clear the document, including the URL
  • khtml/xml/dom_docimpl.h: Added a new openInternal function for use by KHTMLPart.
  • khtml/xml/dom_docimpl.cpp: (DocumentImpl::open): Changed to do everything we did before, but also clear the URL and set the base URL based on the enclosing document. This is the basic JavaScript/DOM operation of opening a document, which is supposed to clear the document, including the URL. In the long run we might want to do even more document "resetting and clearing" in here, but this URL clearing is what's needed now to fix the most important problem. (DocumentImpl::openInternal): Moved the old open code in here, except for the "parsing" check, which is unnecessary and inappropriate in the one place we call this.
  • khtml/khtml_part.cpp: (KHTMLPart::begin): Call openInternal instead of open.
Note: See TracTimeline for information about the timeline view.