;(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 vira meme após homenagem a soldados soviéticos na Rússia

16.fev.22 - Presidente do Brasil, Jair Bolsonaro, participa de uma cerimônia de colocação de coroa de flores no Túmulo do Soldado Desconhecido, junto ao Muro do Kremlin, em Moscou, Rússia - MAXIM SHEMETOV/REUTERS
16.fev.22 - Presidente do Brasil, Jair Bolsonaro, participa de uma cerimônia de colocação de coroa de flores no Túmulo do Soldado Desconhecido, junto ao Muro do Kremlin, em Moscou, Rússia Imagem: MAXIM SHEMETOV/REUTERS

Do UOL, em São Paulo

16/02/2022 12h46Atualizada em 23/02/2022 13h32

O primeiro compromisso oficial do presidente Jair Bolsonaro (PL) na Rússia virou piada nas redes sociais. Nesta manhã, Bolsonaro participou da entrega de uma coroa de flores no Túmulo do Soldado Desconhecido, nas imediações do Kremlin, sede do governo russo.

O Túmulo do Soldado Desconhecido é um monumento em homenagem aos milhões de soldados soviéticos que morreram durante a Segunda Guerra Mundial. A cerimônia é considerada uma formalidade em viagens oficiais de chefes de estado.

Nas redes sociais, usuários apontaram uma eventual contradição da cerimônia com o discurso de Bolsonaro. Em sua posse, em 2019, o presidente prometeu trabalhar para "livrar o Brasil do socialismo".

Em janeiro, Bolsonaro justificou a apoiadores sua viagem. Um deles diz que o presidente russo, Vladimir Putin, é líder de um país "comunista". Bolsonaro responde: "Ele é conservador sim. Eu vou estar mês que vem lá, melhores entendimentos, melhores relações comerciais".

Atualmente, o governo russo reprime qualquer tipo de oposição ao Kremlin. O próprio Putin afirmou reiteradas vezes que o modelo implantado na União Soviética não fez da Rússia um país próspero, associando o ideal comunista à inaptidão para o desenvolvimento.

Veja os memes que circulam nas redes sociais:

Presidente justifica defesa de comunistas

O presidente Jair Bolsonaro escreveu, em publicação nas redes sociais hoje, que "soldado é simplesmente soldado", para descrever sua participação em homenagem a militares soviéticos na Rússia.
"Memorial ao Soldado Desconhecido. O marco é para relembrar as perdas humanas da URSS durante a Segunda Guerra Mundial (1939-1945). 'Soldado é simplesmente soldado'", postou Bolsonaro.

O túmulo é um dos pontos altos simbólicos da celebração da vitória da URSS (União das Repúblicas Socialistas Soviéticas, estado que existiu de 1922 a 1991 sob liderança do Partido Comunista), na Segunda Guerra Mundial (1939-45, mas que começou para os soviéticos em 1941 e que é chamada no país de Grande Guerra Patriótica).

Bolsonaro repudia nazismo e pede que o mesmo seja feito com o comunismo

Após a suposta apologia ao nazismo feita pelo youtuber Bruno Aiub, conhecido como Monark, no podcast Flow, o presidente Jair Bolsonaro divulgou uma nota de repúdio ao nazismo, mas citou o comunismo ao afirmar que "outras organizações que dizimaram milhões de inocentes ao redor do mundo" também precisam ser combatidas.

Apesar da fala do presidente, há diferença entre comunismo e nazismo. Embora os regimes implantados sob as duas ideologias tenham sido ditatoriais e violentos, a proposta nazista era dizimar uma população inteira - judeus - com base na ideia de supremacia racial. No caso do regime comunista, o alvo seriam opositores ao sistema.