The word "hispanic" is tied to only ONE word: Spain, and from it, the word "Spanish." The word "latino" is tied to only ONE word: Latin. Spain is a European nation peopled by caucasians; Latin is a language that served as the base for a number of European languages, including Spanish and Portuguese.
I can see someone being proud of being Mexican (my great-great grandfather was), or proud of being Peruvian, or Brazilian, or Chilean, or Argentinian, or Columbian, or even of being (like my great-great grandfather) of the blood of the brown indigenous people of those countries and NOT of caucasian European descent. I can see being proud of those things. But proud of being "hispanic" or "latino"? It means proud of not thinking very much about the actual meaning of words.
To me, that's very similar to Italian-American, German-American, Irish-American, or other terms that recognize the person's heritage while identifying themselves as being Americans.