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

Moro filia general Santos Cruz de olho em Mourão e nos militares

25.nov.21 - Filiação do ex-ministro da Secretaria de Governo, o general Santos Cruz, ao Podemos - Reprodução
25.nov.21 - Filiação do ex-ministro da Secretaria de Governo, o general Santos Cruz, ao Podemos Imagem: Reprodução

Lucas Valença

Do UOL, em Brasília

25/11/2021 11h27Atualizada em 25/11/2021 15h41

O Podemos acaba de filiar o ex-ministro da Secretaria de Governo, o general Santos Cruz, amigo próximo do também ex-ministro do governo de Jair Bolsonaro (sem partido) Sergio Moro, que é pré-candidato à presidência da República.

Ao discursar, Santos Cruz afirmou que "não se pode criminalizar a política" e que é preciso combater o "fanatismo e o extremismo" na política, que, segundo ele, só levam à "violência".

Em crítica à atual gestão, o general também criticou o uso de fake news nos processos eleitorais e afirmou que o Podemos não pode "baixar o nível" de sua campanha por conta de um suposto "salvador da pátria" que estaria se apresentando à população.

"O presidente tem de ser o governante de todos os brasileiros, inclusive daqueles que não votaram nele. O presidente nosso precisa ser liberal na economia, mas não pode fechar os olhos para as causas sociais", afirmou.

Apresentado como "o próximo presidente da República" pela deputada Renata Abreu (SP), Sérgio Moro usou a palavra para atacar a PEC dos Precatórios, aprovada pela Câmara e que está sendo analisada pelo Senado.

Segundo Moro, é preciso impedir "retrocessos", que estariam sendo pautados no Congresso, e defender os "fundamentos do plano real" para evitar "colocar em risco o emprego e a capacidade de compra da população".

Para Moro, Santos Cruz "não está representando as Forças Armadas", mas carrega consigo uma "carreira militar e civil em prol do país".

A filiação do militar, porém, é entendida no Podemos como uma forma de fortalecer a relação do ex-juiz responsável pelos processos da Lava Jato de Curitiba com os militares considerados mais "moderados".

Desde o início da atual gestão, parte da cúpula das Forças Armadas tem apoiado e integrado o governo Bolsonaro. Há o entendimento no partido de Moro, porém, que a ida de um general quatro estrelas poderá enfraquecer a influência bolsonarista entre os militares.

Aos jornalistas, Renata Abreu disse que a adesão de Santos Cruz facilita a adesão de outros militares ao projeto eleitoral do partido.

Segundo a parlamentar, lideranças do Podemos já têm conversado com alguns militares da reserva.

A adesão de Cruz ao projeto também é entendido como uma maneira de fortalecer o discurso de campanha, já que a união de um ex-juiz, responsável pela prisão de dezenas de políticos, e um militar reforçaria "os valores da legenda".

Recentemente, o vice-presidente Hamilton Mourão saiu em defesa da candidatura de Moro ao afirmar que o ex-ministro é "o único da 3ª via" que teria capacidade de se cacifar para um eventual segundo turno e que o ex-juiz teria "luz própria".

"Vai depender de ele conseguir empolgar a massa. Ele empolga uma parcela esclarecida da população, mas hoje quem empolga massa são só duas pessoas: Bolsonaro e Lula", afirmou em entrevista ao UOL.

Santos Cruz foi o terceiro ministro de Jair Bolsonaro a deixar o cargo após um conflito com o vereador carioca Carlos Bolsonaro (Republicanos), filho do presidente.

O evento de filiação também contou com a presença de presidentes estaduais da legenda, que discutem estratégias para a campanha de 2022.