Document::m_activeNode should be always an Element.
https://bugs.webkit.org/show_bug.cgi?id=106193

Reviewed by Ryosuke Niwa.

Source/WebCore:

r137277 tightened an invariant that assumes that active node is
always an element. But Document::updateHoverActiveState() didn't
respect that assumption. This change forces it.

Test: svg/custom/text-use-click-crash.html

* dom/Document.cpp:
(WebCore::Document::removedLastRef):
(WebCore::Document::detach):
(WebCore::Document::setActiveNode):
(WebCore::Document::activeChainNodeDetached):
(WebCore::Document::updateHoverActiveState):
* dom/Document.h:
(WebCore::Document::activeElement): Renamed from m_activeNode for the clarification.
(Document):

LayoutTests:

* svg/custom/text-use-click-crash-expected.txt: Added.
* svg/custom/text-use-click-crash.html: Added.


git-svn-id: http://svn.webkit.org/repository/webkit/trunk@139029 268f45cc-cd09-0410-ab3c-d52691b4dbfc