Tough one. San Francisco has already outlawed smoking in many public places. I absolutely detest cigarettes, but I do support the right of people to smoke, and I don't think they should have to be confined to their homes to do it (though I often wish that were the case, and even then there is secondhand smoke to worry about if children are in residence).
What I do not support is littering. Throwing cigarette butts on the ground is already technically illegal, but how many smokers actually pay any attention to that law? Sure people throw plenty of other things on the ground too, but with a burning cigarette there is a rather more immediate need to get rid of it rather than carrying it around looking for a proper trash receptacle.
So I don't really have a firm answer. I just wish I had the guts to confront someone I see casually throwing a cigarette butt on the ground. I really do.