diff --git a/docs/changelog.rst b/docs/changelog.rst index 5db3e3f38..8141ff4b1 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -198,6 +198,8 @@ Detailed list of changes - Make erasing last command robust against commands with no output and commands in the scrollback (:pull:`10201`) +- Fix superfluous margin visible to the left and right of the tab bar when :opt:`background_opacity` is less than one and the window width is not a multiple of the cell width (:iss:`10212`) + 0.47.4 [2026-06-15] ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/kitty/tab_bar.py b/kitty/tab_bar.py index 94db2f69a..b2e76a8ef 100644 --- a/kitty/tab_bar.py +++ b/kitty/tab_bar.py @@ -23,7 +23,6 @@ from .fast_data_types import ( Color, Region, Screen, - background_opacity_of, cell_size_for_window, get_boss, get_options, @@ -763,11 +762,11 @@ class TabBar: if g.bottom < tab_bar.bottom: blank_rects.append(Border(g.left, g.bottom, g.right, tab_bar.bottom, bg)) else: - left_bg = right_bg = bg - if opts.tab_bar_margin_color is None and ( - opacity := background_opacity_of(self.os_window_id)) is not None and opacity >= 1: + if opts.tab_bar_margin_color is None: left_bg = BorderColor.tab_bar_left_edge_color right_bg = BorderColor.tab_bar_right_edge_color + else: + left_bg = right_bg = bg if g.left > tab_bar.left: blank_rects.append(Border(tab_bar.left, g.top, g.left, g.bottom, left_bg)) if g.right < tab_bar.right: