aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKai Sommerfeld <kai.sommerfeld@gmx.com>2022-09-24 16:40:30 +0200
committerKai Sommerfeld <kai.sommerfeld@gmx.com>2022-09-27 13:18:27 +0200
commit74aba652e61c53c35f5e65f466ae356d1c32997a (patch)
tree52968c545d44e417268148afcc36630b4932e4b7
parent89dbd2dc221cce5a10f95bf32818d3faac26c7da (diff)
[PVR] Add CPVRGUIActionsPowerManagement to PVR components.
-rw-r--r--xbmc/application/Application.cpp30
-rw-r--r--xbmc/application/ApplicationPowerHandling.cpp5
-rw-r--r--xbmc/pvr/PVRComponentRegistration.cpp3
-rw-r--r--xbmc/pvr/guilib/PVRGUIActions.h4
-rw-r--r--xbmc/pvr/guilib/PVRGUIActionsPowerManagement.h9
-rw-r--r--xbmc/windows/GUIWindowLoginScreen.cpp4
6 files changed, 32 insertions, 23 deletions
diff --git a/xbmc/application/Application.cpp b/xbmc/application/Application.cpp
index 7a7ec7f944..9f7e2240fb 100644
--- a/xbmc/application/Application.cpp
+++ b/xbmc/application/Application.cpp
@@ -9,12 +9,16 @@
#include "Application.h"
#include "Autorun.h"
+#include "CompileInfo.h"
#include "GUIInfoManager.h"
#include "HDRStatus.h"
#include "LangInfo.h"
#include "PlayListPlayer.h"
#include "URL.h"
#include "Util.h"
+#include "addons/AddonInstaller.h"
+#include "addons/AddonManager.h"
+#include "addons/RepositoryUpdater.h"
#include "addons/Skin.h"
#include "addons/VFSEntry.h"
#include "application/AppInboundProtocol.h"
@@ -23,6 +27,7 @@
#include "cores/IPlayer.h"
#include "cores/playercorefactory/PlayerCoreFactory.h"
#include "dialogs/GUIDialogBusy.h"
+#include "dialogs/GUIDialogCache.h"
#include "dialogs/GUIDialogKaiToast.h"
#include "events/EventLog.h"
#include "events/NotificationEvent.h"
@@ -34,6 +39,7 @@
#include "interfaces/builtins/Builtins.h"
#include "interfaces/generic/ScriptInvocationManager.h"
#include "music/MusicLibraryQueue.h"
+#include "music/tags/MusicInfoTag.h"
#include "network/EventServer.h"
#include "network/Network.h"
#include "platform/Environment.h"
@@ -135,17 +141,9 @@
#include "video/dialogs/GUIDialogVideoBookmarks.h"
// PVR related include Files
-#include "CompileInfo.h"
-#include "addons/AddonInstaller.h"
-#include "addons/AddonManager.h"
-#include "addons/RepositoryUpdater.h"
-#include "dialogs/GUIDialogCache.h"
-#include "music/tags/MusicInfoTag.h"
#include "pvr/PVRManager.h"
-#include "pvr/guilib/PVRGUIActions.h"
#include "pvr/guilib/PVRGUIActionsPlayback.h"
-#include "utils/URIUtils.h"
-#include "utils/XMLUtils.h"
+#include "pvr/guilib/PVRGUIActionsPowerManagement.h"
#ifdef TARGET_WINDOWS
#include "win32util.h"
@@ -163,12 +161,14 @@
#include <cdio/logging.h>
#endif
+#include "DatabaseManager.h"
+#include "input/InputManager.h"
#include "storage/MediaManager.h"
-#include "utils/SaveFileStateJob.h"
#include "utils/AlarmClock.h"
+#include "utils/SaveFileStateJob.h"
#include "utils/StringUtils.h"
-#include "DatabaseManager.h"
-#include "input/InputManager.h"
+#include "utils/URIUtils.h"
+#include "utils/XMLUtils.h"
#ifdef TARGET_POSIX
#include "platform/posix/XHandle.h"
@@ -1049,7 +1049,7 @@ bool CApplication::OnAction(const CAction &action)
if (action.GetID() == ACTION_BUILT_IN_FUNCTION)
{
if (!CBuiltins::GetInstance().IsSystemPowerdownCommand(action.GetName()) ||
- CServiceBroker::GetPVRManager().GUIActions()->CanSystemPowerdown())
+ CServiceBroker::GetPVRManager().Get<PVR::GUI::PowerManagement>().CanSystemPowerdown())
{
CBuiltins::GetInstance().Execute(action.GetName());
m_navigationTimer.StartZero();
@@ -1429,7 +1429,7 @@ void CApplication::OnApplicationMessage(ThreadMessage* pMsg)
uint32_t msg = pMsg->dwMessage;
if (msg == TMSG_SYSTEM_POWERDOWN)
{
- if (CServiceBroker::GetPVRManager().GUIActions()->CanSystemPowerdown())
+ if (CServiceBroker::GetPVRManager().Get<PVR::GUI::PowerManagement>().CanSystemPowerdown())
msg = pMsg->param1; // perform requested shutdown action
else
return; // no shutdown
@@ -2903,7 +2903,7 @@ bool CApplication::ExecuteXBMCAction(std::string actionStr, const CGUIListItemPt
if (CBuiltins::GetInstance().HasCommand(actionStr))
{
if (!CBuiltins::GetInstance().IsSystemPowerdownCommand(actionStr) ||
- CServiceBroker::GetPVRManager().GUIActions()->CanSystemPowerdown())
+ CServiceBroker::GetPVRManager().Get<PVR::GUI::PowerManagement>().CanSystemPowerdown())
CBuiltins::GetInstance().Execute(actionStr);
}
else
diff --git a/xbmc/application/ApplicationPowerHandling.cpp b/xbmc/application/ApplicationPowerHandling.cpp
index 6899bb3f19..d2aed9bbcb 100644
--- a/xbmc/application/ApplicationPowerHandling.cpp
+++ b/xbmc/application/ApplicationPowerHandling.cpp
@@ -25,8 +25,8 @@
#include "powermanagement/PowerTypes.h"
#include "profiles/ProfileManager.h"
#include "pvr/PVRManager.h"
-#include "pvr/guilib/PVRGUIActions.h"
#include "pvr/guilib/PVRGUIActionsChannels.h"
+#include "pvr/guilib/PVRGUIActionsPowerManagement.h"
#include "settings/Settings.h"
#include "settings/SettingsComponent.h"
#include "utils/AlarmClock.h"
@@ -519,7 +519,8 @@ void CApplicationPowerHandling::CheckShutdown()
CVideoLibraryQueue::GetInstance().IsRunning() ||
CServiceBroker::GetGUI()->GetWindowManager().IsWindowActive(
WINDOW_DIALOG_PROGRESS) // progress dialog is onscreen
- || !CServiceBroker::GetPVRManager().GUIActions()->CanSystemPowerdown(false))
+ ||
+ !CServiceBroker::GetPVRManager().Get<PVR::GUI::PowerManagement>().CanSystemPowerdown(false))
{
m_shutdownTimer.StartZero();
return;
diff --git a/xbmc/pvr/PVRComponentRegistration.cpp b/xbmc/pvr/PVRComponentRegistration.cpp
index 5627df3536..655f9aba40 100644
--- a/xbmc/pvr/PVRComponentRegistration.cpp
+++ b/xbmc/pvr/PVRComponentRegistration.cpp
@@ -14,6 +14,7 @@
#include "pvr/guilib/PVRGUIActionsEPG.h"
#include "pvr/guilib/PVRGUIActionsParentalControl.h"
#include "pvr/guilib/PVRGUIActionsPlayback.h"
+#include "pvr/guilib/PVRGUIActionsPowerManagement.h"
#include <memory>
@@ -27,10 +28,12 @@ CPVRComponentRegistration::CPVRComponentRegistration()
RegisterComponent(std::make_shared<CPVRGUIActionsEPG>());
RegisterComponent(std::make_shared<CPVRGUIActionsParentalControl>());
RegisterComponent(std::make_shared<CPVRGUIActionsPlayback>());
+ RegisterComponent(std::make_shared<CPVRGUIActionsPowerManagement>());
}
CPVRComponentRegistration::~CPVRComponentRegistration()
{
+ DeregisterComponent(typeid(CPVRGUIActionsPowerManagement));
DeregisterComponent(typeid(CPVRGUIActionsPlayback));
DeregisterComponent(typeid(CPVRGUIActionsParentalControl));
DeregisterComponent(typeid(CPVRGUIActionsEPG));
diff --git a/xbmc/pvr/guilib/PVRGUIActions.h b/xbmc/pvr/guilib/PVRGUIActions.h
index c688c10601..897cb277dc 100644
--- a/xbmc/pvr/guilib/PVRGUIActions.h
+++ b/xbmc/pvr/guilib/PVRGUIActions.h
@@ -8,15 +8,13 @@
#pragma once
-#include "pvr/guilib/PVRGUIActionsPowerManagement.h"
#include "pvr/guilib/PVRGUIActionsRecordings.h"
#include "pvr/guilib/PVRGUIActionsTimers.h"
#include "pvr/guilib/PVRGUIActionsUtils.h"
namespace PVR
{
-class CPVRGUIActions : public CPVRGUIActionsPowerManagement,
- public CPVRGUIActionsRecordings,
+class CPVRGUIActions : public CPVRGUIActionsRecordings,
public CPVRGUIActionsTimers,
public CPVRGUIActionsUtils
{
diff --git a/xbmc/pvr/guilib/PVRGUIActionsPowerManagement.h b/xbmc/pvr/guilib/PVRGUIActionsPowerManagement.h
index 2ce9c00a42..e8e1548b2c 100644
--- a/xbmc/pvr/guilib/PVRGUIActionsPowerManagement.h
+++ b/xbmc/pvr/guilib/PVRGUIActionsPowerManagement.h
@@ -8,6 +8,7 @@
#pragma once
+#include "pvr/IPVRComponent.h"
#include "pvr/settings/PVRSettings.h"
#include <memory>
@@ -18,7 +19,7 @@ namespace PVR
{
class CPVRTimerInfoTag;
-class CPVRGUIActionsPowerManagement
+class CPVRGUIActionsPowerManagement : public IPVRComponent
{
public:
CPVRGUIActionsPowerManagement();
@@ -45,4 +46,10 @@ private:
CPVRSettings m_settings;
};
+namespace GUI
+{
+// pretty scope and name
+using PowerManagement = CPVRGUIActionsPowerManagement;
+} // namespace GUI
+
} // namespace PVR
diff --git a/xbmc/windows/GUIWindowLoginScreen.cpp b/xbmc/windows/GUIWindowLoginScreen.cpp
index 6d0c4b0b9a..b00c2ae853 100644
--- a/xbmc/windows/GUIWindowLoginScreen.cpp
+++ b/xbmc/windows/GUIWindowLoginScreen.cpp
@@ -25,7 +25,7 @@
#include "profiles/ProfileManager.h"
#include "profiles/dialogs/GUIDialogProfileSettings.h"
#include "pvr/PVRManager.h"
-#include "pvr/guilib/PVRGUIActions.h"
+#include "pvr/guilib/PVRGUIActionsPowerManagement.h"
#include "settings/Settings.h"
#include "settings/SettingsComponent.h"
#include "utils/StringUtils.h"
@@ -128,7 +128,7 @@ bool CGUIWindowLoginScreen::OnAction(const CAction &action)
std::string actionName = action.GetName();
StringUtils::ToLower(actionName);
if ((actionName.find("shutdown") != std::string::npos) &&
- CServiceBroker::GetPVRManager().GUIActions()->CanSystemPowerdown())
+ CServiceBroker::GetPVRManager().Get<PVR::GUI::PowerManagement>().CanSystemPowerdown())
CBuiltins::GetInstance().Execute(action.GetName());
return true;
}