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

Yellow atlas source warning exclamation mark is REALLY hard to see in light mode #87987

Closed
PinkSerenity opened this issue Feb 5, 2024 · 5 comments · Fixed by #88058
Closed

Comments

@PinkSerenity
Copy link

Tested versions

  • Reproducible in v4.2.1.stable.official [b09f793], v4.3.dev2.official [3524346]

System information

Windows 10.0.22631 - Vulkan (Mobile) - dedicated NVIDIA GeForce RTX 4080 Laptop GPU (NVIDIA; 31.0.15.4633) - 13th Gen Intel(R) Core(TM) i9-13900HX (32 Threads)

Issue description

When there is an issue with the tiles of an atlas source, a yellow exclamation mark will warn the user about it. When hovering, it might show useful information, like "The current atlas source has tiles outside the texture" or something like that. Unfortunately, it is really hard to see in light mode:
image
While you certainly notice that it's there if you know about it, when I wondered why I'm getting so many errors I tried debugging for at least an hour before I learned of its existence online.

Steps to reproduce

  1. Set your Editor to light mode
  2. Create a tile texture, a tileSet and an atlas source loading the texture.
  3. Add tiles to the atlas source.
  4. Edit the texture and remove some tiles.

Minimal reproduction project (MRP)

Exclamation.zip

@rsubtil
Copy link
Contributor

rsubtil commented Feb 7, 2024

A similar yellow warning icon (for node and script warnings) is handled properly in this scenario:

Dark Theme Light Theme
image image

However, for some reason, this particular icon (StatusWarning.svg) is being ignored, so no color conversion is allowed:

add_conversion_exception("StatusWarning");

@rsubtil
Copy link
Contributor

rsubtil commented Feb 7, 2024

So, this (and other icons) were added to the exception list in #15817. The node warning was also added on this PR, but was removed with #51220 due to the similar visibility issue.

So it seems safe to remove this icon from the list as well. It should also fix a couple of other scenarios:
image
image
image

@RobProductions
Copy link
Contributor

To extend off of this, the "Debugger" tab font color is now also impossible to read for me on v4.3.dev (current master)
image

Not sure if the colors have changed since 4.2 as it seems a little brighter than the screenshots you have above

@rsubtil
Copy link
Contributor

rsubtil commented Feb 18, 2024

@RobProductions I've just tested it on the latest commit (5f05e2b), before and after applying #88058, and I can't reproduce that. Can you try out the CI build (https://github.com/godotengine/godot/actions/runs/7949675459) and see if it still occurs? And if yes, provide more details about your setup/settings?

@RobProductions
Copy link
Contributor

Can you try out the CI build (https://github.com/godotengine/godot/actions/runs/7949675459) and see if it still occurs?

It does:

image

And if yes, provide more details about your setup/settings?

I'm using Windows 10 with a Ryzen 5 CPU and a GTX 1060.

Also, I believe I know what the problem is! While working on styling updates for a PR recently I discovered that certain parts of the UI don't update properly after a theme switch and only update once Godot is completely reloaded. This is because some overrides to the default theme happen within the constructor on certain Nodes rather than the notification_theme_changed callback, a really easy thing to miss if you're not aware of it. I did a quick search and couldn't find where this happens just yet, but if I had to guess the font color for the Debugger tab is one of these problem items.

So in summary, the reason I'm seeing this and you didn't is because I started in Default theme and switched into Light theme before I took the screenshot. Here's what the CI build looks like when I start Godot with Light theme already enabled:

image

And then if I switch to dark mode without restarting the opposite problem occurs (yellow color is too dark):

image

So the fix would be to find where this font color override happens and assign it through the callback so it can get updated when the user switches themes instead of just once at startup. Not of highest importance as users probably aren't switching themes like this constantly so you'd barely notice it, but would be nice to smooth this out. Hope that helped!

@akien-mga akien-mga added this to the 4.3 milestone May 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants