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

Side by Side Diff: mojo/dart/packages/mojo_services/lib/mojo/ui/view_manager.mojom.dart

Issue 1949233002: Create a RegisterViewAssociate method in ViewManager (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: one more compile fix Created 4 years, 7 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 library view_manager_mojom; 5 library view_manager_mojom;
6 import 'dart:async'; 6 import 'dart:async';
7 import 'package:mojo/bindings.dart' as bindings; 7 import 'package:mojo/bindings.dart' as bindings;
8 import 'package:mojo/core.dart' as core; 8 import 'package:mojo/core.dart' as core;
9 import 'package:mojo/mojo/bindings/types/service_describer.mojom.dart' as servic e_describer; 9 import 'package:mojo/mojo/bindings/types/service_describer.mojom.dart' as servic e_describer;
10 import 'package:mojo_services/mojo/ui/view_associates.mojom.dart' as view_associ ates_mojom;
10 import 'package:mojo_services/mojo/ui/view_token.mojom.dart' as view_token_mojom ; 11 import 'package:mojo_services/mojo/ui/view_token.mojom.dart' as view_token_mojom ;
11 import 'package:mojo_services/mojo/ui/view_trees.mojom.dart' as view_trees_mojom ; 12 import 'package:mojo_services/mojo/ui/view_trees.mojom.dart' as view_trees_mojom ;
12 import 'package:mojo_services/mojo/ui/views.mojom.dart' as views_mojom; 13 import 'package:mojo_services/mojo/ui/views.mojom.dart' as views_mojom;
13 const int kLabelMaxLength = 32; 14 const int kLabelMaxLength = 32;
14 15
15 16
16 17
17 class _ViewManagerCreateViewParams extends bindings.Struct { 18 class _ViewManagerCreateViewParams extends bindings.Struct {
18 static const List<bindings.StructDataHeader> kVersions = const [ 19 static const List<bindings.StructDataHeader> kVersions = const [
19 const bindings.StructDataHeader(32, 0) 20 const bindings.StructDataHeader(32, 0)
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after
213 "viewTreeListener: $viewTreeListener" ", " 214 "viewTreeListener: $viewTreeListener" ", "
214 "label: $label" ")"; 215 "label: $label" ")";
215 } 216 }
216 217
217 Map toJson() { 218 Map toJson() {
218 throw new bindings.MojoCodecError( 219 throw new bindings.MojoCodecError(
219 'Object containing handles cannot be encoded to JSON.'); 220 'Object containing handles cannot be encoded to JSON.');
220 } 221 }
221 } 222 }
222 223
224
225 class _ViewManagerRegisterViewAssociateParams extends bindings.Struct {
226 static const List<bindings.StructDataHeader> kVersions = const [
227 const bindings.StructDataHeader(32, 0)
228 ];
229 Object viewAssociate = null;
230 Object viewAssociateOwner = null;
231 String label = null;
232
233 _ViewManagerRegisterViewAssociateParams() : super(kVersions.last.size);
234
235 static _ViewManagerRegisterViewAssociateParams deserialize(bindings.Message me ssage) {
236 var decoder = new bindings.Decoder(message);
237 var result = decode(decoder);
238 if (decoder.excessHandles != null) {
239 decoder.excessHandles.forEach((h) => h.close());
240 }
241 return result;
242 }
243
244 static _ViewManagerRegisterViewAssociateParams decode(bindings.Decoder decoder 0) {
245 if (decoder0 == null) {
246 return null;
247 }
248 _ViewManagerRegisterViewAssociateParams result = new _ViewManagerRegisterVie wAssociateParams();
249
250 var mainDataHeader = decoder0.decodeStructDataHeader();
251 if (mainDataHeader.version <= kVersions.last.version) {
252 // Scan in reverse order to optimize for more recent versions.
253 for (int i = kVersions.length - 1; i >= 0; --i) {
254 if (mainDataHeader.version >= kVersions[i].version) {
255 if (mainDataHeader.size == kVersions[i].size) {
256 // Found a match.
257 break;
258 }
259 throw new bindings.MojoCodecError(
260 'Header size doesn\'t correspond to known version size.');
261 }
262 }
263 } else if (mainDataHeader.size < kVersions.last.size) {
264 throw new bindings.MojoCodecError(
265 'Message newer than the last known version cannot be shorter than '
266 'required by the last known version.');
267 }
268 if (mainDataHeader.version >= 0) {
269
270 result.viewAssociate = decoder0.decodeServiceInterface(8, false, view_asso ciates_mojom.ViewAssociateProxy.newFromEndpoint);
271 }
272 if (mainDataHeader.version >= 0) {
273
274 result.viewAssociateOwner = decoder0.decodeInterfaceRequest(16, false, vie w_associates_mojom.ViewAssociateOwnerStub.newFromEndpoint);
275 }
276 if (mainDataHeader.version >= 0) {
277
278 result.label = decoder0.decodeString(24, true);
279 }
280 return result;
281 }
282
283 void encode(bindings.Encoder encoder) {
284 var encoder0 = encoder.getStructEncoderAtOffset(kVersions.last);
285 try {
286 encoder0.encodeInterface(viewAssociate, 8, false);
287 } on bindings.MojoCodecError catch(e) {
288 e.message = "Error encountered while encoding field "
289 "viewAssociate of struct _ViewManagerRegisterViewAssociateParams: $e";
290 rethrow;
291 }
292 try {
293 encoder0.encodeInterfaceRequest(viewAssociateOwner, 16, false);
294 } on bindings.MojoCodecError catch(e) {
295 e.message = "Error encountered while encoding field "
296 "viewAssociateOwner of struct _ViewManagerRegisterViewAssociateParams: $e";
297 rethrow;
298 }
299 try {
300 encoder0.encodeString(label, 24, true);
301 } on bindings.MojoCodecError catch(e) {
302 e.message = "Error encountered while encoding field "
303 "label of struct _ViewManagerRegisterViewAssociateParams: $e";
304 rethrow;
305 }
306 }
307
308 String toString() {
309 return "_ViewManagerRegisterViewAssociateParams("
310 "viewAssociate: $viewAssociate" ", "
311 "viewAssociateOwner: $viewAssociateOwner" ", "
312 "label: $label" ")";
313 }
314
315 Map toJson() {
316 throw new bindings.MojoCodecError(
317 'Object containing handles cannot be encoded to JSON.');
318 }
319 }
320
321
322 class _ViewManagerFinishedRegisteringViewAssociatesParams extends bindings.Struc t {
323 static const List<bindings.StructDataHeader> kVersions = const [
324 const bindings.StructDataHeader(8, 0)
325 ];
326
327 _ViewManagerFinishedRegisteringViewAssociatesParams() : super(kVersions.last.s ize);
328
329 static _ViewManagerFinishedRegisteringViewAssociatesParams deserialize(binding s.Message message) {
330 var decoder = new bindings.Decoder(message);
331 var result = decode(decoder);
332 if (decoder.excessHandles != null) {
333 decoder.excessHandles.forEach((h) => h.close());
334 }
335 return result;
336 }
337
338 static _ViewManagerFinishedRegisteringViewAssociatesParams decode(bindings.Dec oder decoder0) {
339 if (decoder0 == null) {
340 return null;
341 }
342 _ViewManagerFinishedRegisteringViewAssociatesParams result = new _ViewManage rFinishedRegisteringViewAssociatesParams();
343
344 var mainDataHeader = decoder0.decodeStructDataHeader();
345 if (mainDataHeader.version <= kVersions.last.version) {
346 // Scan in reverse order to optimize for more recent versions.
347 for (int i = kVersions.length - 1; i >= 0; --i) {
348 if (mainDataHeader.version >= kVersions[i].version) {
349 if (mainDataHeader.size == kVersions[i].size) {
350 // Found a match.
351 break;
352 }
353 throw new bindings.MojoCodecError(
354 'Header size doesn\'t correspond to known version size.');
355 }
356 }
357 } else if (mainDataHeader.size < kVersions.last.size) {
358 throw new bindings.MojoCodecError(
359 'Message newer than the last known version cannot be shorter than '
360 'required by the last known version.');
361 }
362 return result;
363 }
364
365 void encode(bindings.Encoder encoder) {
366 encoder.getStructEncoderAtOffset(kVersions.last);
367 }
368
369 String toString() {
370 return "_ViewManagerFinishedRegisteringViewAssociatesParams("")";
371 }
372
373 Map toJson() {
374 Map map = new Map();
375 return map;
376 }
377 }
378
223 const int _viewManagerMethodCreateViewName = 0; 379 const int _viewManagerMethodCreateViewName = 0;
224 const int _viewManagerMethodCreateViewTreeName = 1; 380 const int _viewManagerMethodCreateViewTreeName = 1;
381 const int _viewManagerMethodRegisterViewAssociateName = 2;
382 const int _viewManagerMethodFinishedRegisteringViewAssociatesName = 3;
225 383
226 class _ViewManagerServiceDescription implements service_describer.ServiceDescrip tion { 384 class _ViewManagerServiceDescription implements service_describer.ServiceDescrip tion {
227 dynamic getTopLevelInterface([Function responseFactory]) => 385 dynamic getTopLevelInterface([Function responseFactory]) =>
228 responseFactory(null); 386 responseFactory(null);
229 387
230 dynamic getTypeDefinition(String typeKey, [Function responseFactory]) => 388 dynamic getTypeDefinition(String typeKey, [Function responseFactory]) =>
231 responseFactory(null); 389 responseFactory(null);
232 390
233 dynamic getAllTypeDefinitions([Function responseFactory]) => 391 dynamic getAllTypeDefinitions([Function responseFactory]) =>
234 responseFactory(null); 392 responseFactory(null);
235 } 393 }
236 394
237 abstract class ViewManager { 395 abstract class ViewManager {
238 static const String serviceName = "mojo::ui::ViewManager"; 396 static const String serviceName = "mojo::ui::ViewManager";
239 void createView(Object view, Object viewOwner, Object viewListener, String lab el); 397 void createView(Object view, Object viewOwner, Object viewListener, String lab el);
240 void createViewTree(Object viewTree, Object viewTreeListener, String label); 398 void createViewTree(Object viewTree, Object viewTreeListener, String label);
399 void registerViewAssociate(Object viewAssociate, Object viewAssociateOwner, St ring label);
400 void finishedRegisteringViewAssociates();
241 } 401 }
242 402
243 class _ViewManagerProxyControl 403 class _ViewManagerProxyControl
244 extends bindings.ProxyMessageHandler 404 extends bindings.ProxyMessageHandler
245 implements bindings.ProxyControl { 405 implements bindings.ProxyControl {
246 _ViewManagerProxyControl.fromEndpoint( 406 _ViewManagerProxyControl.fromEndpoint(
247 core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint); 407 core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint);
248 408
249 _ViewManagerProxyControl.fromHandle( 409 _ViewManagerProxyControl.fromHandle(
250 core.MojoHandle handle) : super.fromHandle(handle); 410 core.MojoHandle handle) : super.fromHandle(handle);
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
317 ctrl.proxyError("The Proxy is closed."); 477 ctrl.proxyError("The Proxy is closed.");
318 return; 478 return;
319 } 479 }
320 var params = new _ViewManagerCreateViewTreeParams(); 480 var params = new _ViewManagerCreateViewTreeParams();
321 params.viewTree = viewTree; 481 params.viewTree = viewTree;
322 params.viewTreeListener = viewTreeListener; 482 params.viewTreeListener = viewTreeListener;
323 params.label = label; 483 params.label = label;
324 ctrl.sendMessage(params, 484 ctrl.sendMessage(params,
325 _viewManagerMethodCreateViewTreeName); 485 _viewManagerMethodCreateViewTreeName);
326 } 486 }
487 void registerViewAssociate(Object viewAssociate, Object viewAssociateOwner, St ring label) {
488 if (!ctrl.isBound) {
489 ctrl.proxyError("The Proxy is closed.");
490 return;
491 }
492 var params = new _ViewManagerRegisterViewAssociateParams();
493 params.viewAssociate = viewAssociate;
494 params.viewAssociateOwner = viewAssociateOwner;
495 params.label = label;
496 ctrl.sendMessage(params,
497 _viewManagerMethodRegisterViewAssociateName);
498 }
499 void finishedRegisteringViewAssociates() {
500 if (!ctrl.isBound) {
501 ctrl.proxyError("The Proxy is closed.");
502 return;
503 }
504 var params = new _ViewManagerFinishedRegisteringViewAssociatesParams();
505 ctrl.sendMessage(params,
506 _viewManagerMethodFinishedRegisteringViewAssociatesName);
507 }
327 } 508 }
328 509
329 class _ViewManagerStubControl 510 class _ViewManagerStubControl
330 extends bindings.StubMessageHandler 511 extends bindings.StubMessageHandler
331 implements bindings.StubControl<ViewManager> { 512 implements bindings.StubControl<ViewManager> {
332 ViewManager _impl; 513 ViewManager _impl;
333 514
334 _ViewManagerStubControl.fromEndpoint( 515 _ViewManagerStubControl.fromEndpoint(
335 core.MojoMessagePipeEndpoint endpoint, [ViewManager impl]) 516 core.MojoMessagePipeEndpoint endpoint, [ViewManager impl])
336 : super.fromEndpoint(endpoint, autoBegin: impl != null) { 517 : super.fromEndpoint(endpoint, autoBegin: impl != null) {
(...skipping 23 matching lines...) Expand all
360 case _viewManagerMethodCreateViewName: 541 case _viewManagerMethodCreateViewName:
361 var params = _ViewManagerCreateViewParams.deserialize( 542 var params = _ViewManagerCreateViewParams.deserialize(
362 message.payload); 543 message.payload);
363 _impl.createView(params.view, params.viewOwner, params.viewListener, par ams.label); 544 _impl.createView(params.view, params.viewOwner, params.viewListener, par ams.label);
364 break; 545 break;
365 case _viewManagerMethodCreateViewTreeName: 546 case _viewManagerMethodCreateViewTreeName:
366 var params = _ViewManagerCreateViewTreeParams.deserialize( 547 var params = _ViewManagerCreateViewTreeParams.deserialize(
367 message.payload); 548 message.payload);
368 _impl.createViewTree(params.viewTree, params.viewTreeListener, params.la bel); 549 _impl.createViewTree(params.viewTree, params.viewTreeListener, params.la bel);
369 break; 550 break;
551 case _viewManagerMethodRegisterViewAssociateName:
552 var params = _ViewManagerRegisterViewAssociateParams.deserialize(
553 message.payload);
554 _impl.registerViewAssociate(params.viewAssociate, params.viewAssociateOw ner, params.label);
555 break;
556 case _viewManagerMethodFinishedRegisteringViewAssociatesName:
557 _impl.finishedRegisteringViewAssociates();
558 break;
370 default: 559 default:
371 throw new bindings.MojoCodecError("Unexpected message name"); 560 throw new bindings.MojoCodecError("Unexpected message name");
372 break; 561 break;
373 } 562 }
374 return null; 563 return null;
375 } 564 }
376 565
377 ViewManager get impl => _impl; 566 ViewManager get impl => _impl;
378 set impl(ViewManager d) { 567 set impl(ViewManager d) {
379 if (d == null) { 568 if (d == null) {
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 static service_describer.ServiceDescription get serviceDescription => 622 static service_describer.ServiceDescription get serviceDescription =>
434 _ViewManagerStubControl.serviceDescription; 623 _ViewManagerStubControl.serviceDescription;
435 624
436 625
437 void createView(Object view, Object viewOwner, Object viewListener, String lab el) { 626 void createView(Object view, Object viewOwner, Object viewListener, String lab el) {
438 return impl.createView(view, viewOwner, viewListener, label); 627 return impl.createView(view, viewOwner, viewListener, label);
439 } 628 }
440 void createViewTree(Object viewTree, Object viewTreeListener, String label) { 629 void createViewTree(Object viewTree, Object viewTreeListener, String label) {
441 return impl.createViewTree(viewTree, viewTreeListener, label); 630 return impl.createViewTree(viewTree, viewTreeListener, label);
442 } 631 }
632 void registerViewAssociate(Object viewAssociate, Object viewAssociateOwner, St ring label) {
633 return impl.registerViewAssociate(viewAssociate, viewAssociateOwner, label);
634 }
635 void finishedRegisteringViewAssociates() {
636 return impl.finishedRegisteringViewAssociates();
637 }
443 } 638 }
444 639
445 640
446 641
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698