diff options
| author | Christian <zerov83@gmail.com> | 2016-04-11 21:53:22 +0200 |
|---|---|---|
| committer | Christian <zerov83@gmail.com> | 2016-04-11 21:53:22 +0200 |
| commit | 8d0ed3dc01165fa8b84794276225175ec2094dd4 (patch) | |
| tree | 90a31dc9fefa1f35270d131e76e9f4f6b173a7a5 /plexSdOsd.cpp | |
| parent | 82d13a0734c8a11347d50fcc5ad341c8eb1b7a43 (diff) | |
| download | vdr-plugin-plex-8d0ed3dc01165fa8b84794276225175ec2094dd4.tar.gz vdr-plugin-plex-8d0ed3dc01165fa8b84794276225175ec2094dd4.tar.bz2 | |
Added protocol capability "mirror"
Displays information about the currently via app
viewed video on the VDR.
Also fixes "OSD is already open bug"
Diffstat (limited to 'plexSdOsd.cpp')
| -rw-r--r-- | plexSdOsd.cpp | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/plexSdOsd.cpp b/plexSdOsd.cpp index 0091ff1..e271eef 100644 --- a/plexSdOsd.cpp +++ b/plexSdOsd.cpp @@ -7,8 +7,12 @@ cMutex cPlexSdOsd::RedrawMutex; +cPlexSdOsd::cPlexSdOsd(skindesignerapi::cPluginStructure *plugStruct, plexclient::cVideo* detailVideo) : cPlexSdOsd(plugStruct) { + m_pDetailVideo = detailVideo; +} + cPlexSdOsd::cPlexSdOsd(skindesignerapi::cPluginStructure *plugStruct) : cSkindesignerOsdObject(plugStruct) { - m_pRootView = NULL; + } cPlexSdOsd::~cPlexSdOsd() { @@ -20,15 +24,18 @@ cPlexSdOsd::~cPlexSdOsd() { m_pMessage->Clear(); } +bool cPlexSdOsd::m_bSdSupport = false; + bool cPlexSdOsd::SdSupport() { - if (SkindesignerAvailable()) { + if (m_bSdSupport || SkindesignerAvailable()) { skindesignerapi::cOsdView *rootView = GetOsdView(); if (!rootView) { esyslog("[plex]: used skindesigner skin does not support plex"); return false; } + delete rootView; } - return true; + return (m_bSdSupport = true); } void cPlexSdOsd::Show(void) { @@ -45,8 +52,9 @@ void cPlexSdOsd::Show(void) { m_pBrowserGrid = std::shared_ptr<cBrowserGrid>(new cBrowserGrid(m_pRootView)); m_pMessage = std::shared_ptr<skindesignerapi::cViewElement>( m_pRootView->GetViewElement((int) eViewElementsRoot::message)); - m_messageDisplayed = false; - m_detailsActive = false; + if(m_pDetailVideo) { + ShowDetails(m_pDetailVideo); + } Flush(); } |
