diff --git a/app/assets/javascripts/discourse/widgets/post-menu.js.es6 b/app/assets/javascripts/discourse/widgets/post-menu.js.es6 index 0a1eaf0e167..bb18377c93a 100644 --- a/app/assets/javascripts/discourse/widgets/post-menu.js.es6 +++ b/app/assets/javascripts/discourse/widgets/post-menu.js.es6 @@ -109,7 +109,7 @@ registerButton("like-count", attrs => { }); registerButton("flag", attrs => { - if (attrs.canFlag) { + if (attrs.canFlag && !attrs.hidden) { return { action: "showFlags", title: "post.controls.flag", diff --git a/test/javascripts/widgets/post-test.js.es6 b/test/javascripts/widgets/post-test.js.es6 index 5c4ff36fd36..701606254b0 100644 --- a/test/javascripts/widgets/post-test.js.es6 +++ b/test/javascripts/widgets/post-test.js.es6 @@ -389,6 +389,16 @@ widgetTest(`flagging: can't flag`, { } }); +widgetTest(`flagging: can't flag when post is hidden`, { + template: '{{mount-widget widget="post" args=args}}', + beforeEach() { + this.set("args", { canFlag: true, hidden: true }); + }, + test(assert) { + assert.ok(this.$("button.create-flag").length === 0); + } +}); + widgetTest(`read indicator`, { template: '{{mount-widget widget="post" args=args}}', beforeEach() {