Media playback is unsupported on your device Media caption "Thank you for your donation": Justin Trudeau criticised over remarks to protester

Canadian Prime Minister Justin Trudeau has apologised for a quip that he said "lacked respect" towards an indigenous protester.

"Thank you for your donation," he said to the demonstrator as she was escorted from a Liberal Party fundraiser by security.

Opposition critics criticised him for his "smug" and "arrogant" remark.

The woman was protesting over mercury poisoning in Grassy Narrows First Nation, in northern Ontario.

She had interrupted Mr Trudeau's speech at a fundraising event for his party that was being held at the Omni King Edward Hotel in Toronto.

"Mr Trudeau, people at Grassy Narrows are suffering from mercury poisoning. You committed to addressing this crisis," she can be heard saying on video of the incident filmed by another protester.

As she was escorted out by security, Mr Trudeau quipped: "Thank you for being here, thank you for your donation tonight. I really appreciate it," to applause from the audience.

On Thursday morning, a contrite Mr Trudeau told reporters: "From time to time I'm in situations where people are expressing concerns or protesting a particular thing and I always try to be respectful and engage with them in a positive way.

"I didn't do that last night. Last night I lacked respect towards them."

Fifty years ago, the Dryden chemical company dumped tonnes of mercury into the river, contaminating the water supply.

Residents have lived under "do not consume" water advisories since 2013.

Research suggests that as many as 90% of residents experience the effects of mercury poisoning.

Successive governments have promised to clean up the water supply, but the problem remains.

An article published in the Canadian Medical Association Journal in 2017 said that the effects of mercury poisoning could continue plague the community for the next 50 years, and that immediate government action is needed.