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

Bruna Linzmeyer: "Achei que não era possível amar e transar com uma mulher"

Gleeson Paulino/Instagram
Imagem: Gleeson Paulino/Instagram

Carolina Martins

Colaboração para Universa

19/03/2019 13h36

Desde que começou a usar sua imagem para defender os ideais feministas e a representatividade lésbica, Bruna Linzmeyer se tornou, além de atriz, importante porta-voz para essas causas políticas e sociais. Esses foram os assuntos abordados por ela em entrevista à Universa, nesta terça-feira (19), durante o lançamento da fragrância Calvin Klein Woman, em São Paulo.

A atriz, de 26 anos, ressalta a influência que exerce tanto por meio das redes sociais como em suas aparições públicas e televisivas, em que levanta tais bandeiras. "Fico feliz por poder falar, dialogar com as pessoas, levantar questões, pensar no mundo em que estamos vivendo e no que as coisas significam. Cada vez mais, aos pouquinhos, ao mesmo tempo em que existe uma onda de muito moralismo e violência, existe, em contrapartida, a gente com nos nossos pertencimentos e o poder de falar sobre essas coisas. E não podíamos falar há alguns anos", afirma.

Representatividade importa, sim!

Bruna Linzmeyer e a namorada, Priscila - Reprodução/Instagram - Reprodução/Instagram
Bruna Linzmeyer e a namorada, Priscila
Imagem: Reprodução/Instagram

Quando questionada sobre sua representatividade, Bruna reforça como essa ideia é importante para todas as causas que envolvem minorias Ela citou que por muito tempo da sua vida achou não ser possível amar uma mulher, pois não via esse tipo de representação na grande mídia.

"Representatividade é você ter referência de coisas que pode ser e fazer. Pensar que amar uma mulher é uma possibilidade. Eu achei durante minha vida que nem era possível amar uma mulher, beijar, transar. Então acho que a minha existência transmite para as pessoas que essa é uma possibilidade real, que não há problema nenhum e a gente precisa avançar nos preconceitos. Encontrar nossa liberdade e prazer."

Cássia Eller: referência lésbica na adolescência

Cássia Eller - Divulgação - Divulgação
Cássia Eller com a namorada Maria Eugênia e o filho, Francisco
Imagem: Divulgação

A atriz, que recebe total apoio dos seus pais, cita Cássia Eller como uma das suas referências sobre lesbianidade na adolescência -- embora essa palavra nunca tenha sido citada na época em que a cantora, morta em 2001, estava no centro dos holofotes.

"Na questão de lesbianidade e sexualidade eu não tive referências na minha adolescência. Lembro-me da Cassia Eller. Não se falava a palavra 'lésbica' ou 'gay', mas ela estava existindo ali. Hoje muitas pessoas constroem essa rede de liberdade e apoio para que a gente possa se divertir e ter o direito de viver", conclui.