Timeline


and

03/15/06:

23:15 Changeset [13326] by eseidel
  • 5 edits in trunk/WebCore

2006-03-15 Eric Seidel <eseidel@apple.com>

Reviewed by darin.

Remove unused code and clean-up style.

  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::advanceToNextMisspelling): (WebCore::MacFrame::wheelEvent): (WebCore::MacFrame::nextKeyViewInFrame): (WebCore::MacFrame::nextKeyViewInFrameHierarchy): (WebCore::MacFrame::nextKeyView):
  • page/Frame.cpp:
  • page/Frame.h:
  • page/FrameView.cpp: (WebCore::FrameView::dispatchMouseEvent):
22:21 Changeset [13325] by eseidel
  • 15 edits
    2 adds in trunk

2006-03-15 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

http://bugzilla.opendarwin.org/show_bug.cgi?id=7790
addEventListener does not work with "dblclick" event.
Renamed khtmlDblclickEvent to dblclickEvent to fix.

Test: fast/events/dblclick-addEventListener.html

  • WebCore.xcodeproj/project.pbxproj:
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::mouseUp): (WebCore::MacFrame::mouseMoved): (WebCore::MacFrame::shouldDragAutoNode): (WebCore::MacFrame::sendContextMenuEvent):
  • dom/EventNames.h:
  • dom/NodeImpl.cpp: (WebCore::NodeImpl::dispatchMouseEvent):
  • dom/NodeImpl.h:
  • khtml/ecma/kjs_binding.cpp: (KJS::ScriptInterpreter::wasRunByUserGesture):
  • khtml/ecma/kjs_dom.cpp: (KJS::DOMNode::getValueProperty): (KJS::DOMNode::putValueProperty):
  • khtml/ecma/kjs_window.cpp: (KJS::Window::getValueProperty): (KJS::Window::put):
  • khtml/html/HTMLElementImpl.cpp: (WebCore::HTMLElementImpl::parseMappedAttribute):
  • page/FrameView.cpp: (WebCore::FrameView::dispatchMouseEvent):
  • page/FrameView.h:
22:12 Changeset [13324] by ap
  • 5 edits
    4 adds in trunk

Reviewed by Maciej.

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

  • dom/DocumentImpl.cpp: (WebCore::DocumentImpl::open): Only ignore open() while the frame is still loading the main resource.
  • page/Frame.cpp: (WebCore::Frame::isComplete): Added const specifier. (WebCore::Frame::isLoadingMainResource): New function.
  • page/Frame.h:
20:53 Changeset [13323] by darin
  • 2 edits in trunk/WebKitTools

Reviewed by Maciej.

  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: Fix path that had a lowercase "i" in it so this builds on case-sensitive file systems.
19:44 Changeset [13322] by darin
  • 5 deletes in trunk

Removed a few stray .cvsignore files that crept in.

18:00 Changeset [13321] by bdakin
  • 1 edit
    182 adds in trunk/LayoutTests

Rubber stamped by Geoff.

even more mozilla table tests.

17:44 Changeset [13320] by ggaren
  • 1 edit
    2 adds in trunk/WebKitTools

Reviewed by Eric.

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

  • Scripts/compare-timing-files: Added.
  • Scripts/run-testkjs: Added.
17:15 Changeset [13319] by darin
  • 2 edits in trunk/WebKit

Fix by Patrick Beard, reviewed by me.

  • fix <rdar://problem/4478181> WebPluginController leaks NSArray and NSMutableSet objects
  • Plugins/WebPluginController.m: (-[WebPluginController initWithDocumentView:]): Call CFMakeCollectable on the CFSet so we can act like it's an NSSet. (-[WebPluginController dealloc]): Release _views and _checksInProgress.
16:44 Changeset [13318] by eseidel
  • 2 edits in trunk/JavaScriptCore

2006-03-15 Eric Seidel <eseidel@apple.com>

Reviewed by adele.

Build fix.

  • kjs/date_object.cpp: (KJS::DateProtoFunc::callAsFunction): use size() not "len()"
16:40 Changeset [13317] by adele
  • 5 edits in trunk/WebCore

Reviewed by Eric.

  • Fixes win32 build.
  • page/Frame.cpp: (WebCore::Frame::autoscrollTimerFired): Calls isMouseButtonDown instead of CG function.
  • platform/MouseEvent.h: Added isMouseButtonDown
  • platform/mac/MouseEventMac.mm: (WebCore::MouseEvent::isMouseButtonDown): Calls CG function to get state of mouse button.
  • platform/win/TemporaryLinkStubs.cpp: (MouseEvent::isMouseButtonDown): Added stub.
16:35 Changeset [13316] by bdakin
  • 1 edit
    848 adds in trunk/LayoutTests

Rubber stamped by Geoff.

Even more Mozilla tables tests.

16:03 Changeset [13315] by bdakin
  • 1 edit
    849 adds in trunk/LayoutTests

Rubber stamped by Geoff

More Mozilla table tests.

15:01 Changeset [13314] by bdakin
  • 1 edit
    617 adds in trunk/LayoutTests

Rubber stamped by Geoff.

First round of committing Mozilla table tests to our tree.

14:46 Changeset [13313] by aliceli1
  • 1 edit in trunk/WebKitSite/projects/compat/hitlist.html

forgot to change the date

14:28 Changeset [13312] by eseidel
  • 2 edits in trunk/WebCore

2006-03-15 Eric Seidel <eseidel@apple.com>

Reviewed by geoff.

  • platform/KeyEvent.h: Fix #define from QEvent_H to KeyEvent_H
14:26 Changeset [13311] by eseidel
  • 3 edits in trunk/JavaScriptCore

2006-03-15 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

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

  • kjs/date_object.cpp: (KJS::DateProtoFunc::callAsFunction):
  • kjs/ustring.cpp: (KJS::CString::CString): (KJS::CString::operator=):
13:59 Changeset [13310] by aliceli1
  • 1 edit in trunk/WebKitSite/projects/compat/hitlist.html

added www.live.com to list and reordered by bug number.

13:29 Changeset [13309] by ggaren
  • 2 edits in trunk/WebKitSite

Reviewed by TimH.

  • projects/compat/hitlist.html: Moved delta.com to the alumni list, added description of alumni list.
12:56 Changeset [13308] by hyatt
  • 1 edit in trunk/LayoutTests/fast/box-sizing/percentage-height-expected.txt

Check in updated results for fast/box-sizing/percentage-height.html. All results for this test are wrong, but only in DumpRenderTree. Safari renders it correctly.

12:12 Changeset [13307] by hyatt
  • 2 edits in trunk/WebCore

Fix the box-sizing layout test by stopping integer overflowing from
occurring in the flexbox code.

Reviewed by beth

  • rendering/render_flexbox.cpp: (khtml::RenderFlexibleBox::allowedChildFlex):
10:43 Changeset [13306] by bdakin
  • 2 edits in trunk/WebCore

Reviewed by Eric

Fix for some leaks and intermittent broken pipes in the layout
tests after check-in for http://bugzilla.opendarwin.org/
show_bug.cgi?id=4171.

10:26 Changeset [13305] by darin
  • 1 edit in trunk/LayoutTests/ChangeLog

Update information about when a bug was fixed.

02:21 Changeset [13304] by mjs
  • 13 edits in trunk/JavaScriptCore

Reviewed by Anders.


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

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


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


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

Reviewed by Maciej.

Followup fix for previous checkin.
http://bugzilla.opendarwin.org/show_bug.cgi?id=7114
<rdar://problem/3695120> dragging to scroll doesn't work with overflow:auto/scroll/overlay areas

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

  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::khtmlMouseMoveEvent):
01:05 Changeset [13302] by adele
  • 7 edits in trunk/WebCore

Reviewed by Maciej.

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

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

03/14/06:

23:01 Changeset [13301] by justing
  • 9 edits
    6 adds in trunk

LayoutTests:

Reviewed by mjs


<http://bugzilla.opendarwin.org/show_bug.cgi?id=7578>
TinyMCE: Implement execCommand CreateLink

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

WebCore:

Reviewed by mjs


<http://bugzilla.opendarwin.org/show_bug.cgi?id=7578>
TinyMCE: Implement execCommand CreateLink


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

  • WebCore.xcodeproj/project.pbxproj:
  • editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): (WebCore::ApplyStyleCommand::doApply): (WebCore::ApplyStyleCommand::removeInlineStyle): (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
  • editing/ApplyStyleCommand.h:
  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::applyStyle):
  • editing/CreateLinkCommand.cpp: Added. (WebCore::CreateLinkCommand::CreateLinkCommand): (WebCore::CreateLinkCommand::doApply):
  • editing/CreateLinkCommand.h: Added.
  • editing/jsediting.cpp:
  • page/Frame.cpp: (WebCore::Frame::computeAndSetTypingStyle): (WebCore::Frame::applyStyle): (WebCore::Frame::applyParagraphStyle):
22:40 Changeset [13300] by bdakin
  • 12 edits in trunk

Reviewed by Maciej

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

19:41 Changeset [13299] by darin
  • 7 edits in trunk/LayoutTests

Rubber stamped by Hyatt.

  • land new results for two tests affected by Hyatt's layer change
  • fast/encoding/utf-16-big-endian-expected.checksum: Updated.
  • fast/encoding/utf-16-big-endian-expected.png: Ditto.
  • fast/encoding/utf-16-big-endian-expected.txt: Ditto.
  • fast/encoding/utf-16-little-endian-expected.checksum: Ditto.
  • fast/encoding/utf-16-little-endian-expected.png: Ditto.
  • fast/encoding/utf-16-little-endian-expected.txt: Ditto.
19:25 Changeset [13298] by justing
  • 5 edits in trunk/WebCore

Reviewed by adele


<http://bugzilla.opendarwin.org/show_bug.cgi?id=7770>
Should only dispatch the khtmlTextInsertedEvent for high level editing operations

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

  • dom/EventNames.h:
  • editing/EditCommand.cpp: (WebCore::EditCommand::apply): (WebCore::EditCommand::unapply): (WebCore::EditCommand::reapply):
  • khtml/html/HTMLTextFieldInnerElementImpl.cpp: (WebCore::HTMLTextFieldInnerElementImpl::defaultEventHandler):
  • page/Frame.cpp: (WebCore::dispatchKHTMLEditableContentChanged): (WebCore::Frame::appliedEditing): (WebCore::Frame::unappliedEditing): (WebCore::Frame::reappliedEditing):
18:47 Changeset [13297] by darin
  • 3 edits in trunk/LayoutTests
  • land new results for tests affected by my setAttribute change
  • dom/xhtml/level3/core/nodeisequalnode15-expected.txt: Updated to reflect a new kind of failure.
  • dom/xhtml/level3/core/nodeisequalnode16-expected.txt: Updated to reflect success.
18:07 Changeset [13296] by ggaren
  • 1 edit
    1 add in trunk/LayoutTests

Oops, forgot to add this file.

  • fast/js/resources/string-sort.js: Added.
17:17 Changeset [13295] by darin
  • 2 edits in trunk/WebCore

Reviewed by Eric.

  • fix <rdar://problem/4478121> -[WebCoreFrameBridge finalize] crashes under GC
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge finalize]): Don't call setBridge(nil).
17:09 Changeset [13294] by ggaren
  • 7 edits
    2 adds in trunk

JavaScriptCore:

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

Reviewed by Eric.

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

LayoutTests:

Reviewed by Eric.

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

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

Updated results for these files:

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

Added these files:

  • fast/js/string-sort-expected.txt: Added.
  • fast/js/string-sort.html: Added.
15:54 Changeset [13293] by darin
  • 2 edits in trunk/WebCore
  • oops, didn't mean to check this in
  • dom/dom_elementimpl.cpp: (WebCore::StyledElementImpl::parseMappedAttribute): Reverted nil-document check that I didn't mean to remove.
15:53 Changeset [13292] by bdakin
  • 1 edit
    4 adds in trunk/LayoutTests

Reviewed by Hyatt

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

15:50 Changeset [13291] by bdakin
  • 3 edits in trunk/WebCore

Reviewed by Hyatt

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

15:01 Changeset [13290] by darin
  • 1 edit
    2 adds in trunk/LayoutTests

Reviewed by Maciej.

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

  • fast/dom/setAttribute-using-initial-input-value-expected.txt: Added.
  • fast/dom/setAttribute-using-initial-input-value.html: Added.
14:58 Changeset [13289] by darin
  • 8 edits
    2 adds in trunk

LayoutTests:

Reviewed by Geoff and Eric.

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

WebCore:

Reviewed by Geoff and Eric.

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

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

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

  • dom/NamedNodeMapImpl.h: Changed getNamedItem and removeNamedItem to be pure virtual functions instead of calling through to getNamedItemNS and removeNamedItemNS.
  • dom/dom_elementimpl.h: Eliminated inline versions of non-NS functions that called the NS functions. They can't work that way any more since the lowercasing behavior is different.
  • dom/dom_elementimpl.cpp: (WebCore::ElementImpl::getAttribute): Added. Lowercases the name if the document is an HTML document, and then calls through to the qualified name version. Removed the null check since getDocument is guaranteed to never return 0 now that nodes hold a reference to their document. (WebCore::ElementImpl::getAttributeNS): Removed the lowercasing code. (WebCore::ElementImpl::setAttribute): More of the same. (WebCore::ElementImpl::setAttributeNS): Ditto. (WebCore::ElementImpl::removeAttribute): Ditto. (WebCore::ElementImpl::removeAttributeNS): Ditto. (WebCore::ElementImpl::getAttributeNode): Ditto. (WebCore::ElementImpl::getAttributeNodeNS): Ditto. (WebCore::ElementImpl::hasAttribute): Ditto. (WebCore::ElementImpl::hasAttributeNS): Ditto. (WebCore::NamedAttrMapImpl::getNamedItem): Ditto. (WebCore::NamedAttrMapImpl::getNamedItemNS): Ditto. (WebCore::NamedAttrMapImpl::removeNamedItem): Ditto. (WebCore::NamedAttrMapImpl::removeNamedItemNS): Ditto. (WebCore::StyledElementImpl::parseMappedAttribute): Removed another unneeded null check like the one mentioned above.
  • dom/Element.idl: Set ConvertNullToNullString for all the namespaceURI parameters, since we don't want null to turn into "null". Added a semicolon to the end of the hasAttributeNS line -- was causing the next declaration to be eaten up (so getAttributeNS was completely broken).
  • khtml/ecma/kjs_dom.cpp: (KJS::DOMNamedNodeMapProtoFunc::callAsFunction): Call valueToStringWithNullCheck to do the equivalent of ConvertNullToNullString for both getNamedItemNS and removeNamedItemNS.
  • bindings/js/JSDOMCore.cpp: Touched so that the changes above will take effect.
12:11 Changeset [13288] by tomernic
  • 4 edits in trunk/WebKit

Reviewed by Maciej.

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

  • WebView/WebFrameViewPrivate.h:
  • WebView/WebFrameView.m: (-[WebFrameView documentViewShouldHandlePrint]): Called by the host application before it initializes and runs a print operation. If NO is returned, the host application will abort its print operation and call -printDocumentView on the WebFrameView. The document view is then expected to run its own print operation. If YES is returned, the host application's print operation will continue as normal. (-[WebFrameView printDocumentView]): Called by the host application when the WebFrameView returns YES from -documentViewShouldHandlePrint.
  • Plugins/WebNetscapePluginDocumentView.m: (-[WebNetscapePluginDocumentView documentViewShouldHandlePrint]): Allow the plugin to take over printing if it defines an NPP_Print function (-[WebNetscapePluginDocumentView printDocumentView]): Print the plugin document.
03:21 Changeset [13287] by hyatt
  • 1 edit in trunk/WebCore/rendering/render_layer.cpp

Fix the setpos to move screwup. Didn't realize move was a delta.

03:03 Changeset [13286] by hyatt
  • 4 edits in trunk/WebCore

Fix for bug 7259, opacity performs badly.

Reviewed by mjs

Adding some tests in fast/opacity.

  • rendering/RenderTableRow.h: (WebCore::RenderTableRow::requiresLayer):
  • rendering/render_layer.cpp: (WebCore::transparencyClipBox): (WebCore::RenderLayer::beginTransparencyLayers): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::intersectsDamageRect): (WebCore::RenderLayer::absoluteBoundingBox):
  • rendering/render_layer.h: (WebCore::RenderLayer::root):
02:52 Changeset [13285] by eseidel
  • 2 edits in trunk/WebKitTools

2006-03-14 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

Make the URL bar relinquish focus on page load.

  • Spinneret/Spinneret/Spinneret.cpp: (MyEditProc):
02:33 Changeset [13284] by eseidel
  • 2 edits in trunk/WebKitTools

2006-03-14 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

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

  • Spinneret/Spinneret/WebView.cpp: (WebKit::scrollMessageForKey): (WebKit::WebViewWndProc):
01:49 Changeset [13283] by eseidel
  • 2 edits in trunk/WebCore

2006-03-14 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

Fix Gif crasher.

  • platform/image-decoders/gif/GIFImageReader.cpp: (GIFImageReader::do_lzw): Initialize array after new.
01:19 Changeset [13282] by eseidel
  • 2 edits in trunk/WebCore

2006-03-14 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

Make MouseEvents aware of current scroll position.

  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::viewportToContents): (WebCore::ScrollView::contentsToViewport):

03/13/06:

23:40 Changeset [13281] by eseidel
  • 2 edits in trunk/WebCore

2006-03-13 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

Fix mouse events to be window-relative.

  • platform/win/MouseEventWin.cpp: (WebCore::positionForEvent): (WebCore::globalPositionForEvent): (WebCore::MouseEvent::MouseEvent):
23:05 Changeset [13280] by eseidel
  • 3 edits in trunk/WebKitTools

2006-03-10 Eric Seidel <eseidel@apple.com>

Reviewed by hyatt.

Add scrolling support into Spinneret.

  • Spinneret/Spinneret/WebFrame.cpp: (WebKit::WebFrame::paint):
  • Spinneret/Spinneret/WebView.cpp: (WebKit::WebView::createWebView): (WebKit::calculateScrollDelta): (WebKit::scrollMessageForKey): (WebKit::WebViewWndProc):
22:25 Changeset [13279] by eseidel
  • 3 edits in trunk/WebCore

2006-03-13 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

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

  • platform/win/FontWin.cpp: (WebCore::getFontData): (WebCore::Font::floatWidth): (WebCore::Font::drawText):
  • platform/win/TemporaryLinkStubs.cpp: (Cursor::Cursor): (WebCore::moveCursor):
20:50 Changeset [13278] by eseidel
  • 4 edits in trunk/WebKitTools

2006-03-13 Eric Seidel <eseidel@apple.com>

Reviewed by mjs.

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

  • DumpRenderTree/DumpRenderTree.m: (main): (dump): (md5HashStringForBitmap):
  • DumpRenderTree/ImageDiff.m: (computePercentageDifferent):
19:30 Changeset [13277] by eseidel
  • 3 edits
    5 adds in trunk

2006-03-13 Eric Seidel <eseidel@apple.com>

Reviewed by ggaren & TimH.

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

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

  • khtml/xsl/xsl_stylesheetimpl.cpp: (WebCore::XSLStyleSheetImpl::loadChildSheets):
18:26 Changeset [13276] by eseidel
  • 8 edits
    4 adds in trunk

2006-03-10 Rob Buis <buis@kde.org>

Reviewed by darin. Landed by eseidel.

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

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

Test: svg/custom/dashArrayOrigin.svg

  • kcanvas/KCanvasCreator.cpp: (WebCore::KCanvasCreator::createRoundedRectangle):
16:15 Changeset [13275] by thatcher
  • 4 copies in tags/WebCore-417.24/WebCore

New tag (part 2).

16:14 Changeset [13274] by thatcher
  • 1 add in tags/WebCore-417.24

New tag.

16:14 Changeset [13273] by thatcher
  • 5 copies in tags/JavaScriptCore-417.11/JavaScriptCore

New tag (part 2).

16:14 Changeset [13272] by thatcher
  • 1 add in tags/JavaScriptCore-417.11

New tag.

16:12 Changeset [13271] by thatcher
  • 4 edits in branches/Safari-2-0-branch

Versioning

16:09 Changeset [13270] by thatcher
  • 4 edits in branches/Safari-2-0-branch

Merged fix from TOT to Safari-2-0-branch

2006-02-16 Tim Omernick <timo@apple.com>

Reviewed by Geoff.

<rdar://problem/4428609> Flash Player 8.0.22 can crash Safari (and WebKit apps)
with javascript disabled (7015)

Added a test case, manual-tests/NPN_Invoke. This is a skeleton of a Netscape
plugin which uses NPN_Invoke() to call the window.alert() JavaScript function.


  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::windowScriptNPObject): Removed the check Darin added to return 0 when JavaScript is disabled. This method cannot return 0, because plugins are not guaranteed to check for that. Removed my old fix for Radar 4428609 (7015) in favor of a better solution. Instead of creating a "dummy" JSObject to represent the window script object when JavaScript is disabled, we use the new JavaScriptCore bindings API to create a "no script" NPObject. This solution is better because it does not cause entry into any JavaScript interpreter code.
  • manual-tests/NPN_Invoke: Added.
  • manual-tests/NPN_Invoke/English.lproj: Added.
  • manual-tests/NPN_Invoke/English.lproj/Localized.r: Added.
  • manual-tests/NPN_Invoke/Info.plist: Added.
  • manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj: Added.
  • manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj: Added.
  • manual-tests/NPN_Invoke/main.c: Added.
  • manual-tests/NPN_Invoke/test.html: Added.
14:16 Changeset [13269] by ggaren
  • 4 edits in trunk/WebKit

Reviewed by timo.

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

I did two things:
(1) Fixed some bugs and a misspelling in the previous heuristic's
implementation
(2) Added two new rules to the heuristic:

(a) Treat the first layout as the half-way point.
(b) Just like we jump the first 10% to indicate that a load has
started, jump the last 10% to indicate that a load has finished.

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

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

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


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

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

Reviewed by Tim Hatcher.

  • Scripts/run-webkit-tests: Fix httpd handling to work on systems that have it named httpd-1.3 instead.
11:55 Changeset [13267] by ap
  • 2 edits in trunk/WebKitTools

Fix proposed by Mitz Pettel, reviewed by Darin.

  • Scripts/run-webkit-tests: Make test paths canonical, to form proper URLs (sequences of slashes are equivalent to a single slash in POSIX paths, but not in URLs).
11:29 Changeset [13266] by sullivan
  • 2 edits in trunk/WebKit

Reviewed by Tim Omernick.


  • fixed <rdar://problem/4475857> API: Setting a history item limit programmatically doesn't work
  • History/WebHistory.m: (-[WebHistoryPrivate _loadHistoryGuts:URL:error:]): use [self historyItemLimit], which prefers the explicitly-set value and falls back to the NSUserDefaults value, instead of using the NSUserDefaults value explicitly.

03/12/06:

14:17 Changeset [13265] by ap
  • 3 edits
    4 adds in trunk

Fix by Mitz Pettel, reviewed by Maciej.

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

  • rendering/render_layer.cpp: (WebCore::RenderLayer::containsPoint): Always return true for the root object to ensure that mouse events occurring outside the window target the document.
14:09 Changeset [13264] by ap
  • 5 edits in trunk/WebCore

No test - only reproducible when Safari imports the bookmarks.

  • dom/EventNames.cpp: (WebCore::EventNames::init): Initialize AtomicString before using it.
  • dom/QualifiedName.cpp: (WebCore::QualifiedName::init): Ditto.
  • khtml/html/htmlnames.cpp: (WebCore::HTMLNames::init): Ditto.
  • ksvg2/scripts/make_names.pl: Ditto.
12:30 Changeset [13263] by ap
  • 3 edits
    2 adds in trunk

Reviewed by Maciej.

Test: plugins/invoke.html

  • bindings/c/c_utility.cpp: (KJS::Bindings::convertUTF8ToUTF16): Return a correct string length.
00:29 Changeset [13262] by ap
  • 3 edits
    16 adds in trunk

Patch by David Kilzer, reviewed by Darin.

WebCore:

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

LayoutTests:

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

  • fast/invalid/missing-address-end-tag-expected.checksum: Added.
  • fast/invalid/missing-address-end-tag-expected.png: Added.
  • fast/invalid/missing-address-end-tag-expected.txt: Added.
  • fast/invalid/missing-address-end-tag.html: Added.
  • fast/invalid/missing-dl-end-tag-expected.checksum: Added.
  • fast/invalid/missing-dl-end-tag-expected.png: Added.
  • fast/invalid/missing-dl-end-tag-expected.txt: Added.
  • fast/invalid/missing-dl-end-tag.html: Added.
  • fast/invalid/missing-dt-end-tag-expected.checksum: Added.
  • fast/invalid/missing-dt-end-tag-expected.png: Added.
  • fast/invalid/missing-dt-end-tag-expected.txt: Added.
  • fast/invalid/missing-dt-end-tag.html: Added.
  • fast/invalid/missing-font-end-tag-expected.checksum: Added.
  • fast/invalid/missing-font-end-tag-expected.png: Added.
  • fast/invalid/missing-font-end-tag-expected.txt: Added.
  • fast/invalid/missing-font-end-tag.html: Added.
Note: See TracTimeline for information about the timeline view.