1. 16 Jan, 2009 2 commits
    • hyatt@apple.com's avatar
      2009-01-16 David Hyatt <hyatt@apple.com> · aa59fcd9
      hyatt@apple.com authored
              Add a new flag (similar to first-line and first-letter) to Document to track whether any before/after rules
              are being used.  If not, don't waste time probing for those pseudo element styles.
      
              Reviewed by Sam Weinig
      
              * css/CSSGrammar.y:
              * dom/Document.cpp:
              (WebCore::Document::Document):
              * dom/Document.h:
              (WebCore::Document::usesBeforeAfterRules):
              (WebCore::Document::setUsesBeforeAfterRules):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::styleDidChange):
              * rendering/RenderContainer.cpp:
              (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
              * rendering/RenderInline.cpp:
              (WebCore::RenderInline::styleDidChange):
              (WebCore::RenderInline::addChildToFlow):
              (WebCore::RenderInline::splitInlines):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39992 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aa59fcd9
    • hyatt@apple.com's avatar
      2009-01-16 David Hyatt <hyatt@apple.com> · cfa6d61d
      hyatt@apple.com authored
              Split continuation() into virtual and non-virtual versions so that the non-virtual version can
              be used whereever possible.  Eventually the virtual method can be eliminated completely.
      
              Reviewed by Sam Weinig and Oliver Hunt
      
              * html/HTMLAnchorElement.cpp:
              (WebCore::HTMLAnchorElement::isKeyboardFocusable):
              * page/AccessibilityRenderObject.cpp:
              (WebCore::AccessibilityRenderObject::anchorElement):
              * rendering/InlineFlowBox.cpp:
              (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
              (WebCore::InlineFlowBox::paint):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::removeChild):
              * rendering/RenderContainer.cpp:
              (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
              * rendering/RenderFlow.h:
              (WebCore::RenderFlow::virtualContinuation):
              (WebCore::RenderFlow::continuation):
              * rendering/RenderInline.cpp:
              (WebCore::RenderInline::positionForCoordinates):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::absoluteRects):
              (WebCore::RenderObject::absoluteQuads):
              (WebCore::RenderObject::addFocusRingRects):
              (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
              (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
              (WebCore::RenderObject::handleDynamicFloatPositionChange):
              (WebCore::RenderObject::hoverAncestor):
              (WebCore::RenderObject::updateDragState):
              (WebCore::RenderObject::updateHitTestResult):
              (WebCore::RenderObject::getTextDecorationColors):
              (WebCore::RenderObject::adjustRectForOutlineAndShadow):
              * rendering/RenderObject.h:
              (WebCore::RenderObject::virtualContinuation):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39987 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cfa6d61d
  2. 12 Jan, 2009 1 commit
  3. 10 Jan, 2009 1 commit
  4. 05 Jan, 2009 2 commits
    • dino@apple.com's avatar
      2008-01-05 Dean Jackson <dino@apple.com> · 563bd1f6
      dino@apple.com authored
              Reviewed by David Hyatt.
      
              Implement 'pointer-events' for HTML content. This involved
              adding a new value 'auto' which behaves as 'visiblePainted'
              in SVG content.
      
              Moved the property out of the SVG CSS code and into
              the general CSS (both parsing and RenderStyle).
      
              Changes to the hit testing functionality of the Render tree,
              specifically the nodeAtPoint methods. Where they used to
              test for visibility, they now use a helper function defined
              on base classes (RenderObject and InlineBox) that checks both
              visibility and pointer-events.
      
              https://bugs.webkit.org/show_bug.cgi?id=11395
      
              Tests: fast/events/pointer-events-2.html
                     fast/events/pointer-events.html
      
              * css/CSSComputedStyleDeclaration.cpp:
              (WebCore::):
              (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
              * css/CSSParser.cpp:
              (WebCore::CSSParser::parseValue):
              * css/CSSPrimitiveValueMappings.h:
              (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
              (WebCore::CSSPrimitiveValue::operator EPointerEvents):
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::applyProperty):
              * css/SVGCSSComputedStyleDeclaration.cpp:
              (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue):
              * css/SVGCSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::applySVGProperty):
              * manual-tests/pointer-events.html: Added.
              * rendering/EllipsisBox.cpp:
              (WebCore::EllipsisBox::nodeAtPoint):
              * rendering/InlineBox.h:
              (WebCore::InlineBox::visibleToHitTesting):
              * rendering/InlineFlowBox.cpp:
              (WebCore::InlineFlowBox::nodeAtPoint):
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::nodeAtPoint):
              * rendering/PointerEventsHitRules.cpp:
              (WebCore::PointerEventsHitRules::PointerEventsHitRules):
              * rendering/PointerEventsHitRules.h:
              (WebCore::PointerEventsHitRules::):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::nodeAtPoint):
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::nodeAtPoint):
              * rendering/RenderObject.h:
              (WebCore::RenderObject::visibleToHitTesting):
              * rendering/RenderPath.cpp:
              (WebCore::RenderPath::nodeAtPoint):
              * rendering/RenderSVGImage.cpp:
              (WebCore::RenderSVGImage::nodeAtPoint):
              * rendering/RenderSVGText.cpp:
              (WebCore::RenderSVGText::nodeAtPoint):
              * rendering/RootInlineBox.cpp:
              (WebCore::RootInlineBox::nodeAtPoint):
              * rendering/TextControlInnerElements.cpp:
              (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
              * rendering/style/RenderStyle.h:
              (WebCore::):
              (WebCore::InheritedFlags::setBitDefaults):
              (WebCore::InheritedFlags::pointerEvents):
              (WebCore::InheritedFlags::setPointerEvents):
              (WebCore::InheritedFlags::initialPointerEvents):
              * rendering/style/RenderStyleConstants.h:
              (WebCore::):
              * rendering/style/SVGRenderStyle.h:
              (WebCore::SVGRenderStyle::InheritedFlags::operator==):
              (WebCore::SVGRenderStyle::setBitDefaults):
              * rendering/style/SVGRenderStyleDefs.h:
              * css/CSSValueKeywords.in:
              * css/SVGCSSValueKeywords.in:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39634 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      563bd1f6
    • darin@apple.com's avatar
      2009-01-05 Darin Adler <darin@apple.com> · 98a7ac69
      darin@apple.com authored
              Reviewed by Alexey Proskuryakov.
      
              Bug 23102: turn on unused parameter warnings in WebCore
              https://bugs.webkit.org/show_bug.cgi?id=23102
      
              First step: Fix the simple cases where we can just remove an argument name.
              Also made a few more things protected and private.
      
              * many files
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39601 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      98a7ac69
  5. 06 Dec, 2008 1 commit
    • simon.fraser@apple.com's avatar
      2008-12-06 Simon Fraser <simon.fraser@apple.com> · 2b2b6ce0
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              https://bugs.webkit.org/show_bug.cgi?id=15671
      
              Fix caret rendering to behave correctly with transforms:
              * Rename caretRect() methods to localCaretRect() and
                absoluteCaretBounds() as appropriate
              * Fix localCaretRect() methods to return a rect in the
                appropriate coordinates.
              * Pass tx, ty down through the paintCaret() methods, after fixing them
                up to account for differences between contents coords, and renderer-local
                coords (via RenderBlock::offsetForContents()).
              * Remove m_caretPositionOnLayout from SelectionController, and instead
                call invalidateSelection() from RenderLayer::scrollToOffset(), because
                we can no longer assume simple x/y offsets from scrolling with transforms.
              * Move the logic to compute which RenderObject actually paints the caret into
                SelectionController::caretRenderer(), rather than having it in RenderBlock.
              * SelectionController now computes and caches a local caret rect. For invalidation,
                it computes the absolute bounds of that (possibly transformed) local rect.
                The local rect is computed in the coordinate system of the RenderObject that
                will paint the caret (this may require offsetting from the actual renderer
                at the start of the selection).
              * Fix LayoutState(RenderObject* root) to take transforms into account
              * Make offsetFromContainer() a virtual method on RenderObject, and implement
                the RenderObject version. It's used to map from selection start renderer
                to caret renderer.
      
              Test: fast/transforms/transformed-caret.html
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39069 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2b2b6ce0
  6. 14 Nov, 2008 2 commits
    • bolsinga@apple.com's avatar
      Reviewed by Darin Adler. · 97e42c46
      bolsinga@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=21810
              Remove use of static C++ objects that are destroyed at exit time (destructors)
      
              Create DEFINE_STATIC_LOCAL macro. Change static local objects to leak to avoid 
              exit-time destructor. Update code that was changed to fix this issue that ran 
              into a gcc bug (<rdar://problem/6354696> Codegen issue with C++ static reference 
              in gcc build 5465). Also typdefs for template types needed to be added in some 
              cases so the type could make it through the macro successfully.
      
              Basically code of the form:
              static T m;
              becomes:
              DEFINE_STATIC_LOCAL(T, m, ());
      
              Also any code of the form:
              static T& m = *new T;
              also becomes:
              DEFINE_STATIC_LOCAL(T, m, ());
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38418 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97e42c46
    • mitz@apple.com's avatar
      WebCore: · d6ceec82
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - <rdar://problem/6234307> Support action methods for setting and clearing character-level directionality
              - WebCore part of <rdar://problem/6234337> Add a Text Direction menu to the default context menu when appropriate
      
              * WebCore.base.exp: Exported
              WebCore::Settings::setTextDirectionSubmenuInclusionBehavior().
      
              * editing/ApplyStyleCommand.cpp:
              (StyleChange::init): Changed to always include the direction property
              in the result if the unicode-bidi property is included.
              (ApplyStyleCommand::splitAncestorsWithUnicodeBidi): Added. Finds the
              highest ancestor of the given node that establishes bidi embedding. If
              that embedding agrees with the given allowed direction, finds the
              second-highest embedding ancestor. Splits all nodes through that
              ancestor. If the highest embedding ancestor did not need to be split,
              it is returned.
              (ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock): Added. Removes
              bidi embedding attributes and styles from all ancestors of the given
              node up to its enclosing block or the given node.
              (ApplyStyleCommand::applyInlineStyle): Added code to handle the
              unicode-bidi property. Applying style the includes this property
              involves removing all bidi embedding in effect, except  for one-level
              embedding that agrees with the desired embedding, then applying the
              desired embedding where it is not already in effect.
              (ApplyStyleCommand::applyInlineStyleToRange): Factored out from
              applyInlineStyle().
              (ApplyStyleCommand::removeHTMLBidiEmbeddingStyle): Added. Removed the
              "dir" attribute if necessary and the element if it becomes an unstyled
              style span.
              (ApplyStyleCommand::removeCSSStyle): Changed to remove the direction
              property when removing the unicode-bidi property.
              (ApplyStyleCommand::removeInlineStyle): Added a call to
              removeHTMLBidiEmbeddingStyle().
      
              * editing/ApplyStyleCommand.h:
              * editing/Editor.cpp:
              (Editor::textDirectionForSelection): Added. Returns the character-level
              writing direction of the selection if it is uniform and simple (at most
              one level of embedding).
              (Editor::hasBidiSelection): Added. Returns true if the selection lies
              entirely within a single block, and that block has direction:rtl or
              contains any inline boxes with non-zero bidi embedding level.
      
              * editing/Editor.h:
              * editing/EditorCommand.cpp:
              (stateTextWritingDirection): Added this helper function for deciding
              the state of Text Direction submenu items.
              (executeMakeTextWritingDirectionLeftToRight): Added. Applies
              "unicode-bidi: embed; direction: ltr;".
              (executeMakeTextWritingDirectionNatural): Added. Applies
              "unicode-bidi: normal;"
              (executeMakeTextWritingDirectionRightToLeft): Added. Applies
              "unicode-bidi: embed; direction: rtl;".
              (stateTextWritingDirectionLeftToRight): Added.
              (stateTextWritingDirectionNatural): Added.
              (stateTextWritingDirectionRightToLeft): Added.
              (createCommandMap): Added "MakeTextWritingDirectionLeftToRight",
              "MakeTextWritingDirectionNatural",
              and "MakeTextWritingDirectionRightToLeft".
      
              * editing/InsertTextCommand.cpp:
              (InsertTextCommand::input): Added code to maintain the unicode-bidi
              and direction properties in the typing style. Even if they have the
              same values as the computed style at the caret, they need to be included
              in the typing style so that inserted text will not inherit any nested
              embedding.
      
              * page/ContextMenuController.cpp:
              (ContextMenuController::contextMenuItemSelected): Added calls to
              the editor for the text direction menu items.
      
              * page/Frame.cpp
              (Frame::computeAndSetTypingStyle): Added code to maintain the
              unicode-bidi and direction properties in the typing style.
      
              * page/Settings.cpp:
              (Settings::setTextDirectionSubmenuInclusionBehavior): Added this setter.
      
              * page/Settings.h: Added a TextDirectionSubmenuInclusionBehavior enum,
              an m_textDirectionSubmenuInclusionBehavior member, and accessors.
      
              * page/mac/WebCoreViewFactory.h:
              * platform/ContextMenu.cpp:
              (WebCore::createAndAppendTextDirectionSubMenu): Added.
              (ContextMenu::populate): Added the Text Direction submenu item based on
              the inclusion behavior and the existence of a bidi selection.
              (ContextMenu::checkOrEnableIfNeeded): Added code for the text direction
              menu items.
      
              * platform/ContextMenuItem.h:
              * platform/LocalizedStrings.h: Declared
              contextMenuItemTagTextDirectionMenu().
      
              * platform/mac/LocalizedStringsMac.mm: Defined
              contextMenuItemTagTextDirectionMenu().
      
              * rendering/RenderBlock.cpp:
              (RenderBlock::containsNonZeroBidiLevel): Added.
              * rendering/RenderBlock.h:
      
      WebKit:
      
              Reviewed by Darin Adler.
      
              - part of <rdar://problem/6234337> Add a Text Direction menu to the default context menu when appropriate
      
              * English.lproj/Localizable.strings: Added the Text Direction submenu
              title.
      
      WebKit/mac:
      
              Reviewed by Darin Adler.
      
              - <rdar://problem/6234333> Implement action methods for setting and clearing character-level directionality
              - part of <rdar://problem/6234337> Add a Text Direction menu to the default context menu when appropriate
      
              * WebCoreSupport/WebViewFactory.mm:
              (-[WebViewFactory contextMenuItemTagTextDirectionMenu]): Added.
              * WebView/WebFrame.mm:
              (core): Added a convertor from WebTextDirectionSubmenuInclusionBehavior
              to WebCore::TextDirectionSubmenuInclusionBehavior.
              * WebView/WebFrameInternal.h:
              * WebView/WebHTMLView.mm:
              Added makeTextWritingDirectionLeftToRight:,
              makeTextWritingDirectionNatural: and
              makeTextWritingDirectionRightToLeft: using the WEBCORE_COMMAND macro.
              * WebView/WebPreferenceKeysPrivate.h:
              Added WebKitTextDirectionSubmenuInclusionBehaviorPreferenceKey.
              * WebView/WebPreferences.mm:
              (+[WebPreferences initialize]): Set the default Text Direction
              submenu inclusion behavior to never include.
              (-[WebPreferences textDirectionSubmenuInclusionBehavior]): Added this
              accessor.
              (-[WebPreferences setTextDirectionSubmenuInclusionBehavior:]): Ditto.
              * WebView/WebPreferencesPrivate.h: Defined the
              WebTextDirectionSubmenuInclusionBehavior enum and declared
              accessors.
              * WebView/WebUIDelegatePrivate.h:
              * WebView/WebView.mm:
              (-[WebView _preferencesChangedNotification:]): Added code to transfer
              the Text Direction submenu inclusion behavior preference to WebCore
              settings.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38410 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d6ceec82
  7. 12 Nov, 2008 1 commit
    • simon.fraser@apple.com's avatar
      2008-11-12 Simon Fraser <simon.fraser@apple.com> · d12c84b4
      simon.fraser@apple.com authored
              Reviewed by Dan Bernstein
      
              https://bugs.webkit.org/show_bug.cgi?id=22212
      
              Rename absoluteOutlineBox() to absoluteOutlineBounds(), to indicate that
              it may be the bounding outline box of a transformed element, and fix it
              to respect transforms by mapping the outline box to an absolute quad and
              taking the enclosing rect.
      
              RenderBox::localToAbsoluteQuad() can no longer assert that there is no
              LayoutState, but LayoutState cannot be used during quad mapping (it knows
              nothing about transforms).
      
              Finally, fix a bug in RenderBox::localToAbsoluteQuad() which was getting
              borderTopExtra() from the object, rather than its container (as localToAbsolute()
              does).
      
              Test: fast/repaint/transform-absolute-child.html
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38353 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d12c84b4
  8. 11 Nov, 2008 1 commit
    • eric@webkit.org's avatar
      Reviewed by Antti Koivisto and Sam Weinig. · 683713ff
      eric@webkit.org authored
              Clean up HTMLTokenizer a litle
              https://bugs.webkit.org/show_bug.cgi?id=22188
      
              Rename pendingScripts to m_pendingScripts
              Rename scriptNode to m_scriptNode make the type specific
              Rename pendingSrc to m_pendingSrc
              Rename currentPrependingSrc to m_currentPrependingSrc
              Rename noMoreData to m_noMoreData and cBuffer to m_cBuffer
              Remove long-since-dead kdDebug and qDebug calls
              Rename brokenComments to m_brokenComments
              Remove HTMLTokenizer includes and document the rest
              Rename src to m_src
              Rename parser to m_parser and make it an OwnPtr
              Rename inWrite to m_inWrite and jsProxy to scriptController
              Rename brokenServer to m_brokenServer
              Rename buffer to m_buffer and dest to m_dest
              Rename size to m_bufferSize
              Rename attrName to m_attrName
              Rename searchStopper to m_searchStopper and searchStopperLen to m_searchStopperLen
              Rename scriptCode* to m_scriptCode* and change scriptCodeMax to m_scriptCodeCapacity
              Rename scriptStartLineno to m_currentScriptTagStartLineNumber and tagStartLineno to m_currentTagStartLineNumber
              Rename scriptSrc to m_scriptTagSrcAttrValue and scriptSrcCharset to m_scriptTagCharsetAttrValue -- a bit unwieldy, but more precise
              Rename flat to selfClosingTag
              Rename currToken to m_currentToken
      
              * css/CSSParser.cpp:
              * dom/XMLTokenizer.cpp:
              * dom/XMLTokenizerLibxml2.cpp:
              * html/HTMLDocument.cpp:
              * html/HTMLElement.cpp:
              * html/HTMLFormControlElement.cpp:
              * html/HTMLParser.h:
              * html/HTMLTokenizer.cpp:
              (WebCore::Token::addAttribute):
              (WebCore::HTMLTokenizer::HTMLTokenizer):
              (WebCore::HTMLTokenizer::reset):
              (WebCore::HTMLTokenizer::begin):
              (WebCore::HTMLTokenizer::processListing):
              (WebCore::HTMLTokenizer::parseSpecial):
              (WebCore::HTMLTokenizer::scriptHandler):
              (WebCore::HTMLTokenizer::scriptExecution):
              (WebCore::HTMLTokenizer::parseComment):
              (WebCore::HTMLTokenizer::parseServer):
              (WebCore::HTMLTokenizer::parseProcessingInstruction):
              (WebCore::HTMLTokenizer::parseText):
              (WebCore::HTMLTokenizer::parseEntity):
              (WebCore::HTMLTokenizer::parseTag):
              (WebCore::HTMLTokenizer::write):
              (WebCore::HTMLTokenizer::processingData):
              (WebCore::HTMLTokenizer::end):
              (WebCore::HTMLTokenizer::finish):
              (WebCore::HTMLTokenizer::processToken):
              (WebCore::HTMLTokenizer::processDoctypeToken):
              (WebCore::HTMLTokenizer::~HTMLTokenizer):
              (WebCore::HTMLTokenizer::enlargeBuffer):
              (WebCore::HTMLTokenizer::enlargeScriptBuffer):
              (WebCore::HTMLTokenizer::notifyFinished):
              (WebCore::HTMLTokenizer::setSrc):
              * html/HTMLTokenizer.h:
              (WebCore::Token::Token):
              (WebCore::Token::reset):
              (WebCore::HTMLTokenizer::processingContentWrittenByScript):
              (WebCore::HTMLTokenizer::htmlParser):
              (WebCore::HTMLTokenizer::checkBuffer):
              (WebCore::HTMLTokenizer::checkScriptBuffer):
              * html/HTMLViewSourceDocument.h:
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::leftRelOffset):
              (WebCore::RenderBlock::rightRelOffset):
              (WebCore::RenderBlock::lineWidth):
              * xml/XSLTProcessor.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38327 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      683713ff
  9. 07 Nov, 2008 1 commit
    • simon.fraser@apple.com's avatar
      2008-11-07 Simon Fraser <simon.fraser@apple.com> · feaef2eb
      simon.fraser@apple.com authored
              Reviewed by Dan Bernstein
      
              https://bugs.webkit.org/show_bug.cgi?id=22122
      
              Use a stack-based object to simplify the pushLayoutState/popLayoutState
              code. LayoutStateMaintainer either pushes in the constructor, or allows
              an explicit push() later. Both cases require an explicit pop().
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutBlock):
              (WebCore::RenderBlock::layoutOnlyPositionedObjects):
              * rendering/RenderContainer.cpp:
              (WebCore::RenderContainer::layout):
              * rendering/RenderFlexibleBox.cpp:
              (WebCore::RenderFlexibleBox::layoutBlock):
              * rendering/RenderTable.cpp:
              (WebCore::RenderTable::layout):
              * rendering/RenderTableRow.cpp:
              (WebCore::RenderTableRow::layout):
              * rendering/RenderTableSection.cpp:
              (WebCore::RenderTableSection::setCellWidths):
              (WebCore::RenderTableSection::calcRowHeight):
              (WebCore::RenderTableSection::layoutRows):
              * rendering/RenderView.h:
              (WebCore::LayoutStateMaintainer::LayoutStateMaintainer):
              (WebCore::LayoutStateMaintainer::~LayoutStateMaintainer):
              (WebCore::LayoutStateMaintainer::pop):
              (WebCore::LayoutStateMaintainer::push):
              (WebCore::LayoutStateMaintainer::didPush):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      feaef2eb
  10. 06 Nov, 2008 4 commits
    • ddkilzer@apple.com's avatar
      BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0. · 58912bd4
      ddkilzer@apple.com authored
      WebCore:
      
              BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0.
      
              Apparently older versions of gcc have issues with this patch.
              Backing out a second time until the issues are resolved.
      
      WebKit/mac:
      
              BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0.
      
              Apparently older versions of gcc have issues with this patch.
              Backing out a second time until the issues are resolved.
      
      WebKitTools:
      
              BUILD FIX: Backed out r38189 (and r38203) for Xcode 3.0.
      
              Apparently older versions of gcc have issues with this patch.
              Backing out a second time until the issues are resolved.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38207 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      58912bd4
    • ddkilzer@apple.com's avatar
      BUILD WAS NOT BROKEN: Rolling r38189 back in. · a8062f58
      ddkilzer@apple.com authored
      WebCore:
      
              BUILD WAS NOT BROKEN: Rolling r38189 back in.
      
              Please perform a clean build if you see crashes.
      
      WebKit/mac:
      
              BUILD WAS NOT BROKEN: Rolling r38189 back in.
      
              Please perform a clean build if you see crashes.
      
      WebKitTools:
      
              BUILD WAS NOT BROKEN: Rolling r38189 back in.
      
              Please perform a clean build if you see crashes.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a8062f58
    • ddkilzer@apple.com's avatar
      BUILD FIX: Backed out r38189 since it apparently broke the world. · 3df06c55
      ddkilzer@apple.com authored
      WebCore:
      
              BUILD FIX: Backed out r38189 since it apparently broke the world.
      
      WebKit/mac:
      
              BUILD FIX: Backed out r38189 since it apparently broke the world.
      
      WebKitTools:
      
              BUILD FIX: Backed out r38189 since it apparently broke the world.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38202 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3df06c55
    • ddkilzer@apple.com's avatar
      Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors) · 6f3816c3
      ddkilzer@apple.com authored
      WebCore:
      
      2008-11-06  Greg Bolsinga  <bolsinga@apple.com>
      
              Reviewed by Darin Adler.
      
              Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors)
              https://bugs.webkit.org/show_bug.cgi?id=21810
      
              * bindings/js/GCController.cpp:
              (WebCore::gcController): Changed to leak an object to avoid an exit-time destructor.
              * bindings/js/JSDOMBinding.cpp:
              (WebCore::wrapperSet): Ditto
              * bindings/js/JSInspectedObjectWrapper.cpp:
              (WebCore::wrappers): Ditto
              * bindings/js/JSInspectorCallbackWrapper.cpp:
              (WebCore::wrappers): Ditto
              * bridge/runtime_root.cpp:
              (JSC::Bindings::rootObjectSet): Ditto
              * css/CSSMutableStyleDeclaration.cpp:
              (WebCore::CSSMutableStyleDeclaration::removeProperty): Ditto
              * css/CSSPrimitiveValue.cpp:
              (WebCore::CSSPrimitiveValue::cssText): Ditto
              * css/CSSSelector.cpp:
              (WebCore::CSSSelector::extractPseudoType): Ditto
              * css/CSSStyleSelector.cpp:
              (WebCore::screenEval): Ditto
              (WebCore::printEval): Ditto
              * dom/DOMImplementation.cpp:
              (WebCore::isSVG10Feature): Ditto
              (WebCore::isSVG11Feature): Ditto
              (WebCore::DOMImplementation::isXMLMIMEType): Ditto
              * dom/Document.cpp:
              (WebCore::Document::hasPrefixNamespaceMismatch): Ditto
              * dom/ScriptElement.cpp:
              (WebCore::isSupportedJavaScriptLanguage): Ditto
              * editing/ApplyStyleCommand.cpp:
              (WebCore::styleSpanClassString): Ditto
              * editing/HTMLInterchange.cpp:
              (WebCore::): Ditto
              * editing/IndentOutdentCommand.cpp:
              (WebCore::indentBlockquoteString): Ditto
              * editing/ReplaceSelectionCommand.cpp:
              (WebCore::isInterchangeNewlineNode): Ditto
              (WebCore::isInterchangeConvertedSpaceSpan): Ditto
              * editing/htmlediting.cpp:
              (WebCore::stringWithRebalancedWhitespace): Ditto
              (WebCore::nonBreakingSpaceString): Ditto
              * editing/markup.cpp:
              (WebCore::appendAttributeValue): Ditto
              (WebCore::appendEscapedContent): Ditto
              (WebCore::shouldAddNamespaceAttr): Ditto
              (WebCore::appendNamespace): Ditto
              (WebCore::appendStartMarkup): Ditto
              (WebCore::createMarkup): Ditto
              * html/HTMLButtonElement.cpp:
              (WebCore::HTMLButtonElement::type): Ditto
              * html/HTMLElement.cpp:
              (WebCore::HTMLElement::isRecognizedTagName): Ditto
              (WebCore::inlineTagList): Ditto
              (WebCore::blockTagList): Ditto
              * html/HTMLFieldSetElement.cpp:
              (WebCore::HTMLFieldSetElement::type): Ditto
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::type): Ditto
              * html/HTMLKeygenElement.cpp:
              (WebCore::HTMLKeygenElement::type): Ditto
              * html/HTMLLegendElement.cpp:
              (WebCore::HTMLLegendElement::type): Ditto
              * html/HTMLOptGroupElement.cpp:
              (WebCore::HTMLOptGroupElement::type): Ditto
              * html/HTMLOptionElement.cpp:
              (WebCore::HTMLOptionElement::type): Ditto
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::getNode): Ditto
              (WebCore::HTMLParser::isHeaderTag): Ditto
              (WebCore::HTMLParser::isResidualStyleTag): Ditto
              (WebCore::HTMLParser::isAffectedByResidualStyle): Ditto
              * html/HTMLSelectElement.cpp:
              (WebCore::HTMLSelectElement::type): Ditto
              * html/HTMLTextAreaElement.cpp:
              (WebCore::HTMLTextAreaElement::type): Ditto
              * inspector/InspectorController.cpp:
              (WebCore::platform): Ditto
              * inspector/JavaScriptDebugServer.cpp:
              (WebCore::JavaScriptDebugServer::shared): Ditto
              * inspector/JavaScriptProfile.cpp:
              (WebCore::profileCache): Ditto
              * inspector/JavaScriptProfileNode.cpp:
              (WebCore::profileNodeCache): Ditto
              * loader/FrameLoader.cpp:
              (WebCore::localSchemes): Ditto
              * loader/appcache/ApplicationCacheStorage.cpp:
              (WebCore::cacheStorage): Ditto
              * loader/archive/ArchiveFactory.cpp:
              (WebCore::archiveMIMETypes): Ditto
              * loader/icon/IconDatabase.cpp:
              (WebCore::IconDatabase::defaultDatabaseFilename): Ditto
              * page/EventHandler.cpp:
              (WebCore::EventHandler::dragState): Ditto
              * page/Frame.cpp:
              (WebCore::createRegExpForLabels): Ditto
              (WebCore::keepAliveSet): Ditto
              * page/Page.cpp:
              (WebCore::Page::groupName): Ditto
              * page/SecurityOrigin.cpp:
              (WebCore::isDefaultPortForProtocol): Ditto
              (WebCore::SecurityOrigin::databaseIdentifier): Ditto
              * page/mac/FrameMac.mm:
              (WebCore::regExpForLabels): Ditto
              * platform/KURL.cpp:
              (WebCore::blankURL): Ditto
              * platform/graphics/FontCache.cpp:
              (WebCore::alternateFamilyName): Ditto
              * platform/graphics/mac/FontCacheMac.mm:
              (WebCore::FontCache::getSimilarFontPlatformData): Ditto
              (WebCore::FontCache::getLastResortFallbackFont): Ditto
              * platform/mac/ScrollbarThemeMac.mm:
              (WebCore::ScrollbarTheme::nativeTheme): Ditto
              * platform/mac/ThemeMac.mm:
              (WebCore::platformTheme): Ditto
              * platform/mac/ThreadCheck.mm:
              (WebCoreReportThreadViolation): Ditto
              * platform/network/NetworkStateNotifier.cpp:
              (WebCore::networkStateNotifier): Ditto
              * platform/network/mac/FormDataStreamMac.mm:
              (WebCore::getStreamFormDataMap): Ditto
              (WebCore::getStreamResourceHandleMap): Ditto
              * platform/network/mac/ResourceResponseMac.mm:
              (WebCore::ResourceResponse::platformLazyInit): Ditto
              * platform/text/TextEncoding.cpp:
              (WebCore::TextEncoding::isJapanese): Ditto
              * rendering/RenderBlock.cpp:
              (WebCore::continuationOutlineTable): Ditto
              * rendering/RenderCounter.cpp:
              (WebCore::counterMaps): Ditto
              * rendering/RenderFlexibleBox.cpp:
              (WebCore::RenderFlexibleBox::layoutVerticalBox): Ditto
              * rendering/RenderListItem.cpp:
              (WebCore::RenderListItem::markerText): Ditto
              * rendering/RenderScrollbarTheme.cpp:
              (WebCore::RenderScrollbarTheme::renderScrollbarTheme): Ditto
              * rendering/RenderThemeMac.mm:
              (WebCore::RenderThemeMac::systemFont): Ditto
              * rendering/bidi.cpp:
              (WebCore::RenderBlock::checkLinesForTextOverflow): Ditto
              * rendering/style/RenderStyle.cpp:
              (WebCore::RenderStyle::initialDashboardRegions): Ditto
              (WebCore::RenderStyle::noneDashboardRegions): Ditto
              * storage/LocalStorage.cpp:
              (WebCore::localStorageMap): Ditto
              * svg/SVGAnimateMotionElement.cpp:
              (WebCore::SVGAnimateMotionElement::rotateMode): Ditto
              * svg/SVGAnimationElement.cpp:
              (WebCore::SVGAnimationElement::calcMode): Ditto
              (WebCore::SVGAnimationElement::attributeType): Ditto
              (WebCore::SVGAnimationElement::isAdditive): Ditto
              (WebCore::SVGAnimationElement::isAccumulated): Ditto
              * svg/SVGLangSpace.cpp:
              (WebCore::SVGLangSpace::xmlspace): Ditto
              * svg/SVGSVGElement.cpp:
              (WebCore::SVGSVGElement::contentScriptType): Ditto
              (WebCore::SVGSVGElement::contentStyleType): Ditto
              * svg/SVGStyleElement.cpp:
              (WebCore::SVGStyleElement::type): Ditto
              (WebCore::SVGStyleElement::media): Ditto
              * svg/SVGTextContentElement.cpp:
              (WebCore::SVGTextContentElement::parseMappedAttribute): Ditto
              * svg/animation/SVGSMILElement.cpp:
              (WebCore::SVGSMILElement::parseClockValue): Ditto
              (WebCore::SVGSMILElement::restart): Ditto
              (WebCore::SVGSMILElement::fill): Ditto
              (WebCore::SVGSMILElement::repeatCount): Ditto
              (WebCore::SVGSMILElement::notifyDependentsIntervalChanged): Ditto
              * svg/graphics/SVGResource.cpp:
              (WebCore::clientMap): Ditto
              * svg/graphics/SVGResourceMarker.cpp:
              (WebCore::SVGResourceMarker::draw): Ditto
              * xml/XMLHttpRequest.cpp:
              (WebCore::preflightResultCache): Ditto
              (WebCore::isSafeRequestHeader): Ditto
              (WebCore::isOnAccessControlResponseHeaderWhitelist): Ditto
              * xml/XPathExpressionNode.cpp:
              (WebCore::XPath::Expression::evaluationContext): Ditto
              * xml/XPathParser.cpp:
              (WebCore::XPath::isAxisName): Ditto
              (WebCore::XPath::isNodeTypeName): Ditto
              * xml/XPathValue.cpp:
              (WebCore::XPath::Value::toNodeSet): Ditto
      
      WebKit/mac:
      
      2008-11-06  Greg Bolsinga  <bolsinga@apple.com>
      
              Reviewed by Darin Adler.
      
              Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors)
              https://bugs.webkit.org/show_bug.cgi?id=21810
      
              * History/WebBackForwardList.mm:
              (backForwardLists): Changed to leak an object to avoid an exit-time destructor.
              * History/WebHistoryItem.mm:
              (historyItemWrappers): Ditto
              * Misc/WebStringTruncator.m:
              (fontFromNSFont): Ditto
              * Plugins/WebBaseNetscapePluginStream.mm:
              (streams): Ditto
              * WebView/WebView.mm:
              (aeDescFromJSValue): Ditto
      
      WebKitTools:
      
      2008-11-06  Greg Bolsinga  <bolsinga@apple.com>
      
              Reviewed by Darin Adler.
      
              Bug 21810: Remove use of static C++ objects that are destroyed at exit time (destructors)
              https://bugs.webkit.org/show_bug.cgi?id=21810
      
              Remove .o files from the exclude list that have had their exit-time destructors removed.
      
              * Scripts/check-for-exit-time-destructors:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@38189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6f3816c3
  11. 04 Nov, 2008 1 commit
  12. 16 Oct, 2008 1 commit
    • hyatt@apple.com's avatar
      2008-10-16 David Hyatt <hyatt@apple.com> · dec0cbf2
      hyatt@apple.com authored
              https://bugs.webkit.org/attachment.cgi?bugid=21647
      
              Make RenderStyle inherit from RefCounted so that it works with RefPtr.  RenderStyle was being malloced
              out of the RenderArena.  Years and years ago (before TCMalloc), the plan was to make RenderStyles and
              all their associated sub-structs use the arena.  However only the RenderStyle itself was ever changed
              to use the arena.
      
              At a later point style sharing was implemented, which made using the arena for styles pretty pointless,
              as the bulk of the styles on a given page are actually shared.  Not ever making the sub-structs use the
              arena also limited the usefulness.
      
              Now that we have RefPtr/PassRefPtr to eliminate manual ref/deref and now that we use TCMalloc for fast
              mallocs, there is no reason to keep RenderStyles in the arena.  The benefits of being able to eliminate
              manual ref/deref far outweigh keeping them in the arena.
      
              Reviewed by Adam Roben
      
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::CSSStyleSelector):
              (WebCore::CSSStyleSelector::~CSSStyleSelector):
              (WebCore::CSSStyleSelector::styleForElement):
              (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
              (WebCore::CSSStyleSelector::pseudoStyleForElement):
              These methods now return a PassRefPtr.  They will null out the m_style variable as they hand it back
              so that it isn't left pointing to the previous style resolve RenderStyle (which is what the old code did).
      
              (WebCore::CSSStyleSelector::updateFont):
              (WebCore::CSSStyleSelector::checkSelector):
              (WebCore::CSSStyleSelector::applyProperty):
              (WebCore::CSSStyleSelector::mapFillSize):
              (WebCore::CSSStyleSelector::mapFillXPosition):
              (WebCore::CSSStyleSelector::mapFillYPosition):
              * css/CSSStyleSelector.h:
              (WebCore::CSSStyleSelector::style):
              * dom/Document.cpp:
              (WebCore::Document::recalcStyle):
              * dom/Element.cpp:
              (WebCore::Element::styleForRenderer):
              (WebCore::Element::recalcStyle):
              (WebCore::Element::computedStyle):
              * dom/Element.h:
              * dom/ElementRareData.h:
              (WebCore::ElementRareData::ElementRareData):
              (WebCore::ElementRareData::resetComputedStyle):
              * dom/Node.cpp:
              (WebCore::Node::diff):
              (WebCore::Node::createRendererIfNeeded):
              (WebCore::Node::styleForRenderer):
              (WebCore::Node::setRenderStyle):
              * dom/Node.h:
              * html/CanvasRenderingContext2D.cpp:
              (WebCore::CanvasRenderingContext2D::setFont):
              * html/HTMLOptGroupElement.cpp:
              (WebCore::HTMLOptGroupElement::attach):
              (WebCore::HTMLOptGroupElement::detach):
              (WebCore::HTMLOptGroupElement::setRenderStyle):
              (WebCore::HTMLOptGroupElement::nonRendererRenderStyle):
              * html/HTMLOptGroupElement.h:
              * html/HTMLOptionElement.cpp:
              (WebCore::HTMLOptionElement::attach):
              (WebCore::HTMLOptionElement::detach):
              (WebCore::HTMLOptionElement::setRenderStyle):
              (WebCore::HTMLOptionElement::nonRendererRenderStyle):
              * html/HTMLOptionElement.h:
              * page/animation/AnimationBase.h:
              (WebCore::AnimationBase::animate):
              * page/animation/AnimationController.cpp:
              (WebCore::AnimationController::updateAnimations):
              * page/animation/AnimationController.h:
              * page/animation/CompositeAnimation.cpp:
              (WebCore::CompositeAnimationPrivate::updateTransitions):
              (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
              (WebCore::CompositeAnimationPrivate::animate):
              (WebCore::CompositeAnimation::animate):
              * page/animation/CompositeAnimation.h:
              * page/animation/ImplicitAnimation.cpp:
              (WebCore::ImplicitAnimation::ImplicitAnimation):
              (WebCore::ImplicitAnimation::~ImplicitAnimation):
              (WebCore::ImplicitAnimation::animate):
              (WebCore::ImplicitAnimation::reset):
              (WebCore::ImplicitAnimation::isTargetPropertyEqual):
              (WebCore::ImplicitAnimation::blendPropertyValueInStyle):
              * page/animation/ImplicitAnimation.h:
              (WebCore::ImplicitAnimation::create):
              * page/animation/KeyframeAnimation.cpp:
              (WebCore::KeyframeAnimation::KeyframeAnimation):
              (WebCore::KeyframeAnimation::~KeyframeAnimation):
              (WebCore::KeyframeAnimation::animate):
              (WebCore::KeyframeAnimation::validateTransformFunctionList):
              * page/animation/KeyframeAnimation.h:
              (WebCore::KeyframeAnimation::create):
              (WebCore::KeyframeAnimation::unanimatedStyle):
              * rendering/InlineTextBox.cpp:
              (WebCore::InlineTextBox::paint):
              * rendering/MediaControlElements.cpp:
              (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
              (WebCore::MediaControlInputElement::MediaControlInputElement):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::styleDidChange):
              (WebCore::RenderBlock::updateFirstLetter):
              * rendering/RenderContainer.cpp:
              (WebCore::RenderContainer::addChild):
              (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
              * rendering/RenderFileUploadControl.cpp:
              (WebCore::RenderFileUploadControl::updateFromElement):
              (WebCore::RenderFileUploadControl::createButtonStyle):
              * rendering/RenderFileUploadControl.h:
              * rendering/RenderFlow.cpp:
              (WebCore::RenderFlow::createAnonymousFlow):
              * rendering/RenderFlow.h:
              * rendering/RenderInline.cpp:
              (WebCore::RenderInline::addChildToFlow):
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::updateScrollCornerStyle):
              (WebCore::RenderLayer::updateResizerStyle):
              (WebCore::RenderLayer::updateReflectionStyle):
              * rendering/RenderListItem.cpp:
              (WebCore::RenderListItem::styleDidChange):
              * rendering/RenderMedia.cpp:
              (WebCore::RenderMedia::createPanel):
              (WebCore::RenderMedia::createTimeDisplay):
              (WebCore::RenderMedia::changeOpacity):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::selectionBackgroundColor):
              (WebCore::RenderObject::selectionForegroundColor):
              (WebCore::RenderObject::createAnonymousBlock):
              (WebCore::RenderObject::setAnimatableStyle):
              (WebCore::RenderObject::setStyle):
              (WebCore::RenderObject::setStyleInternal):
              (WebCore::RenderObject::arenaDelete):
              (WebCore::RenderObject::firstLineStyle):
              (WebCore::RenderObject::getPseudoStyle):
              * rendering/RenderObject.h:
              (WebCore::RenderObject::style):
              * rendering/RenderSVGBlock.cpp:
              (WebCore::RenderSVGBlock::setStyle):
              * rendering/RenderSVGBlock.h:
              * rendering/RenderScrollbar.cpp:
              (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
              (WebCore::RenderScrollbar::updateScrollbarPart):
              * rendering/RenderScrollbar.h:
              * rendering/RenderSlider.cpp:
              (WebCore::RenderSlider::styleDidChange):
              (WebCore::RenderSlider::createThumbStyle):
              (WebCore::RenderSlider::updateFromElement):
              * rendering/RenderSlider.h:
              * rendering/RenderTable.cpp:
              (WebCore::RenderTable::addChild):
              * rendering/RenderTableRow.cpp:
              (WebCore::RenderTableRow::addChild):
              * rendering/RenderTableSection.cpp:
              (WebCore::RenderTableSection::addChild):
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::styleDidChange):
              (WebCore::RenderTextControl::createInnerBlockStyle):
              (WebCore::RenderTextControl::createInnerTextStyle):
              (WebCore::RenderTextControl::createResultsButtonStyle):
              (WebCore::RenderTextControl::createCancelButtonStyle):
              (WebCore::RenderTextControl::createSubtreeIfNeeded):
              (WebCore::RenderTextControl::updatePlaceholderVisibility):
              * rendering/RenderTextControl.h:
              * rendering/TextControlInnerElements.cpp:
              (WebCore::TextControlInnerElement::attachInnerElement):
              * rendering/TextControlInnerElements.h:
              * rendering/style/KeyframeList.cpp:
              (WebCore::KeyframeList::clear):
              (WebCore::KeyframeList::operator==):
              (WebCore::KeyframeList::insert):
              * rendering/style/KeyframeList.h:
              (WebCore::KeyframeValue::KeyframeValue):
              (WebCore::KeyframeValue::~KeyframeValue):
              (WebCore::KeyframeValue::key):
              (WebCore::KeyframeValue::style):
              * rendering/style/RenderStyle.cpp:
              (WebCore::defaultStyle):
              (WebCore::RenderStyle::create):
              (WebCore::RenderStyle::createDefaultStyle):
              (WebCore::RenderStyle::clone):
              (WebCore::RenderStyle::RenderStyle):
              (WebCore::RenderStyle::getCachedPseudoStyle):
              (WebCore::RenderStyle::addCachedPseudoStyle):
              * rendering/style/RenderStyle.h:
              (WebCore::):
              (WebCore::InheritedFlags::operator!=):
              * svg/SVGClipPathElement.cpp:
              (WebCore::SVGClipPathElement::canvasResource):
              * svg/SVGGradientElement.cpp:
              (WebCore::SVGGradientElement::buildStops):
              * svg/SVGStyledElement.cpp:
              (WebCore::SVGStyledElement::resolveStyle):
              * svg/SVGStyledElement.h:
              * svg/SVGUseElement.cpp:
              (WebCore::SVGUseElement::recalcStyle):
              (WebCore::SVGUseElement::attachShadowTree):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37637 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dec0cbf2
  13. 09 Oct, 2008 1 commit
  14. 03 Oct, 2008 1 commit
  15. 02 Oct, 2008 1 commit
  16. 28 Sep, 2008 1 commit
    • darin@apple.com's avatar
      2008-09-28 Darin Adler <darin@apple.com> · 80c76ce7
      darin@apple.com authored
              Reviewed by Sam Weinig (except for a few comment and header tweaks).
      
              - https://bugs.webkit.org/show_bug.cgi?id=21158
                reduce use of virtual functions in Node for speed
      
              Speeds up Dromaeo a bit less than 1%.
      
              * bindings/js/JSNamedNodesCollection.cpp: Include Element.h instead of
              Node.h now that some inlines are in there.
      
              * dom/Attr.h: Override both the virtual and non-virtual name functions.
      
              * dom/ChildNodeList.cpp:
              (WebCore::ChildNodeList::nodeMatches): Updated to take an Element.
              * dom/ChildNodeList.h: Ditto.
              * dom/ClassNodeList.cpp:
              (WebCore::ClassNodeList::nodeMatches): Ditto.
              * dom/ClassNodeList.h: Ditto.
      
              * dom/Document.h: Put the Node::isDocumentNode() function's inline
              definition here where it can see the Document class definition.
      
              * dom/DynamicNodeList.cpp:
              (WebCore::DynamicNodeList::length): Changed to pass an Element.
              (WebCore::DynamicNodeList::itemForwardsFromCurrent): Ditto.
              (WebCore::DynamicNodeList::itemBackwardsFromCurrent): Ditto.
              (WebCore::DynamicNodeList::itemWithName): Ditto.
              * dom/DynamicNodeList.h: Ditto.
      
              * dom/Element.cpp: Removed virtualHasTagName.
              * dom/Element.h: Made localName, prefix, namespaceURI, and
              styleForRenderer non-virtual. Added virtualPrefix, virtualLocalName,
              virtualNamespaceURI, and removed virtualHasTagName. Put the
              Node::hasTagName, Node::hasAttributes, and Node::attributes
              functions' inline definitions here where they can see the Element
              class definition.
      
              * dom/NameNodeList.cpp:
              (WebCore::NameNodeList::nodeMatches): Updated to take an Element.
              * dom/NameNodeList.h: Ditto.
      
              * dom/Node.cpp:
              (WebCore::Node::virtualPrefix): Renamed from prefix.
              (WebCore::Node::virtualLocalName): Renamed from localName.
              (WebCore::Node::virtualNamespaceURI): Renamed from namespaceURI.
              (WebCore::Node::styleForRenderer): Handle the Element case here.
      
              * dom/Node.h: Removed definition of hasTagName that calls virtual,
              since we now have a non-virtual version. Made hasAttributes,
              attributes, remove, localName, namespaceURI, prefix, isDocumentNode,
              and styleForRenderer non-virtual. Added virtualPrefix,
              virtualLocalName, and virtualNamespaceURI. Removed isMalformed
              and setMalformed, which are used only on HTMLFormElement objects.
      
              * dom/TagNodeList.cpp:
              (WebCore::TagNodeList::nodeMatches): Updated to take an Element.
              * dom/TagNodeList.h: Ditto.
      
              * html/HTMLAnchorElement.cpp: Added a comment.
              * html/HTMLFormControlElement.cpp: Ditto.
      
              * html/HTMLAnchorElement.h: Removed unused, unimplemented setTabIndex
              function. Marked tabIndex function virtual explicitly for clarity.
      
              * html/HTMLAreaElement.h: Removed unused, unimplemented setTabIndex
              function. Marked isFocusable function virtual explicitly for clarity.
      
              * html/HTMLElement.h: Marked tabIndex function virtual explicitly for
              clarity.
              * html/HTMLFormControlElement.h: Ditto.
      
              * html/HTMLFormElement.h: Made isMalformed non-virtual.
      
              * html/HTMLParser.cpp:
              (WebCore::HTMLParser::handleError): Use the already-cast-to-HTMLElement
              pointer to call localName since that one does not need to call a virtual
              function.
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutBlock): Cast to HTMLFormElement before
              calling isMalformed. We already did a tag name check so we know it's
              an HTMLFormELement.
      
              * xml/XPathUtil.cpp:
              (WebCore::XPath::isValidContextNode): Rewrote to not make so many calls
              to nodeType(), since it's a virtual function.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37037 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      80c76ce7
  17. 25 Sep, 2008 1 commit
    • hyatt@apple.com's avatar
      2008-09-25 David Hyatt <hyatt@apple.com> · c01fb23a
      hyatt@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=21129
      
              Refactor contents size and scroll offset to be cross-platform.  Reduce further the number
              of platform-specific methods required of ScrollView implementations.
      
              Reviewed by Tim Hatcher
      
              * dom/MouseRelatedEvent.cpp:
              (WebCore::contentsX):
              (WebCore::contentsY):
              * html/HTMLBodyElement.cpp:
              (WebCore::HTMLBodyElement::scrollLeft):
              (WebCore::HTMLBodyElement::setScrollLeft):
              (WebCore::HTMLBodyElement::scrollTop):
              (WebCore::HTMLBodyElement::setScrollTop):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem):
              * page/DOMWindow.cpp:
              (WebCore::DOMWindow::scrollX):
              (WebCore::DOMWindow::scrollY):
              * page/EventHandler.cpp:
              (WebCore::EventHandler::hitTestResultAtPoint):
              * page/FrameView.cpp:
              (WebCore::FrameView::scrollTo):
              (WebCore::FrameView::windowClipRect):
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::visibleContentRect):
              (WebCore::ScrollView::contentsSize):
              (WebCore::ScrollView::platformContentsSize):
              * platform/ScrollView.h:
              (WebCore::ScrollView::scrollPosition):
              (WebCore::ScrollView::scrollOffset):
              (WebCore::ScrollView::scrollX):
              (WebCore::ScrollView::scrollY):
              (WebCore::ScrollView::contentsWidth):
              (WebCore::ScrollView::contentsHeight):
              * platform/gtk/ScrollViewGtk.cpp:
              (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
              (WebCore::ScrollView::setGtkAdjustments):
              (WebCore::ScrollView::resizeContents):
              (WebCore::ScrollView::contentsWidth):
              (WebCore::ScrollView::contentsHeight):
              (WebCore::ScrollView::scrollOffset):
              (WebCore::ScrollView::maximumScroll):
              (WebCore::ScrollView::scrollBy):
              (WebCore::ScrollView::suppressScrollbars):
              (WebCore::ScrollView::setHScrollbarMode):
              (WebCore::ScrollView::setVScrollbarMode):
              (WebCore::ScrollView::setScrollbarsMode):
              (WebCore::ScrollView::setFrameGeometry):
              (WebCore::ScrollView::updateScrollbars):
              * platform/mac/ScrollViewMac.mm:
              (WebCore::ScrollView::platformContentsSize):
              (WebCore::ScrollView::scrollBy):
              * platform/mac/WidgetMac.mm:
              (WebCore::Widget::convertFromContainingWindow):
              (WebCore::Widget::convertToContainingWindow):
              * platform/qt/ScrollViewQt.cpp:
              (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
              (WebCore::ScrollView::resizeContents):
              (WebCore::ScrollView::setFrameGeometry):
              (WebCore::ScrollView::scrollOffset):
              (WebCore::ScrollView::maximumScroll):
              (WebCore::ScrollView::scrollBy):
              (WebCore::ScrollView::setHScrollbarMode):
              (WebCore::ScrollView::setVScrollbarMode):
              (WebCore::ScrollView::setScrollbarsMode):
              (WebCore::ScrollView::updateScrollbars):
              * platform/win/ScrollViewWin.cpp:
              (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
              (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
              (WebCore::ScrollView::resizeContents):
              (WebCore::ScrollView::setFrameGeometry):
              (WebCore::ScrollView::scrollOffset):
              (WebCore::ScrollView::maximumScroll):
              (WebCore::ScrollView::scrollBy):
              (WebCore::ScrollView::setHScrollbarMode):
              (WebCore::ScrollView::setVScrollbarMode):
              (WebCore::ScrollView::setScrollbarsMode):
              (WebCore::ScrollView::updateScrollbars):
              * platform/wx/ScrollViewWx.cpp:
              (WebCore::ScrollView::platformVisibleContentRect):
              (WebCore::ScrollView::platformContentsSize):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::nodeAtPoint):
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::scrollRectToVisible):
              (WebCore::RenderLayer::calculateClipRects):
              (WebCore::RenderLayer::calculateRects):
              * rendering/RenderView.cpp:
              (WebCore::RenderView::absolutePosition):
              (WebCore::RenderView::computeAbsoluteRepaintRect):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36925 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c01fb23a
  18. 16 Sep, 2008 2 commits
    • mitz@apple.com's avatar
      WebCore: · d9462a52
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=15129
                <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
      
              Covered by fast/repaint/4776765.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
              did not have layout in the beginning.
              (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
              layout in the beginning, repaint it in its new position, to compensate
              for the above (regardless of whether it "moved").
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
              about generalizing this fix in the future.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - updated results for https://bugs.webkit.org/show_bug.cgi?id=15129
                <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
      
              * platform/mac/fast/repaint/4776765-expected.checksum:
              * platform/mac/fast/repaint/4776765-expected.png:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36515 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d9462a52
    • mitz@apple.com's avatar
      WebCore: · 6d92520b
      mitz@apple.com authored
              Reviewed by Dave Hyatt.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=15384
                Div does not notice when grandparent changes height
      
              Test: fast/block/basic/quirk-percent-height-grandchild.html
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=20714
                Resizing Gmail inbox vertically results in whitespace at the bottom of the window
      
              Test: fast/replaced/percent-height-in-anonymous-block.html
      
              Added a two-way mapping between boxes with percentage heights and
              their non-parent ancestors up to the one the height is computed relative
              to. In quirks mode (the first bug), this can be any number of containing
              block with auto height. In strict mode (the second bug) this can be
              the containing block of an anonymous block containing a replaced
              element.
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
              mapping to/from this block to percentage-height descendants.
              (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
              percentage-height descendants (and their containing block ancestry chain
              up to this block) for layout. This ensures that those descendants whose
              height depends on the height of this block (or an ancestor) are updated.
              (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
              a two-way mapping between this block and the given box.
              (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
              all the mapping to/from this box.
              * rendering/RenderBlock.h:
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::setStyle): Added calls to
              removePercentHeightDescendant() when style changes and the box
              previously had a percentage height. An exception is when the style
              change does not require layout, in which case the box still has
              a percentage height and the mappings are valid. In all other cases,
              any required mappings will be (re-)established during layout.
              (WebCore::RenderBox::destroy): Added a call to
              removePercentHeightDescendant.
              (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
              mode, if a higher-than-parent containing block is affecting the box's
              height, creates a mapping between the box and that block.
              (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
              anonymous containing blocks, if any, and when that happens, use
              addPercentHeightDescendant() to ensure that the non-anonymous block
              is aware of the dependent percent-height box.
      
      LayoutTests:
      
              Reviewed by Dave Hyatt.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=15384
                Div does not notice when grandparent changes height
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=20714
                Resizing Gmail inbox vertically results in whitespace at the bottom of the window
      
              * fast/block/basic/quirk-percent-height-grandchild.html: Added.
              * fast/replaced/percent-height-in-anonymous-block.html: Added.
              * platform/mac/fast/block/basic/quirk-percent-height-grandchild-expected.checksum: Added.
              * platform/mac/fast/block/basic/quirk-percent-height-grandchild-expected.png: Added.
              * platform/mac/fast/block/basic/quirk-percent-height-grandchild-expected.txt: Added.
              * platform/mac/fast/replaced/percent-height-in-anonymous-block-expected.checksum: Added.
              * platform/mac/fast/replaced/percent-height-in-anonymous-block-expected.png: Added.
              * platform/mac/fast/replaced/percent-height-in-anonymous-block-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36513 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6d92520b
  19. 14 Sep, 2008 1 commit
    • weinig@apple.com's avatar
      JavaScriptCore: · 064861af
      weinig@apple.com authored
      2008-09-14  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Mark Rowe.
      
              Remove extraneous semicolons.
      
              * kjs/nodes.cpp:
              (JSC::PrefixResolveNode::emitCode):
              * wtf/FastMalloc.cpp:
              (WTF::TCMalloc_PageHeap::GrowHeap):
      
      WebCore:
      
      2008-09-14  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Mark Rowe.
      
              Remove extraneous semicolons.
      
              * bindings/scripts/CodeGeneratorObjC.pm:
              * html/HTMLLinkElement.cpp:
              (WebCore::HTMLLinkElement::tokenizeRelAttribute):
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::charsetAttributeValue):
              (WebCore::HTMLScriptElement::typeAttributeValue):
              * platform/graphics/qt/GradientQt.cpp:
              (WebCore::Gradient::platformGradient):
              * platform/qt/ScrollViewQt.cpp:
              (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
              * platform/win/ScrollViewWin.cpp:
              (WebCore::ScrollView::updateScrollbars):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::paintEllipsisBoxes):
              * svg/SVGPathSegList.cpp:
              (WebCore::SVGPathSegList::toPathData):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36406 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      064861af
  20. 04 Sep, 2008 1 commit
    • mitz@apple.com's avatar
      WebCore: · 89557c51
      mitz@apple.com authored
              Reviewed by Dave Hyatt.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=19717
                <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
              positioned movement only case, call
              tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
              layout if that fails.
              (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
              * rendering/RenderBox.h:
              (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
              layoutDoingPositionedMovementOnly to this, and made this function
              check if the width changed. If it did, return, leaving the object
              dirty. The caller can then call layout(). The width can change even
              in the "positioned movement only" case if the object is shrink-to-fit
              and the available width constraint is met. (This was the case in the
              bug).
              * rendering/RenderObject.h:
              (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
              Renamed layoutDoingPositionedMovementOnly() to this.
      
      LayoutTests:
      
              Reviewed by Dave Hyatt.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=19717
                <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
      
              * fast/block/positioning/move-with-auto-width.html: Added.
              * platform/mac/fast/block/positioning/move-with-auto-width-expected.checksum: Added.
              * platform/mac/fast/block/positioning/move-with-auto-width-expected.png: Added.
              * platform/mac/fast/block/positioning/move-with-auto-width-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36082 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      89557c51
  21. 03 Sep, 2008 1 commit
    • hyatt@apple.com's avatar
      WebCore: · 4b38ed82
      hyatt@apple.com authored
      2008-09-03  David Hyatt  <hyatt@apple.com>
      
              Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
      
              Reviewed by Darin (ages ago)
      
              Added fast/block/float/clamped-right-float.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::positionNewFloats):
      
      LayoutTests:
      
      2008-09-03  David Hyatt  <hyatt@apple.com>
      
              Fix for bug 18203.
      
              Reviewed by Darin (ages ago).
      
              * fast/block/float/clamped-right-float.html: Added.
              * platform/mac/fast/block/float/clamped-right-float-expected.checksum: Added.
              * platform/mac/fast/block/float/clamped-right-float-expected.png: Added.
              * platform/mac/fast/block/float/clamped-right-float-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@36061 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4b38ed82
  22. 07 Aug, 2008 1 commit
    • simon.fraser@apple.com's avatar
      2008-08-07 Simon Fraser <simon.fraser@apple.com> · 6a1316d3
      simon.fraser@apple.com authored
              Reviewed by Sam Weinig
      
              Rename Marquee to RenderMarquee and move to its own file.
              https://bugs.webkit.org/show_bug.cgi?id=20319
      
              * GNUmakefile.am:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
              * WebCoreSources.bkl:
              * html/HTMLMarqueeElement.cpp:
              * rendering/RenderBlock.cpp:
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::styleChanged):
              * rendering/RenderLayer.h:
              * rendering/RenderMarquee.cpp: Added.
              (WebCore::RenderMarquee::RenderMarquee):
              (WebCore::RenderMarquee::marqueeSpeed):
              (WebCore::RenderMarquee::direction):
              (WebCore::RenderMarquee::isHorizontal):
              (WebCore::RenderMarquee::computePosition):
              (WebCore::RenderMarquee::start):
              (WebCore::RenderMarquee::suspend):
              (WebCore::RenderMarquee::stop):
              (WebCore::RenderMarquee::updateMarqueePosition):
              (WebCore::RenderMarquee::updateMarqueeStyle):
              (WebCore::RenderMarquee::timerFired):
              * rendering/RenderMarquee.h: Added.
              (WebCore::RenderMarquee::speed):
              (WebCore::RenderMarquee::reverseDirection):
              (WebCore::RenderMarquee::setEnd):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35627 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6a1316d3
  23. 01 Aug, 2008 1 commit
    • hyatt@apple.com's avatar
      2008-07-30 David Hyatt <hyatt@apple.com> · 90949397
      hyatt@apple.com authored
              Improvements to selection drawing.
      
              Clip out floating and positioned objects when drawing selection so
              that there is no "double painting" of selection when the selection spans both the space behind the positioned/floating
              object and the positioned/floating object itself.  Improves most Web pages.
      
              Do not paint left/right selection gaps if the object's edge is already outside the boundary (at a negative
              position).  Significantly improves the look of selections on digg.com, since it uses giant negative text-indent.
      
              Reviewed by Dan
      
              Covered by existing selection pixel tests.
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::isSelectionRoot):
              (WebCore::RenderBlock::paintSelection):
              (WebCore::clipOutPositionedObjects):
              (WebCore::RenderBlock::fillSelectionGaps):
              (WebCore::RenderBlock::fillLeftSelectionGap):
              (WebCore::RenderBlock::fillRightSelectionGap):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35515 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      90949397
  24. 29 Jul, 2008 1 commit
    • mitz@apple.com's avatar
      WebCore: · 3fce1b33
      mitz@apple.com authored
              Reviewed by Dave Hyatt.
      
              - fix <rdar://problem/6059648> Some content not visible when the window is short at courtneyalbright.com
      
              Test: fast/overflow/float-in-relpositioned.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::lowestPosition): Add this block's relative offset
              to floats' and positioned objects' lowest position.
              (WebCore::RenderBlock::rightmostPosition): Ditto.
              (WebCore::RenderBlock::leftmostPosition): Ditto.
              * rendering/RenderBox.cpp:
              (WebCore::RenderBox::lowestPosition): Removed redundant test.
              (WebCore::RenderBox::rightmostPosition): Ditto.
              (WebCore::RenderBox::leftmostPosition): Ditto.
      
      LayoutTests:
      
              Reviewed by Dave Hyatt.
      
              - test, updated test and results for <rdar://problem/6059648> Some content not visible when the window is short at courtneyalbright.com
      
              * fast/overflow/float-in-relpositioned.html: Added.
              * fast/repaint/containing-block-position-change.html: Changed to avoid
              a full repaint due to a scroll bar appearing.
              * platform/mac/fast/clip/015-expected.txt:
              * platform/mac/fast/overflow/float-in-relpositioned-expected.checksum: Added.
              * platform/mac/fast/overflow/float-in-relpositioned-expected.png: Added.
              * platform/mac/fast/overflow/float-in-relpositioned-expected.txt: Added.
              * platform/mac/fast/repaint/clipped-relative-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35427 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3fce1b33
  25. 12 Jul, 2008 1 commit
    • mitz@apple.com's avatar
      WebCore: · dfd8dd58
      mitz@apple.com authored
              Reviewed by Oliver Hunt.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=18088
                <rdar://problem/6036232> white-space:nowrap; float:left; causing the misalignment issue
      
              Test: fast/block/basic/min-pref-width-nowrap-floats.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::calcInlinePrefWidths): Fixed a case where a
              float's width was added to the minimum preferred widths instead of just
              acting as a lower bound on the minimum preferred width (since the float
              can always be pushed down to be the only thing on the line).
      
      LayoutTests:
      
              Reviewed by Oliver Hunt.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=18088
                <rdar://problem/6036232> white-space:nowrap; float:left; causing the misalignment issue
      
              * fast/block/basic/min-pref-width-nowrap-floats.html: Added.
              * platform/mac/fast/block/basic/min-pref-width-nowrap-floats-expected.checksum: Added.
              * platform/mac/fast/block/basic/min-pref-width-nowrap-floats-expected.png: Added.
              * platform/mac/fast/block/basic/min-pref-width-nowrap-floats-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@35152 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      dfd8dd58
  26. 20 Jun, 2008 2 commits
    • timothy@apple.com's avatar
      Fixes: Bug 19679: iframes with a height of 32,768px or greater do not layout correctly · c59ad194
      timothy@apple.com authored
      WebCore:
      
      2008-06-19  Timothy Hatcher  <timothy@apple.com>
      
              Changed all lineHeight, baselinePosition and verticalPositionHint
              calls to return int instead of short. The short was overflowing
              when a value greater than 32,767 was encountered.
      
              Fixes: iframes with a height of 32,768px or greater do not layout correctly
              https://bugs.webkit.org/show_bug.cgi?id=19679
      
              Reviewed by Dave Hyatt.
      
              Test: fast/css/line-height-overflow.html
      
              * rendering/RenderBR.cpp:
              (WebCore::RenderBR::baselinePosition):
              * rendering/RenderBR.h:
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::lineHeight):
              * rendering/RenderBlock.h:
              * rendering/RenderFlow.cpp:
              * rendering/RenderFlow.h:
              * rendering/RenderListBox.cpp:
              * rendering/RenderListBox.h:
              * rendering/RenderListMarker.cpp:
              (WebCore::RenderListMarker::lineHeight):
              * rendering/RenderListMarker.h:
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::verticalPositionHint):
              * rendering/RenderObject.h:
              (WebCore::):
              * rendering/RenderPath.cpp:
              (WebCore::RenderPath::lineHeight):
              * rendering/RenderPath.h:
              * rendering/RenderReplaced.cpp:
              (WebCore::RenderReplaced::lineHeight):
              * rendering/RenderReplaced.h:
              * rendering/RenderSVGContainer.cpp:
              (WebCore::RenderSVGContainer::lineHeight):
              * rendering/RenderSVGContainer.h:
              * rendering/RenderSVGHiddenContainer.cpp:
              (WebCore::RenderSVGHiddenContainer::lineHeight):
              * rendering/RenderSVGHiddenContainer.h:
              * rendering/RenderSVGRoot.cpp:
              (WebCore::RenderSVGRoot::lineHeight):
              * rendering/RenderSVGRoot.h:
              * rendering/RenderSlider.cpp:
              * rendering/RenderSlider.h:
              * rendering/RenderTableCell.cpp:
              * rendering/RenderTableCell.h:
              * rendering/RenderTableCol.h:
              * rendering/RenderTableRow.h:
              * rendering/RenderTableSection.h:
              * rendering/RenderText.cpp:
              * rendering/RenderText.h:
              * rendering/RenderTextControl.cpp:
              * rendering/RenderTextControl.h:
              * rendering/RenderTheme.cpp:
              * rendering/RenderTheme.h:
              * rendering/RenderThemeMac.h:
              * rendering/RenderThemeMac.mm:
              * rendering/RenderThemeSafari.cpp:
              * rendering/RenderThemeSafari.h:
      
      LayoutTests:
      
      2008-06-19  Timothy Hatcher  <timothy@apple.com>
      
              Test for: iframes with a height of 32,768px or greater do not layout correctly
              https://bugs.webkit.org/show_bug.cgi?id=19679
      
              Reviewed by Dave Hyatt.
      
              * fast/css/line-height-overflow.html: Added.
              * platform/mac/fast/css/line-height-overflow-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34693 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c59ad194
    • mitz@apple.com's avatar
      WebCore: · 9f7cc0e3
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=19519
                <rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
      
              Test: fast/table/prepend-in-anonymous-table.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::addChildToFlow): Added code to handle the case
              of inserting before a child that has been wrapped by an anonymous table,
              in which case if the new child is the type that needs to be in a table,
              it is inserted into the table, and otherwise it is inserted before the
              table.
              * rendering/RenderTable.cpp:
              (WebCore::RenderTable::addChild): Added table-column-group alongside
              table-caption as content that can exist inside an anonymous table
              without being wrapped in a table section.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=19519
                <rdar://problem/6007345> DOM modification causes stack exhaustion (BUTTON OBJECT COLGROUP)
      
              * fast/table/prepend-in-anonymous-table.html: Added.
              * platform/mac/fast/table/prepend-in-anonymous-table-expected.checksum: Added.
              * platform/mac/fast/table/prepend-in-anonymous-table-expected.png: Added.
              * platform/mac/fast/table/prepend-in-anonymous-table-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34692 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9f7cc0e3
  27. 16 Jun, 2008 1 commit
    • darin@apple.com's avatar
      WebCore: · 60d3e9f9
      darin@apple.com authored
      2008-06-15  Darin Adler  <darin@apple.com>
      
              - give Frame object functions shorter names: scriptProxy() -> script(),
                selectionController() -> selection(), animationController() -> animation()
      
              * WebCore.base.exp:
              * bindings/js/JSCustomSQLStatementCallback.cpp:
              (WebCore::JSCustomSQLStatementCallback::handleEvent):
              * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
              (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
              * bindings/js/JSCustomSQLTransactionCallback.cpp:
              (WebCore::JSCustomSQLTransactionCallback::handleEvent):
              * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
              (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
              * bindings/js/JSCustomVoidCallback.cpp:
              (WebCore::JSCustomVoidCallback::handleEvent):
              * bindings/js/JSCustomXPathNSResolver.cpp:
              (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
              * bindings/js/JSDOMWindowBase.cpp:
              (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
              (WebCore::allowPopUp):
              (WebCore::createWindow):
              (WebCore::windowProtoFuncOpen):
              (WebCore::toJS):
              (WebCore::toJSDOMWindow):
              * bindings/js/JSDOMWindowCustom.cpp:
              (WebCore::JSDOMWindow::setLocation):
              * bindings/js/JSDOMWindowShell.cpp:
              (WebCore::toJS):
              (WebCore::toJSDOMWindowShell):
              * bindings/js/JSDocumentCustom.cpp:
              (WebCore::JSDocument::setLocation):
              * bindings/js/JSLocationCustom.cpp:
              (WebCore::navigateIfAllowed):
              (WebCore::JSLocation::reload):
              * bindings/js/JSNodeFilterCondition.cpp:
              (WebCore::JSNodeFilterCondition::acceptNode):
              * bindings/js/ScheduledAction.cpp:
              (WebCore::ScheduledAction::execute):
              * bindings/js/kjs_events.cpp:
              (WebCore::JSAbstractEventListener::handleEvent):
              (WebCore::JSLazyEventListener::parseCode):
              * bindings/js/kjs_html.cpp:
              (WebCore::runtimeObjectImplementsCall):
              * bindings/objc/DOMInternal.mm:
              (-[WebScriptObject _initializeScriptDOMNodeImp]):
              * bridge/jni/jni_jsobject.mm:
              (createRootObject):
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
              * dom/Document.cpp:
              (WebCore::Document::nodeWillBeRemoved):
              (WebCore::Document::createHTMLEventListener):
              * dom/Element.cpp:
              (WebCore::Element::updateFocusAppearance):
              * dom/EventTarget.cpp:
              (WebCore::EventTarget::dispatchGenericEvent):
              * dom/XMLTokenizer.cpp:
              (WebCore::XMLTokenizer::startElementNs):
              * editing/DeleteButtonController.cpp:
              (WebCore::DeleteButtonController::respondToChangedSelection):
              (WebCore::DeleteButtonController::enable):
              (WebCore::DeleteButtonController::deleteTarget):
              * editing/EditCommand.cpp:
              (WebCore::EditCommand::EditCommand):
              * editing/Editor.cpp:
              (WebCore::Editor::selectionForCommand):
              (WebCore::Editor::canEdit):
              (WebCore::Editor::canEditRichly):
              (WebCore::Editor::canDHTMLCut):
              (WebCore::Editor::canDHTMLCopy):
              (WebCore::Editor::canCopy):
              (WebCore::Editor::canDelete):
              (WebCore::Editor::deleteWithDirection):
              (WebCore::Editor::deleteSelectionWithSmartDelete):
              (WebCore::Editor::replaceSelectionWithFragment):
              (WebCore::Editor::selectedRange):
              (WebCore::Editor::tryDHTMLCopy):
              (WebCore::Editor::tryDHTMLCut):
              (WebCore::Editor::fontForSelection):
              (WebCore::Editor::selectionUnorderedListState):
              (WebCore::Editor::selectionOrderedListState):
              (WebCore::Editor::increaseSelectionListLevel):
              (WebCore::Editor::increaseSelectionListLevelOrdered):
              (WebCore::Editor::increaseSelectionListLevelUnordered):
              (WebCore::Editor::decreaseSelectionListLevel):
              (WebCore::Editor::dispatchCPPEvent):
              (WebCore::Editor::applyStyle):
              (WebCore::Editor::applyParagraphStyle):
              (WebCore::Editor::applyStyleToSelection):
              (WebCore::Editor::applyParagraphStyleToSelection):
              (WebCore::Editor::selectionHasStyle):
              (WebCore::Editor::appliedEditing):
              (WebCore::Editor::unappliedEditing):
              (WebCore::Editor::reappliedEditing):
              (WebCore::Editor::insertLineBreak):
              (WebCore::Editor::insertParagraphSeparator):
              (WebCore::Editor::paste):
              (WebCore::Editor::selectComposition):
              (WebCore::Editor::confirmComposition):
              (WebCore::Editor::setComposition):
              (WebCore::Editor::advanceToNextMisspelling):
              (WebCore::Editor::isSelectionUngrammatical):
              (WebCore::Editor::guessesForUngrammaticalSelection):
              (WebCore::Editor::getCompositionSelection):
              (WebCore::Editor::transpose):
              * editing/EditorCommand.cpp:
              (WebCore::expandSelectionToGranularity):
              (WebCore::executeDeleteToMark):
              (WebCore::executeMoveBackward):
              (WebCore::executeMoveBackwardAndModifySelection):
              (WebCore::executeMoveDown):
              (WebCore::executeMoveDownAndModifySelection):
              (WebCore::executeMoveForward):
              (WebCore::executeMoveForwardAndModifySelection):
              (WebCore::executeMoveLeft):
              (WebCore::executeMoveLeftAndModifySelection):
              (WebCore::executeMovePageDown):
              (WebCore::executeMovePageDownAndModifySelection):
              (WebCore::executeMovePageUp):
              (WebCore::executeMovePageUpAndModifySelection):
              (WebCore::executeMoveRight):
              (WebCore::executeMoveRightAndModifySelection):
              (WebCore::executeMoveToBeginningOfDocument):
              (WebCore::executeMoveToBeginningOfDocumentAndModifySelection):
              (WebCore::executeMoveToBeginningOfLine):
              (WebCore::executeMoveToBeginningOfLineAndModifySelection):
              (WebCore::executeMoveToBeginningOfParagraph):
              (WebCore::executeMoveToBeginningOfParagraphAndModifySelection):
              (WebCore::executeMoveToBeginningOfSentence):
              (WebCore::executeMoveToBeginningOfSentenceAndModifySelection):
              (WebCore::executeMoveToEndOfDocument):
              (WebCore::executeMoveToEndOfDocumentAndModifySelection):
              (WebCore::executeMoveToEndOfSentence):
              (WebCore::executeMoveToEndOfSentenceAndModifySelection):
              (WebCore::executeMoveToEndOfLine):
              (WebCore::executeMoveToEndOfLineAndModifySelection):
              (WebCore::executeMoveToEndOfParagraph):
              (WebCore::executeMoveToEndOfParagraphAndModifySelection):
              (WebCore::executeMoveParagraphBackwardAndModifySelection):
              (WebCore::executeMoveParagraphForwardAndModifySelection):
              (WebCore::executeMoveUp):
              (WebCore::executeMoveUpAndModifySelection):
              (WebCore::executeMoveWordBackward):
              (WebCore::executeMoveWordBackwardAndModifySelection):
              (WebCore::executeMoveWordForward):
              (WebCore::executeMoveWordForwardAndModifySelection):
              (WebCore::executeMoveWordLeft):
              (WebCore::executeMoveWordLeftAndModifySelection):
              (WebCore::executeMoveWordRight):
              (WebCore::executeMoveWordRightAndModifySelection):
              (WebCore::executeSelectAll):
              (WebCore::executeSelectToMark):
              (WebCore::executeSetMark):
              (WebCore::executeSwapWithMark):
              (WebCore::executeUnselect):
              (WebCore::enabledAnySelection):
              (WebCore::enabledAnySelectionAndMark):
              (WebCore::enabledInRichlyEditableText):
              (WebCore::enabledRangeInEditableText):
              (WebCore::enabledRangeInRichlyEditableText):
              * editing/ModifySelectionListLevel.cpp:
              (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
              (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
              * editing/RemoveFormatCommand.cpp:
              (WebCore::RemoveFormatCommand::doApply):
              * editing/SelectionController.cpp:
              (WebCore::SelectionController::setSelection):
              (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
              * editing/TypingCommand.cpp:
              (WebCore::TypingCommand::deleteSelection):
              (WebCore::TypingCommand::insertText):
              (WebCore::TypingCommand::deleteKeyPressed):
              (WebCore::TypingCommand::forwardDeleteKeyPressed):
              * history/CachedPage.cpp:
              (WebCore::CachedPage::CachedPage):
              (WebCore::CachedPage::restore):
              * html/HTMLAnchorElement.cpp:
              (WebCore::HTMLAnchorElement::defaultEventHandler):
              (WebCore::HTMLAnchorElement::setActive):
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::defaultEventHandler):
              * html/HTMLPlugInElement.cpp:
              (WebCore::HTMLPlugInElement::createNPObject):
              * html/HTMLScriptElement.cpp:
              (WebCore::HTMLScriptElement::evaluateScript):
              * html/HTMLTokenizer.cpp:
              (WebCore::HTMLTokenizer::parseTag):
              (WebCore::HTMLTokenizer::processToken):
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::executeScript):
              (WebCore::FrameLoader::clear):
              (WebCore::FrameLoader::userGestureHint):
              (WebCore::FrameLoader::open):
              (WebCore::FrameLoader::dispatchWindowObjectAvailable):
              (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
              * loader/archive/cf/LegacyWebArchive.cpp:
              (WebCore::LegacyWebArchive::createFromSelection):
              * page/AccessibilityRenderObject.cpp:
              (WebCore::AccessibilityRenderObject::selection):
              (WebCore::AccessibilityRenderObject::setSelectedTextRange):
              (WebCore::AccessibilityRenderObject::isFocused):
              (WebCore::AccessibilityRenderObject::doAXTextMarkerRangeForLine):
              (WebCore::AccessibilityRenderObject::doSetAXSelectedTextMarkerRange):
              (WebCore::AccessibilityRenderObject::doAXRangeForLine):
              (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
              * page/ContextMenuController.cpp:
              (WebCore::ContextMenuController::contextMenuItemSelected):
              * page/DOMSelection.cpp:
              (WebCore::DOMSelection::anchorNode):
              (WebCore::DOMSelection::baseNode):
              (WebCore::DOMSelection::anchorOffset):
              (WebCore::DOMSelection::baseOffset):
              (WebCore::DOMSelection::focusNode):
              (WebCore::DOMSelection::extentNode):
              (WebCore::DOMSelection::focusOffset):
              (WebCore::DOMSelection::extentOffset):
              (WebCore::DOMSelection::isCollapsed):
              (WebCore::DOMSelection::type):
              (WebCore::DOMSelection::rangeCount):
              (WebCore::DOMSelection::collapse):
              (WebCore::DOMSelection::collapseToEnd):
              (WebCore::DOMSelection::collapseToStart):
              (WebCore::DOMSelection::empty):
              (WebCore::DOMSelection::setBaseAndExtent):
              (WebCore::DOMSelection::setPosition):
              (WebCore::DOMSelection::modify):
              (WebCore::DOMSelection::extend):
              (WebCore::DOMSelection::getRangeAt):
              (WebCore::DOMSelection::removeAllRanges):
              (WebCore::DOMSelection::addRange):
              (WebCore::DOMSelection::deleteFromDocument):
              (WebCore::DOMSelection::containsNode):
              (WebCore::DOMSelection::toString):
              * page/DragController.cpp:
              (WebCore::DragController::dragIsMove):
              (WebCore::DragController::tryDocumentDrag):
              (WebCore::setSelectionToDragCaret):
              (WebCore::DragController::concludeDrag):
              (WebCore::prepareClipboardForImageDrag):
              (WebCore::DragController::startDrag):
              * page/EventHandler.cpp:
              (WebCore::EventHandler::selectClosestWordFromMouseEvent):
              (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
              (WebCore::EventHandler::handleMousePressEventDoubleClick):
              (WebCore::EventHandler::handleMousePressEventTripleClick):
              (WebCore::EventHandler::handleMousePressEventSingleClick):
              (WebCore::EventHandler::handleMousePressEvent):
              (WebCore::EventHandler::updateSelectionForMouseDrag):
              (WebCore::EventHandler::handleMouseReleaseEvent):
              (WebCore::nodeIsNotBeingEdited):
              (WebCore::EventHandler::selectCursor):
              (WebCore::EventHandler::dispatchMouseEvent):
              (WebCore::EventHandler::sendContextMenuEvent):
              (WebCore::EventHandler::handleKeyboardSelectionMovement):
              (WebCore::EventHandler::handleDrag):
              * page/FocusController.cpp:
              (WebCore::FocusController::setFocusedFrame):
              (WebCore::clearSelectionIfNeeded):
              (WebCore::FocusController::setActive):
              * page/Frame.cpp:
              (WebCore::Frame::~Frame):
              (WebCore::Frame::script):
              (WebCore::Frame::setDocument):
              (WebCore::Frame::selectedText):
              (WebCore::Frame::selection):
              (WebCore::Frame::animation):
              (WebCore::Frame::notifyRendererOfSelectionChange):
              (WebCore::Frame::invalidateSelection):
              (WebCore::Frame::clearCaretRectIfNeeded):
              (WebCore::Frame::setFocusedNodeIfNeeded):
              (WebCore::Frame::selectionLayoutChanged):
              (WebCore::Frame::caretBlinkTimerFired):
              (WebCore::Frame::paintCaret):
              (WebCore::Frame::shouldChangeSelection):
              (WebCore::Frame::updateSecureKeyboardEntryIfActive):
              (WebCore::Frame::computeAndSetTypingStyle):
              (WebCore::Frame::selectionComputedStyle):
              (WebCore::Frame::bindingRootObject):
              (WebCore::Frame::windowScriptNPObject):
              (WebCore::Frame::clearScriptController):
              (WebCore::Frame::selectionTextRects):
              (WebCore::Frame::currentForm):
              (WebCore::Frame::revealSelection):
              (WebCore::Frame::revealCaret):
              (WebCore::Frame::clearTimers):
              (WebCore::Frame::styleForSelectionStart):
              (WebCore::Frame::setSelectionFromNone):
              (WebCore::Frame::findString):
              (WebCore::Frame::pageDestroyed):
              (WebCore::Frame::respondToChangedSelection):
              (WebCore::FramePrivate::FramePrivate):
              * page/Frame.h:
              * page/FramePrivate.h:
              * page/InspectorController.cpp:
              (WebCore::canPassNodeToJavaScript):
              (WebCore::InspectorController::windowScriptObjectAvailable):
              * page/JavaScriptDebugServer.cpp:
              (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
              * page/Page.cpp:
              (WebCore::Page::findString):
              (WebCore::Page::selection):
              (WebCore::Page::setDebugger):
              * page/mac/FrameMac.mm:
              (WebCore::Frame::baseWritingDirectionForSelectionStart):
              (WebCore::Frame::dragImageForSelection):
              (WebCore::Frame::createScriptInstanceForWidget):
              (WebCore::Frame::windowScriptObject):
              * page/win/FrameWin.cpp:
              (WebCore::Frame::dragImageForSelection):
              * platform/ContextMenu.cpp:
              (WebCore::selectionContainsPossibleWord):
              (WebCore::ContextMenu::populate):
              (WebCore::ContextMenu::checkOrEnableIfNeeded):
              * plugins/PluginView.cpp:
              (WebCore::PluginView::performRequest):
              (WebCore::PluginView::bindingInstance):
              * rendering/HitTestResult.cpp:
              (WebCore::HitTestResult::isSelected):
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::paintCaret):
              * rendering/RenderListBox.cpp:
              (WebCore::RenderListBox::paintItemForeground):
              (WebCore::RenderListBox::paintItemBackground):
              * rendering/RenderObject.cpp:
              (WebCore::RenderObject::selectionBackgroundColor):
              (WebCore::RenderObject::selectionForegroundColor):
              (WebCore::RenderObject::setAnimatableStyle):
              (WebCore::RenderObject::destroy):
              (WebCore::RenderObject::animation):
              * rendering/RenderObject.h:
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::selectionStart):
              (WebCore::RenderTextControl::selectionEnd):
              (WebCore::RenderTextControl::setSelectionRange):
              (WebCore::RenderTextControl::selectionChanged):
              (WebCore::RenderTextControl::capsLockStateMayHaveChanged):
              * rendering/RenderTheme.cpp:
              (WebCore::RenderTheme::isFocused):
              * rendering/RenderTreeAsText.cpp:
              (WebCore::writeSelection):
              * rendering/RenderWidget.cpp:
              (WebCore::RenderWidget::destroy):
              * svg/SVGDocumentExtensions.cpp:
              (WebCore::SVGDocumentExtensions::createSVGEventListener):
              * svg/SVGSVGElement.cpp:
              (WebCore::SVGSVGElement::deselectAll):
              * svg/SVGTextContentElement.cpp:
              (WebCore::SVGTextContentElement::selectSubString):
      
      WebKit/gtk:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              - give Frame object functions shorter names: scriptProxy() -> script(),
                selectionController() -> selection(), animationController() -> animation()
      
              * WebCoreSupport/EditorClientGtk.cpp:
              (WebKit::EditorClient::handleKeyboardEvent):
              * WebCoreSupport/FrameLoaderClientGtk.cpp:
              (WebKit::FrameLoaderClient::windowObjectCleared):
              * webkit/webkitwebframe.cpp:
              * webkit/webkitwebview.cpp:
      
      WebKit/mac:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              - give Frame object functions shorter names: scriptProxy() -> script(),
                selectionController() -> selection(), animationController() -> animation()
      
              * Plugins/WebPluginController.mm:
              (-[WebPluginController webPlugInContainerSelectionColor]):
              * WebView/WebFrame.mm:
              (-[WebFrame _attachScriptDebugger]):
              (-[WebFrame _hasSelection]):
              (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
              (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
              (-[WebFrame _convertToNSRange:]):
              (-[WebFrame _convertToDOMRange:]):
              (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
              (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]):
              (-[WebFrame _insertParagraphSeparatorInQuotedContent]):
              (-[WebFrame _selectedNSRange]):
              (-[WebFrame _selectNSRange:]):
              (-[WebFrame globalContext]):
              * WebView/WebHTMLView.mm:
              (-[WebHTMLView _selectedRange]):
              (-[WebHTMLView _hasSelection]):
              (-[WebHTMLView _hasSelectionOrInsertionPoint]):
              (-[WebHTMLView _hasInsertionPoint]):
              (-[WebHTMLView _isEditable]):
              (-[WebHTMLView _updateFocusedAndActiveState]):
              (-[WebHTMLView readSelectionFromPasteboard:]):
              (-[WebHTMLView validateUserInterfaceItemWithoutDelegate:]):
              (-[WebHTMLView maintainsInactiveSelection]):
              (-[WebHTMLView paste:]):
              (isTextInput):
              (-[WebHTMLView inputContext]):
              (-[WebTextCompleteController doCompletion]):
              (-[WebHTMLView selectAll]):
              (-[WebHTMLView deselectAll]):
              (-[WebHTMLView selectedAttributedString]):
              * WebView/WebView.mm:
              (-[WebView aeDescByEvaluatingJavaScriptFromString:]):
              (-[WebView setSelectedDOMRange:affinity:]):
              (-[WebView selectedDOMRange]):
              (-[WebView selectionAffinity]):
      
      WebKit/qt:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              - give Frame object functions shorter names: scriptProxy() -> script(),
                selectionController() -> selection(), animationController() -> animation()
      
              * Api/qwebframe.cpp:
              (QWebFrame::evaluateJavaScript):
              * Api/qwebpage.cpp:
              (QWebPagePrivate::focusInEvent):
              (QWebPagePrivate::focusOutEvent):
              (QWebPage::inputMethodQuery):
              * WebCoreSupport/EditorClientQt.cpp:
              (WebCore::EditorClientQt::handleKeyboardEvent):
      
      WebKit/win:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              - give Frame object functions shorter names: scriptProxy() -> script(),
                selectionController() -> selection(), animationController() -> animation()
      
              * WebFrame.cpp:
              (WebFrame::globalContext):
              (WebFrame::windowObjectCleared):
              * WebView.cpp:
              (WebView::handleContextMenuEvent):
              (WebViewWndProc):
              (WebView::updateFocusedAndActiveState):
              (WebView::hasSelectedRange):
              (WebView::replaceSelectionWithText):
              (WebView::clearSelection):
              (WebView::prepareCandidateWindow):
              (WebView::onIMERequestCharPosition):
              (WebView::onIMERequestReconvertString):
      
      WebKit/wx:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              - give Frame object functions shorter names: scriptProxy() -> script(),
                selectionController() -> selection(), animationController() -> animation()
      
              * WebKitSupport/EditorClientWx.cpp:
              (WebCore::EditorClientWx::handleKeyboardEvent):
              * WebView.cpp:
              (wxWebView::RunScript):
              (wxWebView::OnSetFocus):
              (wxWebView::OnKillFocus):
      
      WebKitTools:
      
      2008-06-15  Darin Adler  <darin@apple.com>
      
              * Scripts/do-webcore-rename: Updated for the latest round of renaming.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34589 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      60d3e9f9
  28. 08 Jun, 2008 1 commit
    • mitz@apple.com's avatar
      WebCore: · ce2c3011
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix <rdar://problem/5961977> Crash in RenderBlock::layoutColumns()
      
              Test: fast/multicol/content-height-zero-crash.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutColumns): Changed to not keep creating
              overflow columns that have zero height, because they do not help with
              fitting content in.
      
      LayoutTests:
      
              - test for <rdar://problem/5961977> Crash in RenderBlock::layoutColumns()
      
              Reviewed by Darin Adler.
      
              * fast/multicol/content-height-zero-crash-expected.txt: Added.
              * fast/multicol/content-height-zero-crash.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34458 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ce2c3011
  29. 30 May, 2008 1 commit
    • mitz@apple.com's avatar
      WebCore: · 88c7b054
      mitz@apple.com authored
              Reviewed by Darin Adler and Dave Hyatt.
      
              - eliminate excessive repainting when an object's final position
                after layout is unchanged
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutBlockChildren): Removed the full repaint
              for the case that the final position is unchanged but the position at
              which an intermediate layout occurred was different. Any repainting
              done during the intermediate layout would have happened at the object's
              initial (and also final) coordinates, since layoutDelta is factored
              into repaint rect calculations.
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - updated pixel results for "eliminate excessive repainting when an
                object's final position after layout is unchanged"
      
              * platform/mac/fast/repaint/intermediate-layout-position-clip-expected.checksum:
              * platform/mac/fast/repaint/intermediate-layout-position-clip-expected.png:
              * platform/mac/fast/repaint/intermediate-layout-position-expected.checksum:
              * platform/mac/fast/repaint/intermediate-layout-position-expected.png:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@34267 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      88c7b054
  30. 08 May, 2008 1 commit
    • mitz@apple.com's avatar
      WebCore: · c2266d1a
      mitz@apple.com authored
              Reviewed by Mark Rowe.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=18818
                <rdar://problem/5901544> REGRESSION (3.1.1-TOT): Character order (float:left ordered after the first letter)
      
              Test: fast/css/first-letter-float-after-float.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::updateFirstLetter): Changed to add the first
              letter container right before the rest of the text it is taken from,
              instead of at the beginning of the block.
      
      LayoutTests:
      
              Reviewed by Mark Rowe.
      
              - test and updated results for https://bugs.webkit.org/show_bug.cgi?id=18818
                <rdar://problem/5901544> REGRESSION (3.1.1-TOT): Character order (float:left ordered after the first letter)
      
              * ChangeLog:
              * fast/css/first-letter-float-after-float.html: Added.
              * platform/mac-leopard/fast/css/first-letter-skip-out-of-flow-expected.checksum:
              * platform/mac-leopard/fast/css/first-letter-skip-out-of-flow-expected.png:
              * platform/mac/fast/css/first-letter-float-after-float-expected.checksum: Added.
              * platform/mac/fast/css/first-letter-float-after-float-expected.png: Added.
              * platform/mac/fast/css/first-letter-float-after-float-expected.txt: Added.
              * platform/mac/fast/css/first-letter-skip-out-of-flow-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32992 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c2266d1a
  31. 07 May, 2008 2 commits
    • mitz@apple.com's avatar
      WebCore: · a801ef1d
      mitz@apple.com authored
              Reviewed by John Sullivan.
      
              - fix https://bugs.webkit.org/show_bug.cgi?id=18909
                <rdar://problem/5914165> REGRESSION (r31872-r31878): Viewed photos not closing completely at indycar.com
      
              Test: fast/dynamic/positioned-movement-with-positioned-children.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::layoutOnlyPositionedObjects): Cover the case of
              a positioned object that has only moved and has only positioned children
              that have changed.
              * rendering/RenderObject.h:
              (WebCore::RenderObject::needsPositionedMovementLayout): Added this
              accessor.
      
      LayoutTests:
      
              Reviewed by John Sullivan.
      
              - test for https://bugs.webkit.org/show_bug.cgi?id=18909
                <rdar://problem/5914165> REGRESSION (r31872-r31878): Viewed photos not closing completely at indycar.com
      
              * fast/dynamic/positioned-movement-with-positioned-children.html: Added.
              * platform/mac/fast/dynamic/positioned-movement-with-positioned-children-expected.checksum: Added.
              * platform/mac/fast/dynamic/positioned-movement-with-positioned-children-expected.png: Added.
              * platform/mac/fast/dynamic/positioned-movement-with-positioned-children-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32966 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a801ef1d
    • mitz@apple.com's avatar
      WebCore: · 0676eebf
      mitz@apple.com authored
              Reviewed by Darin Adler.
      
              - fix <rdar://problem/5914544> Crash in layoutInlineChildren()
      
              Test: fast/block/float/float-on-zero-height-line.html
      
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::markLinesDirtyInVerticalRange):
      
      LayoutTests:
      
              Reviewed by Darin Adler.
      
              - test for <rdar://problem/5914544> Crash in layoutInlineChildren()
      
              * fast/block/float/float-on-zero-height-line.html: Added.
              * platform/mac/fast/block/float/float-on-zero-height-line-expected.checksum: Added.
              * platform/mac/fast/block/float/float-on-zero-height-line-expected.png: Added.
              * platform/mac/fast/block/float/float-on-zero-height-line-expected.txt: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32945 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0676eebf