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

'Vivemos a crise dos 6 meses', diz Marina sobre risco de ter pasta reduzida

Marina Silva, ministra do Meio Ambiente - Reprodução/GloboNews
Marina Silva, ministra do Meio Ambiente Imagem: Reprodução/GloboNews

Do UOL, em São Paulo

25/05/2023 15h32Atualizada em 25/05/2023 15h53

A ministra Marina Silva (Meio Ambiente) afirmou em entrevista à GloboNews que o governo vive "a crise dos seis meses" em meio ao risco da pasta que ela comanda ser reduzida.

O que aconteceu?

Marina disse que a gestão Lula a pela dificuldade de ter um Congresso que ganhou mais força. "O governo fez, na transição, uma decisão correta de reestabelecer as competências do Ministério do Meio Ambiente, mas, infelizmente, uma parte do Congresso está fazendo uma retaliação porque, na gestão Lula, o Ibama tem as suas competências preservadas", afirmou a ministra.

Para a chefe do Meio Ambiente, também há conflitos de interesse porque Lula formou um governo de "frente ampla". Ainda de acordo com ela, a nova gestão ainda luta contra o retorno da estrutura ministerial do governo Bolsonaro.

"Estamos vivendo uma situação em que alguns setores querem reeditar a estrutura do governo Bolsonaro no governo Lula, desrespeitando a autonomia que o governo tem em relação à gestão", argumentou Marina.

Nesse momento, vivemos um tensionamento que não está sendo fácil, nem para o Ministério do Meio Ambiente, dos Povos Indígenas, do Desenvolvimento Agrário, dos Direitos Humanos e do combate à desigualdade racial, porque são as agendas onde o bolsonarismo atua com mais força." Marina Silva, ministra do Meio Ambiente

Marina exaltou Lula um dia após derrotas no Congresso

Durante a cerimônia de posse hoje do novo presidente do ICMBio, Mauro Pires, a ministra do Meio Ambiente agradeceu Lula e fez o sinal de L com os dedos.

"Quero agradecer ao povo brasileiro por estarmos aqui, quero agradecer ao presidente Lula por estarmos aqui, inclusive resgatando a função originária de como se escolheria a presidência do ICMBio, que seria por um comitê de busca", disse.

Nesta quarta-feira (24), o governo não conseguiu reverter perdas socioambientais na MP dos Ministérios. O texto aprovado desidratou o Ministério do Meio Ambiente e o Ministério dos Povos Indígenas e foi alvo de protestos de Marina. Até aliados apontaram falta de articulação política do Planalto para o tema.

Para o colunista do UOL Josias de Souza, a reorganização da Esplanada dos Ministérios não significou uma derrota de Marina Silva, mas mostrou que o governo Lula "levou uma surra".

É um erro afirmarmos que a Marina foi derrotada. Há muito tempo o governo não tomava uma surra igual a essa no Congresso. Tudo isso sem que o Lula desse um pio. Articulada pelo Lira, essa banda troglodita do Legislativo ou a boiada ambiental do Bolsonaro pela cerca da gestão Lula. Dizer que Marina e Sônia Guajajara foram derrotadas é muito pouco para traduzir o resultado dessa pancadaria. Lula perdeu o rumo na única área em que poderia reivindicar algum protagonismo planetário, a ambiental.
Josias de Souza, colunista do UOL