WebKit-https.git
12 years agoWebCore:
andersca@apple.com [Wed, 20 Aug 2008 21:04:12 +0000 (21:04 +0000)]
WebCore:

2008-08-20  Josh Aas  <joshmoz@gmail.com>

        Reviewed and landed by Anders.

        <rdar://problem/6163636>
        rename NPCocoaEvent's "event" struct to "data" (20446)

        * bridge/npapi.h:
        (_NPCocoaEvent::):

WebKit/mac:

2008-08-20  Josh Aas  <joshmoz@gmail.com>

        Reviewed and landed by Anders.

        <rdar://problem/6163636>
        rename NPCocoaEvent's "event" struct to "data" (20446)

        * Plugins/WebNetscapePluginEventHandlerCocoa.mm:
        (WebNetscapePluginEventHandlerCocoa::drawRect):
        (WebNetscapePluginEventHandlerCocoa::sendMouseEvent):
        (WebNetscapePluginEventHandlerCocoa::flagsChanged):
        (WebNetscapePluginEventHandlerCocoa::sendKeyEvent):
        (WebNetscapePluginEventHandlerCocoa::windowFocusChanged):
        (WebNetscapePluginEventHandlerCocoa::focusChanged):

WebKitExamplePlugins:

2008-08-20  Josh Aas  <joshmoz@gmail.com>

        Reviewed and landed by Anders.

        <rdar://problem/6163636>
        rename NPCocoaEvent's "event" struct to "data" (20446)

        * NetscapeCocoaPlugin/main.m:
        (handleMouseEvent):
        (handleKeyboardEvent):
        (NPP_HandleEvent):

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

12 years agoWebCore:
bdakin@apple.com [Wed, 20 Aug 2008 20:46:28 +0000 (20:46 +0000)]
WebCore:

2008-08-20  Beth Dakin  <bdakin@apple.com>

        Reviewed by Darin.

        Fix for <rdar://problem/6145626>
        This patch fixes a number of remaining problems getting
        disconnected frames to work correctly with markAllMatchesForText()
        and findString(). Details inline.

        This was a static helper function in Frame, but this patch requires
        the same functionality in Editor, so I just added it as a function
        on Node.
        * dom/Node.cpp:
        (WebCore::Node::isInShadowTree):
        * dom/Node.h:

        * editing/Editor.cpp:
        (WebCore::Editor::insideVisibleArea): Returns false if
        excludeFromTextSearch() is true.

        In a normal (non-disconnected) frame, findString returns a range of
        the document node if the text is not found in the frame. I changed
        firstVisibleRange and lastVisibleRange to match that behavior when
        the text is not found
        (WebCore::Editor::firstVisibleRange):
        (WebCore::Editor::lastVisibleRange):

        Here are the bulk of the changes in the patch. A lot of text was
        not being found in disconnected frames because I failed to account
        for all of the possible problems associated with shadow trees. That
        is fixed here.
        (WebCore::Editor::nextVisibleRange):
        * editing/Editor.h:

        excludeFromTextSearch() is new. It allows a WebKit client to mark a
        frame as not-text-searchable through SPI.
        * WebCore.base.exp:
        * page/Frame.cpp:
        (WebCore::Frame::excludeFromTextSearch):
        (WebCore::Frame::setExcludeFromTextSearch):
        (WebCore::FramePrivate::FramePrivate):
        * page/Frame.h:
        * page/FramePrivate.h:

        (WebCore::Frame::findString):
        (WebCore::Frame::markAllMatchesForText):  I kept running into an
        assertion failure in paining code because of the forced paint on
        empty visible rects.

WebKit/mac:

2008-08-20  Beth Dakin  <bdakin@apple.com>

        Reviewed by Darin.

        Fix for <rdar://problem/6145626>
        Allows a WebKit client to mark a frame as not-text-searchable
        through SPI.

        * WebView/WebFrame.mm:
        (-[WebFrame _setExcludeFromTextSearch:]):
        * WebView/WebFramePrivate.h:

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

12 years ago Adds a positon box to the Inspector's Metrics sidebar
timothy@apple.com [Wed, 20 Aug 2008 19:10:54 +0000 (19:10 +0000)]
    Adds a positon box to the Inspector's Metrics sidebar
        pane. When an element is not statically positioned, there
        is now a position box that show top, right, bottom and
        left computed values.

        Reviewed by Kevin McCullough.

        * English.lproj/localizedStrings.js: Updated the strings.
        * page/inspector/MetricsSidebarPane.js:
        (WebInspector.MetricsSidebarPane.prototype.update):
        Renamed the boxPartValue function to createBoxPartElement
        and made it create the entire element. Made it understand
        how to get position style properties. Don't use the figure dash
        when 0px is used for positions, since the 0 is meaningful there.
        Instead use the figure dash when a position is auto.
        * page/inspector/inspector.css: Added a new rule for position.

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

12 years ago2008-08-20 Maxime Britto <britto@apple.com>
britto@apple.com [Wed, 20 Aug 2008 19:01:24 +0000 (19:01 +0000)]
2008-08-20  Maxime Britto  <britto@apple.com>

        Reviewed by Ada Chan.

        rdar://5259746
        Mouse events are sent to page while resizing window (affects Gmail)
        In the WebView, if the MouseEvent is located in the resize corner, we send it back to the UIDelegate and early return.

        * Interfaces/IWebUIDelegatePrivate.idl: Add a new method to the UIDelegate to send the resize message
        * WebView.cpp:
        (WebView::handleMouseEvent): If the mouse event is in the resize corner and our UIDelegate supports the message it sends the new message and early returns

2008-08-20  Maxime Britto  <britto@apple.com>

        Reviewed by Ada Chan.

         rdar://5259746
        Mouse events are sent to page while resizing window (affects Gmail)

        * DumpRenderTree/win/UIDelegate.h:
        (UIDelegate::webViewSendResizeMessage): Add the new interface method, not implemented.

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

12 years agoQt build fix
cfleizach@apple.com [Wed, 20 Aug 2008 18:34:56 +0000 (18:34 +0000)]
Qt build fix

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

12 years ago Reviewed by Anders Carlsson.
mitz@apple.com [Wed, 20 Aug 2008 18:28:07 +0000 (18:28 +0000)]
    Reviewed by Anders Carlsson.

        - avoid using a deprecated NSScroller method on Leopard

        * platform/mac/PlatformScrollBarMac.mm:
        (WebCore::PlatformScrollbar::updateThumbPosition):
        (WebCore::PlatformScrollbar::updateThumbProportion):

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

12 years ago2008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
jmalonzo@webkit.org [Wed, 20 Aug 2008 11:40:31 +0000 (11:40 +0000)]
2008-08-20  Jan Michael Alonzo  <jmalonzo@webkit.org>

        Reviewed by Oliver Hunt.

        Gtk build fix

        * GNUmakefile.am:
        * page/AccessibilityTable.cpp: Change nil to 0
        (WebCore::AccessibilityTable::cellForColumnAndRow):

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

12 years ago Windows build fix.
ap@webkit.org [Wed, 20 Aug 2008 10:40:16 +0000 (10:40 +0000)]
    Windows build fix.

        * API/WebKitAvailability.h: Define DEPRECATED_ATTRIBUTE.

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

12 years ago Reviewed by Geoff Garen.
ap@webkit.org [Wed, 20 Aug 2008 07:23:06 +0000 (07:23 +0000)]
    Reviewed by Geoff Garen.

        Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.

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

12 years ago Reviewed by Geoff Garen.
eric@webkit.org [Tue, 19 Aug 2008 23:33:07 +0000 (23:33 +0000)]
    Reviewed by Geoff Garen.

        Add the beginnings of Skia graphics support to WebCore
        as I try to begin the long process of un-forking the changes
        needed to WebCore to make Andriod's WebCore build.

        I'll follow this up with actual *Skia.cpp files in a separate patch.

        * platform/graphics/AffineTransform.h:
        * platform/graphics/FloatPoint.h:
        * platform/graphics/FloatRect.h:
        * platform/graphics/Gradient.h:
        * platform/graphics/GraphicsContext.h:
        * platform/graphics/Image.h:
        * platform/graphics/ImageBuffer.h:
        * platform/graphics/ImageSource.h:
        * platform/graphics/IntPoint.h:
        * platform/graphics/IntRect.h:
        * platform/graphics/Path.h:
        * platform/graphics/Pattern.h:
        * svg/graphics/SVGPaintServerPattern.h:
        * svg/graphics/SVGPaintServerSolid.h:

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

12 years ago Fix Windows build more.
sfalken@apple.com [Tue, 19 Aug 2008 22:46:31 +0000 (22:46 +0000)]
    Fix Windows build more.

        * WebCore.vcproj/WebCore.vcproj:

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

12 years ago Fixes the Web Inspector flashing white while resizing after
timothy@apple.com [Tue, 19 Aug 2008 22:36:30 +0000 (22:36 +0000)]
    Fixes the Web Inspector flashing white while resizing after
        highlighting a page element. Calling disableScreenUpdatesUntilFlush
        when attaching and detaching the Inspector page highlight is bad,
        since the browser window might not flush again for a while. So screen
        updates could be disabled for long periods of time, causing backing store
        flashing while resizing. There is no need to call disableScreenUpdatesUntilFlush
        when attaching or detaching the child window.

        Reviewed by John Sullivan and Kevin McCullough.

        * WebInspector/WebNodeHighlight.m:
        (-[WebNodeHighlight attach]): Remove the call to disableScreenUpdatesUntilFlush.
        (-[WebNodeHighlight detach]): Ditto.

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

12 years ago Fix Windows build.
sfalken@apple.com [Tue, 19 Aug 2008 22:34:37 +0000 (22:34 +0000)]
    Fix Windows build.

        * page/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::canSetFocusAttribute):

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

12 years ago Fix build.
sfalken@apple.com [Tue, 19 Aug 2008 22:29:18 +0000 (22:29 +0000)]
    Fix build.

        * WebScriptCallFrame.cpp:
        (WebScriptCallFrame::jsValueToString):

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

12 years ago2008-08-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 19 Aug 2008 22:22:02 +0000 (22:22 +0000)]
2008-08-19  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim and Mark.

        Implement DTrace hooks for dashcode and instruments.

        * API/JSProfilerPrivate.cpp: Added. Expose SPI so that profiling can be
        turned on from a client.  The DTrace probes were added within the
        profiler mechanism for performance reasons so the profiler must be
        started to enable tracing.
        (JSStartProfiling):
        (JSEndProfiling):
        * API/JSProfilerPrivate.h: Added. Ditto.
        * JavaScriptCore.exp: Exposing the start/stop methods to clients.
        * JavaScriptCore.xcodeproj/project.pbxproj:
        * kjs/Tracing.d: Define the DTrace probes.
        * kjs/Tracing.h: Ditto.
        * profiler/ProfileGenerator.cpp: Implement the DTrace probes in the
        profiler.
        (KJS::ProfileGenerator::willExecute):
        (KJS::ProfileGenerator::didExecute):

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

12 years ago<rdar://problem/4003764> Expose tables as AXTables
cfleizach@apple.com [Tue, 19 Aug 2008 22:05:37 +0000 (22:05 +0000)]
<rdar://problem/4003764> Expose tables as AXTables

Exposes "data" tables in HTML as AXTables through accessibility

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

12 years ago Build fix.
sfalken@apple.com [Tue, 19 Aug 2008 21:35:49 +0000 (21:35 +0000)]
    Build fix.

        * kjs/operations.cpp:
        (KJS::equal):

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

12 years ago Reviewed by Darin.
ap@webkit.org [Tue, 19 Aug 2008 20:18:54 +0000 (20:18 +0000)]
    Reviewed by Darin.

        Fix run-webkit-tests misreporting crashed tests as timed out ones because DumpRenderTree
        is waiting for crash reporter to let it exit.

        The fix does not work on Tiger, because the state of the process is indistinguishable from
        other waiting processes, at least not with this technique.

        * Scripts/run-webkit-tests:

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

12 years ago Build fix.
sfalken@apple.com [Tue, 19 Aug 2008 18:39:44 +0000 (18:39 +0000)]
    Build fix.
        Add buildfailed support to stop builds early (preventing inaccurate error messages).
        Add missing post-build rule to Release.

        * WebCore.vcproj/QTMovieWin.vcproj:

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

12 years ago Added support for console.count in the inspector.
timothy@apple.com [Tue, 19 Aug 2008 18:33:27 +0000 (18:33 +0000)]
    Added support for console.count in the inspector.

        Reviewed by Geoff Garen.

        * page/Console.cpp:
        (WebCore::Console::count):
        * page/Console.h:
        * page/Console.idl: Added console.count.
        * page/InspectorController.cpp:
        (WebCore::InspectorController::didCommitLoad): Clears m_counts.
        (WebCore::InspectorController::count): Updates the count number
        sing "title@source:line" as the identifier, and adds a
        message to the console.
        * page/InspectorController.h: Added m_counts.

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

12 years ago Clear console.time timers when changing page.
timothy@apple.com [Tue, 19 Aug 2008 18:33:02 +0000 (18:33 +0000)]
    Clear console.time timers when changing page.

        Reviewed by Geoff Garen.

        * page/InspectorController.cpp:
        (WebCore::InspectorController::didCommitLoad):

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

12 years ago2008-08-19 Eric Carlson <eric.carlson@apple.com>
adele@apple.com [Tue, 19 Aug 2008 17:55:58 +0000 (17:55 +0000)]
2008-08-19  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Adele.

        Fix for <rdar://problem/6154695> Full-page movies flicker while playing
        https://bugs.webkit.org/show_bug.cgi?id=20404

        Ignore setVisible() when visibility doesn't change.

        * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
        (WebCore::MediaPlayerPrivate::setVisible):

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

12 years ago Correctly remembers the attached state of the Web Inspector so
timothy@apple.com [Tue, 19 Aug 2008 17:01:23 +0000 (17:01 +0000)]
    Correctly remembers the attached state of the Web Inspector so
        it opens in that state for the next window, or next launch.

        Reviewed by Kevin McCullough.

        * WebCoreSupport/WebInspectorClient.mm:
        (-[WebInspectorWindowController attach]): Set WebKitInspectorAttachedKey
        to YES in the user defaults.
        (-[WebInspectorWindowController detach]): Set WebKitInspectorAttachedKey
        to NO in the user defaults.

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

12 years ago Fixes a bug in the Profile view where switching sort order, then
timothy@apple.com [Tue, 19 Aug 2008 17:01:12 +0000 (17:01 +0000)]
    Fixes a bug in the Profile view where switching sort order, then
        switching from heavy to tree mode would show the tree in the
        previous sort order.

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

        Reviewed by Kevin McCullough.

        * page/inspector/ProfileView.js:
        (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
        on the next profile before assigning it to this.profile.
        (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
        (WebInspector.ProfileView.prototype._sortProfile): Moves from
        _sortData and takes a profile argument. If the profile passed in
        matches the this.profile, then call refresh.

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

12 years ago Changed the default sort order now that heavy view is the default.
timothy@apple.com [Tue, 19 Aug 2008 17:01:00 +0000 (17:01 +0000)]
    Changed the default sort order now that heavy view is the default.
        Also fixes a bug where the heavy profile was not sorted at first.

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

        Reviewed by Kevin McCullough.

        * page/inspector/ProfileView.js:
        (WebInspector.ProfileView): Changed the default sort column. Also assign
        heavyProfile to profile, so the sortSelfTimeDescending call happens
        on the heavy profile before assigning to this.profile.

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

12 years ago Fix an assertion when generating a heavy profile because the
timothy@apple.com [Tue, 19 Aug 2008 17:00:48 +0000 (17:00 +0000)]
    Fix an assertion when generating a heavy profile because the
        empty value and deleted value of CallIdentifier where equal.

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

        Reviewed by Dan Bernstein.

        * profiler/CallIdentifier.h: Make the emptyValue for CallIdentifier
        use empty strings for URL and function name.

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

12 years ago Add support for editing DOM properties and scope variables by double
timothy@apple.com [Tue, 19 Aug 2008 17:00:36 +0000 (17:00 +0000)]
    Add support for editing DOM properties and scope variables by double
        clicking a property to enter edit mode.

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

        Reviewed by Kevin McCullough.

        * page/inspector/ObjectPropertiesSection.js:
        (WebInspector.ObjectPropertiesSection): Set editable to true by default.
        (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
        Factored out code into update, and calls update.
        (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
        Call removeChildren since this method can be called multiple times now.
        (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
        gets made later in onattach.
        (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
        if shouldRefreshChildren is true. Call removeChildren since this method can be
        called multiple times now.
        (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
        (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
        (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
        this element (code moved from the constructor.)
        (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
        sibling property elements.
        (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
        WebInspector.startEditing after rememebring some context.
        (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
        for the list element, since it might have scrolled during editing.
        (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
        then restore the state from the context. Then call update to restore the title.
        (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
        if the user input and the previous input are the same. Call editingEnded, then call applyExpression
        to commit the user input.
        (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
        and stores the result on the object for the property name of this element. If the expression is
        empty, delete the property and remove the tree element.
        * page/inspector/ScopeChainSidebarPane.js:
        (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
        property on each ObjectPropertiesSection.
        (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
        since it is now implemented.
        * page/inspector/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
        that defaults to true if omitted. It specifies whether to call update on the scope chain.
        * page/inspector/inspector.css: New styles.
        * page/inspector/treeoutline.js:
        (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
        change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.

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

12 years ago Surround the expression to be evaluated in parenthesis so the
timothy@apple.com [Tue, 19 Aug 2008 17:00:26 +0000 (17:00 +0000)]
    Surround the expression to be evaluated in parenthesis so the
        result of the eval is the result of the whole expression not
        the last potential sub-expression. So evaluating {x: 123}
        will show the Object not 123.

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

        Reviewed by Kevin McCullough.

        * page/inspector/Console.js:
        (Console.prototype._evalInInspectedWindow): Add parenthesis
        around the expression. And add couple comments.

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

12 years ago2008-08-19 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Tue, 19 Aug 2008 16:38:06 +0000 (16:38 +0000)]
2008-08-19 Kevin McCullough <kmccullough@apple.com>

        Reviewed by Geoff.

        -Implement a page() function to extract a common code pattern.

        * WebCore.xcodeproj/project.pbxproj:
        * page/Console.cpp:
        (WebCore::Console::addMessage):
        (WebCore::Console::error):
        (WebCore::Console::info):
        (WebCore::Console::log):
        (WebCore::Console::dir):
        (WebCore::Console::assertCondition):
        (WebCore::Console::time):
        (WebCore::Console::timeEnd):
        (WebCore::Console::group):
        (WebCore::Console::groupEnd):
        (WebCore::Console::finishedProfiling):
        (WebCore::Console::warn):
        (WebCore::Console::framePage):
        * page/Console.h:

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

12 years ago https://bugs.webkit.org/show_bug.cgi?id=19762
ap@webkit.org [Tue, 19 Aug 2008 14:35:48 +0000 (14:35 +0000)]
    https://bugs.webkit.org/show_bug.cgi?id=19762
        Crash in svg/webarchive/svg-cursor-subresources.svg

        Disabling the test while the crash is being investigated.

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

12 years ago Reviewed by Dan Bernstein.
ap@webkit.org [Tue, 19 Aug 2008 07:27:12 +0000 (07:27 +0000)]
    Reviewed by Dan Bernstein.

        https://bugs.webkit.org/show_bug.cgi?id=19347
        <rdar://problem/5977562> Input methods do not work after switching to a password field
        and back.

        Fix <rdar://problem/5522011> (The content of the password field of Safari is displayed by
        reconversion) in a different way which doesn't conflict with context caching performed
        by AppKit.

        This original bug does not really occur in ToT or shipping Safari under Mac OS X 10.5.4,
        because input methods are disabled in password fields. Attempting to reconvert text typed
        with Romaji only yields a string of bullets. Still, it is probably better to match Cocoa
        password field behavior and disable reconversion completely.

        * WebView/WebHTMLView.mm:
        (isInPasswordField): Factored out code to determine that the current selection is in
        a password field.
        (inputContext): Removed a hack that was breaking TSMGetActiveDocument().
        (-[WebHTMLView attributedSubstringFromRange:]): Check for password fields.
        (-[WebHTMLView textStorage]): Ditto.

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

12 years agoJavaScriptCore:
darin@apple.com [Tue, 19 Aug 2008 04:39:04 +0000 (04:39 +0000)]
JavaScriptCore:

2008-08-12  Darin Adler  <darin@apple.com>

        Reviewed by Geoff.

        - eliminate JSValue::type()

        This will make it slightly easier to change the JSImmediate design without
        having to touch so many call sites.

        SunSpider says this change is a wash (looked like a slight speedup, but not
        statistically significant).

        * API/JSStringRef.cpp: Removed include of JSType.h.
        * API/JSValueRef.cpp: Removed include of JSType.h.
        (JSValueGetType): Replaced use of JSValue::type() with
        JSValue::is functions.

        * JavaScriptCore.exp: Updated.

        * VM/JSPropertyNameIterator.cpp: Removed type() implementation.
        (KJS::JSPropertyNameIterator::toPrimitive): Changed to take
        PreferredPrimitiveType argument instead of JSType.
        * VM/JSPropertyNameIterator.h: Ditto.

        * VM/Machine.cpp:
        (KJS::fastIsNumber): Updated for name change.
        (KJS::fastToInt32): Ditto.
        (KJS::fastToUInt32): Ditto.
        (KJS::jsAddSlowCase): Updated toPrimitive caller for change from
        JSType to PreferredPrimitiveType.
        (KJS::jsAdd): Replaced calls to JSValue::type() with calls to
        JSValue::isString().
        (KJS::jsTypeStringForValue): Replaced calls to JSValue::type()
        with multiple calls to JSValue::is -- we could make this a
        virtual function instead if we want to have faster performance.
        (KJS::Machine::privateExecute): Renamed JSImmediate::toTruncatedUInt32
        to JSImmediate::getTruncatedUInt32 for consistency with other functions.
        Changed two calls of JSValue::type() to JSValue::isString().

        * kjs/GetterSetter.cpp:
        (KJS::GetterSetter::toPrimitive): Changed to take
        PreferredPrimitiveType argument instead of JSType.
        (KJS::GetterSetter::isGetterSetter): Added.
        * kjs/GetterSetter.h:

        * kjs/JSCell.cpp:
        (KJS::JSCell::isString): Added.
        (KJS::JSCell::isGetterSetter): Added.
        (KJS::JSCell::isObject): Added.

        * kjs/JSCell.h: Eliminated type function. Added isGetterSetter.
        Made isString and isObject virtual. Changed toPrimitive to take
        PreferredPrimitiveType argument instead of JSType.
        (KJS::JSCell::isNumber): Use Heap::isNumber for faster performance.
        (KJS::JSValue::isGetterSetter): Added.
        (KJS::JSValue::toPrimitive): Changed to take
        PreferredPrimitiveType argument instead of JSType.

        * kjs/JSImmediate.h: Removed JSValue::type() and replaced
        JSValue::toTruncatedUInt32 with JSValue::getTruncatedUInt32.
        (KJS::JSImmediate::isEitherImmediate): Added.

        * kjs/JSNotAnObject.cpp:
        (KJS::JSNotAnObject::toPrimitive): Changed to take
        PreferredPrimitiveType argument instead of JSType.
        * kjs/JSNotAnObject.h: Ditto.
        * kjs/JSNumberCell.cpp:
        (KJS::JSNumberCell::toPrimitive): Ditto.
        * kjs/JSNumberCell.h:
        (KJS::JSNumberCell::toInt32): Renamed from fastToInt32. There's no
        other "slow" version of this once you have a JSNumberCell, so there's
        no need for "fast" in the name. It's a feature that this hides the
        base class toInt32, which does the same job less efficiently (and has
        an additional ExecState argument).
        (KJS::JSNumberCell::toUInt32): Ditto.

        * kjs/JSObject.cpp:
        (KJS::callDefaultValueFunction): Use isGetterSetter instead of type.
        (KJS::JSObject::getPrimitiveNumber): Use PreferredPrimitiveType.
        (KJS::JSObject::defaultValue): Ditto.
        (KJS::JSObject::defineGetter): Use isGetterSetter.
        (KJS::JSObject::defineSetter): Ditto.
        (KJS::JSObject::lookupGetter): Ditto.
        (KJS::JSObject::lookupSetter): Ditto.
        (KJS::JSObject::toNumber): Use PreferredPrimitiveType.
        (KJS::JSObject::toString): Ditto.
        (KJS::JSObject::isObject): Added.

        * kjs/JSObject.h:
        (KJS::JSObject::inherits): Call the isObject from JSCell; it's now
        hidden by our override of isObject.
        (KJS::JSObject::getOwnPropertySlotForWrite): Use isGetterSetter
        instead of type.
        (KJS::JSObject::getOwnPropertySlot): Ditto.
        (KJS::JSObject::toPrimitive): Use PreferredPrimitiveType.

        * kjs/JSString.cpp:
        (KJS::JSString::toPrimitive): Use PreferredPrimitiveType.
        (KJS::JSString::isString): Added.
        * kjs/JSString.h: Ditto.

        * kjs/JSValue.h: Removed type(), added isGetterSetter(). Added
        PreferredPrimitiveType enum and used it as the argument for the
        toPrimitive function.
        (KJS::JSValue::getBoolean): Simplified a bit an removed a branch.

        * kjs/collector.cpp:
        (KJS::typeName): Changed to use JSCell::is functions instead of
        calling JSCell::type.

        * kjs/collector.h:
        (KJS::Heap::isNumber): Renamed from fastIsNumber.

        * kjs/nodes.h: Added now-needed include of JSType, since the type
        is used here to record types of values in the tree.

        * kjs/operations.cpp:
        (KJS::equal): Rewrote to no longer depend on type().
        (KJS::strictEqual): Ditto.

JavaScriptGlue:

2008-08-12  Darin Adler  <darin@apple.com>

        Reviewed by Geoff.

        - eliminate JSValue::type()

        * JSUtils.cpp:
        (KJSValueToCFTypeInternal): Replaced uses of JSValue::type() with
        JSValue::is functions.
        * UserObjectImp.cpp:
        (UserObjectImp::getOwnPropertySlot): Ditto.
        (UserObjectImp::toPrimitive): Take PreferredPrimitiveType argument
        instead of JSType argument.
        * UserObjectImp.h: Ditto.

WebCore:

2008-08-12  Darin Adler  <darin@apple.com>

        Reviewed by Geoff.

        - eliminate JSValue::type()

        * bridge/c/c_instance.cpp:
        (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
        argument instead of JSType argument. Removed unneeded code to handle
        boolean, since that's never passed.
        * bridge/c/c_instance.h: Ditto.

        * bridge/c/c_utility.cpp:
        (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
        instead of JSValue::type(). Removed unneeded code to handle
        "unspecified".

        * bridge/jni/jni_instance.cpp:
        (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
        instead of JSType argument. Removed unneeded code to handle boolean.
        * bridge/jni/jni_instance.h: Ditto.

        * bridge/jni/jni_jsobject.mm:
        (JavaJSObject::convertValueToJObject): Use JSValue::is functions
        instead of JSValue::type().

        * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
        instead of JSType argument. Removed unused argument.
        * bridge/objc/objc_instance.mm:
        (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
        (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
        instead of JSType argument. Removed unneeded code to handle boolean
        and another dead code path for unknown types.

        * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
        instead of JSType argument. Removed override of type() that caused
        the fallback object to return "UndefinedType" when there is no
        invokeUndefinedMethodFromWebScript:withArguments: method defined.
        That didn't accomplish much, since most checks for undefined don't
        ever call type().
        * bridge/objc/objc_runtime.mm:
        (ObjcFallbackObjectImp::defaultValue): Ditto.

        * bridge/qt/qt_instance.cpp:
        (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
        argument instead of JSType argument. Removed unneeded code to handle
        boolean.
        * bridge/qt/qt_instance.h: Ditto.

        * bridge/runtime.h:
        (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
        unsed argument.
        * bridge/runtime_object.cpp:
        (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
        argument instead of JSType argument.
        * bridge/runtime_object.h: Ditto.

WebKit/mac:

2008-08-12  Darin Adler  <darin@apple.com>

        Reviewed by Geoff.

        - eliminate JSValue::type()

        * WebView/WebView.mm:
        (aeDescFromJSValue): Rewrite to use the JSValue::is functions instead
        of a switch on JSValue::type().

LayoutTests:

2008-08-12  Darin Adler  <darin@apple.com>

        Reviewed by Geoff.

        - added a test since I had to rewrite the == and === operators

        * fast/js/equality-expected.txt: Added.
        * fast/js/equality.html: Added.
        * fast/js/resources/equality.js: Added.

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

12 years ago2008-08-18 Maxime Britto <britto@apple.com>
britto@apple.com [Tue, 19 Aug 2008 00:42:13 +0000 (00:42 +0000)]
2008-08-18  Maxime Britto  <britto@apple.com>

        Reviewed by Adele.

        <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
        Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
        We shouldn't be able to create another window while we are in pan scrolling.
        Other browsers behaviors :
          FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
          IE7 : Keys are not disabled but stops immediately the panning.
        This patch matches FF3 behavior by disabling every key but the esc key.

        * page/EventHandler.cpp:
        (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
        (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.

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

12 years agoWebCore:
mitz@apple.com [Tue, 19 Aug 2008 00:20:38 +0000 (00:20 +0000)]
WebCore:

        Reviewed by Dave Hyatt.

        - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received

        Test: fast/replaced/max-width-percent.html

        Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
        When false, max-width is not factored into the
        calculation.
        Changed RenderReplaced and subclasses' calcPrefWidths() to call
        calcReplacedWidth(false) and then apply max-width only if it has a
        fixed, positive value.

        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::calcReplacedWidth):
        * rendering/RenderBox.h:
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::calcReplacedWidth):
        (WebCore::RenderImage::calcPrefWidths):
        * rendering/RenderImage.h:
        * rendering/RenderReplaced.cpp:
        (WebCore::RenderReplaced::calcPrefWidths):
        * rendering/RenderSVGRoot.cpp:
        (WebCore::RenderSVGRoot::calcPrefWidths):
        * rendering/RenderVideo.cpp:
        (WebCore::RenderVideo::calcReplacedWidth):
        (WebCore::RenderVideo::calcPrefWidths):
        * rendering/RenderVideo.h:

LayoutTests:

        Reviewed by Dave Hyatt.

        - test for <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received

        * fast/replaced/max-width-percent.html: Added.
        * platform/mac/fast/replaced/max-width-percent-expected.checksum: Added.
        * platform/mac/fast/replaced/max-width-percent-expected.png: Added.
        * platform/mac/fast/replaced/max-width-percent-expected.txt: Added.

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

12 years ago Make transition_shorthand_parsing.html a text-only test.
simon.fraser@apple.com [Mon, 18 Aug 2008 23:08:22 +0000 (23:08 +0000)]
    Make transition_shorthand_parsing.html a text-only test.

        * fast/css/transition_shorthand_parsing-expected.txt: Added.
        * fast/css/transition_shorthand_parsing.html:
        * platform/mac/fast/css/transition_shorthand_parsing-expected.txt:

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

12 years ago2008-08-18 Daniel Macks <dmacks@netspace.org>
mrowe@apple.com [Mon, 18 Aug 2008 22:47:28 +0000 (22:47 +0000)]
2008-08-18  Daniel Macks  <dmacks@netspace.org>

        Reviewed by Mark Rowe.

        https://bugs.webkit.org/show_bug.cgi?id=20410
        More portable/self-documenting replacement for SIZE_MAX.

        * platform/network/curl/FormDataStreamCurl.cpp:
        (WebCore::FormDataStream::read):

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

12 years ago Reviewed by Dave Hyatt
simon.fraser@apple.com [Mon, 18 Aug 2008 22:11:10 +0000 (22:11 +0000)]
    Reviewed by Dave Hyatt

        Need to make sure we have an Animation in the AnimationList
        before setting the initial value.
        https://bugs.webkit.org/show_bug.cgi?id=20408

        Test: fast/css/transition_shorthand_parsing.html

        * css/CSSStyleSelector.cpp:

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

12 years agoBuild fix for Win. Don't include the libxml/libxslt directories in the
kevino@webkit.org [Mon, 18 Aug 2008 21:55:04 +0000 (21:55 +0000)]
Build fix for Win. Don't include the libxml/libxslt directories in the
include path, it picks up the wrong Pattern.h in that case.

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

12 years ago2008-08-18 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Mon, 18 Aug 2008 20:53:59 +0000 (20:53 +0000)]
2008-08-18  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        If there are no nodes in a profile all the time should be attributed to
        (idle)

        * profiler/Profile.cpp: If ther are no nodes make sure we still process
        the head.
        (KJS::Profile::forEach):
        * profiler/ProfileGenerator.cpp: Remove some useless code.
        (KJS::ProfileGenerator::stopProfiling):

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

12 years ago2008-08-18 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Mon, 18 Aug 2008 20:21:57 +0000 (20:21 +0000)]
2008-08-18  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Tim.

        <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
        is another profile.

        * page/inspector/ProfilesPanel.js:

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

12 years ago2008-08-18 Kevin McCullough <kmccullough@apple.com>
kmccullough@apple.com [Mon, 18 Aug 2008 19:55:35 +0000 (19:55 +0000)]
2008-08-18  Kevin McCullough  <kmccullough@apple.com>

        Reviewed by Geoff.

        <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
        all console messages

        * page/inspector/Console.js:

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

12 years agoUpgrade to WordPress 2.6.1.
mrowe@apple.com [Mon, 18 Aug 2008 14:54:28 +0000 (14:54 +0000)]
Upgrade to WordPress 2.6.1.

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

12 years ago2008-08-18 Dirk Schulze <vbs85@gmx.de>
jmalonzo@webkit.org [Mon, 18 Aug 2008 11:20:11 +0000 (11:20 +0000)]
2008-08-18  Dirk Schulze  <vbs85@gmx.de>

        Reviewed by Eric Seidel.

        Fixed Canvas for Cairo. Stroke and fill colors didn't work after
        the canvas clean up.

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

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::fill):
        (WebCore::CanvasRenderingContext2D::stroke):
        (WebCore::CanvasRenderingContext2D::fillRect):

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

12 years ago2008-08-18 Alp Toker <alp@nuanti.com>
jmalonzo@webkit.org [Mon, 18 Aug 2008 11:14:38 +0000 (11:14 +0000)]
2008-08-18  Alp Toker  <alp@nuanti.com>

        Reviewed by Holger Freyther.

        https://bugs.webkit.org/show_bug.cgi?id=20350
        [GTK] Get DumpRenderTree working

        WebKit/gtk:

        Add a private function to WebFrame to dump the render tree as required
        for the DumpRenderTree testing tool.

        * webkit/webkitprivate.h:
        * webkit/webkitwebframe.cpp:

        WebKitTools/DumpRenderTree/gtk:

        Fixes and enhancements to DumpRenderTree. With these changes, the test
        suite can now complete a run producing text and render tree dumps.

        * DumpRenderTree/gtk/DumpRenderTree.cpp:
        (dumpFramesAsText):
        (dump):
        (runTest):
        (webViewLoadFinished):
        (webViewWindowObjectCleared):
        (webViewConsoleMessage):
        (webViewScriptAlert):
        (webViewScriptPrompt):
        (webViewScriptConfirm):
        (webViewTitleChanged):
        (main):
        * DumpRenderTree/gtk/DumpRenderTreeGtk.h:
        * DumpRenderTree/gtk/LayoutTestControllerGtk.cpp:
        (LayoutTestController::clearBackForwardList):
        (LayoutTestController::pathToLocalResource):
        (LayoutTestController::setAcceptsEditing):
        (LayoutTestController::setUserStyleSheetEnabled):
        (LayoutTestController::setUserStyleSheetLocation):
        (waitToDumpWatchdogFired):
        (LayoutTestController::windowCount):
        * DumpRenderTree/gtk/WorkQueueItemGtk.cpp:
        (JSStringCopyUTF8CString):
        (ScriptItem::invoke):

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

12 years ago Reviewed by Maciej.
ap@webkit.org [Mon, 18 Aug 2008 08:09:59 +0000 (08:09 +0000)]
    Reviewed by Maciej.

        Make JSGlobalContextRetain/Release actually work.

        * API/JSContextRef.cpp:
        (JSGlobalContextRetain):
        (JSGlobalContextRelease):
        Ref/deref global data to give checking for globalData.refCount() some sense.

        * API/tests/testapi.c: (main): Added a test for this bug.

        * kjs/JSGlobalData.cpp:
        (KJS::JSGlobalData::~JSGlobalData):
        While checking for memory leaks, found that JSGlobalData::emptyList has changed to
        a pointer, but it was not destructed, causing a huge leak in run-webkit-tests --threaded.

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

12 years ago Complete in scope variables in the Console when paused.
timothy@apple.com [Mon, 18 Aug 2008 03:21:46 +0000 (03:21 +0000)]
    Complete in scope variables in the Console when paused.

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

        Reviewed by Geoffrey Garen.

        * page/inspector/Console.js:
        (WebInspector.Console.prototype.completions): If the expressionString
        is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
        to get an object that declares all the in scope variables. That way
        "top level" expressions are completed.
        * page/inspector/ScriptsPanel.js:
        (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
        Return an object that has all the variables that are in scope for the
        selected call frame. The value of each property is just true.
        The return object is useful for quick lookups or auto completion.

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

12 years ago2008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
cwzwarich@webkit.org [Mon, 18 Aug 2008 02:42:07 +0000 (02:42 +0000)]
2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>

        Reviewed by Maciej.

        Change the counting of constants so that preincrement and predecrement of
        const local variables are considered unexpected loads.

        JavaScriptCore:

        * kjs/nodes.cpp:
        (KJS::PrefixResolveNode::emitCode):
        * kjs/nodes.h:
        (KJS::ScopeNode::neededConstants):

        LayoutTests:

        * fast/js/deep-recursion-test.html:

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

12 years ago<rdar://problem/6150322> In Gmail, a crash occurs at KJS::Machine::privateExecute...
oliver@apple.com [Sun, 17 Aug 2008 23:38:36 +0000 (23:38 +0000)]
<rdar://problem/6150322> In Gmail, a crash occurs at KJS::Machine::privateExecute() when applying list styling to text after a quote had been removed
<https://bugs.webkit.org/show_bug.cgi?id=20386>

Reviewed by Cameron Zwarich.

This crash was caused by "depth()" incorrectly determining the scope depth
of a 0 depth function without a full scope chain.  Because such a function
would not have an activation the depth function would return the scope depth
of the parent frame, thus triggering an incorrect unwind.  Any subsequent
look up that walked the scope chain would result in incorrect behaviour,
leading to a crash or incorrect variable resolution.  This can only actually
happen in try...finally statements as that's the only path that can result in
the need to unwind the scope chain, but not force the function to need a
full scope chain.

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

12 years ago2008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
cwzwarich@webkit.org [Sun, 17 Aug 2008 21:34:46 +0000 (21:34 +0000)]
2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>

        Not reviewed.

        Speculative Qt build fix.

        * bridge/qt/qt_runtime.cpp:
        (KJS::Bindings::convertValueToQVariant):
        (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):

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

12 years ago2008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
cwzwarich@webkit.org [Sun, 17 Aug 2008 21:27:56 +0000 (21:27 +0000)]
2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>

        Reviewed by Maciej.

        Bug 20419: Remove op_jless
        <https://bugs.webkit.org/show_bug.cgi?id=20419>

        Remove op_jless, which is rarely used now that we have op_loop_if_less.

        * VM/CodeBlock.cpp:
        (KJS::CodeBlock::dump):
        * VM/CodeGenerator.cpp:
        (KJS::CodeGenerator::emitJumpIfTrue):
        * VM/Machine.cpp:
        (KJS::Machine::privateExecute):
        * VM/Opcode.h:

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

12 years ago2008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
cwzwarich@webkit.org [Sun, 17 Aug 2008 21:18:42 +0000 (21:18 +0000)]
2008-08-17  Cameron Zwarich  <cwzwarich@uwaterloo.ca>

        Reviewed by Dan Bernstein.

        Fix a typo in r35807 that is also causing build failures for
        non-AllInOne builds.

        * kjs/NumberConstructor.cpp:

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

12 years agoJavaScriptGlue:
ggaren@apple.com [Sun, 17 Aug 2008 20:28:37 +0000 (20:28 +0000)]
JavaScriptGlue:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Updated project files to XCode 3.1.

        * JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Updated project files to XCode 3.1.

        * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:

WebKit:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Updated project files to XCode 3.1.

        * WebKit.xcodeproj/project.pbxproj:

WebKitTools:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Updated project files to XCode 3.1.

        * DrawTest/DrawTest.xcodeproj/project.pbxproj:
        * WebKitLauncher/WebKitLauncher.xcodeproj/project.pbxproj:

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

12 years agoJavaScriptCore:
ggaren@apple.com [Sun, 17 Aug 2008 20:23:49 +0000 (20:23 +0000)]
JavaScriptCore:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Made room for a free word in JSCell.

        SunSpider says no change.

        I changed JSCallbackObjectData, Arguments, JSArray, and RegExpObject to
        store auxiliary data in a secondary structure.

        I changed InternalFunction to store the function's name in the property
        map.

        I changed JSGlobalObjectData to use a virtual destructor, so WebCore's
        JSDOMWindowBaseData could inherit from it safely. (It's a strange design
        for JSDOMWindowBase to allocate an object that JSGlobalObject deletes,
        but that's really our only option, given the size constraint.)

        I also added a bunch of compile-time ASSERTs, and removed lots of comments
        in JSObject.h because they were often out of date, and they got in the
        way of reading what was actually going on.

        Also renamed JSArray::getLength to JSArray::length, to match our style
        guidelines.

WebCore:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Made room for a free word in JSCell.

        Changed JSDOMWindowBase to store its auxiliary data in a subclass of
        JSGlobalData, so the two could share a pointer.

        Added a bunch of ASSERTs, to help catch over-sized objects.

WebKit/mac:

2008-08-17  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Cameron Zwarich.

        Made room for a free word in JSCell.

        (Updated for JavaScriptCore changes.)

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

12 years ago2007-08-16 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Sun, 17 Aug 2008 07:57:39 +0000 (07:57 +0000)]
2007-08-16  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Sped up property access for array.length and string.length by adding a
        mechanism for returning a temporary value directly instead of returning
        a pointer to a function that retrieves the value.

        Also removed some unused cruft from PropertySlot.

        SunSpider says 0.5% - 1.2% faster.

        NOTE: This optimization is not a good idea in general, because it's
        actually a pessimization in the case of resolve for assignment,
        and it may get in the way of other optimizations in the future.

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

12 years ago Reviewed by Geoffrey Garen.
mitz@apple.com [Sun, 17 Aug 2008 05:06:18 +0000 (05:06 +0000)]
    Reviewed by Geoffrey Garen.

        Disable dead code stripping in debug builds.

        * Configurations/Base.xcconfig:
        * JavaScriptCore.xcodeproj/project.pbxproj:

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

12 years ago2008-08-15 Mark Rowe <mrowe@apple.com>
mitz@apple.com [Sun, 17 Aug 2008 03:28:52 +0000 (03:28 +0000)]
2008-08-15  Mark Rowe  <mrowe@apple.com>

        Reviewed by Dan Bernstein.

        Disable dead code stripping in debug builds.

        * Configurations/Base.xcconfig:
        * WebCore.xcodeproj/project.pbxproj:

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

12 years ago<rdar://problem/6143072> FastMallocZone's enumeration code makes assumptions about...
mrowe@apple.com [Sat, 16 Aug 2008 06:53:44 +0000 (06:53 +0000)]
<rdar://problem/6143072> FastMallocZone's enumeration code makes assumptions about handling of remote memory regions that overlap

Reviewed by Oliver Hunt.

* wtf/FastMalloc.cpp:
(WTF::TCMalloc_Central_FreeList::enumerateFreeObjects): Don't directly compare pointers mapped into the local process with
a pointer that has not been mapped.  Instead, calculate a local address for the pointer and compare with that.
(WTF::TCMallocStats::FreeObjectFinder::findFreeObjects): Pass in the remote address of the central free list so that it can
be used when calculating local addresses.
(WTF::TCMallocStats::FastMallocZone::enumerate): Ditto.

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

12 years ago<rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
mrowe@apple.com [Sat, 16 Aug 2008 06:48:10 +0000 (06:48 +0000)]
<rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework

Rubber-stamped by Geoff Garen.

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

12 years ago2008-08-15 Antti Koivisto <antti@apple.com>
antti@apple.com [Fri, 15 Aug 2008 22:58:06 +0000 (22:58 +0000)]
2008-08-15  Antti Koivisto  <antti@apple.com>

        Reviewed by Anders.

        Don't start preloading body resources before the head is complete. This prevents
        body preloads from slowing down initial display when there is limited amount
        of bandwidth available.

        Works by queuing up found body preloads to DocLoader and only issuing them
        after document has rendering.

        With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
        without affecting complete load time.

        * html/PreloadScanner.cpp:
        (WebCore::PreloadScanner::PreloadScanner):
        (WebCore::PreloadScanner::scanningBody):
        (WebCore::PreloadScanner::emitTag):
        (WebCore::PreloadScanner::emitCSSRule):
        * html/PreloadScanner.h:
        * loader/DocLoader.cpp:
        (WebCore::DocLoader::preload):
        (WebCore::DocLoader::checkForPendingPreloads):
        (WebCore::DocLoader::requestPreload):
        * loader/DocLoader.h:
        * loader/loader.cpp:
        (WebCore::Loader::Host::didFinishLoading):
        (WebCore::Loader::Host::didFail):

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

12 years ago Use item's computed style if the render style is 0 before falling back to...
adachan@apple.com [Fri, 15 Aug 2008 21:08:40 +0000 (21:08 +0000)]
    Use item's computed style if the render style is 0 before falling back to the <select>'s style.
        This way style set on an <hr> within a <select> will be honored.

        Reviewed by Dave Hyatt and Dan Bernstein.

        * rendering/RenderMenuList.cpp:
        (WebCore::RenderMenuList::itemStyle):

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

12 years ago2008-08-15 Antti Koivisto <antti@apple.com>
antti@apple.com [Fri, 15 Aug 2008 20:48:06 +0000 (20:48 +0000)]
2008-08-15  Antti Koivisto  <antti@apple.com>

        Reviewed by Oliver.

        Some loader performance tweaks:
        - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
          Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
          to not delay rendering.
        - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
          can take long time when latency is high so it is good to get started early.
        - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
          load queues. Issue remaining loads to the network layer.

        * loader/loader.cpp:
        (WebCore::Loader::determinePriority):
        (WebCore::Loader::load):
        (WebCore::Loader::Host::servePendingRequests):
        * loader/loader.h:

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

12 years ago Detach the script debugger when the Web Inspector's window closes.
timothy@apple.com [Fri, 15 Aug 2008 18:35:39 +0000 (18:35 +0000)]
    Detach the script debugger when the Web Inspector's window closes.
        This has always been the intended design, but never fully implemented.

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

        Reviewed by Adam Roben.

        * page/InspectorController.cpp:
        (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
        if the window is no longer visible.

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

12 years ago Rubber-stamped by Tim Hatcher.
mitz@apple.com [Fri, 15 Aug 2008 18:27:12 +0000 (18:27 +0000)]
    Rubber-stamped by Tim Hatcher.

        - update results for console.dir

        * fast/dom/Window/window-properties-expected.txt:

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

12 years ago2008-08-15 Håvard Wall <hwall@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:12:55 +0000 (18:12 +0000)]
2008-08-15  Håvard Wall  <hwall@trolltech.com>

        Reviewed by Simon.

        Fixes: compile with QT_NO_UNDOCOMMAND/STACK

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

12 years ago2008-08-15 Håvard Wall <hwall@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:12:34 +0000 (18:12 +0000)]
2008-08-15  Håvard Wall  <hwall@trolltech.com>

        Reviewed by Simon.

        Fixes: compile with QT_NO_STYLE_STYLESHEET

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

12 years agoHåvard Wall <hwall@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:12:21 +0000 (18:12 +0000)]
Håvard Wall <hwall@trolltech.com>

Fixes: compile with QT_NO_SHORTCUT

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

12 years ago2008-08-15 Håvard Wall <hwall@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:12:08 +0000 (18:12 +0000)]
2008-08-15  Håvard Wall  <hwall@trolltech.com>

        Reviewed by Simon.

        Fixes:    compile with QT_NO_CONTEXTMENU

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

12 years ago2008-08-15 Håvard Wall <hwall@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:11:34 +0000 (18:11 +0000)]
2008-08-15  Håvard Wall  <hwall@trolltech.com>

        Reviewed by Simon.

        Fixes: compile with QT_NO_WHEELEVENT

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

12 years agoHåvard Wall <hwall@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:11:11 +0000 (18:11 +0000)]
Håvard Wall <hwall@trolltech.com>

Fixes: compile with QT_NO_PRINTER

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

12 years ago2008-08-15 David Boddie <dboddie@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:10:57 +0000 (18:10 +0000)]
2008-08-15  David Boddie  <dboddie@trolltech.com>

        Reviewed by Simon.

        Doc: Added documentation for default property values.

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

12 years agoDavid Boddie <dboddie@trolltech.com>
hausmann@webkit.org [Fri, 15 Aug 2008 18:10:42 +0000 (18:10 +0000)]
David Boddie <dboddie@trolltech.com>

Doc: Renamed snippets that appear in the code directory.

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

12 years ago Fixed Bug 20210: Console groups are incorrect when closing and reopening...
timothy@apple.com [Fri, 15 Aug 2008 17:48:36 +0000 (17:48 +0000)]
    Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector

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

        Reviewed by Tim Hatcher.

        * page/Console.cpp:
        (WebCore::Console::group):
        (WebCore::Console::groupEnd):
        * page/Console.h:
        (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
        * page/InspectorController.cpp:
        (WebCore::InspectorController::startGroup): Increments group level by
        one and adds console message with StartGroupMessaageLevel.
        (WebCore::InspectorController::endGroup): Decrements group level by one
        and adds console message with EndGroupMessaageLevel.
        * page/InspectorController.h:
        * page/inspector/Console.js:
        (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
        if the message is StartGroupMessaageLevel.
        (WebInspector.ConsoleMessage.prototype.toMessageElement):
        (WebInspector.ConsoleGroup.prototype.addMessage):
        * page/inspector/inspector.js:

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

12 years ago Adds support for console.dir to the Inspector
timothy@apple.com [Fri, 15 Aug 2008 17:35:22 +0000 (17:35 +0000)]
    Adds support for console.dir to the Inspector

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

        Reviewed by Tim Hatcher.

        * bindings/js/JSConsoleCustom.cpp:
        (WebCore::JSConsole::dir):
        * page/Console.cpp:
        (WebCore::Console::dir):
        * page/Console.h: Added ObjectMessageLevel.
        * page/Console.idl: Added console.dir.
        * page/inspector/Console.js:
        (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
        ObjectPropertiesSection if the MessageLevel is Object.
        * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
        used on primitive data types.
        * page/inspector/inspector.css:

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

12 years ago Adds support for clear() in the Inspector console.
timothy@apple.com [Fri, 15 Aug 2008 17:06:14 +0000 (17:06 +0000)]
    Adds support for clear() in the Inspector console.

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

        Reviewed by Tim Hatcher.

        * page/inspector/Console.js:

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

12 years ago Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
timothy@apple.com [Fri, 15 Aug 2008 17:02:44 +0000 (17:02 +0000)]
    Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.

        Platform distinction and modifier key matching adjusted
        by Daniel Jalkut <jalkut@red-sweater.com>

        Bug 16313: text search (find) keybindings should work in the Web Inspector
        https://bugs.webkit.org/show_bug.cgi?id=16313

        Reviewed by Tim Hatcher.

        * page/inspector/inspector.js: Added a case for the F key

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

12 years ago Fix for error when the string doesn't contain a webkit-profile link.
timothy@apple.com [Fri, 15 Aug 2008 16:50:26 +0000 (16:50 +0000)]
    Fix for error when the string doesn't contain a webkit-profile link.

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

        Reviewed by Tim Hatcher.

        * page/inspector/inspector.js:

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

12 years ago Fixes two bugs where JavaScript could be executed from the page
timothy@apple.com [Fri, 15 Aug 2008 16:33:27 +0000 (16:33 +0000)]
    Fixes two bugs where JavaScript could be executed from the page
        while the debugger is paused.

        The first issue was JSLazyEventListener not checking the paused
        state before parsing the code.

        The second issue was with the PageGroup version of
        JavaScriptDebugServer::setJavaScriptPaused always passing false
        to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
        and not the paused argument.

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

        Reviewed by Adam Roben.

        * bindings/js/JSEventListener.cpp:
        (WebCore::JSLazyEventListener::parseCode): Check the paused
        state of the ScriptController. Return early if paused.
        * manual-tests/inspector/debugger-execution-while-paused.html: Added.
        * page/JavaScriptDebugServer.cpp:
        (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
        Pass the paused argument to the Page version of setJavaScriptPaused.

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

12 years agoFix the 64-bit build.
mrowe@apple.com [Fri, 15 Aug 2008 14:55:46 +0000 (14:55 +0000)]
Fix the 64-bit build.

Add extra cast to avoid warnings about loss of precision when casting from
JSValue* to an integer type.

* kjs/JSImmediate.h:
(KJS::JSImmediate::intValue):
(KJS::JSImmediate::uintValue):

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

12 years ago Still fixing Windows build.
ap@webkit.org [Fri, 15 Aug 2008 11:59:39 +0000 (11:59 +0000)]
    Still fixing Windows build.

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make: Added OpaqueJSString
        to yet another place.

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

12 years agoWindows build fix
barraclough@apple.com [Fri, 15 Aug 2008 11:41:18 +0000 (11:41 +0000)]
Windows build fix

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

12 years ago Trying to fix non-Apple builds.
ap@webkit.org [Fri, 15 Aug 2008 11:14:17 +0000 (11:14 +0000)]
    Trying to fix non-Apple builds.

        * ForwardingHeaders/JavaScriptCore/OpaqueJSString.h: Added.

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

12 years ago2008-08-15 Gavin Barraclough <barraclough@apple.com>
barraclough@apple.com [Fri, 15 Aug 2008 10:42:26 +0000 (10:42 +0000)]
2008-08-15  Gavin Barraclough  <barraclough@apple.com>

        Reviewed by Geoff Garen.

        Allow JSImmediate to hold 31 bit signed integer immediate values.  The low two bits of a
        JSValue* are a tag, with the tag value 00 indicating the JSValue* is a pointer to a
        JSCell.  Non-zero tag values used to indicate that the JSValue* is not a real pointer,
        but instead holds an immediate value encoded within the pointer.  This patch changes the
        encoding so both the tag values 01 and 11 indicate the value is a signed integer, allowing
        a 31 bit value to be stored.  All other immediates are tagged with the value 10, and
        distinguished by a secondary tag.

        Roughly +2% on SunSpider.

        * kjs/JSImmediate.h: Encoding of JSImmediates has changed - see comment at head of file for
                             descption of new layout.

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

12 years ago More build fixes.
ap@webkit.org [Fri, 15 Aug 2008 10:18:06 +0000 (10:18 +0000)]
    More build fixes.

        * API/OpaqueJSString.h: Add a namespace to friend declaration to appease MSVC.
        * API/JSStringRefCF.h: (JSStringCreateWithCFString) Cast UniChar* to UChar* explicitly.
        * JavaScriptCore.exp: Added OpaqueJSString::create(const KJS::UString&) to fix WebCore build.

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

12 years ago Build fix.
ap@webkit.org [Fri, 15 Aug 2008 08:32:01 +0000 (08:32 +0000)]
    Build fix.

        * JavaScriptCore.xcodeproj/project.pbxproj: Marked OpaqueJSString as private

        * kjs/identifier.cpp:
        (KJS::Identifier::checkSameIdentifierTable):
        * kjs/identifier.h:
        (KJS::Identifier::add):
        Since checkSameIdentifierTable is exported for debug build's sake, gcc wants it to be
        non-inline in release builds, too.

        * JavaScriptCore.exp: Don't export inline OpaqueJSString destructor.

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

12 years ago Reviewed by Geoff Garen.
ap@webkit.org [Fri, 15 Aug 2008 07:43:48 +0000 (07:43 +0000)]
    Reviewed by Geoff Garen.

        JSStringRef is created context-free, but can get linked to one via an identifier table,
        breaking an implicit API contract.

        Made JSStringRef point to OpaqueJSString, which is a new string object separate from UString.

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

12 years ago Update cache capacities to match values used on Mac.
sfalken@apple.com [Fri, 15 Aug 2008 06:15:14 +0000 (06:15 +0000)]
    Update cache capacities to match values used on Mac.

        Reviewed by Dan Bernstein.

        * WebView.cpp:
        (WebView::setCacheModel):

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

12 years agowx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with...
kevino@webkit.org [Fri, 15 Aug 2008 05:10:57 +0000 (05:10 +0000)]
wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with an alternative that performs reasonably well. (GDI+ is too slow in many cases.)

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

12 years ago2008-08-14 Eric Carlson <eric.carlson@apple.com>
adele@apple.com [Fri, 15 Aug 2008 00:53:36 +0000 (00:53 +0000)]
2008-08-14  Eric Carlson  <eric.carlson@apple.com>

        Reviewed by Adele.

        Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
        <video> elements on Windows never becomes visible when a page is restored from the cache

        Always pass "set" calls down to MediaPlayerPrivate instead of only when the
        value is different from the cached value. Let the implementation decide when
        to avoid work because nothing has changed.

        * platform/graphics/MediaPlayer.cpp:
        (WebCore::MediaPlayer::setVolume):
        (WebCore::MediaPlayer::setRate):
        (WebCore::MediaPlayer::setRect):
        (WebCore::MediaPlayer::setVisible):

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

12 years ago2008-08-14 Sam Weinig <sam@webkit.org>
weinig@apple.com [Fri, 15 Aug 2008 00:44:42 +0000 (00:44 +0000)]
2008-08-14  Sam Weinig  <sam@webkit.org>

        Reviewed by Jon Honeycutt.

        Add WebView SPI to set HTMLTokenizer yielding parameters.

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

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

12 years agoAdd the bug URL to the ChangeLog.
timothy@apple.com [Thu, 14 Aug 2008 23:58:19 +0000 (23:58 +0000)]
Add the bug URL to the ChangeLog.

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

12 years ago Make Firebug command line API respect predefined variables.
timothy@apple.com [Thu, 14 Aug 2008 23:57:14 +0000 (23:57 +0000)]
    Make Firebug command line API respect predefined variables.

        Reviewed by Tim Hatcher.

        * page/inspector/Console.js:

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

12 years ago2008-08-14 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 14 Aug 2008 23:45:33 +0000 (23:45 +0000)]
2008-08-14  Simon Fraser  <simon.fraser@apple.com>

        Fix testcase and add pixel results for testcase in
        https://bugs.webkit.org/show_bug.cgi?id=20367

        * platform/mac/fast/css/font-face-in-media-rule-expected.checksum: Added.
        * platform/mac/fast/css/font-face-in-media-rule-expected.png: Added.
        * platform/mac/fast/css/font-face-in-media-rule-expected.txt:

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

12 years agoWebCore:
weinig@apple.com [Thu, 14 Aug 2008 23:33:22 +0000 (23:33 +0000)]
WebCore:

2008-08-14  Sam Weinig  <sam@webkit.org>

        Reviewed by Geoffrey Garen and Timothy Hatcher.

        Allow programatically setting the HTMLTokenizers time delay and chunk size
        which are used for determining how aggressively we yield.

        * WebCore.base.exp:
        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::begin):
        (WebCore::HTMLTokenizer::continueProcessing):
        * html/HTMLTokenizer.h:
        * page/Page.cpp:
        (WebCore::Page::Page):
        (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
        (WebCore::Page::setCustomHTMLTokenizerChunkSize):
        * page/Page.h:
        (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
        (WebCore::Page::customHTMLTokenizerTimeDelay):
        (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
        (WebCore::Page::customHTMLTokenizerChunkSize):

WebKit/mac:

2008-08-14  Sam Weinig  <sam@webkit.org>

        Reviewed by Geoffrey Garen and Timothy Hatcher.

        Add WebView SPI to set HTMLTokenizer yielding parameters.

        * WebView/WebView.mm:
        (-[WebView _setCustomHTMLTokenizerTimeDelay:]):
        (-[WebView _setCustomHTMLTokenizerChunkSize:]):
        * WebView/WebViewPrivate.h:

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

12 years ago Reviewed by Beth.
eric@webkit.org [Thu, 14 Aug 2008 23:20:00 +0000 (23:20 +0000)]
    Reviewed by Beth.

        Move us one step closer to cross-platform svg/graphics code

        * WebCore.xcodeproj/project.pbxproj:
        * html/CanvasStyle.cpp:
        * platform/graphics/Color.cpp:
        (WebCore::colorWithOverrideAlpha):
        * platform/graphics/Color.h:
        * svg/graphics/cg/CgSupport.cpp:
        (WebCore::applyStrokeStyleToContext):
        (WebCore::strokeBoundingBox):
        * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
        (WebCore::SVGPaintServerSolid::setup):

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

12 years ago Reviewed by Alexey.
eric@webkit.org [Thu, 14 Aug 2008 23:19:44 +0000 (23:19 +0000)]
    Reviewed by Alexey.

        Remove un-need includes from HTMLCanvas and use the
        Gradient platform abstraction in one place in CanvasStyle

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::fillRect):
        * html/CanvasStyle.cpp:
        * html/HTMLCanvasElement.cpp:

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

12 years ago Reviewed by Alexey.
eric@webkit.org [Thu, 14 Aug 2008 23:19:31 +0000 (23:19 +0000)]
    Reviewed by Alexey.

        Clean up GlyphBuffer.h, removing more #ifdefs

        * platform/graphics/GlyphBuffer.h:
        (WebCore::GlyphBuffer::glyphAt):
        (WebCore::GlyphBuffer::advanceAt):
        (WebCore::GlyphBuffer::add):

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

12 years ago Reviewed by Sam.
eric@webkit.org [Thu, 14 Aug 2008 23:19:17 +0000 (23:19 +0000)]
    Reviewed by Sam.

        Clean up AffineTransform.h, removing #ifdefs

        * platform/graphics/AffineTransform.h:
        * platform/graphics/cairo/AffineTransformCairo.cpp:
        * platform/graphics/cg/AffineTransformCG.cpp:
        * platform/graphics/qt/AffineTransformQt.cpp:
        * platform/graphics/wx/AffineTransformWx.cpp:

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

12 years ago2008-08-14 Dan Bernstein <mitz@apple.com>
mitz@apple.com [Thu, 14 Aug 2008 23:12:34 +0000 (23:12 +0000)]
2008-08-14  Dan Bernstein  <mitz@apple.com>

        - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().

        * platform/graphics/cairo/ImageSourceCairo.cpp:
        (WebCore::ImageSource::frameSizeAtIndex):
        * platform/graphics/qt/ImageSourceQt.cpp:
        (WebCore::ImageSource::frameSizeAtIndex):
        * platform/graphics/wx/ImageSourceWx.cpp:
        (WebCore::ImageSource::frameSizeAtIndex):

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

12 years ago2008-08-14 Dan Bernstein <mitz@apple.com>
mitz@apple.com [Thu, 14 Aug 2008 23:08:09 +0000 (23:08 +0000)]
2008-08-14  Dan Bernstein  <mitz@apple.com>

        Reviewed by Brady Eidson.

        - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped

        * platform/graphics/BitmapImage.cpp:
        (WebCore::BitmapImage::BitmapImage): Added initialization of
        m_hasUniformFrameSize.
        (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
        cached frame for use in decoded size computation and for setting
        m_hasUniformFrameSize.
        (WebCore::BitmapImage::currentFrameSize): Added.
        (WebCore::BitmapImage::dataChanged): Added code to reset
        m_hasUniformFrameSize.
        * platform/graphics/BitmapImage.h: Added currentFrameSize() and
        m_hasUniformFrameSize.
        * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
        * platform/graphics/cg/ImageCG.cpp:
        (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
        fixes the bug, which resulted from assuming that the frame being drawn
        was the same size as the first frame.
        * platform/graphics/cg/ImageSourceCG.cpp:
        (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
        changed to get the size of the frame at the given index.
        (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).

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

12 years ago2008-08-13 Simon Fraser <simon.fraser@apple.com>
simon.fraser@apple.com [Thu, 14 Aug 2008 23:04:41 +0000 (23:04 +0000)]
2008-08-13  Simon Fraser  <simon.fraser@apple.com>

        Reviewed by Eric Seidel

        Fix @font-face inside @media rule crash.
        https://bugs.webkit.org/show_bug.cgi?id=20367

        Test: fast/css/font-face-in-media-rule.html

        * css/CSSStyleSelector.cpp:
        (WebCore::CSSRuleSet::addRulesFromSheet):

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