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

Nunes Marques vai analisar ação contra Bolsonaro por conversa com Kajuru

No STF há 5 meses, Nunes Marques já acumula uma série de posicionamentos alinhados ao Palácio do Planalto - Nelson Jr./STF
No STF há 5 meses, Nunes Marques já acumula uma série de posicionamentos alinhados ao Palácio do Planalto Imagem: Nelson Jr./STF

Do UOL, em São Paulo

14/04/2021 20h43Atualizada em 14/04/2021 21h07

O ministro Nunes Marques, do STF (Supremo Tribunal Federal), foi sorteado relator da ação movida pelo PSOL contra Jair Bolsonaro (sem partido) após a divulgação de uma conversa entre o presidente e o senador Jorge Kajuru (Cidadania-GO), no último fim de semana.

A notícia-crime foi apresentada hoje e é assinada pelos deputados federais David Miranda (RJ), Fernanda Melchionna (RS), Sâmia Bomfim (SP) e Vivi Reis (PA). Para os parlamentares, o presidente teria tentado "interferir em mandatos no Senado Federal para atingir membros do STF".

"O regime democrático, por si só, não permite qualquer espécie de intimidação, mormente quando essa intimidação emana de um presidente frente a seus adversários. E mais: uma intimidação que fere de morte uma das funções constitucionais do Congresso Nacional, qual seja, fiscalizar os atos do Poder Executivo", dizem os deputados na ação.

A cadeira da Presidência da República não pode ser usada como instrumento de chantagem, tráfico de influência ou persuasão perante outros poderes. Deputada Fernanda Melchionna (PSOL-RS)

Na ligação, gravada e divulgada por Kajuru, Bolsonaro pressiona por uma mudança no objeto da I (Comissão Parlamentar de Inquérito) da covid-19, que vai investigar a atuação do governo federal no combate à pandemia, além de analisar os rees feitos a estados e municípios neste período.

O presidente também deu a entender que, caso haja pedidos de impeachment contra ministros do STF, a instalação da I pode ser interrompida. O senador lembrou, então, que já havia apresentado um pedido de impeachment contra Alexandre de Moraes.

"Vamos lá, Kajuru, coisa importante aqui: a gente tem que fazer do limão uma limonada. Por enquanto, o que está aí é um limão, e tá para sair uma limonada. Acho que você já fez alguma coisa. Tem que peticionar o Supremo e colocar em pauta o impeachment [dos ministros] também", disse Bolsonaro.

Alinhamento ao Planalto

No Supremo há apenas cinco meses, Nunes Marques já acumula uma série de posicionamentos alinhados aos interesses do Palácio do Planalto. A mais recente foi a liberação de cultos e missas presenciais, mesmo em meio aos recordes de casos e mortes por covid-19 em todo o país. A decisão foi posteriormente revertida pelo plenário do STF por 9 votos a 2.

O ministro foi indicado por Bolsonaro com a bênção de Gilmar Mendes e de políticos do centrão. No mês ado, ele se desentendeu com o colega no julgamento em que a Segunda Turma da Corte concluiu que o ex-ministro Sergio Moro foi parcial ao condenar o ex-presidente Luiz Inácio Lula da Silva (PT) no caso do tríplex do Guarujá.

Na ocasião, após Nunes Marques dar voto favorável a Moro, Gilmar disse que "não há salvação para o juiz covarde" e rebateu o argumento do colega sobre ser "garantista". "A combinação de ação entre o Ministério Público e o juiz encontra guarida em algum texto da Constituição? Essas ações podem ser combinadas? Isso tem a ver com garantismo? Nem aqui, nem no Piauí", alfinetou o ministro.

(Com Estadão Conteúdo)