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

Atos em frente a quartéis em 10 estados e no DF pedem intervenção militar

Do UOL, em São Paulo

02/11/2022 13h04Atualizada em 02/11/2022 15h30

Apoiadores do presidente Jair Bolsonaro (PL) fazem manifestações em frente a prédios militares em pelo menos dez estados e no Distrito Federal nesta quarta-feira. Os protestos ocorrem enquanto a PRF (Polícia Rodoviária Federal) ainda registra 156 bloqueios em estradas pelo país.

Há registro de atos na Bahia, Ceará, Distrito Federal, Minas Gerais, Paraná, Pernambuco, Rio de Janeiro, Rio Grande do Sul, Rio Grande do Norte, Santa Catarina e São Paulo. Os manifestantes contestam a vitória do presidente eleito Luiz Inácio Lula da Silva (PT) no último domingo e pedem intervenção militar.

Os protestos se somam aos bloqueios em rodovias federais que ocorrem desde o último domingo à noite, horas após a divulgação do resultado das urnas. No dia seguinte, manifestantes começaram a mobilizar também os atos em quarteis, que se avolumaram a partir de ontem (1) à noite.

A maioria dos protestos ocorre em grandes capitais: Brasília, São Paulo, Rio de Janeiro, Salvador, Recife e Florianópolis. Mas também há registro de atos em cidades do interior, como Mossoró (RN), Uberlândia (MG), Uberaba (MG), Araras (SP), Itu (SP) e Sorocaba (SP).

Em Brasília, os bolsonaristas entoavam gritos de "intervenção federal" em frente ao quartel-general do Exército. Apesar da chuva na capital federal, manifestantes se aglomeram em frente à praça dos Cristais.

No Rio, o grupo se concentra desde o início da manhã em frente ao Palácio Duque de Caxias, sede do CML (Comando Militar do Leste), no centro.

Em São Paulo, bolsonaristas protestam em frente ao Comando Militar do Sudeste, na região do Parque do Ibirapuera, zona sul de São Paulo.

Veja vídeos de manifestações pró-golpe em outras cidades:

Tiro de Guerra, Mossoró (RN)

Florianópolis (SC)

Quartel da Mouraria, Salvador (BA)

Comando Militar do Nordeste, Recife (PE)

Comando Militar do Sul, Porto Alegre (RS)

Quartel Pinheirinho, Curitiba (PR)

Quartel Boqueirão, Curitiba (PR)

36º Batalhão de Infantaria Mecanizado, Uberlândia (MG)

Quartel do Exército, Fortaleza (CE)