                (/= text-scale-mode-amount 0))
       (text-scale-set 0)
       (setq success t))
-    (when-let (factor (frame-parameter nil 'font-scale))
-      (set-frame-font doom-font t)
-      (set-frame-parameter nil 'font-scale nil)
+    (when (doom-adjust-font-size nil)
       (setq success t))
     (unless success
-      (user-error "The font hasn't been resized"))
-    (run-hooks 'doom-change-font-size-hook)))
+      (user-error "The font hasn't been resized"))))
 
 ;;;###autoload
 (define-minor-mode doom-big-font-mode


;;;###autoload
(defun doom/increase-font-size (count)
  "Enlargens the font size across the current frame."
  (interactive "p")
  (let ((zoom-factor (or (frame-parameter nil 'font-scale) 0))
        (increment (* count doom-font-increment)))
    (setq zoom-factor (+ zoom-factor increment))
    (doom-adjust-font-size increment)
    (set-frame-parameter nil 'font-scale zoom-factor)
    (run-hooks 'doom-change-font-size-hook)))

;;;###autoload
(defun doom/decrease-font-size (count)
  "Shrinks the font size across the current frame."
  (interactive "p")
  (doom/increase-font-size (- count)))

;;;###autoload
(defun doom/reset-font-size ()

                          t (doom--frame-list frame))
          (run-hooks 'doom-change-font-size-hook))
      (set-frame-font doom-font t (doom--frame-list frame))
      (when (and doom-big-font-mode
                 (integerp doom-big-font-increment)
                 (/= doom-big-font-increment 0))
        (doom-adjust-font-size doom-big-font-increment)))))
