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

Daniel Silveira descumpre decisão de Moraes e volta a atacar ministro

Daniel Silveira (segundo da esquerda para a direita) e Otávio Fakhoury (de branco) no evento Freedom Day - Reprodução/Instagram
Daniel Silveira (segundo da esquerda para a direita) e Otávio Fakhoury (de branco) no evento Freedom Day Imagem: Reprodução/Instagram

Do UOL, em São Paulo

21/03/2022 21h45Atualizada em 23/03/2022 06h14

O deputado federal Daniel Silveira (União Brasil-RJ) descumpriu, neste domingo (20), uma das medidas cautelares impostas por Alexandre de Moraes, do STF (Supremo Tribunal Federal), para autorizar a soltura do político, em novembro do ano ado. O deputado também voltou a atacar Moraes.

"O senhor está cometendo muitas inconstitucionalidades. O senhor tem que pegar, agir dento da constituição. O senhor está chateando toda a federação, toda a República Federativa do Brasil. Está ficando complicado para o senhor continuar vivendo aqui. Seja juiz", disse Silveira, em vídeo divulgado no Twitter.

A fala de Silveira aconteceu durante o evento Freedom Day —dia da liberdade, em tradução livre—, que reuniu conservadores em frente à Assembleia Legislativa de São Paulo.

Lá, o deputado posou para fotos com o empresário bolsonarista Otávio Fakhoury, que, assim como Silveira, é investigado pelo STF no inquérito das fake news. Para decretar a soltura do deputado, em novembro, Moraes determinou que ele não poderia ter contato com outros investigados na ação.

"Mesmo com o tempo chuvoso, reservamos algumas horas neste domingo para registrar nossa luta incansável pela liberdade", Fakhoury legendou uma sequência de fotos que publicou em seu perfil no Intagram, dentre elas uma com Silveira.

Aliado do presidente Jair Bolsonaro (PL), Silveira foi preso pela primeira vez em fevereiro do ano ado, após divulgar um vídeo com ataques aos membros do STF. Em março, também por decisão de Moraes, ele recebeu o direito de ir para a prisão domiciliar com tornozeleira eletrônica.

Mas, em junho, na avaliação da PGR (Procuradoria-Geral da República), o deputado descumpriu diversas vezes o uso de tornozeleira eletrônica durante a prisão domiciliar e, por isso, a procuradoria pediu a volta do deputado ao cárcere.

A PGR chegou a defender a condenação do deputado federal por ameaçar ministros do STF, argumentando que o direito à liberdade de expressão só é absoluto "quando considerações conflitantes mais urgentes não estiverem presentes".

Ao determinar sua soltura, Moraes estabeleceu uma série de medidas cautelares para Silveira, dentre elas a "proibição de ter qualquer forma de o ou contato com os demais investigados nos Inquéritos 4.781/DF e 4.874/DF, salvo os parlamentares federais".

Na decisão, o ministro do STF disse ainda que "o descumprimento injustificado de quaisquer dessas medidas ensejará, natural e imediatamente, o restabelecimento da ordem de prisão".