12 years agoBug 20315: Memory leak with Canvas getImageData
oliver@apple.com [Thu, 2 Oct 2008 05:02:00 +0000 (05:02 +0000)]
Bug 20315: Memory leak with Canvas getImageData

Reviewed by Maciej Stachowiak

This wasn't a leak, the issue was that we were reporting the cost
of the CanvasPixelArray when creating the JSCanvasPixelArray wrapper
and we should have been reporting the cost when we create the
JSImageData wrapper.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37181 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Mark Rowe.
mitz@apple.com [Thu, 2 Oct 2008 04:54:06 +0000 (04:54 +0000)]
    Reviewed by Mark Rowe.

        - https://bugs.webkit.org/show_bug.cgi?id=21293
          REGRESSION: Crash beneath RenderSVGViewportContainer::viewportTransform() during SVGSVGElement destruction

        * svg/SVGMarkerElement.cpp:
        (WebCore::SVGMarkerElement::~SVGMarkerElement): Call detach() here so
        that renderer destruction happens before the SVGMarkerElement is
        * svg/SVGSVGElement.cpp:
        (WebCore::SVGSVGElement::~SVGSVGElement): Ditto for SVGSVGElement.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37180 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Win32 bustage.
hyatt@apple.com [Thu, 2 Oct 2008 02:48:05 +0000 (02:48 +0000)]
Fix Win32 bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37179 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 Evan Martin <evan@chromium.org>
eric@webkit.org [Thu, 2 Oct 2008 01:47:44 +0000 (01:47 +0000)]
2008-10-01  Evan Martin  <evan@chromium.org>

        Reviewed by Eric Seidel.


        * css/makeprop.pl:
        Die if gperf fails.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37178 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 Evan Martin <evan@chromium.org>
eric@webkit.org [Thu, 2 Oct 2008 01:43:16 +0000 (01:43 +0000)]
2008-10-01  Evan Martin  <evan@chromium.org>

        Reviewed by Eric Seidel.

        * loader/icon/IconDatabase.h:
        IconDatabase uses HashMap, so it needs to #include the header.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37177 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Mark Rowe.
mitz@apple.com [Thu, 2 Oct 2008 01:35:05 +0000 (01:35 +0000)]
    Reviewed by Mark Rowe.

        - fix an assertion failure in http/tests/security/canvas-remote-read-svg-image.html due to re-entry into Cache::pruneDeadResources()

        * loader/Cache.cpp:
        (WebCore::Cache::remove): Disable pruning temporarily during
        CachedResource deletion.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37176 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Darin Adler <darin@apple.com>
darin@apple.com [Thu, 2 Oct 2008 01:30:13 +0000 (01:30 +0000)]
2008-09-30  Darin Adler  <darin@apple.com>

        Reviewed by Eric Seidel.

        - https://bugs.webkit.org/show_bug.cgi?id=21214
          work on getting rid of ExecState

        Eliminate some unneeded uses of dynamicGlobalObject.

        * API/JSClassRef.cpp:
        (OpaqueJSClass::contextData): Changed to use a map in the global data instead
        of on the global object. Also fixed to use only a single hash table lookup.

        * API/JSObjectRef.cpp:
        (JSObjectMakeConstructor): Use lexicalGlobalObject rather than dynamicGlobalObject
        to get the object prototype.

        * kjs/ArrayPrototype.cpp:
        (JSC::arrayProtoFuncToString): Use arrayVisitedElements set in global data rather
        than in the global object.
        (JSC::arrayProtoFuncToLocaleString): Ditto.
        (JSC::arrayProtoFuncJoin): Ditto.

        * kjs/JSGlobalData.cpp:
        (JSC::JSGlobalData::JSGlobalData): Don't initialize opaqueJSClassData, since
        it's no longer a pointer.
        (JSC::JSGlobalData::~JSGlobalData): We still need to delete all the values, but
        we don't need to delete the map since it's no longer a pointer.

        * kjs/JSGlobalData.h: Made opaqueJSClassData a map instead of a pointer to a map.
        Also added arrayVisitedElements.

        * kjs/JSGlobalObject.h: Removed arrayVisitedElements.

        * kjs/Shell.cpp:
        (functionRun): Use lexicalGlobalObject instead of dynamicGlobalObject.
        (functionLoad): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37175 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Gtk repaint method finally. Should fix build bustage.
hyatt@apple.com [Thu, 2 Oct 2008 01:05:15 +0000 (01:05 +0000)]
Fix Gtk repaint method finally.  Should fix build bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37174 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Gtk bustage from removal of update(). Make sure to include HostWindow.h
hyatt@apple.com [Thu, 2 Oct 2008 00:56:57 +0000 (00:56 +0000)]
Fix Gtk bustage from removal of update().  Make sure to include HostWindow.h

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37173 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Gtk bustage from removal of update().
hyatt@apple.com [Thu, 2 Oct 2008 00:56:07 +0000 (00:56 +0000)]
Fix Gtk bustage from removal of update().

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37172 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Mark Rowe.
mitz@apple.com [Thu, 2 Oct 2008 00:48:54 +0000 (00:48 +0000)]
    Reviewed by Mark Rowe.

        - fix SVGFontElement leaks seen on buildbot by breaking a ref cycle

        * svg/SVGFontFaceElement.cpp:
        * svg/SVGFontFaceElement.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37171 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Win bustage.
hyatt@apple.com [Thu, 2 Oct 2008 00:40:14 +0000 (00:40 +0000)]
Fix Win bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37170 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Gtk bustage.
hyatt@apple.com [Thu, 2 Oct 2008 00:22:57 +0000 (00:22 +0000)]
Fix Gtk bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37169 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Qt bustage.
hyatt@apple.com [Thu, 2 Oct 2008 00:21:34 +0000 (00:21 +0000)]
Fix Qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37168 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Win bustage.
hyatt@apple.com [Thu, 2 Oct 2008 00:20:16 +0000 (00:20 +0000)]
Fix Win bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37167 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Wed, 1 Oct 2008 23:38:44 +0000 (23:38 +0000)]
2008-10-01  Cameron Zwarich  <zwarich@apple.com>

        Not reviewed.

        Speculative Windows build fix.

        * kjs/grammar.y:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37166 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Qt bustage.
hyatt@apple.com [Wed, 1 Oct 2008 22:43:57 +0000 (22:43 +0000)]
Fix Qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37165 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Qt bustage.
hyatt@apple.com [Wed, 1 Oct 2008 22:43:37 +0000 (22:43 +0000)]
Fix Qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37164 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoReviewed by Maciej Stachowiak.
brettw@chromium.org [Wed, 1 Oct 2008 22:34:16 +0000 (22:34 +0000)]
Reviewed by Maciej Stachowiak.

Document the rounding behavior of the mapRect(IntRect) function in

* platform/graphics/AffineTransform.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37163 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
hyatt@apple.com [Wed, 1 Oct 2008 22:30:56 +0000 (22:30 +0000)]

2008-10-01  David Hyatt  <hyatt@apple.com>

        Move prohibitsScrolling from the Frame to the ScrollView.

        Reviewed by Sam Weinig

        * WebCore.base.exp:
        * page/Frame.cpp:
        * page/Frame.h:
        * page/FramePrivate.h:
        * page/FrameView.cpp:
        * platform/ScrollView.cpp:
        * platform/ScrollView.h:
        * platform/gtk/ScrollViewGtk.cpp:
        * platform/qt/ScrollViewQt.cpp:
        * platform/win/ScrollViewWin.cpp:


2008-10-01  David Hyatt  <hyatt@apple.com>

        Move prohibitsScrolling from the Frame to the ScrollView.

        Reviewed by Sam Weinig

        * WebView/WebView.mm:
        (-[WebView setProhibitsMainFrameScrolling:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37162 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix leaks seen during http/tests/xmlhttprequest/access-control-basic-non-simple-allow...
mrowe@apple.com [Wed, 1 Oct 2008 22:24:37 +0000 (22:24 +0000)]
Fix leaks seen during http/tests/xmlhttprequest/access-control-basic-non-simple-allow.html.

Reviewed by Geoff Garen.

* xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::didFinishLoadingPreflight): Balance the ref and GC protect
that we do during the loadRequestAsynchronously of the preflight request with a deref and
GC unprotect.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37161 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Wed, 1 Oct 2008 22:18:50 +0000 (22:18 +0000)]
2008-10-01  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Darin Adler.

        Bug 21123: using "arguments" in a function should not force creation of an activation object

        Make the 'arguments' object not require a JSActivation. We store the
        'arguments' object in the OptionalCalleeArguments call frame slot. We
        need to be able to get the original 'arguments' object to tear it off
        when returning from a function, but 'arguments' may be assigned to in a
        number of ways.

        Therefore, we use the OptionalCalleeArguments slot when we want to get
        the original activation or we know that 'arguments' was not assigned a
        different value. When 'arguments' may have been assigned a new value,
        we use a new local variable that is initialized with 'arguments'. Since
        a function parameter named 'arguments' may overwrite the value of
        'arguments', we also need to be careful to look up 'arguments' in the
        symbol table, so we get the parameter named 'arguments' instead of the
        local variable that we have added for holding the 'arguments' object.

        This is a 19.1% win on the V8 Raytrace benchmark using the SunSpider
        harness, and a 20.7% win using the V8 harness. This amounts to a 6.5%
        total speedup on the V8 benchmark suite using the V8 harness.


        * VM/CTI.cpp:
        * VM/CodeBlock.h:
        * VM/CodeGenerator.cpp:
        * VM/Machine.cpp:
        * VM/Machine.h:
        * VM/RegisterFile.h:
        * kjs/Arguments.cpp:
        * kjs/Arguments.h:
        * kjs/JSActivation.cpp:
        * kjs/JSActivation.h:
        * kjs/grammar.y:
        * kjs/nodes.h:
        * masm/X86Assembler.h:


        * fast/js/arguments-expected.txt:
        * fast/js/function-dot-arguments-expected.txt:
        * fast/js/resources/arguments.js:
        * fast/js/resources/function-dot-arguments.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37160 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Wed, 1 Oct 2008 22:12:23 +0000 (22:12 +0000)]
2008-10-01  David Hyatt  <hyatt@apple.com>

        Rename allowsScrolling/setAllowsScrolling to canHaveScrollbars/setCanHaveScrollbars to make it more
        clear that the boolean doesn't actually stop all scrolling.  It just gets rid of scrollbars.

        Reviewed by Tim Hatcher

        * WebCore.base.exp:
        * page/FrameView.cpp:
        * page/FrameView.h:
        * platform/ScrollView.cpp:
        * platform/ScrollView.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37159 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Win bustage.
hyatt@apple.com [Wed, 1 Oct 2008 21:48:56 +0000 (21:48 +0000)]
Fix Win bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37158 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Mark Rowe.
mitz@apple.com [Wed, 1 Oct 2008 21:19:41 +0000 (21:19 +0000)]
    Reviewed by Mark Rowe.

        - fix some CachedResource leaks seen on buildbot

        The issue here was that emptying the cache was a no-op when it only
        contained resources with no data. Changed to go after those
        resources when the desired cache capacity is zero.

        * loader/Cache.cpp:
        * loader/Cache.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37157 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Wed, 1 Oct 2008 21:11:07 +0000 (21:11 +0000)]
2008-10-01  David Hyatt  <hyatt@apple.com>

        Make isOffscreen cross-platform.  Only Mac implements this method, so hold off on adding API to the
        HostWindow object until other platforms decide they want this method.  (We need it for Win though at some point.)

        Reviewed by Adam Roben

        * platform/ScrollView.cpp:
        * platform/ScrollView.h:
        * platform/gtk/ScrollViewGtk.cpp:
        * platform/mac/ScrollViewMac.mm:
        * platform/qt/ScrollViewQt.cpp:
        * platform/wx/ScrollViewWx.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37156 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Wed, 1 Oct 2008 20:58:19 +0000 (20:58 +0000)]
2008-10-01  David Hyatt  <hyatt@apple.com>

        Make show/hide/setParentVisible cross-platform on ScrollView.

        Reviewed by Adam Roben

        * platform/ScrollView.cpp:
        * platform/ScrollView.h:
        * platform/win/ScrollViewWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37155 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
kmccullough@apple.com [Wed, 1 Oct 2008 20:41:56 +0000 (20:41 +0000)]

2008-10-01  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Dan Bernstein.

        Bug 21284: Max height affects max width
        - Looks like a cut and paste bug
        - Added layout test fast/css/max-height-and-max-width.html

        * css/CSSComputedStyleDeclaration.cpp:


2008-10-01  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Dan Bernstein.

        Bug 21284: Max height affects max width
        - Looks like a cut and paste bug

        * fast/css/max-height-and-max-width-expected.txt: Added.
        * fast/css/max-height-and-max-width.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37154 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
hyatt@apple.com [Wed, 1 Oct 2008 20:34:07 +0000 (20:34 +0000)]

2008-10-01  David Hyatt  <hyatt@apple.com>


        Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.

        Reviewed by Adam Roben

        * loader/EmptyClients.h:
        * page/Chrome.cpp:
        * page/Chrome.h:
        * page/ChromeClient.h:
        * platform/HostWindow.h:
        * platform/ScrollView.cpp:
        * platform/ScrollView.h:
        * platform/mac/ScrollViewMac.mm:
        * platform/win/ScrollViewWin.cpp:


2008-10-01  David Hyatt  <hyatt@apple.com>


        Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.

        Reviewed by Adam Roben

        * WebCoreSupport/ChromeClientGtk.cpp:
        * WebCoreSupport/ChromeClientGtk.h:


2008-10-01  David Hyatt  <hyatt@apple.com>


        Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.

        Reviewed by Adam Roben

        * WebCoreSupport/WebChromeClient.h:
        * WebCoreSupport/WebChromeClient.mm:


2008-10-01  David Hyatt  <hyatt@apple.com>


        Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.

        Reviewed by Adam Roben

        * WebCoreSupport/ChromeClientQt.cpp:
        * WebCoreSupport/ChromeClientQt.h:


2008-10-01  David Hyatt  <hyatt@apple.com>


        Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.

        Reviewed by Adam Roben

        * WebCoreSupport/WebChromeClient.cpp:
        * WebCoreSupport/WebChromeClient.h:


2008-10-01  David Hyatt  <hyatt@apple.com>


        Make contentsToScreen/screenToContents cross-platform.  Only implemented by Mac/Win right now.

        Reviewed by Adam Roben

        * WebKitSupport/ChromeClientWx.cpp:
        * WebKitSupport/ChromeClientWx.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37153 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
mitz@apple.com [Wed, 1 Oct 2008 20:31:19 +0000 (20:31 +0000)]

        Reviewed by Darin Adler.

        - fix <rdar://problem/6255862> domfuzz: null deref in WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks(WebCore::HTMLStackElem*)

        Test: fast/parser/residual-style-close-across-removed-block.html

        * html/HTMLParser.cpp:
        (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Removed
        an assertion that turned out to be wrong in this case, and changed to
        terminate the algorithm at the first empty block.


        Reviewed by Darin Adler.

        - test for <rdar://problem/6255862> domfuzz: null deref in WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks(WebCore::HTMLStackElem*)

        * fast/parser/residual-style-close-across-removed-block-expected.txt: Added.
        * fast/parser/residual-style-close-across-removed-block.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37152 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Mac bustage. Make sure the setFrameRect method is moved outside the ifdef in...
hyatt@apple.com [Wed, 1 Oct 2008 19:24:54 +0000 (19:24 +0000)]
Fix Mac bustage. Make sure the setFrameRect method is moved outside the ifdef in the header.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37151 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Wed, 1 Oct 2008 19:23:05 +0000 (19:23 +0000)]
2008-10-01  David Hyatt  <hyatt@apple.com>

        Make setFrameRect on ScrollView cross-platform.

        Reviewed by Sam Weinig

        * page/FrameView.h:
        * platform/ScrollView.cpp:
        * platform/ScrollView.h:
        * platform/gtk/ScrollViewGtk.cpp:
        * platform/qt/ScrollViewQt.cpp:
        * platform/win/ScrollViewWin.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37150 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 1 Oct 2008 19:17:01 +0000 (19:17 +0000)]
2008-10-01  Sam Weinig  <sam@webkit.org>

        Reviewed by Adele Peterson.

        Move setTimeout, clearTimeout, setInterval, clearInterval, atob and btoa
        to JSDOMWindow from JSDOMWindowBase.

        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSDOMWindowBase.cpp:
        * bindings/js/JSDOMWindowBase.h:
        * bindings/js/JSDOMWindowCustom.cpp:
        * page/DOMWindow.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37149 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-10-01 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Wed, 1 Oct 2008 18:40:57 +0000 (18:40 +0000)]
2008-10-01  Kevin McCullough  <kmccullough@apple.com>

        Rubberstamped by Geoff .

        Remove BreakpointCheckStatement because it's not used anymore.
        No effect on sunspider or the jsc tests.

        * kjs/nodes.cpp:
        * kjs/nodes.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37148 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago - Mac build fix
mitz@apple.com [Wed, 1 Oct 2008 18:12:45 +0000 (18:12 +0000)]
    - Mac build fix

        * WebCore.base.exp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37147 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMake ScrollView::paint cross-platform.
hyatt@apple.com [Wed, 1 Oct 2008 17:51:02 +0000 (17:51 +0000)]
Make ScrollView::paint cross-platform.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37146 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Prevent stealing focus from the search field when focusing a DOM node.
timothy@apple.com [Wed, 1 Oct 2008 17:33:37 +0000 (17:33 +0000)]
    Prevent stealing focus from the search field when focusing a DOM node.


        Reviewed by Kevin McCullough.

        * page/inspector/ElementsPanel.js:
        Don't steal focus if the current focus element is the search field.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37145 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoSpeculative fix for Gtk bustage.
hyatt@apple.com [Wed, 1 Oct 2008 07:59:47 +0000 (07:59 +0000)]
Speculative fix for Gtk bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37144 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Qt bustage.
hyatt@apple.com [Wed, 1 Oct 2008 07:55:04 +0000 (07:55 +0000)]
Fix Qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37143 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 1 Oct 2008 07:27:49 +0000 (07:27 +0000)]
2008-09-30  Sam Weinig  <sam@webkit.org>

        Reviewed by Nikolas Zimmermann and Alexey Proskuryakov.

        Final patch for https://bugs.webkit.org/show_bug.cgi?id=21122
        Autogenerate JS event listeners

        - Generate getting/setting of EventListeners.

        - Adding a new named EventListener now has the same process as adding any other DOM
          attribute. (Add a method with the same name in the c++ file).

        (The EventListeners for MessagePort have been intentionally left custom so that we
        can continue to experiment with making those EventListeners work in a frame-less world.)

        * bindings/js/JSDOMApplicationCacheCustom.cpp: Remove custom methods.
        * bindings/js/JSDOMWindowCustom.cpp: ditto.
        * bindings/js/JSEventTargetNodeCustom.cpp: ditto.
        * bindings/js/JSXMLHttpRequestCustom.cpp: ditto.
        * bindings/js/JSXMLHttpRequestUploadCustom.cpp: ditto.
        * bindings/scripts/CodeGeneratorJS.pm: Add code to generate EventListener
        * dom/EventTargetNode.cpp: Add getter/setters for named EventListener.
        * dom/EventTargetNode.h: ditto.
        * dom/EventTargetNode.idl: Mark EventListeners as Protected so that the codegenerator
        will use JSEventListerner instead of JSUnprotectedEventListener.
        * loader/appcache/DOMApplicationCache.idl: Remove custom attributes..
        * page/DOMWindow.cpp: Add getter/setters for named EventListener
        * page/DOMWindow.h: ditto.
        * page/DOMWindow.idl: Mark EventListeners as Protected so that the codegenerator
        will use JSEventListerner instead of JSUnprotectedEventListener.
        * xml/XMLHttpRequest.idl: Remove custom attributes.
        * xml/XMLHttpRequestUpload.idl: ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37142 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoA-Z.
mrowe@apple.com [Wed, 1 Oct 2008 06:57:03 +0000 (06:57 +0000)]

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37141 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd a leak counter for CachedResources since we've had two recent leaks involving...
mrowe@apple.com [Wed, 1 Oct 2008 06:53:49 +0000 (06:53 +0000)]
Add a leak counter for CachedResources since we've had two recent leaks involving them.

Reviewed by Dan Bernstein.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37140 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Dave Hyatt.
mitz@apple.com [Wed, 1 Oct 2008 06:25:17 +0000 (06:25 +0000)]
    Reviewed by Dave Hyatt.

        - fix https://bugs.webkit.org/show_bug.cgi?id=21127
          <rdar://problem/6259134> REGRESSION: CFF format fonts fail to load

        If TTLoadEmbeddedFont fails, use AddFontMemResourceEx after changing
        the font name in memory.

        * WebCore.vcproj/WebCore.vcproj: Renamed GetEOTHeader.* to

        * platform/graphics/win/FontCustomPlatformData.cpp:
        (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a call
        to RemoveFontMemResourceEx to match AddFontMemResourceEx when it is
        (WebCore::FontCustomPlatformData::fontPlatformData): Added a code path
        for fonts loaded using AddFontMemResourceEx.
        (WebCore::createFontCustomPlatformData): Added a call to
        renameAndActivateFont() if TTLoadEmbeddedFont fails. If
        TTLoadEmbeddedFont succeeds, set the font name to the null string, as
        fontPlatformData() will retrieve the name from the font reference.

        * platform/graphics/win/FontCustomPlatformData.h:
        (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a
        font name member.

        * platform/graphics/win/GetEOTHeader.cpp: Renamed.
        * platform/graphics/win/GetEOTHeader.h: Renamed.

        * platform/graphics/win/OpenTypeUtilities.cpp: Copied from platform/graphics/win/GetEOTHeader.cpp.
        (WebCore::BigEndianUShort::BigEndianUShort): Added a constructor.
        (WebCore::BigEndianULong::BigEndianULong): Ditto.
        (WebCore::renameAndActivateFont): Added. Creates an in-memory copy of
        the font data and modifies it to have the given name, then activates
        it using AddFontMemResourceEx.

        * platform/graphics/win/OpenTypeUtilities.h: Copied from platform/graphics/win/GetEOTHeader.h.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37139 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoImprove performance of CTI on windows.
oliver@apple.com [Wed, 1 Oct 2008 06:16:18 +0000 (06:16 +0000)]
Improve performance of CTI on windows.

Reviewed by Geoff Garen

Currently on platforms where the compiler doesn't allow us to safely
index relative to the address of a parameter we need to actually
provide a pointer to CTI runtime call arguments.  This patch improves
performance in this case by making the CTI logic for restoring this
parameter much less conservative by only resetting it before we actually
make a call, rather than between each and every SF bytecode we generate
code for.

This results in a 3.6% on the v8 benchmark when compiled with MSVC.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37138 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix many leaks seen on fast/backgrounds/svg-as-mask.html.
mrowe@apple.com [Wed, 1 Oct 2008 06:09:28 +0000 (06:09 +0000)]
Fix many leaks seen on fast/backgrounds/svg-as-mask.html.

Reviewed by Dan Bernstein.

* rendering/RenderObject.cpp:
(WebCore::RenderObject::arenaDelete): Balance the calls to addClient on maskLayer's images
with calls to removeClient when we're being destroyed.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37137 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Wed, 1 Oct 2008 05:45:01 +0000 (05:45 +0000)]
2008-09-30  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Antti


        Fix loopstart and loopend default values.

        Tests: media/loopend-limits.html

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::loopStart): the spec says start() is the default value
        (WebCore::HTMLMediaElement::loopEnd): the spec says end() is the default value

2008-09-30  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Antti


        Test default loopstart and loopend values.

        * media/loopend-limits-expected.txt: Added.
        * media/loopend-limits.html: Added.
        * media/loopstart-limits-expected.txt: Added.
        * media/loopstart-limits.html: Added.
        * media/video-test.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37136 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix many leaks seen on fast/backgrounds/svg-as-background-1.html.
mrowe@apple.com [Wed, 1 Oct 2008 05:29:03 +0000 (05:29 +0000)]
Fix many leaks seen on fast/backgrounds/svg-as-background-1.html.

JavaScript wrappers were keeping DOM objects alive, which was leading to the SVG background image
being kept alive in the memory cache past our last attempt to empty the cache prior to quitting.
We need to empty the memory cache after forcing a JavaScript garbage collection to ensure that
any live JavaScript wrappers are collected and their corresponding DOM objects have a chance to be
torn down before we exit.

Rubber-stamped by Dan Bernstein.

* DumpRenderTree/mac/DumpRenderTree.mm:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37135 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agowx build fixes. Add file to build and remove call to (now gone) ScrollView::update.
kevino@webkit.org [Wed, 1 Oct 2008 05:04:18 +0000 (05:04 +0000)]
wx build fixes. Add file to build and remove call to (now gone) ScrollView::update.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37134 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Sam Weinig.
mitz@apple.com [Wed, 1 Oct 2008 04:43:07 +0000 (04:43 +0000)]
    Reviewed by Sam Weinig.

        - fix HTMLViewSourceDocument leaks by breaking a ref cycle which
          was fixed in r17249 and re-introduced in r31435.

        * html/HTMLViewSourceDocument.cpp:
        * html/HTMLViewSourceDocument.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37133 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Wed, 1 Oct 2008 02:57:53 +0000 (02:57 +0000)]
2008-09-30  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver Hunt.

        - track uses of "this", "with" and "catch" in the parser

        Knowing this up front will be useful for future optimizations.

        Perf and correctness remain the same.

        * kjs/NodeInfo.h:
        * kjs/grammar.y:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37132 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Anders Carlsson.
kdecker@apple.com [Wed, 1 Oct 2008 01:05:38 +0000 (01:05 +0000)]
    Reviewed by Anders Carlsson.

        Remove the NPDrawingModelOpenGL entirely. To my knowledge no shipping plug-in ever used it, and no other browser engine
        ever supported it.

        * Plugins/WebBaseNetscapePluginView.h: Removed AGL.h import and OpenGL related ivars.
        * Plugins/WebBaseNetscapePluginView.mm: Removed soft linking for OpenGL and AGL frameworks.
        Also removed many methods AGL/CGL support methods that are no longer necessary.
        (-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]): Removed NPDrawingModelOpenGL related code.
        (-[WebBaseNetscapePluginView restorePortState:]): Ditto.
        (-[WebBaseNetscapePluginView sendEvent:isDrawRect:]): Ditto.
        (-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]): Ditto.
        (-[WebBaseNetscapePluginView setWindowIfNecessary]): Ditto.
        (-[WebBaseNetscapePluginView stop]): Ditto.
        (-[WebBaseNetscapePluginView dealloc]): Ditto.
        (-[WebBaseNetscapePluginView drawRect:]):
        (-[WebBaseNetscapePluginView viewWillMoveToWindow:]): Ditto.
        (-[WebBaseNetscapePluginView invalidateRegion:]): Ditto.
        (-[WebBaseNetscapePluginView getVariable:value:]): Tell plug-ins WebKit does not support NPDrawingModelOpenGL.
        (-[WebBaseNetscapePluginView setVariable:value:]): Removed NPDrawingModelOpenGL related code.
        (-[WebBaseNetscapePluginView _viewHasMoved]): Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37131 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Dean Jackson <dino@apple.com>
dino@apple.com [Wed, 1 Oct 2008 01:00:19 +0000 (01:00 +0000)]
2008-09-30  Dean Jackson  <dino@apple.com>

        Reviewed by Simon Fraser.

        Remove console output that can cause test to fail on slow

        * animations/transition-and-animation-2-expected.txt:
        * animations/transition-and-animation-2.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37130 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Wed, 1 Oct 2008 00:43:19 +0000 (00:43 +0000)]
2008-09-30  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Dan Bernstein

        Don't run pixel comparison for text-only tests.

        * DumpRenderTree/mac/DumpRenderTree.mm:
        * Scripts/run-webkit-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37129 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Sam Weinig <sam@webkit.org>
weinig@apple.com [Wed, 1 Oct 2008 00:39:19 +0000 (00:39 +0000)]
2008-09-30  Sam Weinig  <sam@webkit.org>

        Reviewed by Eric Seidel.

        More for https://bugs.webkit.org/show_bug.cgi?id=21122
        Autogenerate JS event listeners

        - Make EventListener getter/setters names in c++ files match those in
          JS (ie. onLoadListener -> onload).
        - Add standard way to access the frame associated with the EventTarget
          for EventListener lookup.
        - Autogenerate dispatchEvent, it wasn't doing anything custom.

        * bindings/js/JSDOMApplicationCacheCustom.cpp:
        * bindings/js/JSEventTargetNodeCustom.cpp:
        * bindings/js/JSMessagePortCustom.cpp:
        * bindings/js/JSXMLHttpRequestCustom.cpp:
        * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
        * bindings/scripts/CodeGeneratorJS.pm:
        * dom/EventTarget.h:
        * dom/EventTargetNode.cpp:
        * dom/EventTargetNode.h:
        * dom/EventTargetNode.idl:
        * dom/MessagePort.cpp:
        * dom/MessagePort.h:
        * dom/MessagePort.idl:
        * loader/appcache/DOMApplicationCache.h:
        * loader/appcache/DOMApplicationCache.idl:
        * svg/EventTargetSVGElementInstance.cpp:
        * svg/EventTargetSVGElementInstance.h:
        * xml/XMLHttpRequest.cpp:
        * xml/XMLHttpRequest.h:
        * xml/XMLHttpRequest.idl:
        * xml/XMLHttpRequestUpload.cpp:
        * xml/XMLHttpRequestUpload.h:
        * xml/XMLHttpRequestUpload.idl:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37128 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Darin Adler <darin@apple.com>
darin@apple.com [Wed, 1 Oct 2008 00:38:06 +0000 (00:38 +0000)]
2008-09-30  Darin Adler  <darin@apple.com>

        - roll out assertion breaking regression tests

        * platform/ScrollView.cpp:
        (WebCore::ScrollView::repaintContentRectangle): Temporarily remove assertion
        that fires in regression tests. Hyatt can add it back later. The assertion
        fires in the regression test because of layout that triggers repaint occuring
        during the process of removing a frame.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37127 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 30 Sep 2008 23:58:35 +0000 (23:58 +0000)]
2008-09-30  Sam Weinig  <sam@webkit.org>

        Reviewed by Mark Rowe.

        Add WebKitAvailability macros for JSObjectMakeArray, JSObjectMakeDate, JSObjectMakeError,
        and JSObjectMakeRegExp

        * API/JSObjectRef.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37126 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Darin Adler <darin@apple.com>
darin@apple.com [Tue, 30 Sep 2008 23:46:29 +0000 (23:46 +0000)]
2008-09-30  Darin Adler  <darin@apple.com>

        Reviewed by Geoff Garen.

        - https://bugs.webkit.org/show_bug.cgi?id=21214
          work on getting rid of ExecState

        Replaced the m_prev field of ExecState with a bit in the
        call frame pointer to indicate "host" call frames.

        * VM/Machine.cpp:
        (JSC::makeHostCallFramePointer): Added. Sets low bit.
        (JSC::isHostCallFrame): Added. Checks low bit.
        (JSC::stripHostCallFrameBit): Added. Clears low bit.
        (JSC::Machine::unwindCallFrame): Replaced null check that was
        formerly used to detect host call frames with an isHostCallFrame check.
        (JSC::Machine::execute): Pass in a host call frame pointer rather than
        always passing 0 when starting execution from the host. This allows us
        to follow the entire call frame pointer chain when desired, or to stop
        at the host calls when that's desired.
        (JSC::Machine::privateExecute): Replaced null check that was
        formerly used to detect host call frames with an isHostCallFrame check.
        (JSC::Machine::retrieveCaller): Ditto.
        (JSC::Machine::retrieveLastCaller): Ditto.
        (JSC::Machine::callFrame): Removed the code to walk up m_prev pointers
        and replaced it with code that uses the caller pointer and uses the
        stripHostCallFrameBit function.

        * kjs/ExecState.cpp: Removed m_prev.
        * kjs/ExecState.h: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37125 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix Qt bustage.
hyatt@apple.com [Tue, 30 Sep 2008 23:24:03 +0000 (23:24 +0000)]
Fix Qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37124 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
adele@apple.com [Tue, 30 Sep 2008 23:21:50 +0000 (23:21 +0000)]

2008-09-30  Adele Peterson  <adele@apple.com>

        Reviewed by Darin Adler.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=21227
        <rdar://problem/6222134> add a way to set color for input placeholder text

        Test: fast/forms/placeholder-pseudo-style.html

        This change adds "-webkit-input-placeholder-mode" as a pseudo class that can be used to style
        input elements when they are displaying the placeholder text.

        * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Add case for inputPlaceholderMode.
        * css/CSSSelector.h: (WebCore::CSSSelector::): Add PseudoInputPlaceholderMode.
        * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
        Add check for PseudoInputPlaceholderMode that asks the node if placeholderShouldBeVisible is true.
        * css/html4.css: Add rule to make placeholder text default to darkGray.

        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::init): Initialize m_placeholderShouldBeVisible.
        (WebCore::HTMLInputElement::dispatchFocusEvent): Call updatePlaceholderVisibility.
        (WebCore::HTMLInputElement::dispatchBlurEvent): ditto.
        (WebCore::HTMLInputElement::parseMappedAttribute): ditto.
        (WebCore::HTMLInputElement::setValue): ditto.
        (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
        (WebCore::HTMLInputElement::updatePlaceholderVisibility): Sets m_placeholderShouldBeVisible based on the current value and the focus state.
         This calculation used to be done in the renderer, but since the node knows everything about the state, it can make that decision, and the
         renderer will just ask the node if it should draw the placeholder.
        * html/HTMLInputElement.h: (WebCore::HTMLInputElement::placeholderShouldBeVisible):

        * rendering/RenderTextControl.cpp:
        (WebCore::disabledTextColor): Moved to the top of the file.  If there's not very much contrast between the disabled color and the background color,
        just leave the text color alone.  We don't want to change a good contrast color scheme so that it has really bad contrast.
        If the the contrast was already poor, then it doesn't do any good to change it to a different poor contrast color scheme.
        (WebCore::RenderTextControl::createInnerTextStyle): If the node says the placeholder should be visible, prepare by overriding the text security to be "none".
        This can only happen as a result of either a setStyle call (which will be followed by a call to updateFromElement) or from createSubtreeIfNeeded, which
        is called directly from updateFromElement.  updateFromElement will immediately update the text displayed.
        (WebCore::RenderTextControl::updateFromElement): If the placeholder visibility has changed, update the text that is displayed.
        (WebCore::RenderTextControl::forwardEvent): Remove calls to update the placeholder state.  This is now done in HTMLInputElement.
        * rendering/RenderTextControl.h:


2008-09-30  Adele Peterson  <adele@apple.com>

        Reviewed by Darin Adler.

        Tests for https://bugs.webkit.org/show_bug.cgi?id=21227
        <rdar://problem/6222134> add a way to set color for input placeholder text

        * fast/forms/password-placeholder-text-security.html: Added.
        * fast/forms/placeholder-pseudo-style.html: Added.
        * platform/mac/fast/forms/password-placeholder-text-security-expected.checksum: Added.
        * platform/mac/fast/forms/password-placeholder-text-security-expected.png: Added.
        * platform/mac/fast/forms/password-placeholder-text-security-expected.txt: Added.
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.checksum: Added.
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.png: Added.
        * platform/mac/fast/forms/placeholder-pseudo-style-expected.txt: Added.

        Updated results. The placeholder color is now reflected on the RenderTextControl, not just on an inner element.

        * platform/mac/fast/forms/input-disabled-color-expected.checksum:
        * platform/mac/fast/forms/input-disabled-color-expected.png:
        * platform/mac/fast/forms/input-disabled-color-expected.txt:
        * platform/mac/fast/forms/password-placeholder-expected.checksum:
        * platform/mac/fast/forms/password-placeholder-expected.png:
        * platform/mac/fast/forms/password-placeholder-expected.txt:
        * platform/mac/fast/forms/placeholder-set-attribute-expected.checksum:
        * platform/mac/fast/forms/placeholder-set-attribute-expected.png:
        * platform/mac/fast/forms/placeholder-set-attribute-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37123 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
bdakin@apple.com [Tue, 30 Sep 2008 23:19:53 +0000 (23:19 +0000)]

2008-09-30  Beth Dakin  <bdakin@apple.com>

        Reviewed by Darin Adler.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=20396 Abort caused
        by failed allocation due to invalid counter/attr
        and corresponding: <rdar://problem/6152371>

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseCounterContent): The spec indicates that
        only identifiers should be accepted here.


2008-09-30  Beth Dakin  <bdakin@apple.com>

        Reviewed by Darin Adler.

        Test for https://bugs.webkit.org/show_bug.cgi?id=20396 Abort caused
        by failed allocation due to invalid counter/attr
        and corresponding: <rdar://problem/6152371>

        * fast/css/counters/counter-number-input-expected.txt: Added.
        * fast/css/counters/counter-number-input.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37122 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 30 Sep 2008 22:33:30 +0000 (22:33 +0000)]
2008-09-30  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Oliver Hunt.

        Bug 21255: console.profileEnd() without a console.profile() crashes the
        web inspector

        * page/Console.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37121 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 30 Sep 2008 22:31:46 +0000 (22:31 +0000)]
2008-09-30  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim Hatcher.

        Bug 21252: calling console.profile() with a title that is 2 chars or
        shorter does not linkify it

        - Previously we tried to not linkify very short URLs but since profile
        titles can be any length this is not always true.

        * page/inspector/inspector.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37120 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRemove bogus executable bit from some source files.
mrowe@apple.com [Tue, 30 Sep 2008 22:28:21 +0000 (22:28 +0000)]
Remove bogus executable bit from some source files.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37118 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Tue, 30 Sep 2008 22:17:55 +0000 (22:17 +0000)]
2008-09-30  Cameron Zwarich  <zwarich@apple.com>

        Reviewed by Geoff Garen.

        Move all detection of 'arguments' in a lexical scope to the parser, in
        preparation for fixing

        Bug 21123: using "arguments" in a function should not force creation of an activation object


        * VM/CodeGenerator.cpp:
        * kjs/NodeInfo.h:
        * kjs/grammar.y:


        * fast/js/arguments-expected.txt:
        * fast/js/function-dot-arguments-expected.txt: Added.
        * fast/js/function-dot-arguments.html: Added.
        * fast/js/resources/arguments.js:
        * fast/js/resources/function-dot-arguments.js: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37117 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 30 Sep 2008 21:46:27 +0000 (21:46 +0000)]
2008-09-30  Geoffrey Garen  <ggaren@apple.com>

        Not reviewed.

        * kjs/Shell.cpp:
        (runWithScripts): Fixed indentation.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37116 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoAdd the image/png mime-type to the Web Inspector images to make Mark and Dan happy.
timothy@apple.com [Tue, 30 Sep 2008 21:34:18 +0000 (21:34 +0000)]
Add the image/png mime-type to the Web Inspector images to make Mark and Dan happy.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37115 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoTweak the Gtk/Qt ChromeClient methods structurally to make sure immediate displays...
hyatt@apple.com [Tue, 30 Sep 2008 21:31:46 +0000 (21:31 +0000)]
Tweak the Gtk/Qt ChromeClient methods structurally to make sure immediate displays/flushes can happen even if the content doesn't change.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37114 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoEliminate the ScrollView update() method.
hyatt@apple.com [Tue, 30 Sep 2008 21:30:56 +0000 (21:30 +0000)]
Eliminate the ScrollView update() method.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37113 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoRoll out r37060 as it introduced many, many leaks.
mrowe@apple.com [Tue, 30 Sep 2008 21:04:35 +0000 (21:04 +0000)]
Roll out r37060 as it introduced many, many leaks.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37112 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Focus the DOM tree in the Web Inspector when a node is inspected.
timothy@apple.com [Tue, 30 Sep 2008 20:57:55 +0000 (20:57 +0000)]
    Focus the DOM tree in the Web Inspector when a node is inspected.
        So when the search field has focus, the focus moves to the tree,
        allowing the arrow keys work. This can happen when using the new
        find in page feature.


        Reviewed by Geoff Garen.

        * page/inspector/ElementsPanel.js:
        (WebInspector.ElementsPanel): Set currentFocusElement to
        the main-panels element if the panel is visible.
        Remove a set of currentFocusElement since this moved.
        * page/inspector/inspector.js:
        (WebInspector.set currentFocusElement): Always focus the element.
        This ensures that when focus changes in the page and we don't
        catch it, we will still focus the elements even if we think it
        was already focused.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37111 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Make the Web Inspector's toolbar icons darker when the mouse is
timothy@apple.com [Tue, 30 Sep 2008 20:57:49 +0000 (20:57 +0000)]
    Make the Web Inspector's toolbar icons darker when the mouse is
        pressed on them. This matches the standard NSToolbar look.


        Reviewed by Adam Roben.

        * page/inspector/Images/databasesIcon.png:
        * page/inspector/Images/elementsIcon.png:
        * page/inspector/Images/profilesIcon.png:
        * page/inspector/Images/resourcesIcon.png:
        * page/inspector/Images/scriptsIcon.png:
        * page/inspector/Panel.js:
        * page/inspector/inspector.css:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37110 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix qt bustage.
hyatt@apple.com [Tue, 30 Sep 2008 20:56:17 +0000 (20:56 +0000)]
Fix qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37109 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoBuild fix.
mrowe@apple.com [Tue, 30 Sep 2008 20:27:13 +0000 (20:27 +0000)]
Build fix.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37107 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 30 Sep 2008 20:26:29 +0000 (20:26 +0000)]
2008-09-30  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim Hatcher.

        Bug 21139: Profiler log message is wrong
        - Correctly fix =(
        Don't call _format twice.

        * page/Page.h:
        * page/inspector/Console.js:
        * page/inspector/ProfilesPanel.js:
        * page/inspector/inspector.js:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37106 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoMake ScrollView's updateContents method cross-platform.
hyatt@apple.com [Tue, 30 Sep 2008 20:09:42 +0000 (20:09 +0000)]
Make ScrollView's updateContents method cross-platform.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37105 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoBuild fix.
mrowe@apple.com [Tue, 30 Sep 2008 19:38:36 +0000 (19:38 +0000)]
Build fix.

Move InternalFunction::classInfo implementation into the .cpp file to
prevent the vtable for InternalFunction being generated as a weak symbol.
Has no effect on SunSpider.

Rubber-stamped by Sam Weinig.

* kjs/InternalFunction.cpp:
* kjs/InternalFunction.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37103 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Tue, 30 Sep 2008 19:29:20 +0000 (19:29 +0000)]
2008-09-30  Anders Carlsson  <andersca@apple.com>

        Reviewed by Mark Rowe and Adam Roben.

        No need to use pointers to store C++ objects as pointers in WebViewPrivate, we can just
        store them directly.

        * Configurations/Base.xcconfig:

        * WebView/WebView.mm:
        (-[WebViewPrivate init]):
        (-[WebViewPrivate dealloc]):
        (-[WebViewPrivate finalize]):
        (-[WebView _preferencesChangedNotification:]):
        (-[WebView setApplicationNameForUserAgent:]):
        (-[WebView setCustomUserAgent:]):
        (-[WebView customUserAgent]):
        (-[WebView WebCore::_userAgentForURL:WebCore::]):
        (-[WebView _addObject:forIdentifier:]):
        (-[WebView _objectForIdentifier:]):
        (-[WebView _removeObjectForIdentifier:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37102 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Non-Mac build fixes.
ap@webkit.org [Tue, 30 Sep 2008 17:58:10 +0000 (17:58 +0000)]
    Non-Mac build fixes.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCoreSources.bkl:
        * webcore-base.bkl:
        Added DOMProtect.{cpp,h}.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37098 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by John Sullivan.
kdecker@apple.com [Tue, 30 Sep 2008 17:40:02 +0000 (17:40 +0000)]
    Reviewed by John Sullivan.

        * bridge/npapi.h: Added skeleton for a new plug-in drawing model, the NPCoreAnimationDrawingModel. This model will eventually pave the way
        for hardware accelerated drawing in plug-ins and out of process plug-in rendering.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37097 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Julien Chaffraix <jchaffraix@webkit.org>
jchaffraix@webkit.org [Tue, 30 Sep 2008 17:05:20 +0000 (17:05 +0000)]
2008-09-29  Julien Chaffraix  <jchaffraix@webkit.org>

        Reviewed by Maciej Stachowiak.

        Bug 21106: .in format discussed changes

        - Removed "cppNamespace" global parameter and hard-coded "WebCore" as it
        is the only namespace used.

        - Removed "generateFactory" and "generateWrapperFactory" parameters and
        re-introduced the command line options.

        - Cleaned up the output of make_names.pl (removed unneeded new line).

        * DerivedSources.make: Added factories command line options.
        * GNUmakefile.am: Ditto.
        * WebCore.pro: Ditto and removed some arguments that were migrated to
        the .in files.

        * dom/make_names.pl: Clean up (see above).

        * html/HTMLAttributeNames.in: Removed "cppNamespace", "generateFactory"
        and "generateWrapperFactory" occurences.
        * html/HTMLTagNames.in: Ditto.
        * svg/svgattrs.in: Ditto.
        * svg/svgtags.in: Ditto.
        * svg/xlinkattrs.in: Ditto.
        * xml/xmlattrs.in: Ditto.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37096 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/6255456> AX: <file> input button shouldn't have children exposed
cfleizach@apple.com [Tue, 30 Sep 2008 16:19:01 +0000 (16:19 +0000)]
<rdar://problem/6255456> AX: <file> input button shouldn't have children exposed

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37095 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Sam Weinig.
ap@webkit.org [Tue, 30 Sep 2008 15:52:06 +0000 (15:52 +0000)]
    Reviewed by Sam Weinig.

        MessagePort crash when GC collects an object with a pending close event

        Test: fast/events/message-channel-gc-2.html

        * bindings/DOMProtect.cpp: Added.
        * bindings/DOMProtect.h: Added.
        Added an abstraction for GC protection to avoid the need to call JS bindings code from
        DOM objects directly.

        * dom/MessagePort.cpp:
        GC protect MessagePort wrapper while there is a pending close event.
        This may be necessary for message events, too, but that case is not a crasher, and actually
        behaves to the letter of the current HTML5 text, so I'll consider it later.

        * xml/XMLHttpRequest.cpp:
        Use gcProtectDOMObject here, too. Unfortunately, XMLHttpRequest has more dependencies on JSC.

        * bindings/js/JSMessagePortCustom.cpp:
        Don't tell DOMWindowBase that MessagePort is a NodeEventTarget, this is not true. I do not
        know if this was causing any real issues, but we shouldn't lie to DOMWindowBase.

        * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
        While at it, changed to use a typedef for event listeners from XMLHttpRequestUpload, not
        from XMLHttpRequest.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37094 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Windows build fix
aroben@apple.com [Tue, 30 Sep 2008 14:17:28 +0000 (14:17 +0000)]
    Windows build fix

        * DerivedSources.cpp: Add JSEventTargetNode.cpp.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37093 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoFix gtk qt bustage.
hyatt@apple.com [Tue, 30 Sep 2008 07:42:48 +0000 (07:42 +0000)]
Fix gtk qt bustage.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37092 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-30 Cameron Zwarich <zwarich@apple.com>
cwzwarich@webkit.org [Tue, 30 Sep 2008 07:10:26 +0000 (07:10 +0000)]
2008-09-30  Cameron Zwarich  <zwarich@apple.com>

        Not reviewed.

        Add the performance improvement to the ChangeLog entry for r37050.

        * ChangeLog

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37091 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 30 Sep 2008 07:01:45 +0000 (07:01 +0000)]
2008-09-29  Sam Weinig  <sam@webkit.org>

        Reviewed by Tim Hatcher.

        Patch for https://bugs.webkit.org/show_bug.cgi?id=21122
        Autogenerate JS event listeners

        - Generate EventTargetNode.

        * DerivedSources.make:
        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * bindings/js/JSEventListener.cpp:
        * bindings/js/JSEventTarget.cpp: Added.
        * bindings/js/JSEventTarget.h: Added.
        * bindings/js/JSEventTargetBase.cpp: Removed.
        * bindings/js/JSEventTargetBase.h:
        * bindings/js/JSEventTargetNode.cpp: Removed.
        * bindings/js/JSEventTargetNode.h: Removed.
        * bindings/js/JSEventTargetNodeCustom.cpp: Added.
        * bindings/js/JSEventTargetSVGElementInstance.cpp:
        * bindings/js/JSEventTargetSVGElementInstance.h:
        * bindings/scripts/CodeGeneratorJS.pm:
        * dom/EventTargetNode.idl: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37090 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Tue, 30 Sep 2008 01:31:09 +0000 (01:31 +0000)]
2008-09-29  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Darin Adler.

        - optimize appending a number to a string

        It's pretty common in real-world code (and on some of the v8
        benchmarks) to append a number to a string, so I made this one of
        the fast cases, and also added support to UString to do it
        directly without allocating a temporary UString.

        ~1% speedup on v8 benchmark.

        * VM/Machine.cpp:
        (JSC::jsAddSlowCase): Make this NEVER_INLINE because somehow otherwise
        the change is a regression.
        (JSC::jsAdd): Handle number + string special case.
        (JSC::Machine::cti_op_add): Integrate much of the logic of jsAdd to
        avoid exception check in the str + str, num + num and str + num cases.
        * kjs/ustring.cpp:
        (JSC::expandedSize): Make this a non-member function, since it needs to be
        called in non-member functions but not outside this file.
        (JSC::expandCapacity): Ditto.
        (JSC::UString::expandCapacity): Call the non-member version.
        (JSC::createRep): Helper to make a rep from a char*.
        (JSC::UString::UString): Use above helper.
        (JSC::concatenate): Guts of concatenating constructor for cases where first
        item is a UString::Rep, and second is a UChar* and length, or a char*.
        (JSC::UString::append): Implement for cases where first item is a UString::Rep,
        and second is an int or double. Sadly duplicates logic of UString::from(int)
        and UString::from(double).
        * kjs/ustring.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37089 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoJavaScriptCore:
darin@apple.com [Tue, 30 Sep 2008 01:14:26 +0000 (01:14 +0000)]

2008-09-29  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - https://bugs.webkit.org/show_bug.cgi?id=21214
          work on getting rid of ExecState

        * JavaScriptCore.exp: Updated since JSGlobalObject::init
        no longer takes a parameter.

        * VM/Machine.cpp:
        (JSC::Machine::execute): Removed m_registerFile argument
        for ExecState constructors.

        * kjs/DebuggerCallFrame.cpp:
        (JSC::DebuggerCallFrame::evaluate): Removed globalThisValue
        argument for ExecState constructor.

        * kjs/ExecState.cpp:
        (JSC::ExecState::ExecState): Removed globalThisValue and
        registerFile arguments to constructors.

        * kjs/ExecState.h: Removed m_globalThisValue and
        m_registerFile data members.

        * kjs/JSGlobalObject.cpp:
        (JSC::JSGlobalObject::init): Removed globalThisValue
        argument for ExecState constructor.

        * kjs/JSGlobalObject.h:
        (JSC::JSGlobalObject::JSGlobalObject): Got rid of parameter
        for the init function.


2008-09-29  Darin Adler  <darin@apple.com>

        Reviewed by Sam Weinig.

        - https://bugs.webkit.org/show_bug.cgi?id=21214
          work on getting rid of ExecState

        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::JSDOMWindowBase::JSDOMWindowBase): Removed globalThisValue argument
        for base class constructor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37088 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Tue, 30 Sep 2008 01:03:26 +0000 (01:03 +0000)]
2008-09-29  Geoffrey Garen  <ggaren@apple.com>

        Rubber-stamped by Cameron Zwarich.

        Fixed https://bugs.webkit.org/show_bug.cgi?id=21225
        Machine::retrieveLastCaller should check for a NULL codeBlock

        In order to crash, you would need to call retrieveCaller in a situation
        where you had two host call frames in a row in the register file. I
        don't know how to make that happen, or if it's even possible, so I don't
        have a test case -- but better safe than sorry!

        * VM/Machine.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37087 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoJavaScriptCore:
ggaren@apple.com [Tue, 30 Sep 2008 00:46:25 +0000 (00:46 +0000)]

2008-09-29  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Store the callee ScopeChain, not the caller ScopeChain, in the call frame
        header. Nix the "scopeChain" local variable and ExecState::m_scopeChain, and
        access the callee ScopeChain through the call frame header instead.

        Profit: call + return are simpler, because they don't have to update the
        "scopeChain" local variable, or ExecState::m_scopeChain.

        Because CTI keeps "r" in a register, reading the callee ScopeChain relative
        to "r" can be very fast, in any cases we care to optimize.

        0% speedup on empty function call benchmark. (5.5% speedup in bytecode.)
        0% speedup on SunSpider. (7.5% speedup on controlflow-recursive.)
        2% speedup on SunSpider --v8.
        2% speedup on v8 benchmark.

        * VM/CTI.cpp: Changed scope chain access to read the scope chain from
        the call frame header. Sped up op_ret by changing it not to fuss with
        the "scopeChain" local variable or ExecState::m_scopeChain.

        * VM/CTI.h: Updated CTI trampolines not to take a ScopeChainNode*
        argument, since that's stored in the call frame header now.

        * VM/Machine.cpp: Access "scopeChain" and "codeBlock" through new helper
        functions that read from the call frame header. Updated functions operating
        on ExecState::m_callFrame to account for / take advantage of the fact that
        Exec:m_callFrame is now never NULL.

        Fixed a bug in op_construct, where it would use the caller's default
        object prototype, rather than the callee's, when constructing a new object.

        * VM/Machine.h: Made some helper functions available. Removed
        ScopeChainNode* arguments to a lot of functions, since the ScopeChainNode*
        is now stored in the call frame header.

        * VM/RegisterFile.h: Renamed "CallerScopeChain" to "ScopeChain", since
        that's what it is now.

        * kjs/DebuggerCallFrame.cpp: Updated for change to ExecState signature.

        * kjs/ExecState.cpp:
        * kjs/ExecState.h: Nixed ExecState::m_callFrame, along with the unused
        isGlobalObject function.

        * kjs/JSGlobalObject.cpp:
        * kjs/JSGlobalObject.h: Gave the global object a fake call frame in
        which to store the global scope chain, since our code now assumes that
        it can always read the scope chain out of the ExecState's call frame.


2008-09-29  Geoffrey Garen  <ggaren@apple.com>

        Not reviewed.

        Forwarding headers to fix the build.

        * ForwardingHeaders/kjs/CTI.h: Copied from ForwardingHeaders/kjs/ExecState.h.
        * ForwardingHeaders/kjs/ustring.h: Copied from ForwardingHeaders/kjs/ExecState.h.
        * ForwardingHeaders/masm: Added.
        * ForwardingHeaders/masm/X86Assembler.h: Added.
        * ForwardingHeaders/profiler: Added.
        * ForwardingHeaders/profiler/Profiler.h: Added.


2008-09-29  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Test case for which prototype is used when calling "new" across windows.

        * fast/js/construct-global-object-expected.txt: Added.
        * fast/js/construct-global-object.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37086 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Tue, 30 Sep 2008 00:42:25 +0000 (00:42 +0000)]
2008-09-29  David Hyatt  <hyatt@apple.com>

        Add the new HostWindow base class.  A HostWindow hosts a hierarchy of Widgets.  The Chrome object on Page
        now subclasses from HostWindow.  The new class will allow objects in platform/ like Widgets, Scrollbars
        and ScrollViews to talk to the HostWindow object in order to do backing store operations and invalidations.
        (Right now the platform layering is simply being violated by ScrollViews going directly to the ChromeClient.)

        Reviewed by Sam Weinig

        * WebCore.xcodeproj/project.pbxproj:
        * page/Chrome.h:
        * platform/HostWindow.h: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37085 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Reviewed by Anders Carlsson.
kdecker@apple.com [Tue, 30 Sep 2008 00:17:15 +0000 (00:17 +0000)]
    Reviewed by Anders Carlsson.

        * bridge/npapi.h: Tweaked NPNVariable enum. NPNVsupportsCocoaBool,  NPNVsupportsCarbonBool are now in the 3000 range instead of

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37084 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoWebCore:
mitz@apple.com [Mon, 29 Sep 2008 23:42:38 +0000 (23:42 +0000)]

        Reviewed by Adam Roben.

        - WebCore part of fixing <rdar://problem/6247906> REGRESSION (r19500): Crash on quit beneath CloseThemeData

        * rendering/RenderThemeWin.cpp:
        (WebCore::RenderThemeWin::setWebKitIsBeingUnloaded): Added.
        (WebCore::RenderThemeWin::~RenderThemeWin): Check if WebKit is being
        unloaded, to avoid calling uxtheme.dll functions after that library has
        been unloaded.
        * rendering/RenderThemeWin.h:


        Reviewed by Adam Roben.

        - WebKit/win part of fixing <rdar://problem/6247906> REGRESSION (r19500): Crash on quit beneath CloseThemeData

        * WebKitDLL.cpp:
        (DllMain): Call RenderThemeWin::setWebKitIsBeingUnloaded() when WebKit
        is being unloaded.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37083 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago<rdar://problem/6240743> AXLoadComplete is sent for non-top level web areas and bogus...
cfleizach@apple.com [Mon, 29 Sep 2008 23:10:03 +0000 (23:10 +0000)]
<rdar://problem/6240743> AXLoadComplete is sent for non-top level web areas and bogus web areas

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37082 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years agoVersioning.
mrowe@apple.com [Mon, 29 Sep 2008 22:50:08 +0000 (22:50 +0000)]

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37081 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago Makes the node highlight always show up when hovering a node in
timothy@apple.com [Mon, 29 Sep 2008 22:34:10 +0000 (22:34 +0000)]
    Makes the node highlight always show up when hovering a node in
        the Web Inspector now that the highlight does not scroll to reveal
        the node. Also adds a hover effect in the inspector when hovering
        causes a highlight in the page. This ties the user hovering action
        to the highlight so it is clear what causes the highlight to appear.

        Also the highlight now temporarily shows up for 2 seconds after
        selecting a node in the DOM tree. So arrowing around in the tree
        will show the node on the page, providing feedback to the user.

        Plus fixes an issue where quickly moving away from hovering
        a node would keep showing the page highlight. This was happening
        in breadcrumbs and the DOM tree.


        Reviewed by Kevin McCullough.

        * page/inspector/Console.js:
        (WebInspector.Console.prototype._mouseOverNode): Added. Used for
        hovering DOM nodes in the console.
        (WebInspector.Console.prototype._mouseOutOfNode): Ditto.
        (WebInspector.Console.prototype._formatnode): Use the new event
        listeners and add a class name to the anchor element.
        * page/inspector/ElementsPanel.js:
        (WebInspector.ElementsPanel): Add new event listeners to the
        crumbs element to do the node hovering highlight.
        * page/inspector/ElementsTreeOutline.js:
        (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
        Show the node hishlight for 2 seconds then restore the highlight
        to the current hovered node.
        (WebInspector.ElementsTreeOutline.prototype._onmousemove): Set the
        hovered node and set the hovered state on the tree element.
        (WebInspector.ElementsTreeOutline.prototype._onmouseout): Set the
        hovered node to null and removed the hovered state from the previous
        hovered tree element.
        (WebInspector.ElementsTreeElement.prototype.set/get hovered): Adds
        the hovered class to the list item.
        (WebInspector.ElementsTreeElement.prototype.onattach): Ditto.
        * page/inspector/inspector.css:
        * page/inspector/inspector.js:
        (WebInspector.set hoveredDOMNode): Pass a delay to _updateHoverHighlightSoon
        based on the showingDOMNodeHighlight property of 50ms or 500ms. This
        causes the highlight to change sooner if there is one already showing
        and appear later if there isn't one showing. This is like tooltips,
        hovering a node for 500ms will cause highlight then mousing between nodes
        will keep the highlight and change to the new node.
        (WebInspector._updateHoverHighlightSoon): Take a delay being passed in and
        always reset the timeout so continuous mousing does not keep flasshing
        the highlight on the screen.
        (WebInspector._updateHoverHighlight): Removed the alt key check and added
        the showingDOMNodeHighlight property.
        (WebInspector.documentKeyDown): Removed the alt key check.
        (WebInspector.documentKeyUp): Ditto.
        (WebInspector.reset): Clear the hoveredDOMNode.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37079 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Mon, 29 Sep 2008 22:04:38 +0000 (22:04 +0000)]
2008-09-29  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Anders Carlsson

        Fix RenderStyle leak in animation code, and assert that
        keyframe resolution in CSSStyleSelector is not going to clobber

        * css/CSSStyleSelector.cpp:
        * page/animation/KeyframeAnimation.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37078 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Chris Marrin <cmarrin@apple.com>
simon.fraser@apple.com [Mon, 29 Sep 2008 21:31:26 +0000 (21:31 +0000)]
2008-09-29  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Dave Hyatt

        Fixed https://bugs.webkit.org/show_bug.cgi?id=20995
        Rewrite keyframe resolution to be like styleForElement()

        Test: animations/lineheight-animation.html

        * css/CSSStyleSelector.cpp:
        * css/CSSStyleSelector.h:
        * page/animation/CompositeAnimation.cpp:
        * page/animation/KeyframeAnimation.cpp:
        * page/animation/KeyframeAnimation.h:
        * rendering/style/Animation.cpp:
        * rendering/style/Animation.h:
        * rendering/style/KeyframeList.cpp:
        * rendering/style/KeyframeList.h:
        * rendering/style/RenderStyle.h:
        * rendering/style/StyleRareNonInheritedData.cpp:
        * rendering/style/StyleRareNonInheritedData.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37077 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Chris Marrin <cmarrin@apple.com>
simon.fraser@apple.com [Mon, 29 Sep 2008 21:24:52 +0000 (21:24 +0000)]
2008-09-29  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Eric Seidel

        Clean up fix in PropertyWrapperGetter::equals

        Test: transitions/override-transition-crash.html

        * page/animation/AnimationBase.cpp:
        * page/animation/CompositeAnimation.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37076 268f45cc-cd09-0410-ab3c-d52691b4dbfc

12 years ago2008-09-29 Chris Marrin <cmarrin@apple.com>
simon.fraser@apple.com [Mon, 29 Sep 2008 21:21:38 +0000 (21:21 +0000)]
2008-09-29  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Eric Seidel

        Starting transition after animation, when animation
        is finished, transition is wrong.

        Test: animations/transition-and-animation-2.html

        * page/animation/AnimationBase.h:
        * page/animation/CompositeAnimation.cpp:
        * page/animation/ImplicitAnimation.cpp:
        * page/animation/ImplicitAnimation.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@37075 268f45cc-cd09-0410-ab3c-d52691b4dbfc