lp:~lottanzb/lottanzb/instant-apply-prefs

Created by Severin H and last modified
Get this branch:
bzr branch lp:~lottanzb/lottanzb/instant-apply-prefs
Members of LottaNZB Development Team can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
LottaNZB Development Team
Project:
LottaNZB
Status:
Merged

Recent revisions

583. By Severin H

Don't emit signals in util.Thread using gobject.idle_add by default.

Observers can decide on their ow, whether they want to have the handlers executed in the main thread (asynchronously) or not.

ModeManager makes use of this new functionality to ensure that the lock is released in time.

Before this revision, it was possible to completely block the LottaNZB UI by calling set_mode a second time while a mode change was still in progress.

Needs testing!!

582. By Severin H

When making changes in the preferences window, HellaNZB will be restarted less frequently:
Don't restart HellaNZB if the user still edits the same entry. This helps to reduce the number of HellaNZB restarts.

Another new feature: The controls for the MAX_RATE and Newzbin options aren't destructive anymore. Docstring from PrefsTabBase __create_sensitivity_hook:

All widgets in the preferences window that are connected to a proxy are automatically kept in sync with the data. However, this is not always a desired behavior.
When the user disables Newzbin support the NEWZBIN_USERNAME and NEWZBIN_PASSWORD configuration options need to be cleared and the corresponding fields are made insensitive. Without this method, the fields would be cleared as well and for the user, these two values would be lost (also when Newzbin is enabled again).
This method will break the synchronization between the visual control and the data behind it if the widget is made insensitive. As soon as the sensitivity is restored the previous value will be restored too.

581. By Severin H

util.GObject now also implements the model part of Kiwi's observer pattern, which is used to keep the data and the UI in sync.

580. By Severin H

Initial draft of the instant-apply preferences window. It works fairly well.

However, the required UI changes (have a look at the blueprint) haven't been made yet.

579. By Severin H

Use basename(name) instead of name.split("/")[-1] in gui.py.

578. By Severin H

The log message window didn't handle log message parameters.

577. By Severin H

We don't anymore need to explicitly inform the log module that the backend is ready to be observed. The log module can do this on its own.

576. By Severin H

New polished util.FileLock class from the windist branch.

Use App().lock.own_lock() instead of App().lock_acquired.

core.App properties are now GObject properties.

575. By Severin H

core.App is now also a subclass of GObject, which means that it can emit signals. I intend to turn gui etc. into GObject properties so that changes can be observed.

The above change made it necessary to replace the borg pattern with the old-fashioned singleton pattern using a metaclass.

574. By Severin H

Error messages in the config module can now be translated.

Branch metadata

Branch format:
Branch format 6
Repository format:
Bazaar-NG Knit Repository Format 1
This branch contains Public information 
Everyone can see this information.