Wallpaper Rotator

23 F Y

Nas férias, entre o fim de dezembro e o começo de janeiro, estava eu sem nada pra fazer… Havia acabado de fazer um upgrade no meu desktop do Windows XP para o 7, e gostei da funcionalidade de trocar automaticamente o papel de parede do desktop de tempos em tempos. Eu estava com algumas fotos legais para o desktop que eu gostaria de usar em meu netbook, que roda XP e não tenho planos para migrar pro 7.

Daí, procurei algum programa que fizesse isso e não encontrei nada que atendesse minhas necessidades. Queira eu algo bem simples, que eu configurasse, deixasse rodando em background e pudesse esquecer que ele está ali. Alguns até eram simples e tal, mas comiam muita memória enquanto em background, outros eram simplesmente ruins.

Um que chegou perto do que eu queria foi um projeto no CodeProject chamado “Wallpaper Changer for .NET“. Tentei entrar em contato com Arbel Kfir, o criador do projeto, para dar continuidade (estava parado desde 2005), mas não tive sucesso. Como o código é aberto e sem licença, mantive os créditos ao autor original e o usei como base para uma nova ferramenta, que licenciei sob a GPLv2.

O código original tinha algumas gambiarras cabeludas bueirosas from hell, como um mecanismo super bizarro para disparar a troca do papel de parede usando um timer que disparava de 5 em 5 segundos para verificar se já tinha passado do tempo para trocar… Sim, o “caminho normal” seria configurar o timer para disparar no tempo certo para trocar e na ação chamar o método que realiza a troca, mas sei lá o que se passou na cabeça do cidadão (ou que problema cabeludo ele estava tendo pra entrar em desespero) e ele decidiu fazer daquela forma.

Mas enfim, melhorei consideravelmente o código, deixei a interface um pouco mais intuitiva, corrigi alguns bugs e introduzi algumas novas funcionalidades que eu precisava, como persistir a lista de imagens sem que elas tivessem que ficar na pasta do programa.

Wallpaper Rotator

Com este código melhorado, abri um projeto no CodePlex sob o nome de Wallpaper Rotator. Fiz isso só pra contribuir, deixar o código melhorado disponível e uma versão compilada também pronta para ser baixada e executada. Não tinha esperanças de que o projeto fosse ter alguma procura, principalmente porque a funcionalidade principal oferecida pelo programa já é padrão no Windows 7.

Hoje, para minha surpresa, abri o projeto e vi que ele está tendo uma procura bem interessante, chegando a um pico de 33 downloads em uma semana, tendo inclusive sido linkado por alguns blogs e repositórios de software. Me animei e voltei a trabalhar nele, corrigindo alguns bugs que havia deixado para trás e melhorando um pouco mais o código e a interface. Aproveitei e criei um instalador (com o projeto de Setup do Visual Studio foi super fácil) para facilitar para os usuários mais leigos a instalar o programa e colocá-lo automaticamente para rodar quando o sistema inicializar.

Enfim, quem ainda estiver com o XP e quiser ter esta funcionalidade do Seven, recomendo ir na página do Projeto e baixar a versão mais recente. Funciona muito bem, é bem simples e ocupa praticamente nada de memória (O programa tem 1,5MB, e ocupa entre 800KB e 2MB de RAM quando está rodando em background… consumo de processador é completamente desprezível).

Para quem quiser deixar o XP com ainda mais cara de Windows 7, eu recomendo a leitura deste post (http://bhandler.spaces.live.com/blog/cns!70f64bc910c9f7f3!5105.entry), que recomendou meu projeto como uma das ferramentas que ajuda a deixar o XP parecido com o Seven.

Dúvidas, reportar bugs, quer contribuir de alguma forma? Entre em contato comigo aqui nos comentários ou na página do projeto.

Anúncios