On Thu Sep 7 08:50:18 2023 +0000, Dmitry Timoshkov wrote:
- if (stroke_style)
FIXME("Ignoring stroke style %p.\n", stroke_style);
- if (stroke_style_impl)
- {
if (stroke_style_impl->desc.transformType == D2D1_STROKE_TRANSFORM_TYPE_FIXED)
stroke_width /= context->drawing_state.transform.m11;
- }
This looks incomplete, and definitely not enough to remove the fixme.
Why is it only using m11 component? The idea of using m11 was suggested by geometry.c,::StrokeContainsPoint(). FIXME() can be left as is if desired.
Where is it used like that? I don't see drawing_state.transform.m11 used anywhere by itself. FIXME should stay unconditionally, because we don't use any aspect of it, like dashes or join type.
Correct way I imagine is to generate a stroked geometry that would be taking into account everything style has configured, together with current state. Obviously I don't expect this to happen in your patch.