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

Unified Diff: mojo/services/public/interfaces/surfaces/quads.mojom

Issue 558343004: Compositor bindings for mojo html_viewer (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mojo_view_manager_surface
Patch Set: Add missing m/s/p/cpp/v_m -> m/s/p/cpp/surfaces dep in GN Created 6 years, 3 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 | « mojo/services/public/interfaces/geometry/geometry.mojom ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: mojo/services/public/interfaces/surfaces/quads.mojom
diff --git a/mojo/services/public/interfaces/surfaces/quads.mojom b/mojo/services/public/interfaces/surfaces/quads.mojom
index be4a90548b8fe615f8dbabee7cd5680e4842a3ca..5b83d6a4042f50f8efc1d1663f520ee7b9ec56cc 100644
--- a/mojo/services/public/interfaces/surfaces/quads.mojom
+++ b/mojo/services/public/interfaces/surfaces/quads.mojom
@@ -18,7 +18,33 @@ struct DebugBorderQuadState {};
struct IoSurfaceContentQuadState {};
-struct RenderPassQuadState {};
+struct RenderPassId {
+ int32 layer_id;
+ int32 index;
+};
+
+struct RenderPassQuadState {
+ RenderPassId render_pass_id;
+
+ // If nonzero, resource id of mask to use when drawing this pass.
+ uint32 mask_resource_id;
+ RectF mask_uv_rect;
+
+ // Post-processing filters, applied to the pixels in the render pass' texture.
+ // TODO(jamesr): Support
+ // FilterOperations filters;
+
+ // The scale from layer space of the root layer of the render pass to
+ // the render pass physical pixels. This scale is applied to the filter
+ // parameters for pixel-moving filters. This scale should include
+ // content-to-target-space scale, and device pixel ratio.
+ PointF filters_scale;
+
+ // Post-processing filters, applied to the pixels showing through the
+ // background of the render pass, from behind it.
+ // TODO(jamesr): Support
+ // FilterOperations background_filters;
+};
struct SolidColorQuadState {
Color color;
@@ -32,14 +58,19 @@ struct SurfaceQuadState {
struct TextureQuadState {
uint32 resource_id;
bool premultiplied_alpha;
- mojo.PointF uv_top_left;
- mojo.PointF uv_bottom_right;
+ PointF uv_top_left;
+ PointF uv_bottom_right;
Color background_color;
float[4] vertex_opacity;
bool flipped;
};
-struct TiledContentQuadState {};
+struct TileQuadState {
+ RectF tex_coord_rect;
+ Size texture_size;
+ bool swizzle_contents;
+ uint32 resource_id;
+};
struct StreamVideoQuadState {};
@@ -64,15 +95,15 @@ struct Quad {
// This rect, after applying the quad_transform(), gives the geometry that
// this quad should draw to. This rect lives in content space.
- mojo.Rect rect;
+ Rect rect;
// This specifies the region of the quad that is opaque. This rect lives in
// content space.
- mojo.Rect opaque_rect;
+ Rect opaque_rect;
// Allows changing the rect that gets drawn to make it smaller. This value
// should be clipped to |rect|. This rect lives in content space.
- mojo.Rect visible_rect;
+ Rect visible_rect;
// Allows changing the rect that gets drawn to make it smaller. This value
// should be clipped to |rect|. This rect lives in content space.
@@ -90,7 +121,7 @@ struct Quad {
SolidColorQuadState? solid_color_quad_state;
SurfaceQuadState? surface_quad_state;
TextureQuadState? texture_quad_state;
- TiledContentQuadState? tiled_content_quad_state;
+ TileQuadState? tile_quad_state;
StreamVideoQuadState? stream_video_quad_state;
YUVVideoQuadState? yuv_video_quad_state;
};
@@ -137,16 +168,16 @@ enum SkXfermode {
struct SharedQuadState {
// Transforms from quad's original content space to its target content space.
- mojo.Transform content_to_target_transform;
+ Transform content_to_target_transform;
// This size lives in the content space for the quad's originating layer.
- mojo.Size content_bounds;
+ Size content_bounds;
// This rect lives in the content space for the quad's originating layer.
- mojo.Rect visible_content_rect;
+ Rect visible_content_rect;
// This rect lives in the target content space.
- mojo.Rect clip_rect;
+ Rect clip_rect;
bool is_clipped;
float opacity;
@@ -156,9 +187,9 @@ struct SharedQuadState {
struct Pass {
int32 id;
- mojo.Rect output_rect;
- mojo.Rect damage_rect;
- mojo.Transform transform_to_root_target;
+ Rect output_rect;
+ Rect damage_rect;
+ Transform transform_to_root_target;
bool has_transparent_background;
Quad[] quads;
SharedQuadState[] shared_quad_states;
« no previous file with comments | « mojo/services/public/interfaces/geometry/geometry.mojom ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698