lmparppei / Beat

Beat - a simple and elegant screenwriting app for macOS
Other
175 stars 30 forks source link

Bug: Customize Colours doesn't keep the changes for some colours #130

Closed manutome closed 1 year ago

manutome commented 1 year ago

Issue After modifying some colors of the theme, or switching from dark to light mode, if you close the application and open it again, all changes are gone.

Steps to reproduce it:

  1. Open Beat
  2. Click on View>Customize Colours...
  3. Select the color RGB(33, 33, 33) for both Paper and Margin.
  4. Click on Save.
  5. Close Beat.

Expected result: When re-opening the application see the page and the margin are RGB(33, 33, 33).

Current result: When re-opening the application the page and the margin are RGB(40, 40, 40).

Thanks a lot!

lmparppei commented 1 year ago

Which version is this? The bug should have been fixed a while back.

manutome commented 1 year ago

Oh, sorry, I forgot to include that information. I am running Ventura, but this was also happening in the previous one, Monterey. The version of the app is the latest one (updated today - 1.981 Build 133070), and the previous one.

manutome commented 1 year ago

The changes are recorded in the .plist, but what is displayed in the app is different.

<plist version="1.0">
<dict>
    <key>Dark</key>
    <dict>
        <key>Background</key>
        <array>
            <integer>33</integer>
            <integer>33</integer>
            <integer>33</integer>
        </array>
        <key>Margin</key>
        <array>
            <integer>33</integer>
            <integer>33</integer>
            <integer>33</integer>
...     
lmparppei commented 1 year ago

Hmm, I can't reproduce this on Monterey. Does the plist get reseted after you restart the app?

manutome commented 1 year ago

No, the file keeps the changes properly, that part is working. But what is recorded in the .plist as RGB(33,33,33) then in the app is displayed as RGB(44,44,44).

color33

To get the color I want I just need to use RGB(25,25,25), so it is not a big deal to me. But it would awesome to have it working in the app.

lmparppei commented 1 year ago

Ahhh, now I get it! I misunderstood that the values didn't get saved at all, as that was the issue earlier.

I think this is caused by the fact that Beat uses calibrated colors rather than pure RGB values. There's a mismatch somewhere.

lmparppei commented 1 year ago

I think this is caused by the fact that Beat uses calibrated colors rather than pure RGB values.

Yes, it is. macOS color values are applied before calibration, so if you have true tone/night shift switched on, the actual displayed color values are different than those originally applied. As we're saving pure RGB values for the themes, they might not get displayed as set. This is a bit strange, as I thought the macOS color wells would return calibrated values.

I'll leave this issue open and will take a closer look when possible.

manutome commented 1 year ago

Thanks a lot for your quick response and your efforts, and sorry for the confusion.