1. 18 Apr, 2008 23 commits
  2. 17 Apr, 2008 17 commits
    • antti@apple.com's avatar
      2008-04-17 Antti Koivisto <antti@apple.com> · 1b9f58b1
      antti@apple.com authored
              Reviewed by Oliver.
      
              Implement calcMode=paced.
              
              Tested by SVG testsuite tests
              animate-elem-11-t.svg
              animate-elem-15-t.svg
              animate-elem-82-t.svg
      
              * svg/SVGAnimateElement.cpp:
              (WebCore::SVGAnimateElement::calculateDistance):
              * svg/SVGAnimateElement.h:
              * svg/SVGAnimateMotionElement.cpp:
              (WebCore::SVGAnimateMotionElement::calculateDistance):
              * svg/SVGAnimateMotionElement.h:
              * svg/SVGAnimateTransformElement.cpp:
              (WebCore::SVGAnimateTransformElement::calculateDistance):
              * svg/SVGAnimateTransformElement.h:
              * svg/SVGAnimationElement.cpp:
              (WebCore::SVGAnimationElement::calculateKeyTimesForCalcModePaced):
              (WebCore::SVGAnimationElement::startedActiveInterval):
              * svg/SVGAnimationElement.h:
              (WebCore::SVGAnimationElement::calculateDistance):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32048 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1b9f58b1
    • hyatt@apple.com's avatar
      2008-04-17 David Hyatt <hyatt@apple.com> · 95dac7d2
      hyatt@apple.com authored
              Fix a leak in ImageBuffer's clearImage method.
      
              Reviewed by olliej
      
              * platform/graphics/ImageBuffer.h:
              (WebCore::ImageBuffer::clearImage):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32046 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      95dac7d2
    • antti@apple.com's avatar
      2008-04-17 Antti Koivisto <antti@apple.com> · f343a023
      antti@apple.com authored
              Update SVG animation test results.
      
              * platform/mac/svg/W3C-SVG-1.1/animate-elem-30-t-expected.txt:
              * platform/mac/svg/W3C-SVG-1.1/animate-elem-40-t-expected.txt:
              * platform/mac/svg/W3C-SVG-1.1/animate-elem-41-t-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32045 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f343a023
    • antti@apple.com's avatar
      2008-04-17 Antti Koivisto <antti@apple.com> · ae3e4f14
      antti@apple.com authored
              Reviewed by Eric.
              
              https://bugs.webkit.org/show_bug.cgi?id=12438
      
              More SVG animation:
              
              - Make multiple additive animations work
              - Support animating <use> instance trees
      
              * svg/SVGAnimateColorElement.cpp:
              (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
              * svg/SVGAnimateColorElement.h:
              
              Made this AnimateElement subclass. All functionality is now provided by AnimateElement.
              
              * svg/SVGAnimateElement.cpp:
              (WebCore::SVGAnimateElement::determinePropertyType):
              (WebCore::SVGAnimateElement::calculateAnimatedValue):
              (WebCore::SVGAnimateElement::calculateFromAndToValues):
              (WebCore::SVGAnimateElement::calculateFromAndByValues):
              (WebCore::SVGAnimateElement::resetToBaseValue):
              (WebCore::SVGAnimateElement::applyResultsToTarget):
              * svg/SVGAnimateElement.h:
              * svg/SVGAnimateMotionElement.cpp:
              (WebCore::SVGAnimateMotionElement::resetToBaseValue):
              (WebCore::SVGAnimateMotionElement::calculateAnimatedValue):
              (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
              * svg/SVGAnimateMotionElement.h:
              * svg/SVGAnimateTransformElement.cpp:
              (WebCore::SVGAnimateTransformElement::resetToBaseValue):
              (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
              (WebCore::SVGAnimateTransformElement::calculateFromAndByValues):
              (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
              * svg/SVGAnimateTransformElement.h:
              
              Switch to new model where
              - resetToBaseValue() resets the animated value back to the base value
              - calculateAnimatedValue() computes the value and adds it to the element used for accumulation
              - applyResultsToTarget() sets the computed value the target element
              
              * svg/SVGAnimationElement.cpp:
              (WebCore::SVGAnimationElement::fromValue):
              (WebCore::SVGAnimationElement::attributeIsCSS):
              (WebCore::SVGAnimationElement::targetAttributeIsCSS):
              (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
              
              Update instances too.
              
              (WebCore::SVGAnimationElement::startedActiveInterval):
              (WebCore::SVGAnimationElement::updateAnimation):
              (WebCore::SVGAnimationElement::endedActiveInterval):
              * svg/SVGAnimationElement.h:
              * svg/SVGSVGElement.cpp:
              (WebCore::SVGSVGElement::SVGSVGElement):
              * svg/SVGSetElement.cpp:
              (WebCore::SVGSetElement::SVGSetElement):
              * svg/SVGSetElement.h:
              
              Made this AnimateElement subclass. All functionality is now provided by AnimateElement.
              
              * svg/animation/SMILTimeContainer.cpp:
              (WebCore::SMILTimeContainer::SMILTimeContainer):
              (WebCore::SMILTimeContainer::unschedule):
              (WebCore::SMILTimeContainer::updateDocumentOrderIndexes):
              (WebCore::PriorityCompare::PriorityCompare):
              (WebCore::PriorityCompare::operator()):
              (WebCore::SMILTimeContainer::sortByPriority):
              (WebCore::applyOrderSortFunction):
              (WebCore::sortByApplyOrder):
              (WebCore::SMILTimeContainer::baseValueFor):
              (WebCore::SMILTimeContainer::updateAnimations):
              * svg/animation/SMILTimeContainer.h:
              (WebCore::SMILTimeContainer::create):
              (WebCore::SMILTimeContainer::setDocumentOrderIndexesDirty):
              
              Do additive animation with the following steps
              - sort active animations based on their priority (begin time, document order).
              - if not yet saved for each (element, attribute) pair save the base value.
              - lowest priority animation for each (element, attribute) acts as the result element.
              - animation results are resolved in priority order and results are accumulated to the result element.
              - after all active animations have been processed the values in result elements are applied to the target elements.
              
              * svg/animation/SVGSMILElement.cpp:
              (WebCore::SVGSMILElement::SVGSMILElement):
              (WebCore::SVGSMILElement::insertedIntoDocument):
              
              Invalidate document order index.
              
              (WebCore::SVGSMILElement::attributeName):
              (WebCore::SVGSMILElement::isInactive):
              (WebCore::SVGSMILElement::isFrozen):
              (WebCore::SVGSMILElement::beginListChanged):
              (WebCore::SVGSMILElement::determineActiveState):
              (WebCore::SVGSMILElement::isContributing):
              (WebCore::SVGSMILElement::progress):
              
              Take care that animations in frozen state still contribute to the total. Since we now build the result starting
              from the base value, fill="replace" works magically simply by not contributing anything.
              
              * svg/animation/SVGSMILElement.h:
              (WebCore::SVGSMILElement::previousIntervalBegin):
              (WebCore::SVGSMILElement::documentOrderIndex):
              (WebCore::SVGSMILElement::setDocumentOrderIndex):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32044 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ae3e4f14
    • aroben@apple.com's avatar
      Fix many tests on Windows · ebb8c990
      aroben@apple.com authored
              * Scripts/run-webkit-tests:
              (readFromDumpToolWithTimer):
               - Use read instead of sysread to ensure that we don't interfere with
                 other uses of buffered IO in this script.
              (setFileHandleNonBlocking): Actually set the filehandle to blocking
              when specified.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32043 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ebb8c990
    • jhoneycutt@apple.com's avatar
      2008-04-17 Jon Honeycutt <jhoneycutt@apple.com> · 51a2fa2c
      jhoneycutt@apple.com authored
              Reviewed by mrowe.
      
              Define HAVE_ACCESSIBILITY where WebKit, WebCore can see it.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32042 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      51a2fa2c
    • jhoneycutt@apple.com's avatar
      2008-04-17 Jon Honeycutt <jhoneycutt@apple.com> · 1c7d4199
      jhoneycutt@apple.com authored
              Reviewed by aliu.
      
              * page/AccessibilityObject.cpp:
              (WebCore::AccessibilityObject::layoutCount): Check isRenderView() before
              casting to RenderView.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32041 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c7d4199
    • antti@apple.com's avatar
      2008-04-17 Antti Koivisto <antti@apple.com> · 2fafb6e2
      antti@apple.com authored
              Re-enable animation tests on windows.
      
              * platform/win/Skipped:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32040 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2fafb6e2
    • antti@apple.com's avatar
      2008-04-17 Antti Koivisto <antti@apple.com> · 8450dde3
      antti@apple.com authored
              Reviewed by Oliver.
              
              Fix https://bugs.webkit.org/show_bug.cgi?id=18551
              Bug 18551: REGRESSION (r31801?): Crash in ContainerNode::removedFromDocument on many SVG tests under guard malloc
              
              Freeing a RefPtr that is the last ref to the parent from removedFromDocument() is a bad idea.
      
              Caching the target element is too dangerous, let's simply not do it. Getting it is very cheap anyway.
      
              * svg/animation/SVGSMILElement.cpp:
              (WebCore::SVGSMILElement::removedFromDocument):
              (WebCore::SVGSMILElement::attributeChanged):
              (WebCore::SVGSMILElement::targetElement):
              * svg/animation/SVGSMILElement.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32039 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8450dde3
    • aroben@apple.com's avatar
      Fix ~10 tests · 6b532225
      aroben@apple.com authored
              * Scripts/run-webkit-tests: Only remove the newline after #EOF, not
              whatever newline happens to be at the end of what we've read.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32038 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6b532225
    • weinig@apple.com's avatar
      WebCore: · 81ed4494
      weinig@apple.com authored
      2008-04-17  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Anders Carlsson.
      
              Autogenerate the XMLHttpRequest javascript binding.
      
              * GNUmakefile.am:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCoreSources.bkl:
              * DerivedSources.make:
              * WebCore.xcodeproj/project.pbxproj:
              * bindings/js/JSDOMWindowBase.cpp:
              * bindings/js/JSXMLHttpRequest.cpp: Removed.
              * bindings/js/JSXMLHttpRequest.h: Removed.
              * bindings/js/JSXMLHttpRequestConstructor.cpp: Added.
              (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
              (WebCore::JSXMLHttpRequestConstructor::implementsConstruct):
              (WebCore::JSXMLHttpRequestConstructor::construct):
              * bindings/js/JSXMLHttpRequestConstructor.h: Added.
              (WebCore::JSXMLHttpRequestConstructor::classInfo):
              * bindings/js/JSXMLHttpRequestCustom.cpp: Added.
              (WebCore::JSXMLHttpRequest::mark):
              (WebCore::JSXMLHttpRequest::onreadystatechange):
              (WebCore::JSXMLHttpRequest::setOnreadystatechange):
              (WebCore::JSXMLHttpRequest::onload):
              (WebCore::JSXMLHttpRequest::setOnload):
              (WebCore::JSXMLHttpRequest::responseXML):
              (WebCore::JSXMLHttpRequest::open):
              (WebCore::JSXMLHttpRequest::setRequestHeader):
              (WebCore::JSXMLHttpRequest::send):
              (WebCore::JSXMLHttpRequest::getResponseHeader):
              (WebCore::JSXMLHttpRequest::overrideMimeType):
              (WebCore::JSXMLHttpRequest::addEventListener):
              (WebCore::JSXMLHttpRequest::removeEventListener):
              (WebCore::JSXMLHttpRequest::dispatchEvent):
              * xml/XMLHttpRequest.cpp:
              (WebCore::XMLHttpRequest::readyState):
              (WebCore::XMLHttpRequest::responseText):
              * xml/XMLHttpRequest.h:
              * xml/XMLHttpRequest.idl: Added.
      
      LayoutTests:
      
      2008-04-17  Sam Weinig  <sam@webkit.org>
      
              Reviewed by Anders Carlsson.
      
              Update test result for additon of XMLHttpRequest constants.
      
              * fast/dom/Window/window-properties-expected.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32037 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      81ed4494
    • aroben@apple.com's avatar
      Remove DRT/win's hang timer · 049517f5
      aroben@apple.com authored
              run-webkit-tests takes care of this for us now
      
              Reviewed by Anders Carlsson.
      
              * DumpRenderTree/win/DumpRenderTree.cpp:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32036 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      049517f5
    • aroben@apple.com's avatar
      Don't wait for the hang timer twice in the case of a hang · b208f11b
      aroben@apple.com authored
              Previously we'd wait for a hang while reading both stdout and stderr
              from DRT. Now we'll only wait for one or the other.
      
              Reviewed by Anders Carlsson.
      
              * Scripts/run-webkit-tests:
              (top level): Don't wait for stderr to time out if stdout already timed
              out.
              (readFromDumpToolWithTimer): If $dontWaitForTimeOut is true, quit
              after the first read that returns no data.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32035 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b208f11b
    • aroben@apple.com's avatar
      Don't throw away the output from timed out tests · fd529cc1
      aroben@apple.com authored
              Reviewed by Anders Carlsson.
      
              * Scripts/run-webkit-tests:
              (top level): Updated for changes to readFromDumpToolWithTimer.
              (readFromDumpToolWithTimer): Return a hash that contains both the
              output and whether or not the test timed out.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32034 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fd529cc1
    • beidson@apple.com's avatar
      2008-04-17 Brady Eidson <beidson@apple.com> · 477c47c8
      beidson@apple.com authored
              Reviewed by Anders
      
              The SessionStorage for a Page has to be copied every time a new Page is created.
      
              I thought I had the right choke point for creating new Pages at FrameLoader::createWindow(),
              but it just so happens there was another - in the ContextMenuController.
      
              The *real* choke point for this, then, is in the Chrome itself.
      
              * loader/FrameLoader.cpp:
              (WebCore::FrameLoader::createWindow): Don't do the SessionStorage copy here...
      
              * page/Chrome.cpp:
              (WebCore::Chrome::createWindow): Do it here, instead!
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32032 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      477c47c8
    • aroben@apple.com's avatar
      Make the hang timer 60 seconds · 4aa4ecf4
      aroben@apple.com authored
              * Scripts/run-webkit-tests:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32031 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4aa4ecf4
    • alice.liu@apple.com's avatar
      2008-04-17 Alice Liu <alice.liu@apple.com> · af5528c8
      alice.liu@apple.com authored
              Reviewed by Jon Honeycutt.
      
              Added some asserts to catch undesirable usage of setWrapper and addChildren.
      
              * page/AccessibilityObject.cpp:
              (WebCore::AccessibilityObject::addChildren):
              * page/AccessibilityObject.h:
              (WebCore::AccessibilityObject::setWrapper):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@32030 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af5528c8