
Move all buttons that generate a reply of some sort (done, ack, reply, quote) to the comment thread instead of the comment [1]. When there is a draft for a particular comment thread, all reply buttons are hidden [2]. For example, if you click reply, you cannot click done on the same thread, unless you remove the draft. Each thread can have up to 1 draft. It's also worth noting that if a thread has a draft, and the user clicks on the line or 'c' at the same range, the existing draft will switch to 'editing' form. [1] With the exception of "please fix" for robot comments. [2] In this case, The please fix button will be disabled when other reply buttons are hidden. Feature: Issue 5410 Change-Id: Id847ee0cba0d0ce4e5b6476f58141866d41ffdad
74 lines
2.7 KiB
HTML
74 lines
2.7 KiB
HTML
<!--
|
|
Copyright (C) 2015 The Android Open Source Project
|
|
|
|
Licensed under the Apache License, Version 2.0 (the "License");
|
|
you may not use this file except in compliance with the License.
|
|
You may obtain a copy of the License at
|
|
|
|
http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
Unless required by applicable law or agreed to in writing, software
|
|
distributed under the License is distributed on an "AS IS" BASIS,
|
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
See the License for the specific language governing permissions and
|
|
limitations under the License.
|
|
-->
|
|
|
|
<link rel="import" href="../../../bower_components/polymer/polymer.html">
|
|
<link rel="import" href="../../shared/gr-rest-api-interface/gr-rest-api-interface.html">
|
|
<link rel="import" href="../../shared/gr-storage/gr-storage.html">
|
|
<link rel="import" href="../gr-diff-comment/gr-diff-comment.html">
|
|
|
|
<dom-module id="gr-diff-comment-thread">
|
|
<template>
|
|
<style>
|
|
:host {
|
|
border: 1px solid #bbb;
|
|
display: block;
|
|
margin-bottom: 1px;
|
|
white-space: normal;
|
|
}
|
|
.actions {
|
|
border-top: 1px dotted #bbb;
|
|
padding: .5em .7em;
|
|
}
|
|
#container {
|
|
background-color: #fcfad6;
|
|
}
|
|
#container.unresolved {
|
|
background-color: #fcfaa6;
|
|
}
|
|
</style>
|
|
<div id="container" class$="[[_computeHostClass(_unresolved)]]">
|
|
<template id="commentList" is="dom-repeat" items="[[_orderedComments]]"
|
|
as="comment">
|
|
<gr-diff-comment
|
|
comment="{{comment}}"
|
|
robot-button-disabled="[[_hideActions(_showActions, _lastComment)]]"
|
|
change-num="[[changeNum]]"
|
|
patch-num="[[patchNum]]"
|
|
draft="[[comment.__draft]]"
|
|
show-actions="[[_showActions]]"
|
|
comment-side="[[comment.__commentSide]]"
|
|
project-config="[[projectConfig]]"
|
|
on-create-fix-comment="_handleCommentFix"
|
|
on-comment-discard="_handleCommentDiscard"></gr-diff-comment>
|
|
</template>
|
|
<div class="actions"
|
|
hidden$="[[_hideActions(_showActions, _lastComment)]]">
|
|
<gr-button id="replyBtn" class="action reply"
|
|
on-tap="_handleCommentReply">Reply</gr-button>
|
|
<gr-button id="quoteBtn" class="action quote"
|
|
on-tap="_handleCommentQuote">Quote</gr-button>
|
|
<gr-button id="ackBtn" class="action ack" on-tap="_handleCommentAck">
|
|
Ack</gr-button>
|
|
<gr-button id="doneBtn" class="action done" on-tap="_handleCommentDone">
|
|
Done</gr-button>
|
|
</div>
|
|
</div>
|
|
<gr-rest-api-interface id="restAPI"></gr-rest-api-interface>
|
|
<gr-storage id="storage"></gr-storage>
|
|
</template>
|
|
<script src="gr-diff-comment-thread.js"></script>
|
|
</dom-module>
|