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

PT orienta 'voto crítico' em Eduardo Leite contra Onyx para governo do RS

Eduardo Leite (PSDB), candidato ao governo do Rio Grande do Sul - Divulgação
Eduardo Leite (PSDB), candidato ao governo do Rio Grande do Sul Imagem: Divulgação

Do UOL, em São Paulo

24/10/2022 16h28

O PT orientou "voto crítico" em Eduardo Leite (PSDB) na disputa do segundo turno do governo do Rio Grande do Sul contra ex-ministro Onyx Lorenzoni (PL), candidato apoiado pelo presidente Jair Bolsonaro (PL).

Segundo o partido, os "comprometidos com a democracia" devem se unir "para derrotar Bolsonaro e o bolsonarismo neste segundo turno".

O PT estava evitando apoiar Leite de forma direta no segundo turno no Rio Grande do Sul, como tentativa de barganhar uma declaração de apoio ao ex-presidente Luiz Inácio Lula da Silva (PT) no segundo turno para presidente, mas o tucano preferiu se manter neutro e fazer críticas ao petista e a Bolsonaro.

Já tendo repudiado Lorenzoni, o Partido dos Trabalhadores agora opta pela adesão a Leite, em um cenário bastante acirrado na disputa eleitoral. O candidato petista ao governo, Edegar Pretto, ficou na terceira colocação, com apenas a 2.441 votos de diferença para Leite, que avançou em segundo.

A nota do PT-RS foi assinada pelo presidente estadual e deputado federal Paulo Pimenta, por Edegar Pretto e pelo senador Paulo Paim, além dos ex-governadores Tarso Genro e Olívio Dutra.

"Compreendendo o momento político que vivemos, decidimos recomendar o voto crítico em Eduardo Leite no domingo próximo, esperando com este gesto que todos aqueles comprometidos com a democracia se unam para derrotar Bolsonaro e o bolsonarismo neste segundo turno. Nossas divergências com Leite são muitas, e conhecidas pela sociedade gaúcha. Representamos projetos políticos distintos. Mas agora é a hora de defender o Brasil e o Rio Grande da ameaça representada pelas candidaturas de Bolsonaro e Onyx", diz a nota.

Leite permaneceu neutro no segundo turno presidencial

Eduardo Leite não quis declarar o seu voto para a Presidência da República, mas disse não votará nulo no próximo dia 30 de outubro.

"Eu respeito aqueles que façam até o voto branco e nulo, mas entendo que essa eleição precisa ter a escolha de um dos candidatos, eu vou reservar o direito de não manifestar meu voto e nem no que eu não voto obviamente", afirma.

Diferentemente de João Doria, que disse votar nulo no segundo turno, Leite se utiliza da estratégia da neutralidade pública como forma de tentar não aumentar sua rejeição nem à esquerda, nem à direita no Rio Grande do Sul.

Para vencer Onyx, o movimento é visto como estratégico para conquistar os votos da esquerda, pois Edegar Pretto teve votação similar à do tucano no primeiro turno. Ao o em que, caso declarasse voto em Lula, poderia perder eleitores de direita.

Eduardo Leite foi eleito governador do Rio Grande em Sul em 2018 e concorre à reeleição. Ele renunciou de seu cargo em março para tentar ser candidato a presidente do PSDB, mas perdeu as prévias para João Doria, que acabou nem saindo candidato. Após dizer ser contra a reeleição, o tucano gaúcho agora concorre ao seu segundo mandato.