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

Salles culpa gestões anteriores por queimadas na Amazônia

Presidente Jair Bolsonaro e o ministro do Meio Ambiente, Ricardo Salles - Adriano Machado/Reuters
Presidente Jair Bolsonaro e o ministro do Meio Ambiente, Ricardo Salles Imagem: Adriano Machado/Reuters

Ana Carla Bermúdez

Do UOL, em São Paulo

26/08/2019 11h27Atualizada em 26/08/2019 21h36

O ministro do Meio Ambiente, Ricardo Salles, culpou gestões anteriores à do presidente Jair Bolsonaro (PSL), em especial as do PT, pelos problemas de garimpo, queimadas e desmatamento que a Amazônia enfrenta hoje.

O ministro afirmou que o desmatamento na Amazônia vem aumentando desde 2012 e disse que a ausência de um desenvolvimento econômico sustentável na região "gera o caos que temos assistido nos últimos 20 anos".

"Não foi no governo Bolsonaro que se liberou o garimpo na Amazônia, ele está lá há 20, 30 anos", disse. "Estava lá a exploração de madeira também. Ou começou em 1° de janeiro de 2019?", questionou.

O ministro participou hoje da abertura de uma convenção da Secovi-SP, sindicato de habitação de São Paulo.

Ele fez críticas ao que chamou de excesso de "demagogia e a ideologia" na legislação ambiental.

Citando nominalmente o ex-prefeito de São Paulo Fernando Haddad (PT), criticou medidas feitas na gestão do petista, como o congelamento das tarifas de ônibus em 2013.

"Uma série de políticas públicas irracionais, ideológicas, que vão somando um caldo que não dá certo", disse. "Não foi diferente no caso da Amazônia", afirmou, estendendo a crítica às políticas adotadas durante governos petistas para a região.

Salles minimizou o aumento no número de queimadas em 2019 e disse que o problema "oscila de ano a ano".

"Esse ano aumentou muito porque está muito quente, muito seco. No ano ado e retrasado foram queimadas menores", disse.

Dados do Inpe (Instituto Nacional de Pesquisas Espaciais) apontaram uma disparada de 278% no desmatamento na região em julho deste ano, em comparação com o mesmo período do ano ado.

Salles elogiou a iniciativa do G7 de destinar US$ 20 milhões para a Amazônia. Sobre a condição de o Brasil trabalhar com ONGs para receber uma assistência de médio prazo para reflorestamento da região, o ministro disse que "quem vai decidir como usar recursos para o Brasil é o povo e o governo brasileiro".

O ministro fez ainda uma série de elogios a Bolsonaro e destacou a autorização do presidente para que as Forças Armadas atuem no combate às queimadas na Amazônia. A medida foi publicada em forma de GLO (Garantia da Lei da Ordem) na sexta-feira (23).

"É um grande esforço capitaneado pelo presidente Jair Bolsonaro para combater as ilegalidades, os crimes praticados, e por outro lado também resolver esse problema urgente das queimadas", disse.

Flávio Amary, secretário de habitação do governador João Doria (PSDB) e presidente licenciado do Secovi, se referiu a Salles como amigo e pediu uma salva de palmas pelas ações do ministro, destacando a "desburocratização" promovida por ele quando era secretário do meio ambiente do estado.

"Agradecemos tudo o que ele tem feito em defesa do meio ambiente", emendou. Toda a plateia, formada por empresários da construção civil e do mercado imobiliário, se levantou para aplaudir o ministro.