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

Billy Porter diz que foi abusado na infância pelo padrasto: 'Durou 5 anos'

Billy Porter falou sobre os abusos sofridos na infância pelo padrasto - Getty Images
Billy Porter falou sobre os abusos sofridos na infância pelo padrasto Imagem: Getty Images

Colaboração para Splash, em Alagoas

07/10/2021 16h03

O ator Billy Porter, de 52 anos, falou sobre detalhes de sua vida íntima e relatou ter sido abusado na infância pelo padrasto por cinco anos consecutivos — os abusos aconteciam pelo menos duas vezes por semana.

Em entrevista à revista People, o astro de "Pose" contou que os abusos tiveram início aos 7 anos, quando o padrasto casou com sua mãe. O famoso afirma que, ainda hoje, ele "não está bem" em relação ao trauma sofrido.

"Ainda criança, me tornei um homem adulto. Na minha mente, eu vivi aquela experiência [do abuso] como um affair. Era afetuoso, era estimulante e era confuso. Era um toque. Era o que eu precisava. Era a ilusão do cuidado, de um homem grande, forte, cuidando de mim. Ainda assim, até hoje, não estou bem", declarou o artista, que nunca conheceu seu pai biológico e, na época, confundia os abusos como algo paterno.

Para superar o trauma, Billy Porter deu início à terapia aos 25 anos, mas ressalta que foi a arte quem o salvou.

Dono de um Emmy de melhor ator em série dramática por "Pose", e de um Tony Awards pela peça "Lola in Kinky Boots", ele diz que "se não tivesse assistido esse tipo de coisa, como 'The Wiz' e 'Dreamgirls', eu nunca seria capaz de sonhar fora das minhas circunstâncias".

Billy Porter revela ser soropositivo

Em maio, Billy Porter falou abertamente sobre ser um homem vivendo com HIV. Ao The Hollywood Reporter, o famoso contou que descobriu sua sorologia em 2007.

"Eu sou parte da geração que deveria se cuidar melhor, mas aconteceu comigo de qualquer forma. [2007] foi o pior ano da minha vida", declarou, ressaltando ter sentido "vergonha" devido à sorologia, e isso fez com que ele silenciasse sobre o HIV.

A vergonha que eu senti naquela época, adicionada à vergonha que já tinha acumulado em toda a minha vida [por ser LGBTQIA+] me silenciou, e eu tenho vivido envergonhado e em silêncio por 14 anos. Ser soropositivo, no lugar de onde eu vim, crescendo dentro da igreja pentecostal em uma família muito religiosa, era a punição de Deus", falou.

Por fim, Billy Porter também optou pelo silêncio com medo de que revelar sua sorologia pudesse atrapalhar sua carreira. Em agosto, quando voltou a falar sobre o assunto, o ator destacou o sentimento de liberdade por não precisar mais esconder sua sorologia.

"Há um componente de vergonha em ser negro, em ser gay, em ter HIV que é silenciador e destrutivo. Não estou mais silenciado, não estou mais envergonhado e estou pronto para o que vier a seguir", afirmou.