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

Mundo da gastronomia "cancela" russos em protesto contra guerra na Ucrânia

Estrogonofe do tradicional Bar da Dona Onça, em São Paulo, deixará de ser servido enquanto Putin atacar a Ucrânia - Reprodução/Instagram
Estrogonofe do tradicional Bar da Dona Onça, em São Paulo, deixará de ser servido enquanto Putin atacar a Ucrânia Imagem: Reprodução/Instagram

Rafael Tonon

Colaboração para Nossa, de Porto (Portugal)

08/03/2022 09h52Atualizada em 09/03/2022 15h30

A partir desta terça-feira (8), não haveria mais estrogonofe no Bar da Dona Onça, no Centro de São Paulo. O tradicional prato — que está entre os mais pedidos, aliás, com cerca de mil preparos por mês — deixaria de ser servido no cardápio do restaurante localizado no Copan.

A razão? A origem russa da receita, que foi adaptada por aqui e se tornou um prato tão popular na dieta dos brasileiros. A decisão foi tomada — e depois retirada, nesta quarta (9) — "em repúdio à guerra que o governo russo está promovendo na Ucrânia, matando e desabrigando milhões de inocentes", como explica a chef do restaurante, Janaína Rueda.

O estrogonofe, explica ela, teria chegado ao Brasil através de chefs europeus trazidos para cozinhar nos jantares chiques dos barões do café. "Tornou-se um prato afetivo no Brasil", diz.

Cancelamento à russa

Não é só no Brasil que pratos, coquetéis e até restaurantes russos estão vivendo uma onda de "cancelamentos". Entre pubs ingleses e muitos speakeasy dos EUA, as vodcas russas saíram das preparações e das prateleiras.

Fotos e vídeos de bartenders despejando garrafas de vodca em bueiros pelo mundo todo ganharam as redes sociais. Nos EUA, proprietários de bares mudaram os nomes de seus coquetéis para deixar claro seu apoio à Ucrânia: em muitos lugares, o Moscow Mule agora é o Kiev Mule.

Protestos da guerra chegaram até ao famoso Moscow Mule - Getty Images - Getty Images
Protestos da guerra chegaram até ao famoso Moscow Mule
Imagem: Getty Images

No Em Chamas Brazilian Grill, um restaurante de churrasco brasileiro em Kansas City, o proprietário Sam Silvio preferiu um nome mais original para o coquetel: Snake Island Mule, em referência ao território ucraniano onde os guardas de fronteira fizeram uma última resistência desafiadora contra as tropas invasoras.

Sobrou até para a caipiroska, a versão da nossa caipirinha feita com vodka e, por isso, com sotaque russo. Agora, o coquetel, um sucesso da casa, ou a se chamar Caipi Island.

Eu só acho que qualquer pequena coisa que cada um de nós pode fazer pode resultar em algo grande agora", disse Silvio ao "Washington Post".

Batata quente

No Reino Unido e na Alemanha, até cadeias de supermercado baniram vodka e outros produtos russos de suas gôndolas em solidariedade à Ucrânia. Um dos casos mais curiosos, entretanto, ocorre no Canadá e na França, onde uma receita simples de batata frita sofre com a ira dos manifestantes anti-Rússia.

A decisão de Vladimir Putin de invadir o país vizinho gerou uma polêmica com o poutine, uma iguaria franco-canadense que é feita com batatas fritas e coberta de queijo coalho e molho gravy.

Poutine, prato canadense, também está no centro da polêmica por ter nome semelhante ao do presidente russo - Getty Images/iStockphoto - Getty Images/iStockphoto
Poutine, prato canadense, também está no centro da polêmica por ter nome semelhante ao do presidente russo
Imagem: Getty Images/iStockphoto

O famoso prato nascido em Quebec compartilha seu nome — em francês — com o difamado presidente russo, razão pela qual a Maison de la Poutine, com restaurantes em Paris e Toulouse, disse ter recebido insultos e ameaças após a invasão da Ucrânia.

O proprietário, claro, tratou logo de prestar seu apoio ao povo ucraniano para mostrar que as coincidências ficam apenas nos nomes, não no alinhamento político.

Mas se até mesmo restaurantes ses estão sofrendo reprimendas, os russos estão ando por boicotes muito significativos.

Fora dos 50 Best

Depois de o tradicional Guia Michelin ter anunciado a suspensão das recomendações de restaurantes em território russo, agora foi a vez do 50 Best, considerado o maior prêmio da gastronomia hoje, seguir por um caminho semelhante.

Na segunda-feira, a organização do evento divulgou que todos os restaurantes russos serão excluídos das listas que classificas os 50 melhores restaurantes do mundo e também que elenca os melhores bares.

Nós não atribuímos a nenhum bar ou restaurante individualmente a responsabilidade pelas ações de seu governo", disse a nota divulgada.

"Mas confirmamos que não haverá estabelecimentos russos nas listas de 2022".

A cerimônia de anúncio da premiação dos melhores restaurantes deste ano, programada para ser realizada em Moscou, foi transferida para Londres, em um anúncio feito logo depois que as primeiras tropas russas entraram na Ucrânia.

Polêmica à parte

Alena Melnikova - Reprodução/Instagram - Reprodução/Instagram
Alena Melnikova
Imagem: Reprodução/Instagram

A decisão de retirar os estabelecimentos russos da lista, entretanto, gerou polêmica entre chefs, cozinheiros e profissionais da área. Alguns aplaudiram a decisão, enquanto nas redes sociais há quem a tenha considerado "populista" ao punir bares e restaurantes por uma ação com a qual eles não têm responsabilidade direta.

"Tudo está em decadência", diz ao Nossa Alena Melnikova, organizadora do Saint Petersburg Gourmet Days, um festival gastronômico promovido na cidade russa.

"Trabalhamos muito tempo para mostrar ao mundo nossa marca na gastronomia, convidando jornalistas estrangeiros, realizando eventos de cunho internacional. E em um dia todos os nossos bares e restaurantes são excluídos da classificação internacional", lamenta. "Era de se esperar, adeus".