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

Side by Side Diff: Tools/GardeningServer/ui/ct-revision-details.html

Issue 410483002: Add the revision details widget to sheriff-o-matic (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 <!--
2 Copyright 2014 The Chromium Authors. All rights reserved.
3 Use of this source code is governed by a BSD-style license that can be
4 found in the LICENSE file.
5 -->
6 <link href="../bower_components/core-icons/core-icons.html" rel="import">
7 <link href="../bower_components/paper-item/paper-item.html" rel="import">
8 <link href="../bower_components/paper-menu-button/paper-menu-button.html" rel="i mport">
9
10 <polymer-element name="ct-revision-details">
11 <template>
12 <style>
13 :host {
14 display: inline;
ojan 2014/07/21 23:22:37 inline is the default. Do you actually want this t
15 }
16 .menu {
ojan 2014/07/21 23:22:37 I've just been using tag names as selectors. No ne
17 padding: 0;
18 margin-bottom: -0.5em;
19 }
20 .menuItem {
ojan 2014/07/21 23:22:37 Can't just make the paper-item display flex and ge
21 display: flex;
22 width: 100%;
ojan 2014/07/21 23:22:37 Is this needed?
23 justify-content: space-between;
ojan 2014/07/21 23:22:37 space-between!
24 }
25 .menuRevision {
26 padding-left: 2em;
27 }
28 </style>
29 <template if="{{_sortedBuilders.length}}">
30 Latest revision processed by every bot:
31 <paper-menu-button icon="arrow-drop-down" class="menu" valign="bottom">
32 <template repeat="{{builder in _sortedBuilders}}">
33 <paper-item>
34 <div class="menuItem">
35 <div>
36 {{builder}}
37 </div>
38 <div class="menuRevision">
39 {{_latestRevisions[builder]}}
40 </div>
41 </div>
42 </paper-item>
43 </template>
44 </paper-menu-button>
45 <a id="fullyProcessedRevision" href="{{_fullyProcessedRevision.url}}">{{_f ullyProcessedRevision.number}}</a>,
46 trunk is at <a id="trunkRevision" href="{{trunkRevision.url}}">{{trunkRevi sion.number}}</a>
47 </template>
48 </template>
49 <script>
50 Polymer({
51 _latestRevisions: null,
52 _sortedBuilders: [],
53 _fullyProcessedRevision: null,
54 urgency: "",
55 message: "",
56
57 _createRevision: function(revisionNumber) {
58 var revision = new Object;
ojan 2014/07/21 23:22:37 s/new Object/{} Or, even better: return { numbe
59 revision.number = revisionNumber;
60 revision.url = trac.changesetURL(revisionNumber);
61 return revision;
62 },
63
64 update: function() {
65 this.message = "";
66 Promise.all([model.updateRecentCommits(), model.updateResultsByBuilder() ]).then(function() {
67 this.message = "Latest revision processed by every bot: "
68 this._fullyProcessedRevision = this._createRevision(model.latestRevisi onWithNoBuildersInFlight());
69
70 var latestRevisions = model.latestRevisionByBuilder();
71
72 // Get the list of builders sorted with the most recent one first.
73 var sortedBuilders = Object.keys(latestRevisions);
74 sortedBuilders.sort(function (a, b) { return parseInt(latestRevisions[ b]) - parseInt(latestRevisions[a]);});
75
76
77 this.trunkRevision = this._createRevision(model.latestRevision());
ojan 2014/07/21 23:22:37 _trunkRevision?
78
79 this._latestRevisions = latestRevisions;
80 this._sortedBuilders = sortedBuilders;
81 }.bind(this));
82 },
83
84 });
85 </script>
86 </polymer-element>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698