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

Unified Diff: cc/ipc/cc_param_traits.cc

Issue 2369793002: WIP: Propagate SurfaceID up window tree hierarchy
Patch Set: Fix input events: EventDispatcher ignores container windows Created 4 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 | « cc/ipc/cc_param_traits.h ('k') | cc/ipc/cc_param_traits_macros.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/ipc/cc_param_traits.cc
diff --git a/cc/ipc/cc_param_traits.cc b/cc/ipc/cc_param_traits.cc
index 6d7eb5291c39a73ff998c1772dd6410112761c67..fdbb431976336c5872513da18a7bdf3a67fd20f2 100644
--- a/cc/ipc/cc_param_traits.cc
+++ b/cc/ipc/cc_param_traits.cc
@@ -568,15 +568,51 @@ void ParamTraits<cc::RenderPass>::Log(const param_type& p, std::string* l) {
l->append("])");
}
+void ParamTraits<cc::FrameSinkId>::GetSize(base::PickleSizer* s,
+ const param_type& p) {
+ GetParamSize(s, p.client_id());
+ GetParamSize(s, p.sink_id());
+}
+
+void ParamTraits<cc::FrameSinkId>::Write(base::Pickle* m, const param_type& p) {
+ WriteParam(m, p.client_id());
+ WriteParam(m, p.sink_id());
+}
+
+bool ParamTraits<cc::FrameSinkId>::Read(const base::Pickle* m,
+ base::PickleIterator* iter,
+ param_type* p) {
+ uint32_t client_id;
+ if (!ReadParam(m, iter, &client_id))
+ return false;
+
+ uint32_t sink_id;
+ if (!ReadParam(m, iter, &sink_id))
+ return false;
+
+ *p = cc::FrameSinkId(client_id, sink_id);
+ return true;
+}
+
+void ParamTraits<cc::FrameSinkId>::Log(const param_type& p, std::string* l) {
+ l->append("FrameSinkId(");
+ LogParam(p.client_id(), l);
+ l->append(", ");
+ LogParam(p.sink_id(), l);
+ l->append(")");
+}
+
void ParamTraits<cc::SurfaceId>::GetSize(base::PickleSizer* s,
const param_type& p) {
GetParamSize(s, p.client_id());
+ GetParamSize(s, p.sink_id());
GetParamSize(s, p.local_id());
GetParamSize(s, p.nonce());
}
void ParamTraits<cc::SurfaceId>::Write(base::Pickle* m, const param_type& p) {
WriteParam(m, p.client_id());
+ WriteParam(m, p.sink_id());
WriteParam(m, p.local_id());
WriteParam(m, p.nonce());
}
@@ -588,6 +624,10 @@ bool ParamTraits<cc::SurfaceId>::Read(const base::Pickle* m,
if (!ReadParam(m, iter, &client_id))
return false;
+ uint32_t sink_id;
+ if (!ReadParam(m, iter, &sink_id))
+ return false;
+
uint32_t local_id;
if (!ReadParam(m, iter, &local_id))
return false;
@@ -596,7 +636,7 @@ bool ParamTraits<cc::SurfaceId>::Read(const base::Pickle* m,
if (!ReadParam(m, iter, &nonce))
return false;
- *p = cc::SurfaceId(client_id, local_id, nonce);
+ *p = cc::SurfaceId(cc::FrameSinkId(client_id, sink_id), local_id, nonce);
return true;
}
@@ -604,6 +644,8 @@ void ParamTraits<cc::SurfaceId>::Log(const param_type& p, std::string* l) {
l->append("SurfaceId(");
LogParam(p.client_id(), l);
l->append(", ");
+ LogParam(p.sink_id(), l);
+ l->append(", ");
LogParam(p.local_id(), l);
l->append(", ");
LogParam(p.nonce(), l);
« no previous file with comments | « cc/ipc/cc_param_traits.h ('k') | cc/ipc/cc_param_traits_macros.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698