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

Manifestantes golpistas choram e se recusam a deixar QG em Minas

Do UOL, em São Paulo

06/01/2023 16h31Atualizada em 07/01/2023 09h19

Manifestantes golpistas foram retirados na sexta (6) de acampamento montado em frente ao Comando da 4ª Região Militar do Exército, em Belo Horizonte (MG).

Um deles, abraçado a outro, chorava e dizia aos agentes municipais que participavam do desmonte: "Não vai tirar, não. Pode matar (...) É o Brasil que está em jogo".

"Ninguém do Exército veio nos apoiar", disse um outro manifestante golpista em um vídeo publicado nas redes. Ao fundo, gritos de outros presentes no acampamento ecoam.

Participaram do desmonte do "QG bolsonarista" funcionários da prefeitura e agentes da guarda municipal. A Polícia Militar informou que esteve no local apenas como apoio à ação da Prefeitura de Belo Horizonte, mas "não atuou na operação".

Em nota, a prefeitura informou que "a via, que estava ocupada por estrutura irregular instalada por manifestantes, foi liberada por equipes municipais para garantir o direito constitucional da população de ir e vir".

Agressão contra profissionais da imprensa. Durante a operação, jornalistas que faziam a cobertura foram hostilizados e agredidos por manifestantes golpistas. Uma das equipes agredidas é do jornal O Tempo.

Em nota, a Sempre Editora, que publica o jornal, disse repudiar "qualquer tipo de agressão aos profissionais de imprensa em quaisquer situações."

Neste momento, em conjunto com os profissionais agredidos e com o departamento jurídico, a empresa estuda medidas judiciais cabíveis contra os agressores.

A violência contra equipes de reportagem foi citada pelo prefeito da capital mineira, Fuad Noman (PSD), ao anunciar a ação da Guarda Municipal.

  • Na quinta (5), um fotógrafo do jornal Hoje em Dia foi agredido pelos bolsonaristas.
  • Segundo a publicação, ele fotografava o acampamento de longe quando foi "descoberto" pelos presentes.
  • O fotógrafo recebeu "socos, chutes e até pauladas", e teve seu equipamento roubado, segundo o jornal.

Bolsonaristas choram e gritam após retirada

"Ninguém do Exército veio nos apoiar", disse um outro apoiador do acampamento em um vídeo publicado nas redes. Ao fundo, gritos de outros presentes no acampamento ecoam.

Errata: este conteúdo foi atualizado
Diferentemente do informado na primeira versão desta reportagem, um manifestante golpista não faz ameaças aos agentes que desmontam o acampamento, mas resiste à remoção dizendo: "Não vai tirar, não. Pode matar (...) É o Brasil que está em jogo".