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

Esse conteúdo é antigo

Eduardo Bolsonaro diz que vídeo de reunião causa 'fim melancólico' de Moro

27.nov.2019 - O deputado Eduardo Bolsonaro (PSL-SP) - Pedro Ladeira/Folhapress
27.nov.2019 - O deputado Eduardo Bolsonaro (PSL-SP) Imagem: Pedro Ladeira/Folhapress

Do UOL, em São Paulo

23/05/2020 19h44Atualizada em 23/05/2020 21h01

Resumo da notícia

  • Sergio Moro acusou o presidente Jair Bolsonaro de tentar interferir na Polícia Federal
  • O ex-ministro citou a reunião de 22 de abril, divulgada ontem, como prova disto
  • Porém, o deputado Eduardo Bolsonaro crê que o vídeo não incrimina o pai

Eduardo Bolsonaro, deputado federal pelo PSL e filho do presidente Jair Bolsonaro (sem partido), disse hoje que o vídeo da reunião ministerial de 22 de abril, divulgado ontem, representa uma derrota para Sergio Moro.

"O fim de mais uma narrativa e o fim melancólico de Sergio", escreveu Eduardo no Twitter. O ex-ministro acusou Bolsonaro de ter interferido na Polícia Federal para ter o a informações sobre investigações.

Em um trecho da reunião, no qual parece exaltado, o presidente falou sobre a dificuldade de trocar "gente da segurança nossa", sem citar a Polícia Federal, mas referindo-se a um funcionário "da estrutura" do Governo Federal.

É putaria o tempo todo para me atingir, mexendo com a minha família. Já tentei trocar gente da segurança nossa, oficialmente, e não consegui. Isso acabou. Eu não vou esperar foder minha família toda de sacanagem, ou amigos meus, porque não posso trocar alguém da segurança na ponta da linha — que pertence à estrutura nossa. Vai trocar! Se não puder trocar, troca o chefe dele; não pode o chefe dele? Troca o ministro. E ponto final. Não estamos aqui para brincadeira. Jair Bolsonaro

Bolsonaro afirmou na reunião que "o sistema de informações, o meu funciona", mas "os que temos oficialmente, desinformam", sem explicar exatamente quais seriam estes sistemas oficiais.

Hoje, porém, poucos antes da publicação de Eduardo Bolsonaro no Twitter, o jornal O Estado de S. Paulo teve o a um diálogo existente na investigação aberta pelo STF (Supremo Tribunal Federal). A demissão do delegado Maurício Valeixo do comando da PF teria partido do presidente Bolsonaro (sem partido), em uma mensagem enviada ao então ministro Sergio Moro, às 6h26 do dia 22 de abril. O UOL confirmou a veracidade da conversa.

Na data em questão, o presidente enviou uma mensagem a "Moro, Valeixo sai esta semana". Na sequência, Bolsonaro escreveu: "Está decidido". E logo em seguida, disse "Você pode dizer apenas a forma. A pedido ou ex oficio (sic)".

A versão contraria pronunciamento de Bolsonaro em 24 de abril, em que afirmou que Valeixo havia pedido para deixar o cargo por "cansaço". A saída do delegado foi o centro do rompimento entre o presidente e Moro, que viu na atitude do presidente tentativa de intervenção na PF.