From 189b2e0fb0ef4d9d9606b31c80fbd800392aa5c3 Mon Sep 17 00:00:00 2001 From: "M. Liebmann" Date: Tue, 8 Dec 2015 06:16:10 +0100 Subject: [PATCH] Disable multimedia plugins and video functions... ...(movie player & upnp browser) when movieplayer is in use --- src/gui/mediaplayer.cpp | 9 +++++---- src/gui/widget/menue.cpp | 4 ++-- src/gui/widget/menue.h | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/gui/mediaplayer.cpp b/src/gui/mediaplayer.cpp index a355c448f..3c55f267f 100644 --- a/src/gui/mediaplayer.cpp +++ b/src/gui/mediaplayer.cpp @@ -167,6 +167,7 @@ int CMediaPlayerMenu::initMenuMedia(CMenuWidget *m, CPersonalizeGui *p) fw_inet->setHint(NEUTRINO_ICON_HINT_INET_RADIO, LOCALE_MENU_HINT_INET_RADIO); } + bool enabled = !CMoviePlayerGui::getInstance().Playing(); if (usage_mode == MODE_DEFAULT) { //movieplayer @@ -174,9 +175,9 @@ int CMediaPlayerMenu::initMenuMedia(CMenuWidget *m, CPersonalizeGui *p) moviePlayer = new CMenuWidget(LOCALE_MAINMENU_MOVIEPLAYER, NEUTRINO_ICON_MULTIMEDIA, width, MN_WIDGET_ID_MEDIA_MOVIEPLAYER); personalize->addWidget(moviePlayer); if (g_settings.easymenu) - fw_mp = new CMenuForwarder(LOCALE_MAINMENU_MOVIEPLAYER, true, NULL, moviePlayer, NULL, CRCInput::RC_red); + fw_mp = new CMenuForwarder(LOCALE_MAINMENU_MOVIEPLAYER, enabled, NULL, moviePlayer, NULL, CRCInput::RC_red); else - fw_mp = new CMenuForwarder(LOCALE_MAINMENU_MOVIEPLAYER, true, NULL, moviePlayer, NULL, CRCInput::RC_yellow); + fw_mp = new CMenuForwarder(LOCALE_MAINMENU_MOVIEPLAYER, enabled, NULL, moviePlayer, NULL, CRCInput::RC_yellow); fw_mp->setHint(NEUTRINO_ICON_HINT_MOVIE, LOCALE_MENU_HINT_MOVIE); } @@ -192,7 +193,7 @@ int CMediaPlayerMenu::initMenuMedia(CMenuWidget *m, CPersonalizeGui *p) if (!g_settings.easymenu) { if (!upnpbrowsergui) upnpbrowsergui = new CUpnpBrowserGui(); - fw_upnp = new CMenuForwarder(LOCALE_UPNPBROWSER_HEAD, true, NULL, upnpbrowsergui, NULL, CRCInput::RC_0); + fw_upnp = new CMenuForwarder(LOCALE_UPNPBROWSER_HEAD, enabled, NULL, upnpbrowsergui, NULL, CRCInput::RC_0); fw_upnp->setHint(NEUTRINO_ICON_HINT_A_PIC, LOCALE_MENU_HINT_UPNP); } #endif @@ -261,7 +262,7 @@ int CMediaPlayerMenu::initMenuMedia(CMenuWidget *m, CPersonalizeGui *p) //add I_TYPE_MULTIMEDIA plugins unsigned int nextShortcut = (unsigned int)media->getNextShortcut(); - media->integratePlugins(CPlugins::I_TYPE_MULTIMEDIA, nextShortcut); + media->integratePlugins(CPlugins::I_TYPE_MULTIMEDIA, nextShortcut, enabled); res = media->exec(NULL, ""); delete media; diff --git a/src/gui/widget/menue.cpp b/src/gui/widget/menue.cpp index 1e9b27bf5..0f116080a 100644 --- a/src/gui/widget/menue.cpp +++ b/src/gui/widget/menue.cpp @@ -968,7 +968,7 @@ int CMenuWidget::exec(CMenuTarget* parent, const std::string &) return retval; } -void CMenuWidget::integratePlugins(CPlugins::i_type_t integration, const unsigned int shortcut) +void CMenuWidget::integratePlugins(CPlugins::i_type_t integration, const unsigned int shortcut, bool enabled) { bool separatorline = false; unsigned int number_of_plugins = (unsigned int) g_PluginList->getNumberOfPlugins(); @@ -984,7 +984,7 @@ void CMenuWidget::integratePlugins(CPlugins::i_type_t integration, const unsigne } printf("[neutrino] integratePlugins: add %s\n", g_PluginList->getName(count)); neutrino_msg_t dk = (shortcut != CRCInput::RC_nokey) ? CRCInput::convertDigitToKey(sc++) : CRCInput::RC_nokey; - CMenuForwarder *fw_plugin = new CMenuForwarder(g_PluginList->getName(count), true, NULL, CPluginsExec::getInstance(), to_string(count).c_str(), dk); + CMenuForwarder *fw_plugin = new CMenuForwarder(g_PluginList->getName(count), enabled, NULL, CPluginsExec::getInstance(), to_string(count).c_str(), dk); fw_plugin->setHint(g_PluginList->getHintIcon(count), g_PluginList->getDescription(count)); addItem(fw_plugin); } diff --git a/src/gui/widget/menue.h b/src/gui/widget/menue.h index 670ebbf0e..3fb863451 100644 --- a/src/gui/widget/menue.h +++ b/src/gui/widget/menue.h @@ -575,7 +575,7 @@ class CMenuWidget : public CMenuTarget virtual void hide(); virtual int exec(CMenuTarget* parent, const std::string & actionKey); virtual const char *getName(); - virtual void integratePlugins(CPlugins::i_type_t integration, const unsigned int shortcut=CRCInput::RC_nokey); + virtual void integratePlugins(CPlugins::i_type_t integration, const unsigned int shortcut=CRCInput::RC_nokey, bool enabled=true); void setSelected(const int &Preselected){ selected = Preselected; }; int getSelected()const { return selected; }; void move(int xoff, int yoff);