Timeline



Jul 24, 2006:

10:05 PM Changeset in webkit [15618] by darin
  • 9 edits in trunk

JavaScriptCore:

Reviewed and tweaked a bit by Darin.

  • bindings/objc/objc_utility.mm: (KJS::Bindings::convertObjcValueToValue): Added case for converting NSNull to jsNull.

LayoutTests:

Reviewed and tweaked a bit by Darin.

  • added some new tests that use "echo" including one for JavaScript null
  • plugins/bindings-test-expected.txt: Added results.
  • plugins/bindings-test.html: Added tests.

WebCore:

Reviewed and tweaked a bunch by Darin.

Test: plugins/bindings-test.html

  • bindings/objc/WebScriptObject.mm: (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]): Added case that converts jsNull to NSNull.

WebKitTools:

Reviewed and tweaked a bit by Darin.

  • DumpRenderTree/ObjCPlugin.m: (+[ObjCPlugin isSelectorExcludedFromWebScript:]): Added "echo:". (+[ObjCPlugin webScriptNameForSelector:]): Use the name "echo" for "echo:" so it's nice to call from JavaScript. (-[ObjCPlugin echo:]): Just returns the same object -- can be used to test a round trip through Objective-C types.
9:39 PM Changeset in webkit [15617] by darin
  • 50 edits
    8 adds
    2 deletes in trunk

LayoutTests:

Reviewed by Adele and Justin.

  • fast/forms/textarea-type-spaces-expected.txt: Added.
  • fast/forms/textarea-type-spaces.html: Added.
  • fast/forms/textarea-paste-newline-expected.txt: Added.
  • fast/forms/textarea-paste-newline.html: Added.
  • updated tests affected by above changes, results are equivalent or better
  • editing/pasteboard/4641033-expected.checksum:
  • editing/pasteboard/4641033-expected.png:
  • editing/pasteboard/4641033-expected.txt:
  • editing/pasteboard/paste-table-003-expected.checksum:
  • editing/pasteboard/paste-table-003-expected.png:
  • editing/pasteboard/paste-table-003-expected.txt:
  • editing/pasteboard/paste-text-016-expected.txt:
  • editing/pasteboard/quirks-mode-br-1-expected.txt:
  • editing/pasteboard/quirks-mode-br-2-expected.txt:
  • fast/forms/textarea-scrolled-type-expected.checksum:
  • fast/forms/textarea-scrolled-type-expected.png:
  • fast/forms/textarea-scrolled-type-expected.txt:
  • changed a test to be a "dump as text" test
  • fast/forms/paste-into-textarea-expected.txt:
  • fast/forms/paste-into-textarea.html:
  • fast/forms/paste-into-textarea-expected.checksum: Removed.
  • fast/forms/paste-into-textarea-expected.png: Removed.
  • changed a test to be a "dump as text" test, improved test a bit and also checked in new results
  • fast/forms/textarea-scrolled-endline-caret-expected.txt:
  • fast/forms/textarea-scrolled-endline-caret.html:
  • fixed a test that was raising an exception every time it ran
  • fast/forms/attributed-strings-expected.txt:
  • fast/forms/attributed-strings.html:
  • corrected checksums on a bunch of tests (pngs were right, but checksums wrong, apparently)
  • editing/deleting/delete-to-select-table-expected.checksum:
  • editing/selection/3690719-expected.checksum:
  • editing/selection/clear-selection-expected.checksum:
  • editing/undo/undo-misspellings-expected.checksum:
  • added some missing pixel test results
  • editing/pasteboard/nested-blocks-with-text-area-expected.checksum: Added.
  • editing/pasteboard/nested-blocks-with-text-area-expected.png: Added.
  • editing/pasteboard/nested-blocks-with-text-field-expected.checksum: Added.
  • editing/pasteboard/nested-blocks-with-text-field-expected.png: Added.

WebCore:

Reviewed by Adele and Justin.

Test: fast/forms/textarea-type-spaces.html
Test: fast/forms/textarea-paste-newline.html

  • bindings/objc/DOMHTML.mm: (-[DOMHTMLDocument createDocumentFragmentWithText:]): Updated call to pass a range -- in this case it is the range of the entire document, so this will not handle the whitespace properly.
  • bridge/mac/WebCoreFrameBridge.h: Added range context parameter to the documentFragmentWithText: method, so we can handle whitespace properly.
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge nodesFromList:]): Changed from DeprecatedPtrList to Vector. (-[WebCoreFrameBridge markupStringFromNode:nodes:]): Ditto. (-[WebCoreFrameBridge markupStringFromRange:nodes:]): Ditto. (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Added range context parameter -- pass it on to createFragmentFromText. (-[WebCoreFrameBridge documentFragmentWithNodesAsParagraphs:]): Changed from DeprecatedPtrList to Vector. (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]): Pass the range of the current selection as context when creating the fragment.
  • dom/Position.cpp: (WebCore::Position::inRenderedText): Replace range check with a call to the new containsCaretOffset function -- helps make the caret work right when it is past the end of the last line in a textarea.
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Don't do anything if the style does not call for collapsing whitespace. (WebCore::CompositeEditCommand::rebalanceWhitespace): Call replaceWhitespaceAt to share code, including the new logic mentioned above.
  • editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply): Use a text node instead of a break element when inserting and the style is preserveNewline.
  • editing/JSEditor.cpp: (WebCore::execRemoveFormat): Pass the selection range to createFragmentFromText.
  • editing/RebalanceWhitespaceCommand.cpp: (WebCore::RebalanceWhitespaceCommand::doApply): Assert that we're in a style that collapses whitespace. It's the caller's responsibility not to call otherwise.
  • editing/ReplaceSelectionCommand.h: Removed unused destructor, type, isSingleTextNode, isTreeFragment, m_type, and added a context parameter to inertFragmentForTestRendering. Also changed the constructor to take a selection rather than a pointer to the root editable element, replaced removeEndBRIfNeeded with shouldRemoveEndBR and removed an unused parameter from shouldMergeEnd.
  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment): Removed code to set up m_type. Compute root editable element from passed-in selection. Used the start of the selection as a base node for style purposes for the test rendering. Removed the special case "single text node" alternative to createFragmentFromText in the plain text case, since createFragmentFromText now handles that correctly. (WebCore::ReplacementFragment::insertFragmentForTestRendering): Copy the whitespace property from the source location when creating a temporary element for test rendering. (WebCore::ReplacementFragment::shouldMergeEnd): Removed unneeded boolean parameter fragmentHadInterchangeNewlineAtEnd, which is always false. (WebCore::ReplaceSelectionCommand::doApply): Update for ReplacementFragment changes, change code to not remove end BR when it can be re-used instead, don't call the paragraph separator insertion when the position is at the start of a paragraph already, removed redundant computation of identical "next" value, removed unneeded boolean parameter to shouldMergeEnd, add case for merging when all we need to do is to delete a newline character, removed unneeded code to set insertionPos after all code that uses it, and use spaces instead of non-breaking spaces when doing smart paste if the context is one where we do not collapse white space. (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): Renamed and changed to return a boolean instead of doing the removal.
  • editing/markup.h: Use Vector instead of DeprecatedPtrList. Change the createFragmentFromText function to take a range for context instead of a document.
  • editing/markup.cpp: (WebCore::markup): Use Vector instead of DeprecatedPtrList. (WebCore::createMarkup): Ditto. (WebCore::createParagraphContentsFromString): Remove unneeded document parameter and changed a couple places to use isEmpty instead of comparing with "". (WebCore::createFragmentFromText): Given the new context parameter, if the context is one that preserves newlines, then use "\n" instead of <br> elements. (WebCore::createFragmentFromNodes): Use Vector instead of DeprecatedPtrList.
  • html/HTMLElement.cpp: (WebCore::HTMLElement::setInnerText): Do not use <br> elements if the context of this node is one where we preserve newlines.
  • rendering/InlineTextBox.h:
  • rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::containsCaretOffset): Added. Implements the appropriate rule for determining if a caret position is in this line or not. Returns true for both one line and the next in cases where affinity must be considered to determine which line the caret is on.
  • rendering/RenderText.h: Make atLineWrap no longer be a member function.
  • rendering/RenderText.cpp: (WebCore::atLineWrap): Remove special rule about preserveNewline and isLineBreak, which will no longer apply due to the new containsCaretOffset function logic. (WebCore::RenderText::caretRect): Use containsCaretOffset. (WebCore::RenderText::inlineBox): Ditto.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::updateFromElement): Make a placeholder <br> element after calling setInnerText so that the last newline in the string has the effect we expect outside the HTML world (an additional line). (WebCore::RenderTextControl::setSelectionRange): Set granularity of the selection too. The layout tests caught this problem, which needs a better solution long term. (WebCore::RenderTextControl::text): Call textContent with the parameter false so it will not include newlines for <br> elements. Now the only <br> element that will ever be in the shadow DOM tree is the one to prevent collapsing, and that one should not show up in the text value.
  • rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Took a rule that specifically called out the pre whitespace mode and made it work for all the modes that preserve newlines. This makes sure we get a last line box for text after the last "\n" even in cases where there is no <br> afterward.
  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::fixupWhitespace):
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply): Added assertions to make sure we don't do anything when we're not collapsing whitespace.
  • html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::setDefaultValue): Changed to use Vector instead of DeprecatedPtrList.
  • editing/HTMLInterchange.cpp: Removed obsolete comment.
  • loader/Cache.h: Removed a stray include.

WebKit:

Reviewed by Adele and Justin.

  • update for change to require context when creating fragments from text (needed to handle whitespace properly)
  • WebView/WebHTMLView.m: (-[WebHTMLView _documentFragmentFromPasteboard:inContext:allowPlainText:chosePlainText:]): Added context parameter, pass through to bridge. (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Pass selection range as context when calling above method. (-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Pass drag caret as context when calling above method.
8:40 PM Changeset in webkit [15616] by adele
  • 4 edits
    4 adds in trunk

LayoutTests:

Reviewed by Justin.

  • Test for <rdar://problem/4632132> Changing style of content with mixed editability fails
  • editing/style/apple-style-editable-mix-expected.checksum: Added.
  • editing/style/apple-style-editable-mix-expected.png: Added.
  • editing/style/apple-style-editable-mix-expected.txt: Added.
  • editing/style/apple-style-editable-mix.html: Added.

WebCore:

Reviewed by Justin.

  • Fix for <rdar://problem/4632132> Changing style of content with mixed editability fails

Test: * editing/style/apple-style-editable-mix.html

  • dom/Node.cpp: (WebCore::Node::isContentRichlyEditable): Doesn't need to check the editable root. It now just checks the user modify property of its own renderer, since that is inherited.
  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyInlineStyle): If the end position is in a table, Adjust the end node to the last descendant of the table, so we don't skip over any runs.
8:37 PM Changeset in webkit [15615] by mjs
  • 3 edits in trunk/WebKit

Reviewed by Geoff.


  • WebView/WebLoader.h:
  • WebView/WebMainResourceLoader.m: (-[WebMainResourceLoader receivedError:]): Copy in some code from the base class to do it in the proper order, surrounding the call to [ds _receivedMainResourceError:error complete:YES].
6:11 PM Changeset in webkit [15614] by darin
  • 3 edits
    2 adds in trunk/WebCore

Reviewed by Hyatt.

  • implement String::createCFString
  • WebCore.xcodeproj/project.pbxproj: Added StringImplMac.mm and StringMac.mm.
  • bindings/objc/DOMInternal.mm: Moved NSString conversion functions out of here.
  • platform/mac/StringImplMac.mm: Added. Moved NSString conversion members here and added the CFStringRef ones.
  • platform/mac/StringMac.mm: Added. Ditto.
5:22 PM Changeset in webkit [15613] by thatcher
  • 1 copy in tags/Safari-521.21

New tag.

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

Two bug fixes.

(1) Make sure to mark positioned objects that depend on line position to
mark themselves as needing layout when their line box placeholder gets
repositioned.

  • rendering/RenderBox.cpp: (WebCore::RenderBox::position):


(2) Improve highlighting to factor the inflation into overflow so that
invalidation and repainting will work properly.

  • rendering/RootInlineBox.cpp: (WebCore::RootInlineBox::addHighlightOverflow):
  • rendering/RootInlineBox.h:
  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
3:50 PM Changeset in webkit [15611] by thatcher
  • 2 edits in branches/Safari-521/WebKit

Correcting WebKit versioning.

3:50 PM Changeset in webkit [15610] by andersca
  • 2 edits in trunk/WebKit

2006-07-24 Anders Carlsson <acarlsson@apple.com>

Reviewed by Tim O.

  • Misc/WebIconDatabase.m: (-[WebIconDatabase removeAllIcons]): Make an array of the keys and iterate through it to avoid modifying the dictionary while enumerating it.
3:47 PM Changeset in webkit [15609] by thatcher
  • 4 edits in branches/Safari-521

Versioning

1:55 PM Changeset in webkit [15608] by andersca
  • 1 edit in trunk/WebCore/manual-tests/onsearch-enter.html

Add a newline

1:48 PM Changeset in webkit [15607] by andersca
  • 2 edits
    1 add in trunk/WebCore

2006-07-24 Anders Carlsson <acarlsson@apple.com>

Reviewed by Adele.

<rdar://problem/4641824> REGRESSION: Wikipedia widget fails to complete a search after pressing return key


  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Don't eat enter events for search fields that have no enclosing form; they need to be passed to AppKit so that onsearch can be invoked.


  • manual-tests/onsearch-enter.html: Added.
1:25 PM Changeset in webkit [15606] by spadma
  • 2 edits in S60/trunk/WebCore
  • bridge/WebCoreBridge.cpp:

(CWebCoreBridge::GetNextRenderTextForSmartLinksL): Fix ref counting of iSmartLinkNode

http://bugzilla.opendarwin.org/show_bug.cgi?id=10090

12:12 PM Changeset in webkit [15605] by thatcher
  • 3 edits in trunk/WebKit

Reviewed by John and Darin.

<rdar://problem/4634290> Cannot selectively install a custom
scroller that differs from the default Aqua frame size.

Adds two new private methods to WebFrameView that allows
an application to set a custom scroll view class. This is needed
if the application wants to install a custom scroller that is wider
than the typical scroller, because NSScrollView does the content
rect calculations in a class method (ignoring custom scrollers.)
The _setScrollViewClass method requires the class to be a subclass
of WebDynamicScrollBarView, or nil can be passed to reset to the default class.
A new scroll view of the specified class will then replace the previous
one without the need to reload content of the frame.

  • WebView/WebFrameView.m: (-[WebFrameView _customScrollViewClass]): (-[WebFrameView _setCustomScrollViewClass:]):
  • WebView/WebFrameViewPrivate.h:
11:13 AM Changeset in webkit [15604] by brmorris
  • 30 edits
    4 adds in S60/trunk

2006-07-24 brmorris <bradley.morrison@nokia.com>

Reviewed by Sachin.


Implement Smart Text recognition / context options.


http://bugzilla.opendarwin.org/show_bug.cgi?id=10089

10:26 AM Changeset in webkit [15603] by ap
  • 3 edits
    4 adds in trunk

Fix by Dave MacLachlan, reviewed by Darin and Alexey.


Fix for: <http://bugzilla.opendarwin.org/show_bug.cgi?id=8425>
and <http://bugzilla.opendarwin.org/show_bug.cgi?id=6947>

Test: svg/custom/non-opaque-filters.svg

  • kcanvas/device/quartz/KCanvasFilterQuartz.mm: (WebCore::KCanvasFilterQuartz::prepareFilter): We create an autorelease pool so we can control the deallocation of the CIContext that we're creating. The CIContext retains the CGContext that you pass it internally so when the CIContext is released, the CGContext is released as well. This is all fine and dandy unless you wrap the creation of the CIFilter with a pair of CGBegin/EndTransparencyLayer calls which swap the context out from underneath you. So if you start with context A, CGBeginTransparencyLayer swaps it out and gives you B. You create a CIFilter with it and add a reference to B. CGEndTransparencyLayer swaps out B and gives you back A. Autorelease pool comes and cleans up the Filter, and calls release on A, but A never got the refcount in the first place. B did. BOOM! So we create a pool, then do a retain, then release the pool so that we don't have to worry about the pool releasing it at a later time. See <rdar://problem/4647735> for reduction of CGEndTransparencyLayer case
9:55 AM Changeset in webkit [15602] by ap
  • 4 edits
    4 adds in trunk

Fix by Mitz Pettel, reviewed by Hyatt.

Test: fast/repaint/line-overflow.html

  • rendering/RenderBlock.h:
  • rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Added repaintTop and repaintBottom variables to track the vertical edges of the area that changed, accounting for lines that were deleted, inserted or moved. Removed unnecessary updating of m_overflowHeight. (WebCore::RenderBlock::determineStartPosition): Removed unnecessary updating of m_overflowHeight. (WebCore::RenderBlock::determineEndPosition): (WebCore::RenderBlock::matchedEndLine): Added repaintTop and repaintBottom arguments, which this method updates to account for deleted lines. (WebCore::RenderBlock::checkLinesForOverflow): Removed outdated FIXME.
9:36 AM Changeset in webkit [15601] by ap
  • 2 edits in trunk

Land the ChangeLogs, too.

9:21 AM Changeset in webkit [15600] by ap
  • 1 edit
    4 adds in trunk

Fix by Mitz Pettel, reviewed by Darin.

Test: fast/forms/select-visual-hebrew.html

  • css/html4.css: Set "-webkit-rtl-ordering: logical" on select elements.
9:03 AM Changeset in webkit [15599] by ap
  • 2 edits in trunk/WebKitTools

Reviewed by Darin.

Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10060
Improve iExploder results parsing

  • Scripts/run-iexploder-tests: Fix Apach logs parsing to produce a correct results in random mode, too.
8:58 AM Changeset in webkit [15598] by ap
  • 4 edits in trunk

Reviewed by Darin.

Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10009
REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames)

No test case possible.

WebCore:

  • page/Frame.cpp: (WebCore::Frame::begin): Give PDF plugins a chance to handle frame content, before ImageDocument claims it.

WebKit:

  • WebView/WebView.m: (+[WebView _viewClass:andRepresentationClass:forMIMEType:]): If we've got a type supported by WebPDFView, make sure to initialize the plugin database, in case a plugin wants to handle it.
8:44 AM Changeset in webkit [15597] by thatcher
  • 2 edits in trunk/WebCore

Reviewed by Darin.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates): Added back change from the fix for bug 9312: For coordinates outside a replaced object, return the position just before (after) the element if the coordinates are above or to the left (below or to the right).
8:41 AM Changeset in webkit [15596] by thatcher
  • 2 edits in branches/Safari-521/WebCore

Reviewed by Darin.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates): Added back change from the fix for bug 9312: For coordinates outside a replaced object, return the position just before (after) the element if the coordinates are above or to the left (below or to the right).
6:13 AM Changeset in webkit [15595] by rwlbuis
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=4258
Date().toString() only includes GMT offset, not timezone string

Use the info in tm_zone to append timezone abbreviation
to Date().toString().

  • kjs/date_object.cpp: (KJS::formatTime):
4:45 AM Changeset in webkit [15594] by rwlbuis
  • 2 edits
    3 adds in trunk

Reviewed by Darin.

http://bugzilla.opendarwin.org/show_bug.cgi?id=5257
setYear() does not match FireFox/IE behavior

Make sure the right values end up in tm_year.

  • kjs/date_object.cpp: (KJS::formatTime):

Jul 23, 2006:

11:06 PM Changeset in webkit [15593] by thatcher
  • 16 edits in trunk

JavaScriptCore:

Reviewed by Maciej.

Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
http://bugzilla.opendarwin.org/show_bug.cgi?id=9686

JavaScriptCore portion of the fix.

  • JavaScriptCore.exp: Update symbol for change in argument type.
  • kjs/debugger.cpp: (Debugger::detach): Clear map of recent exceptions. (Debugger::hasHandledException): Track the most recent exception thrown by an interpreter. (Debugger::exception): Change exception argument to a JSValue.
  • kjs/debugger.h:
  • kjs/nodes.cpp: (Node::debugExceptionIfNeeded): Notify the debugger of an exception if it hasn't seen it before. (ThrowNode::execute): Notify the debugger that an exception is being thrown.
  • kjs/nodes.h:

2006-07-23 Geoffrey Garen <ggaren@apple.com>

Patch by Eric Albert, reviewed by Darin and me.


  • Fixed <rdar://problem/4645931> JavaScriptCore stack-scanning code crashes (Collector::markStackObjectsConservatively)


  • bindings/jni/jni_jsobject.cpp: On 64bit systems, jint is a long, not an int. (JavaJSObject::getSlot): (JavaJSObject::setSlot):
  • kjs/collector.cpp: (KJS::Collector::markCurrentThreadConservatively): Use a pointer instead of an int as 'dummy,' because on LP64 systems, an int is not pointer-aligned, and we want to scan the stack for pointers.
  • JavaScriptCore.xcodeproj/project.pbxproj: After a tense cease-fire, the XCode war has started up again!

WebCore:

Reviewed by maciej.

Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
http://bugzilla.opendarwin.org/show_bug.cgi?id=9686

WebCore portion of the fix.

  • bridge/mac/WebCoreScriptDebugger.h: (-[WebScriptDebugger exceptionRaised:sourceId:line::]): Add delegate method.
  • bridge/mac/WebCoreScriptDebugger.mm: (WebCoreScriptDebuggerImp::exception): Call delegate method when an exception is raised.

WebKit:

Reviewed by Maciej.

Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
http://bugzilla.opendarwin.org/show_bug.cgi?id=9686

WebKit portion of the fix.

  • DefaultDelegates/WebDefaultScriptDebugDelegate.m: (-[WebDefaultScriptDebugDelegate webView:exceptionWasRaised:sourceId:line:forWebFrame:]):
  • DefaultDelegates/WebScriptDebugServer.h:
  • DefaultDelegates/WebScriptDebugServer.m: (-[WebScriptDebugServer webView:exceptionWasRaised:sourceId:line:forWebFrame:]): Notify listeners that an exception has been raised.
  • WebView/WebScriptDebugDelegate.h:
  • WebView/WebScriptDebugDelegate.m: (-[WebScriptCallFrame exceptionRaised:sourceId:line:]): Dispatch through to delegate and WebScriptDebugServer.
8:21 PM Changeset in webkit [15592] by thatcher
  • 2 edits in branches/Safari-521/WebCore

Reviewed by Adele.
Actually Adele figured out how to fix the layout test failures. Landing this patch for her. Layout test failures exposed but not caused by r15584 (my patch earlier today).

  • editing/visible_units.cpp: (WebCore::previousLinePosition): When setting selection endpoints, don't traverse down into nodes where editing would ignore its contents. Use the parent node instead. (WebCore::nextLinePosition): same as above
7:53 PM Changeset in webkit [15591] by aliceli1
  • 1 edit in trunk/WebCore/ChangeLog

Reviewed by Adele.
Actually Adele figured out how to fix the layout test failures. Landing this patch for her. Layout test failures exposed but not caused by r15584 (my patch earlier today).

  • editing/visible_units.cpp: (WebCore::previousLinePosition): When setting selection endpoints, don't traverse down into nodes where editing would ignore its contents. Use the parent node instead. (WebCore::nextLinePosition): same as above
7:51 PM Changeset in webkit [15590] by aliceli1
  • 2 edits in trunk/WebCore

Reviewed by Adele.
Actually Adele figured out how to fix the layout test failures. Landing this patch for her.

  • editing/visible_units.cpp: (WebCore::previousLinePosition): When setting selection endpoints, don't traverse down into nodes where editing would ignore its contents. Use the parent node instead. (WebCore::nextLinePosition): same as above
7:43 PM Changeset in webkit [15589] by thatcher
  • 13 edits
    4 deletes in branches/Safari-521

Rolling out CCC denied changes. r15553, r15536, r15529, r15455 and r15435.

6:41 PM Changeset in webkit [15588] by thatcher
  • 5 copies in branches/Safari-521

New branch

5:16 PM Changeset in webkit [15587] by harrison
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by timo.

<rdar://problem/4646759> Mail crash editing To Do - WebCore::InsertTextCommand::prepareForTextInsertion

  • editing/deleting/delete-mixed-editable-content-001-expected.checksum: Added.
  • editing/deleting/delete-mixed-editable-content-001-expected.png: Added.
  • editing/deleting/delete-mixed-editable-content-001-expected.txt: Added.
  • editing/deleting/delete-mixed-editable-content-001.html: Added.

WebCore:

Reviewed by timo.

<rdar://problem/4646759> Mail crash editing To Do - WebCore::InsertTextCommand::prepareForTextInsertion


  • Test: editing/deleting/delete-mixed-editable-content-001.html
  • editing/visible_units.cpp: (WebCore::startOfParagraph): Respect editable boundary the same way endOfParagraph does.
4:40 PM Changeset in webkit [15586] by adele
  • 2 edits in trunk/WebKit

Reviewed by Darin.

  • Fix for <rdar://problem/4646276> CrashTracer: 7 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::paint + 155
  • WebView/WebHTMLView.m: (-[WebHTMLView _web_layoutIfNeededRecursive:testDirtyRect:]): needsDisplay was returning NO even though the view has a dirty rect (see <rdar://problem/4647062>). Since we know about the dirty rect, we don't actually need to check needsDisplay.
4:36 PM Changeset in webkit [15585] by bdakin
  • 7 edits in trunk/WebCore

Reviewed by Maciej. (Patch by me, Maciej, and Harrison.)

Fix for <rdar://problem/4529398> WebCore crashes when pasting rich
text - WebCore::InlineBox::root()

The initial rendering crash was due to a render object having a
stale reference to an inline box that had already been deleted and
then recreated in the exact same location in memory. (Crazy, I
know.) The situation seemed pretty specific to list markers
according to Hyatt according to Maciej, so that is what I patched
specifically. Fixing this crash unearthed a separate editing crash
where we were trying to insert a block into itself. I worked on
that with Maciej and Harrison, and Harrison came up with a fix.

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): This is the fix for the editing crash. If paragraphStart is an atomic node, insert the new block into the parent instead.
  • rendering/InlineBox.cpp: (WebCore::InlineBox::isChildOfParent): This function is for posterity. It will help keep the linebox tree in check.
  • rendering/InlineBox.h:
  • rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::addToLine): Added assert. (WebCore::InlineFlowBox::deleteLine): Added assert.
  • rendering/ListMarkerBox.cpp: (WebCore::ListMarkerBox::destroy): If this has a parent, call removeChild on this. (WebCore::ListMarkerBox::operator delete):
  • rendering/ListMarkerBox.h:
4:17 PM Changeset in webkit [15584] by aliceli1
  • 4 edits in trunk/WebCore

Reviewed by Darin.

fixed <rdar://problem/4617841> REGRESSION (NativeTextField): You can move keyboard focus to a field without getting insertion point

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates): removed some unnecessary vertical position checks and added a fudge factor to be more forgiving for clicks near lines.
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::nodeAtPoint): added implementation
  • rendering/RenderTextControl.h: added function protocol
2:59 PM Changeset in webkit [15583] by ggaren
  • 4 edits in trunk/JavaScriptCore

2006-07-23 Geoffrey Garen <ggaren@apple.com>

Patch by Eric Albert, reviewed by Darin and me.


  • Fixed <rdar://problem/4645931> JavaScriptCore stack-scanning code crashes (Collector::markStackObjectsConservatively)


  • bindings/jni/jni_jsobject.cpp: On 64bit systems, jint is a long, not an int. (JavaJSObject::getSlot): (JavaJSObject::setSlot):
  • kjs/collector.cpp: (KJS::Collector::markCurrentThreadConservatively): Use a pointer instead of an int as 'dummy,' because on LP64 systems, an int is not pointer-aligned, and we want to scan the stack for pointers.
  • JavaScriptCore.xcodeproj/project.pbxproj: After a tense cease-fire, the XCode war has started up again!
10:28 AM Changeset in webkit [15582] by adele
  • 2 edits in trunk/WebCore

Reviewed by Darin.

Updating fix from last checkin.

  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox): Only tell the view about this flexbox if there isn't another flexbox already cached.
1:52 AM Changeset in webkit [15581] by adele
  • 6 edits
    4 adds in trunk

LayoutTests:

Reviewed by Maciej.

Test for: <rdar://problem/4644614> REGRESSION: Typing, pasting or dragging in new text areas causes unnecessary scrolling

  • fast/forms/textarea-scrolled-type-expected.checksum: Added.
  • fast/forms/textarea-scrolled-type-expected.png: Added.
  • fast/forms/textarea-scrolled-type-expected.txt: Added.
  • fast/forms/textarea-scrolled-type.html: Added.

WebCore:

Reviewed by Maciej.

  • Fix for <rdar://problem/4644614> REGRESSION: Typing, pasting or dragging in new text areas causes unnecessary scrolling
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): Don't updateScrollInfoAfterLayout if an ancestor flexible box is just on its first layout.
  • rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutBlock): ditto. (WebCore::RenderFlexibleBox::layoutVerticalBox): Let the view know if this flex box is doing its first pass at layout.
  • rendering/RenderView.cpp: (WebCore::RenderView::RenderView): Caches a flexible box that's doing its first layout.
  • rendering/RenderView.h: (WebCore::RenderView::setFlexBoxInFirstLayout): (WebCore::RenderView::flexBoxInFirstLayout):

Jul 22, 2006:

6:37 PM Changeset in webkit [15580] by thatcher
  • 2 edits in trunk/WebKit

Rolling out r15572.


Bug 10062: REGRESSION: dom/xhtml/level2/html/HTMLIFrameElement11.xhtml asserts/crashes
http://bugzilla.opendarwin.org/show_bug.cgi?id=10062

2006-07-21 Timothy Hatcher <timothy@apple.com>

Reviewed by Maciej.

<rdar://problem/4609195> Help Viewer loads empty window
(not getting didFailLoadingWithError: callback)

Call super's didFailWithError before _receivedMainResourceError
because _receivedMainResourceError will cause the datasource's
frame to be set to nil before the didFailLoadingWithError delegate
callback is sent. (This order is needed now that WebDataSource does
not hold on to the WebView; it uses the WebFrame to get to the WebView.
If the WebFrame is nil we can't get to the WebView's resource load delegate.)

  • WebView/WebMainResourceLoader.m: (-[WebMainResourceLoader receivedError:]):
4:06 PM Changeset in webkit [15579] by thatcher
  • 2 edits in tags/Safari-521.20/WebKit

Merging in '<rdar://problem/4646318> REGRESSION: Ctrl-clicking on a selection containing a word doesn't display a complete contextual menu' and build fixes.

3:56 PM Changeset in webkit [15578] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Adele.

<rdar://problem/4646318> REGRESSION: Ctrl-clicking on a selection containing a word doesn't display a complete contextual menu


Show the editing context menu if the WebView is editible.
The original change only checked if the DOM element was editable,
and isContentEditable returns NO if entire WebView is editable.

  • DefaultDelegates/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
3:45 PM Changeset in webkit [15577] by thatcher
  • 4 edits in tags/Safari-521.20/WebCore/platform

Rolling out r15529 because of <rdar://problem/4646196> REGRESSION: Artifacts are painted around Business, Calendar, Address Book, Translation, and Stocks

3:24 PM Changeset in webkit [15576] by thatcher
  • 1 edit in tags/Safari-521.20/WebCore/platform/cg/GraphicsContextCG.cpp

Rolling back in <rdar://problem/4616595> REGRESSION: Problems with world clock widget clock hand motion on 9A211 + 4604574 now that is was CCC approved.

10:45 AM Changeset in webkit [15575] by thatcher
  • 9 edits in tags/Safari-521.20

Rolling out changes that are not CCC approved. r15435, r15455, r15470 and r15553

10:41 AM Changeset in webkit [15574] by thatcher
  • 1 edit in trunk/WebKit/WebInspector/WebInspector.m

Build fix.

12:39 AM Changeset in webkit [15573] by ap
  • 3 edits
    3 adds in trunk

Reviewed by Darin.

Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10038
REGRESSION: Length of navigator.mimeTypes collection returns number of installed plugins, not number
of registered mime types

Test: fast/js/navigator-mimeTypes-length.html

  • bindings/js/kjs_navigator.cpp: (KJS::MimeTypes::getValueProperty): Return the length of the mime types vector, not the plugins one. (KJS::MimeTypes::getOwnPropertySlot): Fixed another typo, which prevented MimeTypes::getValueProperty() from even being called.

Jul 21, 2006:

11:34 PM Changeset in webkit [15572] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by Maciej.

<rdar://problem/4609195> Help Viewer loads empty window
(not getting didFailLoadingWithError: callback)

Call super's didFailWithError before _receivedMainResourceError
because _receivedMainResourceError will cause the datasource's
frame to be set to nil before the didFailLoadingWithError delegate
callback is sent. (This order is needed now that WebDataSource does
not hold on to the WebView; it uses the WebFrame to get to the WebView.
If the WebFrame is nil we can't get to the WebView's resource load delegate.)

  • WebView/WebMainResourceLoader.m: (-[WebMainResourceLoader receivedError:]):
10:31 PM Changeset in webkit [15571] by mjs
  • 12 edits
    1 add in trunk/WebCore

Reviewed by Adele and Tim Omernick.

<rdar://problem/4641004> 9A224: Safari crashes in WebCore::RenderMenuList::showPopup when changing a input select field to input text field

Couldn't figure out how to make layout test, here's a manual test:

  • manual-tests/remove-select-onchange.html: Added.


  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::showPopup): Don't add the RenderPopupMenu to the render tree so it doesn't get destroyed if we do.


The remaining changes are to let the RenderPopupMenu know its menu list w/o having
to be in the render tree:


  • rendering/RenderPopupMenu.cpp: (WebCore::RenderPopupMenu::RenderPopupMenu):
  • rendering/RenderPopupMenu.h: (WebCore::RenderPopupMenu::menuList):
  • rendering/RenderPopupMenuMac.h:
  • rendering/RenderPopupMenuMac.mm: (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
  • rendering/RenderPopupMenuWin.h: (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
  • rendering/RenderTheme.h:
  • rendering/RenderThemeMac.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::createPopupMenu):
  • rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::createPopupMenu):
  • rendering/RenderThemeWin.h:
8:05 PM Changeset in webkit [15570] by darin
  • 1 edit in trunk/WebCore/ChangeLog

Removed a stray conflict marker.

7:24 PM Changeset in webkit [15569] by adele
  • 3 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

Test for: <rdar://problem/4643238> REGRESSION: Can't set insertion point at the end of a line of text

  • fast/forms/textarea-scrolled-endline-caret-expected.txt: Added.
  • fast/forms/textarea-scrolled-endline-caret.html: Added.

WebCore:

Reviewed by Darin.

Fix for: <rdar://problem/4643238> REGRESSION: Can't set insertion point at the end of a line of text

Test: fast/forms/textarea-scrolled-endline-caret.html

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates): When looking for the closest line box, take the scroll offset into account.
7:17 PM Changeset in webkit [15568] by ggaren
  • 1 edit
    2 adds in trunk/LayoutTests

RS by Adele.


Test for whether focusing and/or blurring a frame before its content has loaded causes
a crash. <rdar://problem/4632505> REGRESSION: Crash at
WebCore::Widget::getView() const + 6


  • http/tests/incremental/frame-focus-before-load-expected.txt: Added.
  • http/tests/incremental/frame-focus-before-load.html: Added.
7:14 PM Changeset in webkit [15567] by ggaren
  • 1 edit in trunk/WebCore/bridge/mac/FrameMac.mm

minor comment fixup

6:48 PM Changeset in webkit [15566] by tomernic
  • 2 edits in trunk/WebCore

Reviewed by Geoff & Maciej.

<rdar://problem/4632505> REGRESSION: Crash at WebCore::Widget::getView() const + 6

Geoff is working on a layout test for this.

  • bridge/mac/FrameMac.mm: (WebCore::FrameMac::focusWindow): (WebCore::FrameMac::unfocusWindow): Check for a NULL view. The view can be NULL if the frame has not yet loaded any data. This fixes the crash, but the behavior is still wrong -- we should focus the frame once it gets a view. I've filed <rdar://problem/4645685> to track that. It's not as urgent as this crasher.
5:45 PM Changeset in webkit [15565] by mjs
  • 4 edits
    2 adds in trunk

LayoutTests:

Reviewed by Darin.

<rdar://problem/4523976> REGRESSION (NativeTextField): Crash occurs when choosing "Undo Typing" after typing and setting the value


  • fast/forms/text-field-setvalue-crash-expected.txt: Added.
  • fast/forms/text-field-setvalue-crash.html: Added.

WebCore:

Reviewed by Darin.

<rdar://problem/4523976> REGRESSION (NativeTextField): Crash occurs when choosing "Undo Typing" after typing and setting the value

  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::updateFromElement): Clear the undo chain when the text control contents have been set programmatically.
  • bridge/mac/FrameMac.mm: (WebCore::FrameMac::clearUndoRedoOperations): Before clearing undo stack, close all open undo groups and then open an equal number, since otherwise NSUndoManager ends up in an inconsistent state leading to uncaught ObjC exceptions.
4:47 PM Changeset in webkit [15564] by bdakin
  • 2 edits in trunk/WebCore

Reviewed by Darin.

Just moving this assertion down a couple of lines. It was hitting
every time you try to print a page because we put it too early in
the function.

  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]):
4:38 PM Changeset in webkit [15563] by justing
  • 10 edits
    4 adds in trunk

LayoutTests:

Reviewed by levi


<rdar://problem/4548238>
REGRESSION: Can't remove the first OL/UL list item in a Mail's compose window

  • editing/deleting/delete-first-list-item-expected.checksum: Added.
  • editing/deleting/delete-first-list-item-expected.png: Added.
  • editing/deleting/delete-first-list-item-expected.txt: Added.
  • editing/deleting/delete-first-list-item.html: Added.

WebCore:

Reviewed by levi


<rdar://problem/4548238>
REGRESSION: Can't remove the first OL/UL list item in a Mail's compose window

  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Moved from InsertParagraphSeparator. Does its own typing style restoration.
  • editing/CompositeEditCommand.h:
  • editing/InsertParagraphSeparatorCommand.cpp: (WebCore::InsertParagraphSeparatorCommand::doApply): Call breakOutOfEmptyListItem.
  • editing/TypingCommand.cpp: (WebCore::TypingCommand::deleteKeyPressed): Call breakOutOfEmptyListItem if the endingSelection is at the start of an editable region.
  • editing/htmlediting.cpp: (WebCore::embeddedSublist): Moved from InsertParagraphSeparator. (WebCore::appendedSublist): Ditto. (WebCore::enclosingEmptyListItem): Ditto.
  • editing/htmlediting.h:
4:10 PM Changeset in webkit [15562] by thatcher
  • 10 copies in tags/Safari-521.20

New tag.

3:55 PM Changeset in webkit [15561] by thatcher
  • 9 edits in /

Versioning

2:36 PM Changeset in webkit [15560] by thatcher
  • 2 edits in trunk/WebKit

Reviewed by John.

<rdar://problem/4607572> REGRESSION (521.10.1 - 521.13): most context menu items missing when a form field is focused (common on google.com) (9680)

Do not use _isEditable call since that only checks if the current
selection or frame is editible. We now check if the currently clicked element
is a content editible area, a textarea, an isindex or an input element that
return YES to _isTextField.

  • DefaultDelegates/WebDefaultContextMenuDelegate.m: (-[WebDefaultUIDelegate webView:contextMenuItemsForElement:defaultMenuItems:]):
1:16 PM Changeset in webkit [15559] by tomernic
  • 2 edits in trunk/WebCore

Reviewed by Beth Dakin & John Sullivan.

<rdar://problem/4633717> 9A218: Reproducible crash in -[NSScroller mouseDown:]

Beth is in the middle of making a layout test for this; she will land it soon.

  • platform/mac/ScrollBarMac.mm: (ScrollBar::~ScrollBar): Call Widget::removeFromSuperview() rather than -removeFromSuperview directly on the scroll bar view. Widget::removeFromSuperview() obeys the "mustStayInWindow" flag, which is set while tracking the mouse in view-based widgets to prevent their destruction while the tracking is in progress. I searched around WebCore and this is the only Widget subclass that directly removes its view rather than using removeFromSuperview().
1:01 PM Changeset in webkit [15558] by adele
  • 9 edits
    4 adds in trunk

LayoutTests:

Reviewed by Darin.

  • editing/selection/select-all-iframe-expected.txt:
  • editing/selection/select-from-textfield-outwards-expected.checksum: Added.
  • editing/selection/select-from-textfield-outwards-expected.png: Added.
  • editing/selection/select-from-textfield-outwards-expected.txt: Added.
  • editing/selection/select-from-textfield-outwards.html: Added.
  • fast/events/drag-outside-window-expected.txt:

WebCore:

Reviewed by Darin.

Test: editing/selection/select-from-textfield-outwards.html

  • editing/Selection.cpp: (WebCore::Selection::adjustForEditableContent): Added code to handle the case where the selection starts (resp. ends) in the last (resp. first) visual position inside an editable root.
  • editing/htmlediting.cpp: (WebCore::comparePositions): Fixed the case of comparing a position inside a shadow tree with a position in the shadow ancestor.
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates): For coordinates outside a replaced object, return the position just before (after) the element if the coordinates are above or to the left (below or to the right).
  • rendering/RenderObject.cpp: (WebCore::RenderObject::caretMaxOffset): Changed to return 1 for replaced objects.
  • rendering/RenderText.cpp: (WebCore::RenderText::positionForCoordinates): Changed to return the last position in the lowest text box if the y coordinate is below all text boxes.
11:50 AM Changeset in webkit [15557] by ggaren
  • 7 edits
    3 adds in trunk

JavaScriptCore:

Reviewed by Darin.

  • Added support for strings that masquerade as undefined. Currently used by WebCore to implement undetectable style.filter.


The name is a little long, but it's only used in one line of code, so I
thought clarity should win over brevity.

  • JavaScriptCore.exp:
  • JavaScriptCore.xcodeproj/project.pbxproj:
  • kjs/object.h:
  • kjs/string_object.h: (KJS::StringInstanceThatMasqueradesAsUndefined::StringInstanceThatMasqueradesAsUndefined): (KJS::StringInstanceThatMasqueradesAsUndefined::masqueradeAsUndefined): (KJS::StringInstanceThatMasqueradesAsUndefined::toBoolean):

LayoutTests:

Test for undetectable style.filter property.

  • fast/dom/undetectable-style-filter-expected.txt: Added.
  • fast/dom/undetectable-style-filter.html: Added.

WebCore:

Reviewed by Darin.


  • Fixed <rdar://problem/4507265> REGRESSION: overlays don't work on HousingMaps.com (Google Maps-based site)


  • Made style.filter undetectable, like document.all.


Unfortunately, the SVG spec-makers invented a CSS attribute named 'filter',
which conflicts with IE's custom CSS attribute by the same name. Web programs
like the Google maps API test for style.filter, and assume it's the IE
style.filter if they find it, so we need to make style.filter undetectable
to avoid breaking them.


An alternative solution would be to hotwire a delorean, go back in time,
and beg the web standards makers to make standards that work on the web.

  • bindings/js/kjs_css.cpp: (KJS::DOMCSSStyleDeclaration::cssPropertyGetter):
11:39 AM Changeset in webkit [15556] by justing
  • 3 edits
    4 adds in trunk

LayoutTests:

Reviewed by john


<rdar://problem/4641033>
REGRESSION: Pasting from web pages into Mail (or Blot) often loses most of the content

  • editing/pasteboard/4641033-expected.checksum: Added.
  • editing/pasteboard/4641033-expected.png: Added.
  • editing/pasteboard/4641033-expected.txt: Added.
  • editing/pasteboard/4641033.html: Added.

WebCore:

Reviewed by john


<rdar://problem/4641033>
REGRESSION: Pasting from web pages into Mail (or Blot) often loses most of the content


  • editing/markup.cpp: (WebCore::createMarkup): We surround the currently accumulated markup with markup for ancestors of the startNode when the pre-order traversal leaves the trees rooted at those ancestors. We assumed that any ancestors of the current node not in the ancestorsToClose list were those kind of ancestors. But we don't add renderer-less containers to the ancestorsToClose list. So, we were incorrectly surrounding the currently accumulated markup with markup for render-less containers. Most of the content at apple.com was being put inside an <optgroup> inside a <select> element. Then on Paste createContextualFragment would drop it.
11:06 AM Changeset in webkit [15555] by brmorris
  • 1 edit
    1 delete in S60/trunk/JavaScriptCore

2006-07-21 brmorris <bradley.morrison@nokia.com>

Reviewed by Zalan.

8:28 AM Changeset in webkit [15554] by brmorris
  • 15 edits
    25 adds
    3 deletes in S60/trunk

2006-07-20 brmorris <bradley.morrison@nokia.com>

Reviewed by Sachin/Zalan.

  • Distribution.Policy.S60 files: Added.
  • Cleaned JavaScriptCore
  • Minor fixes (see ChangeLogs)
12:56 AM Changeset in webkit [15553] by andersca
  • 5 edits in trunk/WebCore

2006-07-21 Anders Carlsson <acarlsson@apple.com>

Reviewed by Geoff.

  • dom/Document.h: (WebCore::Document::):
  • dom/EventTargetNode.cpp: (WebCore::EventTargetNode::addEventListener):
  • page/FrameView.cpp: (WebCore::FrameView::layout):
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::updateScrollInfoAfterLayout): Only dispatch overflowchanged events if overflowchanged event listeners have been registered on the document.
12:52 AM Changeset in webkit [15552] by andersca
  • 4 edits
    2 adds in trunk

WebCore:

2006-07-20 Anders Carlsson <acarlsson@apple.com>

Reviewed by Geoff.

<rdar://problem/4637807> REGRESSION: "Features & Options" page at volvocars.us fails

  • xml/XSLTProcessor.cpp: (WebCore::xsltParamArrayFromParameterMap): Turns out parameters never worked. String parameters need to be escaped so we create a transform context, add the parameters to it quoted and then use xsltApplyStylesheetUser which lets us pass the transform context to it. This also works around a bug in libxslt where a hash table isn't allocated.

LayoutTests:

2006-07-20 Anders Carlsson <acarlsson@apple.com>

Reviewed by Geoff.

<rdar://problem/4637807> REGRESSION: "Features & Options" page at volvocars.us fails


  • fast/xsl/xslt-processer-expected.txt: This passes now.


  • fast/xsl/xslt-string-parameters-expected.txt: Added.
  • fast/xsl/xslt-string-parameters.html: Added.

Jul 20, 2006:

10:30 PM Changeset in webkit [15551] by aliceli1
  • 2 edits
    1 add in trunk/WebCore

Reviewed by Tim Omernick.

Fixed <rdar://problem/4621649> repro crash: Upload link causes crash on pages.google.com in Frame::nodeForWidget
added manual test because there is no way to change the value of an <input type=file> via the DOM. It's not supported because it's a security risk.

  • manual-tests/remove-input-file-onchange.html: Added.
  • platform/mac/FileButtonMac.mm: (-[WebFileChooserButton chooseFilename:]): swapped the calls to changeFilename and bridgeForWidget because changeFilename will destroy the widget that is accessed in bridgeForWidget
10:18 PM Changeset in webkit [15550] by aliceli1
  • 5 edits
    3 adds in trunk/WebCore

Reviewed by Adele.

Fixed <rdar://problem/4532113> REGRESSION (NativeTextField): Crash occurs after modifying field then reloading page -[FormDelegate frameLayoutHasChanged:]
added a manual test because of the need to use AutoFill.

  • dom/Node.h: (WebCore::Node::aboutToUnload): added virtual function prototype
  • html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::aboutToUnload): added implementation that sends textFieldDidEndEditing notification
  • html/HTMLInputElement.h: added virtual function prototype
  • manual-tests/input-type-file-autocomplete-frame-1.html: Added.
  • manual-tests/input-type-file-autocomplete-frame-2.html: Added.
  • manual-tests/input-type-file-autocomplete-refresh.html: Added.
  • page/Frame.cpp: (WebCore::Frame::stopLoading): before unloading, call aboutToUnload on the current focused node
8:11 PM Changeset in webkit [15549] by mjs
  • 5 edits in trunk/LayoutTests

Reviewed by Beth and John.


  • fix recently broken layout tests that need updated results or test changes:

For these three, the selection ranges changed (for the better) due to my input
editing fix.


  • editing/selection/3690703-2-expected.txt:
  • editing/selection/3690703-expected.txt:
  • fast/text/textIteratorNilRenderer-expected.txt:

For this one, DumpRenderTree no longer shows resize corners by default, so turned
it on via style.


  • fast/css/resize-corner-tracking.html:
6:16 PM Changeset in webkit [15548] by beidson
  • 3 edits in trunk/WebCore

Reviewed by Maciej

fixed <rdar://problem/4611303> REGRESSION: repro crash in WebCore::EventTargetNode::dispatchWindowEvent at aeropostale.com
There was an attempt to deref an EventListener that got cleaned up in GC. Changing Document's EventListener list from
vanilla ptrs to refptrs to prevent GC, following EventTargetNode's proven example.

  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::clear): (WebCore::Document::handleWindowEvent): (WebCore::Document::getHTMLWindowEventListener): (WebCore::Document::removeHTMLWindowEventListener): (WebCore::Document::removeWindowEventListener): (WebCore::Document::hasWindowEventListener): Changed all of the list iterators to work with RefPtrs instead of vanilla ptrs
  • dom/Document.h: Changed the EventListener list to be a vanilla pointer list to a refptr list
6:07 PM Changeset in webkit [15547] by sullivan
  • 7 edits in trunk

WebCore:

Reviewed by Maciej

  • WebCore part of fix for: <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving closing tabs after clicking in a web page


  • bridge/mac/WebCoreFrameBridge.h: (-[WebCoreFrameBridge textViewWasFirstResponderAtMouseDownTime:]) renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)
  • bridge/mac/FrameMac.mm: (WebCore::FrameMac::passMouseDownEventToWidget): updated for name change

WebKit:

Reviewed by Maciej

  • WebKit part of fix for: <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving closing tabs after clicking in a web page
  • WebCoreSupport/WebFrameBridge.m: (-[WebFrameBridge textViewWasFirstResponderAtMouseDownTime:]): renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)


  • WebView/WebHTMLViewInternal.h:
  • WebView/WebHTMLView.m: (-[WebTextCompleteController dealloc]): updated for name change (-[NSArray _setMouseDownEvent:]): Now only retains the first responder if it's a textView, since that's the only case that the only client actually cares about. This avoids a reference cycle caused by retaining self. This is the only substantive part of the patch; all the rest is just renaming for clarity, and comments. (-[NSArray mouseDown:]): updated for name change (-[WebHTMLView _textViewWasFirstResponderAtMouseDownTime:]): renamed to be more specific (formerly _wasFirstResponderAtMouseDownTime:)
2:52 PM Changeset in webkit [15546] by sfalken
  • 2 edits in trunk/JavaScriptCore

2006-07-20 Steve Falkenburg <sfalken@apple.com>

Fix the build

  • kjs/function.cpp: (KJS::escapeStringForPrettyPrinting):
2:23 PM Changeset in webkit [15545] by andersca
  • 1 edit in trunk/WebCore/ChangeLog

Fix an old typo

12:20 PM Changeset in webkit [15544] by ap
  • 9 edits
    1 add in trunk/WebCore

Reviewed by Darin.

Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8272
Use of window.open & window.close can cause crash

  • platform/PlatformMouseEvent.h: (WebCore::PlatformMouseEvent::PlatformMouseEvent):
  • platform/mac/PlatformMouseEventMac.mm: (WebCore::PlatformMouseEvent::PlatformMouseEvent): The default constructor now creates a "zero" event, and a new one was added to create the "current" one.
  • bridge/mac/FrameMac.mm: (WebCore::FrameMac::handleMouseMoveEvent):
  • rendering/RenderFormElement.cpp: (WebCore::RenderFormElement::clicked): Updated for the above changes.
  • platform/gdk/MouseEventGdk.cpp:
  • platform/gdk/TemporaryLinkStubs.cpp: (PlatformMouseEvent::PlatformMouseEvent):
  • platform/win/MouseEventWin.cpp:
  • platform/win/TemporaryLinkStubs.cpp: (PlatformMouseEvent::PlatformMouseEvent): Trying not to break other platforms.
  • manual-tests/invalid-mouse-event.html: Added.
2:03 AM Changeset in webkit [15543] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Anders.

  • delete line that I only commented in the last patch - meant to do this before landing
  • html/HTMLFrameElement.cpp: (WebCore::HTMLFrameElement::close):
1:47 AM Changeset in webkit [15542] by mjs
  • 2 edits in trunk/WebCore

Reviewed by Geoff.

  • fixed <rdar://problem/4634484> REGRESSION: Project Change Request form should have vertical scroll bar, but doesn't


I couldn't figure out how to make an automated test case for this,
or even a manual one. It seems to be timing-related in some way.

  • html/HTMLFrameElement.cpp: (WebCore::HTMLFrameElement::close): detach the child frame from its element, not the frame containing this element.
12:49 AM Changeset in webkit [15541] by andersca
  • 2 edits in trunk/WebCore

2006-07-20 Anders Carlsson <acarlsson@apple.com>

Reviewed by Darin.

  • bridge/mac/FrameMac.mm: (WebCore::FrameMac::nextKeyViewInFrame): Hold a ref to the node in case it gets destroyed by an event handler.
Note: See TracTimeline for information about the timeline view.