| Index: third_party/WebKit/Source/core/html/HTMLLinkElement.h
|
| diff --git a/third_party/WebKit/Source/core/html/HTMLLinkElement.h b/third_party/WebKit/Source/core/html/HTMLLinkElement.h
|
| index 09e0327155360d2ad0846d0eaff9bacc85fc1bb1..5883a2e018a0e91bef445e0a32bb075694233e29 100644
|
| --- a/third_party/WebKit/Source/core/html/HTMLLinkElement.h
|
| +++ b/third_party/WebKit/Source/core/html/HTMLLinkElement.h
|
| @@ -25,17 +25,12 @@
|
| #define HTMLLinkElement_h
|
|
|
| #include "core/CoreExport.h"
|
| -#include "core/css/CSSStyleSheet.h"
|
| #include "core/dom/DOMTokenList.h"
|
| -#include "core/dom/IconURL.h"
|
| #include "core/dom/IncrementLoadEventDelayCount.h"
|
| -#include "core/dom/StyleEngine.h"
|
| -#include "core/fetch/ResourceOwner.h"
|
| -#include "core/fetch/StyleSheetResource.h"
|
| -#include "core/fetch/StyleSheetResourceClient.h"
|
| #include "core/html/HTMLElement.h"
|
| #include "core/html/LinkRelAttribute.h"
|
| #include "core/html/LinkResource.h"
|
| +#include "core/html/LinkStyle.h"
|
| #include "core/html/RelList.h"
|
| #include "core/loader/LinkLoader.h"
|
| #include "core/loader/LinkLoaderClient.h"
|
| @@ -43,88 +38,9 @@
|
|
|
| namespace blink {
|
|
|
| -class HTMLLinkElement;
|
| class KURL;
|
| class LinkImport;
|
|
|
| -//
|
| -// LinkStyle handles dynamically change-able link resources, which is
|
| -// typically @rel="stylesheet".
|
| -//
|
| -// It could be @rel="shortcut icon" or something else though. Each of
|
| -// types might better be handled by a separate class, but dynamically
|
| -// changing @rel makes it harder to move such a design so we are
|
| -// sticking current way so far.
|
| -//
|
| -class LinkStyle final : public LinkResource, ResourceOwner<StyleSheetResource> {
|
| - USING_GARBAGE_COLLECTED_MIXIN(LinkStyle);
|
| -
|
| - public:
|
| - static LinkStyle* create(HTMLLinkElement* owner);
|
| -
|
| - explicit LinkStyle(HTMLLinkElement* owner);
|
| - ~LinkStyle() override;
|
| -
|
| - LinkResourceType type() const override { return Style; }
|
| - void process() override;
|
| - void ownerRemoved() override;
|
| - bool hasLoaded() const override { return m_loadedSheet; }
|
| - DECLARE_VIRTUAL_TRACE();
|
| -
|
| - void startLoadingDynamicSheet();
|
| - void notifyLoadedSheetAndAllCriticalSubresources(
|
| - Node::LoadedSheetErrorStatus);
|
| - bool sheetLoaded();
|
| -
|
| - void setDisabledState(bool);
|
| - void setSheetTitle(
|
| - const String&,
|
| - StyleEngine::ActiveSheetsUpdate = StyleEngine::DontUpdateActiveSheets);
|
| -
|
| - bool styleSheetIsLoading() const;
|
| - bool hasSheet() const { return m_sheet; }
|
| - bool isDisabled() const { return m_disabledState == Disabled; }
|
| - bool isEnabledViaScript() const {
|
| - return m_disabledState == EnabledViaScript;
|
| - }
|
| - bool isUnset() const { return m_disabledState == Unset; }
|
| -
|
| - CSSStyleSheet* sheet() const { return m_sheet.get(); }
|
| -
|
| - private:
|
| - // From StyleSheetResourceClient
|
| - void setCSSStyleSheet(const String& href,
|
| - const KURL& baseURL,
|
| - const String& charset,
|
| - const CSSStyleSheetResource*) override;
|
| - String debugName() const override { return "LinkStyle"; }
|
| -
|
| - enum DisabledState { Unset, EnabledViaScript, Disabled };
|
| -
|
| - enum PendingSheetType { None, NonBlocking, Blocking };
|
| -
|
| - void clearSheet();
|
| - void addPendingSheet(PendingSheetType);
|
| - void removePendingSheet();
|
| - Document& document();
|
| -
|
| - void setCrossOriginStylesheetStatus(CSSStyleSheet*);
|
| - void setFetchFollowingCORS() {
|
| - DCHECK(!m_fetchFollowingCORS);
|
| - m_fetchFollowingCORS = true;
|
| - }
|
| - void clearFetchFollowingCORS() { m_fetchFollowingCORS = false; }
|
| -
|
| - Member<CSSStyleSheet> m_sheet;
|
| - DisabledState m_disabledState;
|
| - PendingSheetType m_pendingSheetType;
|
| - StyleEngineContext m_styleEngineContext;
|
| - bool m_loading;
|
| - bool m_firedLoad;
|
| - bool m_loadedSheet;
|
| - bool m_fetchFollowingCORS;
|
| -};
|
| -
|
| class CORE_EXPORT HTMLLinkElement final : public HTMLElement,
|
| public LinkLoaderClient,
|
| private DOMTokenListObserver {
|
|
|