Upvote:1
You will not need a visa, as long as UK Border Force can verify your Canadian visa (not a problem as long as you have a sticker in your passport - some countries such as Australia do not issue these). See this gov.uk page.
If you do not have a visa sticker in your passport for whatever reason, you will need to check with your airline that they are able to verify your Canadian visa so that they will flag on your Advance Passenger Information for the UK.