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

Moraes manda abrir inquérito contra Ibaneis e Torres por ataques no DF

Do UOL em Brasília

13/01/2023 11h42Atualizada em 13/01/2023 17h42

A decisão do ministro Alexandre de Moraes atende a um pedido da PGR (Procuradoria-Geral da República).

O inquérito vai apurar a conduta de:

  • Ibaneis Rocha (MDB), governador do DF afastado por 90 dias;
  • Anderson Torres, ex-secretário de Segurança Pública do DF (e ex-ministro da Justiça do governo Bolsonaro);
  • Fernando de Sousa Oliveira, secretário-executivo da Segurança Pública;
  • Fábio Augusto Vieira, ex-comandante-geral da PMDF (Polícia Militar do DF).

A investigação ficará com a Polícia Federal e a PGR, sob supervisão do ministro do STF (Supremo Tribunal Federal).

A democracia brasileira não será abalada, muito menos destruída, por criminosos terroristas. A defesa da Democracia e das Instituições é inegociável, pois como ainda lembrado pelo grande primeiro-ministro inglês, construir pode ser a tarefa lenta e difícil de anos. Destruir pode ser o ato impulsivo de um único dia."
Trecho do pedido feito pela PGR ao STF

Torres teve prisão decretada por Moraes e disse que vai se entregar à PF. Ele estava nos Estados Unidos nos dias dos ataques golpistas e ainda não se apresentou. Moraes também autorizou buscas na residência de Torres. Agentes da PF estiveram no local e recolheram documentos e um computador.

Ontem, a Folha revelou que a PF encontrou na casa de Torres um decreto golpista que previa, além da instituição do estado de defesa, a criação de uma comissão controlada pelo governo Jair Bolsonaro para fazer a "apuração da conformidade e legalidade do processo eleitoral" vencido pelo atual presidente, Lula (PT).

Ibaneis presta hoje depoimento na PF sobre omissão do governo do DF. O pedido da PGR diz que, "mesmo ciente do iminente risco e tendo o dever de adotar providências para evitar os fatos do dia 8", Ibaneis havia liberado manifestações na Esplanada dos Ministérios um dia antes, de acordo com a imprensa.

Secretário da Segurança minimizou riscos. O pedido da PGR cita notícia de que Fernando Oliveira afirmou em mensagem, momentos antes dos ataques, que equipes de inteligência não haviam notado "agressividade" de bolsonaristas radicais que, momentos depois, invadiram e depredaram sedes dos três poderes da República.

Comandante da PMDF é suspeito de omissão e está preso. Fábio Augusto foi detido na última terça-feira (10), após determinação do próprio Moraes. Ele era o responsável pela PMDF no último domingo (8), quando ocorreram os ataques de radicais bolsonaristas aos três Poderes.