Index: Source/core/dom/Element.h |
diff --git a/Source/core/dom/Element.h b/Source/core/dom/Element.h |
index 8136281da8dc93da17bacc4be952a70105514f63..530c3abea4b1d0cd572573266ae7736743f01af7 100644 |
--- a/Source/core/dom/Element.h |
+++ b/Source/core/dom/Element.h |
@@ -375,6 +375,7 @@ public: |
bool isFocusable() const; |
virtual bool isKeyboardFocusable() const; |
virtual bool isMouseFocusable() const; |
+ virtual void willCallDefaultEventHandler(const Event&) OVERRIDE FINAL; |
virtual void dispatchFocusEvent(Element* oldFocusedElement, FocusType); |
virtual void dispatchBlurEvent(Element* newFocusedElement); |
void dispatchFocusInEvent(const AtomicString& eventType, Element* oldFocusedElement); |
@@ -530,6 +531,10 @@ protected: |
// e.g., HTMLOptionElement. |
virtual bool rendererIsFocusable() const; |
+ // These methods are overridden by subclasses whose default focus appearance should not remain hidden on mouse focus. |
+ virtual bool wasFocusedByMouse() const { return false; } |
+ virtual void setWasFocusedByMouse(bool) { } |
+ |
// classAttributeChanged() exists to share code between |
// parseAttribute (called via setAttribute()) and |
// svgAttributeChanged (called when element.className.baseValue is set) |