Nueva versión de Cronopete y Terminus

Acabo de lanzar una nueva versión de Términus y de Cronopete.

En el caso de Términus era necesario por un problemilla al usar el modo «Guake» desde Wayland: dado que marca la ventana para que esté encima de todas las demás, los menús contextuales del botón derecho no se pueden ver. Esto es porque un menú va en una ventana independiente, y dado que la ventana principal está situada encima de absolutamente todas, también lo estará encima de la ventana del menú.

La solución consistió en utilizar un Gtk.Popover. Este widget es similar a un menú, pero en lugar de utilizar una ventana independiente se pinta directamente en la misma ventana que el widget padre. El inconveniente es que no se puede hacer aparecer en el punto donde esté el cursor del ratón (o, al menos, yo no he sido capaz de ello).

Por otro lado se supone que es posible construir un menú «de verdad» con un Gtk.Popover, pero yo no he sido capaz, así que no me quedó otra que construirlo con Gtk.Button directamente. El resultado, pese a todo, funciona bien.

A mayores hice algunos cambios pequeños en el código para eliminar algunos warnings por utilizar funciones obsoletas.

Respecto a Cronopete, aproveché para lanzar una nueva versión con un cambio que, aunque pequeño, hace más cómodo su uso: ahora, si se produce un aviso de que un fichero se ha «desvanecido», no aparecerá un popup de aviso. Este mensaje se produce porque Rsync hace primero una lista con los ficheros que va a copiar, y una vez que la tiene es cuando procede a copiarlos de uno en uno, por lo que si, después de haber hecho la lista, uno de los ficheros desaparece (se «desvanece»), emite un aviso. Este aviso no es crítico, por lo que no tiene sentido molestar al usuario.

Otro cambio que incluye es haber eliminado el fork del proceso principal: antes, por seguridad (y por una serie de problemas en las versiones anteriores) había dos procesos de cronopete: el principal, que es el que maneja todo, y un proceso watchdog que comprueba si el principal ha fallado y lo lanza de nuevo. Sin embargo, desde que cambié el sistema de copia para que utilice Rsync, esta precaución no es necesaria, y de hecho da algún que otro problemilla al apagar los equipos, cuando uno de los procesos se queda lanzado y no quiere morirse.

Como de costumbre, se pueden bajar ambos programas en distintos formatos desde mi página web.

Leave a Reply

Time limit is exhausted. Please reload CAPTCHA.


Utilizamos cookies para garantizar que tenga la mejor experiencia en nuestro sitio web.