It's amazing how many people attempt to take the term "free speech" literally and avoid reading the few sentences in the actual amendment that provide context. Free speech is absolutely not the ability to say anything to anyone at any time.
Note that I am not really taking a side on whether the actual theft of the flag was admirable or not here, I just want to make clear that just because it's constitutional for private individuals to do most anything (given that the constitution places almost no restrictions on individuals), that does not mean that the broader concept of freedom of speech only applies to governments.