-
timothy@apple.com authored
Reviewed by Dave Hyatt. <rdar://problem/5569233> Add the ability to disable author and user CSS styles * WebCore.base.exp: Add the Settings::setAuthorAndUserStylesEnabled symbol. * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): Add a new matchAuthorAndUserStyles parameter. (WebCore::CSSStyleSelector::styleForElement): Check m_matchAuthorAndUserStyles before matching user and author rules. (WebCore::CSSStyleSelector::pseudoStyleForElement): Ditto. (WebCore::CSSStyleSelector::styleRulesForElement): Ditto. * css/CSSStyleSelector.h: Add m_matchAuthorAndUserStyles and new constructor parameter. * dom/Document.cpp: (WebCore::Document::Document): Pass Settings::authorAndUserStylesEnabled to the CSSStyleSelector. (WebCore::Document::recalcStyleSelector): Skip collecting the author stylesheets if Settings::authorAndUserStylesEnabled is false, and pass that to the CSSStyleSelector. * page/Settings.cpp: (WebCore::Settings::Settings): Initialize m_authorAndUserStylesEnabled to true. (WebCore::Settings::setAuthorAndUserStylesEnabled): Recalc style in all the frames when the setting changes. * page/Settings.h: Add m_authorAndUserStylesEnabled. (WebCore::Settings::authorAndUserStylesEnabled): Return m_authorAndUserStylesEnabled. WebKit/mac: Reviewed by Dave Hyatt. <rdar://problem/5569233> Add the ability to disable author and user CSS styles * WebView/WebPreferenceKeysPrivate.h: Define WebKitRespectStandardStyleKeyEquivalentsPreferenceKey. * WebView/WebPreferences.m: (+[WebPreferences initialize]): Default WebKitRespectStandardStyleKeyEquivalentsPreferenceKey to YES. (-[WebPreferences authorAndUserStylesEnabled]): Return the setting's BOOL value. (-[WebPreferences setAuthorAndUserStylesEnabled:]): Set the setting's BOOL value. * WebView/WebPreferencesPrivate.h: Add authorAndUserStylesEnabled and setAuthorAndUserStylesEnabled:. * WebView/WebView.mm: (-[WebView _preferencesChangedNotification:]): Update WebCore::Settings::authorAndUserStylesEnabled. WebKitTools: Reviewed by Dave Hyatt. <rdar://problem/5569233> Add the ability to disable author and user CSS styles Add support for disabling author and user styles for testing. * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj: * DumpRenderTree/LayoutTestController.cpp: (setAuthorAndUserStylesEnabledCallback): (LayoutTestController::staticFunctions): * DumpRenderTree/LayoutTestController.h: * DumpRenderTree/mac/LayoutTestControllerMac.mm: (LayoutTestController::setAuthorAndUserStylesEnabled): * DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setAuthorAndUserStylesEnabled): LayoutTests: Reviewed by Dave Hyatt. Test for: <rdar://problem/5569233> Add the ability to disable author and user CSS styles * fast/css/disabled-author-styles.html: Added. * platform/mac/fast/css/disabled-author-styles-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@28071 268f45cc-cd09-0410-ab3c-d52691b4dbfc
bf423a1b