kovidgoyal / kitty

Cross-platform, fast, feature-rich, GPU based terminal
https://sw.kovidgoyal.net/kitty/
GNU General Public License v3.0
24.13k stars 971 forks source link

Tab bar background is non-opaque even when different color is set #2854

Closed xieve closed 4 years ago

xieve commented 4 years ago

Describe the bug With a transparent window, the tab bar is transparent no matter whether it inherits the global background color or has a specific one set.

To Reproduce Steps to reproduce the behavior:

  1. Minimal config:
    tab_bar_background #000000
    background_opacity 0.60
  2. Open a tab
  3. See transparent tab bar

Expected behavior The tab bar would be black and opaque.

Screenshots If applicable, add screenshots to help explain your problem.

Environment details OS: Arch Linux 5.7.7.arch1-1 x86_64

xieve commented 4 years ago

Sorry, I accidentally submitted half-way through the report. Ctrl+Enter is engrained differently into my muscle memory. If still needed I can also provide screenshots.

kovidgoyal commented 4 years ago

As I recall, this was deliberate, as I prefer to see the background rather than a solib bar for the empty regions.

xieve commented 4 years ago

It seems kind of inconsistent with the rest of the transparency handling though: If a color is set, there generally isn't any transparency. I also find it unlikely that someone would set a different color for their tab bar, but still want that color to be transparent. For better demonstration, see this example config:

background_opacity 0.40
inactive_tab_foreground #F8F8F2
inactive_tab_background #1A1A1A
active_tab_foreground #1A1A1A
active_tab_background #92B6F4
tab_bar_background #1A1A1B
tab_bar_style powerline

image I don't see why one would want a visible, yet transparent bar.

kovidgoyal commented 4 years ago

On Fri, Jul 17, 2020 at 05:28:15PM -0700, xieve wrote:

I don't see why one would want a visible, yet transparent bar.

The bar background is transparent not the bar. And the reason it is done this way is that if you specify a background image or background transparency, it means you want the background of everything to be that image, not a solid color. It's of course possible you want the tab bar background only to be a solid color, for some reason, and I agree that setting it to something other than none is a good signal for it, but I dont see a compelling use case for it, so again patches are welcome.

-- You are receiving this because you commented. Reply to this email directly or view it on GitHub: https://github.com/kovidgoyal/kitty/issues/2854#issuecomment-660392081

--


Dr. Kovid Goyal https://www.kovidgoyal.net https://calibre-ebook.com


kalenedrael commented 8 months ago

I wanted transparent tabs with an opaque tab bar and encountered this problem as well. I use a custom tab_bar.py that draws solid characters for the tab bar: https://gist.github.com/kalenedrael/95eac1edf9dcd4751388155e3e35a789