We do this all the time, but at least emacs is kind enough to remind us,
(when compiling), that next-line is only intended for interactive use,
and we should use forward-line inside of lisp code.
(interactive)
(save-excursion
(notmuch-show-move-to-current-message-summary-line)
(interactive)
(save-excursion
(notmuch-show-move-to-current-message-summary-line)
(unless (button-at (point))
(notmuch-show-next-button))
(push-button))
(unless (button-at (point))
(notmuch-show-next-button))
(push-button))