Voters in canton Bern have clearly approved a law giving police increased powers for covert investigation as well as tightening regulations for demonstrations. It also allows police to remove travellers from occupied land.
Just over 76% of voters came out in favour of the controversial reform on Sunday, according to officials.
Opponents mainly from the political left, who forced a ballot box challenge, argued the law undermines democratic rights, as organisers of public protests can be held accountable for any damage during a demonstration. They also said the law is discriminating against ethnic minority groups.
Parliament had approved the amendments last year.
Proponents said covert investigation is needed to prevent serious crimes and stricter rules for demonstrations could reduce the risks of protesters damaging property without being punished for it.
The Swiss capital, Bern, is regularly the scene of public rallies.
Energy law rejected
Meanwhile, voters in canton Bern narrowly rejected amended regulations for environmentally-friendly building renovations.
The law was aimed at boosting insulation measures and renewable energy sources while reducing the number of oil and gas heating systems. It only won 49.4% of the vote.
The political centre-right, backed by the business community, successfully challenged the law to a referendum arguing the new rules would increase bureaucracy and cause additional costs.
In 2017, Swiss voters approved a law aimed at promoting renewable energy, lowering energy consumption and banning new nuclear power plants.
Bern is the second canton to throw out stricter rules applying national legislation.