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

Julgamento pela morte de George Floyd começa com seleção do júri

Manifestante mostra quadro de George Floyd para um agente de segurança em frente ao prédio do Tribunal do Condado de Hennepin, em Minneapolis, onde acontece o julgamento pela morte de Floyd - Chandan Khanna/AFP
Manifestante mostra quadro de George Floyd para um agente de segurança em frente ao prédio do Tribunal do Condado de Hennepin, em Minneapolis, onde acontece o julgamento pela morte de Floyd Imagem: Chandan Khanna/AFP

Do UOL, em São Paulo*

09/03/2021 17h43

O ex-policial branco Derek Chauvin teve o início do seu julgamento hoje pela morte de George Floyd, homem negro que morreu em maio do ano ado, em Minneapolis, após ser asfixiado por quase nove minutos pelo então agente de segurança. O julgamento acontece na mesma cidade do crime a ser julgado, no estado americano de Minnesota. A primeira etapa do processo é a escolha do júri popular, que será formado por 12 jurados.

O procedimento é considerado complicado por causa da grande repercussão que a morte de Floyd teve. Após o caso se tornar público porque uma pessoa que ava pelo local filmou a abordagem policial, protestos se espalharam pelos Estados Unidos, tendo o movimento Black Lives Matter (Vidas Negras Importam) como protagonista.

A morte de Floyd, ocorrida em 25 de maio do ano ado, ganhou repercussão internacional e protestos contra o racismo também foram realizados pelo mundo. Agora, a Justiça americana tenta buscar pessoas imparciais, que tenham pouco ou nenhum conhecimento sobre o caso para compor o júri.

Ainda antes do início do julgamento, jurados em potencial receberam um questionário de 15 páginas. Entre as questões feitas a eles, estavam perguntas sobre o Black Lives Matter e a respeito do vídeo da morte de Floyd, questionando se a filmagem já foi vista por eles e, se sim, quantas vezes.

Também foi perguntado se os possíveis jurados participaram de protestos contra a violência policial.

No julgamento, os promotores devem apresentar o depoimento de uma mulher negra que afirma que Chauvin usou força excessiva contra ela em 2017. O adolescente que filmou a morte de Floyd também deve ser chamado a depor.

Chauvin comparece a tribunal

O ex-policial branco, que foi demitido junto com mais três agentes que participaram da abordagem, responde a duas acusações, uma por homicídio em segundo grau e outra por homicídio culposo. O julgamento deveria ter começado ontem, mas a promotoria queria acrescentar uma terceira acusação, por homicídio em terceiro grau. Mesmo com a questão ainda indefinida, o julgamento teve início.

Chauvin compareceu ao tribunal em Minneapolis vestindo um terno cinza e uma máscara preta, e ficou em pé atrás de uma tela de acrílico instalada como medida de proteção contra a covid-19.

A pandemia também determinou que poucas pessoas estivessem presentes no tribunal. As famílias de Floyd e Chauvin podem ser representadas por apenas uma pessoa em cada audiência.

O processo seletivo do júri pode durar cerca de três semanas e estima-se que as discussões iniciais comecem no dia 29. Um veredito não é esperado antes do final de abril.

A abordagem a Floyd que resultou na sua morte aconteceu após acusações de que ele teria tentado pagar uma compra em um loja próxima com uma nota falsa de US$ 20.

*Com informações da AFP