X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/549ed3c87c4d3fe093472aa199ca6742c1f3654f..064515cf022f9ec6197c355b259960f5cb5d731e:/lib/service/listboxservice.cpp diff --git a/lib/service/listboxservice.cpp b/lib/service/listboxservice.cpp index 9a8ea29f..13538e99 100644 --- a/lib/service/listboxservice.cpp +++ b/lib/service/listboxservice.cpp @@ -48,6 +48,8 @@ void eListboxServiceContent::setCurrent(const eServiceReference &ref) m_cursor_number = index; break; } + if (m_listbox) + m_listbox->moveSelectionTo(index); } void eListboxServiceContent::getCurrent(eServiceReference &ref) @@ -189,6 +191,11 @@ void eListboxServiceContent::cursorHome() { if (m_current_marked && m_saved_cursor == m_list.end()) { + if (m_cursor_number >= m_size) + { + m_cursor_number = m_size-1; + --m_cursor; + } while (m_cursor_number) { std::iter_swap(m_cursor--, m_cursor);