Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unreadable nano labels if backgroundColor is transparent #2984

Open
lordgiotto opened this issue May 7, 2018 · 5 comments
Open

Unreadable nano labels if backgroundColor is transparent #2984

lordgiotto opened this issue May 7, 2018 · 5 comments
Labels
👆 Is Upstream Issue is the fault of something Hyper uses and not Hyper itself 🐛 Type: Bug Issue pertains to something wrong within Hyper

Comments

@lordgiotto
Copy link
Contributor

  • OS version and name: MacOS 10.13.4
  • Hyper.app version: 2.0.0
  • Link of a Gist with the contents of your .hyper.js: https://gist.github.com/lordgiotto/478485df770ef3a09359617453c3c115
  • Relevant information from devtools (CMD+ALT+I on macOS, CTRL+SHIFT+I elsewhere): N/A
  • The issue is reproducible in vanilla Hyper.app: With Vanilla Hyper.app, except for backgroundColor setting.

Issue

There are a lot of similar opened issues, but all miss the steps to reproduce the bug.
I noticed that it depends on backgroundColor setting.

Nano labels are not readable if backgroundColor setting is an rgba color with opacity different from 1.

Thanks for your great work btw :)

backgroundColor: 'rgba(0, 0, 0, .9)',
backgroundColor: 'rgba(0, 0, 0, .9)',


backgroundColor: 'rgba(0, 0, 0, 1)',
backgroundColor: 'rgba(0, 0, 0, 1)',

@nerrad
Copy link

nerrad commented May 12, 2018

ya happening for me too. The hyper-star-wars theme sets background color to transparent which is how it surfaced for me.

@sukima
Copy link

sukima commented Jan 27, 2019

screen shot 2019-01-27 at 7 57 59 am

Confirmed this happens in other apps as well like nnn.

@sukima
Copy link

sukima commented Jan 27, 2019

Unfortunately if you want a background image you are forced to have a transparent backgroundColor which then introduces this bug.

My guess is that when the terminal receives the reverse escape code the renderer will use the backgroundColor for the text color. But since it is transparent it doesn't show. Unfortunately by setting an opaque backgroundColor the terminal will write that color to the canvas and cover any background set in the CSS.

Since the terminal will only handle a color not a url() there is no way to have a background image without transparent and introducing this bug.

Now if only there was a setting so that reverse colors can use an opaque color while the normal text background could use the transparent background that would be great.

@chabou chabou added 🐛 Type: Bug Issue pertains to something wrong within Hyper 👆 Is Upstream Issue is the fault of something Hyper uses and not Hyper itself labels Jan 27, 2019
@chabou
Copy link
Collaborator

chabou commented Jan 27, 2019

@sukima yes, this is exactly what happens. This must be fixed directly in xterm.js

@chabou
Copy link
Collaborator

chabou commented Jan 27, 2019

Related xterm issue: xtermjs/xterm.js#1898

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
👆 Is Upstream Issue is the fault of something Hyper uses and not Hyper itself 🐛 Type: Bug Issue pertains to something wrong within Hyper
Projects
None yet
Development

No branches or pull requests

4 participants