Eeschema: when shadows are in fill-shapes mode, also draw the strokes

Otherwise, stright lines have no shadow at all. The alternative is
to special case stright lines, which means that some graphics
get stroke shadows and some don't and it looks inconsistent.

Fixes: https://gitlab.com/kicad/code/kicad/-/issues/19662
This commit is contained in:
John Beard 2025-01-17 17:21:09 +08:00
parent dd180aabdd
commit a8582e9054

View File

@ -1505,17 +1505,19 @@ void SCH_PAINTER::draw( const SCH_SHAPE* aShape, int aLayer, bool aDimmed )
else
m_gal->SetIsFill( true );
m_gal->SetIsStroke( false );
m_gal->SetFillColor( color );
}
else
{
m_gal->SetIsStroke( true );
m_gal->SetIsFill( false );
m_gal->SetLineWidth( getLineWidth( aShape, true ) );
m_gal->SetStrokeColor( color );
}
// We still always draw the stroke, as otherwise single-segment shapes
// (like a line) don't get a shadow, and special-casing them looks inconsistent.
m_gal->SetIsStroke( true );
m_gal->SetLineWidth( getLineWidth( aShape, true ) );
m_gal->SetStrokeColor( color );
drawShape( aShape );
}
else if( aLayer == LAYER_DEVICE_BACKGROUND || aLayer == LAYER_NOTES_BACKGROUND