diff --git a/Menu/GameShell/10_Settings/About/__init__.py b/Menu/GameShell/10_Settings/About/__init__.py index aa64bdf..39ed6d5 100644 --- a/Menu/GameShell/10_Settings/About/__init__.py +++ b/Menu/GameShell/10_Settings/About/__init__.py @@ -204,7 +204,7 @@ class AboutPage(Page): memory = {} memory["key"] = "memory" memory["label"] = "Memory:" - memory["value"] = str( int(parts[1].strip())/1000.0) +" Mb" + memory["value"] = str( int(parts[1].strip())/1000.0) +" MB" self._AList["memory"] = memory break diff --git a/Menu/GameShell/Music Player/music_lib_list_page.py b/Menu/GameShell/Music Player/music_lib_list_page.py index c7a069e..8eedda3 100644 --- a/Menu/GameShell/Music Player/music_lib_list_page.py +++ b/Menu/GameShell/Music Player/music_lib_list_page.py @@ -326,6 +326,12 @@ class MusicLibListPage(Page): i._Active = True else: i._Active = False + + if i._PosY > self._Height + self._Height/2: + break + + if i._PosY < 0: + continue i.Draw() @@ -339,5 +345,11 @@ class MusicLibListPage(Page): i._Active = True else: i._Active = False - + + if i._PosY > self._Height + self._Height/2: + break + + if i._PosY < 0: + continue + i.Draw() diff --git a/Menu/GameShell/Music Player/play_list_page.py b/Menu/GameShell/Music Player/play_list_page.py index 0dc43e5..a8334c6 100644 --- a/Menu/GameShell/Music Player/play_list_page.py +++ b/Menu/GameShell/Music Player/play_list_page.py @@ -68,6 +68,8 @@ class PlayListPage(Page): _BGpng = None _BGwidth = 75 _BGheight = 70 + + _Scrolled = 0 def __init__(self): self._Icons = {} @@ -189,7 +191,7 @@ class PlayListPage(Page): if cur_li._PosY < 0: for i in range(0, len(self._MyList)): self._MyList[i]._PosY += self._MyList[i]._Height - + self._Scrolled +=1 def ScrollDown(self): if len(self._MyList) == 0: @@ -202,7 +204,23 @@ class PlayListPage(Page): if cur_li._PosY +cur_li._Height > self._Height: for i in range(0,len(self._MyList)): self._MyList[i]._PosY -= self._MyList[i]._Height + self._Scrolled -=1 + def SyncScroll(self):# show where it left + if self._Scrolled == 0: + return + + if self._PsIndex < len(self._MyList): + cur_li = self._MyList[self._PsIndex] + if self._Scrolled > 0: + if cur_li._PosY < 0: + for i in range(0, len(self._MyList)): + self._MyList[i]._PosY += self._Scrolled * self._MyList[i]._Height + elif self._Scrolled < 0: + if cur_li._PosY +cur_li._Height > self._Height: + for i in range(0,len(self._MyList)): + self._MyList[i]._PosY += self._Scrolled * self._MyList[i]._Height + def Click(self): if len(self._MyList) == 0: return @@ -215,9 +233,10 @@ class PlayListPage(Page): self._Screen.Draw() self._Screen.SwapAndShow() - def OnReturnBackCb(self): + def OnReturnBackCb(self): # return from music_lib_list_page self.SyncList() - + self.SyncScroll() + def KeyDown(self,event): if event.key == CurKeys["A"] or event.key == CurKeys["Menu"]: if myvars.Poller != None: @@ -268,6 +287,12 @@ class PlayListPage(Page): self._Ps._Width = self._Width - 11 self._Ps.Draw() for i in self._MyList: + if i._PosY > self._Height + self._Height/2: + break + + if i._PosY < 0: + continue + i.Draw() self._Scroller.UpdateSize( len(self._MyList)*ListItem._Height, self._PsIndex*ListItem._Height) self._Scroller.Draw() @@ -275,5 +300,12 @@ class PlayListPage(Page): self._Ps._Width = self._Width self._Ps.Draw() for i in self._MyList: + + if i._PosY > self._Height + self._Height/2: + break + + if i._PosY < 0: + continue + i.Draw() diff --git a/sys.py/UI/Emulator/fav_list_page.py b/sys.py/UI/Emulator/fav_list_page.py index 2afeb0d..cb08dec 100644 --- a/sys.py/UI/Emulator/fav_list_page.py +++ b/sys.py/UI/Emulator/fav_list_page.py @@ -414,7 +414,14 @@ class FavListPage(Page): self._Ps.Draw() for i in self._MyList: + if i._PosY > self._Height + self._Height/2: + break + + if i._PosY < 0: + continue + i.Draw() + self._Scroller.UpdateSize( len(self._MyList)*ListItem._Height, self._PsIndex*ListItem._Height) self._Scroller.Draw() diff --git a/sys.py/UI/Emulator/rom_list_page.py b/sys.py/UI/Emulator/rom_list_page.py index ee508fe..3efccb6 100644 --- a/sys.py/UI/Emulator/rom_list_page.py +++ b/sys.py/UI/Emulator/rom_list_page.py @@ -453,7 +453,13 @@ class RomListPage(Page): self._Ps.Draw() for i in self._MyList: + if i._PosY > self._Height + self._Height/2: + break + + if i._PosY < 0: + continue i.Draw() + self._Scroller.UpdateSize( len(self._MyList)*ListItem._Height, self._PsIndex*ListItem._Height) self._Scroller.Draw()