;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

'Não vou parar de bailar', diz Vini Jr após ser vítima de fala racista

Vinicius Jr comemora gol contra o Mallorca, pelo Campeonato Espanhol - Angel Martinez/Getty Images
Vinicius Jr comemora gol contra o Mallorca, pelo Campeonato Espanhol Imagem: Angel Martinez/Getty Images

Colaboração para o UOL, em São Paulo (SP)

16/09/2022 19h47

'Enquanto a cor da pele for mais importante do que o brilho nos olhos, haverá guerra'. Foi citando essa frase que Vinicius Junior quebrou o silêncio e se pronunciou após ter sido vítima de um comentário racista e xenofóbico em um programa de televisão espanhol por comemorar seus gols dançando.

Em um vídeo publicado nas redes sociais, o atacante do Real Madrid e da seleção enfatizou que não vai parar de "bailar". Seja no sambódromo, no Santiago Bernabéu ou onde ele quiser. Vini Jr também destacou que sua felicidade, de um brasileiro preto e vitorioso na Europa, incomoda e que o preconceito não é novidade em sua vida.

A manifestação do jogador de 22 anos acontece um dia depois que Pedro Bravo, presidente da Associação Espanhola de Empresários de Jogadores da Espanha, ter utilizado termos racistas e xenofóbicos para criticar o brasileiro durante o programa 'El Chiringuito'. O agente disse que Vini deveria "parar de fazer macaquice" e ir ao "sambódromo do Brasil" caso quisesse dançar.

'Enquanto a cor da pele for mais importante do que o brilho nos olhos, haverá guerra'. Tenho essa frase tatuada no corpo, e tenho atitude na minha vida que transforma essa filosofia em prática. Dizem que felicidade incomoda. A felicidade de um preto, brasileiro, vitorioso na Europa, incomoda muito mais", introduziu, no depoimento.

"Mas a minha vontade de vencer, o meu sorrido e o meu brilho nos olhos são muito maiores do que isso. Fui vítima de xenofobia e racismo em uma só declaração, mas nada disso começou ontem. Há semanas, começaram a criminalizar as minhas danças", continuou. Vini destaca que as danças não são dele, mas também de Ronaldinho, Neymar, Pogba, Griezmann e outros jogadores que costumam comemorar de tal maneira.

"São danças para celebrar a diversidade cultural do mundo. Aceitem, respeitem ou surtem, eu não vou parar. Não costumo vir publicamente rebater críticas. Sou atacado e não falo. Sou elogiado, e também não falo. Eu trabalho, e muito, dentro e fora de campo", enfatizou.

O brasileiro ainda afirmou que sempre tenta ser um exemplo de profissional e de cidadão. "Mas isso não dá clique, não engaja em rede social. Então os covardes inventam algum problema para me atacar. E o roteiro sempre termina com um pedido de desculpa, ou um 'fui mal interpretado'. Mas repito para você, racista: eu não vou parar de bailar. Seja no sambódromo, no Bernabéu, ou onde eu quiser", finalizou.

Polêmica e pedido de desculpas

A discussão no programa espanhol foi iniciada tendo como tema as comemorações de Vinicius Junior. Os os do brasileiro, inclusive, fizeram com que o capitão do Atlético de Madri, Koke, falasse ontem que "haveria" confusão se o brasileiro dançasse após marcar no clássico deste domingo (18), pelo Campeonato Espanhol.

Foi então que Pedro Bravo, ao comentar o assunto, fez a declaração racista e xenofóbica. Após a repercussão de sua fala, o agente foi ao Twitter pedir desculpas e tentar se justificar.

"Quero esclarecer que a expressão 'fazer macaquice' que utilizei mal ao qualificar a dança do Vinicius na comemoração dos gols foi de maneira metafórica ('fazer idiotices'). Como minha intenção não foi de ofender ninguém, peço sinceramente desculpas. Sinto muito!", alegou.

Por conta do episódio, a hashtag 'BailaViniJr' foi lançada e viralizou. Vinicius Junior recebeu apoio público de personalidades do futebol, como Neymar, Raphinha, Thiago Silva e Pelé. Além disso, a CBF se solidarizou com o jogador e o Real Madrid disse que vai tomar medidas legais contra "qualquer pessoa que use expressões racistas" contra seus atletas.