fix: transparent oval outline
Closes #324
Before:
After:
I think the idea here is good, but it doesn't look quite right: your second circle is skinnier than the first one.
There are also several pre-existing weird qualities of the code that I'm going to point out (Not your fault, I just want to call them out as I see them). This code could probably do with a cleanup anyway
From above:
if (dc1 == 0xf) {
return;
}
Secret feature to skip the draw? This code seems to be really old, I think it's probably unintentional.
uint8_t strokeColor = (dc1 - 1) & 0x3;
uint8_t fillColor = (dc0 - 1) & 0x3;
This underflows, which was what was causing the dark colour you were seeing. Kinda weird behaviour.
Probably this code needs some real scrutiny and re-writing, but it's complex and people are afraid to touch it so it hasn't gotten any.
@majaha You are right about the size. I gave it a quick fix by aligning the color to the former one. Though I do think it may need a proper rewrite.
what help is needed on this?