summaryrefslogtreecommitdiff
path: root/rt-liberation.el
diff options
context:
space:
mode:
Diffstat (limited to 'rt-liberation.el')
-rw-r--r--rt-liberation.el14
1 files changed, 13 insertions, 1 deletions
diff --git a/rt-liberation.el b/rt-liberation.el
index 1140eed..51efc69 100644
--- a/rt-liberation.el
+++ b/rt-liberation.el
@@ -3,7 +3,7 @@
;; Copyright (C) 2008-2021 Free Software Foundation, Inc.
;; Author: Yoni Rabkin <yrk@gnu.org>
-;; Authors: Aaron S. Hawley <aaron.s.hawley@gmail.com>, John Sullivan <johnsu01@wjsullivan.net>
+;; Authors: Aaron S. Hawley <aaron.s.hawley@gmail.com>, John Sullivan <johnsu01@wjsullivan.net>, Yuchen Pei <hi@ypei.me>
;; Maintainer: Yoni Rabkin <yrk@gnu.org>
;; Version: 2.4rc
;; Keywords: rt, tickets
@@ -785,6 +785,18 @@ returned as no associated text properties."
(message "no previous section"))
(goto-char (point-at-bol)))
+(defun rt-liber-viewer-move-point-to-section (history-id)
+ "Move point to the beginning of section with HISTORY-ID."
+ (let ((current-history-id (alist-get 'id (rt-liber-viewer2-get-section-data)))
+ (previous-history-id nil))
+ (while (not (or (string-equal history-id current-history-id)
+ (eq current-history-id previous-history-id)))
+ (setq previous-history-id current-history-id)
+ (rt-liber-viewer2-next-section-in)
+ (setq current-history-id (alist-get 'id (rt-liber-viewer2-get-section-data))))
+ (when (not (string-equal history-id current-history-id))
+ (error "Cannot find section."))))
+
;; wrapper functions around specific functions provided by a backend
(declare-function
rt-liber-gnus-compose