1. 18 Aug, 2011 38 commits
    • aroben@apple.com's avatar
      Make WebCore keep track of the current device scale factor · 8f6f0842
      aroben@apple.com authored
      Fixes <http://webkit.org/b/66413> WebCore requires every WebKit port to keep track of the
      device scale factor
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      * WebCore.exp.in: Removed Frame::deviceScaleFactorChanged, added Page::setDeviceScaleFactor.
      
      * css/MediaQueryEvaluator.cpp:
      (WebCore::device_pixel_ratioMediaFeatureEval):
      * html/HTMLCanvasElement.cpp:
      (WebCore::HTMLCanvasElement::HTMLCanvasElement):
      * page/DOMWindow.cpp:
      (WebCore::DOMWindow::devicePixelRatio):
      * rendering/RenderInline.cpp:
      (WebCore::RenderInline::addDashboardRegions):
      * rendering/RenderLayerCompositor.cpp:
      (WebCore::RenderLayerCompositor::deviceScaleFactor):
      * rendering/RenderObject.cpp:
      (WebCore::RenderObject::addDashboardRegions):
      Changed to get the device scale factor from Page.
      
      * loader/EmptyClients.h:
      * page/Chrome.cpp:
      * page/Chrome.h:
      * page/ChromeClient.h:
      Removed Chrome[Client]::deviceScaleFactor.
      
      * page/Frame.cpp:
      * page/Frame.h:
      Removed deviceScaleFactorChanged. Made deviceOrPageScaleFactorChanged public.
      
      * page/Page.cpp:
      (WebCore::Page::Page): Initialize m_deviceScaleFactor.
      (WebCore::Page::setDeviceScaleFactor): Added. Code came from
      Frame::deviceScaleFactorChanged.
      
      * page/Page.h: Added m_deviceScaleFactor.
      (WebCore::Page::deviceScaleFactor): Added simple getter.
      
      Source/WebKit/chromium:
      
      * src/ChromeClientImpl.cpp:
      * src/ChromeClientImpl.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/efl:
      
      * WebCoreSupport/ChromeClientEfl.cpp:
      * WebCoreSupport/ChromeClientEfl.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/gtk:
      
      * WebCoreSupport/ChromeClientGtk.cpp:
      * WebCoreSupport/ChromeClientGtk.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/haiku:
      
      * WebCoreSupport/ChromeClientHaiku.cpp:
      * WebCoreSupport/ChromeClientHaiku.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/mac:
      
      * WebCoreSupport/WebChromeClient.h:
      * WebCoreSupport/WebChromeClient.mm:
      Moved code to calculate the device scale factor from here...
      
      * WebView/WebView.mm:
      (-[WebView _deviceScaleFactor]):
      ...to here.
      
      (-[WebView _windowDidChangeResolution:]): Now calls Page::setDeviceScaleFactor.
      
      Source/WebKit/qt:
      
      * Api/qwebpage.cpp:
      (QWebPagePrivate::QWebPagePrivate): Removed pixelRatio.
      (QWebPage::viewportAttributesForSize): Now calls Page::setDeviceScaleFactor.
      
      * Api/qwebpage_p.h: Removed pixelRatio.
      
      * WebCoreSupport/ChromeClientQt.cpp:
      * WebCoreSupport/ChromeClientQt.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/win:
      
      * WebCoreSupport/WebChromeClient.cpp:
      * WebCoreSupport/WebChromeClient.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/wince:
      
      * WebCoreSupport/ChromeClientWinCE.cpp:
      * WebCoreSupport/ChromeClientWinCE.h:
      Removed deviceScaleFactor.
      
      Source/WebKit/wx:
      
      * WebKitSupport/ChromeClientWx.cpp:
      * WebKitSupport/ChromeClientWx.h:
      Removed deviceScaleFactor.
      
      Source/WebKit2:
      
      * WebProcess/WebCoreSupport/WebChromeClient.cpp:
      * WebProcess/WebCoreSupport/WebChromeClient.h:
      Removed deviceScaleFactor.
      
      * WebProcess/WebPage/DrawingAreaImpl.cpp:
      (WebKit::DrawingAreaImpl::sendDidUpdateBackingStoreState):
      (WebKit::DrawingAreaImpl::exitAcceleratedCompositingMode):
      (WebKit::DrawingAreaImpl::display):
      * WebProcess/WebPage/FindController.cpp:
      (WebKit::FindController::updateFindIndicator):
      (WebKit::FindController::hideFindIndicator):
      * WebProcess/WebPage/ca/LayerTreeHostCA.cpp:
      (WebKit::LayerTreeHostCA::deviceScaleFactor):
      Changed to get the device scale factor from WebCore.
      
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::WebPage):
      (WebKit::WebPage::setDeviceScaleFactor):
      * WebProcess/WebPage/WebPage.h:
      Removed m_deviceScaleFactor. We always get the scale factor from WebCore now.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93303 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      8f6f0842
    • rniwa@webkit.org's avatar
      Dump-as-markup conversion: editing/pasteboard/paste-text-010.html and... · 21b8c779
      rniwa@webkit.org authored
      Dump-as-markup conversion: editing/pasteboard/paste-text-010.html and editing/pasteboard/paste-text-015.html
      https://bugs.webkit.org/show_bug.cgi?id=66440
      
      Reviewed by Kent Tamura.
      
      Converted the tests.
      
      * editing/pasteboard/paste-text-010-expected.txt: Added.
      * editing/pasteboard/paste-text-010.html:
      * editing/pasteboard/paste-text-015-expected.txt: Added.
      * editing/pasteboard/paste-text-015.html:
      * platform/chromium-linux/editing/pasteboard/paste-text-010-expected.png: Removed.
      * platform/chromium-linux/editing/pasteboard/paste-text-015-expected.png: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-010-expected.png: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-010-expected.txt: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-015-expected.png: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-015-expected.txt: Removed.
      * platform/gtk/editing/pasteboard/paste-text-010-expected.txt: Removed.
      * platform/gtk/editing/pasteboard/paste-text-015-expected.txt: Removed.
      * platform/mac/editing/pasteboard/paste-text-010-expected.png: Removed.
      * platform/mac/editing/pasteboard/paste-text-010-expected.txt: Removed.
      * platform/mac/editing/pasteboard/paste-text-015-expected.png: Removed.
      * platform/mac/editing/pasteboard/paste-text-015-expected.txt: Removed.
      * platform/qt/editing/pasteboard/paste-text-010-expected.txt: Removed.
      * platform/qt/editing/pasteboard/paste-text-015-expected.txt: Removed.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93302 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      21b8c779
    • rniwa@webkit.org's avatar
      Dump-as-markup conversion: editing/pasteboard/paste-text-017.html and... · 2de46f9b
      rniwa@webkit.org authored
      Dump-as-markup conversion: editing/pasteboard/paste-text-017.html and editing/pasteboard/paste-text-018.html
      https://bugs.webkit.org/show_bug.cgi?id=66443
      
      Reviewed by Kent Tamura.
      
      Converted the tests.
      
      * editing/pasteboard/paste-text-017-expected.txt: Added.
      * editing/pasteboard/paste-text-017.html:
      * editing/pasteboard/paste-text-018-expected.txt: Added.
      * editing/pasteboard/paste-text-018.html:
      * platform/chromium-linux/editing/pasteboard/paste-text-017-expected.png: Removed.
      * platform/chromium-linux/editing/pasteboard/paste-text-018-expected.png: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-017-expected.png: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-017-expected.txt: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-018-expected.png: Removed.
      * platform/chromium-win/editing/pasteboard/paste-text-018-expected.txt: Removed.
      * platform/gtk/editing/pasteboard/paste-text-017-expected.png: Removed.
      * platform/gtk/editing/pasteboard/paste-text-017-expected.txt: Removed.
      * platform/gtk/editing/pasteboard/paste-text-018-expected.png: Removed.
      * platform/gtk/editing/pasteboard/paste-text-018-expected.txt: Removed.
      * platform/mac/editing/pasteboard/paste-text-017-expected.png: Removed.
      * platform/mac/editing/pasteboard/paste-text-017-expected.txt: Removed.
      * platform/mac/editing/pasteboard/paste-text-018-expected.png: Removed.
      * platform/mac/editing/pasteboard/paste-text-018-expected.txt: Removed.
      * platform/qt/editing/pasteboard/paste-text-017-expected.txt: Removed.
      * platform/qt/editing/pasteboard/paste-text-018-expected.txt: Removed.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93301 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      2de46f9b
    • darin@apple.com's avatar
      SVG and HTML editing have conflicting inline isWhitespace functions · 03db535c
      darin@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=65145
      
      Reviewed by Nikolas Zimmermann.
      
      Renamed the SVG-specific whitespace functions to call it "SVG space"
      rather than just "whitespace". An alternative would have been to put
      the functions into an SVG namespace instead of the top level WebCore
      namespace.
      
      * svg/SVGAnimateMotionElement.cpp:
      (WebCore::parsePoint): Call skipOptionalSVGSpaces.
      * svg/SVGAnimationElement.cpp:
      (WebCore::parseKeySplines): Ditto.
      * svg/SVGFitToViewBox.cpp:
      (WebCore::SVGFitToViewBox::parseViewBox): Ditto.
      * svg/SVGLengthList.cpp:
      (WebCore::SVGLengthList::parse): Call isSVGSpace and
      skipOptionalSVGSpacesOrDelimiter.
      * svg/SVGParserUtilities.cpp:
      (WebCore::genericParseNumber): Call skipOptionalSVGSpacesOrDelimiter.
      (WebCore::parseArcFlag): Ditto.
      (WebCore::parseRect): Call skipOptionalSVGSpaces.
      (WebCore::pointsListFromSVGData): Ditto.
      (WebCore::parseGlyphName): Call skipOptionalSVGSpaces, isSVGSpace,
      and skipOptionalSVGSpacesOrDelimiter.
      (WebCore::parseDelimitedString): Call skipOptionalSVGSpaces.
      
      * svg/SVGParserUtilities.h:
      (WebCore::isSVGSpace): Renamed from isWhitespace. This better matches
      the comment which specifically talks about SVG.
      (WebCore::skipOptionalSVGSpaces): Renamed from skipOptionalSpaces.
      (WebCore::skipOptionalSVGSpacesOrDelimiter): Renamed from
      skipOptionalSVGSpacesOrDelimiter.
      
      * svg/SVGPathStringSource.cpp:
      (WebCore::SVGPathStringSource::moveToNextToken): Call skipOptionalSVGSpaces.
      * svg/SVGPreserveAspectRatio.cpp:
      (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio): Ditto.
      * svg/SVGStringList.cpp:
      (WebCore::SVGStringList::parse): Call isSVGSpace and
      skipOptionalSVGSpacesOrDelimiter.
      * svg/SVGTransformable.cpp:
      (WebCore::parseTransformParamList): Call skipOptionalSVGSpaces and
      skipOptionalSVGSpacesOrDelimiter.
      (WebCore::SVGTransformable::parseTransformAttribute): Call skipOptionalSVGSpaces.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93300 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      03db535c
    • steveblock@google.com's avatar
      Remove a superfluous 'using' from WebBindings.cpp · 47271db1
      steveblock@google.com authored
      https://bugs.webkit.org/show_bug.cgi?id=66046
      
      Reviewed by Alexey Proskuryakov.
      
      * src/WebBindings.cpp:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93299 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      47271db1
    • fpizlo@apple.com's avatar
      [jsfunfuzz] DFG speculative JIT does divide-by-zero checks incorrectly · 772bae9e
      fpizlo@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=66426
      
      Source/JavaScriptCore:
      
      Reviewed by Oliver Hunt.
      
      Changed the branchTestPtr to branchTest32.
      
      * dfg/DFGSpeculativeJIT.cpp:
      (JSC::DFG::SpeculativeJIT::compile):
      
      LayoutTests:
      
      Reviewed by Oliver Hunt.
      
      Added a trivial test of mod-by-zero, which fails with the previous version
      of the DFG speculative JIT.
      
      * fast/js/mod-by-zero-expected.txt: Added.
      * fast/js/mod-by-zero.html: Added.
      * fast/js/script-tests/mod-by-zero.js: Added.
      (mod):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93298 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      772bae9e
    • dslomov@google.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=66425 · 4b51349b
      dslomov@google.com authored
      check-webkit-style should detect incorrectly formatted file change descriptions.
      Description, if present, should be separated from colon with a space.
      
      Reviewed by David Levin.
      
      * Scripts/webkitpy/style/checkers/changelog.py: Fix.
      * Scripts/webkitpy/style/checkers/changelog_unittest.py: Unit tests.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93297 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      4b51349b
    • gavinp@chromium.org's avatar
      Prepare frames for history navigation. · c7ccab2b
      gavinp@chromium.org authored
      Before beginning an explicit history navigation in a newly initialized
      frame, it's important to give a "previous" item to avoid crashes, and
      give a state to the state machine to avoid extra validating loads.
      
      https://bugs.webkit.org/show_bug.cgi?id=66322
      
      Reviewed by Darin Fisher.
      
      Source/WebCore:
      
      No new tests, as history navigation is very difficult to test in
      DumpRenderTree.
      
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::prepareForHistoryNavigation):
      * loader/FrameLoader.h:
      
      Source/WebKit/chromium:
      
      * src/WebFrameImpl.cpp:
      (WebKit::WebFrameImpl::loadHistoryItem):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93296 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c7ccab2b
    • commit-queue@webkit.org's avatar
      When changing the size of a menulist from x (x>1) to 1, the first item should be selected. · 414e99ac
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66282
      
      Patch by Jing Zhao <jingzhao@chromium.org> on 2011-08-18
      Reviewed by Kent Tamura.
      
      No new tests since it only changes the behavior in Android Browser.
      
      * html/HTMLSelectElement.cpp:
      (WebCore::HTMLSelectElement::parseMappedAttribute):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93295 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      414e99ac
    • thakis@chromium.org's avatar
      [chromium/mac] Enable smooth scrolling · 6051939d
      thakis@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66418
      
      Reviewed by Dimitri Glazkov.
      
      * features.gypi:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93294 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      6051939d
    • steveblock@google.com's avatar
      Remove TIMEOUT expectation for fast/canvas/webgl/uninitialized-test.html · fa7efe15
      steveblock@google.com authored
      http://code.google.com/p/chromium/issues/detail?id=93044
      
      This test should now pass after Chromium rolled V8 to 3.5.6 in r97287.
      
      Unreviewed gardening.
      
      * platform/chromium/test_expectations.txt:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93293 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      fa7efe15
    • adamk@chromium.org's avatar
      Handle "form" attribute updates in parseMappedAttribute() instead of... · e9875e61
      adamk@chromium.org authored
      Handle "form" attribute updates in parseMappedAttribute() instead of attributeChanged() to better match HTMLElement practices
      https://bugs.webkit.org/show_bug.cgi?id=66321
      
      Reviewed by Darin Adler.
      
      Source/WebCore:
      
      This is simply a cleanup change: there's no need that I can see for
      HTMLFormControlElement and HTMLObjectElement to override
      Element::attributeChanged since they can properly handle form
      attribute changes in parseMappedAttribute, which they also override.
      
      Though no change in behavior, I've added test coverage of the moved
      code to an existing test (fast/forms/form-attribute.html) and added
      a new test.
      
      Test: fast/forms/radio-remove-form-attr.html
      
      * html/HTMLFormControlElement.cpp:
      (WebCore::HTMLFormControlElement::parseMappedAttribute):
      * html/HTMLFormControlElement.h:
      * html/HTMLObjectElement.cpp:
      (WebCore::HTMLObjectElement::parseMappedAttribute):
      * html/HTMLObjectElement.h:
      
      LayoutTests:
      
      Added new coverage to ensure that adding a radio button to a radio
      group in the document by removing a form attribute leaves the group in
      a valid state (no more than one button checked).
      
      Beefed up coverage of form associated elements to better cover
      HTMLObjectElement.
      
      * fast/forms/form-attribute-expected.txt:
      * fast/forms/radio-remove-form-attr-expected.txt: Added.
      * fast/forms/radio-remove-form-attr.html: Added.
      * fast/forms/script-tests/form-attribute.js:
      Added coverage of <object form=""> behavior.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93292 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e9875e61
    • commit-queue@webkit.org's avatar
      Add support of setPasswordEchoEnabled and setPasswordEchoDuration for password echo feature · d3c569cd
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66052
      
      Patch by Chang Shu <cshu@webkit.org> on 2011-08-18
      Reviewed by Alexey Proskuryakov.
      
      Source/WebCore:
      
      Added runtime settings in WebCore.
      Added support in window.internals for testing.
      
      Tests: editing/input/password-echo-passnode.html
             editing/input/password-echo-passnode2.html
             editing/input/password-echo-passnode3.html
             editing/input/password-echo-textnode.html
      
      * page/Settings.cpp:
      (WebCore::Settings::Settings):
      * page/Settings.h:
      (WebCore::Settings::setPasswordEchoEnabled):
      (WebCore::Settings::passwordEchoEnabled):
      (WebCore::Settings::setPasswordEchoDurationInSeconds):
      (WebCore::Settings::passwordEchoDurationInSeconds):
      * testing/Internals.cpp:
      (WebCore::Internals::Internals):
      (WebCore::Internals::setPasswordEchoEnabled):
      (WebCore::Internals::setPasswordEchoDurationInSeconds):
      (WebCore::Internals::reset):
      * testing/Internals.h:
      * testing/Internals.idl:
      
      Source/WebKit/qt:
      
      Enable password echo under the build flag.
      
      * Api/qwebsettings.cpp:
      (QWebSettingsPrivate::apply):
      
      LayoutTests:
      
      Added tests.
      
      * editing/input/password-echo-passnode-expected.txt: Added.
      * editing/input/password-echo-passnode.html: Added.
      * editing/input/password-echo-passnode2-expected.txt: Added.
      * editing/input/password-echo-passnode2.html: Added.
      * editing/input/password-echo-passnode3-expected.txt: Added.
      * editing/input/password-echo-passnode3.html: Added.
      * editing/input/password-echo-textnode-expected.txt: Added.
      * editing/input/password-echo-textnode.html: Added.
      * editing/input/resources: Added.
      * editing/input/resources/password-echo.js: Added.
      (secureChar):
      (secureText):
      (log):
      (assert):
      (run.else):
      (run):
      (init):
      * platform/wk2/Skipped: No support yet.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93291 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      d3c569cd
    • commit-queue@webkit.org's avatar
      Selecting all and inserting text into a page with a frameset leads to a NULL ptr · 97742097
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66288
      
      Source/WebCore:
      
      Patch by Wyatt Carss <wcarss@chromium.org> on 2011-08-18
      Reviewed by Tony Chang.
      
      VisibleSelection returns a NoSelection to InsertTextCommand::doApply as
      a new endingSelection, which isn't a sane state to be in. The code
      tries to get a position on a higher node for a better selection, but
      cannot go above the frameset (which exists in place of the body tag),
      which lacks a renderer, and therefore cannot have a non-NoSelection
      VisibleSelection.
      
      Because this is a rare corner case, it seemed more reasonable to bail
      out in this circumstance than to change the way VisibleSelection
      canonicalization works. The new behavior is to delete the content, but
      insert nothing. I investigated the possibility of trying to move above
      or below the frameset in this particular case, but there still isn't a
      renderer, so it didn't prevent the crash.
      
      Test: editing/inserting/insert-text-into-empty-frameset-crash.html
      
      * editing/InsertTextCommand.cpp:
      (WebCore::InsertTextCommand::doApply):
      
      LayoutTests:
      
      This test selects all and inserts text in a page which contains a frameset.
      It tests for a crash caused by a NULL ptr which can occur in InsertText::doApply.
      
      Patch by Wyatt Carss <wcarss@chromium.org> on 2011-08-18
      Reviewed by Tony Chang.
      
      * editing/inserting/insert-text-into-empty-frameset-crash-expected.txt: Added.
      * editing/inserting/insert-text-into-empty-frameset-crash.html: Added.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93290 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      97742097
    • reni@webkit.org's avatar
      [Qt] Correct the path in the Skipped list after 93283. · 7c3db133
      reni@webkit.org authored
      Unreviewed gardening.
      
      * platform/qt/Skipped:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93289 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7c3db133
    • commit-queue@webkit.org's avatar
      Remove arguments from CloseEvent::create(). · 92198c27
      commit-queue@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66294
      
      Patch by Takashi Toyoshima <toyoshim@chromium.org> on 2011-08-18
      Reviewed by Kent Tamura.
      
      CloseEvent objects are initialized by initCloseEvent() in all cases.
      Initialization in create() is redundant.
      
      No new tests for no functional difference.
      
      * websockets/CloseEvent.h:
      (WebCore::CloseEvent::create):
      (WebCore::CloseEvent::CloseEvent):
      * websockets/WebSocket.cpp:
      (WebCore::WebSocket::didClose):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93288 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      92198c27
    • fsamuel@chromium.org's avatar
      iframe and frameset scaling is broken · 1b291019
      fsamuel@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=57785
      
      Source/WebCore:
      
      Reviewed by Simon Fraser.
      
      Fixed two iframe and frameset scaling bugs:
        #1 iframes and frameset backgrounds and scroll areas are doubly scaled when they are styled with -webkit-transform.
        #2 frameset does not respect -webkit-transform-origin when scaled
      
      Tests: fast/frames/frame-set-scaling-3d.html
             fast/frames/frame-set-scaling-centered.html
             fast/frames/frame-set-scaling-rotate.html
             fast/frames/frame-set-scaling-skew.html
             fast/frames/frame-set-scaling.html
             fast/frames/iframe-scaling-with-scroll.html
      
      * rendering/RenderFrameSet.cpp:
      (WebCore::RenderFrameSet::layout):
      Update the FrameSet's layer transform after we've computed size to correctly account for the transform origin.
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::childrenClipRect):
      The dirty rect should be the document's unscaled size.
      * rendering/RenderWidget.cpp:
      (WebCore::RenderWidget::setWidget):
      (WebCore::RenderWidget::updateWidgetPosition):
      Don't scale the FrameView rect here. Scaling is done within the FrameView.
      
      LayoutTests:
      
      Added tests to verify that framesets and iframes are scaled and positioned correctly.
      
      Reviewed by Simon Fraser.
      
      * fast/frames/frame-set-scaling-3d-expected.png: Added.
      * fast/frames/frame-set-scaling-3d-expected.txt: Added.
      * fast/frames/frame-set-scaling-3d.html: Added.
      * fast/frames/frame-set-scaling-centered-expected.png: Added.
      * fast/frames/frame-set-scaling-centered-expected.txt: Added.
      * fast/frames/frame-set-scaling-centered.html: Added.
      * fast/frames/frame-set-scaling-expected.png: Added.
      * fast/frames/frame-set-scaling-expected.txt: Added.
      * fast/frames/frame-set-scaling-rotate-expected.png: Added.
      * fast/frames/frame-set-scaling-rotate-expected.txt: Added.
      * fast/frames/frame-set-scaling-rotate.html: Added.
      * fast/frames/frame-set-scaling-skew-expected.png: Added.
      * fast/frames/frame-set-scaling-skew-expected.txt: Added.
      * fast/frames/frame-set-scaling-skew.html: Added.
      * fast/frames/frame-set-scaling.html: Added.
      * fast/frames/iframe-scaling-with-scroll.html: Added.
      * platform/chromium-linux/fast/frames/iframe-scaling-with-scroll-expected.png: Added.
      * platform/chromium-linux/fast/frames/iframe-scaling-with-scroll-expected.txt: Added.
      * platform/chromium/test_expectations.txt:
      * platform/mac/fast/frames/iframe-scaling-with-scroll-expected.png: Added.
      * platform/mac/fast/frames/iframe-scaling-with-scroll-expected.txt: Added.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93287 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      1b291019
    • abarth@webkit.org's avatar
      webkit-patch pretty-diff should be shown in main help · 2569f3d2
      abarth@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66404
      
      Reviewed by Dimitri Glazkov.
      
      As requested by dglazkov.
      
      * Scripts/webkitpy/tool/commands/prettydiff.py:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93286 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      2569f3d2
    • ossy@webkit.org's avatar
      Unreviewed buildfix after r93268. · 0ecdb0b2
      ossy@webkit.org authored
      * dom/Document.cpp:
      (WebCore::disableRangeMutation):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93285 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      0ecdb0b2
    • eae@chromium.org's avatar
      Switch RenderBox to to new layout types · b9ba1a54
      eae@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66156
      
      Reviewed by Eric Seidel.
      
      Convert RenderBox to new layout abstraction as a part of the ongoing
      conversion work.
      
      No new tests as no new functionality.
      
      * rendering/RenderBox.cpp:
      (WebCore::RenderBox::scrollWidth):
      (WebCore::RenderBox::scrollHeight):
      (WebCore::RenderBox::scrollLeft):
      (WebCore::RenderBox::scrollTop):
      (WebCore::RenderBox::setScrollLeft):
      (WebCore::RenderBox::setScrollTop):
      (WebCore::RenderBox::absoluteRects):
      (WebCore::RenderBox::absoluteContentBox):
      (WebCore::RenderBox::absoluteContentQuad):
      (WebCore::RenderBox::outlineBoundsForRepaint):
      (WebCore::RenderBox::reflectionBox):
      (WebCore::RenderBox::reflectedRect):
      (WebCore::RenderBox::verticalScrollbarWidth):
      (WebCore::RenderBox::horizontalScrollbarHeight):
      (WebCore::RenderBox::computeContentBoxLogicalWidth):
      (WebCore::RenderBox::computeContentBoxLogicalHeight):
      (WebCore::RenderBox::maskClipRect):
      (WebCore::RenderBox::repaintLayerRectsForImage):
      (WebCore::RenderBox::pushContentsClip):
      (WebCore::RenderBox::overflowClipRect):
      (WebCore::RenderBox::clipRect):
      (WebCore::RenderBox::containingBlockLogicalWidthForContent):
      (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
      (WebCore::RenderBox::positionLineBox):
      (WebCore::RenderBox::clippedOverflowRectForRepaint):
      (WebCore::RenderBox::computeRectForRepaint):
      (WebCore::RenderBox::computeLogicalWidth):
      (WebCore::RenderBox::computeInlineDirectionMargins):
      (WebCore::RenderBox::computeLogicalHeight):
      (WebCore::RenderBox::computeLogicalHeightUsing):
      (WebCore::RenderBox::computePercentageLogicalHeight):
      (WebCore::RenderBox::computeBlockDirectionMargins):
      (WebCore::RenderBox::containingBlockLogicalWidthForPositioned):
      (WebCore::RenderBox::containingBlockLogicalHeightForPositioned):
      (WebCore::computeInlineStaticDistance):
      (WebCore::RenderBox::computePositionedLogicalWidth):
      (WebCore::computeLogicalLeftPositionedOffset):
      (WebCore::RenderBox::computePositionedLogicalWidthUsing):
      (WebCore::computeBlockStaticDistance):
      (WebCore::RenderBox::computePositionedLogicalHeight):
      (WebCore::computeLogicalTopPositionedOffset):
      (WebCore::RenderBox::computePositionedLogicalHeightUsing):
      (WebCore::RenderBox::computePositionedLogicalWidthReplaced):
      (WebCore::RenderBox::computePositionedLogicalHeightReplaced):
      (WebCore::RenderBox::localCaretRect):
      (WebCore::RenderBox::lineHeight):
      (WebCore::RenderBox::baselinePosition):
      (WebCore::RenderBox::logicalVisualOverflowRectForPropagation):
      (WebCore::RenderBox::visualOverflowRectForPropagation):
      (WebCore::RenderBox::logicalLayoutOverflowRectForPropagation):
      (WebCore::RenderBox::layoutOverflowRectForPropagation):
      (WebCore::RenderBox::locationOffsetIncludingFlipping):
      * rendering/RenderBox.h:
      (WebCore::RenderBox::borderFitAdjust):
      (WebCore::RenderBox::intrinsicSize):
      (WebCore::RenderBox::intrinsicLogicalWidth):
      (WebCore::RenderBox::intrinsicLogicalHeight):
      (WebCore::RenderBox::scrollbarLogicalHeight):
      (WebCore::RenderBox::controlClipRect):
      (WebCore::RenderBox::firstLineBoxBaseline):
      (WebCore::RenderBox::lastLineBoxBaseline):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93284 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      b9ba1a54
    • reni@webkit.org's avatar
      [Qt] Unreviewed gardening · e2284bff
      reni@webkit.org authored
      Patch by Balazs Kelemen <kbalazs@webkit.org> on 2011-08-17
      
      * platform/qt/Skipped: Skip new failures.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93283 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e2284bff
    • dslomov@google.com's avatar
      https://bugs.webkit.org/show_bug.cgi?id=66400 · 886055c9
      dslomov@google.com authored
      Fix TestWebKitAPI build on Mac OS.
      
      Reviewed by David Levin.
      
      * TestWebKitAPI/Configurations/Base.xcconfig: Added ICU headers to the HEADER_SEARCH_PATH.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93282 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      886055c9
    • sullivan@chromium.org's avatar
      Reduce usages of String::createUninitialized · 9a52d8da
      sullivan@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66399
      
      Constructs Strings with StringBuilder instead of calling createUninitialized.
      
      Reviewed by Adam Barth.
      
      No new tests; no functional change.
      
      * dom/StyleElement.cpp:
      (WebCore::StyleElement::process):
      * dom/Text.cpp:
      (WebCore::Text::wholeText):
      * html/parser/HTMLSourceTracker.cpp:
      (WebCore::HTMLSourceTracker::sourceForToken):
      * platform/graphics/Font.cpp:
      (WebCore::Font::normalizeSpaces):
      * platform/text/TextCodecUserDefined.cpp:
      (WebCore::TextCodecUserDefined::decode):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93281 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      9a52d8da
    • eae@chromium.org's avatar
      Switch FrameView to to new layout types · 4d10d4f8
      eae@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66147
      
      Reviewed by Eric Seidel.
      
      Convert Frame & FrameView to new layout abstraction as a part of the
      ongoing conversion work.
      
      No new tests, no new functionality.
      
      * page/Frame.cpp:
      (WebCore::Frame::visiblePositionForPoint):
      (WebCore::Frame::documentAtPoint):
      (WebCore::Frame::rangeForPoint):
      (WebCore::Frame::setPageAndTextZoomFactors):
      (WebCore::Frame::scalePage):
      * page/Frame.h:
      * page/FrameView.cpp:
      (WebCore::FrameView::create):
      (WebCore::FrameView::reset):
      (WebCore::FrameView::init):
      (WebCore::FrameView::invalidateRect):
      (WebCore::FrameView::setFrameRect):
      (WebCore::FrameView::setMarginWidth):
      (WebCore::FrameView::setMarginHeight):
      (WebCore::FrameView::setContentsSize):
      (WebCore::FrameView::adjustViewSize):
      (WebCore::FrameView::scrollXForFixedPosition):
      (WebCore::FrameView::scrollYForFixedPosition):
      (WebCore::FrameView::scrollOffsetForFixedPosition):
      (WebCore::FrameView::currentMousePosition):
      (WebCore::FrameView::scrollContentsFastPath):
      (WebCore::FrameView::scrollContentsSlowPath):
      (WebCore::FrameView::setScrollPosition):
      (WebCore::FrameView::repaintContentRectangle):
      (WebCore::FrameView::scrollToAnchor):
      (WebCore::FrameView::performPostLayoutTasks):
      (WebCore::FrameView::windowClipRect):
      (WebCore::FrameView::windowClipRectForLayer):
      (WebCore::FrameView::scrollTo):
      (WebCore::FrameView::invalidateScrollbarRect):
      (WebCore::FrameView::getTickmarks):
      (WebCore::FrameView::windowResizerRect):
      (WebCore::FrameView::setVisibleScrollerThumbRect):
      (WebCore::FrameView::paintScrollCorner):
      (WebCore::FrameView::paintContents):
      (WebCore::FrameView::paintOverhangAreas):
      (WebCore::FrameView::forceLayoutForPagination):
      (WebCore::FrameView::convertFromRenderer):
      (WebCore::FrameView::convertToRenderer):
      (WebCore::FrameView::convertToContainingView):
      (WebCore::FrameView::convertFromContainingView):
      * page/FrameView.h:
      (WebCore::FrameView::marginWidth):
      (WebCore::FrameView::marginHeight):
      * page/mac/FrameMac.mm:
      (WebCore::Frame::snapshotDragImage):
      (WebCore::Frame::nodeImage):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93280 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      4d10d4f8
    • eae@chromium.org's avatar
      Switch html/* to to new layout types · 67da864b
      eae@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66347
      
      Reviewed by Eric Seidel.
      
      Convert HTML* and shadow element to new layout abstraction as a part of
      the ongoing conversion work.
      
      No new tests, no new functionality.
      
      * html/HTMLAreaElement.cpp:
      (WebCore::HTMLAreaElement::invalidateCachedRegion):
      (WebCore::HTMLAreaElement::mapMouseEvent):
      (WebCore::HTMLAreaElement::computePath):
      (WebCore::HTMLAreaElement::computeRect):
      (WebCore::HTMLAreaElement::getRegion):
      * html/HTMLAreaElement.h:
      * html/HTMLCanvasElement.cpp:
      (WebCore::HTMLCanvasElement::paint):
      * html/HTMLCanvasElement.h:
      * html/HTMLMapElement.cpp:
      (WebCore::HTMLMapElement::mapMouseEvent):
      * html/HTMLMapElement.h:
      * html/ImageDocument.cpp:
      (WebCore::ImageDocumentParser::finish):
      (WebCore::ImageDocument::scale):
      (WebCore::ImageDocument::resizeImageToFit):
      (WebCore::ImageDocument::imageFitsInWindow):
      * html/ValidationMessage.cpp:
      (WebCore::adjustBubblePosition):
      * html/canvas/CanvasRenderingContext2D.cpp:
      (WebCore::size):
      (WebCore::CanvasRenderingContext2D::drawImage):
      * html/shadow/MediaControlElements.cpp:
      (WebCore::MediaControlPanelElement::startDrag):
      (WebCore::MediaControlPanelElement::continueDrag):
      (WebCore::MediaControlPanelElement::setPosition):
      (WebCore::MediaControlPanelElement::defaultEventHandler):
      * html/shadow/MediaControlElements.h:
      * html/shadow/SliderThumbElement.cpp:
      (WebCore::SliderThumbElement::dragFrom):
      (WebCore::SliderThumbElement::setPositionFromPoint):
      * html/shadow/SliderThumbElement.h:
      * rendering/RenderImage.cpp:
      (WebCore::RenderImage::nodeAtPoint):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93279 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      67da864b
    • commit-queue@webkit.org's avatar
      Change references to leveldb.gyp to leveldatabase.gyp as part of the · 14000737
      commit-queue@webkit.org authored
      leveldb refactoring going on in chromium: crbug.com/89378
      https://bugs.webkit.org/show_bug.cgi?id=66332
      
      Patch by David Grogan <dgrogan@chromium.org> on 2011-08-17
      Reviewed by Tony Gentilcore.
      
      Tests: new-run-webkit-tests --debug --chromium --no-retry-failures --build-directory=llvm storage/indexeddb
      
      * WebCore.gyp/WebCore.gyp:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93278 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      14000737
    • commit-queue@webkit.org's avatar
      https://bugs.webkit.org/show_bug.cgi?id=66379 · 5d522b71
      commit-queue@webkit.org authored
      implements load32WithCompactAddressOffsetPatch function
      and fixes store32 and moveWithPatch functions for SH4 platforms.
      
      Patch by Thouraya ANDOLSI <thouraya.andolsi@st.com> on 2011-08-17
      Reviewed by Gavin Barraclough.
      
      * assembler/MacroAssemblerSH4.h:
      (JSC::MacroAssemblerSH4::rshift32):
      (JSC::MacroAssemblerSH4::store32):
      (JSC::MacroAssemblerSH4::load32WithCompactAddressOffsetPatch):
      (JSC::MacroAssemblerSH4::moveWithPatch):
      * assembler/SH4Assembler.h:
      (JSC::SH4Assembler::movlMemRegCompact):
      (JSC::SH4Assembler::readPointer):
      (JSC::SH4Assembler::repatchCompact):
      * jit/JIT.h:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93277 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      5d522b71
    • hayato@chromium.org's avatar
      Implement proper handling of focus/blur events in regard to shadow DOM boundaries. · 13c2a71d
      hayato@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=61421
      
      Reviewed by Dimitri Glazkov.
      
      Introduces FocusEventDispatchMediator/BlurEventDispatchMediator so
      that focus/blue events are stopped at the lowest common shadow boundary.
      
      Source/WebCore:
      
      * dom/Document.cpp:
      (WebCore::Document::setFocusedNode):
      * dom/Event.cpp:
      (WebCore::FocusEventDispatchMediator::create):
      (WebCore::FocusEventDispatchMediator::FocusEventDispatchMediator):
      (WebCore::FocusEventDispatchMediator::dispatchEvent):
      (WebCore::BlurEventDispatchMediator::create):
      (WebCore::BlurEventDispatchMediator::BlurEventDispatchMediator):
      (WebCore::BlurEventDispatchMediator::dispatchEvent):
      * dom/Event.h:
      * dom/Node.cpp:
      (WebCore::Node::dispatchFocusEvent):
      (WebCore::Node::dispatchBlurEvent):
      * dom/Node.h:
      * html/HTMLFormControlElement.cpp:
      (WebCore::HTMLFormControlElement::dispatchBlurEvent):
      * html/HTMLFormControlElement.h:
      * html/HTMLSelectElement.cpp:
      (WebCore::HTMLSelectElement::dispatchFocusEvent):
      (WebCore::HTMLSelectElement::dispatchBlurEvent):
      * html/HTMLSelectElement.h:
      * html/HTMLTextFormControlElement.cpp:
      (WebCore::HTMLTextFormControlElement::dispatchFocusEvent):
      (WebCore::HTMLTextFormControlElement::dispatchBlurEvent):
      * html/HTMLTextFormControlElement.h:
      * page/FocusController.cpp:
      (WebCore::dispatchEventsOnWindowAndFocusedNode):
      
      LayoutTests:
      
      * fast/dom/shadow/shadow-boundary-events.html:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93276 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      13c2a71d
    • commit-queue@webkit.org's avatar
      Canvas fill and fillRect with SourceIn, DestinationIn, SourceOut,... · c8637bc9
      commit-queue@webkit.org authored
      Canvas fill and fillRect with SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy have errors
      https://bugs.webkit.org/show_bug.cgi?id=66036
      
      Source/WebCore:
      
      These modes cannot be passed straight through to the underlying graphics context as the graphics context
      and the HTML5 canvas spec have different interpretations to them. In the graphics context, the compositing
      modes are applied just over the area being filled. In the HTML5 spec, the compositing modes are applied over
      the entire canvas.
      
      The SourceIn, DestinationIn, SourceOut, DestinationAtop and Copy modes all need some kind of extra action
      to just performing the composited fill on the canvas, as they need t he canvas to be cleared outside of the
      area being filled.
      
      Previous to this change the Copy mode did not do this clearing at all. The other modes did but if the
      transformed path being filled contained anti-aliasing at its edges artifacts were introduced.
      
      With this change, Copy now does a complete erase of the canvas before performing a fill as per normal.
      The other modes use a temporary buffer just big enough for the transformed path (in device coordinates).
      The fill is first done there in SourceOver mode. Then this is drawn into the canvas context using the
      appropriate mode, with any areas outside the draw area being cleared.
      
      Patch by Ben Wells <benwells@chromium.org> on 2011-08-17
      Reviewed by James Robinson.
      
      Test: fast/canvas/canvas-composite-transformclip.html
      
      * html/HTMLCanvasElement.h:
      * html/canvas/CanvasRenderingContext2D.cpp:
      (WebCore::CanvasRenderingContext2D::fill):
      (WebCore::CanvasRenderingContext2D::fillRect):
      (WebCore::CanvasRenderingContext2D::clearCanvas):
      (WebCore::CanvasRenderingContext2D::transformAreaToDevice):
      (WebCore::CanvasRenderingContext2D::fillAndDisplayTransparencyElsewhere):
      * html/canvas/CanvasRenderingContext2D.h:
      * platform/graphics/skia/ImageBufferSkia.cpp:
      (WebCore::ImageBuffer::ImageBuffer):
      
      LayoutTests:
      
      Patch by Ben Wells <benwells@chromium.org> on 2011-08-17
      Reviewed by James Robinson.
      
      * fast/canvas/canvas-composite-alpha.html:
      * fast/canvas/canvas-composite-transformclip-expected.txt: Added.
      * fast/canvas/canvas-composite-transformclip.html: Added.
      * platform/chromium-linux/fast/canvas/canvas-composite-expected.png:
      * platform/chromium-linux/fast/canvas/canvas-composite-transformclip-expected.png: Added.
      * platform/chromium/test_expectations.txt:
      * platform/mac/fast/canvas/canvas-composite-expected.png:
      * platform/mac/fast/canvas/canvas-composite-transformclip-expected.png: Added.
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93275 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c8637bc9
    • eae@chromium.org's avatar
      Switch inspector to to new layout types · 78a28dc5
      eae@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66358
      
      Reviewed by Eric Seidel.
      
      Convert inspector code to new layout abstraction as a part of the ongoing
      conversion work.
      
      No new tests, no new functionality.
      
      * inspector/DOMNodeHighlighter.cpp:
      (WebCore::DOMNodeHighlighter::drawNodeHighlight):
      * inspector/InspectorInstrumentation.cpp:
      (WebCore::InspectorInstrumentation::willPaintImpl):
      * inspector/InspectorInstrumentation.h:
      (WebCore::InspectorInstrumentation::willPaint):
      * inspector/InspectorTimelineAgent.cpp:
      (WebCore::InspectorTimelineAgent::willPaint):
      * inspector/InspectorTimelineAgent.h:
      * inspector/TimelineRecordFactory.cpp:
      (WebCore::TimelineRecordFactory::createPaintData):
      * inspector/TimelineRecordFactory.h:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93274 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      78a28dc5
    • leviw@chromium.org's avatar
      Switch Editing code to new layout types · ea01379e
      leviw@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66355
      
      Reviewed by Eric Seidel.
      
      Converting remaining editing code to the LayoutUnit abstraction.
      
      No new tests, no change in functionality.
      
      * editing/Editor.cpp:
      (WebCore::Editor::rangeForPoint):
      (WebCore::Editor::insideVisibleArea):
      (WebCore::Editor::countMatchesForText):
      * editing/Editor.h:
      * editing/mac/FrameSelectionMac.mm:
      (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93273 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      ea01379e
    • leviw@chromium.org's avatar
      Switch Accessibility code to new layout types · c6f7fda9
      leviw@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66348
      
      Reviewed by Eric Seidel.
      
      Converting remaining Accessibility code to the LayoutUnit abstraction.
      
      No new tests, no change in functionality
      
      * accessibility/AccessibilityImageMapLink.cpp:
      (WebCore::AccessibilityImageMapLink::elementRect):
      * accessibility/AccessibilityImageMapLink.h:
      * accessibility/AccessibilityListBox.cpp:
      (WebCore::AccessibilityListBox::elementAccessibilityHitTest):
      * accessibility/AccessibilityListBox.h:
      * accessibility/AccessibilityListBoxOption.cpp:
      (WebCore::AccessibilityListBoxOption::elementRect):
      * accessibility/AccessibilityListBoxOption.h:
      * accessibility/AccessibilityMenuListOption.cpp:
      (WebCore::AccessibilityMenuListOption::elementRect):
      * accessibility/AccessibilityMenuListOption.h:
      (WebCore::AccessibilityMenuListOption::size):
      * accessibility/AccessibilityMenuListPopup.h:
      (WebCore::AccessibilityMenuListPopup::elementRect):
      (WebCore::AccessibilityMenuListPopup::size):
      * accessibility/AccessibilityObject.cpp:
      (WebCore::AccessibilityObject::clickPoint):
      (WebCore::AccessibilityObject::orientation):
      (WebCore::AccessibilityObject::elementAccessibilityHitTest):
      * accessibility/AccessibilityObject.h:
      (WebCore::AccessibilityObject::accessibilityHitTest):
      (WebCore::AccessibilityObject::boundingBoxRect):
      (WebCore::AccessibilityObject::size):
      (WebCore::AccessibilityObject::boundsForVisiblePositionRange):
      (WebCore::AccessibilityObject::doAXBoundsForRange):
      * accessibility/AccessibilityRenderObject.cpp:
      (WebCore::AccessibilityRenderObject::isOffScreen):
      (WebCore::AccessibilityRenderObject::boundingBoxRect):
      (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
      (WebCore::AccessibilityRenderObject::elementRect):
      (WebCore::AccessibilityRenderObject::size):
      (WebCore::AccessibilityRenderObject::clickPoint):
      (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
      (WebCore::AccessibilityRenderObject::boundsForVisiblePositionRange):
      (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
      (WebCore::AccessibilityRenderObject::doAXBoundsForRange):
      * accessibility/AccessibilityRenderObject.h:
      * accessibility/AccessibilityScrollView.cpp:
      (WebCore::AccessibilityScrollView::accessibilityHitTest):
      (WebCore::AccessibilityScrollView::elementRect):
      * accessibility/AccessibilityScrollView.h:
      * accessibility/AccessibilityScrollbar.cpp:
      (WebCore::AccessibilityScrollbar::elementRect):
      * accessibility/AccessibilityScrollbar.h:
      * accessibility/AccessibilitySlider.cpp:
      (WebCore::AccessibilitySliderThumb::elementRect):
      (WebCore::AccessibilitySliderThumb::size):
      * accessibility/AccessibilitySlider.h:
      * accessibility/AccessibilityTableColumn.cpp:
      (WebCore::AccessibilityTableColumn::elementRect):
      (WebCore::AccessibilityTableColumn::size):
      * accessibility/AccessibilityTableColumn.h:
      * accessibility/AccessibilityTableHeaderContainer.cpp:
      (WebCore::AccessibilityTableHeaderContainer::elementRect):
      (WebCore::AccessibilityTableHeaderContainer::size):
      * accessibility/AccessibilityTableHeaderContainer.h:
      * accessibility/mac/AccessibilityObjectWrapper.mm:
      (-[AccessibilityObjectWrapper position]):
      (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
      (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93272 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c6f7fda9
    • jonlee@apple.com's avatar
      Updating the forms survey to include various element sizes. · a2b97190
      jonlee@apple.com authored
      * projects/forms/survey.html:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93271 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a2b97190
    • eae@chromium.org's avatar
      Switch focus handling to to new layout types · e5e4355f
      eae@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66331
      
      Reviewed by Eric Seidel.
      
      Convert FocusController and SpatialNavigation to new layout abstraction
      as a part of the ongoing conversion work.
      
      No new tests, no new functionality.
      
      * page/FocusController.cpp:
      (WebCore::updateFocusCandidateIfNeeded):
      (WebCore::FocusController::findFocusCandidateInContainer):
      (WebCore::FocusController::advanceFocusDirectionallyInContainer):
      (WebCore::FocusController::advanceFocusDirectionally):
      * page/FocusController.h:
      * page/SpatialNavigation.cpp:
      (WebCore::alignmentForRects):
      (WebCore::start):
      (WebCore::middle):
      (WebCore::end):
      (WebCore::areRectsFullyAligned):
      (WebCore::areRectsPartiallyAligned):
      (WebCore::areRectsMoreThanFullScreenApart):
      (WebCore::below):
      (WebCore::rightOf):
      (WebCore::isRectInDirection):
      (WebCore::hasOffscreenRect):
      (WebCore::scrollInDirection):
      (WebCore::deflateIfOverlapped):
      (WebCore::canScrollInDirection):
      (WebCore::rectToAbsoluteCoordinates):
      (WebCore::nodeRectInAbsoluteCoordinates):
      (WebCore::frameRectInAbsoluteCoordinates):
      (WebCore::entryAndExitPointsForDirection):
      (WebCore::distanceDataForNode):
      (WebCore::canBeScrolledIntoView):
      (WebCore::virtualRectForDirection):
      (WebCore::virtualRectForAreaElementAndDirection):
      * page/SpatialNavigation.h:
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93270 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e5e4355f
    • leviw@chromium.org's avatar
      Switch Document, DocumentMarker, Clipboard, and Range to new layout types · 32f33775
      leviw@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=66330
      
      Reviewed by Eric Seidel.
      
      Converting the remaining DOM classes to use the LayoutUnit abstraction.
      
      No new tests, no new behavior.
      
      * dom/Clipboard.h:
      (WebCore::Clipboard::dragLocation):
      * dom/Document.cpp:
      (WebCore::Document::nodesFromRect):
      (WebCore::nodeFromPoint):
      (WebCore::Document::caretRangeFromPoint):
      (WebCore::Document::prepareMouseEvent):
      * dom/Document.h:
      * dom/DocumentMarkerController.cpp:
      (WebCore::DocumentMarkerController::markerContainingPoint):
      (WebCore::DocumentMarkerController::renderedRectsForMarkers):
      (WebCore::DocumentMarkerController::invalidateRenderedRectsForMarkersInRect):
      * dom/DocumentMarkerController.h:
      * dom/Range.cpp:
      (WebCore::adjustFloatQuadsForScrollAndAbsoluteZoomAndPageScale):
      * dom/RenderedDocumentMarker.h:
      (WebCore::RenderedDocumentMarker::contains):
      (WebCore::RenderedDocumentMarker::setRenderedRect):
      (WebCore::RenderedDocumentMarker::renderedRect):
      (WebCore::RenderedDocumentMarker::invalidMarkerRect):
      (WebCore::RenderedDocumentMarker::invalidate):
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93269 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      32f33775
    • mitz@apple.com's avatar
      Source/WebCore: Removed an unused setting. · 095059dd
      mitz@apple.com authored
      Reviewed by Anders Carlsson.
      
      * WebCore.exp.in:
      * page/Settings.cpp:
      (WebCore::Settings::Settings): Removed initializer for m_needsTigerMailQuirks.
      * page/Settings.h: Removed accessors.
      
      Source/WebKit/mac: Removed some code that is not needed when building for Leopard or later.
      
      Reviewed by Anders Carlsson.
      
      * WebCoreSupport/WebContextMenuClient.mm:
      (fixMenusToSendToOldClients): Removed check for Tiger Mail.
      * WebCoreSupport/WebFrameLoaderClient.mm:
      (WebFrameLoaderClient::objectContentType):
      * WebView/WebView.mm:
      (-[WebView _commonInitializationWithFrameName:groupName:usesDocumentViews:]):
      (-[WebView _preferencesChanged:]):
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93268 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      095059dd
    • oliver@apple.com's avatar
      Move towards supporting user controlled prototypes on CanvasPixelArray · f7a3d86a
      oliver@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=66429
      
      Reviewed by Gavin Barraclough.
      
      Start using a per-global object structure for canvas pixel array.
      
      * bindings/js/JSImageDataCustom.cpp:
      (WebCore::toJS):
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93264 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f7a3d86a
    • macpherson@chromium.org's avatar
      Support cast from CSSPrimitiveValue to unsigned, and use in appropriate places... · ddd5921f
      macpherson@chromium.org authored
      Support cast from CSSPrimitiveValue to unsigned, and use in appropriate places in CSSStyleSelector::applyProperty
      https://bugs.webkit.org/show_bug.cgi?id=66281
      
      Reviewed by Eric Seidel.
      
      No new tests - refactoring only.
      
      The return if type!=CSS_NUMBER case becomes an ASSERT because it is unreachable unless there is an error in the parser.
      
      * css/CSSPrimitiveValueMappings.h:
      (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
      Support cast from unsigned to CSSPrimitiveValue
      (WebCore::CSSPrimitiveValue::operator unsigned):
      Support cast from CSSPrimitiveValue to unsigned
      * css/CSSStyleSelector.cpp:
      (WebCore::CSSStyleSelector::applyProperty):
      Use HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE macro for CSSPropertyWebkitBoxFlex,
      CSSPropertyWebkitBoxFlexGroup and CSSPropertyWebkitBoxOrdinalGroup properties.
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@93263 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      ddd5921f
  2. 17 Aug, 2011 2 commits