From: Juri Linkov Date: Mon, 29 Jul 2024 18:16:16 +0000 (+0300) Subject: * lisp/tab-bar.el (tab-bar-move-tab-to-group): Fix for a new group's tab. X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=4ed34260ebcc80365d164cd97696f5f4a75bcb93;p=emacs.git * lisp/tab-bar.el (tab-bar-move-tab-to-group): Fix for a new group's tab. Move tab with a new group to the end of the tab bar (bug#72352) Suggested by Ship Mints (cherry picked from commit abefd9514bcf9d8de9d9e7f000ef55fad0d822fb) --- diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el index a4d40c5de7f..36a65acfdb6 100644 --- a/lisp/tab-bar.el +++ b/lisp/tab-bar.el @@ -2232,14 +2232,16 @@ function `tab-bar-tab-name-function'." (seq-position (nthcdr beg tabs) group (lambda (tb gr) (not (equal (alist-get 'group tb) gr)))))) - (pos (when beg - (cond - ;; Don't move tab when it's already inside group bounds - ((and len (>= tab-index beg) (<= tab-index (+ beg len))) nil) - ;; Move tab from the right to the group end - ((and len (> tab-index (+ beg len))) (+ beg len 1)) - ;; Move tab from the left to the group beginning - ((< tab-index beg) beg))))) + (pos (if beg + (cond + ;; Don't move tab when it's already inside group bounds + ((and len (>= tab-index beg) (<= tab-index (+ beg len))) nil) + ;; Move tab from the right to the group end + ((and len (> tab-index (+ beg len))) (+ beg len 1)) + ;; Move tab from the left to the group beginning + ((< tab-index beg) beg)) + ;; Move tab with a new group to the end + -1))) (when pos (tab-bar-move-tab-to pos (1+ tab-index)))))