#ifndef ElementRareData_h
#define ElementRareData_h
#include "ClassList.h"
#include "DatasetDOMStringMap.h"
#include "Element.h"
#include "NodeRareData.h"
#include <wtf/OwnPtr.h>
namespace WebCore {
class ShadowRoot;
class ElementRareData : public NodeRareData {
public:
ElementRareData();
virtual ~ElementRareData();
void resetComputedStyle();
using NodeRareData::needsFocusAppearanceUpdateSoonAfterAttach;
using NodeRareData::setNeedsFocusAppearanceUpdateSoonAfterAttach;
IntSize m_minimumSizeForResizing;
RefPtr<RenderStyle> m_computedStyle;
ShadowRoot* m_shadowRoot;
OwnPtr<DatasetDOMStringMap> m_datasetDOMStringMap;
OwnPtr<ClassList> m_classList;
bool m_styleAffectedByEmpty;
#if ENABLE(FULLSCREEN_API)
bool m_containsFullScreenElement;
#endif
};
inline IntSize defaultMinimumSizeForResizing()
{
return IntSize(INT_MAX, INT_MAX);
}
inline ElementRareData::ElementRareData()
: m_minimumSizeForResizing(defaultMinimumSizeForResizing())
, m_shadowRoot(0)
, m_styleAffectedByEmpty(false)
#if ENABLE(FULLSCREEN_API)
, m_containsFullScreenElement(false)
#endif
{
}
inline ElementRareData::~ElementRareData()
{
ASSERT(!m_shadowRoot);
}
inline void ElementRareData::resetComputedStyle()
{
m_computedStyle.clear();
}
}
#endif // ElementRareData_h