Enable scrolling text for media artist
This commit is contained in:
24
screens.py
24
screens.py
@@ -34,6 +34,7 @@ class MediaScreen(Screen):
|
|||||||
self.e = e
|
self.e = e
|
||||||
self.valid = e != None and e != ""
|
self.valid = e != None and e != ""
|
||||||
self.m_t = -1
|
self.m_t = -1
|
||||||
|
self.m_a = -1
|
||||||
|
|
||||||
def display(self, lcd) -> bool:
|
def display(self, lcd) -> bool:
|
||||||
super().display(lcd)
|
super().display(lcd)
|
||||||
@@ -66,20 +67,29 @@ class MediaScreen(Screen):
|
|||||||
mins = self.d["media_duration"] // 60
|
mins = self.d["media_duration"] // 60
|
||||||
secs = self.d["media_duration"] % 60
|
secs = self.d["media_duration"] % 60
|
||||||
rght_st(lcd, f"{mins}:{secs}", lcd.width, lcd.height - 16, 1, 180, 180, 180)
|
rght_st(lcd, f"{mins}:{secs}", lcd.width, lcd.height - 16, 1, 180, 180, 180)
|
||||||
cs = lcd.width//sz_to_w(3)
|
mt_cs = lcd.width//sz_to_w(3)
|
||||||
l = len(self.d["media_title"]) > cs
|
mt_l = len(self.d["media_title"]) > mt_cs
|
||||||
if (l):
|
if (mt_l):
|
||||||
if (self.m_t + cs > len(self.d["media_title"])):
|
if (self.m_t + mt_cs > len(self.d["media_title"])):
|
||||||
self.m_t = 0
|
self.m_t = 0
|
||||||
else:
|
else:
|
||||||
self.m_t += 1
|
self.m_t += 1
|
||||||
cntr_st(lcd, lcd.width, self.d["media_title"][self.m_t:self.m_t + cs], lcd.height - 72, 3, 255, 255, 255)
|
cntr_st(lcd, lcd.width, self.d["media_title"][self.m_t:self.m_t + mt_cs], lcd.height - 72, 3, 255, 255, 255)
|
||||||
else:
|
else:
|
||||||
self.m_t = -1
|
self.m_t = -1
|
||||||
cntr_st(lcd, lcd.width, self.d["media_title"], lcd.height - 72, 3, 255, 255, 255)
|
cntr_st(lcd, lcd.width, self.d["media_title"], lcd.height - 72, 3, 255, 255, 255)
|
||||||
cntr_st(lcd, lcd.width, self.d["media_artist"], lcd.height - 98, 2, 255, 255, 255)
|
ma_cs = lcd.width//sz_to_w(2)
|
||||||
|
ma_l = len(self.d["media_artist"]) > ma_cs
|
||||||
|
if (ma_l):
|
||||||
|
if (self.m_a + ma_cs > len(self.d["media_artist"])):
|
||||||
|
self.m_a = 0
|
||||||
|
else:
|
||||||
|
self.m_a += 1
|
||||||
|
cntr_st(lcd, lcd.width, self.d["media_artist"][self.m_a:self.m_a + ma_cs], lcd.height - 98, 2, 255, 255, 255)
|
||||||
|
else:
|
||||||
|
cntr_st(lcd, lcd.width, self.d["media_artist"], lcd.height - 98, 2, 255, 255, 255)
|
||||||
lcd.show()
|
lcd.show()
|
||||||
return l
|
return mt_l or ma_l
|
||||||
|
|
||||||
def __updateMediaPositionBar(self, lcd, p: int, d: int):
|
def __updateMediaPositionBar(self, lcd, p: int, d: int):
|
||||||
if (d > 0):
|
if (d > 0):
|
||||||
|
|||||||
Reference in New Issue
Block a user