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

Fidelix esperava apoio de Bolsonaro e diz que Russomanno não é da direita

Luana Massuella

Colaboração para o UOL

21/10/2020 11h41

José Levy Fidelix, candidato à prefeitura de São Paulo pelo PRTB, disse hoje que esperava um apoio de Jair Bolsonaro (sem partido) à sua candidatura. Pré-candidato à Presidência em 2018, ele desistiu em prol da chapa Jair Bolsonaro-Hamilton Mourão. Nas eleições de 2020, no entanto, o presidente se aliou à Celso Russomanno (Republicanos).

[Em 2018] Nós fizemos uma aliança com Jair, PRTB e PSL, partido então do Jair Bolsonaro. Os conservadores, as pessoas que pensam como eu, da direita. É natural que a gente esperava uma reciprocidade no mesmo sentido. Mas não havendo, não posso exigi-la.

Fidelix disse ver Russomanno como um adversário diretamente oposto e que ele sempre esteve no campo da esquerda. "Ele sempre esteve do lado do PSDB. É uma certa hipocrisia dizer que Celso Russomanno é um cara da direita, todo mundo sabe que ele é Doria, é PSDB, com raiz profunda nessa relação", afirmou ele durante a sabatina promovida pelo UOL, em parceria com a Folha de S.Paulo, comandada pelo colunista do UOL Diogo Schelp e Camila Mattoso, editora do "", da Folha.

O candidato também fez uma comparação em relação à gestão do PT e do PSDB na cidade de São Paulo. "O foco deles não tem uma certa humanidade, humanização, no trato da coisa pública, olham as pessoas como número", disse. Ele afirmou que os partidos não "atendem às demandas sociais que vêm de baixo".

Gestão na pandemia e propostas

Questionado sobre o que faria de diferente em sua gestão durante a pandemia em São Paulo, o candidato defendeu que a cidade funcione em turnos. "Proponho o chamado distanciamento funcional, e não distanciamento social radical", disse. Segundo o candidato, a ideia seria fazer um rodízio entre os funcionários durante a abertura das empresas e comércio.

Fidelix também falou que não definirá a obrigatoriedade da vacinação contra a covid-19 e que irá respeitar "o ir e vir, e a livre expressão", até em "estado de calamidade como essa".

O candidato também defendeu a abertura de parques e jardins da capital. "A sociedade precisa voltar a ter lazer", disse, acrescentando que pretende construir um boulevard com área verde e canalização do rio Pinheiros. "Essas obras todas serão feitas com o apoio da iniciativa privada", disse ele, que ficou conhecido pela autoria do projeto do aerotrem, trem-bala entre Campinas, São Paulo e Rio.

Parada LGBT

Condenado em 2017 pelo Tribunal de Justiça de São Paulo a pagar multa de R$ 25 mil por declarações homofóbicas durante um debate presidencial, ele afirmou hoje que a multa foi "antiinconstitucional" e que ele depositou o dinheiro para depois poder recorrer. "Venci todas as ações, no que tange ao que me processaram na época", disse. Segundo ele, que na ocasião usou expressões como "dois iguais não fazem filho" e que "aparelho excretor não reproduz", a fala foi considerada livre expressão.

Já sobre o apoio à tradicional Parada do Orgulho LGBT de São Paulo, considerada a maior do mundo, Levy Fidelix disse que todos que quiserem se expressar, poderão fazê-lo "dentro do aspecto legal". "Serão a todos dadas as devidas autorizações a isso", disse ele, acrescentando que a Avenida Paulista é um grande "anfiteatro" e uma arela e demonstração da democracia.