experimental.useBackgroundImageForWindow isn't working right #18721

Open
opened 2026-01-31 06:22:25 +00:00 by claunia · 22 comments
Owner

Originally created by @vunhatchuong on GitHub (Oct 20, 2022).

Description of the new feature/enhancement

I want to use Windows Terminal like tmux, But the background image doesn't stay as one with multiple panes.

image

Proposed technical implementation details (optional)

Make multiple panes use the same background

Originally created by @vunhatchuong on GitHub (Oct 20, 2022). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> # Description of the new feature/enhancement I want to use Windows Terminal like tmux, But the background image doesn't stay as one with multiple panes. ![image](https://user-images.githubusercontent.com/20581504/196844363-c2768e1e-c20a-44cb-a8cc-1a63ff562986.png) <!-- --> # Proposed technical implementation details (optional) Make multiple panes use the same background <!-- -->
claunia added the Issue-BugProduct-TerminalPriority-1Area-TerminalControl labels 2026-01-31 06:22:25 +00:00
Author
Owner

@j4james commented on GitHub (Oct 20, 2022):

There's an experimental setting called experimental.useBackgroundImageForWindow which I think is probably what you're asking for. See PR #12893.

@j4james commented on GitHub (Oct 20, 2022): There's an experimental setting called `experimental.useBackgroundImageForWindow` which I think is probably what you're asking for. See PR #12893.
Author
Owner

@vunhatchuong commented on GitHub (Oct 20, 2022):

Yep, that's what I'm looking, but it behaves really weird currently. This is with both background and background image 100% opacity.

image

@vunhatchuong commented on GitHub (Oct 20, 2022): Yep, that's what I'm looking, but it behaves really weird currently. This is with both background and background image 100% opacity. ![image](https://user-images.githubusercontent.com/20581504/196931551-78932128-54dc-48ff-ab37-8721929554d9.png)
Author
Owner

@j4james commented on GitHub (Oct 20, 2022):

Yeah, that's weird. I got the same thing on the preview version of the terminal (1.16.2641.0), but not on my dev build. I tried synchronizing the settings between the two versions to see if there was a particular setting that might be to blame, but that didn't seem to make any difference. I then tried restarting the terminal, and that fixed it.

So you may find that restarting helps, but there may also be some setting you need to change as well. Unfortunately I didn't think to backup my settings before messing with them, so I have no idea what they were when when it was broken.

Bottom line is I suspect there's a bug somewhere in this feature, but I can't reproduce it anymore. IF you can still reproduce it after a restart, it might help if you uploaded a copy of your settings here. Also what version of the terminal you're using.

@j4james commented on GitHub (Oct 20, 2022): Yeah, that's weird. I got the same thing on the preview version of the terminal (1.16.2641.0), but not on my dev build. I tried synchronizing the settings between the two versions to see if there was a particular setting that might be to blame, but that didn't seem to make any difference. I then tried restarting the terminal, and that fixed it. So you may find that restarting helps, but there may also be some setting you need to change as well. Unfortunately I didn't think to backup my settings before messing with them, so I have no idea what they were when when it was broken. Bottom line is I suspect there's a bug somewhere in this feature, but I can't reproduce it anymore. IF you can still reproduce it after a restart, it might help if you uploaded a copy of your settings here. Also what version of the terminal you're using.
Author
Owner

@vunhatchuong commented on GitHub (Oct 20, 2022):

My version is same as yours. The bug still exist even after restart.

I tried every settings I can see in the config and nothing fix it, don't know about experimental features.

@vunhatchuong commented on GitHub (Oct 20, 2022): My version is same as yours. The bug still exist even after restart. I tried every settings I can see in the config and nothing fix it, don't know about experimental features.
Author
Owner

@lhecker commented on GitHub (Oct 20, 2022):

Should we just repurpose this issue as a bug report for experimental.useBackgroundImageForWindow not working correctly?

@lhecker commented on GitHub (Oct 20, 2022): Should we just repurpose this issue as a bug report for `experimental.useBackgroundImageForWindow` not working correctly?
Author
Owner

@carlos-zamora commented on GitHub (Oct 20, 2022):

Should we just repurpose this issue as a bug report for experimental.useBackgroundImageForWindow not working correctly?

Yeah, we should.

@vunhatchuong123 could you provide us with a copy of your settings.json so that we can debug this issue?

@carlos-zamora commented on GitHub (Oct 20, 2022): > Should we just repurpose this issue as a bug report for `experimental.useBackgroundImageForWindow` not working correctly? Yeah, we should. @vunhatchuong123 could you provide us with a copy of your settings.json so that we can debug this issue?
Author
Owner

@237dmitry commented on GitHub (Oct 20, 2022):

ss-20221020231303

@237dmitry commented on GitHub (Oct 20, 2022): ![ss-20221020231303](https://user-images.githubusercontent.com/78153320/197049169-12154bbd-83a5-49f8-88d4-a3ac038311bb.png)
Author
Owner

@DHowett commented on GitHub (Oct 20, 2022):

I'm sorry, I think I'm going to need an executive summary of exactly how it's not working properly (or how it is "really weird".)

Is it transparent when it should not be?

@DHowett commented on GitHub (Oct 20, 2022): I'm sorry, I think I'm going to need an executive summary of exactly _how_ it's not working properly (or how it is "really weird".) Is it transparent when it should not be?
Author
Owner

@vunhatchuong commented on GitHub (Oct 21, 2022):

Is it transparent when it should not be?

Yes, It's completely transparent despite me putting background image opacity to 100% or background opacity to 100%.

settings.json
{
    "actions": 
    [
    ],
    "centerOnLaunch": true,
    "experimental.useBackgroundImageForWindow": true,
    "copyFormatting": "none",
    "copyOnSelect": false,
    "defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
    "disableAnimations": true,
    "initialCols": 160,
    "initialRows": 45,
    "launchMode": "focus",
    "profiles": 
    {
        "defaults": 
        {
            "backgroundImage": "C:\\Users\\Ronny\\AppData\\Local\\Packages\\Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe\\LocalState\\ctpayamir.png",
            "backgroundImageOpacity": 0.25,
            "backgroundImageStretchMode": "uniformToFill",
            "bellStyle": "none",
            "colorScheme": "Catppuccin Mocha",
            "cursorShape": "filledBox",
            "elevate": false,
            "font": 
            {
                "face": "JetBrainsMono NFM"
            },
            "opacity": 95,
            "padding": "8",
            "scrollbarState": "hidden",
            "useAcrylic": false
        },
        "list": 
        [
            {
                "commandline": "pwsh.exe -nologo",
                "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
                "hidden": false,
                "name": "PowerShell",
                "source": "Windows.Terminal.PowershellCore"
            },
            {
                "guid": "{f9ceaf27-504c-58d7-927c-d1d6a7ac7d3c}",
                "hidden": false,
                "name": "Ubuntu 22.04.1 LTS",
                "source": "CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc"
            },
            {
                "guid": "{17bf3de4-5353-5709-bcf9-835bd952a95e}",
                "hidden": true,
                "name": "Ubuntu-22.04",
                "source": "Windows.Terminal.Wsl"
            },
            {
                "commandline": "%SystemRoot%\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
                "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
                "hidden": false,
                "name": "Windows PowerShell"
            },
            {
                "commandline": "%SystemRoot%\\System32\\cmd.exe",
                "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
                "hidden": false,
                "name": "Command Prompt"
            },
            {
                "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
                "hidden": false,
                "name": "Azure Cloud Shell",
                "source": "Windows.Terminal.Azure"
            }
        ]
    },
    "schemes": 
    [
        {
            "background": "#1E1E2E",
            "black": "#45475A",
            "blue": "#89B4FA",
            "brightBlack": "#585B70",
            "brightBlue": "#89B4FA",
            "brightCyan": "#94E2D5",
            "brightGreen": "#A6E3A1",
            "brightPurple": "#F5C2E7",
            "brightRed": "#F38BA8",
            "brightWhite": "#A6ADC8",
            "brightYellow": "#F9E2AF",
            "cursorColor": "#F5E0DC",
            "cyan": "#94E2D5",
            "foreground": "#CDD6F4",
            "green": "#A6E3A1",
            "name": "Catppuccin Mocha",
            "purple": "#F5C2E7",
            "red": "#F38BA8",
            "selectionBackground": "#F5E0DC",
            "white": "#BAC2DE",
            "yellow": "#F9E2AF"
        },
    ],
    "theme": "Catppuccin Mocha",
    "themes": 
    [
        {
            "name": "Catppuccin Mocha",
            "tab": 
            {
                "background": "#313244FF",
                "showCloseButton": "always",
                "unfocusedBackground": null
            },
            "tabRow": 
            {
                "background": "#1E1E2EFF",
                "unfocusedBackground": "#181825FF"
            },
            "window": 
            {
                "applicationTheme": "dark"
            }
        }
    ]
}

@vunhatchuong commented on GitHub (Oct 21, 2022): >Is it transparent when it should not be? Yes, It's completely transparent despite me putting background image opacity to 100% or background opacity to 100%. <details> <summary> settings.json </summary> ```json { "actions": [ ], "centerOnLaunch": true, "experimental.useBackgroundImageForWindow": true, "copyFormatting": "none", "copyOnSelect": false, "defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", "disableAnimations": true, "initialCols": 160, "initialRows": 45, "launchMode": "focus", "profiles": { "defaults": { "backgroundImage": "C:\\Users\\Ronny\\AppData\\Local\\Packages\\Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe\\LocalState\\ctpayamir.png", "backgroundImageOpacity": 0.25, "backgroundImageStretchMode": "uniformToFill", "bellStyle": "none", "colorScheme": "Catppuccin Mocha", "cursorShape": "filledBox", "elevate": false, "font": { "face": "JetBrainsMono NFM" }, "opacity": 95, "padding": "8", "scrollbarState": "hidden", "useAcrylic": false }, "list": [ { "commandline": "pwsh.exe -nologo", "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}", "hidden": false, "name": "PowerShell", "source": "Windows.Terminal.PowershellCore" }, { "guid": "{f9ceaf27-504c-58d7-927c-d1d6a7ac7d3c}", "hidden": false, "name": "Ubuntu 22.04.1 LTS", "source": "CanonicalGroupLimited.Ubuntu22.04LTS_79rhkp1fndgsc" }, { "guid": "{17bf3de4-5353-5709-bcf9-835bd952a95e}", "hidden": true, "name": "Ubuntu-22.04", "source": "Windows.Terminal.Wsl" }, { "commandline": "%SystemRoot%\\System32\\WindowsPowerShell\\v1.0\\powershell.exe", "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}", "hidden": false, "name": "Windows PowerShell" }, { "commandline": "%SystemRoot%\\System32\\cmd.exe", "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}", "hidden": false, "name": "Command Prompt" }, { "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}", "hidden": false, "name": "Azure Cloud Shell", "source": "Windows.Terminal.Azure" } ] }, "schemes": [ { "background": "#1E1E2E", "black": "#45475A", "blue": "#89B4FA", "brightBlack": "#585B70", "brightBlue": "#89B4FA", "brightCyan": "#94E2D5", "brightGreen": "#A6E3A1", "brightPurple": "#F5C2E7", "brightRed": "#F38BA8", "brightWhite": "#A6ADC8", "brightYellow": "#F9E2AF", "cursorColor": "#F5E0DC", "cyan": "#94E2D5", "foreground": "#CDD6F4", "green": "#A6E3A1", "name": "Catppuccin Mocha", "purple": "#F5C2E7", "red": "#F38BA8", "selectionBackground": "#F5E0DC", "white": "#BAC2DE", "yellow": "#F9E2AF" }, ], "theme": "Catppuccin Mocha", "themes": [ { "name": "Catppuccin Mocha", "tab": { "background": "#313244FF", "showCloseButton": "always", "unfocusedBackground": null }, "tabRow": { "background": "#1E1E2EFF", "unfocusedBackground": "#181825FF" }, "window": { "applicationTheme": "dark" } } ] } ``` </details>
Author
Owner

@j4james commented on GitHub (Oct 21, 2022):

Is it transparent when it should not be?

Yep. And I'm on Windows 10, so I didn't think transparent windows were even possible. I've actually just reproduced it again now. The trick seems to be having the backgroundImageOpacity as something less than 1, but you also then need to restart the terminal for it to take affect. And note that the opacity setting is still 100.

@j4james commented on GitHub (Oct 21, 2022): > Is it transparent when it should not be? Yep. And I'm on Windows 10, so I didn't think transparent windows were even possible. I've actually just reproduced it again now. The trick seems to be having the `backgroundImageOpacity` as something less than 1, but you also then need to restart the terminal for it to take affect. And note that the `opacity` setting is still 100.
Author
Owner

@vunhatchuong commented on GitHub (Oct 21, 2022):

I think how @j4james described above is more correct, it's exactly my issue.

@vunhatchuong commented on GitHub (Oct 21, 2022): I think how @j4james described above is more correct, it's exactly my issue.
Author
Owner

@j4james commented on GitHub (Oct 21, 2022):

Without knowing anything about this code, I've got to say this line looks awfully suspicious...
43dbbd590f/src/cascadia/TerminalControl/TermControl.cpp (L531)

Unfortunately my dev build won't even start up without crashing at the moment, so I'm not in a position to experiment.

Edit: Ignore this. It looks like this code is just stopping the background color of each pane from blocking out the image.

@j4james commented on GitHub (Oct 21, 2022): Without knowing anything about this code, I've got to say this line looks awfully suspicious... https://github.com/microsoft/terminal/blob/43dbbd590fa4b46c37e9970415f8150d3c399598/src/cascadia/TerminalControl/TermControl.cpp#L531 Unfortunately my dev build won't even start up without crashing at the moment, so I'm not in a position to experiment. Edit: Ignore this. It looks like this code is just stopping the background color of each pane from blocking out the image.
Author
Owner

@237dmitry commented on GitHub (Oct 21, 2022):

In my environment all works fine but Acrylic. Need WT restarting. 1.16.2642.0

      "opacity": 0,                             //  Work with any value
      "backgroundImage": "%UserProfile%\\Path\\To\\picture.png",
      "backgroundImageAlignment": "topLeft",
      "backgroundImageOpacity": 0.9,
      "backgroundImageStretchMode": "fill",
      "useAcrylic": true,                      // Not working at all. Not sure if this should work.
@237dmitry commented on GitHub (Oct 21, 2022): In my environment all works fine but Acrylic. Need WT restarting. 1.16.2642.0 ``` "opacity": 0, // Work with any value "backgroundImage": "%UserProfile%\\Path\\To\\picture.png", "backgroundImageAlignment": "topLeft", "backgroundImageOpacity": 0.9, "backgroundImageStretchMode": "fill", "useAcrylic": true, // Not working at all. Not sure if this should work. ```
Author
Owner

@elsaco commented on GitHub (Oct 21, 2022):

I don't get what the issue is! With the useBackgroundImageForWindow set the background image is expanded beneath other panes:

experimental_on

and this is with the settings false:

experimental_off

If only useBackgroundImageForWindows is set and no backgroundImage is specified then the window background is transparent. Test was done on Win10 with terminal 1.16.2641.0.

@elsaco commented on GitHub (Oct 21, 2022): I don't get what the issue is! With the `useBackgroundImageForWindow` set the background image is expanded beneath other panes: ![experimental_on](https://user-images.githubusercontent.com/3933920/197152953-d64ba1c8-08fb-47cf-9d35-e393169954d1.png) and this is with the settings `false`: ![experimental_off](https://user-images.githubusercontent.com/3933920/197153090-c910df43-39f9-4f4d-95c5-43f5b8900731.png) If only `useBackgroundImageForWindows` is set and no `backgroundImage` is specified then the window background is transparent. Test was done on Win10 with terminal 1.16.2641.0.
Author
Owner

@DHowett commented on GitHub (Oct 21, 2022):

@elsaco @237dmitry thanks again for adding your input (as on other issues!) It may be working for you, but it clearly isn't working properly for @j4james or the original filer of this bug. That's sort-of why we consider it a bug!

I appreciate you confirming that it isn't broken for everybody. That can provide useful information to the team.

@DHowett commented on GitHub (Oct 21, 2022): @elsaco @237dmitry thanks again for adding your input (as on other issues!) It may be working for you, but it clearly isn't working properly for @j4james or the original filer of this bug. That's sort-of why we consider it a bug! I appreciate you confirming that it isn't broken for everybody. That can provide useful information to the team.
Author
Owner

@psmolkin commented on GitHub (Nov 1, 2022):

I can confirm, it's broken for me too.
win10: 19044
WT: 1.16.2641.0
When "experimental.useBackgroundImageForWindow": true the background (not background image) just disapears. And the "opacity": option doesn't make sense. Only the "backgroundImageOpacity": option does something. And that only after the restart of WT

@psmolkin commented on GitHub (Nov 1, 2022): I can confirm, it's broken for me too. win10: 19044 WT: 1.16.2641.0 When `"experimental.useBackgroundImageForWindow": true` the background (__not__ background image) just disapears. And the `"opacity": ` option doesn't make sense. Only the `"backgroundImageOpacity": ` option does something. And that only after the restart of WT
Author
Owner

@zadjii-msft commented on GitHub (Nov 21, 2022):

Ho boy I think I see this too, but maybe differently? If I set one pane to have a background image, and set experimental.useBackgroundImageForWindow: true, then that works just fine. It's just every other tab or pane that doesn't have a backgound image - they're all transparent now 😬

gh-14260-repro

notes:

there's a couple things going on

  • with useBGForWindow set, focusing a pane w/o an image makes every pane with an image transparent. Yikes.
  • set useBGForWindow:true, focus a pane with an image, then set it to useBGForWindow:false, and observe a pane with <100 opacity. You'll be able to see the BG image left behind!
  • whatever OP was seeing
@zadjii-msft commented on GitHub (Nov 21, 2022): Ho boy I think I see this too, but maybe differently? If I set one pane to have a background image, and set `experimental.useBackgroundImageForWindow: true`, then that works just fine. It's just every other tab or pane that _doesn't_ have a backgound image - they're all transparent now 😬 ![gh-14260-repro](https://user-images.githubusercontent.com/18356694/203171422-28e18fde-09c7-4b94-855d-a19698080ee2.gif) ### notes: there's a couple things going on * [ ] with useBGForWindow set, focusing a pane w/o an image makes every pane _with_ an image transparent. Yikes. * [ ] set useBGForWindow:true, focus a pane with an image, then set it to useBGForWindow:false, and observe a pane with <100 opacity. You'll be able to see the BG image left behind! * [ ] whatever OP was seeing
Author
Owner

@zadjii-msft commented on GitHub (Nov 28, 2022):

Alright I'm seeing a bunch of different things, so lemme try and teas these out:


@vunhatchuong123

This is with both background and background image 100% opacity.

That doesn't look true to me from the settings.json you posted.

    "profiles": 
    {
        "defaults": 
        {
            "backgroundImage": "C:\\Users\\Ronny\\AppData\\Local\\Packages\\Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe\\LocalState\\ctpayamir.png",
            "backgroundImageOpacity": 0.25,
            "backgroundImageStretchMode": "uniformToFill",
			// ...
            "opacity": 95,

In that blob, the "backgroundImageOpacity": 0.25, is the value being used for the whole window's BG image, hence the mostly transparent window you're seeing.


Possibly related: It looks like the opacity of the whole-window BG image wouldn't hot reload if the path didn't. That I have a fix for, 14e270d57


set useBGForWindow:true, focus a pane with an image, then set it to useBGForWindow:false, and observe a pane with <100 opacity. You'll be able to see the BG image left behind!

This I have a fix for, fdb6752da


My above gif: https://github.com/microsoft/terminal/issues/14260#issuecomment-1322740578

with useBGForWindow set, focusing a pane w/o an image makes every pane with an image transparent. Yikes

This firmly falls into "we didn't spec this, this is undefined behavior" territory. Glad we left experimental here!

What do? With this setting enabled, and a profile w/o an image focused,

  • should we still display the BG image in the pane with the image?
    • not sure this is trivially possible - it would require TermControl's communicating with each other in a very layer breaking way
  • Do we just fill in the whole BG texture of the focused control? Acrylic and all?
  • Do we make this setting a per-profile one, so focusing a pane w/o this setting enabled would just disable it?
  • Do we just toss this setting and replace it with a theme one?
    • would not work for two images in two different SxS panes
@zadjii-msft commented on GitHub (Nov 28, 2022): Alright I'm seeing a bunch of different things, so lemme try and teas these out: <hr> @vunhatchuong123 > This is with both background and background image 100% opacity. That doesn't look true to me from the `settings.json` you posted. ```jsonc "profiles": { "defaults": { "backgroundImage": "C:\\Users\\Ronny\\AppData\\Local\\Packages\\Microsoft.WindowsTerminalPreview_8wekyb3d8bbwe\\LocalState\\ctpayamir.png", "backgroundImageOpacity": 0.25, "backgroundImageStretchMode": "uniformToFill", // ... "opacity": 95, ``` In that blob, the `"backgroundImageOpacity": 0.25,` is the value being used for the whole window's BG image, hence the _mostly transparent_ window you're seeing. <hr> Possibly related: It looks like the opacity of the whole-window BG image wouldn't hot reload if the path didn't. That I have a fix for, 14e270d57 <hr> > set `useBGForWindow:true`, focus a pane with an image, then set it to `useBGForWindow:false`, and observe a pane with <100 opacity. You'll be able to see the BG image left behind! This I have a fix for, fdb6752da <hr> My above gif: https://github.com/microsoft/terminal/issues/14260#issuecomment-1322740578 > with useBGForWindow set, focusing a pane w/o an image makes every pane with an image transparent. Yikes This firmly falls into "we didn't spec this, this is undefined behavior" territory. Glad we left experimental here! What do? With this setting enabled, and a profile w/o an image focused, * should we still display the BG image in the pane with the image? - not sure this is trivially possible - it would require TermControl's communicating with each other in a very layer breaking way * Do we just fill in the whole BG texture of the focused control? Acrylic and all? * Do we make this setting a per-profile one, so focusing a pane w/o this setting enabled would just disable it? * Do we just toss this setting and replace it with a theme one? - would not work for two images in two different SxS panes
Author
Owner

@j4james commented on GitHub (Dec 6, 2022):

In that blob, the "backgroundImageOpacity": 0.25, is the value being used for the whole window's BG image, hence the mostly transparent window you're seeing.

If this is the way it's intended to work, then so be it, but I've got to say it's really confusing.

With useBackgroundImageForWindow false, the backgroundImageOpacity setting has a kind of saturating effect, determining to what extent the image is mixed with the background color, and the opacity setting determines the acrylic transparency level.

With useBackgroundImageForWindow true, the backgroundImageOpacity appears to take on a whole new meaning, controlling the pure transparency of the window. There is no acrylic effect anymore, and the opacity setting makes no difference whatsoever.

In case this is something specific to Windows 10, I've included a bunch of screenshots below demonstrating what I'm seeing. From left to right, the backgroundImageOpacity varies between 0.0, 0.5, and 1.0, and from top to bottom, the opacity varies between 0, 50, and 100.

The first set of images is with useBackgroundImageForWindow false, and the second set is with it true. Note how the opacity has no effect in the second set. And the text you're seeing is from a copy of notepad behind the terminal showing my settings - that's just blurred out by the acrylic in the first set.

useBackgroundImageForWindow false

useBackgroundImageForWindow false

useBackgroundImageForWindow true

useBackgroundImageForWindow true

@j4james commented on GitHub (Dec 6, 2022): > In that blob, the `"backgroundImageOpacity": 0.25,` is the value being used for the whole window's BG image, hence the _mostly transparent_ window you're seeing. If this is the way it's intended to work, then so be it, but I've got to say it's really confusing. With `useBackgroundImageForWindow` false, the `backgroundImageOpacity` setting has a kind of saturating effect, determining to what extent the image is mixed with the background color, and the `opacity` setting determines the acrylic transparency level. With `useBackgroundImageForWindow` true, the `backgroundImageOpacity` appears to take on a whole new meaning, controlling the pure transparency of the window. There is no acrylic effect anymore, and the `opacity` setting makes no difference whatsoever. In case this is something specific to Windows 10, I've included a bunch of screenshots below demonstrating what I'm seeing. From left to right, the `backgroundImageOpacity` varies between `0.0`, `0.5`, and `1.0`, and from top to bottom, the `opacity` varies between `0`, `50`, and `100`. The first set of images is with `useBackgroundImageForWindow` false, and the second set is with it true. Note how the opacity has no effect in the second set. And the text you're seeing is from a copy of notepad behind the terminal showing my settings - that's just blurred out by the acrylic in the first set. ### useBackgroundImageForWindow false ![useBackgroundImageForWindow false](https://user-images.githubusercontent.com/4181424/206044812-b68fedcb-53f9-477e-94cc-3f7c98c30ab6.jpg) ### useBackgroundImageForWindow true ![useBackgroundImageForWindow true](https://user-images.githubusercontent.com/4181424/206044860-2fcda180-54f8-4f5c-9c15-cc2127aa3c91.jpg)
Author
Owner

@zadjii-msft commented on GitHub (Dec 6, 2022):

I've got to say it's really confusing

YEA, it is really confusing. I've got a TODO on my whiteboard to ping the original thread about this, cause the whole feature is terribly confusing. It's got maybe too many edge cases. IMO, I want to remove that and replace it with a Theme property window.background{ .opacity, .alignment, ...}. It would be a very different experience, but might actually make more sense.

I just gotta take the time to write something up 😅

@zadjii-msft commented on GitHub (Dec 6, 2022): > I've got to say it's really confusing YEA, it is really confusing. I've got a TODO on my whiteboard to ping the original thread about this, cause the whole feature is terribly confusing. It's got maybe too many edge cases. IMO, I want to remove that and replace it with a Theme property `window.background{ .opacity, .alignment, ...}`. It would be a _very different_ experience, but might actually make more sense. I just gotta take the time to write something up 😅
Author
Owner

@Elvynia commented on GitHub (Apr 14, 2023):

I thought of opening an issue because of a window opacity problem when using experimental.useBackgroundImageForWindow. But after reading comments on this issue I don't think it would be useful so I'll just give feedback here.

I installed experimental version of windows terminal 1.16.10261.0 to use experimental.useBackgroundImageForWindow but was forced to remove it due to opacity window always 0, making text illegible despite trying all possible configurations.

Here is the profile configuration I am using:

"defaults": 
        {
            "adjustIndistinguishableColors": "indexed",
            "backgroundImage": "desktopWallpaper",
            "backgroundImageOpacity": 0.35,
            "backgroundImageStretchMode": "uniformToFill",
            "colorScheme": "Campbell",
            "font": 
            {
                "size": 13.0,
                "weight": "medium"
            },
            "intenseTextStyle": "bright",
            "opacity": 100,
            "padding": "0",
            "useAcrylic": true
        }

It works well without the experimental feature. I see my windows wallpaper with 35% opacity but the window using opacity 100% is fully solid.

With the experimental feature on and the same configuration, backgroundImageOpacity is working right but window opacity is always 0. If I use backgroundImageOpacity below 100%, I will automatically see behind the window (other window or windows desktop using the same image).

I even tried to disable windows transparency in personalization parameters but no changes. Also disabling acrylic option in windows terminal parameters did not change anything.
If you have a workaround I'll gladly test it !

@Elvynia commented on GitHub (Apr 14, 2023): I thought of opening an issue because of a window opacity problem when using experimental.useBackgroundImageForWindow. But after reading comments on this issue I don't think it would be useful so I'll just give feedback here. I installed experimental version of windows terminal 1.16.10261.0 to use experimental.useBackgroundImageForWindow but was forced to remove it due to opacity window always 0, making text illegible despite trying all possible configurations. Here is the profile configuration I am using: ``` "defaults": { "adjustIndistinguishableColors": "indexed", "backgroundImage": "desktopWallpaper", "backgroundImageOpacity": 0.35, "backgroundImageStretchMode": "uniformToFill", "colorScheme": "Campbell", "font": { "size": 13.0, "weight": "medium" }, "intenseTextStyle": "bright", "opacity": 100, "padding": "0", "useAcrylic": true } ``` It works well without the experimental feature. I see my windows wallpaper with 35% opacity but the window using opacity 100% is fully solid. With the experimental feature on and the same configuration, backgroundImageOpacity is working right but **window opacity is always 0**. If I use backgroundImageOpacity below 100%, I will automatically see behind the window (other window or windows desktop using the same image). I even tried to disable windows transparency in personalization parameters but no changes. Also disabling acrylic option in windows terminal parameters did not change anything. If you have a workaround I'll gladly test it !
Author
Owner

@lightspeed3m commented on GitHub (Aug 3, 2024):

I used https://pinetools.com/darken-image and set "backgroundImageOpacity": 1 as a workaround.

Edit: In addition to the "darken" effect, having backgroundImageOpacity set to ~0.95 to 0.98 produces an acrylic-like effect without a blur.

image

@lightspeed3m commented on GitHub (Aug 3, 2024): I used https://pinetools.com/darken-image and set "backgroundImageOpacity": 1 as a workaround. Edit: In addition to the "darken" effect, having backgroundImageOpacity set to ~0.95 to 0.98 produces an acrylic-like effect without a blur. ![image](https://github.com/user-attachments/assets/f2f27689-60bb-4acb-9f7c-56a36d5eb07f)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#18721