| OLD | NEW |
| 1 <!-- | 1 <!-- |
| 2 Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 3 Use of this source code is governed by a BSD-style license that can be |
| 4 found in the LICENSE file. | 4 found in the LICENSE file. |
| 5 --> | 5 --> |
| 6 | 6 |
| 7 <link rel="import" href="ct-builder-grid.html"> | 7 <link rel="import" href="ct-builder-grid.html"> |
| 8 <link rel="import" href="ct-commit-list.html"> | 8 <link rel="import" href="ct-commit-list.html"> |
| 9 <link rel="import" href="ct-test-list.html"> | 9 <link rel="import" href="ct-test-list.html"> |
| 10 | 10 |
| 11 <polymer-element name="ct-failure-card" attributes="group commits tree"> | 11 <polymer-element name="ct-failure-card" attributes="group commits tree"> |
| 12 <template> | 12 <template> |
| 13 <style> | 13 <style> |
| 14 :host { | 14 :host { |
| 15 display: flex; | 15 display: flex; |
| 16 } | 16 } |
| 17 | 17 |
| 18 /* FIXME: All this paper-button styling should go in a cr-button component
so that | 18 /* FIXME: All this paper-button styling should go in a cr-button component
so that |
| 19 we can use buttons in different places and have them all look the same.
*/ | 19 we can use buttons in different places and have them all look the same.
*/ |
| 20 paper-button { | 20 paper-button { |
| 21 -webkit-user-select: none; | 21 -webkit-user-select: none; |
| 22 background: #f5f5f5; | 22 background: #f5f5f5; |
| 23 border-radius: 2px; | 23 border-radius: 2px; |
| 24 border: 1px solid #dcdcdc; | 24 border: 1px solid #dcdcdc; |
| 25 color: #444; | 25 color: #444; |
| 26 padding: 0 16px; | 26 padding: 0 16px; |
| 27 margin-bottom: 5px; |
| 27 text-align: center; | 28 text-align: center; |
| 28 } | 29 } |
| 29 | 30 |
| 30 paper-button:focus { | 31 paper-button:focus { |
| 31 border: 1px solid #4d90fe; | 32 border: 1px solid #4d90fe; |
| 32 outline: none; | 33 outline: none; |
| 33 } | 34 } |
| 34 | 35 |
| 35 paper-button:active { | 36 paper-button:active { |
| 36 box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3); | 37 box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.3); |
| 37 } | 38 } |
| 38 | 39 |
| 39 paper-button:active, paper-button:hover { | 40 paper-button:active, paper-button:hover { |
| 40 background: #f8f8f8; | 41 background: #f8f8f8; |
| 41 border-color: #c6c6c6; | 42 border-color: #c6c6c6; |
| 42 box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); | 43 box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.1); |
| 43 color: #222; | 44 color: #222; |
| 44 } | 45 } |
| 45 | 46 |
| 46 ct-builder-grid { | 47 ct-builder-grid { |
| 47 margin-right: 10px; | 48 margin-right: 10px; |
| 48 width: 250px; | 49 width: 250px; |
| 49 } | 50 } |
| 50 | 51 |
| 51 .failure { | 52 #failure { |
| 52 flex: 1; | 53 flex: 1; |
| 53 } | 54 } |
| 54 | 55 |
| 56 #buttons { |
| 57 display: flex; |
| 58 flex-direction: column; |
| 59 } |
| 60 |
| 55 .snoozed { | 61 .snoozed { |
| 56 opacity: 0.5; | 62 opacity: 0.5; |
| 57 } | 63 } |
| 58 | |
| 59 #examine, #snooze { | |
| 60 align-self: flex-start; | |
| 61 } | |
| 62 </style> | 64 </style> |
| 63 <ct-builder-grid failures="{{ group.failures }}"></ct-builder-grid> | 65 <ct-builder-grid failures="{{ group.failures }}"></ct-builder-grid> |
| 64 <div class="{{ { failure: true, snoozed: group.isSnoozed } | tokenList }}"> | 66 <div id="failure" class="{{ { snoozed: group.isSnoozed } | tokenList }}"> |
| 65 <ct-test-list tests="{{ group.failures }}" tree="{{ tree }}"></ct-test-lis
t> | 67 <ct-test-list tests="{{ group.failures }}" tree="{{ tree }}"></ct-test-lis
t> |
| 66 <ct-commit-list first="{{ group.failures[0].lastPassingRevisions }}" | 68 <ct-commit-list first="{{ group.failures[0].lastPassingRevisions }}" |
| 67 last="{{ group.failures[0].firstFailingRevisions }}" | 69 last="{{ group.failures[0].firstFailingRevisions }}" |
| 68 commits="{{ commits }}"></ct-commit-list> | 70 commits="{{ commits }}"></ct-commit-list> |
| 69 </div> | 71 </div> |
| 70 <paper-button id="examine" on-tap="{{ examine }}">Examine</paper-button> | 72 <div id="buttons"> |
| 71 <template if="{{ !group.isSnoozed }}"> | 73 <paper-button id="examine" on-tap="{{ examine }}">Examine</paper-button> |
| 72 <paper-button id="snooze" on-tap="{{ snooze }}">Snooze</paper-button> | 74 <template if="{{ !group.isSnoozed }}"> |
| 73 </template> | 75 <paper-button id="snooze" on-tap="{{ snooze }}">Snooze</paper-button> |
| 74 <template if="{{ group.isSnoozed }}"> | 76 </template> |
| 75 <paper-button id="snooze" on-tap="{{ unsnooze }}">Unsnooze</paper-button> | 77 <template if="{{ group.isSnoozed }}"> |
| 76 </template> | 78 <paper-button id="snooze" on-tap="{{ unsnooze }}">Unsnooze</paper-button
> |
| 79 </template> |
| 80 </div> |
| 77 </template> | 81 </template> |
| 78 <script> | 82 <script> |
| 79 Polymer({ | 83 Polymer({ |
| 80 group: null, | 84 group: null, |
| 81 commits: {}, | 85 commits: {}, |
| 82 tree: '', | 86 tree: '', |
| 83 | 87 |
| 84 examine: function() { | 88 examine: function() { |
| 85 this.fire('ct-examine-failures', this.group); | 89 this.fire('ct-examine-failures', this.group); |
| 86 }, | 90 }, |
| 87 | 91 |
| 88 snooze: function() { | 92 snooze: function() { |
| 89 this.group.snoozeUntil(Date.now() + 60 * 60 * 1000); | 93 this.group.snoozeUntil(Date.now() + 60 * 60 * 1000); |
| 90 }, | 94 }, |
| 91 | 95 |
| 92 unsnooze: function() { | 96 unsnooze: function() { |
| 93 this.group.unsnooze(); | 97 this.group.unsnooze(); |
| 94 }, | 98 }, |
| 95 }); | 99 }); |
| 96 </script> | 100 </script> |
| 97 </polymer-element> | 101 </polymer-element> |
| OLD | NEW |