1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
7 tvcm.requireStylesheet('cc.raster_task_slice_view');
8 tvcm.require('cc.tile');
9 tvcm.require('cc.tile_view');
10 tvcm.require('cc.layer_tree_host_impl_view');
11 tvcm.require('tracing.analysis.slice_view');
12 tvcm.require('tvcm.ui.info_bar');
14 tvcm.exportTo('cc', function() {
19 var RasterTaskSliceView = tvcm.ui.define(
20 'raster-task-slice-view', tracing.analysis.SliceView);
22 RasterTaskSliceView.prototype = {
23 __proto__: tracing.analysis.SliceView.prototype,
25 decorate: function() {
26 this.classList.add('raster-task-slice-view');
27 this.layerTreeView_ = new cc.LayerTreeHostImplSnapshotView();
28 this.infoBar_ = new tvcm.ui.InfoBar();
29 this.appendChild(this.infoBar_);
30 this.appendChild(this.layerTreeView_);
33 updateContents: function() {
34 this.infoBar_.visible = false;
36 if (!this.slice.args.data) {
37 this.infoBar_.visible = true;
38 this.infoBar_.message = 'No data on this raster task.';
39 this.layerTreeView_.style.display = 'none';
42 var tile = this.slice.args.data.tile_id;
44 this.infoBar_.visible = true;
45 this.infoBar_.message = 'No tile on this raster task.';
46 this.layerTreeView_.style.display = 'none';
49 if (!(tile instanceof cc.TileSnapshot)) {
50 this.infoBar_.visible = true;
51 this.infoBar_.message = 'This raster task didn\'t get fully traced.';
52 this.layerTreeView_.style.display = 'none';
55 this.layerTreeView_.style.display = '';
57 var containingSnapshot = tile.containingSnapshot;
58 this.layerTreeView_.objectSnapshot = containingSnapshot;
59 this.layerTreeView_.selection = new cc.RasterTaskSelection(this.slice);
63 tracing.analysis.SliceView.register(
64 'TileManager::RunRasterTask', RasterTaskSliceView);
65 tracing.analysis.SliceView.register(
66 'RasterWorkerPoolTaskImpl::RunRasterOnThread', RasterTaskSliceView);
67 tracing.analysis.SliceView.register(
68 'RasterWorkerPoolTaskImpl::Raster', RasterTaskSliceView);
69 tracing.analysis.SliceView.register(
70 'RasterTaskImpl::Raster', RasterTaskSliceView);
71 tracing.analysis.SliceView.register(
72 'cc::RasterTask', RasterTaskSliceView);
74 tracing.analysis.SliceView.register(
75 'TileManager::RunAnalyzeTask', RasterTaskSliceView);
76 tracing.analysis.SliceView.register(
77 'RasterWorkerPoolTaskImpl::RunAnalysisOnThread', RasterTaskSliceView);
78 tracing.analysis.SliceView.register(
79 'RasterWorkerPoolTaskImpl::Analyze', RasterTaskSliceView);
80 tracing.analysis.SliceView.register(
81 'RasterTaskImpl::Analyze', RasterTaskSliceView);
82 tracing.analysis.SliceView.register(
83 'cc::AnalyzeTask', RasterTaskSliceView);
86 RasterTaskSliceView: RasterTaskSliceView