diff options
author | lfg <lfg@chromium.org> | 2016-01-26 18:14:31 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-01-27 02:15:32 +0000 |
commit | e6119aac120294a5132703363801033bdad6b2f2 (patch) | |
tree | cc99994119599cd60793fe7b2bc5585c3a4e2131 /cc/surfaces | |
parent | 6819225896ab68d93c87622a7541385ba3bebe10 (diff) | |
download | chromium_src-e6119aac120294a5132703363801033bdad6b2f2.zip chromium_src-e6119aac120294a5132703363801033bdad6b2f2.tar.gz chromium_src-e6119aac120294a5132703363801033bdad6b2f2.tar.bz2 |
Handle pointer-events: none in browser process hittesting.
This change adds one HittestData structure per surface and a HittestDelegate in RenderWidgetHostInputEventRouter that can reject surfaces based on the HittestData.
BUG=491334
CQ_INCLUDE_TRYBOTS=tryserver.blink:linux_blink_rel
Review URL: https://codereview.chromium.org/1489913003
Cr-Commit-Position: refs/heads/master@{#371691}
Diffstat (limited to 'cc/surfaces')
-rw-r--r-- | cc/surfaces/surface_hittest_delegate.h | 4 | ||||
-rw-r--r-- | cc/surfaces/surface_id.h | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/cc/surfaces/surface_hittest_delegate.h b/cc/surfaces/surface_hittest_delegate.h index 1f0fbf9..59095f8 100644 --- a/cc/surfaces/surface_hittest_delegate.h +++ b/cc/surfaces/surface_hittest_delegate.h @@ -5,6 +5,10 @@ #ifndef CC_SURFACES_SURFACE_HITTEST_DELEGATE_H_ #define CC_SURFACES_SURFACE_HITTEST_DELEGATE_H_ +namespace gfx { +class Point; +} // namespace gfx + namespace cc { class SurfaceDrawQuad; diff --git a/cc/surfaces/surface_id.h b/cc/surfaces/surface_id.h index 0ade6ab..f43759c 100644 --- a/cc/surfaces/surface_id.h +++ b/cc/surfaces/surface_id.h @@ -8,6 +8,8 @@ #include <stddef.h> #include <stdint.h> +#include <functional> + #include "base/containers/hash_tables.h" namespace cc { @@ -33,6 +35,12 @@ inline bool operator<(const SurfaceId& a, const SurfaceId& b) { return a.id < b.id; } +struct SurfaceIdHash { + size_t operator()(const SurfaceId& key) const { + return std::hash<uint64_t>()(key.id); + } +}; + } // namespace cc namespace BASE_HASH_NAMESPACE { |