Timeline


and

03/19/06:

23:30 Changeset [13396] by eseidel

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

Reviewed by darin.

Move Form code from MacFrame to Frame.
Move GraphicsContext code from GraphicsContextMac to GraphicsContext.
Use IntRect, FloatRect in more places throughout the code.
http://bugzilla.opendarwin.org/show_bug.cgi?id=7824

  • bridge/mac/MacFrame.h:
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::MacFrame): (WebCore::MacFrame::searchForLabelsAboveCell): (WebCore::MacFrame::searchForLabelsBeforeElement): (WebCore::dictionaryFromHashMap): (WebCore::MacFrame::submitForm): (WebCore::MacFrame::setView): (WebCore::MacFrame::currentEventIsMouseDownInWidget): (WebCore::MacFrame::currentEventIsKeyboardOptionTab): (WebCore::MacFrame::handleKeyboardOptionTabInView): (WebCore::MacFrame::tabsToAllControls): (WebCore::MacFrame::shouldDragAutoNode): (WebCore::MacFrame::selectionImage): (WebCore::MacFrame::snapshotDragImage):
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge nextKeyView]): (-[WebCoreFrameBridge previousKeyView]): (-[WebCoreFrameBridge nextKeyViewInsideWebFrameViews]): (-[WebCoreFrameBridge previousKeyViewInsideWebFrameViews]):
  • kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint):
  • page/Frame.cpp: (WebCore::Frame::Frame): (WebCore::Frame::clearRecordedFormValues): (WebCore::Frame::recordFormValue): (WebCore::Frame::didNotOpenURL): (WebCore::scanForForm): (WebCore::Frame::paint): (WebCore::Frame::prepareForUserAction):
  • page/Frame.h:
  • platform/GraphicsContext.cpp: (WebCore::GraphicsContextState::GraphicsContextState): (WebCore::GraphicsContextPrivate::GraphicsContextPrivate): (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate): (WebCore::GraphicsContext::save): (WebCore::GraphicsContext::restore): (WebCore::GraphicsContext::font): (WebCore::GraphicsContext::setFont): (WebCore::GraphicsContext::pen): (WebCore::GraphicsContext::setPen): (WebCore::GraphicsContext::setBrush): (WebCore::GraphicsContext::brush): (WebCore::GraphicsContext::setUsesInactiveTextBackgroundColor): (WebCore::GraphicsContext::usesInactiveTextBackgroundColor): (WebCore::GraphicsContext::updatingControlTints): (WebCore::GraphicsContext::setUpdatingControlTints): (WebCore::GraphicsContext::setPaintingDisabled): (WebCore::GraphicsContext::paintingDisabled): (WebCore::GraphicsContext::printing): (WebCore::GraphicsContext::drawImageAtPoint): (WebCore::GraphicsContext::drawImageInRect): (WebCore::GraphicsContext::drawImage): (WebCore::GraphicsContext::initFocusRing): (WebCore::GraphicsContext::clearFocusRing): (WebCore::GraphicsContext::addFocusRingRect): (WebCore::GraphicsContext::focusRingWidth): (WebCore::GraphicsContext::focusRingOffset): (WebCore::GraphicsContext::focusRingRects):
  • platform/GraphicsContext.h:
  • platform/mac/GraphicsContextMac.mm: (WebCore::fillRectSourceOver): (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate): (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate): (WebCore::GraphicsContext::GraphicsContext): (WebCore::GraphicsContext::~GraphicsContext): (WebCore::GraphicsContext::savePlatformState): (WebCore::GraphicsContext::restorePlatformState): (WebCore::GraphicsContext::drawRect): (WebCore::GraphicsContext::setColorFromBrush): (WebCore::GraphicsContext::setColorFromPen): (WebCore::GraphicsContext::drawLine): (WebCore::GraphicsContext::drawEllipse): (WebCore::GraphicsContext::drawArc): (WebCore::GraphicsContext::drawConvexPolygon): (WebCore::GraphicsContext::drawFloatImage): (WebCore::GraphicsContext::drawTiledImage): (WebCore::GraphicsContext::drawScaledAndTiledImage): (WebCore::GraphicsContext::selectedTextBackgroundColor): (WebCore::GraphicsContext::fillRect): (WebCore::GraphicsContext::addClip): (WebCore::GraphicsContext::addRoundedRectClip): (WebCore::GraphicsContext::beginTransparencyLayer): (WebCore::GraphicsContext::endTransparencyLayer): (WebCore::GraphicsContext::setShadow): (WebCore::GraphicsContext::clearShadow): (WebCore::GraphicsContext::drawFocusRing):
  • rendering/render_box.cpp: (WebCore::RenderBox::paintBackgroundExtended): (WebCore::RenderBox::outlineBox):
  • rendering/render_frames.cpp: (WebCore::RenderFrameSet::userResize):
  • rendering/render_image.cpp: (WebCore::RenderImage::paint):
  • rendering/render_list.cpp: (WebCore::RenderListMarker::paint):
  • rendering/render_object.cpp: (WebCore::RenderObject::drawBorder): (WebCore::RenderObject::paintBorderImage):
23:25 Changeset [13395] by darin

Reviewed by Eric.

  • html/CanvasGradient.cpp: (WebCore::CanvasGradient::platformShading): Don't make the CG shading object keep a reference to the DOM gradient object. I got confused because in the case of a CanvasPattern, the pattern does need to keep a reference to the DOM pattern object, but the object lifetime is handled differently here. The CG shading object is used right away, not set in a graphics context.
23:20 Changeset [13394] by darin

Reviewed by Eric.

  • attempt to fix the buildbot by handling DOMImplementation another way
  • WebCore.xcodeproj/project.pbxproj: Added DOMImplementationFront.h/cpp.
  • bindings/objc/DOMImplementationFront.cpp: Added.
  • bindings/objc/DOMImplementationFront.h: Added.
  • bindings/objc/DOMInternal.h: Use DOMImplementationFront, not DOMImplementation.
  • bindings/objc/DOM.mm: (-[DOMImplementation dealloc]): Ditto. (-[DOMImplementation finalize]): Ditto. (-[DOMImplementation _initWithDOMImplementation:]): Ditto. (+[DOMImplementation _DOMImplementationWith:]): Ditto. (-[DOMImplementation _DOMImplementation]): Ditto. (-[DOMDocument implementation]): Call implementationFront from the DOMImplementationFront header instead of using the real implementation function on the Document.
18:57 Changeset [13393] by darin
  • global rename, done by script
  • <lots of files>: Renamed XXXImpl to XXX, and a number of other renames. See WebKitTools/Scripts/do-webcore-rename version 13392 for details.
17:01 Changeset [13392] by darin

Another round of refinement. Ready to go now, but looks like I'm going to have to wait and do this next week.

10:55 Changeset [13391] by darin

Reviewed by Anders.

  • DumpRenderTree/DumpRenderTree.m: (main): Turn on pop-up blocking so that we can test it in layout tests. We don't really need tests that run with pop-up blocking off at the moment. If we do some day, we can add some API for turning it off in the layout test controller.
  • Scripts/run-webkit-tests: Since we don't use NSLanguage at all any more, don't ignore the leak; it should no longer show up.
10:40 Changeset [13390] by darin

LayoutTests:

  • fast/js/exception-linenums-in-html-3-expected.txt:
  • fast/js/exception-linenums-in-html-3-expected.png: Added.
  • fast/js/exception-linenums-in-html-3-expected.checksum: Added.
  • fast/js/missing-style-end-tag-js-expected.txt:
  • fast/js/missing-style-end-tag-js-expected.png: Added.
  • fast/js/missing-style-end-tag-js-expected.checksum: Added.
  • fast/tokenizer/missing-style-end-tag-1-expected.checksum:
  • fast/tokenizer/missing-style-end-tag-1-expected.png:
  • fast/tokenizer/missing-style-end-tag-1-expected.txt:
  • fast/tokenizer/missing-style-end-tag-2-expected.checksum:
  • fast/tokenizer/missing-style-end-tag-2-expected.png:
  • fast/tokenizer/missing-style-end-tag-2-expected.txt:
  • added some missing pixel-test results
  • tables/mozilla/marvin/backgr_layers-opacity-expected.checksum: Added.
  • tables/mozilla/marvin/backgr_layers-opacity-expected.png: Added.
  • fast/dom/Element/class-attribute-whitespace-expected.png: Added.
  • fast/canvas/patternfill-repeat-expected.png: Added.

WebCore:

This fix was breaking major sites -- details in the bug report.

  • khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): Removed the bug fix, added a FIXME about the <title> code that has the same problem.
10:13 Changeset [13389] by darin

Another round, believe it or not. About ready to go.

08:56 Changeset [13388] by darin

Another round of tweaks after another dry run.

03/18/06:

22:51 Changeset [13387] by darin

One more time.

22:48 Changeset [13386] by darin

A couple more fixes for things found during dry runs.

22:31 Changeset [13385] by darin

Did another dry run of the renaming and had to fix a couple of things.

22:05 Changeset [13384] by darin

LayoutTests:

Reviewed by Darin.

  • fast/canvas/patternfill-repeat-expected.checksum: Added.
  • fast/canvas/patternfill-repeat-expected.png: Added.
  • fast/canvas/patternfill-repeat-expected.txt: Added.
  • fast/canvas/patternfill-repeat.html: Added.

WebCore:

Test: fast/canvas/patternfill-repeat.html

Reviewed by Darin.

  • CanvasPattern.cpp (CanvasPattern::createPattern) Change stepping so that repeat-x, repeat-y, and no-repeat repeat outside the view area by using large values for repeat interval.
22:00 Changeset [13383] by darin

LayoutTests:

Reviewed by Darin.

  • fast/dom/Element/class-attribute-whitespace-expected.checksum: Added.
  • fast/dom/Element/class-attribute-whitespace-expected.png: Added.
  • fast/dom/Element/class-attribute-whitespace-expected.txt: Added.
  • fast/dom/Element/class-attribute-whitespace.html: Added. NOTE: This test will get broken if "eol-style" processing is done on it.

WebCore:

Test: fast/dom/Element/class-attribute-whitespace.html

Reviewed by Darin.

  • dom/dom_elementimpl.cpp: (WebCore::isClassWhitespace): Helper function to check if a character in the class attribute should be treated as whitespace. Added \r and \t. (WebCore::NamedMappedAttrMapImpl::parseClassAttribute): Instead of creating a QStringList and iterating it, do everything in one pass over the string.
21:49 Changeset [13382] by darin

LayoutTests:

Reviewed by Hyatt.

  • fast/block/float/vertical-move-relayout-expected.checksum: Added.
  • fast/block/float/vertical-move-relayout-expected.png: Added.
  • fast/block/float/vertical-move-relayout-expected.txt: Added.
  • fast/block/float/vertical-move-relayout.html: Added.

WebCore:

Test: fast/block/float/vertical-move-relayout.html

Reviewed by Hyatt.

  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlockChildren): Call markAllDescendantsWithFloatsForLayout when the child's vertical position changes.
21:47 Changeset [13381] by darin

LayoutTests:

Reviewed by Darin.

  • fast/js/exception-linenums-in-html-3-expected.txt: Added.
  • fast/js/exception-linenums-in-html-3.html: Added.

Identical to fast/js/exception-linenums-in-html-1.html except that it contains
an unclosed <style> tag, which causes the code path for Bug 6314 to be tested.

  • fast/js/missing-style-end-tag-js-expected.txt: Added.
  • fast/js/missing-style-end-tag-js.html: Added.

While developing a fix for Bug 6314, a state variable (scriptCodeSize) was not
reset in the tokenizer causing the next <script></script> tags to contain the
entire contents of the document after the open <title> tag. This test case
tests for that condition.

  • fast/tokenizer/missing-style-end-tag-1-expected.checksum: Added.
  • fast/tokenizer/missing-style-end-tag-1-expected.png: Added.
  • fast/tokenizer/missing-style-end-tag-1-expected.txt: Added.
  • fast/tokenizer/missing-style-end-tag-1.html: Added.
  • fast/tokenizer/missing-style-end-tag-2-expected.checksum: Added.
  • fast/tokenizer/missing-style-end-tag-2-expected.png: Added.
  • fast/tokenizer/missing-style-end-tag-2-expected.txt: Added.
  • fast/tokenizer/missing-style-end-tag-2.html: Added.

The first test case contains an unclosed <style> tag in <head>, while the
second test case contains an unclosed <style> tag in <body>. These two test
cases result in different code paths being taken.

WebCore:

Reviewed by Darin.

Test: fast/js/exception-linenums-in-html-3.html
Test: fast/js/missing-style-end-tag-js.html
Test: fast/tokenizer/missing-style-end-tag-1.html
Test: fast/tokenizer/missing-style-end-tag-2.html

  • khtml/html/htmlparser.cpp: (WebCore::HTMLParser::handleError): Add check for missing </style> tag and handle this condition if identified.
  • khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::parseTag): If parseSpecial() consumes the rest of the document looking for a </style> tag, reset the state of the tokenizer and retokenize with no special handling for <style>. The parser will handle the missing </style> tag in HTMLParser::handleError().
21:36 Changeset [13380] by darin

Reviewed by Darin.

Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5351:
SVG: Safari ignores <title> elements

Make SVGTitleElementImpl act the same as HTMLTitleElementImpl,
in the process setting the title on the right triggers.

  • ksvg2/svg/SVGTitleElementImpl.cpp: (SVGTitleElementImpl::SVGTitleElementImpl): (SVGTitleElementImpl::title): (SVGTitleElementImpl::closeRenderer): (SVGTitleElementImpl::insertedIntoDocument): (SVGTitleElementImpl::removedFromDocument): (SVGTitleElementImpl::childrenChanged):
  • ksvg2/svg/SVGTitleElementImpl.h:
21:28 Changeset [13379] by darin

Reviewed by Darin.

  • fast/replaced/img-1x1-expected.checksum: Added.
  • fast/replaced/img-1x1-expected.txt: Added.
  • fast/replaced/img-1x1.html: Added.
  • fast/replaced/img-1x1-expected.png: Added.
21:25 Changeset [13378] by darin
  • updated test results for tests affected by Hyatt's latest table fix
  • tables/mozilla/bugs/bug44505-expected.txt:
  • tables/mozilla_expected_failures/bugs/bug106966-expected.checksum:
  • tables/mozilla_expected_failures/bugs/bug106966-expected.png:
  • tables/mozilla_expected_failures/bugs/bug106966-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_caption_hidden_table-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_table-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tbody-expected.txt:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.checksum:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.png:
  • tables/mozilla_expected_failures/marvin/table_overflow_hidden_tr-expected.txt:
20:49 Changeset [13377] by darin
  • another try at fixing Windows build
  • WebCore.vcproj/WebCore/WebCore.vcproj: Added EventTargetNodeImpl.h and .cpp.
20:34 Changeset [13376] by darin
  • another try at fixing Windows build
  • bridge/win/FrameWin.cpp: (WebCore::FrameWin::keyPress): Added EventTargetNodeCast.
20:21 Changeset [13375] by darin
  • try to fix Windows build
  • bridge/win/FrameWin.h: Remove KURL parameter.
  • bridge/win/FrameWin.cpp: (WebCore::FrameWin::urlSelected): Ditto.
  • platform/win/TemporaryLinkStubs.cpp: (BrowserExtensionWin::canRunModal): Ditto.
20:19 Changeset [13374] by darin

Reviewed by Darin.

  • fix leaks caused by the fix for Bugzilla bug 3560
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::destroyLeftoverChildren): Text renderers with first-letter pseudo style are children of an existing first-letter inline that has been updated, and should be destroyed.
20:12 Changeset [13373] by darin

A couple more renaming refinements.

01:39 Changeset [13372] by hyatt

Fix for bug 7841, tables, table rows, and table row groups should
all support overflow:hidden.

Reviewed by eric

  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle):
  • rendering/RenderTable.cpp: (WebCore::RenderTable::layout): (WebCore::RenderTable::paint): (WebCore::RenderTable::getOverflowClipRect):
  • rendering/RenderTable.h:
  • rendering/RenderTableCol.h: (WebCore::RenderTableCol::requiresLayer):
  • rendering/RenderTableRow.h: (WebCore::RenderTableRow::requiresLayer):
  • rendering/render_box.cpp: (WebCore::RenderBox::setStyle):
  • rendering/render_layer.cpp: (WebCore::RenderLayer::paintLayer):

03/17/06:

19:22 Changeset [13371] by aliceli1

Reviewed by Hyatt.

dynamically"

  • khtml/html/html_headimpl.cpp: (WebCore::HTMLLinkElementImpl::process):
  • dynamically added link-tags for stylesheets were messing up the counting of pending stylesheets. If a head link element specifies a new stylesheet but the previously specified stylesheet is still loading, tell the document that stylesheets are loaded so that there are no remaining requests for it to be loaded.
19:19 Changeset [13370] by aliceli1

Reviewed by Justin.

  • fast/dom/HTMLHeadElement/head-link-style-href-check-expected.checksum: Added.
  • fast/dom/HTMLHeadElement/head-link-style-href-check-expected.png: Added.
  • fast/dom/HTMLHeadElement/head-link-style-href-check-expected.txt: Added.
  • fast/dom/HTMLHeadElement/head-link-style-href-check.html: Added.
18:04 Changeset [13369] by ggaren

LayoutTests:

Reviewed by Darin.

  • fast/dom/prototype-chain-expected.txt: Updated to reflect new prototype chain.

WebCore:

Reviewed by Darin.

  • Fixed some crashes in event dispatch and settled the question of when getDocument() can return NULL, removing superfluous NULL checks.

I promise to check in a test case soon, but I need to land this before
the global rename happens, and I left the test file on my other machine.

Here's what I did:

(1) Removed NULL checks for getDocument() in cases where we know it
should not return NULL (which turned out to be all but one). Replaced
with ASSERT inside getDocument(). Tested to ensure there was no
regression @ albertsons.com.

(2) Added the EventTargetNode class, which represents Nodes that
implement the DOM EventTarget interface. Discussed this design with
Maciej and Hyatt. The previous dsign -- assuming that all Nodes were
EventTargets -- made it possible to crash WebKit by, for example,
dispatching a mouse event to a documentType node that was not
associated with a document.

(3) Reflected (2) into the JS bindings and touched JSDOMCore.cpp to
force a re-build.

(4) Using classInfo checking, strengthened type constraints on
JavaScript method dispatch so that you can't finagle JavaScript into,
for example, invoking a document-dependent method belonging to a
node type that's guaranteed to have a document on a node type that may
not have one.

(5) Pushed some IE-specific JS bindings that depend on a node having a
document down from DOMNode to DOMElement. (An element always has a
document.) Tested that Firefox's behavior matched. Confirmed with MSDN.

(6) Updated Objc bindigns to throw an exception if you try to use
the event interface on a node that doesn't support it. Discussed this
design with Maciej and TimH.

(7) Consolidated repeated documentElement-finding code in the Position
class into the Position::documentElement() method. Did the same for
repeated top-level document finding and DocumentImpl::topDocument().


  • WebCore+SVG/KDOMHeaders.h:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSDOMCore.cpp:
  • bindings/objc/DOM.mm: (-[DOMNode addEventListener:::]): (-[DOMNode removeEventListener:::]): (-[DOMNode dispatchEvent:]): (-[DOMNode KJS::Bindings::]):
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::keyEvent): (WebCore::MacFrame::dispatchCPPEvent):
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]): (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]):
  • css/css_base.cpp: (WebCore::StyleBaseImpl::baseURL):
  • css/css_computedstyle.cpp: (WebCore::CSSComputedStyleDeclarationImpl::getPropertyCSSValue):
  • css/css_valueimpl.cpp: (WebCore::CSSMutableStyleDeclarationImpl::removeProperty): (WebCore::CSSMutableStyleDeclarationImpl::setProperty):
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • dom/Attr.idl:
  • dom/CharacterData.idl:
  • dom/CharacterDataImpl.cpp: (WebCore::CharacterDataImpl::CharacterDataImpl): (WebCore::CharacterDataImpl::rendererIsNeeded): (WebCore::CharacterDataImpl::dump):
  • dom/CharacterDataImpl.h:
  • dom/ContainerNodeImpl.cpp: (WebCore::ContainerNodeImpl::ContainerNodeImpl): (WebCore::ContainerNodeImpl::removeChild): (WebCore::ContainerNodeImpl::attach): (WebCore::ContainerNodeImpl::detach): (WebCore::ContainerNodeImpl::insertedIntoDocument): (WebCore::ContainerNodeImpl::removedFromDocument): (WebCore::ContainerNodeImpl::insertedIntoTree): (WebCore::ContainerNodeImpl::removedFromTree): (WebCore::ContainerNodeImpl::setFocus): (WebCore::ContainerNodeImpl::setActive): (WebCore::ContainerNodeImpl::setHovered): (WebCore::dispatchChildInsertionEvents): (WebCore::dispatchChildRemovalEvents):
  • dom/ContainerNodeImpl.h:
  • dom/DOMImplementationImpl.cpp: (WebCore::DOMImplementationImpl::createDocument):
  • dom/DocumentImpl.cpp: (WebCore::DocumentImpl::removeAllEventListenersFromAllNodes): (WebCore::DocumentImpl::removeAllDisconnectedNodeEventListeners): (WebCore::DocumentImpl::getAccObjectCache): (WebCore::DocumentImpl::setFocusNode): (WebCore::DocumentImpl::topDocument):
  • dom/Element.idl:
  • dom/EventTargetNodeImpl.cpp: Added. (WebCore::EventTargetNodeImpl::EventTargetNodeImpl): (WebCore::EventTargetNodeImpl::~EventTargetNodeImpl): (WebCore::EventTargetNodeImpl::insertedIntoDocument): (WebCore::EventTargetNodeImpl::removedFromDocument): (WebCore::EventTargetNodeImpl::addEventListener): (WebCore::EventTargetNodeImpl::removeEventListener): (WebCore::EventTargetNodeImpl::removeAllEventListeners): (WebCore::EventTargetNodeImpl::handleLocalEvents): (WebCore::EventTargetNodeImpl::dispatchGenericEvent): (WebCore::EventTargetNodeImpl::dispatchEvent): (WebCore::EventTargetNodeImpl::dispatchSubtreeModifiedEvent): (WebCore::EventTargetNodeImpl::dispatchWindowEvent): (WebCore::EventTargetNodeImpl::dispatchUIEvent): (WebCore::EventTargetNodeImpl::dispatchKeyEvent): (WebCore::EventTargetNodeImpl::dispatchMouseEvent): (WebCore::EventTargetNodeImpl::dispatchSimulatedMouseEvent): (WebCore::EventTargetNodeImpl::dispatchWheelEvent): (WebCore::EventTargetNodeImpl::dispatchHTMLEvent): (WebCore::EventTargetNodeImpl::removeHTMLEventListener): (WebCore::EventTargetNodeImpl::setHTMLEventListener): (WebCore::EventTargetNodeImpl::getHTMLEventListener): (WebCore::EventTargetNodeImpl::disabled): (WebCore::EventTargetNodeImpl::defaultEventHandler): (WebCore::EventTargetNodeImpl::dump):
  • dom/EventTargetNodeImpl.h: Added. (WebCore::EventTargetNodeImpl::isEventTargetNode): (WebCore::EventTargetNodeImpl::preDispatchEventHandler): (WebCore::EventTargetNodeImpl::postDispatchEventHandler): (WebCore::EventTarget): (WebCore::forbidEventDispatch): (WebCore::allowEventDispatch): (WebCore::eventDispatchForbidden):
  • dom/NodeImpl.cpp: (WebCore::NodeImpl::NodeImpl): (WebCore::NodeImpl::~NodeImpl): (WebCore::NodeImpl::dump): (WebCore::NodeImpl::detach): (WebCore::NodeImpl::insertedIntoDocument): (WebCore::NodeImpl::removedFromDocument):
  • dom/NodeImpl.h: (WebCore::NodeImpl::isEventTargetNode): (WebCore::NodeImpl::isLink): (WebCore::NodeImpl::getDocument): (WebCore::NodeImpl::inDocument):
  • dom/dom2_eventsimpl.cpp: (WebCore::MouseRelatedEventImpl::receivedTarget):
  • dom/dom2_rangeimpl.cpp: (WebCore::RangeImpl::commonAncestorContainer):
  • dom/dom_elementimpl.cpp: (WebCore::inHTMLDocument): (WebCore::ElementImpl::focus): (WebCore::ElementImpl::blur): (WebCore::StyledElementImpl::parseMappedAttribute):
  • dom/dom_position.cpp: (WebCore::Position::documentElement):
  • dom/dom_position.h:
  • editing/ReplaceSelectionCommand.cpp: (WebCore::computeAndStoreNodeDesiredStyle):
  • editing/SelectionController.cpp: (WebCore::SelectionController::needsCaretRepaint):
  • editing/visible_units.cpp: (WebCore::previousBoundary): (WebCore::nextBoundary): (WebCore::previousLinePosition): (WebCore::nextLinePosition): (WebCore::startOfDocument): (WebCore::endOfDocument):
  • khtml/ecma/kjs_dom.cpp: (KJS::DOMNode::mark): (KJS::DOMNode::getValueProperty): (KJS::DOMNode::putValueProperty): (KJS::DOMNodeProtoFunc::callAsFunction): (KJS::DOMEventTargetNode::DOMEventTargetNode): (KJS::DOMEventTargetNode::getOwnPropertySlot): (KJS::DOMEventTargetNode::getValueProperty): (KJS::DOMEventTargetNode::put): (KJS::DOMEventTargetNode::putValueProperty): (KJS::DOMEventTargetNode::setListener): (KJS::DOMEventTargetNode::getListener): (KJS::DOMEventTargetNode::pushEventHandlerScope): (KJS::DOMEventTargetNodeProtoFunc::callAsFunction): (KJS::): (KJS::DOMDocument::DOMDocument): (KJS::DOMDocument::getOwnPropertySlot): (KJS::DOMDocument::put): (KJS::DOMDocument::putValueProperty): (KJS::DOMDocumentProtoFunc::callAsFunction): (KJS::DOMElement::DOMElement): (KJS::DOMElement::getValueProperty): (KJS::DOMElement::put): (KJS::DOMElement::putValueProperty): (KJS::DOMElement::getOwnPropertySlot): (KJS::DOMElementProtoFunc::callAsFunction): (KJS::checkNodeSecurity):
  • khtml/ecma/kjs_dom.h: (KJS::DOMNode::): (KJS::DOMEventTargetNode::): (KJS::DOMElement::):
  • khtml/ecma/kjs_events.cpp: (KJS::JSLazyEventListener::parseCode): (KJS::getNodeEventListener):
  • khtml/ecma/kjs_html.cpp: (KJS::HTMLElement::bodyGetter): (KJS::HTMLElement::anchorGetter): (KJS::HTMLElement::getValueProperty): (KJS::HTMLElement::bodySetter):
  • khtml/ecma/kjs_views.cpp: (KJS::DOMAbstractViewProtoFunc::callAsFunction):
  • khtml/html/HTMLFormElementImpl.cpp: (WebCore::HTMLFormElementImpl::registerFormElement): (WebCore::HTMLFormElementImpl::removeFormElement):
  • khtml/html/HTMLGenericFormElementImpl.cpp: (WebCore::HTMLGenericFormElementImpl::insertedIntoTree):
  • khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::~HTMLInputElementImpl): (WebCore::HTMLInputElementImpl::focus):
  • khtml/html/HTMLOptionElementImpl.cpp: (WebCore::HTMLOptionElementImpl::text):
  • khtml/html/HTMLSelectElementImpl.cpp: (WebCore::HTMLSelectElementImpl::~HTMLSelectElementImpl):
  • khtml/html/HTMLTextAreaElementImpl.cpp: (WebCore::HTMLTextAreaElementImpl::~HTMLTextAreaElementImpl):
  • khtml/html/html_baseimpl.cpp: (WebCore::HTMLBodyElementImpl::insertedIntoDocument): (WebCore::HTMLFrameElementImpl::isURLAllowed): (WebCore::HTMLFrameElementImpl::openURL): (WebCore::HTMLFrameElementImpl::frameWidth): (WebCore::HTMLFrameElementImpl::frameHeight):
  • khtml/html/html_imageimpl.cpp: (WebCore::HTMLImageLoader::~HTMLImageLoader): (WebCore::HTMLImageLoader::updateFromElement): (WebCore::HTMLImageLoader::notifyFinished): (WebCore::HTMLImageElementImpl::width): (WebCore::HTMLImageElementImpl::height): (WebCore::HTMLMapElementImpl::~HTMLMapElementImpl):
  • khtml/html/html_inlineimpl.cpp: (WebCore::HTMLAnchorElementImpl::defaultEventHandler):
  • khtml/html/htmltokenizer.cpp: (WebCore::HTMLTokenizer::notifyFinished):
  • ksvg2/svg/SVGAnimateColorElementImpl.cpp: (SVGAnimateColorElementImpl::handleTimerEvent):
  • ksvg2/svg/SVGAnimateElementImpl.cpp: (SVGAnimateElementImpl::handleTimerEvent):
  • ksvg2/svg/SVGAnimateTransformElementImpl.cpp: (SVGAnimateTransformElementImpl::handleTimerEvent):
  • ksvg2/svg/SVGAnimationElementImpl.cpp: (SVGAnimationElementImpl::closeRenderer):
  • ksvg2/svg/SVGDOMImplementationImpl.cpp:
  • ksvg2/svg/SVGDocumentImpl.cpp: (WebCore::SVGDocumentImpl::dispatchRecursiveEvent):
  • ksvg2/svg/SVGDocumentImpl.h:
  • ksvg2/svg/SVGImageElementImpl.cpp:
  • ksvg2/svg/SVGSetElementImpl.cpp: (SVGSetElementImpl::handleTimerEvent):
  • kwq/KWQAccObject.mm: (-[KWQAccObject mouseButtonListener]): (-[KWQAccObject accessibilityPerformAction:]):
  • kwq/KWQTextArea.mm: (-[KWQTextAreaTextView dispatchHTMLEvent:]):
  • page/Frame.cpp: (WebCore::dispatchKHTMLEditableContentChanged):
  • page/FrameView.cpp: (WebCore::FrameView::dispatchDragEvent): (WebCore::FrameView::dispatchMouseEvent): (WebCore::FrameView::viewportWheelEvent):
  • rendering/render_layer.cpp: (WebCore::RenderLayer::scrollToOffset):
  • rendering/render_object.cpp: (WebCore::RenderObject::shouldSelect): (WebCore::RenderObject::backslashAsCurrencySymbol):
  • rendering/render_replaced.cpp: (WebCore::RenderWidget::sendConsumedMouseUp):
17:24 Changeset [13368] by bdakin

Reviewed by hyatt

This test should actually be in the failures folder. Moving.

17:05 Changeset [13367] by hyatt

Update the table opacity test case to reflect the now-correct results.

17:01 Changeset [13366] by hyatt

Fix for 7837, make opacity work with table rows. Make transparent backgrounds
stack properly in cells (so that the layers behind can show through like they
should).

Reviewed by beth

  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::requiresLayer): (WebCore::RenderTableCell::paintBackgroundsBehindCell): (WebCore::RenderTableCell::paintBoxDecorations):
  • rendering/RenderTableCell.h:
  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::paint):
  • rendering/RenderTableRow.h: (WebCore::RenderTableRow::requiresLayer):
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::paint):
  • rendering/render_layer.cpp: (WebCore::RenderLayer::updateLayerPosition): (WebCore::RenderLayer::isTransparent): (WebCore::RenderLayer::transparentAncestor): (WebCore::RenderLayer::beginTransparencyLayers): (WebCore::RenderLayer::paintLayer): (WebCore::RenderLayer::absoluteBoundingBox):
  • rendering/render_object.cpp: (WebCore::RenderObject::requiresLayer):
  • rendering/render_object.h: (WebCore::RenderObject::isTransparent): (WebCore::RenderObject::opacity):
14:03 Changeset [13365] by mjs

Reviewed by Darin.


  • kjs/ustring.cpp: (KJS::UString::from): Use "NaN" for all NaN values, regardless of sign.
13:58 Changeset [13364] by mjs

Reviewed by Adele.

  • clean up ResourceRequest to be closer to a proper request interface
  • page/ResourceRequest.h: folded URL into ResourceRequest, other cleanup (WebCore::ResourceRequest::ResourceRequest): Add new explicit constructor that takes a KURL. (WebCore::ResourceRequest::url): getter for KURL (WebCore::ResourceRequest::setURL): corresponding setter (WebCore::ResourceRequest::referrer): new getter for referrer, instead of storing it in m_metaData (it was the only remaining real use of it) (WebCore::ResourceRequest::setReferrer): corresponding setter
  • bridge/BrowserExtension.h:
  • removed unused openURLRequest and openURLNotify methods
  • folded KURL parameter into ResourceRequest
  • bridge/mac/BrowserExtensionMac.h: remove KURL args from methods that also take a ResourceRequest
  • bridge/mac/BrowserExtensionMac.mm: (WebCore::BrowserExtensionMac::createNewWindow): adjust for ResourceRequest changes.
  • bridge/mac/MacFrame.h: remove KURL args from methods that also take a ResourceRequest
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::openURLRequest): adjust for ResourceRequest changes (WebCore::MacFrame::submitForm): ditto (WebCore::MacFrame::urlSelected): ditto
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): adjust for ResourceRequest changes
  • bridge/win/BrowserExtensionWin.h:
  • khtml/ecma/kjs_window.cpp: (KJS::createNewWindow): adjust for ResourceRequest changes (KJS::WindowFunc::callAsFunction): ditto
  • page/Frame.cpp: (WebCore::Frame::didOpenURL): adjust for ResourceRequest changes (WebCore::Frame::receivedFirstData): ditto (WebCore::Frame::begin): ditto (WebCore::Frame::completeURL): ditto (WebCore::Frame::changeLocation): ditto (WebCore::Frame::urlSelected): ditto (WebCore::Frame::requestFrame): ditto (WebCore::Frame::submitForm): ditto
  • page/Frame.h:
  • platform/win/TemporaryLinkStubs.cpp: (BrowserExtensionWin::createNewWindow): ditto
12:32 Changeset [13363] by bdakin

Reviewed by Darin, landed by Beth.

12:11 Changeset [13362] by sullivan

Reviewed by Beth Dakin


  • fixed <rdar://problem/4239051> Sometimes "Copy Link" in Safari results in a URL on the pasteboard with no usable "title"
  • History/WebURLsWithTitles.m: (+[WebURLsWithTitles writeURLs:andTitles:toPasteboard:]): trim whitespace from titles that are put on pasteboard. This leaves an empty string for the title in cases where there's no displayed text, like an image in an <a> element that happens to have whitespace in the source, e.g. <a href="foo"> <img whatever></a>
12:02 Changeset [13361] by adele

Updated results for background color change.

  • fast/forms/input-appearance-focus-expected.txt:
  • fast/forms/input-appearance-minWidth-expected.txt:
  • fast/forms/input-appearance-selection-expected.txt:
  • fast/forms/input-appearance-visibility-expected.txt:
  • fast/forms/input-appearance-width-expected.txt:
  • fast/forms/input-baseline-expected.txt:
11:42 Changeset [13360] by bdakin

Reviewed by Geoff

A few more mozilla table tests.

11:20 Changeset [13359] by adele

LayoutTests:

Reviewed by Tim Hatcher.

  • fast/forms/input-appearance-default-bkcolor-expected.checksum: Added.
  • fast/forms/input-appearance-default-bkcolor-expected.png: Added.
  • fast/forms/input-appearance-default-bkcolor-expected.txt: Added.
  • fast/forms/input-appearance-default-bkcolor.html: Added.

WebCore:

Reviewed by Tim H.

Make default backgrounds for new text fields white
instead of transparent. This will move to html4.css
when we flip the switch.

Test added:

  • fast/forms/input-appearance-default-bkcolor.html
  • rendering/render_theme_mac.mm: (WebCore::RenderThemeMac::adjustTextFieldStyle):
11:06 Changeset [13358] by hyatt

Make table sections and table captions support opacity.

Reviewed by darin

Covered by some of the new Mozilla table tests.

  • rendering/RenderTable.cpp: (WebCore::RenderTable::paint):
10:39 Changeset [13357] by hyatt

Fix table test that now passes.

09:47 Changeset [13356] by bdakin

Reviewed by Maciej, landed by Beth.

fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3560
page with use of first-letter crashes reproducibly in
RenderObject::renderArena()

09:42 Changeset [13355] by darin
  • missing bit of my check-in yesterday

Maciej moved setWindowFrame for me, but I also had removed
setWindowContentRect.

  • WebCoreSupport/WebFrameBridge.m: Removed unused setWindowContextRect and windowContentRect methods.
06:06 Changeset [13354] by eseidel

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

  • libWebKitSystemInterface.a: commit a universal binary.
04:36 Changeset [13353] by andersca

2006-03-17 Anders Carlsson <andersca@mac.com>

Reviewed by Eric.


  • Scripts/install-win-extras: Fetch "Program Files" location from the environment.
03:06 Changeset [13352] by adele

LayoutTests:

Reviewed by Eric.

Updating test results for:
http://bugzilla.opendarwin.org/show_bug.cgi?id=7798
New text fields are much wider than they should be for a specified size

  • fast/forms/input-appearance-bkcolor-expected.checksum:
  • fast/forms/input-appearance-bkcolor-expected.png:
  • fast/forms/input-appearance-bkcolor-expected.txt:
  • fast/forms/input-appearance-focus-expected.checksum:
  • fast/forms/input-appearance-focus-expected.png:
  • fast/forms/input-appearance-focus-expected.txt:
  • fast/forms/input-appearance-minWidth-expected.checksum:
  • fast/forms/input-appearance-minWidth-expected.png:
  • fast/forms/input-appearance-minWidth-expected.txt:
  • fast/forms/input-appearance-selection-expected.checksum:
  • fast/forms/input-appearance-selection-expected.png:
  • fast/forms/input-appearance-selection-expected.txt:
  • fast/forms/input-appearance-visibility-expected.checksum:
  • fast/forms/input-appearance-visibility-expected.png:
  • fast/forms/input-appearance-visibility-expected.txt:
  • fast/forms/input-appearance-width-expected.checksum:
  • fast/forms/input-appearance-width-expected.png:
  • fast/forms/input-appearance-width-expected.txt:
  • fast/forms/input-baseline-expected.checksum:
  • fast/forms/input-baseline-expected.png:
  • fast/forms/input-baseline-expected.txt:

WebCore:

Reviewed by Eric.

I changed the character we use to calculate the width from "w" back to "0",
which matches our old behavior. The original change was intentional, to try
to better match other browsers, but "w" is a little too wide. For now, lets
go back to the old behavior.

I also set the minWidth = maxWidth. We were trying to match a WinIE quirk,
but that caused some odd behavior with growth of the text field in table cells.

  • rendering/RenderTextField.cpp: (WebCore::RenderTextField::calcMinMaxWidth):
03:00 Changeset [13351] by eseidel

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

Reviewed by ggaren.

Fix Spinneret to pass Events as const & not as pointers.

  • Spinneret/Spinneret/WebView.cpp: (WebKit::WebView::mouseMoved): (WebKit::WebView::mouseDown): (WebKit::WebView::mouseUp): (WebKit::WebView::mouseDoubleClick): (WebKit::WebView::keyPress):
02:47 Changeset [13350] by eseidel

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

Reviewed by adele.

Fix win32 build.
Add PageWin class.
Add previously forgotten KeyEventWin class.
Pass MouseEvent() instead of 0 in a couple places to make compiler happy.

  • WebCore.vcproj/WebCore/WebCore.vcproj:
  • bridge/win/BrowserExtensionWin.h:
  • bridge/win/FrameWin.cpp: (WebCore::FrameWin::urlSelected): (WebCore::FrameWin::keyPress):
  • bridge/win/FrameWin.h:
  • bridge/win/PageWin.cpp: Added. (WebCore::rootWindowForFrame): (WebCore::Page::windowRect): (WebCore::Page::setWindowRect):
  • page/FrameView.cpp: (WebCore::FrameView::updateDragAndDrop): (WebCore::FrameView::hoverTimerFired):
  • page/Page.h: (WebCore::Page::mainFrame):
  • platform/win/KeyEventWin.cpp: Added. (WebCore::KeyEvent::KeyEvent):
  • platform/win/TemporaryLinkStubs.cpp: (WebCore::findNextWordFromIndex): (FrameWin::passMouseDownEventToWidget): (FrameWin::scheduleClose): (BrowserExtensionWin::createNewWindow): (WebCore::findWordBoundary): (FrameWin::registerCommandForUndo): (FrameWin::markMisspellingsInAdjacentWords): (FrameWin::respondToChangedContents):
02:40 Changeset [13349] by eseidel

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

Reviewed by justing.

Add support for basic HTML editing.

  • Spinneret/Spinneret/WebView.cpp: (WebKit::WebView::WebView): (WebKit::WebView::keyPress):
02:28 Changeset [13348] by adele
  • WebKitSystemInterface.h: Added WKDrawBezeledTextFieldCell()
  • libWebKitSystemInterface.a: ditto
02:16 Changeset [13347] by hyatt

Fix pixel test regression in fast/table/overflowHidden.html. There was
a borderTopExtra error made in the new boundingBox code for layers that
caused the bottom half of cells with opacity set to be clipped out.

Reviewed by andersca

  • rendering/render_layer.cpp: (WebCore::RenderLayer::absoluteBoundingBox):
01:50 Changeset [13346] by hyatt

Give table rows and sections accurate dimensions. Fix absolutePosition
to work for table cells properly. Add an absolutePositionForContent method
to make sure callers that want to deal with the content of a cell handle
the cell's extra space correctly.

Reviewed by darin

Existing layout tests cover this change.

  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge copyRenderNode:copier:]):
  • dom/ContainerNodeImpl.cpp: (WebCore::ContainerNodeImpl::getUpperLeftCorner): (WebCore::ContainerNodeImpl::getLowerRightCorner):
  • dom/NodeImpl.cpp: (WebCore::NodeImpl::getRect):
  • editing/SelectionController.cpp: (WebCore::SelectionController::layout): (WebCore::SelectionController::caretRect):
  • editing/visible_units.cpp: (WebCore::previousLinePosition): (WebCore::nextLinePosition):
  • khtml/html/HTMLInputElementImpl.cpp: (WebCore::HTMLInputElementImpl::defaultEventHandler):
  • kwq/KWQRenderTreeDebug.cpp: (operator<<):
  • rendering/RenderBlock.cpp: (WebCore::RenderBlock::selectionGapRects): (WebCore::RenderBlock::positionForCoordinates):
  • rendering/RenderContainer.cpp: (WebCore::RenderContainer::positionForCoordinates): (WebCore::RenderContainer::lineBoxRects):
  • rendering/RenderTableCell.cpp: (WebCore::RenderTableCell::computeAbsoluteRepaintRect): (WebCore::RenderTableCell::absolutePosition):
  • rendering/RenderTableRow.cpp: (WebCore::RenderTableRow::addChild): (WebCore::RenderTableRow::getAbsoluteRepaintRect): (WebCore::RenderTableRow::nodeAtPoint):
  • rendering/RenderTableRow.h:
  • rendering/RenderTableSection.cpp: (WebCore::RenderTableSection::ensureRows): (WebCore::RenderTableSection::addCell): (WebCore::RenderTableSection::layoutRows): (WebCore::RenderTableSection::recalcCells): (WebCore::RenderTableSection::nodeAtPoint):
  • rendering/RenderTableSection.h:
  • rendering/RenderText.cpp: (WebCore::RenderText::lineBoxRects): (WebCore::RenderText::positionForCoordinates): (WebCore::RenderText::caretRect): (WebCore::RenderText::posOfChar): (WebCore::RenderText::selectionRect):
  • rendering/render_box.cpp: (WebCore::RenderBox::absolutePosition): (WebCore::RenderBox::caretRect):
  • rendering/render_br.cpp: (WebCore::RenderBR::caretRect):
  • rendering/render_canvas.h:
  • rendering/render_flow.cpp: (WebCore::RenderFlow::caretRect):
  • rendering/render_frames.cpp: (WebCore::RenderPart::updateWidgetPosition):
  • rendering/render_layer.cpp: (WebCore::RenderLayer::updateLayerPosition):
  • rendering/render_object.cpp: (WebCore::RenderObject::absoluteRects): (WebCore::RenderObject::absoluteBoundingBoxRect): (WebCore::RenderObject::absolutePosition):
  • rendering/render_object.h: (WebCore::RenderObject::absolutePositionForContent): (WebCore::RenderObject::offsetHeight):
  • rendering/render_replaced.cpp: (WebCore::RenderWidget::updateWidgetPosition):
01:13 Changeset [13345] by eseidel

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

Rubber-stamped by ggaren.

Break DumpRenderTree.m up into several files to make the code more readable.

  • DumpRenderTree/DumpRenderTree.h: Added.
  • DumpRenderTree/DumpRenderTree.m: (doneLoading): new accessor function for "done" global.
  • DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
  • DumpRenderTree/DumpRenderTreeDraggingInfo.h: Added.
  • DumpRenderTree/DumpRenderTreeDraggingInfo.m: Added.
  • DumpRenderTree/EditingDelegate.h: Added.
  • DumpRenderTree/EditingDelegate.m: Added. (-[EditingDelegate webViewDidChangeSelection:]):
  • DumpRenderTree/EventSendingController.h: Added.
  • DumpRenderTree/EventSendingController.m: Added.
01:10 Changeset [13344] by adele

LayoutTests:

Reviewed by Hyatt.

Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=7797
Can't set background color on new text fields

  • fast/forms/input-appearance-bkcolor-expected.checksum: Added.
  • fast/forms/input-appearance-bkcolor-expected.png: Added.
  • fast/forms/input-appearance-bkcolor-expected.txt: Added.
  • fast/forms/input-appearance-bkcolor.html: Added.
  • fast/forms/resources
  • fast/forms/resources/apple.gif

WebCore:

Reviewed by Hyatt.

WebCore part of fix for:
http://bugzilla.opendarwin.org/show_bug.cgi?id=7797
Can't set background color on new text fields

Bezeled NSTextFieldCells always draw a background, so instead we'll use a new
WebKitSystemInterface function to just draw the border of the cell.

Since the theme is drawing the border and the engine is drawing the background
(which is different from the other form controls), we have to make sure we let the
theme paint the border after the engine paints the background.

  • platform/mac/WebCoreGraphicsBridge.h:
  • platform/mac/WebCoreGraphicsBridge.m: (-[WebCoreGraphicsBridge drawBezeledTextFieldCell:enabled:]):
  • rendering/render_box.cpp: (WebCore::RenderBox::paintBoxDecorations):
  • rendering/render_theme.cpp: (WebCore::RenderTheme::paint): (WebCore::RenderTheme::paintBorder): (WebCore::RenderTheme::shouldPaintBorder):
  • rendering/render_theme.h:
  • rendering/render_theme_mac.mm: (WebCore::RenderThemeMac::paintTextField): (WebCore::RenderThemeMac::setTextFieldCellState):

WebKit:

Reviewed by Hyatt.

WebKit part of fix for:
http://bugzilla.opendarwin.org/show_bug.cgi?id=7797
Can't set background color on new text fields

Added function to draw bezeled text field without drawing background.

  • WebCoreSupport/WebGraphicsBridge.m: (-[WebGraphicsBridge drawBezeledTextFieldCell:enabled:]): Added.

03/16/06:

23:45 Changeset [13343] by mjs

Reviewed by Eric.


  • move setWindowFrame / windowFrame to WebPageBridge to fix build
  • WebCoreSupport/WebFrameBridge.m:
  • WebCoreSupport/WebPageBridge.m: (-[WebPageBridge setWindowFrame:]): (-[WebPageBridge windowFrame]):
16:19 Changeset [13342] by darin

Reviewed by Eric.

  • removed KWQWindowWidget
  • changed most event handling to use references instead of pointers
  • chagned PageMac to no longer be a subclass of Page

Yes, I know there's no detail in this ChangeLog entry.
No, I don't plan to make a habit of doing things this way.
Yes, this will probably break the Windows build again.

  • WebCore.xcodeproj/project.pbxproj:
  • bridge/mac/BrowserExtensionMac.mm: (WebCore::BrowserExtensionMac::createNewWindow):
  • bridge/mac/FrameViewMac.mm:
  • bridge/mac/MacFrame.h:
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::MacFrame): (WebCore::MacFrame::~MacFrame): (WebCore::MacFrame::wheelEvent): (WebCore::MacFrame::keyEvent): (WebCore::MacFrame::khtmlMousePressEvent): (WebCore::MacFrame::khtmlMouseMoveEvent): (WebCore::MacFrame::khtmlMouseReleaseEvent): (WebCore::MacFrame::mouseDown): (WebCore::MacFrame::mouseDragged): (WebCore::MacFrame::mouseUp): (WebCore::MacFrame::mouseMoved): (WebCore::MacFrame::sendContextMenuEvent): (WebCore::MacFrame::setBridge): (WebCore::MacFrame::dragSourceMovedTo): (WebCore::MacFrame::dragSourceEndedAt): (WebCore::MacFrame::dispatchDragSrcEvent):
  • bridge/mac/PageMac.h: Removed.
  • bridge/mac/PageMac.mm: Added. (WebCore::Page::Page): (WebCore::Page::windowRect): (WebCore::Page::setWindowRect):
  • bridge/mac/WebCoreFrameBridge.h:
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge page]): (-[WebCoreFrameBridge initializeSettings:]): (globalPoint): (createMouseEventFromDraggingInfo): (-[WebCoreFrameBridge dragOperationForDraggingInfo:]): (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]): (-[WebCoreFrameBridge concludeDragForDraggingInfo:]): (-[WebCoreFrameBridge dragSourceMovedTo:]): (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
  • bridge/mac/WebCoreFrameNamespaces.mm: (WebCore::):
  • bridge/mac/WebCorePageBridge.h:
  • bridge/mac/WebCorePageBridge.mm: (-[WebCorePageBridge init]):
  • dom/DocumentImpl.cpp: (WebCore::DocumentImpl::prepareMouseEvent): (WebCore::DocumentImpl::defaultEventHandler):
  • dom/DocumentImpl.h:
  • dom/NodeImpl.cpp: (WebCore::NodeImpl::dispatchMouseEvent): (WebCore::NodeImpl::dispatchKeyEvent): (WebCore::NodeImpl::dispatchWheelEvent):
  • dom/NodeImpl.h:
  • dom/dom2_eventsimpl.cpp: (WebCore::KeyboardEventImpl::KeyboardEventImpl):
  • dom/dom2_eventsimpl.h: (WebCore::KeyboardEventImpl::keyEvent):
  • khtml/ecma/kjs_window.cpp: (KJS::Window::getValueProperty): (KJS::WindowFunc::callAsFunction):
  • khtml/html/html_inlineimpl.cpp: (WebCore::HTMLAnchorElementImpl::defaultEventHandler):
  • ksvg2/svg/SVGDocumentImpl.cpp:
  • ksvg2/svg/SVGDocumentImpl.h:
  • kwq/KWQWindowWidget.h:
  • kwq/KWQWindowWidget.mm: Removed.
  • page/Frame.cpp: (WebCore::Frame::selectClosestWordFromMouseEvent): (WebCore::Frame::handleMousePressEventDoubleClick): (WebCore::Frame::handleMousePressEventTripleClick): (WebCore::Frame::handleMousePressEventSingleClick): (WebCore::Frame::khtmlMousePressEvent): (WebCore::Frame::handleMouseMoveEventSelection): (WebCore::Frame::khtmlMouseMoveEvent): (WebCore::Frame::khtmlMouseReleaseEvent): (WebCore::Frame::khtmlMouseDoubleClickEvent): (WebCore::Frame::passWidgetMouseDownEventToWidget):
  • page/Frame.h:
  • page/FrameView.cpp: (WebCore::FrameView::viewportMousePressEvent): (WebCore::FrameView::viewportMouseDoubleClickEvent): (WebCore::FrameView::viewportMouseMoveEvent): (WebCore::FrameView::viewportMouseReleaseEvent): (WebCore::FrameView::dispatchDragEvent): (WebCore::FrameView::updateDragAndDrop): (WebCore::FrameView::cancelDragAndDrop): (WebCore::FrameView::performDragAndDrop): (WebCore::FrameView::dispatchMouseEvent): (WebCore::FrameView::viewportWheelEvent):
  • page/FrameView.h:
  • page/MouseEventWithHitTestResults.h: (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults): (WebCore::MouseEventWithHitTestResults::event):
  • page/Page.cpp: (WebCore::Page::init):
  • page/Page.h: (WebCore::Page::bridge):
  • platform/KeyEvent.h: (WebCore::KeyEvent::isAutoRepeat):
  • platform/MouseEvent.h: (WebCore::MouseEvent::MouseEvent):
  • platform/mac/KeyEventMac.mm: (WebCore::KeyEvent::KeyEvent):
  • platform/win/TemporaryLinkStubs.cpp: (FrameView::isFrameView):
  • rendering/render_form.cpp: (WebCore::RenderFormElement::clicked):
16:13 Changeset [13341] by bdakin

Rubber stamped by Geoff.

Another round of Mozilla table tests.

15:08 Changeset [13340] by eseidel

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

Reviewed by darin.

Add additional hackish Font, focusring and caret code.
http://bugzilla.opendarwin.org/show_bug.cgi?id=7803

  • WebCore.vcproj/WebCore/WebCore.vcproj:
  • WebCore.vcproj/WebCore/build-generated-files.sh:
  • bindings/js/JSCanvasRenderingContext2DBase.cpp:
  • bridge/win/FrameWin.cpp: (WebCore::FrameWin::keyPress):
  • bridge/win/FrameWin.h:
  • html/CanvasRenderingContext2D.h:
  • platform/IntSize.h:
  • platform/KeyEvent.h:
  • platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawArc): (WebCore::GraphicsContext::drawFocusRing):
  • platform/win/FontWin.cpp: (WebCore::hackishExtentForString): (WebCore::Font::floatWidth): (WebCore::convertRange): (WebCore::Font::drawText): (WebCore::Font::drawHighlightForText): (WebCore::Font::selectionRectForText): (WebCore::Font::checkSelectionPoint): (WebCore::Font::drawLineForText): (WebCore::Font::misspellingLineThickness):
  • platform/win/IntSizeWin.cpp: Added. (WebCore::IntSize::IntSize): (WebCore::IntSize::operator SIZE):
  • platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::visibleContentRect):
  • platform/win/TemporaryLinkStubs.cpp: (Widget::disableFlushDrawing): (GraphicsContext::GraphicsContext): (QListBox::setSelected): (QListBox::sizeForNumberOfLines): (QListBox::isSelected): (QListBox::appendItem): (QListBox::doneAppendingItems): (FrameWin::locationbarVisible): (FrameWin::canUndo): (FrameWin::mimeTypeForFileName): (FrameWin::issueTransposeCommand): (RenderCanvasImage::setNeedsImageUpdate): (FrameWin::shouldChangeSelection): (FrameWin::respondToChangedSelection): (FrameWin::clearRecordedFormValues): (FrameWin::recordFormValue): (BrowserExtensionWin::getHistoryLength): (Widget::setIsSelected): (GraphicsContext::selectedTextBackgroundColor): (GraphicsContext::addRoundedRectClip): (QScrollBar::QScrollBar): (QScrollBar::~QScrollBar): (QScrollBar::setSteps): (QScrollBar::scroll): (QScrollBar::setValue): (QScrollBar::setKnobProportion): (QListBox::QListBox): (QListBox::~QListBox): (QListBox::setSelectionMode): (QListBox::setFont):
  • rendering/render_canvasimage.h:
15:06 Changeset [13339] by mjs

Reviewed by Darin.


  • tweaks to my change to redo KJS::Node refcounting
  • kjs/nodes.cpp: (Node::ref): (Node::deref): (Node::refcount): (Node::clearNewNodes):
  • kjs/nodes.h:
15:05 Changeset [13338] by eseidel

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

Reviewed by darin.

Add resize, scroll event support.

  • Spinneret/Spinneret/WebView.cpp: (WebKit::WebView::mouseMoved): (WebKit::WebView::mouseDown): (WebKit::WebView::mouseUp): (WebKit::WebView::mouseDoubleClick): (WebKit::WebView::keyPress): (WebKit::WebViewWndProc):
  • Spinneret/Spinneret/WebView.h:
15:00 Changeset [13337] by mjs

Reviewed by Eric.

  • renamed URLArgs to ResourceRequest, split it into its own header
  • moved methods to get and set ResourceRequest to Frame
  • WebCore.xcodeproj/project.pbxproj:
  • bridge/BrowserExtension.h:
  • bridge/mac/BrowserExtensionMac.h:
  • bridge/mac/BrowserExtensionMac.mm: (WebCore::BrowserExtensionMac::openURLRequest): (WebCore::BrowserExtensionMac::createNewWindow):
  • bridge/mac/MacFrame.h:
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::openURLRequest): (WebCore::MacFrame::submitForm): (WebCore::MacFrame::urlSelected):
  • bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
  • khtml/ecma/kjs_window.cpp: (KJS::createNewWindow): (KJS::WindowFunc::callAsFunction):
  • page/Frame.cpp: (WebCore::Frame::didOpenURL): (WebCore::Frame::receivedFirstData): (WebCore::Frame::setResourceRequest): (WebCore::Frame::resourceRequest): (WebCore::Frame::begin): (WebCore::Frame::changeLocation): (WebCore::Frame::urlSelected): (WebCore::Frame::requestFrame): (WebCore::Frame::submitForm):
  • page/Frame.h:
  • page/FramePrivate.h:
  • page/ResourceRequest.h: Added. (WebCore::ResourceRequest::ResourceRequest): (WebCore::ResourceRequest::contentType): (WebCore::ResourceRequest::setContentType): (WebCore::ResourceRequest::doPost): (WebCore::ResourceRequest::setDoPost): (WebCore::ResourceRequest::lockHistory): (WebCore::ResourceRequest::setLockHistory): (WebCore::ResourceRequest::metaData):
13:24 Changeset [13336] by bdakin

Rubber stamped by Geoff.

Still adding more mozilla table tests.

10:54 Changeset [13335] by bdakin

Rubber stamped by Geoff.

Adding more mozilla table tests.

01:28 Changeset [13334] by darin
  • need to touch one more file to fix the build (Darn the lack of dependencies for autogenerated bindings!)
  • dom/Element.idl: Touch. (Really this time.)
01:21 Changeset [13333] by eseidel

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

Reviewed by darin.

Make build-webkit print correctly to stdout on windows.

  • Scripts/webkitdirs.pm: Fix to use devenv.com instead of devenv.exe
01:11 Changeset [13332] by darin
  • need to touch one more file to fix the build (Darn the lack of dependencies for autogenerated bindings!)
  • dom/Element.idl: Touch.
00:59 Changeset [13331] by eseidel

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

Reviewed by darin.

Pushed focus ring handling down into GraphicsContext.cpp

  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::mouseDown):
  • platform/GraphicsContext.cpp: (WebCore::GraphicsContext::initFocusRing): (WebCore::GraphicsContext::clearFocusRing): (WebCore::GraphicsContext::addFocusRingRect):
  • platform/GraphicsContext.h:
  • platform/mac/GraphicsContextMac.mm: (WebCore::GraphicsContextPrivate::GraphicsContextPrivate): (WebCore::GraphicsContextPrivate::~GraphicsContextPrivate): (WebCore::GraphicsContext::GraphicsContext): (WebCore::GraphicsContext::drawFocusRing):
  • rendering/render_flow.cpp: (WebCore::RenderFlow::addFocusRingRects):
  • rendering/render_object.cpp: (WebCore::RenderObject::addFocusRingRects):
00:54 Changeset [13330] by darin

Oops, these files were supposed to go in.

00:41 Changeset [13329] by darin

Reviewed by Hyatt.

  • WebCore.xcodeproj/project.pbxproj: Added new files. Changed bindings-generation code to work on the new html directory as well as the dom one.
  • bindings/js/JSCanvasRenderingContext2DBase.cpp: Added.
  • bindings/js/JSCanvasRenderingContext2DBase.h: Added.
  • bindings/js/JSDOMHTML.cpp: Added.
  • html: Added.
  • html/CanvasGradient.cpp: Added.
  • html/CanvasGradient.h: Added.
  • html/CanvasGradient.idl: Added.
  • html/CanvasPattern.cpp: Added.
  • html/CanvasPattern.h: Added.
  • html/CanvasPattern.idl: Added.
  • html/CanvasRenderingContext2D.cpp: Added.
  • html/CanvasRenderingContext2D.h: Added.
  • html/CanvasRenderingContext2D.idl: Added.
  • html/CanvasStyle.cpp: Added.
  • html/CanvasStyle.h: Added.
  • bindings/js/JSDOMCore.cpp: Touched so that it will recompile.
  • bindings/js/JSDOMEvents.cpp: Ditto.
  • dom/Attr.idl: Ditto.
  • dom/DOMImplementation.idl: Ditto.
  • dom/DocumentType.idl: Ditto.
  • dom/MutationEvent.idl: Ditto.
  • dom/ProcessingInstruction.idl: Ditto.
  • dom/Text.idl: Ditto.
  • khtml/ecma/kjs_binding.h: (KJS::toJS): Added. Template so that you can call toJS on a PassRefPtr as well as on a raw pointer.
  • bindings/scripts/CodeGeneratorJS.pm: Fixed handling of a class that has only a legacy parent, no conventional parents. Added JSCanvasRenderingContext2DBase as a legacy parent, and html as a legacy module. Added CanvasRenderingContext2D, CanvasGradient, and CanvasPattern to the "waht to include". Added a special case for strings beginning with Canvas to not add an "Impl" suffix. Made the generated impl() function be a const member function. Made m_mimpl be private instead of protected. Generate a toJS function for each class. Added flaot as a type. Generate String, not DOMString. Made the HashTable const.
  • bindings/scripts/IDLParser.pm: Fix a couple small things. I had started to try to make a missing semicolon trigger an error, but ended up giving up on that for now.
  • khtml/html/html_canvasimpl.h:
  • khtml/html/html_canvasimpl.cpp: (WebCore::HTMLCanvasElementImpl::HTMLCanvasElementImpl): Set m_2DContext to 0. (WebCore::HTMLCanvasElementImpl::~HTMLCanvasElementImpl): Call detachCanvas on m_2DContext, if any. (WebCore::HTMLCanvasElementImpl::detach): Call reset on m_2DContext, if any. (WebCore::HTMLCanvasElementImpl::getContext): Added. (WebCore::HTMLCanvasElementImpl::size): Added. (WebCore::HTMLCanvasElementImpl::createPlatformImage): Added.
  • platform/Image.h:
  • platform/Image.cpp: (WebCore::Image::compositeOperatorFromString): Changed to take a String instead of a const char*.
  • khtml/html/html_imageimpl.h:
  • khtml/html/html_imageimpl.cpp: (WebCore::HTMLMapElementImpl::areas): Tweaked formatting. Changed to use PassRefPtr.
  • bindings/objc/DOMInternal.mm: (-[WebScriptObject _initializeScriptDOMNodeImp]):
  • khtml/ecma/JSXMLHttpRequest.cpp: (KJS::JSXMLHttpRequest::getValueProperty):
  • khtml/ecma/XSLTProcessor.cpp: (KJS::XSLTProcessorProtoFunc::callAsFunction):
  • khtml/ecma/domparser.cpp: (KJS::DOMParserProtoFunc::callAsFunction):
  • khtml/ecma/kjs_css.cpp: (KJS::DOMCSSStyleDeclaration::getValueProperty): (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction): (KJS::toJS): (KJS::DOMStyleSheet::getValueProperty): (KJS::DOMStyleSheetList::indexGetter): (KJS::DOMStyleSheetList::nameGetter): (KJS::DOMStyleSheetListFunc::callAsFunction): (KJS::DOMCSSStyleSheet::getValueProperty): (KJS::DOMCSSRuleList::indexGetter): (KJS::DOMCSSRuleListFunc::callAsFunction): (KJS::DOMCSSRule::getValueProperty): (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction): (KJS::DOMCSSValueList::indexGetter): (KJS::DOMCSSValueListFunc::callAsFunction): (KJS::DOMRect::getValueProperty):
  • khtml/ecma/kjs_css.h:
  • khtml/ecma/kjs_dom.cpp: (KJS::DOMNode::getValueProperty): (KJS::DOMNodeProtoFunc::callAsFunction): (KJS::DOMNodeList::indexGetter): (KJS::DOMNodeList::nameGetter): (KJS::DOMNodeList::callAsFunction): (KJS::DOMNodeListFunc::callAsFunction): (KJS::DOMDocument::getValueProperty): (KJS::DOMDocumentProtoFunc::callAsFunction): (KJS::DOMNamedNodeMap::indexGetter): (KJS::DOMNamedNodeMap::nameGetter): (KJS::DOMNamedNodeMapProtoFunc::callAsFunction): (KJS::toJS): (KJS::DOMNamedNodesCollection::indexGetter):
  • khtml/ecma/kjs_dom.h:
  • khtml/ecma/kjs_events.cpp: (KJS::JSAbstractEventListener::handleEvent): (KJS::JSLazyEventListener::parseCode): (KJS::DOMEvent::getValueProperty): (KJS::toJS): (KJS::DOMUIEvent::getValueProperty): (KJS::DOMMouseEvent::getValueProperty):
  • khtml/ecma/kjs_events.h:
  • khtml/ecma/kjs_html.cpp: (KJS::HTMLDocFunction::callAsFunction): (KJS::HTMLDocument::namedItemGetter): (KJS::HTMLDocument::getValueProperty): (KJS::HTMLDocument::put): (KJS::HTMLDocument::putValueProperty): (KJS::HTMLElement::classInfo): (KJS::HTMLElement::formIndexGetter): (KJS::HTMLElement::selectIndexGetter): (KJS::HTMLElement::implementsCall): (KJS::HTMLElement::callAsFunction): (KJS::HTMLElement::linkGetter): (KJS::HTMLElement::isIndexGetter): (KJS::HTMLElement::styleGetter): (KJS::HTMLElement::selectGetter): (KJS::HTMLElement::optionGetter): (KJS::HTMLElement::inputGetter): (KJS::HTMLElement::textAreaGetter): (KJS::HTMLElement::buttonGetter): (KJS::HTMLElement::labelGetter): (KJS::HTMLElement::fieldSetGetter): (KJS::HTMLElement::legendGetter): (KJS::HTMLElement::objectGetter): (KJS::HTMLElement::tableGetter): (KJS::HTMLElement::frameGetter): (KJS::HTMLElement::iFrameGetter): (KJS::HTMLElement::getValueProperty): (KJS::HTMLElement::toString): (KJS::HTMLElement::pushEventHandlerScope): (KJS::toJS): (KJS::HTMLElementFunction::callAsFunction): (KJS::HTMLElement::put): (KJS::HTMLCollection::indexGetter): (KJS::HTMLCollection::callAsFunction): (KJS::HTMLCollection::getNamedItems): (KJS::HTMLCollectionProtoFunc::callAsFunction): (KJS::HTMLSelectCollection::put): (KJS::OptionConstructorImp::construct): (KJS::ImageConstructorImp::construct):
  • khtml/ecma/kjs_html.h:
  • khtml/ecma/kjs_proxy.cpp: (WebCore::KJSProxyImpl::evaluate):
  • khtml/ecma/kjs_range.cpp: (KJS::DOMRange::getValueProperty): (KJS::DOMRangeProtoFunc::callAsFunction): (KJS::toJS):
  • khtml/ecma/kjs_range.h:
  • khtml/ecma/kjs_traversal.cpp: (KJS::DOMNodeIterator::getValueProperty): (KJS::DOMNodeIteratorProtoFunc::callAsFunction): (KJS::toJS): (KJS::DOMTreeWalker::getValueProperty): (KJS::DOMTreeWalkerProtoFunc::callAsFunction): (KJS::JSNodeFilterCondition::acceptNode):
  • khtml/ecma/kjs_traversal.h:
  • khtml/ecma/kjs_views.cpp: (KJS::DOMAbstractView::getValueProperty): (KJS::DOMAbstractViewProtoFunc::callAsFunction): (KJS::toJS):
  • khtml/ecma/kjs_views.h:
  • khtml/ecma/kjs_window.cpp: (KJS::Window::getValueProperty): (KJS::Window::namedItemGetter): (KJS::Selection::getValueProperty): (KJS::SelectionFunc::callAsFunction): Rename uses and definitions of all the various converstions to JavaScript wrappers to the new common overloaded name: "toJS".
00:40 Changeset [13328] by darin

Reviewed by Maciej.

  • fixed Vector so that you can pass a reference to something in the vector to the append or insert functions
  • kxmlcore/Vector.h: (KXMLCore::Vector::expandCapacity): Added new overloads that take a pointer to adjust and return the adjusted value of the pointer. (KXMLCore::Vector::append): Pass a pointer when expanding the vector, and use it when adding the new element. Makes the case where the element moves when the vector is expanded work. (KXMLCore::Vector::insert): Ditto.
00:10 Changeset [13327] by eseidel

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

Reviewed by darin.

Push more of MacFrame down into Frame.
Add visibleContentRect method to ScrollView.

  • bridge/mac/MacFrame.h:
  • bridge/mac/MacFrame.mm: (WebCore::MacFrame::imageFromRect): (WebCore::MacFrame::setDisplaysWithFocusAttributes): (WebCore::MacFrame::bodyBackgroundColor):
  • bridge/mac/WebCoreFrameBridge.mm:
  • page/Frame.cpp: (WebCore::Frame::visibleSelectionRect): (WebCore::Frame::setDisplaysWithFocusAttributes):
  • page/Frame.h:
  • platform/ScrollView.h:
  • platform/mac/ScrollViewMac.mm: (WebCore::ScrollView::visibleWidth): (WebCore::ScrollView::visibleHeight): (WebCore::ScrollView::visibleContentRect): (WebCore::ScrollView::contentsWidth): (WebCore::ScrollView::contentsHeight): (WebCore::ScrollView::contentsX): (WebCore::ScrollView::contentsY): (WebCore::ScrollView::scrollXOffset): (WebCore::ScrollView::scrollYOffset): (WebCore::ScrollView::inWindow):

03/15/06:

23:15 Changeset [13326] by eseidel

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

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

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

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

Removed a few stray .cvsignore files that crept in.

18:00 Changeset [13321] by bdakin

Rubber stamped by Geoff.

even more mozilla table tests.

17:44 Changeset [13320] by ggaren

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

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

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

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

Rubber stamped by Geoff.

Even more Mozilla tables tests.

16:03 Changeset [13315] by bdakin

Rubber stamped by Geoff

More Mozilla table tests.

15:01 Changeset [13314] by bdakin

Rubber stamped by Geoff.

First round of committing Mozilla table tests to our tree.

14:46 Changeset [13313] by aliceli1

forgot to change the date

14:28 Changeset [13312] by eseidel

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

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

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

13:29 Changeset [13309] by ggaren

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

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

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

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

Update information about when a bug was fixed.

02:21 Changeset [13304] by mjs

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

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

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.
Note: See TracTimeline for information about the timeline view.