When working in multiple files with different palettes, changing your color selection in one file changes your color selection in all files.
More often than not, this is probably undesirable behavior for most users.
Notice the selected colors while working in this file with a large palette:
Then I switch over to a different file with a different palette and colors I have no reason to ever select are now selected. I need to reselect useful colors in this file in order to work on it just because I chose different colors in another file, unrelated to this one:
Can the Color Palette panel be updated to remember foreground/background color selections per file?
Most panels don’t change when you switch files but the Layers panel does. It could be a useful improvement if the Colors panel did the same.
Sure. I would bind it to the color values? That means, every project will store the its currently selected colors. But if you switch from one project to another and it has the exact same color values in the slot then the target project’s colors are then updated to the ones you currently have.
Or should the whole palette be checked for being equal?
I think, checking the color value only would be best concerning backward compatibility. E.g. if you use a palette for C64 (only first 16 colors) then you can use the rest of the palette area to create ramps or color groups for certain uses. But at the end every C64 project uses the exact same 16 colors, not matter where thy are placed in the palette.
I think all PMNG needs to do is remember the foreground/background color indice number per project at all times, since all projects have 1-256 colors. It being up to the user to have the right color selected before placing pixels.
The commodore palette scenario you describe is interesting and it makes me think this feature may be better off as optional (checkbox in Preferences), rather than changing how PMNG works fundamentally for everyone.
Also think of connected projects (e.g. tile maps). They share the same color palette. I guess you would also not want to bind the selected color to single projects in that case.
Hmm yeah, I don’t have enough experience with these scenarios to give solid advice, to be honest.