patch 9.1.1397: tabpanel not correctly updated on :tabonly

Problem:  tabpanel not correctly updated on :tabonly
          (Maxim Kim)
Solution: force a redraw, take 'equalalways' into account
          (Naruhiko Nishino)

related: https://github.com/vim/vim/pull/17330#issuecomment-2888146370
closes: #17337

Signed-off-by: Naruhiko Nishino <naru123456789@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/testdir/test_tabpanel.vim b/src/testdir/test_tabpanel.vim
index cb3c42f..c67166e 100644
--- a/src/testdir/test_tabpanel.vim
+++ b/src/testdir/test_tabpanel.vim
@@ -496,4 +496,29 @@
   call StopVimInTerminal(buf)
 endfunc
 
+function Test_tabpanel_equalalways()
+  CheckScreendump
+
+  let lines =<< trim END
+    tabnew
+    set showtabpanel=1
+    set tabpanelopt=columns:20
+    set equalalways
+    split
+    vsplit
+  END
+  call writefile(lines, 'XTest_tabpanel_equalalways', 'D')
+
+  let buf = RunVimInTerminal('-S XTest_tabpanel_equalalways', {'rows': 10, 'cols': 78})
+  call VerifyScreenDump(buf, 'Test_tabpanel_equalalways_0', {})
+  call term_sendkeys(buf, ":set tabpanelopt=columns:10\<CR>")
+  call VerifyScreenDump(buf, 'Test_tabpanel_equalalways_1', {})
+  call term_sendkeys(buf, ":set tabpanelopt=columns:30\<CR>")
+  call VerifyScreenDump(buf, 'Test_tabpanel_equalalways_2', {})
+  call term_sendkeys(buf, ":set tabpanelopt=columns:5\<CR>")
+  call VerifyScreenDump(buf, 'Test_tabpanel_equalalways_3', {})
+
+  call StopVimInTerminal(buf)
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab