This commit is contained in:
theDeadMan 2017-09-25 19:28:26 +01:00
parent 840c0c1487
commit 65117d6778
6 changed files with 293 additions and 334 deletions

View File

@ -17,7 +17,7 @@
<width>8-col-gutter</width> <width>8-col-gutter</width>
<height>2-row</height> <height>2-row</height>
<wrapmultiline>true</wrapmultiline> <wrapmultiline>true</wrapmultiline>
<font>itemTitle</font> <font>pageTitle</font>
<textcolor>textActive</textcolor> <textcolor>textActive</textcolor>
</control> </control>
<control type="textbox" id="9"> <control type="textbox" id="9">

View File

@ -26,7 +26,7 @@
<value condition="Window.isactive(RadioChannels)">$LOCALIZE[31164] [COLOR highlight]$LOCALIZE[31078][/COLOR]</value> <value condition="Window.isactive(RadioChannels)">$LOCALIZE[31164] [COLOR highlight]$LOCALIZE[31078][/COLOR]</value>
<value condition="Window.isactive(TVRecordings)">$LOCALIZE[31006] [COLOR highlight]$LOCALIZE[31165][/COLOR]</value> <value condition="Window.isactive(TVRecordings)">$LOCALIZE[31006] [COLOR highlight]$LOCALIZE[31165][/COLOR]</value>
<value condition="Window.isactive(programs)">$LOCALIZE[10506]</value> <value condition="Window.isactive(programs)">$LOCALIZE[10506]</value>
<value condition="Window.isactive(playlists)">$LOCALIZE[31123]</value> <value condition="Window.isactive(musicplaylist) | Window.isactive(videoplaylist)">$LOCALIZE[31123]</value>
</variable> </variable>
<variable name="listSubTitle"> <variable name="listSubTitle">
<value condition="Window.isactive(Videos)">$INFO[container.Numitems,, $LOCALIZE[31014]] $VAR[unwatchedOnly]</value> <value condition="Window.isactive(Videos)">$INFO[container.Numitems,, $LOCALIZE[31014]] $VAR[unwatchedOnly]</value>
@ -35,7 +35,7 @@
<value condition="Window.isactive(TVchannels) | Window.isactive(RadioChannels) | Window.isactive(TVGuide)">$INFO[Pvr.BackendChannels] $LOCALIZE[31017] ($INFO[control.getlabel(29)])</value> <value condition="Window.isactive(TVchannels) | Window.isactive(RadioChannels) | Window.isactive(TVGuide)">$INFO[Pvr.BackendChannels] $LOCALIZE[31017] ($INFO[control.getlabel(29)])</value>
<value condition="Window.isactive(TVRecordings)">$INFO[container.numitems] $LOCALIZE[31165]</value> <value condition="Window.isactive(TVRecordings)">$INFO[container.numitems] $LOCALIZE[31165]</value>
<value condition="Window.isactive(programs)">$INFO[container.Numitems,, $LOCALIZE[31145]]</value> <value condition="Window.isactive(programs)">$INFO[container.Numitems,, $LOCALIZE[31145]]</value>
<value condition="Window.isactive(playlists)">$INFO[container.Numitems,, $LOCALIZE[31014]]</value> <value condition="Window.isactive(musicplaylist) | Window.isactive(videoplaylist)">$INFO[container.Numitems,, $LOCALIZE[31014]]</value>
</variable> </variable>
<!--list view item detail / subheader--> <!--list view item detail / subheader-->
<variable name="itemDetail"> <variable name="itemDetail">

View File

@ -73,6 +73,7 @@
<onleft>9000</onleft> <onleft>9000</onleft>
<onback>9000</onback> <onback>9000</onback>
<orientation>horizontal</orientation> <orientation>horizontal</orientation>
<onclick>activatewindow(Videos,videodb://tvshows/titles/$INFO[listitem.dbid])</onclick>
<itemlayout width="586" height="5-col-gutter"> <itemlayout width="586" height="5-col-gutter">
<control type="image"> <control type="image">
<posx>0</posx> <posx>0</posx>

View File

@ -8,9 +8,6 @@
<control type="group"> <control type="group">
<include>fadeInOut</include> <include>fadeInOut</include>
<control type="group"> <control type="group">
<animation type="Conditional" condition="window.isactive(1105)">
<effect type="slide" start="0,0" end="-100,0" tween="sine" time="300"/>
</animation>
<!--fanart--> <!--fanart-->
<control type="image"> <control type="image">
<visible>isempty(Window(Visualisation).Property(ArtistSlideshow))</visible> <visible>isempty(Window(Visualisation).Property(ArtistSlideshow))</visible>
@ -48,12 +45,6 @@
<control type="group"> <control type="group">
<posx>col-1-begin</posx> <posx>col-1-begin</posx>
<posy>row-23-begin</posy> <posy>row-23-begin</posy>
<animation type="Conditional" condition="window.isactive(1105)">
<effect type="slide" start="0,0" end="0,500" tween="sine" time="400"/>
</animation>
<animation type="conditional" condition="!StringCompare(MusicPlayer.Time,00:00)">
<effect type="slide" start="0,500" end="0,0" tween="sine" time="400"/>
</animation>
<!--coverart (or channel art if radio)--> <!--coverart (or channel art if radio)-->
<control type="image"> <control type="image">
<posx>0</posx> <posx>0</posx>

View File

@ -1,341 +1,310 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<window type="dialog" id="1105"> <window type="dialog" id="1105">
<defaultcontrol always="true">8001</defaultcontrol> <defaultcontrol always="true">8001</defaultcontrol>
<include>fadeInOut</include>
<controls> <controls>
<control type="label">
<posx>col-1-begin</posx>
<posy>row-1-begin</posy>
<width>12-col</width>
<font>pageTitle</font>
<label>$INFO[System.Time]</label>
<textcolor>textActive</textcolor>
</control>
<control type="label">
<posx>col-1-begin</posx>
<posy>94</posy>
<width>12-col</width>
<font>pageSubTitle</font>
<label>$INFO[System.Date(DDD)], $INFO[system.Date(mmm d)]</label>
<textcolor>textActive</textcolor>
</control>
<!-- options menu--> <!-- options menu-->
<control type="group"> <control type="group">
<posx>1438</posx> <posx>0</posx>
<posy>0</posy> <posy>0</posy>
<animation type="Windowopen">
<effect type="fade" start="0" end="100" time="300" delay="100"/>
<effect type="slide" start="800" end="0" tween="cubic" easing="out" time="400" delay="100"/>
</animation>
<animation type="windowClose">
<effect type="fade" start="100" end="0" time="350"/>
<effect type="slide" start="0" end="900" tween="cubic" easing="out" time="400"/>
</animation>
<!--overlay--> <!--overlay-->
<control type="image"> <control type="image">
<posx>0</posx> <include>fullscreenDimensions</include>
<posy>0</posy>
<width>10-col</width>
<height>fullscreenHeight</height>
<texture>colors/black.png</texture> <texture>colors/black.png</texture>
<colordiffuse>cc111111</colordiffuse> <colordiffuse>e9FFFFFF</colordiffuse>
<aspectratio>stretch</aspectratio> <aspectratio>stretch</aspectratio>
</control> </control>
<control type="image"> <control type="group">
<posx>-6</posx> <include>modalDialogInOut</include>
<posy>0</posy> <posx>col-10-begin</posx>
<width>6</width> <posy>row-7-begin</posy>
<height>fullscreenHeight</height> <control type="image">
<texture>colors/white.png</texture>
<colordiffuse>highlight</colordiffuse>
<aspectratio>stretch</aspectratio>
</control>
<!--thumbnail-->
<control type="image">
<posx>27</posx>
<posy>24</posy>
<width>6-col</width>
<height>6-col</height>
<texture fallback="DefaultAlbumCover.png">$INFO[MusicPlayer.Cover]</texture>
<colordiffuse>ffffffff</colordiffuse>
<aspectratio>stretch</aspectratio>
</control>
<!--player controls-->
<control type="panel" id="8001">
<posx>27</posx>
<posy>384</posy>
<width>6-col</width>
<height>2-row</height>
<itemgap>0</itemgap>
<ondown>8002</ondown>
<onup>Control.SetFocus(8003,4)</onup>
<orientation>horizontal</orientation>
<itemlayout width="1-col" height="2-row">
<control type="image">
<posx>0</posx>
<posy>0</posy>
<width>1-col</width>
<height>2-row</height>
<aspectratio>stretch</aspectratio>
<texture>colors/black.png</texture>
<colordiffuse>textboxInactive</colordiffuse>
</control>
<control type="label">
<posx>0</posx>
<posy>0</posy>
<width>1-col</width>
<height>2-row</height>
<align>center</align>
<aligny>center</aligny>
<font>symbolLarge</font>
<textcolor>textActive</textcolor>
<label>$INFO[ListItem.label2]</label>
</control>
</itemlayout>
<focusedlayout width="1-col" height="2-row">
<control type="image">
<posx>0</posx>
<posy>0</posy>
<width>1-col</width>
<height>2-row</height>
<aspectratio>stretch</aspectratio>
<texture>colors/white.png</texture>
</control>
<control type="label">
<posx>0</posx>
<posy>0</posy>
<width>1-col</width>
<height>2-row</height>
<align>center</align>
<aligny>center</aligny>
<font>symbolLarge</font>
<textcolor>black</textcolor>
<label>$INFO[ListItem.label2]</label>
<shadowcolor>-</shadowcolor>
</control>
</focusedlayout>
<content>
<item>
<description>Previous</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(previous)</onclick>
</item>
<item>
<description>Rewind</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(rewind)</onclick>
</item>
<item>
<description>Stop</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(stop)</onclick>
<onclick>Dialog.Close(1105)</onclick>
<onclick>Dialog.Close(1103)</onclick>
</item>
<item>
<visible>Player.Playing | player.forwarding | player.rewinding</visible>
<description>Play/Pause</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(play)</onclick>
</item>
<item>
<visible>Player.Paused</visible>
<description>Pause</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(play)</onclick>
</item>
<item>
<description>Fast forward</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(forward)</onclick>
</item>
<item>
<description>Next Chapter</description>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(next)</onclick>
</item>
</content>
</control>
<!--Star rating-->
<control type="group">
<posx>24</posx>
<posy>14-row</posy>
<control type="image">
<visible>control.hasfocus(8002)</visible>
<posx>0</posx> <posx>0</posx>
<posy>0</posy> <posy>0</posy>
<width>1-col</width> <width>6-col</width>
<height>69</height> <height>69</height>
<aspectratio>stretch</aspectratio> <aspectratio>stretch</aspectratio>
<texture>colors/white.png</texture> <texture>colors/white.png</texture>
<colordiffuse>highlight</colordiffuse> <colordiffuse>highlight</colordiffuse>
</control> </control>
<control type="label"> <control type="image">
<posx>0</posx> <posx>0</posx>
<posy>0</posy> <posy>2-row</posy>
<width>1-col</width> <width>6-col</width>
<height>2-row</height> <height>16-row</height>
<align>center</align> <aspectratio>stretch</aspectratio>
<aligny>center</aligny> <texture>colors/black.png</texture>
<font>symbolLarge</font> <colordiffuse>overlay</colordiffuse>
<textcolor>textActive</textcolor>
<label></label>
</control> </control>
<control type="button" id="8002"> <!--player controls-->
<posx>1-col</posx> <control type="panel" id="8001">
<posy>0</posy> <posx>0</posx>
<height>2-row</height> <posy>0</posy>
<width>5-col</width> <width>6-col</width>
<font>symbolLarge</font> <height>2-row</height>
<textoffsetx>12</textoffsetx> <itemgap>0</itemgap>
<label>$VAR[starRating]</label> <ondown>8002</ondown>
<onup>8001</onup> <onup>Control.SetFocus(8003,4)</onup>
<ondown>control.setfocus(8003,0)</ondown> <orientation>horizontal</orientation>
<onleft>decreaserating</onleft> <itemlayout width="1-col" height="2-row">
<onright>increaserating</onright> <control type="label">
<onclick>noop</onclick> <posx>0</posx>
</control> <posy>0</posy>
</control> <width>1-col</width>
<!--final options--> <height>2-row</height>
<control type="panel" id="8003"> <align>center</align>
<posx>24</posx> <aligny>center</aligny>
<posy>16-row</posy> <font>symbolLarge</font>
<width>429</width> <textcolor>textActive</textcolor>
<height>14-row</height> <label>$INFO[ListItem.label2]</label>
<orientation>vertical</orientation> </control>
<onup>8002</onup> </itemlayout>
<ondown>Control.SetFocus(8001,3)</ondown> <focusedlayout width="1-col" height="2-row">
<itemlayout width="6-col" height="2-row"> <control type="image">
<control type="label"> <posx>0</posx>
<posx>0</posx> <posy>0</posy>
<posy>0</posy> <width>1-col</width>
<width>1-col</width> <height>69</height>
<height>2-row</height> <aspectratio>stretch</aspectratio>
<align>center</align> <texture>colors/white.png</texture>
<aligny>center</aligny> </control>
<font>symbolLarge</font> <control type="label">
<textcolor>textActive</textcolor> <posx>0</posx>
<label>$INFO[ListItem.label2]</label> <posy>0</posy>
</control> <width>1-col</width>
<control type="label"> <height>2-row</height>
<posx>1-col-indent</posx> <align>center</align>
<posy>0</posy> <aligny>center</aligny>
<width>5-col-gutter</width> <font>symbolLarge</font>
<height>2-row</height> <textcolor>highlight</textcolor>
<aligny>center</aligny> <label>$INFO[ListItem.label2]</label>
<font>buttonTitle</font> <shadowcolor>-</shadowcolor>
<textcolor>textActive</textcolor> </control>
<label>$INFO[ListItem.label]</label> </focusedlayout>
</control> <content>
</itemlayout> <item>
<focusedlayout width="6-col" height="2-row"> <description>Previous</description>
<control type="image"> <label2></label2>
<posx>0</posx> <thumb>-</thumb>
<posy>0</posy> <onclick>PlayerControl(previous)</onclick>
<width>1-col</width> </item>
<height>2-row</height> <item>
<aspectratio>stretch</aspectratio> <description>Rewind</description>
<texture>colors/white.png</texture> <label2></label2>
<colordiffuse>highlight</colordiffuse> <thumb>-</thumb>
</control> <onclick>PlayerControl(rewind)</onclick>
<control type="image"> </item>
<posx>1-col</posx> <item>
<posy>0</posy> <description>Stop</description>
<width>6-col</width> <label2></label2>
<height>2-row</height> <thumb>-</thumb>
<aspectratio>stretch</aspectratio> <onclick>PlayerControl(stop)</onclick>
<texture>colors/white.png</texture> <onclick>Dialog.Close(1105)</onclick>
<colordiffuse>eeffffff</colordiffuse> <onclick>Dialog.Close(1103)</onclick>
</control> </item>
<control type="label"> <item>
<posx>0</posx> <visible>Player.Playing | player.forwarding | player.rewinding</visible>
<posy>0</posy> <description>Play/Pause</description>
<width>1-col</width> <label2></label2>
<height>2-row</height> <thumb>-</thumb>
<align>center</align> <onclick>PlayerControl(play)</onclick>
<aligny>center</aligny> </item>
<font>symbolLarge</font> <item>
<textcolor>textActive</textcolor> <visible>Player.Paused</visible>
<label>$INFO[ListItem.label2]</label> <description>Pause</description>
<shadowcolor>-</shadowcolor> <label2></label2>
</control> <thumb>-</thumb>
<control type="label"> <onclick>PlayerControl(play)</onclick>
<posx>1-col-indent</posx> </item>
<posy>0</posy> <item>
<width>5-col-gutter</width> <description>Fast forward</description>
<height>2-row</height> <label2></label2>
<aligny>center</aligny> <thumb>-</thumb>
<font>buttonTitle</font> <onclick>PlayerControl(forward)</onclick>
<textcolor>black</textcolor> </item>
<label>$INFO[ListItem.label]</label> <item>
</control> <description>Next Chapter</description>
</focusedlayout> <label2></label2>
<content> <thumb>-</thumb>
<item> <onclick>PlayerControl(next)</onclick>
<description>go to artist</description> </item>
<label>31155</label> </content>
<label2></label2> </control>
<thumb>-</thumb> <!--Star rating-->
<onclick condition="!System.hasAddon(script.musicfinder)">InstallAddon(script.musicfinder)</onclick> <control type="group">
<onclick condition="System.hasAddon(script.musicfinder)">Dialog.Close(all,true)</onclick> <posx>0</posx>
<onclick condition="System.hasAddon(script.musicfinder)">Runscript(script.musicfinder,action=artist,title=$INFO[musicplayer.artist],listid=50)</onclick> <posy>2-row</posy>
</item> <control type="image">
<item> <visible>control.hasfocus(8002)</visible>
<description>go to album</description> <posx>0</posx>
<label>31158</label> <posy>0</posy>
<label2></label2> <width>1-col</width>
<thumb>-</thumb> <height>2-row</height>
<onclick condition="!System.hasAddon(script.musicfinder)">InstallAddon(script.musicfinder)</onclick> <aspectratio>stretch</aspectratio>
<onclick condition="System.hasAddon(script.musicfinder)">Dialog.Close(all,true)</onclick> <texture>colors/white.png</texture>
<onclick condition="System.hasAddon(script.musicfinder)">Runscript(script.musicfinder,action=album,title=$INFO[musicplayer.album],listid=50)</onclick> <colordiffuse>highlight</colordiffuse>
</item> </control>
<item> <control type="label">
<description>Playlist</description> <posx>0</posx>
<label>31123</label> <posy>0</posy>
<label2></label2> <width>1-col</width>
<thumb>-</thumb> <height>2-row</height>
<onclick>Dialog.Close(all,true)</onclick> <align>center</align>
<onclick>action(back)</onclick> <aligny>center</aligny>
<onclick>activateWindow(musicplaylist)</onclick> <font>symbolLarge</font>
</item> <textcolor>textActive</textcolor>
<item> <label></label>
<description>Repeat</description> </control>
<label>$VAR[repeatState]</label> <control type="button" id="8002">
<label2></label2> <posx>1-col</posx>
<thumb>-</thumb> <posy>0</posy>
<onclick>PlayerControl(Repeat)</onclick> <height>2-row</height>
</item> <width>5-col</width>
<item> <font>symbolLarge</font>
<description>Shuffle</description> <textoffsetx>12</textoffsetx>
<label>$VAR[shuffleState]</label> <label>$VAR[starRating]</label>
<label2></label2> <onup>8001</onup>
<thumb>-</thumb> <ondown>control.setfocus(8003,0)</ondown>
<onclick condition="!Playlist.IsRandom">PlayerControl(RandomOn)</onclick> <onleft>decreaserating</onleft>
<onclick condition="Playlist.IsRandom">PlayerControl(RandomOff)</onclick> <onright>increaserating</onright>
</item> <onclick>noop</onclick>
<item> </control>
<description>Visualisation</description> </control>
<label>31032</label> <!--final options-->
<label2></label2> <control type="panel" id="8003">
<thumb>-</thumb> <posx>0</posx>
<onclick>activateWindow(musicOSD)</onclick> <posy>4-row</posy>
</item> <width>429</width>
<item> <height>14-row</height>
<visible>Visualisation.HasPresets</visible> <orientation>vertical</orientation>
<description>Visualisation Settings</description> <onup>8002</onup>
<label>$LOCALIZE[21417]</label> <ondown>Control.SetFocus(8001,3)</ondown>
<label2></label2> <itemlayout width="6-col" height="2-row">
<thumb>-</thumb> <control type="label">
<onclick>Addon.Default.OpenSettings(xbmc.player.musicviz)</onclick> <posx>0</posx>
</item> <posy>0</posy>
</content> <width>1-col</width>
</control> <height>2-row</height>
<align>center</align>
<aligny>center</aligny>
<font>symbolLarge</font>
<textcolor>textActive</textcolor>
<label>$INFO[ListItem.label2]</label>
</control>
<control type="label">
<posx>1-col-indent</posx>
<posy>0</posy>
<width>5-col-gutter</width>
<height>2-row</height>
<aligny>center</aligny>
<font>buttonTitle</font>
<textcolor>textActive</textcolor>
<label>$INFO[ListItem.label]</label>
</control>
</itemlayout>
<focusedlayout width="6-col" height="2-row">
<control type="image">
<posx>0</posx>
<posy>0</posy>
<width>1-col</width>
<height>2-row</height>
<aspectratio>stretch</aspectratio>
<texture>colors/white.png</texture>
<colordiffuse>highlight</colordiffuse>
</control>
<control type="image">
<posx>1-col</posx>
<posy>0</posy>
<width>6-col</width>
<height>2-row</height>
<aspectratio>stretch</aspectratio>
<texture>colors/white.png</texture>
<colordiffuse>eeffffff</colordiffuse>
</control>
<control type="label">
<posx>0</posx>
<posy>0</posy>
<width>1-col</width>
<height>2-row</height>
<align>center</align>
<aligny>center</aligny>
<font>symbolLarge</font>
<textcolor>textActive</textcolor>
<label>$INFO[ListItem.label2]</label>
<shadowcolor>-</shadowcolor>
</control>
<control type="label">
<posx>1-col-indent</posx>
<posy>0</posy>
<width>5-col-gutter</width>
<height>2-row</height>
<aligny>center</aligny>
<font>buttonTitle</font>
<textcolor>black</textcolor>
<label>$INFO[ListItem.label]</label>
</control>
</focusedlayout>
<content>
<item>
<description>go to artist</description>
<label>31155</label>
<label2></label2>
<thumb>-</thumb>
<onclick condition="!System.hasAddon(script.musicfinder)">InstallAddon(script.musicfinder)</onclick>
<onclick condition="System.hasAddon(script.musicfinder)">Dialog.Close(all,true)</onclick>
<onclick condition="System.hasAddon(script.musicfinder)">Runscript(script.musicfinder,action=artist,title=$INFO[musicplayer.artist],listid=50)</onclick>
</item>
<item>
<description>go to album</description>
<label>31158</label>
<label2></label2>
<thumb>-</thumb>
<onclick condition="!System.hasAddon(script.musicfinder)">InstallAddon(script.musicfinder)</onclick>
<onclick condition="System.hasAddon(script.musicfinder)">Dialog.Close(all,true)</onclick>
<onclick condition="System.hasAddon(script.musicfinder)">Runscript(script.musicfinder,action=album,title=$INFO[musicplayer.album],listid=50)</onclick>
</item>
<item>
<description>Playlist</description>
<label>31123</label>
<label2></label2>
<thumb>-</thumb>
<onclick>Dialog.Close(all,true)</onclick>
<onclick>action(back)</onclick>
<onclick>activateWindow(musicplaylist)</onclick>
</item>
<item>
<description>Repeat</description>
<label>$VAR[repeatState]</label>
<label2></label2>
<thumb>-</thumb>
<onclick>PlayerControl(Repeat)</onclick>
</item>
<item>
<description>Shuffle</description>
<label>$VAR[shuffleState]</label>
<label2></label2>
<thumb>-</thumb>
<onclick condition="!Playlist.IsRandom">PlayerControl(RandomOn)</onclick>
<onclick condition="Playlist.IsRandom">PlayerControl(RandomOff)</onclick>
</item>
<item>
<description>Visualisation</description>
<label>31032</label>
<label2></label2>
<thumb>-</thumb>
<onclick>activateWindow(musicOSD)</onclick>
</item>
<item>
<visible>Visualisation.HasPresets</visible>
<description>Visualisation Settings</description>
<label>$LOCALIZE[21417]</label>
<label2></label2>
<thumb>-</thumb>
<onclick>Addon.Default.OpenSettings(xbmc.player.musicviz)</onclick>
</item>
</content>
</control>
</control>
</control> </control>
<!--debugging--> <!--debugging-->
<include>DebugGrid</include> <include>DebugGrid</include>

View File

@ -2,11 +2,9 @@
***TESTING BRANCH*** ***TESTING BRANCH***
DONE - set ondown in movie view etc to select first item in grid DONE - set ondown in movie view etc to select first item in grid
- recent tvshow episode listing not working DONE - recent tvshow episode listing not working
DONE - Add progress bar to resumable content DONE - Add progress bar to resumable content
DONE - playlist titles not working. (See Github for random label)
- playlist titles not working. (See Github for random label)
[V1.2.4] [V1.2.4]
- [UPDATED] French language file - [UPDATED] French language file