WebKit-https.git
12 years ago2008-03-21 Cameron Zwarich <cwzwarich@uwaterloo.ca>
oliver@apple.com [Sat, 22 Mar 2008 07:14:40 +0000 (07:14 +0000)]
2008-03-21  Cameron Zwarich  <cwzwarich@uwaterloo.ca>

Bug 13693: REGRESSION (r13615): Acid2 Test Eyes render improperly after a page refresh
<http://bugs.webkit.org/show_bug.cgi?id=13693>

Reviewed by Oliver Hunt

Do not create bogus history items for unloaded <object> elements, because they
cause fallback content to be ignored on reload.

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

12 years agoWebCore:
mitz@apple.com [Sat, 22 Mar 2008 06:57:28 +0000 (06:57 +0000)]
WebCore:

        Reviewed by Oliver Hunt.

        - fix http://bugs.webkit.org/show_bug.cgi?id=17988
          REGRESSION (r31114-31132): Crash in InlineBox::isDirty() opening chowhound.com

        Test: fast/css-generated-content/empty-content-with-float-crash.html

        * rendering/bidi.cpp:
        (WebCore::RenderBlock::layoutInlineChildren): Added a null check for
        the case where the block contains no in-flow elements but still lays
        out as a line flow, which can happen as a result of empty generated
        content.

LayoutTests:

        Reviewed by Oliver Hunt.

        - test for http://bugs.webkit.org/show_bug.cgi?id=17988
          REGRESSION (r31114-31132): Crash in InlineBox::isDirty() opening chowhound.com

        * fast/css-generated-content/empty-content-with-float-crash-expected.txt: Added.
        * fast/css-generated-content/empty-content-with-float-crash.html: Added.

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

12 years agoOptimise lookup of Math, undefined, NaN and Infinity
oliver@apple.com [Sat, 22 Mar 2008 04:59:20 +0000 (04:59 +0000)]
Optimise lookup of Math, undefined, NaN and Infinity

Reviewed by Maciej

Added a method to JSVariableObject to allow us to inject DontDelete properties
into the symbol table and localStorage.  This results in a 0.4% progression in
SunSpider, with a 8% gain in math-partial-sums.

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

12 years agoGlobal properties that use LocalStorage are not correctly listed as enumerable.
oliver@apple.com [Sat, 22 Mar 2008 02:36:34 +0000 (02:36 +0000)]
Global properties that use LocalStorage are not correctly listed as enumerable.

Reviewed by Geoff Garen

The problem was caused by JSObject::getPropertyAttributes not being aware
of the JSVariableObject SymbolTable.  The fix is to make getPropertyAttributes
virtual and override in JSVariableObject.  This does not produce any performance
regression.

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

12 years agoWebCore:
weinig@apple.com [Sat, 22 Mar 2008 00:39:07 +0000 (00:39 +0000)]
WebCore:

2008-03-21  Sam Weinig  <sam@webkit.org>

        Reviewed by Oliver Hunt.

        Fix <rdar://problem/5788451>
        toDataURL not implemented for Windows (need mapping of MIME type to UTI)

        Hard code support for just PNG's on windows, the minimum the spec requires.

        * platform/MIMETypeRegistry.cpp:
        (WebCore::initializeSupportedImageMIMETypesForEncoding):
        * platform/graphics/cg/ImageBufferCG.cpp:
        (WebCore::utiFromMIMEType):
        (WebCore::ImageBuffer::toDataURL):

LayoutTests:

2008-03-21  Sam Weinig  <sam@webkit.org>

        Reviewed by Oliver Hunt.

        Enable tests for <rdar://problem/5788451>
        toDataURL not implemented for Windows (need mapping of MIME type to UTI)

        * platform/win/Skipped:
        * platform/win/fast/canvas: Added.
        * platform/win/fast/canvas/toDataURL-supportedTypes-expected.txt: Added.

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

12 years ago2008-03-21 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Fri, 21 Mar 2008 23:58:09 +0000 (23:58 +0000)]
2008-03-21  Matt Lilek  <webkit@mattlilek.com>

        Not reviewed, Mac build fix.

        * bindings/objc/WebScriptObject.mm:
        (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
        * bridge/jni/jni_utility.cpp:
        (KJS::Bindings::convertValueToJValue):
        * bridge/objc/objc_runtime.mm:
        (ObjcFallbackObjectImp::callAsFunction):

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

12 years ago2008-03-21 Antti Koivisto <antti@apple.com>
antti@apple.com [Fri, 21 Mar 2008 23:31:33 +0000 (23:31 +0000)]
2008-03-21  Antti Koivisto  <antti@apple.com>

        Add some images for a blog post.

        * blog-files/wsj-nopreload.png: Added.
        * blog-files/wsj-preload.png: Added.

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

12 years ago Attempt to fix the Mac build
aroben@apple.com [Fri, 21 Mar 2008 23:30:19 +0000 (23:30 +0000)]
    Attempt to fix the Mac build

        * bindings/objc/DOMUtility.mm:
        (KJS::createDOMWrapper):

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

12 years ago Rename static info members to s_info
aroben@apple.com [Fri, 21 Mar 2008 22:09:29 +0000 (22:09 +0000)]
    Rename static info members to s_info

        This avoids conflicts with custom "info" methods, such as the one that
        will soon be added to Console.

        Reviewed by Ada Chan and Sam Weinig.

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

12 years ago2008-03-21 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 21 Mar 2008 22:00:56 +0000 (22:00 +0000)]
2008-03-21  David Hyatt  <hyatt@apple.com>

        <rdar://problem/5808863> Zooming should not let non-zero border width become zero

        Make sure zoomed values that begin >= 1 are not allowed to fall below 1.

        Reviewed by adele

        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::computeLengthDouble):
        * loader/CachedImage.cpp:
        (WebCore::CachedImage::imageSize):
        (WebCore::CachedImage::imageRect):

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

12 years ago2008-03-21 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Fri, 21 Mar 2008 21:05:50 +0000 (21:05 +0000)]
2008-03-21  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Sam.

        -<rdar://problem/5712804> XMLHttpRequests do not show response contents, preview images (14313)
        -<rdar://problem/5712931> XMLHttpRequests should be shown separately and grouped (14315)
        -<rdar://problem/5732836> XMLHttpRequest: Inspector should show network activity/XHR in Console (17233)
        - Instrument the InspectorController to cache XHR resrouces since they are not cached by WebCore.
        The resources will be kept in the same map as all other resources so they will have the exact
        same lifecycle.

        * ChangeLog:
        * page/InspectorController.cpp:
        (WebCore::InspectorCachedXMLHttpRequestResource::type):
        (WebCore::InspectorCachedXMLHttpRequestResource::setType):
        (WebCore::InspectorCachedXMLHttpRequestResource::data):
        (WebCore::InspectorCachedXMLHttpRequestResource::setData):
        (WebCore::InspectorCachedXMLHttpRequestResource::encoding):
        (WebCore::InspectorCachedXMLHttpRequestResource::setEncoding):
        (WebCore::InspectorCachedXMLHttpRequestResource::create):
        (WebCore::InspectorCachedXMLHttpRequestResource::InspectorCachedXMLHttpRequestResource):
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::send):

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

12 years agoAdd missing ChangeLog entry for r31214.
zecke@webkit.org [Fri, 21 Mar 2008 20:40:41 +0000 (20:40 +0000)]
Add missing ChangeLog entry for r31214.

2008-03-21  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Holger.

        Remove the JSCore include path options from global_cppflags.
        Place JSCore include path options in javascriptcore_cppflags.
        Add javascriptcore_cppflags to libWebCore_la_CPPFLAGS.

        * GNUmakefile.am:

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

12 years ago2008-03-21 Arkadiusz Miskiewicz <arekm@maven.pl>
ddkilzer@apple.com [Fri, 21 Mar 2008 19:26:06 +0000 (19:26 +0000)]
2008-03-21  Arkadiusz Miskiewicz  <arekm@maven.pl>

        Webkit does not build on linux powerpc

        <http://bugs.webkit.org/show_bug.cgi?id=17019>

        Reviewed by David Kilzer.

        * wtf/TCSpinLock.h:
        (TCMalloc_SpinLock::Unlock):

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

12 years ago Reviewed by Geoff.
ap@webkit.org [Fri, 21 Mar 2008 18:48:09 +0000 (18:48 +0000)]
    Reviewed by Geoff.

        * sunspider: Pause update daemon on Darwin to make results reliable
        again (workaround for <rdar://problem/5811127>).

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

12 years agoJavaScriptCore/ChangeLog:
zecke@webkit.org [Fri, 21 Mar 2008 18:21:25 +0000 (18:21 +0000)]
JavaScriptCore/ChangeLog:
2008-03-21  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Holger.

        http://bugs.webkit.org/show_bug.cgi?id=17981

        Add javascriptcore_cppflags to Programs_minidom_CPPFLAGS.

        * GNUmakefile.am:

WebCore/ChaneLog:
2008-03-21  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Holger.

        http://bugs.webkit.org/show_bug.cgi?id=17981

        Remove WebCore/ForwardingHeaders from cppflags as it is not needed,
        and causes build problems with GTK+.

        * GNUmakefile.am:

WebKitTools/ChangeLog:
2008-03-21  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed by Holger.

        http://bugs.webkit.org/show_bug.cgi?id=17981

        Add webcore and javascriptcore cppflags to programs' _CPPFLAGS.

        * GNUmakefile.am:

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

12 years agoWebCore:
mitz@apple.com [Fri, 21 Mar 2008 17:17:01 +0000 (17:17 +0000)]
WebCore:

        Reviewed by Adele Peterson.

        - fix http://bugs.webkit.org/show_bug.cgi?id=17966
          REGRESSION (r31114-r31132): Clearing via br behaves unpredictably

        Test: fast/block/float/br-with-clear.html

        * rendering/bidi.cpp:
        (WebCore::RenderBlock::layoutInlineChildren): Fixed the logic for the
        very special case of an all-lines-clean block that ends with a float-
        clearing <br> by looking for the <br> at the end of the line rather
        than at its beginning.

LayoutTests:

        Reviewed by Adele Peterson.

        - test for http://bugs.webkit.org/show_bug.cgi?id=17966
          REGRESSION (r31114-r31132): Clearing via br behaves unpredictably

        * fast/block/float/br-with-clear.html: Added.
        * platform/mac/fast/block/float/br-with-clear-expected.checksum: Added.
        * platform/mac/fast/block/float/br-with-clear-expected.png: Added.
        * platform/mac/fast/block/float/br-with-clear-expected.txt: Added.

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

12 years ago <rdar://problem/5810324> visitCount not updated in History.plist
adachan@apple.com [Fri, 21 Mar 2008 16:36:22 +0000 (16:36 +0000)]
    <rdar://problem/5810324> visitCount not updated in History.plist
        Call WebCore::HistoryItem::mergeAutoCompleteHints() in WebHistoryItem::mergeAutoCompleteHints().

        Reviewed by Steve.

        * WebHistoryItem.cpp:
        (WebHistoryItem::mergeAutoCompleteHints):
        (WebHistoryItem::QueryInterface):

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

12 years ago Remove a non-working mirror from cygwin-downloader and add the ruby package
aroben@apple.com [Fri, 21 Mar 2008 16:29:09 +0000 (16:29 +0000)]
    Remove a non-working mirror from cygwin-downloader and add the ruby package

        * CygwinDownloader/cygwin-downloader.py:
        * CygwinDownloader/cygwin-downloader.zip: Updated.

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

12 years ago Don't allow any newly-scheduled plugin requests to be serviced when JS is...
aroben@apple.com [Fri, 21 Mar 2008 16:27:55 +0000 (16:27 +0000)]
    Don't allow any newly-scheduled plugin requests to be serviced when JS is paused

        This is a followup to r31199.

        Reviewed by Tim Hatcher.

        * plugins/PluginView.cpp:
        (WebCore::PluginView::requestTimerFired): Added an assertion that JS
        is not paused.
        (WebCore::PluginView::scheduleRequest): Don't start the request timer
        if JS is paused. This is the bug fix.
        (WebCore::PluginView::setJavaScriptPaused): Replaced the use of
        m_requestTimerWasActive with a check to see if we have any pending
        requests. m_requestTimerWasActive would not be accurate if a new
        request had been scheduled while JS was paused.
        (WebCore::PluginView::PluginView): Removed initialization of
        m_requestTimerWasActive.
        * plugins/PluginView.h: Removed m_requestTimerWasActive.

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

12 years agoBug 17980: Regression: Inspector highlighting of webpage not cleared when going to...
timothy@apple.com [Fri, 21 Mar 2008 16:00:41 +0000 (16:00 +0000)]
Bug 17980: Regression: Inspector highlighting of webpage not cleared when going to new URL
http://bugs.webkit.org/show_bug.cgi?id=17980

Reviewed by Adam.

The new highlight drawing was not honoring the fade value, so it was
always drawing at full opacity. The animation code didn't match Windows
and the new highlight anyway, so it has been removed. The highlight
how just detaches when it is hidden.

* WebCoreSupport/WebInspectorClient.mm:
(-[WebInspectorWindowController windowShouldClose:]): Call hideHighlight.
(-[WebInspectorWindowController close]): Ditto.
(-[WebInspectorWindowController highlightNode:]): Call attach.
(-[WebInspectorWindowController hideHighlight]): Call detach and release _currentHighlight.
* WebInspector/WebNodeHighlight.h:
* WebInspector/WebNodeHighlight.m:
(-[WebNodeHighlight initWithTargetView:inspectorController:]):
(-[WebNodeHighlight dealloc]): Assert we have no _highlightView.
(-[WebNodeHighlight attach]): Renamed from attachHighlight.
(-[WebNodeHighlight detach]): Renamed from detachHighlight.
(-[WebNodeHighlight setNeedsUpdateInTargetViewRect:]): Renamed from setHolesNeedUpdateInTargetViewRect:.
* WebInspector/WebNodeHighlightView.h:
* WebInspector/WebNodeHighlightView.m:
(-[WebNodeHighlightView setNeedsDisplayInRect:]): Renamed from setHolesNeedUpdateInRect:.

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

12 years ago Reviewed by Oliver Hunt.
ap@webkit.org [Fri, 21 Mar 2008 11:14:49 +0000 (11:14 +0000)]
    Reviewed by Oliver Hunt.

        Consolidate static identifier initializers within CommonIdentifiers.

        No reliably measurable change on SunSpider; maybe a tiny improvement (within 0.2%).

        * kjs/CommonIdentifiers.h: Added static identifiers that were lazily initialized
        throughout the code.

        * kjs/date_object.cpp:
        (KJS::DateObjectImp::DateObjectImp):
        * kjs/function_object.cpp:
        (KJS::FunctionPrototype::FunctionPrototype):
        * kjs/object_object.cpp:
        (KJS::ObjectPrototype::ObjectPrototype):
        * kjs/regexp_object.cpp:
        (KJS::RegExpPrototype::RegExpPrototype):
        Use the values from CommonIdentifiers.

        * kjs/lookup.h: Caching the identifier in a static wasn't a win on SunSpider, removed it.

        * kjs/value.h:
        (KJS::jsNaN): We already have a shared NaN value, no need for a duplicate here.

        * wtf/MathExtras.h:
        (wtf_atan2): Having local variables for numeric_limits constants is good for readability,
        but there is no reason to keep them static.

        * JavaScriptCore.exp: Don't needlessly export JSGlobalObject::s_head.

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

12 years ago - update results for the 'zoom' property added in
mitz@apple.com [Fri, 21 Mar 2008 07:07:28 +0000 (07:07 +0000)]
    - update results for the 'zoom' property added in
          <http://trac.webkit.org/projects/webkit/changeset/31155>

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

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

12 years agoWebCore:
mitz@apple.com [Fri, 21 Mar 2008 05:30:19 +0000 (05:30 +0000)]
WebCore:

2008-03-20  Dan Bernstein  <mitz@apple.com>

        Reviewed by Anders Carlsson.

        - fix an assertion failure due to a line being marked dirty during
          computeVerticalPositionsForLine() due to temporary box destruction

        Test: fast/inline/clean-after-removing-temp-boxes.html

        * rendering/RenderText.cpp:
        (WebCore::RenderText::setTextWithOffset): Added code to dirty lines
        when this method is called on an empty text node, which has no line
        boxes.
        * rendering/bidi.cpp:
        (WebCore::RenderBlock::computeVerticalPositionsForLine): Mark the line
        clean in the end.

LayoutTests:

2008-03-20  Dan Bernstein  <mitz@apple.com>

        Reviewed by Anders Carlsson.

        - test for an assertion failure due to a line being marked dirty during
          computeVerticalPositionsForLine() due to temporary box destruction

        * fast/inline/clean-after-removing-temp-boxes-expected.txt: Added.
        * fast/inline/clean-after-removing-temp-boxes.html: Added.

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

12 years agoFix for leak introduced by inline ScopeChainNode use
oliver@apple.com [Fri, 21 Mar 2008 05:00:16 +0000 (05:00 +0000)]
Fix for leak introduced by inline ScopeChainNode use

Reviewed by Maciej

To avoid any extra branches when managing an inline ScopeChainNode
in the ScopeChain the inline node gets inserted with a refcount of
2.  This meant than when the ScopeChain was destroyed the ScopeChainNodes
above the inline node would be leaked.

We resolve this by manually popping the inline node in the
FunctionExecState destructor.

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

12 years ago2008-03-20 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 21 Mar 2008 01:32:01 +0000 (01:32 +0000)]
2008-03-20  Anders Carlsson  <andersca@apple.com>

        Reviewed by Maciej.

        Make some member variables private.

        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::ResourceLoader):
        * loader/ResourceLoader.h:

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

12 years ago2008-03-20 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 21 Mar 2008 01:18:20 +0000 (01:18 +0000)]
2008-03-20  Anders Carlsson  <andersca@apple.com>

        Reviewed by Maciej.

        Get rid of m_originalURL in ResourceLoader.

        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::load):
        Don't store m_originalURL.

        * loader/ResourceLoader.h:
        * loader/SubresourceLoader.cpp:
        (WebCore::SubresourceLoader::willSendRequest):
        Use the url of the current request instead of the original URL.

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

12 years ago2008-03-20 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 21 Mar 2008 01:07:22 +0000 (01:07 +0000)]
2008-03-20  Anders Carlsson  <andersca@apple.com>

        Reviewed by Maciej.

        Small loader cleanups.

        * loader/MainResourceLoader.cpp:
        (WebCore::MainResourceLoader::willSendRequest):
        No need to call setRequest here, ResourceLoader::willSendRequest takes care of that.
        Also, there is no need to check that newRequest is null here, because we assert earlier that it is not.

        * loader/ResourceLoader.h:
        Get rid of setRequest, it is no longer needed.

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

12 years ago2008-03-20 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Fri, 21 Mar 2008 01:00:58 +0000 (01:00 +0000)]
2008-03-20  Anders Carlsson  <andersca@apple.com>

        Get rid of a couple of unnecessary class declarations.

        * loader/SubresourceLoader.h:

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

12 years ago2008-03-20 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Fri, 21 Mar 2008 00:30:08 +0000 (00:30 +0000)]
2008-03-20  David Hyatt  <hyatt@apple.com>

        Add a new value to background-clip, "text", that allows backgrounds to be clipped to foreground text (and
        associated text decorations like shadows and underlines).

        Reviewed by Beth

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseBackgroundProperty):
        * css/CSSPrimitiveValueMappings.h:
        (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
        (WebCore::CSSPrimitiveValue::operator EBackgroundBox):
        * platform/graphics/GraphicsContext.cpp:
        (WebCore::GraphicsContext::clipToImageBuffer):
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/cg/GraphicsContextCG.cpp:
        (WebCore::GraphicsContext::clipToImageBuffer):
        * rendering/InlineBox.cpp:
        (WebCore::InlineBox::paint):
        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintBackgrounds):
        (WebCore::InlineFlowBox::paintBackground):
        (WebCore::InlineFlowBox::paintBoxDecorations):
        * rendering/InlineFlowBox.h:
        * rendering/InlineTextBox.cpp:
        (WebCore::InlineTextBox::paint):
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::paintColumns):
        (WebCore::RenderBlock::paintObject):
        (WebCore::RenderBlock::paintFloats):
        * rendering/RenderBlock.h:
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::paintRootBoxDecorations):
        (WebCore::RenderBox::paintBoxDecorations):
        (WebCore::RenderBox::paintBackgrounds):
        (WebCore::RenderBox::paintBackground):
        (WebCore::RenderBox::paintBackgroundExtended):
        * rendering/RenderBox.h:
        * rendering/RenderFieldset.cpp:
        (WebCore::RenderFieldset::paintBoxDecorations):
        * rendering/RenderFlow.cpp:
        (WebCore::RenderFlow::paintLines):
        * rendering/RenderObject.h:
        (WebCore::):
        (WebCore::RenderObject::paintBackgroundExtended):
        * rendering/RenderStyle.h:
        (WebCore::):
        * rendering/RenderTable.cpp:
        (WebCore::RenderTable::paintBoxDecorations):
        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::paintBackgroundsBehindCell):

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

12 years ago Allow pausing/blocking of JS execution by plugins
aroben@apple.com [Fri, 21 Mar 2008 00:14:58 +0000 (00:14 +0000)]
    Allow pausing/blocking of JS execution by plugins

        Part of Bug 17133: Should support pausing JavaScript execution without
        hanging the process

        <http://bugs.webkit.org/show_bug.cgi?id=17133>
        <rdar://problem/5719551>

        This patch doesn't affect Mac, which doesn't use the shared PluginView
        code.

        Note that this patch doesn't prevent plugins from executing JS via an
        NPObject they've already gotten hold of. It just blocks obtaining new
        NPObjects and pauses any requests to evaluate javascript: URIs. This
        is probably good enough for now because most plugins seem to always
        obtain the Window object each time they want to execute JS.

        Reviewed by Tim Hatcher.

        * plugins/PluginView.cpp:
        (WebCore::PluginView::getValue): Return an error if JS is paused.
        (WebCore::PluginView::setJavaScriptPaused): Stop the request timer if
        we're pausing, and resume it if we're unpausing.
        (WebCore::PluginView::PluginView): Initialize new members.
        * plugins/PluginView.h:

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

12 years ago Allow pausing of callOnMainThread callbacks
aroben@apple.com [Fri, 21 Mar 2008 00:14:31 +0000 (00:14 +0000)]
    Allow pausing of callOnMainThread callbacks

        Part of Bug 17133: Should support pausing JavaScript execution without
        hanging the process

        <http://bugs.webkit.org/show_bug.cgi?id=17133>
        <rdar://problem/5719551>

        Reviewed by Tim Hatcher.

        * platform/MainThread.cpp:
        (WebCore::dispatchFunctionsFromMainThread): If callbacks are paused,
        don't dispatch the functions.
        (WebCore::setMainThreadCallbacksPaused): Added. If we're being
        unpaused, call scheduleDispatchFunctionsOnMainThread so that any
        queued callbacks will get dispatched in the near future.
        * platform/MainThread.h:

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

12 years ago Allow blocking of JS event handlers/javascript: URIs per-Frame
aroben@apple.com [Fri, 21 Mar 2008 00:13:56 +0000 (00:13 +0000)]
    Allow blocking of JS event handlers/javascript: URIs per-Frame

        Part of Bug 17133: Should support pausing JavaScript execution without
        hanging the process

        <http://bugs.webkit.org/show_bug.cgi?id=17133>
        <rdar://problem/5719551>

        Two new methods are added to KJSProxy: setPaused and isPaused. When
        setPaused(true) is called, JS event handlers are blocked and
        javascript: URIs will not be evaluated.

        Reviewed by Tim Hatcher.

        * bindings/js/kjs_events.cpp:
        (WebCore::JSAbstractEventListener::handleEvent):
          - Removed some old KJS_DEBUGGER code
          - Don't run the handler if the KJSProxy is paused.
        * bindings/js/kjs_proxy.cpp:
        (WebCore::KJSProxy::KJSProxy): Initialize new member.
        * bindings/js/kjs_proxy.h: Added new methods.
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::executeScript): Don't execute the script if the
        KJSProxy is paused.

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

12 years ago2008-03-20 Jon Honeycutt <jhoneycutt@apple.com>
jhoneycutt@apple.com [Thu, 20 Mar 2008 23:50:22 +0000 (23:50 +0000)]
2008-03-20  Jon Honeycutt  <jhoneycutt@apple.com>

        Reviewed by Anders.

        Fix Windows warning / leak: warning C4150: deletion of pointer to
        incomplete type 'WebCore::PluginRequest'; no destructor called

        * plugins/PluginView.cpp: Move PluginRequest class to PluginView.h so
        Windows PluginView destructor can use WTF::deleteAllValues to clean up
        m_requests.
        * plugins/PluginView.h:
        (WebCore::PluginRequest::PluginRequest):
        (WebCore::PluginRequest::frameLoadRequest):
        (WebCore::PluginRequest::notifyData):
        (WebCore::PluginRequest::sendNotification):
        (WebCore::PluginRequest::shouldAllowPopups):

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

12 years agoEnsure that the defines in FEATURE_DEFINES are sorted so that they will match the...
mrowe@apple.com [Thu, 20 Mar 2008 23:18:58 +0000 (23:18 +0000)]
Ensure that the defines in FEATURE_DEFINES are sorted so that they will match the default settings of build-webkit.
This will prevent the world from being rebuilt if you happen to switch between building in Xcode and with build-webkit on the
command-line.

Reviewed by Sam Weinig.

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

12 years agoAdd some more bug references to ChangeLog from r31079
aroben@apple.com [Thu, 20 Mar 2008 23:17:31 +0000 (23:17 +0000)]
Add some more bug references to ChangeLog from r31079

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

12 years ago2008-03-20 Jon Honeycutt <jhoneycutt@apple.com>
jhoneycutt@apple.com [Thu, 20 Mar 2008 23:00:57 +0000 (23:00 +0000)]
2008-03-20  Jon Honeycutt  <jhoneycutt@apple.com>

        Reviewed by Anders.

        <rdar://problem/5809600> REGRESSION:
        http/tests/plugins/cross-frame-object-access.html hangs Windows Layout
        Tests

        r30897 changed the way we conditionalize this feature.

        * plugins/PluginView.cpp:
        (WebCore::PluginView::getValue): Test ENABLE(NETSCAPE_PLUGIN_API)
        instead of USE(NPOBJECT).
        (WebCore::PluginView::bindingInstance): Same.

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

12 years ago Highlight nodes when you hover over them in the Console
aroben@apple.com [Thu, 20 Mar 2008 22:59:35 +0000 (22:59 +0000)]
    Highlight nodes when you hover over them in the Console

        Part of Bug 16532: Inspector should highlight nodes in page when
        hovering over nodes in Inspector's interface

        <http://bugs.webkit.org/show_bug.cgi?id=16532>
        <rdar://problem/5712896>

        Reviewed by Tim Hatcher.

        * page/inspector/ConsolePanel.js:
        (WebInspector.ConsolePanel._formatnode): Add mouseover/mouseout event
        listeners to highlight the node and clear the highlight.

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

12 years ago Highlight nodes in the page when you hover over their DOM breadcrumbs
aroben@apple.com [Thu, 20 Mar 2008 22:59:09 +0000 (22:59 +0000)]
    Highlight nodes in the page when you hover over their DOM breadcrumbs

        Part of Bug 16532: Inspector should highlight nodes in page when
        hovering over nodes in Inspector's interface

        <http://bugs.webkit.org/show_bug.cgi?id=16532>
        <rdar://problem/5712896>

        Reviewed by Tim Hatcher.

        * page/inspector/DocumentPanel.js:
        (WebInspector.DocumentPanel): Add an mouseout event listener to the
        breadcrumbs element to clear the highlighted node.
        (WebInspector.DocumentPanel.updateBreadcrumbs): Change the mouseover
        event listener to highlight the node represented by the hovered
        breadcrumb.

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

12 years ago Highlight nodes in the page when you hover over them in the DOM tree
aroben@apple.com [Thu, 20 Mar 2008 22:58:44 +0000 (22:58 +0000)]
    Highlight nodes in the page when you hover over them in the DOM tree

        Part of Bug 16532: Inspector should highlight nodes in page when
        hovering over nodes in Inspector's interface

        <http://bugs.webkit.org/show_bug.cgi?id=16532>
        <rdar://problem/5712896>

        The inspected node is no longer highlighted (unless, of course, you
        hover over it).

        Reviewed by Tim Hatcher.

        * page/inspector/DocumentPanel.js:
        (WebInspector.DocumentPanel):
          - Don't highlight the focused node when the DOM tree is shown
          - Added mousemove/mouseout event listeners to set/clear the
            highlighted node. These are added to the root of the DOM tree
            instead of to each individual list item to avoid flashing as the
            mouse moves between nodes.
        (WebInspector.DocumentPanel.set focusedDOMNode): Don't highlight the
        focused node.
        (WebInspector.DocumentPanel._onmousemove): Highlight the node under
        the mouse.

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

12 years ago Show nodes' content/padding/border/margin boxes in the node highlight
aroben@apple.com [Thu, 20 Mar 2008 22:58:18 +0000 (22:58 +0000)]
    Show nodes' content/padding/border/margin boxes in the node highlight

        Part of Bug 17221: Node highlight should show node metrics

        <http://bugs.webkit.org/show_bug.cgi?id=17221>
        <rdar://problem/5732822>

        Outstanding issues:
          1) We don't show padding/border/margins for inlines
          2) We don't show any numeric metrics, we just draw the boxes
          3) We'll probably want to tweak the look of the highlight some, at
             least to make the boxes better distinguishable

        Reviewed by Tim Hatcher.

        * page/InspectorController.cpp:
        (WebCore::drawOutlinedRect): Added. Just draws a single rect.
        (WebCore::drawHighlightForBoxes): Added. Takes the rects we calculated
        for the node and draws the highlight.
        (WebCore::InspectorController::drawNodeHighlight): Calculates the
        content/padding/border/margin boxes for blocks and passes them off to
        drawHighlightForBoxes. The behavior for inlines is for now unchanged.

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

12 years ago Fix RenderContainer's override of addLineBoxRects to match RenderObject's
aroben@apple.com [Thu, 20 Mar 2008 22:57:51 +0000 (22:57 +0000)]
    Fix RenderContainer's override of addLineBoxRects to match RenderObject's

        RenderContainer::addLineBoxRects was never getting called because its
        parameters didn't match those of RenderObject::addLineBoxRects.

        Reviewed by Mitz Pettel.

        No test possible.

        * rendering/RenderContainer.cpp: Added an optional bool
        useSelectionHeight parameter to match RenderObject's method.
        * rendering/RenderContainer.h: Ditto.

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

12 years agoTweak NodeList tests to ensure that they force a GC outside of DRT.
mrowe@apple.com [Thu, 20 Mar 2008 22:38:58 +0000 (22:38 +0000)]
Tweak NodeList tests to ensure that they force a GC outside of DRT.

Rubber-stamped by Sam Weinig.

* fast/dom/NodeList/5725058-crash-scenario-1.html:
* fast/dom/NodeList/5725058-crash-scenario-2.html:

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

12 years ago Reviewed by Adam Roben.
mitz@apple.com [Thu, 20 Mar 2008 22:37:05 +0000 (22:37 +0000)]
    Reviewed by Adam Roben.

        - make makeTextLarger() and zoomPageIn() do what they are supposed to do

        * WebView.cpp:
        (WebView::makeTextLarger): Changed call to canZoomIn() to zoomIn().
        (WebView::zoomPageIn): Ditto.

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

12 years ago2008-03-20 Marco Barisione <marco.barisione@collabora.co.uk>
alp@webkit.org [Thu, 20 Mar 2008 21:00:24 +0000 (21:00 +0000)]
2008-03-20  Marco Barisione  <marco.barisione@collabora.co.uk>

        Reviewed by Alp Toker.

        http://bugs.webkit.org/show_bug.cgi?id=17946
        [GTK] Widgets are not clipped

        * platform/gtk/RenderThemeGtk.cpp:
        (WebCore::paintMozWidget): pass the clipping rectangle to
        moz_gtk_widget_paint() instead of just the widget rectangle.

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

12 years ago2008-03-20 Alp Toker <alp@atoker.com>
alp@webkit.org [Thu, 20 Mar 2008 20:44:41 +0000 (20:44 +0000)]
2008-03-20  Alp Toker  <alp@atoker.com>

        GTK+ build fix. Back out r31183. This patch also introduced API style
        issues.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
        * webkit/headers.pri:
        * webkit/webkit-marshal.list:
        * webkit/webkitdefines.h:
        * webkit/webkitnavigationaction.cpp: Removed.
        * webkit/webkitnavigationaction.h: Removed.
        * webkit/webkitprivate.cpp:
        * webkit/webkitprivate.h:
        * webkit/webkitwebview.cpp:
        * webkit/webkitwebview.h:

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

12 years ago.:
andersca@apple.com [Thu, 20 Mar 2008 18:19:07 +0000 (18:19 +0000)]
.:

2008-03-20  Jasper Bryant-Greene  <jasper@unix.geek.nz>

        Reviewed by Anders.

        Resolves http://bugs.webkit.org/show_bug.cgi?id=16092
        "[GTK] Middle-mouse click should allow opening a URL in a new tab"

        Added WebKitNavigationAction object to GTK API

        * GNUmakefile.am:

WebKit/gtk:

2008-03-20  Jasper Bryant-Greene  <jasper@unix.geek.nz>

        Reviewed and tweaked by Anders.

        Resolves http://bugs.webkit.org/show_bug.cgi?id=16092
        "[GTK] Middle-mouse click should allow opening a URL in a new tab"

        Created WebKitNavigationAction object exported through the API. The
        navigation-requested signal provides this object as context for the
        requested navigation, allowing the application to decide what to do
        with the navigation based on which mouse button was used, which
        modifier keys were held down, etc. This allows, for example, the
        application to open links in a new tab when either middle-click or
        control-click are used to initiate the navigation.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::dispatchDecidePolicyForNavigationAction):
        * webkit/headers.pri:
        * webkit/webkit-marshal.list:
        * webkit/webkitdefines.h:
        * webkit/webkitnavigationaction.cpp: Added.
        (webkit_navigation_action_finalize):
        (webkit_navigation_action_class_init):
        (webkit_navigation_action_init):
        (webkit_navigation_action_get_button):
        (webkit_navigation_action_get_modifier_flags):
        (webkit_navigation_action_get_navigation_type):
        (webkit_navigation_action_get_original_url):
        * webkit/webkitnavigationaction.h: Added.
        * webkit/webkitprivate.cpp:
        (WebKit::kit):
        * webkit/webkitprivate.h:
        * webkit/webkitwebview.cpp:
        * webkit/webkitwebview.h:

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

12 years agoAdded layout test for dynamic sibling selector patch.
hyatt@apple.com [Thu, 20 Mar 2008 17:59:53 +0000 (17:59 +0000)]
Added layout test for dynamic sibling selector patch.

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

12 years ago2008-03-20 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Thu, 20 Mar 2008 17:59:34 +0000 (17:59 +0000)]
2008-03-20  David Hyatt  <hyatt@apple.com>

        Fix for http://bugs.webkit.org/show_bug.cgi?id=9279

        Make :hover work with the adjacent sibling selector.  This fix makes all forms of dynamic changes
        (class name changes, :hover, :focus, etc.) work properly when used with the + selector.

        Reviewed by weinig

        Added fast/css/dynamic-sibling-selector.html

        * dom/Element.cpp:
        (WebCore::Element::recalcStyle):

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

12 years agoAdd full page zoom API for Windows WebKit.
hyatt@apple.com [Thu, 20 Mar 2008 17:22:05 +0000 (17:22 +0000)]
Add full page zoom API for Windows WebKit.

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

12 years agoWebKit:
sullivan@apple.com [Thu, 20 Mar 2008 16:18:49 +0000 (16:18 +0000)]
WebKit:

2008-03-20  John Sullivan  <sullivan@apple.com>

        * StringsNotToBeLocalized.txt:
        Brought this file up to date

WebKit/win:

2008-03-20  John Sullivan  <sullivan@apple.com>

        * English.lproj/Localizable.strings:
        Brought this file up to date

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

12 years agoWebCore:
ddkilzer@apple.com [Thu, 20 Mar 2008 16:09:43 +0000 (16:09 +0000)]
WebCore:

2008-03-20  Aaron Golden  <aegolden@gmail.com>

        Reviewed by Darin and David Kilzer.

        Addresses <http://bugs.webkit.org/show_bug.cgi?id=15263>, which caused certain marquees to not display.

        Test: fast/html/marquee-scroll.html

        * html/HTMLMarqueeElement.cpp:
        (WebCore::HTMLMarqueeElement::parseMappedAttribute):

LayoutTests:

2008-03-20  Aaron Golden  <aegolden@gmail.com>

        Reviewed by Darin and David Kilzer.

        - test for <http://bugs.webkit.org/show_bug.cgi?id=15263>, which caused certain marquees to not display.

        * fast/html/marquee-scroll.html: Added.
        * platform/mac/fast/html/marquee-scroll-expected.checksum: Added.
        * platform/mac/fast/html/marquee-scroll-expected.png: Added.
        * platform/mac/fast/html/marquee-scroll-expected.txt: Added.

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

12 years ago Make WebNodeHighlightView use InspectorController to do its painting
aroben@apple.com [Thu, 20 Mar 2008 16:01:03 +0000 (16:01 +0000)]
 Make WebNodeHighlightView use InspectorController to do its painting

 WebCore:

         Export InspectorController::drawNodeHighlight

         Reviewed by Tim Hatcher.

         * WebCore.base.exp: Also sorted this file.

 WebKit:

         Mark WebNodeHighlight.m and WebNodeHighlightView.m Obj-C++

         Reviewed by Tim Hatcher.

         * WebKit.xcodeproj/project.pbxproj:

 WebKit/mac:

         Make WebNodeHighlightView use InspectorController to do its painting

         Reviewed by Tim Hatcher.

         * WebCoreSupport/WebInspectorClient.mm:
         (-[WebInspectorWindowController highlightNode:]): Pass the
         InspectorController to the WebNodeHighlight, and don't call
         setHighlightedNode: (which has been removed).
         (-[WebInspectorWindowController hideHighlight]): Removed call to
         setHighlightedNode:.
         * WebInspector/WebNodeHighlight.h:
           - Replaced _highlightNode with _inspectorController
           - Removed _highlightedNode accessors
           - Added -inspectorController method
         * WebInspector/WebNodeHighlight.m:
         (-[WebNodeHighlight initWithTargetView:inspectorController:]): Now
         takes an InspectorController* and stores it in _inspectorController.
         (-[WebNodeHighlight dealloc]): Removed code dealing with
         _highlightedNode.
         (-[WebNodeHighlight inspectorController]): Added.
         * WebInspector/WebNodeHighlightView.m: Removed FileInternal category.
         (-[WebNodeHighlightView isFlipped]): Added. WebCore expects all
         GraphicsContexts to be based on a flipped CGContext, so we have to
         specify that this view is flipped.
         (-[WebNodeHighlightView drawRect:]): Changed to create a
         GraphicsContext and pass it to InspectorController::drawNodeHighlight.

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

12 years ago2008-03-20 David Krause <david.krause@gmail.com>
ddkilzer@apple.com [Thu, 20 Mar 2008 14:33:19 +0000 (14:33 +0000)]
2008-03-20  David Krause  <david.krause@gmail.com>

        Reviewed by David Kilzer.

        Fix http://bugs.webkit.org/show_bug.cgi?id=17923
        Bug 17923: ARM platform endian defines inaccurate

        * wtf/Platform.h:
        Replaced !defined(__ARMEL__) check with !defined(__VFP_FP__)
        for PLATFORM(MIDDLE_ENDIAN)

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

12 years ago2008-03-20 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Thu, 20 Mar 2008 10:20:37 +0000 (10:20 +0000)]
2008-03-20  Maciej Stachowiak  <mjs@apple.com>

        - fix build

        * ForwardingHeaders/wtf/ListRefPtr.h: Added.

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

12 years ago2008-03-20 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Thu, 20 Mar 2008 10:20:31 +0000 (10:20 +0000)]
2008-03-20  Maciej Stachowiak  <mjs@apple.com>

        - fix build

        * JavaScriptCore.xcodeproj/project.pbxproj: install Activation.h as private

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

12 years ago2008-03-20 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Thu, 20 Mar 2008 09:34:47 +0000 (09:34 +0000)]
2008-03-20  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver.

        - reduce function call overhead for 1.014x speedup on SunSpider

        I moved some functions from ExecState.cpp to ExecStateInline.h and
        from JSGlobalObject.cpp to JSGlobalObject.h, and declared them
        inline; machine function call overhead for these was hurting JS
        funcion call overhead.

        * kjs/ExecState.cpp:
        * kjs/ExecStateInlines.h: Added.
        (KJS::ExecState::ExecState):
        (KJS::ExecState::~ExecState):
        (KJS::FunctionExecState::FunctionExecState):
        (KJS::FunctionExecState::~FunctionExecState):
        * kjs/JSGlobalObject.cpp:
        * kjs/JSGlobalObject.h:
        (KJS::JSGlobalObject::pushActivation):
        (KJS::JSGlobalObject::checkActivationCount):
        (KJS::JSGlobalObject::popActivation):
        * kjs/function.cpp:

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

12 years agoAvoid heap allocating the root scope chain node for eval and closure free functions
oliver@apple.com [Thu, 20 Mar 2008 06:36:26 +0000 (06:36 +0000)]
Avoid heap allocating the root scope chain node for eval and closure free functions

Reviewed by Maciej

Maciej suggested using an inline ScopeChainNode for functions that don't use eval
or closures as they are unable to ever capture the scope chain.  This gives us a 2.4%
win in sunspider, a 15% win in controlflow-recursive, and big (>5%) wins in a number
of other tests.

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

12 years ago2008-03-19 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Thu, 20 Mar 2008 05:23:19 +0000 (05:23 +0000)]
2008-03-19  Stephanie Lewis  <slewis@apple.com>

        Rubber-stamped by Anders.

        Fix Windows Build

        * platform/cf/SharedBufferCF.cpp:
        (WebCore::SharedBuffer::createCFData):

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

12 years ago2008-03-19 Stephanie Lewis <slewis@apple.com>
slewis@apple.com [Thu, 20 Mar 2008 04:51:43 +0000 (04:51 +0000)]
2008-03-19  Stephanie Lewis <slewis@apple.com>

        Rubber-stamped by Anders.

        Fix Windows Build

        * platform/SharedBuffer.h:

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

12 years agoWebCore:
justin.garcia@apple.com [Thu, 20 Mar 2008 03:15:17 +0000 (03:15 +0000)]
WebCore:

2008-03-19  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5780697> Copying content with CSS property values that are percentages can cause fidelity issues

        Elements with height: x%; overflow: visible; overlap what's below them when they are copied from
        a document in quirksmode and pasted into to one in standards mode.  This fix uses the computed
        the value for a property if its value is a percentage.

        * css/CSSMutableStyleDeclaration.cpp:
        (WebCore::CSSMutableStyleDeclaration::addParsedProperty): Added so that we don't have to use
        setProperty from appendStartMarkup.  We already have a parsed property value, so we shouldn't
        use setProperty, since it takes in a String.  If we did, we would have to call CSSValue::cssText()
        for a String only to re-parse it in setProperty.  This wasn't extremely important now, but it will
        be as we compute more properties to fix the rest of the copy/paste fidelity bugs.
        * css/CSSMutableStyleDeclaration.h:
        * editing/markup.cpp:
        (WebCore::appendStartMarkup): Compute values for properties that have percentage values.  We could
        perhaps narrow this special case to only include properties that are effected by quirksmode.

LayoutTests:

2008-03-19  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5780697> Copying content with CSS property values that are percentages can cause fidelity issues

        * editing/pasteboard/5780697-2-expected.txt: Added.
        * editing/pasteboard/5780697-2.html: Added.

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

12 years ago2008-03-19 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Thu, 20 Mar 2008 01:14:42 +0000 (01:14 +0000)]
2008-03-19  Mark Rowe  <mrowe@apple.com>

        Reviewed by Sam Weinig.

        Fix release build.

        * kjs/JSGlobalObject.cpp:  Add missing #include.

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

12 years agoJavaScriptCore:
weinig@apple.com [Thu, 20 Mar 2008 01:00:15 +0000 (01:00 +0000)]
JavaScriptCore:

2008-03-19  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Fix for <rdar://problem/5785694>
        Crash occurs at KJS::Collector::collect() when loading web clip widgets with a PAC file

        Make the activeExecStates stack per JSGlobalObject instead of static to ensure
        thread safety.

        * JavaScriptCore.exp:
        * kjs/ExecState.cpp:
        (KJS::InterpreterExecState::InterpreterExecState):
        (KJS::InterpreterExecState::~InterpreterExecState):
        (KJS::EvalExecState::EvalExecState):
        (KJS::EvalExecState::~EvalExecState):
        (KJS::FunctionExecState::FunctionExecState):
        (KJS::FunctionExecState::~FunctionExecState):
        * kjs/ExecState.h:
        (KJS::):
        * kjs/JSGlobalObject.cpp:
        (KJS::JSGlobalObject::mark):
        * kjs/JSGlobalObject.h:
        (KJS::JSGlobalObject::activeExecStates):
        * kjs/collector.cpp:
        (KJS::Collector::collect):
        (KJS::Collector::reportOutOfMemoryToAllExecStates): Iterate all JSGlobalObjects and report
        the OutOfMemory condition to all the ExecStates in each.

WebCore:

2008-03-19  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Fix for <rdar://problem/5785694>
        Crash occurs at KJS::Collector::collect() when loading web clip widgets with a PAC file

        Make the activeExecStates stack per JSGlobalObject instead of static to ensure
        thread safety.

        * bindings/objc/WebScriptObject.mm:
        (+[WebScriptObject throwException:]): Change to throw an exception on the current
        GlobalObject instead of the top of the static activeExecStates stack.
        (-[WebScriptObject setException:]): Change to use the top of the rootObjects GlobalObject
        instead of the top of the static activeExecStates stack.

        * bridge/c/c_instance.cpp:
        * bridge/c/c_instance.h:
        * bridge/jni/jni_instance.cpp:
        (JavaInstance::virtualBegin):
        (JavaInstance::virtualEnd):
        * bridge/jni/jni_instance.h:
        * bridge/objc/objc_instance.h:
        * bridge/objc/objc_instance.mm:
        (ObjcInstance::~ObjcInstance):
        (ObjcInstance::virtualBegin):
        (ObjcInstance::virtualEnd):
        * bridge/runtime.cpp:
        (KJS::Bindings::Instance::setDidExecuteFunction):
        (KJS::Bindings::Instance::didExecuteFunction):
        (KJS::Bindings::Instance::setCurrentGlobalObject): Added.
        (KJS::Bindings::Instance::currentGlobalObject): Added.
        (KJS::Bindings::Instance::begin):
        (KJS::Bindings::Instance::end):
        * bridge/runtime.h:
        (KJS::Bindings::Instance::virtualBegin): Renamed from begin().
        (KJS::Bindings::Instance::virtualEnd): Renamed from end().
        We now store the currently active globalObject everytime we cross the runtime
        object boundary.  To do this, we take advantage of the existing begin/end
        methods that are called when crossing this boundary, making begin set the current
        globalObject and then call the old begin, now called virtualBegin.

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

12 years ago2008-03-19 Brady Eidson <beidson@apple.com>
beidson@apple.com [Thu, 20 Mar 2008 00:24:07 +0000 (00:24 +0000)]
2008-03-19  Brady Eidson  <beidson@apple.com>

        Reviewed by Anders

        Change SharedBuffer so the wrapping platform data aspect can be shared with all CoreFoundation platforms
        (Mac and Windows instead of just Mac)

        * WebCore.vcproj/WebCore.vcproj: Add SharedBufferCF.cpp
        * WebCore.xcodeproj/project.pbxproj: Ditto

        * platform/SharedBuffer.cpp:
        * platform/SharedBuffer.h: Change the private c'tor from NSData to CFDataRef, other PLATFORM tweaks

        * platform/cf/SharedBufferCF.cpp: Added.
        (WebCore::SharedBuffer::SharedBuffer):
        (WebCore::SharedBuffer::createCFData): Non-Mac version of createCFData
        (WebCore::SharedBuffer::hasPlatformData):
        (WebCore::SharedBuffer::platformData):
        (WebCore::SharedBuffer::platformDataSize):
        (WebCore::SharedBuffer::maybeTransferPlatformData):
        (WebCore::SharedBuffer::clearPlatformData):

        * platform/mac/SharedBufferMac.mm:
        (WebCore::SharedBuffer::wrapNSData): Use the CFDataRef constructor via toll-free bridging
        (WebCore::SharedBuffer::createCFData): Mac-specific version of createCFData

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

12 years ago2008-03-19 Dan Bernstein <mitz@apple.com>
mitz@apple.com [Wed, 19 Mar 2008 23:44:00 +0000 (23:44 +0000)]
2008-03-19  Dan Bernstein  <mitz@apple.com>

        - build fix

        * Interfaces/WebKit.idl: Touched.

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

12 years ago Fix a couple of bugs where the node highlight would appear when it shouldn't
aroben@apple.com [Wed, 19 Mar 2008 22:31:39 +0000 (22:31 +0000)]
    Fix a couple of bugs where the node highlight would appear when it shouldn't

        There were at least two ways you could get the highlight to appear
        when it shouldn't:
          1) Selecting a node in the Inspector while the inspected WebView was
             in a background tab.
          2) Selecting a node in the Inspector, switching to another tab,
             closing the Inspector, then switching back to the inspected
             WebView's tab.

        This patch fixes the above two issues, and possibly others.

        show() and hide() are now private methods of WebNodeHighlight. They
        are replaced by a single public method,
        setShowsWhileWebViewIsVisible(bool). WebInspectorClient uses this to
        tell the highlight whether it should be showing when the inspected
        WebView is visible.

        Reviewed by John Sullivan.

        * WebCoreSupport/WebInspectorClient.cpp:
        (WebInspectorClient::highlight): If the highlight is already showing,
        it just needs to update since the highlighted node has changed. If the
        highlight is not showing, call setShowsWhileWebViewIsVisible(true) so
        that the highlight will show when the WebView is shown.
        (WebInspectorClient::hideHighlight): Changed to call
        setShowsWhileWebViewIsVisible(false) instead of hide().
        * WebNodeHighlight.cpp:
        (WebNodeHighlight::WebNodeHighlight): Initialize new member, and
        initialize m_inspectedWebViewWindow to its final value here instead of
        in show().
        (WebNodeHighlight::setShowsWhileWebViewIsVisible): Added. If we're not
        supposed to show ourselves when the WebView is visible, we hide
        ourselves and return. Otherwise, we make our visibility match the
        WebView's.
        (WebNodeHighlight::isWebViewVisible): Added.
        (WebNodeHighlight::show): Removed initialization of
        m_inspectedWebViewWindow (this is now done by our constructor). Added
        an assertion that we're supposed to show ourselves when the WebView is
        visible.
        (WebNodeHighlight::onWebViewShowWindow): If we shouldn't show
        ourselves when the WebView is visible, then we don't need to do
        anything at all when the WebView's visibility changes.
        * WebNodeHighlight.h:

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

12 years ago Small WebNodeHighlight cleanup
aroben@apple.com [Wed, 19 Mar 2008 22:31:20 +0000 (22:31 +0000)]
    Small WebNodeHighlight cleanup

        Renamed the following methods:
          visible() -> isShowing()
          updateWindow() -> update()

        Removed the window() method.

        Added a new method, placeBehindWindow(HWND), that moves the highlight
        overlay in the window z-order to be just behind the passed-in window.
        WebInspectorClient calls this instead of doing the move directly using
        the old window() method.

        Reviewed by John Sullivan.

        * WebCoreSupport/WebInspectorClient.cpp:
        (WebInspectorClient::attachWindow):
        (WebInspectorClient::detachWindow):
        (WebInspectorClient::highlight): Call placeBehindWindow instead of
        calling SetWindowPos directly.
        * WebNodeHighlight.cpp:
        (WebNodeHighlight::show):
        (WebNodeHighlight::isShowing):
        (WebNodeHighlight::placeBehindWindow): Added. Code came from
        WebInspectorClient::highlight.
        (WebNodeHighlight::onWebViewWindowPosChanged):
        (WebNodeHighlight::onRootWindowPosChanged):
        * WebNodeHighlight.h:

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

12 years agoBug 17954: Canvas arc() with radius of 0 throws exception
oliver@apple.com [Wed, 19 Mar 2008 22:28:07 +0000 (22:28 +0000)]
Bug 17954: Canvas arc() with radius of 0 throws exception
http://bugs.webkit.org/show_bug.cgi?id=17954

Reviewed by Antti

Simple fix -- use >= instead of > when validating the radius.

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

12 years agoWebCore:
justin.garcia@apple.com [Wed, 19 Mar 2008 21:57:10 +0000 (21:57 +0000)]
WebCore:

2008-03-19  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5794920> Acid3: Assertion failure in VisiblePosition::previous when clicking on results (17004)

        The position inside an empty inline-block was a candidate, but upstream and downstream
        would move across it without stopping.  This confused canonicalPosition, since no more
        than two candidates should have the same upstream/downstream (be visually equivalent).

        Code was added intentionally in isCandidate to make VisiblePositions inside empty
        inline-blocks, so we need to make upstream/downstream understand that.

        * dom/Position.cpp:
        (WebCore::endsOfNodeAreVisuallyDistinctPositions): upstream and downstream used to only
        stop when entering or leaving a non-inline element (referred to as a "block").  We must also
        avoid entering or leaving an empty inline-block.  This will allow a VisiblePosition there, to
        match up with what the code in isCandidate intended.
        (WebCore::enclosingVisualBoundary): Removed enclosingBlock and replaced it with this.
        (WebCore::Position::upstream): Added better comments, called the new functions.
        (WebCore::Position::downstream): Ditto.
        * dom/Position.h:

LayoutTests:

2008-03-19  Justin Garcia  <justin.garcia@apple.com>

        Reviewed by Oliver.

        <rdar://problem/5794920> Acid3: Assertion failure in VisiblePosition::previous when clicking on results (17004)

        * editing/pasteboard/4989774.html: Updated to wait for the images to load before trying to copy it.
        * editing/selection/5794920-1-expected.txt: Added.
        * editing/selection/5794920-1.html: Added.

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

12 years ago2008-03-19 Dan Bernstein <mitz@apple.com>
mitz@apple.com [Wed, 19 Mar 2008 21:51:30 +0000 (21:51 +0000)]
2008-03-19  Dan Bernstein  <mitz@apple.com>

        Rubber-stamped by John Sullivan.

        - change CSS property and value keyword constants from all-caps with
          underscores to intra-caps.

        * css/makeprop.pl:
        * css/makevalues.pl:
        * All files using the constants

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

12 years ago Make clicking anywhere in a row in the DOM tree select that row's node
aroben@apple.com [Wed, 19 Mar 2008 20:39:18 +0000 (20:39 +0000)]
    Make clicking anywhere in a row in the DOM tree select that row's node

        We now have mousedown and dblclick event listeners on the root of the
        tree that forward the event to the node on the row the mouse is over.

        Reviewed by Tim Hatcher.

        * page/inspector/DocumentPanel.js:
        (WebInspector.DocumentPanel): Added a dblclick and mousedown event
        listeners to the root of the tree.
        (WebInspector.DocumentPanel._treeElementFromEvent): Added. Finds the
        tree element for the row underneath the mouse.
        (WebInspector.DocumentPanel._ondblclick): Added. Sends the dblclick
        event on to the tree element in the current row.
        (WebInspector.DocumentPanel._onmousedown): Added. Selects the tree
        element in the current row.
        * page/inspector/treeoutline.js:
        (TreeOutline.treeElementFromPoint): Added.
        (TreeElement.treeElementSelected): Changed to call
        TreeElement.isEventWithinDisclosureTriangle, and added an early return.
        (TreeElement.treeElementToggled): Ditto.
        (TreeElement.isEventWithinDisclosureTriangle): Added.
        * page/inspector/utilities.js:
        (Node.enclosingNodeOrSelfWithNodeNameInArray): Added.
        (Node.enclosingNodeOrSelfWithNodeName): Now just calls
        enclosingNodeOrSelfWithNodeNameInArray.
        (Elemnt.get totalOffsetLeft): Added.
        (Elemnt.get totalOffsetTop): Added.

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

12 years agoFix http://bugs.webkit.org/show_bug.cgi?id=17816 (libWebCoreSQLite3.a is 2-architectu...
mrowe@apple.com [Wed, 19 Mar 2008 20:28:11 +0000 (20:28 +0000)]
Fix bugs.webkit.org/show_bug.cgi?id=17816 (libWebCoreSQLite3.a is 2-architecture universal binary (not 4-architecture)).

Rubber-stamped by Sam Weinig.

* libWebCoreSQLite3.a:  Land a 4-way fat binary.

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

12 years agoWebCore:
mitz@apple.com [Wed, 19 Mar 2008 18:40:52 +0000 (18:40 +0000)]
WebCore:

        Reviewed by Sam Weinig.

        - fix assertion failure in RenderBlock::determineStartPosition() at http://www.wired.com/techbiz/it/magazine/16-04/bz_apple

        Test: fast/repaint/line-flow-with-floats-10.html

        * rendering/bidi.cpp:
        (WebCore::RenderBlock::determineStartPosition): Removed bogus assertion.
        If the float's top margin has changed and it has not been repositioned
        yet, we do not have its new y position.

LayoutTests:

        Reviewed by Sam Weinig.

        - test for assertion failure in RenderBlock::determineStartPosition() at http://www.wired.com/techbiz/it/magazine/16-04/bz_apple

        * fast/repaint/line-flow-with-floats-10.html: Added.
        * platform/mac/fast/repaint/line-flow-with-floats-10-expected.checksum: Added.
        * platform/mac/fast/repaint/line-flow-with-floats-10-expected.png: Added.
        * platform/mac/fast/repaint/line-flow-with-floats-10-expected.txt: Added.

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

12 years ago2008-03-19 Ada Chan <adachan@apple.com>
adachan@apple.com [Wed, 19 Mar 2008 18:24:43 +0000 (18:24 +0000)]
2008-03-19  Ada Chan  <adachan@apple.com>

        Added a method to paint WebView content specified by
        the document rect into a device context.

        Reviewed by Darin.

        * Interfaces/IWebViewPrivate.idl:
        * WebView.cpp:
        (WebView::paintDocumentRectToContext):
        * WebView.h:

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

12 years ago2008-03-19 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Wed, 19 Mar 2008 17:58:22 +0000 (17:58 +0000)]
2008-03-19  David Hyatt  <hyatt@apple.com>

        New implementation of full page zoom.  Because of how much doesn't transform when zooming, and because
        of the need to obey viewport constraints, I decided to take a completely different approach.  Now CSS
        lengths and intrinsic sizes are simply adjusted by the zoom factor.  This approach works much better and
        avoids pixel cracks more than the old approach.   In addition widgets "just work", namely plugins zoom
        and scrollbars do not.

        This patch also implements the IE zoom CSS property.  This property allows fine-grained control over
        zooming at the element level.  It takes values of normal | <number> | <percentage> to match WinIE.  In
        addition, in the vein of text-size-adjust for text zooming, I have extended the zoom property with an
        extra value, reset.  The reset keyword can be used to prevent a section of the page from scaling at all
        when a zoom is applied.

        Reviewed by olliej

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::):
        (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
        Support the new 'zoom' property for getComputedStyle.

        * css/CSSParser.cpp:
        (WebCore::CSSParser::parseValue):
        Code that parses the 'zoom' property.

        * css/CSSPrimitiveValue.cpp:
        (WebCore::CSSPrimitiveValue::computeLengthInt):
        (WebCore::CSSPrimitiveValue::computeLengthIntForLength):
        (WebCore::CSSPrimitiveValue::computeLengthShort):
        (WebCore::CSSPrimitiveValue::computeLengthFloat):
        (WebCore::CSSPrimitiveValue::computeLengthDouble):
        * css/CSSPrimitiveValue.h:
        Extend all of the computeLength methods to take a multiplier so that lengths can be adjusted by the
        zoom factor.

        * css/CSSPropertyNames.in:
        Add the new zoom property to the list of properties we understand.

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyDeclarations):
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::mapBackgroundSize):
        (WebCore::CSSStyleSelector::mapBackgroundXPosition):
        (WebCore::CSSStyleSelector::mapBackgroundYPosition):
        (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
        * css/CSSStyleSelector.h:
        (WebCore::CSSStyleSelector::setStyle):
        Pass in the zoom factor when computing all lengths in CSS.

        * css/CSSValueKeywords.in:
        Add support for the 'reset' keyword of the zoom property.

        * dom/Document.cpp:
        (WebCore::Document::recalcStyle):
        Set the 'zoom' CSS property on the RenderView.  This is how we implement full page zoom.

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::size):
        Make sure the back end canvas size ignores zooming when rendering images.

        * html/HTMLImageElement.cpp:
        (WebCore::HTMLImageElement::width):
        (WebCore::HTMLImageElement::height):
        (WebCore::HTMLImageElement::naturalWidth):
        (WebCore::HTMLImageElement::naturalHeight):
        Use the unzoomed width/height if we have no style information in HTMLImageElement.cpp.

        * loader/CachedImage.cpp:
        (WebCore::CachedImage::ref):
        (WebCore::CachedImage::imageSize):
        (WebCore::CachedImage::imageRect):
        * loader/CachedImage.h:
        (WebCore::CachedImage::canRender):
        Force access to the CachedImage metrics to take a multiplier so that people have to think about
        the zoom factor.  The "intrinsic size" of the image then takes that into account.

        * loader/ImageDocument.cpp:
        (WebCore::ImageTokenizer::finish):
        (WebCore::ImageDocument::scale):
        (WebCore::ImageDocument::resizeImageToFit):
        (WebCore::ImageDocument::imageChanged):
        (WebCore::ImageDocument::restoreImageSize):
        (WebCore::ImageDocument::imageFitsInWindow):
        Make sure image documents respect the zoom.

        * page/AnimationController.cpp:
        (WebCore::ImplicitAnimation::animate):
        Make the 'zoom' CSS property work with CSS transitions.

        * page/Frame.h:
        (WebCore::Frame::pageZoomFactor):
        (WebCore::Frame::textZoomFactor):
        Add accessors for obtaining the pageZoom vs. textZoom.

        * page/FrameView.cpp:
        (WebCore::FrameView::adjustViewSize):
        Remove the old zoom implementation that used transforms.

        * page/mac/WebCoreAXObject.mm:
        (-[WebCoreAXObject accessibilityIsIgnored]):
        Pass in the zoom factor.

        * rendering/InlineFlowBox.cpp:
        (WebCore::InlineFlowBox::paintBackground):
        (WebCore::InlineFlowBox::paintBoxDecorations):
        Pass in the zoom factor when testing for size.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::calculateBackgroundSize):
        (WebCore::RenderBox::imageChanged):
        (WebCore::RenderBox::paintBackgroundExtended):
        (WebCore::RenderBox::calcHeight):
        * rendering/RenderFrameSet.cpp:
        (WebCore::RenderFrameSet::layout):
        * rendering/RenderHTMLCanvas.cpp:
        (WebCore::RenderHTMLCanvas::canvasSizeChanged):
        * rendering/RenderHTMLCanvas.h:
        (WebCore::RenderHTMLCanvas::renderName):
        (WebCore::RenderHTMLCanvas::intrinsicSizeChanged):
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::setImageSizeForAltText):
        (WebCore::RenderImage::imageChanged):
        (WebCore::RenderImage::calcReplacedWidth):
        (WebCore::RenderImage::calcReplacedHeight):
        * rendering/RenderImage.h:
        (WebCore::RenderImage::intrinsicSizeChanged):
        * rendering/RenderListMarker.cpp:
        (WebCore::RenderListMarker::layout):
        (WebCore::RenderListMarker::imageChanged):
        (WebCore::RenderListMarker::getRelativeMarkerRect):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
        (WebCore::RenderObject::paintBorder):
        Pass in the zoom factor when testing for size.

        * rendering/RenderReplaced.cpp:
        (WebCore::RenderReplaced::RenderReplaced):
        (WebCore::RenderReplaced::setStyle):
        (WebCore::RenderReplaced::intrinsicSizeChanged):
        * rendering/RenderReplaced.h:
        Added a new call when the zoom factor changes, intrinsicSizeChanged().  Replaced element subclasses
        respond to this via overrides.

        * rendering/RenderStyle.cpp:
        (WebCore::StyleVisualData::StyleVisualData):
        (WebCore::StyleInheritedData::StyleInheritedData):
        (WebCore::StyleInheritedData::operator==):
        (WebCore::RenderStyle::diff):
        * rendering/RenderStyle.h:
        (WebCore::StyleVisualData::operator==):
        (WebCore::RenderStyle::zoom):
        (WebCore::RenderStyle::zoomInEffect):
        (WebCore::RenderStyle::setZoom):
        (WebCore::RenderStyle::setZoomInEffect):
        (WebCore::RenderStyle::initialZoom):
        Support for 'zoom' in the RenderStyle.  "zoomInEffect" represents the computed zoom taking into account
        all the zooms specified on ancestors.

        * rendering/RenderTableCol.cpp:
        (WebCore::RenderTableCol::imageChanged):
        * rendering/RenderTableRow.cpp:
        (WebCore::RenderTableRow::imageChanged):
        * rendering/RenderTableSection.cpp:
        (WebCore::RenderTableSection::imageChanged):
        * rendering/RenderVideo.h:
        (WebCore::RenderVideo::intrinsicSizeChanged):
        Pass in the zoom factor.

        * rendering/RenderView.cpp:
        (WebCore::RenderView::calcHeight):
        (WebCore::RenderView::calcWidth):
        (WebCore::RenderView::layout):
        (WebCore::RenderView::viewHeight):
        (WebCore::RenderView::viewWidth):
        * rendering/RenderView.h:
        (WebCore::RenderView::zoomFactor):
        Back out the old implementation.

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

12 years ago Rename firstParent* methods to enclosingNode*
aroben@apple.com [Wed, 19 Mar 2008 16:29:34 +0000 (16:29 +0000)]
    Rename firstParent* methods to enclosingNode*

        Rubberstamped by John Sullivan.

        * page/inspector/ConsolePanel.js:
        * page/inspector/DocumentPanel.js:
        * page/inspector/NetworkPanel.js:
        * page/inspector/inspector.js:
        * page/inspector/utilities.js:

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

12 years agoWebCore:
mitz@apple.com [Wed, 19 Mar 2008 14:42:34 +0000 (14:42 +0000)]
WebCore:

        Reviewed by John Sullivan.

        - fix <rdar://problem/5805070> CrashTracer: [USER] 33 crashes in Safari at com.apple.WebCore: WebCore::FrameView::layout + 431

        Test: fast/dynamic/subtree-parent-static-y.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::markContainingBlocksForLayout): Avoid calling
        this method on the parent if the parent is the new layout subtree root,
        which would result in marking all the way to the top, when it should
        actually do nothing.

LayoutTests:

        Reviewed by John Sullivan.

        - test for <rdar://problem/5805070> CrashTracer: [USER] 33 crashes in Safari at com.apple.WebCore: WebCore::FrameView::layout + 431

        * fast/dynamic/subtree-parent-static-y.html: Added.
        * platform/mac/fast/dynamic/subtree-parent-static-y-expected.checksum: Added.
        * platform/mac/fast/dynamic/subtree-parent-static-y-expected.png: Added.
        * platform/mac/fast/dynamic/subtree-parent-static-y-expected.txt: Added.

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

12 years ago2008-03-19 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Wed, 19 Mar 2008 09:37:58 +0000 (09:37 +0000)]
2008-03-19  Mark Rowe  <mrowe@apple.com>

        Reviewed by Oliver Hunt.

        Use WTF::Unicode abstraction rather than using ICU functions directly.

        * html/PreloadScanner.cpp:
        (WebCore::PreloadScanner::tokenize):

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

12 years agoAttempt to fix the Gtk build.
mrowe@apple.com [Wed, 19 Mar 2008 09:22:45 +0000 (09:22 +0000)]
Attempt to fix the Gtk build.

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

12 years ago2008-03-19 Jasper Bryant-Greene <jasper@unix.geek.nz>
mrowe@apple.com [Wed, 19 Mar 2008 07:48:37 +0000 (07:48 +0000)]
2008-03-19  Jasper Bryant-Greene  <jasper@unix.geek.nz>

        Reviewed by Maciej Stachowiak.

        Fix http://bugs.webkit.org/show_bug.cgi?id=17941
        Bug 17941: C++-style comments in JavaScriptCore API

        * API/JSBase.h:
        Remove C++-style comments from public JavaScriptCore API, replacing
        with standard C90 block comments.

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

12 years ago2008-03-19 Mark Rowe <mrowe@apple.com>
mrowe@apple.com [Wed, 19 Mar 2008 07:18:09 +0000 (07:18 +0000)]
2008-03-19  Mark Rowe  <mrowe@apple.com>

        Reviewed by Oliver Hunt.

        Fix http://bugs.webkit.org/show_bug.cgi?id=17939
        Bug 17939: Crash decompiling "const a = 1, b;"

        * kjs/nodes2string.cpp:
        (KJS::ConstDeclNode::streamTo): Null-check the correct variable.

2008-03-19  Mark Rowe  <mrowe@apple.com>

        Reviewed by Oliver Hunt.

        Test for http://bugs.webkit.org/show_bug.cgi?id=17939
        Bug 17939: Crash decompiling "const a = 1, b;"

        * fast/js/function-toString-parentheses-expected.txt:
        * fast/js/resources/function-toString-parentheses.js:

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

12 years agoBug 17929: Incorrect decompilation with |const|, comma
oliver@apple.com [Wed, 19 Mar 2008 06:17:10 +0000 (06:17 +0000)]
Bug 17929: Incorrect decompilation with |const|, comma
http://bugs.webkit.org/show_bug.cgi?id=17929

Reviewed by Mark Rowe

There were actually two bugs here. First we weren't correctly handling const
nodes with multiple declarations. The second issue was caused by us not
giving the correct precedence to the initialisers.

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

12 years agoJavaScriptCore:
darin@apple.com [Wed, 19 Mar 2008 04:23:21 +0000 (04:23 +0000)]
JavaScriptCore:

2008-03-18  Darin Adler  <darin@apple.com>

        Reviewed by Maciej.

        - Speed up JavaScript built-in properties by changing the
          hash table to take advantage of the identifier objects

        5% speedup for Acid3 test 26

        * JavaScriptCore.exp: Updated.
        * kjs/create_hash_table: Compute size of hash table large enough so that there
        are no collisions, but don't generate the hash table.
        * kjs/identifier.h: Made the add function that returns a PassRefPtr public.
        * kjs/lexer.cpp:
        (KJS::Lexer::lex): Updated for change to HashTable interface.
        * kjs/lookup.cpp:
        (KJS::HashTable::changeKeysToIdentifiers): Added. Finds the identifier for
        each property so the equality comparision can be done with pointer comparision.
        * kjs/lookup.h: Made the key be a union of char* with UString::Rep* so it can
        hold identifiers. Added a keysAreIdentifiers flag to the HashTable. Changed
        the Lookup functions to be member functions of HashTable instead.
        * kjs/object.cpp:
        (KJS::JSObject::deleteProperty): Update for change to HashTable.
        (KJS::JSObject::findPropertyHashEntry): Ditto.
        (KJS::JSObject::getPropertyAttributes): Ditto.
        (KJS::JSObject::getPropertyNames): Ditto.

WebCore:

2008-03-18  Darin Adler  <darin@apple.com>

        Reviewed by Maciej.

        - Speed up JavaScript built-in properties by changing the
          hash table to take advantage of the identifier objects

        5% speedup for Acid3 test 26

        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::JSDOMWindowBase::getOwnPropertySlot): Update for change to HashTable.
        (WebCore::JSDOMWindowBase::put): Ditto.
        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::JSDOMWindow::customGetOwnPropertySlot): Ditto.
        * bindings/js/JSHTMLInputElementBase.cpp:
        (WebCore::JSHTMLInputElementBase::getOwnPropertySlot): Ditto.
        * bindings/js/JSHistoryCustom.cpp:
        (WebCore::JSHistory::customGetOwnPropertySlot): Ditto.
        * bindings/js/JSLocation.cpp:
        (WebCore::JSLocation::customGetOwnPropertySlot): Ditto.
        (WebCore::JSLocation::put): Ditto.
        * bindings/js/kjs_binding.cpp:
        (WebCore::nonCachingStaticFunctionGetter): Ditto.

        * bindings/scripts/CodeGeneratorJS.pm: Same changes as in the
        create_hash_table script.

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

12 years ago2008-03-18 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Wed, 19 Mar 2008 03:50:11 +0000 (03:50 +0000)]
2008-03-18  Matt Lilek  <webkit@mattlilek.com>

        Fix the Gtk build for real this time.

        * platform/network/curl/AuthenticationChallenge.h:

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

12 years agoFix http://bugs.webkit.org/show_bug.cgi?id=17925 and http://bugs.webkit.org/show_bug...
mrowe@apple.com [Wed, 19 Mar 2008 01:50:11 +0000 (01:50 +0000)]
Fix bugs.webkit.org/show_bug.cgi?id=17925 and http://bugs.webkit.org/show_bug.cgi?id=17927.
- Bug 17925: Crash in KJS::JSObject::put after setting this.__proto__
- Bug 17927: Hang after attempting to create circular __proto__

* kjs/object.cpp:
(KJS::JSObject::put): Silently ignore attempts to set __proto__ to a non-object, non-null value.
Return after setting the exception when an attempt to set a cyclic __proto__ is detected so that
the cyclic value is not set.

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

12 years agoWebCore:
weinig@apple.com [Wed, 19 Mar 2008 01:42:00 +0000 (01:42 +0000)]
WebCore:

2008-03-18  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Fix for http://bugs.webkit.org/show_bug.cgi?id=17057
        REGRESSION: Frequent random crashes in WebCore::JSNodeList::indexGetter
        <rdar://problem/5725058>

        Tests: fast/dom/NodeList/5725058-crash-scenario-1.html
               fast/dom/NodeList/5725058-crash-scenario-2.html
               fast/dom/NodeList/5725058-crash-scenario-3.html

        * dom/ChildNodeList.cpp:
        (WebCore::ChildNodeList::ChildNodeList):
        * dom/ChildNodeList.h:
        Remove rootNodeChildrenChanged() method and fix the constructor to not
        pass in a needsNotifications argument to DynamicNodeList, as it no longer
        takes one.

        * dom/ClassNodeList.cpp:
        (WebCore::ClassNodeList::ClassNodeList):
        Don't pass the needsNotifications argument to DynamicNodeList.

        * dom/ContainerNode.cpp:
        (WebCore::ContainerNode::childrenChanged):
        Rename call to hasNodeLists() to hasNodeListCaches().

        * dom/Document.cpp:
        (WebCore::Document::Document):
        (WebCore::Document::~Document): Zero out the m_document variable to signify
        to destructors down the destruction chain that this is a Document type node
        being destructed, and thus, accessing document() is prohibited.
        * dom/Document.h:
        (WebCore::Document::addNodeListCache): Renamed from addNodeList.
        (WebCore::Document::removeNodeListCache): Renamed from removeNodeList, adds assertion.
        (WebCore::Document::hasNodeListCaches): Renamed from hasNodeListCaches.
        Rename m_numNodeLists to m_numNodeListCaches.

        * dom/DynamicNodeList.cpp:
        (WebCore::DynamicNodeList::DynamicNodeList):
        (WebCore::DynamicNodeList::~DynamicNodeList):
        (WebCore::DynamicNodeList::invalidateCache):
        (WebCore::DynamicNodeList::Caches::Caches):
        * dom/DynamicNodeList.h:
        (WebCore::DynamicNodeList::hasOwnCaches):
        Remove the needsNotifications concept from DynamicNodeList, instead, manually
        invalidate the cache for lists that own their own cache.

        * dom/NameNodeList.cpp:
        (WebCore::NameNodeList::NameNodeList):
        * dom/NameNodeList.h:
        Remove rootNodeAttributeChanged() method and fix the constructor to not
        pass in a needsNotifications argument to DynamicNodeList, as it no longer
        takes one.

        * dom/Node.cpp:
        (WebCore::Node::~Node): Decrement the document's nodeListCache count
        if we had a NodeListsNodeData cache and this is not the Document being
        destructor, as tagged by a null m_document.
        (WebCore::Node::childNodes): Increment the document's nodeListCache count
        if we need create the NodeListsNodeData.
        (WebCore::Node::registerDynamicNodeList): Increment the document's nodeListCache count
        if we need create the NodeListsNodeData.  Change to invalidate all the caches, instead
        of just the ChildNodeList, if document has had no NodeListCaches.
        (WebCore::Node::unregisterDynamicNodeList): Change to remove the cache from the m_listsWithCaches
        set if it is owned by the NodeList and clear the m_nodeLists if it is empty.
        (WebCore::Node::notifyLocalNodeListsAttributeChanged): Move logic to
        NodeListsNodeData::invalidateAttributeCaches and clear the cache pointer if it is empty.
        (WebCore::Node::notifyLocalNodeListsChildrenChanged): Move logic to
        NodeListsNodeData::invalidateCaches and clear the cache pointer if it is empty.
        (WebCore::Node::notifyNodeListsChildrenChanged): Cleanup.
        (WebCore::Node::getElementsByName): Increment the document's nodeListCache count
        if we need create the NodeListsNodeData.
        (WebCore::Node::getElementsByClassName): Increment the document's nodeListCache count
        if we need create the NodeListsNodeData.

        (WebCore::NodeListsNodeData::invalidateCaches): Added.
        (WebCore::NodeListsNodeData::invalidateAttributeCaches): Added.
        (WebCore::NodeListsNodeData::isEmpty): Added.

        * dom/TagNodeList.cpp:
        (WebCore::TagNodeList::TagNodeList):
        Don't pass the needsNotifications argument to DynamicNodeList.

LayoutTests:

2008-03-18  Sam Weinig  <sam@webkit.org>

        Reviewed by Anders Carlsson.

        Tests for http://bugs.webkit.org/show_bug.cgi?id=17057
        REGRESSION: Frequent random crashes in WebCore::JSNodeList::indexGetter
        <rdar://problem/5725058>

        * fast/dom/NodeList/5725058-crash-scenario-1-expected.txt: Added.
        * fast/dom/NodeList/5725058-crash-scenario-1.html: Added.
        * fast/dom/NodeList/5725058-crash-scenario-2-expected.txt: Added.
        * fast/dom/NodeList/5725058-crash-scenario-2.html: Added.
        * fast/dom/NodeList/5725058-crash-scenario-3-expected.txt: Added.
        * fast/dom/NodeList/5725058-crash-scenario-3.html: Added.

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

12 years ago2008-03-18 Matt Lilek <webkit@mattlilek.com>
pewtermoose@webkit.org [Wed, 19 Mar 2008 00:43:11 +0000 (00:43 +0000)]
2008-03-18  Matt Lilek  <webkit@mattlilek.com>

        Not reviewed, build fix.

        * platform/network/curl/AuthenticationChallenge.h:

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

12 years ago2008-03-18 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 18 Mar 2008 23:44:53 +0000 (23:44 +0000)]
2008-03-18  Sam Weinig  <sam@webkit.org>

        Reviewed by Darin Adler.

        Make domListEnumeration.html test not depend on the order of property enumeration
        by sorting the result array.

        * fast/dom/domListEnumeration-expected.txt:
        * fast/dom/resources/domListEnumeration.js:

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

12 years agoWebCore:
pewtermoose@webkit.org [Tue, 18 Mar 2008 23:22:06 +0000 (23:22 +0000)]
WebCore:

2008-03-18  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Adam Roben.

        Provide some stub implementations for things that WebKit
        uses for performing authentication/challenge activities.  This
        is in support of http://bugs.webkit.org/show_bug.cgi?id=17837

        * platform/network/ResourceHandle.h:
        * platform/network/curl/AuthenticationChallenge.h:
        (WebCore::AuthenticationChallenge::AuthenticationChallenge):
        (WebCore::AuthenticationChallenge::sourceHandle):

WebKit/win:

2008-03-18  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Adam Roben.

        Provide some stub implementations for things that WebKit
        uses for performing authentication/challenge activities.  This
        is in support of http://bugs.webkit.org/show_bug.cgi?id=17837

        * WebDataSource.cpp:
        * WebError.cpp:  Conditionalize CFNetwork-specific logic
        * WebURLAuthenticationChallenge.cpp:  Conditionalize constructor
          for authentication/challenge member.
        (WebURLAuthenticationChallenge::initWithAuthenticationChallenge):
        * WebURLResponse.cpp:  Remove CFNetwork-specific logic.
        * WebURLResponse.h: Conditionalize CFNetwork-specific member.
        * WebView.cpp:  Conditionalize CFNetwork-specific network protocol test.
        (WebView::canHandleRequest):

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

12 years agoAdd missing changelog
eric@webkit.org [Tue, 18 Mar 2008 22:31:46 +0000 (22:31 +0000)]
Add missing changelog

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

12 years ago Reviewed by Oliver.
eric@webkit.org [Tue, 18 Mar 2008 22:30:00 +0000 (22:30 +0000)]
    Reviewed by Oliver.

        Fix SVGImage crash seen once, and obvious via code inspection.

        I was not able to find a test case for this.

        * svg/graphics/SVGImage.cpp:
        (WebCore::SVGImage::setContainerSize):
        (WebCore::SVGImage::usesContainerSize):
        (WebCore::SVGImage::hasRelativeWidth):
        (WebCore::SVGImage::hasRelativeHeight):

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

12 years ago2008-03-18 Rodney Dawes <dobey@wayofthemonkey.com>
mrowe@apple.com [Tue, 18 Mar 2008 21:43:10 +0000 (21:43 +0000)]
2008-03-18  Rodney Dawes  <dobey@wayofthemonkey.com>

        Fix Qt build after r31123.

        Add PluginView methods to TemporaryLinkStubs.

        * platform/qt/TemporaryLinkStubs.cpp:

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

12 years ago2008-03-18 Sam Weinig <sam@webkit.org>
weinig@apple.com [Tue, 18 Mar 2008 21:25:56 +0000 (21:25 +0000)]
2008-03-18  Sam Weinig  <sam@webkit.org>

        Reviewed by Darin Adler.

        - Speed up JavaScript prototype and constructor object creation
          using a static Identifier in the self() methods to avoid the
          cost of creating one from a c-string each time.

        5% speedup for Acid3 test 26

        * bindings/scripts/CodeGeneratorJS.pm:

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

12 years ago2008-03-18 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Tue, 18 Mar 2008 21:10:30 +0000 (21:10 +0000)]
2008-03-18  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Oliver.

        - inline ActivationImp::init for 0.8% SunSpider speedup

        * kjs/Activation.h:
        (KJS::ActivationImp::init): Moved here from function.cpp
        * kjs/function.cpp:

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

12 years ago2008-03-18 Antti Koivisto <antti@apple.com>
antti@apple.com [Tue, 18 Mar 2008 20:57:16 +0000 (20:57 +0000)]
2008-03-18  Antti Koivisto  <antti@apple.com>

        Reviewed by Mark Rowe.

        Enable preloading for other platforms besides Mac.

        * GNUmakefile.am:
        * WebCore.pro:
        * WebCore.vcproj/WebCore.vcproj:
        * WebCoreSources.bkl:
        * html/HTMLTokenizer.cpp:
        * html/HTMLTokenizer.h:
        * html/PreloadScanner.cpp:
        (WebCore::PreloadScanner::tokenize):

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

12 years ago2008-03-18 David Hyatt <hyatt@apple.com>
hyatt@apple.com [Tue, 18 Mar 2008 20:50:43 +0000 (20:50 +0000)]
2008-03-18  David Hyatt  <hyatt@apple.com>

        Add support for a preference in WebKit that can be used in nightly builds to test full page
        zoom.

        Reviewed by Antti

        * WebView/WebPreferenceKeysPrivate.h:
        * WebView/WebView.mm:
        (-[WebView setTextSizeMultiplier:]):
        (-[WebView canMakeTextSmaller]):
        (-[WebView makeTextSmaller:]):
        (-[WebView canMakeTextLarger]):
        (-[WebView makeTextLarger:]):
        (-[WebView canMakeTextStandardSize]):
        (-[WebView makeTextStandardSize:]):

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

12 years agoWebCore:
mitz@apple.com [Tue, 18 Mar 2008 18:15:16 +0000 (18:15 +0000)]
WebCore:

2008-03-18  Dan Bernstein  <mitz@apple.com>

        Reviewed by Adele Peterson.

        - fix <rdar://problem/5805127> REGRESSION (r31116): Assertion failure (floatIndex < floats.size()) in RenderBlock::determineStartPosition() at digg.com

        Test: fast/dynamic/floating-to-positioned.html

        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::setStyle): Added code to remove a float from
        object lists if its position property changes to something other than
        static, since then it ceases to be a float.

LayoutTests:

2008-03-18  Dan Bernstein  <mitz@apple.com>

        Reviewed by Adele Peterson.

        - test for <rdar://problem/5805127> REGRESSION (r31116): Assertion failure (floatIndex < floats.size()) in RenderBlock::determineStartPosition() at digg.com

        * fast/dynamic/floating-to-positioned.html: Added.
        * platform/mac/fast/dynamic/floating-to-positioned-expected.checksum: Added.
        * platform/mac/fast/dynamic/floating-to-positioned-expected.png: Added.
        * platform/mac/fast/dynamic/floating-to-positioned-expected.txt: Added.

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

12 years ago Windows build fix after r31123
aroben@apple.com [Tue, 18 Mar 2008 18:04:12 +0000 (18:04 +0000)]
    Windows build fix after r31123

        * plugins/win/PluginViewWin.cpp: Add back MozillaUserAgent.

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

12 years ago2008-03-18 Rodney Dawes <dobey@wayofthemonkey.com>
jhoneycutt@apple.com [Tue, 18 Mar 2008 17:57:22 +0000 (17:57 +0000)]
2008-03-18  Rodney Dawes  <dobey@wayofthemonkey.com>

        Reviewed and landed by jhoneycutt.

        Update to check if the MIME type is supported by a plugin.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (FrameLoaderClient::objectContentType):

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

12 years ago Focus the Inspector's WebView whenever the Inspector window is focused
aroben@apple.com [Tue, 18 Mar 2008 16:42:05 +0000 (16:42 +0000)]
    Focus the Inspector's WebView whenever the Inspector window is focused

        Reviewed by Mitz.

        * WebCoreSupport/WebInspectorClient.cpp:
        (WebInspectorClient::onSetFocus): Send focus to the WebView.
        (WebInspectorWndProc): Added a handler for WM_SETFOCUS.
        * WebCoreSupport/WebInspectorClient.h:

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

12 years ago Fix Bug 14276: Element highlight also covers Web inspector
aroben@apple.com [Tue, 18 Mar 2008 16:40:30 +0000 (16:40 +0000)]
    Fix Bug 14276: Element highlight also covers Web inspector

        <http://bugs.webkit.org/show_bug.cgi?id=14276>
        <rdar://5712796>

        Also fixes <rdar://5622837> Browser window comes to front when node
        highlight appears, potentially blocking Inspector

        Reviewed by Mitz.

        * WebCoreSupport/WebInspectorClient.cpp:
        (WebInspectorClient::highlight): After showing the highlight,
        reposition it just behind the Inspector's window.
        * WebNodeHighlight.cpp:
        (WebNodeHighlight::show):
          - Changed flags passed to CreateWindowEx to not specify WS_VISIBLE.
            This is not needed because we'll show the window later in this
            function.
          - Removed call to SetWindowPos that tried to position the overlay
            just in front of the WebView. This is now handled by
            WebInspectorClient.
          - Changed call to ShowWindow to use SetWindowPos so that we can pass
            SWP_NOACTIVATE. This prevents the highlight from jumping in front
            of the Inspector every time it's shown.
        * WebNodeHighlight.h: Added a method to get the highlight's HWND.

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