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

Forte amizade entre Gal Costa e Pelé gerou boato de 'história de amor'

Gal Costa e Pelé em reportagem da Revista Manchete de 1979 - @capasderevistas/Twitter
Gal Costa e Pelé em reportagem da Revista Manchete de 1979 Imagem: @capasderevistas/Twitter

Colaboração para o UOL, em Santos (SP)

09/11/2022 12h31

Uma das maiores vozes da história da música brasileira, a cantora Gal Costa morreu na manhã de hoje (9), aos 77 anos, em sua casa em São Paulo. A causa da morte ainda é desconhecida.

Ao longo de seus 77 anos, Gal construiu uma forte relação com Pelé, o Rei do Futebol. Ambos chegaram inclusive a ter de desmentir boatos de um suposto romance, tamanha a proximidade entre os dois.

Em um recorte da extinta Revista Manchete do ano de 1979, divulgado no Twitter, uma reportagem dá enfoque à forte relação dos dois e diz que 'os boatos continuam', e que 'o relacionamento de Gal e Pelé, nos últimos tempos, tem dado muito o que falar'. Na capa, a seguinte frase: 'Pelé e Gal: Uma história de Amor'.

O próprio Pelé chegou a falar sobre o assunto em algumas oportunidades, sempre negando a relação. Em uma entrevista ao blog Dossiê Geral, do G1, de 2010, ele disse nunca ter se apaixonado por mulheres famosas.

"As mulheres com quem me casei - primeiro, Rose; depois, Assíria - não eram famosas. Assíria é cantora evangélica conhecida, mas não é famosa. Quando eu jogava, existia muita onda. Se eu saía para jantar com uma artista, com uma cantora, todo mundo dizia que eu estava apaixonado", disse Pelé.

Capa da Revista Manchete de 1979 - Reprodução - Reprodução
Capa da Revista Manchete de 1979
Imagem: Reprodução

"Houve aquele caso de Xuxa. Disseram também que fui apaixonado pela Luíza Brunet. Conheci Luíza, por coincidência, junto com Xuxa. Naquela época, a gente fez um trabalho junto na revista Manchete, para escolher a modelo do ano. Luíza Brunet foi, realmente, a garota que me chamou a atenção. Mas já estava casada... Devia ter 16, 17 anos. Não houve nada de paixão", complementou o Rei do Futebol, para depois citar Gal Costa ao ser questionado se a atenção por Luiza Brunet não havia se transformado em paixão.

"Não chegou porque, logo em seguida, tive todo o namoro com a Xuxa. Fala-se muito no Brasil: disseram também que fui apaixonado por Vera Fischer— minha amiga. Nunca tivemos nada. Falaram de Gal Costa. Disseram que fui apaixonado por uma menina que foi Miss Brasil, Flávia Cavalcanti. Sou apaixonado pela Assíria", acrescentou.

Torcedora do Bahia

Durante a carreira, Gal Costa gravou, entre muitos sucessos, o som "70 neles", que foi o "hino" que embalou a seleção brasileira na Copa do Mundo de 1986.

Gal Costa também regravou o "Samba Rubro-negro", música de Wilson Batista que ficou famosa, posteriormente, na voz de João Nogueira, no final da década de 70 e início dos anos 80. A letra faz referência a Zico, Adílio e Cláudio Adão, que eram nomes marcantes daquela equipe.

Torcedora do Bahia, Gal já interpretou o hino do clube ao lado de Maria Bethânia, Caetano Veloso e Gilberto Gil. A gravação foi feita no CD "Doces Bárbaros Bahia", lançado em 2000. Nas redes sociais, a equipe lamentou o falecimento da cantora, exaltou 'uma das maiores vozes da música brasileira' e o 'legado' deixado por ela.