diff options
author | jmarshallnz <jcmarsha@gmail.com> | 2012-08-27 14:09:20 -0700 |
---|---|---|
committer | jmarshallnz <jcmarsha@gmail.com> | 2012-08-27 14:09:20 -0700 |
commit | f8f5a56a2c80f5bd5cc86472cb07b9fe9f96fa82 (patch) | |
tree | 15c21bfc8727b1ac0d0f4cc78a00b6b740e82846 | |
parent | 39ecb3a2c5d77f06be9c6b5d2aa974e543a3a254 (diff) | |
parent | 09fa271c77c53f1b981198d5f690417504846fe9 (diff) |
Merge pull request #1336 from Voyager-xbmc/focus-stack-selection-window
[gui] Stack selection window - set focus immediately to avoid repeated keypress
-rw-r--r-- | xbmc/video/dialogs/GUIDialogFileStacking.cpp | 32 | ||||
-rw-r--r-- | xbmc/video/dialogs/GUIDialogFileStacking.h | 1 |
2 files changed, 20 insertions, 13 deletions
diff --git a/xbmc/video/dialogs/GUIDialogFileStacking.cpp b/xbmc/video/dialogs/GUIDialogFileStacking.cpp index a3287e7bb0..145bfea743 100644 --- a/xbmc/video/dialogs/GUIDialogFileStacking.cpp +++ b/xbmc/video/dialogs/GUIDialogFileStacking.cpp @@ -53,19 +53,6 @@ bool CGUIDialogFileStacking::OnMessage(CGUIMessage& message) { CGUIDialog::OnMessage(message); m_iSelectedFile = -1; - if (GetControl(STACK_LIST)) - { // have the new stack list instead - fill it up - SendMessage(GUI_MSG_LABEL_RESET, GetID(), STACK_LIST); - for (int i = 0; i < m_iNumberOfFiles; i++) - { - CStdString label; - label.Format(g_localizeStrings.Get(23051).c_str(), i+1); - CFileItemPtr item(new CFileItem(label)); - m_stackItems->Add(item); - } - CGUIMessage msg(GUI_MSG_LABEL_BIND, GetID(), STACK_LIST, 0, 0, m_stackItems); - OnMessage(msg); - } return true; } break; @@ -97,3 +84,22 @@ void CGUIDialogFileStacking::SetNumberOfFiles(int iFiles) { m_iNumberOfFiles = iFiles; } + +void CGUIDialogFileStacking::OnInitWindow() +{ + if (GetControl(STACK_LIST)) + { + // have the new stack list instead - fill it up + SendMessage(GUI_MSG_LABEL_RESET, GetID(), STACK_LIST); + for (int i = 0; i < m_iNumberOfFiles; i++) + { + CStdString label; + label.Format(g_localizeStrings.Get(23051).c_str(), i+1); + CFileItemPtr item(new CFileItem(label)); + m_stackItems->Add(item); + } + CGUIMessage msg(GUI_MSG_LABEL_BIND, GetID(), STACK_LIST, 0, 0, m_stackItems); + OnMessage(msg); + } + CGUIDialog::OnInitWindow(); +}
\ No newline at end of file diff --git a/xbmc/video/dialogs/GUIDialogFileStacking.h b/xbmc/video/dialogs/GUIDialogFileStacking.h index 89bcb48880..60ab510eb1 100644 --- a/xbmc/video/dialogs/GUIDialogFileStacking.h +++ b/xbmc/video/dialogs/GUIDialogFileStacking.h @@ -36,6 +36,7 @@ public: int GetSelectedFile() const; void SetNumberOfFiles(int iFiles); protected: + virtual void OnInitWindow(); int m_iSelectedFile; int m_iNumberOfFiles; CFileItemList* m_stackItems; |