WebKit-https.git
12 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

12 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:
        (RuntimeObjectImp::RuntimeObjectImp):

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

12 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

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

        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.
        (WebInspector.DocumentPanel.updateBreadcrumb):
          - 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.
        (WebInspector.DocumentPanel._parentNodeOrFrameElementWithinPanel):
        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.
        (WebInspector.DocumentPanel._isAncestorIncludingParentFramesWithinPanel):
        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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

12 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

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

        * plugins/win/PluginViewWin.cpp:
        (WebCore::PluginView::bindingInstance):

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

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

        Reviewed by Brady.

        * WebDownload.cpp:
        (WebDownload::cancelForResume):

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

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

        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.

WebKit:

        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.

WebKit/mac:

        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:]):
        Ditto.
        (-[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
        field.
        (-[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

12 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:
        (WebCore::DOMWindow::frameElement):

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

12 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:
        (KJS::Bindings::CInstance::create):
        * bridge/c/c_utility.cpp:
        (KJS::Bindings::convertNPVariantToValue):
        * bridge/jni/jni_instance.cpp:
        (JavaInstance::invokeMethod):
        * bridge/jni/jni_instance.h:
        (KJS::Bindings::JavaInstance::create):
        * bridge/jni/jni_jsobject.cpp:
        (JavaJSObject::convertJObjectToValue):
        * bridge/jni/jni_runtime.cpp:
        (JavaField::valueFromInstance):
        (JavaArray::valueAt):
        * bridge/objc/objc_instance.h:
        (KJS::Bindings::ObjcInstance::create):
        * bridge/objc/objc_utility.mm:
        (KJS::Bindings::convertObjcValueToValue):
        * bridge/qt/qt_instance.cpp:
        (KJS::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp):
        (KJS::Bindings::QtInstance::getQtInstance):
        (KJS::Bindings::QtInstance::getRuntimeObject):
        * bridge/qt/qt_instance.h:
        * bridge/runtime.cpp:
        (KJS::Bindings::Instance::Instance):
        (KJS::Bindings::Instance::createRuntimeObject):
        * bridge/runtime.h:
        * bridge/runtime_object.cpp:
        (RuntimeObjectImp::RuntimeObjectImp):
        * bridge/runtime_object.h:
        * page/Frame.h:
        * page/mac/FrameMac.mm:
        (WebCore::Frame::createScriptInstanceForWidget):
        * page/win/FrameWin.cpp:
        (WebCore::Frame::createScriptInstanceForWidget):
        * plugins/PluginView.h:
        * plugins/win/PluginViewWin.cpp:
        (WebCore::PluginView::bindingInstance):

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

12 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

12 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

12 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

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

        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
        strings.
        * page/inspector/DocumentPanel.js:
        (WebInspector.DOMNodeTreeElement.onattach): Call new
        _makeURLSActivateOnModifiedClick.
        (WebInspector.DOMNodeTreeElement._makeURLsActivateOnModifiedClick):
        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
        selected.
        (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
        editing.
        (WebInspector.DOMNodeTreeElement._startEditing):
          - 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
        recreated.
        * 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

12 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:
        (WebCore::FramePrivate::FramePrivate):

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

12 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:
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
        * dom/Document.cpp:
        (WebCore::Document::recalcStyle):
        * page/Frame.cpp:
        (WebCore::Frame::shouldApplyTextZoom):
        (WebCore::Frame::shouldApplyPageZoom):
        * page/Frame.h:
        * rendering/RenderLayer.cpp:
        (WebCore::RenderLayer::updateLayerPositions):
        (WebCore::RenderLayer::setHasVisibleContent):
        (WebCore::RenderLayer::paintLayer):
        (WebCore::RenderLayer::hitTestLayer):
        * rendering/RenderLayer.h:

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

12 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

12 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

12 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.

        http://bugs.webkit.org/show_bug.cgi?id=17799
        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

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

        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebCore.base.exp:
        * css/CSSStyleSelector.cpp:
        (WebCore::CSSStyleSelector::applyProperty):
        (WebCore::CSSStyleSelector::getComputedSizeFromSpecifiedSize):
        * page/Frame.cpp:
        (WebCore::Frame::zoomFactor):
        (WebCore::Frame::setZoomFactor):
        * page/Frame.h:
        * page/FramePrivate.h:
        * svg/SVGSVGElement.cpp:
        (WebCore::SVGSVGElement::currentScale):
        (WebCore::SVGSVGElement::setCurrentScale):

WebKit/mac:

        Make the zoom factor a float and not a percent.

        Reviewed by antti

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

WebKit/win:

        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebFrame.cpp:
        (WebFrame::setTextSizeMultiplier):

WebKit/wx:

        Make the zoom factor a float and not a percent.

        Reviewed by antti

        * WebView.cpp:
        (wxWebView::IncreaseTextSize):
        (wxWebView::DecreaseTextSize):

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

12 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

12 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

12 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

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

        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:

WebKit/mac:

        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
        win.

        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

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

        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::FontPlatformData):
        (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:
        (WebCore::initFontData):
        (WebCore::pathFromFont):
        (WebCore::SimpleFontData::platformInit):
        (WebCore::SimpleFontData::platformWidthForGlyph):
        * platform/mac/WebCoreSystemInterface.mm:

WebKit/mac:

        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.

WebKitLibraries:

        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

12 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

12 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

12 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

12 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

12 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:
        (WebCore::Document::attach):
        Assert that there is no AX cache (since there is no renderer).

        (WebCore::Document::detach):
        Destroy the AX cache installed on this document.

        (WebCore::Document::clearAXObjectCache):
        New. Destroy the AX cache associated with this document.

        (WebCore::Document::axObjectCache):
        Added some comments.

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

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

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

        * rendering/RenderWidget.cpp:
        (WebCore::RenderWidget::destroy):
        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

12 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

12 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

12 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.

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

        Add Pango font backend.

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

12 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

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

        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.

LayoutTests:

        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

12 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
               http/tests/misc/frame-default-enc-same-domain.html
               fast/encoding/frame-default-enc.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

12 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

12 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

12 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

12 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

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

        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:

WebCore:

        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:

WebKit/win:

        Use PGO to build WebKit.dll.

        Reviewed by Oliver.

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

WebKitLibraries:

        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

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

        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.

WebKit/mac:

        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

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

        - 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
        this.

LayoutTests:

        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

12 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

12 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

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

        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.

WebKit:

        Reviewed by Anders.

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

WebKit/mac:

        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

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

        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.
        (WebCore::setCookies):
        (WebCore::cookies):
        (WebCore::cookiesEnabled):
        * platform/network/win/CookieJarWin.cpp:
        (WebCore::setCookies):
        (WebCore::cookies):
        (WebCore::cookiesEnabled):

WebKit/mac:

        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

12 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.
        (WebCore::setCookies):
        (WebCore::cookies):
        (WebCore::cookiesEnabled):
        * platform/network/win/CookieJarWin.cpp:
        (WebCore::setCookies):
        (WebCore::cookies):
        (WebCore::cookiesEnabled):

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

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

        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
        isDetached().
        * rendering/RenderTextControl.cpp:
        (WebCore::RenderTextControl::visiblePositionForIndex): Changed to use Range::create.
        (WebCore::RenderTextControl::indexForVisiblePosition): Ditto.

WebKit/mac:

        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

12 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

12 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

12 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.

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

        Add libsoup HTTP backend.

        * GNUmakefile.am:
        * platform/network/ResourceHandleInternal.h:
        (WebCore::ResourceHandleInternal::ResourceHandleInternal):
        * platform/network/soup/AuthenticationChallenge.h: Added.
        (WebCore::AuthenticationChallenge::AuthenticationChallenge):
        * platform/network/soup/ResourceError.h: Added.
        (WebCore::ResourceError::ResourceError):
        * platform/network/soup/ResourceHandleSoup.cpp: Added.
        (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
        (WebCore::ResourceHandle::~ResourceHandle):
        (WebCore::dataCallback):
        (WebCore::parseDataUrl):
        (WebCore::ResourceHandle::start):
        (WebCore::ResourceHandle::cancel):
        (WebCore::ResourceHandle::bufferedData):
        (WebCore::ResourceHandle::supportsBufferedData):
        (WebCore::ResourceHandle::setDefersLoading):
        (WebCore::ResourceHandle::loadsBlocked):
        (WebCore::ResourceHandle::willLoadFromCache):
        * platform/network/soup/ResourceRequest.h: Copied from WebCore/platform/network/curl/ResourceRequest.h.
        (WebCore::ResourceRequest::ResourceRequest):
        (WebCore::ResourceRequest::doUpdatePlatformRequest):
        * platform/network/soup/ResourceResponse.h: Added.
        (WebCore::ResourceResponse::ResourceResponse):
        (WebCore::ResourceResponse::setResponseFired):
        (WebCore::ResourceResponse::responseFired):
        (WebCore::ResourceResponse::doUpdateResourceResponse):

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

12 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>
WebCore:

        Fix Qt build.

        * plugins/qt/PluginDataQt.cpp:
        (PluginData::initPlugins)

WebKit/qt:

        Fix the Qt build.

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (FrameLoaderClientQt::CreatePlugin):

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

12 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

12 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>

WebKit/win:

        Reviewed by Adam Roben.

        Enabled WinLauncher as part of normal Windows build.
        http://bugs.webkit.org/show_bug.cgi?id=17715.

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

WebKitTools:

        Reviewed by Adam Roben.

        Enabled WinLauncher as part of normal Windows build.
        http://bugs.webkit.org/show_bug.cgi?id=17715.

        * 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

12 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

12 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
        Windows.
        * 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
        that).
        * loader/FTPDirectoryParser.cpp: Ditto for gmtime_r.

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

12 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

12 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
        position.
        (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
        m_adjustEmbedding.
        (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
        BidiIterator::increment().
        (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
        parameter.
        (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

12 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

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

        This patch makes text nodes editable via double-click.

        Reviewed by Tim.

        * page/inspector/DocumentPanel.js:
        (WebInspector.DOMNodeTreeElement._startEditing):
          - Moved most of this code to _startEditingAttribute
          - Calls _startEditingTextNode or _startEditingAttribute as
            appropriate
        (WebInspector.DOMNodeTreeElement._startEditingAttribute): Added. Code
        came from _startEditing.
        (WebInspector.DOMNodeTreeElement._startEditingTextNode): Added.
        (WebInspector.DOMNodeTreeElement._textNodeEditingCommitted): Added.
        (WebInspector.DOMNodeTreeElement._editingCancelled): Renamed from
        _attributeEditingCancelled.
        * 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

12 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

12 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.

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

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

12 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

12 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

12 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

12 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

12 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

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

        Reviewed by Beth Dakin.

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

        * html/CanvasRenderingContext2D.cpp:
        (WebCore::CanvasRenderingContext2D::getImageData):
        * html/CanvasRenderingContext2D.h:
        * html/CanvasRenderingContext2D.idl:
        * html/HTMLCanvasElement.cpp:
        (WebCore::HTMLCanvasElement::toDataURL):
        * html/HTMLCanvasElement.h:
        * html/HTMLCanvasElement.idl:

LayoutTests:

        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

12 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

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

        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.

LayoutTests:

        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

12 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:
        (WebCore::SVGImage::dataChanged):

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

12 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

12 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
        checkPseudoState.
        (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::containsColonSlashSlash):
        (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

12 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:
        (WebScriptCallFrame::valueForVariable):
        (WebScriptCallFrame::valueByEvaluatingJavaScriptFromString):

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

12 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

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

         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
         everywhere.
         * 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
         whole.

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

12 years ago2008-03-10 Brent Fulgham <bfulgham@gmail.com>
aroben@apple.com [Mon, 10 Mar 2008 23:39:06 +0000 (23:39 +0000)]
2008-03-10  Brent Fulgham  <bfulgham@gmail.com>

        Windows build fix

        Reviewed by Adam.

        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCoreGenerated.make:
        Set the PATH to include Cygwin before running touch.

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

12 years ago Fix 64-bit builds.
ddkilzer@apple.com [Mon, 10 Mar 2008 23:02:43 +0000 (23:02 +0000)]
    Fix 64-bit builds.

        Reviewed by Stephanie.

        WebCore.exp only gets generated once for both 32-bit and 64-bit builds,
        so we must exclude the _NPN symbols when creating WebCore.LP64.exp.

        * WebCore.xcodeproj/project.pbxproj: Reverted build phase shell code to
        r30826 to remove _NPN symbols from 64-bit builds in WebCore.LP64.exp.

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

12 years ago Reviewed by NOBODY.
eric@webkit.org [Mon, 10 Mar 2008 22:57:14 +0000 (22:57 +0000)]
    Reviewed by NOBODY.

        Build fix for JSC on windows.

        * API/JSStringRefCF.cpp:
        (JSStringCreateWithCFString):
        * kjs/function.cpp:
        (KJS::decode):
        * kjs/nodes2string.cpp:
        (KJS::escapeStringForPrettyPrinting):

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

12 years ago No review, build fix only.
eric@webkit.org [Mon, 10 Mar 2008 22:44:33 +0000 (22:44 +0000)]
    No review, build fix only.

        Attempt to fix the windows build?

        * kjs/ustring.h: change unsigned short to UChar

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

12 years ago Reviewed by Darin.
eric@webkit.org [Mon, 10 Mar 2008 22:06:44 +0000 (22:06 +0000)]
    Reviewed by Darin.

        Remove KJS::UChar, use ::UChar instead
        http://bugs.webkit.org/show_bug.cgi?id=17017

        To functional changes, thus no tests.

        * bindings/js/JSCSSStyleDeclarationCustom.cpp:
        (WebCore::hasCSSPropertyNamePrefix):
        (WebCore::cssPropertyName):
        * bindings/js/JSDOMWindowBase.cpp:
        (WebCore::windowProtoFuncAToB):
        (WebCore::windowProtoFuncBToA):
        * bindings/js/JSSVGPODTypeWrapper.h:
        * bindings/js/kjs_proxy.cpp:
        (WebCore::KJSProxy::evaluate):
        * bridge/objc/objc_utility.mm:
        (KJS::Bindings::throwError):
        * dom/Document.cpp:
        (WebCore::Document::parseQualifiedName):
        * platform/text/AtomicString.cpp:
        (WebCore::AtomicString::add):
        * platform/text/String.cpp:
        (WebCore::String::String):
        (WebCore::String::operator Identifier):
        (WebCore::String::operator UString):
        * platform/text/TextCodecICU.cpp:
        (WebCore::TextCodecICU::decode):
        * svg/SVGAnimatedTemplate.h:

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

12 years ago Fix build break caused by r30920.
sfalken@apple.com [Mon, 10 Mar 2008 18:58:59 +0000 (18:58 +0000)]
    Fix build break caused by r30920.

        Serialize remaining dependent builds by adding dependencies.
        Visual Studio per-vcproj parallelization doesn't add a lot of value
        since so many of our builds are dependent - this just enforces that.
        We do our parallelization via pdevenv, which works much better.

        * WebKit.vcproj/WebKit.sln:
        * WebKit.vcproj/WebKit.submit.sln:

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

12 years ago2008-03-10 Xan Lopez <xan@gnome.org>
alp@webkit.org [Mon, 10 Mar 2008 18:25:08 +0000 (18:25 +0000)]
2008-03-10  Xan Lopez  <xan@gnome.org>

        Reviewed by Alp Toker.

        Fix "missing braces" compiler warning.

        * webkit/webkitwebview.cpp:

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

12 years agoWebCore:
darin@apple.com [Mon, 10 Mar 2008 17:37:19 +0000 (17:37 +0000)]
WebCore:

        Reviewed by Sam.

        - eliminate keyboard UI mode method from WebCoreFrameBridge

        * page/ChromeClient.h: Added keyboardUIMode function.
        (WebCore::ChromeClient::keyboardUIMode): Ditto.
        * page/mac/EventHandlerMac.mm:
        (WebCore::EventHandler::tabsToAllControls): Call chrome client function instead
        of bridge function.
        * page/mac/WebCoreFrameBridge.h: Removed keyboardUIMode method, and other unused
        ones.

        * WebCore.xcodeproj/project.pbxproj: Allowed Xcode to change the project.
        Do not try to fight the Xcode.

WebKit/mac:

        Reviewed by Sam.

        - eliminate keyboard UI mode method from WebCoreFrameBridge

        * WebCoreSupport/WebChromeClient.h: Added keyboardUIMode function.
        * WebCoreSupport/WebChromeClient.mm:
        (WebChromeClient::keyboardUIMode): Ditto. Calls WebView.
        * WebCoreSupport/WebFrameBridge.h: Removed unused things, including the
        fields for keyboard UI mode.
        * WebCoreSupport/WebFrameBridge.mm:
        (-[WebFrameBridge dealloc]): Removed unneeded code; eliminated the fini
        method.
        (-[WebFrameBridge finalize]): Ditto.
        * WebView/WebView.mm: Moved the keyboard mode code in here.
        (-[WebView _close]): Remove observer from the distributed notification
        center as well as the normal one.
        (-[WebView _retrieveKeyboardUIModeFromPreferences:]): Added. Code moved
        here from the bridge.
        (-[WebView _keyboardUIMode]): Ditto.
        * WebView/WebViewInternal.h: Added _keyboardUIMode method.

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

12 years ago Reviewed by Beth Dakin.
weinig@apple.com [Mon, 10 Mar 2008 17:36:54 +0000 (17:36 +0000)]
    Reviewed by Beth Dakin.

        Add Tiger specific results for toDataURL-supportedTypes.html as the image
        encoders have slightly changed between releases.

        * platform/mac-tiger/fast/canvas: Added.
        * platform/mac-tiger/fast/canvas/toDataURL-supportedTypes-expected.txt: Added.

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

12 years ago - oops, forgot to save last couple changes from the editor
darin@apple.com [Mon, 10 Mar 2008 17:29:00 +0000 (17:29 +0000)]
    - oops, forgot to save last couple changes from the editor

        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::markDOMObjectWrapper): Tweaked a tiny bit.
        (WebCore::JSDOMWindow::mark): Sorted alphabetically.

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

12 years ago Reviewed by Geoff.
darin@apple.com [Mon, 10 Mar 2008 17:26:42 +0000 (17:26 +0000)]
    Reviewed by Geoff.

        - fix failing regression test (window.navigator is getting garbage
          collected and thus losing its custom properties)

        * bindings/js/JSDOMWindowCustom.cpp:
        (WebCore::markDOMObject): Added helper function.
        (WebCore::JSDOMWindow::mark): Added. Marks the wrappers for all the objects that hang
        off the window object.

        * page/DOMWindow.h:
        (WebCore::DOMWindow::optionalScreen): Added so we can get the Screen object without
        creating it if it's already there.
        (WebCore::DOMWindow::optionalSelection): Ditto.
        (WebCore::DOMWindow::optionalHistory): Ditto.
        (WebCore::DOMWindow::optionalLocationbar): Ditto.
        (WebCore::DOMWindow::optionalMenubar): Ditto.
        (WebCore::DOMWindow::optionalPersonalbar): Ditto.
        (WebCore::DOMWindow::optionalScrollbars): Ditto.
        (WebCore::DOMWindow::optionalStatusbar): Ditto.
        (WebCore::DOMWindow::optionalToolbar): Ditto.
        (WebCore::DOMWindow::optionalConsole): Ditto.
        (WebCore::DOMWindow::optionalNavigator): Ditto.

        * page/DOMWindow.idl: Added the CustomMarkFunction flag. Sorted the flags in
        alphabetical order since there are a lot of them.

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

12 years agoWebCore:
darin@apple.com [Mon, 10 Mar 2008 17:01:00 +0000 (17:01 +0000)]
WebCore:

        Reviewed by Sam.

        - eliminate Java applet methods from WebCoreFrameBridge

        * loader/FrameLoaderClient.h: Added a javaApplet function.
        * page/mac/FrameMac.mm:
        (WebCore::Frame::createScriptInstanceForWidget): Streamlined the code.
        Use the loader client instead of the bridge to get the applet.
        * page/mac/WebCoreFrameBridge.h: Removed the getAppletInView and
        pollForAppletInView methods. Also removed other unused things.

WebKit/mac:

        Reviewed by Sam.

        - eliminate Java applet methods from WebCoreFrameBridge

        * WebCoreSupport/WebChromeClient.mm: Removed unneeded headers and declarations.
        * WebCoreSupport/WebFrameBridge.mm: Ditto. Also removed unneeded methods, including
        the ones that load Java applets.
        * WebCoreSupport/WebFrameLoaderClient.h: Added javaApplet function.
        * WebCoreSupport/WebFrameLoaderClient.mm: Ditto.

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

12 years ago Reviewed and landed by Darin.
darin@apple.com [Mon, 10 Mar 2008 16:33:06 +0000 (16:33 +0000)]
    Reviewed and landed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=17581
        Bug 17581: Use of uninitialized value in string ne at WebKitTools/Scripts/run-webkit-tests line 1576.

        Remove the previous warning which occurs when the --random option is used.

        * Scripts/run-webkit-tests: verify that $component[0] is defined before checking for
        its inequality

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

12 years ago Reviewed by Eric, landed by Darin.
darin@apple.com [Mon, 10 Mar 2008 16:28:55 +0000 (16:28 +0000)]
    Reviewed by Eric, landed by Darin.

        http://bugs.webkit.org/show_bug.cgi?id=16095
        Move GraphicsContextPrivate to its own header file.

        Moves GraphicsContextState and GraphicsContextPrivate to its
        own header

        * WebCore.vcproj/WebCore.vcproj:
        * platform/graphics/GraphicsContext.cpp:
        * platform/graphics/GraphicsContextPrivate.h: Added.
        (WebCore::GraphicsContextState::GraphicsContextState):
        (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):

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

12 years agoWebCore:
darin@apple.com [Mon, 10 Mar 2008 16:25:12 +0000 (16:25 +0000)]
WebCore:

        Reviewed and landed by Darin.

        bug 12182 : XMLHttpRequest should raise SECURITY_ERR for same-origin policy violations

        Removed reference to PERMISSION_DENIED (previous non standard exception) and replaced it
        by DOM exception SECURITY_ERR. Updated XMLHttpRequest::open to raise SECURITY_ERR.

        * bindings/js/kjs_binding.cpp:
        (WebCore::setDOMException): Removed PERMISSION_DENIED code.
        * dom/ExceptionCode.cpp: Added SECURITY_ERR exception.
        * dom/ExceptionCode.h: Ditto.
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::open): Returns SECURITY_ERR now.
        * xml/XMLHttpRequestException.h: Removed PERMISSION_DENIED.

LayoutTests:

        Reviewed and landed by Darin.

        bug 12182 : XMLHttpRequest should raise SECURITY_ERR for same-origin policy violations

        * http/tests/xmlhttprequest/exceptions-expected.txt: Updated results

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

12 years ago Refactor CSS editing code so we can share it with DOM editing
aroben@apple.com [Mon, 10 Mar 2008 16:17:38 +0000 (16:17 +0000)]
    Refactor CSS editing code so we can share it with DOM editing

        Add WebInspector.startEditing, which takes the element to be edited, a
        committedCallback, a cancelledCallback, and a context parameter. This
        function takes care of setting up the element for editing, and calls
        either the cancelledCallback or committedCallback when editing ends.

        Reviewed by Tim.

        * page/inspector/StylesSidebarPane.js:
        (WebInspector.StylePropertyTreeElement.startEditing):
          - Call WebInspector.isBeingEdited and WebInspector.startEditing
          - Removed code now handled by WebInspector.startEditing
        (WebInspector.StylePropertyTreeElement.editingEnded):
          - Renamed from endEditing
          - Removed code now handled by WebInspector.startEditing
        (WebInspector.StylePropertyTreeElement.editingCancelled):
          - Renamed from cancelEditing
          - Changed parameters to match WebInspector.startEditing's
            cancelledCallback
        (WebInspector.StylePropertyTreeElement.editingCommitted):
          - Renamed from commitEditing
          - Changed parameters to match WebInspector.startEditing's
            committedCallback
        * page/inspector/inspector.js:
        (WebInspector.changeFocus): Changed a call to firstParentWithClassName
        to firstParentOrSelfWithClassName so that if the focusable element
        itself is the target it will be recognized. I don't know why this
        change wasn't needed before this.
        (WebInspector.isBeingEdited): Added.
        (WebInspector.startEditing): Added.

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

12 years ago Windows build fix
aroben@apple.com [Mon, 10 Mar 2008 16:17:12 +0000 (16:17 +0000)]
    Windows build fix

        * WebCore.vcproj/WebCore.vcproj: Pick up generated source files out of
        $(WebKitOutputDir) instead of hard-coding WebKitBuild.

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

12 years ago * DerivedSources.make: Merge plug-in-related changes with the new way of...
darin@apple.com [Mon, 10 Mar 2008 16:15:50 +0000 (16:15 +0000)]
    * DerivedSources.make: Merge plug-in-related changes with the new way of handling
        autogenerated DOM classes.

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

12 years ago Reviewed, tweaked and landed by Alexey.
ap@webkit.org [Mon, 10 Mar 2008 15:38:04 +0000 (15:38 +0000)]
    Reviewed, tweaked and landed by Alexey.

        - fix http://bugs.webkit.org/show_bug.cgi?id=17732

        We didn't have a fallback to frame encoding in the case of loading a script via
        changing its src attribute.

        Test: fast/dom/HTMLScriptElement/script-decoding-error-after-setting-src.html

        * html/HTMLScriptElement.cpp:
        (WebCore::HTMLScriptElement::parseMappedAttribute): Use a helper function to get proper
        charset for correct decoding of script content.
        (WebCore::HTMLScriptElement::insertedIntoDocument):
        (WebCore::HTMLScriptElement::scriptCharset): A helper function for getting proper charset
        for the script (as much as can be determined prior to loading it).
        * html/HTMLScriptElement.h:
        * html/HTMLTokenizer.cpp:
        (WebCore::HTMLTokenizer::parseTag): Use a helper function to get proper charset for correct
        decoding of script content.

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

12 years ago2008-03-10 Simon Hausmann <hausmann@webkit.org>
hausmann@webkit.org [Mon, 10 Mar 2008 13:59:37 +0000 (13:59 +0000)]
2008-03-10  Simon Hausmann  <hausmann@webkit.org>

        Reviewed by Lars.

        Fix reference counting of returned MimeType and Plugin objects
        created in the array wrappers.

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