aboutsummaryrefslogtreecommitdiff
path: root/sx-question-mode.el
diff options
context:
space:
mode:
authorSean Allred <code@seanallred.com>2014-11-26 08:24:23 -0500
committerSean Allred <code@seanallred.com>2014-11-26 08:24:23 -0500
commit8cbc523812a069b82048f3a4bad088682913274c (patch)
tree3cc2587b05ff0eb9fca5a71e33120f20fe0b7d91 /sx-question-mode.el
parent5df6ffd2874dca9c5e0bdbe55ac112e1d4612da5 (diff)
parenta104916864ab053fff81dcdcba71e6b8af219913 (diff)
Merge pull request #104 from vermiculus/preseve-position-on-refresh
Preseve position on refresh
Diffstat (limited to 'sx-question-mode.el')
-rw-r--r--sx-question-mode.el10
1 files changed, 7 insertions, 3 deletions
diff --git a/sx-question-mode.el b/sx-question-mode.el
index 70b8866..b2f4604 100644
--- a/sx-question-mode.el
+++ b/sx-question-mode.el
@@ -595,15 +595,19 @@ With non-nil prefix argument NO-UPDATE, just redisplay, don't
query the api."
(interactive "P")
(sx-question-mode--ensure-mode)
- (let ((point (point)))
+ (let ((point (point))
+ (line (count-screen-lines
+ (window-start) (point))))
(sx-question-mode--erase-and-print-question
(if no-update
sx-question-mode--data
(sx-assoc-let sx-question-mode--data
(sx-question-get-question .site .question_id))))
(goto-char point)
- (when (get-buffer-window (current-buffer))
- (recenter))))
+ (when (equal (selected-window)
+ (get-buffer-window (current-buffer)))
+ (recenter line)))
+ (sx-message "Done."))
(defun sx-question-mode--ensure-mode ()
"Ensures we are in question mode, erroring otherwise."