aboutsummaryrefslogtreecommitdiff
path: root/addons
diff options
context:
space:
mode:
authorStefano Gottardo <gottardo.stefano.83@gmail.com>2024-10-18 14:02:00 +0200
committerGitHub <noreply@github.com>2024-10-18 14:02:00 +0200
commit772840f3d58236d2ea15fd1246d322c3c71f0ca5 (patch)
treeb7870567983ab3032edeaebd5447136676d2b3f7 /addons
parent410c628c828ba9941479391cd1f80452da3ac574 (diff)
parent193fc6a1e89db1fc86cde682753341040f4dc491 (diff)
Merge pull request #25762 from CastagnaIT/gui_menu_tracks
[GUI][Skin] Add new window dialogs to select video/audio/subtitles streams
Diffstat (limited to 'addons')
-rw-r--r--addons/resource.language.en_gb/resources/strings.po9
-rw-r--r--addons/skin.estuary/language/resource.language.en_gb/strings.po17
-rw-r--r--addons/skin.estuary/media/icons/menumarks/star.pngbin0 -> 467 bytes
-rw-r--r--addons/skin.estuary/media/icons/menumarks/tick.pngbin0 -> 267 bytes
-rw-r--r--addons/skin.estuary/xml/DialogSelect.xml5
-rw-r--r--addons/skin.estuary/xml/Includes_DialogSelect.xml544
-rw-r--r--addons/skin.estuary/xml/Includes_SettingsDialog.xml18
-rw-r--r--addons/skin.estuary/xml/Variables.xml33
8 files changed, 615 insertions, 11 deletions
diff --git a/addons/resource.language.en_gb/resources/strings.po b/addons/resource.language.en_gb/resources/strings.po
index 46d1d6174f..2ec1005854 100644
--- a/addons/resource.language.en_gb/resources/strings.po
+++ b/addons/resource.language.en_gb/resources/strings.po
@@ -2196,6 +2196,10 @@ msgctxt "#459"
msgid "Subs"
msgstr ""
+#: xbmc/video/PlayerController.cpp
+#: xbmc/video/dialogs/GUIDialogAudioSettings.cpp
+#: addons/skin.estuary/xml/DialogPlayerProcessInfo.xml
+#: xbmc/video/guilib/VideoStreamSelectHelper.cpp
msgctxt "#460"
msgid "Audio stream"
msgstr ""
@@ -2204,8 +2208,10 @@ msgctxt "#461"
msgid "[active]"
msgstr ""
+#: xbmc/video/dialogs/GUIDialogSubtitleSettings.cpp
+#: xbmc/video/guilib/VideoStreamSelectHelper.cpp
msgctxt "#462"
-msgid "Subtitle"
+msgid "Subtitle stream"
msgstr ""
msgctxt "#463"
@@ -22827,6 +22833,7 @@ msgstr ""
#. Label for an option to select the video stream to play if current video has more than one video stream
#: xbmc/video/dialogs/GUIDialogVideoSettings.cpp
#: xbmc/video/PlayerController.cpp
+#: xbmc/video/guilib/VideoStreamSelectHelper.cpp
msgctxt "#38031"
msgid "Video stream"
msgstr ""
diff --git a/addons/skin.estuary/language/resource.language.en_gb/strings.po b/addons/skin.estuary/language/resource.language.en_gb/strings.po
index 229f0b95e5..d6f2bc6c04 100644
--- a/addons/skin.estuary/language/resource.language.en_gb/strings.po
+++ b/addons/skin.estuary/language/resource.language.en_gb/strings.po
@@ -502,7 +502,12 @@ msgctxt "#31107"
msgid "WideList"
msgstr ""
-#empty strings from id 31108 to 31109
+#empty strings from id 31108 to 31108
+
+#: /xml/VideoOSD.xml
+msgctxt "#31109"
+msgid "Video streams"
+msgstr ""
#: /xml/Home.xml
msgctxt "#31110"
@@ -516,7 +521,7 @@ msgstr ""
#: /xml/VideoOSD.xml
msgctxt "#31112"
-msgid "Toggle audio stream"
+msgid "Audio streams"
msgstr ""
#: /xml/Custom_1107_SearchDialog.xml
@@ -531,7 +536,7 @@ msgstr ""
#: /xml/VideoOSD.xml
msgctxt "#31115"
-msgid "Toggle subtitle"
+msgid "Subtitles streams"
msgstr ""
#: /xml/Includes_Home.xml
@@ -924,3 +929,9 @@ msgstr ""
msgctxt "#31611"
msgid "System"
msgstr ""
+
+#: /xml/Includes_DialogSelect.xml
+#. Audio channels
+msgctxt "#31612"
+msgid "channels"
+msgstr ""
diff --git a/addons/skin.estuary/media/icons/menumarks/star.png b/addons/skin.estuary/media/icons/menumarks/star.png
new file mode 100644
index 0000000000..da55f2ea2a
--- /dev/null
+++ b/addons/skin.estuary/media/icons/menumarks/star.png
Binary files differ
diff --git a/addons/skin.estuary/media/icons/menumarks/tick.png b/addons/skin.estuary/media/icons/menumarks/tick.png
new file mode 100644
index 0000000000..c5a89ca6f8
--- /dev/null
+++ b/addons/skin.estuary/media/icons/menumarks/tick.png
Binary files differ
diff --git a/addons/skin.estuary/xml/DialogSelect.xml b/addons/skin.estuary/xml/DialogSelect.xml
index 308c14b743..cafeb37998 100644
--- a/addons/skin.estuary/xml/DialogSelect.xml
+++ b/addons/skin.estuary/xml/DialogSelect.xml
@@ -4,7 +4,10 @@
<include>Animation_DialogPopupOpenClose</include>
<depth>DepthOSD</depth>
<controls>
- <include condition="![Window.IsActive(selectvideoversion) | Window.IsActive(selectvideoextra) | Window.IsActive(gamesaves) | Window.IsActive(gamestretchmode) | Window.IsActive(gamevideofilter) | Window.IsActive(gamevideorotation) | Window.IsActive(ingamesaves)]">DefaultDialogSelectLayout</include>
+ <include condition="![Window.IsActive(videoselectdialog) | Window.IsActive(audioselectdialog) | Window.IsActive(subtitleselectdialog) | Window.IsActive(selectvideoversion) | Window.IsActive(selectvideoextra) | Window.IsActive(gamesaves) | Window.IsActive(gamestretchmode) | Window.IsActive(gamevideofilter) | Window.IsActive(gamevideorotation) | Window.IsActive(ingamesaves)]">DefaultDialogSelectLayout</include>
+ <include condition="Window.IsActive(videoselectdialog)">VideoDialogSelectVideoLayout</include>
+ <include condition="Window.IsActive(audioselectdialog)">VideoDialogSelectAudioLayout</include>
+ <include condition="Window.IsActive(subtitleselectdialog)">VideoDialogSelectSubtitleLayout</include>
<include condition="Window.IsActive(gamesaves)">GameDialogSelectSaveLayout</include>
<include condition="Window.IsActive(gamevideofilter)">GameDialogSelectFilterLayout</include>
<include condition="Window.IsActive(gamestretchmode)">GameDialogSelectViewLayout</include>
diff --git a/addons/skin.estuary/xml/Includes_DialogSelect.xml b/addons/skin.estuary/xml/Includes_DialogSelect.xml
index 7ca4f0d459..72049e69dd 100644
--- a/addons/skin.estuary/xml/Includes_DialogSelect.xml
+++ b/addons/skin.estuary/xml/Includes_DialogSelect.xml
@@ -194,6 +194,550 @@
</control>
</control>
</include>
+ <include name="VideoDialogSelectVideoLayout">
+ <!--
+ Available ListItem video stream properties:
+ stream.description, stream.codec, stream.language, stream.resolution, stream.bitrate,
+ stream.fps, stream.is3d, stream.stereomode, stream.hdrtype, stream.isdefault, stream.isforced,
+ stream.ishearingimpaired, stream.isvisualimpaired
+ -->
+ <control type="group">
+ <centertop>50%</centertop>
+ <centerleft>50%</centerleft>
+ <height>750</height>
+ <width>1220</width>
+ <include content="DialogBackgroundCommons">
+ <param name="width" value="1220" />
+ <param name="height" value="750" />
+ <param name="header_label" value="" />
+ <param name="header_id" value="1" />
+ </include>
+ <control type="image">
+ <left>0</left>
+ <top>80</top>
+ <width>920</width>
+ <bottom>2</bottom>
+ <texture border="40">buttons/dialogbutton-nofo.png</texture>
+ </control>
+ <control type="list" id="3">
+ <left>20</left>
+ <top>100</top>
+ <width>880</width>
+ <bottom>20</bottom>
+ <onup>3</onup>
+ <ondown>3</ondown>
+ <onleft>9001</onleft>
+ <onright>61</onright>
+ <pagecontrol>61</pagecontrol>
+ <scrolltime>200</scrolltime>
+ <include content="DefaultSimpleListLayout">
+ <param name="width" value="880" />
+ <param name="list_id" value="3" />
+ </include>
+ </control>
+ <control type="list" id="6">
+ <left>20</left>
+ <top>100</top>
+ <width>880</width>
+ <bottom>20</bottom>
+ <onup>6</onup>
+ <ondown>6</ondown>
+ <onleft>9001</onleft>
+ <onright>61</onright>
+ <pagecontrol>61</pagecontrol>
+ <scrolltime>200</scrolltime>
+ <itemlayout height="100" width="880">
+ <control type="image">
+ <left>10</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/tick.png</texture>
+ <visible>ListItem.IsSelected</visible>
+ </control>
+ <control type="label">
+ <left>50</left>
+ <top>0</top>
+ <right>80</right>
+ <height>60</height>
+ <font>font14</font>
+ <aligny>center</aligny>
+ <label>$INFO[ListItem.Property(stream.codec)]$INFO[ListItem.Property(stream.resolution),$COMMA ]$INFO[ListItem.Property(stream.bitrate),$COMMA , kbps]$INFO[ListItem.Property(stream.fps),$COMMA , fps]$VAR[VideoStreamDialogVideoItemLabelVar, - [LIGHT],[/LIGHT]]</label>
+ </control>
+ <control type="textbox">
+ <left>50</left>
+ <top>50</top>
+ <right>80</right>
+ <height>67</height>
+ <font>font12</font>
+ <textcolor>grey</textcolor>
+ <label>$INFO[ListItem.Property(stream.description),, ]$INFO[ListItem.Property(stream.language),(,)]</label>
+ </control>
+ <control type="image">
+ <left>830</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/star.png</texture>
+ <visible>ListItem.Property(stream.isdefault)</visible>
+ </control>
+ </itemlayout>
+ <focusedlayout height="100" width="880">
+ <control type="image">
+ <left>0</left>
+ <top>0</top>
+ <right>0</right>
+ <bottom>0</bottom>
+ <texture colordiffuse="button_focus">lists/focus.png</texture>
+ <animation effect="fade" start="100" end="50" time="0">UnFocus</animation>
+ </control>
+ <control type="image">
+ <left>10</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/tick.png</texture>
+ <visible>ListItem.IsSelected</visible>
+ </control>
+ <control type="label">
+ <left>50</left>
+ <top>0</top>
+ <right>80</right>
+ <height>60</height>
+ <aligny>center</aligny>
+ <scroll>true</scroll>
+ <font>font14</font>
+ <label>$INFO[ListItem.Property(stream.codec)]$INFO[ListItem.Property(stream.resolution),$COMMA ]$INFO[ListItem.Property(stream.bitrate),$COMMA , kbps]$INFO[ListItem.Property(stream.fps),$COMMA , fps]$VAR[VideoStreamDialogVideoItemLabelVar, - [LIGHT],[/LIGHT]]</label>
+ </control>
+ <control type="textbox">
+ <left>50</left>
+ <top>50</top>
+ <right>80</right>
+ <height>67</height>
+ <font>font12</font>
+ <label>$INFO[ListItem.Property(stream.description),, ]$INFO[ListItem.Property(stream.language),(,)]</label>
+ </control>
+ <control type="image">
+ <left>830</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/star.png</texture>
+ <visible>ListItem.Property(stream.isdefault)</visible>
+ </control>
+ </focusedlayout>
+ </control>
+ <control type="scrollbar" id="61">
+ <left>910</left>
+ <top>100</top>
+ <width>12</width>
+ <bottom>20</bottom>
+ <onleft condition="Control.IsVisible(3)">3</onleft>
+ <onleft condition="Control.IsVisible(6)">6</onleft>
+ <onright>9001</onright>
+ <orientation>vertical</orientation>
+ </control>
+ <control type="label">
+ <left>925</left>
+ <bottom>10</bottom>
+ <width>275</width>
+ <height>35</height>
+ <font>font12</font>
+ <align>right</align>
+ <textcolor>grey</textcolor>
+ <label>$VAR[SelectLabel]</label>
+ </control>
+ <control type="grouplist" id="9001">
+ <left>920</left>
+ <top>80</top>
+ <onleft>61</onleft>
+ <itemgap>dialogbuttons_itemgap</itemgap>
+ <onright>3</onright>
+ <include content="DefaultDialogButton">
+ <param name="id" value="5" />
+ <param name="label" value="" />
+ </include>
+ <include content="DefaultDialogButton">
+ <param name="id" value="8" />
+ <param name="label" value="" />
+ </include>
+ <include content="DefaultDialogButton">
+ <param name="id" value="7" />
+ <param name="label" value="$LOCALIZE[222]" />
+ </include>
+ </control>
+ </control>
+ </include>
+ <include name="VideoDialogSelectAudioLayout">
+ <!--
+ Available ListItem audio stream properties:
+ stream.description, stream.codec, stream.codecdesc, stream.channels,
+ stream.isdefault, stream.isforced, stream.isoriginal, stream.ishearingimpaired, stream.isvisualimpaired
+ -->
+ <control type="group">
+ <centertop>50%</centertop>
+ <centerleft>50%</centerleft>
+ <height>750</height>
+ <width>1220</width>
+ <include content="DialogBackgroundCommons">
+ <param name="width" value="1220" />
+ <param name="height" value="750" />
+ <param name="header_label" value="" />
+ <param name="header_id" value="1" />
+ </include>
+ <control type="image">
+ <left>0</left>
+ <top>80</top>
+ <width>920</width>
+ <bottom>2</bottom>
+ <texture border="40">buttons/dialogbutton-nofo.png</texture>
+ </control>
+ <control type="list" id="3">
+ <left>20</left>
+ <top>100</top>
+ <width>880</width>
+ <bottom>20</bottom>
+ <onup>3</onup>
+ <ondown>3</ondown>
+ <onleft>9001</onleft>
+ <onright>61</onright>
+ <pagecontrol>61</pagecontrol>
+ <scrolltime>200</scrolltime>
+ <include content="DefaultSimpleListLayout">
+ <param name="width" value="880" />
+ <param name="list_id" value="3" />
+ </include>
+ </control>
+ <control type="list" id="6">
+ <left>20</left>
+ <top>100</top>
+ <width>880</width>
+ <bottom>20</bottom>
+ <onup>6</onup>
+ <ondown>6</ondown>
+ <onleft>9001</onleft>
+ <onright>61</onright>
+ <pagecontrol>61</pagecontrol>
+ <scrolltime>200</scrolltime>
+ <itemlayout height="130" width="880">
+ <control type="image">
+ <left>10</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/tick.png</texture>
+ <visible>ListItem.IsSelected</visible>
+ </control>
+- <control type="label">
+ <left>50</left>
+ <top>0</top>
+ <right>80</right>
+ <height>60</height>
+ <font>font14</font>
+ <aligny>center</aligny>
+ <label>$INFO[ListItem.Label]$VAR[VideoStreamDialogAudioItemLabelVar, - [LIGHT],[/LIGHT]]</label>
+ </control>
+ <control type="textbox">
+ <left>50</left>
+ <top>50</top>
+ <right>80</right>
+ <height>80</height>
+ <font>font12</font>
+ <textcolor>grey</textcolor>
+ <label>$INFO[ListItem.Property(stream.codecdesc),, - ]$INFO[ListItem.Property(stream.channels),$LOCALIZE[31612]: ][CR]$INFO[ListItem.Property(stream.description)]</label>
+ </control>
+ <control type="image">
+ <left>830</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/star.png</texture>
+ <visible>ListItem.Property(stream.isdefault)</visible>
+ </control>
+ </itemlayout>
+ <focusedlayout height="130" width="880">
+ <control type="image">
+ <left>0</left>
+ <top>0</top>
+ <right>0</right>
+ <bottom>0</bottom>
+ <texture colordiffuse="button_focus">lists/focus.png</texture>
+ <animation effect="fade" start="100" end="50" time="0">UnFocus</animation>
+ </control>
+ <control type="image">
+ <left>10</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/tick.png</texture>
+ <visible>ListItem.IsSelected</visible>
+ </control>
+ <control type="label">
+ <left>50</left>
+ <top>0</top>
+ <right>80</right>
+ <height>60</height>
+ <aligny>center</aligny>
+ <scroll>true</scroll>
+ <font>font14</font>
+ <label>$INFO[ListItem.Label]$VAR[VideoStreamDialogAudioItemLabelVar, - [LIGHT],[/LIGHT]]</label>
+ </control>
+ <control type="textbox">
+ <left>50</left>
+ <top>50</top>
+ <right>80</right>
+ <height>80</height>
+ <font>font12</font>
+ <label>$INFO[ListItem.Property(stream.codecdesc),, - ]$INFO[ListItem.Property(stream.channels),$LOCALIZE[31612]: ][CR]$INFO[ListItem.Property(stream.description)]</label>
+ </control>
+ <control type="image">
+ <left>830</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/star.png</texture>
+ <visible>ListItem.Property(stream.isdefault)</visible>
+ </control>
+ </focusedlayout>
+ </control>
+ <control type="scrollbar" id="61">
+ <left>910</left>
+ <top>100</top>
+ <width>12</width>
+ <bottom>20</bottom>
+ <onleft condition="Control.IsVisible(3)">3</onleft>
+ <onleft condition="Control.IsVisible(6)">6</onleft>
+ <onright>9001</onright>
+ <orientation>vertical</orientation>
+ </control>
+ <control type="label">
+ <left>925</left>
+ <bottom>10</bottom>
+ <width>275</width>
+ <height>35</height>
+ <font>font12</font>
+ <align>right</align>
+ <textcolor>grey</textcolor>
+ <label>$VAR[SelectLabel]</label>
+ </control>
+ <control type="grouplist" id="9001">
+ <left>920</left>
+ <top>80</top>
+ <onleft>61</onleft>
+ <itemgap>dialogbuttons_itemgap</itemgap>
+ <onright>3</onright>
+ <include content="DefaultDialogButton">
+ <param name="id" value="5" />
+ <param name="label" value="" />
+ </include>
+ <include content="DefaultDialogButton">
+ <param name="id" value="8" />
+ <param name="label" value="" />
+ </include>
+ <include content="DefaultDialogButton">
+ <param name="id" value="7" />
+ <param name="label" value="$LOCALIZE[222]" />
+ </include>
+ </control>
+ </control>
+ </include>
+ <include name="VideoDialogSelectSubtitleLayout">
+ <!--
+ Available ListItem subtitle stream properties:
+ stream.description, stream.codec, stream.isdefault, stream.isforced, stream.isoriginal,
+ stream.ishearingimpaired, stream.isvisualimpaired, stream.isexternal
+ -->
+ <control type="group">
+ <centertop>50%</centertop>
+ <centerleft>50%</centerleft>
+ <height>750</height>
+ <width>1220</width>
+ <include content="DialogBackgroundCommons">
+ <param name="width" value="1220" />
+ <param name="height" value="750" />
+ <param name="header_label" value="" />
+ <param name="header_id" value="1" />
+ </include>
+ <control type="image">
+ <left>0</left>
+ <top>80</top>
+ <width>920</width>
+ <bottom>2</bottom>
+ <texture border="40">buttons/dialogbutton-nofo.png</texture>
+ </control>
+ <control type="list" id="3">
+ <left>20</left>
+ <top>100</top>
+ <width>880</width>
+ <bottom>20</bottom>
+ <onup>3</onup>
+ <ondown>3</ondown>
+ <onleft>9001</onleft>
+ <onright>61</onright>
+ <pagecontrol>61</pagecontrol>
+ <scrolltime>200</scrolltime>
+ <include content="DefaultSimpleListLayout">
+ <param name="width" value="880" />
+ <param name="list_id" value="3" />
+ </include>
+ </control>
+ <control type="list" id="6">
+ <left>20</left>
+ <top>100</top>
+ <width>880</width>
+ <bottom>20</bottom>
+ <onup>6</onup>
+ <ondown>6</ondown>
+ <onleft>9001</onleft>
+ <onright>61</onright>
+ <pagecontrol>61</pagecontrol>
+ <scrolltime>200</scrolltime>
+ <itemlayout height="100" width="880">
+ <control type="image">
+ <left>10</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/tick.png</texture>
+ <visible>ListItem.IsSelected</visible>
+ </control>
+ <control type="label">
+ <left>50</left>
+ <top>0</top>
+ <right>80</right>
+ <height>60</height>
+ <font>font14</font>
+ <aligny>center</aligny>
+ <label>$INFO[ListItem.Label]$VAR[VideoStreamDialogSubItemLabelVar, - [LIGHT],[/LIGHT]]</label>
+ </control>
+ <control type="textbox">
+ <left>50</left>
+ <top>50</top>
+ <right>80</right>
+ <height>67</height>
+ <font>font12</font>
+ <textcolor>grey</textcolor>
+ <label>$INFO[ListItem.Property(stream.description)]</label>
+ </control>
+ <control type="image">
+ <left>830</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/star.png</texture>
+ <visible>ListItem.Property(stream.isdefault)</visible>
+ </control>
+ </itemlayout>
+ <focusedlayout height="100" width="880">
+ <control type="image">
+ <left>0</left>
+ <top>0</top>
+ <right>0</right>
+ <bottom>0</bottom>
+ <texture colordiffuse="button_focus">lists/focus.png</texture>
+ <animation effect="fade" start="100" end="50" time="0">UnFocus</animation>
+ </control>
+ <control type="image">
+ <left>10</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/tick.png</texture>
+ <visible>ListItem.IsSelected</visible>
+ </control>
+ <control type="label">
+ <left>50</left>
+ <top>0</top>
+ <right>80</right>
+ <height>60</height>
+ <aligny>center</aligny>
+ <scroll>true</scroll>
+ <font>font14</font>
+ <label>$INFO[ListItem.Label]$VAR[VideoStreamDialogSubItemLabelVar, - [LIGHT],[/LIGHT]]</label>
+ </control>
+ <control type="textbox">
+ <left>50</left>
+ <top>50</top>
+ <right>80</right>
+ <height>67</height>
+ <font>font12</font>
+ <label>$INFO[ListItem.Property(stream.description)]</label>
+ </control>
+ <control type="image">
+ <left>830</left>
+ <top>16</top>
+ <width>30</width>
+ <height>30</height>
+ <aspectratio>keep</aspectratio>
+ <aligny>center</aligny>
+ <texture>icons/menumarks/star.png</texture>
+ <visible>ListItem.Property(stream.isdefault)</visible>
+ </control>
+ </focusedlayout>
+ </control>
+ <control type="scrollbar" id="61">
+ <left>910</left>
+ <top>100</top>
+ <width>12</width>
+ <bottom>20</bottom>
+ <onleft condition="Control.IsVisible(3)">3</onleft>
+ <onleft condition="Control.IsVisible(6)">6</onleft>
+ <onright>9001</onright>
+ <orientation>vertical</orientation>
+ </control>
+ <control type="label">
+ <left>925</left>
+ <bottom>10</bottom>
+ <width>275</width>
+ <height>35</height>
+ <font>font12</font>
+ <align>right</align>
+ <textcolor>grey</textcolor>
+ <label>$VAR[SelectLabel]</label>
+ </control>
+ <control type="grouplist" id="9001">
+ <left>920</left>
+ <top>80</top>
+ <onleft>61</onleft>
+ <itemgap>dialogbuttons_itemgap</itemgap>
+ <onright>3</onright>
+ <include content="DefaultDialogButton">
+ <param name="id" value="5" />
+ <param name="label" value="" />
+ </include>
+ <include content="DefaultDialogButton">
+ <param name="id" value="8" />
+ <param name="label" value="" />
+ </include>
+ <include content="DefaultDialogButton">
+ <param name="id" value="7" />
+ <param name="label" value="$LOCALIZE[222]" />
+ </include>
+ </control>
+ </control>
+ </include>
<include name="GameDialogSelectSaveLayout">
<control type="group">
<centertop>50%</centertop>
diff --git a/addons/skin.estuary/xml/Includes_SettingsDialog.xml b/addons/skin.estuary/xml/Includes_SettingsDialog.xml
index 7d8aa3cab9..1dedc8b9a8 100644
--- a/addons/skin.estuary/xml/Includes_SettingsDialog.xml
+++ b/addons/skin.estuary/xml/Includes_SettingsDialog.xml
@@ -25,19 +25,25 @@
<onclick>ActivateWindow(osdcmssettings)</onclick>
<visible>System.HasCMS</visible>
</control>
+ <control type="button" id="22106">
+ <include>DialogSettingButton</include>
+ <label>$LOCALIZE[31115]</label>
+ <label2>$VAR[ActiveVideoPlayerSubtitleLanguage]</label2>
+ <onclick>DialogSelectSubtitle</onclick>
+ <visible>VideoPlayer.HasSubtitles</visible>
+ </control>
<control type="button" id="22105">
<include>DialogSettingButton</include>
<label>$LOCALIZE[31112]</label>
<label2>[B]$INFO[VideoPlayer.AudioLanguage][/B]</label2>
- <onclick>AudioNextLanguage</onclick>
+ <onclick>DialogSelectAudio</onclick>
<visible>Integer.IsGreater(VideoPlayer.AudioStreamCount,1)</visible>
</control>
- <control type="button" id="22106">
+ <control type="button" id="22110">
<include>DialogSettingButton</include>
- <label>$LOCALIZE[31115]</label>
- <label2>$VAR[ActiveVideoPlayerSubtitleLanguage]</label2>
- <onclick>NextSubtitle</onclick>
- <visible>VideoPlayer.HasSubtitles</visible>
+ <label>$LOCALIZE[31109]</label>
+ <onclick>DialogSelectVideo</onclick>
+ <visible>Integer.IsGreater(VideoPlayer.VideoStreamCount,1)</visible>
</control>
<control type="button" id="22107">
<include>DialogSettingButton</include>
diff --git a/addons/skin.estuary/xml/Variables.xml b/addons/skin.estuary/xml/Variables.xml
index fb320882e8..49382061a9 100644
--- a/addons/skin.estuary/xml/Variables.xml
+++ b/addons/skin.estuary/xml/Variables.xml
@@ -967,4 +967,37 @@
<variable name="PVRInstanceName">
<value condition="Integer.IsGreater(PVR.ClientCount,1)">$INFO[ListItem.PVRClientName,[COLOR grey]$LOCALIZE[31137]:[/COLOR] ,]$INFO[ListItem.PVRInstanceName, (,)]</value>
</variable>
+ <variable name="VideoStreamDialogVideoItemLabelVar">
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39106], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39106], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)">$LOCALIZE[39106]</value>
+ </variable>
+ <variable name="VideoStreamDialogAudioItemLabelVar">
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39106], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39106], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isforced),true)">$LOCALIZE[39111], $LOCALIZE[39106]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39106], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39106], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)">$LOCALIZE[39106]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)">$LOCALIZE[39111]</value>
+ </variable>
+ <variable name="VideoStreamDialogSubItemLabelVar">
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39106], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39106], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isforced),true)">$LOCALIZE[39111], $LOCALIZE[39106]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39111], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39106], $LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)+String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39106], $LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.ishearingimpaired),true)">$LOCALIZE[39107]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isvisualimpaired),true)">$LOCALIZE[39108]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isforced),true)">$LOCALIZE[39106]</value>
+ <value condition="String.IsEqual(ListItem.Property(stream.isoriginal),true)">$LOCALIZE[39111]</value>
+ </variable>
</includes>