mirror of
https://git.deluge-torrent.org/deluge
synced 2025-08-13 11:48:40 +00:00
save plugin state on plugin enable/disable, instead of on shutdown. remembers active plugins in case of a crash
This commit is contained in:
parent
e4ab021d20
commit
0c5c099097
3 changed files with 8 additions and 4 deletions
|
@ -4,6 +4,7 @@ Deluge 0.5.7 (xx November 2007)
|
||||||
list or wrong type
|
list or wrong type
|
||||||
* Local discovery of peers
|
* Local discovery of peers
|
||||||
* Add torrent in paused state option
|
* Add torrent in paused state option
|
||||||
|
* Fix bug where loaded plugins were forgotten if Deluge crashed
|
||||||
* Fix ratio bugs (hopefully for the last time)
|
* Fix ratio bugs (hopefully for the last time)
|
||||||
* Scheduler plugin revamp by Ben Klein
|
* Scheduler plugin revamp by Ben Klein
|
||||||
* Fix ETA from going backwards
|
* Fix ETA from going backwards
|
||||||
|
|
|
@ -1662,9 +1662,6 @@ want to remove all seeding torrents?")):
|
||||||
self.save_column_widths()
|
self.save_column_widths()
|
||||||
self.save_window_settings()
|
self.save_window_settings()
|
||||||
self.save_tabs_order()
|
self.save_tabs_order()
|
||||||
enabled_plugins = ':'.join(self.plugins.get_enabled_plugins())
|
|
||||||
self.config.set('enabled_plugins', enabled_plugins)
|
|
||||||
self.config.save()
|
|
||||||
self.plugins.shutdown_all_plugins()
|
self.plugins.shutdown_all_plugins()
|
||||||
#for the sake of windows, hide tray_icon
|
#for the sake of windows, hide tray_icon
|
||||||
self.tray_icon.set_visible(False)
|
self.tray_icon.set_visible(False)
|
||||||
|
|
|
@ -74,6 +74,9 @@ class PluginManager:
|
||||||
def enable_plugin(self, name):
|
def enable_plugin(self, name):
|
||||||
plugin = self.available_plugins[name]
|
plugin = self.available_plugins[name]
|
||||||
self.enabled_plugins[name] = plugin.enable(self.core, self.interface)
|
self.enabled_plugins[name] = plugin.enable(self.core, self.interface)
|
||||||
|
enabled_plugins = ':'.join(self.get_enabled_plugins())
|
||||||
|
self.interface.config.set('enabled_plugins', enabled_plugins)
|
||||||
|
self.interface.config.save()
|
||||||
|
|
||||||
def get_enabled_plugins(self):
|
def get_enabled_plugins(self):
|
||||||
return self.enabled_plugins.keys()
|
return self.enabled_plugins.keys()
|
||||||
|
@ -83,6 +86,9 @@ class PluginManager:
|
||||||
if 'unload' in dir(plugin):
|
if 'unload' in dir(plugin):
|
||||||
plugin.unload()
|
plugin.unload()
|
||||||
del self.enabled_plugins[name]
|
del self.enabled_plugins[name]
|
||||||
|
enabled_plugins = ':'.join(self.get_enabled_plugins())
|
||||||
|
self.interface.config.set('enabled_plugins', enabled_plugins)
|
||||||
|
self.interface.config.save()
|
||||||
|
|
||||||
def configurable_plugin(self, name):
|
def configurable_plugin(self, name):
|
||||||
if name in self.enabled_plugins:
|
if name in self.enabled_plugins:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue