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

'Sempre me pautei pelo profissionalismo', diz diretor da PF demitido

Maurício Valeixo, diretor-geral da PF - DENIS FERREIRA NETTO/ESTADÃO CONTEÚDO
Maurício Valeixo, diretor-geral da PF Imagem: DENIS FERREIRA NETTO/ESTADÃO CONTEÚDO

Constança Rezende e Eduardo Militão

Do UOL, em Brasília

24/04/2020 15h46

O diretor-geral da Polícia Federal (PF), Maurício Valeixo, demitido hoje pelo presidente Jair Bolsonaro, enviou uma carta aos colegas do órgão em que agradeceu o apoio dos colegas "não importando de onde viessem os desafios e os perigos inerentes a nossa árdua atividade".

No entanto, ele não citou quais desafios teriam sido enfrentados por ele. Valeixo também afirmou que, em seus 23 anos de atividade na instituição, sempre pautou sua conduta pelo trabalho e profissionalismo. "Sempre pautei minha conduta pelo trabalho e profissionalismo, e tive a felicidade de atingir o posto mais alto reservado a um policial federal."

Ele disse crer que a Polícia Federal vai agir "alinhada" a uma conduta republicana, uma ideia cunhada pelo ex-ministro da Justiça Márcio Thomaz Bastos. "Deixo o cargo com a certeza de que a Polícia Federal segue forte, unida e alinhada aos princípios republicanos mais nobres", escreveu Valeixo.

Ao pedir demissão hoje, o ex-ministro da Justiça Sergio Moro acusou o Bolsonaro de tentar interferir na corporação com a troca do diretor Maurício Valeixo. Ele afirmou o motivo da troca seria dar ao chefe do Executivo um canal direto com a polícia para obter informes de inteligência e o fato de o presidente ter "preocupações" com inquéritos que tramitam no Supremo Tribunal Federal. Uma dessas investigações atinge filhos de Bolsonaro. E ainda acusou disse que exoneração do diretor geral da PF tem informações falsas no Diário Oficial.

Sergio Moro pede demissão

Band Notí­cias

A íntegra da carta

"Prezados policiais federais, servidores istrativos, servidores contratados, colaboradores, colegas,

Na oportunidade em que deixo a função de Diretor-Geral da nossa Polícia Federal, venho expressar minha mais profunda gratidão a todos que fizeram parte e colaboraram com a gestão que ora se encerra.

Nos meus 23 anos de atividade nesta instituição, sempre pautei minha conduta pelo trabalho e profissionalismo, e tive a felicidade de atingir o posto mais alto reservado a um policial federal.

Ao chegar à Direção Geral pude reafirmar minhas convicções sobre as virtudes do órgão, ao encontrar uma organização com sólidos valores éticos e institucionais, construídos por décadas de atuação dedicada e firme dos que me antecederam.

A nossa PF de hoje é a soma do esforço diário de cada um dos valorosos servidores que por aqui aram nesses longos 76 anos de história, não importando seus cargos, funções ou lotações, pois o que nos faz fortes é o conjunto, é a unidade de ideais e de objetivos.

Neste momento, meus sentimentos não poderiam ser outros do que gratidão e reconhecimento.

Obrigado pelo apoio que recebi de todos no enfrentamento das mais diversas batalhas, não importando de onde viessem os desafios e os perigos inerentes a nossa árdua atividade.

Deixo o cargo com a certeza de que a Polícia Federal segue forte, unida e alinhada aos princípios republicanos mais nobres.

Recebi essa missão com grande entusiasmo e expectativa, e encerro esse ciclo com orgulho de ter feito parte dessa trajetória.

Sigamos fortes e em frente em nome da nossa Polícia Federal.

Muito obrigado.

Maurício Leite Valeixo

Delegado de Polícia Federal"