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

Bolsonaro anuncia deputado Marcelo Álvaro para Ministério do Turismo

21.set.2017 - Deputado Marcelo Álvaro Antônio (PSL-MG) durante audiência na Câmara - Lúcio Bernardo Junior/Câmara dos Deputados
21.set.2017 - Deputado Marcelo Álvaro Antônio (PSL-MG) durante audiência na Câmara Imagem: Lúcio Bernardo Junior/Câmara dos Deputados

Luciana Amaral

Do UOL, em Brasília

28/11/2018 16h36Atualizada em 28/11/2018 18h21

O deputado federal Marcelo Álvaro Antônio (PSL-MG) será o novo ministro do Turismo. O anúncio foi feito nesta tarde pelo gabinete de transição, em entrevista coletiva em Brasília.

Este foi o terceiro ministro anunciado pelo governo de transição nesta quarta-feira (28). Os outros nomes foram Gustavo Canuto para o Desenvolvimento Regional e deputado Osmar Terra (MDB) para a pasta da Cidadania.

Marcelo Álvaro Antônio é empresário, natural de Belo Horizonte, cidade pela qual foi vereador entre 2013 e 2015, e está em seu primeiro mandato como deputado. Antes de se filiar ao PSL, partido de Bolsonaro, ele ou pelo PRP, PMB e PR.

Antônio é o 19º ministro anunciado do próximo governo. Quando em campanha, Bolsonaro falou que sua configuração da Esplanada dos Ministérios teria 15 pastas.

Nesta terça (27), em entrevista à imprensa, falou que o número poderá chegar a 20. Segundo Bolsonaro, não será possível atingir o número de 15 ministérios pois foi preciso manter algumas pastas para preservar a qualidade da gestão, além de órgãos que por lei deverão manter o status de ministério.

A expectativa, de acordo com a equipe de transição, é que todos os titulares restantes sejam anunciados até o final do mês, na sexta-feira (30).

Integração com outras pastas

Em entrevista à imprensa, Marcelo Antônio falou que o Turismo terá de se relacionar com diversas pastas, como Justiça – que englobará Segurança Pública –, Meio Ambiente, e Ciência e Tecnologia, para um planejamento integrado de ações.

O futuro ministro disse que agora se dedicará a analisar os dados do Turismo e realizar um diagnóstico. Ele também defendeu que a área deve ajudar a “recolocar o Brasil na rota do desenvolvimento”.

Questionado sobre sua indicação, informou que foi sugerido pela Frente Parlamentar Mista em Defesa do Turismo.

Indagado se, por ser filiado ao PSL, poderia acalmar os ânimos dos correligionários, incomodados com o baixo número de membros do partido no futuro governo, ressaltou ser indicado pela bancada do turismo. “Não contempla nenhum partido. Não contempla nenhum estado. É bom deixar isso claro”, disse.