13 years ago Reviewed by Mitz.
antti@apple.com [Fri, 14 Mar 2008 03:07:17 +0000 (03:07 +0000)]
    Reviewed by Mitz.

        Update test results for the preload patch. Load order for some resources changed,
        this does not affect the substance of these tests.

        * platform/mac-leopard/security/block-test-expected.txt:
        * security/block-test-expected.txt:
        * webarchive/loading/cache-expired-subresource-expected.txt:

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

13 years ago2008-03-13 Tommi Komulainen <tommi.komulainen@iki.fi>
alp@webkit.org [Fri, 14 Mar 2008 02:47:45 +0000 (02:47 +0000)]
2008-03-13  Tommi Komulainen  <tommi.komulainen@iki.fi>

        Reviewed by Alp Toker.

        [SOUP] POST requests are empty

        Send the HTTP request body as well.

        * platform/network/soup/ResourceHandleSoup.cpp:

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

13 years agoFix the build.
timothy@apple.com [Thu, 13 Mar 2008 23:16:27 +0000 (23:16 +0000)]
Fix the build.

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

13 years agoWebCore:
mitz@apple.com [Thu, 13 Mar 2008 22:14:15 +0000 (22:14 +0000)]

        Reviewed by Dave Hyatt.

        - fix http://bugs.webkit.org/show_bug.cgi?id=17819
          Border-collapse: collapse later cell wins on PC, earlier cell on Mac

        Test: fast/table/border-collapsing/equal-precedence-resolution.html

        * rendering/RenderTableCell.cpp:
        (WebCore::RenderTableCell::collapsedLeftBorder): When calling
        compareBorders() with borders that may have the same precedence, made
        sure to pass the border belonging to the earlier (in document order)
        element first, since compareBorders() prefers the first argument when
        there is a tie.
        (WebCore::RenderTableCell::collapsedRightBorder): Ditto.
        (WebCore::RenderTableCell::collapsedTopBorder): Ditto.


        Reviewed by Dave Hyatt.

        - test for http://bugs.webkit.org/show_bug.cgi?id=17819
          Border-collapse: collapse later cell wins on PC, earlier cell on Mac

        * fast/table/border-collapsing/equal-precedence-resolution.html: Added.
        * platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.checksum: Added.
        * platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.png: Added.
        * platform/mac/fast/table/border-collapsing/equal-precedence-resolution-expected.txt: Added.

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

13 years ago Another Windows build fix after r31034
aroben@apple.com [Thu, 13 Mar 2008 22:07:23 +0000 (22:07 +0000)]
    Another Windows build fix after r31034

        * WebKitDLL.cpp:
        (loadResourceIntoBuffer): Use SharedBuffer::create.

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

13 years agoBuild fixes after r31034
aroben@apple.com [Thu, 13 Mar 2008 21:40:43 +0000 (21:40 +0000)]
Build fixes after r31034


        wx build fix and Windows leak fix after r31034

        * platform/graphics/wx/ImageWx.cpp:
        (WebCore::Image::loadPlatformResource): Use SharedBuffer::create.
        * platform/win/SharedBufferWin.cpp:
        (WebCore::SharedBuffer::createWithContentsOfFile): Ditto (we were
        leaking the SharedBuffer here before).


        Windows build fix after r31034

        * WebFrame.cpp:
        (WebFrame::loadData): Use SharedBuffer::create.
        (WebFrame::loadHTMLString): Ditto.

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

13 years ago Reviewed by Eric.
antti@apple.com [Thu, 13 Mar 2008 21:31:14 +0000 (21:31 +0000)]
    Reviewed by Eric.

        Correct a few issues spotted by Mike Belshe.

        * html/PreloadScanner.cpp:
        * loader/loader.cpp:

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

13 years agoFix GTK+ build for SharedBuffer changes.
aroben@apple.com [Thu, 13 Mar 2008 21:26:55 +0000 (21:26 +0000)]
Fix GTK+ build for SharedBuffer changes.


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

        Fix GTK+ build for SharedBuffer changes.

        * platform/graphics/gtk/ImageGtk.cpp:


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

        Fix GTK+ build for SharedBuffer changes.

        * webkit/webkitwebview.cpp:

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

13 years agoWebCore:
sfalken@apple.com [Thu, 13 Mar 2008 21:24:01 +0000 (21:24 +0000)]

        More PGO build fixes.

        * WebCorePrefix.cpp:


        More PGO build fixes.

        * WebKit.vcproj/WebKit.pgd: Removed.
        * WebKit.vcproj/WebKit.vcproj:
        * WebKitPrefix.cpp:

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

13 years agoWebCore:
antti@apple.com [Thu, 13 Mar 2008 21:20:31 +0000 (21:20 +0000)]

        Reviewed by Darin.

        Make page loads go fast.


        - Implement speculative preloading. When a script load blocks the main parser, use a side
          parser to pick up more resources.
        - Implement per-host load queues, prioritize scripts and stylesheets over images.

        Depending on content and network latency this may speed things up quite a bit.

        * WebCore.xcodeproj/project.pbxproj:
        * dom/Document.cpp:
        Clear the preloads after laoding completes.

        * html/HTMLLinkElement.cpp:
        * html/HTMLLinkElement.h:
        Make tokenizeRelAttribute() public static so it can be used from elsewhere.
        Eliminate a pointless bitfield so I can get references.

        * html/HTMLTokenizer.cpp:
        * html/HTMLTokenizer.h:
        Spin up the preload scanner whenever a script load blocks the parser. One scanner tracks the end of
        the document while temporary ones are created as needed to scan document.write() output.

        * html/PreloadScanner.cpp: Added.
        * html/PreloadScanner.h: Added.
        HTML5 tokenization plus some glue code. Fake CSS parsing thrown in just for fun.

        * loader/Cache.cpp:
        Preloads have zero refcount, avoid kicking them out too early.

        * loader/CachedResource.cpp:
        * loader/CachedResource.h:
        Keep track which resources are preloads. Avoid deleting them. Track
        at which point of the loading preloads get utilized to enable some interesting

        * loader/DocLoader.cpp:
        * loader/DocLoader.h:
        Ensure we utilize preloaded resources during reloads.
        Keep a list of all preloads in the document. Clear the preloads after
        parsing is complete. Some debug statistics.

        * loader/DocumentLoader.cpp:
        Avoid signaling that loading is complete too early.

        * loader/loader.cpp:
        * loader/loader.h:
        Distribute load requests to per-host priority queues. Limit the number of loads issued to the
        networking layer so we have better changes of getting important requests through first.
        Prioritize scripts > stylesheets > images.


        Reviewed by Darin.

        * ForwardingHeaders/wtf/Deque.h: Added.

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

13 years ago This patch makes full page zoom work pretty well. It fixes repainting so...
hyatt@apple.com [Thu, 13 Mar 2008 21:01:04 +0000 (21:01 +0000)]
    This patch makes full page zoom work pretty well. It fixes repainting so that it works when transforms
        are set on the RenderView. It also implements the "smart layout" behavior that other browsers support when
        zooming. The page will still try to constrain to the viewport size even when zoomed.

        Reviewed by john

        * dom/Document.cpp:
        Make sure to test for transform changes even when there is no zoom.  This fixes repainting issues
        caused by jumping from a zoomed state back to the standard size.

        * page/FrameView.cpp:
        Adjust for the zoom factor (the render tree is in unzoomed coordinates, but the scrollbars of the view
        need to handle zoomed coordinates).

        * rendering/RenderBox.cpp:
        Fix the body-sizing-to-the-view-height quirk so that it takes the zoom factor into account when
        stretching to fill the viewport.

        * rendering/RenderLayer.cpp:
        Remove the FIXMEs now that absoluteClippedOverflowRect works with transforms on the RenderView.

        * rendering/RenderView.cpp:
        Make sure the calculated width/height take the zoom factor into account in order to get the "smart layout"

        When deciding whether children have to get a relayout, we need to check the zoomed width/height and not just
        the viewport size.

        Patched to take into account transforms set on the RenderView.

        Patched to just always use m_width and m_height initially, since those have already been adjusted for
        the zoom factor.

        * rendering/RenderView.h:
        New helper methods for obtaining the adjusted width/height of the viewport taking into account the
        zoom factor.

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

13 years ago Build fix.
andersca@apple.com [Thu, 13 Mar 2008 20:02:54 +0000 (20:02 +0000)]
    Build fix.

        * WebCore.base.exp:

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

13 years agoWebCore:
andersca@apple.com [Thu, 13 Mar 2008 19:08:06 +0000 (19:08 +0000)]

        Reviewed by Adam.

        Get rid of actualRequest, it is not used anymore. Also, get rid of
        initialRequest and replace all uses with originalRequest because those are
        the same thing.

        * loader/DocumentLoader.cpp:
        * loader/DocumentLoader.h:
        * loader/FrameLoader.cpp:


        Reviewed by Adam.

        Call originalRequest, not initialRequest.

        * WebView/WebDataSource.mm:
        (-[WebDataSource initialRequest]):


        Reviewed by Adam.

        Call originalRequest instead of initialRequest.

        * WebDataSource.cpp:

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

13 years ago Reviewed by Anders
beidson@apple.com [Thu, 13 Mar 2008 19:00:55 +0000 (19:00 +0000)]
    Reviewed by Anders

        Convert SharedBuffer to start with a refCount of 1

        * loader/ImageDocument.cpp:

        * loader/ResourceLoader.cpp:

        * loader/icon/IconDatabase.cpp:

        * loader/loader.cpp:

        * platform/SharedBuffer.h:
        (WebCore::SharedBuffer::create): Make all constructors private, add ::create() calls
        * platform/SharedBuffer.cpp:
        (WebCore::SharedBuffer::SharedBuffer): Revert to default RefCounted constructor to start with a ref count of 1
        * platform/mac/SharedBufferMac.mm:
        (WebCore::SharedBuffer::SharedBuffer): Revert to default RefCounted constructor to start with a ref count of 1

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

13 years agoJavaScriptCore:
sfalken@apple.com [Thu, 13 Mar 2008 18:37:23 +0000 (18:37 +0000)]

        PGO build fixes.

        Disable PGO for normal release builds.
        Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:


        PGO build fixes.

        Disable PGO for normal release builds.
        Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.

        * WebCore.vcproj/WebCore.vcproj:


        PGO build fixes.

        Disable PGO for normal release builds.
        Added work-in-progress Release_PGOInstrument/Release_PGOOptimize targets.

        * WebKit.vcproj/WebKit.vcproj:

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

13 years ago Reviewed by Geoff.
bdakin@apple.com [Thu, 13 Mar 2008 18:32:07 +0000 (18:32 +0000)]
    Reviewed by Geoff.

        Adding new functionality to Vector. Currently all of the shrink and
        resize functions on Vector only shrink the size of the Vector, not
        the capacity. For the Vector to take up as little memory as
        possible, though, it is necessary to be able to shrink the capacity
        as well. So this patch adds that functionality.

        I need this for a speed up I am working on, and Geoff wants to use
        it in a speed up he is working on also, so he asked me to commit it

        * wtf/Vector.h:

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

13 years ago Reviewed by Darin.
andersca@apple.com [Thu, 13 Mar 2008 18:18:19 +0000 (18:18 +0000)]
    Reviewed by Darin.

        Make a bunch of DocumentLoader setters/getters inline.

        * loader/DocumentLoader.cpp:
        * loader/DocumentLoader.h:

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

13 years agoAttempt at fixing the Qt/Windows build bot. Quote using double-quotes
hausmann@webkit.org [Thu, 13 Mar 2008 16:17:13 +0000 (16:17 +0000)]
Attempt at fixing the Qt/Windows build bot. Quote using double-quotes
instead of single quotes.

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

13 years ago2008-03-13 Rodney Dawes <dobey@wayofthemonkey.com>
aroben@apple.com [Thu, 13 Mar 2008 15:19:45 +0000 (15:19 +0000)]
2008-03-13  Rodney Dawes  <dobey@wayofthemonkey.com>

        Fix builds without SVG enabled.

        * page/Frame.cpp:

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

13 years ago Reviewed by John Sullivan.
darin@apple.com [Thu, 13 Mar 2008 14:49:06 +0000 (14:49 +0000)]
    Reviewed by John Sullivan.

        - cleanup after removing the bridge

        * DOM/WebDOMOperations.mm:
        (-[DOMDocument URLWithAttributeString:]): Call computeURL directly.

        * Misc/WebCoreStatistics.mm:
        (-[WebFrame renderTreeAsExternalRepresentation]): Call externalRepresentation directly.

        * Plugins/WebBaseNetscapePluginView.mm:
        (-[WebBaseNetscapePluginView loadPluginRequest:]): Use core function instead of
        _frameLoader method.
        (-[WebBaseNetscapePluginView loadRequest:inTarget:withNotifyData:sendNotification:]):
        * Plugins/WebPluginController.mm:
        (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Ditto.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::frameLoaderDestroyed): Added a call to the new _clearCoreFrame
        method. Without this we could leave a stale frame pointer around.
        (WebFrameLoaderClient::dispatchDidReceiveIcon): Rewrote assertion so it's not the single
        caller of the _isMainFrame method.
        (WebFrameLoaderClient::transitionToCommittedForNewPage): Use core function instead of
        _frameLoader method.
        (WebFrameLoaderClient::createFrame): Moved code here from _addChild.

        * WebView/WebFrame.mm: Removed lots of methods. Some were moved elsewhere, others
        turned out to be unused.
        (core): Added overload for DocumentFragment.
        (kit): Ditto.
        (-[WebFrame _loadURL:referrer:intoChild:]): Get to Frame using _private->coreFrame and
        to FrameLoader with _private->coreFrame->loader().
        (-[WebFrame _attachScriptDebugger]): Ditto.
        (-[WebFrame _clearCoreFrame]): Added.
        (-[WebFrame _updateBackground]): More of the same.
        (-[WebFrame _unmarkAllBadGrammar]): Ditto.
        (-[WebFrame _unmarkAllMisspellings]): Ditto.
        (-[WebFrame _hasSelection]): Ditto.
        (-[WebFrame _atMostOneFrameHasSelection]): Ditto.
        (-[WebFrame _findFrameWithSelection]): Ditto.
        (-[WebFrame _dataSource]): Ditto.
        (-[WebFrame _addData:]): Streamlined code a bit.
        (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto.
        (-[WebFrame _receivedData:textEncodingName:]): Ditto.
        (-[WebFrame _isDescendantOfFrame:]): Ditto.
        (-[WebFrame _bodyBackgroundColor]): Ditto.
        (-[WebFrame _isFrameSet]): Ditto.
        (-[WebFrame _firstLayoutDone]): Ditto.
        (-[WebFrame _loadType]): Ditto.
        (-[WebFrame _isDisplayingStandaloneImage]): Ditto.
        (-[WebFrame name]): Ditto.
        (-[WebFrame DOMDocument]): Ditto.
        (-[WebFrame frameElement]): Ditto.
        (-[WebFrame provisionalDataSource]): Ditto.
        (-[WebFrame dataSource]): Ditto.
        (-[WebFrame loadRequest:]): Ditto.
        (-[WebFrame _loadData:MIMEType:textEncodingName:baseURL:unreachableURL:]): Ditto.
        (-[WebFrame loadArchive:]): Ditto.
        (-[WebFrame stopLoading]): Ditto.
        (-[WebFrame reload]): Ditto.
        (-[WebFrame findFrameNamed:]): Ditto.
        (-[WebFrame parentFrame]): Ditto.
        (-[WebFrame childFrames]): Ditto.
        (-[WebFrame windowObject]): Ditto.
        (-[WebFrame globalContext]): Ditto.

        * WebView/WebFrameInternal.h: Added overloads of core and kit.
        Removed method declarations.

        * WebView/WebHTMLRepresentation.mm:
        (-[WebHTMLRepresentation documentSource]): Moved code here from WebFrame.
        (formElementFromDOMElement): Ditto.
        (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto.
        (inputElementFromDOMElement): Ditto.
        (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto.
        (-[WebHTMLRepresentation elementIsPassword:]): Ditto.
        (-[WebHTMLRepresentation formForElement:]): Ditto.
        (-[WebHTMLRepresentation currentForm]): Ditto.
        (-[WebHTMLRepresentation controlsInForm:]): Ditto.
        (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto.
        (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _frameOrBoundsChanged]): Moved sendScrollEvent code here from WebFrame.
        (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]):
        Call createFragmentFromText directly instead of via WebFrame.
        (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
        Moved layout calls here from WebFrame.
        (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
        (-[WebHTMLView _updateFontPanel]): Ditto, but with fontForSelection.
        (-[WebHTMLView _canSmartCopyOrDelete]): Ditto, but with selectionGranularity.
        (-[WebHTMLView markedRange]): Moved code here from _markedTextNSRange.
        (-[WebHTMLView attributedSubstringFromRange:]): Tweaked code a bit.
        (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]):
        Moved code here from WebFrame.
        (-[WebHTMLView elementAtPoint:allowShadowContent:]): Ditto.
        (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto.
        (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto.
        (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto.
        (-[WebHTMLView unmarkAllTextMatches]): Ditto.
        (-[WebHTMLView rectsForTextMatches]): Ditto.

        * WebView/WebHTMLViewInternal.h: Removed unused method declarations.

        * WebView/WebPDFView.mm:
        (-[WebPDFView PDFViewWillClickOnLink:withURL:]): Use core function instead of
        _frameLoader method.

        * WebView/WebRenderNode.mm:
        (copyRenderNode): Moved code here from WebFrame.
        (-[WebRenderNode initWithWebFrameView:]): Ditto.

        * WebView/WebResource.mm:
        (-[WebResource _stringValue]): Moved code here from WebFrame.

        * WebView/WebView.mm:
        (-[WebView _close]): Use core function intsead of _frameLoader method.
        (-[WebView setCustomTextEncodingName:]): Ditto.
        (-[WebView setHostWindow:]): Moved code here from WebFrame.
        (aeDescFromJSValue): Moved this here from WebFrame.
        (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Moved code here from WebFrame.

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

13 years agoFix the Qt build.
hausmann@webkit.org [Thu, 13 Mar 2008 12:17:15 +0000 (12:17 +0000)]
Fix the Qt build.

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

13 years ago Reviewed by Darin Adler.
weinig@apple.com [Thu, 13 Mar 2008 07:11:26 +0000 (07:11 +0000)]
    Reviewed by Darin Adler.

        Fix <rdar://problem/5784773>
        Crash loading QT movies @ apple.com/ipodtouch/features.html with a PAC file (WebKitThreadingException)

        Make bridged RuntimeObjects get collected on the main thread only. This is necessary
        because clients of the bridged objects are unlikely to prepared for a collection on
        non-main thread, which can happen with a PAC file.

        * bridge/runtime_object.cpp:

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

13 years ago Fix Bug 17815: Inspector's DOM tree should descend into subframes
aroben@apple.com [Thu, 13 Mar 2008 06:13:32 +0000 (06:13 +0000)]
    Fix Bug 17815: Inspector's DOM tree should descend into subframes


        Reviewed by Tim.

        * page/inspector/DocumentPanel.js:
        (WebInspector.DocumentPanel.revealNode): Changed to provide
        _isAncestorIncludingParentFramesWithinPanel and
        _parentNodeOrFrameElementWithinPanel for the isAncestor and getParent
        parameters to findTreeElement so that parent frames will be searched.
          - Changed while loop to for loop
          - Use _parentNodeOrFrameElementWithinPanel instead of
            Node.parentNode to move to the next node
          - The loop now ends when we reach the DocumentPanel's document node
          - Traversal past other Document nodes is now allowed
          - We add the "start" class to the final crumb after the loop exits
        (WebInspector.DocumentPanel._getDocumentForNode): Added. Simple helper
        that returns the node itself if the node is a Document node, or the
        node's ownerDocument otherwise.
        Added. Returns the node's parent node or, in the case of a Document
        node, the node's window's owning frame element, but will not return a
        node that is in a parent frame of the DocumentPanel's Document.
        Added. Returns true if a is an ancestor of b if a is an ancestor of a
        frame element whose subframe(s) contain b.
        (WebInspector.DOMNodeTreeElement): We now consider ourselves to have
        children if we have a contentDocument.
        (WebInspector.DOMNodeTreeElement.onpopulate): Moved the appendChild
        loop into a function so that we can add both children of our
        contentDocument and children of our node to the tree.
        (WebInspector.DOMNodeTreeElement.ondblclick): Changed so that we get
        the rootDOMNode by traversing the tree outline hierarchy instead of
        the DOM hierarchy so that we can easily jump up to a parent frame.

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

13 years ago Update the styles/metrics panes and breadcrumb after editing DOM attributes
aroben@apple.com [Thu, 13 Mar 2008 06:13:02 +0000 (06:13 +0000)]
     Update the styles/metrics panes and breadcrumb after editing DOM attributes

         Reviewed by Tim.

         * page/inspector/DocumentPanel.js:
         (WebInspector.DocumentPanel.set focusedDOMNode): Moved code to update
         the parts of the DocumentPanel other than the DOM tree into a new
         function, _focusedNodeChanged.
         (WebInspector.DocumentPanel._focusedNodeChanged): Added. The
         forceUpdate parameter specifies whether the update should occur even
         if the focused node hasn't changed since the last update.
         (WebInspector.DocumentPanel.updateBreadcrumb): Added a forceUpdate
         parameter. If forceUpdate is true, we always rebuild the breadcrumbs.
         (WebInspector.DocumentPanel.updateStyles): Added a forceUpdate
         parameter. If forceUpdate is true, we always rebuild the styles pane.
         (WebInspector.DOMNodeTreeElement._attributeEditingCommitted): Added a
         call to DocumentPanel._focusedNodeChanged. We have to force the update
         because we haven't changed the focused node (the attributes of the
         node have changed).
         * page/inspector/StylesSidebarPane.js:
         (WebInspector.StylesSidebarPane.update): Added a forceUpdate
         parameter. If forceUpdate is true we always rebuild the styles.

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

13 years ago Fix build.
sfalken@apple.com [Thu, 13 Mar 2008 06:05:32 +0000 (06:05 +0000)]
    Fix build.

        * WebKit.vcproj/WebKit.vcproj:

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

13 years ago New version of WebKitSystemInterface.lib with
sfalken@apple.com [Thu, 13 Mar 2008 05:49:03 +0000 (05:49 +0000)]
    New version of WebKitSystemInterface.lib with
        more compiler warnings suppressed.

        * win/lib/WebKitSystemInterface.lib:
        * win/tools/vsprops/common.vsprops:

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

13 years agoFurther Gtk and Qt build fixes.
mrowe@apple.com [Thu, 13 Mar 2008 05:40:12 +0000 (05:40 +0000)]
Further Gtk and Qt build fixes.

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

13 years agoTouch file to build WebKit.
sfalken@apple.com [Thu, 13 Mar 2008 05:39:17 +0000 (05:39 +0000)]
Touch file to build WebKit.

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

13 years agoFix Gtk and Qt builds.
mrowe@apple.com [Thu, 13 Mar 2008 05:30:41 +0000 (05:30 +0000)]
Fix Gtk and Qt builds.

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

13 years agoMac build fix.
mrowe@apple.com [Thu, 13 Mar 2008 05:26:54 +0000 (05:26 +0000)]
Mac build fix.

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

13 years ago Build fix.
sfalken@apple.com [Thu, 13 Mar 2008 05:02:50 +0000 (05:02 +0000)]
    Build fix.

        * page/win/FrameWin.cpp:

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

13 years ago Build fix.
sfalken@apple.com [Thu, 13 Mar 2008 04:20:06 +0000 (04:20 +0000)]
    Build fix.

        * plugins/win/PluginViewWin.cpp:

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

13 years ago <rdar://problem/5795843>
adachan@apple.com [Thu, 13 Mar 2008 03:50:40 +0000 (03:50 +0000)]
        CFURLDownload needs to be cancelled if we don't have a destination path
        to save resume information.

        Reviewed by Brady.

        * WebDownload.cpp:

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

13 years agoWebCore:
darin@apple.com [Thu, 13 Mar 2008 03:48:28 +0000 (03:48 +0000)]

        Reviewed by Anders.

        - http://bugs.webkit.org/show_bug.cgi?id=17640
          eliminate WebCoreFrameBridge

        * WebCore.base.exp: Added more exports, needed by code moved from WebCoreFrameBridge
        to WebFrame in WebKit.
        * WebCore.xcodeproj/project.pbxproj: Added more headers, same reason. Also deleted
        WebCoreFrameBridge.h and WebCoreFrameBridge.mm.

        * page/Frame.cpp:
        (WebCore::Frame::Frame): Added call to initJavaJSBindings(), formerly handled by
        the WebCoreFrameBridge.
        * page/Frame.h: Added initJavaJSBindings function.

        * page/mac/FrameMac.mm:
        (WebCore::updateRenderingForBindings): Moved here from WebCoreFrameBridge.
        (WebCore::Frame::initJavaJSBindings): Ditto; code was in the init function.

        * page/mac/WebCoreFrameBridge.h: Removed.
        * page/mac/WebCoreFrameBridge.mm: Removed.


        Reviewed by Anders.

        - http://bugs.webkit.org/show_bug.cgi?id=17640
          eliminate WebCoreFrameBridge

        * StringsNotToBeLocalized.txt: Updated for recent changes.
        * WebKit.xcodeproj/project.pbxproj: Removed WebFrameBridge.h and WebFrameBridge.mm.


        Reviewed by Anders.

        - http://bugs.webkit.org/show_bug.cgi?id=17640
          eliminate WebCoreFrameBridge

        Moved all the code from the bridge into WebFrame. This need not be the final
        home of these methods -- they can be moved closer to their callers and improved
        further -- but it eliminates the bridge without requiring a rewrite of the code.
        It's a fairly mechanical process (just adding underscores to method names really).

        There's even a chance that some of the methods are unused. Those we can remove
        after checking if that's so.

        * DOM/WebDOMOperations.mm:
        (-[DOMNode markupString]): Use WebFrame rather than bridge.
        (-[DOMDocument webFrame]): Changed to use the core and kit functions
        instead of using the bridge.
        (-[DOMDocument URLWithAttributeString:]): Use WebFrame rather than bridge.
        (-[DOMRange markupString]): Ditto.
        * DOM/WebDOMOperationsPrivate.h: Removed _bridge methods.

        * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded import.
        * History/WebHistoryItem.mm: Ditto.

        * MigrateHeaders.make: Added DOMDocumentFragmentInternal.h.
        * Misc/WebCoreStatistics.mm:
        (-[WebFrame renderTreeAsExternalRepresentation]): Use WebFrame rather than bridge.

        * Misc/WebElementDictionary.mm: Removed unneeded import.

        * Misc/WebKitStatistics.m:
        (+[WebKitStatistics bridgeCount]): Removed WebBridgeCount and just return 0.
        * Misc/WebKitStatisticsPrivate.h: Ditto.

        * Misc/WebNSAttributedStringExtras.mm: Removed unneeded import.
        * Misc/WebNSPasteboardExtras.mm: Ditto.

        * Plugins/WebBaseNetscapePluginView.mm:
        (-[WebBaseNetscapePluginView evaluateJavaScriptPluginRequest:]): Use WebFrame
        rather than bridge.

        * Plugins/WebNetscapePluginEmbeddedView.mm: Removed unneeded import.
        * Plugins/WebNetscapePluginStream.mm: Ditto.

        * Plugins/WebPluginContainerCheck.mm:
        (-[WebPluginContainerCheck _isForbiddenFileLoad]): Use WebFrame rather than
        bridge to get to the WebCore::Frame.

        * Plugins/WebPluginController.h: Declare webFrame method and remove bridge method.
        * Plugins/WebPluginController.mm:
        (-[WebPluginController webPlugInContainerLoadRequest:inFrame:]): Use WebFrame
        rather than bridge.

        * WebCoreSupport/WebEditorClient.mm:
        (selectorForKeyEvent): Tweaked comment.

        * WebCoreSupport/WebFrameBridge.h: Removed.
        * WebCoreSupport/WebFrameBridge.mm: Removed.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::frameLoaderDestroyed): Removed bridge assertion.
        (WebFrameLoaderClient::detachedFromParent4): Removed bridge teardown code.
        I could remove this function entirely, but it looks like the Qt port is using it.

        * WebCoreSupport/WebViewFactory.mm: Removed unneeded import.

        * WebView/WebArchiver.mm:
        (+[WebArchiver archiveRange:]): Use WebFrame rather than bridge.
        (+[WebArchiver archiveNode:]): Ditto.
        (+[WebArchiver archiveSelectionInFrame:]): Ditto.

        * WebView/WebDataSource.mm:
        (-[WebDataSource _replaceSelectionWithArchive:selectReplacement:]): Ditto.
        (-[WebDataSource _documentFragmentWithArchive:]): Ditto.
        (-[WebDataSource subresources]): Ditto.
        (-[WebDataSource subresourceForURL:]): Ditto.

        * WebView/WebDataSourceInternal.h: Removed _bridge method.

        * WebView/WebFrame.mm:
        (-[WebFramePrivate dealloc]): Removed code to release the bridge.
        (core): Go directly to the core frame, not via the bridge.
        (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]):
        Remove the code to deal with the bridge.
        (-[WebFrame _initWithWebFrameView:webView:]): Ditto. Also added code to set the
        shouldCreateRenderers flag, formerly on the bridge.
        (-[WebFrame _updateBackground]): Change to call mehods on self, not bridge.
        (aeDescFromJSValue): Moved here from bridge.
        (-[WebFrame _domain]): Ditto.
        (-[WebFrame _addData:]): Ditto.
        (-[WebFrame _stringWithDocumentTypeStringAndMarkupString:]): Ditto.
        (-[WebFrame _nodesFromList:]): Ditto.
        (-[WebFrame _markupStringFromNode:nodes:]): Ditto.
        (-[WebFrame _markupStringFromRange:nodes:]): Ditto.
        (-[WebFrame _selectedString]): Ditto.
        (-[WebFrame _stringForRange:]): Ditto.
        (-[WebFrame _forceLayoutAdjustingViewSize:]): Ditto.
        (-[WebFrame _forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto.
        (-[WebFrame _sendScrollEvent]): Ditto.
        (-[WebFrame _drawRect:]): Ditto.
        (-[WebFrame _computePageRectsWithPrintWidthScaleFactor:printHeight:]): Ditto.
        (-[WebFrame _adjustPageHeightNew:top:bottom:limit:]): Ditto.
        (-[WebFrame _copyRenderNode:copier:]): Ditto.
        (-[WebFrame _copyRenderTree:]): Ditto.
        (inputElementFromDOMElement): Ditto.
        (formElementFromDOMElement): Ditto.
        (-[WebFrame _elementWithName:inForm:]): Ditto.
        (-[WebFrame _elementDoesAutoComplete:]): Ditto.
        (-[WebFrame _elementIsPassword:]): Ditto.
        (-[WebFrame _formForElement:]): Ditto.
        (-[WebFrame _currentForm]): Ditto.
        (-[WebFrame _controlsInForm:]): Ditto.
        (-[WebFrame _searchForLabels:beforeElement:]): Ditto.
        (-[WebFrame _matchLabels:againstElement:]): Ditto.
        (-[WebFrame _URLWithAttributeString:]): Ditto.
        (-[WebFrame _searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto.
        (-[WebFrame _markAllMatchesForText:caseSensitive:limit:]): Ditto.
        (-[WebFrame _markedTextMatchesAreHighlighted]): Ditto.
        (-[WebFrame _setMarkedTextMatchesAreHighlighted:]): Ditto.
        (-[WebFrame _unmarkAllTextMatches]): Ditto.
        (-[WebFrame _rectsForTextMatches]): Ditto.
        (-[WebFrame _stringByEvaluatingJavaScriptFromString:]): Ditto.
        (-[WebFrame _stringByEvaluatingJavaScriptFromString:forceUserGesture:]): Ditto.
        (-[WebFrame _aeDescByEvaluatingJavaScriptFromString:]): Ditto.
        (-[WebFrame _caretRectAtNode:offset:affinity:]): Ditto.
        (-[WebFrame _firstRectForDOMRange:]): Ditto.
        (-[WebFrame _scrollDOMRangeToVisible:]): Ditto.
        (-[WebFrame _baseURL]): Ditto.
        (-[WebFrame _stringWithData:]): Ditto.
        (+[WebFrame _stringWithData:textEncodingName:]): Ditto.
        (-[WebFrame _needsLayout]): Ditto.
        (-[WebFrame _renderTreeAsExternalRepresentation]): Ditto.
        (-[WebFrame _accessibilityTree]): Ditto.
        (-[WebFrame _setBaseBackgroundColor:]): Ditto.
        (-[WebFrame _setDrawsBackground:]): Ditto.
        (-[WebFrame _rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
        (-[WebFrame _selectionGranularity]): Ditto.
        (-[WebFrame _convertToNSRange:]): Ditto.
        (-[WebFrame _convertToDOMRange:]): Ditto.
        (-[WebFrame _convertNSRangeToDOMRange:]): Ditto.
        (-[WebFrame _convertDOMRangeToNSRange:]): Ditto.
        (-[WebFrame _markDOMRange]): Ditto.
        (-[WebFrame _markedTextNSRange]): Ditto.
        (-[WebFrame _smartDeleteRangeForProposedRange:]): Ditto.
        (-[WebFrame _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
        (-[WebFrame _documentFragmentWithMarkupString:baseURLString:]): Ditto.
        (-[WebFrame _documentFragmentWithText:inContext:]): Ditto.
        (-[WebFrame _documentFragmentWithNodesAsParagraphs:]): Ditto.
        (-[WebFrame _replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]): Ditto.
        (-[WebFrame _replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]): Ditto.
        (-[WebFrame _replaceSelectionWithMarkupString:baseURLString:selectReplacement:smartReplace:]): Ditto.
        (-[WebFrame _replaceSelectionWithText:selectReplacement:smartReplace:]): Ditto.
        (-[WebFrame _insertParagraphSeparatorInQuotedContent]): Ditto.
        (-[WebFrame _visiblePositionForPoint:]): Ditto.
        (-[WebFrame _characterRangeAtPoint:]): Ditto.
        (-[WebFrame _typingStyle]): Ditto.
        (-[WebFrame _setTypingStyle:withUndoAction:]): Ditto.
        (-[WebFrame _fontForSelection:]): Ditto.
        (-[WebFrame _dragSourceMovedTo:]): Ditto.
        (-[WebFrame _dragSourceEndedAt:operation:]): Ditto.
        (-[WebFrame _getData:andResponse:forURL:]): Ditto.
        (-[WebFrame _getAllResourceDatas:andResponses:]): Ditto.
        (-[WebFrame _canProvideDocumentSource]): Ditto.
        (-[WebFrame _canSaveAsWebArchive]): Ditto.
        (-[WebFrame _receivedData:textEncodingName:]): Ditto.
        (-[WebFrame _setShouldCreateRenderers:]): Put the code from the bridge in this preexisting
        function. Couldn't just keep the bridge method because this was already here with the same name.
        (-[WebFrame _selectedNSRange]): Ditto.
        (-[WebFrame _selectNSRange:]): Ditto.
        (-[WebFrame dealloc]): Remove bridge-related code.
        (-[WebFrame finalize]): Ditto.

        * WebView/WebFrameInternal.h: Added all the method declarations from the bridge.
        Removed the bridge parameter from the init method. Removed the #if blocks that
        tried to make this header work in non-C++ ObjC files -- they were broken and unused.
        Removed the _bridge method.

        * WebView/WebFrameView.mm: Removed the _bridge method.

        * WebView/WebHTMLRepresentation.mm:
        (-[WebHTMLRepresentation setDataSource:]): Removed the code to set up the bridge
        (-[WebHTMLRepresentation receivedData:withDataSource:]): Use WebFrame instead of bridge.
        (-[WebHTMLRepresentation finishedLoadingWithDataSource:]): Ditto.
        (-[WebHTMLRepresentation canProvideDocumentSource]): Ditto.
        (-[WebHTMLRepresentation canSaveAsWebArchive]): Ditto.
        (-[WebHTMLRepresentation documentSource]): Ditto.
        (-[WebHTMLRepresentation DOMDocument]): Ditto.
        (-[WebHTMLRepresentation elementWithName:inForm:]): Ditto.
        (-[WebHTMLRepresentation elementDoesAutoComplete:]): Ditto.
        (-[WebHTMLRepresentation elementIsPassword:]): Ditto.
        (-[WebHTMLRepresentation formForElement:]): Ditto.
        (-[WebHTMLRepresentation currentForm]): Ditto.
        (-[WebHTMLRepresentation controlsInForm:]): Ditto.
        (-[WebHTMLRepresentation searchForLabels:beforeElement:]): Ditto.
        (-[WebHTMLRepresentation matchLabels:againstElement:]): Ditto.

        * WebView/WebHTMLRepresentationPrivate.h: Removed the _bridge method.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView _documentFragmentWithPaths:]): Use WebFrame instead of bridge.
        (-[WebHTMLView _pasteWithPasteboard:allowPlainText:]): Ditto.
        (-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Ditto.
        (-[WebHTMLView _updateTextSizeMultiplier]): Ditto.
        (-[WebHTMLView _frameOrBoundsChanged]): Ditto.
        (-[WebHTMLView _smartInsertForString:replacingRange:beforeString:afterString:]): Ditto.
        (-[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:]): Ditto.
        (-[WebHTMLView layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Ditto.
        (-[WebHTMLView drawSingleRect:]): Ditto.
        (-[WebHTMLView draggedImage:movedTo:]): Ditto.
        (-[WebHTMLView draggedImage:endedAt:operation:]): Ditto.
        (-[WebHTMLView adjustPageHeightNew:top:bottom:limit:]): Ditto.
        (-[WebHTMLView knowsPageRange:]): Ditto.
        (-[WebHTMLView accessibilityAttributeValue:]): Ditto.
        (-[WebHTMLView accessibilityFocusedUIElement]): Ditto.
        (-[WebHTMLView accessibilityHitTest:]): Ditto.
        (-[WebHTMLView _accessibilityParentForSubview:]): Ditto.
        (-[WebHTMLView changeDocumentBackgroundColor:]): Ditto.
        (-[WebHTMLView _changeWordCaseWithSelector:]): Ditto.
        (-[WebHTMLView _changeSpellingToWord:]): Ditto.
        (-[WebHTMLView startSpeaking:]): Ditto.
        (-[WebHTMLView _updateFontPanel]): Ditto.
        (-[WebHTMLView _canSmartCopyOrDelete]): Ditto.
        (-[WebHTMLView _layoutIfNeeded]): Ditto.
        (-[WebHTMLView characterIndexForPoint:]): Ditto.
        (-[WebHTMLView firstRectForCharacterRange:]): Ditto.
        (-[WebHTMLView selectedRange]): Ditto.
        (-[WebHTMLView markedRange]): Ditto.
        (-[WebHTMLView attributedSubstringFromRange:]): Ditto.
        (-[WebHTMLView setMarkedText:selectedRange:]): Ditto.
        (-[WebHTMLView insertText:]): Ditto.
        (-[WebTextCompleteController _insertMatch:]): Ditto.
        (-[WebTextCompleteController doCompletion]): Ditto.
        (-[WebTextCompleteController endRevertingChange:moveLeft:]): Ditto.
        (-[WebHTMLView string]): Ditto.
        (-[WebHTMLView selectedString]): Ditto.
        (-[WebHTMLView searchFor:direction:caseSensitive:wrap:startInSelection:]): Ditto.
        (-[WebHTMLView markAllMatchesForText:caseSensitive:limit:]): Ditto.
        (-[WebHTMLView setMarkedTextMatchesAreHighlighted:]): Ditto.
        (-[WebHTMLView markedTextMatchesAreHighlighted]): Ditto.
        (-[WebHTMLView unmarkAllTextMatches]): Ditto.
        (-[WebHTMLView rectsForTextMatches]): Ditto.
        * WebView/WebRenderNode.mm:
        (-[WebRenderNode initWithWebFrameView:]): Ditto.
        * WebView/WebResource.mm:
        (-[WebResource _stringValue]): Ditto.

        * WebView/WebScriptDebugDelegate.mm: Removed unneeded include.

        * WebView/WebView.mm:
        (-[WebView _dashboardRegions]): Use WebFrame instead of bridge.
        (-[WebView setProhibitsMainFrameScrolling:]): Ditto.
        (-[WebView _setInViewSourceMode:]): Ditto.
        (-[WebView _inViewSourceMode]): Ditto.
        (-[WebView _executeCoreCommandByName:value:]): Ditto.
        (-[WebView stringByEvaluatingJavaScriptFromString:]): Ditto.
        (-[WebView aeDescByEvaluatingJavaScriptFromString:]): Ditto.
        (-[WebView scrollDOMRangeToVisible:]): Ditto.
        (-[WebView setSelectedDOMRange:affinity:]): Ditto.
        (-[WebView setEditable:]): Ditto.
        (-[WebView setTypingStyle:]): Ditto.
        (-[WebView typingStyle]): Ditto.
        (-[WebView replaceSelectionWithNode:]): Ditto.
        (-[WebView replaceSelectionWithText:]): Ditto.
        (-[WebView replaceSelectionWithMarkupString:]): Ditto.
        (-[WebView replaceSelectionWithArchive:]): Ditto.
        (-[WebView _insertNewlineInQuotedContent]): Ditto.
        (-[WebView _replaceSelectionWithNode:matchStyle:]): Ditto.

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

13 years ago Reviewed by Anders Carlsson.
weinig@apple.com [Thu, 13 Mar 2008 03:40:47 +0000 (03:40 +0000)]
    Reviewed by Anders Carlsson.

        Don't go through the Document just to get the frame Element.

        * page/DOMWindow.cpp:

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

13 years ago Reviewed by Geoff and Sam.
andersca@apple.com [Thu, 13 Mar 2008 03:18:33 +0000 (03:18 +0000)]
    Reviewed by Geoff and Sam.

        More Instance cleanup:

        * Make Instance inherit from RefCounted instead of doing its own refcounting.
        * Make all Instance subclasses private, add static create methods.
        * Have Instance start out with a refcount of 1.
        * Get rid of Instance::createBindingForLanguageInstance and call the individual
          instance constructor methods instead.
        * Fix many methods to take and return PassRefPtr<Instance> to ensure that the
          refcounting is done correctly.

        * bridge/c/c_instance.h:
        * bridge/c/c_utility.cpp:
        * bridge/jni/jni_instance.cpp:
        * bridge/jni/jni_instance.h:
        * bridge/jni/jni_jsobject.cpp:
        * bridge/jni/jni_runtime.cpp:
        * bridge/objc/objc_instance.h:
        * bridge/objc/objc_utility.mm:
        * bridge/qt/qt_instance.cpp:
        * bridge/qt/qt_instance.h:
        * bridge/runtime.cpp:
        * bridge/runtime.h:
        * bridge/runtime_object.cpp:
        * bridge/runtime_object.h:
        * page/Frame.h:
        * page/mac/FrameMac.mm:
        * page/win/FrameWin.cpp:
        * plugins/PluginView.h:
        * plugins/win/PluginViewWin.cpp:

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

13 years ago Suggested by Darin Adler. Reviewed by Dave Hyatt.
mitz@apple.com [Thu, 13 Mar 2008 00:25:55 +0000 (00:25 +0000)]
    Suggested by Darin Adler. Reviewed by Dave Hyatt.

        - speed up BidiIterator::direction()

        * rendering/bidi.cpp:
        (WebCore::BidiIterator::current): Made inline and corrected the
        out-of-bounds condition to work with 0-length text and offsets beyond
        the end of the text.
        (WebCore::BidiIterator::direction): Changed to call current() and not
        call the virtual method isListMarker() most of the time.
        (WebCore::addMidpoint): Removed unnecessary null-check of smidpoints.
        (WebCore::appendRunsForObject): Ditto.

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

13 years ago Make URLs not be underlined while editing them in the DOM view
aroben@apple.com [Wed, 12 Mar 2008 23:00:34 +0000 (23:00 +0000)]
    Make URLs not be underlined while editing them in the DOM view

        Reviewed by Tim.

        * page/inspector/inspector.css:

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

13 years ago Part of Bug 17224: DOM nodes/attributes should be editable
aroben@apple.com [Wed, 12 Mar 2008 23:00:00 +0000 (23:00 +0000)]
    Part of Bug 17224: DOM nodes/attributes should be editable


        We now start editing if the user single-clicks on an attribute,
        attribute value, or text node while the parent element is selected.
        Previously, we started editing on double-click regardless of the
        selection state of the element.

        URLs in the DOM tree are now followed on Alt/Option-click, rather than
        on just click.

        Reviewed by Tim.

        * English.lproj/InspectorLocalizedStrings.js: Added four new localized
        * page/inspector/DocumentPanel.js:
        (WebInspector.DOMNodeTreeElement.onattach): Call new
        Added. Changes the tooltip of each link in this element to indicate
        that Alt/Option-click will follow the URL, and sets the
        followOnAltClick property on each link.
        (WebInspector.DOMNodeTreeElement.onselect): Mark that we're being
        (WebInspector.DOMNodeTreeElement.onmousedown): If we're not currently
        being selected, start editing.
        (WebInspector.DOMNodeTreeElement.ondblclick): We no longer start
        editing here. We block re-rooting of the tree if we're currently
          - Don't do anything if we're not focused
          - Pass the event down to _startEditingAttribute.
        (WebInspector.DOMNodeTreeElement._startEditingAttribute): Don't do
        anything if the event target is a URL and the Alt/Option key is
        pressed -- in this case we want to follow the link.
        (WebInspector.DOMNodeTreeElement._updateTitle): Call
        _makeURLsActivateOnClick again since the anchor elements have all been
        * page/inspector/inspector.js:
        (WebInspector.documentClick): If the anchor as a followOnAltClick
        property and the Alt/Option key is not pressed, do nothing.

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

13 years ago Fixed the initial value of zoom factor.
adachan@apple.com [Wed, 12 Mar 2008 22:23:15 +0000 (22:23 +0000)]
    Fixed the initial value of zoom factor.

        Reviewed by Adam.

        * page/Frame.cpp:

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

13 years ago Make full page zoom vaguely work. This patch uses the CSS transform system...
hyatt@apple.com [Wed, 12 Mar 2008 21:41:12 +0000 (21:41 +0000)]
    Make full page zoom vaguely work.  This patch uses the CSS transform system to turn on full page zoom at the
        document level.  There are many many bugs that I'm going to file to track all the issues (most of the issues
        are just bugs with transforms themselves).

        Reviewed by Adam Roben

        * css/CSSStyleSelector.cpp:
        * dom/Document.cpp:
        * page/Frame.cpp:
        * page/Frame.h:
        * rendering/RenderLayer.cpp:
        * rendering/RenderLayer.h:

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

13 years agoTouch file to force WebKit rebuild
sfalken@apple.com [Wed, 12 Mar 2008 21:33:57 +0000 (21:33 +0000)]
Touch file to force WebKit rebuild

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

13 years ago Build fix.
sfalken@apple.com [Wed, 12 Mar 2008 20:57:13 +0000 (20:57 +0000)]
    Build fix.

        * JavaScriptCore.vcproj/WTF/WTF.vcproj:

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

13 years ago2008-03-12 Tommi Komulainen <tommi.komulainen@iki.fi>
alp@webkit.org [Wed, 12 Mar 2008 19:40:15 +0000 (19:40 +0000)]
2008-03-12  Tommi Komulainen  <tommi.komulainen@iki.fi>

        Reviewed by Alp Toker.

        WebView signals should use more specific types

        * webkit/webkitwebview.cpp: Use WEBKIT_TYPE_WEB_FRAME argument
        type in "script-alert", "script-confirm", "script-script-prompt"
        signals so that it gets more clearly documented rather than just
        plain GObject.

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

13 years agoWebCore:
hyatt@apple.com [Wed, 12 Mar 2008 19:14:44 +0000 (19:14 +0000)]

        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebCore.base.exp:
        * css/CSSStyleSelector.cpp:
        * page/Frame.cpp:
        * page/Frame.h:
        * page/FramePrivate.h:
        * svg/SVGSVGElement.cpp:


        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebView/WebView.mm:
        (-[WebView _setZoomMultiplier:isTextOnly:]):


        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebFrame.cpp:


        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebView.cpp:

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

13 years ago Build fix.
sfalken@apple.com [Wed, 12 Mar 2008 19:10:19 +0000 (19:10 +0000)]
    Build fix.

        * WebKit.vcproj/WebKit.pgd:
        * WebKit.vcproj/WebKit.vcproj:

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

13 years agoSpeculative fix for build bustage. Will be another 20-30 mins before I can get compi...
hyatt@apple.com [Wed, 12 Mar 2008 18:50:32 +0000 (18:50 +0000)]
Speculative fix for build bustage.  Will be another 20-30 mins before I can get compiled enough to know for sure.

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

13 years ago VSExpress build fix
sfalken@apple.com [Wed, 12 Mar 2008 18:50:18 +0000 (18:50 +0000)]
    VSExpress build fix

        * WinLauncher/WinLauncher.vcproj:

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

13 years agoWebCore:
hyatt@apple.com [Wed, 12 Mar 2008 18:33:37 +0000 (18:33 +0000)]

        Eliminate setTextMultiplier from the bridge.  Make Webkit just call setZoomFactor on the frame directly.

        Reviewed by Tim H.

        * WebCore.base.exp:
        * page/mac/WebCoreFrameBridge.h:
        * page/mac/WebCoreFrameBridge.mm:


        This patch prepares Mac WebKit to handle two different zooming modes (full page zoom and text only zoom).
        New API is added that is parallel to the text zoom public API.  You can get/set a pageSizeMultiplier and you
        can zoom the page in, out or reset it to the standard size.

        In the implementation only one zoom factor is stored, and setting one multiplier will shift you into that mode
        and set the common zoom factor.  In other words you can't combine text zoom and page zoom.  One will always

        Reviewed by Tim H.

        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge finishInitializingWithPage:frameName:WebCore::frameView:ownerElement:]):
        * WebView/WebDocumentInternal.h:
        * WebView/WebHTMLView.mm:
        (-[WebHTMLView viewDidMoveToSuperview]):
        * WebView/WebPDFView.h:
        * WebView/WebPDFView.mm:
        (-[WebPDFView _zoomOut:]):
        (-[WebPDFView _zoomIn:]):
        (-[WebPDFView _resetZoom:]):
        (-[WebPDFView _canZoomOut]):
        (-[WebPDFView _canZoomIn]):
        (-[WebPDFView _canResetZoom]):
        * WebView/WebView.mm:
        (-[WebViewPrivate init]):
        (-[WebView setTextSizeMultiplier:]):
        (-[WebView textSizeMultiplier]):
        (-[WebView _setZoomMultiplier:isTextOnly:]):
        (-[WebView _zoomMultiplier:]):
        (-[WebView _realZoomMultiplier]):
        (-[WebView _realZoomMultiplierIsTextOnly]):
        (-[WebView _canZoomOut:]):
        (-[WebView _canZoomIn:]):
        (-[WebView _zoomOut:isTextOnly:]):
        (-[WebView _zoomIn:isTextOnly:]):
        (-[WebView _canResetZoom:]):
        (-[WebView _resetZoom:isTextOnly:]):
        (-[WebView canMakeTextSmaller]):
        (-[WebView makeTextSmaller:]):
        (-[WebView canMakeTextLarger]):
        (-[WebView makeTextLarger:]):
        (-[WebView canMakeTextStandardSize]):
        (-[WebView makeTextStandardSize:]):
        (-[WebView setPageSizeMultiplier:]):
        (-[WebView pageSizeMultiplier]):
        (-[WebView canZoomPageIn]):
        (-[WebView zoomPageIn:]):
        (-[WebView canZoomPageOut]):
        (-[WebView zoomPageOut:]):
        (-[WebView canResetPageZoom]):
        (-[WebView resetPageZoom:]):
        (-[WebView _searchWithSpotlightFromMenu:]):
        * WebView/WebViewInternal.h:
        * WebView/WebViewPrivate.h:

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

13 years agoWebCore:
mitz@apple.com [Wed, 12 Mar 2008 18:31:25 +0000 (18:31 +0000)]

        Reviewed by Darin Adler and Sam Weinig.

        - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard

        Use CTFontCopyGraphicsFont and CTFontGetPlatformFont on Leopard instead
        of wkGetCGFontFromNSFont and wkGetNSFontATSUFontId, relying on NSFont
        and CTFontRef being toll-free bridged.

        * WebCore.Tiger.exp:
        * WebCore.base.exp:
        * platform/graphics/mac/FontMac.mm:
        (WebCore::Font::drawGlyphs): Changed to use the cgFont() accessor.
        * platform/graphics/mac/FontPlatformData.h:
        Made m_cgFont a RetainPtr on Leopard.
        (WebCore::toCTFontRef): Added a function that encapsulates the
        toll-free bridging.
        (WebCore::FontPlatformData::cgFont): Added this accessor method.
        * platform/graphics/mac/FontPlatformDataMac.mm:
        (WebCore::FontPlatformData::FontPlatformData): Changed to use
        CoreText API on Leopard.
        (WebCore::FontPlatformData::setFont): Ditto.
        * platform/graphics/mac/SimpleFontDataMac.mm:
        * platform/mac/WebCoreSystemInterface.mm:


        Reviewed by Darin Adler and Sam Weinig.

        - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard

        * WebCoreSupport/WebSystemInterface.m:
        (InitWebCoreSystemInterface): Made WKGetCGFontFromNSFont and
        WKGetNSFontATSUFontId Tiger-only.


        Reviewed by Darin Adler and Sam Weinig.

        - <rdar://problem/4433248> use CoreText API instead of SPI on Leopard

        * WebKitSystemInterface.h:
        * libWebKitSystemInterfaceLeopard.a:

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

13 years ago2008-03-12 Holger Hans Peter Freyther <zecke@selfish.org>
alp@webkit.org [Wed, 12 Mar 2008 18:06:54 +0000 (18:06 +0000)]
2008-03-12  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Alp Toker.

        Run testkjs in the correct productsDir in the GTK+ port.

        * Scripts/run-javascriptcore-tests:

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

13 years ago Re-enabled PGO.
sfalken@apple.com [Wed, 12 Mar 2008 17:56:13 +0000 (17:56 +0000)]
    Re-enabled PGO.

        Rubber stamped by Mark Rowe.

        * WebKit.vcproj/WebKit.pgd:
        * WebKit.vcproj/WebKit.vcproj:
        * WebKitPrefix.cpp: touched this file to force a re-build.

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

13 years ago2008-03-12 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 12 Mar 2008 17:20:23 +0000 (17:20 +0000)]
2008-03-12  Alp Toker  <alp@atoker.com>

        Another autotools testkjs build fix attempt.

        * GNUmakefile.am:

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

13 years ago - fix http://bugs.webkit.org/show_bug.cgi?id=17794
darin@apple.com [Wed, 12 Mar 2008 16:38:25 +0000 (16:38 +0000)]
    - fix bugs.webkit.org/show_bug.cgi?id=17794
          REGRESSION (r30980): 23 tests hanging on the Mac buildbot

        * WebView/WebFrame.mm:
        (-[WebFrame _initWithWebFrameView:webView:bridge:]): Added missing call to set
        up pointer from the bridge to the frame. (My next check-in removes the bridge
        entirely, but we need this until then.)

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

13 years ago Reviewed by Darin.
harrison@apple.com [Wed, 12 Mar 2008 16:16:40 +0000 (16:16 +0000)]
    Reviewed by Darin.

        <rdar://problem/5607382> CrashTracer: [REGRESSION] 2290 crashes in Safari at com.apple.WebCore: -[WebCoreAXObject isWebArea] + 8

        The problem was that we lost track of the AX cache for a subframe when Frame::disconnectOwnerElement() was
        called, so we were unable to locate the AXObjects to de-register from AppKit's accessibility registry.
        Also saw that cache clearing was missing from Document::detach(), and fixed that.

        Also added a debug-only check that AXObjectCache::remove() not finding the AXObject is expected.

        Lastly, RenderWidget::destroy() now skips trying to remove the AXObject if accessibility has never been enabled.

        * dom/Document.cpp:
        Assert that there is no AX cache (since there is no renderer).

        Destroy the AX cache installed on this document.

        New. Destroy the AX cache associated with this document.

        Added some comments.

        * dom/Document.h:
        Declare clearAXObjectCache().

        * page/Frame.cpp:
        Destroy the AX cache associated with this frame's document.

        * page/mac/AXObjectCacheMac.mm:
        * page/mac/WebCoreAXObject.mm:
        (-[WebCoreAXObject initWithRenderer:]):
        (-[WebCoreAXObject detach]):
        * rendering/RenderObject.cpp:
        * rendering/RenderObject.h:
        Add debug-only check that AXObjectCache::remove() not finding the AXObject is expected.

        * rendering/RenderWidget.cpp:
        Skip call to remove the AXObject if accessibility has never been enabled. A simple speed optimization in the
        very common case that the accessibility APIs are not being used. Same as in RenderObject::destroy().

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

13 years ago2008-03-12 Alp Toker <alp@atoker.com>
alp@webkit.org [Wed, 12 Mar 2008 16:12:46 +0000 (16:12 +0000)]
2008-03-12  Alp Toker  <alp@atoker.com>

        Attempt to fix the autotools testkjs build on systems with
        non-standard include paths.

        * GNUmakefile.am:

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

13 years agoCredit the original patch author in the r30989 ChangeLogs
alp@webkit.org [Wed, 12 Mar 2008 15:08:01 +0000 (15:08 +0000)]
Credit the original patch author in the r30989 ChangeLogs

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

13 years ago2008-03-12 Xan Lopez <xan@gnome.org>
alp@webkit.org [Wed, 12 Mar 2008 15:03:17 +0000 (15:03 +0000)]
2008-03-12  Xan Lopez  <xan@gnome.org>

        Reviewed by Alp Toker.


        Add Pango font backend.

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

13 years agoFix compilation against Qt 4.3
hausmann@webkit.org [Wed, 12 Mar 2008 08:47:47 +0000 (08:47 +0000)]
Fix compilation against Qt 4.3

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

13 years agoWebCore:
justin.garcia@apple.com [Wed, 12 Mar 2008 08:12:37 +0000 (08:12 +0000)]

        Reviewed by Oliver.

        <rdar://problem/5770834> Crash at InsertTextCommand::prepareForTextInsertion() doing RemoveFormat in a certain list

        Fixes some (but not all) of the instances of:
        <rdar://problem/5659795> CrashTracer: [REGRESSION] 187 crashes in Safari at com.apple.WebCore: WebCore::InsertTextCommand::prepareForTextInsertion + 241
        <rdar://problem/5779631> CrashTracer: [USER] 25 crashes in Mail at WebCore::InsertTextCommand::prepareForTextInsertion

        * editing/InsertLineBreakCommand.cpp:
        (WebCore::InsertLineBreakCommand::doApply): applyStyle may have destroyed content that held
        the old endingSelection(), so we must recompute it.  Added a FIXME.  Added a few comments.
        * editing/RemoveFormatCommand.cpp:
        (WebCore::RemoveFormatCommand::doApply): Added a FIXME.


        Reviewed by Oliver.

        <rdar://problem/5770834> Crash at InsertTextCommand::prepareForTextInsertion() doing RemoveFormat in a certain list

        * editing/execCommand/5770834-1-expected.txt: Added.
        * editing/execCommand/5770834-1.html: Added.

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

13 years ago Reviewed by Darin.
ap@webkit.org [Wed, 12 Mar 2008 08:07:26 +0000 (08:07 +0000)]
    Reviewed by Darin.

        <rdar://problem/5640615> REGRESSION (Safari 2-3): Changing subframe encoding rules broke
        some sites.

        Other browsers' behavior keeps changing; let's implement what Firefox and Opera do now:
        if the frame and subframe belong to the same site, then the encoding is inherited from parent
        frame to subframe. Otherwise, it is not.

        Always inheriting the encoding would cause a security problem.

        Tests: http/tests/misc/frame-default-enc-different-domain.html

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::write): Also removed a check for m_frame->document() being non-null -
        this function also has code that uses it without checking, so it must be safe.

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

13 years ago Fix build.
sfalken@apple.com [Wed, 12 Mar 2008 08:04:44 +0000 (08:04 +0000)]
    Fix build.

        * WebKit.vcproj/WebKit.vcproj:

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

13 years agoGtk build fix.
mrowe@apple.com [Wed, 12 Mar 2008 07:51:44 +0000 (07:51 +0000)]
Gtk build fix.

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

13 years ago Reviewed by Darin.
ap@webkit.org [Wed, 12 Mar 2008 07:40:16 +0000 (07:40 +0000)]
    Reviewed by Darin.

        <rdar://problem/5787743> REGRESSION: Crash at WTF::Collator::CreateCollator() running fast/js/kde/StringObject.html on Windows

        * wtf/unicode/icu/CollatorICU.cpp:
        (WTF::Collator::createCollator): Check for null (== user default) m_locale before calling strcmp.

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

13 years agoTouch a file in WebKitWin to cause it to build
sfalken@apple.com [Wed, 12 Mar 2008 07:00:09 +0000 (07:00 +0000)]
Touch a file in WebKitWin to cause it to build

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

13 years agoJavaScriptCore:
sfalken@apple.com [Wed, 12 Mar 2008 05:40:03 +0000 (05:40 +0000)]

        Disable LTCG/PGO for grammar.cpp and nodes.cpp.
        PGO on these files causes us to hang.

        Copy newer vsprops files from relative WebKitLibraries path to environment variable based path.

        Reviewed by Oliver.

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.vcproj:
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make:


        Disable LTCG/PGO for all of WebCore for now.
        We'll re-enable this as part of follow-on PGO work.

        Reviewed by Oliver.

        * WebCore.vcproj/WebCore.vcproj:


        Use PGO to build WebKit.dll.

        Reviewed by Oliver.

        * WebKit.vcproj/WebKit.pgd: Added.
        * WebKit.vcproj/WebKit.vcproj:


        Disable two PGO/LTCG specific warnings.

        Reviewed by Oliver.

        * win/tools/vsprops/common.vsprops:

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

13 years agoWebCore:
darin@apple.com [Wed, 12 Mar 2008 05:27:19 +0000 (05:27 +0000)]

        Reviewed by Sam.

        - remove all bridge-related things from WebCore except the bridge itself

        * WebCore.base.exp: Removed the bridge and setBridge functions.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::detachFromParent): Removed call to the bridge's
        close method.

        * page/Frame.cpp:
        (WebCore::Frame::~Frame): Removed call to setBridge(0).
        (WebCore::FramePrivate::FramePrivate): Removed initialization of m_bridge.
        * page/Frame.h: Removed setBridge and bridge functions.
        * page/FramePrivate.h: Removed m_bridge pointer.
        * page/mac/FrameMac.mm: Removed setBridge and bridge functions.

        * page/mac/WebCoreFrameBridge.h: Added setWebCoreFrame: method.
        Removed bridgeForDOMDocument: and clearFrame methods.
        * page/mac/WebCoreFrameBridge.mm: Ditto.
        (-[WebCoreFrameBridge close]): Changed to set m_frame to 0 directly.
        (-[WebCoreFrameBridge setWebCoreFrame:]): Added.


        Reviewed by Sam.

        - remove all bridge-related things from WebCore except the bridge itself

        * DOM/WebDOMOperations.mm:
        (-[DOMNode _bridge]): Reimplemented to not use the bridgeForDOMDocument: method.

        * DefaultDelegates/WebDefaultContextMenuDelegate.mm: Removed unneeded include.

        * Plugins/WebPluginController.mm: Ditto.

        * WebCoreSupport/WebFrameBridge.h: Removed unneeded things, including the
        init and close methods. Added a setWebFrame: method.

        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge setWebFrame:]): Added.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::frameLoaderDestroyed): Added an assertion.
        (WebFrameLoaderClient::detachedFromParent4): Moved the call to close on the
        bridge here. Soon we will be able to remove this entirely!
        (WebFrameLoaderClient::createFrame): Rewrote this to use the method moved
        into WebFrame from the bridge.

        * WebView/WebFrame.mm:
        (-[WebFramePrivate dealloc]): Added code to release the bridge, because it's
        now owned by the frame.
        (-[WebFramePrivate finalize]): Added this missing method. We'd leak the script
        debugger under GC without this!
        (kit): Rewrote the function that maps from a WebCore::Frame to a WebFrame to
        use WebFrameLoaderClient instead of the bridge.
        (+[WebFrame _createFrameWithPage:frameName:frameView:ownerElement:]): Added.
        This is code that used to live in the bridge's init function.
        (+[WebFrame _createMainFrameWithPage:frameName:frameView:]): Ditto.
        (+[WebFrame WebCore::_createSubframeWithOwnerElement:frameName:frameView:]): Ditto.
        (-[WebFrame _initWithWebFrameView:webView:bridge:]): Retain the bridge, since
        the WebView is now the bridge's owner.
        (-[WebFrame _updateBackground]): Changed this one call site that was calling the
        WebCore::Frame::bridge function directly to use the kit function instead.
        (-[WebFrame dealloc]): Added code to clear the WebFrame pointer in the bridge.
        This code won't last long -- we're eliminating the bridge soon.
        (-[WebFrame finalize]): Ditto.

        * WebView/WebFrameInternal.h: Added a coreFrame backpointer and two new methods
        for creating frames.

        * WebView/WebView.mm:
        (-[WebView _commonInitializationWithFrameName:groupName:]): Rewrote this to use
        the method moved into WebFrame from the bridge. Gets rid of the unpleasant idiom
        where we have to allocate a WebFrameBridge and then immediately release it.

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

13 years agoWebCore:
darin@apple.com [Wed, 12 Mar 2008 05:13:21 +0000 (05:13 +0000)]

        - restored some code I removed in the Range change; this code can't go
          until the rest of the Range fix is in

        * dom/Range.cpp:
        (WebCore::Range::commonAncestorContainer): Added back the check for 0
        that I removed erroneously in the Range patch.
        (WebCore::Range::processContents): Left in assertions I used to debug


        Reviewed by Beth Dakin.

        Update test to catch the SECURITY_ERR thrown by
        CanvasRenderingContext2D::getImageData() and
        HTMLCanvasElement::toDataURL() on a tainted canvas

        * http/tests/security/canvas-remote-read-remote-image-expected.txt:
        * http/tests/security/canvas-remote-read-remote-image.html:

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

13 years ago - update expected result changed by recent Range patch
darin@apple.com [Wed, 12 Mar 2008 03:51:53 +0000 (03:51 +0000)]
    - update expected result changed by recent Range patch

        * platform/mac/editing/execCommand/4920488-expected.txt: Removed incorrect exception log.
        * platform/qt/editing/execCommand/4920488-expected.txt: Ditto.

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

13 years ago - fix Release build
darin@apple.com [Wed, 12 Mar 2008 01:31:36 +0000 (01:31 +0000)]
    - fix Release build

        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::setContentsPos): Don't use NSMakePoint.

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

13 years agoWebCore:
darin@apple.com [Wed, 12 Mar 2008 01:23:29 +0000 (01:23 +0000)]

        Reviewed by Anders.

        - simplify Mac code for ScrollView, since it's used only for FrameView
          and not in two different modes like it was historically
        - remove code depending on the bridge to get from an NSView to a WebCore::Frame

        * bindings/objc/DOMHTML.mm:
        (-[DOMHTMLInputElement _rectOnScreen]): getDocumentView -> documentView.

        * bridge/jni/jni_jsobject.cpp:
        (createRootObject): Instead of using WebCoreViewFactory to find the frame given
        and NSView, use the WebCoreFrameView interface to do it.

        * editing/mac/EditorMac.mm:
        (WebCore::Editor::paste): getDocumentView -> documentView.
        * editing/mac/SelectionControllerMac.mm:
        (WebCore::SelectionController::notifyAccessibilityForSelectionChange): Ditto.

        * page/FrameView.h: Fixed comment.

        * page/InspectorController.cpp:
        (WebCore::InspectorController::drawNodeHighlight): Removed uneeded typecasts
        to ScrollView* since FrameView is derived from ScrollView.

        * page/mac/EventHandlerMac.mm:
        (WebCore::EventHandler::focusDocumentView): getDocumentView -> documentView.
        * page/mac/FrameMac.mm:
        (WebCore::Frame::imageFromRect): Ditto.
        * page/mac/WebCoreAXObject.mm:
        (-[WebCoreAXObject position]): Ditto.
        (-[WebCoreAXObject doAXTextMarkerForPosition:]): Ditto.
        (-[WebCoreAXObject rendererForView:]): Updated code that used to use
        WebCoreBridgeHolder to use WebCoreFrameView instead.

        * page/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
        getDocumentView -> documentView.

        * page/mac/WebCoreFrameView.h: Removed the WebCoreScrollbarMode type; we just
        use WebCore::ScrollbarMode directly. Renamed the WebCoreFrameView protocol to
        WebCoreFrameScrollView, since it's a protocol for the scroll view, not the
        frame view itself. Replaced WebCoreBridgeHolder protocol with WebCoreFrameView
        protocol, which returns a WebCore::Frame directly rather than a bridge.

        * page/mac/WebCoreViewFactory.h: Eliminated the bridgeForView method.

        * platform/ScrollView.h: Moved the constructor and destructor out of the
        class-specific #if blocks. Renamed Mac-specific function that gets the
        NSView for from getDocumentView to documentView and a scrollView function
        that returns an appropriately classed NSScrollView.

        * platform/graphics/MediaPlayer.h: Changed type of parentWidget to FrameView
        instead of Widget.
        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        (WebCore::MediaPlayerPrivate::createQTMovieView): Removed unnecessary cast.

        * platform/mac/PopupMenuMac.mm:
        (WebCore::PopupMenu::show): getDocumentView -> documentView.
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::ScrollView): Added.
        (WebCore::ScrollView::~ScrollView): Added.
        (WebCore::ScrollView::scrollView): Added.
        (WebCore::ScrollView::visibleWidth): Removed unused non-NSScrollView case.
        (WebCore::ScrollView::visibleHeight): Ditto.
        (WebCore::ScrollView::visibleContentRect): Ditto.
        (WebCore::ScrollView::visibleContentRectConsideringExternalScrollers): Ditto.
        (WebCore::ScrollView::contentsWidth): Ditto.
        (WebCore::ScrollView::contentsHeight): Ditto.
        (WebCore::ScrollView::contentsX): Ditto.
        (WebCore::ScrollView::contentsY): Ditto.
        (WebCore::ScrollView::scrollOffset): Ditto.
        (WebCore::ScrollView::scrollRectIntoViewRecursively): Ditto.
        (WebCore::ScrollView::setContentsPos): Ditto.
        (WebCore::ScrollView::setVScrollbarMode): Ditto.
        (WebCore::ScrollView::setHScrollbarMode): Ditto.
        (WebCore::ScrollView::setScrollbarsMode): Ditto.
        (WebCore::ScrollView::vScrollbarMode): Ditto.
        (WebCore::ScrollView::hScrollbarMode): Ditto.
        (WebCore::ScrollView::suppressScrollbars): Ditto.
        (WebCore::ScrollView::addChild): Ditto.
        (WebCore::ScrollView::resizeContents): Ditto.
        (WebCore::ScrollView::updateContents): Ditto.
        (WebCore::ScrollView::contentsToWindow): Ditto.
        (WebCore::ScrollView::windowToContents): Ditto.
        (WebCore::ScrollView::setStaticBackground): Ditto.
        (WebCore::ScrollView::documentView): Renamed and removed unused case.
        (WebCore::ScrollView::scrollbarUnderMouse): Removed incorrect comment.

        * platform/mac/WidgetMac.mm:
        (WebCore::Widget::getOuterView): Update for protocol name change.

        * rendering/RenderThemeMac.mm:
        (WebCore::RenderThemeMac::paintCheckbox): getDocumentView -> documentView.
        (WebCore::RenderThemeMac::paintRadio): Ditto.
        (WebCore::RenderThemeMac::paintButton): Ditto.
        (WebCore::RenderThemeMac::paintMenuList): Ditto.
        (WebCore::RenderThemeMac::paintSliderThumb): Ditto.
        (WebCore::RenderThemeMac::paintSearchField): Ditto.
        (WebCore::RenderThemeMac::paintSearchFieldCancelButton): Ditto.
        (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration): Ditto.
        (WebCore::RenderThemeMac::paintSearchFieldResultsButton): Ditto.


        Reviewed by Anders.

        * WebKit.xcodeproj/project.pbxproj: Change WebDynamicScrollBarsView.m to be Obj-C++.
        We can rename the file later.


        Reviewed by Anders.

        - remove code depending on the bridge to get from an NSView to a WebCore::Frame

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::transitionToCommittedForNewPage): Remove incorrect call
        to setView. A couple lines later, there is a call to _install, which sets the
        view to the scroll view.

        * WebCoreSupport/WebViewFactory.mm: Removed bridgeForView method.

        * WebView/WebDynamicScrollBarsView.h: Moved most of the declarations out of
        this file, since it's used by Safari.
        * WebView/WebDynamicScrollBarsViewInternal.h: Added.
        * WebView/WebDynamicScrollBarsView.m:
        (-[WebDynamicScrollBarsView updateScrollers]): Ditto.
        (-[WebDynamicScrollBarsView setAllowsScrolling:]): Ditto.
        (-[WebDynamicScrollBarsView allowsScrolling]): Ditto.
        (-[WebDynamicScrollBarsView setAllowsHorizontalScrolling:]): Ditto.
        (-[WebDynamicScrollBarsView setAllowsVerticalScrolling:]): Ditto.
        (-[WebDynamicScrollBarsView allowsHorizontalScrolling]): Ditto.
        (-[WebDynamicScrollBarsView allowsVerticalScrolling]): Ditto.
        (-[WebDynamicScrollBarsView horizontalScrollingMode]): Ditto.
        (-[WebDynamicScrollBarsView verticalScrollingMode]): Ditto.
        (-[WebDynamicScrollBarsView setHorizontalScrollingMode:]): Ditto.
        (-[WebDynamicScrollBarsView setHorizontalScrollingMode:andLock:]): Ditto.
        (-[WebDynamicScrollBarsView setVerticalScrollingMode:]): Ditto.
        (-[WebDynamicScrollBarsView setVerticalScrollingMode:andLock:]): Ditto.
        (-[WebDynamicScrollBarsView setScrollingMode:]): Ditto.
        (-[WebDynamicScrollBarsView setScrollingMode:andLock:]): Ditto.

        * WebView/WebFrameView.mm:
        (-[WebFrameView _web_frame]): Added. Replaces the webCoreBridge method.

        * WebView/WebView.mm:
        (-[WebView setAlwaysShowVerticalScroller:]): Updated for changes to WebCoreFrameView.h.
        (-[WebView alwaysShowVerticalScroller]): Ditto.
        (-[WebView setAlwaysShowHorizontalScroller:]): Ditto.
        (-[WebView alwaysShowHorizontalScroller]): Ditto.

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

13 years agoWebCore:
darin@apple.com [Wed, 12 Mar 2008 00:48:00 +0000 (00:48 +0000)]

        Reviewed by Adam Roben.

        Split CookieJarWin.cpp into CFNet and non-CFNet versions to
        reduce the massive amount of conditionalization in the file.
        (see http://bugs.webkit.org/show_bug.cgi?id=17788)

        * WebCore.vcproj/WebCore.vcproj:
        * platform/network/win/CookieJarCFNetWin.cpp: Copied from WebCore/platform/network/win/CookieJarWin.cpp.
        * platform/network/win/CookieJarWin.cpp:


        Reviewed by Sam.

        - eliminate the remaining parts of WebCoreBridge used for calls to WebKit from WebCore

        * WebCoreSupport/WebChromeClient.h: Added new virtual functions that replace
        bridge methods.
        * WebCoreSupport/WebChromeClient.mm: Added lots of BEGIN_BLOCK_OBJC_EXCEPTIONS
        to recently-created functions.
        (WebChromeClient::firstResponder): Moved code here from the bridge.
        (WebChromeClient::makeFirstResponder): Ditto.
        (WebChromeClient::runOpenPanel): Ditto.
        (WebChromeClient::willPopUpMenu): Ditto.

        * WebCoreSupport/WebFrameBridge.h: Removed almost everything. What's left
        is related to creating the bridge and connecting it to WebCore, which will
        go next when I eliminate use of the bridge to get to/from the Frame*.
        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge close]): Moved the code to track the bridge count here
        instead of the dealloc and finalize methods.

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

13 years ago2008-03-11 Brent Fulgham <bfulgham@gmail.com>
pewtermoose@webkit.org [Wed, 12 Mar 2008 00:28:37 +0000 (00:28 +0000)]
2008-03-11  Brent Fulgham  <bfulgham@gmail.com>

        Reviewed by Adam Roben.

        Split CookieJarWin.cpp into CFNet and non-CFNet versions to
        reduce the massive amount of conditionalization in the file.
        (see http://bugs.webkit.org/show_bug.cgi?id=17788)

        * WebCore.vcproj/WebCore.vcproj:
        * platform/network/win/CookieJarCFNetWin.cpp: Copied from WebCore/platform/network/win/CookieJarWin.cpp.
        * platform/network/win/CookieJarWin.cpp:

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

13 years agoWebCore:
darin@apple.com [Tue, 11 Mar 2008 23:43:12 +0000 (23:43 +0000)]

        Reviewed by Mitz.

        - make some Range improvements (preparation for Range support for DOM mutation)

        Made constructors private, added create functions.
        Made refcount start at 1 rather than starting at 0 and being incremented.
        Made Range use two Position objects for the start/end container/offset pairs.

        * WebCore.base.exp: Updated.

        * dom/Document.cpp:
        (WebCore::Document::createRange): Changed to use Range::create.
        (WebCore::Document::removeMarkers): Updated for Range::first/pastLastNode name change.

        * dom/Position.cpp:
        (WebCore::Position::formatForDebugger): Updated for member variable name change.
        (WebCore::Position::showTreeForThis): Ditto.
        (WebCore::startPosition): Changed to use Range::startPosition.
        (WebCore::endPosition): Changed to use Range::endPosition.

        * dom/Position.h: Made the data members public and renamed them to container
        and offset. But since offset() is already a function, temporarily used posOffset
        for the data member. Later we'll get rid of offset(). Made more functions inline.
        Removed the constructor that takes a PositionIterator.

        * dom/PositionIterator.cpp:
        (WebCore::PositionIterator::operator Position): Added. Replaces the constructor
        that used to be in Position.
        * dom/PositionIterator.h: Added conversion operator to produce a Position.
        Removed friend declaration for Position.

        * dom/Range.cpp:
        (WebCore::Range::Range): Updated constructors for data member changes and made
        them use a refcount of 1.
        (WebCore::Range::create): Added.
        (WebCore::Range::startContainer): Updated to eliminate use of m_detached; detached
        is now indicated by m_start.container of 0. Also updated to use m_start instead
        of the old m_startContainer.
        (WebCore::Range::startOffset): Ditto.
        (WebCore::Range::endContainer): Ditto.
        (WebCore::Range::endOffset): Ditto.
        (WebCore::Range::commonAncestorContainer): Ditto.
        (WebCore::Range::collapsed): Ditto.
        (WebCore::Range::setStart): Ditto.
        (WebCore::Range::setEnd): Ditto.
        (WebCore::Range::collapse): Ditto.
        (WebCore::Range::isPointInRange): Ditto.
        (WebCore::Range::comparePoint): Ditto.
        (WebCore::Range::compareNode): Ditto.
        (WebCore::Range::compareBoundaryPoints): Ditto.
        (WebCore::Range::boundaryPointsValid): Ditto.
        (WebCore::Range::deleteContents): Ditto.
        (WebCore::Range::intersectsNode): Ditto.
        (WebCore::Range::processContents): Ditto.
        (WebCore::Range::extractContents): Ditto.
        (WebCore::Range::cloneContents): Ditto.
        (WebCore::Range::insertNode): Ditto.
        (WebCore::Range::toString): Ditto.
        (WebCore::Range::text): Ditto.
        (WebCore::Range::createContextualFragment): Ditto.
        (WebCore::Range::detach): Ditto.
        (WebCore::Range::checkNodeBA): Changed to use switch statements instead of
        multiple calls to the virtual nodeType() function.
        (WebCore::Range::cloneRange): Ditto.
        (WebCore::Range::setStartAfter): Ditto.
        (WebCore::Range::setEndBefore): Ditto.
        (WebCore::Range::setEndAfter): Ditto.
        (WebCore::Range::selectNode): Ditto.
        (WebCore::Range::selectNodeContents): Ditto.
        (WebCore::Range::surroundContents): Ditto.
        (WebCore::Range::setStartBefore): Ditto.
        (WebCore::Range::checkDeleteExtract): Ditto.
        (WebCore::Range::containedByReadOnly): Ditto.
        (WebCore::Range::firstNode): Ditto.
        (WebCore::Range::editingStartPosition): Ditto.
        (WebCore::Range::pastLastNode): Ditto.
        (WebCore::Range::addLineBoxRects): Ditto.
        (WebCore::Range::formatForDebugger): Ditto.
        (WebCore::operator==): Ditto.
        (WebCore::rangeOfContents): Ditto.
        (WebCore::Range::maxStartOffset): Ditto.
        (WebCore::Range::maxEndOffset): Ditto.

        * dom/Range.h: Made constructors private. Added create functions.
        Added getters for startContainer/Offset and endContainer/Offset that
        return 0 instead of an exception for detached ranges that are inline
        and don't require an ExceptionCode out parameter. Changed the parameters
        to setStart and setEnd to PassRefPtr. Removed isDetached function.
        Made ActionType and processContents private. Made startPosition and
        endPosition inlines and have then return const&. Renamed startNode and
        pastEndNode to firstNode and pastLastNode to reduce the chance of
        confusion with startContainer/endContainer. Used Position for m_start
        and m_end instead of separate container and offset members. Changed
        maxStartOffset and maxEndOffset into int to match other offsets.

        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::applyBlockStyle): Changed to use Range::create.
        (WebCore::ApplyStyleCommand::applyInlineStyle): Ditto.
        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::inputText): Ditto.
        (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::mergeParagraphs): Ditto.
        * editing/Editor.cpp:
        (WebCore::Editor::fontForSelection): Changed for pastLastNode name change.
        (WebCore::Editor::setComposition): Changed to use Range::create.
        (WebCore::paragraphAlignedRangeForRange): Ditto.
        (WebCore::markMisspellingsOrBadGrammar): Changed to get rid of check for
        isDetached and check for 0 from startContainer instead.
        (WebCore::Editor::compositionRange): Changed to use Range::create.
        * editing/EditorCommand.cpp:
        (WebCore::unionDOMRanges): Ditto.
        * editing/Selection.cpp:
        (WebCore::Selection::toRange): Ditto.
        * editing/TextIterator.cpp:
        (WebCore::TextIterator::TextIterator): Changed for firstNode and pastLastNode
        name change.
        (WebCore::TextIterator::range): Changed to use Range::create.
        (WebCore::SimplifiedBackwardsTextIterator::range): Ditto.
        (WebCore::TextIterator::subrange): Ditto.
        * editing/VisiblePosition.cpp:
        (WebCore::makeRange): Ditto.
        * editing/VisiblePosition.h: Added now-needed include.
        * editing/htmlediting.cpp:
        (WebCore::indexForVisiblePosition): Changed to use Range::create.
        (WebCore::avoidIntersectionWithNode): Changed to get rid of check for
        isDetached and check for 0 instead and to use Range::create.
        * editing/markup.cpp:
        (WebCore::renderedText): Changed to use Range::create.
        (WebCore::createMarkup): Changed to no longer use isDetached and also
        for new firstNode/pastEndNode names.
        (WebCore::createFragmentFromText): Ditto.
        * editing/visible_units.cpp:
        (WebCore::previousBoundary): Changed to use Range::create.
        * page/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge convertToNSRange:]): Changed to no longer use
        * rendering/RenderTextControl.cpp:
        (WebCore::RenderTextControl::visiblePositionForIndex): Changed to use Range::create.
        (WebCore::RenderTextControl::indexForVisiblePosition): Ditto.


        Reviewed by Mitz.

        - update code affected by Range changes

        * Misc/WebNSAttributedStringExtras.mm:
        (+[NSAttributedString _web_attributedStringFromRange:]): Update for name changes.
        * WebView/WebHTMLRepresentation.mm:
        (-[WebHTMLRepresentation attributedStringFrom:startOffset:to:endOffset:]):
        Use Range::create.
        * WebView/WebHTMLView.mm:
        (-[WebHTMLView attributedString]): Ditto.

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

13 years ago2008-03-11 Daniel Zucker <zucker@wake3.com>
pewtermoose@webkit.org [Tue, 11 Mar 2008 23:32:43 +0000 (23:32 +0000)]
2008-03-11  Daniel Zucker <zucker@wake3.com>

        Reviewed by Adam Roben.

        There are a handful of placed where the use of CFNetwork-specific
        calls are protected by PLATFORM(CF).  Revise to use the more specific
        USE(CFNETWORK) macro.  (See http://bugs.webkit.org/show_bug.cgi?id=17783)

        * platform/network/ProtectionSpace.cpp:  Change PLATFORM(CF) to USE(CFNETWORK)
        * platform/network/ResourceHandle.cpp: Change PLATFORM(CF) to USE(CFNETWORK)
        * platform/network/win/CookieJarWin.cpp:  Correct error in
          InternetGetCookie call.  Conditionalize 'cookiesEnabled' the same
          as all other implementations in this file.

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

13 years agoFix version comparison from previous checkin
pewtermoose@webkit.org [Tue, 11 Mar 2008 23:06:39 +0000 (23:06 +0000)]
Fix version comparison from previous checkin

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

13 years ago2008-03-11 Xan Lopez <xan@gnome.org>
alp@webkit.org [Tue, 11 Mar 2008 23:06:38 +0000 (23:06 +0000)]
2008-03-11  Xan Lopez  <xan@gnome.org>

        Reviewed by Alp Toker.


        Add libsoup HTTP backend.

        * GNUmakefile.am:
        * platform/network/ResourceHandleInternal.h:
        * platform/network/soup/AuthenticationChallenge.h: Added.
        * platform/network/soup/ResourceError.h: Added.
        * platform/network/soup/ResourceHandleSoup.cpp: Added.
        * platform/network/soup/ResourceRequest.h: Copied from WebCore/platform/network/curl/ResourceRequest.h.
        * platform/network/soup/ResourceResponse.h: Added.

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

13 years ago2008-03-11 Rodney Dawes <dobey@wayofthemonkey.com>
pewtermoose@webkit.org [Tue, 11 Mar 2008 22:53:38 +0000 (22:53 +0000)]
2008-03-11  Rodney Dawes  <dobey@wayofthemonkey.com>

        Fix Qt build.

        * plugins/qt/PluginDataQt.cpp:


        Fix the Qt build.

        * WebCoreSupport/FrameLoaderClientQt.cpp:

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

13 years ago2008-03-11 Robert Blaut <webkit@blaut.biz>
mrowe@apple.com [Tue, 11 Mar 2008 21:43:43 +0000 (21:43 +0000)]
2008-03-11  Robert Blaut  <webkit@blaut.biz>

        Reviewed by Darin Adler.

        Fix bug http://bugs.webkit.org/show_bug.cgi?id=17280
        Patch deletes an obsolete hitlist.html page and other references to it

        * nav.inc: removed menu link to hitlist.html
        * projects/compat/hitlist.html: Removed.
        * projects/compat/index.html: removed reference to hitlist.html

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

13 years ago2008-03-11 Brent Fulgham <bfulgham@gmail.com>
pewtermoose@webkit.org [Tue, 11 Mar 2008 21:28:22 +0000 (21:28 +0000)]
2008-03-11  Brent Fulgham  <bfulgham@gmail.com>


        Reviewed by Adam Roben.

        Enabled WinLauncher as part of normal Windows build.

        * WebKit.vcproj/WebKit.sln:  Add WinLauncher to the set of things
          build during a Windows build.


        Reviewed by Adam Roben.

        Enabled WinLauncher as part of normal Windows build.

        * WinLauncher/WinLauncher.vcproj: Update to use vsprops so that
          it can find the proper libraries to link against.

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

13 years ago Make attribute quoting in DOM view more consistent with source view
aroben@apple.com [Tue, 11 Mar 2008 19:59:29 +0000 (19:59 +0000)]
    Make attribute quoting in DOM view more consistent with source view

        Two changes which make the DOM view more consistent with source view:
         1) We now quote all attribute values, including URLs
         2) The quotes around the values are now purple, matching the left and
            right angle brackets that surround the tag

        One bug fixed by these changes:
         1) The entire URL is selected for editing when you double-click a URL
            that is an attribute value. Previously, the first and last
            characters were not included in the selection.

        Reviewed by Darin.

        * page/inspector/DocumentPanel.js:
        (WebInspector.DOMNodeTreeElement._startEditingAttribute): Don't need
        to account for the quotes around attribute values anymore because the
        quotes are now outside the webkit-html-attribute-value span.
        * page/inspector/utilities.js:
        (nodeTitleInfo): Quote all attribute values, including URLs, and place
        the quotes outside the webkit-html-attribute-value span.

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

13 years ago Stop including pthread.h in WebCore on Windows
aroben@apple.com [Tue, 11 Mar 2008 19:59:04 +0000 (19:59 +0000)]
    Stop including pthread.h in WebCore on Windows

        Reviewed by Darin.

        * WebCore.vcproj/WebCore.vcproj:
          - Changed the include path to not contain pthreads/
          - Let VS remove a duplicate FileConfiguration element
          - Let VS have its way with the file ordering
        * WebCorePrefix.h: Made the #include of pthread.h be compiled out on
        * loader/FTPDirectoryDocument.cpp: Added a Windows-specific #define of
        localtime_r (pthread.h was providing a macro that substituted plain
        old localtime before, but localtime_s is "more secure", so I went with
        * loader/FTPDirectoryParser.cpp: Ditto for gmtime_r.

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

13 years agoRoll out r30961 since it breaks the default site icon on Windows
aroben@apple.com [Tue, 11 Mar 2008 19:58:35 +0000 (19:58 +0000)]
Roll out r30961 since it breaks the default site icon on Windows

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

13 years ago Reviewed by Darin Adler.
mitz@apple.com [Tue, 11 Mar 2008 18:30:36 +0000 (18:30 +0000)]
    Reviewed by Darin Adler.

        - clean up line layout code

        * platform/graphics/GraphicsContext.cpp:
        (WebCore::TextRunIterator::increment): Removed the resolver parameter.
        (WebCore::GraphicsContext::drawBidiText): Adjusted for changes to
        createBidiRunsForLine(), which no longer takes a start parameter.
        * platform/text/BidiResolver.h:
        (WebCore::BidiResolver::): Made Noncopyable and removed the
        m_adjustEmbedding member variable.
        (WebCore::BidiResolver::position): Added. Returns the resolver's current
        (WebCore::BidiResolver::setPosition): Added. Sets the resolver's current
        position without changing any other state.
        (WebCore::BidiResolver::increment): Added. Advances the resolver to the
        next position, allowing the iterator to push and pop embedding.
        (WebCore::BidiResolver::appendRun): Removed the resolver parameter in
        the call to increment().
        (WebCore::BidiResolver::embed): Removed code to save, set and restore
        (WebCore::BidiResolver::createBidiRunsForLine): Changed to not take a
        'start' iterator. Instead, start at the current position. Removed code
        to set m_adjustEmbedding. Changed for noncopyability.
        * rendering/RenderBlock.h:
        * rendering/bidi.cpp:
        (WebCore::bidiNext): Made the resolver parameter optional. Changed to
        null-check the 'end of inline' pointer only twice.
        (WebCore::bidiFirst): Made the resolver parameter optional.
        (WebCore::BidiIterator::increment): Ditto.
        (WebCore::BidiState::increment): Added. Overrides the default
        BidiResolver::increment() method by passing the resolver to
        (WebCore::checkMidpoints): Removed the resolver parameter.
        (WebCore::BidiState::appendRun): Removed code to save, set and restore
        m_adjustEmbedding. Adjusted for change to increment().
        (WebCore::RenderBlock::bidiReorderLine): Removed the 'start' parameter
        and unreachable code.
        (WebCore::buildCompactRuns): Adjusted for changes to BidiResolver/
        (WebCore::RenderBlock::layoutInlineChildren): Moved code to initialize
        the resolver from this method to determineStartPosition(). Unified the
        resolver with the 'start' iterator. Removed unreachable code. Moved one
        statement from the beginning of the while loop to the end.
        (WebCore::RenderBlock::determineStartPosition): Moved code to initialize
        the resolver from layoutInlineChildren() into this method.
        (WebCore::RenderBlock::matchedEndLine): Adjusted for the resolver and
        the 'start' iterator being one object.
        (WebCore::skipNonBreakingSpace): Made the parameter const.
        (WebCore::requiresLineBox): Ditto.
        (WebCore::RenderBlock::generatesLineBoxesForInlineChild): Adjusted for
        the change to BidiIterator::increment().
        (WebCore::RenderBlock::skipWhitespace): Made two versions of this
        method, one for BidiIterator and one for BidiState.
        (WebCore::shouldSkipWhitespaceAfterStartObject): Removed the resolver
        (WebCore::RenderBlock::findNextLineBreak): Removed the resolver
        parameter. Removed calls to setAdjustEmbedding(). Removed the 'previous'
        variable and changed the 'last' variable to do its job.
        * rendering/bidi.h:

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

13 years ago Part of Bug 17224: DOM nodes/attributes should be editable
aroben@apple.com [Tue, 11 Mar 2008 15:54:16 +0000 (15:54 +0000)]
    Part of Bug 17224: DOM nodes/attributes should be editable


        This patch makes text nodes editable via double-click.

        Reviewed by Tim.

        * page/inspector/DocumentPanel.js:
          - Moved most of this code to _startEditingAttribute
          - Calls _startEditingTextNode or _startEditingAttribute as
        (WebInspector.DOMNodeTreeElement._startEditingAttribute): Added. Code
        came from _startEditing.
        (WebInspector.DOMNodeTreeElement._startEditingTextNode): Added.
        (WebInspector.DOMNodeTreeElement._textNodeEditingCommitted): Added.
        (WebInspector.DOMNodeTreeElement._editingCancelled): Renamed from
        * page/inspector/utilities.js:
        (nodeTitleInfo): Wrap text nodes in a webkit-html-text-node span so
        that we can easily recognize/edit them.

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

13 years agor25512 inlined the urlIcon to improve the startup time of Safari on Mac. Inlining is
zecke@webkit.org [Tue, 11 Mar 2008 15:38:58 +0000 (15:38 +0000)]
r25512 inlined the urlIcon to improve the startup time of Safari on Mac. Inlining is
not suitable for platforms where this icon is themable. E.g. the Qt platform is allowing
to theme this icon and the Gtk+ platform will probably end up with themable icons
as well.

Remove dead code from the windows port and move the urlIcon from the windows
directory to the Resource directory to be used by Qt and other ports.

Ifdef the usage of the built-in icon in IconDatabase.cpp and for Qt do not use
it. Gtk+ currently has no proper implementation of Image::loadPlatformResource but
once it does it wants to use this for getting the urlIcon as well.

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

13 years ago2008-03-11 Tor Arne Vestbø <tavestbo@trolltech.com>
hausmann@webkit.org [Tue, 11 Mar 2008 14:59:58 +0000 (14:59 +0000)]
2008-03-11  Tor Arne Vestbø  <tavestbo@trolltech.com>

        Reviewed by Darin.

        Implemented HTML media element support for QtWebKit, using Phonon.


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

13 years agoFix the Qt build (silly typo).
hausmann@webkit.org [Tue, 11 Mar 2008 13:50:31 +0000 (13:50 +0000)]
Fix the Qt build (silly typo).

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

13 years ago2008-03-11 Tor Arne Vestbø <tavestbo@trolltech.com>
hausmann@webkit.org [Tue, 11 Mar 2008 12:52:00 +0000 (12:52 +0000)]
2008-03-11  Tor Arne Vestbø  <tavestbo@trolltech.com>

        Reviewed by Simon.

        Moved obscuring progress bar to the lower right corner.

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

13 years ago2008-03-11 Tor Arne Vestbø <tavestbo@trolltech.com>
hausmann@webkit.org [Tue, 11 Mar 2008 12:51:47 +0000 (12:51 +0000)]
2008-03-11  Tor Arne Vestbø  <tavestbo@trolltech.com>

        Reviewed by Simon.

        Added reload action and grouped stop and reload actions together.

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

13 years agoHolger Hans Peter Freyther <holger.freyther@trolltech.com>
hausmann@webkit.org [Tue, 11 Mar 2008 11:38:07 +0000 (11:38 +0000)]
Holger Hans Peter Freyther <holger.freyther@trolltech.com>

* Set a Icon on the QAction if we have one.

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

13 years agoFix the Qt build.
hausmann@webkit.org [Tue, 11 Mar 2008 08:17:07 +0000 (08:17 +0000)]
Fix the Qt build.

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

13 years agoWebCore:
weinig@apple.com [Tue, 11 Mar 2008 07:20:35 +0000 (07:20 +0000)]

        Reviewed by Beth Dakin.

        Throw a SECURITY_ERR when accessing a tainted canvas
        by CanvasRenderingContext2D::getImageData() and

        * html/CanvasRenderingContext2D.cpp:
        * html/CanvasRenderingContext2D.h:
        * html/CanvasRenderingContext2D.idl:
        * html/HTMLCanvasElement.cpp:
        * html/HTMLCanvasElement.h:
        * html/HTMLCanvasElement.idl:


        Reviewed by Beth Dakin.

        Update test to catch the SECURITY_ERR thrown by
        CanvasRenderingContext2D::getImageData() and
        HTMLCanvasElement::toDataURL() on a tainted canvas

        * http/tests/security/canvas-remote-read-remote-image-expected.txt:
        * http/tests/security/canvas-remote-read-remote-image.html:

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

13 years ago - Windows build fix
darin@apple.com [Tue, 11 Mar 2008 06:28:48 +0000 (06:28 +0000)]
    - Windows build fix

        * kjs/function.cpp: (KJS::decode): Initialize variable.

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

13 years agoWebCore:
justin.garcia@apple.com [Tue, 11 Mar 2008 04:42:14 +0000 (04:42 +0000)]

        Reviewed by Sam.

        <rdar://problem/5779984> REGRESSION (r30391): GMail: Safari won't display the Edit Link dialog

        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
        (WebCore::hasCSSPropertyNamePrefix): Fixed a typo.  The code was only
        comparing the first character of the prefix to the first character
        of the property name.


        Reviewed by Sam.

        <rdar://problem/5779984> REGRESSION (r30391): GMail: Safari won't display the Edit Link dialog

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

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

13 years ago Reviewed by Beth.
bdakin@apple.com [Tue, 11 Mar 2008 03:40:59 +0000 (03:40 +0000)]
    Reviewed by Beth.

        Hold off on initializing the frame to avoid the RenderView getting
        a null FrameView. This could potentially cause problems.

        * svg/graphics/SVGImage.cpp:

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

13 years ago - try to fix Qt build
darin@apple.com [Tue, 11 Mar 2008 00:48:25 +0000 (00:48 +0000)]
    - try to fix Qt build

        * bridge/qt/qt_runtime.cpp:
        (KJS::Bindings::convertQVariantToValue): Change KJS::UChar to UChar.

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

13 years ago Reviewed by Antti.
darin@apple.com [Tue, 11 Mar 2008 00:45:47 +0000 (00:45 +0000)]
    Reviewed by Antti.

        - fix <rdar://problem/3059610> VIP: links opened in new frame, window, or tab
          should be redrawn as visited immediately
        - fix <rdar://problem/4382809> Going "back" a page doesn't change the color of
          the visited URL at directory.umi
        - fix http://bugs.webkit.org/show_bug.cgi?id=4941
          Visited links should be marked as visited
        - fix http://bugs.webkit.org/show_bug.cgi?id=7960
          REGRESSION: Visited link color doesn't displayed after loading page from cache

        We now mark all links on a page as "changed" at the appropriate times.

        * WebCore.base.exp: Update since I made completeURL be a const member function.

        * css/CSSStyleSelector.cpp: Got rid of some unneeded globals that could be turned
        into locals. Also changed some static data members to file-scoped globals with
        internal linkage. Renamed the globals to get rid of the m_ prefix. Changed the
        prefix on m_styleNotYetAvailable to s_styleNotYetAvailable.
        (WebCore::CSSStyleSelector::CSSStyleSelector): Updated for name changes.
        (WebCore::parseUASheet): Tweak the comment.
        (WebCore::CSSStyleSelector::loadDefaultStyle): Updated for name changes and to
        use local variables instead of globals where possible.
        (WebCore::CSSStyleSelector::checkPseudoState): Made this a member function so
        it can store the link in a hash. Also changed it to have a return value instead
        of having it modify a global variable. Added code to put the hash into a set so
        we can tell later if this is one of the links that affects this page.
        (WebCore::CSSStyleSelector::canShareStyleWithElement): Updated for the change to
        (WebCore::CSSStyleSelector::matchUARules): Updated for name changes.
        (WebCore::CSSStyleSelector::styleForElement): Ditto.
        (WebCore::CSSStyleSelector::adjustRenderStyle): Ditto.
        (WebCore::CSSStyleSelector::pseudoStyleRulesForElement): Changed code to read
        the SVG style sheet to use a boolean global and put it right here in the function
        since this is the only code that needs to know about it.
        (WebCore::CSSStyleSelector::checkOneSelector): Updated for name changes.
        (WebCore::colorForCSSValue): Moved code inside the function that is not needed
        anywhere else.
        (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Updaed for the change
        to checkPseudoState.
        (WebCore::CSSStyleSelector::allVisitedStateChanged): Added. Calls setChanged on
        all links if there were any in the set.
        (WebCore::CSSStyleSelector::visitedStateChanged): Added. Calls setChanged on all
        links if the one that changed is in the set.

        * css/CSSStyleSelector.h: Removed unused StyleSelector class and State enum. Made
        CSSStyleSelector derive from Noncopyable. Made lots of member functions private that
        didn't need to be public, and removed others that could be made into non-member
        functions. Changed pseudoStyleRulesForElement to take a const String& instead of
        a StringImpl*. Added new allVisitedStateChanged and visitedStateChanged functions.
        Got rid of unneeded friend declarations.

        * dom/Document.cpp:
        (WebCore::Document::completeURL): Made const.
        (WebCore::findSlashDotDotSlash): Moved here from PageGroup.
        (WebCore::findSlashSlash): Ditto.
        (WebCore::findSlashDotSlash): Ditto.
        (WebCore::cleanPath): Ditto.
        (WebCore::matchLetter): Ditto.
        (WebCore::needsTrailingSlash): Ditto.
        (WebCore::Document::visitedLinkHash): Moved this here from PageGroup. This is
        the poor-man's completeURL function. The idea of putting it here is that this
        way it can be alongside the real completeURL function. Later we should figure out
        a way to make this function share more code with the real thing and match behavior.

        * dom/Document.h: Marked completeURL function const. Added visitedLinkHash function.

        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::getMatchedCSSRules): Updated for change to CSSStyleSelector.

        * page/Page.cpp:
        (WebCore::Page::allVisitedStateChanged): Added. Calls allVisitedStateChanged on all
        style selectors.
        (WebCore::Page::visitedStateChanged): Ditto.
        * page/Page.h: Added the above functions.

        * page/PageGroup.cpp:
        (WebCore::PageGroup::isLinkVisited): Changed to take a visitedLinkHash parameter.
        The CSSStyleSelector now handles actually computing the hash, and it does so by
        calling code in Document.
        (WebCore::PageGroup::addVisitedLink): Refactored so the two overloaded copies share
        a bit more code. Added code that calls visitedStateChanged if a new link was added.
        (WebCore::PageGroup::removeVisitedLinks): Added code to call allVisitedStateChanged
        if any visited links are removed.
        * page/PageGroup.h: Include StringHash.h instead of having the AlreadyHashed struct
        definition here.

        * platform/text/StringHash.h:
        (WebCore::CaseFoldingHash::hash): Tweaked to make this a bit more consistent with
        the StringImpl::computeHash function, using the same technique for avoiding 0.
        (WebCore::AlreadyHashed::hash): Added. Was formerly in PageGroup.h.
        (WebCore::AlreadyHashed::avoidDeletedValue): Added. Was formerly in PageGroup.cpp.

        * rendering/RenderStyle.cpp:
        (WebCore::RenderStyle::isStyleAvailable): Changed to use an inline function instead
        of getting directly at a data member so the data member could be made private.

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::scrollToAnchor): Added call to updateHistoryForAnchorScroll.
        (WebCore::FrameLoader::updateHistoryForAnchorScroll): Added.
        * loader/FrameLoader.h: Added updateHistoryForAnchorScroll.

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

13 years agoNo review, build fix only.
eric@webkit.org [Tue, 11 Mar 2008 00:36:26 +0000 (00:36 +0000)]
No review, build fix only.

        Speculative fix for Windows build, use ::UChar instead of KJS::UChar

        * WebScriptCallFrame.cpp:

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

13 years ago Part of Bug 17224: DOM nodes/attributes should be editable
aroben@apple.com [Tue, 11 Mar 2008 00:14:39 +0000 (00:14 +0000)]
     Part of Bug 17224: DOM nodes/attributes should be editable


         This patch makes DOM attributes editable via double-click.

         Reviewed by Tim.

         * page/inspector/DocumentPanel.js:
         (WebInspector.DOMNodeTreeElement.onmousedown): Don't do anything if
         we're being edited, since we want default editing behaviors to work.
         (WebInspector.DOMNodeTreeElement.ondblclick): Try to start editing
         before doing anything else.
         (WebInspector.DOMNodeTreeElement._startEditing): Added. Currently only
         lets you edit attributes.
         (WebInspector.DOMNodeTreeElement._attributeEditingCommitted): Added.
         Uses a scratch element to get the new attribute(s) parsed, then sets
         the attribute(s) on the node in the inspected document.
         (WebInspector.DOMNodeTreeElement._attributeEditingCancelled): Added.
         (WebInspector.DOMNodeTreeElement._updateTitle): Added. Refreshes the
         representation of the node in the Inspector's DOM tree to reflect
         the node's current state.
         * page/inspector/inspector.css: Made the .editing class apply
         * page/inspector/utilities.js:
         (nodeTitleInfo): Changed to surround attribute name/value pairs in a
         webkit-html-attribute span so that we can easily edit the pair as a

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