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

Justiça adia julgamento de indenização de fotógrafo que perdeu olho

Sergio Silva, 42, perdeu a visão do olho esquerdo ao levar um tiro de bala de borracha da PM - Caê Vasconcelos/UOL
Sergio Silva, 42, perdeu a visão do olho esquerdo ao levar um tiro de bala de borracha da PM Imagem: Caê Vasconcelos/UOL

Do UOL, em São Paulo

29/03/2023 12h45Atualizada em 29/03/2023 12h45

O novo julgamento da indenização do fotógrafo Sérgio Silva, 42, que seria realizado na manhã desta quarta (29), foi adiado pela Justiça paulista. Ele perdeu a visão do olho esquerdo ao ser alvejado por uma bala de borracha, disparada por um policial militar durante um protesto em junho de 2013, em São Paulo.

O que aconteceu

  • O relator do julgamento, Rebouças de Carvalho, tirou a decisão da pauta para analisar a nova composição dos desembargadores que julgarão o caso.
  • Um novo membro foi incluído --o desembargador Ponte Neto--, que está designado para ser segundo juiz do novo julgamento, ao lado do relator e de Décio Notarangeli, terceiro juiz.
  • Para o advogado Maurício Vasques, que trabalha para Sérgio Silva, o Judiciário deveria ter analisado a composição dos julgadores antes. Sérgio aguarda indenização há dez anos.
  • O fotógrafo pede uma indenização de R$ 1,2 milhão e pagamento pensão de R$ 2,3 mil por mês pelos danos causados.
  • A Justiça já havia negado a indenização por três vezes, alegando que o fotógrafo foi o responsável pelo próprio ferimento. O advogado de Sérgio recorreu usando como base um caso parecido, em que o estado foi responsabilizado pela perda de visão de outro fotógrafo, julgado pelo STF em 2021.

Antes do julgamento, Sérgio disse ao UOL que ainda tinha esperança —apesar do sentimento de revolta por causa da espera por uma decisão. "O que esperamos é acolhimento, responsabilidade de quem erra. Eu me sinto abandonado", disse.

Com o adiamento, o sentimento mudou. "É uma dor difícil de dizer. É uma situação que não podemos perder tempo. O Estado precisa se responsabilizar por isso. Não dá para a Justiça agir de maneira equivocada, ela tem que amparar sua vítima", lamentou.

O que disseram

É mais um capítulo da violência que eu venho sofrendo há 10 anos. Cada dia que a é como se esses 10 anos tivessem um peso ainda maior."
Sérgio Silva, fotógrafo vítima de violência policial

Na medida que teve mudanças nos julgadores, principalmente com a inclusão de um julgador que não esteve presente no primeiro julgamento, a defesa pediu para renovar a sustentação oral. Mas o relator tirou de pauta para analisar isso."
Maurício Vasques, advogado do fotógrafo

Relembre o caso

  • Na noite em que Sérgio foi alvejado, em 13 de junho de 2013, a Polícia Militar disparou 178 tiros de bala de borracha.
  • À época, o fotógrafo tinha 31 anos e estava cobria uma das manifestações contra o aumento da tarifa.
  • Sérgio havia abaixado para conferir uma foto e para ajustar o tempo de abertura do obturador de sua câmera e foi atingido pelo disparo. Ele estava na esquina da rua da Consolação com a rua Maria Antônia, no centro de São Paulo.
  • Ferido, Sérgio andou por 40 minutos para ser atendido no Hospital 9 de Julho, particular.
  • Com o tiro, ele perdeu a visão do olho esquerdo e ficou um ano sem trabalhar. Foi obrigado a se readaptar, física e psicologicamente.