Skip to content

Commit d2c0ec9

Browse files
committed
make the messages header clickable to collapse emails
Signed-off-by: Kai Wagner <kai.wagner@percona.com>
1 parent d284801 commit d2c0ec9

3 files changed

Lines changed: 20 additions & 1 deletion

File tree

app/assets/stylesheets/components/messages.css

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -410,6 +410,20 @@ summary.attachment-info {
410410
.message-branch-4 .message-header { border-left-color: #ef4444; }
411411
.message-branch-5 .message-header { border-left-color: #0ea5e9; }
412412

413+
/* Clickable header for collapse */
414+
.message-header {
415+
cursor: pointer;
416+
}
417+
418+
.message-header a,
419+
.message-header button {
420+
cursor: default;
421+
}
422+
423+
.message-header a {
424+
cursor: pointer;
425+
}
426+
413427
/* Collapse toggle */
414428
.message-collapse-toggle {
415429
border: none;

app/javascript/controllers/message_collapse_controller.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ export default class extends Controller {
1515
this.collapsedValue = !this.collapsedValue
1616
}
1717

18+
headerClick(event) {
19+
if (event.target.closest("a, button")) return
20+
this.toggle()
21+
}
22+
1823
applyState() {
1924
this.element.classList.toggle("is-collapsed", this.collapsedValue)
2025
const icon = this.element.querySelector(".message-collapse-toggle i")

app/views/topics/_message.html.slim

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
- if local_assigns[:is_first_unread]
1010
a.message-id-anchor id="first-unread" aria-hidden="true"
1111
- display_number = number || (@message_numbers && @message_numbers[message.id])
12-
.message-header
12+
.message-header data-action="click->message-collapse#headerClick"
1313
.message-author
1414
.author-row
1515
= link_to "##{display_number}", "#message-#{message.id}", class: "message-number"

0 commit comments

Comments
 (0)