Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1520)

Unified Diff: services/viz/hit_test/public/interfaces/hit_test_region_list.mojom

Issue 2938953002: Implement HitTestAggregator (Closed)
Patch Set: correct mojom include directory and improvements based on reviewer comments Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « services/viz/hit_test/public/interfaces/OWNERS ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: services/viz/hit_test/public/interfaces/hit_test_region_list.mojom
diff --git a/services/viz/hit_test/public/interfaces/hit_test_region_list.mojom b/services/viz/hit_test/public/interfaces/hit_test_region_list.mojom
new file mode 100644
index 0000000000000000000000000000000000000000..3c3674382c2fb1add1efb7a6d965460ca835d288
--- /dev/null
+++ b/services/viz/hit_test/public/interfaces/hit_test_region_list.mojom
@@ -0,0 +1,59 @@
+// Copyright 2017 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+module viz.mojom;
+
+import "cc/ipc/surface_id.mojom";
+import "ui/gfx/geometry/mojo/geometry.mojom";
+import "ui/gfx/mojo/transform.mojom";
+
+// Region maps to this surface (me).
+const uint32 kHitTestMine = 0x01;
+
+// Region ignored for hit testing (transparent backgrounds & hover:none).
+const uint32 kHitTestIgnore = 0x02;
+
+// Region maps to child surface (OOPIF).
+const uint32 kHitTestChildSurface = 0x04;
+
+// Irregular boundary - send HitTestRequest to resolve.
+const uint32 kHitTestAsk = 0x08;
+
+// Touch event handler exists.
+const uint32 kHitTestTouchEventHandler = 0x10;
+
+struct HitTestRegion {
+ // Flags to indicate the type of HitTestRegion.
+ uint32 flags;
+
+ // SurfaceId is required when flags = kHitTestChildSurface.
+ cc.mojom.SurfaceId surface_id;
+
+ // The rect of the region in the coordinate space of the embedder.
+ gfx.mojom.Rect rect;
+
+ // The transform of the region. The transform applied to the rect
+ // defines the space occupied by this region in the coordinate space of
+ // the embedder.
+ gfx.mojom.Transform transform;
+};
+
+struct HitTestRegionList {
+ // SurfaceId corresponding to this HitTestData.
+ cc.mojom.SurfaceId surface_id;
+
+ // Flags indicate how to handle events that match no sub-regions.
+ // kHitTestMine routes un-matched events to this surface (opaque).
+ // kHitTestIgnore keeps previous match in the parent (transparent).
+ uint32 flags;
+
+ // The bounds of the surface.
+ gfx.mojom.Rect bounds;
+
+ // The transform applied to all regions in this surface.
+ gfx.mojom.Transform transform;
+
+ // The list of sub-regions in front to back order.
+ array<HitTestRegion> regions;
+};
« no previous file with comments | « services/viz/hit_test/public/interfaces/OWNERS ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698