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

Pantaleão revela novo encontro com Gabriel Santana: 'Estamos conversando'

De Splash, em São Paulo

02/04/2023 04h00

Thiago Pantaleão, 25, revelou que já marcou um novo encontro com Gabriel Santana, 23, durante uma conversa exclusiva com Splash.

O músico afirmou que os dois "estão conversando", mas também respeitando o tempo de cada um antes de pensar em qualquer possibilidade de romance.

Questionado pela reportagem, em um primeiro momento, o artista chegou a dizer que ainda não tinha dado tempo de marcar alguma coisa.

Entretanto, logo na sequência, ele lembrou: "A gente marcou de jogar? É, acabou que sim. Ele joga RPG de mesa. É muito difícil achar alguém que jogue RPG de mesa. A gente combinou de jogar, dele me ensinar".

O cantor também contou como se sentiu com a primeira conversa cara a cara: "Eu me senti realizado por ter encontrado aquele homem". Na sexta (31) ada, Gabriel foi pego de surpresa com a presença do músico no Mesacast BBB Tá On. O clima de flerte dominou parte da transmissão ao vivo, que também discutiu a saída do ator no último paredão do BBB.

"Foi um encontro gostosinho. A gente já tinha essa troca. Eu já ficava torcendo por ele no BBB. Eu ficava comentando, ficava dando um mole, ficava mandando indireta. Eu meto bronca na internet, mas eu sou muito tímido. E aí lá ele foi educado, a gente conversou, a gente teve uma troca maneira", disse.

Pantaleão afirmou que os dois estão conversando, mas que agora tem sido difícil conciliar as agendas. "A gente está conversando, respeitando o tempo um do outro. Acho que agora também tem muita coisa, porque o pós-BBB é uma loucura, a função de você gravar muitas coisas."

Antes de Gabriel entrar para o BBB, no entanto, os dois chegaram a ter um primeiro contato virtual. "Eu já sabia quem ele era, obviamente, já o acompanhava. E fiquei surpreso que ele me conhecia antes de entrar. E aí foi essa coisa tipo: 'Ah, eu gosto muito do seu trabalho.' Eu fiquei feliz demais. Logo depois ele entrou no BBB, e eu fiquei: 'Caraca, cara, isso é muito doido'. Mas agora a gente está tendo mais contato."

Como a história começou

Pantaleão - Reprodução/GShow - Reprodução/GShow
Thiago Pantaleão aparece de surpresa em live com Gabriel Santana
Imagem: Reprodução/GShow

Ainda durante o confinamento, Gabriel havia pedido à Marvvila, que é amiga de Pantaleão, para ser apresentado ao cantor.

"A única coisa que você precisa me prometer é que o Pantaleão você vai me apresentar. Eu não preciso beijar a boca dele, mas me apresentar você vai. E umas amigas gatinhas também".

Em seguida, ele perguntou se Thiago era bissexual como ele. A artista confirmou que sim, e ele respondeu: "Ai, que delícia".

Com a repercussão do comentário de Gabriel, Thiago respondeu dizendo que gostaria de ter uma hora a sós com o ator no Quarto do Líder. "Marvvila, se você me ama, você faz esse casal acontecer", escreveu o cantor no Twitter.

Depois de deixar o programa, porém, a história voltou a virar assunto nas redes sociais. Enquanto participava do Bate-Papo BBB, na terça-feira (28), o ator viu as investidas que recebeu do cantor.

"Bruna sai semana que vem, se não já era", brincou o ator, que se viu apaixonado por Bruna Griphao, que continua no game.