summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorFatih Acet <acetfatih@gmail.com>2018-11-21 15:31:23 +0100
committerFatih Acet <acetfatih@gmail.com>2018-11-22 15:45:28 +0100
commite6cf3c7a6f6fc3924c2e76e529f52c6d1de84985 (patch)
treebedbf5f13e04fda1899a01a267b2f22bc058e939 /app
parent8e11f1fa89d4064d9de402c40e2b6cfeb3e91949 (diff)
downloadgitlab-ce-e6cf3c7a6f6fc3924c2e76e529f52c6d1de84985.tar.gz
Allow commenting to resolved non-diff discussions_acet-fix-unable-to-reply-resolved-nondiff-discussion
Diffstat (limited to 'app')
-rw-r--r--app/assets/javascripts/notes/components/noteable_discussion.vue13
-rw-r--r--app/assets/javascripts/notes/components/toggle_replies_widget.vue2
2 files changed, 12 insertions, 3 deletions
diff --git a/app/assets/javascripts/notes/components/noteable_discussion.vue b/app/assets/javascripts/notes/components/noteable_discussion.vue
index f6842fa240e..29740ddf6ae 100644
--- a/app/assets/javascripts/notes/components/noteable_discussion.vue
+++ b/app/assets/javascripts/notes/components/noteable_discussion.vue
@@ -68,7 +68,7 @@ export default {
isReplying: false,
isResolving: false,
resolveAsThread: true,
- isRepliesCollapsed: (!this.discussion.diff_discussion && this.discussion.resolved) || false,
+ isRepliesToggledByUser: false,
};
},
computed: {
@@ -189,6 +189,15 @@ export default {
return isExpanded || this.alwaysExpanded || isResolvedNonDiffDiscussion;
},
+ isRepliesCollapsed() {
+ const { discussion, isRepliesToggledByUser } = this;
+ const { resolved, notes } = discussion;
+ const hasReplies = notes.length > 1;
+
+ return (
+ (!discussion.diff_discussion && resolved && hasReplies && !isRepliesToggledByUser) || false
+ );
+ },
},
watch: {
isReplying() {
@@ -233,7 +242,7 @@ export default {
this.toggleDiscussion({ discussionId: this.discussion.id });
},
toggleReplies() {
- this.isRepliesCollapsed = !this.isRepliesCollapsed;
+ this.isRepliesToggledByUser = !this.isRepliesToggledByUser;
},
showReplyForm() {
this.isReplying = true;
diff --git a/app/assets/javascripts/notes/components/toggle_replies_widget.vue b/app/assets/javascripts/notes/components/toggle_replies_widget.vue
index e9d05c5cdcd..72a8ff28466 100644
--- a/app/assets/javascripts/notes/components/toggle_replies_widget.vue
+++ b/app/assets/javascripts/notes/components/toggle_replies_widget.vue
@@ -42,7 +42,7 @@ export default {
</script>
<template>
- <li :class="className" class="replies-toggle">
+ <li :class="className" class="replies-toggle js-toggle-replies">
<template v-if="collapsed">
<icon name="chevron-right" @click.native="toggle" />
<div>