Changeset 62664 in webkit


Ignore:
Timestamp:
Jul 7, 2010 7:37:21 AM (14 years ago)
Author:
aestes@apple.com
Message:

2010-07-07 Andy Estes <aestes@apple.com>

Reviewed by Adam Barth.

Test that loading of images in <object> tags can be cancelled by
beforeload event handlers.
https://bugs.webkit.org/show_bug.cgi?id=41027
<rdar://problem/8120596>

  • fast/dom/beforeload/image-object-before-load-expected.txt: Added.
  • fast/dom/beforeload/image-object-before-load-innerHTML-expected.txt: Added.
  • fast/dom/beforeload/image-object-before-load-innerHTML.html: Added.
  • fast/dom/beforeload/image-object-before-load.html: Added.

2010-07-07 Andy Estes <aestes@apple.com>

Reviewed by Adam Barth.

Allow a beforeload listener to prevent loading of images in <object> tags.
https://bugs.webkit.org/show_bug.cgi?id=41027
<rdar://problem/8120596>

Tests: fast/dom/beforeload/image-object-before-load-innerHTML.html

fast/dom/beforeload/image-object-before-load.html

  • html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::attach): Do not call RenderImage::setCachedImage() at the end of attach(). Instead, allow this to happen conditionally after beforeload is dispatched.
  • loader/ImageLoader.cpp: (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent): Render fallback content if an object's load was cancelled.
Location:
trunk
Files:
4 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r62662 r62664  
     12010-07-07  Andy Estes  <aestes@apple.com>
     2
     3        Reviewed by Adam Barth.
     4
     5        Test that loading of images in <object> tags can be cancelled by
     6        beforeload event handlers.
     7        https://bugs.webkit.org/show_bug.cgi?id=41027
     8        <rdar://problem/8120596>
     9
     10        * fast/dom/beforeload/image-object-before-load-expected.txt: Added.
     11        * fast/dom/beforeload/image-object-before-load-innerHTML-expected.txt: Added.
     12        * fast/dom/beforeload/image-object-before-load-innerHTML.html: Added.
     13        * fast/dom/beforeload/image-object-before-load.html: Added.
     14
    1152010-07-06  Nikolas Zimmermann  <nzimmermann@rim.com>
    216
  • trunk/WebCore/ChangeLog

    r62662 r62664  
     12010-07-07  Andy Estes  <aestes@apple.com>
     2
     3        Reviewed by Adam Barth.
     4
     5        Allow a beforeload listener to prevent loading of images in <object> tags.
     6        https://bugs.webkit.org/show_bug.cgi?id=41027
     7        <rdar://problem/8120596>
     8
     9        Tests: fast/dom/beforeload/image-object-before-load-innerHTML.html
     10               fast/dom/beforeload/image-object-before-load.html
     11
     12        * html/HTMLObjectElement.cpp:
     13        (WebCore::HTMLObjectElement::attach): Do not call
     14        RenderImage::setCachedImage() at the end of attach(). Instead, allow
     15        this to happen conditionally after beforeload is dispatched.
     16        * loader/ImageLoader.cpp:
     17        (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent): Render fallback
     18        content if an object's load was cancelled.
     19
    1202010-07-06  Nikolas Zimmermann  <nzimmermann@rim.com>
    221
  • trunk/WebCore/html/HTMLObjectElement.cpp

    r61959 r62664  
    155155            m_imageLoader.set(new HTMLImageLoader(this));
    156156        m_imageLoader->updateFromElement();
    157         // updateForElement() may have changed us to use fallback content and called detach() and attach().
    158         if (m_useFallbackContent)
    159             return;
    160 
    161         if (renderer())
    162             toRenderImage(renderer())->setCachedImage(m_imageLoader->image());
    163157    }
    164158}
  • trunk/WebCore/loader/ImageLoader.cpp

    r59250 r62664  
    2828#include "Document.h"
    2929#include "Element.h"
     30#include "HTMLNames.h"
     31#include "HTMLObjectElement.h"
    3032#include "RenderImage.h"
    3133
     
    256258    }
    257259    loadEventSender().cancelEvent(this);
     260   
     261    if (m_element->hasTagName(HTMLNames::objectTag))
     262        static_cast<HTMLObjectElement*>(m_element)->renderFallbackContent();
    258263}
    259264
Note: See TracChangeset for help on using the changeset viewer.