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

Fora de nova 'Pantanal', Cristiana Oliveira se sente responsável por Juma

Marina Marini

De Splash, em São Paulo

01/03/2022 04h00

Quase 32 anos após ter vivido Juma Marruá em "Pantanal", Cristiana Oliveira se sente responsável pela figura forte e destemida da personagem que marcou a obra de Benedito Ruy Barbosa.

Em conversa com Splash, a atriz contou que a composição de Juma foi, de certa forma, irracional, já que as características da personagem não eram exatamente como as dela.

"A Cristiana já era assim. Aquele cabelo era meu, o olho era meu, o jeito de olhar fui eu que criei. Eu dei a minha ali. Fui dirigida, óbvio, só que a Juma, fisicamente, era uma parte da Cristiana. Juntou as duas coisas e deu certo", disse.

Eu me considero um pouco responsável pela figura da Juma, porque foi uma coincidência.

A pouco mais de um mês da estreia da nova versão de "Pantanal" no horário nobre da TV Globo, Cristiana, a eterna Juma, disse não guardar nenhuma mágoa por ter ficado fora do projeto escrito por Bruno Luperi — baseado na novela original escrita por Benedito Ruy Barbosa.

A atriz, que acredita que Alanis Guillen se sairá bem no papel da filha de Maria Marruá, considerou até que talvez não fizesse mesmo sentido para ela fazer parte da nova trama.

"Para mim, o fato de eu não estar, não me causa absolutamente nenhuma mágoa. Acho que de repente nem deveria estar, talvez a minha presença não ia combinar, não sei explicar por quê. E a nova Juma é tão linda, tão querida, ela sabe que estou torcendo por ela. Foi um sentimento que eu tive. A Juma de 1990 foi uma personagem puramente intuitiva, acho que tive uma intuição de que a Alanis ia ser uma linda Juma e eu tenho certeza que ela vai ser, do jeito dela, com uma dela", julgou.

Paixão pela natureza e voluntariado

Foi só depois de interpretar Juma Marruá que Cristiana Oliveira criou uma conexão mais profunda com a natureza. Antes disso, a atriz se considerava "extremamente urbana".

Em 2020, inclusive, quando o Pantanal foi atingido pela maior tragédia de sua história e incêndios destruíram aproximadamente quatro milhões de hectares, ela começou a colaborar com ONGs que atuam em defesa do bioma. No final daquele ano, Cristiana participou de uma expedição pelo rio Paraguai.

Eu pude presenciar a pobreza, a tristeza e o abandono dessas comunidades.

"Eu estou com um envolvimento que, antes eu até tinha, mas não chegava a este nível. Isso me faz muito feliz, é uma coisa que vai continuar. Independente da novela, o pantanal faz parte da minha vida. A natureza, o Brasil natural faz parte da minha vida", contou.

E assim, por meio da história e da dramaturgia, Cristiana acredita que o remake de "Pantanal" vai informar o telespectador sobre o que está acontecendo: "Acho que vai aproximar o público e falar que essa nossa riqueza existe e precisa de atenção."

A nova novela das 21h da TV Globo estreia no dia 28 de março — apenas um dia após o aniversário de 32 anos do lançamento da primeira versão da obra na Rede Manchete.