| Index: Source/core/html/canvas/CanvasRenderingContext2D.h
 | 
| diff --git a/Source/core/html/canvas/CanvasRenderingContext2D.h b/Source/core/html/canvas/CanvasRenderingContext2D.h
 | 
| index 65d883d220c9cbe7adb08e0d0ab6247d479bccee..dac937e6b776ba8c61207d1749527bd24f78392b 100644
 | 
| --- a/Source/core/html/canvas/CanvasRenderingContext2D.h
 | 
| +++ b/Source/core/html/canvas/CanvasRenderingContext2D.h
 | 
| @@ -31,6 +31,7 @@
 | 
|  #include "core/html/canvas/Canvas2DContextAttributes.h"
 | 
|  #include "core/html/canvas/CanvasPathMethods.h"
 | 
|  #include "core/html/canvas/CanvasRenderingContext.h"
 | 
| +#include "core/html/canvas/HitRegion.h"
 | 
|  #include "core/svg/SVGMatrixTearOff.h"
 | 
|  #include "platform/fonts/Font.h"
 | 
|  #include "platform/graphics/Color.h"
 | 
| @@ -227,6 +228,13 @@ public:
 | 
|      void drawFocusIfNeeded(Element*);
 | 
|      void drawFocusIfNeeded(Path2D*, Element*);
 | 
|  
 | 
| +    void addHitRegion(ExceptionState&);
 | 
| +    void addHitRegion(const Dictionary&, ExceptionState&);
 | 
| +    void removeHitRegion(const String& id);
 | 
| +    void clearHitRegions();
 | 
| +    HitRegion* hitRegionAtPoint(const LayoutPoint&);
 | 
| +    unsigned hitRegionsCount() const;
 | 
| +
 | 
|      void loseContext();
 | 
|      void restoreContext();
 | 
|  
 | 
| @@ -333,6 +341,8 @@ private:
 | 
|      bool focusRingCallIsValid(const Path&, Element*);
 | 
|      void drawFocusRing(const Path&);
 | 
|  
 | 
| +    void addHitRegionInternal(const HitRegionOptions&, ExceptionState&);
 | 
| +
 | 
|      void validateStateStack();
 | 
|  
 | 
|      virtual bool is2d() const OVERRIDE { return true; }
 | 
| @@ -344,6 +354,7 @@ private:
 | 
|      virtual blink::WebLayer* platformLayer() const OVERRIDE;
 | 
|  
 | 
|      WillBeHeapVector<OwnPtrWillBeMember<State> > m_stateStack;
 | 
| +    OwnPtrWillBeMember<HitRegionManager> m_hitRegionManager;
 | 
|      bool m_usesCSSCompatibilityParseMode;
 | 
|      bool m_hasAlpha;
 | 
|      bool m_isContextLost;
 | 
| 
 |