People in here are arguing about whether the government should be able to allow or disallow protests, i.e. "legal" or "illegal" protests.
I think Denmark has a good middle ground solution to this: Protests must be declared to the police ahead of time, so they know it is happening. Note that this is not an application or an ask for permission! You always have permission, you only have to make the police aware that you are protesting, so they can monitor it and ensure it follows law and order and doesn't turn violent.