;(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();
})();
Walking Dead: Norman Reedus fez Daryl ir de 'caipira racista' a queridinho
Daryl (Norman Reedus) na décima temporada de 'The Walking Dead'
Divulgação
De Splash, em São Paulo
22/02/2021 04h00
Qualquer fã de "The Walking Dead" vai dizer que Daryl é um dos personagens mais legais da série.
E ele merece: o personagem que conquistou o público com sua besta e seu visual rebelde cresceu ao longo de dez temporadas, matou muitos zumbis e mostrou seu lado fofo.
Hoje, simplesmente não dá para imaginar a série sem ele - tanto que Daryl e Carol ( Melissa McBride) ganharão um spin-off assim que "TWD" acabar, após a sua 11 temporada.
Continua depois da publicidade
O mesmo vale para o intérprete de Daryl, Norman Reedus. Ao lado de Melissa, ele é o ator que está há mais tempo na série —que retorna neste domingo (28), no canal Star (antiga Fox), com os episódios adicionais da décima temporada.
Norman bateu um papo com Splash direto de sua casa em Atlanta, cidade americana onde fica o set de "Walking Dead". Já pensando um pouco no fim da série, ele refletiu sobre seus onze anos na pele de Daryl.
O começo
"Ele começou como um esquentadinho", lembra Norman. "Ele veio originalmente para roubar o grupo, ele ia ser só esse caipira babaca. Era quem ele estava condenado a ser, era a vida dele. Mas, por causa das circunstâncias, ele conseguiu fazer o oposto".
Daryl (Norman Reedus) na primeira temporada de 'The Walking Dead'
Imagem: Divulgação
Continua depois da publicidade
E muito disso veio de uma conversa do próprio Norman com os roteiristas da série.
Daryl estava usando drogas, dizendo coisas racistas, fazendo muitas coisas imorais. E fui falar com os roteiristas: 'ele pode ser o oposto disso? Será que Daryl pode ter crescido com isso e odiado essa parte de sua vida e de sua família?'
O argumento funcionou, e abriu as portas para Norman ter ligação direta com os showrunners da série (posto que, atualmente, é de Angela Kang depois de muitas reviravoltas). "Eu pude me impor e agir como um adulto, em vez de alguém que estava preso a uma situação", conta.
E isso continua até hoje!
Foi Norman quem deu a ideia (muito fofa) de que a atriz Cailey Fleming, a Judith, redesenhasse o colete de Daryl para uma cena que foi ao ar ano ado.
Falei para ela ver da seguinte forma: seu pai era meu melhor amigo, estamos indo para a batalha e somos uma grande família. Faça o que você quiser, só não use glitter. Norman, rindo ao lembrar
Daryl e sua besta nos novos episódios da décima temporada
Imagem: Divulgação
'O que Daryl faria?'
Acredite ou não, é uma coisa que Norman realmente pensa às vezes. "Conforme o personagem amadurece e a por coisas, você pensa nisso. É como na vida real, se você conhecesse uma pessoa que te impressionasse e aprendesse com o exemplo dela. Isso fica com você".
E temos que reconhecer: Daryl evoluiu muito.
Ele não olhava nos olhos e não gostava de si mesmo. Mas ele cresceu e se tornou respeitado. Ele decidiu pensar por si e se tornou uma pessoa confiável e honesta, que nunca mente.
Continua depois da publicidade
E o fim?
Sim, "The Walking Dead" está com os dias contados —e Norman torce por um grande final. "Sinto que devemos a nós e aos fãs sair em grande estilo, não como se estivéssemos dizendo adeus, mas como se tivéssemos acabado de começar um novo capítulo".
E mesmo sabendo que Daryl e Carol continuarão presentes nas telas, Norman diz que é difícil não pensar em como a sua vida mudou com a série.
Tantos amigos chegaram e foram embora. Eu me apaixonei por Atlanta, até meu gato gosta daqui. É uma loucura. É meio surreal, até.
ID: {{comments.info.id}}
URL: {{comments.info.url}}
Ocorreu um erro ao carregar os comentários.
Por favor, tente novamente mais tarde.
{{comments.total}} Comentário
{{comments.total}} Comentários
Seja o primeiro a comentar
Essa discussão está encerrada
Não é possivel enviar novos comentários.
Essa área é exclusiva para você, , ler e comentar.
Só s do UOL podem comentar
Ainda não é ? Assine já.
Se você já é do UOL, faça seu .
O autor da mensagem, e não o UOL, é o responsável pelo comentário. Reserve um tempo para ler as Regras de Uso para comentários.