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

Manoel Soares descobre irmã que não conhecia após entrevista com Bial

Manoel Soares descobriu que tem irmã após dar entrevista ao "Conversa com Bial" (TV Globo) - Reprodução/Globoplay
Manoel Soares descobriu que tem irmã após dar entrevista ao 'Conversa com Bial' (TV Globo) Imagem: Reprodução/Globoplay

De Splash, em São Paulo

14/11/2022 20h03Atualizada em 14/11/2022 23h42

Manoel Soares descobriu que tem uma irmã mais nova após ser entrevistado no programa "Conversa com Bial" (TV Globo). O apresentador do "Encontro" (TV Globo) contou a história no programa na manhã de hoje.

"Eu tive uma surpresa maravilhosa. [...] Eu descobri que tenho uma irmã. Convivi com meu pai até os oito anos e, por razões de violência doméstica, minha mãe acabou deixando ele. Depois disso, ele teve uma filha. [...] Essa menina me encontrou de um jeito muito, muito inesperado", explicou ele.

A atração matinal exibiu uma reportagem que mostrou Manoel fazendo uma surpresa para a irmã no quilombo do Quingoma, em Lauro de Freitas (BA), na região metropolitana de Salvador.

Antes de encontrar o irmão pela primeira vez, Amanda, que é percussionista e produtora musical, contou a história de como descobriu a relação com Manoel à repórter Luana Souza.

"Em 2020, minha irmã assistiu a um programa em que ele era apresentador, o 'É de Casa'. Ouviu ele contando um pouco de onde ele veio, da história dele, e falou que tinham ali características da nossa história", disse ela.

"Esse ano, [eu estava assistindo] o programa do Bial e comecei a me identificar realmente com a história. Tudo dava a entender que nós éramos irmãos pelo nosso pai. Aí, no meio do programa, ele fala o nome do pai", continuou, mencionando a entrevista concedida por Manoel ao jornalista em junho deste ano.

Foi total emoção. Já procurei, pega notebook, manda carta, manda e-mail, começa a fazer essa busca. [...] Ele entrou em contato comigo no outro dia, foi supercarinhoso. A gente bateu altos papos, ele contou muito sobre a nossa história, a história do nosso pai. Amanda, percussionista

Enquanto ela fazia o relato à repórter, Manoel surpreendeu a irmã e exclamou quando a encontrou: "'Você é minha cara, véio!".

Depois, o apresentador falou sobre a experiência de conhecer a irmã "perdida".

"É muito doido, parece que eu conheço ela desde que eu nasci. Olhar para ela foi absurdo, porque me vi no rosto. É assustador, mas, ao mesmo tempo, é lindo. É como encontrar o primeiro amor. Mais bonito é saber que temos um propósito de vida entrelaçado, essa conscientização racial, social. Isso tudo faz parte da minha vida", disse, emocionado.

Ele descreveu a situação como "mágica" ao falar do assunto no palco do programa matinal.

Ela é a versão do Manoel de saia! [...] É mágico. A gente se sente menos sozinho no mundo quando encontra esse tipo de conexão. Manoel Soares

No mês ado, Manoel levou outra história comovente ao palco do "Encontro". Ele se emocionou ao contar que ouviu o primeiro "eu te amo" do filho, que é autista: "Tô meio 'mexidinho' com isso", disse o apresentador, que foi parabenizado por Tati e Patrícia e ganhou uma salva de palmas da plateia.