emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master 12b8094: * lisp/tab-bar.el: Fix behavior of toggle-frame-tab-bar


From: Juri Linkov
Subject: master 12b8094: * lisp/tab-bar.el: Fix behavior of toggle-frame-tab-bar (bug #46299)
Date: Tue, 16 Feb 2021 12:28:02 -0500 (EST)

branch: master
commit 12b80948fd2fc599b9ea4cc6497c007205b3e57e
Author: Bastian Beranek <bastian.beischer@rwth-aachen.de>
Commit: Juri Linkov <juri@linkov.net>

    * lisp/tab-bar.el: Fix behavior of toggle-frame-tab-bar (bug #46299)
    
    (toggle-frame-tab-bar): Add frame parameter to protect tab bar state.
    (tab-bar--update-tab-bar-lines): Check parameter.
---
 lisp/tab-bar.el | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/lisp/tab-bar.el b/lisp/tab-bar.el
index 4e47ae2..f0210e1 100644
--- a/lisp/tab-bar.el
+++ b/lisp/tab-bar.el
@@ -161,7 +161,8 @@ update."
                          (t frames))))
     ;; Loop over all frames and update default-frame-alist
     (dolist (frame frame-lst)
-      (set-frame-parameter frame 'tab-bar-lines 
(tab-bar--tab-bar-lines-for-frame frame))))
+      (unless (frame-parameter frame 'tab-bar-lines-keep-state)
+        (set-frame-parameter frame 'tab-bar-lines 
(tab-bar--tab-bar-lines-for-frame frame)))))
   (when (eq frames t)
     (setq default-frame-alist
           (cons (cons 'tab-bar-lines (if (and tab-bar-mode (eq tab-bar-show 
t)) 1 0))
@@ -233,7 +234,9 @@ new frame when the global `tab-bar-mode' is enabled, by 
using
   (add-hook 'after-make-frame-functions 'toggle-frame-tab-bar)"
   (interactive)
   (set-frame-parameter frame 'tab-bar-lines
-                       (if (> (frame-parameter frame 'tab-bar-lines) 0) 0 1)))
+                       (if (> (frame-parameter frame 'tab-bar-lines) 0) 0 1))
+  (set-frame-parameter frame 'tab-bar-lines-keep-state
+                       (not (frame-parameter frame 
'tab-bar-lines-keep-state))))
 
 (defvar tab-bar-map (make-sparse-keymap)
   "Keymap for the tab bar.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]