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

Oyama: Marina Silva é criticada por aliados após declarar apoio a Lula

Colaboração para o UOL, em São Paulo

13/09/2022 16h21

A ex-ministra e candidata a deputada federal por São Paulo Marina Silva (Rede) foi alvo de ataques ''duríssimos'' de aliados por sua declaração de apoio ao ex-presidente Luiz Inácio Lula da Silva. De acordo com apuração da colunista do UOL Thaís Oyama, a falta de comunicação com os aliados próximos antes do anúncio teria sido o motivo.

Durante O Radar das Eleições, Oyama afirmou que os principais aliados enxergam uma "dificuldade de construção coletiva" em Marina. Para eles, apesar de Marina apresentar um discurso de compartilhamento e divisão de decisões, ela costuma ser uma pessoa ''com muita personalidade e autonomia''

Segundo um deles, integrantes da Rede, como a porta-voz Heloisa Helena, amiga de Marina, o senador Randolfe Rodrigues e o deputado Tulio Gadelha ficaram sabendo da adesão dela à campanha de Lula pelas redes sociais do petista e teriam ficado chateados com a situação.

"Além disso, eles também criticam o fato de que Marina Silva colocou como uma contribuição 'sua' coisas que já estavam no acordo entre a Rede e o PT. Quando a Rede se coligou com o PT em abril, eles já tinham colocado a revitalização da demarcação dos povos quilombolas e terras indígenas. Eles reclamam que a ex-ministra colocou como uma contribuição programática dela ao programa do PT", completou Oyama.

Kennedy: PT avalia que criar fatos como apoio de Marina é mais produtivo para voto útil

"Há uma discussão no PT de como fazer a campanha pelo voto útil. Melhor do que se dirigir diretamente ao eleitor do Ciro pedindo que esse eleitor vote no Lula, é permitir que figuras públicas assumam esse papel. Marina fez esse discurso", disse o colunista do UOL Kennedy Alencar durante O Radar das Eleições.

Kennedy destacou que o PT avalia repetir estratégia com outras figuras públicas como Henrique Meirelles, que disputou a eleição presidencial em 2018 pelo MDB, e Aloysio Nunes Ferreira, do PSDB.

O colunista do UOL também apontou que o apoio de Marina veio no melhor momento possível. "Isso rolou no melhor momento possível para o Lula, no momento em que está se aproximando o final da eleição do 1º turno e a prioridade do PT é a campanha pelo voto útil".

Carla Araújo: Campanha de Bolsonaro pedirá ajustes na decisão do TSE sobre 7/9

A campanha de presidente Jair Bolsonaro (PL) prepara uma petição pedindo alguns ajustes na decisão do TSE (Tribunal Superior Eleitoral) que suspendeu a utilização de imagens do desfile de 7 de setembro na campanha do atual presidente. De acordo com a colunista do UOL Carla Araújo, será feito um pedido para utilização de imagens captadas após o término do desfile.

"Eles querem que pelo menos possam usar algumas imagens que foram capturadas depois do encerramento do desfile. Eles topam não usar aquelas imagens mais oficiais, mas querem usar na campanha essas imagens do encerramento do desfile", disse durante O Radar das Eleições.

Carla também apontou que a expectativa dos advogados de Bolsonaro é que a decisão do TSE seja mantida, mas pretendem pedir o ajuste da decisão como uma parte da estratégia de campanha de contestar os resultados das pesquisas eleitorais.

"Eles acreditam que é muito importante eles usarem essas imagens, porque faz parte da estratégia de reforçar o 'Datapovo'. Querem cada vez mais vez mostrar imagens de que tinha gente na rua", concluiu.

O programa O Radar das Eleições vai ao ar às terças-feiras.

Quando: toda semana, às 10h.

Onde assistir: Ao vivo na home UOL, UOL no YouTube e Facebook do UOL. Você também pode conferir nas plataformas de podcasts. Veja a íntegra do programa: