1. 03 Oct, 2008 31 commits
    • simon.fraser@apple.com's avatar
      2008-10-03 Simon Fraser <simon.fraser@apple.com> · ed87cd2d
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              Make setStyle() take a const RenderStyle, to ensure that an
              earlier RenderStyle::diff() remains valid.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37252 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ed87cd2d
    • hyatt@apple.com's avatar
      2008-10-03 David Hyatt <hyatt@apple.com> · 938a55f4
      hyatt@apple.com authored
              Preparation for enabling scrollbars to hit test properly inside transforms.  Clean up the scrollbar
              event handlers to no longer be virtual.  Don't pass a mouse event where none is needed.  Add a new
              method on Scrollbars called transformEvent that will apply all of the transforms to make a new event
              that will work properly for hit testing.  This patch just stubs out that method to return the same
              event untransformed.
      
              Reviewed by Darin Adler
      
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleMouseDoubleClickEvent):
              (WebCore::EventHandler::handleMouseMoveEvent):
              (WebCore::EventHandler::handleMouseReleaseEvent):
              (WebCore::EventHandler::passMousePressEventToScrollbar):
              * page/gtk/EventHandlerGtk.cpp:
              * page/mac/EventHandlerMac.mm:
              * page/qt/EventHandlerQt.cpp:
              * page/win/EventHandlerWin.cpp:
              * page/wx/EventHandlerWx.cpp:
              * platform/Scrollbar.cpp:
              (WebCore::Scrollbar::mouseMoved):
              (WebCore::Scrollbar::mouseExited):
              (WebCore::Scrollbar::mouseUp):
              (WebCore::Scrollbar::mouseDown):
              (WebCore::Scrollbar::transformEvent):
              * platform/Scrollbar.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37251 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      938a55f4
    • simon.fraser@apple.com's avatar
      2008-10-03 Simon Fraser <simon.fraser@apple.com> · 2473355e
      simon.fraser@apple.com authored
              Reviewed by Dave Hyat
      
              Clean up code that changes the RenderStyle passed in to
              table renderer setStyle() methods.
      
              https://bugs.webkit.org/show_bug.cgi?id=21287
      
              * fast/table/floating-th.html: Added.
              * fast/table/table-display-types-strict.html: Added.
              * fast/table/table-display-types.html: Added.
              * platform/mac/fast/table/floating-th-expected.txt: Added.
              * platform/mac/fast/table/table-display-types-expected.txt: Added.
              * platform/mac/fast/table/table-display-types-strict-expected.txt: Added.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37250 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2473355e
    • hyatt@apple.com's avatar
      WebCore: · 1ae3446d
      hyatt@apple.com authored
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
              https://bugs.webkit.org/show_bug.cgi?id=21340
              
              Remove "containingWindow()/setContainingWindow()" from Widget.  HostWindow covers this now.
          
              Reviewed by Dan Bernstein & Darin Adler
              
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::addChild):
              * platform/Widget.cpp:
              (WebCore::Widget::init):
              * platform/Widget.h:
              * platform/mac/WidgetMac.mm:
              * platform/win/PopupMenuWin.cpp:
              (WebCore::PopupMenu::show):
      
      WebKit/gtk:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
              https://bugs.webkit.org/show_bug.cgi?id=21340
              
              Remove "containingWindow()/setContainingWindow()" from Widget.  HostWindow covers this now.
      
              Reviewed by Dan Bernstein & Darin Adler
              
              * WebCoreSupport/FrameLoaderClientGtk.cpp:
              (WebKit::FrameLoaderClient::transitionToCommittedForNewPage):
      
      WebKit/win:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
              https://bugs.webkit.org/show_bug.cgi?id=21340
              
              Remove "containingWindow()/setContainingWindow()" from Widget.  HostWindow covers this now.
              
              Reviewed by Dan Bernstein & Darin Adler
      
              * WebCoreSupport/WebFrameLoaderClient.cpp:
              (WebFrameLoaderClient::transitionToCommittedForNewPage):
              * WebScrollBar.cpp:
              (WebScrollBar::WebScrollBar):
              (WebScrollBar::init):
              (WebScrollBar::invalidateScrollbarRect):
              * WebScrollBar.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37249 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1ae3446d
    • adele@apple.com's avatar
      2008-10-03 Adele Peterson <adele@apple.com> · e31aa918
      adele@apple.com authored
              Reviewed by Sam Weinig.
      
              * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily):
              Return early if settings is nil.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37248 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      e31aa918
    • rwlbuis@webkit.org's avatar
      Reviewed by Darin. · eba9301a
      rwlbuis@webkit.org authored
              https://bugs.webkit.org/show_bug.cgi?id=20134
              REGRESSION (2.0.4-3.0.4): No default value set for <input type=range> with an even difference of (max - min)
      
              Make sure the input element gets the right default value when no value is set.
      
              Test: fast/forms/range-default-value.html
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37247 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      eba9301a
    • hyatt@apple.com's avatar
      2008-10-03 David Hyatt <hyatt@apple.com> · 15a4e35c
      hyatt@apple.com authored
              Fix scroll method on Qt.  The delta was supposed to use .width()/.height() and not .x()/.y().
      
              Fix the QtPluginWidget to do an invalidate properly.
      
              Reviewed by ggaren
      
              * WebCoreSupport/ChromeClientQt.cpp:
              (WebCore::ChromeClientQt::scroll):
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37246 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      15a4e35c
    • hyatt@apple.com's avatar
      Remove commented out method. · d8551e0e
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37245 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d8551e0e
    • hyatt@apple.com's avatar
      2008-10-03 David Hyatt <hyatt@apple.com> · 8de3eb77
      hyatt@apple.com authored
              Instead of a cross-platform init/destroy that forces every ScrollView platform to have a constructor/
              destructor that calls them, switch to having a cross-platform constructor/destructor that calls
              platform-specific init/destroy methods.
      
              With this change, ScrollViewWin.cpp can be removed from the build (yay!).
      
              Reviewed by Darin Adler
      
              * WebCore.vcproj/WebCore.vcproj:
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::ScrollView):
              (WebCore::ScrollView::~ScrollView):
              (WebCore::ScrollView::platformInit):
              (WebCore::ScrollView::platformDestroy):
              (WebCore::ScrollView::platformAddChild):
              (WebCore::ScrollView::platformRemoveChild):
              * platform/ScrollView.h:
              * platform/gtk/ScrollViewGtk.cpp:
              (WebCore::ScrollView::platformInit):
              (WebCore::ScrollView::platformDestroy):
              * platform/mac/ScrollViewMac.mm:
              * platform/qt/ScrollViewQt.cpp:
              (WebCore::ScrollView::platformInit):
              (WebCore::ScrollView::platformDestroy):
              * platform/win/ScrollViewWin.cpp: Removed.
              * platform/wx/ScrollViewWx.cpp:
              (WebCore::ScrollView::platformInit):
              (WebCore::ScrollView::platformDestroy):
              (WebCore::ScrollView::setPlatformWidget):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37244 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8de3eb77
    • adele@apple.com's avatar
      2008-10-03 Adele Peterson <adele@apple.com> · b1dd0a65
      adele@apple.com authored
              Reviewed by Dan Bernstein.
      
              Fix for <rdar://problem/6012018> 
              https://bugs.webkit.org/show_bug.cgi?id=21335
              CrashTracer: [USER] 4959 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 8
      
              * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily): Return early if the frame is nil.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37243 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b1dd0a65
    • darin@apple.com's avatar
      2008-10-03 Darin Adler <darin@apple.com> · d4865d5c
      darin@apple.com authored
              Rubber stamped by Alexey Proskuryakov.
      
              * kjs/Shell.cpp: (main): Don't delete JSGlobalData. Later, we need to change
              this tool to use public JavaScriptCore API instead.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37242 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4865d5c
    • vestbo@webkit.org's avatar
      2008-10-03 Ariya Hidayat <ariya.hidayat@trolltech.com> · 15351ad1
      vestbo@webkit.org authored
              Build fix. Remove addToDirtyRegion from the header file.
      
              * WebCoreSupport/ChromeClientQt.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37241 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      15351ad1
    • darin@apple.com's avatar
      2008-10-03 Darin Adler <darin@apple.com> · 8f2349d1
      darin@apple.com authored
              Suggested by Alexey Proskuryakov.
      
              * kjs/JSGlobalData.cpp:
              (JSC::JSGlobalData::~JSGlobalData): Remove call to heap.destroy() because
              it's too late to ref the JSGlobalData object once it's already being
              destroyed. In practice this is not a problem because WebCore's JSGlobalData
              is never destroyed and JSGlobalContextRelease takes care of calling
              heap.destroy() in advance.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37240 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8f2349d1
    • hausmann@webkit.org's avatar
      2008-10-03 Ariya Hidayat <ariya.hidayat@trolltech.com> · 2497ae81
      hausmann@webkit.org authored
              Build fix.
      
              * platform/qt/WidgetQt.cpp:
              (WebCore::Widget::invalidateRect):
      
      2008-10-03  Ariya Hidayat  <ariya.hidayat@trolltech.com>
      
              Build fix.
      
              * WebCoreSupport/ChromeClientQt.cpp:
              (WebCore::ChromeClientQt::scroll):
              * WebCoreSupport/FrameLoaderClientQt.cpp:
              (WebCore::):
              (WebCore::FrameLoaderClientQt::createPlugin):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37239 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2497ae81
    • alp@webkit.org's avatar
      2008-10-03 Alp Toker <alp@nuanti.com> · abc5b71f
      alp@webkit.org authored
              Remove some left-over GTK+ includes. No change in functionality.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37238 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      abc5b71f
    • alp@webkit.org's avatar
      2008-10-03 Alp Toker <alp@nuanti.com> · 7632b43b
      alp@webkit.org authored
              Build fix following r37234. Remove addToDirtyRegion from the header
              too.
      
              * WebCoreSupport/ChromeClientGtk.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37237 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7632b43b
    • alp@webkit.org's avatar
      2008-10-03 Alp Toker <alp@nuanti.com> · 2122a04d
      alp@webkit.org authored
              Build fix for trailing comment after #endif
      
              * dom/ElementRareData.h:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37236 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2122a04d
    • oliver@apple.com's avatar
      Replace SSE3 check with an SSE2 check, and implement SSE2 check on windows. · ecb29b2b
      oliver@apple.com authored
      Reviewed by Maciej Stachowiak
      
      5.6% win on SunSpider on windows.
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ecb29b2b
    • hyatt@apple.com's avatar
      WebCore: · d664bd5c
      hyatt@apple.com authored
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
              Remove addToDirtyRegion.
              
              Reviewed by Oliver Hunt
      
              * page/Chrome.cpp:
              * page/Chrome.h:
              * page/ChromeClient.h:
              * platform/ScrollView.h:
              * platform/gtk/ScrollViewGtk.cpp:
              * platform/qt/ScrollViewQt.cpp:
              * platform/win/ScrollViewWin.cpp:
      
      WebKit/gtk:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
               Remove addToDirtyRegion.
              
              Reviewed by Oliver Hunt
      
              * WebCoreSupport/ChromeClientGtk.cpp:
      
      WebKit/mac:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
              Remove addToDirtyRegion.
              
              Reviewed by Oliver Hunt
              
              * WebCoreSupport/WebChromeClient.h:
              * WebCoreSupport/WebChromeClient.mm:
      
      WebKit/qt:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
              Remove addToDirtyRegion.
              
              Reviewed by Oliver Hunt
      
              * WebCoreSupport/ChromeClientQt.cpp:
      
      WebKit/win:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
               Remove addToDirtyRegion.
              
               Reviewed by Oliver Hunt
      
              * WebCoreSupport/WebChromeClient.cpp:
      
      WebKit/wx:
      
      2008-10-03  David Hyatt  <hyatt@apple.com>
      
               Remove addToDirtyRegion.
              
               Reviewed by Oliver Hunt
      
              * WebKitSupport/ChromeClientWx.cpp:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37234 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d664bd5c
    • mitz@apple.com's avatar
      Reviewed by Maciej Stachowiak. · 810de666
      mitz@apple.com authored
              - fix a CachedResource leak introduced in r37176 
      
              Undo r37176 and instead allow pruneDeadResources() to be re-entered, but
              afterwards bail out of the outer pruneDeadResources().
      
              * loader/Cache.cpp:
              (WebCore::Cache::Cache):
              (WebCore::Cache::pruneDeadResources):
              (WebCore::Cache::remove):
              * loader/Cache.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37233 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      810de666
    • hyatt@apple.com's avatar
      2008-10-03 David Hyatt <hyatt@apple.com> · 38d8a8a7
      hyatt@apple.com authored
              https://bugs.webkit.org/show_bug.cgi?id=21330
      
              Fix Gtk adjustments so that they are properly checked again before creating horizontal/vertical
              scrollbars.
              
              Reviewed by Oliver Hunt
      
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::setHasHorizontalScrollbar):
              (WebCore::ScrollView::setHasVerticalScrollbar):
              (WebCore::ScrollView::platformHasHorizontalAdjustment):
              (WebCore::ScrollView::platformHasVerticalAdjustment):
              * platform/ScrollView.h:
              * platform/gtk/ScrollViewGtk.cpp:
              (WebCore::ScrollView::adjustmentChanged):
              (WebCore::ScrollView::ScrollView):
              (WebCore::ScrollView::~ScrollView):
              (WebCore::ScrollView::setGtkAdjustments):
              (WebCore::ScrollView::platformHandleHorizontalAdjustment):
              (WebCore::ScrollView::platformHandleVerticalAdjustment):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37232 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      38d8a8a7
    • jchaffraix@webkit.org's avatar
      2008-10-03 Julien Chaffraix <jchaffraix@webkit.org> · 8241c5e4
      jchaffraix@webkit.org authored
              Reviewed by Maciej Stachowiak.
      
              Bug 21106: .in format discussed changes
              https://bugs.webkit.org/show_bug.cgi?id=21106
      
              Change "upperCase" to "interfaceName" per-tag parameter as
              discussed on the mailing list. Removed the per-attribute version
              as it was not used.
      
              Also add the "Element" suffix to all interfaceName parameter to match
              the class name (and thus remove it from make_names.pl).
      
              * dom/make_names.pl:
              * html/HTMLTagNames.in:
              * svg/svgtags.in:
      
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8241c5e4
    • hyatt@apple.com's avatar
      Another speculative Gtk scrolling fix. · 98726294
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37230 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      98726294
    • hyatt@apple.com's avatar
      Another speculative Gtk scrolling fix. · 1c399a73
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37229 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1c399a73
    • hyatt@apple.com's avatar
      Another speculative Gtk scrolling fix. · 15237cdc
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      15237cdc
    • mjs@apple.com's avatar
      2008-10-03 Maciej Stachowiak <mjs@apple.com> · d180f6d6
      mjs@apple.com authored
              Rubber stamped by Cameron Zwarich.
              
              - fix mistaken change of | to || which caused a big perf regression on EarleyBoyer
      
              * kjs/grammar.y:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d180f6d6
    • hyatt@apple.com's avatar
      Fix Qt bustage. · d97a3207
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d97a3207
    • hyatt@apple.com's avatar
      Speculative fix for gtk not painting on scroll. · ab18c201
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37225 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      ab18c201
    • hyatt@apple.com's avatar
      2008-10-03 David Hyatt <hyatt@apple.com> · f0a1327b
      hyatt@apple.com authored
              Preserve Qt's disabling of blitting when any native widgets are present anywhere on the page (ick).
              Hopefully this is a temporary hack that could eventually be removed.
      
              Reviewed by Sam Weinig
      
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::scrollContents):
              * platform/ScrollView.h:
              (WebCore::ScrollView::rootPreventsBlitting):
              * platform/qt/ScrollViewQt.cpp:
              (WebCore::ScrollView::ScrollView):
              (WebCore::ScrollView::~ScrollView):
              (WebCore::ScrollView::platformAddChild):
              (WebCore::ScrollView::platformRemoveChild):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f0a1327b
    • hyatt@apple.com's avatar
      WebCore: · 6fa40c56
      hyatt@apple.com authored
      2008-10-02  David Hyatt  <hyatt@apple.com>
      
              https://bugs.webkit.org/show_bug.cgi?id=21328
              
              Make widget invalidation more cross-platform.
              
              (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
              
              (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
              This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
              
              (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
              
              (4) FrameViews now do a repaintRectangle on their owner element's renderer.
      
              Reviewed by Sam Weinig
      
              * WebCore.base.exp:
              * page/FrameView.cpp:
              (WebCore::FrameView::invalidateRect):
              (WebCore::FrameView::invalidateScrollbarRect):
              * page/FrameView.h:
              * platform/PopupMenu.h:
              * platform/ScrollView.cpp:
              (WebCore::ScrollView::scrollContents):
              * platform/ScrollView.h:
              * platform/Scrollbar.cpp:
              (WebCore::Scrollbar::setEnabled):
              (WebCore::Scrollbar::invalidateRect):
              * platform/Scrollbar.h:
              * platform/ScrollbarClient.h:
              * platform/Widget.h:
              * platform/gtk/WidgetGtk.cpp:
              * platform/mac/WidgetMac.mm:
              * platform/win/PopupMenuWin.cpp:
              (WebCore::PopupMenu::invalidateScrollbarRect):
              * platform/win/WidgetWin.cpp:
              * plugins/PluginView.cpp:
              (WebCore::PluginView::invalidateTimerFired):
              (WebCore::PluginView::invalidateWindowlessPluginRect):
              * plugins/PluginView.h:
              * plugins/gtk/PluginViewGtk.cpp:
              (WebCore::PluginView::invalidateRect):
              * plugins/qt/PluginViewQt.cpp:
              (WebCore::PluginView::invalidateRect):
              * plugins/win/PluginViewWin.cpp:
              (WebCore::PluginView::invalidateRect):
              (WebCore::PluginView::invalidateRegion):
              * rendering/RenderLayer.cpp:
              (WebCore::RenderLayer::invalidateScrollbarRect):
              * rendering/RenderLayer.h:
              * rendering/RenderListBox.cpp:
              (WebCore::RenderListBox::paintObject):
              (WebCore::RenderListBox::paintScrollbar):
              (WebCore::RenderListBox::invalidateScrollbarRect):
              * rendering/RenderListBox.h:
      
      WebKit/mac:
      
      2008-10-02  David Hyatt  <hyatt@apple.com>
      
              https://bugs.webkit.org/show_bug.cgi?id=21328
              
              Make widget invalidation more cross-platform.
              
              (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
              
              (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
              This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
              
              (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
              
              (4) FrameViews now do a repaintRectangle on their owner element's renderer.
      
              Reviewed by Sam Weinig
      
              * WebCoreSupport/WebFrameLoaderClient.mm:
              (PluginWidget::PluginWidget):
              (PluginWidget::invalidateRect):
              (NetscapePluginWidget::NetscapePluginWidget):
              (WebFrameLoaderClient::createPlugin):
      
      WebKit/win:
      
      2008-10-02  David Hyatt  <hyatt@apple.com>
      
              https://bugs.webkit.org/show_bug.cgi?id=21328
              
              Make widget invalidation more cross-platform.
              
              (1) Make invalidateRect a pure virtual function on Widget.  All leaf widgets must now implement this function.
              
              (2) Scrollbars now send invalidations through the ScrollbarClient.  windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
              This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
              
              (3) Plugins now have the native window invalidation code for windowed plugins.  Windowless plugins do a repaintRectangle on the plugin's renderer.
              
              (4) FrameViews now do a repaintRectangle on their owner element's renderer.
      
              Reviewed by Sam Weinig
      
              * WebCoreSupport/EmbeddedWidget.cpp:
              (EmbeddedWidget::invalidateRect):
              * WebCoreSupport/EmbeddedWidget.h:
              * WebScrollBar.cpp:
              (WebScrollBar::invalidateScrollbarRect):
              * WebScrollBar.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fa40c56
    • mitz@apple.com's avatar
      WebCore: · 0203bbe6
      mitz@apple.com authored
              Reviewed by Geoffrey Garen and Sam Weinig.
      
              - fix SVGFontFaceElement leaks seen in Acid3
              - make font-face elements take effect only when they are in the document tree
      
              Test: svg/custom/font-face-not-in-document.svg
      
              * svg/SVGFontData.h: Changed the m_svgFontFaceElement member from a
              RefPtr to a plain pointer to break a ref cycle.
              (WebCore::SVGFontData::svgFontFaceElement):
      
              * svg/SVGFontFaceElement.cpp: Changed to insert and remove the
              @font-face rule from the document's mapped element sheet when the
              element is inserted and removed from the document, and to update it
              only when the element is in the document.
              (WebCore::SVGFontFaceElement::SVGFontFaceElement):
              (WebCore::SVGFontFaceElement::parseMappedAttribute):
              (WebCore::SVGFontFaceElement::rebuildFontFace):
              (WebCore::SVGFontFaceElement::insertedIntoDocument):
              (WebCore::SVGFontFaceElement::removedFromDocument):
              (WebCore::SVGFontFaceElement::childrenChanged):
              (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
              * svg/SVGFontFaceElement.h:
      
      LayoutTests:
      
              Reviewed by Geoffrey Garen and Sam Weinig.
      
              * svg/custom/font-face-not-in-document-expected.txt: Added.
              * svg/custom/font-face-not-in-document.svg: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37222 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0203bbe6
  2. 02 Oct, 2008 9 commits
    • simon.fraser@apple.com's avatar
      2008-10-01 Simon Fraser <simon.fraser@apple.com> · 397ffb03
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              Fix RenderFileUploadControl::setStyle() and
              RenderMenuList::setStyle() to not touch the style; replace
              with html4.css and CSSStyleSelector changes.
      
              https://bugs.webkit.org/show_bug.cgi?id=21287
      
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::adjustRenderStyle):
              * css/html4.css:
              * rendering/RenderBlock.cpp:
              (WebCore::RenderBlock::setStyle):
              * rendering/RenderFileUploadControl.cpp:
              * rendering/RenderMenuList.cpp:
              (WebCore::RenderMenuList::setStyle):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      397ffb03
    • simon.fraser@apple.com's avatar
      2008-10-01 Simon Fraser <simon.fraser@apple.com> · 50e860fa
      simon.fraser@apple.com authored
              Reviewed by Dave Hyatt
      
              Clean up code that changes the RenderStyle passed in to
              table renderer setStyle() methods.
      
              https://bugs.webkit.org/show_bug.cgi?id=21287
      
              Tests: fast/table/floating-th.html
                     fast/table/table-display-types-strict.html
                     fast/table/table-display-types.html
      
              * css/CSSStyleSelector.cpp:
              (WebCore::CSSStyleSelector::adjustRenderStyle):
              * rendering/RenderTableCell.cpp:
              (WebCore::RenderTableCell::setStyle):
              * rendering/RenderTableRow.cpp:
              (WebCore::RenderTableRow::setStyle):
              * rendering/RenderTableSection.cpp:
              (WebCore::RenderTableSection::setStyle):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      50e860fa
    • darin@apple.com's avatar
      2008-10-02 Darin Adler <darin@apple.com> · cb1ab089
      darin@apple.com authored
              - fix build
      
              * bindings/scripts/CodeGeneratorJS.pm: Need to replace the -> with a . here too.
              Not just locally in my generated file!
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37218 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      cb1ab089
    • adele@apple.com's avatar
      WebCore: · f022590e
      adele@apple.com authored
      2008-10-02  Adele Peterson  <adele@apple.com>
      
              Reviewed by Dan Bernstein.
      
              Fix for https://bugs.webkit.org/show_bug.cgi?id=21299
              REGRESSION: <input> color specified in inline style applies to placeholder
      
              I recently added a pseudo-class for the placeholder, but that can be overridden by inline style changes.  A pseudo-element
              is more appropriate.  This change adds "-webkit-input-placeholder".
      
              * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
              Added definition for "-webkit-input-placeholder" pseudo element.
              * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoInputPlaceholder.
              * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
              Added case for PseudoInputPlaceholder.
              * css/html4.css: Added rule for -webkit-input-placeholder pseudo-element.
              * rendering/style/RenderStyle.h: (WebCore::RenderStyle::): Added INPUT_PLACEHOLDER.
      
              * html/HTMLInputElement.cpp:
              (WebCore::HTMLInputElement::setValue): Check that its a text field before calling updatePlaceholderVisibility.
              (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
              (WebCore::HTMLInputElement::updatePlaceholderVisibility): Instead of calling setChanged(), call updatePlaceholderVisibility on the renderer.
              setChanged wouldn't actually trigger setStyle since the style for the input element won't actually change.
              * rendering/RenderTextControl.cpp:
              (WebCore::RenderTextControl::createInnerTextStyle): Get the pseudoStyle when the placeholder is visible.
              (WebCore::RenderTextControl::updatePlaceholderVisibility): Sets the style on the inner text block, and calls updateFromElement so
              the text will be updated correctly.
              * rendering/RenderTextControl.h:
      
      LayoutTests:
      
      2008-10-02  Adele Peterson  <adele@apple.com>
      
              Reviewed by Dan Bernstein.
      
              Update tests for https://bugs.webkit.org/show_bug.cgi?id=21299
              REGRESSION: <input> color specified in inline style applies to placeholder
      
              * fast/forms/placeholder-pseudo-style.html:
              * platform/mac/fast/forms/password-placeholder-expected.txt:
              * platform/mac/fast/forms/password-placeholder-text-security-expected.txt:
              * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt:
              * platform/mac/fast/forms/placeholder-set-attribute-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f022590e
    • cfleizach@apple.com's avatar
    • darin@apple.com's avatar
      JavaScriptCore: · b6295d46
      darin@apple.com authored
      2008-10-02  Darin Adler  <darin@apple.com>
      
              Reviewed by Geoff Garen.
      
              - https://bugs.webkit.org/show_bug.cgi?id=21321
                Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
      
              1.019x as fast on SunSpider.
      
              * API/JSBase.cpp:
              (JSEvaluateScript): Use heap. instead of heap-> to work with the heap.
              (JSCheckScriptSyntax): Ditto.
              (JSGarbageCollect): Ditto.
              (JSReportExtraMemoryCost): Ditto.
              * API/JSContextRef.cpp:
              (JSGlobalContextRetain): Ditto.
              (JSGlobalContextRelease): Destroy the heap with the destroy function instead
              of the delete operator.
              (JSContextGetGlobalObject): Use heap. instead of heap-> to work with the heap.
              * API/JSObjectRef.cpp:
              (JSObjectMake): Use heap. instead of heap-> to work with the heap.
              (JSObjectMakeFunctionWithCallback): Ditto.
              (JSObjectMakeConstructor): Ditto.
              (JSObjectMakeFunction): Ditto.
              (JSObjectMakeArray): Ditto.
              (JSObjectMakeDate): Ditto.
              (JSObjectMakeError): Ditto.
              (JSObjectMakeRegExp): Ditto.
              (JSObjectHasProperty): Ditto.
              (JSObjectGetProperty): Ditto.
              (JSObjectSetProperty): Ditto.
              (JSObjectGetPropertyAtIndex): Ditto.
              (JSObjectSetPropertyAtIndex): Ditto.
              (JSObjectDeleteProperty): Ditto.
              (JSObjectCallAsFunction): Ditto.
              (JSObjectCallAsConstructor): Ditto.
              (JSObjectCopyPropertyNames): Ditto.
              (JSPropertyNameAccumulatorAddName): Ditto.
              * API/JSValueRef.cpp:
              (JSValueIsEqual): Ditto.
              (JSValueIsInstanceOfConstructor): Ditto.
              (JSValueMakeNumber): Ditto.
              (JSValueMakeString): Ditto.
              (JSValueToNumber): Ditto.
              (JSValueToStringCopy): Ditto.
              (JSValueToObject): Ditto.
              (JSValueProtect): Ditto.
              (JSValueUnprotect): Ditto.
      
              * kjs/ExecState.h:
              (JSC::ExecState::heap): Update to use the & operator.
      
              * kjs/JSGlobalData.cpp:
              (JSC::JSGlobalData::JSGlobalData): Update to initialize a heap member
              instead of calling new to make a heap.
              (JSC::JSGlobalData::~JSGlobalData): Destroy the heap with the destroy
              function instead of the delete operator.
              * kjs/JSGlobalData.h: Change from Heap* to a Heap.
              * kjs/JSGlobalObject.cpp:
              (JSC::JSGlobalObject::mark): Use the & operator here.
              (JSC::JSGlobalObject::operator new): Use heap. instead of heap-> to work
              with the heap.
      
      WebCore:
      
      2008-10-02  Darin Adler  <darin@apple.com>
      
              Reviewed by Geoff Garen.
      
              - https://bugs.webkit.org/show_bug.cgi?id=21321
                Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
      
              * bindings/js/GCController.cpp:
              (WebCore::collect): Use heap. instead of heap-> to work with the heap.
              (WebCore::GCController::gcTimerFired): Ditto.
              (WebCore::GCController::garbageCollectNow): Ditto.
              * bindings/js/JSDOMWindowShell.cpp:
              (WebCore::JSDOMWindowShell::operator new): Ditto.
              * storage/Database.cpp:
              (WebCore::Database::Database): Ditto.
      
      WebKit/mac:
      
      2008-10-02  Darin Adler  <darin@apple.com>
      
              Reviewed by Geoff Garen.
      
              - https://bugs.webkit.org/show_bug.cgi?id=21321
                Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
      
              * Misc/WebCoreStatistics.mm:
              (+[WebCoreStatistics javaScriptObjectsCount]): Use heap. instead of heap-> to
              work with the heap.
              (+[WebCoreStatistics javaScriptGlobalObjectsCount]): Ditto.
              (+[WebCoreStatistics javaScriptProtectedObjectsCount]): Ditto.
              (+[WebCoreStatistics javaScriptProtectedGlobalObjectsCount]): Ditto.
              (+[WebCoreStatistics javaScriptProtectedObjectTypeCounts]): Ditto.
              (+[WebCoreStatistics javaScriptReferencedObjectsCount]): Ditto.
      
      WebKit/win:
      
      2008-10-02  Darin Adler  <darin@apple.com>
      
              - https://bugs.webkit.org/show_bug.cgi?id=21321
                Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
      
              * WebCoreStatistics.cpp:
              (WebCoreStatistics::javaScriptObjectsCount): Use heap. instead of heap-> to
              work with the heap.
              (WebCoreStatistics::javaScriptGlobalObjectsCount): Ditto.
              (WebCoreStatistics::javaScriptProtectedObjectsCount): Ditto.
              (WebCoreStatistics::javaScriptProtectedGlobalObjectsCount): Ditto.
              (WebCoreStatistics::javaScriptProtectedObjectTypeCounts): Ditto.
              * WebJavaScriptCollector.cpp:
              (WebJavaScriptCollector::objectCount): Ditto.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      b6295d46
    • hyatt@apple.com's avatar
      Fix Gtk bustage. · 1082fb46
      hyatt@apple.com authored
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37214 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      1082fb46
    • cwzwarich@webkit.org's avatar
      2008-10-02 Cameron Zwarich <zwarich@apple.com> · 7ec515a5
      cwzwarich@webkit.org authored
              Reviewed by Geoff Garen.
      
              Bug 21317: Replace RegisterFile size and capacity information with Register pointers
              <https://bugs.webkit.org/show_bug.cgi?id=21317>
      
              This is a 2.3% speedup on the V8 DeltaBlue benchmark, a 3.3% speedup on
              the V8 Raytrace benchmark, and a 1.0% speedup on SunSpider.
      
              * VM/Machine.cpp:
              (JSC::slideRegisterWindowForCall):
              (JSC::Machine::callEval):
              (JSC::Machine::execute):
              (JSC::Machine::privateExecute):
              (JSC::Machine::cti_op_call_JSFunction):
              (JSC::Machine::cti_op_construct_JSConstruct):
              * VM/RegisterFile.cpp:
              (JSC::RegisterFile::~RegisterFile):
              * VM/RegisterFile.h:
              (JSC::RegisterFile::RegisterFile):
              (JSC::RegisterFile::start):
              (JSC::RegisterFile::end):
              (JSC::RegisterFile::size):
              (JSC::RegisterFile::shrink):
              (JSC::RegisterFile::grow):
              (JSC::RegisterFile::lastGlobal):
              (JSC::RegisterFile::markGlobals):
              (JSC::RegisterFile::markCallFrames):
              * kjs/JSGlobalObject.cpp:
              (JSC::JSGlobalObject::copyGlobalsTo):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37213 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7ec515a5
    • adele@apple.com's avatar
      2008-10-02 Adele Peterson <adele@apple.com> · 6ea763a9
      adele@apple.com authored
              Update results for mac-tiger.
      
              * platform/mac-tiger/svg/W3C-SVG-1.1/text-path-01-b-expected.txt:
              * platform/mac-tiger/svg/hixie/perf/001-expected.txt:
              * platform/mac-tiger/svg/hixie/perf/002-expected.txt:
              * platform/mac-tiger/svg/hixie/text/003-expected.txt:
              * platform/mac-tiger/svg/hixie/text/003a-expected.txt:
              * platform/mac-tiger/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt:
              * platform/mac-tiger/svg/text/text-path-01-b-expected.txt:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@37212 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6ea763a9