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

RJ: MPF retoma investigação criminal da morte do menino João Pedro

João Pedro, 14, morto em 18 de maio de 2020; bala que o matou tinha mesmo calibre da usada pelos policiais que invadiram a casa em que ele brincava com os amigos - Arquivo Pessoal
João Pedro, 14, morto em 18 de maio de 2020; bala que o matou tinha mesmo calibre da usada pelos policiais que invadiram a casa em que ele brincava com os amigos Imagem: Arquivo Pessoal

Rai Aquino

Colaboração para o UOL, no Rio

17/05/2021 20h08Atualizada em 17/05/2021 21h13

O MPF-RJ (Ministério Público Federal no Rio de Janeiro) vai retomar as investigações da morte do menino João Pedro Matos Pinto, 14, no âmbito criminal.

João Pedro foi assassinado no dia 18 de maio do ano ado durante uma operação das polícias Civil e Federal na comunidade onde morava, no Complexo do Salgueiro, em São Gonçalo, na região metropolitana do Rio.

Por causa do que aconteceu com o jovem na operação, o MPF-RJ abriu duas investigações, uma na esfera criminal, para apurar as responsabilidades da morte do adolescente, e outra na esfera civil, para investigar possíveis crimes de improbidade istrativa praticados pelos policiais federais que estiveram na ação.

De acordo com o MPF-RJ, a Procuradoria da República em São Gonçalo havia pedido que o processo criminal do caso fosse conduzido pelo MPRJ (Ministério Público estadual), já que, pelos relatos das vítimas ouvidas, policiais civis da Core (Coordenadoria de Recursos Especiais da Polícia Civil) é que estariam envolvidos na morte do jovem.

A Procuradoria de São Gonçalo alegou que a participação dos policiais federais na ação se deu apenas através do cumprimento de mandados de prisão.

O pedido para que o caso fosse conduzido apenas pelo MPRJ foi enviado para a 7ª Câmara de Coordenação e Revisão do MPF, em Brasília (DF). Lá, a procuradora Ela Wiecko V. de Carvalho negou os argumentos da Procuradoria de São Gonçalo, pedindo que a investigação criminal aberta no MPF-RJ prosseguisse.

"Não há como fracionar as etapas da realização da operação policial e considerá-las totalmente independentes para o fim da responsabilização penal do resultado morte. Por isso, não procede o declínio de atribuição, devendo os autos retornar à origem para que, observando-se a independência funcional, seja instaurado Procedimento Investigatório Criminal, destinado à apuração da participação de policiais federais na morte do adolescente João Pedro", escreveu a procuradora, em sua decisão.

Outras investigações

Além do MPF, a morte do jovem também é investigada pelo MPRJ e pela própria Polícia Civil, que participou da ação.

No Ministério Público estadual, o caso segue na 1ª Promotoria de Justiça de Investigação Penal Especializada dos Núcleos Niterói e São Gonçalo.

"No momento, a Promotoria de Justiça aguarda o Relatório Final do Inquérito da Delegacia de Homicídios e trabalha para a conclusão do laudo independente da reconstituição no âmbito do Procedimento Investigatório Criminal (PIC) que foi instaurado. A perspectiva é que as investigações permitam a apuração de todo o ocorrido e conduzam à justiça para todos os envolvidos", o MPRJ disse, em nota.

Já a Polícia Civil afirmou que aguarda a conclusão de laudos sobre o crime para seguir com as investigações.

"A Secretaria de Estado de Polícia Civil do Rio de Janeiro esclarece que a reprodução simulada do caso foi realizada de forma conjunta entre peritos da instituição e do Ministério Público. Cada equipe ficou encarregada de elaborar um laudo específico. A Delegacia de Homicídios de Niterói, São Gonçalo e Itaboraí aguarda o resultado do exame realizado pelo MP para anexar ao inquérito. Além disso, a Defensoria Pública e o Ministério Público estadual solicitaram à Polícia Civil de São Paulo uma contra perícia de balística nas armas apreendidas durante a ação. A Polícia Civil do Rio de Janeiro também aguarda este último laudo para a conclusão do procedimento policia", afirmou, também em nota.

Procurada pelo UOL sobre investigações do caso, a Polícia Federal não retornou.