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

Scarlett Johansson diz que opinião política não deveria afetar sua carreira

Reprodução
Imagem: Reprodução

Colaboração para Splash, no Rio de Janeiro

26/03/2021 19h39

Scarlett Johansson já foi bastante criticada anteriormente devido aos seus posicionamentos a favor de Woody Allen e opiniões controversas sobre diversidade e inclusão. Em entrevista recente à revista The Gentlewoman, a estrela de "Viúva Negra" desabafou e disse que sua carreira como atriz não deveria ser impactada por seus pontos de vista políticos.

Não acho que os atores tenham obrigações de desempenhar um papel público na sociedade. Você não escolheu ser um político, você é um ator.

A atriz de 36 anos enfatizou ainda que seu trabalho é estar conectada com os espectadores por meio da arte. De acordo com ela, seus posicionamentos políticos não moldam a maneira a qual entrega personagens na frente das câmeras.

Seu trabalho é refletir nossa experiência para nós mesmos, é ser um espelho para um público, ser capaz de ter uma experiência empática por meio da arte. Esse é o seu trabalho. Quaisquer que sejam minhas visões políticas, eu me sinto mais bem-sucedida quando as pessoas podem se sentar em um teatro ou em casa e desaparecer em uma história ou performance e ver pedaços de si mesmas, ou são capazes de se conectar através desta experiência assistindo esta performance, história ou interação entre atores.

Ela continuou: "Eles [espectadores] são afetados por isso e estão pensando sobre isso, e sentem algo. Eles têm uma reação emocional a isso: bom, ruim, desconfortável, validador, qualquer coisa. Esse é o meu trabalho. As outras coisas não são meu trabalho."

Após estas declarações, Scarlett Johansson revelou seus pensamentos sobre a eleição de 2020, dizendo que chorou quando Joe Biden ganhou a presidência dos Estados Unidos.

Você podia ouvir as pessoas perdendo a cabeça lá fora, e eu simplesmente chorei. Foi uma reação muito maluca. Oh meu Deus, acabou. Parecia o fim de uma guerra, sabe?

Por fim, a atriz, que recebeu críticas por se posicionar a favor do Israel durante a guerra com a Palestina e se posicionou contra atitudes "politicamente corretas", assumiu que cometeu erros no ado e fica feliz em ter a oportunidade de se redimir.

Todo mundo tem dificuldade em itir quando está errado sobre as coisas e, para tudo isso vir a público, pode ser constrangedor. Ter a experiência de 'Uau, eu estava realmente errada' ou 'Não estava olhando para o quadro geral', ou 'Não tive consideração'. Eu também sou uma pessoa.