summaryrefslogtreecommitdiff
path: root/plex.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'plex.cpp')
-rw-r--r--plex.cpp21
1 files changed, 18 insertions, 3 deletions
diff --git a/plex.cpp b/plex.cpp
index 9d9523a..408f01f 100644
--- a/plex.cpp
+++ b/plex.cpp
@@ -203,7 +203,13 @@ const char *cMyPlugin::MainMenuEntry(void) {
cOsdObject *cMyPlugin::MainMenuAction(void) {
//dsyslog("[plex]%s:\n", __FUNCTION__);
#ifdef SKINDESIGNER
- if (bSkindesigner && m_pTestOsd->SdSupport()) return new cPlexSdOsd(m_pPlugStruct);
+ if (bSkindesigner && m_pTestOsd->SdSupport()) {
+ if (m_bShowInfo) {
+ m_bShowInfo = false;
+ return new cPlexSdOsd(m_pPlugStruct, &action.video);
+ }
+ return new cPlexSdOsd(m_pPlugStruct);
+ }
else return cPlexMenu::ProcessMenu();
#else
return cPlexMenu::ProcessMenu();
@@ -217,9 +223,18 @@ cOsdObject *cMyPlugin::MainMenuAction(void) {
void cMyPlugin::MainThreadHook(void) {
// dsyslog("[plex]%s:\n", __FUNCTION__);
// Start Tasks, e.g. Play Video
- if (plexclient::ActionManager::GetInstance().IsAction()) {
- PlayFile(plexclient::ActionManager::GetInstance().GetAction());
+ using namespace plexclient;
+ if (ActionManager::GetInstance().IsAction()) {
+ action = ActionManager::GetInstance().GetAction();
+ if(action.type == ActionType::Play) {
+ PlayFile(action.video);
+ }
+ else if (action.type == ActionType::Display) {
+ m_bShowInfo = true;
+ cRemote::CallPlugin("plex");
+ }
}
+
}
/**