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

Bolsonaro afirma que Moro mentiu sobre interferência na PF

Do UOL, em São Paulo

26/04/2020 10h53

O presidente da República, Jair Bolsonaro (sem partido), escreveu hoje no Facebook que o ex-ministro da Justiça e Segurança Pública Sergio Moro mentiu ao falar sobre interferência na Polícia Federal.

Segundo Bolsonaro, nenhum superintendente foi trocado por ele. O presidente ainda alfinetou Moro ao dizer que existem bons policiais não apenas em Curitiba.

"Lamentavelmente o ex-ministro mentiu sobre interferência na Polícia Federal. Nenhum superintendente foi trocado por mim. Todos foram indicados pelo próprio ministro ou diretor geral. Para mim os bons Policiais estão em todo o Brasil e não apenas em Curitiba, onde trabalhava o então juiz", escreveu.

Bolsonaro ainda compartilhou um vídeo da presidente do Sindicato dos Policiais Federais em SP, Susanna Val Moore. Nele, Susanna fala sobre a autonomia do órgão, mas não é possível saber o contexto da declaração e não há menção direta ao presidente.

No vídeo, Susanna diz que "durante anos, a PF tem exercido protagonismo no combate da corrupção, exercido suas atribuições de forma independente e isso decorre da própria estrutura do órgão e da qualidade de seus agentes".

"Além disso, a PF é submetida a controles externos do MP, os principais atos de investigação necessitam de ordem judicial, já existe uma autonomia e uma história que vai continuar. Nós policiais acreditamos que a polícia federal continuará trabalhando de forma independente e sem interferência", completa.

Sergio Moro deixou o cargo de ministro da Justiça e Segurança Pública no fim da manhã de sexta-feira, atirando contra o presidente Jair Bolsonaro (sem partido), argumentando que não poderia permanecer à frente da pasta sem autonomia depois exoneração do diretor-geral da PF, Maurício Valeixo.

O ex-juiz federal afirmou que Bolsonaro revelou querer trocar a direção e as superintendências da PF por "pessoas mais próximas". Depois, Moro enviou ao Jornal Nacional, da Rede Globo, prints de uma conversa pelo Whatsapp na qual o presidente encaminha a Moro uma reportagem do site O Antagonista que revela que a PF estaria "na cola" de 10 a 12 deputados bolsonaristas. Ele diz que este é "mais um motivo para a troca" do comando da instituição, ou seja, para a demissão de Maurício Valeixo.

A reportagem se refere a um inquérito que corre no STF sobre a participação de congressistas na organização de manifestações pedindo o fechamento do Supremo e do Congresso, o que viola a Lei de Segurança Nacional.

Na sexta-feira, o UOL ouviu a avaliação da presidente do Sindicato dos Delegados de Polícia Federal de São Paulo, Tania Prado, que fez uma avaliação diferente da apresentada hoje por Bolsonaro.

"As declarações do ministro Sérgio Moro revelam fatos gravíssimos, que devem ser apurados com o rigor e celeridade necessários. É preciso dotar a Polícia Federal de autonomia na Constituição para impedir ingerências como as que estão ocorrendo", afirmou Tania.