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

Chico Alves

Investigação da PF sobre o filho Eduardo preocupa o presidente

Eduardo Bolsonaro  - Reprodução/SBT
Eduardo Bolsonaro Imagem: Reprodução/SBT

Colunista do UOL

24/04/2020 01h19

Na cabeça de Jair Bolsonaro, não faltam motivos para tirar Maurício Valeixo do cargo de diretor-geral da Polícia Federal. Para agentes com o ao alto escalão da PF, porém, algumas das causas mais fortes estão ligadas às investigações que fustigam o filho 03, o deputado Eduardo Bolsonaro (PSL-SP).

Normalmente preocupado em se mostrar confiante, Eduardo tem nos últimos tempos dado sinais de preocupação. Primeiro, com as investigações sobre fake news. Tanto que recorreu ao Supremo Tribunal Federal para tentar impedir a prorrogação da MI que investiga o disparo de notícias falsas nas redes.

"Esse gesto faz a gente supor que o envolvimento de Eduardo com ilegalidades é bem pior do que imaginávamos", comenta o deputado Junior Bozella (PSL-SP), integrante da comissão.

Um dos pivôs dessa apreensão é Eduardo Guimarães, xará lotado no gabinete do 03, responsável pela página "Bolsofeios", uma das principais propagadoras de fake news da internet. Como a jornalista Constança Rezende revelou em março, aqui no UOL, a página foi criada a partir de um IP de dentro da Câmara dos Deputados.

O e-mail vinculado a "Bolsofeios" é o correio eletrônico funcional de Guimarães, secretário parlamentar de Eduardo Bolsonaro. Assim que foi exposta pela deputada Joice Hasselmann, a página foi tirada do ar, mas seu criador continua no radar da polícia.

Guimarães é velho conhecido da família presidencial: foi responsável pela atualização das informações da campanha do então candidato Jair Bolsonaro nas redes sociais.

Hoje, ele é um dos nomes investigados também no inquérito aberto pelo STF para elucidar os ataques à reputação de seus ministros e de integrantes do Congresso. Nessa apuração, a Polícia Federal aproveitou informações levantadas na MI das Fake News.

Alguns dos personagens dessas duas investigações se repetem agora no inquérito aberto a pedido do procurador-geral da República, Augusto Aras, para identificar os responsáveis pelo protesto realizado no domingo, em frente ao Quartel General do Exército, em Brasília, que pediu o fechamento do Congresso e do Supremo.

Aras quer usar a Lei de Segurança Nacional para punir os organizadores da manifestação, os empresários que a financiaram e os deputados que ajudaram a divulgá-la. Diante disso, o filho presidencial 03 deu outra demonstração de temor. Assinou nota conjunta divulgada ontem por 25 deputados para tentar se eximir de responsabilidade pelas mensagens antidemocráticas.

No texto, Eduardo Bolsonaro e mais 24 colegas da Câmara negam ter "apoiado ou incentivado atos desfavoráveis ao parlamento, ao STF ou qualquer outra instituição". Claramente, trata-se de uma defesa prévia destinada à investigação aberta pelo Supremo, a pedido da PGR.

Essas três apurações resvalam (para dizer o mínimo) em Eduardo Bolsonaro. E deverão ter desfecho em breve.

Carlos Bolsonaro, por seu envolvimento com o chamado "gabinete do ódio", e Flávio Bolsonaro, pelo caso Queiroz, também estão na mira da PF.

Nada deixa o presidente mais intranquilo que ver seus filhos ameaçados.

ERRATA: a coluna errou ao colocar o DEM como partido de Eduardo Bolsonaro, que é filiado ao PSL-SP. O texto foi corrigido.