WebKit-https.git
14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 10:00:20 +0000 (10:00 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:58:34 +0000 (09:58 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:57:55 +0000 (09:57 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:57:22 +0000 (09:57 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:56:50 +0000 (09:56 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:56:17 +0000 (09:56 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:55:39 +0000 (09:55 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:54:56 +0000 (09:54 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:54:02 +0000 (09:54 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:52:58 +0000 (09:52 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:51:30 +0000 (09:51 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:50:00 +0000 (09:50 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected results for frame changes.
hyatt [Sun, 18 Mar 2007 09:48:16 +0000 (09:48 +0000)]
Land corrected results for frame changes.

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

14 years agoLand corrected XHTML DOM test results for frames changes.
hyatt [Sun, 18 Mar 2007 09:47:13 +0000 (09:47 +0000)]
Land corrected XHTML DOM test results  for frames changes.

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

14 years agoReset frames results.
hyatt [Sun, 18 Mar 2007 09:35:37 +0000 (09:35 +0000)]
Reset frames results.

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

14 years ago Add a 2px border by default to <iframe>s for compatibility with other browsers.
hyatt [Sun, 18 Mar 2007 09:33:37 +0000 (09:33 +0000)]
    Add a 2px border by default to <iframe>s for compatibility with other browsers.

        Reviewed by aroben

        * css/html4.css:

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

14 years agoWebCore:
hyatt [Sun, 18 Mar 2007 09:21:21 +0000 (09:21 +0000)]
WebCore:

        Move frame borders out of WebKit and into WebCore.

        Reviewed by aroben, olliej

        * bridge/mac/FrameViewMac.mm:
        * css/html4.css:
        * html/HTMLFrameSetElement.cpp:
        (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
        (WebCore::HTMLFrameSetElement::mapToEntry):
        (WebCore::HTMLFrameSetElement::parseMappedAttribute):
        (WebCore::HTMLFrameSetElement::attach):
        * html/HTMLFrameSetElement.h:
        (WebCore::HTMLFrameSetElement::hasBorderColor):
        * page/FrameView.cpp:
        (WebCore::FrameViewPrivate::FrameViewPrivate):
        * page/FrameView.h:
        * page/mac/WebCoreFrameBridge.h:
        * platform/graphics/IntRect.h:
        (WebCore::IntRect::topLeft):
        (WebCore::IntRect::topRight):
        (WebCore::IntRect::bottomLeft):
        (WebCore::IntRect::bottomRight):
        * rendering/RenderFrame.cpp:
        (WebCore::RenderFrame::viewCleared):
        * rendering/RenderFrameSet.cpp:
        (WebCore::borderStartEdgeColor):
        (WebCore::borderEndEdgeColor):
        (WebCore::RenderFrameSet::paintColumnBorder):
        (WebCore::RenderFrameSet::paintRowBorder):
        (WebCore::RenderFrameSet::paint):
        * rendering/RenderFrameSet.h:
        * rendering/RenderPartObject.cpp:
        (WebCore::RenderPartObject::viewCleared):
        * rendering/RenderView.cpp:
        (WebCore::RenderView::repaintViewRectangle):

WebKit:

        Move frame borders out of WebKit and into WebCore.

        Reviewed by aroben, olliej

        * WebCoreSupport/WebFrameBridge.mm:
        * WebKit.xcodeproj/project.pbxproj:
        * WebView/WebFrameView.mm:
        (-[WebFrameView drawRect:]):
        (-[WebFrameView setFrameSize:]):
        * WebView/WebFrameViewInternal.h:

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

14 years ago Make onload do an explicit paint when a top-level document is ready (to ensur...
hyatt [Sun, 18 Mar 2007 05:18:13 +0000 (05:18 +0000)]
    Make onload do an explicit paint when a top-level document is ready (to ensure that a first paint always
        happens before any timers set by the onload can fire).

        Reviewed by aroben

        * dom/Document.cpp:
        (WebCore::Document::implicitClose):
        * platform/ScrollView.h:
        * platform/mac/ScrollViewMac.mm:
        (WebCore::ScrollView::update):

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

14 years agoTweaks to prevent timers from starving user input or painting.
hyatt [Sun, 18 Mar 2007 00:54:44 +0000 (00:54 +0000)]
Tweaks to prevent timers from starving user input or painting.

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

14 years ago Reviewed by Beth Dakin.
ggaren [Sun, 18 Mar 2007 00:11:22 +0000 (00:11 +0000)]
    Reviewed by Beth Dakin.

        Fixed <rdar://problem/5070967> REGRESSION (r20211): Repro crash when
        closing View Source window

        I award myself 0 points, and may God have mercy on my soul.

        * bindings/js/kjs_proxy.cpp:
        (WebCore::KJSProxy::~KJSProxy):

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

14 years ago Not reviewed - gdk build fix.
kjk [Sun, 18 Mar 2007 00:04:47 +0000 (00:04 +0000)]
    Not reviewed - gdk build fix.

        * platform/gdk/TemporaryLinkStubs.cpp:
        (Pasteboard::writeURL):

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

14 years ago Fix tiny PLT regression. Don't examine the border/background data for Render...
hyatt [Sat, 17 Mar 2007 23:39:50 +0000 (23:39 +0000)]
    Fix tiny PLT regression.  Don't examine the border/background data for RenderImage when images change
        unless we actually have a border/background.

        Reviewed by Brady

        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::imageChanged):

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

14 years ago Reviewed by Tim Hatcher
sullivan [Sat, 17 Mar 2007 17:21:04 +0000 (17:21 +0000)]
    Reviewed by Tim Hatcher

        Discovered while working on <rdar://problem/5070334> that many WebView calls will crash if called
        after -[WebView close] has executed because _private->page is deferenced after it's been set to 0.
        It might be silly/wrong to call these methods after -close, but obviously it shouldn't crash. Made
        each use of _private->page robust against nil-dereferencing.

        * WebView/WebView.mm:
        (-[WebView _loadBackForwardListFromOtherView:]):
        (-[WebView _updateWebCoreSettingsFromPreferences:]):
        (-[WebView _setDashboardBehavior:to:]):
        (-[WebView _dashboardBehavior:]):
        (-[WebView goBack]):
        (-[WebView goForward]):
        (-[WebView goToBackForwardItem:]):
        (-[WebView canGoBack]):
        (-[WebView canGoForward]):
        (-[WebView setTabKeyCyclesThroughElements:]):
        (-[WebView tabKeyCyclesThroughElements]):
        (-[WebView setEditable:]):

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

14 years agoReviewed by Sam Weinig.
zimmermann [Sat, 17 Mar 2007 15:38:43 +0000 (15:38 +0000)]
Reviewed by Sam Weinig.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=13046 (CSS styles on hover and focus are broken for <use>)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=12838 (SVG <use> CSS styles broken)
Added test: svg/custom/use-css-events.svg

In general this fixes the peepo.co.uk website.

Forgot to pass the actual StyleChange to the recalcStyle() function,
when calling it on the shadow tree root element.

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

14 years agoJavaScriptCore:
thatcher [Sat, 17 Mar 2007 14:49:36 +0000 (14:49 +0000)]
JavaScriptCore:

        Reviewed by Mark Rowe.

        Made Version.xcconfig smarter when building for different configurations.
        Now uses the 522+ OpenSource version for Debug and Release, while using the
        full 522.4 version for Production builds. The system prefix is also computed
        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.

        * Configurations/JavaScriptCore.xcconfig:
        * Configurations/Version.xcconfig:

JavaScriptGlue:

        Reviewed by Mark Rowe.

        Made Version.xcconfig smarter when building for different configurations.
        Now uses the 522+ OpenSource version for Debug and Release, while using the
        full 522.4 version for Production builds. The system prefix is also computed
        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.

        * Configurations/JavaScriptGlue.xcconfig:
        * Configurations/Version.xcconfig:

WebCore:

        Reviewed by Mark Rowe.

        Made Version.xcconfig smarter when building for different configurations.
        Now uses the 522+ OpenSource version for Debug and Release, while using the
        full 522.4 version for Production builds. The system prefix is also computed
        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.

        * Configurations/Version.xcconfig:
        * Configurations/WebCore.xcconfig:

WebKit:

        Reviewed by Mark Rowe.

        Made Version.xcconfig smarter when building for different configurations.
        Now uses the 522+ OpenSource version for Debug and Release, while using the
        full 522.4 version for Production builds. The system prefix is also computed
        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.

        * Configurations/Version.xcconfig:
        * Configurations/WebKit.xcconfig:

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

14 years agoLayoutTests:
antti [Sat, 17 Mar 2007 11:53:55 +0000 (11:53 +0000)]
LayoutTests:

        Reviewed by Adele.

        Test for http://bugs.webkit.org/show_bug.cgi?id=12595
        REGRESSION: Can't add item to cart at lnt.com (JS type error)
        <rdar://problem/4722863>

        Expanded version of Darin's test case.

        * fast/forms/old-names-expected.txt: Added.
        * fast/forms/old-names.html: Added.

WebCore:

        Reviewed by Adele.

        Fix http://bugs.webkit.org/show_bug.cgi?id=12595
        REGRESSION: Can't add item to cart at lnt.com (JS type error)
        <rdar://problem/4722863>

        Emulate Firefox behavior where form elements accessed by a name
        can be accessed with that name later even if the name changes or
        even if element is removed from the document.

        This is loosely based on Darin's earlier patch for the same problem but
        is much less expansive. It takes somewhat different approach to more closely
        mimic Firefox behavior. Includes expanded test case.

        * bindings/js/JSHTMLFormElementCustom.cpp:
        (WebCore::JSHTMLFormElement::canGetItemsForName):
            Use new the HTMLFormElement::getNamedElements() method
        (WebCore::JSHTMLFormElement::nameGetter):
            Use new the HTMLFormElement::getNamedElements() method
        * html/HTMLFormElement.cpp:
        (WebCore::HTMLFormElement::HTMLFormElement):
        (WebCore::HTMLFormElement::~HTMLFormElement):
        (WebCore::HTMLFormElement::elementForAlias):
        (WebCore::HTMLFormElement::addElementAlias):
            Maintain a map of known element aliases
        (WebCore::HTMLFormElement::getNamedElements):
            Get a list of elements matching the name, based both their
            current names and known aliases (earlier names).
            Keep the alias list in sync.
        * html/HTMLFormElement.h:

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

14 years agoLayoutTests:
adele [Sat, 17 Mar 2007 07:40:53 +0000 (07:40 +0000)]
LayoutTests:

        Reviewed by Hyatt.

        Updated test for <rdar://problem/4990050> REGRESSION: onchange gets fired when clicking on a programmatically selected element in a listbox
        http://bugs.webkit.org/show_bug.cgi?id=12725

        * fast/forms/listbox-onchange-expected.txt:
        * fast/forms/listbox-onchange.html:

WebCore:

        Reviewed by Hyatt.

        Fix for <rdar://problem/4990050> REGRESSION: onchange gets fired when clicking on a programmatically selected element in a listbox
        http://bugs.webkit.org/show_bug.cgi?id=12725

        Test: updated fast/forms/listbox-onchange.html

        Added HTMLSelectElement::saveLastSelection that is called before changing a selection that could result
        in onChange being called.  m_lastOnChangeIndex and m_lastOnChangeSelection no longer have to be up-to date all the time,
        they just have to be up-to-date before we execute an action that may trigger onChange.

        * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::setSelectedState): Added.
          The HTMLSelectElement will only set an option's selected state with this method.  This ensures
          that notifyOptionSelected won't get called when the call originates from the select element.
        * html/HTMLOptionElement.h:

        * html/HTMLSelectElement.cpp:
        (WebCore::HTMLSelectElement::deselectItems): Calls setSelectedState.
        (WebCore::HTMLSelectElement::setSelectedIndex): ditto. Don't update the last selection variables here.  Scroll to the new selection.
         The scrolling call used to only be in notifyOptionSelected.  There's no reason we shouldn't scroll when the selection is set through
         the HTMLSelectElement.
        (WebCore::HTMLSelectElement::setValue): Call setSelectedIndex to update all options selected state.
        (WebCore::HTMLSelectElement::restoreState): Call setSelectedState.
        (WebCore::HTMLSelectElement::selectAll): Call saveLastSelection before making the selection, and calling onChange.
        (WebCore::HTMLSelectElement::recalcListItems): Call setSelectedState.  Don't need to save selection here anymore,
         since it will get saved before we call onChange.
        (WebCore::HTMLSelectElement::reset): ditto.
        (WebCore::HTMLSelectElement::dispatchFocusEvent): Added. Call saveLastSelection for menu lists, since onChange can be fired
         on blur.
        (WebCore::HTMLSelectElement::dispatchBlurEvent): Call menuListOnChange.
        (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Call saveLastSelection before showing the popup window.
        (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):  Call saveLastSelection during mousedown (to prepare for an
         onchange during mouseup, or after autoscroll).
        (WebCore::HTMLSelectElement::updateListBoxSelection): Call setSelectedState.

        (WebCore::HTMLSelectElement::menuListOnChange): Added. Compares the m_lastOnChangeIndex to the selectedIndex().
        (WebCore::HTMLSelectElement::listBoxOnChange): Move the m_lastOnChangeSelection creation to saveLastSelection.
        (WebCore::HTMLSelectElement::saveLastSelection): Added. Sets m_lastOnChangeIndex or m_lastOnChangeSelection.
        * html/HTMLSelectElement.h:
        * platform/PopupMenu.h:

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

14 years ago2007-03-16 Oliver Hunt <oliver@apple.com>
oliver [Sat, 17 Mar 2007 04:59:07 +0000 (04:59 +0000)]
2007-03-16  Oliver Hunt  <oliver@apple.com>

        Reviewed by Hyatt.
WebCore:
        The old canSaveAsWebArchive call was necessary as stand alone
        images used to be rendered by ImageDocument.

        Fixes rdar://problem/5061252

        * dom/Clipboard.cpp:
        * dom/Clipboard.h:
        (WebCore::Clipboard::setDragHasStarted):
        * page/DragClient.h:
        (WebCore::DragClient::declareAndWriteDragImage):
        * platform/mac/ClipboardMac.mm:
        (WebCore::ClipboardMac::declareAndWriteDragImage):
WebKit:
        * WebCoreSupport/WebDragClient.h:
        * WebCoreSupport/WebDragClient.mm:
        (WebDragClient::declareAndWriteDragImage):
        * WebKit.xcodeproj/project.pbxproj:
LayoutTests:
        Updating layout test to allow stand alone image to be
        dragged into a content editable div

        * fast/events/standalone-image-drag-to-editable-expected.checksum:
        * fast/events/standalone-image-drag-to-editable-expected.png:
        * fast/events/standalone-image-drag-to-editable-expected.txt:
        * fast/events/standalone-image-drag-to-editable.html:

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

14 years ago Reviewed by Maciej.
andersca [Sat, 17 Mar 2007 01:01:09 +0000 (01:01 +0000)]
    Reviewed by Maciej.

        <rdar://problem/4869095>
        default content type changed for XMLHttpRequest POSTs changed (breaks Flickrator 0.1 widget)

        * xml/xmlhttprequest.cpp:
        (WebCore::XMLHttpRequest::send):

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

14 years ago64-bit build fix.
thatcher [Sat, 17 Mar 2007 00:43:30 +0000 (00:43 +0000)]
64-bit build fix.

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

14 years ago Reviewed by Braveheart
beidson [Sat, 17 Mar 2007 00:36:50 +0000 (00:36 +0000)]
    Reviewed by Braveheart

        Updated layouttest results because I added a window property

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

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

14 years ago Rubberstamped by Tim Hatcher
beidson [Fri, 16 Mar 2007 23:57:13 +0000 (23:57 +0000)]
    Rubberstamped by Tim Hatcher

        Update the hash table header for Window object properties

        * bindings/js/kjs_window.cpp:

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

14 years agoLayoutTests:
beidson [Fri, 16 Mar 2007 23:49:58 +0000 (23:49 +0000)]
LayoutTests:

        Reviewed by Anders

        <rdar://problem/5061826> and
        http://bugs.webkit.org/show_bug.cgi?id=12863
        Implement window.stop()

        * http/tests/misc/window-dot-stop-expected.txt: Added.
        * http/tests/misc/window-dot-stop.html: Added.

WebCore:

        Reviewed by Anders

        <rdar://problem/5061826> and
        http://bugs.webkit.org/show_bug.cgi?id=12863
        Implement window.stop()

        * bindings/js/kjs_window.cpp:
        (KJS::WindowFunc::callAsFunction): Add case Window::Stop
        * bindings/js/kjs_window.h:
        (KJS::Window::): Add "Stop"

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

14 years agoAdding ChangeLog markers.
thatcher [Fri, 16 Mar 2007 23:19:31 +0000 (23:19 +0000)]
Adding ChangeLog markers.

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

14 years agofixed changelog order -- do you need a changelog entry for a changelog fix???
ggaren [Fri, 16 Mar 2007 22:39:27 +0000 (22:39 +0000)]
fixed changelog order -- do you need a changelog entry for a changelog fix???

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

14 years ago Fix for 13084, assertion failure in the Cache. Convert the client list
ggaren [Fri, 16 Mar 2007 22:37:00 +0000 (22:37 +0000)]
    Fix for 13084, assertion failure in the Cache.  Convert the client list
        to a HashCountedSet so that multiple refs and derefs are allowed.

        Fix RenderImage so that if it has the same image used as a background/border
        and as the foreground that it will repaint properly (can be tested using
        border-image and a foreground image).

        Optimize list marker so that it doesn't waste time in the base class method,
        since list markers don't support background or border images.

        Reviewed by andersca

        * ChangeLog:
        * loader/CachedResource.cpp:
        (WebCore::CachedResource::ref):
        * loader/CachedResource.h:
        * loader/CachedResourceClientWalker.cpp:
        (WebCore::CachedResourceClientWalker::CachedResourceClientWalker):
        * loader/CachedResourceClientWalker.h:
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::imageChanged):
        * rendering/RenderListMarker.cpp:
        (WebCore::RenderListMarker::imageChanged):

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

14 years ago Fix for 13084, assertion failure in the Cache. Convert the client list
hyatt [Fri, 16 Mar 2007 22:29:52 +0000 (22:29 +0000)]
    Fix for 13084, assertion failure in the Cache.  Convert the client list
        to a HashCountedSet so that multiple refs and derefs are allowed.

        Fix RenderImage so that if it has the same image used as a background/border
        and as the foreground that it will repaint properly (can be tested using
        border-image and a foreground image).

        Optimize list marker so that it doesn't waste time in the base class method,
        since list markers don't support background or border images.

        Reviewed by andersca

        * ChangeLog:
        * loader/CachedResource.cpp:
        (WebCore::CachedResource::ref):
        * loader/CachedResource.h:
        * loader/CachedResourceClientWalker.cpp:
        (WebCore::CachedResourceClientWalker::CachedResourceClientWalker):
        * loader/CachedResourceClientWalker.h:
        * rendering/RenderImage.cpp:
        (WebCore::RenderImage::imageChanged):
        * rendering/RenderListMarker.cpp:
        (WebCore::RenderListMarker::imageChanged):

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

14 years agoAttempt to fix the 64-bit build.
thatcher [Fri, 16 Mar 2007 22:26:09 +0000 (22:26 +0000)]
Attempt to fix the 64-bit build.

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

14 years ago Reviewed by Anders Carlsson.
ggaren [Fri, 16 Mar 2007 20:10:49 +0000 (20:10 +0000)]
    Reviewed by Anders Carlsson.

        Fixed <rdar://problem/5065399> REGRESSION: leaks in Frame::bindingRootObject
        seen on buildbot

        The problem was that we were initializing the same WebScriptObject twice.
        This caused it to leak its original set of ivars.

        I think some refactoring could prevent this situation from arising in the
        first place, but I'm just adding a check at the call site for now, to do
        the simplest thing.

        * bindings/objc/WebScriptObject.mm:
        (-[WebScriptObject _setImp:originRootObject:rootObject:]): Added ASSERTs
        against multiple calls.

        * bindings/objc/WebScriptObjectPrivate.h: Renamed _initializeWithObjectImp
        to setImp because "init" vs "initialize" was a too subtle indication that
        one was a Cocoa initializer and one was not.

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

14 years ago don't use #import in .cpp files.
lars [Fri, 16 Mar 2007 12:40:01 +0000 (12:40 +0000)]
    don't use #import in .cpp files.

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

14 years ago Fix the Qt build once again.
lars [Fri, 16 Mar 2007 12:36:22 +0000 (12:36 +0000)]
    Fix the Qt build once again.

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

14 years ago2007-03-15 Shrikant Gangoda <shrikant.gangoda@celunite.com>
bdash [Fri, 16 Mar 2007 06:52:20 +0000 (06:52 +0000)]
2007-03-15  Shrikant Gangoda  <shrikant.gangoda@celunite.com>

        Gdk build fix.

        * loader/gdk/FrameLoaderClientGdk.cpp:
        (WebCore::FrameLoaderClientGdk::blockedError):
        * loader/gdk/FrameLoaderClientGdk.h:

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

14 years ago Reviewed by Geoff.
bdakin [Fri, 16 Mar 2007 06:50:16 +0000 (06:50 +0000)]
    Reviewed by Geoff.

        Fix for http://bugs.webkit.org/show_bug.cgi?id=13088 REGRESSION
        (r19761-19779): Copy image no longer includes image address
        (rdar://5067927)

        writeURL() does not need an isImage parameter. Now that it accepts
        the types as a parameter, we can just declare the appropriate image
        types within writeImage and send them to writeURL(). Also,
        declaring the types twice is what broke this.

        * platform/Pasteboard.h:
        * platform/mac/PasteboardMac.mm:
        (WebCore::Pasteboard::writeURL):
        (WebCore::Pasteboard::writeImage):

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

14 years ago Reviewed by Kevin Decker.
adele [Fri, 16 Mar 2007 06:18:08 +0000 (06:18 +0000)]
    Reviewed by Kevin Decker.

        Fix for <rdar://problem/4926179> Text in menulist control should never update if menu is open

        * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
          Only setTextFromOption if the menu isn't visible.

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

14 years ago Reviewed by Oliver
beidson [Fri, 16 Mar 2007 05:25:44 +0000 (05:25 +0000)]
    Reviewed by Oliver

        A few platform specific tweaks

        * platform/cf/RetainPtr.h:
        (WebCore::RetainPtr::releaseRef): Fixed releaseRef to work with CF

        * platform/network/ResourceHandle.h: Added a "releaseRef" style call

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

14 years ago Not reviewed.
mjs [Fri, 16 Mar 2007 05:25:01 +0000 (05:25 +0000)]
    Not reviewed.

        - build fix

        * wtf/TCSystemAlloc.cpp:

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

14 years agoJavaScriptCore:
mjs [Fri, 16 Mar 2007 05:12:59 +0000 (05:12 +0000)]
JavaScriptCore:

        Reviewed by Geoff and Steve.

        - fix some portability issues with TCMalloc.

        * JavaScriptCore.vcproj/WTF/WTF.vcproj:
        * kjs/config.h:
        * wtf/FastMalloc.cpp:
        (WTF::SizeClass):
        (WTF::InitSizeClasses):
        (WTF::TCMalloc_PageHeap::Split):
        (WTF::TCMalloc_PageHeap::RegisterSizeClass):
        (WTF::TCMalloc_Central_FreeList::length):
        (WTF::TCMalloc_ThreadCache::InitTSD):
        (WTF::TCMalloc_ThreadCache::CreateCacheIfNecessary):
        * wtf/TCSpinLock.h:
        * wtf/TCSystemAlloc.cpp:
        (TryVirtualAlloc):
        (TCMalloc_SystemAlloc):

WebCore:

        Reviewed by Geoff and Steve.

        * config.h: Remove unneeded hack.

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

14 years agoLayoutTests:
justing [Fri, 16 Mar 2007 04:22:25 +0000 (04:22 +0000)]
LayoutTests:

        Reviewed by john

        <rdar://problem/5062376>
        REGRESSION: In Mail and Gmail, can't change alignment to text after it has been applied

        * editing/execCommand/5062376-expected.checksum: Added.
        * editing/execCommand/5062376-expected.png: Added.
        * editing/execCommand/5062376-expected.txt: Added.
        * editing/execCommand/5062376.html: Added.

WebCore:

        Reviewed by john

        <rdar://problem/5062376>
        REGRESSION: In Mail and Gmail, can't change alignment to text after it has been applied

        Bring back the remove step in applyBlockStyle.  It's
        necessary because addBlockStyleIfNeeded assumes that
        the properties it adds aren't already on the block that
        it adds them to.

        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::applyBlockStyle):
        Bring back the remove step (added a testcase).
        Don't do the add step if m_removeOnly is true (no testcase
        because there aren't any clients using removeOnly functionality
        to remove styles yet, only styled elemets).
        Moved the code for creating new blocks up one level
        to this function so that we can pass blocks to removeCSSStyle.
        When converting VisiblePositions to indices and vice versa,
        use the highest node in the shadow tree if we're in one as
        the scope (working on a testcase).
        (WebCore::ApplyStyleCommand::addBlockStyle): Moved code to
        applyBlockStyle.
        * editing/ApplyStyleCommand.h:

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

14 years agoLayoutTests:
beidson [Fri, 16 Mar 2007 03:12:27 +0000 (03:12 +0000)]
LayoutTests:

        Reviewed by Adele

        <rdar://problem/4429701>
        Implements a port blocking black list that matches Firefox's

        The layout test attempts to load an image at an invalid domain name on each
        of the black listed ports.  Using dumpResourceLoadCallbacks(), DRT is able
        to see the error codes for each resource.  A successful test shows the blocked
        error for each image load except for the few that are standard or should
        succeed due to exemptions.

        * security/block-test-expected.txt: Added.
        * security/block-test.html: Added.

WebCore:

        Reviewed by Maciej

        <rdar://problem/4429701>
        Implements a port blocking black list that matches Firefox's

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::blockedError): Call through to the client for blockedError
        * loader/FrameLoader.h:

        * loader/FrameLoaderClient.h: Get the "port blocked" error for the current platform

        * loader/ResourceLoader.cpp:
        (WebCore::ResourceLoader::wasBlocked): ResourceHandleClient method to pass on the didFail(error)
        (WebCore::ResourceLoader::blockedError): Following the pattern of "CancelledError()", get the
          error to fail with for the didFail() call
        * loader/ResourceLoader.h:

        * platform/graphics/svg/SVGImageEmptyClients.h:
        (WebCore::SVGEmptyFrameLoaderClient::blockedError): Added stub

        * platform/network/ResourceHandle.cpp:
        (WebCore::ResourceHandle::create): If the port is blocked, create the handle but schedule it for
          deferred failure on a timer
        (WebCore::ResourceHandle::scheduleBlockedFailure): Do the timer scheduling
        (WebCore::ResourceHandle::fireBlockedFailure): Fire the timer here
        (WebCore::ResourceHandle::portAllowed): Implements checking of Mozilla's
        * platform/network/ResourceHandle.h:
        * platform/network/ResourceHandleClient.h:
        (WebCore::ResourceHandleClient::wasBlocked): Virtual for clients to get the "blocked" message

WebKit:

        Reviewed by Maciej

        <rdar://problem/4429701>
        Implements a port blocking black list that matches Firefox's

        * English.lproj/Localizable.strings: Added localizable string for port blocked error code

        * Misc/WebKitErrors.h:
        * Misc/WebKitErrors.m:
        (registerErrors): Add new port blocked error code to WebKitErrorDomain

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::cancelledError): Fixed coding style
        (WebFrameLoaderClient::blockedError): Return a ResourceError with the new custom error code

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

14 years agoYet another build fix.
thatcher [Fri, 16 Mar 2007 01:16:42 +0000 (01:16 +0000)]
Yet another build fix.

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

14 years agoFinally a real build fix.
thatcher [Fri, 16 Mar 2007 00:55:40 +0000 (00:55 +0000)]
Finally a real build fix.

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

14 years agoYet another build fix. Sigh.
thatcher [Fri, 16 Mar 2007 00:37:22 +0000 (00:37 +0000)]
Yet another build fix. Sigh.

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

14 years agoAnother build fix attempt.
thatcher [Fri, 16 Mar 2007 00:25:44 +0000 (00:25 +0000)]
Another build fix attempt.

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

14 years agoAttempt to fix the build.
thatcher [Fri, 16 Mar 2007 00:15:52 +0000 (00:15 +0000)]
Attempt to fix the build.

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

14 years agoBuild fix.
thatcher [Fri, 16 Mar 2007 00:07:06 +0000 (00:07 +0000)]
Build fix.

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

14 years ago Reviewed by Hyatt.
bdakin [Fri, 16 Mar 2007 00:04:39 +0000 (00:04 +0000)]
    Reviewed by Hyatt.

        Fix for <rdar://problem/5065396> REGRESSION: leaks in
        RenderBlock::layoutInlineChildren seen on buildbot

        This leak appeared after http://trac.webkit.org/projects/webkit/
        changeset/20188. This change shifted line boxes around in
        removeChild(). But since removeChild() calls
        setNeedsLayoutAndMinMaxRecalc(), all of the line boxes will be
        removed once we actually lay out anyway. So this patch fixes the
        leak by deleting the line boxes instead of shifting them around.

        * editing/IndentOutdentCommand.cpp:
        (WebCore::IndentOutdentCommand::outdentParagraph): Call into
        updateLayout(). This fixes an assertion I got in editing/
        execCommand/4976800.html This is very similar to the line box fix I
        made recently (http://trac.webkit.org/projects/webkit/changeset/
        20177). We need to update layout before relying on VisiblePositions
        after removing a node.
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::deleteLinesForBlock): New helper function
        since this functionality is needed in three places now.
        (WebCore::RenderBlock::makeChildrenNonInline): Call into new
        deleteLinesForBlock().
        (WebCore::RenderBlock::removeChild): Same.
        * rendering/RenderBlock.h:

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

14 years agoJavaScriptCore:
thatcher [Thu, 15 Mar 2007 23:50:15 +0000 (23:50 +0000)]
JavaScriptCore:

        Reviewed by John.

        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
          each build configuration was factored out into the shared .xcconfig file.
        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).

        * Configurations/Base.xcconfig: Added.
        * Configurations/DebugRelease.xcconfig: Added.
        * Configurations/JavaScriptCore.xcconfig: Added.
        * Configurations/Version.xcconfig: Added.
        * Info.plist:
        * JavaScriptCore.xcodeproj/project.pbxproj:

JavaScriptGlue:

        Reviewed by John.

        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
          each build configuration was factored out into the shared .xcconfig file.
        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).

        * Configurations/Base.xcconfig: Added.
        * Configurations/DebugRelease.xcconfig: Added.
        * Configurations/JavaScriptGlue.xcconfig: Added.
        * Configurations/Version.xcconfig: Added.
        * Info.plist:
        * JavaScriptGlue.xcodeproj/project.pbxproj:

WebCore:

        Reviewed by John.

        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
          each build configuration was factored out into the shared .xcconfig file.
        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).

        * Configurations/Base.xcconfig: Added.
        * Configurations/DebugRelease.xcconfig: Added.
        * Configurations/Version.xcconfig: Added.
        * Configurations/WebCore.xcconfig: Added.
        * Info.plist:
        * WebCore.xcodeproj/project.pbxproj:

WebKit:

        Reviewed by John.

        * Fixes: <rdar://problem/4927747> WebKit's Current Library Version number should match the Info.plist Version
        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
          each build configuration was factored out into the shared .xcconfig file.
        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
        * Make WebKit use the same warning flags as the other projects. This required two casts to be added to fix new warnings.

        * Configurations/Base.xcconfig: Added.
        * Configurations/DebugRelease.xcconfig: Added.
        * Configurations/Version.xcconfig: Added.
        * Configurations/WebKit.xcconfig: Added.
        * Info.plist:
        * Misc/WebKitVersionChecks.h:
        * Plugins/WebBaseNetscapePluginStream.m:
        (-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
        * WebKit.xcodeproj/project.pbxproj:

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

14 years ago Reviewed by Anders.
kdecker [Thu, 15 Mar 2007 21:28:55 +0000 (21:28 +0000)]
    Reviewed by Anders.

        Fixed: <rdar://problem/5001428> stationery background images do not display

        Change 19244 fixed the method -[WebResource _shouldIgnoreWhenUnarchiving], but also broke Mail stationery.

        The problem was that with archivedResourceForURL now fixed, the engine will try to decode the images.  These images wouldn't decode because
        Mail re-encodes and directly manipulates the image data in such a way that prevented WebKit from decoding the image.  Because Mail was giving
        us bad data, the images wouldn't render.  This was never an issue before because archivedResourceForURL (broken) always returned nil, thus the
        engine would never attempt to decode the resource, therefore the responsibility was delegated to Mail's protocol handler, which would do the
        right thing and load the image.

        Since Mail is relying on the fact it can store arbitrary data in WebArchives, I've introduced SPI that acts as a hint for us to ignore certain
        subresources while unarchiving. This SPI is -[WebResource _shouldIgnoreWhenUnarchiving].

        * WebView/WebResource.mm: Addd private ivar shouldIgnoreWhenUnarchiving.
        (-[WebResource _ignoreWhenUnarchiving]): Added.
        (-[WebResource _shouldIgnoreWhenUnarchiving]): Added.
        * WebView/WebResourcePrivate.h: Added two methods to private header.
        * WebView/WebUnarchivingState.m:
        (-[WebUnarchivingState archivedResourceForURL:]): Check if we should ignore the resource.

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

14 years ago Not reviewed - gdk build fixes.
kjk [Thu, 15 Mar 2007 20:20:06 +0000 (20:20 +0000)]
    Not reviewed - gdk build fixes.

        * platform/gdk/EditorClientGdk.cpp:
        (WebCore::EditorClientGdk::handleKeypress):
        * platform/graphics/cairo/ImageSourceCairo.cpp:
        (WebCore::ImageSource::setData):
        * platform/graphics/gdk/ImageGdk.cpp:
        (WebCore::Image::loadPlatformResource):

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

14 years agoLayoutTests:
justing [Thu, 15 Mar 2007 19:12:32 +0000 (19:12 +0000)]
LayoutTests:

        Reviewed by john

        Removed an unnecessary block (one that was fully
        selected but whose markup wasn't needed to preserve
        appearance):
        * editing/pasteboard/paste-text-011-expected.txt:
        Removed unnecessary style spans:
        * editing/pasteboard/merge-end-blockquote-expected.txt:
        Removed unnecessary empty anonymous blocks:
        * editing/execCommand/create-list-with-hr-expected.txt:
        * editing/pasteboard/display-block-on-spans-expected.txt:
        * editing/pasteboard/paste-text-006-expected.txt:
        * editing/pasteboard/paste-table-001-expected.txt:
        * editing/pasteboard/paste-text-013-expected.txt:
        * editing/pasteboard/paste-text-002-expected.txt:
        * editing/pasteboard/paste-list-001-expected.txt:
        * editing/pasteboard/paste-text-005-expected.txt:
        * editing/pasteboard/paste-text-003-expected.txt:
        * editing/pasteboard/paste-text-014-expected.txt:
        * editing/pasteboard/paste-pre-001-expected.txt:
        Now (correctly) includes fully selected root:
        * editing/pasteboard/paste-text-015-expected.checksum:
        * editing/pasteboard/paste-text-015-expected.png:
        * editing/pasteboard/paste-text-015-expected.txt:
        * editing/inserting/insert-3907422-fix-expected.txt:
        * editing/pasteboard/paste-text-004-expected.txt:
        Demonstrates a bug that already existed (we don't inline
        the font styles from the Preference Pane on copy):
        * editing/pasteboard/5027857-expected.checksum:
        * editing/pasteboard/5027857-expected.png:
        * editing/pasteboard/5027857-expected.txt:
        * editing/pasteboard/paste-pre-002-expected.checksum:
        * editing/pasteboard/paste-pre-002-expected.png:
        * editing/pasteboard/paste-pre-002-expected.txt:

WebCore:

        Reviewed by john

        ~2x speed up of 5k rich text paste:
        http://shakespeare.mit.edu/hamlet/full.html

        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::doApply): Remove the top
        level style span if its unnecessary before inserting
        into the document, its faster than doing it after.
        * editing/ReplaceSelectionCommand.h: Exposed
        ReplacementFragment::removeNodePreservingChildren so that
        the style span can be removed using non-undoable removes,
        like the rest of the removes done on the ReplacementFragment.
        * editing/markup.cpp:
        (WebCore::createMarkup): Make the style span the top level
        element, otherwise it's useless.  This also facilitates the
        optimization mentioned above.
        When including markup for a fully selected root, include markup
        for all the nodes beneath that fully selected root, to preserve
        the structure and appearance of the copied markup.  Did this
        by merging with the code for adding markup for descendants of
        special commonAncestorBlocks.

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

14 years ago Rubber-stamped by Adele.
bdakin [Thu, 15 Mar 2007 19:07:15 +0000 (19:07 +0000)]
    Rubber-stamped by Adele.

        Rolling out http://trac.webkit.org/projects/webkit/changeset/20148
        (which is a fix for http://bugs.webkit.org/show_bug.cgi?id=12595
        and rdar://4722863) because it causes a horrible memory-trasher.

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

14 years ago2007-03-16 Shrikant Gangoda <shrikant.gangoda@celunite.com>
bdash [Thu, 15 Mar 2007 13:26:45 +0000 (13:26 +0000)]
2007-03-16  Shrikant Gangoda  <shrikant.gangoda@celunite.com>

        Gdk build fix.

        * kjs/DateMath.cpp:  gettimeofday comes from <sys/time.h> on Linux.

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

14 years ago2007-03-15 Mark Rowe <mrowe@apple.com>
bdash [Thu, 15 Mar 2007 12:15:32 +0000 (12:15 +0000)]
2007-03-15  Mark Rowe  <mrowe@apple.com>

        Reviewed by Antti.

        Fix for <rdar://problem/5065060> ASSERTION FAILURE: newUsername && newPassword
        when submitting an authentication form without password.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::dispatchWillSubmitForm): Don't omit form fields with empty values from the dictionary
        passed to the delegate.

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

14 years ago Added an assert to help catch a bug. Hopefully someone will hit it!
ggaren [Thu, 15 Mar 2007 07:11:45 +0000 (07:11 +0000)]
    Added an assert to help catch a bug. Hopefully someone will hit it!

        * bindings/js/kjs_proxy.cpp:
        (WebCore::KJSProxy::~KJSProxy):

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

14 years ago Reviewed by Dave Hyatt.
andersca [Thu, 15 Mar 2007 06:42:07 +0000 (06:42 +0000)]
    Reviewed by Dave Hyatt.

        Don't add the data twice, it's also done by didReceiveData.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::deliverArchivedResources):

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

14 years ago2007-03-14 Oliver Hunt <oliver@apple.com>
oliver [Thu, 15 Mar 2007 06:30:41 +0000 (06:30 +0000)]
2007-03-14  Oliver Hunt  <oliver@apple.com>

        Reviewed by Adele.

        Fix for rdar://problem/5061737.

        This was a regression from the original Objective-C -> C++ conversion
        for the drag logic.  We don't need to call Range::startNode as we just
        need the document that contains the range.

        * page/DragController.cpp:
        (WebCore::documentFragmentFromDragData):
LayoutTests:
        Layout tests for rdar://problem/5061737

        * editing/pasteboard/drag-image-to-contenteditable-in-iframe-expected.txt: Added.
        * editing/pasteboard/drag-image-to-contenteditable-in-iframe.html: Added.

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

14 years ago Fix segmentation fault when running layout tests.
andersca [Thu, 15 Mar 2007 04:59:32 +0000 (04:59 +0000)]
    Fix segmentation fault when running layout tests.

        Remove bogus check that that I added on purpose to see how good Geoff is at spotting mistakes when reviewing code.
        (Turns out he's not that good!)

        * WebView/WebDocumentLoaderMac.mm:
        (WebDocumentLoaderMac::increaseLoadCount):

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

14 years ago Reviewed by .
kmccullo [Thu, 15 Mar 2007 04:09:07 +0000 (04:09 +0000)]
    Reviewed by .

        Silly wrapping change for testing a post-commit hook change.

        * contact.html:

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

14 years ago Reviewed by Geoff.
andersca [Thu, 15 Mar 2007 04:00:06 +0000 (04:00 +0000)]
    Reviewed by Geoff.

        http://bugs.webkit.org/show_bug.cgi?id=13076
        REGRESSION: Multiple loading tabs cause assertion in WebDocumentLoaderMac::decreaseLoadCount(unsigned long)

        Store the identifier set in the document loader since identifiers are per-webview and not global.

        * WebView/WebDocumentLoaderMac.h:
        * WebView/WebDocumentLoaderMac.mm:
        (WebDocumentLoaderMac::WebDocumentLoaderMac):
        (WebDocumentLoaderMac::attachToFrame):
        (WebDocumentLoaderMac::increaseLoadCount):
        (WebDocumentLoaderMac::decreaseLoadCount):

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

14 years ago Reviewed by .
kmccullo [Thu, 15 Mar 2007 03:42:03 +0000 (03:42 +0000)]
    Reviewed by .

        - Fixed one more build breakage

        * kjs/date_object.cpp:
        (KJS::formatLocaleDate):

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

14 years ago Reviewed by .
kmccullo [Thu, 15 Mar 2007 03:23:56 +0000 (03:23 +0000)]
    Reviewed by .

        - Fixed a build breakage.

        * kjs/DateMath.cpp:
        * kjs/date_object.cpp:
        (KJS::formatLocaleDate):
        (KJS::DateObjectImp::construct):

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

14 years agoJavaScriptCore:
kmccullo [Thu, 15 Mar 2007 02:21:47 +0000 (02:21 +0000)]
JavaScriptCore:

        Reviewed by Geoff.

        - rdar://problem/5045720
        - DST changes in US affect JavaScript date calculations (12975)
        This fix was to ensure we properly test for the new changes to DST in the US.
        Also this fixes when we apply DST, now we correctly map most past years to current
        DST rules.  We still have a small issue with years before 1900 or after 2100.
        rdar://problem/5055038

        * kjs/DateMath.cpp: Fix DST to match spec better.
        (KJS::getCurrentUTCTime):
        (KJS::mimimumYearForDST):
        (KJS::maximumYearForDST):
        (KJS::equivalentYearForDST):
        (KJS::getDSTOffset):
        * kjs/DateMath.h: Consolodated common funtionality.
        * kjs/date_object.cpp: Consolodated common functionality.
        (KJS::formatLocaleDate):
        (KJS::DateObjectImp::construct):
        * tests/mozilla/ecma/jsref.js: Added functions for finding the correct days when DST starts and ends.
        * tests/mozilla/ecma/shell.js: Added back in the old DST functions for ease of merging with mozilla if needed.
        * tests/mozilla/ecma_2/jsref.js: Added functions for finding the correct days when DST starts and ends.
        * tests/mozilla/ecma_3/Date/shell.js: Added functions for finding the correct days when DST starts and ends.
        * tests/mozilla/expected.html: Updated to show all date tests passing.

LayoutTests:

        Reviewed by Geoff.

        - rdar://problem/5045720
        - DST changes in US affect JavaScript date calculations (12975)
        Changed layout tests to properly check for the new changes to DST in the
        US. Also these now test that equivalent years return the same results for DST.

        * fast/js/date-DST-time-cusps-expected.txt:
        * fast/js/date-big-setdate-expected.txt:
        * fast/js/resources/date-DST-time-cusps.js:
        * fast/js/resources/date-big-setdate.js:

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

14 years agoLayoutTests:
weinig [Thu, 15 Mar 2007 01:36:18 +0000 (01:36 +0000)]
LayoutTests:

        Reviewed by Hyatt.

        - test for://bugs.webkit.org/show_bug.cgi?id=13071
          REGRESSION: Plain text files no longer wrap lines longer than the width of the browser window

        * fast/loader/resources/text-document-wrapping.txt: Added.
        * fast/loader/text-document-wrapping-expected.checksum: Added.
        * fast/loader/text-document-wrapping-expected.png: Added.
        * fast/loader/text-document-wrapping-expected.txt: Added.
        * fast/loader/text-document-wrapping.html: Added.

WebCore:

        Reviewed by Hyatt.

        - http://bugs.webkit.org/show_bug.cgi?id=13071
          REGRESSION: Plain text files no longer wrap lines longer than the width of the browser window

        Test: fast/loader/text-document-wrapping.html

        * loader/TextDocument.cpp:
        (WebCore::TextTokenizer::write): Specified word-wrap:break-word for the <pre> element.

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

14 years ago Reviewed by Maciej.
harrison [Thu, 15 Mar 2007 01:22:40 +0000 (01:22 +0000)]
    Reviewed by Maciej.

        <rdar://problem/5009625> REGRESSION: Aperture 1.5: Can't select entire line of text after correcting a misspelled word

        * WebCoreSupport/WebEditorClient.mm:
        (WebEditorClient::respondToChangedSelection):
        * WebCoreSupport/WebFrameBridge.mm:
        Provide compatibility by not sending WebViewDidChangeSelectionNotification if
        the app is Aperture and is linked against WebKit 2.0.

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

14 years agoLayoutTests:
weinig [Thu, 15 Mar 2007 01:22:19 +0000 (01:22 +0000)]
LayoutTests:

        Reviewed by Hyatt.

        - test for http://bugs.webkit.org/show_bug.cgi?id=13072
          REGRESSION (r15617): white-space: pre-wrap breaks off the last character of a wide word

        * fast/text/whitespace/pre-wrap-last-char-expected.checksum: Added.
        * fast/text/whitespace/pre-wrap-last-char-expected.png: Added.
        * fast/text/whitespace/pre-wrap-last-char-expected.txt: Added.
        * fast/text/whitespace/pre-wrap-last-char.html: Added.

WebCore:

        Reviewed by Hyatt.

        - fix http://bugs.webkit.org/show_bug.cgi?id=13072
          REGRESSION (r15617): white-space: pre-wrap breaks off the last character of a wide word

        Test: fast/text/whitespace/pre-wrap-last-char.html

        * rendering/bidi.cpp:
        (WebCore::RenderBlock::findNextLineBreak): Undid the change from r15617.

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

14 years ago Add asserts to help catch double refs and double derefs of CachedResources.
hyatt [Thu, 15 Mar 2007 00:28:21 +0000 (00:28 +0000)]
    Add asserts to help catch double refs and double derefs of CachedResources.

        Reviewed by mjs

        * loader/CachedResource.cpp:
        (WebCore::CachedResource::ref):
        (WebCore::CachedResource::deref):

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

14 years ago Rubber-stamped by Hyatt.
aliceli1 [Wed, 14 Mar 2007 23:40:14 +0000 (23:40 +0000)]
    Rubber-stamped by Hyatt.

        Adding null check to prevent the crash that happens on 2nd run of iBench HTML load test

        * loader/icon/IconDataCache.cpp:
        (WebCore::IconDataCache::writeToDatabase):

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

14 years ago Reviewed by Adam.
adele [Wed, 14 Mar 2007 21:47:47 +0000 (21:47 +0000)]
    Reviewed by Adam.

        Fix for <rdar://problem/5062898> REGRESSION: autocomplete window in text fields doesn't come up

        When we moved the initialization of a bunch of variables in the HTMLFormElement constructor, m_autocomplete accidently got initialized to false.

        * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::HTMLFormElement):

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

14 years ago2007-03-14 Steve Falkenburg <sfalken@apple.com>
sfalken [Wed, 14 Mar 2007 21:45:15 +0000 (21:45 +0000)]
2007-03-14  Steve Falkenburg  <sfalken@apple.com>

        Reviewed by Adam.

        Added missing null check in case this is called on a subframe
        that hasn't started loading.

        * page/Frame.cpp:
        (WebCore::Frame::setMarkedTextMatchesAreHighlighted): Check for a null document.

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

14 years ago Reviewed by Geoff.
andersca [Wed, 14 Mar 2007 21:43:07 +0000 (21:43 +0000)]
    Reviewed by Geoff.

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

        World leaks seen on Leopard after opening then closing tab (13050)

        Add a hash set to prevent the load count to be increased twice for the same resource.

        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::dispatchWillSendRequest):
        (WebFrameLoaderClient::dispatchDidFinishLoading):
        (WebFrameLoaderClient::dispatchDidFailLoading):
        * WebView/WebDocumentLoaderMac.h:
        * WebView/WebDocumentLoaderMac.mm:
        (loadingResources):
        (WebDocumentLoaderMac::increaseLoadCount):
        (WebDocumentLoaderMac::decreaseLoadCount):

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

14 years ago Reviewed by Geoff.
antti [Wed, 14 Mar 2007 20:38:28 +0000 (20:38 +0000)]
    Reviewed by Geoff.

        Fix http://bugs.webkit.org/show_bug.cgi?id=13060
        REGRESSION: Repro ASSERT failure in Cache::adjustSize running layout tests
        <rdar://5060208>

        Script evaluation may have dereffed the CachedScript object already, causing double deref and
        eventually m_liveResourcesSize underflow.

        * html/HTMLScriptElement.cpp:
        (WebCore::HTMLScriptElement::notifyFinished):

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

14 years agoWebCore:
adele [Wed, 14 Mar 2007 20:32:53 +0000 (20:32 +0000)]
WebCore:

        Reviewed by Darin.

        Added InsertTab, InsertBacktab, InsertLineBreak, and InsertNewline to the editing command table.
        Added Event parameter to execCommand, and to all of the enabled and exec functions.  Right now,
        the event is only used by the newly added commands.  But in the future, many (and possibly all) of
        these editing commands will need to consider the event so they are applied to the correct selection.

        * WebCore.exp:
        * editing/Editor.cpp:
        (WebCore::execCopy):
        (WebCore::execCut):
        (WebCore::execDelete):
        (WebCore::execBackwardDelete):
        (WebCore::execForwardDelete):
        (WebCore::execMoveBackward):
        (WebCore::execMoveBackwardAndModifySelection):
        (WebCore::execMoveUpByPageAndModifyCaret):
        (WebCore::execMoveDown):
        (WebCore::execMoveDownAndModifySelection):
        (WebCore::execMoveForward):
        (WebCore::execMoveForwardAndModifySelection):
        (WebCore::execMoveDownByPageAndModifyCaret):
        (WebCore::execMoveLeft):
        (WebCore::execMoveLeftAndModifySelection):
        (WebCore::execMoveRight):
        (WebCore::execMoveRightAndModifySelection):
        (WebCore::execMoveToBeginningOfDocument):
        (WebCore::execMoveToBeginningOfDocumentAndModifySelection):
        (WebCore::execMoveToBeginningOfSentence):
        (WebCore::execMoveToBeginningOfSentenceAndModifySelection):
        (WebCore::execMoveToBeginningOfLine):
        (WebCore::execMoveToBeginningOfLineAndModifySelection):
        (WebCore::execMoveToBeginningOfParagraph):
        (WebCore::execMoveToBeginningOfParagraphAndModifySelection):
        (WebCore::execMoveToEndOfDocument):
        (WebCore::execMoveToEndOfDocumentAndModifySelection):
        (WebCore::execMoveToEndOfSentence):
        (WebCore::execMoveToEndOfSentenceAndModifySelection):
        (WebCore::execMoveToEndOfLine):
        (WebCore::execMoveToEndOfLineAndModifySelection):
        (WebCore::execMoveToEndOfParagraph):
        (WebCore::execMoveToEndOfParagraphAndModifySelection):
        (WebCore::execMoveParagraphBackwardAndModifySelection):
        (WebCore::execMoveParagraphForwardAndModifySelection):
        (WebCore::execMoveUp):
        (WebCore::execMoveUpAndModifySelection):
        (WebCore::execMoveWordBackward):
        (WebCore::execMoveWordBackwardAndModifySelection):
        (WebCore::execMoveWordForward):
        (WebCore::execMoveWordForwardAndModifySelection):
        (WebCore::execMoveWordLeft):
        (WebCore::execMoveWordLeftAndModifySelection):
        (WebCore::execMoveWordRight):
        (WebCore::execMoveWordRightAndModifySelection):
        (WebCore::execPaste):
        (WebCore::execSelectAll):
        (WebCore::execToggleBold):
        (WebCore::execToggleItalic):
        (WebCore::execRedo):
        (WebCore::execUndo):
        (WebCore::execInsertTab):
        (WebCore::execInsertBacktab):
        (WebCore::execInsertNewline):
        (WebCore::execInsertLineBreak):
        (WebCore::enabled):
        (WebCore::canPaste):
        (WebCore::hasEditableSelection):
        (WebCore::hasEditableRangeSelection):
        (WebCore::hasRangeSelection):
        (WebCore::hasRichlyEditableSelection):
        (WebCore::canRedo):
        (WebCore::canUndo):
        (WebCore::CommandEntry::):
        (WebCore::Editor::toggleBold):

        (WebCore::Editor::execCommand): Added optional event parameter.
        (WebCore::Editor::insertText): Added.  Calls handleTextInputEvent.
        (WebCore::Editor::insertTextWithoutSendingTextEvent): Renamed from insertText.
         Performs the actual insertion without dispatching any event.
        * editing/Editor.h:
        * page/EventHandler.cpp: (WebCore::EventHandler::defaultTextInputEventHandler):
          Call insertTextWithoutSendingTextEvent.

WebKit:

        Reviewed by Darin.

        Removed _insertTextWithEvent, _insertNewlineWithEvent, and _insertTextWithEvent.
        Instead, use execCommand and insertText methods on the Editor.

        * WebView/WebHTMLView.mm:
        (-[WebHTMLView insertTab:]):
        (-[WebHTMLView insertBacktab:]):
        (-[WebHTMLView insertNewline:]):
        (-[WebHTMLView insertLineBreak:]):
        (-[WebHTMLView insertParagraphSeparator:]):
        (-[WebHTMLView insertNewlineIgnoringFieldEditor:]):
        (-[WebHTMLView insertTabIgnoringFieldEditor:]):
        (-[WebHTMLView yank:]):
        (-[WebHTMLView yankAndSelect:]):
        (-[WebHTMLView doCommandBySelector:]):
        (-[WebHTMLView insertText:]):

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

14 years agoI forgot to update this expected result in my previous checkin.
justing [Wed, 14 Mar 2007 20:06:14 +0000 (20:06 +0000)]
I forgot to update this expected result in my previous checkin.

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

14 years agoLayoutTests:
justing [Wed, 14 Mar 2007 19:32:53 +0000 (19:32 +0000)]
LayoutTests:

        Reviewed by darin

        Removed unnecessary style spans:
        * editing/deleting/delete-3857753-fix-expected.txt:
        * editing/execCommand/4916541-expected.txt:
        * editing/execCommand/create-list-from-range-selection-expected.txt:
        * editing/execCommand/format-block-expected.txt:
        * editing/execCommand/format-block-from-range-selection-expected.txt:
        * editing/execCommand/format-block-with-braces-expected.txt:
        * editing/execCommand/indent-selection-expected.txt:
        * editing/execCommand/remove-list-from-range-selection-expected.txt:
        * editing/execCommand/remove-list-items-expected.txt:
        * editing/execCommand/switch-list-type-expected.txt:
        * editing/pasteboard/4861080-expected.txt:
        * editing/pasteboard/display-block-on-spans-expected.txt:
        * editing/pasteboard/drag-drop-modifies-page-expected.txt:
        * editing/pasteboard/paste-table-002-expected.txt:
        * editing/pasteboard/paste-text-001-expected.txt:
        * editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
        * editing/pasteboard/paste-text-at-tabspan-002-expected.txt:
        * editing/pasteboard/paste-text-at-tabspan-003-expected.txt:
        * editing/style/smoosh-styles-001-expected.txt:
        * editing/style/smoosh-styles-002-expected.txt:

WebCore:

        Reviewed by darin

        ~3x speedup pasting 5k lines of rich text:
        http://shakespeare.mit.edu/hamlet/full.html
        ~2x speedup pasting 10k lines of plain text

        * css/CSSComputedStyleDeclaration.cpp:
        (WebCore::computedStyle): Added for convenience.
        * css/CSSComputedStyleDeclaration.h:
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
        The code that pushed down the top level style span had
        a bug in it that made it do unnecessary work.  Instead of
        fixing the bug I removed the code because it was used to
        help see more redundancies in second level style spans, but
        createMarkup now *only* creates a top level style span.
        Only remove redundant styles from style spans and only remove
        unstyled elements if they are style spans.  FF doesn't
        remove redundant styles from elements, or remove redundant
        font tags on copy/paste.  We could offer this functionality
        through a separate "cleanup" command.
        * editing/markup.cpp:
        (WebCore::createMarkup): Only add markup for ancestors of
        lastClosed if we're including markup for acommonAncestorBlock
        (we do this for commonAncestorBlocks like tables and lists),
        otherwise it's unnecessary/redundant.

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

14 years ago Reviewed by Ada.
andersca [Wed, 14 Mar 2007 18:50:46 +0000 (18:50 +0000)]
    Reviewed by Ada.

        Make sure to call ResourceLoader::didReceiveData to ensure that there's a shared buffer with the resource
        data, since SubresourceLoaderClients now make use of that buffer.

        * loader/SubresourceLoader.cpp:
        (WebCore::SubresourceLoader::didReceiveData):

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

14 years ago Get the size from the shared buffer.
andersca [Wed, 14 Mar 2007 17:38:51 +0000 (17:38 +0000)]
    Get the size from the shared buffer.

        * platform/graphics/cg/ImageSourceCG.cpp:
        (WebCore::ImageSource::setData):
        * platform/graphics/cg/PDFDocumentImage.cpp:
        (WebCore::PDFDocumentImage::dataChanged):

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

14 years agoLayoutTests:
weinig [Wed, 14 Mar 2007 17:25:04 +0000 (17:25 +0000)]
LayoutTests:

        Reviewed by Hyatt, thumbs up by Darin.

        - test for http://bugs.webkit.org/show_bug.cgi?id=12782
          Reproducible crash in BidiContext::deref

        * fast/dynamic/anonymous-block-orphaned-lines-expected.checksum: Added.
        * fast/dynamic/anonymous-block-orphaned-lines-expected.png: Added.
        * fast/dynamic/anonymous-block-orphaned-lines-expected.txt: Added.
        * fast/dynamic/anonymous-block-orphaned-lines.html: Added.

WebCore:

        Reviewed by Hyatt, thumbs up by Darin.

        - fix http://bugs.webkit.org/show_bug.cgi?id=12782
          Reproducible crash in BidiContext::deref

        Test: fast/dynamic/anonymous-block-orphaned-lines.html

        * rendering/InlineBox.cpp:
        (WebCore::InlineBox::root): Added an assertion that we return a root inline box.
        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::removeChild): Added code to adopt the line boxes of
        anonymous blocks being destroyed instead of leaving them orphaned, which
        is what caused this crash. The boxes will be deleted on the next layout, but
        this ensures consistency in the mean time.

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

14 years ago Reviewed by Antti.
lars [Wed, 14 Mar 2007 13:38:49 +0000 (13:38 +0000)]
    Reviewed by Antti.

        Fix the Qt build.
        Add a getter to SharedBuffer that returns a reference to the internal
        Vector to avoid an extra copy of the data.

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

14 years agoLayoutTests:
antti [Wed, 14 Mar 2007 11:37:21 +0000 (11:37 +0000)]
LayoutTests:

        Reviewed by Mitz.

        Test case for <rdar://problem/5058774>
        REGRESSION: In Mail, caret appears oversized when typing in a To Do note

        * editing/style/highlight-expected.checksum: Added.
        * editing/style/highlight-expected.png: Added.
        * editing/style/highlight-expected.txt: Added.
        * editing/style/highlight.html: Added.

WebCore:

        Reviewed by Mitz.

        Fix <rdar://problem/5058774>
        REGRESSION: In Mail, caret appears oversized when typing in a To Do note

        Horizontal and vertical were switched. Was regression from
        http://trac.webkit.org/projects/webkit/changeset/20103

        * rendering/RootInlineBox.cpp:
        (WebCore::RootInlineBox::addHighlightOverflow):

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

14 years ago Tweak the data() functions of stylesheets and scripts to be internally consis...
hyatt [Wed, 14 Mar 2007 11:02:56 +0000 (11:02 +0000)]
    Tweak the data() functions of stylesheets and scripts to be internally consistent.

        * loader/CachedCSSStyleSheet.cpp:
        (WebCore::CachedCSSStyleSheet::data):
        * loader/CachedScript.cpp:
        (WebCore::CachedScript::data):
        * loader/CachedXSLStyleSheet.cpp:
        (WebCore::CachedXSLStyleSheet::data):

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

14 years ago Fix Radar 5050688.
hyatt [Wed, 14 Mar 2007 09:20:47 +0000 (09:20 +0000)]
    Fix Radar 5050688.

        For large animated GIFs, destroy and recreate the source for every animation frame.  This keeps
        the memory consumption down while giant images are animating.

        Reviewed by andersca

        * platform/graphics/BitmapImage.cpp:
        (WebCore::BitmapImage::BitmapImage):
        (WebCore::BitmapImage::destroyDecodedData):
        (WebCore::BitmapImage::dataChanged):
        (WebCore::BitmapImage::advanceAnimation):
        * platform/graphics/BitmapImage.h:

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

14 years ago Make sure to use CFDataCreateWithBytesNoCopy where we can.
hyatt [Wed, 14 Mar 2007 08:49:55 +0000 (08:49 +0000)]
    Make sure to use CFDataCreateWithBytesNoCopy where we can.

        Reviewed by andersca

        * platform/graphics/cg/ImageSourceCG.cpp:
        (WebCore::ImageSource::setData):
        * platform/graphics/cg/PDFDocumentImage.cpp:
        (WebCore::PDFDocumentImage::dataChanged):

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

14 years agoWebCore:
hyatt [Wed, 14 Mar 2007 08:07:59 +0000 (08:07 +0000)]
WebCore:

        Fix for bugzilla bug 13050 and also radar p1 5050645.

        This patch reworks resource loading to avoid having redundant buffers in the icon database and in cached
        images in the WebCore cache.  It also avoids overcopying in top-level image documents and in the icon
        database.

        There is now only one SharedBuffer for a resource and everybody observes that buffer now instead of ever
        making their own.  Even ImageIO uses the SharedBuffer while decoding.

        The page in 13050 dropped from 145mb down to 45mb of memory use with this change for a stunning savings
        of 100mb.

        Reviewed by olliej, mjs

        * WebCore.exp:
        * loader/CachedCSSStyleSheet.cpp:
        (WebCore::CachedCSSStyleSheet::data):
        * loader/CachedCSSStyleSheet.h:
        * loader/CachedImage.cpp:
        (WebCore::CachedImage::data):
        * loader/CachedImage.h:
        * loader/CachedResource.cpp:
        (WebCore::CachedResource::CachedResource):
        (WebCore::CachedResource::~CachedResource):
        * loader/CachedResource.h:
        (WebCore::CachedResource::data):
        * loader/CachedScript.cpp:
        (WebCore::CachedScript::data):
        * loader/CachedScript.h:
        * loader/CachedXSLStyleSheet.cpp:
        (WebCore::CachedXSLStyleSheet::data):
        * loader/CachedXSLStyleSheet.h:
        * loader/DocLoader.cpp:
        (WebCore::DocLoader::checkCacheObjectStatus):
        * loader/ImageDocument.cpp:
        (WebCore::ImageTokenizer::writeRawData):
        (WebCore::ImageTokenizer::finish):
        * loader/icon/IconDataCache.cpp:
        (WebCore::IconDataCache::setImageData):
        (WebCore::IconDataCache::writeToDatabase):
        * loader/icon/IconDataCache.h:
        * loader/icon/IconDatabase.cpp:
        (WebCore::IconDatabase::imageDataForIconURL):
        (WebCore::IconDatabase::iconForPageURL):
        (WebCore::IconDatabase::setIconDataForIconURL):
        (WebCore::IconDatabase::setHaveNoIconForIconURL):
        (WebCore::IconDatabase::imageDataForIconURLQuery):
        * loader/icon/IconDatabase.h:
        * loader/icon/IconLoader.cpp:
        (WebCore::IconLoader::startLoading):
        (WebCore::IconLoader::didReceiveResponse):
        (WebCore::IconLoader::didReceiveData):
        (WebCore::IconLoader::didFail):
        (WebCore::IconLoader::finishLoading):
        (WebCore::IconLoader::clearLoadingState):
        * loader/icon/IconLoader.h:
        * loader/icon/SQLStatement.cpp:
        (WebCore::SQLStatement::getColumnBlobAsVector):
        (WebCore::SQLStatement::isExpired):
        * loader/icon/SQLStatement.h:
        * loader/loader.cpp:
        (WebCore::Loader::didFinishLoading):
        (WebCore::Loader::didReceiveData):
        * page/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge getData:andResponse:forURL:]):
        (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
        * platform/SharedBuffer.h:
        (WebCore::SharedBuffer::isEmpty):
        * platform/graphics/BitmapImage.cpp:
        (WebCore::BitmapImage::destroyDecodedData):
        (WebCore::BitmapImage::dataChanged):
        * platform/graphics/BitmapImage.h:
        * platform/graphics/Image.cpp:
        (WebCore::Image::setData):
        * platform/graphics/Image.h:
        (WebCore::Image::dataChanged):
        (WebCore::Image::data):
        * platform/graphics/ImageSource.h:
        * platform/graphics/cg/ImageSourceCG.cpp:
        (WebCore::ImageSource::setData):
        * platform/graphics/cg/PDFDocumentImage.cpp:
        (WebCore::PDFDocumentImage::dataChanged):
        * platform/graphics/cg/PDFDocumentImage.h:
        * platform/graphics/mac/ImageMac.mm:
        (WebCore::Image::loadPlatformResource):
        * platform/graphics/svg/SVGImage.cpp:
        (WebCore::SVGImage::setData):
        * platform/mac/PasteboardMac.mm:
        (WebCore::fileWrapperForImage):

WebKit:

        Fixes to ensure that the resource loader's shared buffer can always be used.

        Reviewed by olliej, mjs

        * Misc/WebIconDatabase.mm:
        (-[WebIconDatabase _convertToWebCoreFormat]):
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::deliverArchivedResources):

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

14 years agoLayoutTests:
justing [Wed, 14 Mar 2007 05:37:27 +0000 (05:37 +0000)]
LayoutTests:

        Reviewed by darin

        <rdar://problem/5046875>
        Gmail Editor: Applying alignment to selected text in message also applies alignment to signature

        Added:
        * editing/style/5046875-1-expected.checksum: Added.
        * editing/style/5046875-1-expected.png: Added.
        * editing/style/5046875-1-expected.txt: Added.
        * editing/style/5046875-1.html: Added.
        * editing/style/5046875-2-expected.checksum: Added.
        * editing/style/5046875-2-expected.png: Added.
        * editing/style/5046875-2-expected.txt: Added.
        * editing/style/5046875-2.html: Added.
        moveParagraphs doesn't move unnecessary brs:
        * editing/style/create-block-for-style-002-expected.txt:
        * editing/style/create-block-for-style-004-expected.txt:
        * editing/style/create-block-for-style-001-expected.txt:
        * editing/style/create-block-for-style-009-expected.txt:
        * editing/style/create-block-for-style-010-expected.txt:
        moveParagraphs clears out unrendered text during the move:
        * editing/style/create-block-for-style-011-expected.txt:
        * editing/style/create-block-for-style-007-expected.txt:
        * editing/style/create-block-for-style-012-expected.txt:

WebCore:

        Reviewed by darin

        <rdar://problem/5046875>
        Gmail Editor: Applying alignment to selected text in message also applies alignment to signature

        * editing/ApplyStyleCommand.cpp:
        (WebCore::ApplyStyleCommand::doApply): Don't call applyBlockStyle unless
        there is a block style to apply.
        (WebCore::ApplyStyleCommand::applyBlockStyle): Don't do the remove step.
        It was unnecessary and removed properties from blocks that could contain
        content outside the range being operated on (added a testcase).
        (WebCore::ApplyStyleCommand::addBlockStyleIfNeeded): Used an early return
        instead of if-nesting.
        * editing/ApplyStyleCommand.h:
        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
        Return the new block, if one was created.  Use moveParagraphs to move
        paragraphs into the new block, instead of moving nodes.  The old code moved
        too much (added a testcase).
        * editing/CompositeEditCommand.h:

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

14 years ago2007-03-13 Oliver Hunt <oliver@apple.com>
oliver [Wed, 14 Mar 2007 05:00:07 +0000 (05:00 +0000)]
2007-03-13  Oliver Hunt  <oliver@apple.com>

        Reviewed by Brady.
WebCore:
        To fix <rdar://problem/5044366> we now pass a NSString
        representation of the URL extracted with _web_originalDataAsString
        instead of relying on [NSURL absoluteString] in the bridge

        * page/mac/WebCoreFrameBridge.h:
        * page/mac/WebCoreFrameBridge.mm:
        (-[WebCoreFrameBridge getData:andResponse:forURL:]):
WebKit:
        Modify subresourceForURL to take NSString argument
        so we can avoid [NSURL absoluteString]

        * WebView/WebDataSource.mm:
        (-[WebDataSource subresourceForURL:]):
LayoutTests:
        Test for <rdar://problem/5044366> make sure we can create
        a WebArchive from a page with a partially decoded url.

        * webarchive/archive-with-unencoded-url-expected.txt: Added.
        * webarchive/archive-with-unencoded-url.html: Added.

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

14 years ago Rubberstamped by Alice
beidson [Wed, 14 Mar 2007 04:44:17 +0000 (04:44 +0000)]
    Rubberstamped by Alice

        Meant to be part of my previous checkin... pruning unused code from WebKit

        * WebView/WebFrame.mm: Removed _canCachePage
        * WebView/WebFrameInternal.h: Ditto

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

14 years ago Reviewed by Anders
beidson [Wed, 14 Mar 2007 03:59:08 +0000 (03:59 +0000)]
    Reviewed by Anders

        <rdar://problem/5048818> - REGRESSION: Incompletely loaded resources being saved to the object cache

        Due to a subtle change in loader behavior back in 10904, we would stop all loaders before calling
        didFail() on them in the Cache loader.  As a result, we basically cleared all of the Subresource Loaders
        out of the Cache loader before more properly failing them as errored out.  The result?  Partially loaded
        resources being cached.

        Since Loader::didFail() both calls error() on the object *and* removes the loader, the solution is to call
        didFail() for all cancelled loaders instead of *only* removing them from the set of active loaders.

        In addition, pages that didn't completely load were being saved to the back/forward cache.  To fix that,
        I added a null check on the DocumentLoader's error to see if the page ended in an error, or did indeed
        completely load.

        Note that the layout test for this - if possible - will require other enhancements including possibly adding
        support for window.stop().  That task is documented in <rdar://problem/5061826>

        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::provisionalLoadStarted): Fixed a few bugs relating to my original BFCache rewrite to
          more perfectly restore the original behavior - including only caching HTML documents via the
          m_client->canCachePage() call
        (WebCore::FrameLoader::canCachePage): Don't make the call to m_client->canCachePage() as that serves a different
          purpose
          - Check the mainDocumentError to see if the load ended in error as a further criteria in determining the
          cachability of a page

        * loader/loader.cpp:
        (WebCore::Loader::cancelRequests): Call didFail(cancelledError()) instead of just removing the loaders from the
          loaders-in-progress set.  This adds the effect of properly cleaning up the cached object.

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

14 years agoWebCore:
bdakin [Wed, 14 Mar 2007 03:56:43 +0000 (03:56 +0000)]
WebCore:
        Rendering part reviewed by Hyatt. Editing part consulted with and
        rubber stamped by Justin and Harrison.

        Fix for <rdar://problem/5025925> A hang occurs in Safari when
        attempting to print page at http://www.pcadvisor.co.uk

        * rendering/RenderBlock.cpp:
        (WebCore::RenderBlock::makeChildrenNonInline):
        RenderBlock::makeChildrenNonInline() takes a block's inline
        children and turns them into block children. If the children had
        line boxes, those boxes were being leaked. In the layout test I
        added with the change (and at pcadvisor.co.uk during printing)
        children were being made non-inline, and then they were being made
        inline again. This meant that some of the children ended up
        pointing to totally stale line boxes that are normally just leaked.
        This caused an infinite loop in RenderFlow::destroy(). This patch
        simply deletes everyone's line boxes in
        RenderBlock::makeChildrenNonInline()

        * editing/InsertParagraphSeparatorCommand.cpp:
        (WebCore::InsertParagraphSeparatorCommand::doApply): The other part
        of this fix is that I added a call to updateLayout in
        InsertParagraphSeparatorCommand::doApply(). One layout test
        (editing/spelling/spelling.html) was changed by my patch to
        RenderBlock. doApply() inserts a node into the render tree. In at
        least one case in spelling.html, that caused some line boxes to be
        deleted. Back in doApply() this meant that the RenderTree was out-
        of-date, and we mistakenly thought we were at the end of the
        paragraph. This caused us to insert a RenderBR() at the end of the
        tree instead of an empty RenderText(). No one seems to know exactly
        why we insert either, or if the change is necessarily a problem. It
        is clear, though, that the RenderTree in doApply() is out-of-date
        after inserting the node and deleting some line boxes, so it seems
        prudent to call into updateLayout().

LayoutTests:
        Reviewed by Hyatt.

        Test for <rdar://problem/5025925> A hang occurs in Safari when
        attempting to print page at http://www.pcadvisor.co.uk

        * fast/block/float/nestedAnonymousBlocks-expected.checksum: Added.
        * fast/block/float/nestedAnonymousBlocks-expected.png: Added.
        * fast/block/float/nestedAnonymousBlocks-expected.txt: Added.
        * fast/block/float/nestedAnonymousBlocks.html: Added.

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

14 years ago Reviewed by Anders.
aroben [Wed, 14 Mar 2007 02:37:57 +0000 (02:37 +0000)]
    Reviewed by Anders.

        * platform/FontData.h: Added m_isSystemFont parameter to match NSFont.

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

14 years ago <rdar://problem/5031181> cntl-k at end of paragraph adds nothing to the kill...
harrison [Wed, 14 Mar 2007 00:39:53 +0000 (00:39 +0000)]
    <rdar://problem/5031181> cntl-k at end of paragraph adds nothing to the kill ring
        <rdar://problem/5031189> REGRESSION: cntl-y yanks only the most recently killed content

        Updated results.

        * editing/deleting/delete-to-end-of-paragraph-expected.checksum:
        * editing/deleting/delete-to-end-of-paragraph-expected.txt:

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