1. 27 Jan, 2011 40 commits
    • rniwa@webkit.org's avatar
      2011-01-27 Ryosuke Niwa <rniwa@webkit.org> · b8878869
      rniwa@webkit.org authored
              Unreviewed Chromium rebaseline and text expectation update.
      
              * platform/chromium-linux/fast/repaint/select-option-background-color-expected.checksum: Added.
              * platform/chromium-linux/fast/repaint/select-option-background-color-expected.png: Added.
              * platform/chromium-linux/fast/repaint/select-option-background-color-expected.txt: Added.
              * platform/chromium/test_expectations.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76838 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b8878869
    • mihaip@chromium.org's avatar
      2011-01-27 Mihai Parparita <mihaip@chromium.org> · de3901b7
      mihaip@chromium.org authored
              Unreviewed rebaseline of fast/inline/continuation-outlines-with-layers.html
              afte r76726.
      
              * platform/mac/fast/inline/continuation-outlines-with-layers-expected.txt:
              * platform/chromium-win/fast/inline/continuation-outlines-with-layers-expected.txt:
              * platform/chromium/test_expectations.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76837 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      de3901b7
    • rniwa@webkit.org's avatar
      2011-01-27 Sheriff Bot <webkit.review.bot@gmail.com> · 09545b55
      rniwa@webkit.org authored
              Unreviewed, rolling out r76825.
              http://trac.webkit.org/changeset/76825
              https://bugs.webkit.org/show_bug.cgi?id=53256
      
              "caused crashes on GTK and chromium" (Requested by rniwa on
              #webkit).
      
              * rendering/RenderBoxModelObject.cpp:
              (WebCore::ImageQualityController::keyDestroyed):
              (WebCore::ImageQualityController::objectDestroyed):
              (WebCore::ImageQualityController::highQualityRepaintTimerFired):
              (WebCore::ImageQualityController::shouldPaintAtLowQuality):
              (WebCore::imageQualityController):
              (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76836 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      09545b55
    • abarth@webkit.org's avatar
      2011-01-27 Adam Barth <abarth@webkit.org> · be52379e
      abarth@webkit.org authored
              Reviewed by Eric Seidel.
      
              Generalize the mechanism view-source uses to remember the source for an HTMLToken
              https://bugs.webkit.org/show_bug.cgi?id=53200
      
              Currently view-source tracks the source associated with each HTMLToken.
              We want to re-use this mechanism for the new XSS auditor.  This patch
              moves this code into its own class so it can be shared between the
              view-source parser and the general HTML parser.  This patch also add
              support for tracking the source of tokens that span document.write
              boundaries.
      
              No functional change.  This code change is somewhat tested by our
              view-source layout tests.
      
              * Android.mk:
              * GNUmakefile.am:
              * WebCore.gypi:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
                  - Fun with updating build files.
              * html/parser/HTMLDocumentParser.cpp:
              (WebCore::HTMLDocumentParser::pumpTokenizer):
                  - Teach HTMLDocumentParser to track the source for HTMLTokens.
                    Currently, this information isn't used, but it will be shortly.
                    I ran the HTML parser benchmark and this change didn't have a
                    measurable effect.
              * html/parser/HTMLDocumentParser.h:
                  - Composite in the HTMLSourceTracker.
              * html/parser/HTMLSourceTracker.cpp: Added.
              (WebCore::HTMLSourceTracker::HTMLSourceTracker):
              (WebCore::HTMLSourceTracker::start):
              (WebCore::HTMLSourceTracker::end):
                  - This function should eventualy be folded into HTMLTokenizer.
              (WebCore::HTMLSourceTracker::sourceForToken):
              * html/parser/HTMLSourceTracker.h: Added.
              * html/parser/HTMLToken.h:
                  - Now HTMLTokens always have a start index of zero.  To do the job
                    of the old start index, this patch introduces the notion of a
                    baseOffset.  Unlike the start index (which was used as the base
                    offset for all the other indicies), the baseOffset can change
                    over the lifetime of the token.  We need the flexibility to
                    change the offset for tokens that span document.write boundaries.
                    Values are now normalized to zero-offset when stored.
              (WebCore::HTMLToken::clear):
              (WebCore::HTMLToken::setBaseOffset):
              (WebCore::HTMLToken::end):
              (WebCore::HTMLToken::beginAttributeName):
              (WebCore::HTMLToken::endAttributeName):
              (WebCore::HTMLToken::beginAttributeValue):
              (WebCore::HTMLToken::endAttributeValue):
              * html/parser/HTMLViewSourceParser.cpp:
                  - Updates the HTMLViewSourceParser to use the new
                    HTMLSourceTracker.
              (WebCore::HTMLViewSourceParser::pumpTokenizer):
              (WebCore::HTMLViewSourceParser::append):
              (WebCore::HTMLViewSourceParser::sourceForToken):
                  - This function now just calls through to HTMLSourceTracker.
              * html/parser/HTMLViewSourceParser.h:
              * platform/text/SegmentedString.cpp:
              (WebCore::SegmentedString::currentColumn):
              (WebCore::SegmentedString::setCurrentPosition):
              * platform/text/SegmentedString.h:
              (WebCore::SegmentedString::numberOfCharactersConsumed):
                  - We need to handle the general case now.  The "slow" version
                    doesn't turn out to be any slower in practice anyway.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76835 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      be52379e
    • robert@webkit.org's avatar
      2011-01-27 Robert Hogan <robert@webkit.org> · 4a5b5869
      robert@webkit.org authored
              Rubber-stamped by Andreas Kling.
      
              [Qt] Style Fix: correct indentation in FrameLoadeClientQt:createPlugin
      
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::FrameLoaderClientQt::createPlugin):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76834 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4a5b5869
    • weinig@apple.com's avatar
      2011-01-27 Sam Weinig <sam@webkit.org> · f176b1b9
      weinig@apple.com authored
              Reviewed by Anders Carlsson.
      
              Encode/Decode hasPreciseScrollingDeltas bit in WebWheelEvent
              https://bugs.webkit.org/show_bug.cgi?id=53254
      
              * Shared/WebWheelEvent.cpp:
              (WebKit::WebWheelEvent::WebWheelEvent):
              Initialize m_phase and m_hasPreciseScrollingDeltas.
      
              (WebKit::WebWheelEvent::encode):
              (WebKit::WebWheelEvent::decode):
              Add missing coding for m_hasPreciseScrollingDeltas.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76833 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f176b1b9
    • weinig@apple.com's avatar
      Fix all the builds. · 5a5c3450
      weinig@apple.com authored
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::paintOverhangAreas): Add parameters.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76832 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5a5c3450
    • weinig@apple.com's avatar
      Add ability to do an unconstrained scroll on a ScrollView · fe3ba1a8
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=53249
      
      Reviewed by Dave Hyatt.
      
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::ScrollView):
      Initialize m_constrainsScrollingToContentEdge to true.
      
      (WebCore::ScrollView::setScrollOffset):
      Only constrain the offset if the m_constrainsScrollingToContentEdge is set.
      
      (WebCore::ScrollView::updateScrollbars):
      Simplify expression converting an IntSize to an IntPoint.
              
      (WebCore::ScrollView::paint):
      Paint the overhang if there is any.
              
      (WebCore::ScrollView::calculateOverhangAreasForPainting):
      Calculate the overhang in viewport coordinates for painting.
      
      * platform/ScrollView.h:
      (WebCore::ScrollView::constrainsScrollingToContentEdge):
      (WebCore::ScrollView::setConstrainsScrollingToContentEdge):
      Add bit to control whether the scroll position should be constrained
      to the content edge when set.
      
      * platform/ScrollbarThemeComposite.cpp:
      (WebCore::usedTotalSize):
      (WebCore::ScrollbarThemeComposite::thumbPosition):
      (WebCore::ScrollbarThemeComposite::thumbLength):
      * platform/mac/ScrollbarThemeMac.mm:
      (WebCore::ScrollbarThemeMac::paint):
      Improve calculations of thumb size and position to take overhang into account.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76831 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      fe3ba1a8
    • krit@webkit.org's avatar
      2011-01-27 Dirk Schulze <krit@webkit.org> · 7a6abf6b
      krit@webkit.org authored
              Reviewed by Nikolas Zimmermann.
      
              SVG animation of Paths with segments of different coordinate modes on begin and end
              https://bugs.webkit.org/show_bug.cgi?id=52984
      
              Added tests to check the correct behavior on path animations, where the coordinate modes
              of the start path differs from the one on the end path.
      
              * svg/animations/animate-path-animation-Cc-Ss-expected.txt: Added.
              * svg/animations/animate-path-animation-Cc-Ss.html: Added.
              * svg/animations/animate-path-animation-Ll-Vv-Hh-expected.txt: Added.
              * svg/animations/animate-path-animation-Ll-Vv-Hh.html: Added.
              * svg/animations/animate-path-animation-Qq-Tt-expected.txt: Added.
              * svg/animations/animate-path-animation-Qq-Tt.html: Added.
              * svg/animations/animate-path-animation-cC-sS-inverse-expected.txt: Added.
              * svg/animations/animate-path-animation-cC-sS-inverse.html: Added.
              * svg/animations/animate-path-animation-lL-vV-hH-inverse-expected.txt: Added.
              * svg/animations/animate-path-animation-lL-vV-hH-inverse.html: Added.
              * svg/animations/animate-path-animation-qQ-tT-inverse-expected.txt: Added.
              * svg/animations/animate-path-animation-qQ-tT-inverse.html: Added.
              * svg/animations/animate-path-nested-transforms.html: Cleanup.
              * svg/animations/animate-text-nested-transforms.html: Cleanup.
              * svg/animations/resources/SVGAnimationTestCase.js:
              (shouldBeCloseEnough): For debug output of values with tolerance level.
              (startTest):
              (sampleAnimation):
              * svg/animations/script-tests/animate-path-animation-Cc-Ss.js: Added.
              (sample1):
              (sample2):
              (sample3):
              (sample4):
              (executeTest):
              * svg/animations/script-tests/animate-path-animation-Ll-Vv-Hh.js: Added.
              (sample1):
              (sample2):
              (sample3):
              (sample4):
              (executeTest):
              * svg/animations/script-tests/animate-path-animation-Qq-Tt.js: Added.
              (sample1):
              (sample2):
              (sample3):
              (sample4):
              (executeTest):
              * svg/animations/script-tests/animate-path-animation-cC-sS-inverse.js: Added.
              (sample1):
              (sample2):
              (sample3):
              (sample4):
              (executeTest):
              * svg/animations/script-tests/animate-path-animation-lL-vV-hH-inverse.js: Added.
              (sample1):
              (sample2):
              (sample3):
              (sample4):
              (executeTest):
              * svg/animations/script-tests/animate-path-animation-qQ-tT-inverse.js: Added.
              (sample1):
              (sample2):
              (sample3):
              (sample4):
              (executeTest):
      2011-01-27  Dirk Schulze  <krit@webkit.org>
      
              Reviewed by Nikolas Zimmermann.
      
              SVG animation of Paths with segments of different coordinate modes on begin and end
              https://bugs.webkit.org/show_bug.cgi?id=52984
      
              At the moment we just support SVG path animations, if the number of segments on the given start path
              is the same as the number of segments on the given end path. But a segment on a given position must be identical
              on both paths as well. Not only the segment type, also the coordinate mode of the segments must be identical.
              If MoveToRel is on the second position on the start path a MoveToRel must be on the second position
              of the end path too. According to the SVG spec, at least the coordinate mode can differ. Means, if we have MoveToRel
              in the start path, we can use MoveToAbs on the same position in the end path.
      
              This patch fixes the blending code to follow the spec here. It was necessary to track the current position of
              both paths, transform coordinates to the same coordinate mode and transform the resulting animation coordinate back
              to the coordinate mode of either the start or the end path. Which mode is taken depends on the progress of the
              animation.
      
              Tests: svg/animations/animate-path-animation-Cc-Ss.html
                     svg/animations/animate-path-animation-Ll-Vv-Hh.html
                     svg/animations/animate-path-animation-Qq-Tt.html
                     svg/animations/animate-path-animation-cC-sS-inverse.html
                     svg/animations/animate-path-animation-lL-vV-hH-inverse.html
                     svg/animations/animate-path-animation-qQ-tT-inverse.html
      
              * svg/SVGPathBlender.cpp:
              (WebCore::blendFloatPoint):
              (WebCore::blendAnimatedFloat):
              (WebCore::SVGPathBlender::blendAnimatedDimensionalFloat):
              (WebCore::SVGPathBlender::blendAnimatedFloatPoint):
              (WebCore::SVGPathBlender::blendMoveToSegment):
              (WebCore::SVGPathBlender::blendLineToSegment):
              (WebCore::SVGPathBlender::blendLineToHorizontalSegment):
              (WebCore::SVGPathBlender::blendLineToVerticalSegment):
              (WebCore::SVGPathBlender::blendCurveToCubicSegment):
              (WebCore::SVGPathBlender::blendCurveToCubicSmoothSegment):
              (WebCore::SVGPathBlender::blendCurveToQuadraticSegment):
              (WebCore::SVGPathBlender::blendCurveToQuadraticSmoothSegment):
              (WebCore::SVGPathBlender::blendArcToSegment):
              (WebCore::coordinateModeOfCommand):
              (WebCore::isSegmentEqual):
              (WebCore::SVGPathBlender::blendAnimatedPath):
              (WebCore::SVGPathBlender::cleanup):
              * svg/SVGPathBlender.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76830 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7a6abf6b
    • dpranke@chromium.org's avatar
      2011-01-27 Dirk Pranke <dpranke@chromium.org> · 6eb9e918
      dpranke@chromium.org authored
              Reviewed by Mihai Parparita.
      
              new-run-webkit-tests: turn off pixel tests correctly by default
              for webkit-based ports. r70013 (bug 47510) used
              port.set_option_default() to attempt to set default values, but
              that didn't work correctly. I have removed set_option_default
              for now since it was only being used in two places and in three
              useless unit tests. There is a separate bug open to fix the
              option parsing (48095), so this workaround is fine for now.
      
              https://bugs.webkit.org/show_bug.cgi?id=53217
      
              * Scripts/webkitpy/layout_tests/port/webkit.py:
              * Scripts/webkitpy/layout_tests/port/base.py:
              * Scripts/webkitpy/layout_tests/port/base_unittest.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76829 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6eb9e918
    • jschuh@chromium.org's avatar
      2011-01-27 Cris Neckar <cdn@chromium.org> · 40eacf29
      jschuh@chromium.org authored
              Reviewed by Dimitri Glazkov.
      
              Clear the parent on a css keyframe's m_style when removing it from the stylesheet.
              https://bugs.webkit.org/show_bug.cgi?id=52320
      
              Test: fast/css/css-keyframe-style-crash.html
      
              * css/CSSRuleList.cpp:
              (WebCore::CSSRuleList::deleteRule):
              * css/WebKitCSSKeyframesRule.cpp:
              (WebCore::WebKitCSSKeyframesRule::~WebKitCSSKeyframesRule):
      2011-01-27  Cris Neckar  <cdn@chromium.org>
      
              Reviewed by Dimitri Glazkov.
      
              Test for crash when accessing a keyframe's style rule.
              https://bugs.webkit.org/show_bug.cgi?id=52320
      
              * fast/css/css-keyframe-style-crash-expected.txt: Added.
              * fast/css/css-keyframe-style-crash.html: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76828 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40eacf29
    • rniwa@webkit.org's avatar
      2011-01-27 Ryosuke Niwa <rniwa@webkit.org> · 65c26516
      rniwa@webkit.org authored
              Unreviewed Chromium text expectation update.
      
              * platform/chromium/test_expectations.txt: Apparently, video-size.html crashes on Linux due to crbug.com/71087.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76827 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      65c26516
    • rwlbuis@webkit.org's avatar
      2011-01-27 Rob Buis <rwlbuis@gmail.com> · 8cc11e6d
      rwlbuis@webkit.org authored
              Reviewed by Kent Tamura.
      
              Color changes to option elements in a select multiple aren't drawn immediately
              https://bugs.webkit.org/show_bug.cgi?id=49790
      
              Redirect style changes on <option> element to the owner <select> element.
      
              Test: fast/repaint/select-option-background-color.html
      
              * html/HTMLOptionElement.cpp:
              (WebCore::HTMLOptionElement::setRenderStyle):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76826 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8cc11e6d
    • senorblanco@chromium.org's avatar
      2011-01-19 Stephen White <senorblanco@chromium.org> · 118a71a1
      senorblanco@chromium.org authored
              Reviewed by Darin Adler.
      
              Fix performance regression in ImageQualityController::objectDestroyed().
              https://bugs.webkit.org/show_bug.cgi?id=52645
      
              In r72282, I inadvertently introduced this regression by using a
              linear search through the hash map on object destruction.  This was
              because the hash key consisted of both object pointer and layer id,
              but on object destruction we only know the object pointer, requiring
              a search to find all the layers. 
              By replacing the hash map with two nested hash maps, where the outer key
              is the object and the inner key is the layer, we can find all the
              relevant data for an object in one hash lookup.
      
              * rendering/RenderBoxModelObject.cpp:
              Replace the (object,layer)->size HashMap with object->layer and
              layer->size HashMaps.
              (WebCore::ImageQualityController::isEmpty):
              Implement isEmpty() for the outer HashMap.
              (WebCore::ImageQualityController::removeLayer):
              When a layer is removed, remove it from the inner hash map.
              (WebCore::ImageQualityController::set):
              Implement set():  if the inner map exists, set the layer->size tuple
              directly.  If not, create a new inner map, set the tuple, and insert
              it in the outer map.
              (WebCore::ImageQualityController::objectDestroyed):
              Look up the object in the outer map only.
              (WebCore::ImageQualityController::highQualityRepaintTimerFired):
              Cosmetic changes for the renamed now-outer hash map.
              (WebCore::ImageQualityController::shouldPaintAtLowQuality):
              Do both outer and inner hash map lookups.  Call set() to add/update
              entries to the hash maps.  keyDestroyed() is now removeLayer().
              (WebCore::imageQualityController):
              Make the ImageQualityController a file-static global, so it can be
              created and destroyed on the fly.
              (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
              If there is no ImageQualityController, don't call objectDestroyed().
              If it's empty, delete it.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76825 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      118a71a1
    • enrica@apple.com's avatar
      Source/WebCore: WebKit2: add support for drag and drop on Windows · 466e2e16
      enrica@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=52775
      <rdar://problem/8514409>
              
      Reviewed by Darin Adler and Adam Roben.
      
      On Windows the access to the content being dragged is
      provided via the IDataObject interface that is made available
      to the window that registers itself as drop target.
      Since this interface cannot be accessed from the WebProcess,
      in every call to one of the methods of the IDropTarget interface
      we serialize the content of the drag clipboard and send it over to
      the WebProcess.
      The bulk of this patch consists in the refactoring needed in DragData
      and ClipboardWin classes to extract the data from the serialized object.
              
      * platform/DragData.cpp:
      * platform/DragData.h:
      * platform/win/ClipboardUtilitiesWin.cpp:
      (WebCore::getWebLocData):
      (WebCore::getURL):
      (WebCore::getPlainText):
      (WebCore::getTextHTML):
      (WebCore::getCFHTML):
      (WebCore::fragmentFromFilenames):
      (WebCore::containsFilenames):
      (WebCore::fragmentFromHTML):
      (WebCore::containsHTML):
      (WebCore::getClipboardData):
      * platform/win/ClipboardUtilitiesWin.h:
      * platform/win/ClipboardWin.cpp:
      (WebCore::Clipboard::create):
      (WebCore::ClipboardWin::ClipboardWin):
      (WebCore::ClipboardWin::getData):
      (WebCore::ClipboardWin::types):
      (WebCore::ClipboardWin::files):
      (WebCore::ClipboardWin::hasData):
      * platform/win/ClipboardWin.h:
      (WebCore::ClipboardWin::create):
      * platform/win/DragDataWin.cpp:
      (WebCore::DragData::DragData):
      (WebCore::DragData::containsURL):
      (WebCore::DragData::dragDataMap):
      (WebCore::DragData::asURL):
      (WebCore::DragData::containsFiles):
      (WebCore::DragData::asFilenames):
      (WebCore::DragData::containsPlainText):
      (WebCore::DragData::asPlainText):
      (WebCore::DragData::canSmartReplace):
      (WebCore::DragData::containsCompatibleContent):
      (WebCore::DragData::asFragment):
      
      Source/WebKit2: WebKit2: add support for drag and drop on Windows
      https://bugs.webkit.org/show_bug.cgi?id=52775
      <rdar://problem/8514409>
      
      Reviewed by Darin Adler and Adam Roben.
      
      On Windows the access to the content being dragged is
      provided via the IDataObject interface that is made available
      to the window that registers itself as drop target.
      Since this interface cannot be accessed from the WebProcess,
      in every call to one of the methods of the IDropTarget interface
      we serialize the content of the drag clipboard and send it over to
      the WebProcess. The implementation uses the same messages as the
      Mac one, with slightly different parameters to pass the serialized
      clipboard.
      
      * UIProcess/WebPageProxy.cpp:
      (WebKit::WebPageProxy::performDragControllerAction): Added Windows
      specific implementation.
      * UIProcess/WebPageProxy.h:
      * UIProcess/win/WebView.cpp:
      (WebKit::WebView::WebView): Added dropTargetHelper object creation.
      (WebKit::WebView::initialize): Added to register for drag/drop with out
      refcount issues.
      (WebKit::WebView::close):
      (WebKit::WebView::windowReceivedMessage):
      (WebKit::WebView::QueryInterface):
      (WebKit::WebView::AddRef):
      (WebKit::WebView::Release):
      (WebKit::dragOperationToDragCursor):
      (WebKit::WebView::keyStateToDragOperation):
      (WebKit::WebView::DragEnter):
      (WebKit::WebView::DragOver):
      (WebKit::WebView::DragLeave):
      (WebKit::WebView::Drop):
      * UIProcess/win/WebView.h:
      (WebKit::WebView::create):
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::performDragControllerAction):
      * WebProcess/WebPage/WebPage.h:
      * WebProcess/WebPage/WebPage.messages.in:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76824 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      466e2e16
    • mario@webkit.org's avatar
      2011-01-27 Mario Sanchez Prada <msanchez@igalia.com> · ff7fd429
      mario@webkit.org authored
              Reviewed by Martin Robinson.
      
              [GTK] Space characters in source document interfere with reported caret offset
              https://bugs.webkit.org/show_bug.cgi?id=53033
      
              Calculate caret offset from rendered text instead of from node contents.
      
              * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
              (objectAndOffsetUnignored): Calculate the caret offset based only
              on positions and ranges, instead of using the computed offset in
              the container node.
      2011-01-27  Mario Sanchez Prada  <msanchez@igalia.com>
      
              Reviewed by Martin Robinson.
      
              [GTK] Space characters in source document interfere with reported caret offset
              https://bugs.webkit.org/show_bug.cgi?id=53033
      
              New unit test to check the fix for this bug.
      
              * tests/testatk.c:
              (testWebkitAtkCaretOffsetsAndExtranousWhiteSpaces): New.
              (main): Add new unit test.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76822 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff7fd429
    • ap@apple.com's avatar
      Reviewed by Darin Adler. · 286a32a3
      ap@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=53197
              <rdar://problem/8895682> Make WebKit2 printing asynchronous
      
              <rdar://problem/8899988> REGRESSION(WebKit2): Attempting to print WHATWG HTML spec shows
              1-page blank preview
      
              <rdar://problem/8900078> WebKit2 printing has a separate message exchange per page when
              printing instead of printing all at once
      
              * UIProcess/API/mac/WKPrintingView.h: Store a lot more cached information.
      
              * UIProcess/API/mac/WKPrintingView.mm:
              (-[WKPrintingView _adjustPrintingMarginsForHeaderAndFooter]): Use PrintOperation stored in
              class. We generally want that now, because current operation will not be set up on other threads.
              (-[WKPrintingView _isPrintingPreview]): Added. Preview is different, because it can draw
              a placeholder - but actual printing need to wait until UI process has data.
              (-[WKPrintingView _updatePreview]): Force AppKit to update print preview when we have real
              data to replace placeholder with.
              (-[WKPrintingView _hasPageRects]): Return if page rects have already been computed.
              (-[WKPrintingView _expectedPreviewCallbackForRect:]): Find an existing request for this rect,
              if any.
              (pageDidDrawToPDF): Update preview - or if actually printing, release control to printing thread.
              (-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]): Ask for a PDF document with
              pages the user asked to print.
              (pageDidComputePageRects): When web process returns page geometry data, we update preview to display
              a page count (which indirectly triggers a request for a preview). When actually printing,
              request a PDF right away, we'll need it later.
              (-[WKPrintingView _askPageToComputePageRects]): Ask web process for page geometry.
              (prepareDataForPrintingOnSecondaryThread): This function starts preparing all data necessary
              for actual printing on main thread.
              (-[WKPrintingView knowsPageRange:]): Changed to be async for preview, and to call main
              thread for actual printing.
              (-[WKPrintingView _pageForRect:]): Find page number for a given range, assuming that AppKit
              always asks for full pages.
              (-[WKPrintingView _drawPDFDocument:page:atPoint:]): A helper function to draw a PDF document.
              (-[WKPrintingView _drawPreview:]): Draw the whole page for preview.
              (-[WKPrintingView _recursiveDisplayRectIfNeededIgnoringOpacity:isVisibleRect:rectIsVisibleRectForView:topView:]):
              Draw the whole page for actual printing.
              (-[WKPrintingView _drawPageBorderWithSizeOnMainThread:]): Call drawPageBorderWithSize: with
              correct graphics context and print operation.
              (-[WKPrintingView drawPageBorderWithSize:]): Delegate work to main thread when called from a
              secondary one.
              (-[WKPrintingView _provideTotalScaleFactorForPrintOperation:]): Added an assertion that
              our stored NSPrintOperation isn't out of sync with reality.
              (-[WKPrintingView rectForPage:]): Handle the case where we don't have the data yet, drawing
              a placeholder.
              (-[WKPrintingView endDocument]): When page setup changes, we must reset all state.
      
              * UIProcess/API/mac/WKView.mm: (-[WKView printOperationWithPrintInfo:forFrame:]): Tell
              NSPrintingView which operation it's serving, so that it knows it even when current operation
              isn't set.
      
              * UIProcess/GenericCallback.h:
              (WebKit::ComputedPagesCallback::create):
              (WebKit::ComputedPagesCallback::~ComputedPagesCallback):
              (WebKit::ComputedPagesCallback::performCallbackWithReturnValue):
              (WebKit::ComputedPagesCallback::invalidate):
              (WebKit::ComputedPagesCallback::callbackID):
              (WebKit::ComputedPagesCallback::generateCallbackID):
              (WebKit::ComputedPagesCallback::ComputedPagesCallback):
              Added ComputedPagesCallback, which returns a vector of IntRects and a double. Hopefully,
              it will become a specialization of GenericCallback one day.
      
              * UIProcess/WebPageProxy.cpp:
              (WebKit::WebPageProxy::close): Added m_voidCallbacks - it looks like they were omitted
              by accident.
              (WebKit::WebPageProxy::computedPagesCallback): Added.
              (WebKit::WebPageProxy::processDidCrash): Added m_computedPagesCallbacks.
              (WebKit::WebPageProxy::computePagesForPrinting): Async now!
              (WebKit::WebPageProxy::drawRectToPDF): Ditto.
              (WebKit::WebPageProxy::drawPagesToPDF): Added.
              * UIProcess/WebPageProxy.h:
      
              * UIProcess/WebPageProxy.messages.in: Added ComputedPagesCallback.
      
              * WebProcess/WebPage/WebPage.cpp:
              (WebKit::WebPage::beginPriting): Compute page rects right away - we'll need them in
              drawPagesToPDF(), which doesn't have a PrintInfo.
              (WebKit::WebPage::computePagesForPrinting): Send async response.
              (WebKit::WebPage::drawRectToPDF): This function used to draw into original
              location at frame coordinates, and now it draws at (0, 0).
              (WebKit::WebPage::drawPagesToPDF): Added - make a multi-page PDF.
              * WebProcess/WebPage/WebPage.h:
      
              * WebProcess/WebPage/WebPage.messages.in: Added DrawPagesToPDF.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76821 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      286a32a3
    • jorlow@chromium.org's avatar
      2011-01-27 David Grogan <dgrogan@google.com> · 9460e2b7
      jorlow@chromium.org authored
              Reviewed by Jeremy Orlow.
      
              initial support for close() in indexeddb backend
              https://bugs.webkit.org/show_bug.cgi?id=53150
      
              * storage/indexeddb/transaction-after-close-expected.txt: Added.
              * storage/indexeddb/transaction-after-close.html: Added.
      2011-01-27  David Grogan  <dgrogan@google.com>
      
              Reviewed by Jeremy Orlow.
      
              initial support for close() in indexeddb backend
              https://bugs.webkit.org/show_bug.cgi?id=53150
      
              Test: storage/indexeddb/transaction-after-close.html
      
              * storage/IDBDatabase.cpp:
              (WebCore::IDBDatabase::IDBDatabase):
              (WebCore::IDBDatabase::transaction):
              (WebCore::IDBDatabase::close):
              * storage/IDBDatabase.h:
              * storage/IDBDatabase.idl:
              * storage/IDBDatabaseBackendImpl.cpp:
              (WebCore::IDBDatabaseBackendImpl::transaction):
              (WebCore::IDBDatabaseBackendImpl::close):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76820 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9460e2b7
    • krit@webkit.org's avatar
      2011-01-27 Dirk Schulze <krit@webkit.org> · 46b465c4
      krit@webkit.org authored
              Reviewed by Nikolas Zimmermann.
      
              SVG animation doesn't support calcMode discrete for number and color values.
              https://bugs.webkit.org/show_bug.cgi?id=53189
      
              Add support for calcMode discrete on number and color animation.
      
              Tests: svg/animations/animate-color-calcMode-discrete.html
                     svg/animations/animate-number-calcMode-discrete.html
      
              * svg/SVGAnimateElement.cpp:
              (WebCore::SVGAnimateElement::calculateAnimatedValue):
      2011-01-27  Dirk Schulze  <krit@webkit.org>
      
              Reviewed by Nikolas Zimmermann.
      
              SVG animation doesn't support calcMode discrete for number and color values.
              https://bugs.webkit.org/show_bug.cgi?id=53189
      
              Test for correct behavior on animating numbers and colors with calcMode discrete.
      
              * svg/animations/animate-color-calcMode-discrete-expected.txt: Added.
              * svg/animations/animate-color-calcMode-discrete.html: Added.
              * svg/animations/animate-number-calcMode-discrete-expected.txt: Added.
              * svg/animations/animate-number-calcMode-discrete.html: Added.
              * svg/animations/script-tests/animate-color-calcMode-discrete.js: Added.
              (sample1):
              (sample2):
              (executeTest):
              * svg/animations/script-tests/animate-number-calcMode-discrete.js: Added.
              (sample1):
              (sample2):
              (executeTest):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76819 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      46b465c4
    • rniwa@webkit.org's avatar
      2011-01-27 Ryosuke Niwa <rniwa@webkit.org> · a058ea75
      rniwa@webkit.org authored
              Unreviewed Chromium test expectation update for video tests.
      
              * platform/chromium/test_expectations.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76818 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a058ea75
    • alex@webkit.org's avatar
      2011-01-27 Alejandro G. Castro <alex@igalia.com> · 7e25856e
      alex@webkit.org authored
              Unreviewed GTK build fix after r76797.
      
              * Shared/WebPreferencesStore.h: Use Qt fonts preference for the moment.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76817 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7e25856e
    • rniwa@webkit.org's avatar
      2011-01-27 Charlie Reis <creis@chromium.org> · 4455fee3
      rniwa@webkit.org authored
              Reviewed by Mihai Parparita.
      
              back-during-onload-hung-page.php causes Chromium WebKit bot to fail
              https://bugs.webkit.org/show_bug.cgi?id=53220
      
              Reduces the timeout on a script that shouldn't finish during a test.
              This avoids problems in one of the Chromium WebKit builders.
      
              * http/tests/history/resources/back-during-onload-hung-page.php: Reduce timeout.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76816 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4455fee3
    • mitz@apple.com's avatar
      Allow pop-up menus to contain multiple items that have the same title. · 59b11139
      mitz@apple.com authored
      Reviewed by Anders Carlsson.
      
      * UIProcess/mac/WebPopupMenuProxyMac.mm:
      (WebKit::WebPopupMenuProxyMac::populate): Set the item’s title after adding it rather than
      when adding it, so that it will not replace any existing item with the same title.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76815 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      59b11139
    • zmo@google.com's avatar
      2011-01-26 Zhenyao Mo <zmo@google.com> · 4cdc9803
      zmo@google.com authored
              Reviewed by Kenneth Russell.
      
              shaderSource needs to preserve original source
              https://bugs.webkit.org/show_bug.cgi?id=52833
      
              * fast/canvas/webgl/gl-getshadersource-expected.txt: Added.
              * fast/canvas/webgl/gl-getshadersource.html: Added.
      2011-01-26  Zhenyao Mo  <zmo@google.com>
      
              Reviewed by Kenneth Russell.
      
              shaderSource needs to preserve original source
              https://bugs.webkit.org/show_bug.cgi?id=52833
      
              Test: fast/canvas/webgl/gl-getshadersource.html
      
              * html/canvas/WebGLRenderingContext.cpp:
              (WebCore::WebGLRenderingContext::getShaderParameter): Intercept SHADER_SOURCE_LENGTH.
              (WebCore::WebGLRenderingContext::getShaderSource): Intercept the call.
              (WebCore::WebGLRenderingContext::shaderSource): Cache the source.
              * html/canvas/WebGLShader.cpp: Cache shader source.
              (WebCore::WebGLShader::WebGLShader):
              * html/canvas/WebGLShader.h: Ditto.
              (WebCore::WebGLShader::getSource):
              (WebCore::WebGLShader::setSource):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76814 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4cdc9803
    • mitz@apple.com's avatar
      Reverted an accidental change in r76561. · da9d0ea6
      mitz@apple.com authored
      Rubber-stamped by Anders Carlsson.
      
      * WebView/WebHTMLView.mm:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76813 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      da9d0ea6
    • philn@webkit.org's avatar
      2011-01-27 Philippe Normand <pnormand@igalia.com> · 1f1239c5
      philn@webkit.org authored
              Unreviewed, skip flaky test, needs further investigation on the failure.
      
              [GTK] media/audio-delete-while-slider-thumb-clicked.html is flaky
              https://bugs.webkit.org/show_bug.cgi?id=53247
      
              * platform/gtk/Skipped:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76812 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1f1239c5
    • kbalazs@webkit.org's avatar
      Trivial crash fix in WTR. · bc620124
      kbalazs@webkit.org authored
      Rubber-stamped by Ariya Hidayat.
      
      * WebKitTestRunner/TestController.cpp:
      (WTR::TestController::initialize): Increase the size
      of the vector by one to be able to store the null character.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76811 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bc620124
    • jberlin@webkit.org's avatar
      fast/text/international/bidi-mirror-he-ar.html now passed on Windows in WebKit2. · a65228b2
      jberlin@webkit.org authored
      Unreviewed.
      
      * platform/win-wk2/Skipped:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76810 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a65228b2
    • mjs@apple.com's avatar
      Unreviewed. · bdfb9bee
      mjs@apple.com authored
      Fix mistake in my previous commit; I accidentally copied the old mac results instead
      of the new mac results for this test.
      
      * platform/mac-wk2/fast/blockflow/Kusa-Makura-background-canvas-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76809 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      bdfb9bee
    • rniwa@webkit.org's avatar
      Unreviewed; Fixed change log entries because Chromium rebaselines are... · d7ee116c
      rniwa@webkit.org authored
      Unreviewed; Fixed change log entries because Chromium rebaselines are unreviewed but claimed to be reviewed.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76808 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d7ee116c
    • philn@webkit.org's avatar
      2011-01-27 Philippe Normand <pnormand@igalia.com> · 1e919778
      philn@webkit.org authored
              Unreviewed, rebaseline of the favicon-as-image test from the build
              bot.
      
              * platform/gtk/http/tests/misc/favicon-as-image-expected.txt:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76807 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1e919778
    • rniwa@webkit.org's avatar
      2011-01-27 Ryosuke Niwa <rniwa@webkit.org> · aede32b2
      rniwa@webkit.org authored
              Another Unreviewed Chromium test expectation update.
      
              * platform/chromium/test_expectations.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76806 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      aede32b2
    • rniwa@webkit.org's avatar
      2011-01-27 Ryosuke Niwa <rniwa@webkit.org> · 0c47ea5c
      rniwa@webkit.org authored
              Unreviewed Chromium test expectation update.
      
              * platform/chromium/test_expectations.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76805 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0c47ea5c
    • rniwa@webkit.org's avatar
      2011-01-27 Ryosuke Niwa <rniwa@webkit.org> · 4352c771
      rniwa@webkit.org authored
              Unreviewed Chromium rebaselines.
      
              * platform/chromium-mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.checksum: Added.
              * platform/chromium-mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.png: Added.
              * platform/chromium-mac/fast/repaint/line-flow-with-floats-9-expected.checksum:
              * platform/chromium-mac/fast/repaint/line-flow-with-floats-9-expected.png:
              * platform/chromium-mac/fast/text/justify-ideograph-complex-expected.checksum: Added.
              * platform/chromium-mac/fast/text/justify-ideograph-complex-expected.png: Added.
              * platform/chromium-mac/fast/text/justify-ideograph-simple-expected.checksum: Added.
              * platform/chromium-mac/fast/text/justify-ideograph-simple-expected.png: Added.
              * platform/chromium-mac/fast/text/justify-ideograph-vertical-expected.checksum: Added.
              * platform/chromium-mac/fast/text/justify-ideograph-vertical-expected.png: Added.
              * platform/chromium-mac/tables/mozilla/marvin/x_thead_align_justify-expected.checksum: Added.
              * platform/chromium-mac/tables/mozilla/marvin/x_thead_align_justify-expected.png: Added.
              * platform/chromium/test_expectations.txt:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76804 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4352c771
    • kbalazs@webkit.org's avatar
      2011-01-27 Balazs Kelemen <kbalazs@webkit.org> · 623d6473
      kbalazs@webkit.org authored
              Reviewed by Csaba Osztrogonác.
      
              [Qt][WK2] WTR should be initialized in the same way as DRT
              https://bugs.webkit.org/show_bug.cgi?id=53240
      
              * WebKitTestRunner/InjectedBundle/qt/ActivateFontsQt.cpp:
              (WTR::activateFonts): Added missing initialization steps.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76803 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      623d6473
    • paroga@webkit.org's avatar
      2011-01-27 Patrick Gansterer <paroga@webkit.org> · c25624a7
      paroga@webkit.org authored
              Unreviewed WinCE build fix for r76743.
      
              * platform/graphics/wince/FontWinCE.cpp:
              (WebCore::TextRunComponent::TextRunComponent):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76802 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c25624a7
    • philn@webkit.org's avatar
      2011-01-27 Philippe Normand <pnormand@igalia.com> · 6803905e
      philn@webkit.org authored
              Unreviewed, GTK baselines for
              svg/custom/pattern-referencing-preserve-aspect-ratio.svg added in r76274.
      
              * platform/gtk/svg/custom/pattern-referencing-preserve-aspect-ratio-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76801 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6803905e
    • philn@webkit.org's avatar
      2011-01-27 Philippe Normand <pnormand@igalia.com> · c1605afe
      philn@webkit.org authored
              Unreviewed, GTK baselines for
              http/tests/misc/favicon-as-image.html which was unskipped in r76555.
      
              * platform/gtk/http/tests/misc/favicon-as-image-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76800 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c1605afe
    • philn@webkit.org's avatar
      2011-01-27 Philippe Normand <pnormand@igalia.com> · 20ed1a53
      philn@webkit.org authored
              Unreviewed, GTK baselines for fast/dom/52776.html, follow-up of r76319.
      
              * platform/gtk/fast/dom/52776-expected.txt: Added.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76799 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      20ed1a53
    • andreas.kling@nokia.com's avatar
      2011-01-27 Andreas Kling <kling@webkit.org> · 8c832484
      andreas.kling@nokia.com authored
              Reviewed by Kenneth Rohde Christiansen.
      
              [Qt][WK2] Add QWKPage APIs regarding engine process availability
              https://bugs.webkit.org/show_bug.cgi?id=53237
      
              QWKPage will now emit engineConnected() and engineDisconnected()
              when the web process crashes and is relaunched respectively.
      
              Also added QWKPage::isConnectedToEngine() for convenience.
      
              * UIProcess/API/qt/qwkpage.cpp:
              (QWKPagePrivate::QWKPagePrivate):
              (QWKPagePrivate::didRelaunchProcess):
              (QWKPagePrivate::processDidCrash):
              (QWKPage::isConnectedToEngine):
              * UIProcess/API/qt/qwkpage.h:
              * UIProcess/API/qt/qwkpage_p.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76798 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8c832484