Replace call quality percentage algorithm by a set of icons.
Upgrade Popup with a delay in order to avoid instant reopening with clicked events. Change colors and checked behaviour of call statistics. Fix action buttons layout on calls and buttons sizes (dialpad/call quality) Add Participant view in video conference fullscreen mode and fix options toggle display.
67
linphone-app/assets/images/call_quality_0_custom.svg
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="80"
|
||||
height="80"
|
||||
viewBox="0 0 80 80"
|
||||
fill="none"
|
||||
version="1.1"
|
||||
id="svg10"
|
||||
sodipodi:docname="call_quality_0_custom.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
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="defs14" />
|
||||
<sodipodi:namedview
|
||||
id="namedview12"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="false"
|
||||
inkscape:zoom="9.4659091"
|
||||
inkscape:cx="26.093637"
|
||||
inkscape:cy="39.721489"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg10" />
|
||||
<g
|
||||
id="g835"
|
||||
transform="matrix(1.7307692,0,0,1.7307692,17.5,20)">
|
||||
<rect
|
||||
x="0.5"
|
||||
y="12.5"
|
||||
width="4.4499998"
|
||||
height="9"
|
||||
stroke="#000000"
|
||||
id="rect2" />
|
||||
<rect
|
||||
x="7.5"
|
||||
y="8.5"
|
||||
width="4.4499998"
|
||||
height="13"
|
||||
stroke="#000000"
|
||||
id="rect4" />
|
||||
<rect
|
||||
x="14.5"
|
||||
y="4.5"
|
||||
width="4.4499998"
|
||||
height="17"
|
||||
stroke="#000000"
|
||||
id="rect6" />
|
||||
<rect
|
||||
x="21.5"
|
||||
y="0.5"
|
||||
width="4"
|
||||
height="21"
|
||||
stroke="#000000"
|
||||
id="rect8" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.6 KiB |
75
linphone-app/assets/images/call_quality_1_custom.svg
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="80"
|
||||
height="80"
|
||||
viewBox="0 0 80 80"
|
||||
fill="none"
|
||||
version="1.1"
|
||||
id="svg12"
|
||||
sodipodi:docname="call_quality_1_custom.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
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="defs16" />
|
||||
<sodipodi:namedview
|
||||
id="namedview14"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="false"
|
||||
inkscape:zoom="9.4659091"
|
||||
inkscape:cx="27.572629"
|
||||
inkscape:cy="29.47419"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg12" />
|
||||
<g
|
||||
id="g838"
|
||||
transform="matrix(1.7307692,0,0,1.7307692,17.5,20)">
|
||||
<rect
|
||||
x="0.5"
|
||||
y="12.5"
|
||||
width="4.4499998"
|
||||
height="9"
|
||||
stroke="#000000"
|
||||
id="rect2" />
|
||||
<rect
|
||||
x="7.5"
|
||||
y="8.5"
|
||||
width="4.4499998"
|
||||
height="13"
|
||||
stroke="#000000"
|
||||
id="rect4" />
|
||||
<rect
|
||||
x="14.5"
|
||||
y="4.5"
|
||||
width="4.4499998"
|
||||
height="17"
|
||||
stroke="#000000"
|
||||
id="rect6" />
|
||||
<rect
|
||||
x="21.5"
|
||||
y="0.5"
|
||||
width="4"
|
||||
height="21"
|
||||
stroke="#000000"
|
||||
id="rect8" />
|
||||
<rect
|
||||
x="0.5"
|
||||
y="13.5"
|
||||
width="4"
|
||||
height="7"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect10" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.7 KiB |
83
linphone-app/assets/images/call_quality_2_custom.svg
Normal file
|
|
@ -0,0 +1,83 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="80"
|
||||
height="80"
|
||||
viewBox="0 0 80 80"
|
||||
fill="none"
|
||||
version="1.1"
|
||||
id="svg14"
|
||||
sodipodi:docname="call_quality_2_custom.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
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="defs18" />
|
||||
<sodipodi:namedview
|
||||
id="namedview16"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="false"
|
||||
inkscape:zoom="37.863636"
|
||||
inkscape:cx="12.703481"
|
||||
inkscape:cy="10.986795"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg14" />
|
||||
<g
|
||||
id="g841"
|
||||
transform="matrix(1.7307692,0,0,1.7307692,17.5,20)">
|
||||
<rect
|
||||
x="0.5"
|
||||
y="12.5"
|
||||
width="4.4499998"
|
||||
height="9"
|
||||
stroke="#000000"
|
||||
id="rect2" />
|
||||
<rect
|
||||
x="7.5"
|
||||
y="8.5"
|
||||
width="4.4499998"
|
||||
height="13"
|
||||
stroke="#000000"
|
||||
id="rect4" />
|
||||
<rect
|
||||
x="14.5"
|
||||
y="4.5"
|
||||
width="4.4499998"
|
||||
height="17"
|
||||
stroke="#000000"
|
||||
id="rect6" />
|
||||
<rect
|
||||
x="21.5"
|
||||
y="0.5"
|
||||
width="4"
|
||||
height="21"
|
||||
stroke="#000000"
|
||||
id="rect8" />
|
||||
<rect
|
||||
x="0.5"
|
||||
y="13.5"
|
||||
width="4"
|
||||
height="7"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect10" />
|
||||
<rect
|
||||
x="7.5"
|
||||
y="8.5"
|
||||
width="4"
|
||||
height="12"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect12" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.9 KiB |
91
linphone-app/assets/images/call_quality_3_custom.svg
Normal file
|
|
@ -0,0 +1,91 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="80"
|
||||
height="80"
|
||||
viewBox="0 0 80 80"
|
||||
fill="none"
|
||||
version="1.1"
|
||||
id="svg16"
|
||||
sodipodi:docname="call_quality_3_custom.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
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="defs20" />
|
||||
<sodipodi:namedview
|
||||
id="namedview18"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="false"
|
||||
inkscape:zoom="37.863636"
|
||||
inkscape:cx="12.703481"
|
||||
inkscape:cy="19.438175"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg16" />
|
||||
<g
|
||||
id="g844"
|
||||
transform="matrix(1.7307692,0,0,1.7307692,17.5,20)">
|
||||
<rect
|
||||
x="0.5"
|
||||
y="12.5"
|
||||
width="4.4499998"
|
||||
height="9"
|
||||
stroke="#000000"
|
||||
id="rect2" />
|
||||
<rect
|
||||
x="7.5"
|
||||
y="8.5"
|
||||
width="4.4499998"
|
||||
height="13"
|
||||
stroke="#000000"
|
||||
id="rect4" />
|
||||
<rect
|
||||
x="14.5"
|
||||
y="4.5"
|
||||
width="4.4499998"
|
||||
height="17"
|
||||
stroke="#000000"
|
||||
id="rect6" />
|
||||
<rect
|
||||
x="21.5"
|
||||
y="0.5"
|
||||
width="4"
|
||||
height="21"
|
||||
stroke="#000000"
|
||||
id="rect8" />
|
||||
<rect
|
||||
x="1.5"
|
||||
y="13.5"
|
||||
width="3"
|
||||
height="7"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect10" />
|
||||
<rect
|
||||
x="8.5"
|
||||
y="9.5"
|
||||
width="3"
|
||||
height="11"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect12" />
|
||||
<rect
|
||||
x="15.5"
|
||||
y="5.5"
|
||||
width="3"
|
||||
height="15"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect14" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2 KiB |
99
linphone-app/assets/images/call_quality_4_custom.svg
Normal file
|
|
@ -0,0 +1,99 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="80"
|
||||
height="80"
|
||||
viewBox="0 0 80 80"
|
||||
fill="none"
|
||||
version="1.1"
|
||||
id="svg18"
|
||||
sodipodi:docname="call_quality_3_custom.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
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="defs22" />
|
||||
<sodipodi:namedview
|
||||
id="namedview20"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
showgrid="false"
|
||||
inkscape:zoom="37.863636"
|
||||
inkscape:cx="12.703481"
|
||||
inkscape:cy="10.986795"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg18" />
|
||||
<g
|
||||
id="g847"
|
||||
transform="matrix(1.7307692,0,0,1.7307692,17.5,20)">
|
||||
<rect
|
||||
x="0.5"
|
||||
y="12.5"
|
||||
width="4.4499998"
|
||||
height="9"
|
||||
stroke="#000000"
|
||||
id="rect2" />
|
||||
<rect
|
||||
x="7.5"
|
||||
y="8.5"
|
||||
width="4.4499998"
|
||||
height="13"
|
||||
stroke="#000000"
|
||||
id="rect4" />
|
||||
<rect
|
||||
x="14.5"
|
||||
y="4.5"
|
||||
width="4.4499998"
|
||||
height="17"
|
||||
stroke="#000000"
|
||||
id="rect6" />
|
||||
<rect
|
||||
x="21.5"
|
||||
y="0.5"
|
||||
width="4"
|
||||
height="21"
|
||||
stroke="#000000"
|
||||
id="rect8" />
|
||||
<rect
|
||||
x="1.5"
|
||||
y="13.5"
|
||||
width="3"
|
||||
height="7"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect10" />
|
||||
<rect
|
||||
x="8.5"
|
||||
y="9.5"
|
||||
width="3"
|
||||
height="11"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect12" />
|
||||
<rect
|
||||
x="15.5"
|
||||
y="5.5"
|
||||
width="3"
|
||||
height="15"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect14" />
|
||||
<rect
|
||||
x="22.5"
|
||||
y="1.5"
|
||||
width="3"
|
||||
height="19"
|
||||
fill="#000000"
|
||||
stroke="#000000"
|
||||
id="rect16" />
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 2.2 KiB |
|
|
@ -1,81 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<svg
|
||||
width="80"
|
||||
height="80"
|
||||
viewBox="0 0 80 80"
|
||||
version="1.1"
|
||||
id="svg16"
|
||||
sodipodi:docname="call_quality_custom.svg"
|
||||
inkscape:version="1.1 (c68e22c387, 2021-05-23)"
|
||||
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/">
|
||||
<metadata
|
||||
id="metadata20">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:format>image/svg+xml</dc:format>
|
||||
<dc:type
|
||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
||||
<dc:title>call_quality_custom</dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1"
|
||||
objecttolerance="10"
|
||||
gridtolerance="10"
|
||||
guidetolerance="10"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1131"
|
||||
id="namedview18"
|
||||
showgrid="false"
|
||||
inkscape:zoom="4.5384615"
|
||||
inkscape:cx="-30.516949"
|
||||
inkscape:cy="37.237288"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="call_quality_custom"
|
||||
inkscape:pagecheckerboard="0" />
|
||||
<!-- Generator: Sketch 41 (35326) - http://www.bohemiancoding.com/sketch -->
|
||||
<title
|
||||
id="title2">call_quality_custom</title>
|
||||
<desc
|
||||
id="desc4">Created with Sketch.</desc>
|
||||
<defs
|
||||
id="defs6" />
|
||||
<g
|
||||
id="Symbols"
|
||||
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:round"
|
||||
transform="matrix(7.9999899,0,0,6.2557797,0,0.29056132)">
|
||||
<g
|
||||
id="call_quality_custom"
|
||||
style="stroke:#6b7a86;stroke-width:2">
|
||||
<path
|
||||
d="M 1.201525,11.563552 V 5.1324526"
|
||||
id="path8"
|
||||
inkscape:connector-curvature="0"
|
||||
style="stroke-width:2.40305372;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
d="M 4.9376248,11.537183 V 3.2399602"
|
||||
id="path10"
|
||||
inkscape:connector-curvature="0"
|
||||
style="stroke-width:2.41245;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
<path
|
||||
d="M 8.8542434,11.560579 V 1.1347281"
|
||||
id="path12"
|
||||
inkscape:connector-curvature="0"
|
||||
style="stroke-width:2.36235;stroke-miterlimit:4;stroke-dasharray:none" />
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 2.6 KiB |
|
|
@ -4,8 +4,8 @@
|
|||
height="80"
|
||||
version="1.1"
|
||||
id="svg8"
|
||||
sodipodi:docname="conference_participants_custom.svg"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)"
|
||||
sodipodi:docname="participants_custom.svg"
|
||||
inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)"
|
||||
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"
|
||||
|
|
@ -23,18 +23,18 @@
|
|||
showgrid="false"
|
||||
inkscape:zoom="4.232442"
|
||||
inkscape:cx="-17.602131"
|
||||
inkscape:cy="66.982607"
|
||||
inkscape:window-width="1852"
|
||||
inkscape:window-height="1088"
|
||||
inkscape:window-x="1983"
|
||||
inkscape:window-y="355"
|
||||
inkscape:window-maximized="0"
|
||||
inkscape:cy="66.864472"
|
||||
inkscape:window-width="1920"
|
||||
inkscape:window-height="1043"
|
||||
inkscape:window-x="1920"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg8" />
|
||||
<g
|
||||
fill="#000000"
|
||||
fill-rule="nonzero"
|
||||
id="g6"
|
||||
transform="matrix(1.7307618,0,0,1.666979,17.500129,25)">
|
||||
transform="matrix(2.3076824,0,0,2.2226387,10.000172,20)">
|
||||
<path
|
||||
d="m 5.469,15.664 c 1.396,0.418 2.83,0.685 4.25,0.827 a 20.538,20.538 0 0 0 2.697,0.105 h 0.13 l 0.163,0.005 c 0.656,0.019 1.536,-0.006 2.572,-0.11 1.42,-0.142 2.854,-0.409 4.25,-0.827 0.21,-1.138 0.006,-2.425 -0.932,-3.656 -0.713,-0.935 -1.81,-1.762 -3.359,-2.444 A 0.696,0.696 0 0 1 15.128,9.502 L 14.958,9.386 A 0.697,0.697 0 0 1 14.89,8.288 c 0.053,-0.063 0.065,-0.077 0.114,-0.13 0.584,-0.63 0.914,-1.459 0.914,-2.342 0,-1.892 -1.514,-3.423 -3.379,-3.423 h -0.078 c -1.865,0 -3.38,1.531 -3.38,3.423 0,0.883 0.33,1.711 0.916,2.343 0.049,0.053 0.057,0.063 0.101,0.12 0.353,0.309 0.32,0.852 -0.058,1.108 L 9.87,9.503 A 0.696,0.696 0 0 1 9.76,9.564 c -1.55,0.682 -2.647,1.51 -3.359,2.444 -0.938,1.231 -1.143,2.518 -0.932,3.656 z m 7.003,2.324 A 21.9,21.9 0 0 1 9.581,17.878 23.896,23.896 0 0 1 4.674,16.876 0.696,0.696 0 0 1 4.229,16.441 3.567,3.567 0 0 1 4.113,15.985 C 3.815,14.473 4.073,12.767 5.294,11.163 6.048,10.174 7.126,9.308 8.559,8.589 A 4.83,4.83 0 0 1 7.689,5.816 C 7.69,3.158 9.825,1 12.462,1 h 0.078 c 2.637,0 4.771,2.158 4.771,4.816 a 4.83,4.83 0 0 1 -0.87,2.773 c 1.434,0.719 2.512,1.585 3.265,2.574 1.223,1.604 1.48,3.31 1.182,4.822 -0.04,0.207 -0.083,0.361 -0.116,0.456 a 0.696,0.696 0 0 1 -0.445,0.435 23.9,23.9 0 0 1 -4.907,1.002 21.9,21.9 0 0 1 -2.891,0.11 h -0.056 z"
|
||||
id="path2" />
|
||||
|
|
|
|||
|
Before Width: | Height: | Size: 4.6 KiB After Width: | Height: | Size: 4.6 KiB |
|
|
@ -22,7 +22,11 @@
|
|||
<file>assets/images/call_chat_unsecure_custom.svg</file>
|
||||
<file>assets/images/call_custom.svg</file>
|
||||
<file>assets/images/call_history_custom.svg</file>
|
||||
<file>assets/images/call_quality_custom.svg</file>
|
||||
<file>assets/images/call_quality_0_custom.svg</file>
|
||||
<file>assets/images/call_quality_1_custom.svg</file>
|
||||
<file>assets/images/call_quality_2_custom.svg</file>
|
||||
<file>assets/images/call_quality_3_custom.svg</file>
|
||||
<file>assets/images/call_quality_4_custom.svg</file>
|
||||
<file>assets/images/call_menu_custom.svg</file>
|
||||
<file>assets/images/call_sign_connected.svg</file>
|
||||
<file>assets/images/call_sign_ended.svg</file>
|
||||
|
|
|
|||
|
|
@ -7,88 +7,95 @@ import Utils 1.0
|
|||
// =============================================================================
|
||||
|
||||
Item {
|
||||
id: wrapper
|
||||
|
||||
// Optionnal parameters, set the position of popup relative to this item.
|
||||
property var relativeTo
|
||||
property int relativeX: 0
|
||||
property int relativeY: 0
|
||||
|
||||
default property alias _content: popup.contentItem
|
||||
property alias closePolicy : popup.closePolicy
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
signal closed
|
||||
signal opened
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
function open () {
|
||||
if (popup.visible) {
|
||||
return
|
||||
}
|
||||
|
||||
if (relativeTo) {
|
||||
var parent = Utils.getTopParent(this)
|
||||
|
||||
popup.x = Qt.binding(function () {
|
||||
return relativeTo ? relativeTo.mapToItem(null, relativeX, relativeY).x : 0
|
||||
})
|
||||
popup.y = Qt.binding(function () {
|
||||
return relativeTo ? relativeTo.mapToItem(null, relativeX, relativeY).y : 0
|
||||
})
|
||||
} else {
|
||||
popup.x = Qt.binding(function () {
|
||||
return x
|
||||
})
|
||||
popup.y = Qt.binding(function () {
|
||||
return y
|
||||
})
|
||||
}
|
||||
|
||||
popup.open()
|
||||
}
|
||||
|
||||
function close () {
|
||||
if (!popup.visible) {
|
||||
return
|
||||
}
|
||||
|
||||
popup.x = 0
|
||||
popup.y = 0
|
||||
|
||||
popup.close()
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
visible: false
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
Controls.Popup {
|
||||
id: popup
|
||||
|
||||
height: wrapper.height
|
||||
width: wrapper.width
|
||||
|
||||
background: Rectangle {
|
||||
color: PopupStyle.backgroundColor
|
||||
height: popup.height
|
||||
width: popup.width
|
||||
|
||||
layer {
|
||||
enabled: true
|
||||
effect: PopupShadow {}
|
||||
}
|
||||
}
|
||||
|
||||
padding: 0
|
||||
|
||||
Component.onCompleted: parent = Utils.getTopParent(this)
|
||||
|
||||
onClosed: wrapper.closed()
|
||||
onOpened: wrapper.opened()
|
||||
}
|
||||
id: wrapper
|
||||
|
||||
property bool isOpen : popup.visible || (!popup.visible && closeDelay.running) // This way, we prevent instant reopening on lost focus with clicked events
|
||||
property bool delayClosing : false
|
||||
// Optionnal parameters, set the position of popup relative to this item.
|
||||
property var relativeTo
|
||||
property int relativeX: 0
|
||||
property int relativeY: 0
|
||||
|
||||
default property alias _content: popup.contentItem
|
||||
property alias closePolicy : popup.closePolicy
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
signal closed
|
||||
signal opened
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
function open () {
|
||||
if (popup.visible) {
|
||||
return
|
||||
}
|
||||
|
||||
if (relativeTo) {
|
||||
var parent = Utils.getTopParent(this)
|
||||
|
||||
popup.x = Qt.binding(function () {
|
||||
return relativeTo ? relativeTo.mapToItem(null, relativeX, relativeY).x : 0
|
||||
})
|
||||
popup.y = Qt.binding(function () {
|
||||
return relativeTo ? relativeTo.mapToItem(null, relativeX, relativeY).y : 0
|
||||
})
|
||||
} else {
|
||||
popup.x = Qt.binding(function () {
|
||||
return x
|
||||
})
|
||||
popup.y = Qt.binding(function () {
|
||||
return y
|
||||
})
|
||||
}
|
||||
|
||||
popup.open()
|
||||
}
|
||||
function close(){
|
||||
if (!popup.visible) {
|
||||
return
|
||||
}
|
||||
|
||||
popup.x = 0
|
||||
popup.y = 0
|
||||
|
||||
popup.close()
|
||||
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
visible: false
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
Timer{// This way, we prevent instant reopening on lost focus with clicked events
|
||||
id: closeDelay
|
||||
interval: 100
|
||||
}
|
||||
Controls.Popup {
|
||||
id: popup
|
||||
|
||||
height: wrapper.height
|
||||
width: wrapper.width
|
||||
|
||||
background: Rectangle {
|
||||
color: PopupStyle.backgroundColor
|
||||
height: popup.height
|
||||
width: popup.width
|
||||
|
||||
layer {
|
||||
enabled: true
|
||||
effect: PopupShadow {}
|
||||
}
|
||||
}
|
||||
|
||||
padding: 0
|
||||
|
||||
Component.onCompleted: parent = Utils.getTopParent(this)
|
||||
|
||||
onClosed: { if(wrapper.delayClosing) closeDelay.restart()
|
||||
wrapper.closed()
|
||||
}
|
||||
onOpened: wrapper.opened()
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -8,109 +8,109 @@ import Linphone.Styles 1.0
|
|||
// =============================================================================
|
||||
|
||||
Popup {
|
||||
id: callStatistics
|
||||
|
||||
property var call
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
Rectangle {
|
||||
color: CallStatisticsStyle.color
|
||||
height: callStatistics.height
|
||||
width: callStatistics.width
|
||||
Row {
|
||||
anchors {
|
||||
fill: parent
|
||||
topMargin: CallStatisticsStyle.topMargin
|
||||
leftMargin: CallStatisticsStyle.leftMargin
|
||||
rightMargin: CallStatisticsStyle.rightMargin
|
||||
}
|
||||
|
||||
Loader {
|
||||
property string $label: qsTr('audioStatsLabel')
|
||||
property var $data: callStatistics.call?callStatistics.call.audioStats:null
|
||||
|
||||
sourceComponent: media
|
||||
width: parent.width / 2
|
||||
}
|
||||
|
||||
Loader {
|
||||
property string $label: qsTr('videoStatsLabel')
|
||||
property var $data: callStatistics.call?callStatistics.call.videoStats:null
|
||||
|
||||
sourceComponent: media
|
||||
width: parent.width / 2
|
||||
}
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Line.
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
Component {
|
||||
id: line
|
||||
|
||||
RowLayout {
|
||||
spacing: CallStatisticsStyle.spacing
|
||||
width: parent.width
|
||||
|
||||
Text {
|
||||
Layout.preferredWidth: CallStatisticsStyle.key.width
|
||||
|
||||
color: CallStatisticsStyle.key.color
|
||||
elide: Text.ElideRight
|
||||
|
||||
font {
|
||||
pointSize: CallStatisticsStyle.key.pointSize
|
||||
bold: true
|
||||
}
|
||||
|
||||
horizontalAlignment: Text.AlignRight
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
text: modelData.key
|
||||
}
|
||||
|
||||
Text {
|
||||
Layout.fillWidth: true
|
||||
|
||||
color: CallStatisticsStyle.value.color
|
||||
elide: Text.ElideRight
|
||||
font.pointSize: CallStatisticsStyle.value.pointSize
|
||||
|
||||
text: modelData.value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Media.
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
Component {
|
||||
id: media
|
||||
|
||||
Column {
|
||||
Text {
|
||||
color: CallStatisticsStyle.title.color
|
||||
|
||||
font {
|
||||
bold: true
|
||||
pointSize: CallStatisticsStyle.title.pointSize
|
||||
}
|
||||
|
||||
elide: Text.ElideRight
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
text: $label
|
||||
|
||||
height: contentHeight + CallStatisticsStyle.title.bottomMargin
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: $data
|
||||
delegate: line
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
id: callStatistics
|
||||
|
||||
property var call
|
||||
// ---------------------------------------------------------------------------
|
||||
delayClosing: true
|
||||
Rectangle {
|
||||
color: CallStatisticsStyle.color
|
||||
height: callStatistics.height
|
||||
width: callStatistics.width
|
||||
Row {
|
||||
anchors {
|
||||
fill: parent
|
||||
topMargin: CallStatisticsStyle.topMargin
|
||||
leftMargin: CallStatisticsStyle.leftMargin
|
||||
rightMargin: CallStatisticsStyle.rightMargin
|
||||
}
|
||||
|
||||
Loader {
|
||||
property string $label: qsTr('audioStatsLabel')
|
||||
property var $data: callStatistics.call?callStatistics.call.audioStats:null
|
||||
|
||||
sourceComponent: media
|
||||
width: parent.width / 2
|
||||
}
|
||||
|
||||
Loader {
|
||||
property string $label: qsTr('videoStatsLabel')
|
||||
property var $data: callStatistics.call?callStatistics.call.videoStats:null
|
||||
|
||||
sourceComponent: media
|
||||
width: parent.width / 2
|
||||
}
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Line.
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
Component {
|
||||
id: line
|
||||
|
||||
RowLayout {
|
||||
spacing: CallStatisticsStyle.spacing
|
||||
width: parent.width
|
||||
|
||||
Text {
|
||||
Layout.preferredWidth: CallStatisticsStyle.key.width
|
||||
|
||||
color: CallStatisticsStyle.key.color
|
||||
elide: Text.ElideRight
|
||||
|
||||
font {
|
||||
pointSize: CallStatisticsStyle.key.pointSize
|
||||
bold: true
|
||||
}
|
||||
|
||||
horizontalAlignment: Text.AlignRight
|
||||
verticalAlignment: Text.AlignVCenter
|
||||
|
||||
text: modelData.key
|
||||
}
|
||||
|
||||
Text {
|
||||
Layout.fillWidth: true
|
||||
|
||||
color: CallStatisticsStyle.value.color
|
||||
elide: Text.ElideRight
|
||||
font.pointSize: CallStatisticsStyle.value.pointSize
|
||||
|
||||
text: modelData.value
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// -------------------------------------------------------------------------
|
||||
// Media.
|
||||
// -------------------------------------------------------------------------
|
||||
|
||||
Component {
|
||||
id: media
|
||||
|
||||
Column {
|
||||
Text {
|
||||
color: CallStatisticsStyle.title.color
|
||||
|
||||
font {
|
||||
bold: true
|
||||
pointSize: CallStatisticsStyle.title.pointSize
|
||||
}
|
||||
|
||||
elide: Text.ElideRight
|
||||
horizontalAlignment: Text.AlignHCenter
|
||||
text: $label
|
||||
|
||||
height: contentHeight + CallStatisticsStyle.title.bottomMargin
|
||||
width: parent.width
|
||||
}
|
||||
|
||||
Repeater {
|
||||
model: $data
|
||||
delegate: line
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -82,8 +82,7 @@ Rectangle {
|
|||
isCustom: true
|
||||
backgroundRadius: 4
|
||||
colorSet: CallStyle.buttons.callQuality
|
||||
|
||||
percentageDisplayed: 0
|
||||
icon: CallStyle.buttons.callQuality.icon_0
|
||||
|
||||
onClicked: Logic.openCallStatistics()
|
||||
|
||||
|
|
@ -97,10 +96,16 @@ Rectangle {
|
|||
onTriggered: {
|
||||
// Note: `quality` is in the [0, 5] interval and -1.
|
||||
var quality = call.quality
|
||||
if(quality >= 0)
|
||||
callQuality.percentageDisplayed = quality * 100 / 5
|
||||
if(quality > 4)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_4
|
||||
else if(quality > 3)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_3
|
||||
else if(quality > 2)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_2
|
||||
else if(quality > 1)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_1
|
||||
else
|
||||
callQuality.percentageDisplayed = 0
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_0
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -127,6 +132,7 @@ Rectangle {
|
|||
}
|
||||
|
||||
ActionButton {
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
id: callSecure
|
||||
isCustom: true
|
||||
backgroundRadius: 90
|
||||
|
|
|
|||
|
|
@ -149,8 +149,7 @@ Window {
|
|||
isCustom: true
|
||||
backgroundRadius: 4
|
||||
colorSet: CallFullscreenStyle.buttons.callQuality
|
||||
iconSize: CallFullscreenStyle.header.iconSize
|
||||
percentageDisplayed: 0
|
||||
icon: CallStyle.buttons.callQuality.icon_0
|
||||
onClicked: Logic.openCallStatistics()
|
||||
|
||||
// See: http://www.linphone.org/docs/liblinphone/group__call__misc.html#ga62c7d3d08531b0cc634b797e273a0a73
|
||||
|
|
@ -163,10 +162,16 @@ Window {
|
|||
onTriggered: {
|
||||
// Note: `quality` is in the [0, 5] interval and -1.
|
||||
var quality = window.call.quality
|
||||
if(quality >= 0)
|
||||
callQuality.percentageDisplayed = quality * 100 / 5
|
||||
if(quality > 4)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_4
|
||||
else if(quality > 3)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_3
|
||||
else if(quality > 2)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_2
|
||||
else if(quality > 1)
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_1
|
||||
else
|
||||
callQuality.percentageDisplayed = 0
|
||||
callQuality.icon = CallStyle.buttons.callQuality.icon_0
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -187,13 +192,13 @@ Window {
|
|||
isCustom: true
|
||||
backgroundRadius: 90
|
||||
colorSet: CallFullscreenStyle.buttons.telKeyad
|
||||
iconSize: CallFullscreenStyle.header.iconSize
|
||||
|
||||
onClicked: telKeypad.visible = !telKeypad.visible
|
||||
}
|
||||
|
||||
ActionButton {
|
||||
id: callSecure
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
isCustom: true
|
||||
backgroundRadius: 90
|
||||
colorSet: window.call && window.call.isSecured ? CallFullscreenStyle.buttons.secure : CallFullscreenStyle.buttons.unsecure
|
||||
|
|
|
|||
|
|
@ -394,11 +394,12 @@ Rectangle {
|
|||
id: callQuality
|
||||
|
||||
isCustom: true
|
||||
backgroundRadius: 4
|
||||
backgroundRadius: width/2
|
||||
colorSet: VideoConferenceStyle.buttons.callQuality
|
||||
percentageDisplayed: 0
|
||||
icon: VideoConferenceStyle.buttons.callQuality.icon_0
|
||||
toggled: callStatistics.isOpen
|
||||
|
||||
onClicked: {Logic.openCallStatistics();}
|
||||
onClicked: callStatistics.isOpen ? callStatistics.close() : callStatistics.open()
|
||||
Timer {
|
||||
interval: 500
|
||||
repeat: true
|
||||
|
|
@ -407,10 +408,16 @@ Rectangle {
|
|||
onTriggered: {
|
||||
// Note: `quality` is in the [0, 5] interval and -1.
|
||||
var quality = callModel.quality
|
||||
if(quality >= 0)
|
||||
callQuality.percentageDisplayed = quality * 100 / 5
|
||||
if(quality > 4)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_4
|
||||
else if(quality > 3)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_3
|
||||
else if(quality > 2)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_2
|
||||
else if(quality > 1)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_1
|
||||
else
|
||||
callQuality.percentageDisplayed = 0
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -435,7 +442,6 @@ Rectangle {
|
|||
relativeTo: conference
|
||||
relativeY: CallStyle.header.stats.relativeY
|
||||
relativeX: 10
|
||||
onClosed: Logic.handleCallStatisticsClosed()
|
||||
}
|
||||
TelKeypad {
|
||||
id: telKeypad
|
||||
|
|
|
|||
|
|
@ -416,17 +416,25 @@ Window {
|
|||
isCustom: true
|
||||
backgroundRadius: width/2
|
||||
colorSet: VideoConferenceStyle.buttons.participants
|
||||
visible: false // TODO
|
||||
toggled: rightMenu.visible && rightMenu.isParticipantsMenu
|
||||
onClicked: {
|
||||
if(toggled)
|
||||
rightMenu.visible = false
|
||||
else
|
||||
rightMenu.showParticipantsMenu()
|
||||
}
|
||||
}
|
||||
ActionButton {
|
||||
id: callQuality
|
||||
|
||||
isCustom: true
|
||||
backgroundRadius: 4
|
||||
backgroundRadius: width/2
|
||||
colorSet: VideoConferenceStyle.buttons.callQuality
|
||||
percentageDisplayed: 0
|
||||
|
||||
onClicked: {Logic.openCallStatistics();}
|
||||
icon: VideoConferenceStyle.buttons.callQuality.icon_0
|
||||
toggled: callStatistics.isOpen
|
||||
|
||||
onClicked: callStatistics.isOpen ? callStatistics.close() : callStatistics.open()
|
||||
|
||||
Timer {
|
||||
interval: 500
|
||||
repeat: true
|
||||
|
|
@ -436,10 +444,16 @@ Window {
|
|||
if(callModel) {
|
||||
// Note: `quality` is in the [0, 5] interval and -1.
|
||||
var quality = callModel.quality
|
||||
if(quality >= 0)
|
||||
callQuality.percentageDisplayed = quality * 100 / 5
|
||||
if(quality > 4)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_4
|
||||
else if(quality > 3)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_3
|
||||
else if(quality > 2)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_2
|
||||
else if(quality > 1)
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_1
|
||||
else
|
||||
callQuality.percentageDisplayed = 0
|
||||
callQuality.icon = VideoConferenceStyle.buttons.callQuality.icon_0
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -448,6 +462,7 @@ Window {
|
|||
isCustom: true
|
||||
backgroundRadius: width/2
|
||||
colorSet: VideoConferenceStyle.buttons.options
|
||||
toggled: rightMenu.visible
|
||||
onClicked: rightMenu.visible = !rightMenu.visible
|
||||
}
|
||||
}
|
||||
|
|
@ -464,7 +479,6 @@ Window {
|
|||
relativeTo: conference
|
||||
relativeY: CallStyle.header.stats.relativeY
|
||||
relativeX: 10
|
||||
onClosed: Logic.handleCallStatisticsClosed()
|
||||
}
|
||||
}
|
||||
TelKeypad {
|
||||
|
|
@ -495,7 +509,8 @@ Window {
|
|||
anchors.fill: parent
|
||||
acceptedButtons: Qt.NoButton
|
||||
propagateComposedEvents: true
|
||||
cursorShape: Qt.ArrowCursor
|
||||
cursorShape: undefined
|
||||
//cursorShape: Qt.ArrowCursor
|
||||
|
||||
onEntered: hideButtonsTimer.startTimer()
|
||||
onExited: hideButtonsTimer.stopTimer()
|
||||
|
|
|
|||
|
|
@ -102,29 +102,24 @@ QtObject {
|
|||
// Button colors
|
||||
property QtObject buttons: QtObject {
|
||||
property QtObject callQuality: QtObject {
|
||||
property int iconSize: 16
|
||||
property int iconSize: 30
|
||||
property string name : 'quality'
|
||||
property string icon : 'call_quality_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'me_n_b_bg').color
|
||||
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon, 'me_d_b_bg').color
|
||||
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 'me_h_b_bg').color
|
||||
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 'me_p_b_bg').color
|
||||
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 'me_n_b_fg').color
|
||||
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon, 'me_d_b_fg').color
|
||||
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 'me_h_b_fg').color
|
||||
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 'me_p_b_fg').color
|
||||
|
||||
property color backgroundHiddenPartNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_n', icon, 'me_n_b_inv_bg').color
|
||||
property color backgroundHiddenPartDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_d', icon, 'me_d_b_inv_bg').color
|
||||
property color backgroundHiddenPartHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_h', icon, 'me_h_b_inv_bg').color
|
||||
property color backgroundHiddenPartPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_p', icon, 'me_p_b_inv_bg').color
|
||||
property color foregroundHiddenPartNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_n', icon, 'me_h_b_inv_fg').color
|
||||
property color foregroundHiddenPartDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_d', icon, 'me_d_b_inv_fg').color
|
||||
property color foregroundHiddenPartHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_h', icon, 'me_h_b_inv_fg').color
|
||||
property color foregroundHiddenPartPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_p', icon, 'me_p_b_inv_fg').color
|
||||
property string icon_0 : 'call_quality_0_custom'
|
||||
property string icon_1 : 'call_quality_1_custom'
|
||||
property string icon_2 : 'call_quality_2_custom'
|
||||
property string icon_3 : 'call_quality_3_custom'
|
||||
property string icon_4 : 'call_quality_4_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon_2, 'me_n_b_bg').color
|
||||
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon_2, 'me_d_b_bg').color
|
||||
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon_2, 'me_h_b_bg').color
|
||||
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon_2, 'me_p_b_bg').color
|
||||
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon_2, 'me_n_b_fg').color
|
||||
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon_2, 'me_d_b_fg').color
|
||||
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon_2, 'me_h_b_fg').color
|
||||
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon_2, 'me_p_b_fg').color
|
||||
}
|
||||
property QtObject telKeyad: QtObject {
|
||||
property int iconSize: 16
|
||||
property int iconSize: 30
|
||||
property string name : 'telKeypad'
|
||||
property string icon : 'dialpad_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'me_n_b_bg').color
|
||||
|
|
|
|||
|
|
@ -102,29 +102,24 @@ QtObject {
|
|||
// Button colors
|
||||
property QtObject buttons: QtObject {
|
||||
property QtObject callQuality: QtObject {
|
||||
property int iconSize: 16
|
||||
property int iconSize: 30
|
||||
property string name : 'quality'
|
||||
property string icon : 'call_quality_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'me_n_b_bg').color
|
||||
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon, 'me_d_b_bg').color
|
||||
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 'me_h_b_bg').color
|
||||
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 'me_p_b_bg').color
|
||||
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 'me_n_b_fg').color
|
||||
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon, 'me_d_b_fg').color
|
||||
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 'me_h_b_fg').color
|
||||
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 'me_p_b_fg').color
|
||||
|
||||
property color backgroundHiddenPartNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_n', icon, 'me_n_b_inv_bg').color
|
||||
property color backgroundHiddenPartDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_d', icon, 'me_d_b_inv_bg').color
|
||||
property color backgroundHiddenPartHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_h', icon, 'me_h_b_inv_bg').color
|
||||
property color backgroundHiddenPartPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_p', icon, 'me_p_b_inv_bg').color
|
||||
property color foregroundHiddenPartNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_n', icon, 'me_h_b_inv_fg').color
|
||||
property color foregroundHiddenPartDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_d', icon, 'me_d_b_inv_fg').color
|
||||
property color foregroundHiddenPartHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_h', icon, 'me_h_b_inv_fg').color
|
||||
property color foregroundHiddenPartPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_p', icon, 'me_p_b_inv_fg').color
|
||||
property string icon_0 : 'call_quality_0_custom'
|
||||
property string icon_1 : 'call_quality_1_custom'
|
||||
property string icon_2 : 'call_quality_2_custom'
|
||||
property string icon_3 : 'call_quality_3_custom'
|
||||
property string icon_4 : 'call_quality_4_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon_2, 'me_n_b_bg').color
|
||||
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon_2, 'me_d_b_bg').color
|
||||
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon_2, 'me_h_b_bg').color
|
||||
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon_2, 'me_p_b_bg').color
|
||||
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon_2, 'me_n_b_fg').color
|
||||
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon_2, 'me_d_b_fg').color
|
||||
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon_2, 'me_h_b_fg').color
|
||||
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon_2, 'me_p_b_fg').color
|
||||
}
|
||||
property QtObject telKeyad: QtObject {
|
||||
property int iconSize: 16
|
||||
property int iconSize: 30
|
||||
property string name : 'telKeypad'
|
||||
property string icon : 'dialpad_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'me_n_b_bg').color
|
||||
|
|
|
|||
|
|
@ -386,26 +386,23 @@ QtObject {
|
|||
property color foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_c', icon, 'me_c_b_inv_fg').color
|
||||
}
|
||||
property QtObject callQuality: QtObject {
|
||||
property int iconSize: 20
|
||||
property int iconSize: 40
|
||||
property string name : 'quality'
|
||||
property string icon : 'call_quality_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon, 'me_n_b_bg').color
|
||||
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon, 'me_d_b_bg').color
|
||||
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon, 'me_h_b_bg').color
|
||||
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon, 'me_p_b_bg').color
|
||||
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon, 'me_n_b_fg').color
|
||||
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon, 'me_d_b_fg').color
|
||||
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon, 'me_h_b_fg').color
|
||||
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon, 'me_p_b_fg').color
|
||||
|
||||
property color backgroundHiddenPartNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_n', icon, 'me_n_b_inv_bg').color
|
||||
property color backgroundHiddenPartDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_d', icon, 'me_d_b_inv_bg').color
|
||||
property color backgroundHiddenPartHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_h', icon, 'me_h_b_inv_bg').color
|
||||
property color backgroundHiddenPartPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_bg_p', icon, 'me_p_b_inv_bg').color
|
||||
property color foregroundHiddenPartNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_n', icon, 'me_n_b_inv_fg').color
|
||||
property color foregroundHiddenPartDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_d', icon, 'me_d_b_inv_fg').color
|
||||
property color foregroundHiddenPartHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_h', icon, 'me_h_b_inv_fg').color
|
||||
property color foregroundHiddenPartPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_hidden_fg_p', icon, 'me_p_b_inv_fg').color
|
||||
property string icon_0 : 'call_quality_0_custom'
|
||||
property string icon_1 : 'call_quality_1_custom'
|
||||
property string icon_2 : 'call_quality_2_custom'
|
||||
property string icon_3 : 'call_quality_3_custom'
|
||||
property string icon_4 : 'call_quality_4_custom'
|
||||
property color backgroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_n', icon_2, 'me_n_b_inv_bg').color
|
||||
property color backgroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_d', icon_2, 'me_d_b_inv_bg').color
|
||||
property color backgroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_h', icon_2, 'me_h_b_inv_bg').color
|
||||
property color backgroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_p', icon_2, 'me_p_b_inv_bg').color
|
||||
property color backgroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_bg_c', icon_2, 'me_c_b_inv_bg').color
|
||||
property color foregroundNormalColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_n', icon_2, 'me_n_b_inv_fg').color
|
||||
property color foregroundDisabledColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_d', icon_2, 'me_d_b_inv_fg').color
|
||||
property color foregroundHoveredColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_h', icon_2, 'me_h_b_inv_fg').color
|
||||
property color foregroundPressedColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_p', icon_2, 'me_p_b_inv_fg').color
|
||||
property color foregroundUpdatingColor : ColorsList.addImageColor(sectionName+'_'+name+'_fg_c', icon_2, 'me_c_b_inv_fg').color
|
||||
}
|
||||
property QtObject options: QtObject {
|
||||
property int iconSize: 40
|
||||
|
|
|
|||