night-light: Rework implementation
This commit improves the Night Light code in various ways: * Turn it into a template class, subclass of GtkDialog, and adapts all the code to reflect that. * Update the code style in various places, to make it more conformant with the documented code style. * Reorganize the code a bit, moving functions around, to make it more conformant with the documented order.
Showing with 259 additions and 388 deletions