Youda008 / DoomRunner

Preset-oriented graphical launcher of various ported Doom engines (an alternative to ZDL)
GNU General Public License v3.0
203 stars 13 forks source link

Error message invisible on Windows #124

Closed ibin7777 closed 11 months ago

ibin7777 commented 11 months ago

image First of all congrats on the 1.8 launch!

And just like the screenshot, 1.8 launcher error message on startup is not readable. doesn't really matter if it's dark mode or not, it will still show up like this. Good thing that I have backed up the json file, so that I can recurrent the problem, however, up until now I haven't find a way to know what the error is about.

Youda008 commented 11 months ago

Oof, not even the button text? This feels like a Qt bug though, i will report it and see what they tell me. ~I suppose this is some Linux desktop environment?~ Sorry, didn't read the title.

Rather make a backup of the options.json, but i think it's safe to try to check the checkbox and press the button, in worst case some your option may be reset to default.

ibin7777 commented 11 months ago

Oof, not even the button text? This feels like a Qt bug though, i will report it and see what they tell me. I suppose this is some Linux desktop environment?

Rather make a backup of the options.json, but i think it's safe to try to check the checkbox and press the button, in worst case some your option may be reset to default.

I believe the error is related to the existing presets from 1.7.2, because another keeps showing up after I click X, and presumably the checkbox is for skipping same error for other presets cus after I check the box it stops appearing.

Youda008 commented 11 months ago

Yes, it is, the checkbox is there to skip the rest of the errors of the same type. It's most probably just complaining that it misses some of the new options i added in 1.8.0. It was supposed to skip these warnings in case someone is upgrading from an older version, but apparently it didn't work this time.

Youda008 commented 11 months ago

Do you still have the original options.json that caused the error message? Can you please try it with this modified version? DoomRunner-theme-workaround.zip Evidently you use Windows 11, but this problem doesn't happen in Windows 10 at all (or at least not to me).

ibin7777 commented 11 months ago

Do you still have the original options.json that caused the error message? Can you please try it with this modified version? DoomRunner-theme-workaround.zip Evidently you use Windows 11, but this problem doesn't happen in Windows 10 at all (or at least not to me).

Just tried the workaround one, it's still like that.

However think I just found out what caused it, It's the dark theme of windows. Just a blind guess of what's going on:

  1. windows theme set to dark.
  2. launching Doomrunner 1.8.1 for the first time with the json file from 1.7.2
  3. the launcher starts in default mode, with the theme set to system default.
  4. the launcher starts reading the json file
  5. launcher reads all the presets prior to the themes setting.
  6. launcher discovers errors in presets file before ever reading the themes setting.
  7. launcher pops up prompts, still, not reading themes settings.

Sorry for using childish terms, I have literally 0 knowledge in programming, but judging on what I have interpreted, maybe there's an easy fix for this, which is put the theme settings in the very beginning for launcher to read.

Also I went back to try out all the themes in the initial setups too see which one could cause this, and I discover that there's a bug for windowsvista dark mode, if I change to another theme then change back to vista dark (in windows 11 dark mode), then the vista dark theme will be bugged, displaying partially dark and light theme with some of the texts being unreadable, see screenshot below: image

Youda008 commented 11 months ago

Just a blind guess of what's going on:

1. windows theme set to dark.

2. launching Doomrunner 1.8.1 for the first time with the json file from 1.7.2

3. the launcher starts in default mode, with the theme set to system default.

4. the launcher starts reading the json file

5. launcher reads all the presets prior to the themes setting.

6. launcher discovers errors in presets file before ever reading the themes setting.

7. launcher pops up prompts, still, not reading themes settings.

That's how it works in the modified version i sent you. I moved the theme switching after all the options are already loaded, so that when the options are being loaded, the theme settings should be at defaults. I have no idea how it gets to that state with the invisible text. Do you by any chance use some Windows 11 theme overrides that are supposed to switch all applications to different colors?

Youda008 commented 11 months ago

Ah, found the issue, it's caused by this image Windows interferes with the DoomRunner's startup and tries to switch it dark colors immediatelly. However the "Window Vista" app style does not work with the dark color set, so it ends up unreadable. There is nothing i can do to fix the app style, so what i have to do is to automatically switch to "Fusion" whenever the dark colors are requested. However this mechanism is not yet initialized at the moment the options are loaded, so it just ends up stuck in the broken app style.

Youda008 commented 11 months ago

Or maybe not, maybe it's my fault after all 🤔 Can you please try this modification instead? DoomRunner-theme-workaround-2.zip This one works for me in Windows 10.

ibin7777 commented 11 months ago

Or maybe not, maybe it's my fault after all 🤔 Can you please try this modification instead? DoomRunner-theme-workaround-2.zip This one works for me in Windows 10.

image Yes it works now!

Youda008 commented 11 months ago

Ok, this bug is entirely my fault this time. Will be releasing a fixed version shortly.

Youda008 commented 11 months ago

fixed