You should be able to get up on a soap box on any street corner and start speaking your views, even if you say that Gay's should be stoned, Jews should be gassed, US President Trump should be impeached and local zoning laws should be changed to allow a brothel next to the church. The only restrictions on public speech should be in regard to interference with local business/private dwellings, bothering people in their homes or other non-public spaces, disturbing people late night, etc. (personally I would also like a noise ordinance to keep Public parks reasonably quite, you could still stand there in a sandwich board and speak at a normal volume). If I don't agree with the person speaking I can ignore them and walk away, or ask them to move from in front of my business/home.
"Free speech" should be about expressing you views without fear of censorship, no mater what you want to say. Putting limits and restrictions on what can be said, no mater how repugnant those opinions may be, goes against the entire concept of "Freedom of Speech".
I think it was US's "Founding Father" John Adams who said that when defending freedoms you will often have to defend those who are repugnant, because that is where the erosion of freedoms will begin. The restrictions will first be targeted at those on the fringes that no one will object to, and then it will grow. If you say nothing when they come for the Neo-Nazis eventually there won't be anyone left to speak out when they come for you.
I'm fully aware that my view on this is more than a little simplistic, idealistic, and naive to the point that it will beggar some peoples minds but it is how I see the topic. I would rather have someone venting their hate for X publicly and being ignored than them keeping silent and letting the hate fester and build until it actually harms someone.
I will now step down from my soap box. Thank you for your time and have a good day.