Skip to content
  • tony@chromium.org's avatar
    REGRESSION(r135082): Restore the ability to insert author level style sheets from script · 9769f72f
    tony@chromium.org authored
    https://bugs.webkit.org/show_bug.cgi?id=104042
    
    Reviewed by Antti Koivisto.
    
    .:
    
    Update exports for Internals.cpp.
    
    * Source/autotools/symbols.filter:
    
    Source/WebCore:
    
    Add DocumentStyleSheetCollection::addAuthorSheet so embedders can allow scripts
    to insert author level styles. Expose the method to window.interals for testing.
    
    Test: userscripts/insert-stylesheets.html
    
    * WebCore.exp.in: Update exports for Internals.cpp.
    * WebCore.order: Update exports for Internals.cpp.
    * dom/DocumentStyleSheetCollection.cpp:
    (WebCore::DocumentStyleSheetCollection::~DocumentStyleSheetCollection):
    (WebCore::DocumentStyleSheetCollection::addAuthorSheet): Add the stylesheet and force a style recalc.
    (WebCore::DocumentStyleSheetCollection::updateActiveStyleSheets): Include author level styles.
    (WebCore::DocumentStyleSheetCollection::reportMemoryUsage): Include author styles.
    * dom/DocumentStyleSheetCollection.h:
    (WebCore::DocumentStyleSheetCollection::documentAuthorStyleSheets): Accessor.
    (DocumentStyleSheetCollection): Keep track of author styles added by script.
    * testing/Internals.cpp:
    (WebCore::Internals::insertAuthorCSS): Testing addAuthorSheet.
    (WebCore::Internals::insertUserCSS): Testing addUserSheet.
    * testing/Internals.h:
    * testing/Internals.idl: Add addAuthorSheet and addUserSheet.
    
    Source/WebKit/chromium:
    
    * src/WebDocument.cpp:
    (WebKit::WebDocument::insertUserStyleSheet): Use addAuthorSheet if an author level script is requested.
    
    Source/WebKit2:
    
    Update exports for Internals.cpp.
    
    * win/WebKit2.def.in:
    
    LayoutTests:
    
    Add a test that makes sure that an author level style is set.
    
    * userscripts/insert-stylesheets-expected.txt: Added.
    * userscripts/insert-stylesheets.html: Added.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@136878 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    9769f72f