1. 21 Jan, 2011 40 commits
    • bweinstein@apple.com's avatar
      WebKit2: Need API to stop loading a WKFrame · c9643349
      bweinstein@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=52925
      
      Reviewed by Adam Roben.
      
      * UIProcess/API/C/WKFrame.cpp:
      (WKFrameStopLoading): Call through to WebFrameProxy::stopLoading.
      * UIProcess/API/C/WKFrame.h:
      * UIProcess/WebFrameProxy.cpp:
      (WebKit::WebFrameProxy::stopLoading): Send a message to the WebProcess to stop loading the frame
          with the passed in ID.
      * UIProcess/WebFrameProxy.h:
      * WebProcess/WebPage/WebPage.cpp:
      (WebKit::WebPage::stopLoadingFrame): Call stopForUserCancel on the passed-in frame.
      * WebProcess/WebPage/WebPage.h:
      * WebProcess/WebPage/WebPage.messages.in: Add StopLoadingFrame.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76403 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c9643349
    • crogers@google.com's avatar
      2011-01-21 Chris Rogers <crogers@google.com> · 1ca33a58
      crogers@google.com authored
              Reviewed by Kenneth Russell.
      
              fix audio build: header file should be "Noncopyable.h" and not "NonCopyable.h"
              https://bugs.webkit.org/show_bug.cgi?id=52933
      
              No new tests since this just fixes the build
      
              * webaudio/RealtimeAnalyser.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76402 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1ca33a58
    • weinig@apple.com's avatar
      WebKitTestRunner needs the HOME environment variable to be set. · 051259f0
      weinig@apple.com authored
      <rdar://problem/8896573>
      
      Reviewed by Geoffrey Sean Garen and Mark Rowe.
      
      * Scripts/old-run-webkit-tests: Set the HOME environment variable if
      it exists.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76401 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      051259f0
    • crogers@google.com's avatar
      2011-01-21 Chris Rogers <crogers@google.com> · 3817002e
      crogers@google.com authored
              Reviewed by Kenneth Russell.
      
              Fix audio build: change ChromiumBridge to PlatformBridge
              https://bugs.webkit.org/show_bug.cgi?id=52928
      
              No new tests since audio API is not yet implemented.
      
              * platform/audio/chromium/AudioBusChromium.cpp:
              (WebCore::AudioBus::loadPlatformResource):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76400 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3817002e
    • ggaren@apple.com's avatar
      2011-01-21 Geoffrey Garen <ggaren@apple.com> · ef52669c
      ggaren@apple.com authored
              Reviewed by Sam Weinig.
      
              Moved the mark stack from global data to the heap, since it pertains
              to the heap, and not the virtual machine as a whole.
              https://bugs.webkit.org/show_bug.cgi?id=52930
              
              SunSpider reports no change.
      
              * runtime/Heap.cpp:
              (JSC::Heap::Heap):
              (JSC::Heap::markRoots):
              * runtime/Heap.h:
              * runtime/JSGlobalData.cpp:
              (JSC::JSGlobalData::JSGlobalData):
              * runtime/JSGlobalData.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76399 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ef52669c
    • dpranke@chromium.org's avatar
      2011-01-21 Dirk Pranke <dpranke@chromium.org> · 602c8bfa
      dpranke@chromium.org authored
              Reviewed by Eric Seidel.
      
              Suppress a few remaining integration tests so that none of the
              layout_test unit tests ever read from the filesystem or launch
              subprocesses that aren't part of the unit tests.
      
              Also fix a minor bug in the printing unit tests that was
              incorrectly relying on sys.argv.
      
              https://bugs.webkit.org/show_bug.cgi?id=52863
      
              * Scripts/webkitpy/layout_tests/layout_package/printing_unittest.py:
              * Scripts/webkitpy/layout_tests/port/port_testcase.py:
              * Scripts/webkitpy/layout_tests/run_webkit_tests_unittest.py:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76398 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      602c8bfa
    • crogers@google.com's avatar
      2011-01-21 Chris Rogers <crogers@google.com> · 66202966
      crogers@google.com authored
              Reviewed by Kenneth Russell.
      
              Add FFTFrameStub to avoid link errors during bringup on platforms without an FFT implementation
              https://bugs.webkit.org/show_bug.cgi?id=52922
      
              No new tests since audio API is not yet implemented.
      
              * WebCore.gypi:
              * platform/audio/FFTFrameStub.cpp: Added.
              (WebCore::FFTFrame::FFTFrame):
              (WebCore::FFTFrame::~FFTFrame):
              (WebCore::FFTFrame::multiply):
              (WebCore::FFTFrame::doFFT):
              (WebCore::FFTFrame::doInverseFFT):
              (WebCore::FFTFrame::cleanup):
              (WebCore::FFTFrame::realData):
              (WebCore::FFTFrame::imagData):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76397 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      66202966
    • mjs@apple.com's avatar
      2011-01-21 Maciej Stachowiak <mjs@apple.com> · 121cd8ee
      mjs@apple.com authored
              Reviewed by Adam Roben.
      
              Skip some newly added tests that use DRT APIs that are not yet available for WebKit2
              https://bugs.webkit.org/show_bug.cgi?id=52924
      
              * platform/mac-wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76396 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      121cd8ee
    • tony@chromium.org's avatar
      2011-01-21 Tony Chang <tony@chromium.org> · c0e73588
      tony@chromium.org authored
              Reviewed by Sam Weinig.
      
              reduce number of FrameLoaderClient::didChangeScrollOffset calls
              https://bugs.webkit.org/show_bug.cgi?id=52915
      
              Only notify of changes in scroll offset when there actually is a change.
              This regressed in r76291.
      
              Covered by Chromium browser_tests.
      
              * platform/ScrollAnimator.cpp:
              (WebCore::ScrollAnimator::scrollToOffsetWithoutAnimation):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76395 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c0e73588
    • beidson@apple.com's avatar
      <rdar://problem/8894125> and https://bugs.webkit.org/show_bug.cgi?id=52916 · 40c86086
      beidson@apple.com authored
      Expose "suggested filename" for a resource based on its resource response.
      
      Reviewed by Adam Roben.
      
      API pieces:
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.cpp:
      (WKBundleFrameCopySuggestedFilenameForResourceURL):
      * WebProcess/InjectedBundle/API/c/WKBundleFrame.h:
              
      Implementation:
      * WebProcess/WebPage/WebFrame.cpp:
      (WebKit::WebFrame::suggestedFilenameForResourceURL): See if the DocumentLoader has
        a resource for this URL and, if so, return the response's suggested filename.
      * WebProcess/WebPage/WebFrame.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76394 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40c86086
    • andersca@apple.com's avatar
      2011-01-21 Anders Carlsson <andersca@apple.com> · c5d43006
      andersca@apple.com authored
              Reviewed by Dan Bernstein.
      
              DrawingAreaProxyImpl::paint should return the unpainted region
              https://bugs.webkit.org/show_bug.cgi?id=52918
      
              * UIProcess/API/mac/WKView.mm:
              (-[WKView drawRect:]):
              Add unpaintedRegion parameter.
      
              * UIProcess/BackingStore.h:
              (WebKit::BackingStore::size):
              Add a size getter.
      
              * UIProcess/DrawingAreaProxyImpl.cpp:
              (WebKit::DrawingAreaProxyImpl::paint):
              Initialize the unpainted region to the dirty region, then subtract the painted region.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76393 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c5d43006
    • pfeldman@chromium.org's avatar
      2011-01-21 Pavel Feldman <pfeldman@chromium.org> · e239eadc
      pfeldman@chromium.org authored
              Reviewed by Yury Semikhatsky.
      
              Web Inspector: ~InspectorResourceAgent crashes on closing inspected page.
              https://bugs.webkit.org/show_bug.cgi?id=52900
      
              * inspector/InspectorController.cpp:
              (WebCore::InspectorController::~InspectorController):
              (WebCore::InspectorController::inspectedPageDestroyed):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76392 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e239eadc
    • andersca@apple.com's avatar
      Fix for <rdar://problem/8896057> · f7d01d38
      andersca@apple.com authored
      Reviewed by Dan Bernstein and Maciej Stachowiak.
      
      Give the Web Process access to the PubSub agent.
      
      * WebProcess/com.apple.WebProcess.sb:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76391 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f7d01d38
    • crogers@google.com's avatar
      2011-01-21 Chris Rogers <crogers@google.com> · 181d9870
      crogers@google.com authored
              Reviewed by Darin Fisher.
      
              Add run-time enable support for the web audio API
              https://bugs.webkit.org/show_bug.cgi?id=52741
      
              * public/WebRuntimeFeatures.h:
              * public/WebSettings.h:
              * src/WebRuntimeFeatures.cpp:
              (WebKit::WebRuntimeFeatures::enableWebAudio):
              (WebKit::WebRuntimeFeatures::isWebAudioEnabled):
              * src/WebSettingsImpl.cpp:
              (WebKit::WebSettingsImpl::setWebAudioEnabled):
              * src/WebSettingsImpl.h:
      2011-01-21  Chris Rogers  <crogers@google.com>
      
              Reviewed by Darin Fisher.
      
              Add run-time enable support for the web audio API
              https://bugs.webkit.org/show_bug.cgi?id=52741
      
              * WebPreferenceKeysPrivate.h:
              * WebView.cpp:
              (WebView::notifyPreferencesChanged):
      2011-01-21  Chris Rogers  <crogers@google.com>
      
              Reviewed by Darin Fisher.
      
              Add run-time enable support for the web audio API
              https://bugs.webkit.org/show_bug.cgi?id=52741
      
              * WebView/WebPreferenceKeysPrivate.h:
              * WebView/WebPreferences.mm:
              (-[WebPreferences webAudioEnabled]):
              (-[WebPreferences setWebAudioEnabled:]):
              * WebView/WebPreferencesPrivate.h:
              * WebView/WebView.mm:
              (-[WebView _preferencesChangedNotification:]):
      2011-01-21  Chris Rogers  <crogers@google.com>
      
              Reviewed by Darin Fisher.
      
              Add run-time enable support for the web audio API
              https://bugs.webkit.org/show_bug.cgi?id=52741
      
              No new tests since audio API is not yet implemented.
      
              * WebCore.exp.in:
              * bindings/generic/RuntimeEnabledFeatures.cpp:
              * bindings/generic/RuntimeEnabledFeatures.h:
              (WebCore::RuntimeEnabledFeatures::setWebkitAudioContextEnabled):
              (WebCore::RuntimeEnabledFeatures::webkitAudioContextEnabled):
              * page/DOMWindow.idl:
              * page/Settings.cpp:
              (WebCore::Settings::Settings):
              (WebCore::Settings::setWebAudioEnabled):
              * page/Settings.h:
              (WebCore::Settings::webAudioEnabled):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76390 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      181d9870
    • weinig@apple.com's avatar
      Fix windows build. · 2698b31f
      weinig@apple.com authored
      * WebScrollBar.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76389 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2698b31f
    • mrobinson@webkit.org's avatar
      2011-01-21 Martin Robinson <mrobinson@igalia.com> · d5e080f9
      mrobinson@webkit.org authored
              Reviewed by Xan Lopez.
      
              [GTK] Menulist text often collides with separator
              https://bugs.webkit.org/show_bug.cgi?id=51155
      
              Rebaseline tests that have different affected by the metrics of
              the menulist.
      
              * platform/gtk/fast/forms/001-expected.checksum:
              * platform/gtk/fast/forms/001-expected.png:
              * platform/gtk/fast/forms/001-expected.txt:
              * platform/gtk/fast/forms/003-expected.checksum:
              * platform/gtk/fast/forms/003-expected.png:
              * platform/gtk/fast/forms/003-expected.txt:
              * platform/gtk/fast/forms/004-expected.checksum:
              * platform/gtk/fast/forms/004-expected.png:
              * platform/gtk/fast/forms/004-expected.txt:
              * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.checksum:
              * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.png:
              * platform/gtk/fast/forms/HTMLOptionElement_label01-expected.txt:
              * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.checksum:
              * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.png:
              * platform/gtk/fast/forms/HTMLOptionElement_label02-expected.txt:
              * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.checksum:
              * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.png:
              * platform/gtk/fast/forms/HTMLOptionElement_label03-expected.txt:
              * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.checksum:
              * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.png:
              * platform/gtk/fast/forms/HTMLOptionElement_label04-expected.txt:
              * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.checksum:
              * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.png:
              * platform/gtk/fast/forms/HTMLOptionElement_label06-expected.txt:
              * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.checksum:
              * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.png:
              * platform/gtk/fast/forms/HTMLOptionElement_label07-expected.txt:
              * platform/gtk/fast/forms/control-clip-overflow-expected.checksum:
              * platform/gtk/fast/forms/control-clip-overflow-expected.png:
              * platform/gtk/fast/forms/control-clip-overflow-expected.txt:
              * platform/gtk/fast/forms/control-restrict-line-height-expected.checksum:
              * platform/gtk/fast/forms/control-restrict-line-height-expected.png:
              * platform/gtk/fast/forms/control-restrict-line-height-expected.txt:
              * platform/gtk/fast/forms/disabled-select-change-index-expected.checksum:
              * platform/gtk/fast/forms/disabled-select-change-index-expected.png:
              * platform/gtk/fast/forms/disabled-select-change-index-expected.txt:
              * platform/gtk/fast/forms/form-element-geometry-expected.checksum:
              * platform/gtk/fast/forms/form-element-geometry-expected.png:
              * platform/gtk/fast/forms/form-element-geometry-expected.txt:
              * platform/gtk/fast/forms/input-file-re-render-expected.checksum: Added.
              * platform/gtk/fast/forms/input-file-re-render-expected.png: Added.
              * platform/gtk/fast/forms/menulist-deselect-update-expected.checksum:
              * platform/gtk/fast/forms/menulist-deselect-update-expected.png:
              * platform/gtk/fast/forms/menulist-deselect-update-expected.txt:
              * platform/gtk/fast/forms/menulist-narrow-width-expected.checksum:
              * platform/gtk/fast/forms/menulist-narrow-width-expected.png:
              * platform/gtk/fast/forms/menulist-narrow-width-expected.txt:
              * platform/gtk/fast/forms/menulist-no-overflow-expected.checksum:
              * platform/gtk/fast/forms/menulist-no-overflow-expected.png:
              * platform/gtk/fast/forms/menulist-no-overflow-expected.txt:
              * platform/gtk/fast/forms/menulist-restrict-line-height-expected.checksum:
              * platform/gtk/fast/forms/menulist-restrict-line-height-expected.png:
              * platform/gtk/fast/forms/menulist-restrict-line-height-expected.txt:
              * platform/gtk/fast/forms/menulist-separator-painting-expected.checksum:
              * platform/gtk/fast/forms/menulist-separator-painting-expected.png:
              * platform/gtk/fast/forms/menulist-separator-painting-expected.txt:
              * platform/gtk/fast/forms/menulist-style-color-expected.checksum:
              * platform/gtk/fast/forms/menulist-style-color-expected.png:
              * platform/gtk/fast/forms/menulist-style-color-expected.txt:
              * platform/gtk/fast/forms/menulist-width-change-expected.checksum:
              * platform/gtk/fast/forms/menulist-width-change-expected.png:
              * platform/gtk/fast/forms/menulist-width-change-expected.txt:
              * platform/gtk/fast/forms/option-script-expected.checksum:
              * platform/gtk/fast/forms/option-script-expected.png:
              * platform/gtk/fast/forms/option-script-expected.txt:
              * platform/gtk/fast/forms/option-strip-whitespace-expected.checksum:
              * platform/gtk/fast/forms/option-strip-whitespace-expected.png:
              * platform/gtk/fast/forms/option-strip-whitespace-expected.txt:
              * platform/gtk/fast/forms/option-text-clip-expected.checksum:
              * platform/gtk/fast/forms/option-text-clip-expected.png:
              * platform/gtk/fast/forms/option-text-clip-expected.txt:
              * platform/gtk/fast/forms/select-align-expected.checksum:
              * platform/gtk/fast/forms/select-align-expected.png:
              * platform/gtk/fast/forms/select-align-expected.txt:
              * platform/gtk/fast/forms/select-baseline-expected.checksum:
              * platform/gtk/fast/forms/select-baseline-expected.png:
              * platform/gtk/fast/forms/select-baseline-expected.txt:
              * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.checksum:
              * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.png:
              * platform/gtk/fast/forms/select-change-listbox-to-popup-expected.txt:
              * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.checksum:
              * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.png:
              * platform/gtk/fast/forms/select-dirty-parent-pref-widths-expected.txt:
              * platform/gtk/fast/forms/select-disabled-appearance-expected.checksum:
              * platform/gtk/fast/forms/select-disabled-appearance-expected.png:
              * platform/gtk/fast/forms/select-disabled-appearance-expected.txt:
              * platform/gtk/fast/forms/select-initial-position-expected.checksum:
              * platform/gtk/fast/forms/select-initial-position-expected.png:
              * platform/gtk/fast/forms/select-initial-position-expected.txt:
              * platform/gtk/fast/forms/select-selected-expected.checksum:
              * platform/gtk/fast/forms/select-selected-expected.png:
              * platform/gtk/fast/forms/select-selected-expected.txt:
              * platform/gtk/fast/forms/select-size-expected.checksum:
              * platform/gtk/fast/forms/select-size-expected.png:
              * platform/gtk/fast/forms/select-size-expected.txt:
              * platform/gtk/fast/forms/select-style-expected.checksum:
              * platform/gtk/fast/forms/select-style-expected.png:
              * platform/gtk/fast/forms/select-style-expected.txt:
              * platform/gtk/fast/forms/select-visual-hebrew-expected.checksum:
              * platform/gtk/fast/forms/select-visual-hebrew-expected.png:
              * platform/gtk/fast/forms/select-visual-hebrew-expected.txt:
              * platform/gtk/fast/forms/select-writing-direction-natural-expected.checksum:
              * platform/gtk/fast/forms/select-writing-direction-natural-expected.png:
              * platform/gtk/fast/forms/select-writing-direction-natural-expected.txt:
              * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.checksum:
              * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.png:
              * platform/gtk/fast/forms/stuff-on-my-optgroup-expected.txt:
      2011-01-21  Martin Robinson  <mrobinson@igalia.com>
      
              Reviewed by Xan Lopez.
      
              [GTK] Menulist text often collides with separator
              https://bugs.webkit.org/show_bug.cgi?id=51155
      
              Move menulist rendering to RenderThemeGtk and correct padding code
              for separators in menulists.
      
              * platform/gtk/RenderThemeGtk.cpp:
              (WebCore::RenderThemeGtk::RenderThemeGtk): Initialize new widget members.
              (WebCore::RenderThemeGtk::getComboBoxSeparatorWidth): Added.
              (WebCore::RenderThemeGtk::comboBoxArrowSize): Added.
              (WebCore::getButtonInnerBorder): Added.
              (WebCore::RenderThemeGtk::getComboBoxPadding): Do this manually instead of using
              Mozilla code.
              (WebCore::RenderThemeGtk::paintMenuList): Ditto.
              (WebCore::setupWidget): Abstracted this part of the setupWidgetAndAddToContainer
              out to handle child widgets of comboboxes.
              (WebCore::RenderThemeGtk::setupWidgetAndAddToContainer): Abstracted out setupWidget.
              (WebCore::RenderThemeGtk::gtkContainer): Added.
              (WebCore::getGtkComboBoxButton): Added.
              (WebCore::getGtkComboBoxPieces): Added.
              (WebCore::RenderThemeGtk::gtkComboBox): Call setupWidget here.
              (WebCore::RenderThemeGtk::refreshComboBoxChildren): Added.
              (WebCore::RenderThemeGtk::gtkComboBoxButton): Added.
              (WebCore::RenderThemeGtk::gtkComboBoxArrow): Added.
              (WebCore::RenderThemeGtk::gtkComboBoxSeparator): Added.
              * platform/gtk/RenderThemeGtk.h: Added new members and methods.
              * platform/gtk/WidgetRenderingContext.h: Added new members and methods.
              * platform/gtk/WidgetRenderingContextGtk2.cpp:
              (WebCore::WidgetRenderingContext::gtkPaintArrow):
              (WebCore::WidgetRenderingContext::gtkPaintVLine):
              * platform/gtk/WidgetRenderingContextGtk3.cpp:
              (WebCore::WidgetRenderingContext::gtkPaintArrow):
              (WebCore::WidgetRenderingContext::gtkPaintVLine):
              * platform/gtk/gtk2drawing.c: Removed code for drawing menulists and buttons.
              (moz_gtk_init):
              (moz_gtk_get_widget_border):
              (moz_gtk_widget_paint):
              * platform/gtk/gtk3drawing.c:
              (moz_gtk_init):
              (moz_gtk_get_widget_border):
              (moz_gtk_widget_paint):
              * platform/gtk/gtkdrawing.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76388 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d5e080f9
    • weinig@apple.com's avatar
      Fix chromium mac build. · 956ffb3a
      weinig@apple.com authored
      * platform/chromium/ScrollbarThemeChromiumMac.mm:
      (WebCore::scrollbarStateToThemeState):
      (WebCore::ScrollbarThemeChromiumMac::paint):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76387 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      956ffb3a
    • ossy@webkit.org's avatar
      Unreviewed trivial fix. · c1bc34d5
      ossy@webkit.org authored
      FrameLoader::checkLoadCompleteForThisFrame uses wrong history item
      https://bugs.webkit.org/show_bug.cgi?id=48812
      
      * platform/qt/http/tests/navigation/forward-and-cancel-expected.txt: Updated after r76357.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76386 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c1bc34d5
    • weinig@apple.com's avatar
      Fix the windows build. · 514d09c7
      weinig@apple.com authored
      * platform/ScrollbarThemeComposite.cpp:
      (WebCore::ScrollbarThemeComposite::paint):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76385 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      514d09c7
    • jberlin@webkit.org's avatar
      Skip transitions/transition-end-event-destroy-iframe.html on Windows in order to get the · e85676bc
      jberlin@webkit.org authored
      Windows 7 Release bots green. Unreviewed.
      https://bugs.webkit.org/show_bug.cgi?id=52913
      
      * platform/win/Skipped:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76384 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e85676bc
    • rniwa@webkit.org's avatar
      2011-01-21 Ryosuke Niwa <rniwa@webkit.org> · 3e8757a5
      rniwa@webkit.org authored
              Unreviewed; another Chromium build fix attempt for r76378.
      
              * src/WebScrollbarImpl.cpp:
              (WebKit::WebScrollbar::create):
              (WebKit::WebScrollbarImpl::WebScrollbarImpl):
              (WebKit::WebScrollbarImpl::setValue):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76383 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3e8757a5
    • rniwa@webkit.org's avatar
      2011-01-21 Ryosuke Niwa <rniwa@webkit.org> · 6db60e7b
      rniwa@webkit.org authored
              Unreviewed Chromium build fix attempt for r76378.
      
              * src/WebScrollbarImpl.cpp:
              (WebKit::WebScrollbar::create):
              (WebKit::WebScrollbarImpl::WebScrollbarImpl):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76382 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6db60e7b
    • mjs@apple.com's avatar
      2011-01-21 Maciej Stachowiak <mjs@apple.com> · 5fa40b31
      mjs@apple.com authored
              Reviewed by Sam Weinig.
      
              Skip another test that is failing sporadically on the buildbots
              https://bugs.webkit.org/show_bug.cgi?id=52908
      
              * platform/mac-wk2/Skipped:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76381 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5fa40b31
    • crogers@google.com's avatar
      2011-01-21 Chris Rogers <crogers@google.com> · 40021d6f
      crogers@google.com authored
              Reviewed by Kenneth Russell.
      
              Add chromium bundled audio spatialization resources to WebAudio.grd
              https://bugs.webkit.org/show_bug.cgi?id=52651
      
              * WebKit.grd:
      2011-01-21  Chris Rogers  <crogers@google.com>
      
              Reviewed by Kenneth Russell.
      
              Add chromium bundled audio spatialization resources to WebAudio.grd
              https://bugs.webkit.org/show_bug.cgi?id=52651
      
              No new tests since audio API is not yet implemented.
      
              * WebCore.gyp/WebCore.gyp:
              * platform/audio/chromium/AudioBusChromium.cpp:
              (WebCore::AudioBus::loadPlatformResource):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76380 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      40021d6f
    • commit-queue@webkit.org's avatar
      2011-01-21 Xiyuan Xia <xiyuan@chromium.org> · a04bf81a
      commit-queue@webkit.org authored
              Reviewed by Tony Chang.
      
              Update chromium/linux baselines after drawing code moved into
              WebThemeEngine.
              https://bugs.webkit.org/show_bug.cgi?id=52826
      
              * platform/chromium-linux/css1/box_properties/acid_test-expected.checksum:
              * platform/chromium-linux/css1/box_properties/acid_test-expected.png:
              * platform/chromium-linux/css2.1/t09-c5526c-display-00-e-expected.checksum:
              * platform/chromium-linux/css2.1/t09-c5526c-display-00-e-expected.png:
              * platform/chromium-linux/fast/block/basic/011-expected.checksum:
              * platform/chromium-linux/fast/block/basic/011-expected.png:
              * platform/chromium-linux/fast/block/margin-collapse/103-expected.checksum:
              * platform/chromium-linux/fast/block/margin-collapse/103-expected.png:
              * platform/chromium-linux/fast/css/non-standard-checkbox-size-expected.checksum:
              * platform/chromium-linux/fast/css/non-standard-checkbox-size-expected.png:
              * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.checksum:
              * platform/chromium-linux/fast/dom/HTMLProgressElement/progress-element-expected.png:
              * platform/chromium-linux/fast/forms/basic-inputs-expected.checksum:
              * platform/chromium-linux/fast/forms/basic-inputs-expected.png:
              * platform/chromium-linux/fast/forms/basic-selects-expected.checksum:
              * platform/chromium-linux/fast/forms/basic-selects-expected.png:
              * platform/chromium-linux/fast/forms/box-shadow-override-expected.checksum:
              * platform/chromium-linux/fast/forms/box-shadow-override-expected.png:
              * platform/chromium-linux/fast/forms/checkbox-radio-onchange-expected.checksum:
              * platform/chromium-linux/fast/forms/checkbox-radio-onchange-expected.png:
              * platform/chromium-linux/fast/forms/file-input-disabled-expected.checksum:
              * platform/chromium-linux/fast/forms/file-input-disabled-expected.png:
              * platform/chromium-linux/fast/forms/form-element-geometry-expected.checksum:
              * platform/chromium-linux/fast/forms/form-element-geometry-expected.png:
              * platform/chromium-linux/fast/forms/formmove-expected.checksum:
              * platform/chromium-linux/fast/forms/formmove-expected.png:
              * platform/chromium-linux/fast/forms/formmove2-expected.checksum:
              * platform/chromium-linux/fast/forms/formmove2-expected.png:
              * platform/chromium-linux/fast/forms/indeterminate-expected.checksum:
              * platform/chromium-linux/fast/forms/indeterminate-expected.png:
              * platform/chromium-linux/fast/forms/input-appearance-height-expected.checksum:
              * platform/chromium-linux/fast/forms/input-appearance-height-expected.png:
              * platform/chromium-linux/fast/forms/input-value-expected.checksum:
              * platform/chromium-linux/fast/forms/input-value-expected.png:
              * platform/chromium-linux/fast/forms/menulist-restrict-line-height-expected.checksum:
              * platform/chromium-linux/fast/forms/menulist-restrict-line-height-expected.png:
              * platform/chromium-linux/fast/forms/menulist-style-color-expected.checksum:
              * platform/chromium-linux/fast/forms/menulist-style-color-expected.png:
              * platform/chromium-linux/fast/forms/placeholder-position-expected.checksum:
              * platform/chromium-linux/fast/forms/placeholder-position-expected.png: Added property svn:mime-type.
              * platform/chromium-linux/fast/forms/radio-attr-order-expected.checksum:
              * platform/chromium-linux/fast/forms/radio-attr-order-expected.png:
              * platform/chromium-linux/fast/forms/radio-nested-labels-expected.checksum:
              * platform/chromium-linux/fast/forms/radio-nested-labels-expected.png:
              * platform/chromium-linux/fast/forms/radio_checked-expected.checksum:
              * platform/chromium-linux/fast/forms/radio_checked-expected.png:
              * platform/chromium-linux/fast/forms/radio_checked_dynamic-expected.checksum:
              * platform/chromium-linux/fast/forms/radio_checked_dynamic-expected.png:
              * platform/chromium-linux/fast/forms/select-baseline-expected.checksum:
              * platform/chromium-linux/fast/forms/select-baseline-expected.png:
              * platform/chromium-linux/fast/inline/positionedLifetime-expected.checksum:
              * platform/chromium-linux/fast/inline/positionedLifetime-expected.png:
              * platform/chromium-linux/fast/parser/bad-xml-slash-expected.checksum:
              * platform/chromium-linux/fast/parser/bad-xml-slash-expected.png:
              * platform/chromium-linux/fast/replaced/replaced-breaking-expected.checksum:
              * platform/chromium-linux/fast/replaced/replaced-breaking-expected.png:
              * platform/chromium-linux/fast/replaced/width100percent-checkbox-expected.checksum:
              * platform/chromium-linux/fast/replaced/width100percent-checkbox-expected.png:
              * platform/chromium-linux/fast/text/textIteratorNilRenderer-expected.checksum:
              * platform/chromium-linux/fast/text/textIteratorNilRenderer-expected.png:
              * platform/chromium-linux/fast/text/whitespace/normal-after-nowrap-breaking-expected.checksum:
              * platform/chromium-linux/fast/text/whitespace/normal-after-nowrap-breaking-expected.png:
              * platform/chromium-linux/tables/mozilla/bugs/bug1318-expected.checksum:
              * platform/chromium-linux/tables/mozilla/bugs/bug1318-expected.png:
              * platform/chromium-linux/tables/mozilla/bugs/bug4527-expected.checksum:
              * platform/chromium-linux/tables/mozilla/bugs/bug4527-expected.png: Added property svn:mime-type.
              * platform/chromium-linux/tables/mozilla_expected_failures/core/captions1-expected.checksum:
              * platform/chromium-linux/tables/mozilla_expected_failures/core/captions1-expected.png:
              * platform/chromium-linux/tables/mozilla_expected_failures/core/captions2-expected.checksum:
              * platform/chromium-linux/tables/mozilla_expected_failures/core/captions2-expected.png:
      2011-01-21  Xiyuan Xia  <xiyuan@chromium.org>
      
              Reviewed by Tony Chang.
      
              Use WebThemeEngine for relevant RenderTheme parts for chromium/linux.
              https://bugs.webkit.org/show_bug.cgi?id=52826
      
              * platform/chromium/ChromiumBridge.h:
              * rendering/RenderThemeChromiumLinux.cpp:
              (WebCore::getWebThemeState):
              (WebCore::RenderThemeChromiumLinux::adjustSliderThumbSize):
              (WebCore::RenderThemeChromiumLinux::paintCheckbox):
              (WebCore::RenderThemeChromiumLinux::setCheckboxSize):
              (WebCore::RenderThemeChromiumLinux::paintRadio):
              (WebCore::RenderThemeChromiumLinux::setRadioSize):
              (WebCore::RenderThemeChromiumLinux::paintButton):
              (WebCore::RenderThemeChromiumLinux::paintTextField):
              (WebCore::RenderThemeChromiumLinux::paintMenuList):
              (WebCore::RenderThemeChromiumLinux::paintSliderTrack):
              (WebCore::RenderThemeChromiumLinux::paintSliderThumb):
              (WebCore::RenderThemeChromiumLinux::adjustInnerSpinButtonStyle):
              (WebCore::RenderThemeChromiumLinux::paintInnerSpinButton):
              (WebCore::RenderThemeChromiumLinux::paintProgressBar):
              * rendering/RenderThemeChromiumLinux.h:
              * rendering/RenderThemeChromiumSkia.cpp:
              (WebCore::RenderThemeChromiumSkia::setCheckboxSize):
              (WebCore::RenderThemeChromiumSkia::setSizeIfAuto):
              (WebCore::RenderThemeChromiumSkia::indeterminateProgressValueRectFor):
              * rendering/RenderThemeChromiumSkia.h:
      2011-01-21  Xiyuan Xia  <xiyuan@chromium.org>
      
              Reviewed by Tony Chang.
      
              Use WebThemeEngine for relevant RenderTheme parts for chromium/linux.
              https://bugs.webkit.org/show_bug.cgi?id=52826
      
              * WebKit.gyp:
              * src/ChromiumBridge.cpp:
              (WebCore::WebThemePart):
              (WebCore::GetWebThemeExtraParams):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76379 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a04bf81a
    • weinig@apple.com's avatar
      Part 2 of "Cleanup Scrollbar/ScrollbarClient relationship" · d7d77c3e
      weinig@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=52779
      
      Reviewed by Anders Carlsson.
      
      Rename ScrollbarClient -> ScrollableArea.
      
      Source/WebCore: 
      
      - Also replaces Scrollbar::setClient with Scrollbar::disconnectFromScrollableArea
        since that was its only use case.
      
      * CMakeLists.txt:
      * GNUmakefile.am:
      * WebCore.gypi:
      * WebCore.pro:
      * WebCore.vcproj/WebCore.vcproj:
      * WebCore.xcodeproj/project.pbxproj:
      * accessibility/AccessibilityScrollbar.cpp:
      (WebCore::AccessibilityScrollbar::setValue):
      * css/CSSStyleSelector.cpp:
      (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
      * page/FrameView.h:
      * platform/PopupMenuClient.h:
      * platform/ScrollAnimator.cpp:
      (WebCore::ScrollAnimator::create):
      (WebCore::ScrollAnimator::ScrollAnimator):
      (WebCore::ScrollAnimator::scroll):
      (WebCore::ScrollAnimator::notityPositionChanged):
      * platform/ScrollAnimator.h:
      * platform/ScrollAnimatorWin.cpp:
      (WebCore::ScrollAnimator::create):
      (WebCore::ScrollAnimatorWin::ScrollAnimatorWin):
      (WebCore::ScrollAnimatorWin::scroll):
      * platform/ScrollAnimatorWin.h:
      * platform/ScrollView.cpp:
      (WebCore::ScrollView::scroll):
      (WebCore::ScrollView::updateScrollbars):
      (WebCore::ScrollView::wheelEvent):
      * platform/ScrollView.h:
      * platform/ScrollableArea.cpp: Copied from WebCore/platform/ScrollbarClient.cpp.
      (WebCore::ScrollableArea::ScrollableArea):
      (WebCore::ScrollableArea::~ScrollableArea):
      (WebCore::ScrollableArea::scroll):
      (WebCore::ScrollableArea::scrollToOffsetWithoutAnimation):
      (WebCore::ScrollableArea::scrollToXOffsetWithoutAnimation):
      (WebCore::ScrollableArea::scrollToYOffsetWithoutAnimation):
      (WebCore::ScrollableArea::setScrollOffsetFromAnimation):
      * platform/ScrollableArea.h: Copied from WebCore/platform/ScrollbarClient.h.
      * platform/Scrollbar.cpp:
      (WebCore::Scrollbar::createNativeScrollbar):
      (WebCore::Scrollbar::Scrollbar):
      (WebCore::Scrollbar::offsetDidChange):
      (WebCore::Scrollbar::autoscrollPressedPart):
      (WebCore::Scrollbar::moveThumb):
      (WebCore::Scrollbar::mouseMoved):
      (WebCore::Scrollbar::isWindowActive):
      (WebCore::Scrollbar::invalidateRect):
      (WebCore::Scrollbar::convertToContainingView):
      (WebCore::Scrollbar::convertFromContainingView):
      * platform/Scrollbar.h:
      (WebCore::Scrollbar::disconnectFromScrollableArea):
      (WebCore::Scrollbar::scrollableArea):
      * platform/ScrollbarClient.cpp: Removed.
      * platform/ScrollbarClient.h: Removed.
      * platform/ScrollbarThemeComposite.cpp:
      * platform/chromium/FramelessScrollView.h:
      * platform/chromium/ScrollbarThemeChromium.cpp:
      (WebCore::ScrollbarThemeChromium::paintTickmarks):
      * platform/efl/ScrollbarEfl.cpp:
      (Scrollbar::createNativeScrollbar):
      (ScrollbarEfl::ScrollbarEfl):
      (scrollbarEflEdjeMessage):
      * platform/efl/ScrollbarEfl.h:
      * platform/gtk/MainFrameScrollbarGtk.cpp:
      (MainFrameScrollbarGtk::create):
      (MainFrameScrollbarGtk::MainFrameScrollbarGtk):
      (MainFrameScrollbarGtk::gtkValueChanged):
      * platform/gtk/MainFrameScrollbarGtk.h:
      * platform/mac/ScrollAnimatorMac.h:
      * platform/mac/ScrollAnimatorMac.mm:
      (WebCore::ScrollAnimator::create):
      (WebCore::ScrollAnimatorMac::ScrollAnimatorMac):
      (WebCore::ScrollAnimatorMac::scroll):
      * platform/mac/ScrollbarThemeMac.mm:
      (WebCore::ScrollbarThemeMac::paint):
      * platform/qt/ScrollbarQt.cpp:
      (WebCore::Scrollbar::contextMenu):
      * platform/win/PopupMenuWin.cpp:
      (WebCore::PopupMenuWin::scrollToRevealSelection):
      (WebCore::PopupMenuWin::wndProc):
      * platform/win/PopupMenuWin.h:
      * platform/win/ScrollbarThemeSafari.cpp:
      (WebCore::ScrollbarThemeSafari::paintTrackBackground):
      (WebCore::ScrollbarThemeSafari::paintButton):
      (WebCore::ScrollbarThemeSafari::paintThumb):
      * platform/wx/ScrollbarThemeWx.cpp:
      (WebCore::ScrollbarThemeWx::paint):
      * rendering/RenderDataGrid.h:
      * rendering/RenderLayer.cpp:
      (WebCore::RenderLayer::scrollToOffset):
      (WebCore::RenderLayer::destroyScrollbar):
      (WebCore::RenderLayer::scroll):
      * rendering/RenderLayer.h:
      * rendering/RenderListBox.cpp:
      (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
      (WebCore::RenderListBox::scroll):
      (WebCore::RenderListBox::logicalScroll):
      (WebCore::RenderListBox::setScrollTop):
      (WebCore::RenderListBox::destroyScrollbar):
      * rendering/RenderListBox.h:
      * rendering/RenderMenuList.cpp:
      (WebCore::RenderMenuList::createScrollbar):
      * rendering/RenderMenuList.h:
      * rendering/RenderScrollbar.cpp:
      (WebCore::RenderScrollbar::createCustomScrollbar):
      (WebCore::RenderScrollbar::RenderScrollbar):
      * rendering/RenderScrollbar.h:
      * rendering/RenderTextControlSingleLine.cpp:
      (WebCore::RenderTextControlSingleLine::createScrollbar):
      * rendering/RenderTextControlSingleLine.h:
      
      Source/WebKit/chromium: 
      
      * src/AutoFillPopupMenuClient.cpp:
      (WebKit::AutoFillPopupMenuClient::createScrollbar):
      * src/AutoFillPopupMenuClient.h:
      * src/WebScrollbarImpl.cpp:
      (WebKit::WebScrollbarImpl::WebScrollbarImpl):
      (WebKit::WebScrollbarImpl::scroll):
      (WebKit::WebScrollbarImpl::onMouseWheel):
      (WebKit::WebScrollbarImpl::onKeyDown):
      * src/WebScrollbarImpl.h:
      * tests/PopupMenuTest.cpp:
      (WebKit::TestPopupMenuClient::createScrollbar):
      
      Source/WebKit/qt: 
      
      * Api/qwebframe.cpp:
      (QWebFrame::setScrollBarValue):
      
      Source/WebKit/win: 
      
      * WebScrollBar.cpp:
      (WebScrollBar::scroll):
      * WebScrollBar.h:
      
      Source/WebKit2: 
      
      * UIProcess/win/WebPopupMenuProxyWin.cpp:
      (WebKit::WebPopupMenuProxyWin::onMouseWheel):
      (WebKit::WebPopupMenuProxyWin::scrollToRevealSelection):
      * UIProcess/win/WebPopupMenuProxyWin.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76378 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d7d77c3e
    • commit-queue@webkit.org's avatar
      2011-01-21 Sailesh Agrawal <sail@chromium.org> · ff98e4a3
      commit-queue@webkit.org authored
              Reviewed by Ryosuke Niwa.
      
              [chromium] Notify WebFrameClient when spellcheck state changes
              https://bugs.webkit.org/show_bug.cgi?id=52680
      
              * public/WebFrameClient.h:
              (WebKit::WebFrameClient::continuousSpellCheckingEnabledStateChanged):
              * src/EditorClientImpl.cpp:
              (WebKit::EditorClientImpl::toggleContinuousSpellChecking):
              * src/WebFrameImpl.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76377 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ff98e4a3
    • commit-queue@webkit.org's avatar
      2011-01-21 Peter Gal <galpeter@inf.u-szeged.hu> · 8ca47cd9
      commit-queue@webkit.org authored
              Reviewed by Darin Adler.
      
              REGRESSION(r76177): All JavaScriptCore tests fail on ARM
              https://bugs.webkit.org/show_bug.cgi?id=52814
      
              Get the approximateByteSize value before releasing the OwnPtr.
      
              * parser/JSParser.cpp:
              (JSC::JSParser::parseFunctionInfo):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76376 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8ca47cd9
    • darin@apple.com's avatar
      Fix Leopard build. · 97d36822
      darin@apple.com authored
      * rendering/mathml/RenderMathMLFraction.cpp:
      (WebCore::RenderMathMLFraction::layout): Use ceilf instead of ceil.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76375 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      97d36822
    • simon.fraser@apple.com's avatar
      2011-01-21 Simon Fraser <simon.fraser@apple.com> · a9ad1f49
      simon.fraser@apple.com authored
              Reviewed by Sam Weinig.
      
              GraphicsLayer should be non-copyable
              https://bugs.webkit.org/show_bug.cgi?id=52909
      
              Use WTF_MAKE_NONCOPYABLE on GraphicsLayer, and WTF_MAKE_FAST_ALLOCATED
              on that and KeyframeValueList.
      
              * platform/graphics/GraphicsLayer.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76374 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a9ad1f49
    • antonm@chromium.org's avatar
      2011-01-21 Anton Muhin <antonm@chromium.org> · 3b2e204b
      antonm@chromium.org authored
              Reviewed by Nate Chapin.
      
              [v8] Properly deal with the case when conversion to string throws an exception for HTMLCollection accessors
              https://bugs.webkit.org/show_bug.cgi?id=52901
      
              * fast/dom/htmlcollection-conversion-throws-exception-expected.txt: Added.
              * fast/dom/htmlcollection-conversion-throws-exception.html: Added.
      2011-01-21  Anton Muhin  <antonm@chromium.org>
      
              Reviewed by Nate Chapin.
      
              [v8] Properly deal with the case when conversion to string throws an exception for HTMLCollection accessors
              https://bugs.webkit.org/show_bug.cgi?id=52901
      
              Test: fast/dom/htmlcollection-conversion-throws-exception.html
      
              * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
              (WebCore::getItem):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76373 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3b2e204b
    • aroben@apple.com's avatar
      Separate flushing layer changes from rendering in CACFLayerTreeHost · 77cc9c57
      aroben@apple.com authored
      Old model:
        1) A change is made to a GraphicsLayer.
        2) CACFLayerTreeHost::flushPendingGraphicsLayerChangesSoon is called, which schedules the
           render timer.
        3) The timer fires, which calls through to CACFLayerTreeHost::render, which performs the
           flush and then renders.
      
      New model:
        1) A change is made to a GraphicsLayer.
        2) CACFLayerTreeHost::flushPendingGraphicsLayerChangesSoon is called, which tells the new
           LayerChangesFlusher singleton that this host has changes that need to be flushed.
        3) LayerChangesFlusher sets up a Windows hook that will get called on the next iteration
           of the message loop.
        4) LayerChangesFlusher's hook is called, which calls through to
           CACFLayerTreeHost::flushPendingLayerChangesNow.
        5) CACFLayerTreeHost::flushPendingLayerChangesNow schedules the render timer so the changes
           that were just flushed to the context will be rendered.
      
      When a change is made to a PlatformCALayer that doesn't have a corresponding GraphicsLayer
      (e.g., for rendering <video>), CACFLayerTreeHost::layerTreeDidChange takes care of
      scheduling the flush.
      
      This change has three advantages:
        1) Whenever we flush layer changes, we first update layout. This can cause the page to
           leave compositing mode, which in turn can cause all references to the CACFLayerTreeHost
           to be dropped. By separating flushing (and thus updating layout) from rendering, we no
           longer have to worry about this happen during rendering.
        2) The new model is much more similar to how things work on the Mac, so will hopefully
           reduce the number of platform-specific bugs.
        3) CACFLayerTreeHost::shouldRender, which was used to make sure we didn't render while a
           layout was pending, is no longer needed. It actually hasn't been needed since at least
           r75987, but removing it before now would have resulted in a crash whenever a page came
           out of compositing mode due to (1).
      
      Fixes <http://webkit.org/b/52852> Flushing layer changes and rendering are intertwined in
      CACFLayerTreeHost, but shouldn't be
      
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      * WebCore.vcproj/WebCore.vcproj: Added LayerChangesFlusher.
      
      * platform/graphics/ca/win/CACFLayerTreeHost.cpp: Added new #include, sorted existing
       #includes.
      (WebCore::CACFLayerTreeHost::CACFLayerTreeHost): Initialize new member.
      (WebCore::CACFLayerTreeHost::layerTreeDidChange): If we aren't already flushing changes,
      schedule a flush. Removed the call to renderSoon(), which now happens when the flush is
      finished.
      (WebCore::CACFLayerTreeHost::destroyRenderer): Cancel any pending flush we had scheduled. Also
      fixed a bug where we'd fail to clear the context's layer.
      (WebCore::CACFLayerTreeHost::render): Removed code to ask the client if we should render, which
      is no longer needed. Moved code to flush layer changes from here to
      flushPendingLayerChangesNow, which is called via the above-described mechanism.
      (WebCore::CACFLayerTreeHost::flushPendingGraphicsLayerChangesSoon): Schedule a flush. Removed
      code to schedule a render, which now happens after we've flushed.
      (WebCore::CACFLayerTreeHost::flushPendingLayerChangesNow): Added. Some of this code came from
      render(). First we flush GraphicsLayer changes from GraphicsLayers to their underlying
      PlatformCALayers, then we flush changes from PlatformCALayers to the context, then we
      schedule a render so that the changes will be rendered to the screen.
      
      * platform/graphics/ca/win/CACFLayerTreeHost.h: Removed
      CACFLayerTreeHostClient::shouldRender. Added flushPendingLayerChangesNow and
      m_isFlushingLayerChanges.
      
      * platform/graphics/ca/win/LayerChangesFlusher.cpp: Added.
      (WebCore::LayerChangesFlusher::shared):
      (WebCore::LayerChangesFlusher::LayerChangesFlusher):
      (WebCore::LayerChangesFlusher::flushPendingLayerChangesSoon):
      (WebCore::LayerChangesFlusher::cancelPendingFlush):
      (WebCore::LayerChangesFlusher::hookCallback):
      (WebCore::LayerChangesFlusher::hookFired):
      (WebCore::LayerChangesFlusher::setHook):
      (WebCore::LayerChangesFlusher::removeHook):
      
      * platform/graphics/ca/win/LayerChangesFlusher.cpp: Added.
      (WebCore::LayerChangesFlusher::shared): Returns the singleton.
      (WebCore::LayerChangesFlusher::LayerChangesFlusher): Initialize our members.
      (WebCore::LayerChangesFlusher::flushPendingLayerChangesSoon): Add the host to the set of
      hosts with changes that need to be flushed, and set up our hook if we haven't already.
      (WebCore::LayerChangesFlusher::cancelPendingFlush): Remove the host from the set of hosts
      with changes that need to be flushed. If we have no more such hosts, remove our hook, unless
      we're currently in the process of calling out to our hosts, in which case we'll take care of
      the hook once we're done calling out.
      (WebCore::LayerChangesFlusher::hookCallback): This is the function that Windows calls when
      our hook fires. Just calls through to hookFired on the singleton.
      (WebCore::LayerChangesFlusher::hookFired): Tell all the hosts with changes that needed to be
      flushed that it's time to flush. If no hosts re-added themselves to our set during this
      process, remove our hook.
      (WebCore::LayerChangesFlusher::setHook): Calls through to ::SetWindowsHookExW.
      (WebCore::LayerChangesFlusher::removeHook): Calls through to ::UnhookWindowsHookEx.
      
      * platform/graphics/ca/win/LayerChangesFlusher.h: Added.
      
      Source/WebKit/win:
      
      Update for CACFLayerTreeHost changes
      
      * WebView.cpp:
      (WebView::paint): Changed to flush layer changes via CACFLayerTreeHost, which will call back
      to our own flushing function if needed.
      
      * WebView.h: Removed shouldRender, which is no longer used or needed.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76372 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      77cc9c57
    • simon.fraser@apple.com's avatar
      2011-01-21 Simon Fraser <simon.fraser@apple.com> · 9574a22e
      simon.fraser@apple.com authored
              Reviewed by Sam Weinig.
      
              Report the sized used by canvases and types arrays
              https://bugs.webkit.org/show_bug.cgi?id=52856
      
              Report the memory cost associated with canvas elements,
              and typed arrays to JavaScript as extraCost, so that it
              can figure this into its GC behavior.
      
              * bindings/js/JSArrayBufferViewHelper.h:
              (WebCore::toJSArrayBufferView): New templatized function, similar
              to getDOMObjectWrapper() but calls reportExtraMemoryCost() with
              the byteLength of the array.
      
              * bindings/js/JSFloat32ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
              * bindings/js/JSInt16ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
              * bindings/js/JSInt32ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
              * bindings/js/JSInt8ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
              * bindings/js/JSUint16ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
              * bindings/js/JSUint32ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
              * bindings/js/JSUint8ArrayCustom.cpp:
              (WebCore::toJS): Use toJSArrayBufferView.
      
              * html/HTMLCanvasElement.cpp:
              (WebCore::HTMLCanvasElement::createImageBuffer): Call heap.reportExtraMemoryCost()
              with the size of the canvas backing store.
      
              * html/canvas/TypedArrayBase.h:
              (WebCore::TypedArrayBase::byteLength): byteLength needs to
              be public.
      
              * platform/graphics/ImageBuffer.h: Add dataSize() method.
      
              * platform/graphics/cairo/ImageBufferCairo.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
              * platform/graphics/cg/ImageBufferCG.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
              * platform/graphics/haiku/ImageBufferHaiku.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
              * platform/graphics/qt/ImageBufferQt.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
              * platform/graphics/skia/ImageBufferSkia.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
              * platform/graphics/wince/ImageBufferWinCE.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
              * platform/graphics/wx/ImageBufferWx.cpp:
              (WebCore::ImageBuffer::dataSize): Implement dataSize().
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76371 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      9574a22e
    • aroben@apple.com's avatar
      Rename WKCACFLayerRenderer[Client] to CACFLayerTreeHost[Client] · d0defa32
      aroben@apple.com authored
      Also renamed a few functions and data members to match.
      
      Fixes <http://webkit.org/b/52898> WKCACFLayerRenderer sounds like a render object, but isn't
      
      Reviewed by Simon Fraser.
      
      Source/WebCore:
      
      * WebCore.vcproj/WebCore.vcproj: Updated files' names and paths.
      
      * WebCore.vcproj/WebCoreQuartzCore.vsprops: Added platform/graphics/ca/win to the include
      path.
      
      * WebCore.vcproj/copyForwardingHeaders.cmd: Copy headers from platform/graphics/ca/win, too.
      
      * platform/graphics/ca/win/CACFLayerTreeHost.cpp: Renamed from Source/WebCore/platform/graphics/win/WKCACFLayerRenderer.cpp.
      * platform/graphics/ca/win/CACFLayerTreeHost.h: Renamed from Source/WebCore/platform/graphics/win/WKCACFLayerRenderer.h.
      
      * platform/graphics/ca/win/PlatformCALayerWin.cpp:
      * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.cpp:
      * platform/graphics/win/MediaPlayerPrivateFullscreenWindow.h:
      Updated for renames.
      
      Source/WebKit/win:
      
      Update for WKCACFLayerRenderer -> CACFLayerTreeHost rename
      
      Also renamed WebView::m_layerRenderer to WebView::m_layerTreeHost to match.
      
      * WebPreferences.cpp:
      * WebView.cpp:
      (WebView::setAcceleratedCompositing): Also made sure to remove our HWND from the layer tree
      host before we get rid of the layer tree host itself.
      * WebView.h:
      
      Source/WebKit2:
      
      Update for WKCACFLayerRenderer -> CACFLayerView rename
      
      * WebProcess/WebPage/win/LayerBackedDrawingAreaWin.cpp: Just removed all the unnecessary
       #includes.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76370 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d0defa32
    • xan@webkit.org's avatar
      2011-01-21 Xan Lopez <xlopez@igalia.com> · e08a35f7
      xan@webkit.org authored
              Reviewed by Martin Robinson.
      
              Remove unnecessary <stdio.h> include
              https://bugs.webkit.org/show_bug.cgi?id=52884
      
              * jit/JIT.cpp: remove unnecessary include.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76369 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e08a35f7
    • commit-queue@webkit.org's avatar
      2011-01-21 Patrick Gansterer <paroga@paroga.com> · 6e0c4d42
      commit-queue@webkit.org authored
              Original patch from François Sausset  <sausset@gmail.com>
      
              Reviewed by Darin Adler.
      
              Code cleaning in rendering/mathml/RenderMathMLFraction.cpp
              https://bugs.webkit.org/show_bug.cgi?id=52201
      
              Replace unneeded doubles by floats and remove unneeded casts.
      
              * rendering/mathml/RenderMathMLFraction.cpp:
              (WebCore::RenderMathMLFraction::paint):
              * rendering/mathml/RenderMathMLFraction.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76368 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6e0c4d42
    • levin@chromium.org's avatar
      Proposal: Require cross-organizational seconds for reviewer nominations · 306fbc54
      levin@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=47597
      
      Reviewed by Darin Adler.
      
      This changes the committer/reviewer policy to require an additional
      reviewer supporting a reviewer nomination to work for a different
      company and different project affiliation from the nominee.
      
      This means reviewer nominations would require four supporting reviewers,
      one of which knows the reviewer through the community (irc, email, bugs)
      ensuring that the nominee has the open-source collaboration skills
      we so highly value here in WebKit.
      
      * coding/commit-review-policy.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76367 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      306fbc54
    • dglazkov@chromium.org's avatar
      2011-01-21 Dimitri Glazkov <dglazkov@chromium.org> · b06e5712
      dglazkov@chromium.org authored
              Reviewed by Darin Adler.
      
              REGRESSION(r73618): Clicking on a search input causes a crash.
              https://bugs.webkit.org/show_bug.cgi?id=52905
      
              * fast/dom/search-shadow-host-crash-expected.txt: Added.
              * fast/dom/search-shadow-host-crash.html: Added.
      2011-01-21  Dimitri Glazkov  <dglazkov@chromium.org>
      
              Reviewed by Darin Adler.
      
              REGRESSION(r73618): Clicking on a search input causes a crash.
              https://bugs.webkit.org/show_bug.cgi?id=52905
      
              The problem is caused by TextControlInnerElement being used both as
              shadow root and an element in a shadow subtree. The code assumed it is
              only used as a shadow root.
      
              Since this code is all just workaround for in-progress conversion to
              new shadow DOM, I am just adding a check. This code will disappear
              completely once bug 52788 is fixed.
      
              Test: fast/dom/search-shadow-host-crash.html
      
              * dom/Node.cpp:
              (WebCore::Node::setShadowHost): Added an ASSERT for early detection
                  of attempting to stomp on the parentNode.
              * rendering/TextControlInnerElements.cpp:
              (WebCore::TextControlInnerElement::detach): Added a check to only
                  clear shadow host if we have one.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76366 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b06e5712
    • dglazkov@chromium.org's avatar
      2011-01-21 Dimitri Glazkov <dglazkov@chromium.org> · 4bfecc51
      dglazkov@chromium.org authored
              Updated slider expectations after r76147.
      
              * platform/chromium/test_expectations.txt: Removed test that will start passing.
              * platform/chromium-win/fast/forms/slider-mouse-events-expected.txt: Updated expectation.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76365 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      4bfecc51
    • xji@chromium.org's avatar
      2011-01-21 Xiaomei Ji <xji@chromium.org> · 28bc4e4e
      xji@chromium.org authored
              Unreviewed.
      
              Rebaseline for leopard after r76319.
      
              * platform/mac-leopard/fast/dom/52776-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@76364 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      28bc4e4e