Skip to content

Commit d4357fa

Browse files
committed
Refactor to enable updating to conform windows size
1 parent 65768f8 commit d4357fa

File tree

1 file changed

+12
-7
lines changed

1 file changed

+12
-7
lines changed

fireplace.el

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -169,30 +169,34 @@
169169
(random 3))))
170170
(setq buffer-read-only t)))
171171

172-
(defun fireplace--disable-minor-modes()
172+
(defun fireplace--disable-minor-modes ()
173173
"Disable minor modes that might affect rendering."
174174
(switch-to-buffer fireplace-buffer-name)
175175
(setq truncate-lines t
176-
cursor nil
176+
cursor-type nil
177177
show-trailing-whitespace nil
178178
show-leading-whitespace nil
179179
indicate-empty-lines nil)
180180
(transient-mark-mode nil)
181181
(buffer-disable-undo))
182182

183+
(defun fireplace--update-locals-vars ()
184+
"Update `fireplace' local variables."
185+
(setq fireplace--bkgd-height (round (window-height (get-buffer-window fireplace-buffer-name)))
186+
fireplace--bkgd-width (round (window-width (get-buffer-window fireplace-buffer-name)))
187+
fireplace--flame-width (min fireplace--bkgd-height (round (/ fireplace--bkgd-width 2.5)))
188+
fireplace--flame-pos fireplace-flame-pos))
189+
183190
;; Commands
184191
;;;###autoload
185192
(defun fireplace (arg)
186193
"Light the fire."
187194
(interactive "P")
188195
(with-current-buffer (get-buffer-create fireplace-buffer-name)
189-
(setq cursor-type nil)
190-
(setq fireplace--bkgd-height (round (window-height (get-buffer-window fireplace-buffer-name)))
191-
fireplace--bkgd-width (round (window-width (get-buffer-window fireplace-buffer-name)))
192-
fireplace--flame-width (min fireplace--bkgd-height (round (/ fireplace--bkgd-width 2.5)))
193-
fireplace--flame-pos fireplace-flame-pos)
196+
(fireplace--update-locals-vars)
194197
(fireplace--make-grid)
195198
(fireplace-mode)
199+
(add-hook 'window-size-change-functions 'fireplace--update-locals-vars)
196200
(fireplace--disable-minor-modes)
197201
(setq fireplace--timer
198202
(run-with-timer 1 (- 1 fireplace-fury)
@@ -201,6 +205,7 @@
201205
(defun fireplace-off ()
202206
"Put out the fire."
203207
(interactive)
208+
(remove-hook 'window-size-change-functions 'fireplace--update-locals-vars)
204209
(when fireplace--timer
205210
(cancel-timer fireplace--timer)
206211
(kill-buffer fireplace-buffer-name)))

0 commit comments

Comments
 (0)