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

Paraná mantém tradição de 16 anos e elege governador no 1º turno

Governador do Paraná, Ratinho Jr, se reelegeu no primeiro turno - Divulgação
Governador do Paraná, Ratinho Jr, se reelegeu no primeiro turno Imagem: Divulgação

Gabryella Garcia

Colaboração para o UOL, em São Paulo

02/10/2022 20h49

O Paraná reelegeu o governador Ratinho Júnior (PSD) primeiro turno da eleição de 2022 e manteve uma forte tradição: a de não precisar de um segundo turno para definir seu governante.

A última vez que o estado precisou voltar às urnas para decidir seu governador foi em 2006, quando Roberto Requião (então no MDB, mas hoje do PT) venceu Osmar Dias (PDT) em uma disputa apertada.

Desde então o estado ou a escolher seus governadores em disputas em que o vencedor liquidou a fatura logo no primeiro turno.

Em 2010 e em 2014, Beto Richa (PSDB) levou vantagem sobre seus concorrentes. Em 2018, Ratinho Júnior se elegeu para seu primeiro mandato derrotando Cida Borghetti (PP) e João Arruda (MDB) também no primeiro turno.

Histórico de primeiro turno

Desde a redemocratização do Brasil em 1988, estados elegeram seus governadores em 9 diferentes oportunidades, já contando as eleições de 2022.

Deste total, o Paraná realizou segundo turno apenas em 1990, 2002 e 2006 e, em todas as oportunidades, o vencedor foi Roberto Requião. Nos outros seis pleitos, a eleição foi decidida em primeiro turno.

Casado e pai de três filhos, Ratinho Júnior começou sua trajetória política em 2002, quando foi eleito deputado estadual pelo PSB. Quatro anos depois, foi eleito deputado federal pelo PPS. Em 2010, foi reeleito para o cargo, naquela vez pelo PSC. Em 2012 também disputou a prefeitura de Curitiba, mas acabou derrotado por Gustavo Fruet (PDT) no segundo turno.

Ele é formado em marketing e filho de Ratinho, apresentador de TV e dono da Rede Massa de Comunicação. Ratinho Júnior também é aliado do presidente Jair Bolsonaro (PL).