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

Bolsonaro faz piada sobre rampas: 'Deixei de saltar para subir no Planalto'

O presidente Jair Bolsonaro - Fábio Rodrigues Pozzebom/Agência Brasil
O presidente Jair Bolsonaro Imagem: Fábio Rodrigues Pozzebom/Agência Brasil

Colaboração para o UOL, em Brasília

26/11/2021 15h22Atualizada em 26/11/2021 15h50

Em discurso hoje, durante evento de comemoração dos 76 anos da Brigada Pára-quedista, no Rio de Janeiro, o presidente Jair Bolsonaro disse que ele "enquanto paraquedista já tinha saltando muito da rampa, mas que agora um paraquedista tinha subindo a rampa do Palácio do Planalto".

"Retornar a esse ambiente, a essa casa, é de uma emoção incomensurável. Eu me sinto como aquele jovem tenente que aqui chegou em 1972", disse Bolsonaro em seu discurso de abertura. "Tenho me esforçado para entregar um país melhor do que recebi em janeiro de 2019, e temos tudo para ser um grande país", falou o presidente.

No encerramento de sua fala, o presidente lembrou a final das Libertadores da América, que ocorre amanhã: "E lembrem-se: amanhã somos todos Flamengo", disse.

Acompanham Bolsonaro o vice-presidente, Hamilton Mourão, o general Paulo Sérgio Nogueira de Oliveira, comandante do Exército, o general Luiz Eduardo Ramos, o ministro da Defesa, o general Braga Neto, o vereador Carlos Bolsonaro (Republicanos), filho do presidente, e a deputada estadual Alana os (PSL).

Mais cedo, o presidente havia participado da cerimônia de formatura de 207 sargentos da Escola de Especialistas de Aeronáutica (EEAR) em Guaratinguetá (SP). Contrariando decreto estadual, Bolsonaro não usou máscara durante todo evento. Ao sair da base área da Aeronáutica, Bolsonaro cumprimentou um grupo de cerca de 20 apoiadores que o aguardava com camisas amarelas e bandeiras do Brasil.

Antes de partir para SP, a apoiadores em frente ao Palácio da Alvorada, o chefe do Executivo descartou a possibilidade de fechar aeroportos do Brasil para tentar reduzir o contágio da doença. "Tem que aprender a conviver com o vírus", repetiu o presidente. "Não vai vedar, rapaz. Que loucura é essa? Fechou o aeroporto, o vírus não entra? Já está aqui dentro", declarou Bolsonaro a um apoiador, ao ser questionado sobre a chance de restringir a entrada de estrangeiros no Brasil.

O apoiador citou a quarta onda de covid-19 na Europa, mas o presidente minimizou: "Você está vendo muita Globo", disse Bolsonaro. A partir desta sexta-feira, o Reino Unido começa a impor barreiras aéreas contra a África do Sul e mais cinco países vizinhos depois de cientistas sul-africanos anunciarem a descoberta de uma nova cepa do coronavírus. Regiões da Alemanha, além de França, Itália e Áustria, têm ampliado restrições sanitárias, e Portugal voltou a exigir máscaras em espaços fechados.

Na quinta-feira, Bolsonaro, depois de se contrapor sistematicamente a medidas sanitárias para conter a covid-19, se disse contrário à realização do carnaval em 2022. Capitais brasileiras mantêm sob dúvidas a realização do evento em 2022.