WebKit-https.git
13 years ago2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Thu, 19 Feb 2009 15:37:14 +0000 (15:37 +0000)]
2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Alexey Proskuryakov.

        Ignore ports on local URLs. This fixes a regression in
        fast/loader/file-URL-with-port-number.html

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::ResourceHandle::startGio):

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

13 years ago2009-02-19 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Thu, 19 Feb 2009 15:18:33 +0000 (15:18 +0000)]
2009-02-19  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Alexey Proskuryakov.

        Make setPort remove port if 0 is given to it, as promised by the
        comment in KURL's header.

        * platform/KURL.cpp:
        (WebCore::KURL::setPort):

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

13 years agoWebCore:
mitz@apple.com [Thu, 19 Feb 2009 02:04:23 +0000 (02:04 +0000)]
WebCore:

        Reviewed by Brady Eidson.

        - WebCore part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle

        The crash results from re-entry into
        CSSMutableStyleDeclaration::setCssText, which in turn is caused by
        the first style change causing a cached image to load from the memory
        cache, causing load delegate dispatch, and iChat's delegate method
        calling back into WebKit.

        The workaround is to use defer delegate callbacks for memory cache. In
        this case, deferring callbacks during image load event dispatch was
        found to be sufficient.

        The crash is a regression. See also the discussion in
        <https://bugs.webkit.org/show_bug.cgi?id=22521>.

        * WebCore.base.exp: Added
        Settings::setNeedsIChatMemoryCacheCallsQuirk().
        * dom/Document.cpp:
        (WebCore::Document::dispatchImageLoadEventsNow): If the quirk is
        enabled, defer memory cache callbacks during image load event dispatch.
        * page/Settings.cpp:
        (WebCore::Settings::Settings): Initialize
        m_needsIChatMemoryCacheCallsQuirk.
        (WebCore::Settings::setNeedsIChatMemoryCacheCallsQuirk): Added this
        setter.
        * page/Settings.h:
        (WebCore::Settings::needsIChatMemoryCacheCallsQuirk): Added this getter.

WebKit/mac:

        Reviewed by Brady Eidson.

        - WebKit part of fixing <rdar://problem/6507512> Crash in iChat at CSSStyleSelector::adjustRenderStyle

        * WebView/WebView.mm:
        (-[WebView _preferencesChangedNotification:]): Activate the WebCore
        workaround for this crash in iChat.

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

13 years ago2009-02-18 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Thu, 19 Feb 2009 01:46:58 +0000 (01:46 +0000)]
2009-02-18  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        Fix for <rdar://problem/6542390>

        There's no need to call setDefersLoading here - we already defer anything a plug-in can do that
        would cause a load to begin.

        * Plugins/WebNetscapePluginView.mm:
        (-[WebNetscapePluginView sendEvent:isDrawRect:]):

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

13 years ago2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Thu, 19 Feb 2009 00:13:03 +0000 (00:13 +0000)]
2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24012
        Convert inline-ignored-on-legend to text-only test.

        * fast/forms/inline-ignored-on-legend-expected.txt: Added.
        * fast/forms/inline-ignored-on-legend.html: Changed to text-only.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.checksum: Removed.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.png: Removed.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.txt: Removed.

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

13 years ago2009-02-18 David Levin <levin@chromium.org>
levin@chromium.org [Wed, 18 Feb 2009 23:26:35 +0000 (23:26 +0000)]
2009-02-18  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 23974: Deque::Remove would be a useful method.
        <https://bugs.webkit.org/show_bug.cgi?id=23974>

        Add Deque::remove and DequeIteratorBase<T>::operator=.

        Why was operator= added? Every concrete iterator (DequeIterator..DequeConstReverseIterator)
        was calling DequeIteratorBase::assign(), which called Base::operator=(). Base::operator=()
        was not implemented. This went unnoticed because the iterator copy code has been unused.

        * wtf/Deque.h:
        (WTF::Deque<T>::remove):
        (WTF::DequeIteratorBase<T>::removeFromIteratorsList):
        (WTF::DequeIteratorBase<T>::operator=):
        (WTF::DequeIteratorBase<T>::~DequeIteratorBase):

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

13 years agoAdd SPI to get WebKit's custom pointing-hand cursor
aroben@apple.com [Wed, 18 Feb 2009 22:59:34 +0000 (22:59 +0000)]
Add SPI to get WebKit's custom pointing-hand cursor

WebCore:

        Export WebCore::handCursor and Cursor.h

        Reviewed by John Sullivan.

        * WebCore.base.exp: Added WebCore::handCursor.
        * WebCore.xcodeproj/project.pbxproj: Made Cursor.h private.

WebKit/mac:

        Add SPI to get WebKit's custom pointing-hand cursor

        Reviewed by John Sullivan.

        * WebView/WebView.mm:
        (+[WebView _pointingHandCursor]): Added. Returns the custom
        pointing-hand cursor that WebKit uses.
        * WebView/WebViewPrivate.h: Added +_pointingHandCursor.

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

13 years ago2009-02-18 Ojan Vafai <ojan@chromium.org>
darin@chromium.org [Wed, 18 Feb 2009 22:12:02 +0000 (22:12 +0000)]
2009-02-18  Ojan Vafai  <ojan@chromium.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23992
        REGRESSION: crash on windows loading http://www.stickam.com/liveStreams.do

        Unable to reduce to a layout test.

        * page/Frame.cpp:
        (WebCore::Frame::contentRenderer):

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

13 years ago2009-02-18 Evan Stade <estade@chromium.org>
darin@chromium.org [Wed, 18 Feb 2009 22:07:10 +0000 (22:07 +0000)]
2009-02-18  Evan Stade  <estade@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23861
        Stroke font outlines on chromium linux

        TEST=LayoutTests/svg/custom/pointer-events-text.svg

        * platform/graphics/chromium/FontLinux.cpp:
        (WebCore::Font::drawGlyphs):

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

13 years ago2009-02-18 Evan Stade <estade@chromium.org>
darin@chromium.org [Wed, 18 Feb 2009 22:05:25 +0000 (22:05 +0000)]
2009-02-18  Evan Stade  <estade@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23860
        Resync some graphics/skia files with their chromium counterparts

        This comes from chromium patches <http://codereview.chromium.org/17633>
        and <http://codereview.chromium.org/17454>

        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::GraphicsContext::clipPath):
        (WebCore::GraphicsContext::fillPath):
        * platform/graphics/skia/PlatformContextSkia.cpp:
        (PlatformContextSkia::addPath):
        (PlatformContextSkia::currentPath):
        * platform/graphics/skia/PlatformContextSkia.h:

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

13 years ago2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Wed, 18 Feb 2009 21:56:51 +0000 (21:56 +0000)]
2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>

        Unreviewed.

        Build fix after r41060.

        * GNUmakefile.am:

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

13 years ago Rubber-stamped by Alexey Proskuryakov.
eric@webkit.org [Wed, 18 Feb 2009 20:19:21 +0000 (20:19 +0000)]
    Rubber-stamped by Alexey Proskuryakov.

        Add a few ignores to make-js-test-wrappers.

        * Scripts/make-js-test-wrappers:

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

13 years ago2009-02-18 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Wed, 18 Feb 2009 19:20:08 +0000 (19:20 +0000)]
2009-02-18  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=24005
        Add an include to fix Chromium build.

        * page/animation/AnimationController.cpp: Add UnusedParam.h include.

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

13 years ago2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Wed, 18 Feb 2009 19:18:28 +0000 (19:18 +0000)]
2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Freyther.

        Fix symbols.filter location, and add other missing files to the
        autotools build, so that make dist works.

        * GNUmakefile.am:

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

13 years ago2009-02-18 Zan Dobersek <zandobersek@gmail.com>
kov@webkit.org [Wed, 18 Feb 2009 16:45:35 +0000 (16:45 +0000)]
2009-02-18  Zan Dobersek  <zandobersek@gmail.com>

        Rubber-stamped by Holger Hans Peter Freyther.

        Allow POST method for local requests.

        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::ResourceHandle::startGio):

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

13 years ago2009-02-18 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Wed, 18 Feb 2009 16:36:28 +0000 (16:36 +0000)]
2009-02-18  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Holger Hans Peter Freyther.

        Use KURL in startGio instead of passing a string with the URL, so
        that we can handle removing refs and queries more elegantly. This
        is fixing more regressions that came from the curl->soup switch.

        Original work by Zan Dobersek.

        * platform/network/ResourceHandle.h:
        * platform/network/soup/ResourceHandleSoup.cpp:
        (WebCore::ResourceHandle::start):
        (WebCore::ResourceHandle::startGio):

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

13 years agoImplement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp
zecke@webkit.org [Wed, 18 Feb 2009 15:02:24 +0000 (15:02 +0000)]
Implement ResourceHandle::loadResourceSynchronously in ResourceHandleSoup.cpp

The implementation is needed to have synchronous loading, e.g. for
JavaScript interaction. This is fixing various regressions that
came from the curl->soup switch.

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

13 years ago2009-02-17 Holger Hans Peter Freyther <zecke@selfish.org>
zecke@webkit.org [Wed, 18 Feb 2009 14:58:42 +0000 (14:58 +0000)]
2009-02-17  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Alexey Proskuryakov.

        Prepend file:// to the test result filename to make
        GtkLauncher display the result page.

        * Scripts/run-webkit-tests:

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

13 years ago2009-02-18 Xan Lopez <xan@gnome.org>
kov@webkit.org [Wed, 18 Feb 2009 12:17:11 +0000 (12:17 +0000)]
2009-02-18  Xan Lopez  <xan@gnome.org>

        Reviewed by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=23989

        Based on a patch by Bo Yang  <techrazy.yang@gmail.com>

        Make the cursor cache global, that's all we really need and
        otherwise we can miss cursor transitions in some situations (see
        the bug for one testcase). Also remove some now useless code.

        * platform/Widget.h:
        * platform/gtk/WidgetGtk.cpp:
        (WebCore::Widget::Widget):
        (WebCore::Widget::~Widget):
        (WebCore::Widget::setCursor):

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

13 years ago Windows build fix
aroben@apple.com [Wed, 18 Feb 2009 05:48:20 +0000 (05:48 +0000)]
    Windows build fix

        * loader/FrameLoader.cpp:
        (WebCore::toPlugInElement): Don't rely on #if being processed before
        ASSERT.

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

13 years ago2009-02-17 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Wed, 18 Feb 2009 04:17:47 +0000 (04:17 +0000)]
2009-02-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Fixed failure in js1_5/Regress/regress-168347.js, as seen on the Oliver
        bot.

        Technically, both behaviors are OK, but we might as well keep this test
        passing.

        * runtime/FunctionPrototype.cpp:
        (JSC::insertSemicolonIfNeeded): No need to add a trailing semicolon
        after a trailing '}', since '}' ends a block, indicating the end of a
        statement.

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

13 years ago2009-02-17 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Wed, 18 Feb 2009 04:03:23 +0000 (04:03 +0000)]
2009-02-17  Geoffrey Garen  <ggaren@apple.com>

        Build fix.

        * runtime/FunctionPrototype.cpp:

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

13 years agoAdd assertion to guard against oversized pc relative calls.
oliver@apple.com [Wed, 18 Feb 2009 03:36:03 +0000 (03:36 +0000)]
Add assertion to guard against oversized pc relative calls.

Reviewed by Geoff Garen

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

13 years ago2009-02-17 David Levin <levin@chromium.org>
levin@chromium.org [Wed, 18 Feb 2009 00:50:04 +0000 (00:50 +0000)]
2009-02-17  David Levin  <levin@chromium.org>

        Reviewed by Alexey Proskuryakov.

        Bug 23977: Unnecessary timer related headers in files.
        <https://bugs.webkit.org/show_bug.cgi?id=23977>

        No observable change in behavior, so no test.

        * dom/Document.cpp:
        * dom/WorkerRunLoop.cpp:
        * dom/WorkerRunLoop.h:

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

13 years agoWebCore:
dimich@chromium.org [Wed, 18 Feb 2009 00:21:21 +0000 (00:21 +0000)]
WebCore:
2009-02-17  Peter Abrahamsen  <rainhead@gmail.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=23958
        <rdar://problem/6587815>

        Updated XMLHttpRequest with new header names from the latest Access
        Control draft: http://www.w3.org/TR/access-control/
        - Access-Control-Origin becomes Access-Control-Allow-Origin
        - Access-Control-Credentials becomes Access-Control-Allow-Credentials

        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::accessControlCheck):

LayoutTests:
2009-02-17  Peter Abrahamsen  <rainhead@gmail.com>

        Reviewed by Sam Weinig.

        https://bugs.webkit.org/show_bug.cgi?id=23958
        <rdar://problem/6587815>

        Updated XMLHttpRequests tests to match the newest Access Control draft.

        * http/tests/security/originHeader/resources/print-origin.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-allow-access-control-origin-header.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-allow-print-headers.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-allow-star.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-allow.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-get-fail-non-simple.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-non-get-allow.cgi:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-invalidation.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache-timeout.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-preflight-cache.php:
        * http/tests/xmlhttprequest/resources/access-control-basic-whitelist-response-headers.cgi:

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

13 years agoJavaScriptCore:
ggaren@apple.com [Wed, 18 Feb 2009 00:14:30 +0000 (00:14 +0000)]
JavaScriptCore:

2009-02-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Fixed <rdar://problem/6595040> REGRESSION: http://www.amnestyusa.org/
        fails to load.

        amnestyusa.org uses the Optimist JavaScript library, which adds event
        listeners by concatenating string-ified functions. This is only sure to
        be syntactically valid if the string-ified functions end in semicolons.

        * parser/Lexer.cpp:
        (JSC::Lexer::isWhiteSpace):
        * parser/Lexer.h:
        (JSC::Lexer::isWhiteSpace):
        (JSC::Lexer::isLineTerminator): Added some helper functions for examining
        whitespace.

        * runtime/FunctionPrototype.cpp:
        (JSC::appendSemicolonIfNeeded):
        (JSC::functionProtoFuncToString): When string-ifying a function, insert
        a semicolon in the last non-whitespace position, if one doesn't already exist.

LayoutTests:

2009-02-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Test for <rdar://problem/6595040> REGRESSION: http://www.amnestyusa.org/
        fails to load.

        * fast/js/function-toString-semicolon-insertion-expected.txt: Added.
        * fast/js/function-toString-semicolon-insertion.html: Added.
        * fast/js/resources/function-toString-semicolon-insertion.js: Added.
        (compileAndSerialize):

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

13 years agowx build fix. Add missing constructor used for empty values.
kevino@webkit.org [Tue, 17 Feb 2009 22:59:50 +0000 (22:59 +0000)]
wx build fix. Add missing constructor used for empty values.

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

13 years ago2009-02-17 Antti Koivisto <antti@apple.com>
antti@apple.com [Tue, 17 Feb 2009 22:16:18 +0000 (22:16 +0000)]
2009-02-17  Antti Koivisto  <antti@apple.com>

        Reviewed by Dave Kilzer.

        <rdar://problem/6592446> dynamically updating page doesn't seem to draw when updated

        Need update after callback.

        * bindings/js/JSCustomPositionCallback.cpp:
        (WebCore::JSCustomPositionCallback::handleEvent):
        * bindings/js/JSCustomPositionErrorCallback.cpp:
        (WebCore::JSCustomPositionErrorCallback::handleEvent):

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

13 years ago2009-02-17 Eric Carlson <eric.carlson@apple.com>
eric.carlson@apple.com [Tue, 17 Feb 2009 20:43:06 +0000 (20:43 +0000)]
2009-02-17  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Antti Koivisto.

        https://bugs.webkit.org/show_bug.cgi?id=23917
        Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
        element.

        * DerivedSources.make: add media element proxy exports to .exp file when feature is defined.

        * WebCore.VideoProxy.exp: New, define the informal protocol exported by a media element proxy.

        * WebCore.xcodeproj/project.pbxproj: Add MediaPlayerProxy.h.

        * html/HTMLMediaElement.cpp:
        (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_needWidgetUpdate.
        (WebCore::HTMLMediaElement::attributeChanged): Don't detach+attach when PLUGIN_PROXY_FOR_VIDEO, the
        proxy plug-in handles the poster frame.
        (WebCore::HTMLMediaElement::rendererIsNeeded): New logic for PLUGIN_PROXY_FOR_VIDEO.
        (WebCore::HTMLMediaElement::createRenderer): Create RenderPartObject when PLUGIN_PROXY_FOR_VIDEO.
        (WebCore::HTMLMediaElement::attach): Set m_needWidgetUpdate when PLUGIN_PROXY_FOR_VIDEO
        (WebCore::HTMLMediaElement::load): Don't reallocate MediaPlayer when PLUGIN_PROXY_FOR_VIDEO, we keep the
        same plug-in for the life of the element.
        (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged): update m_networkState when media player
        network state changes to EMPTY, otherwise we can get out of sync with engine.
        (WebCore::HTMLMediaElement::defaultEventHandler): pass event to widget when PLUGIN_PROXY_FOR_VIDEO
        (WebCore::HTMLMediaElement::deliverNotification): New, deliver notification from proxy plug-in to
        media player.
        (WebCore::HTMLMediaElement::setMediaPlayerProxy): New, pass proxy object to media player.
        (WebCore::HTMLMediaElement::initialURL): New, return the url from the "src" attr or the appropriate
        <source> element to be used as the initial url for the proxy.
        (WebCore::HTMLMediaElement::finishParsingChildren): New, allocate MediaPlayer and update widget.
        * html/HTMLMediaElement.h: Declare new methods for proxy, add m_needWidgetUpdate.
        (WebCore::HTMLMediaElement::setNeedWidgetUpdate):

        * html/HTMLVideoElement.cpp:
        (WebCore::HTMLVideoElement::attach): Poster image is handled by proxy when PLUGIN_PROXY_FOR_VIDEO.
        (WebCore::HTMLVideoElement::parseMappedAttribute): Ditto.
        * html/HTMLVideoElement.h:

        * loader/FrameLoader.cpp:
        (WebCore::toPlugInElement): Allow cast if element is <video> or <audio>

        * platform/graphics/MediaPlayer.cpp:
        (WebCore::MediaPlayer::MediaPlayer): Remove white space.
        (WebCore::MediaPlayer::setPoster): New, forward call to private player.
        (WebCore::MediaPlayer::deliverNotification): Ditto.
        (WebCore::MediaPlayer::setMediaPlayerProxy): Ditto.
        * platform/graphics/MediaPlayer.h:
        (WebCore::MediaPlayer::mediaPlayerClient):

        * platform/graphics/mac/MediaPlayerProxy.h: New, defines media player proxy interface.

        * rendering/RenderPart.cpp:
        (WebCore::RenderPart::RenderPart): Change constructor to take Element* instead of Node* as a
        non-element node doesn't need a renderer
        * rendering/RenderPart.h: Ditto.

        * rendering/RenderPartObject.cpp:
        (WebCore::RenderPartObject::RenderPartObject): Ditto.
        (WebCore::RenderPartObject::updateWidget): Package params for proxy plug-in when element is
        <video> or <audio>.
        * rendering/RenderPartObject.h:

2009-02-17  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Antti Koivisto.

        https://bugs.webkit.org/show_bug.cgi?id=23917
        Allow a WebKit plug-in to act as a proxy for the <audio> and <video>
        element.

        * Plugins/WebPluginContainerPrivate.h:
        * Plugins/WebPluginController.mm:
        (mediaProxyClient): New, cast to HTMLMediaElement if it is a video or audio element
        (-[WebPluginController _setMediaPlayerProxy:forElement:]): New, pass proxy to HTMLMediaElement
        (-[WebPluginController _postMediaPlayerNotification:forElement:]): New, deliver event to HTMLMediaElement

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::createPlugin): Don't allow a media player proxy plug-in to be chosen by
        file extension, only want a match for the new MIME type proxy plug-ins should have.

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

13 years agoWebCore:
hyatt@apple.com [Tue, 17 Feb 2009 19:33:16 +0000 (19:33 +0000)]
WebCore:

2009-02-17  David Hyatt  <hyatt@apple.com>

        Reviewed by Eric Seidel

        Fix for https://bugs.webkit.org/show_bug.cgi?id=23985

        Don't allow legends to be anything but display:block.

        Added fast/forms/inline-ignored-on-legend.html

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCore.xcodeproj/project.pbxproj:
        * WebCoreSources.bkl:
        * css/html4.css:
        * html/HTMLLegendElement.cpp:
        * html/HTMLLegendElement.h:
        * rendering/RenderLegend.cpp: Removed.
        * rendering/RenderLegend.h: Removed.
        * wml/WMLInsertedLegendElement.cpp:
        * wml/WMLInsertedLegendElement.h:

LayoutTests:

2009-02-17  David Hyatt  <hyatt@apple.com>

        Reviewed by Eric Seidel

        Fix for https://bugs.webkit.org/show_bug.cgi?id=23985

        Don't allow legends to be anything but display:block.

        * fast/forms/inline-ignored-on-legend.html: Added.
        * platform/mac/fast/block/basic/fieldset-stretch-to-legend-expected.txt:
        * platform/mac/fast/borders/fieldsetBorderRadius-expected.txt:
        * platform/mac/fast/forms/006-expected.txt:
        * platform/mac/fast/forms/007-expected.txt:
        * platform/mac/fast/forms/fieldset-align-expected.txt:
        * platform/mac/fast/forms/float-before-fieldset-expected.txt:
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.checksum: Added.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.png: Added.
        * platform/mac/fast/forms/inline-ignored-on-legend-expected.txt: Added.
        * platform/mac/fast/invalid/residual-style-expected.txt:
        * platform/mac/svg/custom/inline-svg-in-xhtml-expected.txt:

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

13 years agoReviewed by Simon Fraser.
brettw@chromium.org [Tue, 17 Feb 2009 18:14:35 +0000 (18:14 +0000)]
Reviewed by Simon Fraser.

https://bugs.webkit.org/attachment.cgi?id=27666
Fix Chromium build build: forgotten include in RenderObject, sync
RenderTheme to the recent changes in RenderObject.

* rendering/RenderObject.cpp:
* rendering/RenderThemeChromiumMac.mm:
  (WebCore::RenderThemeChromiumMac::updatePressedState):

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

13 years ago2009-02-17 Xan Lopez <xan@gnome.org>
kov@webkit.org [Tue, 17 Feb 2009 16:52:17 +0000 (16:52 +0000)]
2009-02-17  Xan Lopez  <xan@gnome.org>

        Rubber-stamped by Alexey Proskuryakov.

        Restoring change landed in r40715, which was accidentally undone
        by r40918.

        * webkit/webkitwebframe.cpp:

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

13 years ago2009-02-17 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Tue, 17 Feb 2009 12:43:58 +0000 (12:43 +0000)]
2009-02-17  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Alexey Proskuryakov.

        https://bugs.webkit.org/show_bug.cgi?id=23939
        Release build being built with debugging symbols

        * configure.ac: Revert change done in revision 40790, since we
        already have a AC_PROG_CXX macro call as part of WEBKIT_INIT

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

13 years ago2009-02-17 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Tue, 17 Feb 2009 12:32:10 +0000 (12:32 +0000)]
2009-02-17  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=22966
        crash when destroying a webview that opened a page containing <script>
        tags

        Fix m_group being set to 0 instead of to m_singlePageGroup when
        GroupName is set to empty

        * page/Page.cpp:
        (WebCore::Page::setGroupName):

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

13 years agoRoll out r41022 as it breaks qt and gtk builds
oliver@apple.com [Tue, 17 Feb 2009 03:38:42 +0000 (03:38 +0000)]
Roll out r41022 as it breaks qt and gtk builds

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

13 years ago2009-02-16 Beth Dakin <bdakin@apple.com>
bdakin@apple.com [Tue, 17 Feb 2009 03:38:33 +0000 (03:38 +0000)]
2009-02-16  Beth Dakin  <bdakin@apple.com>

        Reviewed by Sam Weinig.

        Fix for <rdar://problem/6386623>

        I made m_numParsedProperties and m_maxParsedProperties unsigned
        instead of int, and then added an early return from addPropery() if
        m_maxParsedProperties exceeds the max value.

        * css/CSSParser.cpp:
        (WebCore::CSSParser::addProperty):
        (WebCore::CSSParser::rollbackLastProperties):
        (WebCore::CSSParser::clearProperties):
        (WebCore::CSSParser::createFontFaceRule):
        (WebCore::CSSParser::deleteFontFaceOnlyValues):
        * css/CSSParser.h:

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

13 years agoWebCore:
justin.garcia@apple.com [Tue, 17 Feb 2009 03:36:16 +0000 (03:36 +0000)]
WebCore:

2009-02-16  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=16309
        HTML5: The third execCommand argument for insert{un}orderedlist should be ignored

        When we originally implemented this command, MSDN documentation said that IE set the
        id attribute of inserted lists to the third argument to execCommand, but IE doesn't
        do this nor do any other browsers.

        * editing/EditorCommand.cpp:
        (WebCore::executeInsertOrderedList):
        (WebCore::executeInsertUnorderedList):
        * editing/IndentOutdentCommand.cpp:
        (WebCore::IndentOutdentCommand::outdentParagraph):
        * editing/InsertListCommand.cpp:
        (WebCore::InsertListCommand::insertList):
        (WebCore::InsertListCommand::InsertListCommand):
        (WebCore::InsertListCommand::doApply):
        * editing/InsertListCommand.h:
        (WebCore::InsertListCommand::create):

LayoutTests:

2009-02-16  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=16309
        HTML5: The third execCommand argument for insert{un}orderedlist should be ignored

        * editing/execCommand/insert-list-with-id-expected.txt: Added.
        * editing/execCommand/insert-list-with-id.html:
        * platform/mac/editing/execCommand/insert-list-with-id-expected.checksum: Removed.
        * platform/mac/editing/execCommand/insert-list-with-id-expected.png: Removed.
        * platform/mac/editing/execCommand/insert-list-with-id-expected.txt: Removed.

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

13 years ago2009-02-16 Gustavo Noronha Silva <gns@gnome.org>
kov@webkit.org [Tue, 17 Feb 2009 02:59:29 +0000 (02:59 +0000)]
2009-02-16  Gustavo Noronha Silva  <gns@gnome.org>

        Reviewed by Adam Roben

        Actually use the installation prefix defined in WebKitInstallationPrefix,
        in autotools builds.

        * Scripts/webkitdirs.pm:

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

13 years agoJavaScriptCore:
weinig@apple.com [Tue, 17 Feb 2009 00:40:39 +0000 (00:40 +0000)]
JavaScriptCore:

2009-02-16  Sam Weinig  <sam@webkit.org>

        Reviewed by Geoffrey Garen.

        Fix for <rdar://problem/6468156>
        REGRESSION (r36779): Adding link, images, flash in TinyMCE blocks entire page (21382)

        No performance regression.

        * runtime/Arguments.cpp:
        (JSC::Arguments::fillArgList): Add codepath for when the "length" property has been
        overridden.

LayoutTests:

2009-02-16  Sam Weinig  <sam@webkit.org>

        Reviewed by Geoffrey Garen.

        Add tests for <rdar://problem/6468156>
        REGRESSION (r36779): Adding link, images, flash in TinyMCE blocks entire page (21382)

        * fast/js/function-apply-expected.txt:
        * fast/js/resources/function-apply.js: Add cases covering setting arugments.length and
        Array.length explicitly or implicitly using Array.prototype.unshift.

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

13 years agoWebCore:
mitz@apple.com [Mon, 16 Feb 2009 23:56:23 +0000 (23:56 +0000)]
WebCore:

        Reviewed by Geoffrey Garen.

        - fix <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse

        Test: platform/mac/fast/events/pointer-events-dashboard.html

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty): Do not apply the
        pointer-events property in Dashboard backwards compatibility mode,
        in order to work around misuse of that property by the Stocks widget.

LayoutTests:

        Reviewed by Geoffrey Garen.

        - test for <rdar://problem/6561077> REGRESSION (r39634): Unable to select an item in stocks widget with the mouse

        * platform/mac/fast/events/pointer-events-dashboard-expected.checksum: Added.
        * platform/mac/fast/events/pointer-events-dashboard-expected.png: Added.
        * platform/mac/fast/events/pointer-events-dashboard-expected.txt: Added.
        * platform/mac/fast/events/pointer-events-dashboard.html: Copied from LayoutTests/fast/events/pointer-events.html.

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

13 years agoWebCore:
justin.garcia@apple.com [Mon, 16 Feb 2009 23:33:42 +0000 (23:33 +0000)]
WebCore:

2009-02-16  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=15381
        execCommand justify modifies the contentEditable node

        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Avoid modifying not just
        the body element, but any root editable element.

LayoutTests:

2009-02-16  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=15381
        execCommand justify modifies the contentEditable node

        * editing/execCommand/15381-expected.txt: Added.
        * editing/execCommand/15381.html: Added.

        Made this test cross platform and changed it to reflect the fix:
        * editing/execCommand/5062376-expected.txt: Added.
        * editing/execCommand/5062376.html:
        * platform/mac/editing/execCommand/5062376-expected.checksum: Removed.
        * platform/mac/editing/execCommand/5062376-expected.png: Removed.
        * platform/mac/editing/execCommand/5062376-expected.txt: Removed.

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

13 years agoBug 23979: AX: alt tag not returned for <input type="image">
cfleizach@apple.com [Mon, 16 Feb 2009 23:19:43 +0000 (23:19 +0000)]
Bug 23979: AX: alt tag not returned for <input type="image">
https://bugs.webkit.org/show_bug.cgi?id=23979

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

13 years agoBuild fix.
mrowe@apple.com [Mon, 16 Feb 2009 22:23:03 +0000 (22:23 +0000)]
Build fix.

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

13 years agoBug 23787: Allow JIT to generate SSE2 code if using GCC
oliver@apple.com [Mon, 16 Feb 2009 22:15:40 +0000 (22:15 +0000)]
Bug 23787: Allow JIT to generate SSE2 code if using GCC
<https://bugs.webkit.org/show_bug.cgi?id=23787>

Provided by Csaba Osztrogonac
Reviewed by Oliver Hunt

GCC version of the cpuid check.

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

13 years agoReviewed by Kevin Ollivier.
kevino@webkit.org [Mon, 16 Feb 2009 22:06:47 +0000 (22:06 +0000)]
Reviewed by Kevin Ollivier.

The ref data is not properly set unless we use the CreateMatrix function.

https://bugs.webkit.org/show_bug.cgi?id=23978

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

13 years ago Reviewed by John Sullivan.
mitz@apple.com [Mon, 16 Feb 2009 21:57:22 +0000 (21:57 +0000)]
    Reviewed by John Sullivan.

        - fix <rdar://problem/6516829> FontPlatformData constructor passes NULL to CTFontCopyGraphicsFont and CTFontGetPlatformFont

        * platform/graphics/FontCache.cpp:
        (WebCore::FontDataCacheKeyTraits::emptyValue): Changed to use the
        FontPlatformData(float, bool, bool) constructor.
        * platform/graphics/mac/FontCacheMac.mm:
        (WebCore::FontCache::createFontPlatformData): Changed to pass a valid
        NSFont to the FontPlatformData constructor, instead of implicitly
        passing 0 and then calling setFont().
        * platform/graphics/mac/FontPlatformData.h: Made the NSFont parameter
        of the constructor mandatory.

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

13 years ago2009-02-16 Simon Hausmann <simon.hausmann@nokia.com>
hausmann@webkit.org [Mon, 16 Feb 2009 10:57:46 +0000 (10:57 +0000)]
2009-02-16  Simon Hausmann  <simon.hausmann@nokia.com>

        Reviewed by Tor Arne Vestbø.

        Avoid loading plugins when they're disabled in the settings.

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

13 years ago Move duplicate caretWidth constants to RenderObject.h
ddkilzer@apple.com [Sun, 15 Feb 2009 21:39:47 +0000 (21:39 +0000)]
    Move duplicate caretWidth constants to RenderObject.h

        Reviewed by Dan Bernstein.

        No test since no change in behavior.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::localCaretRect): Removed caretWidth.
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::localCaretRect): Ditto.
        * rendering/RenderObject.h: Added caretWidth definition.
        * rendering/RenderText.cpp:
        (WebCore::RenderText::localCaretRect): Removed caretWidth.

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

13 years ago2009-02-14 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Sat, 14 Feb 2009 16:39:31 +0000 (16:39 +0000)]
2009-02-14  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23955
        V8HTMLPlugInCustom returns undefined, which fools interceptors.

        * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
        (WebCore::NAMED_PROPERTY_GETTER): Use deferToInterceptor() return value.
        (WebCore::NAMED_PROPERTY_SETTER): Ditto.
        (WebCore::INDEXED_PROPERTY_GETTER): Ditto.
        (WebCore::INDEXED_PROPERTY_SETTER): Ditto.

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

13 years ago2009-02-13 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Sat, 14 Feb 2009 02:17:10 +0000 (02:17 +0000)]
2009-02-13  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23954
        Add V8 custom bindings for CanvasRenderingContext2D.

        * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Added.
        (WebCore::toV8):
        (WebCore::toCanvasStyle):
        (WebCore::ACCESSOR_GETTER):
        (WebCore::ACCESSOR_SETTER):

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

13 years ago2009-02-13 Adam Treat <adam.treat@torchmobile.com>
treat@webkit.org [Sat, 14 Feb 2009 01:48:09 +0000 (01:48 +0000)]
2009-02-13  Adam Treat  <adam.treat@torchmobile.com>

        Reviewed by George Staikos.

        https://bugs.webkit.org/show_bug.cgi?id=23960
        Crash Fix.

        Don't depend on 'initializeThreading()' to come before a call to 'isMainThread()'
        as QtWebKit only calls 'initializeThreading()' during QWebPage construction.

        A client app may well make a call to QWebSettings::iconForUrl() for instance
        before creating a QWebPage and that call to QWebSettings triggers an
        ASSERT(isMainThread()) deep within WebCore.

        * wtf/ThreadingQt.cpp:
        (WTF::isMainThread):

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

13 years ago2009-02-13 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Sat, 14 Feb 2009 01:00:58 +0000 (01:00 +0000)]
2009-02-13  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Darin Adler.

        Some data in the instruction stream is potentially uninitialized - fix this.

        Change the OperandTypes constructor so that uninitialized memory in the int
        is zeroed, and modify the Instruction constructor taking an Opcode so that
        if !HAVE(COMPUTED_GOTO) (i.e. when Opcode is an enum, and is potentially only
        a byte) it zeros the Instruction first before writing the opcode.

        * bytecode/Instruction.h:
        (JSC::Instruction::Instruction):
        * parser/ResultType.h:
        (JSC::OperandTypes::OperandTypes):

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

13 years agoFix failing layout pixel test so bdash doesn't come to my house in the middle of...
hyatt@apple.com [Sat, 14 Feb 2009 00:46:11 +0000 (00:46 +0000)]
Fix failing layout pixel test so bdash doesn't come to my house in the middle of the night and beat me up.

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

13 years agoFix ChangeLog.
andersca@apple.com [Sat, 14 Feb 2009 00:41:01 +0000 (00:41 +0000)]
Fix ChangeLog.

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

13 years ago2009-02-13 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 14 Feb 2009 00:35:45 +0000 (00:35 +0000)]
2009-02-13  Anders Carlsson  <andersca@apple.com>

        Reviewed by Darin Adler.

        <rdar://problem/6583187>

        * page/NavigatorBase.cpp:
        Handle PPC64 and X86_64 as well.

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

13 years ago2009-02-13 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 14 Feb 2009 00:04:32 +0000 (00:04 +0000)]
2009-02-13  Anders Carlsson  <andersca@apple.com>

        Reviewed by Kevin Decker.

        <rdar://problem/6584834> ESPN radio live stream link hangs Safari

        When a plug-in invokes JavaScript code that will destroy the plug-in, we need to
        defer destruction until we're done executing the script.

        * Plugins/Hosted/NetscapePluginHostProxy.mm:
        (WebKit::PluginDestroyDeferrer::PluginDestroyDeferrer):
        (WebKit::PluginDestroyDeferrer::~PluginDestroyDeferrer):
        Add a simple RAII object for deferring destruction of the plug-in instance.

        (WKPCEvaluate):
        (WKPCInvoke):
        (WKPCInvokeDefault):
        (WKPCConstruct):
        (WKPCGetProperty):
        (WKPCSetProperty):
        (WKPCRemoveProperty):
        (WKPCHasProperty):
        (WKPCHasMethod):
        Use the PluginDestroyDeferrer.

        * Plugins/Hosted/NetscapePluginInstanceProxy.h:
        (WebKit::NetscapePluginInstanceProxy::pluginID):
        Assert that the plug-in ID is not 0 here.

        * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
        (WebKit::NetscapePluginInstanceProxy::NetscapePluginInstanceProxy):
        Initialize the call depth.

        (WebKit::NetscapePluginInstanceProxy::~NetscapePluginInstanceProxy):
        Set the plug-in ID to 0 to aid debugging.

        (WebKit::NetscapePluginInstanceProxy::willCallPluginFunction):
        Increment the call depth.

        (WebKit::NetscapePluginInstanceProxy::didCallPluginFunction):
        Decrement the call depth, if it's 0 and we should stop the plug-in, do so.

        (WebKit::NetscapePluginInstanceProxy::shouldStop):
        If we're called this with a non-zero call depth, set shouldStopSoon to true.

        * Plugins/Hosted/WebHostedNetscapePluginView.mm:
        (-[WebHostedNetscapePluginView shouldStop]):
        Call the proxy.

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

13 years ago2009-02-13 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sat, 14 Feb 2009 00:01:27 +0000 (00:01 +0000)]
2009-02-13  Geoffrey Garen  <ggaren@apple.com>

        Build fix for non_JIT platforms.

        * bytecode/CodeBlock.h:
        (JSC::CodeBlock::setIsNumericCompareFunction):
        (JSC::CodeBlock::isNumericCompareFunction):

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

13 years ago2009-02-13 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 13 Feb 2009 23:56:43 +0000 (23:56 +0000)]
2009-02-13  Darin Adler  <darin@apple.com>

        Reviewed by Mark Rowe.

        Fix broken tokenizer regression test that reflected a lifetime bug
        in the document.write optimization. The test failure was trivial to
        reproduce in COLLECT_ON_EVERY_ALLOCATION mode.

        * bindings/js/JSHTMLDocumentCustom.cpp:
        (WebCore::documentWrite): Convert strings to String rather than passing
        the pointer and length to SegmentedString. The optimization is thus
        mostly gone. However, there are two ways to bring it back: 1) Apply
        the patch that makes UString and String share the same buffers.
        2) Add a UString feature to SegmentedString; simple to do but might
        risk slowing down normal document parsing.

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

13 years agoJavaScriptCore:
ggaren@apple.com [Fri, 13 Feb 2009 23:28:04 +0000 (23:28 +0000)]
JavaScriptCore:

2009-02-13  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Darin Adler.

        Fixed <rdar://problem/6584057> Optimize sort by JS numeric comparison
        function not to run the comparison function

        * bytecode/CodeBlock.cpp:
        (JSC::CodeBlock::CodeBlock):
        * bytecode/CodeBlock.h:
        (JSC::CodeBlock::setIsNumericCompareFunction):
        (JSC::CodeBlock::isNumericCompareFunction): Added the ability to track
        whether a CodeBlock performs a sort-like numeric comparison.

        * bytecompiler/BytecodeGenerator.cpp:
        (JSC::BytecodeGenerator::generate): Set the isNumericCompareFunction bit
        after compiling.

        * parser/Nodes.cpp:
        (JSC::FunctionBodyNode::emitBytecode): Fixed a bug that caused us to
        codegen an extra return at the end of all functions (eek!), since this
        made it harder / weirder to detect the numeric comparison pattern in
        bytecode.

        * runtime/ArrayPrototype.cpp:
        (JSC::arrayProtoFuncSort): Use the isNumericCompareFunction bit to do
        a faster sort if we can.

        * runtime/FunctionConstructor.cpp:
        (JSC::extractFunctionBody):
        (JSC::constructFunction):
        * runtime/FunctionConstructor.h: Renamed and exported extractFunctionBody for
        use in initializing lazyNumericCompareFunction.

        * runtime/JSArray.cpp:
        (JSC::compareNumbersForQSort):
        (JSC::compareByStringPairForQSort):
        (JSC::JSArray::sortNumeric):
        (JSC::JSArray::sort):
        * runtime/JSArray.h: Added a fast numeric sort. Renamed ArrayQSortPair
        to be more specific since we do different kinds of qsort now.

        * runtime/JSGlobalData.cpp:
        (JSC::JSGlobalData::JSGlobalData):
        (JSC::JSGlobalData::numericCompareFunction):
        (JSC::JSGlobalData::ClientData::~ClientData):
        * runtime/JSGlobalData.h: Added helper data for computing the
        isNumericCompareFunction bit.

LayoutTests:

2009-02-13  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Sam Weinig.

        Added a test for an edge case in <rdar://problem/6584057>.

        * fast/js/resources/sort-non-numbers.js: Added.
        * fast/js/sort-non-numbers.html: Added.
        * fast/js/sort-non-numbers-expected.txt: Added.

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

13 years ago2009-02-13 Adam Treat <adam.treat@torchmobile.com>
treat@webkit.org [Fri, 13 Feb 2009 22:49:43 +0000 (22:49 +0000)]
2009-02-13  Adam Treat  <adam.treat@torchmobile.com>

        Caught by Darin Adler.

        No reason to check m_tokenizer twice for 0 in a row.

        * dom/Document.cpp:
        (WebCore::Document::write):

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

13 years ago2009-02-13 Lyon Chen <lyon.chen@torchmobile.com>
treat@webkit.org [Fri, 13 Feb 2009 21:49:04 +0000 (21:49 +0000)]
2009-02-13  Lyon Chen  <lyon.chen@torchmobile.com>

        Reviewed by Dave Hyatt.

        Take into account y() + height() when calculating getLowerRightCorner.

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::getLowerRightCorner):

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

13 years ago2009-02-13 Antti Koivisto <antti@apple.com>
antti@apple.com [Fri, 13 Feb 2009 21:17:46 +0000 (21:17 +0000)]
2009-02-13  Antti Koivisto  <antti@apple.com>

        Reviewed by Dave Hyatt.

        Most of this code was in RenderBox, restore the copyright lines.

        * rendering/RenderBoxModelObject.cpp:
        * rendering/RenderBoxModelObject.h:

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

13 years ago2009-02-13 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 21:07:08 +0000 (21:07 +0000)]
2009-02-13  David Hyatt  <hyatt@apple.com>

        Get rid of printBoxDecorations, since it is dead code.

        Reviewed by Dan Bernstein

        * rendering/RenderObject.h:

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

13 years ago2009-02-13 Adam Treat <adam.treat@torchmobile.com>
treat@webkit.org [Fri, 13 Feb 2009 21:01:31 +0000 (21:01 +0000)]
2009-02-13  Adam Treat  <adam.treat@torchmobile.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=23952
        Add Document::write overload which takes a SegmentedString since this
        is what the tokenizer expects anyway.  Modified JSHTMLDocument so it once
        again calls Document::write instead of injecting the string directly into
        the tokenizer.  This ensures that all document.write's are funneled through
        one method again, but should still be just as fast for JSHTMLDocumentCustom.

        * bindings/js/JSHTMLDocumentCustom.cpp:
        (WebCore::documentWrite):
        * dom/Document.cpp:
        (WebCore::Document::write):
        * dom/Document.h:

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

13 years ago2009-02-13 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 20:38:21 +0000 (20:38 +0000)]
2009-02-13  David Hyatt  <hyatt@apple.com>

        Reviewed by Simon Fraser

        Remove updateWidgetPosition on RenderObject.  Change RenderView's set of widgets
        to have a tighter type: RenderWidget instead of RenderObject.  Devirtualize
        updateWidgetPosition, since all RenderWidgets (except for applets) are now
        RenderParts also.

        * rendering/RenderObject.cpp:
        * rendering/RenderObject.h:
        * rendering/RenderPart.cpp:
        * rendering/RenderPart.h:
        * rendering/RenderView.cpp:
        (WebCore::RenderView::updateWidgetPositions):
        (WebCore::RenderView::addWidget):
        (WebCore::RenderView::removeWidget):
        * rendering/RenderView.h:
        * rendering/RenderWidget.cpp:
        (WebCore::RenderWidget::updateWidgetPosition):
        * rendering/RenderWidget.h:

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

13 years ago2009-02-13 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 13 Feb 2009 20:11:09 +0000 (20:11 +0000)]
2009-02-13  Darin Adler  <darin@apple.com>

        * StringsNotToBeLocalized.txt: Updated for recent changes.

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

13 years ago2009-02-13 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 20:04:11 +0000 (20:04 +0000)]
2009-02-13  David Hyatt  <hyatt@apple.com>

        Reviewed by Eric Seidel

        Remove isEditable() on RenderObject.  It is dead code.

        * rendering/RenderObject.cpp:
        * rendering/RenderObject.h:

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

13 years ago2009-02-13 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 19:49:42 +0000 (19:49 +0000)]
2009-02-13  David Hyatt  <hyatt@apple.com>

        Reviewed by Eric Seidel

        Add isTextControl() to RenderObject.  Patch call sites thats asked isTextField() || isTextArea() to just use
        isTextControl() instead.

        Add a toRenderTextControl converter for doing checked casting to RenderTextControls.

        * dom/Document.cpp:
        (WebCore::Document::setFocusedNode):
        * dom/InputElement.cpp:
        (WebCore::InputElement::updateSelectionRange):
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::ReplacementFragment):
        * editing/TextIterator.cpp:
        (WebCore::TextIterator::handleReplacedElement):
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::selectionStart):
        (WebCore::HTMLInputElement::selectionEnd):
        (WebCore::HTMLInputElement::setSelectionStart):
        (WebCore::HTMLInputElement::setSelectionEnd):
        (WebCore::HTMLInputElement::select):
        (WebCore::HTMLInputElement::defaultEventHandler):
        (WebCore::HTMLInputElement::selection):
        * html/HTMLTextAreaElement.cpp:
        (WebCore::HTMLTextAreaElement::selectionStart):
        (WebCore::HTMLTextAreaElement::selectionEnd):
        (WebCore::HTMLTextAreaElement::setSelectionStart):
        (WebCore::HTMLTextAreaElement::setSelectionEnd):
        (WebCore::HTMLTextAreaElement::select):
        (WebCore::HTMLTextAreaElement::setSelectionRange):
        (WebCore::HTMLTextAreaElement::appendFormData):
        (WebCore::HTMLTextAreaElement::updateValue):
        (WebCore::HTMLTextAreaElement::selection):
        * page/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::isNativeTextControl):
        (WebCore::AccessibilityRenderObject::text):
        (WebCore::AccessibilityRenderObject::selectedText):
        (WebCore::AccessibilityRenderObject::selectedTextRange):
        (WebCore::AccessibilityRenderObject::setSelectedTextRange):
        (WebCore::AccessibilityRenderObject::visiblePositionForIndex):
        (WebCore::AccessibilityRenderObject::indexForVisiblePosition):
        (WebCore::AccessibilityRenderObject::observableObject):
        * page/Frame.cpp:
        (WebCore::Frame::notifyRendererOfSelectionChange):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::isTextControl):
        (WebCore::objectIsRelayoutBoundary):
        * rendering/RenderTextControl.h:
        (WebCore::RenderTextControl::isTextControl):
        (WebCore::toRenderTextControl):
        * rendering/TextControlInnerElements.cpp:
        (WebCore::TextControlInnerTextElement::defaultEventHandler):
        * wml/WMLInputElement.cpp:
        (WebCore::WMLInputElement::select):
        (WebCore::WMLInputElement::defaultEventHandler):
        (WebCore::WMLInputElement::isConformedToInputMask):

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

13 years ago2009-02-13 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 19:18:36 +0000 (19:18 +0000)]
2009-02-13  David Hyatt  <hyatt@apple.com>

        Get rid of isEdited/setEdited on RenderObject.  Devirtualize isEdited/setEdited on RenderTextControl.
        Callers were already asking if the renderer was a text field (or a text area), so it was especially
        pointless to waste a second virtual function call after making one just to determine the object type.

        Reviewed by Simon Fraser

        * dom/Document.cpp:
        (WebCore::Document::setFocusedNode):
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::defaultEventHandler):
        * rendering/RenderObject.h:
        * rendering/RenderTextControl.h:
        (WebCore::RenderTextControl::isEdited):
        (WebCore::RenderTextControl::setEdited):

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

13 years ago2009-02-13 Scott Violet <sky@google.com>
dglazkov@chromium.org [Fri, 13 Feb 2009 19:04:03 +0000 (19:04 +0000)]
2009-02-13  Scott Violet  <sky@google.com>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23934
        Skia platform doesn't render text decoration shadows.

        Makes Skia render text decoration shadows correctly. We weren't
        preparing the SkPaint correctly and didn't have a couple of checks
        CG has. Additionally makes the fillColor/strokeColor methods
        consistent.

        This behavior is covered by existing layout tests (see bug for list).

        * platform/graphics/chromium/FontChromiumWin.cpp:
        (WebCore::Font::drawGlyphs):
        (WebCore::Font::drawComplexText):
        * platform/graphics/skia/GraphicsContextSkia.cpp:
        (WebCore::GraphicsContext::drawLineForText):
        * platform/graphics/skia/PlatformContextSkia.cpp:
        (PlatformContextSkia::effectiveFillColor):
        (PlatformContextSkia::effectiveStrokeColor):
        * platform/graphics/skia/PlatformContextSkia.h:

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

13 years ago2009-02-12 Darin Fisher <darin@chromium.org>
darin@chromium.org [Fri, 13 Feb 2009 19:01:12 +0000 (19:01 +0000)]
2009-02-12  Darin Fisher  <darin@chromium.org>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23944
        KURLGoogle's pre-parsed canonicalSpec constructor should take a CString

        * platform/KURL.h:
        * platform/KURLGoogle.cpp:
        (WebCore::KURLGooglePrivate::setUtf8):
        (WebCore::KURLGooglePrivate::setAscii):
        (WebCore::KURLGooglePrivate::init):
        (WebCore::KURLGooglePrivate::replaceComponents):
        (WebCore::KURL::KURL):
        * platform/KURLGooglePrivate.h:

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

13 years ago2009-02-13 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 18:17:26 +0000 (18:17 +0000)]
2009-02-13  David Hyatt  <hyatt@apple.com>

        Remove leftmost/rightmost/lowestPosition from RenderObject.  They only need to be called on boxes.

        Reviewed by Dan Bernstein

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::lowestPosition):
        (WebCore::RenderBlock::rightmostPosition):
        (WebCore::RenderBlock::leftmostPosition):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::computeScrollDimensions):
        * rendering/RenderMedia.cpp:
        (WebCore::RenderMedia::lowestPosition):
        (WebCore::RenderMedia::rightmostPosition):
        (WebCore::RenderMedia::leftmostPosition):
        * rendering/RenderObject.h:
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::lowestPosition):
        (WebCore::RenderTableSection::rightmostPosition):
        (WebCore::RenderTableSection::leftmostPosition):

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

13 years ago2009-02-12 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 13 Feb 2009 17:49:58 +0000 (17:49 +0000)]
2009-02-12  Simon Fraser  <simon.fraser@apple.com>

        Fix build with ACCELERATED_COMPOSITING turned on.

        toRenderBox()->x() asserts for a layer on an inline; use
        m_owningLayer->renderBoxX() instead.

        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::paintIntoLayer):

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

13 years ago2009-02-13 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 13 Feb 2009 16:24:52 +0000 (16:24 +0000)]
2009-02-13  Darin Adler  <darin@apple.com>

        * Configurations/JavaScriptCore.xcconfig: Undo accidental commit of this file.

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

13 years ago Reviewed by Adam Roben.
cmarrin@apple.com [Fri, 13 Feb 2009 16:21:26 +0000 (16:21 +0000)]
    Reviewed by Adam Roben.

        https://bugs.webkit.org/show_bug.cgi?id=23936

        Fixed 3 more test cases

        * platform/win/fast/css/computed-style-expected.txt:
        * platform/win/fast/css/computed-style-without-renderer-expected.txt:
        * svg/css/getComputedStyle-basic-expected.txt:

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

13 years ago2009-02-12 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 13 Feb 2009 16:20:16 +0000 (16:20 +0000)]
2009-02-12  Darin Adler  <darin@apple.com>

        Reviewed by Oliver Hunt.

        Speed up document.write a bit.

        * bindings/js/JSHTMLDocumentCustom.cpp:
        (WebCore::documentWrite): Added. Uses SegmentedString to avoid conversion from
        UString to String and to avoid appending strings. Also added code to handle
        newlines efficiently.
        (WebCore::JSHTMLDocument::write): Changed to use documentWrite.
        (WebCore::JSHTMLDocument::writeln): Ditto.

        * dom/Document.cpp:
        (WebCore::Document::prepareToWrite): Added. Refactored the initialization part
        of write into a separate function for use in the JavaScript binding.
        (WebCore::Document::write): Changed to call prepareToWrite.

        * dom/Document.h: Added declaration for prepareToWrite.

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

13 years ago2009-02-12 Darin Adler <darin@apple.com>
darin@apple.com [Fri, 13 Feb 2009 16:16:50 +0000 (16:16 +0000)]
2009-02-12  Darin Adler  <darin@apple.com>

        Reviewed by Oliver Hunt and Alexey Proskuryakov.

        Speed up a couple string functions.

        * runtime/StringPrototype.cpp:
        (JSC::stringProtoFuncIndexOf): Added a fast path for cases where the second
        argument is either missing or an integer.
        (JSC::stringProtoFuncBig): Use jsNontrivialString since the string is guaranteed
        to be 2 or more characters long.
        (JSC::stringProtoFuncSmall): Ditto.
        (JSC::stringProtoFuncBlink): Ditto.
        (JSC::stringProtoFuncBold): Ditto.
        (JSC::stringProtoFuncItalics): Ditto.
        (JSC::stringProtoFuncStrike): Ditto.
        (JSC::stringProtoFuncSub): Ditto.
        (JSC::stringProtoFuncSup): Ditto.
        (JSC::stringProtoFuncFontcolor): Ditto.
        (JSC::stringProtoFuncFontsize): Make the fast path Sam recently added even faster
        by avoiding all but the minimum memory allocation.
        (JSC::stringProtoFuncAnchor): Use jsNontrivialString.
        (JSC::stringProtoFuncLink): Added a fast path.

        * runtime/UString.cpp:
        (JSC::UString::find): Added a fast path for single-character search strings.

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

13 years ago Reviewed by Simon Fraser.
cmarrin@apple.com [Fri, 13 Feb 2009 15:53:48 +0000 (15:53 +0000)]
    Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=23936

        Fixed 2 more test cases (mac specific)

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

13 years ago2009-02-13 Benjamin C Meyer <benjamin.meyer@torchmobile.com>
treat@webkit.org [Fri, 13 Feb 2009 14:45:54 +0000 (14:45 +0000)]
2009-02-13  Benjamin C Meyer  <benjamin.meyer@torchmobile.com>

        Reviewed by Nikolas Zimmermann.

        https://bugs.webkit.org/show_bug.cgi?id=23738
        Expose the url elements target frame string.  This is the sister function
        to the existing linkTargetFrame which returns the QWebFrame*.  When the
        linkTargetFrame is 0 it is useful to know what the target was to be.

        * Api/qwebframe.cpp:
        (QWebHitTestResultPrivate::QWebHitTestResultPrivate):
        (QWebHitTestResult::linkTarget):
        * Api/qwebframe.h:
        * Api/qwebframe_p.h:
        * tests/qwebframe/tst_qwebframe.cpp:

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

13 years ago2009-02-13 David Boddie <dboddie@trolltech.com>
hausmann@webkit.org [Fri, 13 Feb 2009 12:02:26 +0000 (12:02 +0000)]
2009-02-13  David Boddie  <dboddie@trolltech.com>

        Reviewed by Simon Hausmann.

        Removed documentation for internal functions.

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

13 years ago2009-02-13 Martin Smith <msmith@trolltech.com>
hausmann@webkit.org [Fri, 13 Feb 2009 12:02:04 +0000 (12:02 +0000)]
2009-02-13  Martin Smith  <msmith@trolltech.com>

        Reviewed by Simon Hausmann.

        Corrected some minor qdoc errors.

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

13 years ago2009-02-13 Prasanth Ullattil <pullatti@trolltech.com>
hausmann@webkit.org [Fri, 13 Feb 2009 12:01:37 +0000 (12:01 +0000)]
2009-02-13  Prasanth Ullattil  <pullatti@trolltech.com>

        Reviewed by Simon Hausmann.

        Fixes crash in the Qt port on Windows with comboboxes

        The focusWidget in the input context is not reset properly.
        The QApplication::setFocusWidget() wont reset the IC if the reason is
        PopupFocusReason, this is not ideal. For the time being we are going
        to do this from webkit itself.

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

13 years ago2009-02-13 David Levin <levin@chromium.org>
ap@webkit.org [Fri, 13 Feb 2009 09:29:21 +0000 (09:29 +0000)]
2009-02-13  David Levin  <levin@chromium.org>

        Reviewed by Darin Adler.

        Bug 23926: Race condition in callOnMainThreadAndWait
        <https://bugs.webkit.org/show_bug.cgi?id=23926>

        * wtf/MainThread.cpp:
        Removed callOnMainThreadAndWait since it isn't used.

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

13 years agoMath.random is really slow on windows.
oliver@apple.com [Fri, 13 Feb 2009 09:18:43 +0000 (09:18 +0000)]
Math.random is really slow on windows.

Reviewed by Jon Honeycutt.

Math.random calls WTF::randomNumber which is implemented as
the secure rand_s on windows.  Unfortunately rand_s is an order
of magnitude slower than arc4random.  For this reason I've
added "weakRandomNumber" for use by JavaScript's Math Object.
In the long term we should look at using our own secure PRNG
in place of the system, but this will do for now.

30% win on SunSpider on Windows, resolving most of the remaining
disparity vs. Mac.

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

13 years agoFix the build for other platforms.
mrowe@apple.com [Fri, 13 Feb 2009 07:30:16 +0000 (07:30 +0000)]
Fix the build for other platforms.

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

13 years agowx build fix, typo while tweaking last patch for commit.
kevino@webkit.org [Fri, 13 Feb 2009 07:17:22 +0000 (07:17 +0000)]
wx build fix, typo while tweaking last patch for commit.

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

13 years agoReviewed by Kevin Ollivier.
kevino@webkit.org [Fri, 13 Feb 2009 05:42:25 +0000 (05:42 +0000)]
Reviewed by Kevin Ollivier.

Use Cairo/PANGO to fix text measurements and implement proper non-kerned text drawing on wxGTK.

https://bugs.webkit.org/show_bug.cgi?id=17727

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

13 years ago2009-02-12 Chris Marrin <cmarrin@apple.com>
simon.fraser@apple.com [Fri, 13 Feb 2009 05:10:12 +0000 (05:10 +0000)]
2009-02-12  Chris Marrin  <cmarrin@apple.com>

        Reviewed by Simon Fraser

        https://bugs.webkit.org/show_bug.cgi?id=23942

        Hook up 3D CSS transforms to the accelerated compositor backend.
        Not enabled by default.

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

13 years ago2009-02-12 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 13 Feb 2009 04:22:02 +0000 (04:22 +0000)]
2009-02-12  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Sam Weinig.

        Remove (/reduce) use of hard-wired register names from the JIT.
        Currently there is no abstraction of registers used in the JIT,
        which has a number of negative consequences.  Hard-wiring x86
        register names makes the JIT less portable to other platforms,
        and prevents us from performing dynamic register allocation to
        attempt to maintain more temporary values in machine registers.
        (The latter will be more important on x86-64, where we have more
        registers to make use of).

        Also, remove MacroAssembler::mod32.  This was not providing a
        useful abstraction, and was not in keeping with the rest of the
        MacroAssembler interface, in having specific register requirements.

        * assembler/MacroAssemblerX86Common.h:
        * jit/JIT.cpp:
        (JSC::JIT::compileOpStrictEq):
        (JSC::JIT::emitSlowScriptCheck):
        (JSC::JIT::privateCompileMainPass):
        (JSC::JIT::privateCompileSlowCases):
        (JSC::JIT::privateCompile):
        (JSC::JIT::privateCompileCTIMachineTrampolines):
        * jit/JIT.h:
        * jit/JITArithmetic.cpp:
        (JSC::JIT::compileFastArith_op_lshift):
        (JSC::JIT::compileFastArithSlow_op_lshift):
        (JSC::JIT::compileFastArith_op_rshift):
        (JSC::JIT::compileFastArithSlow_op_rshift):
        (JSC::JIT::compileFastArith_op_bitand):
        (JSC::JIT::compileFastArithSlow_op_bitand):
        (JSC::JIT::compileFastArith_op_mod):
        (JSC::JIT::compileFastArithSlow_op_mod):
        (JSC::JIT::compileFastArith_op_post_inc):
        (JSC::JIT::compileFastArithSlow_op_post_inc):
        (JSC::JIT::compileFastArith_op_post_dec):
        (JSC::JIT::compileFastArithSlow_op_post_dec):
        (JSC::JIT::compileFastArith_op_pre_inc):
        (JSC::JIT::compileFastArithSlow_op_pre_inc):
        (JSC::JIT::compileFastArith_op_pre_dec):
        (JSC::JIT::compileFastArithSlow_op_pre_dec):
        (JSC::JIT::compileFastArith_op_add):
        (JSC::JIT::compileFastArith_op_mul):
        (JSC::JIT::compileFastArith_op_sub):
        (JSC::JIT::compileBinaryArithOp):
        * jit/JITCall.cpp:
        (JSC::JIT::compileOpCallInitializeCallFrame):
        (JSC::JIT::compileOpCallSetupArgs):
        (JSC::JIT::compileOpCallEvalSetupArgs):
        (JSC::JIT::compileOpConstructSetupArgs):
        (JSC::JIT::compileOpCall):
        (JSC::JIT::compileOpCallSlowCase):
        * jit/JITInlineMethods.h:
        (JSC::JIT::emitGetVirtualRegister):
        (JSC::JIT::emitPutVirtualRegister):
        (JSC::JIT::emitNakedCall):
        (JSC::JIT::restoreArgumentReference):
        (JSC::JIT::restoreArgumentReferenceForTrampoline):
        * jit/JITPropertyAccess.cpp:
        (JSC::JIT::compileGetByIdHotPath):
        (JSC::JIT::compilePutByIdHotPath):
        (JSC::JIT::compileGetByIdSlowCase):
        (JSC::JIT::compilePutByIdSlowCase):
        (JSC::JIT::privateCompilePutByIdTransition):
        (JSC::JIT::privateCompilePatchGetArrayLength):
        (JSC::JIT::privateCompileGetByIdSelf):
        (JSC::JIT::privateCompileGetByIdProto):
        (JSC::JIT::privateCompileGetByIdSelfList):
        (JSC::JIT::privateCompileGetByIdProtoList):
        (JSC::JIT::privateCompileGetByIdChainList):
        (JSC::JIT::privateCompileGetByIdChain):
        (JSC::JIT::privateCompilePutByIdReplace):

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

13 years agoJavaScriptCore:
barraclough@apple.com [Fri, 13 Feb 2009 04:10:31 +0000 (04:10 +0000)]
JavaScriptCore:

2009-02-12  Horia Olaru  <olaru@adobe.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=23400

        When throwing an exception within an eval argument string, the dst parameter was
        modified in the functions below and the return value for eval was altered. Changed
        the emitNode call in JSC::ThrowNode::emitBytecode to use a temporary register
        to store its results instead of dst. The JSC::FunctionCallResolveNode::emitBytecode
        would load the function within the dst registry, also altering the result returned
        by eval. Replaced it with another temporary.

        * parser/Nodes.cpp:
        (JSC::FunctionCallResolveNode::emitBytecode):
        (JSC::ThrowNode::emitBytecode):

LayoutTests:

2009-02-12  Horia Olaru  <olaru@adobe.com>

        Reviewed by Oliver Hunt.

        https://bugs.webkit.org/show_bug.cgi?id=23400

        Added a modified version of the test Chris Brichford attached to the bug.
        Will test return values of various eval function calls, including some which
        throw and catch errors in the string to evaluate.

        * fast/js/eval-throw-return-expected.txt: Added.
        * fast/js/eval-throw-return.html: Added.
        * fast/js/resources/eval-throw-return.js: Added.
        (throwFunc):
        (throwOnReturn):
        (twoFunc):

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

13 years ago2009-02-12 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 13 Feb 2009 02:10:35 +0000 (02:10 +0000)]
2009-02-12  David Hyatt  <hyatt@apple.com>

        Reviewed by Eric Seidel

        Get rid of containingBlockHeight(), since it had only one implementation (despite being virtual) and just returned
        containingBlock()->availableHeight().  The latter reads better anyway.  Rename containingBlockWidth() to
        containingBlockWidthForContent() and move it to RenderBoxModelObject.

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::localCaretRect):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::containingBlockWidthForContent):
        (WebCore::RenderBox::calcWidth):
        (WebCore::RenderBox::calcReplacedWidthUsing):
        * rendering/RenderBox.h:
        * rendering/RenderBoxModelObject.cpp:
        (WebCore::RenderBoxModelObject::relativePositionOffsetX):
        (WebCore::RenderBoxModelObject::relativePositionOffsetY):
        (WebCore::RenderBoxModelObject::containingBlockWidthForContent):
        * rendering/RenderBoxModelObject.h:
        * rendering/RenderInline.cpp:
        (WebCore::RenderInline::marginLeft):
        (WebCore::RenderInline::marginRight):
        * rendering/RenderObject.cpp:
        * rendering/RenderObject.h:
        * rendering/RenderSVGContainer.cpp:
        (WebCore::RenderSVGContainer::calcReplacedWidth):

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

13 years agoVersioning.
mrowe@apple.com [Fri, 13 Feb 2009 01:42:32 +0000 (01:42 +0000)]
Versioning.

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

13 years ago2009-02-12 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 13 Feb 2009 01:27:46 +0000 (01:27 +0000)]
2009-02-12  Simon Fraser  <simon.fraser@apple.com>

        Fix non-Mac builds by adding Matrix3DTransformOperation.* and
        PerspectiveTransformOperation.*. Cleaned out some cruft in
        the WebCore.vcproj fle.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.scons:
        * WebCore.vcproj/WebCore.vcproj:

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

13 years agoWebCore:
dsmith@webkit.org [Fri, 13 Feb 2009 01:19:39 +0000 (01:19 +0000)]
WebCore:

2009-02-12  David Smith  <catfish.man@gmail.com>

        Reviewed by Dave Hyatt.

        Fix https://bugs.webkit.org/show_bug.cgi?id=23935
        Nested :not() and non-simple selectors in :not() should be invalid

        * css/CSSGrammar.y: Reject nested :not()
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): ASSERT() rather than checking, since the parser enforces it now

LayoutTests:

2009-02-12  David Smith  <catfish.man@gmail.com>

        Reviewed by David Hyatt.

        * fast/dom/SelectorAPI/resig-SelectorsAPI-test-expected.txt: Updated results now that we pass a few more

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

13 years agoWebKit/mac:
beidson@apple.com [Fri, 13 Feb 2009 01:09:10 +0000 (01:09 +0000)]
WebKit/mac:

2009-02-12  Brady Eidson  <beidson@apple.com>

        Reviewed by Kevin Decker

        <rdar://problem/6582180> - Wrong HTTP method applied to history item.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::updateGlobalHistory): Check the original request, not any
          redirected request.

WebKit/win:

2009-02-12  Brady Eidson  <beidson@apple.com>

        Reviewed by Kevin Decker

        <rdar://problem/6582180> - Wrong HTTP method applied to history item.

        * WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebFrameLoaderClient::updateGlobalHistory): Check the original request, not any
          redirected request.

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

13 years agowx build fixes.
kevino@webkit.org [Fri, 13 Feb 2009 00:48:12 +0000 (00:48 +0000)]
wx build fixes.

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

13 years ago2009-02-12 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Fri, 13 Feb 2009 00:35:39 +0000 (00:35 +0000)]
2009-02-12  Simon Fraser  <simon.fraser@apple.com>

        Fix build with ACCELERATED_COMPOSITING turned on.

        Need to cast toRenderBox() in order to call overflowClipRect().

        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):

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

13 years ago Reviewed by Simon Fraser.
cmarrin@apple.com [Fri, 13 Feb 2009 00:22:48 +0000 (00:22 +0000)]
    Reviewed by Simon Fraser.

        https://bugs.webkit.org/show_bug.cgi?id=23936

        Fixed test results

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

13 years agoFix windows build.
oliver@apple.com [Fri, 13 Feb 2009 00:19:14 +0000 (00:19 +0000)]
Fix windows build.

Reviewed by NOBODY(OOPS!)

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

13 years ago2009-02-12 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Thu, 12 Feb 2009 23:53:17 +0000 (23:53 +0000)]
2009-02-12  David Hyatt  <hyatt@apple.com>

        Rename getOverflowClipRect and getClipRect to overflowClipRect and clipRect.  Move them to RenderBox, since these methods
        only apply to boxes.  Devirtualize clipRect, since it was not subclassed.  Move controlClip stuff to RenderBox also.

        Reviewed by Simon Fraser

        * editing/Editor.cpp:
        (WebCore::Editor::insideVisibleArea):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::overflowClipRect):
        (WebCore::RenderBox::clipRect):
        * rendering/RenderBox.h:
        (WebCore::RenderBox::hasControlClip):
        (WebCore::RenderBox::controlClipRect):
        * rendering/RenderForeignObject.cpp:
        (WebCore::RenderForeignObject::paint):
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::calculateClipRects):
        (WebCore::RenderLayer::calculateRects):
        * rendering/RenderLayerBacking.cpp:
        (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
        * rendering/RenderObject.h:
        (WebCore::RenderObject::hasClip):
        (WebCore::RenderObject::hasOverflowClip):
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::overflowClipRect):
        * rendering/RenderTable.h:

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