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

Relator do mensalão sugere que colega do STF usou parentesco com Collor para ingressar na Corte

Os ministros Marco Aurélio Mello e Joaquim Barbosa acompanham o julgamento do mensalão no STF no último dia 20 - Antonio Araujo/UOL
Os ministros Marco Aurélio Mello e Joaquim Barbosa acompanham o julgamento do mensalão no STF no último dia 20 Imagem: Antonio Araujo/UOL

Do UOL, em Brasília

28/09/2012 14h41Atualizada em 28/09/2012 14h46

Após o ministro Marco Aurélio Mello ter dito que estava "preocupado" com o fato de Joaquim Barbosa ser o próximo a assumir a presidência do STF (Supremo Tribunal Federal), o relator do mensalão sugeriu em nota que Mello não estudou o suficiente e se aproveitou de relações familiares para ingressar na Corte.

Mello é primo do ex-presidente da República Fernando Collor, que o nomeou para o STF. Com a aposentadoria do atual presidente, ministro Ayres Britto, que completa 70 anos em novembro, Barbosa deve assumir o comando da Corte.

“Ao contrário de quem me ofende momentaneamente, devo toda a minha ascensão profissional a estudos aprofundados, à submissão múltipla a inúmeros e diversificados métodos de avaliação acadêmica e profissional. Jamais me vali ou tirei proveito de relações de natureza familiar”, afirma o texto da nota, divulgada na noite de quinta-feira (28).

O relator do mensalão afirmou ainda que o colega costuma ser um problema para os presidentes do STF. “Um dos principais obstáculos a ser enfrentado por qualquer pessoa que ocupe a Presidência do Supremo Tribunal Federal tem por nome Marco Aurélio Mello.”

Leia a íntegra da nota de Barbosa:

"Um dos principais obstáculos a ser enfrentado por qualquer pessoa que ocupe a Presidência do Supremo Tribunal Federal tem por nome Marco Aurélio Mello. Para comprová-lo, basta que se consultem alguns dos ocupantes do cargo nos últimos 10 ou 12 anos. O apego ferrenho que tenho às regras de convivência democrática e de justiça me vem não apenas da cultura livresca, mas da  experiência concreta da vida cotidiana, da observância empírica da enorme riqueza que o progresso e a modernidade trouxeram à sociedade em que vivemos,   especialmente nos espaços verdadeiramente democráticos.

Caso venha a ter a honra de ser eleito Presidente da mais alta Corte de Justiça do nosso País nos próximos meses, como está previsto nas normas regimentais,  estou certo de que de mim não se terá  a expectativa de decisões rocambolescas e chocantes para a coletividade, de devassas indevidas em setores istrativos, de tomadas de posição de claro e deliberado confronto para com os poderes constituídos, de intervenções manifestamente "gauche", de puro exibicionismo, que parecem ser o forte do meu agressor do momento Ao contrário de quem me ofende momentaneamente, devo toda a minha ascensão profissional a estudos aprofundados, à submissão múltipla a inúmeros  e diversificados métodos de avaliação acadêmica e profissional. Jamais me vali ou tirei proveito de relações de natureza familiar.”