Becky Siegel 6cd5590a15 Fix local storage with PARENT revision
Previously, if a PARENT revision was getting compared to a patchset,
the local storage key would be the same for both, and there were issues
if a user was trying to write drafts on the same line on either side.

This addresses the issue by storing 'PARENT' as the patch number in the
local storage key, so that each key is unique.

Bug: Issue 5412
Change-Id: Ia8b2f0abe1d24a3849628fe335c931f07bcaff52
2017-03-13 15:03:09 -07:00

87 lines
3.1 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 {
padding: .5em .7em;
}
#container {
background-color: #fcfad6;
}
#container.unresolved {
background-color: #fcfaa6;
}
#commentInfoContainer {
border-top: 1px dotted #bbb;
display: flex;
justify-content: space-between;
}
#unresolvedLabel {
font-family: var(--font-family);
margin: auto 0 auto auto;
padding: .5em .7em;
}
</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]]"
side="[[side]]"
project-config="[[projectConfig]]"
on-create-fix-comment="_handleCommentFix"
on-comment-discard="_handleCommentDiscard"></gr-diff-comment>
</template>
<div id="commentInfoContainer"
hidden$="[[_hideActions(_showActions, _lastComment)]]">
<div id="actions">
<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>
<span id="unresolvedLabel" hidden$="[[!_unresolved]]">Unresolved</span>
</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>