;(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

Flávio posta foto manipulada para simular apoio de Casimiro a Bolsonaro

O senador Flávio Bolsonaro usou uma foto manipulada para simular apoio do youtuber Casimiro à reeleição de Jair Bolsonaro - Reprodução
O senador Flávio Bolsonaro usou uma foto manipulada para simular apoio do youtuber Casimiro à reeleição de Jair Bolsonaro Imagem: Reprodução

Colaboração para o UOL, em Maceió

23/10/2022 18h02

O senador Flávio Bolsonaro (PL-RJ) compartilhou uma foto manipulada que simula apoio do youtuber Casimiro Miguel à reeleição de Jair Bolsonaro (PL). A imagem editada mostra o influenciador com dois balões que formam o número 22, mas, na verdade, os balões formam a numeração 29, idade do famoso, que já declarou voto no candidato petista Luiz Inácio Lula da Silva.

A foto verdadeira foi compartilhada por Casimiro em seu perfil no Instagram na última quinta-feira (20), quando o youtuber celebrou 29 anos. Na postagem, ele agradeceu todos que o felicitaram pela data.

"29 anos!! Vou fingir que não compramos esses balões só pra tirar essa foto e que eu não postei essa foto só pra ganhar uns likes. Muito obrigado pra quem gastou um tempinho do dia pra me dar parabéns, pra quem ainda não conseguiu, aproveite essa chance!! Amo vocês!", legendou.

Pouco tempo depois, a publicação foi manipulada para dar a entender que Casimiro é eleitor de Bolsonaro. A assessoria do influenciador confirmou a manipulação e disse que solicitou a exclusão da foto editada dos perfis que compartilharam.

O filho "01" do atual presidente, Flávio, deixou a postagem nos stories de seu Instagram por cerca de 15 horas, e só depois deletou a fake news.

Casimiro se manifestou sobre a manipulação, classificada por ele como "tosca com o intuito de enganar o eleitor". O youtuber repudiou "a utilização de sua imagem sem autorização para fins eleitorais" e reafirmou sua "posição de insatisfação com o atual governo", além de reiterar seu voto em Lula.

Casimiro vota em Lula

Casimiro Miguel já declarou voto em Luiz Inácio Lula da Silva no segundo turno da disputa presidencial. Durante interação com os seguidores, o streamer afirmou que seu lado político é aquele em oposição a Jair Bolsonaro.

"Eu vou votar no Barba (Lula). Se o Bolsonaro está de um lado, eu estou do outro", declarou.

Recentemente, alguns internautas pediram a Casimiro que entrevistasse Lula, mas o youtuber disse não possuir o "conhecimento" necessário para conversar com o petista.

"Eu não vou falar com o Lula, não vou entrevistar o Lula, não tenho conhecimento para isso. É muito chato as pessoas ficarem nesse movimento como se eu fosse um cara relevante politicamente. Eu não sou, mano", falou.

"Já falei que vou votar no Lula porque o Bolsonaro representa tudo de ruim na minha cabeça e eu não gosto do Bolsonaro e acabou. Isso não vai me levar a entrevistar o Lula ou qualquer coisa do tipo", completou.