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

Thiaguinho sobre colocar sonhos em prática: 'Realizar é mais gostoso'

Colaboração para o UOL, em São Paulo

04/06/2021 04h00

Imagina dois "T(h)iagos" em um encontro especial regado de conversa boa e muita música. Aconteceu! Tiago Abravanel recebeu Thiaguinho na estreia de "Sai da Caixa", nova atração do UOL. Toda semana, convidados especiais para cantar músicas de fora de seu repertório e bater um papo descolado sobre a vida.

A amizade entre os xarás é de longa data. Os dois se conheceram em 2011, durante participação em um programa da Xuxa. Na ocasião, um se despedia da trajetória de sucesso no Exaltasamba e outro despontava no musical que homenageava Tim Maia. "Foi maravilhoso", contou Thiaguinho ao relembrar que eles dividiram o palco e cantaram, juntos, o sucesso "Não Quero Dinheiro", eternizado na voz de Tim Maia.

Eu já escutava falar do Tiago Abravanel, do menino que estava fazendo o musical, que estava arrebentando. Já rolava toda aquela conversa, mas ainda não tinha visto, nem o musical e nem você. Thiaguinho

Sai da Caixa - Reinaldo Canato/UOL - Reinaldo Canato/UOL
Tiago Abravanel e Thiaguinho no programa Sai da Caixa
Imagem: Reinaldo Canato/UOL

"Realizar sonho é muito mais gostoso"

Enquanto a conversa rolava, Tiaguinho precisou pensar muito para definir o momento em que mais curtiu na sua trajetória, a infância ou a vida de adulto. "Pergunta difícil", brincou ao contar que era um sonhador, quando moleque. "Meus desenhos preferidos eram "Doug" e "O Fantástico Mundo de Bob" - Em ambos, os personagens principais viviam uma realidade paralela com muita magia e imaginação.

Era gostoso sonhar, mas realizar o sonho é muito mais gostoso. A vida adulta, eu curto mais. Thiaguinho

Thiaguinho - Reinaldo Canato/UOL - Reinaldo Canato/UOL
Tiaguinho se apresenta no programa Sai da Caixa
Imagem: Reinaldo Canato/UOL

Alma Antiga

Aos 38 anos, Thiaguinho acumula muitas experiências, mas é na troca com os mais velhos onde mais consegue se encontrar. "Tenho uma alma antiga (...) Eles sabem muito mais que a gente e acho um desperdício não aproveitar alguém que chegou antes de você e ou pelo que você ou", ponderou.

É no ado que o cantor encontra suas referências e vislumbra um futuro com mais acertos do que erros. "Me dou muito bem com gente mais velha. Encurta caminhos. Tem coisa que você não precisa errar para aprender se alguém mais velho já te diz", sugeriu.

Thi - Reinaldo Canato/UOL - Reinaldo Canato/UOL
Tiaguinho se apresenta no programa Sai da Caixa
Imagem: Reinaldo Canato/UOL

Logo depois, o cantor relembrou que foi o caçulinha do Exaltasamba: "Todos eram mais velhos que eu. O mais próximo de idade é o Péricles, que tem 14 anos de diferença". Para ele, essa experiência e a troca com pessoas experientes foi de extrema importância para sua carreira.

Entre as músicas que marcaram sua trajetória profissional e de vida, Thiaguinho apostou no sertanejo de "Evidências" de Chitãozinho e Xororó e "De Lá do Interior", do Padre Zezinho, para a estreia do "Sai da Caixa".

"Sai da Caixa" toda quarta-feira, às 11h:

  • 2 de junho - Thiaguinho
  • 9 de junho - Priscilla Alcantara
  • 16 de junho - Di Ferrero
  • 23 de junho - Naiara Azevedo
  • 30 de junho - Negra Li
  • 7 de julho - Gloria Groove
  • 14 de julho - Dudu Nobre
  • 21 de julho - Wanessa Camargo
  • 28 de julho - Péricles
  • 04 de agosto - Supla

Você pode assistir a toda a programação do Canal UOL aqui.