From 832e6ca6a5ce314e37a840356828c50adb94ebf4 Mon Sep 17 00:00:00 2001 From: Gabriel do Nascimento Ribeiro Date: Thu, 15 Dec 2022 11:58:30 -0300 Subject: [PATCH 1/1] Make tab-bar-tab-group-format-function also handle current group * lisp/tab-bar.el (tab-bar--format-tab-group): Call 'tab-bar-tab-group-format-default' to format current group tab. (tab-bar-tab-group-format-default): Update function to also handle current group tab. --- lisp/tab-bar.el | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el index 162e63fe23..1f25ee6d7e 100644 --- a/lisp/tab-bar.el +++ b/lisp/tab-bar.el @@ -844,8 +844,9 @@ tab-bar-tab-group-default (defcustom tab-bar-tab-group-format-function #'tab-bar-tab-group-format-default "Function to format a tab group name. -Function gets two arguments, a tab with a group name and its number, -and should return the formatted tab group name to display in the tab bar." +Function gets three arguments, a tab with a group name, its +number and an optional t when the tab is current, and should +return the formatted tab group name to display in the tab bar." :type 'function :initialize 'custom-initialize-default :set (lambda (sym val) @@ -854,11 +855,13 @@ tab-bar-tab-group-format-function :group 'tab-bar :version "28.1") -(defun tab-bar-tab-group-format-default (tab i) - (propertize - (concat (if tab-bar-tab-hints (format "%d " i) "") - (funcall tab-bar-tab-group-function tab)) - 'face 'tab-bar-tab-group-inactive)) +(defun tab-bar-tab-group-format-default (tab i &optional current-p) + (let ((name (concat (if tab-bar-tab-hints (format "%d " i) "") + (funcall tab-bar-tab-group-function tab))) + (face (if current-p + 'tab-bar-tab-group-current + 'tab-bar-tab-group-inactive))) + (propertize name 'face face))) (defcustom tab-bar-tab-group-face-function #'tab-bar-tab-group-face-default "Function to define a tab group face. @@ -881,10 +884,7 @@ tab-bar--format-tab-group `((,(intern (format "sep-%i" i)) menu-item ,(tab-bar-separator) ignore)) `((,(intern (format "group-%i" i)) menu-item - ,(if current-p - (propertize (funcall tab-bar-tab-group-function tab) - 'face 'tab-bar-tab-group-current) - (funcall tab-bar-tab-group-format-function tab i)) + ,(funcall tab-bar-tab-group-format-function tab i current-p) ,(if current-p 'ignore (or (alist-get 'binding tab) -- 2.34.1