Projects
home:sagiben
kodi-next
Sign Up
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 65
View file
kodi-next.spec
Changed
@@ -328,7 +328,7 @@ -DCMAKE_INSTALL_LIBDIR=%{buildroot}%{_libdir} # -DAPP_LIB_DIR=%{buildroot}%{_libdir}/kodi -make %{?_smp_mflags} VERBOSE=1 +make %{?_smp_mflags} VERBOSE=1 CC=/usr/bin/gcc-7 CXX=/usr/bin/g++-7 %install cd build
View file
_service:download_files:master.tar.gz/system/keymaps/keyboard.xml
Changed
@@ -696,6 +696,32 @@ <period mod="longpress">ChannelNumberSeparator</period> </keyboard> </FullscreenRadio> + <FullscreenLiveTvPreview> + <keyboard> + <return>Select</return> + <enter>Select</enter> + </keyboard> + </FullscreenLiveTvPreview> + <FullscreenRadioPreview> + <keyboard> + <return>Select</return> + <enter>Select</enter> + </keyboard> + </FullscreenRadioPreview> + <FullscreenLiveTvInput> + <keyboard> + <return>Select</return> + <enter>Select</enter> + <period>ChannelNumberSeparator</period> + </keyboard> + </FullscreenLiveTvInput> + <FullscreenRadioInput> + <keyboard> + <return>Select</return> + <enter>Select</enter> + <period>ChannelNumberSeparator</period> + </keyboard> + </FullscreenRadioInput> <PVROSDChannels> <keyboard> <period mod="longpress">ChannelNumberSeparator</period>
View file
_service:download_files:master.tar.gz/system/keymaps/remote.xml
Changed
@@ -589,6 +589,26 @@ <pageminus>ChannelDown</pageminus> </remote> </FullscreenRadio> + <FullscreenLiveTvPreview> + <remote> + <select>Select</select> + </remote> + </FullscreenLiveTvPreview> + <FullscreenRadioPreview> + <remote> + <select>Select</select> + </remote> + </FullscreenRadioPreview> + <FullscreenLiveTvInput> + <remote> + <select>Select</select> + </remote> + </FullscreenLiveTvInput> + <FullscreenRadioInput> + <remote> + <select>Select</select> + </remote> + </FullscreenRadioInput> <PVROSDChannels> <remote> <back>Close</back>
View file
_service:download_files:master.tar.gz/xbmc/guilib/WindowIDs.h
Changed
@@ -147,8 +147,13 @@ #define WINDOW_RADIO_TIMER_RULES (WINDOW_PVR_ID_START+11) #define WINDOW_PVR_ID_END WINDOW_RADIO_TIMER_RULES -#define WINDOW_FULLSCREEN_LIVETV 10800 // virtual window for PVR specific keymap bindings in fullscreen playback (which internally uses WINDOW_FULLSCREEN_VIDEO) -#define WINDOW_FULLSCREEN_RADIO 10801 // virtual window for PVR radio specific keymaps with fallback to WINDOW_VISUALISATION +// virtual windows for PVR specific keymap bindings in fullscreen playback +#define WINDOW_FULLSCREEN_LIVETV 10800 +#define WINDOW_FULLSCREEN_RADIO 10801 +#define WINDOW_FULLSCREEN_LIVETV_PREVIEW 10802 +#define WINDOW_FULLSCREEN_RADIO_PREVIEW 10803 +#define WINDOW_FULLSCREEN_LIVETV_INPUT 10804 +#define WINDOW_FULLSCREEN_RADIO_INPUT 10805 #define WINDOW_DIALOG_GAME_CONTROLLERS 10820 #define WINDOW_GAMES 10821
View file
_service:download_files:master.tar.gz/xbmc/input/ButtonTranslator.cpp
Changed
@@ -203,27 +203,17 @@ // try to get the action from the current window unsigned int actionID = GetActionCode(window, key, strAction); - // if it's invalid, try to get it from the global map - if (actionID == ACTION_NONE && fallback) + if (fallback) { - //! @todo Refactor fallback logic - int fallbackWindow = CWindowTranslator::GetFallbackWindow(window); - if (fallbackWindow > -1) - actionID = GetActionCode(fallbackWindow, key, strAction); - - // still no valid action? use global map - if (actionID == ACTION_NONE) - actionID = GetActionCode(-1, key, strAction); + // if it's invalid, try to get it from fallback windows or the global map (window == -1) + while (actionID == ACTION_NONE && window > -1) + { + window = CWindowTranslator::GetFallbackWindow(window); + actionID = GetActionCode(window, key, strAction); + } } - // Now fill our action structure - CAction action(actionID, strAction, key); - return action; -} - -CAction CButtonTranslator::GetGlobalAction(const CKey &key) -{ - return GetAction(-1, key, true); + return CAction(actionID, strAction, key); } bool CButtonTranslator::HasLongpressMapping(int window, const CKey &key)
View file
_service:download_files:master.tar.gz/xbmc/input/ButtonTranslator.h
Changed
@@ -71,12 +71,6 @@ */ CAction GetAction(int window, const CKey &key, bool fallback = true); - /*! \brief Obtain the global action configured for a given key - \param key the key to query the action for - \return the global action - */ - CAction GetGlobalAction(const CKey &key); - void RegisterMapper(const std::string &device, IButtonMapper *mapper); void UnregisterMapper(IButtonMapper *mapper);
View file
_service:download_files:master.tar.gz/xbmc/input/CustomControllerTranslator.cpp
Changed
@@ -84,23 +84,16 @@ // Try to get the action from the current window if (!TranslateString(windowId, controllerName, buttonId, actionId, strAction)) { - // If it's invalid, try to get it from a fallback window or the global map - int fallbackWindow = CWindowTranslator::GetFallbackWindow(windowId); - if (fallbackWindow > -1) - TranslateString(fallbackWindow, controllerName, buttonId, actionId, strAction); - - // Still no valid action? Use global map - if (actionId == ACTION_NONE) - TranslateString(-1, controllerName, buttonId, actionId, strAction); - } - - if (actionId != ACTION_NONE) - { - action = actionId; - return true; + // if it's invalid, try to get it from fallback windows or the global map (windowId == -1) + while (actionId == ACTION_NONE && windowId > -1) + { + windowId = CWindowTranslator::GetFallbackWindow(windowId); + TranslateString(windowId, controllerName, buttonId, actionId, strAction); + } } - return false; + action = actionId; + return actionId != ACTION_NONE; } bool CCustomControllerTranslator::TranslateString(int windowId, const std::string& controllerName, int buttonId, unsigned int& actionId, std::string& strAction)
View file
_service:download_files:master.tar.gz/xbmc/input/InputManager.cpp
Changed
@@ -966,11 +966,6 @@ return m_buttonTranslator->GetAction(window, key, fallback); } -CAction CInputManager::GetGlobalAction(const CKey &key) -{ - return m_buttonTranslator->GetGlobalAction(key); -} - bool CInputManager::TranslateCustomControllerString(int windowId, const std::string& controllerName, int buttonId, int& action, std::string& strAction) { return m_customControllerTranslator->TranslateCustomControllerString(windowId, controllerName, buttonId, action, strAction);
View file
_service:download_files:master.tar.gz/xbmc/input/InputManager.h
Changed
@@ -261,14 +261,6 @@ */ CAction GetAction(int window, const CKey &key, bool fallback = true); - /*! \brief Obtain the global action configured for a given key - * - * \param key the key to query the action for - * - * \return the global action - */ - CAction GetGlobalAction(const CKey &key); - bool TranslateCustomControllerString(int windowId, const std::string& controllerName, int buttonId, int& action, std::string& strAction); bool TranslateTouchAction(int windowId, int touchAction, int touchPointers, int &action, std::string &actionString);
View file
_service:download_files:master.tar.gz/xbmc/input/TouchTranslator.cpp
Changed
@@ -108,12 +108,12 @@ if (!TranslateAction(window, touchAction, touchPointers, actionId, actionString)) { - int fallbackWindow = CWindowTranslator::GetFallbackWindow(window); - if (fallbackWindow > -1) - TranslateAction(fallbackWindow, touchAction, touchPointers, actionId, actionString); - - if (actionId == ACTION_NONE) - TranslateAction(-1, touchAction, touchPointers, actionId, actionString); + // if it's invalid, try to get it from fallback windows or the global map (window == -1) + while (actionId == ACTION_NONE && window > -1) + { + window = CWindowTranslator::GetFallbackWindow(window); + TranslateAction(window, touchAction, touchPointers, actionId, actionString); + } } action = actionId;
View file
_service:download_files:master.tar.gz/xbmc/input/WindowTranslator.cpp
Changed
@@ -21,6 +21,7 @@ #include "WindowTranslator.h" #include "Application.h" #include "guilib/WindowIDs.h" +#include "pvr/PVRGUIActions.h" #include "pvr/PVRManager.h" #include "ServiceBroker.h" #include "utils/log.h" @@ -131,8 +132,12 @@ { "movieinformation" , WINDOW_DIALOG_VIDEO_INFO }, { "textviewer" , WINDOW_DIALOG_TEXT_VIEWER }, { "fullscreenvideo" , WINDOW_FULLSCREEN_VIDEO }, - { "fullscreenlivetv" , WINDOW_FULLSCREEN_LIVETV }, // virtual window/keymap section for PVR specific bindings in fullscreen playback (which internally uses WINDOW_FULLSCREEN_VIDEO) - { "fullscreenradio" , WINDOW_FULLSCREEN_RADIO }, // virtual window for fullscreen radio, uses WINDOW_VISUALISATION as fallback + { "fullscreenlivetv" , WINDOW_FULLSCREEN_LIVETV }, // virtual window for fullscreen radio, uses WINDOW_FULLSCREEN_VIDEO as fallback + { "fullscreenlivetvpreview" , WINDOW_FULLSCREEN_LIVETV_PREVIEW }, // Live TV channel preview + { "fullscreenlivetvinput" , WINDOW_FULLSCREEN_LIVETV_INPUT }, // Livr TV direct channel number input + { "fullscreenradio" , WINDOW_FULLSCREEN_RADIO }, // virtual window for fullscreen radio, uses WINDOW_VISUALISATION as fallback + { "fullscreenradiopreview" , WINDOW_FULLSCREEN_RADIO_PREVIEW }, // PVR Radio channel preview + { "fullscreenradioinput" , WINDOW_FULLSCREEN_RADIO_INPUT }, // PVR radio direct channel number input { "fullscreengame" , WINDOW_FULLSCREEN_GAME }, { "visualisation" , WINDOW_VISUALISATION }, { "slideshow" , WINDOW_SLIDESHOW }, @@ -167,8 +172,12 @@ static const std::vector<FallbackWindowMapping> FallbackWindows = { - { WINDOW_FULLSCREEN_LIVETV , WINDOW_FULLSCREEN_VIDEO }, - { WINDOW_FULLSCREEN_RADIO , WINDOW_VISUALISATION }, + { WINDOW_FULLSCREEN_LIVETV, WINDOW_FULLSCREEN_VIDEO }, + { WINDOW_FULLSCREEN_LIVETV_INPUT, WINDOW_FULLSCREEN_LIVETV }, + { WINDOW_FULLSCREEN_LIVETV_PREVIEW, WINDOW_FULLSCREEN_LIVETV }, + { WINDOW_FULLSCREEN_RADIO, WINDOW_VISUALISATION }, + { WINDOW_FULLSCREEN_RADIO_INPUT, WINDOW_FULLSCREEN_RADIO }, + { WINDOW_FULLSCREEN_RADIO_PREVIEW, WINDOW_FULLSCREEN_RADIO }, }; } // anonymous namespace @@ -278,9 +287,16 @@ // check if we're in a DVD menu if (g_application.GetAppPlayer().IsInMenu()) return WINDOW_VIDEO_MENU; - // check for LiveTV and switch to it's virtual window - else if (CServiceBroker::GetPVRManager().IsStarted() && g_application.CurrentFileItem().HasPVRChannelInfoTag()) - return WINDOW_FULLSCREEN_LIVETV; + // special casing for Live TV + else if (g_application.CurrentFileItem().HasPVRChannelInfoTag()) + { + if (CServiceBroker::GetPVRManager().GUIActions()->GetChannelNumberInputHandler().HasChannelNumber()) + return WINDOW_FULLSCREEN_LIVETV_INPUT; + else if (CServiceBroker::GetPVRManager().GUIActions()->GetChannelNavigator().IsPreview()) + return WINDOW_FULLSCREEN_LIVETV_PREVIEW; + else + return WINDOW_FULLSCREEN_LIVETV; + } // special casing for numeric seek else if (g_application.GetAppPlayer().GetSeekHandler().HasTimeCode()) return WINDOW_VIDEO_TIME_SEEK; @@ -288,8 +304,15 @@ else if (windowId == WINDOW_VISUALISATION) { // special casing for PVR radio - if (CServiceBroker::GetPVRManager().IsStarted() && g_application.CurrentFileItem().HasPVRChannelInfoTag()) - return WINDOW_FULLSCREEN_RADIO; + if (g_application.CurrentFileItem().HasPVRChannelInfoTag()) + { + if (CServiceBroker::GetPVRManager().GUIActions()->GetChannelNumberInputHandler().HasChannelNumber()) + return WINDOW_FULLSCREEN_RADIO_INPUT; + else if (CServiceBroker::GetPVRManager().GUIActions()->GetChannelNavigator().IsPreview()) + return WINDOW_FULLSCREEN_RADIO_PREVIEW; + else + return WINDOW_FULLSCREEN_RADIO; + } // special casing for numeric seek else if (g_application.GetAppPlayer().GetSeekHandler().HasTimeCode()) return WINDOW_VIDEO_TIME_SEEK;
View file
_service:download_files:master.tar.gz/xbmc/music/windows/GUIWindowVisualisation.cpp
Changed
@@ -28,8 +28,6 @@ #include "GUIInfoManager.h" #include "guilib/GUIWindowManager.h" #include "input/Key.h" -#include "pvr/PVRGUIActions.h" -#include "pvr/PVRManager.h" #include "settings/AdvancedSettings.h" #include "settings/Settings.h" @@ -49,10 +47,6 @@ bool CGUIWindowVisualisation::OnAction(const CAction &action) { - // Handle some actions "overloaded" by PVR (e.g. channel preview, direct channel number input). - if (CServiceBroker::GetPVRManager().GUIActions()->OnAction(action)) - return true; - bool passToVis = false; switch (action.GetID()) {
View file
_service:download_files:master.tar.gz/xbmc/pvr/PVRActionListener.cpp
Changed
@@ -157,6 +157,28 @@ return true; } + case ACTION_SELECT_ITEM: + { + if (!bIsPlayingPVR) + return false; + + // If the button that caused this action matches action "Select" ... + if (CServiceBroker::GetSettings().GetBool(CSettings::SETTING_PVRPLAYBACK_CONFIRMCHANNELSWITCH) && + CServiceBroker::GetPVRManager().GUIActions()->GetChannelNavigator().IsPreview()) + { + // ... and if "confirm channel switch" setting is active and a channel + // preview is currently shown, switch to the currently previewed channel. + CServiceBroker::GetPVRManager().GUIActions()->GetChannelNavigator().SwitchToCurrentChannel(); + return true; + } + else if (CServiceBroker::GetPVRManager().GUIActions()->GetChannelNumberInputHandler().CheckInputAndExecuteAction()) + { + // ... or if the action was processed by direct channel number input, we're done. + return true; + } + return false; + } + case ACTION_MOVE_UP: case ACTION_NEXT_ITEM: case ACTION_CHANNEL_UP:
View file
_service:download_files:master.tar.gz/xbmc/pvr/PVRChannelNumberInputHandler.cpp
Changed
@@ -117,6 +117,11 @@ return CPVRChannelNumber(iChannelNumber, iSubChannelNumber); } +bool CPVRChannelNumberInputHandler::HasChannelNumber() const +{ + return !m_inputBuffer.empty(); +} + std::string CPVRChannelNumberInputHandler::GetChannelNumberAsString() const { CSingleLock lock(m_mutex);
View file
_service:download_files:master.tar.gz/xbmc/pvr/PVRChannelNumberInputHandler.h
Changed
@@ -60,6 +60,12 @@ virtual void AppendChannelNumberCharacter(char cCharacter); /*! + * @brief Check whether a channel number was entered. + * @return True if the handler currently holds a channel number, false otherwise. + */ + bool HasChannelNumber() const; + + /*! * @brief Get the currently entered channel number as a formatted string. Format is n digits with leading zeros, where n is the number of digits specified when calling the ctor. * @return the channel number string. */
View file
_service:download_files:master.tar.gz/xbmc/pvr/PVRGUIActions.cpp
Changed
@@ -1831,29 +1831,6 @@ return m_channelNavigator; } - bool CPVRGUIActions::OnAction(const CAction &action) - { - // If the button that caused this action matches (global) action "Select" (OK)... - if (action.GetID() == ACTION_SELECT_ITEM || - CServiceBroker::GetInputManager().GetGlobalAction(action.GetButtonCode()).GetID() == ACTION_SELECT_ITEM) - { - if (m_settings.GetBoolValue(CSettings::SETTING_PVRPLAYBACK_CONFIRMCHANNELSWITCH) && - GetChannelNavigator().IsPreview()) - { - // ... and if "confirm channel switch" setting is active and a channel - // preview is currently shown, switch to the currently previewed channel. - GetChannelNavigator().SwitchToCurrentChannel(); - return true; - } - else if (GetChannelNumberInputHandler().CheckInputAndExecuteAction()) - { - // ... and action was processed by direct channel number input, we're done. - return true; - } - } - return false; - } - void CPVRGUIActions::OnPlaybackStarted(const CFileItemPtr &item) { if (item->HasPVRChannelInfoTag())
View file
_service:download_files:master.tar.gz/xbmc/pvr/PVRGUIActions.h
Changed
@@ -374,12 +374,6 @@ CPVRGUIChannelNavigator &GetChannelNavigator(); /*! - * @brief Process an action. - * @return True if the action was processed, false otherwise. - */ - bool OnAction(const CAction &action); - - /*! * @brief Inform GUI actions that playback of an item just started. * @param item The item that started to play. */
View file
_service:download_files:master.tar.gz/xbmc/video/windows/GUIWindowFullScreen.cpp
Changed
@@ -31,8 +31,6 @@ #include "video/dialogs/GUIDialogSubtitleSettings.h" #include "guilib/GUIWindowManager.h" #include "input/Key.h" -#include "pvr/PVRGUIActions.h" -#include "pvr/PVRManager.h" #include "video/dialogs/GUIDialogFullScreenInfo.h" #include "settings/DisplaySettings.h" #include "settings/MediaSettings.h" @@ -94,10 +92,6 @@ bool CGUIWindowFullScreen::OnAction(const CAction &action) { - // Handle some actions "overloaded" by PVR (e.g. channel preview, direct channel number input). - if (CServiceBroker::GetPVRManager().GUIActions()->OnAction(action)) - return true; - switch (action.GetID()) { case ACTION_SHOW_OSD:
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.