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

Francisco Julião Político brasileiro

16/2/1915, Bom Jardim (PE)

10/7/1999, Cuernavaca, México

Da Página 3 Pedagogia & Comunicação

10/08/2005 12h39

"Operário sem pão/ camponês sem terra /a vazia/ tambor de revolução./Viva a reforma agrária radical/ com Francisco Julião." Estes são versos de uma antiga canção lembrada pelo povo do Engenho Galiléia, em Vitória do Santo Antão, cidade pernambucana que se tornou símbolo da luta pela terra no Brasil.

Francisco Julião Arruda de Paula pertencia a uma tradicional família de proprietários de terras. Estudou na Faculdade de Direito de Recife, graduando-se em 1939. Pesquisador da cultura brasileira, em 1951 publicou seu primeiro livro, intitulado "Cachaça".

Lutando pela reforma agrária, em 1954, ajudou a fundar as Ligas Camponesas, movimento de trabalhadores rurais, que seria um embrião do Movimento dos Trabalhadores Rurais Sem-Terra (MST). Neste mesmo ano, foi eleito deputado pelo PSB (Partido Socialista Brasileiro), sendo reeleito em 1958. Quatro anos depois conseguiu uma cadeira na Câmara dos Deputados como deputado federal por Pernambuco.

Com o golpe militar de 1964, Francisco Julião teve seus direitos políticos cassados. Partiu para o exílio em dezembro de 1965, indo viver no México.

Em 1979, com a anistia política, retornou ao Brasil. Amigo de Leonel Brizola, filiou-se ao Partido Democrático Trabalhista (PDT), disputando a eleição para deputado federal em 1986, mas não conseguiu se eleger.

A partir de 1997 dedicou-se a escrever suas memórias, instalando-se novamente no México. Foi casado com Alexina Arruda de Paula, com quem teve quatro filhos. Divorciado, casou-se pela segunda vez com Regina de Castro, com quem teve uma filha.
Francisco Julião morreu de infarto, aos 84 anos, em Cuernevaca, no México. Foi cremado e deixou instruções para que suas cinzas fossem transportadas para Pernambuco, sua terra natal.