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

Bolsonaro quer 'palanque' e motociata no 7/9 no Rio: 'Muita gente na praia'

Do UOL, em Juiz de Fora e em Brasília

16/08/2022 12h03Atualizada em 16/08/2022 12h26

O presidente e candidato à reeleição Jair Bolsonaro (PL) confirmou hoje que apoiadores realizarão uma motociata em favor do governo durante as comemorações de 7 de setembro, no Rio de Janeiro. Segundo ele, não ocorrerá um desfile militar em celebração ao feriado do bicentenário da Independência, mas "haverá um palanque" na zona sul carioca, do qual devem ecoar discursos pró-Bolsonaro.

O chefe do Executivo federal confirmou, por outro lado, que as Forças Armadas não vão realizar um desfile nos moldes tradicionais em alusão ao 7 de setembro. Segundo ele, "vai ter muita gente na praia" de Copacabana, um dos principais cartões postais do Rio, o que cria uma dificuldade de logística para Marinha, Exército e Aeronáutica.

"Teríamos dificuldade com a tropa se organizar para o desfile. Então, haverá um palanque", comentou Bolsonaro durante a primeira agenda oficial da campanha à reeleição, que ocorre hoje em Juiz de Fora (MG). A cidade foi palco do atentado a faca sofrido por ele em 6 setembro de 2018.

Já a motociata, de acordo com a expectativa relatada pelo presidente, estaria bem encaminhada. "Estão organizando uma grande motociata desde o Aterro do Flamengo, ando ali por Copacabana e indo até o Leblon", explicou.

Assim como no ano ado, o 7/9 deve ser marcado por atos de apoio ao presidente e a candidatura à reeleição e que também expõem críticas a adversários políticos e/ou institucionais (como o Supremo Tribunal Federal).

Bolsonaro não confirmou se irá ao Rio para discursar no palanque que será montado na zona sul da cidade. "Não pretendo, não sei o que eu vou fazer, dar uma palavra lá. E vamos comemorar a nossa Independência. Duzentos anos, mais duzentos de liberdade".

Na chegada a Juiz de Fora, na manhã de hoje, Bolsonaro desembarcou de moto a duas quadras do ponto onde recebeu a facada no decorrer da disputa eleitoral de 2018. Seguranças presidenciais e agentes da Polícia Federal instalaram grades para isolar o público.

Após saudar a multidão, Bolsonaro partiu em motociata em destino ao palco montado na praça Halfeld, no centro de Juiz de Fora, onde fará um discurso. Ao fim da agenda, ele deve se dirigir ao aeroporto da cidade por volta das 15h.