diff options
author | Garrett Brown <themagnificentmrb@gmail.com> | 2016-10-20 17:25:27 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-10-20 17:25:27 -0700 |
commit | f2561a14671f521d51dd6194ab9611581e690081 (patch) | |
tree | 088b94a14dc4363b19efc896e8e76497ef2c5891 | |
parent | 25ae7fffb70f00bb11f882f4bbabb66d80c0407f (diff) | |
parent | a943b54e939a90079f38ab4e4d6ee793ca7a549e (diff) |
Merge pull request #10734 from garbear/fix-enable-addon2
Use new add-on hooks to enable/disable peripheral add-ons
-rw-r--r-- | xbmc/peripherals/addons/PeripheralAddon.cpp | 32 | ||||
-rw-r--r-- | xbmc/peripherals/addons/PeripheralAddon.h | 4 | ||||
-rw-r--r-- | xbmc/peripherals/bus/virtual/PeripheralBusAddon.cpp | 4 |
3 files changed, 3 insertions, 37 deletions
diff --git a/xbmc/peripherals/addons/PeripheralAddon.cpp b/xbmc/peripherals/addons/PeripheralAddon.cpp index 495a240769..96fe81da4c 100644 --- a/xbmc/peripherals/addons/PeripheralAddon.cpp +++ b/xbmc/peripherals/addons/PeripheralAddon.cpp @@ -109,22 +109,6 @@ void CPeripheralAddon::ResetProperties(void) m_apiVersion = ADDON::AddonVersion("0.0.0"); } -void CPeripheralAddon::OnDisabled() -{ - CAddon::OnDisabled(); - PeripheralBusAddonPtr addonBus = std::static_pointer_cast<CPeripheralBusAddon>(g_peripherals.GetBusByType(PERIPHERAL_BUS_ADDON)); - if (addonBus) - addonBus->UpdateAddons(); -} - -void CPeripheralAddon::OnEnabled() -{ - CAddon::OnEnabled(); - PeripheralBusAddonPtr addonBus = std::static_pointer_cast<CPeripheralBusAddon>(g_peripherals.GetBusByType(PERIPHERAL_BUS_ADDON)); - if (addonBus) - addonBus->UpdateAddons(); -} - ADDON::AddonPtr CPeripheralAddon::GetRunningInstance(void) const { PeripheralBusAddonPtr addonBus = std::static_pointer_cast<CPeripheralBusAddon>(g_peripherals.GetBusByType(PERIPHERAL_BUS_ADDON)); @@ -137,22 +121,6 @@ ADDON::AddonPtr CPeripheralAddon::GetRunningInstance(void) const return CAddon::GetRunningInstance(); } -void CPeripheralAddon::OnPostInstall(bool update, bool modal) -{ - CAddon::OnPostInstall(update, modal); - PeripheralBusAddonPtr addonBus = std::static_pointer_cast<CPeripheralBusAddon>(g_peripherals.GetBusByType(PERIPHERAL_BUS_ADDON)); - if (addonBus) - addonBus->UpdateAddons(); -} - -void CPeripheralAddon::OnPostUnInstall() -{ - CAddon::OnPostUnInstall(); - PeripheralBusAddonPtr addonBus = std::static_pointer_cast<CPeripheralBusAddon>(g_peripherals.GetBusByType(PERIPHERAL_BUS_ADDON)); - if (addonBus) - addonBus->UpdateAddons(); -} - ADDON_STATUS CPeripheralAddon::CreateAddon(void) { ADDON_STATUS status(ADDON_STATUS_UNKNOWN); diff --git a/xbmc/peripherals/addons/PeripheralAddon.h b/xbmc/peripherals/addons/PeripheralAddon.h index 154616cbff..681147ea45 100644 --- a/xbmc/peripherals/addons/PeripheralAddon.h +++ b/xbmc/peripherals/addons/PeripheralAddon.h @@ -53,11 +53,7 @@ namespace PERIPHERALS virtual ~CPeripheralAddon(void); // implementation of IAddon - virtual void OnDisabled() override; - virtual void OnEnabled() override; virtual ADDON::AddonPtr GetRunningInstance(void) const override; - virtual void OnPostInstall(bool update, bool modal) override; - virtual void OnPostUnInstall() override; /*! * @brief Initialise the instance of this add-on diff --git a/xbmc/peripherals/bus/virtual/PeripheralBusAddon.cpp b/xbmc/peripherals/bus/virtual/PeripheralBusAddon.cpp index c27ec4be91..484893890a 100644 --- a/xbmc/peripherals/bus/virtual/PeripheralBusAddon.cpp +++ b/xbmc/peripherals/bus/virtual/PeripheralBusAddon.cpp @@ -329,7 +329,9 @@ bool CPeripheralBusAddon::RequestRemoval(ADDON::AddonPtr addon) void CPeripheralBusAddon::OnEvent(const ADDON::AddonEvent& event) { - if (typeid(event) == typeid(AddonEvents::InstalledChanged)) + if (typeid(event) == typeid(ADDON::AddonEvents::Enabled) || + typeid(event) == typeid(ADDON::AddonEvents::Disabled) || + typeid(event) == typeid(ADDON::AddonEvents::InstalledChanged)) UpdateAddons(); } |