I'm not sure what a good solution would be, as anything that interferes with the speech of others infringes free speech I guess...