diff --git a/eeschema/lib_circle.cpp b/eeschema/lib_circle.cpp index 2fe1ab1f61..db372a6709 100644 --- a/eeschema/lib_circle.cpp +++ b/eeschema/lib_circle.cpp @@ -54,7 +54,10 @@ bool LIB_CIRCLE::HitTest( const wxPoint& aPosRef, int aAccuracy ) const if( abs( dist - GetRadius() ) <= mindist ) return true; - return false; + if( m_fill == FILL_TYPE::NO_FILL ) + return false; + + return dist <= GetRadius(); } diff --git a/eeschema/lib_rectangle.cpp b/eeschema/lib_rectangle.cpp index 8cd9f6245b..7be72bd160 100644 --- a/eeschema/lib_rectangle.cpp +++ b/eeschema/lib_rectangle.cpp @@ -250,7 +250,10 @@ bool LIB_RECTANGLE::HitTest( const wxPoint& aPosition, int aAccuracy ) const if( TestSegmentHit( aPosition, start, end, mindist ) ) return true; - return false; + if( m_fill == FILL_TYPE::NO_FILL ) + return false; + + return GetBoundingBox().Contains( aPosition ); }