Complete refactoring for rktplayer, in order to make it play on DLNA renderers and also use UpNP media server resources.
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="M13.0502 2.74989C13.0502 2.44613 12.804 2.19989 12.5002 2.19989C12.1965 2.19989 11.9502 2.44613 11.9502 2.74989V7.2825C11.9046 7.18802 11.8295 7.10851 11.7334 7.05776L2.73338 2.30776C2.5784 2.22596 2.3919 2.23127 2.24182 2.32176C2.09175 2.41225 2 2.57471 2 2.74995V12.25C2 12.4252 2.09175 12.5877 2.24182 12.6781C2.3919 12.7686 2.5784 12.7739 2.73338 12.6921L11.7334 7.94214C11.8295 7.89139 11.9046 7.81188 11.9502 7.7174V12.2499C11.9502 12.5536 12.1965 12.7999 12.5002 12.7999C12.804 12.7999 13.0502 12.5536 13.0502 12.2499V2.74989ZM3 11.4207V3.5792L10.4288 7.49995L3 11.4207Z"
|
||||
fill="#000000"
|
||||
/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 894 B |
@@ -0,0 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M10 5C10 3.34315 8.65686 2 7 2H5C3.34315 2 2 3.34315 2 5V19C2 20.6569 3.34315 22 5 22H7C8.65686 22 10 20.6569 10 19V5ZM8 5C8 4.44772 7.55229 4 7 4H5C4.44772 4 4 4.44772 4 5V19C4 19.5523 4.44772 20 5 20H7C7.55229 20 8 19.5523 8 19V5Z" fill="#0F0F0F"/>
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M22 5C22 3.34315 20.6569 2 19 2H17C15.3431 2 14 3.34315 14 5V19C14 20.6569 15.3431 22 17 22H19C20.6569 22 22 20.6569 22 19V5ZM20 5C20 4.44772 19.5523 4 19 4H17C16.4477 4 16 4.44772 16 5V19C16 19.5523 16.4477 20 17 20H19C19.5523 20 20 19.5523 20 19V5Z" fill="#0F0F0F"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 846 B |
@@ -0,0 +1,43 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
|
||||
<svg
|
||||
fill="#000000"
|
||||
height="1000"
|
||||
width="1000"
|
||||
version="1.1"
|
||||
id="Capa_1"
|
||||
viewBox="0 0 73.44 73.44"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="play.svg"
|
||||
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs1" /><sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="1.183125"
|
||||
inkscape:cx="-1.2678288"
|
||||
inkscape:cy="226.09614"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2095"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Capa_1" />
|
||||
<g
|
||||
id="g1"
|
||||
transform="translate(10.117883,8.9384976)">
|
||||
<path
|
||||
d="M 52.524,23.925 12.507,0.824 C 10.6,-0.276 8.131,-0.273 6.231,0.824 4.293,1.94 3.088,4.025 3.088,6.264 v 46.205 c 0,2.24 1.204,4.325 3.131,5.435 0.953,0.555 2.042,0.848 3.149,0.848 1.104,0 2.192,-0.292 3.141,-0.843 L 52.526,34.806 c 1.936,-1.119 3.138,-3.203 3.138,-5.439 -0.001,-2.233 -1.202,-4.317 -3.14,-5.442 z m -3,5.687 -40.02,23.104 C 9.422,52.763 9.324,52.768 9.225,52.711 9.141,52.662 9.088,52.569 9.088,52.469 V 6.263 c 0,-0.1 0.052,-0.192 0.14,-0.243 0.042,-0.025 0.09,-0.038 0.139,-0.038 0.051,0 0.099,0.013 0.142,0.038 l 40.01,23.098 c 0.089,0.052 0.145,0.147 0.145,0.249 -0.001,0.103 -0.053,0.194 -0.14,0.245 z"
|
||||
id="path1" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="M1.94976 2.74989C1.94976 2.44613 2.196 2.19989 2.49976 2.19989C2.80351 2.19989 3.04976 2.44613 3.04976 2.74989V7.2825C3.0954 7.18802 3.17046 7.10851 3.26662 7.05776L12.2666 2.30776C12.4216 2.22596 12.6081 2.23127 12.7582 2.32176C12.9083 2.41225 13 2.57471 13 2.74995V12.25C13 12.4252 12.9083 12.5877 12.7582 12.6781C12.6081 12.7686 12.4216 12.7739 12.2666 12.6921L3.26662 7.94214C3.17046 7.89139 3.0954 7.81188 3.04976 7.7174V12.2499C3.04976 12.5536 2.80351 12.7999 2.49976 12.7999C2.196 12.7999 1.94976 12.5536 1.94976 12.2499V2.74989ZM4.57122 7.49995L12 11.4207V3.5792L4.57122 7.49995Z"
|
||||
fill="#000000"
|
||||
/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 904 B |
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
|
||||
<svg
|
||||
width="800px"
|
||||
height="800px"
|
||||
viewBox="0 0 24 24"
|
||||
fill="none"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
sodipodi:docname="repeat-off.svg"
|
||||
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg">
|
||||
<defs
|
||||
id="defs1" />
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="2.36625"
|
||||
inkscape:cx="400"
|
||||
inkscape:cy="400"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2095"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg1" />
|
||||
<path
|
||||
fill-rule="evenodd"
|
||||
clip-rule="evenodd"
|
||||
d="M8.46967 2.46967C8.76256 2.17678 9.23744 2.17678 9.53033 2.46967L11.5303 4.46967C11.7448 4.68417 11.809 5.00676 11.6929 5.28701C11.5768 5.56727 11.3033 5.75 11 5.75H9C5.54822 5.75 2.75 8.54822 2.75 12C2.75 15.4517 5.54846 18.25 9.00028 18.25H9.5C9.91421 18.25 10.25 18.5858 10.25 19C10.25 19.4142 9.91421 19.75 9.5 19.75H9.00028C4.72011 19.75 1.25 16.2802 1.25 12C1.25 7.71979 4.71979 4.25 9 4.25H9.18934L8.46967 3.53033C8.17678 3.23744 8.17678 2.76256 8.46967 2.46967ZM13.75 5C13.75 4.58579 14.0858 4.25 14.5 4.25H15C19.2802 4.25 22.75 7.71979 22.75 12C22.75 16.2802 19.2802 19.75 15 19.75H14.8107L15.5303 20.4697C15.8232 20.7626 15.8232 21.2374 15.5303 21.5303C15.2374 21.8232 14.7626 21.8232 14.4697 21.5303L12.4697 19.5303C12.2552 19.3158 12.191 18.9932 12.3071 18.713C12.4232 18.4327 12.6967 18.25 13 18.25H15C18.4518 18.25 21.25 15.4518 21.25 12C21.25 8.54822 18.4518 5.75 15 5.75H14.5C14.0858 5.75 13.75 5.41421 13.75 5Z"
|
||||
fill="#1C274C"
|
||||
id="path1"
|
||||
style="fill:#b3b3b3" />
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.46967 2.46967C8.76256 2.17678 9.23744 2.17678 9.53033 2.46967L11.5303 4.46967C11.7448 4.68417 11.809 5.00676 11.6929 5.28701C11.5768 5.56727 11.3033 5.75 11 5.75H9C5.54822 5.75 2.75 8.54822 2.75 12C2.75 15.4517 5.54846 18.25 9.00028 18.25H9.5C9.91421 18.25 10.25 18.5858 10.25 19C10.25 19.4142 9.91421 19.75 9.5 19.75H9.00028C4.72011 19.75 1.25 16.2802 1.25 12C1.25 7.71979 4.71979 4.25 9 4.25H9.18934L8.46967 3.53033C8.17678 3.23744 8.17678 2.76256 8.46967 2.46967ZM13.75 5C13.75 4.58579 14.0858 4.25 14.5 4.25H15C19.2802 4.25 22.75 7.71979 22.75 12C22.75 16.2802 19.2802 19.75 15 19.75H14.8107L15.5303 20.4697C15.8232 20.7626 15.8232 21.2374 15.5303 21.5303C15.2374 21.8232 14.7626 21.8232 14.4697 21.5303L12.4697 19.5303C12.2552 19.3158 12.191 18.9932 12.3071 18.713C12.4232 18.4327 12.6967 18.25 13 18.25H15C18.4518 18.25 21.25 15.4518 21.25 12C21.25 8.54822 18.4518 5.75 15 5.75H14.5C14.0858 5.75 13.75 5.41421 13.75 5ZM12.287 9.30709C12.5673 9.42318 12.75 9.69665 12.75 10V14C12.75 14.4142 12.4142 14.75 12 14.75C11.5858 14.75 11.25 14.4142 11.25 14V11.8107L11.0303 12.0303C10.7374 12.3232 10.2626 12.3232 9.96967 12.0303C9.67678 11.7374 9.67678 11.2626 9.96967 10.9697L11.4697 9.46967C11.6842 9.25517 12.0068 9.191 12.287 9.30709Z" fill="#1C274C"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path fill-rule="evenodd" clip-rule="evenodd" d="M8.46967 2.46967C8.76256 2.17678 9.23744 2.17678 9.53033 2.46967L11.5303 4.46967C11.7448 4.68417 11.809 5.00676 11.6929 5.28701C11.5768 5.56727 11.3033 5.75 11 5.75H9C5.54822 5.75 2.75 8.54822 2.75 12C2.75 15.4517 5.54846 18.25 9.00028 18.25H9.5C9.91421 18.25 10.25 18.5858 10.25 19C10.25 19.4142 9.91421 19.75 9.5 19.75H9.00028C4.72011 19.75 1.25 16.2802 1.25 12C1.25 7.71979 4.71979 4.25 9 4.25H9.18934L8.46967 3.53033C8.17678 3.23744 8.17678 2.76256 8.46967 2.46967ZM13.75 5C13.75 4.58579 14.0858 4.25 14.5 4.25H15C19.2802 4.25 22.75 7.71979 22.75 12C22.75 16.2802 19.2802 19.75 15 19.75H14.8107L15.5303 20.4697C15.8232 20.7626 15.8232 21.2374 15.5303 21.5303C15.2374 21.8232 14.7626 21.8232 14.4697 21.5303L12.4697 19.5303C12.2552 19.3158 12.191 18.9932 12.3071 18.713C12.4232 18.4327 12.6967 18.25 13 18.25H15C18.4518 18.25 21.25 15.4518 21.25 12C21.25 8.54822 18.4518 5.75 15 5.75H14.5C14.0858 5.75 13.75 5.41421 13.75 5Z" fill="#1C274C"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="800px"
|
||||
height="800px"
|
||||
viewBox="0 0 28 28"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
sodipodi:docname="stop.svg"
|
||||
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="1.11375"
|
||||
inkscape:cx="399.55107"
|
||||
inkscape:cy="400"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1129"
|
||||
inkscape:window-x="-8"
|
||||
inkscape:window-y="-8"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg1" />
|
||||
<defs
|
||||
id="defs1" />
|
||||
<g
|
||||
id="Page-1"
|
||||
stroke="none"
|
||||
stroke-width="1"
|
||||
fill="none"
|
||||
fill-rule="evenodd"
|
||||
sketch:type="MSPage"
|
||||
transform="matrix(0.93939394,0,0,0.95286196,0.72278339,0.65993266)">
|
||||
<g
|
||||
id="Icon-Set"
|
||||
sketch:type="MSLayerGroup"
|
||||
transform="translate(-518,-569)"
|
||||
fill="#000000">
|
||||
<path
|
||||
d="m 544,594 c 0,0.553 -0.447,1 -1,1 h -22 c -0.553,0 -1,-0.447 -1,-1 v -22 c 0,-0.552 0.447,-1 1,-1 h 22 c 0.553,0 1,0.448 1,1 z m 0,-25 h -24 c -1.104,0 -2,0.896 -2,2 v 24 c 0,1.104 0.896,2 2,2 h 24 c 1.104,0 2,-0.896 2,-2 v -24 c 0,-1.104 -0.896,-2 -2,-2 z"
|
||||
id="stop"
|
||||
sketch:type="MSShapeGroup" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M16.0004 9.00009C16.6281 9.83575 17 10.8745 17 12.0001C17 13.1257 16.6281 14.1644 16.0004 15.0001M18 5.29177C19.8412 6.93973 21 9.33459 21 12.0001C21 14.6656 19.8412 17.0604 18 18.7084M4.6 9.00009H5.5012C6.05213 9.00009 6.32759 9.00009 6.58285 8.93141C6.80903 8.87056 7.02275 8.77046 7.21429 8.63566C7.43047 8.48353 7.60681 8.27191 7.95951 7.84868L10.5854 4.69758C11.0211 4.17476 11.2389 3.91335 11.4292 3.88614C11.594 3.86258 11.7597 3.92258 11.8712 4.04617C12 4.18889 12 4.52917 12 5.20973V18.7904C12 19.471 12 19.8113 11.8712 19.954C11.7597 20.0776 11.594 20.1376 11.4292 20.114C11.239 20.0868 11.0211 19.8254 10.5854 19.3026L7.95951 16.1515C7.60681 15.7283 7.43047 15.5166 7.21429 15.3645C7.02275 15.2297 6.80903 15.1296 6.58285 15.0688C6.32759 15.0001 6.05213 15.0001 5.5012 15.0001H4.6C4.03995 15.0001 3.75992 15.0001 3.54601 14.8911C3.35785 14.7952 3.20487 14.6422 3.10899 14.4541C3 14.2402 3 13.9601 3 13.4001V10.6001C3 10.04 3 9.76001 3.10899 9.54609C3.20487 9.35793 3.35785 9.20495 3.54601 9.10908C3.75992 9.00009 4.03995 9.00009 4.6 9.00009Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M18 9.00009C18.6277 9.83575 18.9996 10.8745 18.9996 12.0001C18.9996 13.1257 18.6277 14.1644 18 15.0001M6.6 9.00009H7.5012C8.05213 9.00009 8.32759 9.00009 8.58285 8.93141C8.80903 8.87056 9.02275 8.77046 9.21429 8.63566C9.43047 8.48353 9.60681 8.27191 9.95951 7.84868L12.5854 4.69758C13.0211 4.17476 13.2389 3.91335 13.4292 3.88614C13.594 3.86258 13.7597 3.92258 13.8712 4.04617C14 4.18889 14 4.52917 14 5.20973V18.7904C14 19.471 14 19.8113 13.8712 19.954C13.7597 20.0776 13.594 20.1376 13.4292 20.114C13.239 20.0868 13.0211 19.8254 12.5854 19.3026L9.95951 16.1515C9.60681 15.7283 9.43047 15.5166 9.21429 15.3645C9.02275 15.2297 8.80903 15.1296 8.58285 15.0688C8.32759 15.0001 8.05213 15.0001 7.5012 15.0001H6.6C6.03995 15.0001 5.75992 15.0001 5.54601 14.8911C5.35785 14.7952 5.20487 14.6422 5.10899 14.4541C5 14.2402 5 13.9601 5 13.4001V10.6001C5 10.04 5 9.76001 5.10899 9.54609C5.20487 9.35793 5.35785 9.20495 5.54601 9.10908C5.75992 9.00009 6.03995 9.00009 6.6 9.00009Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.3 KiB |
@@ -0,0 +1,4 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M16 9.50009L21 14.5001M21 9.50009L16 14.5001M4.6 9.00009H5.5012C6.05213 9.00009 6.32759 9.00009 6.58285 8.93141C6.80903 8.87056 7.02275 8.77046 7.21429 8.63566C7.43047 8.48353 7.60681 8.27191 7.95951 7.84868L10.5854 4.69758C11.0211 4.17476 11.2389 3.91335 11.4292 3.88614C11.594 3.86258 11.7597 3.92258 11.8712 4.04617C12 4.18889 12 4.52917 12 5.20973V18.7904C12 19.471 12 19.8113 11.8712 19.954C11.7597 20.0776 11.594 20.1376 11.4292 20.114C11.239 20.0868 11.0211 19.8254 10.5854 19.3026L7.95951 16.1515C7.60681 15.7283 7.43047 15.5166 7.21429 15.3645C7.02275 15.2297 6.80903 15.1296 6.58285 15.0688C6.32759 15.0001 6.05213 15.0001 5.5012 15.0001H4.6C4.03995 15.0001 3.75992 15.0001 3.54601 14.8911C3.35785 14.7952 3.20487 14.6422 3.10899 14.4541C3 14.2402 3 13.9601 3 13.4001V10.6001C3 10.04 3 9.76001 3.10899 9.54609C3.20487 9.35793 3.35785 9.20495 3.54601 9.10908C3.75992 9.00009 4.03995 9.00009 4.6 9.00009Z" stroke="#000000" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="800px"
|
||||
height="800px"
|
||||
viewBox="0 0 24 24"
|
||||
version="1.1"
|
||||
id="svg1"
|
||||
sodipodi:docname="devtools.svg"
|
||||
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<defs
|
||||
id="defs1" />
|
||||
<sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="0.83659571"
|
||||
inkscape:cx="331.70144"
|
||||
inkscape:cy="273.13073"
|
||||
inkscape:window-width="2049"
|
||||
inkscape:window-height="1461"
|
||||
inkscape:window-x="1176"
|
||||
inkscape:window-y="216"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:current-layer="svg1" />
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<title
|
||||
id="title1">ic_fluent_window_dev_tools_24_filled</title>
|
||||
<desc
|
||||
id="desc1">Created with Sketch.</desc>
|
||||
<g
|
||||
id="🔍-System-Icons"
|
||||
stroke="none"
|
||||
stroke-width="1"
|
||||
fill="none"
|
||||
fill-rule="evenodd"
|
||||
style="fill:#c87137">
|
||||
<g
|
||||
id="ic_fluent_window_dev_tools_24_filled"
|
||||
fill="#212121"
|
||||
fill-rule="nonzero"
|
||||
style="fill:#c87137">
|
||||
<path
|
||||
d="M19.8565,9 C19.9616,9.00974 20.0667,9.0243 20.1714,9.04377 L18.521,11.9024 C18.1988,12.4604 18.39,13.1739 18.948,13.4961 C19.506,13.8183 20.2195,13.6271 20.5417,13.0691 L22.1921,10.2105 C23.1291,11.3063 23.3244,12.916 22.5624,14.2357 C21.8586,15.4548 20.5321,16.0903 19.2166,15.9724 L16.1855,21.2224 C15.7828,21.9199 14.8908,22.1589 14.1933,21.7562 C13.5724,21.3977 13.3149,20.6516 13.5499,20 C13.5788,19.9196 13.6153,19.8407 13.6595,19.7641 L16.685,14.5239 C15.9109,13.4415 15.7915,11.9632 16.5002,10.7357 C17.0907,9.71296 18.1194,9.10098 19.2123,9 C19.4255,8.9803 19.6411,8.98005 19.8565,9 Z M16.5,2 C17.3803385,2 18.1846722,2.3249884 18.7997413,2.86152441 L18.9495,3 L19,3 L19,3.05051 C19.5710154,3.63322077 19.9399195,4.4147197 19.9932952,5.28157387 L20,5.5 L20,8.00934 C19.404825,7.947355 18.8064344,8.00568031 18.240468,8.17497053 L18,8.25429 L18,7 L4,7 L4,16.5 C4,17.2796706 4.59488554,17.9204457 5.35553954,17.9931332 L5.5,18 L13.5234,18 L12.7935,19.2641 C12.69165,19.440575 12.6141563,19.6243625 12.5599641,19.8116656 L12.5135,20 L5.5,20 C3.63143333,20 2.10487333,18.5357256 2.00517885,16.6920355 L2,16.5 L2,5.5 C2,4.61970769 2.3249884,3.81531787 2.86152441,3.20026347 L3,3.05051 L3,3 L3.05051,3 C3.63322077,2.42899385 4.4147197,2.06008189 5.28157387,2.00670494 L5.5,2 L16.5,2 Z M12.1508,9.17782 C12.3244889,9.00437111 12.5939407,8.98527284 12.7886996,9.12040579 L12.8579,9.17831 L15.1463,11.4698 C15.0037625,12.08405 14.9949797,12.7132297 15.1088979,13.3172777 L15.1652,13.5745 L12.8579,15.8849 C12.6628,16.0803 12.3462,16.0805 12.1508,15.8854 C11.9771111,15.7119778 11.9576543,15.4425556 12.0924999,15.2475893 L12.1503,15.1783 L14.7934,12.5316 L12.1503,9.88493 C11.9552,9.68953 11.9554,9.37295 12.1508,9.17782 Z M9.85711,9.17826 C10.0523,9.37363 10.0521,9.69021 9.85672,9.88537 L7.2075,12.5316 L9.85672,15.1779 C10.0521,15.373 10.0523,15.6896 9.85711,15.885 C9.66196,16.0803 9.34538,16.0805 9.15001,15.8854 L6.14665,12.8854 C6.05276,12.7916 6,12.6643 6,12.5316 C6,12.3989 6.05275,12.2717 6.14664,12.1779 L9.15001,9.17787 C9.34538,8.98271 9.66196,8.98289 9.85711,9.17826 Z"
|
||||
id="Shape"
|
||||
style="fill:#c87137" />
|
||||
</g>
|
||||
</g>
|
||||
<metadata
|
||||
id="metadata1">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:title>ic_fluent_window_dev_tools_24_filled</dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 92 KiB |
@@ -0,0 +1,56 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="stylesheet" href="styles.css" />
|
||||
<meta charset="UTF-8" />
|
||||
<title>RktPlayer - A music player - library entry</title>
|
||||
</head>
|
||||
<body>
|
||||
<div class="pane">
|
||||
<div class="keyval">
|
||||
<label for="selected-library-kind" id="lbl-kind">Kind:</label>
|
||||
<select id="selected-library-kind"></select>
|
||||
</div>
|
||||
<hr />
|
||||
<div class="keyval">
|
||||
<label for="name" id="lbl-name">Name:</label>
|
||||
<input type="text" id="name" />
|
||||
</div>
|
||||
<div id="filesystem-fields">
|
||||
<div class="keyval">
|
||||
<label for="local-path" id="lbl-local-path">Local path:</label>
|
||||
<div class="file-box">
|
||||
<input id="local-path" type="text" />
|
||||
<button id="browse">Browse</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="media-server-fields" style="display: none">
|
||||
<div class="keyval">
|
||||
<label for="selected-media-server" id="lbl-media-server">Media server:</label>
|
||||
<div class="file-box">
|
||||
<select id="selected-media-server"></select>
|
||||
<button id="refresh-media-servers">Refresh</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="keyval">
|
||||
<label for="selected-media-server-container" id="lbl-media-server-root">Start point:</label>
|
||||
<div class="file-box">
|
||||
<span id="media-server-root"></span>
|
||||
<button id="media-server-root-up">Up</button>
|
||||
<select id="selected-media-server-container"></select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="keyval">
|
||||
<label for="media-server-item-limit" id="lbl-media-server-item-limit">Maximum items:</label>
|
||||
<input id="media-server-item-limit" type="number" min="1" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="button-box">
|
||||
<button id="ok">OK</button>
|
||||
<button id="cancel">Cancel</button>
|
||||
<button id="dev">devtools</button>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,128 @@
|
||||
window._web_wire_popup_menu = function(menu, x = -1, y = -1, kind = 'popup') {
|
||||
if (menu.id == '#f') { menu.id = null; }
|
||||
let menu_id = (kind == 'popup') ? '@@popup-menu@@' : '@@menubar@@';
|
||||
let submenu_els = [];
|
||||
let triggerMenuItem;
|
||||
let clearPopupMenu = function() {
|
||||
if (kind == 'popup') {
|
||||
let el = document.getElementById(menu_id);
|
||||
if (el !== null) {
|
||||
el.innerHTML = '';
|
||||
el.style.display = 'none';
|
||||
}
|
||||
if (menu.id !== null) {
|
||||
// Delay this trigger, because one could have choosen a menu item and we want this
|
||||
// to be triggered before the clear command is send.
|
||||
// But if no menu item has been selected, the clear command should
|
||||
// eventually be send.
|
||||
setTimeout(function () {
|
||||
console.log("Sending clear trigger for menu clearance : " + menu.id);
|
||||
let obj = { evt: 'menu-item-choosen', item: menu.id };
|
||||
window._web_wire_put_evt(obj);
|
||||
}, 250);
|
||||
}
|
||||
} else {
|
||||
// hide all submenus
|
||||
submenu_els.forEach(function (el) { el.style.display = 'none'; });
|
||||
}
|
||||
};
|
||||
triggerMenuItem = function(id) {
|
||||
console.log("Triggering menu item : " + id);
|
||||
let obj = { evt: 'menu-item-choosen', item: id };
|
||||
window._web_wire_put_evt(obj);
|
||||
};
|
||||
let showSubMenu = function(menu_el, item_el, el, parent_type) {
|
||||
if (parent_type == 'menu') {
|
||||
el.style.display = 'flex';
|
||||
let rect = item_el.getBoundingClientRect();
|
||||
let r = rect.left;
|
||||
let t = rect.height;
|
||||
el.style.left = r + 'px';
|
||||
el.style.top = t + 'px';
|
||||
} else {
|
||||
el.style.display = "flex";
|
||||
let rect = menu_el.getBoundingClientRect();
|
||||
let irect =item_el.getBoundingClientRect();
|
||||
let r = rect.width + 5;
|
||||
let t = irect.y - rect.y;
|
||||
el.style.left = r + "px";
|
||||
el.style.top = t + "px";
|
||||
}
|
||||
};
|
||||
let hideSubMenu = function(el) { el.style.display = "none"; };
|
||||
let makePopupMenu = function(el, menu, visible, type) {
|
||||
let i;
|
||||
let N = menu.length;
|
||||
for(i = 0; i < N; i++) {
|
||||
let item = menu[i];
|
||||
let item_el = document.createElement("div");
|
||||
item_el.id = item.id;
|
||||
item_el.classList.add("menu-item");
|
||||
let item_el_icon = document.createElement('span');
|
||||
item_el_icon.classList.add("menu-icon");
|
||||
if (item.icon) {
|
||||
let icon_img = document.createElement('img');
|
||||
icon_img.setAttribute('src', item.icon);
|
||||
item_el_icon.appendChild(icon_img);
|
||||
}
|
||||
if (item.separator) {
|
||||
item_el.classList.add("separator");
|
||||
}
|
||||
let item_el_name = document.createElement('span');
|
||||
item_el_name.classList.add('menu-name');
|
||||
item_el_name.innerHTML = item.name;
|
||||
let item_el_submenu = document.createElement('span');
|
||||
item_el_submenu.classList.add('menu-submenu');
|
||||
if (item.submenu) {
|
||||
if (type == 'submenu' || kind == 'popup') {
|
||||
item_el_submenu.innerHTML = '>';
|
||||
}
|
||||
item_el.setAttribute('type', 'submenu');
|
||||
let submenu_el = document.createElement("div");
|
||||
submenu_els.push(submenu_el);
|
||||
submenu_el.classList.add("submenu");
|
||||
submenu_el.classList.add("menu");
|
||||
item_el.appendChild(submenu_el);
|
||||
submenu_el.style.display = 'none';
|
||||
makePopupMenu(submenu_el, item.submenu.menu, false, 'submenu');
|
||||
item_el.addEventListener('mouseenter', function () { showSubMenu(el, item_el, submenu_el, type); });
|
||||
item_el.addEventListener('mouseleave', function () { hideSubMenu(submenu_el); });
|
||||
} else {
|
||||
item_el.setAttribute('type', 'item');
|
||||
item_el.addEventListener('click', function() { triggerMenuItem(item.id); });
|
||||
}
|
||||
item_el.appendChild(item_el_icon);
|
||||
item_el.appendChild(item_el_name);
|
||||
item_el.appendChild(item_el_submenu);
|
||||
el.appendChild(item_el);
|
||||
}
|
||||
};
|
||||
let el = document.getElementById(menu_id);
|
||||
if (el === null) {
|
||||
el = document.createElement("div");
|
||||
el.id = menu_id;
|
||||
el.classList.add((kind == 'popup') ? "popup-menu" : "menubar");
|
||||
if (kind == 'popup') {
|
||||
el.classList.add("menu");
|
||||
document.body.appendChild(el);
|
||||
} else {
|
||||
document.body.prepend(el);
|
||||
}
|
||||
} else {
|
||||
el.innerHTML = '';
|
||||
}
|
||||
makePopupMenu(el, menu.menu, true, 'menu');
|
||||
el.style.left = x + "px";
|
||||
el.style.top = y + "px";
|
||||
el.style.display = "flex";
|
||||
let clearer_f = function() {
|
||||
clearPopupMenu();
|
||||
document.body.removeEventListener('click', clearer_f);
|
||||
document.body.removeEventListener('contextmenu', clearer_f);
|
||||
};
|
||||
document.body.addEventListener('click', clearer_f);
|
||||
document.body.addEventListener('contextmenu', clearer_f);
|
||||
};
|
||||
window._web_wire_menu = function(menubar) {
|
||||
window._web_wire_popup_menu(menubar, -1, -1, 'menubar');
|
||||
};
|
||||
@@ -0,0 +1,67 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="stylesheet" href="styles.css" />
|
||||
<meta charset="UTF-8" />
|
||||
<title>RktPlayer - A music player</title>
|
||||
<!--<script src="../../webui-wire/js/menu.js"></script>-->
|
||||
<!--<script src="menu.js"></script>-->
|
||||
</head>
|
||||
<body>
|
||||
<div class="pane">
|
||||
<div class="buttons">
|
||||
<button id="prev" class="command"><img id="previous-img" src="buttons/previous.svg" /></button>
|
||||
<button id="play" class="command"><img id="play-img" src="buttons/play.svg" /></button>
|
||||
<button id="stop" class="command"><img id="stop-img" src="buttons/stop.svg" /></button>
|
||||
<button id="next" class="command"><img id="next-img" src="buttons/next.svg" /></button>
|
||||
<input type="range" min="0" max="100" value="0" class="h-slider" id="seek" step="0.01" />
|
||||
<div class="text-block"><span id="time" class="time">00:00:00</span></div>
|
||||
<div class="text-block"><span id="totaltime" class="time">00:00:00</span></div>
|
||||
<button id="repeat" class="command"><img id="repeat-img" src="buttons/repeat-off.svg" /></button>
|
||||
<button id="volume" class="command">
|
||||
<img id="volume-img" src="buttons/volume-high.svg" />
|
||||
<div id="volume-meter" class="volume-meter">
|
||||
<div class="status"><span class="info" id="volume-perc"></span></div>
|
||||
<input type="range" min="0" max="100" value="50" class="v-slider" id="volume-range" step="1" />
|
||||
</div>
|
||||
</button>
|
||||
</div>
|
||||
<div class="hpane">
|
||||
<div class="music-info">
|
||||
<div class="music-library">
|
||||
<div id="library" class="content scrolly">
|
||||
<!-- Library -->
|
||||
</div>
|
||||
</div>
|
||||
<div class="album-art">
|
||||
<div id="album-art" class="content">
|
||||
<!-- Album art -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="music-playing">
|
||||
<div id="tabs" class="tabs">
|
||||
<span id="tab1" class="tab">Default</span>
|
||||
</div>
|
||||
<div id="tracks" class="content scrolly">
|
||||
<!-- Music playing -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="status">
|
||||
<span class="info" id="bits"></span>
|
||||
<span class="info" id="rate"></span>
|
||||
<span class="info" id="channels"></span>
|
||||
<span class="info" id="format"></span>
|
||||
<span class="info" id="source"></span>
|
||||
<span class="info" id="paused"></span>
|
||||
<span class="info" id="message"></span>
|
||||
<div class="right">
|
||||
<span class="info" id="volume-percentage"></span>
|
||||
<span class="info" id="log-file"></span>
|
||||
<button id="devtools" class="devtools"><img src="devtools.svg" /></button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
After Width: | Height: | Size: 60 KiB |
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="circle_pieces"
|
||||
x="0px"
|
||||
y="0px"
|
||||
width="700"
|
||||
height="700"
|
||||
viewBox="0 0 700 699.99999"
|
||||
enable-background="new 0 0 511.875 511.824"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="rktplayer.svg"
|
||||
inkscape:version="1.4.3 (0d15f75042, 2025-12-25)"
|
||||
inkscape:export-filename="rktplayer.png"
|
||||
inkscape:export-xdpi="96"
|
||||
inkscape:export-ydpi="96"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"><defs
|
||||
id="defs1" /><sodipodi:namedview
|
||||
id="namedview1"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="2.6152606"
|
||||
inkscape:cx="442.21215"
|
||||
inkscape:cy="327.30964"
|
||||
inkscape:window-width="3840"
|
||||
inkscape:window-height="2088"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="g2" />
|
||||
|
||||
|
||||
|
||||
|
||||
<g
|
||||
id="g2"><ellipse
|
||||
style="fill:#ffffff;stroke:none;stroke-width:12.2336"
|
||||
id="path5"
|
||||
cx="340.64243"
|
||||
cy="411.03333"
|
||||
rx="224.86732"
|
||||
ry="244.94084" /><path
|
||||
id="blue-piece"
|
||||
fill="#3e5ba9"
|
||||
d="m 517.53252,561.05183 c 29.98772,-41.38652 47.87279,-93.56675 47.87279,-150.27611 0,-134.46841 -100.55629,-243.4773 -224.59995,-243.4773 -26.98291,0 -52.853,5.16309 -76.82046,14.61962 91.18247,51.85123 211.79537,221.0202 253.54762,379.13379 z"
|
||||
style="stroke-width:0.923962" /><path
|
||||
id="left-red-piece"
|
||||
fill="#9f1d20"
|
||||
d="m 308.63814,322.60871 c -35.03626,-40.91705 -74.27268,-73.41269 -115.82881,-94.96454 -46.95076,44.62655 -76.60304,110.12097 -76.60304,183.13155 0,61.38953 20.9662,117.46493 55.54987,160.29253 30.48734,-99.2955 87.80229,-195.00079 136.88198,-248.45954 z"
|
||||
style="stroke-width:0.923962" /><path
|
||||
id="bottom-red-piece"
|
||||
fill="#9f1d20"
|
||||
d="M 350.023,377.81831 C 301.39945,434.6258 252.94628,534.06945 235.41085,625.818 c 31.43155,18.14057 67.30198,28.43598 105.3954,28.43598 39.16364,0 75.97918,-10.87646 108.03459,-29.97904 C 430.36385,531.72504 395.48556,446.9645 350.023,377.81831 Z"
|
||||
style="stroke-width:0.923962" /><path
|
||||
d="m 130.9,323.08501 c 19.13656,-1.81007 36.94048,13.59009 40.79155,36.14648 l 27.27181,159.74052 c 4.10781,24.06017 -9.2145,47.15353 -29.75784,51.57967 -20.54206,4.42609 -46.83685,-11.17988 -50.94473,-35.24153 L 90.989079,375.57159 c -4.107817,-24.06018 15.527281,-47.46572 36.069341,-51.8918 1.28388,-0.27664 2.5658,-0.47409 3.84158,-0.59478 z"
|
||||
style="stroke-width:3;stroke-linejoin:round;fill:#999999;stroke:#000000;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path12" /><path
|
||||
d="m 564.07865,327.18539 c -19.13791,-1.79576 -36.9303,13.61771 -40.76451,36.17698 l -27.15231,159.76087 c -4.08982,24.06324 9.24977,47.14663 29.7964,51.5574 20.54537,4.41072 46.82848,-11.2149 50.91837,-35.27963 L 604.02882,379.6421 c 4.08982,-24.06324 -15.56278,-47.45409 -36.10814,-51.86481 -1.28409,-0.27567 -2.56616,-0.47217 -3.84203,-0.5919 z"
|
||||
style="stroke-width:3;stroke-linejoin:round;fill:#999999;stroke:#000000;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path12-5" /><path
|
||||
d="m 343.63672,38.474609 c 0,0 -324.531251,-6.13e-4 -324.531251,295.406251 0,132.9331 34.615466,177.24529 51.923828,192.01562 0,0 51.925783,29.54031 34.619143,-11.07812 0,-34.17562 -17.310549,-107.08399 -17.310549,-107.08399 0,0 -17.308594,-0.002 -17.308594,-73.85351 0,-88.62206 69.234883,-243.708985 259.626953,-243.708985 h 34.61523 c 190.39209,0 259.62696,155.086925 259.62696,243.708985 0,73.85171 -17.3086,73.85351 -17.3086,73.85351 0,0 -17.31054,72.90837 -17.31054,107.08399 -17.30663,40.61843 34.61914,11.07812 34.61914,11.07812 17.30837,-14.77033 51.92383,-59.08252 51.92383,-192.01562 0,-295.406864 -324.53125,-295.406251 -324.53125,-295.406251 z"
|
||||
style="stroke-width:3;stroke-linejoin:round;fill:#cccccc;stroke:#000000;stroke-opacity:1;stroke-dasharray:none"
|
||||
id="path11" /></g></svg>
|
||||
|
After Width: | Height: | Size: 4.2 KiB |
@@ -0,0 +1,52 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<link rel="stylesheet" href="styles.css" />
|
||||
<meta charset="UTF-8" />
|
||||
<title>RktPlayer - A music player - Settings</title>
|
||||
</head>
|
||||
<body>
|
||||
<div class="pane">
|
||||
<div class="keyval">
|
||||
<label for="language" id="lbl-language">Languages:</label>
|
||||
<span id="language">Languages</span>
|
||||
</div>
|
||||
<hr />
|
||||
<label id="lbl-libary-path">Library path:</label>
|
||||
<hr />
|
||||
<table class="libraries">
|
||||
<thead id="lib-head">
|
||||
<tr><th id="lbl-name"></th><th id="lbl-kind"></th><th id="lbl-local-path"></th><th id="lbl-host"></th></tr>
|
||||
</thead>
|
||||
<tbody id="lib-body">
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="button-box">
|
||||
<button id="add">Add Library</button>
|
||||
<button id="edit">Edit Library</button>
|
||||
<button id="remove">Remove Library</button>
|
||||
</div>
|
||||
<hr />
|
||||
<div class="button-box">
|
||||
<button id="clear-cache">Clear downloaded tracks</button>
|
||||
</div>
|
||||
<hr />
|
||||
<label id="lbl-renderers">Audio Players</label>
|
||||
<table class="renderers">
|
||||
<thead>
|
||||
<tr>
|
||||
<th id="lbl-renderer-name">Name</th>
|
||||
<th id="lbl-volume-curve">Logarithmic volume</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="renderer-body">
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
<div class="button-box">
|
||||
<button id="ok">OK</button>
|
||||
<button id="cancel">Cancel</button>
|
||||
<button id="dev">devtools</button>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
@@ -0,0 +1,432 @@
|
||||
body {
|
||||
font-family: Arial;
|
||||
font-size: 11pt;
|
||||
background: #202020;
|
||||
color: #ffffff;
|
||||
}
|
||||
|
||||
.pane {
|
||||
height: calc(100vh - 2em - 20px);
|
||||
width: calc(100% - 10px);
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
hr {
|
||||
border: none;
|
||||
border-top: 1px solid #909090;
|
||||
margin: 5px 0;
|
||||
}
|
||||
|
||||
.file-box {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.file-box span {
|
||||
display: inline-block;
|
||||
width: calc(70% - 5px);
|
||||
}
|
||||
|
||||
.file-box button {
|
||||
display: inline-block;
|
||||
width: calc(30% - 5px);
|
||||
}
|
||||
|
||||
.keyval {
|
||||
width: 100%;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
.keyval label {
|
||||
display: inline-block;
|
||||
width: calc(30% - 5px);
|
||||
}
|
||||
|
||||
.keyval span, .keyval input, .keyval select,
|
||||
.keyval textarea, .keyval .file-box {
|
||||
display: inline-block;
|
||||
width: calc(70% - 10px);
|
||||
}
|
||||
|
||||
.button-box {
|
||||
border-top: 1px solid #909090;
|
||||
width: 100%;
|
||||
padding-top: 5px;
|
||||
}
|
||||
|
||||
.buttons {
|
||||
height: 40px;
|
||||
width: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
border: 1px solid #505050;
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
|
||||
button {
|
||||
background: #e0e0e0;
|
||||
border: none;
|
||||
border-left: 1px solid #505050;
|
||||
border-right: 1px solid #505050;
|
||||
}
|
||||
|
||||
button:hover, button.devtools:hover {
|
||||
background: #909090;
|
||||
transition: all 0.5s ease-in;
|
||||
}
|
||||
|
||||
button.devtools {
|
||||
background: black;
|
||||
}
|
||||
|
||||
button.command {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
width: 40px;
|
||||
height: 40px;
|
||||
}
|
||||
|
||||
button.command img {
|
||||
height: 32px;
|
||||
width: 32px;
|
||||
margin: 0;
|
||||
padding: 2px;
|
||||
}
|
||||
|
||||
input.h-slider {
|
||||
flex-grow: 1;
|
||||
}
|
||||
|
||||
.buttons .text-block {
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
/*width: 4em;*/
|
||||
border-left: 1px solid #505050;
|
||||
}
|
||||
|
||||
.buttons span.time, .buttons span.totaltime {
|
||||
font-weight: bold;
|
||||
text-align: center;
|
||||
padding-left: 0.5em;
|
||||
padding-right: 0.5em;
|
||||
}
|
||||
|
||||
.hpane {
|
||||
height: calc(100% - 40px - 2.5em);
|
||||
width: 100%;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.music-info {
|
||||
border: 1px solid #505050;
|
||||
width: 30%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.music-library {
|
||||
border-bottom: 1px solid #505050;
|
||||
width: 100%;
|
||||
height: 50%;
|
||||
}
|
||||
|
||||
.album-art {
|
||||
width: 100%;
|
||||
height: 50%;
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
.music-playing {
|
||||
border: 1px solid #505050;
|
||||
border-left: none;
|
||||
width: 70%;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.tabs {
|
||||
width: 100%;
|
||||
height: 1.5em;
|
||||
border-bottom: 1px solid #505050;
|
||||
}
|
||||
|
||||
.tabs span.tab {
|
||||
width: 50px;
|
||||
overflow: hide;
|
||||
text-overflow: hide;
|
||||
white-space: nowrap;
|
||||
border: 1px solid #505050;
|
||||
cursor: default;
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
border-bottom: none;
|
||||
}
|
||||
|
||||
.tabs span.tab.current {
|
||||
font-weight: bold;
|
||||
color: #f3961e;
|
||||
}
|
||||
|
||||
.tabs span.tab:hover {
|
||||
background: #e0e0e0;
|
||||
color: black;
|
||||
transition: all 0.5s ease-in;
|
||||
}
|
||||
|
||||
.content {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.music-playing .content {
|
||||
height: calc(100% - 1.5em);
|
||||
}
|
||||
|
||||
.scrolly {
|
||||
overflow-y: auto;
|
||||
}
|
||||
|
||||
table.music-library {
|
||||
padding: 5px;
|
||||
}
|
||||
|
||||
table.music-library tr td {
|
||||
/*border-bottom: 1px solid #f0f0f0;*/
|
||||
cursor: default;
|
||||
height: 1.1em;
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
table.music-library tr td:hover {
|
||||
background: #e0e0e0;
|
||||
color: black;
|
||||
transition: all 0.5s ease-in;
|
||||
}
|
||||
|
||||
.popup-menu, .popup-submenu {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
margin: 5px;
|
||||
padding: 5px;
|
||||
position: absolute;
|
||||
z-index: 9999;
|
||||
border: 1px solid black;
|
||||
background: #e0e0e0;
|
||||
color: black;
|
||||
}
|
||||
|
||||
.popup-submenu {
|
||||
display: none;
|
||||
}
|
||||
|
||||
.menubar .menu-item span.menu-icon, .popup-menu .menu-item span.menu-icon {
|
||||
min-width: unset;
|
||||
width: unset;
|
||||
}
|
||||
|
||||
.menubar .menu-item {
|
||||
min-width: unset;
|
||||
width: unset;
|
||||
color: black;
|
||||
}
|
||||
|
||||
input[type="range"] {
|
||||
accent-color: #c97101;
|
||||
}
|
||||
|
||||
.menu-item span.menu-name {
|
||||
text-wrap: nowrap;
|
||||
}
|
||||
|
||||
table.tracks {
|
||||
width: 98%;
|
||||
}
|
||||
|
||||
table.tracks td {
|
||||
text-overflow: ellipsis;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
padding-left: 5px;
|
||||
}
|
||||
|
||||
table.tracks td.number {
|
||||
text-align: right;
|
||||
width: 40px;
|
||||
}
|
||||
|
||||
table.tracks td.length {
|
||||
width: 30px;
|
||||
}
|
||||
|
||||
table.tracks td.title, table.tracks td.album {
|
||||
width: calc(50% - 70px);
|
||||
max-width: 200px;
|
||||
|
||||
}
|
||||
|
||||
table.tracks tr, table.tracks td,
|
||||
table.libraries tr, table.libraries td,
|
||||
table.renderers tr, table.renderers td {
|
||||
cursor: default;
|
||||
user-select: none;
|
||||
}
|
||||
|
||||
table.tracks tr:hover, table.libraries tbody tr:hover,
|
||||
table.renderers tbody tr:hover {
|
||||
background: #e0e0e0;
|
||||
color: black;
|
||||
transition: all 0.5s ease-in;
|
||||
}
|
||||
|
||||
table.tracks tr:hover.current,
|
||||
table.libraries tbody tr:hover.current
|
||||
{
|
||||
color: #955c12;
|
||||
}
|
||||
|
||||
table.tracks tr.current,
|
||||
table.libraries tbody tr.current {
|
||||
font-weight: bold;
|
||||
color: #f3961e;
|
||||
}
|
||||
|
||||
table.tracks tr.unavailable {
|
||||
color: #777777;
|
||||
}
|
||||
|
||||
table.tracks tr.unavailable:hover {
|
||||
color: #777777;
|
||||
}
|
||||
|
||||
table.tracks tr.failed {
|
||||
color: #a06060;
|
||||
}
|
||||
|
||||
.album-art .content img {
|
||||
width: auto;
|
||||
height: calc(100% - 20px);
|
||||
aspect-ratio: 1 / 1;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
.album-art .content {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
}
|
||||
|
||||
div.status {
|
||||
width: 100%;
|
||||
height: 2em;
|
||||
padding-top: 0.25em;
|
||||
border-left: 1px solid #505050;
|
||||
}
|
||||
|
||||
div.status div.right {
|
||||
float: right;
|
||||
margin-top: 0;
|
||||
padding-top: 0;
|
||||
}
|
||||
|
||||
div.status span.info, div.status div.right span.info {
|
||||
padding-left: 5px;
|
||||
padding-right: 5px;
|
||||
border-right: 1px solid #505050;
|
||||
color: #d0d0d0;
|
||||
vertical-align: top;
|
||||
}
|
||||
|
||||
button.devtools {
|
||||
height: 1.6em;
|
||||
height: 1.6em;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
margin-top: 3px;
|
||||
}
|
||||
|
||||
button.devtools img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.volume-meter {
|
||||
display: none;
|
||||
position: relative;
|
||||
left: 0;
|
||||
top: 0;
|
||||
z-index: 1000;
|
||||
background: #e0e0e0;
|
||||
border: 1px solid #505050;
|
||||
/*border-radius: 1em;*/
|
||||
padding-top: 5px;
|
||||
padding-bottom: 5px;
|
||||
}
|
||||
|
||||
div.volume-meter div.status {
|
||||
border: none;
|
||||
}
|
||||
|
||||
div.volume-meter div.status span.info {
|
||||
font-weight: bold;
|
||||
color: black;
|
||||
font-size: 80%;
|
||||
border: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
div.volume-meter:hover {
|
||||
background: #909090;
|
||||
transition: all 0.5s ease-in;
|
||||
}
|
||||
|
||||
div.volume-meter input[type="range"] {
|
||||
height: 300px;
|
||||
}
|
||||
|
||||
input.v-slider {
|
||||
writing-mode: vertical-lr;
|
||||
direction: rtl;
|
||||
}
|
||||
|
||||
|
||||
.blink {
|
||||
animation: blink 3s infinite both;
|
||||
}
|
||||
|
||||
.error {
|
||||
color: #d60000;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
@keyframes blink {
|
||||
0%,
|
||||
50%,
|
||||
100% {
|
||||
opacity: 1;
|
||||
}
|
||||
25%,
|
||||
75% {
|
||||
opacity: 0;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
select, option {
|
||||
all: revert;
|
||||
}
|
||||
|
||||
.pane {
|
||||
display: block !important;
|
||||
}
|
||||
|
||||
|
||||
|
||||