I second this.I'll just note that there is a build (which? I'm losing count) that only draws zebra when there's actually something overexposed, and does without it otherwise - so when your exposure is fine, nothing will blink and the OSD will stay.
To enable "cropped mode", you should uncomment those line as you said, but also comment out the lines that are relevant to "draw-under mode", if you don't want the problems you mentioned.
I think I should only start doing the zebra drawing after the camera is in "ready to shoot" mode (i.e. has finished focusing and metering), because that appears to be when the "shooting" OSD is drawn.
However, the only function i've found that seems to give that information is _GetShutterReadyStateVar(), but that's weird, because it doesn't seem to be defined for all camera models... although it's used in main.c and I can't see an #ifdef...
Ah, I've come across PROPCASE_SHOOTING a dozen of minutes ago, but no, I wasn't aware that it returned anything more than 0 or 1.I will have to try with 7...
EDIT: Ok, it's just double-buffered, it probably isn't during half-shoot, and half the times, I end with the wrong buffer... The problem now is, how do I tell which buffer is being used for the half-shoot OSD
Actually, I'm not sure what you mean about the ghostly appearance... here, the OSD is the exact same OSD I get with this feature disabled, except if zebra needs to show up, it will be drawn beneath it (if no zebra warnings need to be shown, it's just the usual Canon OSD without anything else).Can you give me a screenshot? By the way, how does one take screenshots in the first place (I see a few in the wiki)?