Upgraded Start Menu, tweaked other plasmoids

This commit is contained in:
wackyideas 2021-09-29 19:10:18 +02:00
parent 9af527194d
commit e536ac8d58
94 changed files with 11506 additions and 511 deletions

View file

@ -23,7 +23,7 @@
fill:#777777; fill:#777777;
opacity:1; opacity:1;
} }
#path5114 { fill-opacity:0.21; fill:#07b0ff; fill-rule:nonzero; opacity:1; stroke:none; } #path5114 { fill-opacity:0.11; fill:#198afc; fill-rule:nonzero; opacity:1; stroke:none; }
</style> </style>
<sodipodi:namedview <sodipodi:namedview
id="base" id="base"

Before

Width:  |  Height:  |  Size: 208 KiB

After

Width:  |  Height:  |  Size: 208 KiB

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 59 KiB

View file

@ -0,0 +1,559 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
width="70"
height="256"
id="svg3869"
version="1.1"
viewBox="0 0 70 256.00001"
sodipodi:docname="input.svg"
inkscape:version="1.1 (c4e8f9ed74, 2021-05-24)"
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/">
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1600"
inkscape:window-height="832"
id="namedview49"
showgrid="true"
inkscape:zoom="25.51399"
inkscape:cx="9.2302301"
inkscape:cy="20.439766"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg3869"
inkscape:pagecheckerboard="1">
<inkscape:grid
type="xygrid"
id="grid874" />
</sodipodi:namedview>
<metadata
id="metadata25">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs3871">
<style
type="text/css"
id="current-color-scheme">
.ColorScheme-Text {
color:#31363b;
}
.ColorScheme-Background {
color:#eff0f1;
}
.ColorScheme-Highlight {
color:#3daee9;
}
.ColorScheme-ViewText {
color:#31363b;
}
.ColorScheme-ViewBackground {
color:#fcfcfc;
}
.ColorScheme-ViewHover {
color:#93cee9;
}
.ColorScheme-ViewFocus{
color:#3daee9;
}
.ColorScheme-ButtonText {
color:#31363b;
}
.ColorScheme-ButtonBackground {
color:#eff0f1;
}
.ColorScheme-ButtonHover {
color:#93cee9;
}
.ColorScheme-ButtonFocus{
color:#3daee9;
}
</style>
</defs>
<g
transform="translate(-310,-300.36219)"
id="22-22-input-mouse-battery">
<rect
style="opacity:1;fill:none"
width="22"
height="22"
x="326"
y="534.36218"
ry="0"
id="rect8" />
<path
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none"
d="M 13.5,3 C 10.453,3 8,5.676 8,9 v 4 c 0,3.324 2.453,6 5.5,6 3.047,0 5.5,-2.676 5.5,-6 V 9 C 19,5.676 16.547,3 13.5,3 Z m 0,1 C 15.993,4 18,6.007 18,8.5 v 5 C 18,15.993 15.993,18 13.5,18 11.007,18 9,15.993 9,13.5 v -5 C 9,6.007 11.007,4 13.5,4 Z m 0,2 C 13.223,6 13,6.223 13,6.5 v 2 C 13,8.777 13.223,9 13.5,9 13.777,9 14,8.777 14,8.5 v -2 C 14,6.223 13.777,6 13.5,6 Z"
transform="translate(326,534.3622)"
id="path10"
inkscape:connector-curvature="0" />
<path
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 331,537.3622 -2,5 h 2 v 3 l 2,-5 h -2 z"
id="path12"
inkscape:connector-curvature="0" />
</g>
<g
transform="translate(-332,-396.36218)"
id="22-22-input-keyboard-battery">
<rect
style="opacity:1;fill:none"
width="22"
height="22"
x="348"
y="534.36218"
ry="0"
id="rect15" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="m 20,141 v 14 l 7,2 7,-2 v -5 h -1 v 2 H 21 v -10 h 8 v -1 z m 12,0 -2,5 h 2 v 3 l 2,-5 H 32 Z M 26.4375,144 24,150 h 1.074219 l 0.40625,-1 h 3.039062 l 0.40625,1 H 30 l -2.439453,-6 H 27.023438 L 27,144.00977 26.976562,144 Z M 27,145.25781 28.113281,148 H 25.886719 Z M 21,153 h 12 v 1 H 21 Z"
transform="translate(332,396.36218)"
id="path17"
sodipodi:nodetypes="cccccccccccccccccccccccccccccccccccccccc" />
</g>
<g
transform="translate(-354,-428.36218)"
id="22-22-input-keyboard-brightness">
<rect
ry="0"
y="534.36218"
x="370"
height="22"
width="22"
style="opacity:1;fill:none"
id="rect20" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="M 20 109 L 20 123 L 27 125 L 34 123 L 34 114 L 33 114 L 33 120 L 21 120 L 21 110 L 29 110 L 29 109 L 20 109 z M 32 109 C 30.89543 109 30 109.89543 30 111 C 30 112.10457 30.89543 113 32 113 C 33.10457 113 34 112.10457 34 111 C 34 109.89543 33.10457 109 32 109 z M 32 110 L 32 112 C 31.44772 112 31 111.55229 31 111 C 31 110.44772 31.44772 110 32 110 z M 26.4375 112 L 24 118 L 25.074219 118 L 25.480469 117 L 28.519531 117 L 28.925781 118 L 30 118 L 27.560547 112 L 27.023438 112 L 27 112.00977 L 26.976562 112 L 26.4375 112 z M 27 113.25781 L 28.113281 116 L 25.886719 116 L 27 113.25781 z M 21 121 L 33 121 L 33 122 L 21 122 L 21 121 z "
transform="translate(354,428.36218)"
id="path4344" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-269.09091,-279.62704)"
id="16-16-input-keyboard-brightness">
<rect
ry="0"
y="534.36218"
x="370"
height="22"
width="22"
style="opacity:1;fill:none"
id="rect1710" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="m 18.75,108.75 v 15.125 L 27,125 l 8.25,-1.125 v -11 h -1.375 v 6.875 h -13.75 v -9.625 h 9.625 v -1.375 z m 13.187501,0.5625 c -1.10457,0 -2,0.89543 -2,2 0,1.10457 0.89543,2 2,2 1.10457,0 2,-0.89543 2,-2 0,-1.10457 -0.89543,-2 -2,-2 z m 0,1 v 2 c -0.55228,0 -1,-0.44771 -1,-1 0,-0.55228 0.44772,-1 1,-1 z m -5.762501,1.875 -1.925,6.1875 h 1.375 L 25.96875,117 h 2.0625 l 0.34375,1.375 h 1.375 l -1.925,-6.1875 h -0.801562 -0.02344 -0.02344 z m 0.825,1.1875 0.825,2.75 h -1.65 z m -6.875,7.75 h 13.75 v 1.375 h -13.75 z"
transform="translate(354,428.36218)"
id="path1712"
sodipodi:nodetypes="ccccccccccccsssssccscccccccccccccccccccccc" />
</g>
<g
id="input-keyboard-battery"
transform="translate(-332,-428.36237)">
<rect
style="opacity:1;fill:none"
id="rect4378"
width="32"
height="32"
x="370"
y="556.36237"
ry="0" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="M 44 132 L 44 152 L 54 156 L 64 152 L 64 141 L 63 141 L 63 149 L 45 149 L 45 133 L 59 133 L 59 132 L 44 132 z M 62 132 L 60 137 L 62 137 L 62 140 L 64 135 L 62 135 L 62 132 z M 53.40625 136 L 49 146 L 50.300781 146 L 51.623047 143 L 56.345703 143 L 57.695312 146 L 59 146 L 54.5 136 L 53.40625 136 z M 53.958984 137.69531 L 55.896484 142 L 52.0625 142 L 53.958984 137.69531 z M 45 150 L 63 150 L 63 151 L 45 151 L 45 150 z "
transform="translate(332,428.36237)"
id="rect4223" />
</g>
<g
id="input-keyboard-brightness"
transform="translate(-364,-460.36237)">
<rect
ry="0"
y="556.36237"
x="402"
height="32"
width="32"
id="rect4266"
style="opacity:1;fill:none" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="M 44 100 L 44 120 L 54 124 L 64 120 L 64 110 L 63 110 L 63 117 L 45 117 L 45 101 L 57 101 L 57 100 L 44 100 z M 53.40625 104 L 49 114 L 50.300781 114 L 51.623047 111 L 56.345703 111 L 57.695312 114 L 59 114 L 54.5 104 L 53.40625 104 z M 53.958984 105.69531 L 55.896484 110 L 52.0625 110 L 53.958984 105.69531 z M 45 118 L 63 118 L 63 119 L 45 119 L 45 118 z "
transform="translate(364,460.36237)"
id="path4270" />
<path
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 100,25 c -0.277,0 -0.5,0.223 -0.5,0.5 v 1 c 0,0.277 0.223,0.5 0.5,0.5 0.277,0 0.5,-0.223 0.5,-0.5 v -1 c 0,-0.277 -0.223,-0.5 -0.5,-0.5 z m -3.181641,1.318359 c -0.127809,0 -0.255581,0.04855 -0.353515,0.146485 -0.195869,0.195868 -0.195869,0.511162 0,0.707031 l 0.707031,0.707031 c 0.195869,0.195869 0.511163,0.195869 0.707031,0 0.195869,-0.195868 0.195869,-0.511162 0,-0.707031 l -0.707031,-0.707031 c -0.09793,-0.09793 -0.225706,-0.146485 -0.353516,-0.146485 z m 6.363281,0 c -0.12781,0 -0.25558,0.04855 -0.35352,0.146485 l -0.70703,0.707031 c -0.19586,0.195869 -0.19586,0.511163 0,0.707031 0.19587,0.195869 0.51117,0.195869 0.70703,0 l 0.70704,-0.707031 c 0.19586,-0.195869 0.19586,-0.511163 0,-0.707031 -0.0979,-0.09793 -0.22571,-0.146485 -0.35352,-0.146485 z M 100,28 c -1.104569,0 -2,0.895431 -2,2 0,1.104569 0.895431,2 2,2 1.10457,0 2,-0.895431 2,-2 0,-1.104569 -0.89543,-2 -2,-2 z m 0,1 v 2 c -0.552285,0 -1,-0.447715 -1,-1 0,-0.552285 0.447715,-1 1,-1 z m -4.5,0.5 c -0.277,0 -0.5,0.223 -0.5,0.5 0,0.277 0.223,0.5 0.5,0.5 h 1 c 0.277,0 0.5,-0.223 0.5,-0.5 0,-0.277 -0.223,-0.5 -0.5,-0.5 z m 8,0 c -0.277,0 -0.5,0.223 -0.5,0.5 0,0.277 0.223,0.5 0.5,0.5 h 1 c 0.277,0 0.5,-0.223 0.5,-0.5 0,-0.277 -0.223,-0.5 -0.5,-0.5 z m -5.974609,2.474609 c -0.12781,0 -0.255582,0.04855 -0.353516,0.146485 l -0.707031,0.707031 c -0.195869,0.195869 -0.195869,0.511163 0,0.707031 0.195868,0.195869 0.511162,0.195869 0.707031,0 l 0.707031,-0.707031 c 0.195869,-0.195869 0.195869,-0.511163 0,-0.707031 -0.09793,-0.09793 -0.225706,-0.146485 -0.353515,-0.146485 z m 4.949219,0 c -0.12781,0 -0.25558,0.04855 -0.35352,0.146485 -0.19586,0.195868 -0.19586,0.511162 0,0.707031 l 0.70703,0.707031 c 0.19587,0.195869 0.51117,0.195869 0.70704,0 0.19586,-0.195868 0.19586,-0.511162 0,-0.707031 l -0.70704,-0.707031 c -0.0979,-0.09793 -0.2257,-0.146485 -0.35351,-0.146485 z M 100,33 c -0.277,0 -0.5,0.223 -0.5,0.5 v 1 c 0,0.277 0.223,0.5 0.5,0.5 0.277,0 0.5,-0.223 0.5,-0.5 v -1 c 0,-0.277 -0.223,-0.5 -0.5,-0.5 z"
transform="translate(326,534.3622)"
id="path4274"
inkscape:connector-curvature="0" />
</g>
<g
id="input-mouse-battery"
transform="translate(-332,-332.36238)">
<path
id="path26"
class="ColorScheme-Text"
d="m 386,560.36238 a 8,9 0 0 0 -8,9 v 6 a 8,9 0 0 0 8,9 8,9 0 0 0 8,-9 v -6 a 8,9 0 0 0 -8,-9 z m 0,1 a 7,8 0 0 1 7,8 v 6 a 7,8 0 0 1 -7,8 7,8 0 0 1 -7,-8 v -6 a 7,8 0 0 1 7,-8 z m 0,3 a 1,1 0 0 0 -1,1 v 3 a 1,1 0 0 0 1,1 1,1 0 0 0 1,-1 v -3 a 1,1 0 0 0 -1,-1 z m 0,8 -2,5 h 2 v 3 l 2,-5 h -2 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0" />
<rect
style="opacity:1;fill:none"
id="rect4378-6"
width="32"
height="32"
x="370"
y="556.36237"
ry="0" />
</g>
<g
id="16-16-input-mouse-battery"
transform="translate(-303,-297.36218)">
<path
id="path4196"
class="ColorScheme-Text"
transform="translate(319,457.36217)"
d="m -8,82 a 4,4 0 0 0 -4,4 v 4 a 4,4 0 0 0 4,4 4,4 0 0 0 4,-4 v -4 a 4,4 0 0 0 -4,-4 z m 0,1 a 3,3 0 0 1 3,3 v 4 a 3,3 0 0 1 -3,3 3,3 0 0 1 -3,-3 v -4 a 3,3 0 0 1 3,-3 z m 0,1 -2,5 h 2 v 3 l 2,-5 h -2 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0" />
<rect
style="opacity:1;fill:none"
id="rect4442"
width="16"
height="16"
x="303"
y="537.36218" />
</g>
<g
id="22-22-input-keyboard"
transform="translate(16,10.000004)">
<rect
y="0"
x="0"
height="22"
width="22"
id="rect4147"
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
id="path6"
class="ColorScheme-Text"
transform="translate(0,-1030.3622)"
d="m 13,1033.3622 v 1 1 c 0,0.554 -0.446,1 -1,1 -1.108,0 -2,0.892 -2,2 H 2 v 11 h 18 v -11 h -9 c 0,-0.554 0.446,-1 1,-1 1.108,0 2,-0.892 2,-2 v -1 -1 z m -10,6 h 7 1 8 v 1 H 3 Z m 0,2 h 16 v 7 H 15 7 3 Z m 1,1 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m -12,2 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m -12,2 v 1 h 2 v -1 z m 3,0 v 1 h 8 v -1 z m 9,0 v 1 h 2 v -1 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0" />
</g>
<g
transform="matrix(1.4545455,0,0,1.4545455,38,-5.6171875e-6)"
id="input-keyboard">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect4196"
width="22"
height="22"
x="0"
y="0" />
<path
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 47,-28 c 0,0.839286 -0.09344,1.439871 -0.248047,1.845703 -0.154602,0.405832 -0.347892,0.621232 -0.628906,0.785156 C 45.561021,-25.041291 44.5,-25 43,-25 c -1.5,0 -2.935631,-0.0273 -4.099609,0.554688 -0.58199,0.290994 -1.080576,0.752947 -1.408203,1.408203 C 37.21931,-22.491354 37.067093,-21.815455 37.021484,-21 H 25 V -4 H 25.5 51 V -21 H 38.021484 c 0.04382,-0.685454 0.170932,-1.207097 0.361328,-1.587891 0.234873,-0.469744 0.548787,-0.757791 0.966797,-0.966797 C 40.185631,-23.972698 41.5,-24 43,-24 c 1.5,0 2.688979,0.04129 3.626953,-0.505859 0.468986,-0.273576 0.838197,-0.714426 1.058594,-1.292969 C 47.905944,-26.377371 48,-27.089286 48,-28 Z m -21,8 h 24 v 2 H 26 Z m 0,3 H 50 V -5 H 26 Z m 1,2 v 2 h 1 v -2 z m 2,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m -20,3 v 2 h 3 v -2 z m 4,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 3 v -2 z m -19,3 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 10 v -2 z m 11,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z"
transform="matrix(0.68749998,0,0,0.68749998,-15.124999,22.000003)"
id="path4285"
inkscape:connector-curvature="0" />
</g>
<g
id="22-22-input-keyboard-virtual-on"
transform="translate(16,42.000007)">
<path
id="path6-6"
class="ColorScheme-Text"
transform="translate(0,-1030.3622)"
d="m 2,1038.3622 v 11 h 18 v -11 z m 1,1 h 7 1 8 v 1 H 3 Z m 0,2 h 16 v 7 H 15 7 3 Z m 1,1 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m -12,2 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m -12,2 v 1 h 2 v -1 z m 3,0 v 1 h 8 v -1 z m 9,0 v 1 h 2 v -1 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0" />
<path
id="path8"
d="M 4.5,2 A 2.4999997,2.4999855 0 0 0 2,4.5 2.4999997,2.4999855 0 0 0 4.5,7 2.4999997,2.4999855 0 0 0 7,4.5 2.4999997,2.4999855 0 0 0 4.5,2 Z"
style="fill:#11d116;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0" />
<rect
y="0"
x="0"
height="22"
width="22"
id="rect4140"
style="fill:none;fill-opacity:1;stroke:none;stroke-linejoin:bevel" />
</g>
<g
transform="matrix(1.4545455,0,0,1.4545455,38,32.000002)"
id="input-keyboard-virtual-on">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect4192"
width="22"
height="22"
x="0"
y="0" />
<path
transform="matrix(0.68749998,0,0,0.68749998,-15.124999,22.000003)"
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none"
d="M 25,-21 V -4 H 25.5 51 v -17 z m 1,1 h 24 v 2 H 26 Z m 0,3 H 50 V -5 H 26 Z m 1,2 v 2 h 1 v -2 z m 2,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m -20,3 v 2 h 3 v -2 z m 4,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 3 v -2 z m -19,3 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 10 v -2 z m 11,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z"
id="path4194"
inkscape:connector-curvature="0" />
<path
id="path8-9"
d="m 3.7812499,2.7500013 a 1.7187497,1.71874 0 0 0 -1.71875,1.7187499 1.7187497,1.71874 0 0 0 1.71875,1.71875 1.7187497,1.71874 0 0 0 1.71875,-1.71875 1.7187497,1.71874 0 0 0 -1.71875,-1.7187499 z"
style="fill:#11d116;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0" />
</g>
<g
transform="translate(16,74.000007)"
id="22-22-input-keyboard-virtual-off">
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 2,1038.3622 v 11 h 18 v -11 z m 1,1 h 7 1 8 v 1 H 3 Z m 0,2 h 16 v 7 H 15 7 3 Z m 1,1 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m -12,2 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m 3,0 v 1 h 2 v -1 z m -12,2 v 1 h 2 v -1 z m 3,0 v 1 h 8 v -1 z m 9,0 v 1 h 2 v -1 z"
transform="translate(0,-1030.3622)"
class="ColorScheme-Text"
id="path4170"
inkscape:connector-curvature="0" />
<rect
style="fill:none;fill-opacity:1;stroke:none;stroke-linejoin:bevel"
id="rect4172"
width="22"
height="22"
x="0"
y="0" />
</g>
<g
transform="matrix(1.4545455,0,0,1.4545455,38,64.000007)"
id="input-keyboard-virtual-off">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect4176"
width="22"
height="22"
x="0"
y="0" />
<path
transform="matrix(0.68749998,0,0,0.68749998,-15.124999,22.000003)"
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none"
d="M 25,-21 V -4 H 25.5 51 v -17 z m 1,1 h 24 v 2 H 26 Z m 0,3 H 50 V -5 H 26 Z m 1,2 v 2 h 1 v -2 z m 2,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m -20,3 v 2 h 3 v -2 z m 4,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 3 v -2 z m -19,3 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z m 3,0 v 2 h 10 v -2 z m 11,0 v 2 h 2 v -2 z m 3,0 v 2 h 2 v -2 z"
id="path4178"
inkscape:connector-curvature="0" />
</g>
<g
id="22-22-input-caps-on"
transform="translate(59.241379,23.258607)">
<rect
y="146.74138"
x="-43.241379"
height="22"
width="22"
id="rect964"
style="opacity:0.001;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.49065962;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path870"
d="m -39.241379,149.74138 v 14 l 7,2 7,-2 v -14 z m 1,1 h 12 v 10 h -12 z m 5.4375,2 -2.4375,6 h 1.07422 l 0.40625,-1 h 3.03906 l 0.40625,1 h 1.07422 l -2.43945,-6 h -0.53711 l -0.0234,0.01 -0.0234,-0.01 z m 0.5625,1.25781 1.11328,2.74219 h -2.22656 z m -6,7.74219 h 12 v 1 h -12 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text" />
</g>
<g
id="22-22-input-num-on"
transform="translate(-8,84.999986)">
<rect
style="opacity:0.001;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.49065962;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect972"
width="22"
height="22"
x="24"
y="117" />
<path
inkscape:connector-curvature="0"
id="path879"
d="m 28,120 v 14 l 7,2 7,-2 v -14 z m 1,1 h 12 v 10 H 29 Z m 6,2 v 1 h -1 v 1 h 1 v 3 h -1 v 1 h 1 1 1 v -1 h -1 v -5 z m -6,9 h 12 v 1 H 29 Z"
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text" />
</g>
<g
id="16-16-input-num-on"
transform="matrix(0.72727273,0,0,0.72727273,-17.454546,119.90909)">
<rect
style="opacity:0.00100002;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.49066;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect4953"
width="22"
height="22"
x="24"
y="117" />
<path
inkscape:connector-curvature="0"
id="path4955"
d="m 26.750001,119.75 v 15.125 l 8.25,1.375 8.25,-1.375 V 119.75 Z m 1.375,1.375 h 13.75 v 9.625 h -13.75 z m 6.875,1.375 v 1.375 h -1.375 v 1.375 h 1.375 L 35,128 h -1.374999 v 1.375 h 1.375 1.375 1.375 V 128 h -1.375 v -5.5 z m -6.875,9.625 h 13.75 v 1.375 h -13.75 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccc" />
</g>
<g
id="input-caps-on"
transform="translate(19,48.000003)">
<rect
y="112"
x="19"
height="32"
width="32"
id="rect978"
style="opacity:0.001;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.7136867;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path880"
d="m 25,116 v 20 l 10,4 10,-4 v -19 -1 h -1 z m 1,1 h 18 v 16 H 26 Z m 8.40625,3 L 30,130 h 1.30078 l 1.32227,-3 h 4.72265 l 1.34961,3 H 40 l -4.5,-10 z m 0.55273,1.69531 L 36.89648,126 H 33.0625 Z M 26,134 h 18 v 1 H 26 Z"
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text" />
</g>
<g
id="input-num-on"
transform="translate(19,79.999986)">
<rect
style="opacity:0.001;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.7136867;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
id="rect984"
width="32"
height="32"
x="19"
y="112" />
<path
inkscape:connector-curvature="0"
id="path896"
d="m 25,116 v 20 l 10,4 10,-4 v -19 -1 h -1 z m 1,1 h 18 v 16 H 26 Z m 9,3 v 2 h -2 v 1 h 2 v 6 h -2 v 1 h 5 v -1 h -2 v -9 z m -9,14 h 18 v 1 H 26 Z"
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-1,15)"
id="16-16-input-keyboard">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect829"
width="22"
height="22"
x="0"
y="0" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 12.375,1033.1122 v 1.375 0.875 c 0,0.554 -0.821,0.5 -1.375,0.5 -1.375,0 -1.375,1.642 -1.375,2.75 h -8.25 v 11 h 19.25 v -11 H 11 v -1.375 c 1.375,0 2.706545,-0.6152 2.720767,-1.3139 l 0.02923,-1.4361 v -1.375 z m -9.625,6.875 H 9.625 11 19.25 v 0 z m 0,0 h 16.5 v 8.25 H 15.125 6.875 2.75 Z m 1.375,1.375 v 1.375 h 2.75 v -1.375 z m 4.125,0 v 1.375 H 11 v -1.375 z m 4.125,0 v 1.375 h 2.75 v -1.375 z m 5.5,0 H 16.5 v 1.375 h 1.375 z m -13.75,2.75 v 1.375 H 5.5 v -1.375 z m 12.375,0 v 1.375 h 1.375 v -1.375 z m -9.625,1.375 v 1.375 h 8.25 v -1.375 z"
transform="translate(0,-1030.3622)"
class="ColorScheme-Text"
id="path831"
sodipodi:nodetypes="ccsscccccccsccccccccccccccccccccccccccccccccccccccccccccccccccc" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-1,46)"
id="16-16-input-keyboard-virtual-on">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect829-6"
width="22"
height="22"
x="0"
y="0" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 9.625,1038.6122 c 0,0 0.1431659,-1.455 0,0 h -8.25 v 11 h 19.25 v -11 H 11 c 0,0 0,3.4828 0,0 z m -6.875,1.375 H 9.625 11 19.25 v 0 z m 0,0 h 16.5 v 8.25 H 15.125 6.875 2.75 Z m 1.375,1.375 v 1.375 h 2.75 v -1.375 z m 4.125,0 v 1.375 H 11 v -1.375 z m 4.125,0 v 1.375 h 2.75 v -1.375 z m 5.5,0 H 16.5 v 1.375 h 1.375 z m -13.75,2.75 v 1.375 H 5.5 v -1.375 z m 12.375,0 v 1.375 h 1.375 v -1.375 z m -9.625,1.375 v 1.375 h 8.25 v -1.375 z"
transform="translate(0,-1030.3622)"
class="ColorScheme-Text"
id="path831-7"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
<path
id="path8-5"
d="m 4.125,1.375 a 2.7499996,2.749984 0 0 0 -2.75,2.75 2.7499996,2.749984 0 0 0 2.75,2.75 2.7499996,2.749984 0 0 0 2.75,-2.75 2.7499996,2.749984 0 0 0 -2.75,-2.75 z"
style="fill:#11d116;fill-opacity:1;stroke:none;stroke-width:1.1"
inkscape:connector-curvature="0" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-4.5e-8,79)"
id="16-16-input-keyboard-virtual-off">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect1603"
width="22"
height="22"
x="0"
y="0" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 9.625,1038.6122 c 0,0 0.1431659,-1.455 0,0 h -8.25 v 11 h 19.25 v -11 H 11 c 0,0 0,3.4828 0,0 z m -6.875,1.375 H 9.625 11 19.25 v 0 z m 0,0 h 16.5 v 8.25 H 15.125 6.875 2.75 Z m 1.375,1.375 v 1.375 h 2.75 v -1.375 z m 4.125,0 v 1.375 H 11 v -1.375 z m 4.125,0 v 1.375 h 2.75 v -1.375 z m 5.5,0 H 16.5 v 1.375 h 1.375 z m -13.75,2.75 v 1.375 H 5.5 v -1.375 z m 12.375,0 v 1.375 h 1.375 v -1.375 z m -9.625,1.375 v 1.375 h 8.25 v -1.375 z"
transform="translate(0,-1030.3622)"
class="ColorScheme-Text"
id="path1605"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-268.09091,-247.62704)"
id="16-16-input-keyboard-battery">
<rect
ry="0"
y="534.36218"
x="370"
height="22"
width="22"
style="opacity:1;fill:none"
id="rect1710-6" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="m 18.75,108.75 v 15.125 L 27,125 l 8.25,-1.125 v -11 h -1.375 v 6.875 h -13.75 v -9.625 h 9.625 v -1.375 z m 7.425,3.4375 -1.925,6.1875 h 1.375 L 25.96875,117 h 2.0625 l 0.34375,1.375 h 1.375 l -1.925,-6.1875 h -0.801562 -0.02344 -0.02344 z m 0.825,1.1875 0.825,2.75 h -1.65 z m -6.875,7.75 h 13.75 v 1.375 h -13.75 z"
transform="translate(354,428.36218)"
id="path1712-2"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccc" />
<path
d="m 385.8125,535.73718 -2.0625,4.125 h 2.0625 l 0,2.75 2.0625,-4.125 h -2.0625 z"
style="color:#31363b;fill:currentColor;fill-opacity:1;stroke:none;stroke-width:0.941394"
id="path4238"
sodipodi:nodetypes="ccccccc" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-268.09091,-215.62704)"
id="16-16-input-caps-on">
<rect
ry="0"
y="534.36218"
x="370"
height="22"
width="22"
style="opacity:1;fill:none"
id="rect1710-6-1" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
class="ColorScheme-Text"
d="m 18.75,108.75 v 15.125 L 27,125 l 8.25,-1.125 0,-15.125 h -1.375 l 0,11 h -13.75 v -9.625 l 13.75,0 v -1.375 z m 7.425,3.4375 -1.925,6.1875 h 1.375 L 25.96875,117 h 2.0625 l 0.34375,1.375 h 1.375 l -1.925,-6.1875 h -0.801562 -0.02344 -0.02344 z m 0.825,1.1875 0.825,2.75 h -1.65 z m -6.875,7.75 h 13.75 v 1.375 h -13.75 z"
transform="translate(354,428.36218)"
id="path1712-2-2"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccc" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 28 KiB

View file

@ -0,0 +1,149 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
version="1.1"
width="54"
height="32.000011"
id="svg2"
viewBox="0 0 54 32.000011"
sodipodi:docname="keyboard.svg"
inkscape:version="1.1 (c4e8f9ed74, 2021-05-24)"
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/">
<sodipodi:namedview
id="namedview12"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
showgrid="true"
inkscape:zoom="7.3001243"
inkscape:cx="-48.423833"
inkscape:cy="20.205135"
inkscape:window-width="1600"
inkscape:window-height="832"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg2">
<inkscape:grid
type="xygrid"
id="grid939" />
</sodipodi:namedview>
<defs
id="defs4">
<style
type="text/css"
id="current-color-scheme">
.ColorScheme-Text {
color:#31363b;
}
.ColorScheme-Background {
color:#eff0f1;
}
.ColorScheme-Highlight {
color:#3daee9;
}
.ColorScheme-ViewText {
color:#31363b;
}
.ColorScheme-ViewBackground {
color:#fcfcfc;
}
.ColorScheme-ViewHover {
color:#93cee9;
}
.ColorScheme-ViewFocus{
color:#3daee9;
}
.ColorScheme-ButtonText {
color:#31363b;
}
.ColorScheme-ButtonBackground {
color:#eff0f1;
}
.ColorScheme-ButtonHover {
color:#93cee9;
}
.ColorScheme-ButtonFocus{
color:#3daee9;
}
</style>
</defs>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.567;stroke-opacity:0.15;paint-order:stroke fill markers"
id="rect857"
width="129.08826"
height="99.553589"
x="-45.932541"
y="-32.965973" />
<g
transform="translate(0,10.00001)"
id="22-22-keyboard-layout">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect4209"
width="22"
height="22"
x="0"
y="0" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 13,1033.3622 0,1 0,1 c 0,0.554 -0.446,1 -1,1 -1.108,0 -2,0.892 -2,2 l -8,0 0,11 18,0 0,-11 -9,0 c 0,-0.554 0.446,-1 1,-1 1.108,0 2,-0.892 2,-2 l 0,-1 0,-1 -1,0 z m -10,6 7,0 1,0 8,0 0,1 -16,0 0,-1 z m 0,2 16,0 0,7 -4,0 -8,0 -4,0 0,-7 z m 1,1 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m -12,2 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 2,0 0,-1 -2,0 z m -12,2 0,1 2,0 0,-1 -2,0 z m 3,0 0,1 8,0 0,-1 -8,0 z m 9,0 0,1 2,0 0,-1 -2,0 z"
transform="translate(0,-1030.3622)"
class="ColorScheme-Text"
id="path4211" />
</g>
<g
transform="matrix(0.72727273,0,0,0.72727273,-22,10.00001)"
id="16-16-keyboard-layout">
<rect
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
id="rect829"
width="22"
height="22"
x="0"
y="0" />
<path
style="fill:currentColor;fill-opacity:1;stroke:none"
d="m 12.375,1033.1122 v 1.375 0.875 c 0,0.554 -0.821,0.5 -1.375,0.5 -1.375,0 -1.375,1.642 -1.375,2.75 h -8.25 v 11 h 19.25 v -11 H 11 v -1.375 c 1.375,0 2.706545,-0.6152 2.720767,-1.3139 l 0.02923,-1.4361 v -1.375 z m -9.625,6.875 H 9.625 11 19.25 v 0 z m 0,0 h 16.5 v 8.25 H 15.125 6.875 2.75 Z m 1.375,1.375 v 1.375 h 2.75 v -1.375 z m 4.125,0 v 1.375 H 11 v -1.375 z m 4.125,0 v 1.375 h 2.75 v -1.375 z m 5.5,0 H 16.5 v 1.375 h 1.375 z m -13.75,2.75 v 1.375 H 5.5 v -1.375 z m 12.375,0 v 1.375 h 1.375 v -1.375 z m -9.625,1.375 v 1.375 h 8.25 v -1.375 z"
transform="translate(0,-1030.3622)"
class="ColorScheme-Text"
id="path831"
sodipodi:nodetypes="ccsscccccccsccccccccccccccccccccccccccccccccccccccccccccccccccc" />
</g>
<g
id="keyboard-layout"
transform="matrix(1.4545455,0,0,1.4545455,21.999998,0)">
<rect
y="0"
x="0"
height="22"
width="22"
id="rect4215"
style="fill:none;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
id="path4217"
transform="matrix(0.68749998,0,0,0.68749998,-15.124999,22.000003)"
d="m 47,-28 c 0,0.839286 -0.09344,1.439871 -0.248047,1.845703 -0.154602,0.405832 -0.347892,0.621232 -0.628906,0.785156 C 45.561021,-25.041291 44.5,-25 43,-25 c -1.5,0 -2.935631,-0.0273 -4.099609,0.554688 -0.58199,0.290994 -1.080576,0.752947 -1.408203,1.408203 C 37.21931,-22.491354 37.067093,-21.815455 37.021484,-21 L 25,-21 l 0,17 0.5,0 25.5,0 0,-17 -12.978516,0 c 0.04382,-0.685454 0.170932,-1.207097 0.361328,-1.587891 0.234873,-0.469744 0.548787,-0.757791 0.966797,-0.966797 C 40.185631,-23.972698 41.5,-24 43,-24 c 1.5,0 2.688979,0.04129 3.626953,-0.505859 0.468986,-0.273576 0.838197,-0.714426 1.058594,-1.292969 C 47.905944,-26.377371 48,-27.089286 48,-28 l -1,0 z m -21,8 24,0 0,2 -24,0 0,-2 z m 0,3 24,0 0,12 -24,0 0,-12 z m 1,2 0,2 1,0 0,-2 -1,0 z m 2,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m -20,3 0,2 3,0 0,-2 -3,0 z m 4,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 3,0 0,-2 -3,0 z m -19,3 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 10,0 0,-2 -10,0 z m 11,0 0,2 2,0 0,-2 -2,0 z m 3,0 0,2 2,0 0,-2 -2,0 z"
class="ColorScheme-Text"
style="fill:currentColor;fill-opacity:1;stroke:none" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.4 KiB

View file

@ -0,0 +1,192 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
id="svg4153"
version="1.1"
inkscape:version="1.1 (c4e8f9ed74, 2021-05-24)"
width="32.000004"
height="32"
sodipodi:docname="klipper.svg"
viewBox="0 0 32.000004 32"
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="metadata4159">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<defs
id="defs4157">
<style
type="text/css"
id="current-color-scheme">
.ColorScheme-Text {
color:#31363b;
}
.ColorScheme-Background {
color:#eff0f1;
}
.ColorScheme-Highlight {
color:#3daee9;
}
.ColorScheme-ViewText {
color:#31363b;
}
.ColorScheme-ViewBackground {
color:#fcfcfc;
}
.ColorScheme-ViewHover {
color:#93cee9;
}
.ColorScheme-ViewFocus{
color:#3daee9;
}
.ColorScheme-ButtonText {
color:#31363b;
}
.ColorScheme-ButtonBackground {
color:#eff0f1;
}
.ColorScheme-ButtonHover {
color:#93cee9;
}
.ColorScheme-ButtonFocus{
color:#3daee9;
}
</style>
</defs>
<sodipodi:namedview
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10000"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1600"
inkscape:window-height="832"
id="namedview4155"
inkscape:document-units="px"
showgrid="true"
inkscape:showpageshadow="false"
borderlayer="true"
inkscape:zoom="25.36586"
inkscape:cx="71.769695"
inkscape:cy="15.355285"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg4153"
fit-margin-top="0"
fit-margin-left="0"
fit-margin-right="0"
fit-margin-bottom="0"
inkscape:pagecheckerboard="1">
<inkscape:grid
type="xygrid"
id="grid4140"
originx="5"
originy="5.000001" />
<sodipodi:guide
position="2,30"
orientation="28,0"
id="guide4186" />
<sodipodi:guide
position="2,2"
orientation="0,28.000004"
id="guide4188" />
<sodipodi:guide
position="30.000004,2"
orientation="-28,0"
id="guide4190" />
<sodipodi:guide
position="30.000004,30"
orientation="0,-28.000004"
id="guide4192" />
<sodipodi:guide
position="0,32"
orientation="32,0"
id="guide4194" />
<sodipodi:guide
position="0,0"
orientation="0,32.000004"
id="guide4196" />
<sodipodi:guide
position="32.000004,0"
orientation="-32,0"
id="guide4198" />
<sodipodi:guide
position="32.000004,32"
orientation="0,-32.000004"
id="guide4200" />
</sodipodi:namedview>
<inkscape:clipboard
style="opacity:0.01000001;fill:#00000f;fill-opacity:0;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stroke:none"
min="0,0"
max="22,22" />
<g
id="22-22-klipper"
transform="translate(49,4.999999)">
<path
inkscape:connector-curvature="0"
style="opacity:1;fill:currentColor;fill-opacity:1;stroke:none"
d="M 7,3 7,5 5,5 4,5 4,19 5,19 18,19 18,18 18,5 17,5 15,5 15,3 7,3 Z M 5,6 6,6 6,8 16,8 16,6 17,6 17,18 5,18 5,6 Z m 2,3 0,1 8,0 0,-1 -8,0 z m 0,3 0,1 6,0 0,-1 -6,0 z m 0,3 0,1 3,0 0,-1 -3,0 z"
id="path4146"
class="ColorScheme-Text" />
<rect
style="opacity:1;fill:none;fill-opacity:1;stroke:none;stroke-width:0.1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect4148"
width="22"
height="22"
x="0"
y="0" />
</g>
<g
id="16-16-klipper"
transform="matrix(0.72727273,0,0,0.72727273,75,5.000001)">
<path
inkscape:connector-curvature="0"
style="opacity:1;fill:currentColor;fill-opacity:1;stroke:none"
d="M 6.875,2.75 V 5.5 H 5.5 4.125 V 19.25 H 5.5 17.875 V 17.875 5.5 H 16.5 15.125 V 2.75 Z M 5.5,6.875 H 6.875 V 8.25 h 8.25 V 6.875 H 16.5 v 11 h -11 z m 1.375,2.75 V 11 h 8.25 l 0,-1.375 z m 0,2.75 v 1.375 h 6.875 v -1.375 z m 0,2.75 0,1.375 2.75,0 v -1.375 z"
id="path837"
class="ColorScheme-Text"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccc" />
<rect
style="opacity:1;fill:none;fill-opacity:1;stroke:none;stroke-width:0.1;stroke-linecap:square;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
id="rect839"
width="22"
height="22"
x="0"
y="0" />
</g>
<g
id="klipper">
<path
id="rect4202"
d="m 13.000002,4 0,2 -2,0 0,1 -5.0000001,0 0,21 20.0000001,0 0,-21 -5,0 0,-1 -2,0 0,-2 z m -6.0000001,4 4.0000001,0 0,1.3 10,0 0,-1.3 4,0 0,19 -18.0000001,0 z m 3.0000001,3 0,1 12,0 0,-1 z m 0,3 0,1 12,0 0,-1 z m 0,4 0,1 5,0 0,-1 z m 0,3 0,1 5,0 0,-1 z m 0,3 0,1 11,0 0,-1 z"
style="opacity:1;fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccc"
class="ColorScheme-Text" />
<rect
y="-1e-06"
x="-2.8953547e-08"
height="32"
width="32.000004"
id="rect4230"
style="opacity:1;fill:none;fill-opacity:1;stroke:none" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 6 KiB

View file

@ -0,0 +1,551 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 22 22"
version="1.1"
id="svg175"
sodipodi:docname="media.svg"
inkscape:version="1.1 (c4e8f9ed74, 2021-05-24)"
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="defs179" />
<sodipodi:namedview
id="namedview177"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
showgrid="true"
inkscape:zoom="12.377932"
inkscape:cx="26.054433"
inkscape:cy="25.246544"
inkscape:window-width="1600"
inkscape:window-height="832"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg175">
<inkscape:grid
type="xygrid"
id="grid2569" />
</sodipodi:namedview>
<style
type="text/css"
id="current-color-scheme">
.ColorScheme-Text {
color:#232629;
}
</style>
<rect
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.567;stroke-opacity:0.15;paint-order:stroke fill markers"
id="rect2593"
width="100"
height="95"
x="-15"
y="-20" />
<g
id="media-playback-playing">
<path
d="m0 0h22v22h-22z"
fill="none"
id="path3" />
<g
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="g9">
<path
d="m11 3a8 8 0 0 0 -8 8 8 8 0 0 0 8 8 8 8 0 0 0 8-8 8 8 0 0 0 -8-8zm0 1a7 7 0 0 1 7 7 7 7 0 0 1 -7 7 7 7 0 0 1 -7-7 7 7 0 0 1 7-7z"
id="path5" />
<path
d="m9 14 6-3-6-3z"
id="path7" />
</g>
</g>
<g
id="16-16-media-playback-playing"
transform="matrix(0.72727273,0,0,0.72727273,0,22)">
<path
d="M 0,0 H 22 V 22 H 0 Z"
fill="none"
id="path996" />
<g
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="g1002"
transform="matrix(1.203125,0,0,1.203125,-2.234375,-2.234375)">
<path
d="m 11,3 a 8,8 0 0 0 -8,8 8,8 0 0 0 8,8 8,8 0 0 0 8,-8 8,8 0 0 0 -8,-8 z m 0,1 a 7,7 0 0 1 7,7 7,7 0 0 1 -7,7 7,7 0 0 1 -7,-7 7,7 0 0 1 7,-7 z"
id="path998" />
<path
d="M 8.7142857,14.428571 14.428571,11 8.7142857,7.5714285 Z"
id="path1000"
sodipodi:nodetypes="cccc" />
</g>
</g>
<g
id="media-playback-stopped"
transform="translate(24)">
<path
d="m24 0h22v22h-22z"
fill="none"
id="path12" />
<g
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="g18">
<path
d="m35 3a8 8 0 0 0 -8 8 8 8 0 0 0 8 8 8 8 0 0 0 8-8 8 8 0 0 0 -8-8zm0 1a7 7 0 0 1 7 7 7 7 0 0 1 -7 7 7 7 0 0 1 -7-7 7 7 0 0 1 7-7z"
id="path14" />
<path
d="m32 8h6v6h-6z"
id="path16" />
</g>
</g>
<g
id="16-16-media-playback-stopped"
transform="matrix(0.72727273,0,0,0.72727273,28.545455,22)">
<path
d="M 24,0 H 46 V 22 H 24 Z"
fill="none"
id="path1944" />
<g
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="g1950"
transform="matrix(1.203125,0,0,1.203125,-7.1093757,-2.234375)">
<path
d="m 35,3 a 8,8 0 0 0 -8,8 8,8 0 0 0 8,8 8,8 0 0 0 8,-8 8,8 0 0 0 -8,-8 z m 0,1 a 7,7 0 0 1 7,7 7,7 0 0 1 -7,7 7,7 0 0 1 -7,-7 7,7 0 0 1 7,-7 z"
id="path1946" />
<path
d="m 31.571429,7.5714285 h 6.857142 v 6.8571425 h -6.857142 z"
id="path1948"
sodipodi:nodetypes="ccccc" />
</g>
</g>
<g
id="media-playback-paused"
transform="translate(48)">
<path
d="m-24 0h22v22h-22z"
fill="none"
id="path21" />
<g
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="g29">
<path
d="m-16 8h2v6h-2z"
id="path23" />
<path
d="m-12 8h2v6h-2z"
id="path25" />
<path
d="m-13 3a8 8 0 0 0 -8 8 8 8 0 0 0 8 8 8 8 0 0 0 8-8 8 8 0 0 0 -8-8zm0 1a7 7 0 0 1 7 7 7 7 0 0 1 -7 7 7 7 0 0 1 -7-7 7 7 0 0 1 7-7z"
id="path27" />
</g>
</g>
<g
id="16-16-media-playback-paused"
transform="matrix(0.72727273,0,0,0.72727273,41.454545,22)">
<path
d="M -24,0 H -2 V 22 H -24 Z"
fill="none"
id="path1105" />
<g
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="g1113"
transform="matrix(1.203125,0,0,1.203125,2.6406257,-2.234375)">
<path
d="m -16.428571,7.5714285 h 2.285714 v 6.8571425 h -2.285714 z"
id="path1107"
sodipodi:nodetypes="ccccc" />
<path
d="m -11.857143,7.5714285 h 2.2857144 v 6.8571425 h -2.2857144 z"
id="path1109"
sodipodi:nodetypes="ccccc" />
<path
d="m -13,3 a 8,8 0 0 0 -8,8 8,8 0 0 0 8,8 8,8 0 0 0 8,-8 8,8 0 0 0 -8,-8 z m 0,1 a 7,7 0 0 1 7,7 7,7 0 0 1 -7,7 7,7 0 0 1 -7,-7 7,7 0 0 1 7,-7 z"
id="path1111" />
</g>
</g>
<g
id="16-16-media-playback-pause"
transform="translate(223 -26)">
<path
d="m-117 48h16v16h-16z"
fill="none"
id="path32" />
<path
d="m-115 50v12h4v-12zm8 0v12h4v-12z"
class="ColorScheme-Text"
fill="currentColor"
id="path34" />
</g>
<g
id="22-22-media-playback-pause"
transform="translate(207 -43)">
<path
d="m-101 43h22v22h-22z"
fill="none"
id="path37" />
<path
d="m-98 46v16h6v-16zm10 0v16h6v-16z"
class="ColorScheme-Text"
fill="currentColor"
id="path39" />
</g>
<g
id="32-32-media-playback-pause"
transform="translate(178 -66)">
<path
d="m-72 34h32v32h-32z"
fill="none"
id="path42" />
<path
d="m-68 38v24h9v-24zm15 0v24h9v-24z"
class="ColorScheme-Text"
fill="currentColor"
id="path44" />
</g>
<g
id="32-32-media-playback-start"
transform="translate(24 -68)">
<path
d="m48 36h32v32h-32z"
fill="none"
id="path47" />
<path
d="m52 40v24l24-12z"
class="ColorScheme-Text"
fill="currentColor"
id="path49" />
</g>
<g
id="22-22-media-playback-start"
transform="translate(48 -46)">
<path
d="m24 46h22v22h-22z"
fill="none"
id="path52" />
<path
d="m27 49v16l16-8z"
class="ColorScheme-Text"
fill="currentColor"
id="path54" />
</g>
<g
id="16-16-media-playback-start"
transform="translate(66 -30)">
<path
d="m6 52h16v16h-16z"
fill="none"
id="path57" />
<path
d="m8 54v12l12-6z"
class="ColorScheme-Text"
fill="currentColor"
id="path59" />
</g>
<g
id="16-16-media-playback-stop"
transform="translate(254 -86)">
<path
d="m-114 108h16v16h-16z"
fill="none"
id="path62" />
<path
d="m-112 110h12v12h-12z"
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="path64" />
</g>
<g
id="22-22-media-playback-stop"
transform="translate(236 -102)">
<path
d="m-96 102h22v22h-22z"
fill="none"
id="path67" />
<path
d="m-93 105h16v16h-16z"
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="path69" />
</g>
<g
id="32-32-media-playback-stop"
transform="translate(212 -124)">
<path
d="m-72 92h32v32h-32z"
fill="none"
id="path72" />
<path
d="m-68 96h24v24h-24z"
class="ColorScheme-Text"
fill="currentColor"
fill-rule="evenodd"
id="path74" />
</g>
<g
id="32-32-media-record"
transform="translate(184 -160)">
<path
d="m-10 128h32v32h-32z"
fill="none"
id="path77" />
<path
d="m18 144a12 12 0 0 1 -12 12 12 12 0 0 1 -12-12 12 12 0 0 1 12-12 12 12 0 0 1 12 12z"
fill="#da4453"
id="path79" />
</g>
<g
id="16-16-media-record"
transform="translate(226 -122)">
<path
d="m-52 144h16v16h-16z"
fill="none"
id="path82" />
<path
d="m-38 152a6 6 0 0 1 -6 6 6 6 0 0 1 -6-6 6 6 0 0 1 6-6 6 6 0 0 1 6 6z"
fill="#da4453"
id="path84" />
</g>
<g
id="22-22-media-record"
transform="translate(208 -138)">
<path
d="m-34 138h22v22h-22z"
fill="none"
id="path87" />
<path
d="m-15 149a8 8 0 0 1 -8 8 8 8 0 0 1 -8-8 8 8 0 0 1 8-8 8 8 0 0 1 8 8z"
fill="#da4453"
id="path89" />
</g>
<g
id="16-16-media-eject"
transform="translate(286 -224)">
<path
d="m58 246h16v16h-16z"
fill="none"
id="path92" />
<path
d="m66 248-6 8h12zm-6 10v2h12v-2z"
class="ColorScheme-Text"
fill="currentColor"
id="path94" />
</g>
<g
id="22-22-media-eject"
transform="translate(268 -240)">
<path
d="m76 240h22v22h-22z"
fill="none"
id="path97" />
<path
d="m87 243-8 11h16z"
class="ColorScheme-Text"
fill="currentColor"
id="path99" />
<path
d="m79 256v3h16v-3z"
class="ColorScheme-Text"
fill="currentColor"
id="path101" />
</g>
<g
id="32-32-media-eject"
transform="translate(244 -262)">
<path
d="m100 230h32v32h-32z"
fill="none"
id="path104" />
<path
d="m116 234-12 17h24z"
class="ColorScheme-Text"
fill="currentColor"
id="path106" />
<path
d="m104 254v4h24v-4z"
class="ColorScheme-Text"
fill="currentColor"
id="path108" />
</g>
<g
id="16-16-media-skip-forward"
transform="translate(60 -104)">
<path
d="m250 126h16v16h-16z"
fill="none"
id="path111" />
<path
d="m257 128v12l7-6zm7 6v6h2v-12h-2zm-14-6v12l7-6z"
class="ColorScheme-Text"
fill="currentColor"
id="path113" />
</g>
<g
id="22-22-media-skip-forward"
transform="translate(310)">
<path
d="m0 0h22v22h-22z"
fill="none"
id="path116" />
<path
d="m0 3v16l10-8zm10 8v8l10-8-10-8zm10 0v8h2v-16h-2z"
class="ColorScheme-Text"
fill="currentColor"
id="path118" />
</g>
<g
id="32-32-media-skip-forward"
transform="translate(18 -142)">
<path
d="m292 110h32v32h-32z"
fill="none"
id="path121" />
<path
d="m324 114v24h-4v-24zm-18 12-14 12v-24zm14 0-14 12v-24z"
class="ColorScheme-Text"
fill="currentColor"
id="path123" />
</g>
<g
id="16-16-media-skip-backward"
transform="translate(26 -40)">
<path
d="m250 62h16v16h-16z"
fill="none"
id="path126" />
<path
d="m259 64v12l-7-6zm-7 6v6h-2v-12h2zm14-6v12l-7-6z"
class="ColorScheme-Text"
fill="currentColor"
id="path128" />
</g>
<g
id="22-22-media-skip-backward"
transform="translate(276 -1)">
<path
d="m0 1h22v22h-22z"
fill="none"
id="path131" />
<path
d="m0 4v16h2v-16zm2 8 10 8v-16zm10 0 10 8v-16z"
class="ColorScheme-Text"
fill="currentColor"
id="path133" />
</g>
<g
id="32-32-media-skip-backward"
transform="translate(-16 -78)">
<path
d="m292 46h32v32h-32z"
fill="none"
id="path136" />
<path
d="m292 50v24h4v-24zm18 12 14 12v-24zm-14 0 14 12v-24z"
class="ColorScheme-Text"
fill="currentColor"
id="path138" />
</g>
<g
id="16-16-media-seek-forward"
transform="translate(448 -168)">
<path
d="m-206 190h16v16h-16z"
fill="none"
id="path141" />
<path
d="m-198 192v12l7-6zm-7 0v12l7-6z"
class="ColorScheme-Text"
fill="currentColor"
id="path143" />
</g>
<g
id="22-22-media-seek-forward"
transform="translate(430 -184)">
<path
d="m-188 184h22v22h-22z"
fill="none"
id="path146" />
<g
class="ColorScheme-Text"
fill="currentColor"
transform="translate(-188 184)"
id="g150">
<path
d="m1 3v16l10-8zm10 8v8l10-8-10-8z"
id="path148" />
</g>
</g>
<g
id="32-32-media-seek-forward"
transform="translate(406 -206)">
<path
d="m-164 174h32v32h-32z"
fill="none"
id="path153" />
<path
d="m-148 190-14 12v-24zm14 0-14 12v-24z"
class="ColorScheme-Text"
fill="currentColor"
id="path155" />
</g>
<g
id="16-16-media-seek-backward"
transform="translate(414 -232)">
<path
d="m-206 254h16v16h-16z"
fill="none"
id="path158" />
<path
d="m-198 256v12l-7-6zm7 0v12l-7-6z"
class="ColorScheme-Text"
fill="currentColor"
id="path160" />
</g>
<g
id="22-22-media-seek-backward"
transform="translate(396 -248)">
<path
d="m-188 248h22v22h-22z"
fill="none"
id="path163" />
<g
class="ColorScheme-Text"
fill="currentColor"
transform="translate(-188 248)"
id="g167">
<path
d="m11 3-10 8 10 8v-8zm0 8 10 8v-16z"
id="path165" />
</g>
</g>
<g
id="32-32-media-seek-backward"
transform="translate(372 -270)">
<path
d="m-164 238h32v32h-32z"
fill="none"
id="path170" />
<path
d="m-148 254 14 12v-24zm-14 0 14 12v-24z"
class="ColorScheme-Text"
fill="currentColor"
id="path172" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 14 KiB

View file

@ -0,0 +1,363 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
id="svg"
version="1.1"
viewBox="0 0 22 22"
sodipodi:docname="preferences.svg"
inkscape:version="1.1 (c4e8f9ed74, 2021-05-24)"
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">
<sodipodi:namedview
id="namedview40"
pagecolor="#505050"
bordercolor="#ffffff"
borderopacity="1"
inkscape:pageshadow="0"
inkscape:pageopacity="0"
inkscape:pagecheckerboard="1"
showgrid="true"
inkscape:zoom="31.523148"
inkscape:cx="72.534"
inkscape:cy="75.706272"
inkscape:window-width="1600"
inkscape:window-height="832"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg">
<inkscape:grid
type="xygrid"
id="grid969" />
</sodipodi:namedview>
<defs
id="defs81">
<style
id="current-color-scheme"
type="text/css">.ColorScheme-Text {
color:#232629;
}
.ColorScheme-Background {
color:#eff0f1;
}
.ColorScheme-ViewBackground {
color:#fcfcfc;
}
.ColorScheme-ButtonFocus {
color:#3daee9;
}
.ColorScheme-PositiveText {
color:#27ae60;
}
.ColorScheme-NeutralText {
color:#f67400;
}
.ColorScheme-NegativeText {
color:#da4453;
}</style>
</defs>
<rect
style="fill:#ffffff;stroke:#000000;stroke-width:0.567;stroke-opacity:0.15;paint-order:stroke fill markers"
id="rect887"
width="239.54628"
height="235.21776"
x="-44.700169"
y="-28.940018" />
<g
id="22-22-preferences-desktop-display-randr"
transform="translate(-1,-1)">
<rect
id="rect3832"
x="1"
y="1"
width="22"
height="22"
fill-opacity="0" />
<path
id="rect7235"
class="ColorScheme-Text"
d="m7 19h10v1h-10zm3-2h4v2h-4zm-6-13v13h16v-13zm1 1h14v9h-14z"
fill="currentColor" />
<path
id="rect3018"
class="ColorScheme-Text"
d="m6 9 4 4h-4z"
fill="currentColor" />
<path
id="path3028"
class="ColorScheme-Text"
d="m18 10-4-4h4z"
fill="currentColor" />
</g>
<g
id="16-16-preferences-desktop-display-randr"
transform="matrix(0.72727273,0,0,0.72727273,-22.727273,-0.72727273)">
<rect
id="rect2651"
x="1"
y="1"
width="22"
height="22"
fill-opacity="0" />
<path
id="path2653"
class="ColorScheme-Text"
d="M 6.5000004,18.875 H 17.5 V 20.25 H 6.5000004 Z M 10.625,17.5 h 2.75 v 1.375 h -2.75 z M 3.7500004,3.75 V 17.5 H 20.25 V 3.75 Z m 1.375,1.375 H 18.875 V 14.75 H 5.1250004 Z"
fill="currentColor"
sodipodi:nodetypes="cccccccccccccccccccc" />
<path
id="path2655"
class="ColorScheme-Text"
d="M 6.5000004,9.25 10.625,13.375 H 6.5000004 Z"
fill="currentColor"
sodipodi:nodetypes="cccc" />
<path
id="path2657"
class="ColorScheme-Text"
d="M 17.5,10.625 13.375,6.5 H 17.5 Z"
fill="currentColor"
sodipodi:nodetypes="cccc" />
</g>
<g
id="preferences-desktop-notification"
transform="translate(-1,39)">
<rect
id="rect3068"
x="1"
y="1"
width="22"
height="22"
fill-opacity="0" />
<rect
id="rect4130-82-0"
x="4.000011"
y="4"
width="15.999978"
height="15.999987"
ry="7.999989"
fill="#3daee9" />
<path
id="rect4142-6"
d="m11.202644 7.1999826-0.0026 7.2000124h1.599998l0.0026-7.2000124zm0.799999 7.9999894c-0.441822 0-0.799999 0.358171-0.799999 0.799999 0 0.441827 0.358177 0.799999 0.799999 0.799999s0.799999-0.358172 0.799999-0.799999c0-0.441828-0.358177-0.799999-0.799999-0.799999z"
fill="#fcfcfc" />
</g>
<g
id="16-16-preferences-desktop-notification"
transform="matrix(0.72727273,0,0,0.72727273,21.272727,39.272727)">
<rect
id="rect857"
x="1"
y="1"
width="22"
height="22"
fill-opacity="0" />
<rect
id="rect859"
x="2.3750005"
y="2.3750005"
width="19.25"
height="19.25"
ry="9.6249952"
fill="#3daee9"
style="stroke-width:1.20312" />
<path
id="path861"
d="m 10.625,5.1250004 -0.0046,9.6250246 h 2.7454 L 13.375,5.1250004 Z m 1.3727,11.0000246 c -1.3819,0 -1.3727,1.375 -1.3727,1.375 -0.0092,0 -0.0092,1.375 1.3727,1.375 1.3681,0 1.3727,-1.375 1.3727,-1.375 0,0 -0.0046,-1.375 -1.3727,-1.375 z"
fill="#fcfcfc"
style="stroke-width:1.40218"
sodipodi:nodetypes="cccccscscs" />
</g>
<g
id="22-22-preferences-system-bluetooth"
transform="translate(-22,94)">
<rect
id="rect4645"
x="66"
width="22"
height="22"
fill="none" />
<path
id="rect4163-9"
class="ColorScheme-Text"
d="m76.998047 3v7.041013l-3.292969-3.2929692-2e-3 0.00195c-0.355749-0.3559538-0.996047-0.9960876-0.996047-0.9960876l-0.707031 0.7070313 4.544922 4.5410155-4.544922 4.541016 0.707031 0.707031s0.640351-0.640094 0.996094-0.996094h2e-3l3.294875-3.292968v7.039062h1l4-4-4-4 4-4-4-4zm1.001953 1.4160156 2.585938 2.5859375-2.585938 2.5859375zm0 8.0000004 2.585938 2.585937-2.585938 2.585938z"
fill="currentColor" />
</g>
<g
id="16-16-preferences-system-bluetooth"
transform="matrix(0.72727273,0,0,0.72727273,-3.0000002,68)">
<rect
id="rect4060"
x="66"
width="22"
height="22"
fill="none"
y="0" />
<path
id="path4062"
class="ColorScheme-Text"
d="m 77,2.75 v 6.875 l -2.75,-2.75 v 0 C 73.894251,6.5190462 72.875,5.5 72.875,5.5 L 71.5,6.875 77,11 71.5,15.125 72.875,16.5 c 0,0 1.019257,-1.019 1.375,-1.375 v 0 l 2.75,-2.75 0,6.875 h 1.375 L 82.5,15.125 78.375,11 82.5,6.875 78.375,2.75 Z m 1.375,1.375 2.75,2.75 -2.75,2.75 z m 0,8.25 2.75,2.75 -2.75,2.75 z"
fill="currentColor"
sodipodi:nodetypes="ccccccccccccccccccccccccccc" />
</g>
<g
id="22-22-preferences-system-bluetooth-activated"
transform="translate(0,94)">
<rect
id="rect4674"
x="66"
width="22"
height="22"
fill="none" />
<path
id="path4676"
class="ColorScheme-Text"
d="m76.998047 3v7.041013l-3.292969-3.2929692-2e-3 0.00195c-0.355749-0.3559538-0.996047-0.9960876-0.996047-0.9960876l-0.707031 0.7070313 4.544922 4.5410155-4.544922 4.541016 0.707031 0.707031s0.640351-0.640094 0.996094-0.996094h2e-3l3.294875-3.292968v7.039062h1l4-4-4-4 4-4-4-4h-1.001953zm1.001953 1.4160156 2.585938 2.5859375-2.585938 2.5859375v-5.171875zm-11 5.5839844a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm4 0a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm12 0a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm4 0a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm-9 2.416016 2.585938 2.585937-2.585938 2.585938v-5.171875z"
fill="currentColor" />
</g>
<g
id="16-16-preferences-system-bluetooth-activated"
transform="matrix(0.72727273,0,0,0.72727273,20,70)">
<rect
id="rect4152"
x="66"
width="22"
height="22"
fill="none"
y="0" />
<path
id="path4154"
class="ColorScheme-Text"
d="M 77,2.75 76.998,10.041013 74.25,6.875 v 0 C 73.894251,6.5190462 72.875,5.5 72.875,5.5 L 71.5,6.875 77,11 71.5,15.125 72.875,16.5 c 0,0 1.019257,-1.019 1.375,-1.375 v 0 L 77,11.960938 V 19.25 h 1.375 L 82.5,15.125 78.375,11 82.5,6.875 78.375,2.75 Z m 1.375,1.375 2.75,2.75 -2.75,2.75 z m -11,5.5 c 0,0 -1.375,0 -1.375,1.375 0,0 0,1.375 1.375,1.375 0,0 1.375,0 1.375,-1.375 0,0 0,-1.375 -1.375,-1.375 z m 4.125,0 c 0,0 -1.375,0 -1.374611,1.375 0,0 -3.89e-4,1.375 1.374611,1.375 0,0 1.375,0 1.375,-1.375 0,0 0,-1.375 -1.375,-1.375 z m 6.875,2.75 2.75,2.75 -2.75,2.75 z"
fill="currentColor"
sodipodi:nodetypes="cccccccccccccccccccccccsssssssssscccc" />
<path
d="m 83.875,9.625 c 0,0 -1.375,0 -1.375,1.375 0,0 0,1.375 1.375,1.375 0,0 1.375,0 1.375,-1.375 0,0 0,-1.375 -1.375,-1.375 z m 4.125,0 c 0,0 -1.375,0 -1.374612,1.375 0,0 -3.88e-4,1.375 1.374612,1.375 0,0 1.375,0 1.375,-1.375 0,0 0,-1.375 -1.375,-1.375 z"
style="color:#232629;fill:currentColor;stroke-width:1.37499"
id="path9944" />
</g>
<g
id="22-22-preferences-system-bluetooth-inactive"
transform="translate(-44,94)">
<rect
id="rect4162"
x="66"
width="22"
height="22"
fill="none" />
<path
id="path4164"
class="ColorScheme-Text"
d="m76.998047 3v7.041013l-3.292969-3.2929692-2e-3 0.00195c-0.355749-0.3559538-0.996047-0.9960876-0.996047-0.9960876l-0.707031 0.7070313 4.544922 4.5410155-4.544922 4.541016 0.707031 0.707031s0.640351-0.640094 0.996094-0.996094h2e-3l3.294875-3.292968v7.039062h1l4-4-4-4 4-4-4-4zm1.001953 1.4160156 2.585938 2.5859375-2.585938 2.5859375zm0 8.0000004 2.585938 2.585937-2.585938 2.585938z"
fill="currentColor"
opacity=".5" />
</g>
<g
id="16-16-preferences-system-bluetooth-inactive"
transform="matrix(0.72727273,0,0,0.72727273,-25,70)">
<rect
id="rect4146"
x="66"
width="22"
height="22"
fill="none"
y="0" />
<path
id="path4148"
class="ColorScheme-Text"
d="m 77,2.75 v 6.875 l -2.75,-2.75 v 0 C 73.894251,6.5190462 72.875,5.5 72.875,5.5 L 71.5,6.875 77,11 71.5,15.125 72.875,16.5 c 0,0 1.019257,-1.019 1.375,-1.375 l 0,0 L 77,11.960938 V 19.25 h 1.375 L 82.5,15.125 78.375,11 82.5,6.875 78.375,2.75 Z m 1.375,1.375 2.75,2.75 -2.75,2.75 z m 0,8.25 2.75,2.75 -2.75,2.75 z"
fill="currentColor"
opacity="0.5"
sodipodi:nodetypes="ccccccccccccccccccccccccccc" />
</g>
<g
id="preferences-system-bluetooth"
transform="translate(44,94)">
<rect
id="rect4168"
x="-5"
y="22"
width="32"
height="32"
fill="none" />
<path
id="rect4331"
class="ColorScheme-Text"
d="m 11,26 0,0.410156 0,10.587891 L 5.0019531,31 4.296875,31.705078 10.589844,38 4.296875,44.294922 5.0019531,45 11,39.001953 11,50 12,50 12.002,50 18,44.001953 18,44 18,43.998047 12.001953,38 18,32.001953 18,32 18,31.998047 12.001953,26 12,26 11,26 z M 12,27.410156 16.587891,32 12,36.589844 12,27.410156 z m 0,12 L 16.587891,44 12,48.589844 12,39.410156 z"
fill="currentColor" />
</g>
<g
id="preferences-system-bluetooth-activated"
transform="translate(44,94)">
<rect
id="rect4422"
x="27"
y="22"
width="32"
height="32"
fill="none" />
<path
id="path4424"
class="ColorScheme-Text"
d="m43 26v10.998047l-5.998047-5.998047-0.705078 0.705078 6.292969 6.294922-6.292969 6.294922 0.705078 0.705078 5.998047-5.998047v10.998047h1.002l5.998-5.998047v-0.003906l-5.998047-5.998047 5.998047-5.998047v-0.003906l-5.998047-5.998047h-1.001953zm1 1.410156 4.587891 4.589844-4.587891 4.589844v-9.179688zm-14 9.589844a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm6 0a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm14 0a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm6 0a1 1 0 0 0-1 1 1 1 0 0 0 1 1 1 1 0 0 0 1-1 1 1 0 0 0-1-1zm-12 2.410156 4.587891 4.589844-4.587891 4.589844v-9.179688z"
fill="currentColor" />
</g>
<g
id="preferences-system-bluetooth-inactive"
transform="translate(44,94)">
<rect
id="rect4426"
x="-37"
y="22"
width="32"
height="32"
fill="none" />
<path
id="path4428"
class="ColorScheme-Text"
d="m-21 26v10.998047l-5.998047-5.998047-0.705078 0.705078 6.292969 6.294922-6.292969 6.294922 0.705078 0.705078 5.998047-5.998047v10.998047h1.002l5.998-5.998047v-4e-3l-5.998047-5.997953 5.998047-5.998047v-0.003953l-5.998047-5.998h-1.001953zm1 1.410156 4.587891 4.589844-4.587891 4.589844v-9.179688zm0 12 4.587891 4.589844-4.587891 4.589844v-9.179688z"
fill="currentColor"
opacity=".5" />
</g>
<g
id="preferences-system-bluetooth-battery"
transform="translate(44,126)">
<rect
id="rect4168-3"
x="-5"
y="22"
width="32"
height="32"
fill="none" />
<path
id="rect4331-5"
class="ColorScheme-Text"
d="m 11,26 v 0.410156 10.587891 L 5.0019531,31 4.296875,31.705078 10.589844,38 4.296875,44.294922 5.0019531,45 11,39.001953 V 50 h 1 0.002 L 18,44.001953 V 44 43.998 L 12.001953,38 18,32.001953 V 32 31.998 L 12.001953,26 H 12 Z M 12,27.410156 16.587891,32 12,36.589844 Z m 0,12 L 16.587891,44 12,48.589844 Z"
fill="currentColor" />
</g>
<g
id="preferences-desktop-display-randr">
<rect
id="rect3832-6"
x="26"
y="-10"
width="32"
height="32"
fill-opacity="0" />
<path
id="rect7235-7"
class="ColorScheme-Text"
d="m35.011249 15h11.977502l0.011249 2h-11.977502zm3.988751-2h4v2h-4zm-9-18v18h22v-18zm1 1h20v14h-20z"
fill="currentColor" />
<path
id="rect3018-5"
class="ColorScheme-Text"
d="m32 4 5 5h-5z"
fill="currentColor" />
<path
id="path3028-3"
class="ColorScheme-Text"
d="m50 2-5-5h5z"
fill="currentColor" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 13 KiB

View file

@ -0,0 +1,226 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
viewBox="0 0 22 22"
id="svg"
version="1.1"
inkscape:version="1.1 (c4e8f9ed74, 2021-05-24)"
width="100%"
height="100%"
sodipodi:docname="printer.svg"
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="defs81">
<style
id="current-color-scheme"
type="text/css">
.ColorScheme-Text {
color:#7B7C7E;
}
.ColorScheme-Background{
color:#EFF0F1;
}
.ColorScheme-Highlight{
color:#3DAEE6;
}
.ColorScheme-ViewText {
color:#7B7C7E;
}
.ColorScheme-ViewBackground{
color:#FCFCFC;
}
.ColorScheme-ViewHover {
color:#3DAEE6;
}
.ColorScheme-ViewFocus{
color:#1E92FF;
}
.ColorScheme-ButtonText {
color:#7B7C7E;
}
.ColorScheme-ButtonBackground{
color:#EFF0F1;
}
.ColorScheme-ButtonHover {
color:#3DAEE6;
}
.ColorScheme-ButtonFocus{
color:#1E92FF;
}
</style>
<style
type="text/css"
id="style3">
.ColorScheme-Text {
color:#31363b;
}
.ColorScheme-Background {
color:#eff0f1;
}
.ColorScheme-Highlight {
color:#3daee9;
}
.ColorScheme-ViewText {
color:#31363b;
}
.ColorScheme-ViewBackground {
color:#fcfcfc;
}
.ColorScheme-ViewHover {
color:#93cee9;
}
.ColorScheme-ViewFocus{
color:#3daee9;
}
.ColorScheme-ButtonText {
color:#31363b;
}
.ColorScheme-ButtonBackground {
color:#eff0f1;
}
.ColorScheme-ButtonHover {
color:#93cee9;
}
.ColorScheme-ButtonFocus{
color:#3daee9;
}
</style>
</defs>
<metadata
id="metadata34">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</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="1600"
inkscape:window-height="832"
id="namedview32"
showgrid="true"
inkscape:zoom="10.419397"
inkscape:cx="-4.9427045"
inkscape:cy="8.973648"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
inkscape:current-layer="svg"
borderlayer="true"
showguides="true"
inkscape:guide-bbox="true"
inkscape:snap-bbox="true"
inkscape:showpageshadow="false"
inkscape:pagecheckerboard="1">
<inkscape:grid
type="xygrid"
id="grid3060"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
<sodipodi:guide
position="-32,31.999996"
orientation="32.000011,0"
id="guide4141" />
<sodipodi:guide
position="-32,-1.5258789e-05"
orientation="0,32"
id="guide4143" />
<sodipodi:guide
position="0,-1.5258789e-05"
orientation="-32.000011,0"
id="guide4145" />
<sodipodi:guide
position="0,31.999996"
orientation="0,-32"
id="guide4147" />
<sodipodi:guide
position="-28,27.999996"
orientation="24.000011,0"
id="guide4149" />
<sodipodi:guide
position="-28,3.9999847"
orientation="0,24"
id="guide4151" />
<sodipodi:guide
position="-4,3.9999847"
orientation="-24.000011,0"
id="guide4153" />
<sodipodi:guide
position="-4,27.999996"
orientation="0,-24"
id="guide4155" />
</sodipodi:namedview>
<g
id="22-22-printer"
transform="translate(0,-2)">
<rect
y="2"
x="0"
height="22"
width="22"
id="rect3009"
style="fill:currentColor;fill-opacity:0;stroke:none"
class="ColorScheme-Background" />
<path
id="rect3007"
transform="translate(0,2)"
d="m 6,3 0,1 0,3 -2,0 -1,0 0,1 0,6 0,1 2,0 0,1 1,0 0,2 0,1 1,0 8,0 1,0 0,-3 1,0 0,-1 2,0 0,-1 0,-7 -1,0 -2,0 0,-4 -1,0 -8,0 -1,0 z m 1,1 8,0 0,4 -8,0 0,-4 z m -3,4 1,0 0,1 12,0 0,-1 1,0 0,6 -1,0 0,-2 -1,0 -11,0 0,1 0,1 -1,0 0,-6 z m 10,2 0,1 3,0 0,-1 -3,0 z m -7,3 8,0 0,5 -8,0 0,-5 z m 1,1 0,1 6,0 0,-1 -6,0 z m 0,2 0,1 6,0 0,-1 -6,0 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0"
class="ColorScheme-Text" />
</g>
<g
id="printer">
<path
id="rect4172"
d="m -23,-6 0,1 0,5 -4,0 -0.484375,0 L -28,0 l 0,11 0,1 1,0 2,0 0,1 2,0 0,5 1,0 6,0 6,0 1,0 0,-5 2,0 0,-1 2,0 1,0 0,-1 L -4,0 -4.515625,0 -5,0 l -4,0 0,-5 0,-1 -7,0 -7,0 z m 1,1 6,0 6,0 0,5 0,1 -6,0 -6,0 0,-1 0,-5 z m -5,6 2,0 0,1 9,0 9,0 0,-1 2,0 0,10 -2,0 0,-3 -3,0 -6,0 -6,0 -3,0 0,3 -2,0 0,-10 z m 17,3 0,2 4,0 0,-2 -4,0 z m -12,5 6,0 6,0 0,2 0,1 0,5 -6,0 -6,0 0,-5 0,-1 0,-2 z m 1,2 0,1 5,0 5,0 0,-1 -5,0 -5,0 z m 0,3 0,1 5,0 5,0 0,-1 -5,0 -5,0 z"
style="opacity:1;fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0"
class="ColorScheme-Text" />
<rect
y="-10"
x="-32"
height="32"
width="32"
id="rect4208"
style="opacity:1;fill:none;fill-opacity:1;stroke:none" />
</g>
<g
id="16-16-printer"
transform="matrix(0.72727273,0,0,0.72727273,22,-1.4545455)">
<rect
y="2"
x="0"
height="22"
width="22"
id="rect3009-6"
style="fill:currentColor;fill-opacity:0;stroke:none"
class="ColorScheme-Background" />
<path
id="rect3007-7"
transform="translate(0,2)"
d="m 5.5,2.75 v 1.375 2.75 H 4.125 2.75 v 1.375 5.5 1.375 H 5.5 v 1 0.375 1.375 1.375 h 1.375 8.25 1.375 v -2.75 0 -1.375 h 2.75 V 13.75 6.875 H 17.875 16.5 V 2.75 h -1.375 -8.25 z m 1.375,1.375 h 8.25 V 8.25 H 6.875 Z M 4.125,8.25 H 5.5 v 1.375 h 11 V 8.25 h 1.375 v 5.5 H 16.5 V 12.375 H 15.125 5.5 V 13.225868 13.75 H 4.125 Z M 13.75,9.625 V 11 H 16.5 V 9.625 Z M 6.875,13.75 h 8.25 v 4.125 H 6.875 Z M 8.25,15.125 V 16.5 h 5.5 v -1.375 z"
style="fill:currentColor;fill-opacity:1;stroke:none"
inkscape:connector-curvature="0"
class="ColorScheme-Text"
sodipodi:nodetypes="ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 6.7 KiB

View file

@ -14,7 +14,7 @@ X-KDE-PluginInfo-Email=mirkogen@hotmail.it
X-KDE-PluginInfo-EnabledByDefault=True X-KDE-PluginInfo-EnabledByDefault=True
X-KDE-PluginInfo-License=GPL X-KDE-PluginInfo-License=GPL
X-KDE-PluginInfo-Name=Seven Black X-KDE-PluginInfo-Name=Seven Black
X-KDE-PluginInfo-Version=1.0.59 X-KDE-PluginInfo-Version=1.0.75
X-KDE-PluginInfo-Website=http://www.techbulk.net X-KDE-PluginInfo-Website=http://www.techbulk.net
X-Plasma-API=5.0 X-Plasma-API=5.0

View file

@ -23,7 +23,7 @@
fill:#777777; fill:#777777;
opacity:1; opacity:1;
} }
#path5114 { fill-opacity:0.21; fill:#07b0ff; fill-rule:nonzero; opacity:1; stroke:none; } #path5114 { fill-opacity:0.11; fill:#198afc; fill-rule:nonzero; opacity:1; stroke:none; }
</style> </style>
<sodipodi:namedview <sodipodi:namedview
id="base" id="base"

Before

Width:  |  Height:  |  Size: 208 KiB

After

Width:  |  Height:  |  Size: 208 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 112 KiB

View file

@ -23,7 +23,7 @@
fill:#7f7f7f; fill:#7f7f7f;
opacity:1; opacity:1;
} }
#rect4860 { fill-opacity:0.21; fill:#07b0ff; opacity:1; stroke:none; } #rect4860 { fill-opacity:0.11; fill:#198afc; opacity:1; stroke:none; }
</style> </style>
<sodipodi:namedview <sodipodi:namedview
id="base" id="base"

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 152 KiB

View file

@ -23,7 +23,7 @@
fill:#777777; fill:#777777;
opacity:1; opacity:1;
} }
#path5114 { fill-opacity:0.21; fill:#07b0ff; fill-rule:nonzero; opacity:1; stroke:none; } #path5114 { fill-opacity:0.11; fill:#198afc; fill-rule:nonzero; opacity:1; stroke:none; }
</style> </style>
<sodipodi:namedview <sodipodi:namedview
id="base" id="base"

Before

Width:  |  Height:  |  Size: 208 KiB

After

Width:  |  Height:  |  Size: 208 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 112 KiB

View file

@ -23,7 +23,7 @@
fill:#7f7f7f; fill:#7f7f7f;
opacity:1; opacity:1;
} }
#rect4860 { fill-opacity:0.21; fill:#07b0ff; opacity:1; stroke:none; } #rect4860 { fill-opacity:0.11; fill:#198afc; opacity:1; stroke:none; }
</style> </style>
<sodipodi:namedview <sodipodi:namedview
id="base" id="base"

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 152 KiB

View file

@ -0,0 +1,159 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.0"
width="100"
height="100"
id="svg2"
sodipodi:version="0.32"
inkscape:version="0.46"
sodipodi:docname="busywidget.svgz"
inkscape:output_extension="org.inkscape.output.svgz.inkscape">
<metadata
id="metadata25">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
</cc:Work>
</rdf:RDF>
</metadata>
<sodipodi:namedview
inkscape:window-height="952"
inkscape:window-width="1280"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
guidetolerance="10.0"
gridtolerance="10.0"
objecttolerance="10.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base"
showgrid="false"
inkscape:zoom="2.77"
inkscape:cx="-53.898044"
inkscape:cy="50.470915"
inkscape:window-x="-4"
inkscape:window-y="-3"
inkscape:current-layer="busywidget" />
<defs
id="defs4">
<linearGradient
id="linearGradient3167">
<stop
style="stop-color:#00ffaa;stop-opacity:1;"
offset="0"
id="stop3169" />
<stop
style="stop-color:#00fff9;stop-opacity:0;"
offset="1"
id="stop3171" />
</linearGradient>
<inkscape:perspective
sodipodi:type="inkscape:persp3d"
inkscape:vp_x="0 : 50 : 1"
inkscape:vp_y="0 : 1000 : 0"
inkscape:vp_z="100 : 50 : 1"
inkscape:persp3d-origin="50 : 33.333333 : 1"
id="perspective27" />
<radialGradient
inkscape:collect="always"
xlink:href="#linearGradient3167"
id="radialGradient3173"
cx="50.180504"
cy="49.819496"
fx="50.180504"
fy="49.819496"
r="49.819496"
gradientUnits="userSpaceOnUse" />
</defs>
<g
id="layer1">
<rect
width="45"
height="8.5051775"
x="13.061523"
y="110.07188"
id="hint-rotation-angle"
style="opacity:1;fill:#60a500;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:6.69999981;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" />
<g
id="busywidget">
<path
sodipodi:type="arc"
style="opacity:0.79384615;fill:url(#radialGradient3173);fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
id="path2395"
sodipodi:cx="50.180504"
sodipodi:cy="49.819496"
sodipodi:rx="49.819496"
sodipodi:ry="49.819496"
d="M 100,49.819496 A 49.819496,49.819496 0 1 1 0.36100769,49.819496 A 49.819496,49.819496 0 1 1 100,49.819496 z" />
<path
id="path3236"
d="M 49.916117,1.4580325 C 46.266056,1.4580325 42.710919,1.8588945 39.289303,2.6217758 C 40.2016,4.7602942 41.197299,7.2156243 42.290536,9.8492342 C 44.893347,9.3322145 47.590954,9.0529888 50.344865,9.0529888 C 57.194791,9.0529887 63.649585,10.741641 69.332255,13.707962 C 70.984783,11.55693 72.499117,9.5832462 73.895354,7.797371 C 66.816176,3.7741449 58.638278,1.4580325 49.916117,1.4580325 z"
style="opacity:0.28307692;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
id="path3238"
d="M 36.594319,3.3261468 C 24.710931,6.7060932 14.661869,14.484625 8.3582308,24.794148 C 10.561072,25.678182 13.112589,26.702559 15.830688,27.826005 C 20.908628,20.006127 28.571793,14.019092 37.604938,11.074227 C 37.235455,8.250699 36.87292,5.6302194 36.594319,3.3261468 z"
style="opacity:0.28307692;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
id="path3240"
d="M 7.0413634,27.121634 C 3.3616051,33.964227 1.2532717,41.781257 1.2532717,50.090252 C 1.2532717,54.275631 1.7882898,58.342047 2.7845129,62.217682 C 4.991617,61.277263 7.4872765,60.217526 10.19572,59.09395 C 9.5620429,56.226529 9.2157259,53.239167 9.2157259,50.182127 C 9.215726,43.674697 10.747307,37.523752 13.441952,32.052231 C 11.106745,30.257618 8.9125589,28.590404 7.0413634,27.121634 z"
style="opacity:0.28307692;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
id="path3242"
d="M 97.476468,39.953436 C 95.41506,40.825214 93.20959,41.741587 90.800257,42.740295 C 91.24221,45.154644 91.474003,47.640762 91.474003,50.182127 C 91.474003,56.860806 89.862499,63.162476 87.033404,68.74077 C 89.078759,70.310495 90.962748,71.745604 92.729621,73.12012 C 96.425365,66.263301 98.548336,58.423498 98.548337,50.090252 C 98.548337,46.612771 98.170716,43.224477 97.476468,39.953436 z"
style="opacity:0.05538462;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
id="path3244"
d="M 11.573838,63.902048 C 8.6724874,64.282551 5.964272,64.622847 3.5807583,64.912667 C 7.2522413,76.373587 15.043934,85.97577 25.232509,91.985011 C 26.118244,89.795368 27.100128,87.409593 28.172492,84.818802 C 20.543806,79.922972 14.647268,72.584678 11.573838,63.902048 z"
style="opacity:0.28307692;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
id="path3246"
d="M 84.399669,73.242619 C 79.447744,80.537503 72.214845,86.153973 63.727913,89.075653 C 64.076784,91.72697 64.392513,94.169683 64.677282,96.456235 C 75.706108,92.944572 85.020987,85.574068 91.07588,75.968228 C 88.993339,75.121828 86.793257,74.233869 84.399669,73.242619 z"
style="opacity:0.10461538;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
id="path3248"
d="M 32.674341,87.299413 C 30.959666,89.533037 29.358101,91.582685 27.896869,93.455003 C 34.509536,96.815875 41.995842,98.722473 49.916117,98.722472 C 53.926501,98.722472 57.825121,98.229665 61.55355,97.313731 C 60.660324,95.199326 59.694328,92.945137 58.674817,90.484395 C 55.989174,91.036495 53.193055,91.311265 50.344865,91.311265 C 44.018567,91.311265 38.030363,89.854902 32.674341,87.299413 z"
style="opacity:0.13846154;fill:#000000;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 49.194095,0.375 C 45.544034,0.375 41.988897,0.77586205 38.567281,1.5387433 C 39.479578,3.6772617 40.475277,6.1325918 41.568514,8.7662017 C 44.171325,8.249182 46.868932,7.9699563 49.622843,7.9699563 C 56.472769,7.9699562 62.927563,9.6586087 68.610233,12.62493 C 70.262761,10.473898 71.777095,8.5002137 73.173332,6.7143385 C 66.094154,2.6911124 57.916256,0.375 49.194095,0.375 z"
id="path3234" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:0.91558444;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 35.872297,2.2431143 C 23.988909,5.6230607 13.939847,13.401593 7.6362091,23.711116 C 9.8390503,24.59515 12.390567,25.619527 15.108666,26.742973 C 20.186606,18.923095 27.849771,12.93606 36.882916,9.9911947 C 36.513433,7.1676665 36.150898,4.5471869 35.872297,2.2431143 z"
id="path3232" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:0.77272725;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 6.3193417,26.038602 C 2.6395834,32.881195 0.53125001,40.698225 0.53125,49.00722 C 0.53125,53.192599 1.0662681,57.259015 2.0624912,61.13465 C 4.2695953,60.194231 6.7652548,59.134494 9.4736986,58.010918 C 8.8400212,55.143497 8.4937042,52.156135 8.4937042,49.099095 C 8.4937043,42.591665 10.025285,36.44072 12.71993,30.969199 C 10.384723,29.174586 8.1905372,27.507372 6.3193417,26.038602 z"
id="path3228" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:0.15909089;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 96.754446,38.870404 C 94.693038,39.742182 92.487568,40.658555 90.078235,41.657263 C 90.520188,44.071612 90.751981,46.55773 90.751981,49.099095 C 90.751981,55.777774 89.140477,62.079444 86.311382,67.657738 C 88.356737,69.227463 90.240726,70.662572 92.007599,72.037088 C 95.703343,65.180269 97.826314,57.340466 97.826315,49.00722 C 97.826315,45.529739 97.448694,42.141445 96.754446,38.870404 z"
id="path3226" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:0.57792211;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 10.851816,62.819016 C 7.9504657,63.199519 5.2422503,63.539815 2.8587366,63.829635 C 6.5302196,75.290555 14.321912,84.892738 24.510487,90.901979 C 25.396222,88.712336 26.378106,86.326561 27.45047,83.73577 C 19.821784,78.83994 13.925246,71.501646 10.851816,62.819016 z"
id="path3224" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:0.27922082;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 83.677647,72.159587 C 78.725722,79.454471 71.492823,85.070941 63.005891,87.992621 C 63.354762,90.643938 63.670491,93.086651 63.95526,95.373203 C 74.984086,91.86154 84.298965,84.491036 90.353858,74.885196 C 88.271317,74.038796 86.071235,73.150837 83.677647,72.159587 z"
id="path3222" />
<path
style="opacity:0.93538465000000004;fill:#ffffff;fill-opacity:0.39610392;stroke:none;stroke-width:15;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:15, 45;stroke-dashoffset:73.49999772999998982;stroke-opacity:1"
d="M 31.952319,86.216381 C 30.237644,88.450005 28.636079,90.499653 27.174847,92.371971 C 33.787514,95.732843 41.27382,97.639441 49.194095,97.63944 C 53.204479,97.63944 57.103099,97.146633 60.831528,96.230699 C 59.938302,94.116294 58.972306,91.862105 57.952795,89.401363 C 55.267152,89.953463 52.471033,90.228233 49.622843,90.228233 C 43.296545,90.228233 37.308341,88.77187 31.952319,86.216381 z"
id="path3212" />
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 12 KiB

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 112 KiB

File diff suppressed because it is too large Load diff

After

Width:  |  Height:  |  Size: 78 KiB

View file

@ -23,7 +23,7 @@
fill:#7f7f7f; fill:#7f7f7f;
opacity:1; opacity:1;
} }
#rect4860 { fill-opacity:0.21; fill:#07b0ff; opacity:1; stroke:none; } #rect4860 { fill-opacity:0.11; fill:#198afc; opacity:1; stroke:none; }
</style> </style>
<sodipodi:namedview <sodipodi:namedview
id="base" id="base"

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 152 KiB

View file

@ -73,5 +73,8 @@
<label>Are the favorites ported to use KActivitiesStats to allow per-activity favorites</label> <label>Are the favorites ported to use KActivitiesStats to allow per-activity favorites</label>
<default>false</default> <default>false</default>
</entry> </entry>
<entry name="showRecentsView" type="Bool">
<default>true</default>
</entry>
</group> </group>
</kcfg> </kcfg>

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -19,10 +19,10 @@
inkscape:pagecheckerboard="1" inkscape:pagecheckerboard="1"
showgrid="false" showgrid="false"
inkscape:zoom="20.125" inkscape:zoom="20.125"
inkscape:cx="16" inkscape:cx="15.975155"
inkscape:cy="16" inkscape:cy="15.975155"
inkscape:window-width="1600" inkscape:window-width="1600"
inkscape:window-height="833" inkscape:window-height="832"
inkscape:window-x="0" inkscape:window-x="0"
inkscape:window-y="0" inkscape:window-y="0"
inkscape:window-maximized="1" inkscape:window-maximized="1"

Before

Width:  |  Height:  |  Size: 1.4 KiB

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View file

@ -0,0 +1,311 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Gregor Taetzner <gregor@freenet.de>
Copyright 2014 Sebastian Kügler <sebas@kde.org>
Copyright (C) 2015-2018 Eike Hein <hein@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.components 2.0 as PlasmaComponents
Item {
id: appViewContainer
//anchors.fill: parent
objectName: "ApplicationsView"
property ListView listView: applicationsView.listView
function decrementCurrentIndex() {
applicationsView.decrementCurrentIndex();
}
function incrementCurrentIndex() {
applicationsView.incrementCurrentIndex();
}
function activateCurrentIndex(start) {
if (!applicationsView.currentItem.modelChildren) {
if (!start) {
return;
}
}
applicationsView.state = "OutgoingLeft";
}
function openContextMenu() {
applicationsView.currentItem.openActionMenu();
}
function deactivateCurrentIndex() {
if (crumbModel.count > 0) { // this is not the case when switching from the "Applications" to the "Favorites" tab using the "Left" key
breadcrumbsElement.children[crumbModel.count-1].clickCrumb();
applicationsView.state = "OutgoingRight";
return true;
}
return false;
}
function reset() {
applicationsView.model = rootModel;
applicationsView.clearBreadcrumbs();
}
function refreshed() {
reset();
updatedLabelTimer.running = true;
}
Connections {
target: plasmoid
function onExpandedChanged() {
if (!plasmoid.expanded) {
reset();
}
}
}
Item {
id: crumbContainer
anchors {
top: parent.top
left: parent.left
right: parent.right
}
height: childrenRect.height
Behavior on opacity { NumberAnimation { duration: PlasmaCore.Units.longDuration } }
Flickable {
id: breadcrumbFlickable
anchors {
top: parent.top
left: parent.left
right: parent.right
}
height: breadcrumbsElement.height
boundsBehavior: Flickable.StopAtBounds
contentWidth: breadcrumbsElement.width
pixelAligned: true
//contentX: contentWidth - width
// HACK: Align the content to right for RTL locales
leftMargin: LayoutMirroring.enabled ? Math.max(0, width - contentWidth) : 0
PlasmaComponents.ButtonRow {
id: breadcrumbsElement
exclusive: false
Breadcrumb {
id: rootBreadcrumb
root: true
text: i18n("All Applications")
depth: 0
}
Repeater {
model: ListModel {
id: crumbModel
// Array of the models
property var models: []
}
Breadcrumb {
root: false
text: model.text
}
}
onWidthChanged: {
if (LayoutMirroring.enabled) {
breadcrumbFlickable.contentX = -Math.max(0, breadcrumbsElement.width - breadcrumbFlickable.width)
} else {
breadcrumbFlickable.contentX = Math.max(0, breadcrumbsElement.width - breadcrumbFlickable.width)
}
}
}
} //
Rectangle {
id: sepLine
anchors.top: breadcrumbFlickable.bottom
//anchors.topMargin: units.smallSpacing
anchors.left: breadcrumbFlickable.left
anchors.leftMargin: units.smallSpacing*4
anchors.right: breadcrumbFlickable.right
anchors.rightMargin: units.smallSpacing*4
height: 1
color: "#d6e5f5"
opacity: 1
//visible: !showingAllPrograms && !searching
z: 6
}
} // crumbContainer
KickoffListView {
id: applicationsView
anchors {
top: crumbContainer.bottom
bottom: parent.bottom
rightMargin: -PlasmaCore.Units.largeSpacing
leftMargin: -PlasmaCore.Units.largeSpacing
}
width: parent.width
property Item activatedItem: null
property var newModel: null
Behavior on opacity { NumberAnimation { duration: PlasmaCore.Units.longDuration } }
focus: true
appView: true
model: rootModel
function moveLeft() {
state = "";
// newModelIndex set by clicked breadcrumb
var oldModel = applicationsView.model;
applicationsView.model = applicationsView.newModel;
var oldModelIndex = model.rowForModel(oldModel);
listView.currentIndex = oldModelIndex;
listView.positionViewAtIndex(oldModelIndex, ListView.Center);
}
function moveRight() {
state = "";
activatedItem.activate()
applicationsView.listView.positionViewAtBeginning()
//root.visible = false;
}
function clearBreadcrumbs() {
crumbModel.clear();
crumbModel.models = [];
applicationsView.listView.currentIndex = -1;
}
onReset: appViewContainer.reset()
onAddBreadcrumb: {
crumbModel.append({"text": title, "depth": crumbModel.count+1})
crumbModel.models.push(model);
}
states: [
State {
name: "OutgoingLeft"
PropertyChanges {
target: applicationsView
x: -parent.width
opacity: 0.0
}
},
State {
name: "OutgoingRight"
PropertyChanges {
target: applicationsView
x: parent.width
opacity: 0.0
}
}
]
transitions: [
Transition {
to: "OutgoingLeft"
SequentialAnimation {
// We need to cache the currentItem since the selection can move during animation,
// and we want the item that has been clicked on, not the one that is under the
// mouse once the animation is done
ScriptAction { script: applicationsView.activatedItem = applicationsView.currentItem }
NumberAnimation { properties: "opacity"; easing.type: Easing.InQuad; duration: 100 }
ScriptAction { script: applicationsView.moveRight() }
}
},
Transition {
to: "OutgoingRight"
SequentialAnimation {
NumberAnimation { properties: "opacity"; easing.type: Easing.InQuad; duration: 100 }
ScriptAction { script: applicationsView.moveLeft() }
}
}
]
Component.onCompleted: {
applicationsView.listView.currentIndex = -1;
//applicationsView.listView.incrementCurrentIndex();
//applicationsView.listView.incrementCurrentIndex();
}
}
MouseArea {
anchors.fill: parent
acceptedButtons: Qt.BackButton
onClicked: {
deactivateCurrentIndex()
}
}
Timer {
id: updatedLabelTimer
interval: 1500
running: false
repeat: true
onRunningChanged: {
if (running) {
updatedLabel.opacity = 1;
crumbContainer.opacity = 0.3;
applicationsView.scrollArea.opacity = 0.3;
}
}
onTriggered: {
updatedLabel.opacity = 0;
crumbContainer.opacity = 1;
applicationsView.scrollArea.opacity = 1;
running = false;
}
}
PlasmaComponents.Label {
id: updatedLabel
text: i18n("Applications updated.")
opacity: 0
visible: opacity != 0
anchors.centerIn: parent
Behavior on opacity { NumberAnimation { duration: PlasmaCore.Units.shortDuration } }
}
Component.onCompleted: {
rootModel.cleared.connect(refreshed);
}
} // appViewContainer

View file

@ -0,0 +1,67 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Marco Martin <mart@kde.org>
Copyright (C) 2015-2018 Eike Hein <hein@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.draganddrop 2.0
Item {
property alias model: baseView.model
property alias delegate: baseView.delegate
property ListView listView: baseView.listView
function decrementCurrentIndex() {
baseView.decrementCurrentIndex();
}
function incrementCurrentIndex() {
baseView.incrementCurrentIndex();
}
function activateCurrentIndex() {
baseView.currentItem.activate();
}
function openContextMenu() {
baseView.currentItem.openActionMenu();
}
Connections {
target: plasmoid
function onExpandedChanged() {
if (!plasmoid.expanded) {
baseView.currentIndex = -1;
}
}
}
KickoffListView {
id: baseView
anchors.fill: parent
currentIndex: -1
interactive: contentHeight > height
}
}

View file

@ -0,0 +1,93 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import QtQuick.Controls.Styles.Plasma 2.0 as Styles
Item {
id: crumbRoot
height: crumb.implicitHeight
width: crumb.implicitWidth + arrowSvg.width
property string text
property bool root: false
property int depth: model.depth
function clickCrumb() {
crumb.clicked();
}
PlasmaComponents.ToolButton {
id: crumb
anchors.left: arrowSvg.right
Text {
id: textLabel
//anchors.fill: parent
anchors.left: parent.left
//anchors.right: parent.right
anchors.leftMargin: (crumb.width-textLabel.contentWidth) / 2
anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter
//width: crumb.width
text: crumbRoot.text
font.pixelSize: 12
color: "#404040"
}
text: crumbRoot.text
//width: textLabel.contentWidth + units.smallSpacing*2
enabled: crumbRoot.depth < crumbModel.count
onClicked: {
// Remove all the breadcrumbs in front of the clicked one
while (crumbModel.count > 0 && crumbRoot.depth < crumbModel.get(crumbModel.count-1).depth) {
crumbModel.remove(crumbModel.count-1)
crumbModel.models.pop()
}
if (crumbRoot.root) {
applicationsView.newModel = rootModel;
} else {
applicationsView.newModel = crumbModel.models[index];
}
applicationsView.state = "OutgoingRight";
}
}
PlasmaCore.SvgItem {
id: arrowSvg
anchors.left: parent.left
anchors.verticalCenter: parent.verticalCenter
height: crumbRoot.height / 2
width: visible ? height : 0
svg: arrowsSvg
elementId: LayoutMirroring.enabled ? "left-arrow" : "right-arrow"
visible: !crumbRoot.root
/*Colorize {
anchors.fill: arrowSvg
source: arrowSvg
hue: 0.0
saturation: 0.0
lightness: searching ? -0.5 : 1.0
}*/
}
} // crumbRoot

View file

@ -100,7 +100,7 @@ Item {
states: State { states: State {
name: "mouse-over"; when: mouseArea.containsMouse && !dashWindow.visible name: "mouse-over"; when: mouseArea.containsMouse && !dashWindow.visible
//PropertyChanges { target: buttonIcon; opacity: dashWindow.visible ? 1 : 0} //PropertyChanges { target: buttonIcon; opacity: dashWindow.visible ? 1 : 0}
PropertyChanges { target: buttonIconHovered; opacity: dashWindow.visible ? 0 : 1} PropertyChanges { target: buttonIconHovered; opacity: 1}
} }
transitions: Transition { transitions: Transition {
@ -128,6 +128,7 @@ Item {
onClicked: { onClicked: {
dashWindow.visible = !dashWindow.visible; dashWindow.visible = !dashWindow.visible;
dashWindow.showingAllPrograms = false;
} }
} }

View file

@ -41,6 +41,8 @@ Item {
property string cfg_customButtonImage: plasmoid.configuration.customButtonImage property string cfg_customButtonImage: plasmoid.configuration.customButtonImage
property string cfg_customButtonImageHover: plasmoid.configuration.customButtonImageHover property string cfg_customButtonImageHover: plasmoid.configuration.customButtonImageHover
property string cfg_customButtonImageActive: plasmoid.configuration.customButtonImageActive property string cfg_customButtonImageActive: plasmoid.configuration.customButtonImageActive
property alias cfg_showRecentsView: showRecentsView.checked
property alias cfg_appNameFormat: appNameFormat.currentIndex property alias cfg_appNameFormat: appNameFormat.currentIndex
property alias cfg_switchCategoriesOnHover: switchCategoriesOnHover.checked property alias cfg_switchCategoriesOnHover: switchCategoriesOnHover.checked
@ -244,6 +246,7 @@ Item {
id: numberRows id: numberRows
minimumValue: 10 minimumValue: 10
maximumValue: 15 maximumValue: 15
//onValueChanged: root.recents.model = kicker.rootModel.modelForRow(0);
} }
Label { Label {
Layout.leftMargin: units.smallSpacing Layout.leftMargin: units.smallSpacing
@ -253,5 +256,24 @@ Item {
} }
} }
} }
GroupBox {
title: i18n("View")
flat: true
ColumnLayout {
RowLayout{
Layout.fillWidth: true
RowLayout{
Layout.fillWidth: true
CheckBox {
id: showRecentsView
text: i18n("Show recent programs")
}
}
}
}
}
} }
} }

View file

@ -0,0 +1,158 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Marco Martin <mart@kde.org>
Copyright 2014 Sebastian Kügler <sebas@kde.org>
Copyright (C) 2015-2018 Eike Hein <hein@kde.org>
Copyright (C) 2016 Jonathan Liu <net147@gmail.com>
Copyright (C) 2016 Kai Uwe Broulik <kde@privat.broulik.de>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.kquickcontrolsaddons 2.0 as KQuickControlsAddons
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.draganddrop 2.0
import org.kde.plasma.private.kicker 0.1 as Kicker
Item {
//anchors.fill: parent
anchors.topMargin: PlasmaCore.Units.smallSpacing
objectName: "FavoritesView"
property ListView listView: favoritesView.listView
function decrementCurrentIndex() {
favoritesView.decrementCurrentIndex();
}
function incrementCurrentIndex() {
favoritesView.incrementCurrentIndex();
}
function activateCurrentIndex() {
favoritesView.currentItem.activate();
}
function openContextMenu() {
favoritesView.currentItem.openActionMenu();
}
function getFavoritesCount() {
return favoritesView.count;
}
// QQuickItem::isAncestorOf is not invokable...
function isChildOf(item, parent) {
if (!item || !parent) {
return false;
}
if (item.parent === parent) {
return true;
}
return isChildOf(item, item.parent);
}
DropArea {
property int startRow: -1
anchors.fill: parent
enabled: plasmoid.immutability !== PlasmaCore.Types.SystemImmutable
function syncTarget(event) {
if (favoritesView.animating) {
return;
}
var pos = mapToItem(listView.contentItem, event.x, event.y);
var above = listView.itemAt(pos.x, pos.y);
var source = kickoff.dragSource;
if (above && above !== source && isChildOf(source, favoritesView)) {
favoritesView.model.moveRow(source.itemIndex, above.itemIndex);
// itemIndex changes directly after moving,
// we can just set the currentIndex to it then.
favoritesView.currentIndex = source.itemIndex;
}
}
onDragEnter: {
syncTarget(event);
startRow = favoritesView.currentIndex;
}
onDragMove: syncTarget(event)
}
Transition {
id: moveTransition
SequentialAnimation {
PropertyAction { target: favoritesView; property: "animating"; value: true }
NumberAnimation {
duration: favoritesView.animationDuration
properties: "x, y"
easing.type: Easing.OutQuad
}
PropertyAction { target: favoritesView; property: "animating"; value: false }
}
}
Connections {
target: plasmoid
function onExpandedChanged() {
if (!plasmoid.expanded) {
favoritesView.currentIndex = -1;
}
}
}
KickoffListView {
id: favoritesView
anchors.fill: parent
property bool animating: false
property int animationDuration: resetAnimationDurationTimer.interval
interactive: contentHeight > height
move: moveTransition
moveDisplaced: moveTransition
model: globalFavorites
onCountChanged: {
animationDuration = 0;
resetAnimationDurationTimer.start();
}
}
Timer {
id: resetAnimationDurationTimer
interval: 150
onTriggered: favoritesView.animationDuration = interval - 20
}
}

View file

@ -0,0 +1,154 @@
import QtQuick 2.0
ListModel {
id: listModel
property var list: []
property var sectionIcons: { return {} }
signal refreshing()
signal refreshed()
onListChanged: {
clear()
for (var i = 0; i < list.length; i++) {
append(list[i]);
}
}
function parseAppsModelItem(model, i) {
// https://github.com/KDE/plasma-desktop/blob/master/applets/kicker/plugin/actionlist.h#L30
var DescriptionRole = Qt.UserRole + 1;
var GroupRole = DescriptionRole + 1;
var FavoriteIdRole = DescriptionRole + 2;
var IsSeparatorRole = DescriptionRole + 3;
var IsDropPlaceholderRole = DescriptionRole + 4;
var IsParentRole = DescriptionRole + 5;
var HasChildrenRole = DescriptionRole + 6;
var HasActionListRole = DescriptionRole + 7;
var ActionListRole = DescriptionRole + 8;
var UrlRole = DescriptionRole + 9;
var modelIndex = model.index(i, 0);
var item = {
parentModel: model,
indexInParent: i,
name: model.data(modelIndex, Qt.DisplayRole),
description: model.data(modelIndex, DescriptionRole),
favoriteId: model.data(modelIndex, FavoriteIdRole),
largeIcon: false, // for KickerListView
};
if (typeof model.name === 'string') {
item.parentName = model.name
}
// ListView.append() doesn't like it when we have { key: [object] }.
var url = model.data(modelIndex, UrlRole);
if (typeof url === 'object') {
url = url.toString();
}
if (typeof url === 'string') {
item.url = url
}
var icon = model.data(modelIndex, Qt.DecorationRole);
if (typeof icon === 'object') {
item.icon = icon
} else if (typeof icon === 'string') {
item.iconName = icon
}
return item;
}
function parseModel(appList, model, path) {
// console.log(path, model, model.description, model.count);
for (var i = 0; i < model.count; i++) {
var item = model.modelForRow(i);
if (!item) {
item = parseAppsModelItem(model, i);
}
var itemPath = (path || []).concat(i);
if (item && item.hasChildren) {
// console.log(item)
parseModel(appList, item, itemPath);
} else {
// console.log(itemPath, item, item.description);
appList.push(item);
}
}
}
function refresh() {
refreshing()
refreshed()
}
function log() {
for (var i = 0; i < list.length; i++) {
var item = list[i];
console.log(JSON.stringify({
name: item.name,
description: item.description,
}, null, '\t'))
}
}
function triggerIndex(index) {
var item = list[index]
item.parentModel.trigger(item.indexInParent, "", null);
itemTriggered()
}
signal itemTriggered()
function hasActionList(index) {
var DescriptionRole = Qt.UserRole + 1;
var HasActionListRole = DescriptionRole + 7;
var item = list[index]
var modelIndex = item.parentModel.index(item.indexInParent, 0)
return item.parentModel.data(modelIndex, HasActionListRole)
}
function getActionList(index) {
var DescriptionRole = Qt.UserRole + 1;
var ActionListRole = DescriptionRole + 8;
var item = list[index]
var modelIndex = item.parentModel.index(item.indexInParent, 0)
return item.parentModel.data(modelIndex, ActionListRole)
}
function triggerIndexAction(index, actionId, actionArgument) {
// kicker/code/tools.js triggerAction()
var item = list[index]
item.parentModel.trigger(item.indexInParent, actionId, actionArgument)
itemTriggered()
}
function getByValue(key, value) {
for (var i = 0; i < count; i++) {
var item = get(i)
if (item[key] == value) {
return item
}
}
return null
}
function hasApp(favoriteId) {
for (var i = 0; i < count; i++) {
var item = get(i);
if (item.favoriteId == favoriteId) {
return true
}
}
}
}

View file

@ -0,0 +1,67 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.kquickcontrolsaddons 2.0
PlasmaComponents.TabButton {
id: button
objectName: "KickoffButton"
property string iconSource
property alias text: labelElement.text
implicitHeight: iconElement.height + labelElement.implicitHeight + iconElement.anchors.topMargin + labelElement.anchors.topMargin + labelElement.anchors.bottomMargin
Item {
anchors {
margins: PlasmaCore.Units.smallSpacing
left: parent.left
right: parent.right
verticalCenter: parent.verticalCenter
}
height: childrenRect.height
PlasmaCore.IconItem {
id: iconElement
anchors.horizontalCenter: parent.horizontalCenter
width: PlasmaCore.Units.iconSizes.medium
height: width
source: iconSource
}
PlasmaComponents.Label {
id: labelElement
anchors {
top: iconElement.bottom
left: parent.left
right: parent.right
}
horizontalAlignment: Text.AlignHCenter
elide: Text.ElideRight
wrapMode: Text.WordWrap
font: theme.smallestFont
}
}
} // button

View file

@ -0,0 +1,31 @@
/*
* Copyright 2014 Sebastian Kügler <sebas@kde.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
Item {
PlasmaComponents.Highlight {
anchors {
fill: parent
leftMargin: PlasmaCore.Units.smallSpacing
rightMargin: PlasmaCore.Units.smallSpacing
}
}
}

View file

@ -0,0 +1,191 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Gregor Taetzner <gregor@freenet.de>
Copyright 2014 Sebastian Kügler <sebas@kde.org>
Copyright (C) 2015-2018 Eike Hein <hein@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.draganddrop 2.0
import QtGraphicalEffects 1.15
import "code/tools.js" as Tools
Item {
id: listItem
enabled: !model.disabled && !(model.display === "" || model.display === "Recent Applications")
visible: !(model.display === "" || model.display === "Recent Applications")
width: ListView.view.width
height: model.display === "" || model.display === "Recent Applications" ? 0 : (PlasmaCore.Units.smallSpacing * 2) + Math.max(elementIcon.height, titleElement.implicitHeight + subTitleElement.implicitHeight)
signal reset
signal actionTriggered(string actionId, variant actionArgument)
signal aboutToShowActionMenu(variant actionMenu)
signal addBreadcrumb(var model, string title)
readonly property int itemIndex: model.index
readonly property string url: model.url || ""
readonly property var decoration: model.decoration || ""
property bool dropEnabled: false
property bool appView: false
property bool modelChildren: model.hasChildren || false
property bool isCurrent: listItem.ListView.view.currentIndex === index;
property bool showAppsByName: plasmoid.configuration.showAppsByName
property bool hasActionList: ((model.favoriteId !== null)
|| (("hasActionList" in model) && (model.hasActionList === true)))
property Item menu: actionMenu
property alias usePlasmaIcon: elementIcon.usesPlasmaTheme
onAboutToShowActionMenu: {
var actionList = hasActionList ? model.actionList : [];
Tools.fillActionMenu(i18n, actionMenu, actionList, ListView.view.model.favoritesModel, model.favoriteId);
}
onActionTriggered: {
if (Tools.triggerAction(ListView.view.model, model.index, actionId, actionArgument) === true) {
plasmoid.expanded = false;
}
if (actionId.indexOf("_kicker_favorite_") === 0) {
switchToInitial();
}
}
function activate() {
var view = listItem.ListView.view;
if (model.hasChildren) {
var childModel = view.model.modelForRow(index);
listItem.addBreadcrumb(childModel, display);
view.model = childModel;
} else {
view.model.trigger(index, "", null);
plasmoid.expanded = false;
listItem.reset();
}
}
function openActionMenu(x, y) {
aboutToShowActionMenu(actionMenu);
actionMenu.visualParent = listItem;
actionMenu.open(x, y);
}
ActionMenu {
id: actionMenu
onActionClicked: {
actionTriggered(actionId, actionArgument);
}
}
PlasmaCore.IconItem {
id: elementIcon
anchors {
left: parent.left
leftMargin: PlasmaCore.Units.smallSpacing * 2
verticalCenter: parent.verticalCenter
}
width: PlasmaCore.Units.iconSizes.medium
height: width
animated: false
usesPlasmaTheme: false
source: model.decoration
}
PlasmaComponents.Label {
id: titleElement
y: Math.round((parent.height - titleElement.height - ( (subTitleElement.text != "") ? subTitleElement.implicitHeight : 0) ) / 2)
anchors {
//bottom: elementIcon.verticalCenter
left: elementIcon.right
right: arrow.left
leftMargin: PlasmaCore.Units.smallSpacing * 4
rightMargin: PlasmaCore.Units.smallSpacing * 6
}
height: implicitHeight //undo PC2 height override, remove when porting to PC3
// TODO: games should always show the by name!
text: model.display
elide: Text.ElideRight
horizontalAlignment: Text.AlignLeft
color: "#000000"
}
PlasmaComponents.Label {
id: subTitleElement
anchors {
left: titleElement.left
right: arrow.right
top: titleElement.bottom
}
height: implicitHeight
color: "#000000"
text: model.description || ""
opacity: isCurrent ? 0.8 : 0.6
font: theme.smallestFont
elide: Text.ElideMiddle
horizontalAlignment: Text.AlignLeft
}
PlasmaCore.SvgItem {
id: arrow
anchors {
right: parent.right
rightMargin: PlasmaCore.Units.smallSpacing * 6
verticalCenter: parent.verticalCenter
}
width: visible ? PlasmaCore.Units.iconSizes.small : 0
height: width
visible: (model.hasChildren === true)
opacity: (listItem.ListView.view.currentIndex === index) ? 1.0 : 0.8
svg: arrowsSvg
elementId: (Qt.application.layoutDirection == Qt.RightToLeft) ? "left-arrow" : "right-arrow"
Colorize {
anchors.fill: arrow
source: arrow
hue: 0
saturation: 0.0
lightness: -0.6
}
}
Keys.onPressed: {
if (event.key === Qt.Key_Menu && hasActionList) {
event.accepted = true;
openActionMenu();
} else if ((event.key === Qt.Key_Enter || event.key === Qt.Key_Return) && !modelChildren) {
if (!modelChildren) {
event.accepted = true;
listItem.activate();
}
}
}
} // listItem

View file

@ -0,0 +1,211 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Gregor Taetzner <gregor@freenet.de>
Copyright (C) 2015-2018 Eike Hein <hein@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.components 2.0 as PlasmaComponents
FocusScope {
id: view
signal reset
signal addBreadcrumb(var model, string title)
readonly property Item listView: listView
readonly property Item scrollArea: scrollArea
property bool showAppsByName: true
property bool appView: false
property alias model: listView.model
property alias delegate: listView.delegate
property alias currentIndex: listView.currentIndex
property alias currentItem: listView.currentItem
property alias count: listView.count
property alias interactive: listView.interactive
property alias contentHeight: listView.contentHeight
property alias move: listView.move
property alias moveDisplaced: listView.moveDisplaced
function incrementCurrentIndex() {
listView.incrementCurrentIndex();
}
function decrementCurrentIndex() {
listView.decrementCurrentIndex();
}
Connections {
target: plasmoid
function onExpandedChanged() {
if (!plasmoid.expanded) {
listView.positionViewAtBeginning();
}
}
}
PlasmaExtras.ScrollArea {
id: scrollArea
frameVisible: false
anchors.fill: parent
ListView {
id: listView
focus: true
keyNavigationWraps: true
boundsBehavior: Flickable.StopAtBounds
highlight: KickoffHighlight {}
highlightMoveDuration : 0
highlightResizeDuration: 0
delegate: KickoffItem {
id: delegateItem
appView: view.appView
showAppsByName: view.showAppsByName
onReset: view.reset()
onAddBreadcrumb: view.addBreadcrumb(model, title)
}
section {
property: "group"
criteria: ViewSection.FullString
delegate: SectionDelegate {}
}
MouseArea {
anchors.left: parent.left
width: scrollArea.viewport.width
height: parent.height
id: mouseArea
property Item pressed: null
property int pressX: -1
property int pressY: -1
property bool tapAndHold: false
hoverEnabled: true
acceptedButtons: Qt.LeftButton | Qt.RightButton
onPressed: {
var mapped = listView.mapToItem(listView.contentItem, mouse.x, mouse.y);
var item = listView.itemAt(mapped.x, mapped.y);
if (!item) {
return;
}
if (mouse.buttons & Qt.RightButton) {
if (item.hasActionList) {
mapped = listView.contentItem.mapToItem(item, mapped.x, mapped.y);
listView.currentItem.openActionMenu(mapped.x, mapped.y);
}
} else {
pressed = item;
pressX = mouse.x;
pressY = mouse.y;
}
}
onReleased: {
var mapped = listView.mapToItem(listView.contentItem, mouse.x, mouse.y);
var item = listView.itemAt(mapped.x, mapped.y);
if (item && pressed === item && !tapAndHold) {
if (item.appView) {
if (mouse.source == Qt.MouseEventSynthesizedByQt) {
positionChanged(mouse);
}
view.state = "OutgoingLeft";
} else {
item.activate();
}
listView.currentIndex = -1;
}
if (tapAndHold && mouse.source == Qt.MouseEventSynthesizedByQt) {
if (item.hasActionList) {
mapped = listView.contentItem.mapToItem(item, mapped.x, mapped.y);
listView.currentItem.openActionMenu(mapped.x, mapped.y);
}
}
pressed = null;
pressX = -1;
pressY = -1;
tapAndHold = false;
}
onPositionChanged: {
var mapped = listView.mapToItem(listView.contentItem, mouse.x, mouse.y);
var item = listView.itemAt(mapped.x, mapped.y);
if (item) {
listView.currentIndex = item.itemIndex;
} else {
listView.currentIndex = -1;
}
if (mouse.source != Qt.MouseEventSynthesizedByQt || tapAndHold) {
if (pressed && pressX != -1 && pressed.url && dragHelper.isDrag(pressX, pressY, mouse.x, mouse.y)) {
kickoff.dragSource = item;
if (mouse.source == Qt.MouseEventSynthesizedByQt) {
dragHelper.dragIconSize = PlasmaCore.Units.iconSizes.huge
dragHelper.startDrag(kickoff, pressed.url, pressed.decoration);
} else {
dragHelper.dragIconSize = PlasmaCore.Units.iconSizes.medium
dragHelper.startDrag(kickoff, pressed.url, pressed.decoration);
}
pressed = null;
pressX = -1;
pressY = -1;
tapAndHold = false;
}
}
}
onContainsMouseChanged: {
if (!containsMouse) {
pressed = null;
pressX = -1;
pressY = -1;
tapAndHold = false;
listView.currentIndex = -1;
}
}
onPressAndHold: {
if (mouse.source == Qt.MouseEventSynthesizedByQt) {
tapAndHold = true;
positionChanged(mouse);
}
}
}
}
}
}

View file

@ -40,12 +40,13 @@ import org.kde.plasma.private.quicklaunch 1.0
import QtQuick.Dialogs 1.2 import QtQuick.Dialogs 1.2
PlasmaCore.Dialog { PlasmaCore.Dialog {
id: root id: root
objectName: "popupWindow" objectName: "popupWindow"
flags: Qt.WindowStaysOnTopHint flags: Qt.WindowStaysOnTopHint
location: PlasmaCore.Types.BottomEdge location: PlasmaCore.Types.BottomEdge
//clip: true
hideOnWindowDeactivate: true hideOnWindowDeactivate: true
property int iconSize: units.iconSizes.medium property int iconSize: units.iconSizes.medium
property int iconSizeSide: units.iconSizes.smallMedium property int iconSizeSide: units.iconSizes.smallMedium
@ -54,6 +55,7 @@ PlasmaCore.Dialog {
property int cellHeight: iconSize + ( Math.max(highlightItemSvg.margins.top + highlightItemSvg.margins.bottom, property int cellHeight: iconSize + ( Math.max(highlightItemSvg.margins.top + highlightItemSvg.margins.bottom,
highlightItemSvg.margins.left + highlightItemSvg.margins.right)) highlightItemSvg.margins.left + highlightItemSvg.margins.right))
property bool searching: (searchField.text != "") property bool searching: (searchField.text != "")
property bool showingAllPrograms: false
onVisibleChanged: { onVisibleChanged: {
if (!visible) { if (!visible) {
@ -80,7 +82,7 @@ PlasmaCore.Dialog {
onSearchingChanged: { onSearchingChanged: {
if (searching) { if (searching) {
pageList.model = runnerModel; //pageList.model = runnerModel;
} else { } else {
reset(); reset();
@ -89,12 +91,12 @@ PlasmaCore.Dialog {
function reset() { function reset() {
if (!searching) { if (!searching) {
pageList.model = rootModel.modelForRow(0); //pageList.model = rootModel.modelForRow(0);
pageList.currentIndex = 1; //pageList.currentIndex = 1;
} }
searchField.text = ""; searchField.text = "";
pageListScrollArea.focus = true; //pageListScrollArea.focus = true;
pageList.currentItem.itemGrid.currentIndex = -1; //pageList.currentItem.itemGrid.currentIndex = -1;
} }
function popupPosition(width, height) { function popupPosition(width, height) {
@ -138,21 +140,25 @@ PlasmaCore.Dialog {
return Qt.point(x, y); return Qt.point(x, y);
} }
FocusScope { FocusScope {
//clip: true //clip: true
Layout.minimumWidth: root.cellWidth + root.cellWidthSide// + units.smallSpacing*3 Layout.minimumWidth: root.cellWidth + root.cellWidthSide// + units.smallSpacing*3
Layout.maximumWidth: root.cellWidth + root.cellWidthSide// + units.smallSpacing*3 Layout.maximumWidth: root.cellWidth + root.cellWidthSide// + units.smallSpacing*3
Layout.minimumHeight: (cellHeight * plasmoid.configuration.numberRows) + searchField.height + units.iconSizes.smallMedium Layout.minimumHeight: (cellHeight * plasmoid.configuration.numberRows) + searchField.height + units.iconSizes.smallMedium
Layout.maximumHeight: (cellHeight * plasmoid.configuration.numberRows) + searchField.height + units.iconSizes.smallMedium Layout.maximumHeight: (cellHeight * plasmoid.configuration.numberRows) + searchField.height + units.iconSizes.smallMedium
focus: true focus: true
KCoreAddons.KUser { id: kuser } KCoreAddons.KUser { id: kuser }
Logic { id: logic } Logic { id: logic }
Connections {
target: plasmoid.configuration
onNumberRowsChanged: {
recents.model = rootModel.modelForRow(0);
}
}
PlasmaCore.DataSource { PlasmaCore.DataSource {
id: pmEngine id: pmEngine
@ -207,9 +213,9 @@ PlasmaCore.Dialog {
id: actionMenu id: actionMenu
onActionClicked: visualParent.actionTriggered(actionId, actionArgument) onActionClicked: visualParent.actionTriggered(actionId, actionArgument)
onClosed: { onClosed: {
if (pageList.currentItem) { /*if (pageList.currentItem) {
pageList.currentItem.itemGrid.currentIndex = -1; pageList.currentItem.itemGrid.currentIndex = -1;
} }*/
} }
} }
@ -218,9 +224,9 @@ PlasmaCore.Dialog {
Rectangle { Rectangle {
id: backgroundRect id: backgroundRect
//anchors.fill: pageListScrollArea //anchors.fill: pageListScrollArea
anchors.top: pageListScrollArea.top anchors.top: faves.top
anchors.topMargin: -4 anchors.topMargin: -4
anchors.left: pageListScrollArea.left anchors.left: faves.left
//anchors.leftMargin: units.smallSpacing //anchors.leftMargin: units.smallSpacing
width: root.cellWidth width: root.cellWidth
height: (root.cellHeight * plasmoid.configuration.numberRows) + searchBackground.height + 4 height: (root.cellHeight * plasmoid.configuration.numberRows) + searchBackground.height + 4
@ -228,7 +234,13 @@ PlasmaCore.Dialog {
border.color: "#44000000" border.color: "#44000000"
border.width: 1 border.width: 1
radius: 3 radius: 3
z: 5
Behavior on width {
NumberAnimation { easing.type: Easing.Linear; duration: 150 }
//NumberAnimation { duration: 1000 }
}
Rectangle { Rectangle {
id: backgroundBorderLine
color: "#cddbea" color: "#cddbea"
radius: 3 radius: 3
anchors { anchors {
@ -237,16 +249,20 @@ PlasmaCore.Dialog {
//bottomMargin: units.smallSpacing //bottomMargin: units.smallSpacing
left: parent.left left: parent.left
leftMargin: 1 leftMargin: 1
} }
width: backgroundRect.width-2 width: backgroundRect.width-2
height: 2 height: 2
//height: backgroundRect //height: backgroundRect
z: 5 z: 5
} }
Rectangle { Rectangle {
id: searchBackground id: searchBackground
Behavior on width {
NumberAnimation { easing.type: Easing.Linear; duration: 150 }
//NumberAnimation { duration: 1000 }
}
color: "#F3F7FB" color: "#F3F7FB"
radius: 3 radius: 3
anchors { anchors {
@ -255,227 +271,340 @@ PlasmaCore.Dialog {
left: parent.left left: parent.left
leftMargin: 1 leftMargin: 1
} }
width: backgroundRect.width - 2 width: root.cellWidth - 2
height: searchField.height + units.smallSpacing * 4.5 height: searchField.height + units.smallSpacing * 4.5
} }
} }
PlasmaExtras.ScrollArea { FavoritesView {
id: pageListScrollArea id: faves
//color: "white"; anchors.left: parent.left
anchors { anchors.top: parent.top
//left: root.left //anchors.bottom: pageListScrollAreabottom
leftMargin: units.smallSpacing //anchors.right: pageListScrollArea.right
rightMargin: units.smallSpacing width: root.cellWidth
top: parent.top height: plasmoid.configuration.showRecentsView ? ((root.cellHeight * (faves.getFavoritesCount() > 9 ? 9 : faves.getFavoritesCount())) - units.smallSpacing * 2) : (root.cellHeight * plasmoid.configuration.numberRows - units.smallSpacing*2 - allProgramsButton.height - allProgramsSeparator.height)
topMargin: units.smallSpacing visible: !showingAllPrograms && !searching
} z: 8
}
width: root.cellWidth Rectangle {
height: (root.cellHeight * plasmoid.configuration.numberRows) id: tabBarSeparator
focus: true; anchors.top: faves.bottom
frameVisible: true; anchors.topMargin: units.smallSpacing
horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff anchors.left: parent.left
verticalScrollBarPolicy: Qt.ScrollBarAsNeeded anchors.leftMargin: units.smallSpacing*4
anchors.right: faves.right
ListView { anchors.rightMargin: units.smallSpacing*4
id: pageList height: 1
anchors.fill: parent color: "#d6e5f5"
opacity: 1
snapMode: ListView.SnapOneItem visible: plasmoid.configuration.showRecentsView && (!showingAllPrograms && !searching)
//color: "white"; z: 6
onCurrentIndexChanged: {
positionViewAtIndex(currentIndex, ListView.Contain); }
OftenUsedView {
id: recents
anchors.left: parent.left
anchors.top: faves.bottom
anchors.topMargin: units.smallSpacing*2
anchors.bottomMargin: units.smallSpacing
width: root.cellWidth
height: (root.cellHeight * plasmoid.configuration.numberRows) - (root.cellHeight * (faves.getFavoritesCount() > 9 ? 9 : faves.getFavoritesCount())) - units.smallSpacing*2 - allProgramsButton.height
visible: plasmoid.configuration.showRecentsView && (!showingAllPrograms && !searching)
z: 8
}
Rectangle {
id: allProgramsSeparator
anchors.top: plasmoid.configuration.showRecentsView ? recents.bottom : faves.bottom
//anchors.topMargin: units.smallSpacing
anchors.left: parent.left
anchors.leftMargin: units.smallSpacing*4
//anchors.right: faves.right
anchors.rightMargin: units.smallSpacing*4
width: root.cellWidth - units.smallSpacing*8
Behavior on width {
NumberAnimation { easing.type: Easing.Linear; duration: 150 }
} }
height: 1
onCurrentItemChanged: { color: "#d6e5f5"
if (!currentItem) { opacity: 1
return; //visible: !showingAllPrograms && !searching
z: 6
}
MouseArea {
id: allButtonsArea
hoverEnabled: true
anchors.top: plasmoid.configuration.showRecentsView ? recents.bottom : faves.bottom
anchors.topMargin: units.smallSpacing
anchors.left: parent.left
anchors.leftMargin: units.smallSpacing
anchors.rightMargin: units.smallSpacing
onClicked: {
if(searching)
{
searchField.text = "";
//searching = false;
console.log("stopped searching");
} }
else if(showingAllPrograms)
currentItem.itemGrid.focus = true; {
} showingAllPrograms = false;
appsView.reset();
onModelChanged: { console.log("showing normal view");
currentIndex = 0; }
} else if(!searching && !showingAllPrograms)
{
onFlickingChanged: { showingAllPrograms = true;
if (!flicking) { console.log("showing all apps");
var pos = mapToItem(contentItem, root.width / 2, root.height / 2);
var itemIndex = indexAt(pos.x, pos.y);
currentIndex = itemIndex;
} }
} }
height: 25
function cycle() { width: root.cellWidth - units.smallSpacing*2
enabled = false; Behavior on width {
enabled = true; NumberAnimation { easing.type: Easing.Linear; duration: 150 }
} }
z: 8
function activateNextPrev(next) { PlasmaCore.FrameSvgItem {
var newIndex id : allProgramsButton
if (next) {
newIndex = pageList.currentIndex + 1;
if (newIndex === pageList.count) {
return
}
pageList.currentIndex = newIndex;
} else {
newIndex = pageList.currentIndex - 1;
if (newIndex < 0) {
return
}
pageList.currentIndex = newIndex;
}
}
delegate: Item {
//color: "white";
width: root.cellWidth
height: gridView.model.count > plasmoid.configuration.numberRows ? plasmoid.configuration.numberRows * root.cellHeight : gridView.model.count * root.cellHeight
property Item itemGrid: gridView
ItemGridView {
id: gridView
anchors.fill: parent
cellWidth: root.cellWidth
cellHeight: root.cellHeight
horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff
verticalScrollBarPolicy: Qt.ScrollBarAlwaysOff
dragEnabled: (index == 0)
//color: "white";
model: searching ? runnerModel.modelForRow(index) : rootModel.modelForRow(0).modelForRow(index)
onCurrentIndexChanged: {
if (currentIndex != -1 && !searching) {
pageListScrollArea.focus = true; //visible: true
focus = true; anchors.fill: parent
} imagePath: "widgets/viewitem"
}
prefix: "hover"
onCountChanged: { visible: allButtonsArea.containsMouse ? true : false
if (searching && index == 0) { //z:7
currentIndex = 0;
}
}
}
onKeyNavUp: { PlasmaCore.SvgItem {
var newIndex = pageList.currentIndex - 1; id: arrowDirection
if (!searching && newIndex === 0) { svg: arrowsSvg
currentIndex = -1; elementId: (searching || showingAllPrograms) ? "left-arrow" : "right-arrow"
searchField.focus = true; anchors.left: parent.left
return anchors.verticalCenter: parent.verticalCenter
} anchors.leftMargin: units.smallSpacing
if(searching && newIndex < 0) { width: 16
currentIndex = -1; height: 16
searchField.focus = true; Colorize {
return anchors.fill: arrowDirection
} source: arrowDirection
pageList.currentIndex = newIndex; hue: 0.0
pageList.currentItem.itemGrid.tryActivate(pageList.currentItem.itemGrid.model.count-1, 0); saturation: 0.0
lightness: -0.6
} }
}
onKeyNavDown: { Text {
var newIndex = pageList.currentIndex + 1; text: showingAllPrograms || searching ? "Back" : "All programs"
if (newIndex === pageList.count) { font.pixelSize: 12
return //color: searching ? "#202020" : "white"
} anchors.left: arrowDirection.right
pageList.currentIndex = newIndex; anchors.leftMargin: units.smallSpacing
pageList.currentItem.itemGrid.tryActivate(0, 0); //anchors.horizontalCenter: parent.horizontalCenter
} anchors.verticalCenter: parent.verticalCenter
} }
Kicker.WheelInterceptor { }
anchors.fill: parent
z: 1
property int wheelDelta: 0 SearchView {
function scrollByWheel(wheelDelta, eventDelta) { id: searchView
// magic number 120 for common "one click" anchors.top: parent.top
// See: http://qt-project.org/doc/qt-5/qml-qtquick-wheelevent.html#angleDelta-prop anchors.topMargin: units.smallSpacing*2 -4
wheelDelta += eventDelta; anchors.left: parent.left
var increment = 0; anchors.right: parent.right
while (wheelDelta >= 120) { //anchors.rightMargin: units.smallSpacing -2
wheelDelta -= 120; anchors.bottom: allProgramsSeparator.top
increment++; height: root.cellHeight * plasmoid.configuration.numberRows - units.smallSpacing*2 - allProgramsButton.height
} //Layout.fillWidth: true
while (wheelDelta <= -120) { opacity: 0
wheelDelta += 120; Behavior on opacity {
increment--; NumberAnimation { easing.type: Easing.OutQuart; duration: 450 }
} }
while (increment != 0) { z: 7
pageList.activateNextPrev(increment < 0); //visible: !showingAllPrograms && searching
increment += (increment < 0) ? 1 : -1; }
} ApplicationsView {
return wheelDelta; id: appsView
} anchors.top: parent.top
onWheelMoved: { anchors.left: parent.left
wheelDelta = scrollByWheel(wheelDelta, delta.y); anchors.right: faves.right
} width: root.cellWidth
} height: (root.cellHeight * plasmoid.configuration.numberRows) - units.smallSpacing*2 - allProgramsButton.height
opacity: 0
z: 1
} function resetIndex() {
appsView.listView.currentIndex = -1;
} }
} }
states: [
TextField {
State {
name: "AllPrograms"; when: !searching && showingAllPrograms
PropertyChanges {
target: faves; opacity: 0;
}
PropertyChanges {
target: recents; opacity: 0;
}
PropertyChanges {
target: tabBarSeparator; opacity: 0;
}
PropertyChanges {
target: appsView; opacity: 1;
}
PropertyChanges {
target: appsView; z: 7;
}
StateChangeScript {
script: appsView.resetIndex();
//target: appsView.applicationsView.listView; currentIndex: -1;
}
},
State {
name: "Searching"; when: searching// && !showingAllPrograms
PropertyChanges {
target: searchView; opacity: (backgroundRect.width === searchView.width ? 1 : 0);
}
PropertyChanges {
target: faves; opacity: 0;
}
PropertyChanges {
target: recents; opacity: 0;
}
PropertyChanges {
target: tabBarSeparator; opacity: 0;
}
PropertyChanges {
target: searchBackground; width: searchView.width - units.smallSpacing;
}
PropertyChanges {
target: backgroundRect; width: searchView.width;
}
PropertyChanges {
target: allProgramsButton; width: searchView.width - units.smallSpacing*2;
}
PropertyChanges {
target: allProgramsSeparator; width: searchView.width - units.smallSpacing*8;
}
PropertyChanges {
target: allButtonsArea; width: searchView.width - units.smallSpacing*2;
}
PropertyChanges {
target: sidePanel; opacity: 0;
}
/*PropertyChanges {
target: appsView; opacity: 0;
}*/
PropertyChanges {
target: sidePanel; enabled: false
}
/*PropertyChanges {
target: searchBackground; width: searchView.width
}*/
}
]
transitions: [
Transition {
PropertyAnimation { properties: "opacity"; easing.type: Easing.InOutQuad; duration: 350 }
}
/*Transition {
NumberAnimation { properties: "width"; easing.type: Easing.OutQuad; duration: 250 }
}*/
]
PlasmaComponents.TextField {
id: searchField id: searchField
anchors{ anchors{
//top: leaveButtons.top //top: leaveButtons.top
bottom: parent.bottom bottom: parent.bottom
bottomMargin: units.smallSpacing * 2.5 bottomMargin: units.smallSpacing * 2.5
left: parent.left left: parent.left
right: sidePanel.left + units.largeSpacing right: faves.right// + units.largeSpacing
rightMargin: units.largeSpacing * 3 rightMargin: units.smallSpacing * 2
leftMargin: units.smallSpacing * 2 leftMargin: units.smallSpacing * 2
} }
style: TextFieldStyle { style: TextFieldStyle {
textColor: "black" textColor: "black"
placeholderTextColor: "#707070"
font.italic: searchField.length == 0 ? true : false
Rectangle { Rectangle {
anchors.fill: parent anchors.fill: parent
color: "white" } color: "white" }
} }
z: 7
clearButtonShown: true
width: backgroundRect.width - units.smallSpacing * 4 width: root.cellWidth - units.smallSpacing * 4
height: shutdown.height - units.smallSpacing height: shutdown.height - units.smallSpacing
placeholderText: i18n("Search programs and files") placeholderText: i18n("Search programs and files")
text: "" text: ""
onTextChanged: { onTextChanged: {
runnerModel.query = text;
searchView.onQueryChanged();
//runnerModel.query = text;
} }
Keys.onPressed: { Keys.onPressed: {
if (event.key == Qt.Key_Down) { if(searching)
event.accepted = true; {
console.log("$ ",pageList.currentItem.itemGrid.model.count, pageList.currentItem.itemGrid.currentIndex) var currentView = searchView;
if(pageList.currentItem.itemGrid.model.count > 1 && pageList.currentItem.itemGrid.currentIndex !== -1) switch(event.key) {
pageList.currentItem.itemGrid.tryActivate(1, 0); case Qt.Key_Up: {
else // @todo query next group currentView.decrementCurrentIndex();
pageList.currentItem.itemGrid.tryActivate(0, 0); event.accepted = true;
} else if (event.key == Qt.Key_Right) { break;
}
} else if (event.key == Qt.Key_Return || event.key == Qt.Key_Enter) { case Qt.Key_Down: {
if (text != "" && pageList.currentItem.itemGrid.count > 0) { currentView.incrementCurrentIndex();
event.accepted = true; event.accepted = true;
pageList.currentItem.itemGrid.tryActivate(0, 0); break;
pageList.currentItem.itemGrid.model.trigger(0, "", null); }
root.visible = false; /*case Qt.Key_Left: {
} if (searchField.focus && header.state == "query") {
} else if (event.key == Qt.Key_Tab) { break;
event.accepted = true; }
} else if (event.key == Qt.Key_Backtab) { if (!currentView.deactivateCurrentIndex()) {
event.accepted = true; if (root.state == "Applications") {
if (!searching) { mainTabGroup.currentTab = firstButton.tab;
filterList.forceActiveFocus(); tabBar.currentTab = firstButton;
} }
root.state = "Normal"
}
event.accepted = true;
break;
}
case Qt.Key_Right: {
if (header.input.focus && header.state == "query") {
break;
}
currentView.activateCurrentIndex();
event.accepted = true;
break;
}*/
/*case Qt.Key_Tab: {
root.state == "Applications" ? root.state = "Normal" : root.state = "Applications";
event.accepted = true;
break;
}*/
case Qt.Key_Enter:
case Qt.Key_Return: {
currentView.activateCurrentIndex(1);
event.accepted = true;
break;
}
default:
if (!searchField.focus) {
searchField.forceActiveFocus();
}
}
} }
} }
@ -502,8 +631,9 @@ PlasmaCore.Dialog {
id: sidePanel id: sidePanel
width: root.cellWidthSide width: root.cellWidthSide
height: parent.height height: parent.height
z: 7
anchors{ anchors{
left: pageListScrollArea.right left: faves.right
right: parent.right right: parent.right
top: parent.top top: parent.top
bottom: parent.bottom bottom: parent.bottom
@ -540,12 +670,12 @@ PlasmaCore.Dialog {
height: units.iconSizes.huge height: units.iconSizes.huge
width: height width: height
color: "transparent" color: "transparent"
anchors.left: parent.width clip: true
//anchors.left: parent.width
anchors.leftMargin: units.smallSpacing anchors.leftMargin: units.smallSpacing
anchors.top: parent.top anchors.top: parent.top
anchors.topMargin: units.smallSpacing * 0.5 anchors.topMargin: -units.smallSpacing
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
// Image { // Image {
Image { Image {
source: "../pics/user.png" source: "../pics/user.png"
@ -553,22 +683,29 @@ PlasmaCore.Dialog {
z: 1 z: 1
//anchors.fill: parent //anchors.fill: parent
anchors.left: parent.left anchors.left: parent.left
anchors.leftMargin: -units.smallSpacing*2.2 //anchors.leftMargin: -units.smallSpacing*2.2
anchors.right: parent.right anchors.right: parent.right
anchors.rightMargin: -units.smallSpacing*2.2 //anchors.rightMargin: -units.smallSpacing*2.2
anchors.bottom: parent.bottom anchors.bottom: parent.bottom
anchors.bottomMargin: -units.smallSpacing*1.7 //anchors.bottomMargin: -units.smallSpacing*1.7
anchors.top: parent.top anchors.top: parent.top
anchors.topMargin: -units.smallSpacing*2.2 //anchors.topMargin: -units.smallSpacing*2.2
//width: parent.width + units.smallSpacing * 2 //width: parent.width + units.smallSpacing * 2
//height: parent.height + units.smallSpacing * 2 //height: parent.height + units.smallSpacing * 2
} }
PlasmaCore.IconItem { PlasmaCore.IconItem {
id: imgAuthor id: imgAuthor
anchors.fill: parent anchors.top: parent.top
anchors.left: parent.left
anchors.right: parent.right
anchors.bottom: parent.bottom
anchors.topMargin: 2
anchors.leftMargin: 2
anchors.rightMargin: 2
anchors.bottomMargin: 2
source: kuser.faceIconUrl.toString() || "user-identity" source: kuser.faceIconUrl.toString() || "user-identity"
smooth: true
visible: false visible: false
usesPlasmaTheme: false usesPlasmaTheme: false
@ -579,7 +716,7 @@ PlasmaCore.Dialog {
maskSource: Rectangle { maskSource: Rectangle {
width: imgAuthor.width width: imgAuthor.width
height: imgAuthor.height height: imgAuthor.height
radius: iconUser.width*0.5 //radius: iconUser.width*0.5
visible: false visible: false
} }
} }
@ -593,7 +730,8 @@ PlasmaCore.Dialog {
} }
} }
} }
ColumnLayout{ ColumnLayout {
id: columnItems
spacing: units.smallSpacing spacing: units.smallSpacing
anchors.top: iconUser.bottom anchors.top: iconUser.bottom
anchors.topMargin: units.largeSpacing anchors.topMargin: units.largeSpacing
@ -602,8 +740,7 @@ PlasmaCore.Dialog {
anchors.right: parent.right anchors.right: parent.right
ListDelegate { ListDelegate {
text: kuser.loginName
text: "Home"
//highlight: delegateHighlight //highlight: delegateHighlight
icon: "user-home" icon: "user-home"
size: iconSizeSide size: iconSizeSide
@ -887,16 +1024,24 @@ PlasmaCore.Dialog {
height: units.smallSpacing height: units.smallSpacing
} }
RowLayout{
}
}
RowLayout{
id: leaveButtons id: leaveButtons
width: parent.width width: units.smallSpacing*28
height: units.smallSpacing * 7
z: 7
anchors{ anchors{
//top: leaveButtons.top //top: leaveButtons.top
//bottom: searchField.bottom //bottom: searchField.bottom
bottom: parent.bottom top: searchField.top
bottomMargin: -units.smallSpacing * 3.0 + 1 topMargin: -units.smallSpacing/2
left: parent.left //bottom: searchField.bottom
//bottomMargin: -units.smallSpacing * 3
left: searchField.right
leftMargin: units.smallSpacing*4-1
} }
//anchors.top: searchField.top //anchors.top: searchField.top
//anchors.topMargin: searchField.topMargin //anchors.topMargin: searchField.topMargin
@ -905,20 +1050,15 @@ PlasmaCore.Dialog {
//text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Shut Down") //text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Shut Down")
id: shutdown id: shutdown
width: units.smallSpacing * 20 width: units.smallSpacing * 20
height: units.smallSpacing * 7 height: units.smallSpacing * 7-2
Text { Text {
text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Shut Down") text: i18nd("plasma_lookandfeel_org.kde.lookandfeel", "Shut Down")
font.pixelSize: 12 font.pixelSize: 12
color: "white" color: searching ? "#202020" : PlasmaCore.Theme.textColor
anchors.horizontalCenter: parent.horizontalCenter anchors.horizontalCenter: parent.horizontalCenter
anchors.verticalCenter: parent.verticalCenter anchors.verticalCenter: parent.verticalCenter
//anchors.fill: parent
} }
//highlight: delegateHighlight
//icon: "system-log-out"
size: iconSizeSide size: iconSizeSide
//showIcon: false
//onClicked: pmEngine.performOperation("requestShutDown")
Image { Image {
id: shutdownButton id: shutdownButton
MouseArea { MouseArea {
@ -957,7 +1097,7 @@ PlasmaCore.Dialog {
//text: i18nc("@action", "Lock Screen") //text: i18nc("@action", "Lock Screen")
width: units.smallSpacing * 8 width: units.smallSpacing * 8
anchors.left: shutdown.right anchors.left: shutdown.right
anchors.leftMargin: -units.smallSpacing anchors.leftMargin: -1
anchors.top: shutdown.top anchors.top: shutdown.top
height: shutdown.height height: shutdown.height
@ -999,7 +1139,17 @@ PlasmaCore.Dialog {
source: "../pics/system-lock-screen.svg" source: "../pics/system-lock-screen.svg"
width: parent.height - units.smallSpacing width: parent.height - units.smallSpacing
height: parent.height - units.smallSpacing height: parent.height - units.smallSpacing
anchors.horizontalCenter: parent.horizontalCenter //anchors.horizontalCenter: parent.horizontalCenter
anchors.left: parent.left
anchors.leftMargin: units.smallSpacing
ColorOverlay {
anchors.fill: lockScreenSvg
source: lockScreenSvg
/*hue: 0.0
saturation: 0.0
lightness: searching ? -0.5 : 1.0*/
color: searching ? "#FF202020" : PlasmaCore.Theme.textColor
}
} }
//highlight: delegateHighlight //highlight: delegateHighlight
enabled: pmEngine.data["Sleep States"]["LockScreen"] enabled: pmEngine.data["Sleep States"]["LockScreen"]
@ -1008,8 +1158,6 @@ PlasmaCore.Dialog {
onClicked: pmEngine.performOperation("lockScreen") onClicked: pmEngine.performOperation("lockScreen")
} }
} }
}
}
Keys.onPressed: { Keys.onPressed: {
@ -1018,6 +1166,9 @@ PlasmaCore.Dialog {
if (searching) { if (searching) {
reset(); reset();
} else if(showingAllPrograms) {
showingAllPrograms = false;
appsView.reset();
} else { } else {
root.visible = false; root.visible = false;
} }
@ -1032,11 +1183,11 @@ PlasmaCore.Dialog {
if (event.key == Qt.Key_Backspace) { if (event.key == Qt.Key_Backspace) {
event.accepted = true; event.accepted = true;
searchField.backspace(); searchField.backspace();
} else if (event.key == Qt.Key_Tab || event.key == Qt.Key_Backtab) { /*} else if (event.key == Qt.Key_Tab || event.key == Qt.Key_Backtab) {
if (pageListScrollArea.focus == true && pageList.currentItem.itemGrid.currentIndex == -1) { if (pageListScrollArea.focus == true && pageList.currentItem.itemGrid.currentIndex == -1) {
event.accepted = true; event.accepted = true;
pageList.currentItem.itemGrid.tryActivate(0, 0); pageList.currentItem.itemGrid.tryActivate(0, 0);
} }*/
} else if (event.text != "") { } else if (event.text != "") {
event.accepted = true; event.accepted = true;
searchField.appendText(event.text); searchField.appendText(event.text);
@ -1047,7 +1198,8 @@ PlasmaCore.Dialog {
Component.onCompleted: { Component.onCompleted: {
kicker.reset.connect(reset); kicker.reset.connect(reset);
dragHelper.dropped.connect(pageList.cycle); //dragHelper.dropped.connect(pageList.cycle);
reset(); reset();
faves.listView.currentIndex = -1;
} }
} }

View file

@ -0,0 +1,61 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Marco Martin <mart@kde.org>
Copyright (C) 2015 Eike Hein <hein@kde.org>
Copyright (C) 2017 Ivan Cukic <ivan.cukic@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.private.kicker 0.1 as Kicker
/*Kicker.RecentUsageModel {
id: recentsModel
favoritesModel: globalFavorites
ordering: 1 // Popular / Often Used
Component.onCompleted: {
var sectionsCount = 0;
for(var i = 0; i < recentsModel.count; i++)
{
if(recentsModel.get(i).objectName === "SectionDelegate")
{
if(recentsModel.get(i).getName() === "Files")
{
}
sectionsCount++;
recentsModel.remove(i);
i--;
continue;
}
if(sectionsCount === 2)
{
}
}
}
}*/
BaseView {
id: recentsModel
objectName: "OftenUsedView"
model: Kicker.RecentUsageModel {
favoritesModel: globalFavorites//rootModel.modelForRow(0)
ordering: 1
shownItems: Kicker.RecentUsageModel.OnlyApps
}
}

View file

@ -0,0 +1,31 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Marco Martin <mart@kde.org>
Copyright (C) 2015 Eike Hein <hein@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.private.kicker 0.1 as Kicker
BaseView {
objectName: "RecentlyUsedView"
model: Kicker.RecentUsageModel {
favoritesModel: globalFavorites
}
}

View file

@ -0,0 +1,88 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Gregor Taetzner <gregor@freenet.de>
Copyright (C) 2015-2018 Eike Hein <hein@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.extras 2.0 as PlasmaExtras
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.private.kicker 0.1 as Kicker
Item {
id: searchViewContainer
//anchors.fill: parent
objectName: "SearchView"
function decrementCurrentIndex() {
searchView.decrementCurrentIndex();
}
function incrementCurrentIndex() {
searchView.incrementCurrentIndex();
}
function activateCurrentIndex() {
searchView.currentItem.activate();
}
function openContextMenu() {
searchView.currentItem.openActionMenu();
}
function onQueryChanged() {
runnerModel.query = searchField.text;
searchView.currentIndex = 0;
if (!searchField.text) {
searchView.model = null;
}
}
Kicker.RunnerModel {
id: runnerModel
appletInterface: plasmoid
mergeResults: true
favoritesModel: globalFavorites
}
/*Connections {
target: searchField
}*/
Connections {
target: runnerModel
function onCountChanged() {
if (runnerModel.count && !searchView.model) {
searchView.model = runnerModel.modelForRow(0);
}
}
}
KickoffListView {
id: searchView
anchors.fill: parent
showAppsByName: false //krunner results have the most relevant field in the "display" column, which is showAppsByName = false
}
}

View file

@ -0,0 +1,52 @@
/*
Copyright (C) 2011 Martin Gräßlin <mgraesslin@kde.org>
Copyright (C) 2012 Marco Martin <mart@kde.org>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/
import QtQuick 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.extras 2.0 as PlasmaExtras
Item {
id: sectionDelegate
width: parent.width
height: PlasmaCore.Units.smallSpacing //childrenRect.height
objectName: "SectionDelegate"
function getName() {
return sectionHeading.text;
}
PlasmaExtras.Heading {
id: sectionHeading
anchors {
left: parent.left
right: parent.right
leftMargin: PlasmaCore.Units.smallSpacing*2
}
color: "#707070"
y: Math.round(PlasmaCore.Units.gridUnit / 4)
level: 4
text: section
visible: false
}
Item {
width: parent.width
height: Math.round(PlasmaCore.Units.gridUnit / 4)
anchors.left: parent.left
anchors.top: sectionHeading.bottom
}
} // sectionDelegate

View file

@ -0,0 +1,202 @@
/***************************************************************************
* Copyright (C) 2013 by Aurélien Gâteau <agateau@kde.org> *
* Copyright (C) 2013-2015 by Eike Hein <hein@kde.org> *
* Copyright (C) 2017 by Ivan Cukic <ivan.cukic@kde.org> *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
* This program is distributed in the hope that it will be useful, *
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
* GNU General Public License for more details. *
* *
* You should have received a copy of the GNU General Public License *
* along with this program; if not, write to the *
* Free Software Foundation, Inc., *
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA . *
***************************************************************************/
.pragma library
function fillActionMenu(i18n, actionMenu, actionList, favoriteModel, favoriteId) {
// Accessing actionList can be a costly operation, so we don't
// access it until we need the menu.
var actions = createFavoriteActions(i18n, favoriteModel, favoriteId);
if (actions) {
if (actionList && actionList.length > 0) {
var separator = { "type": "separator" };
actionList.push(separator);
// actionList = actions.concat(actionList); // this crashes Qt O.o
actionList.push.apply(actionList, actions);
} else {
actionList = actions;
}
}
actionMenu.actionList = actionList;
}
function createFavoriteActions(i18n, favoriteModel, favoriteId) {
if (favoriteModel === null || !favoriteModel.enabled || favoriteId == null) {
return null;
}
if (favoriteModel.activities === undefined ||
favoriteModel.activities.runningActivities.length <= 1) {
var action = {};
if (favoriteModel.isFavorite(favoriteId)) {
action.text = i18n("Remove from Favorites");
action.icon = "bookmark-remove";
action.actionId = "_kicker_favorite_remove";
} else if (favoriteModel.maxFavorites == -1 || favoriteModel.count < favoriteModel.maxFavorites) {
action.text = i18n("Add to Favorites");
action.icon = "bookmark-new";
action.actionId = "_kicker_favorite_add";
} else {
return null;
}
action.actionArgument = { favoriteModel: favoriteModel, favoriteId: favoriteId };
return [action];
} else {
var actions = [];
var linkedActivities = favoriteModel.linkedActivitiesFor(favoriteId);
var activities = favoriteModel.activities.runningActivities;
// Adding the item to link/unlink to all activities
var linkedToAllActivities =
!(linkedActivities.indexOf(":global") === -1);
actions.push({
text : i18n("On All Activities"),
checkable : true,
actionId : linkedToAllActivities ?
"_kicker_favorite_remove_from_activity" :
"_kicker_favorite_set_to_activity",
checked : linkedToAllActivities,
actionArgument : {
favoriteModel: favoriteModel,
favoriteId: favoriteId,
favoriteActivity: ""
}
});
// Adding items for each activity separately
var addActivityItem = function(activityId, activityName) {
var linkedToThisActivity =
!(linkedActivities.indexOf(activityId) === -1);
actions.push({
text : activityName,
checkable : true,
checked : linkedToThisActivity && !linkedToAllActivities,
actionId :
// If we are on all activities, and the user clicks just one
// specific activity, unlink from everything else
linkedToAllActivities ? "_kicker_favorite_set_to_activity" :
// If we are linked to the current activity, just unlink from
// that single one
linkedToThisActivity ? "_kicker_favorite_remove_from_activity" :
// Otherwise, link to this activity, but do not unlink from
// other ones
"_kicker_favorite_add_to_activity",
actionArgument : {
favoriteModel : favoriteModel,
favoriteId : favoriteId,
favoriteActivity : activityId
}
});
};
// Adding the item to link/unlink to the current activity
addActivityItem(favoriteModel.activities.currentActivity, i18n("On the Current Activity"));
actions.push({
type: "separator",
actionId: "_kicker_favorite_separator"
});
// Adding the items for each activity
activities.forEach(function(activityId) {
addActivityItem(activityId, favoriteModel.activityNameForId(activityId));
});
return [{
text : i18n("Show in Favorites"),
icon : "favorite",
subActions : actions
}];
}
}
function triggerAction(model, index, actionId, actionArgument) {
function startsWith(txt, needle) {
return txt.substr(0, needle.length) === needle;
}
if (startsWith(actionId, "_kicker_favorite_")) {
handleFavoriteAction(actionId, actionArgument);
return;
}
var closeRequested = model.trigger(index, actionId, actionArgument);
if (closeRequested) {
return true;
}
return false;
}
function handleFavoriteAction(actionId, actionArgument) {
var favoriteId = actionArgument.favoriteId;
var favoriteModel = actionArgument.favoriteModel;
console.log(actionId);
if (favoriteModel === null || favoriteId == null) {
return null;
}
if (actionId == "_kicker_favorite_remove") {
console.log("Removing from all activities");
favoriteModel.removeFavorite(favoriteId);
} else if (actionId == "_kicker_favorite_add") {
console.log("Adding to global activity");
favoriteModel.addFavorite(favoriteId);
} else if (actionId == "_kicker_favorite_remove_from_activity") {
console.log("Removing from a specific activity");
favoriteModel.removeFavoriteFrom(favoriteId, actionArgument.favoriteActivity);
} else if (actionId == "_kicker_favorite_add_to_activity") {
console.log("Adding to another activity");
favoriteModel.addFavoriteTo(favoriteId, actionArgument.favoriteActivity);
} else if (actionId == "_kicker_favorite_set_to_activity") {
console.log("Removing the item from the favourites, and re-adding it just to be on a specific activity");
favoriteModel.setFavoriteOn(favoriteId, actionArgument.favoriteActivity);
}
}

View file

@ -92,11 +92,11 @@ PlasmaCore.DataSource {
showSeparators: true showSeparators: true
appletInterface: plasmoid appletInterface: plasmoid
paginate: true paginate: false
pageSize: plasmoid.configuration.numberColumns * plasmoid.configuration.numberRows pageSize: plasmoid.configuration.numberColumns * plasmoid.configuration.numberRows
showAllApps: true showAllApps: false
showRecentApps: false showRecentApps: true
showRecentDocs: false showRecentDocs: false
showRecentContacts: false showRecentContacts: false
showPowerSession: false showPowerSession: false
@ -201,7 +201,12 @@ PlasmaCore.DataSource {
imagePath: "widgets/panel-background" imagePath: "widgets/panel-background"
} }
PlasmaCore.Svg {
id: arrowsSvg
imagePath: "widgets/arrows"
size: "16x16"
}
PlasmaComponents.Label { PlasmaComponents.Label {
id: toolTipDelegate id: toolTipDelegate

View file

@ -18,6 +18,10 @@ MouseArea {
task.updateMousePosition(position.x); task.updateMousePosition(position.x);
} }
onContainsMouseChanged: {
var position = audioStreamIconBox.mapToItem(task, audioStreamIconBox.mouseX, audioStreamIconBox.mouseY);
task.updateMousePosition(position.x);
}
// Using States rather than a simple Behavior we can apply different transitions, // Using States rather than a simple Behavior we can apply different transitions,
// which allows us to delay showing the icon but hide it instantly still. // which allows us to delay showing the icon but hide it instantly still.
states: [ states: [

View file

@ -132,6 +132,7 @@ MouseArea {
} }
onContainsMouseChanged: { onContainsMouseChanged: {
updateMousePosition(ma.mouseX);
if(taskList.firstTimeHover === false) { if(taskList.firstTimeHover === false) {
taskList.updateHoverFunc(); taskList.updateHoverFunc();
taskList.firstTimeHover = true; taskList.firstTimeHover = true;
@ -397,9 +398,9 @@ MouseArea {
} }
gradient: Gradient { gradient: Gradient {
id: radialGrad id: radialGrad
GradientStop { position: 0.0; color: "#CCEAEAEA" } GradientStop { position: 0.0; color: Qt.lighter(hoverColor, 1.8) }
GradientStop { position: 0.4; color: hoverColor } GradientStop { position: 0.4; color: hoverColor }
GradientStop { position: 0.8; color: "transparent" } GradientStop { position: 0.9; color: "transparent" }
} }
verticalOffset: hoverRect.height/2.2 verticalOffset: hoverRect.height/2.2
horizontalOffset: 0 horizontalOffset: 0
@ -419,7 +420,13 @@ MouseArea {
anchors.fill: parent anchors.fill: parent
onPositionChanged: { onPositionChanged: {
task.updateMousePosition(ma.mouseX); task.updateMousePosition(ma.mouseX);
task.positionChanged(mouse); task.positionChanged(mouse);
}
onContainsMouseChanged: {
task.updateMousePosition(ma.mouseX);
//task.onContainsMouseChanged();
//toolTipArea.onContainsMouseChanged();
//mouse.accepted = false;
} }
onPressed: mouse.accepted = false; onPressed: mouse.accepted = false;
onReleased: mouse.accepted = false; onReleased: mouse.accepted = false;

View file

@ -41,7 +41,7 @@ CMAKE_BUILD_TYPE:STRING=
CMAKE_COLOR_MAKEFILE:BOOL=ON CMAKE_COLOR_MAKEFILE:BOOL=ON
//CXX compiler //CXX compiler
CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ CMAKE_CXX_COMPILER:STRING=/usr/bin/c++
//A wrapper around 'ar' adding the appropriate '--plugin' option //A wrapper around 'ar' adding the appropriate '--plugin' option
// for the GCC compiler // for the GCC compiler
@ -67,7 +67,7 @@ CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG
CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG
//C compiler //C compiler
CMAKE_C_COMPILER:FILEPATH=/usr/bin/cc CMAKE_C_COMPILER:STRING=/usr/bin/cc
//A wrapper around 'ar' adding the appropriate '--plugin' option //A wrapper around 'ar' adding the appropriate '--plugin' option
// for the GCC compiler // for the GCC compiler
@ -225,6 +225,9 @@ CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE
//The directory containing a CMake configuration file for ECM. //The directory containing a CMake configuration file for ECM.
ECM_DIR:PATH=/usr/share/ECM/cmake ECM_DIR:PATH=/usr/share/ECM/cmake
//Make use of -Bsymbolic-functions
ENABLE_BSYMBOLICFUNCTIONS:BOOL=OFF
//Path to a program. //Path to a program.
FISH_EXECUTABLE:FILEPATH=FISH_EXECUTABLE-NOTFOUND FISH_EXECUTABLE:FILEPATH=FISH_EXECUTABLE-NOTFOUND
@ -482,7 +485,7 @@ CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3
//Minor version of cmake used to create the current loaded cache //Minor version of cmake used to create the current loaded cache
CMAKE_CACHE_MINOR_VERSION:INTERNAL=21 CMAKE_CACHE_MINOR_VERSION:INTERNAL=21
//Patch version of cmake used to create the current loaded cache //Patch version of cmake used to create the current loaded cache
CMAKE_CACHE_PATCH_VERSION:INTERNAL=0 CMAKE_CACHE_PATCH_VERSION:INTERNAL=2
//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE //ADVANCED property for variable: CMAKE_COLOR_MAKEFILE
CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1
//Path to CMake executable. //Path to CMake executable.
@ -619,11 +622,11 @@ CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1
//Details about finding Gettext //Details about finding Gettext
FIND_PACKAGE_MESSAGE_DETAILS_Gettext:INTERNAL=[/usr/bin/msgmerge][/usr/bin/msgfmt][v0.21()] FIND_PACKAGE_MESSAGE_DETAILS_Gettext:INTERNAL=[/usr/bin/msgmerge][/usr/bin/msgfmt][v0.21()]
//Details about finding KF5 //Details about finding KF5
FIND_PACKAGE_MESSAGE_DETAILS_KF5:INTERNAL=[success][cfound components: Plasma I18n ][v5.84.0()] FIND_PACKAGE_MESSAGE_DETAILS_KF5:INTERNAL=[success][cfound components: Plasma I18n ][v5.85.0()]
//Details about finding KF5I18n //Details about finding KF5I18n
FIND_PACKAGE_MESSAGE_DETAILS_KF5I18n:INTERNAL=[/usr/lib64/cmake/KF5I18n/KF5I18nConfig.cmake][v5.84.0()] FIND_PACKAGE_MESSAGE_DETAILS_KF5I18n:INTERNAL=[/usr/lib64/cmake/KF5I18n/KF5I18nConfig.cmake][v5.85.0()]
//Details about finding KF5Plasma //Details about finding KF5Plasma
FIND_PACKAGE_MESSAGE_DETAILS_KF5Plasma:INTERNAL=[/usr/lib64/cmake/KF5Plasma/KF5PlasmaConfig.cmake][v5.84.0()] FIND_PACKAGE_MESSAGE_DETAILS_KF5Plasma:INTERNAL=[/usr/lib64/cmake/KF5Plasma/KF5PlasmaConfig.cmake][v5.85.0()]
//Test HAVE_DATE_TIME //Test HAVE_DATE_TIME
HAVE_DATE_TIME:INTERNAL=1 HAVE_DATE_TIME:INTERNAL=1
//ADVANCED property for variable: KDE_INSTALL_APPDIR //ADVANCED property for variable: KDE_INSTALL_APPDIR

View file

@ -0,0 +1,80 @@
set(CMAKE_C_COMPILER "/usr/bin/cc")
set(CMAKE_C_COMPILER_ARG1 "")
set(CMAKE_C_COMPILER_ID "GNU")
set(CMAKE_C_COMPILER_VERSION "11.1.0")
set(CMAKE_C_COMPILER_VERSION_INTERNAL "")
set(CMAKE_C_COMPILER_WRAPPER "")
set(CMAKE_C_STANDARD_COMPUTED_DEFAULT "17")
set(CMAKE_C_COMPILE_FEATURES "c_std_90;c_function_prototypes;c_std_99;c_restrict;c_variadic_macros;c_std_11;c_static_assert;c_std_17;c_std_23")
set(CMAKE_C90_COMPILE_FEATURES "c_std_90;c_function_prototypes")
set(CMAKE_C99_COMPILE_FEATURES "c_std_99;c_restrict;c_variadic_macros")
set(CMAKE_C11_COMPILE_FEATURES "c_std_11;c_static_assert")
set(CMAKE_C17_COMPILE_FEATURES "c_std_17")
set(CMAKE_C23_COMPILE_FEATURES "c_std_23")
set(CMAKE_C_PLATFORM_ID "Linux")
set(CMAKE_C_SIMULATE_ID "")
set(CMAKE_C_COMPILER_FRONTEND_VARIANT "")
set(CMAKE_C_SIMULATE_VERSION "")
set(CMAKE_AR "/usr/bin/ar")
set(CMAKE_C_COMPILER_AR "/usr/bin/gcc-ar")
set(CMAKE_RANLIB "/usr/bin/ranlib")
set(CMAKE_C_COMPILER_RANLIB "/usr/bin/gcc-ranlib")
set(CMAKE_LINKER "/usr/bin/ld")
set(CMAKE_MT "")
set(CMAKE_COMPILER_IS_GNUCC 1)
set(CMAKE_C_COMPILER_LOADED 1)
set(CMAKE_C_COMPILER_WORKS TRUE)
set(CMAKE_C_ABI_COMPILED TRUE)
set(CMAKE_COMPILER_IS_MINGW )
set(CMAKE_COMPILER_IS_CYGWIN )
if(CMAKE_COMPILER_IS_CYGWIN)
set(CYGWIN 1)
set(UNIX 1)
endif()
set(CMAKE_C_COMPILER_ENV_VAR "CC")
if(CMAKE_COMPILER_IS_MINGW)
set(MINGW 1)
endif()
set(CMAKE_C_COMPILER_ID_RUN 1)
set(CMAKE_C_SOURCE_FILE_EXTENSIONS c;m)
set(CMAKE_C_IGNORE_EXTENSIONS h;H;o;O;obj;OBJ;def;DEF;rc;RC)
set(CMAKE_C_LINKER_PREFERENCE 10)
# Save compiler ABI information.
set(CMAKE_C_SIZEOF_DATA_PTR "8")
set(CMAKE_C_COMPILER_ABI "ELF")
set(CMAKE_C_BYTE_ORDER "LITTLE_ENDIAN")
set(CMAKE_C_LIBRARY_ARCHITECTURE "")
if(CMAKE_C_SIZEOF_DATA_PTR)
set(CMAKE_SIZEOF_VOID_P "${CMAKE_C_SIZEOF_DATA_PTR}")
endif()
if(CMAKE_C_COMPILER_ABI)
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_C_COMPILER_ABI}")
endif()
if(CMAKE_C_LIBRARY_ARCHITECTURE)
set(CMAKE_LIBRARY_ARCHITECTURE "")
endif()
set(CMAKE_C_CL_SHOWINCLUDES_PREFIX "")
if(CMAKE_C_CL_SHOWINCLUDES_PREFIX)
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_C_CL_SHOWINCLUDES_PREFIX}")
endif()
set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed;/usr/include")
set(CMAKE_C_IMPLICIT_LINK_LIBRARIES "gcc;gcc_s;c;gcc;gcc_s")
set(CMAKE_C_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0;/usr/lib;/lib")
set(CMAKE_C_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

View file

@ -0,0 +1,91 @@
set(CMAKE_CXX_COMPILER "/usr/bin/c++")
set(CMAKE_CXX_COMPILER_ARG1 "")
set(CMAKE_CXX_COMPILER_ID "GNU")
set(CMAKE_CXX_COMPILER_VERSION "11.1.0")
set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "")
set(CMAKE_CXX_COMPILER_WRAPPER "")
set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17")
set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23")
set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters")
set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates")
set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates")
set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17")
set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20")
set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23")
set(CMAKE_CXX_PLATFORM_ID "Linux")
set(CMAKE_CXX_SIMULATE_ID "")
set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "")
set(CMAKE_CXX_SIMULATE_VERSION "")
set(CMAKE_AR "/usr/bin/ar")
set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar")
set(CMAKE_RANLIB "/usr/bin/ranlib")
set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib")
set(CMAKE_LINKER "/usr/bin/ld")
set(CMAKE_MT "")
set(CMAKE_COMPILER_IS_GNUCXX 1)
set(CMAKE_CXX_COMPILER_LOADED 1)
set(CMAKE_CXX_COMPILER_WORKS TRUE)
set(CMAKE_CXX_ABI_COMPILED TRUE)
set(CMAKE_COMPILER_IS_MINGW )
set(CMAKE_COMPILER_IS_CYGWIN )
if(CMAKE_COMPILER_IS_CYGWIN)
set(CYGWIN 1)
set(UNIX 1)
endif()
set(CMAKE_CXX_COMPILER_ENV_VAR "CXX")
if(CMAKE_COMPILER_IS_MINGW)
set(MINGW 1)
endif()
set(CMAKE_CXX_COMPILER_ID_RUN 1)
set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm)
set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC)
foreach (lang C OBJC OBJCXX)
if (CMAKE_${lang}_COMPILER_ID_RUN)
foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS)
list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension})
endforeach()
endif()
endforeach()
set(CMAKE_CXX_LINKER_PREFERENCE 30)
set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1)
# Save compiler ABI information.
set(CMAKE_CXX_SIZEOF_DATA_PTR "8")
set(CMAKE_CXX_COMPILER_ABI "ELF")
set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN")
set(CMAKE_CXX_LIBRARY_ARCHITECTURE "")
if(CMAKE_CXX_SIZEOF_DATA_PTR)
set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}")
endif()
if(CMAKE_CXX_COMPILER_ABI)
set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}")
endif()
if(CMAKE_CXX_LIBRARY_ARCHITECTURE)
set(CMAKE_LIBRARY_ARCHITECTURE "")
endif()
set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "")
if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX)
set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}")
endif()
set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/11.1.0;/usr/include/c++/11.1.0/x86_64-pc-linux-gnu;/usr/include/c++/11.1.0/backward;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed;/usr/include")
set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc")
set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0;/usr/lib;/lib")
set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "")

View file

@ -0,0 +1,15 @@
set(CMAKE_HOST_SYSTEM "Linux-5.10.43-1-lts")
set(CMAKE_HOST_SYSTEM_NAME "Linux")
set(CMAKE_HOST_SYSTEM_VERSION "5.10.43-1-lts")
set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64")
set(CMAKE_SYSTEM "Linux-5.10.43-1-lts")
set(CMAKE_SYSTEM_NAME "Linux")
set(CMAKE_SYSTEM_VERSION "5.10.43-1-lts")
set(CMAKE_SYSTEM_PROCESSOR "x86_64")
set(CMAKE_CROSSCOMPILING "FALSE")
set(CMAKE_SYSTEM_LOADED 1)

View file

@ -0,0 +1,807 @@
#ifdef __cplusplus
# error "A C++ compiler has been selected for C."
#endif
#if defined(__18CXX)
# define ID_VOID_MAIN
#endif
#if defined(__CLASSIC_C__)
/* cv-qualifiers did not exist in K&R C */
# define const
# define volatile
#endif
#if !defined(__has_include)
/* If the compiler does not have __has_include, pretend the answer is
always no. */
# define __has_include(x) 0
#endif
/* Version number components: V=Version, R=Revision, P=Patch
Version date components: YYYY=Year, MM=Month, DD=Day */
#if defined(__INTEL_COMPILER) || defined(__ICC)
# define COMPILER_ID "Intel"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# if defined(__GNUC__)
# define SIMULATE_ID "GNU"
# endif
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
except that a few beta releases use the old format with V=2021. */
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
# if defined(__INTEL_COMPILER_UPDATE)
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
# else
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
# endif
# else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
/* The third version component from --version is an update index,
but no macro is provided for it. */
# define COMPILER_VERSION_PATCH DEC(0)
# endif
# if defined(__INTEL_COMPILER_BUILD_DATE)
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
# endif
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
# define COMPILER_ID "IntelLLVM"
#if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
#endif
#if defined(__GNUC__)
# define SIMULATE_ID "GNU"
#endif
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
* VVVV is no smaller than the current year when a version is released.
*/
#if __INTEL_LLVM_COMPILER < 1000000L
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
#else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
#endif
#if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
#endif
#if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
#elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
#endif
#if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
#endif
#if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
#endif
#elif defined(__PATHCC__)
# define COMPILER_ID "PathScale"
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
# if defined(__PATHCC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
# endif
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
# define COMPILER_ID "Embarcadero"
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
#elif defined(__BORLANDC__)
# define COMPILER_ID "Borland"
/* __BORLANDC__ = 0xVRR */
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
# define COMPILER_ID "Watcom"
/* __WATCOMC__ = VVRR */
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__WATCOMC__)
# define COMPILER_ID "OpenWatcom"
/* __WATCOMC__ = VVRP + 1100 */
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__SUNPRO_C)
# define COMPILER_ID "SunPro"
# if __SUNPRO_C >= 0x5100
/* __SUNPRO_C = 0xVRRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>12)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
# else
/* __SUNPRO_CC = 0xVRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_C>>8)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_C>>4 & 0xF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_C & 0xF)
# endif
#elif defined(__HP_cc)
# define COMPILER_ID "HP"
/* __HP_cc = VVRRPP */
# define COMPILER_VERSION_MAJOR DEC(__HP_cc/10000)
# define COMPILER_VERSION_MINOR DEC(__HP_cc/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__HP_cc % 100)
#elif defined(__DECC)
# define COMPILER_ID "Compaq"
/* __DECC_VER = VVRRTPPPP */
# define COMPILER_VERSION_MAJOR DEC(__DECC_VER/10000000)
# define COMPILER_VERSION_MINOR DEC(__DECC_VER/100000 % 100)
# define COMPILER_VERSION_PATCH DEC(__DECC_VER % 10000)
#elif defined(__IBMC__) && defined(__COMPILER_VER__)
# define COMPILER_ID "zOS"
/* __IBMC__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
#elif defined(__ibmxl__) && defined(__clang__)
# define COMPILER_ID "XLClang"
# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ >= 800
# define COMPILER_ID "XL"
/* __IBMC__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
#elif defined(__IBMC__) && !defined(__COMPILER_VER__) && __IBMC__ < 800
# define COMPILER_ID "VisualAge"
/* __IBMC__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMC__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMC__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMC__ % 10)
#elif defined(__NVCOMPILER)
# define COMPILER_ID "NVHPC"
# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
# if defined(__NVCOMPILER_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
# endif
#elif defined(__PGI)
# define COMPILER_ID "PGI"
# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
# if defined(__PGIC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
# endif
#elif defined(_CRAYC)
# define COMPILER_ID "Cray"
# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
#elif defined(__TI_COMPILER_VERSION__)
# define COMPILER_ID "TI"
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
#elif defined(__CLANG_FUJITSU)
# define COMPILER_ID "FujitsuClang"
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
#elif defined(__FUJITSU)
# define COMPILER_ID "Fujitsu"
# if defined(__FCC_version__)
# define COMPILER_VERSION __FCC_version__
# elif defined(__FCC_major__)
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
# endif
# if defined(__fcc_version)
# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
# elif defined(__FCC_VERSION)
# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
# endif
#elif defined(__ghs__)
# define COMPILER_ID "GHS"
/* __GHS_VERSION_NUMBER = VVVVRP */
# ifdef __GHS_VERSION_NUMBER
# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
# endif
#elif defined(__TINYC__)
# define COMPILER_ID "TinyCC"
#elif defined(__BCC__)
# define COMPILER_ID "Bruce"
#elif defined(__SCO_VERSION__)
# define COMPILER_ID "SCO"
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
# define COMPILER_ID "ARMCC"
#if __ARMCC_VERSION >= 1000000
/* __ARMCC_VERSION = VRRPPPP */
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
#else
/* __ARMCC_VERSION = VRPPPP */
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
#endif
#elif defined(__clang__) && defined(__apple_build_version__)
# define COMPILER_ID "AppleClang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
# define COMPILER_ID "ARMClang"
# define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
# define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
# define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
#elif defined(__clang__) && __has_include(<hip/hip_version.h>)
# define COMPILER_ID "ROCMClang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# elif defined(__clang__)
# define SIMULATE_ID "Clang"
# elif defined(__GNUC__)
# define SIMULATE_ID "GNU"
# endif
# if defined(__clang__) && __has_include(<hip/hip_version.h>)
# include <hip/hip_version.h>
# define COMPILER_VERSION_MAJOR DEC(HIP_VERSION_MAJOR)
# define COMPILER_VERSION_MINOR DEC(HIP_VERSION_MINOR)
# define COMPILER_VERSION_PATCH DEC(HIP_VERSION_PATCH)
# endif
#elif defined(__clang__)
# define COMPILER_ID "Clang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
#elif defined(__GNUC__)
# define COMPILER_ID "GNU"
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# if defined(__GNUC_MINOR__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER)
# define COMPILER_ID "MSVC"
/* _MSC_VER = VVRR */
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
# if defined(_MSC_FULL_VER)
# if _MSC_VER >= 1400
/* _MSC_FULL_VER = VVRRPPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
# else
/* _MSC_FULL_VER = VVRRPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
# endif
# endif
# if defined(_MSC_BUILD)
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
# endif
#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
# define COMPILER_ID "ADSP"
#if defined(__VISUALDSPVERSION__)
/* __VISUALDSPVERSION__ = 0xVVRRPP00 */
# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
#endif
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
# define COMPILER_ID "IAR"
# if defined(__VER__) && defined(__ICCARM__)
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
# endif
#elif defined(__SDCC_VERSION_MAJOR) || defined(SDCC)
# define COMPILER_ID "SDCC"
# if defined(__SDCC_VERSION_MAJOR)
# define COMPILER_VERSION_MAJOR DEC(__SDCC_VERSION_MAJOR)
# define COMPILER_VERSION_MINOR DEC(__SDCC_VERSION_MINOR)
# define COMPILER_VERSION_PATCH DEC(__SDCC_VERSION_PATCH)
# else
/* SDCC = VRP */
# define COMPILER_VERSION_MAJOR DEC(SDCC/100)
# define COMPILER_VERSION_MINOR DEC(SDCC/10 % 10)
# define COMPILER_VERSION_PATCH DEC(SDCC % 10)
# endif
/* These compilers are either not known or too old to define an
identification macro. Try to identify the platform and guess that
it is the native compiler. */
#elif defined(__hpux) || defined(__hpua)
# define COMPILER_ID "HP"
#else /* unknown compiler */
# define COMPILER_ID ""
#endif
/* Construct the string literal in pieces to prevent the source from
getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
#ifdef SIMULATE_ID
char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
#endif
#ifdef __QNXNTO__
char const* qnxnto = "INFO" ":" "qnxnto[]";
#endif
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
#endif
#define STRINGIFY_HELPER(X) #X
#define STRINGIFY(X) STRINGIFY_HELPER(X)
/* Identify known platforms by name. */
#if defined(__linux) || defined(__linux__) || defined(linux)
# define PLATFORM_ID "Linux"
#elif defined(__MSYS__)
# define PLATFORM_ID "MSYS"
#elif defined(__CYGWIN__)
# define PLATFORM_ID "Cygwin"
#elif defined(__MINGW32__)
# define PLATFORM_ID "MinGW"
#elif defined(__APPLE__)
# define PLATFORM_ID "Darwin"
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
# define PLATFORM_ID "Windows"
#elif defined(__FreeBSD__) || defined(__FreeBSD)
# define PLATFORM_ID "FreeBSD"
#elif defined(__NetBSD__) || defined(__NetBSD)
# define PLATFORM_ID "NetBSD"
#elif defined(__OpenBSD__) || defined(__OPENBSD)
# define PLATFORM_ID "OpenBSD"
#elif defined(__sun) || defined(sun)
# define PLATFORM_ID "SunOS"
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
# define PLATFORM_ID "AIX"
#elif defined(__hpux) || defined(__hpux__)
# define PLATFORM_ID "HP-UX"
#elif defined(__HAIKU__)
# define PLATFORM_ID "Haiku"
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
# define PLATFORM_ID "BeOS"
#elif defined(__QNX__) || defined(__QNXNTO__)
# define PLATFORM_ID "QNX"
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
# define PLATFORM_ID "Tru64"
#elif defined(__riscos) || defined(__riscos__)
# define PLATFORM_ID "RISCos"
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
# define PLATFORM_ID "SINIX"
#elif defined(__UNIX_SV__)
# define PLATFORM_ID "UNIX_SV"
#elif defined(__bsdos__)
# define PLATFORM_ID "BSDOS"
#elif defined(_MPRAS) || defined(MPRAS)
# define PLATFORM_ID "MP-RAS"
#elif defined(__osf) || defined(__osf__)
# define PLATFORM_ID "OSF1"
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
# define PLATFORM_ID "SCO_SV"
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
# define PLATFORM_ID "ULTRIX"
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
# define PLATFORM_ID "Xenix"
#elif defined(__WATCOMC__)
# if defined(__LINUX__)
# define PLATFORM_ID "Linux"
# elif defined(__DOS__)
# define PLATFORM_ID "DOS"
# elif defined(__OS2__)
# define PLATFORM_ID "OS2"
# elif defined(__WINDOWS__)
# define PLATFORM_ID "Windows3x"
# elif defined(__VXWORKS__)
# define PLATFORM_ID "VxWorks"
# else /* unknown platform */
# define PLATFORM_ID
# endif
#elif defined(__INTEGRITY)
# if defined(INT_178B)
# define PLATFORM_ID "Integrity178"
# else /* regular Integrity */
# define PLATFORM_ID "Integrity"
# endif
#else /* unknown platform */
# define PLATFORM_ID
#endif
/* For windows compilers MSVC and Intel we can determine
the architecture of the compiler being used. This is because
the compilers do not have flags that can change the architecture,
but rather depend on which compiler is being used
*/
#if defined(_WIN32) && defined(_MSC_VER)
# if defined(_M_IA64)
# define ARCHITECTURE_ID "IA64"
# elif defined(_M_ARM64EC)
# define ARCHITECTURE_ID "ARM64EC"
# elif defined(_M_X64) || defined(_M_AMD64)
# define ARCHITECTURE_ID "x64"
# elif defined(_M_IX86)
# define ARCHITECTURE_ID "X86"
# elif defined(_M_ARM64)
# define ARCHITECTURE_ID "ARM64"
# elif defined(_M_ARM)
# if _M_ARM == 4
# define ARCHITECTURE_ID "ARMV4I"
# elif _M_ARM == 5
# define ARCHITECTURE_ID "ARMV5I"
# else
# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
# endif
# elif defined(_M_MIPS)
# define ARCHITECTURE_ID "MIPS"
# elif defined(_M_SH)
# define ARCHITECTURE_ID "SHx"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__WATCOMC__)
# if defined(_M_I86)
# define ARCHITECTURE_ID "I86"
# elif defined(_M_IX86)
# define ARCHITECTURE_ID "X86"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
# if defined(__ICCARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__ICCRX__)
# define ARCHITECTURE_ID "RX"
# elif defined(__ICCRH850__)
# define ARCHITECTURE_ID "RH850"
# elif defined(__ICCRL78__)
# define ARCHITECTURE_ID "RL78"
# elif defined(__ICCRISCV__)
# define ARCHITECTURE_ID "RISCV"
# elif defined(__ICCAVR__)
# define ARCHITECTURE_ID "AVR"
# elif defined(__ICC430__)
# define ARCHITECTURE_ID "MSP430"
# elif defined(__ICCV850__)
# define ARCHITECTURE_ID "V850"
# elif defined(__ICC8051__)
# define ARCHITECTURE_ID "8051"
# elif defined(__ICCSTM8__)
# define ARCHITECTURE_ID "STM8"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__ghs__)
# if defined(__PPC64__)
# define ARCHITECTURE_ID "PPC64"
# elif defined(__ppc__)
# define ARCHITECTURE_ID "PPC"
# elif defined(__ARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__x86_64__)
# define ARCHITECTURE_ID "x64"
# elif defined(__i386__)
# define ARCHITECTURE_ID "X86"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__TI_COMPILER_VERSION__)
# if defined(__TI_ARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__MSP430__)
# define ARCHITECTURE_ID "MSP430"
# elif defined(__TMS320C28XX__)
# define ARCHITECTURE_ID "TMS320C28x"
# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
# define ARCHITECTURE_ID "TMS320C6x"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#else
# define ARCHITECTURE_ID
#endif
/* Convert integer to decimal digit literals. */
#define DEC(n) \
('0' + (((n) / 10000000)%10)), \
('0' + (((n) / 1000000)%10)), \
('0' + (((n) / 100000)%10)), \
('0' + (((n) / 10000)%10)), \
('0' + (((n) / 1000)%10)), \
('0' + (((n) / 100)%10)), \
('0' + (((n) / 10)%10)), \
('0' + ((n) % 10))
/* Convert integer to hex digit literals. */
#define HEX(n) \
('0' + ((n)>>28 & 0xF)), \
('0' + ((n)>>24 & 0xF)), \
('0' + ((n)>>20 & 0xF)), \
('0' + ((n)>>16 & 0xF)), \
('0' + ((n)>>12 & 0xF)), \
('0' + ((n)>>8 & 0xF)), \
('0' + ((n)>>4 & 0xF)), \
('0' + ((n) & 0xF))
/* Construct a string literal encoding the version number. */
#ifdef COMPILER_VERSION
char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
/* Construct a string literal encoding the version number components. */
#elif defined(COMPILER_VERSION_MAJOR)
char const info_version[] = {
'I', 'N', 'F', 'O', ':',
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
COMPILER_VERSION_MAJOR,
# ifdef COMPILER_VERSION_MINOR
'.', COMPILER_VERSION_MINOR,
# ifdef COMPILER_VERSION_PATCH
'.', COMPILER_VERSION_PATCH,
# ifdef COMPILER_VERSION_TWEAK
'.', COMPILER_VERSION_TWEAK,
# endif
# endif
# endif
']','\0'};
#endif
/* Construct a string literal encoding the internal version number. */
#ifdef COMPILER_VERSION_INTERNAL
char const info_version_internal[] = {
'I', 'N', 'F', 'O', ':',
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
'i','n','t','e','r','n','a','l','[',
COMPILER_VERSION_INTERNAL,']','\0'};
#elif defined(COMPILER_VERSION_INTERNAL_STR)
char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
#endif
/* Construct a string literal encoding the version number components. */
#ifdef SIMULATE_VERSION_MAJOR
char const info_simulate_version[] = {
'I', 'N', 'F', 'O', ':',
's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
SIMULATE_VERSION_MAJOR,
# ifdef SIMULATE_VERSION_MINOR
'.', SIMULATE_VERSION_MINOR,
# ifdef SIMULATE_VERSION_PATCH
'.', SIMULATE_VERSION_PATCH,
# ifdef SIMULATE_VERSION_TWEAK
'.', SIMULATE_VERSION_TWEAK,
# endif
# endif
# endif
']','\0'};
#endif
/* Construct the string literal in pieces to prevent the source from
getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
#if !defined(__STDC__) && !defined(__clang__)
# if defined(_MSC_VER) || defined(__ibmxl__) || defined(__IBMC__)
# define C_DIALECT "90"
# else
# define C_DIALECT
# endif
#elif __STDC_VERSION__ > 201710L
# define C_DIALECT "23"
#elif __STDC_VERSION__ >= 201710L
# define C_DIALECT "17"
#elif __STDC_VERSION__ >= 201000L
# define C_DIALECT "11"
#elif __STDC_VERSION__ >= 199901L
# define C_DIALECT "99"
#else
# define C_DIALECT "90"
#endif
const char* info_language_dialect_default =
"INFO" ":" "dialect_default[" C_DIALECT "]";
/*--------------------------------------------------------------------------*/
#ifdef ID_VOID_MAIN
void main() {}
#else
# if defined(__CLASSIC_C__)
int main(argc, argv) int argc; char *argv[];
# else
int main(int argc, char* argv[])
# endif
{
int require = 0;
require += info_compiler[argc];
require += info_platform[argc];
require += info_arch[argc];
#ifdef COMPILER_VERSION_MAJOR
require += info_version[argc];
#endif
#ifdef COMPILER_VERSION_INTERNAL
require += info_version_internal[argc];
#endif
#ifdef SIMULATE_ID
require += info_simulate[argc];
#endif
#ifdef SIMULATE_VERSION_MAJOR
require += info_simulate_version[argc];
#endif
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
require += info_cray[argc];
#endif
require += info_language_dialect_default[argc];
(void)argv;
return require;
}
#endif

View file

@ -0,0 +1,795 @@
/* This source file must have a .cpp extension so that all C++ compilers
recognize the extension without flags. Borland does not know .cxx for
example. */
#ifndef __cplusplus
# error "A C compiler has been selected for C++."
#endif
#if !defined(__has_include)
/* If the compiler does not have __has_include, pretend the answer is
always no. */
# define __has_include(x) 0
#endif
/* Version number components: V=Version, R=Revision, P=Patch
Version date components: YYYY=Year, MM=Month, DD=Day */
#if defined(__COMO__)
# define COMPILER_ID "Comeau"
/* __COMO_VERSION__ = VRR */
# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100)
# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100)
#elif defined(__INTEL_COMPILER) || defined(__ICC)
# define COMPILER_ID "Intel"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# if defined(__GNUC__)
# define SIMULATE_ID "GNU"
# endif
/* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later,
except that a few beta releases use the old format with V=2021. */
# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10)
# if defined(__INTEL_COMPILER_UPDATE)
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE)
# else
# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10)
# endif
# else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER)
# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE)
/* The third version component from --version is an update index,
but no macro is provided for it. */
# define COMPILER_VERSION_PATCH DEC(0)
# endif
# if defined(__INTEL_COMPILER_BUILD_DATE)
/* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */
# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE)
# endif
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
# elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER)
# define COMPILER_ID "IntelLLVM"
#if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
#endif
#if defined(__GNUC__)
# define SIMULATE_ID "GNU"
#endif
/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and
* later. Look for 6 digit vs. 8 digit version number to decide encoding.
* VVVV is no smaller than the current year when a version is released.
*/
#if __INTEL_LLVM_COMPILER < 1000000L
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10)
#else
# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000)
# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100)
#endif
#if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
#endif
#if defined(__GNUC__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUC__)
#elif defined(__GNUG__)
# define SIMULATE_VERSION_MAJOR DEC(__GNUG__)
#endif
#if defined(__GNUC_MINOR__)
# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__)
#endif
#if defined(__GNUC_PATCHLEVEL__)
# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
#endif
#elif defined(__PATHCC__)
# define COMPILER_ID "PathScale"
# define COMPILER_VERSION_MAJOR DEC(__PATHCC__)
# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__)
# if defined(__PATHCC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__)
# endif
#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__)
# define COMPILER_ID "Embarcadero"
# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF)
# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF)
# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF)
#elif defined(__BORLANDC__)
# define COMPILER_ID "Borland"
/* __BORLANDC__ = 0xVRR */
# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8)
# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF)
#elif defined(__WATCOMC__) && __WATCOMC__ < 1200
# define COMPILER_ID "Watcom"
/* __WATCOMC__ = VVRR */
# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__WATCOMC__)
# define COMPILER_ID "OpenWatcom"
/* __WATCOMC__ = VVRP + 1100 */
# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100)
# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10)
# if (__WATCOMC__ % 10) > 0
# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10)
# endif
#elif defined(__SUNPRO_CC)
# define COMPILER_ID "SunPro"
# if __SUNPRO_CC >= 0x5100
/* __SUNPRO_CC = 0xVRRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
# else
/* __SUNPRO_CC = 0xVRP */
# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8)
# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF)
# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF)
# endif
#elif defined(__HP_aCC)
# define COMPILER_ID "HP"
/* __HP_aCC = VVRRPP */
# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000)
# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100)
# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100)
#elif defined(__DECCXX)
# define COMPILER_ID "Compaq"
/* __DECCXX_VER = VVRRTPPPP */
# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000)
# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100)
# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000)
#elif defined(__IBMCPP__) && defined(__COMPILER_VER__)
# define COMPILER_ID "zOS"
/* __IBMCPP__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
#elif defined(__ibmxl__) && defined(__clang__)
# define COMPILER_ID "XLClang"
# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__)
# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__)
# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__)
# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__)
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800
# define COMPILER_ID "XL"
/* __IBMCPP__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800
# define COMPILER_ID "VisualAge"
/* __IBMCPP__ = VRP */
# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100)
# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10)
# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10)
#elif defined(__NVCOMPILER)
# define COMPILER_ID "NVHPC"
# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__)
# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__)
# if defined(__NVCOMPILER_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__)
# endif
#elif defined(__PGI)
# define COMPILER_ID "PGI"
# define COMPILER_VERSION_MAJOR DEC(__PGIC__)
# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__)
# if defined(__PGIC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__)
# endif
#elif defined(_CRAYC)
# define COMPILER_ID "Cray"
# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR)
# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR)
#elif defined(__TI_COMPILER_VERSION__)
# define COMPILER_ID "TI"
/* __TI_COMPILER_VERSION__ = VVVRRRPPP */
# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000)
# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000)
# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000)
#elif defined(__CLANG_FUJITSU)
# define COMPILER_ID "FujitsuClang"
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
# define COMPILER_VERSION_INTERNAL_STR __clang_version__
#elif defined(__FUJITSU)
# define COMPILER_ID "Fujitsu"
# if defined(__FCC_version__)
# define COMPILER_VERSION __FCC_version__
# elif defined(__FCC_major__)
# define COMPILER_VERSION_MAJOR DEC(__FCC_major__)
# define COMPILER_VERSION_MINOR DEC(__FCC_minor__)
# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__)
# endif
# if defined(__fcc_version)
# define COMPILER_VERSION_INTERNAL DEC(__fcc_version)
# elif defined(__FCC_VERSION)
# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION)
# endif
#elif defined(__ghs__)
# define COMPILER_ID "GHS"
/* __GHS_VERSION_NUMBER = VVVVRP */
# ifdef __GHS_VERSION_NUMBER
# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100)
# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10)
# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10)
# endif
#elif defined(__SCO_VERSION__)
# define COMPILER_ID "SCO"
#elif defined(__ARMCC_VERSION) && !defined(__clang__)
# define COMPILER_ID "ARMCC"
#if __ARMCC_VERSION >= 1000000
/* __ARMCC_VERSION = VRRPPPP */
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000)
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100)
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
#else
/* __ARMCC_VERSION = VRPPPP */
# define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000)
# define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10)
# define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000)
#endif
#elif defined(__clang__) && defined(__apple_build_version__)
# define COMPILER_ID "AppleClang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__)
#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION)
# define COMPILER_ID "ARMClang"
# define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000)
# define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100)
# define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000)
# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION)
#elif defined(__clang__) && __has_include(<hip/hip_version.h>)
# define COMPILER_ID "ROCMClang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# elif defined(__clang__)
# define SIMULATE_ID "Clang"
# elif defined(__GNUC__)
# define SIMULATE_ID "GNU"
# endif
# if defined(__clang__) && __has_include(<hip/hip_version.h>)
# include <hip/hip_version.h>
# define COMPILER_VERSION_MAJOR DEC(HIP_VERSION_MAJOR)
# define COMPILER_VERSION_MINOR DEC(HIP_VERSION_MINOR)
# define COMPILER_VERSION_PATCH DEC(HIP_VERSION_PATCH)
# endif
#elif defined(__clang__)
# define COMPILER_ID "Clang"
# if defined(_MSC_VER)
# define SIMULATE_ID "MSVC"
# endif
# define COMPILER_VERSION_MAJOR DEC(__clang_major__)
# define COMPILER_VERSION_MINOR DEC(__clang_minor__)
# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__)
# if defined(_MSC_VER)
/* _MSC_VER = VVRR */
# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100)
# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100)
# endif
#elif defined(__GNUC__) || defined(__GNUG__)
# define COMPILER_ID "GNU"
# if defined(__GNUC__)
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# else
# define COMPILER_VERSION_MAJOR DEC(__GNUG__)
# endif
# if defined(__GNUC_MINOR__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# endif
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER)
# define COMPILER_ID "MSVC"
/* _MSC_VER = VVRR */
# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100)
# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100)
# if defined(_MSC_FULL_VER)
# if _MSC_VER >= 1400
/* _MSC_FULL_VER = VVRRPPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000)
# else
/* _MSC_FULL_VER = VVRRPPPP */
# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000)
# endif
# endif
# if defined(_MSC_BUILD)
# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD)
# endif
#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__)
# define COMPILER_ID "ADSP"
#if defined(__VISUALDSPVERSION__)
/* __VISUALDSPVERSION__ = 0xVVRRPP00 */
# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24)
# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF)
# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF)
#endif
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
# define COMPILER_ID "IAR"
# if defined(__VER__) && defined(__ICCARM__)
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000)
# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000)
# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000)
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__))
# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100)
# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100))
# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__)
# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__)
# endif
/* These compilers are either not known or too old to define an
identification macro. Try to identify the platform and guess that
it is the native compiler. */
#elif defined(__hpux) || defined(__hpua)
# define COMPILER_ID "HP"
#else /* unknown compiler */
# define COMPILER_ID ""
#endif
/* Construct the string literal in pieces to prevent the source from
getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */
char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]";
#ifdef SIMULATE_ID
char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]";
#endif
#ifdef __QNXNTO__
char const* qnxnto = "INFO" ":" "qnxnto[]";
#endif
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]";
#endif
#define STRINGIFY_HELPER(X) #X
#define STRINGIFY(X) STRINGIFY_HELPER(X)
/* Identify known platforms by name. */
#if defined(__linux) || defined(__linux__) || defined(linux)
# define PLATFORM_ID "Linux"
#elif defined(__MSYS__)
# define PLATFORM_ID "MSYS"
#elif defined(__CYGWIN__)
# define PLATFORM_ID "Cygwin"
#elif defined(__MINGW32__)
# define PLATFORM_ID "MinGW"
#elif defined(__APPLE__)
# define PLATFORM_ID "Darwin"
#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32)
# define PLATFORM_ID "Windows"
#elif defined(__FreeBSD__) || defined(__FreeBSD)
# define PLATFORM_ID "FreeBSD"
#elif defined(__NetBSD__) || defined(__NetBSD)
# define PLATFORM_ID "NetBSD"
#elif defined(__OpenBSD__) || defined(__OPENBSD)
# define PLATFORM_ID "OpenBSD"
#elif defined(__sun) || defined(sun)
# define PLATFORM_ID "SunOS"
#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__)
# define PLATFORM_ID "AIX"
#elif defined(__hpux) || defined(__hpux__)
# define PLATFORM_ID "HP-UX"
#elif defined(__HAIKU__)
# define PLATFORM_ID "Haiku"
#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS)
# define PLATFORM_ID "BeOS"
#elif defined(__QNX__) || defined(__QNXNTO__)
# define PLATFORM_ID "QNX"
#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__)
# define PLATFORM_ID "Tru64"
#elif defined(__riscos) || defined(__riscos__)
# define PLATFORM_ID "RISCos"
#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__)
# define PLATFORM_ID "SINIX"
#elif defined(__UNIX_SV__)
# define PLATFORM_ID "UNIX_SV"
#elif defined(__bsdos__)
# define PLATFORM_ID "BSDOS"
#elif defined(_MPRAS) || defined(MPRAS)
# define PLATFORM_ID "MP-RAS"
#elif defined(__osf) || defined(__osf__)
# define PLATFORM_ID "OSF1"
#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv)
# define PLATFORM_ID "SCO_SV"
#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX)
# define PLATFORM_ID "ULTRIX"
#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX)
# define PLATFORM_ID "Xenix"
#elif defined(__WATCOMC__)
# if defined(__LINUX__)
# define PLATFORM_ID "Linux"
# elif defined(__DOS__)
# define PLATFORM_ID "DOS"
# elif defined(__OS2__)
# define PLATFORM_ID "OS2"
# elif defined(__WINDOWS__)
# define PLATFORM_ID "Windows3x"
# elif defined(__VXWORKS__)
# define PLATFORM_ID "VxWorks"
# else /* unknown platform */
# define PLATFORM_ID
# endif
#elif defined(__INTEGRITY)
# if defined(INT_178B)
# define PLATFORM_ID "Integrity178"
# else /* regular Integrity */
# define PLATFORM_ID "Integrity"
# endif
#else /* unknown platform */
# define PLATFORM_ID
#endif
/* For windows compilers MSVC and Intel we can determine
the architecture of the compiler being used. This is because
the compilers do not have flags that can change the architecture,
but rather depend on which compiler is being used
*/
#if defined(_WIN32) && defined(_MSC_VER)
# if defined(_M_IA64)
# define ARCHITECTURE_ID "IA64"
# elif defined(_M_ARM64EC)
# define ARCHITECTURE_ID "ARM64EC"
# elif defined(_M_X64) || defined(_M_AMD64)
# define ARCHITECTURE_ID "x64"
# elif defined(_M_IX86)
# define ARCHITECTURE_ID "X86"
# elif defined(_M_ARM64)
# define ARCHITECTURE_ID "ARM64"
# elif defined(_M_ARM)
# if _M_ARM == 4
# define ARCHITECTURE_ID "ARMV4I"
# elif _M_ARM == 5
# define ARCHITECTURE_ID "ARMV5I"
# else
# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM)
# endif
# elif defined(_M_MIPS)
# define ARCHITECTURE_ID "MIPS"
# elif defined(_M_SH)
# define ARCHITECTURE_ID "SHx"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__WATCOMC__)
# if defined(_M_I86)
# define ARCHITECTURE_ID "I86"
# elif defined(_M_IX86)
# define ARCHITECTURE_ID "X86"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)
# if defined(__ICCARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__ICCRX__)
# define ARCHITECTURE_ID "RX"
# elif defined(__ICCRH850__)
# define ARCHITECTURE_ID "RH850"
# elif defined(__ICCRL78__)
# define ARCHITECTURE_ID "RL78"
# elif defined(__ICCRISCV__)
# define ARCHITECTURE_ID "RISCV"
# elif defined(__ICCAVR__)
# define ARCHITECTURE_ID "AVR"
# elif defined(__ICC430__)
# define ARCHITECTURE_ID "MSP430"
# elif defined(__ICCV850__)
# define ARCHITECTURE_ID "V850"
# elif defined(__ICC8051__)
# define ARCHITECTURE_ID "8051"
# elif defined(__ICCSTM8__)
# define ARCHITECTURE_ID "STM8"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__ghs__)
# if defined(__PPC64__)
# define ARCHITECTURE_ID "PPC64"
# elif defined(__ppc__)
# define ARCHITECTURE_ID "PPC"
# elif defined(__ARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__x86_64__)
# define ARCHITECTURE_ID "x64"
# elif defined(__i386__)
# define ARCHITECTURE_ID "X86"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#elif defined(__TI_COMPILER_VERSION__)
# if defined(__TI_ARM__)
# define ARCHITECTURE_ID "ARM"
# elif defined(__MSP430__)
# define ARCHITECTURE_ID "MSP430"
# elif defined(__TMS320C28XX__)
# define ARCHITECTURE_ID "TMS320C28x"
# elif defined(__TMS320C6X__) || defined(_TMS320C6X)
# define ARCHITECTURE_ID "TMS320C6x"
# else /* unknown architecture */
# define ARCHITECTURE_ID ""
# endif
#else
# define ARCHITECTURE_ID
#endif
/* Convert integer to decimal digit literals. */
#define DEC(n) \
('0' + (((n) / 10000000)%10)), \
('0' + (((n) / 1000000)%10)), \
('0' + (((n) / 100000)%10)), \
('0' + (((n) / 10000)%10)), \
('0' + (((n) / 1000)%10)), \
('0' + (((n) / 100)%10)), \
('0' + (((n) / 10)%10)), \
('0' + ((n) % 10))
/* Convert integer to hex digit literals. */
#define HEX(n) \
('0' + ((n)>>28 & 0xF)), \
('0' + ((n)>>24 & 0xF)), \
('0' + ((n)>>20 & 0xF)), \
('0' + ((n)>>16 & 0xF)), \
('0' + ((n)>>12 & 0xF)), \
('0' + ((n)>>8 & 0xF)), \
('0' + ((n)>>4 & 0xF)), \
('0' + ((n) & 0xF))
/* Construct a string literal encoding the version number. */
#ifdef COMPILER_VERSION
char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]";
/* Construct a string literal encoding the version number components. */
#elif defined(COMPILER_VERSION_MAJOR)
char const info_version[] = {
'I', 'N', 'F', 'O', ':',
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[',
COMPILER_VERSION_MAJOR,
# ifdef COMPILER_VERSION_MINOR
'.', COMPILER_VERSION_MINOR,
# ifdef COMPILER_VERSION_PATCH
'.', COMPILER_VERSION_PATCH,
# ifdef COMPILER_VERSION_TWEAK
'.', COMPILER_VERSION_TWEAK,
# endif
# endif
# endif
']','\0'};
#endif
/* Construct a string literal encoding the internal version number. */
#ifdef COMPILER_VERSION_INTERNAL
char const info_version_internal[] = {
'I', 'N', 'F', 'O', ':',
'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_',
'i','n','t','e','r','n','a','l','[',
COMPILER_VERSION_INTERNAL,']','\0'};
#elif defined(COMPILER_VERSION_INTERNAL_STR)
char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]";
#endif
/* Construct a string literal encoding the version number components. */
#ifdef SIMULATE_VERSION_MAJOR
char const info_simulate_version[] = {
'I', 'N', 'F', 'O', ':',
's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[',
SIMULATE_VERSION_MAJOR,
# ifdef SIMULATE_VERSION_MINOR
'.', SIMULATE_VERSION_MINOR,
# ifdef SIMULATE_VERSION_PATCH
'.', SIMULATE_VERSION_PATCH,
# ifdef SIMULATE_VERSION_TWEAK
'.', SIMULATE_VERSION_TWEAK,
# endif
# endif
# endif
']','\0'};
#endif
/* Construct the string literal in pieces to prevent the source from
getting matched. Store it in a pointer rather than an array
because some compilers will just produce instructions to fill the
array rather than assigning a pointer to a static array. */
char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]";
char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]";
#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L
# if defined(__INTEL_CXX11_MODE__)
# if defined(__cpp_aggregate_nsdmi)
# define CXX_STD 201402L
# else
# define CXX_STD 201103L
# endif
# else
# define CXX_STD 199711L
# endif
#elif defined(_MSC_VER) && defined(_MSVC_LANG)
# define CXX_STD _MSVC_LANG
#else
# define CXX_STD __cplusplus
#endif
const char* info_language_dialect_default = "INFO" ":" "dialect_default["
#if CXX_STD > 202002L
"23"
#elif CXX_STD > 201703L
"20"
#elif CXX_STD >= 201703L
"17"
#elif CXX_STD >= 201402L
"14"
#elif CXX_STD >= 201103L
"11"
#else
"98"
#endif
"]";
/*--------------------------------------------------------------------------*/
int main(int argc, char* argv[])
{
int require = 0;
require += info_compiler[argc];
require += info_platform[argc];
#ifdef COMPILER_VERSION_MAJOR
require += info_version[argc];
#endif
#ifdef COMPILER_VERSION_INTERNAL
require += info_version_internal[argc];
#endif
#ifdef SIMULATE_ID
require += info_simulate[argc];
#endif
#ifdef SIMULATE_VERSION_MAJOR
require += info_simulate_version[argc];
#endif
#if defined(__CRAYXT_COMPUTE_LINUX_TARGET)
require += info_cray[argc];
#endif
require += info_language_dialect_default[argc];
(void)argv;
return require;
}

View file

@ -469,3 +469,422 @@ make[1]: Leaving directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/
Source file was: Source file was:
int main() { return 0; } int main() { return 0; }
The system is: Linux - 5.10.43-1-lts - x86_64
Compiling the C compiler identification source file "CMakeCCompilerId.c" succeeded.
Compiler: /usr/bin/cc
Build flags:
Id flags:
The output was:
0
Compilation of the C compiler identification source "CMakeCCompilerId.c" produced "a.out"
The C compiler identification is GNU, found in "/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/3.21.2/CompilerIdC/a.out"
Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded.
Compiler: /usr/bin/c++
Build flags:
Id flags:
The output was:
0
Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out"
The CXX compiler identification is GNU, found in "/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/3.21.2/CompilerIdCXX/a.out"
Detecting C compiler ABI info compiled with the following output:
Change Dir: /mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_ffb53/fast && make[1]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
/usr/bin/make -f CMakeFiles/cmTC_ffb53.dir/build.make CMakeFiles/cmTC_ffb53.dir/build
make[2]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
Building C object CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o
/usr/bin/cc -v -o CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.21/Modules/CMakeCCompilerABI.c
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.1.0 (GCC)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_ffb53.dir/'
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/cc1 -quiet -v /usr/share/cmake-3.21/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_ffb53.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -o /tmp/cciH5MC2.s
GNU C17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 11.1.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include
/usr/local/include
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed
/usr/include
End of search list.
GNU C17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 11.1.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 3d0ac5c030c008e73f10e8b66957dbfa
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_ffb53.dir/'
as -v --64 -o CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o /tmp/cciH5MC2.s
GNU assembler version 2.36.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.36.1
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.'
Linking C executable cmTC_ffb53
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ffb53.dir/link.txt --verbose=1
/usr/bin/cc -v CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o -o cmTC_ffb53
Using built-in specs.
COLLECT_GCC=/usr/bin/cc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.1.0 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_ffb53' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_ffb53.'
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccg4QXQL.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_ffb53 /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../.. CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_ffb53' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_ffb53.'
make[2]: Leaving directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
make[1]: Leaving directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
Parsed C implicit include dir info from above output: rv=done
found start of include info
found start of implicit include info
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include]
add: [/usr/local/include]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed]
add: [/usr/include]
end of search list found
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed;/usr/include]
Parsed C implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_ffb53/fast && make[1]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp']
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_ffb53.dir/build.make CMakeFiles/cmTC_ffb53.dir/build]
ignore line: [make[2]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp']
ignore line: [Building C object CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o]
ignore line: [/usr/bin/cc -v -o CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o -c /usr/share/cmake-3.21/Modules/CMakeCCompilerABI.c]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c c++ ada fortran go lto objc obj-c++ d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.1.0 (GCC) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_ffb53.dir/']
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/cc1 -quiet -v /usr/share/cmake-3.21/Modules/CMakeCCompilerABI.c -quiet -dumpdir CMakeFiles/cmTC_ffb53.dir/ -dumpbase CMakeCCompilerABI.c.c -dumpbase-ext .c -mtune=generic -march=x86-64 -version -o /tmp/cciH5MC2.s]
ignore line: [GNU C17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 11.1.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.]
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../x86_64-pc-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 11.1.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.]
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 3d0ac5c030c008e73f10e8b66957dbfa]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_ffb53.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o /tmp/cciH5MC2.s]
ignore line: [GNU assembler version 2.36.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.36.1]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o' '-c' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.']
ignore line: [Linking C executable cmTC_ffb53]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_ffb53.dir/link.txt --verbose=1]
ignore line: [/usr/bin/cc -v CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o -o cmTC_ffb53 ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/cc]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c c++ ada fortran go lto objc obj-c++ d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.1.0 (GCC) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_ffb53' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_ffb53.']
link line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccg4QXQL.res -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lgcc_s --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_ffb53 /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../.. CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o -lgcc --push-state --as-needed -lgcc_s --pop-state -lc -lgcc --push-state --as-needed -lgcc_s --pop-state /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccg4QXQL.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-o] ==> ignore
arg [cmTC_ffb53] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../..]
arg [CMakeFiles/cmTC_ffb53.dir/CMakeCCompilerABI.c.o] ==> ignore
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [-lc] ==> lib [c]
arg [-lgcc] ==> lib [gcc]
arg [--push-state] ==> ignore
arg [--as-needed] ==> ignore
arg [-lgcc_s] ==> lib [gcc_s]
arg [--pop-state] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o] ==> [/usr/lib/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o] ==> [/usr/lib/crti.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o] ==> [/usr/lib/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../..] ==> [/usr/lib]
implicit libs: [gcc;gcc_s;c;gcc;gcc_s]
implicit objs: [/usr/lib/Scrt1.o;/usr/lib/crti.o;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o;/usr/lib/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0;/usr/lib;/lib]
implicit fwks: []
Detecting CXX compiler ABI info compiled with the following output:
Change Dir: /mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp
Run Build Command(s):/usr/bin/make -f Makefile cmTC_97476/fast && make[1]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
/usr/bin/make -f CMakeFiles/cmTC_97476.dir/build.make CMakeFiles/cmTC_97476.dir/build
make[2]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
Building CXX object CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o
/usr/bin/c++ -v -o CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.21/Modules/CMakeCXXCompilerABI.cpp
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.1.0 (GCC)
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_97476.dir/'
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/cc1plus -quiet -v -D_GNU_SOURCE /usr/share/cmake-3.21/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_97476.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -o /tmp/ccXDncFf.s
GNU C++17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 11.1.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../x86_64-pc-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/x86_64-pc-linux-gnu
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/backward
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include
/usr/local/include
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed
/usr/include
End of search list.
GNU C++17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)
compiled by GNU C version 11.1.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP
warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 45eb9a71cc15bfdc579557bea4b77e51
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_97476.dir/'
as -v --64 -o CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccXDncFf.s
GNU assembler version 2.36.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.36.1
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.'
Linking CXX executable cmTC_97476
/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_97476.dir/link.txt --verbose=1
/usr/bin/c++ -v CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_97476
Using built-in specs.
COLLECT_GCC=/usr/bin/c++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++,d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.1.0 (GCC)
COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_97476' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_97476.'
/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccrbqWPR.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_97476 /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../.. CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o
COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_97476' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_97476.'
make[2]: Leaving directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
make[1]: Leaving directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp'
Parsed CXX implicit include dir info from above output: rv=done
found start of include info
found start of implicit include info
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/x86_64-pc-linux-gnu]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/backward]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include]
add: [/usr/local/include]
add: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed]
add: [/usr/include]
end of search list found
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0] ==> [/usr/include/c++/11.1.0]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/x86_64-pc-linux-gnu] ==> [/usr/include/c++/11.1.0/x86_64-pc-linux-gnu]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/backward] ==> [/usr/include/c++/11.1.0/backward]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include]
collapse include dir [/usr/local/include] ==> [/usr/local/include]
collapse include dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed]
collapse include dir [/usr/include] ==> [/usr/include]
implicit include dirs: [/usr/include/c++/11.1.0;/usr/include/c++/11.1.0/x86_64-pc-linux-gnu;/usr/include/c++/11.1.0/backward;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include;/usr/local/include;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed;/usr/include]
Parsed CXX implicit link information from above output:
link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)]
ignore line: [Change Dir: /mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp]
ignore line: []
ignore line: [Run Build Command(s):/usr/bin/make -f Makefile cmTC_97476/fast && make[1]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp']
ignore line: [/usr/bin/make -f CMakeFiles/cmTC_97476.dir/build.make CMakeFiles/cmTC_97476.dir/build]
ignore line: [make[2]: Entering directory '/mnt/731b17da-2f45-4ded-b563-c94773bf847d/home/anon/gitgud-repositories/KDE/seventasks/build/CMakeFiles/CMakeTmp']
ignore line: [Building CXX object CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o]
ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.21/Modules/CMakeCXXCompilerABI.cpp]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c c++ ada fortran go lto objc obj-c++ d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.1.0 (GCC) ]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_97476.dir/']
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/cc1plus -quiet -v -D_GNU_SOURCE /usr/share/cmake-3.21/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_97476.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -o /tmp/ccXDncFf.s]
ignore line: [GNU C++17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 11.1.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.]
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../x86_64-pc-linux-gnu/include"]
ignore line: [#include "..." search starts here:]
ignore line: [#include <...> search starts here:]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/x86_64-pc-linux-gnu]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../include/c++/11.1.0/backward]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include]
ignore line: [ /usr/local/include]
ignore line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/include-fixed]
ignore line: [ /usr/include]
ignore line: [End of search list.]
ignore line: [GNU C++17 (GCC) version 11.1.0 (x86_64-pc-linux-gnu)]
ignore line: [ compiled by GNU C version 11.1.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP]
ignore line: []
ignore line: [warning: MPFR header version 4.1.0 differs from library version 4.1.0-p13.]
ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072]
ignore line: [Compiler executable checksum: 45eb9a71cc15bfdc579557bea4b77e51]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_97476.dir/']
ignore line: [ as -v --64 -o CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccXDncFf.s]
ignore line: [GNU assembler version 2.36.1 (x86_64-pc-linux-gnu) using BFD version (GNU Binutils) 2.36.1]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.']
ignore line: [Linking CXX executable cmTC_97476]
ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_97476.dir/link.txt --verbose=1]
ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_97476 ]
ignore line: [Using built-in specs.]
ignore line: [COLLECT_GCC=/usr/bin/c++]
ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper]
ignore line: [Target: x86_64-pc-linux-gnu]
ignore line: [Configured with: /build/gcc/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c c++ ada fortran go lto objc obj-c++ d --with-isl --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-install-libiberty --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-libunwind-exceptions --disable-werror gdc_include_dir=/usr/include/dlang/gdc]
ignore line: [Thread model: posix]
ignore line: [Supported LTO compression algorithms: zlib zstd]
ignore line: [gcc version 11.1.0 (GCC) ]
ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/]
ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../:/lib/:/usr/lib/]
ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_97476' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_97476.']
link line: [ /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/collect2 -plugin /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper -plugin-opt=-fresolution=/tmp/ccrbqWPR.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr --hash-style=gnu -m elf_x86_64 -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -o cmTC_97476 /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0 -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib -L/lib/../lib -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../.. CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o /usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/collect2] ==> ignore
arg [-plugin] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/liblto_plugin.so] ==> ignore
arg [-plugin-opt=/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/lto-wrapper] ==> ignore
arg [-plugin-opt=-fresolution=/tmp/ccrbqWPR.res] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [-plugin-opt=-pass-through=-lc] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore
arg [-plugin-opt=-pass-through=-lgcc] ==> ignore
arg [--build-id] ==> ignore
arg [--eh-frame-hdr] ==> ignore
arg [--hash-style=gnu] ==> ignore
arg [-m] ==> ignore
arg [elf_x86_64] ==> ignore
arg [-dynamic-linker] ==> ignore
arg [/lib64/ld-linux-x86-64.so.2] ==> ignore
arg [-pie] ==> ignore
arg [-o] ==> ignore
arg [cmTC_97476] ==> ignore
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib]
arg [-L/lib/../lib] ==> dir [/lib/../lib]
arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib]
arg [-L/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../..] ==> dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../..]
arg [CMakeFiles/cmTC_97476.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore
arg [-lstdc++] ==> lib [stdc++]
arg [-lm] ==> lib [m]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [-lc] ==> lib [c]
arg [-lgcc_s] ==> lib [gcc_s]
arg [-lgcc] ==> lib [gcc]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o]
arg [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o] ==> obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/Scrt1.o] ==> [/usr/lib/Scrt1.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crti.o] ==> [/usr/lib/crti.o]
collapse obj [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib/crtn.o] ==> [/usr/lib/crtn.o]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0] ==> [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../../../lib] ==> [/usr/lib]
collapse library dir [/lib/../lib] ==> [/lib]
collapse library dir [/usr/lib/../lib] ==> [/usr/lib]
collapse library dir [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/../../..] ==> [/usr/lib]
implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc]
implicit objs: [/usr/lib/Scrt1.o;/usr/lib/crti.o;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtbeginS.o;/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0/crtendS.o;/usr/lib/crtn.o]
implicit dirs: [/usr/lib/gcc/x86_64-pc-linux-gnu/11.1.0;/usr/lib;/lib]
implicit fwks: []

View file

@ -8,9 +8,9 @@ set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles")
set(CMAKE_MAKEFILE_DEPENDS set(CMAKE_MAKEFILE_DEPENDS
"CMakeCache.txt" "CMakeCache.txt"
"../CMakeLists.txt" "../CMakeLists.txt"
"CMakeFiles/3.21.0/CMakeCCompiler.cmake" "CMakeFiles/3.21.2/CMakeCCompiler.cmake"
"CMakeFiles/3.21.0/CMakeCXXCompiler.cmake" "CMakeFiles/3.21.2/CMakeCXXCompiler.cmake"
"CMakeFiles/3.21.0/CMakeSystem.cmake" "CMakeFiles/3.21.2/CMakeSystem.cmake"
"../src/CMakeLists.txt" "../src/CMakeLists.txt"
"/usr/lib64/cmake/KF5Config/KF5ConfigCompilerTargets-noconfig.cmake" "/usr/lib64/cmake/KF5Config/KF5ConfigCompilerTargets-noconfig.cmake"
"/usr/lib64/cmake/KF5Config/KF5ConfigCompilerTargets.cmake" "/usr/lib64/cmake/KF5Config/KF5ConfigCompilerTargets.cmake"
@ -79,7 +79,6 @@ set(CMAKE_MAKEFILE_DEPENDS
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSKmsEglDeviceIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSKmsEglDeviceIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSKmsGbmIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSKmsGbmIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEglFSX11IntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEvdevKeyboardPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEvdevKeyboardPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEvdevMousePlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEvdevMousePlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEvdevTabletPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QEvdevTabletPlugin.cmake"
@ -104,7 +103,6 @@ set(CMAKE_MAKEFILE_DEPENDS
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QWaylandIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QWaylandIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeEglPlatformIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeEglPlatformIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeGlxPlatformIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QWaylandXCompositeGlxPlatformIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbEglIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbGlxIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbGlxIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbIntegrationPlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXcbIntegrationPlugin.cmake"
"/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXdgDesktopPortalThemePlugin.cmake" "/usr/lib64/cmake/Qt5Gui/Qt5Gui_QXdgDesktopPortalThemePlugin.cmake"
@ -162,7 +160,6 @@ set(CMAKE_MAKEFILE_DEPENDS
"/usr/share/cmake-3.21/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake" "/usr/share/cmake-3.21/Modules/CMakeCheckCompilerFlagCommonPatterns.cmake"
"/usr/share/cmake-3.21/Modules/CMakeCommonLanguageInclude.cmake" "/usr/share/cmake-3.21/Modules/CMakeCommonLanguageInclude.cmake"
"/usr/share/cmake-3.21/Modules/CMakeCompilerIdDetection.cmake" "/usr/share/cmake-3.21/Modules/CMakeCompilerIdDetection.cmake"
"/usr/share/cmake-3.21/Modules/CMakeConfigurableFile.in"
"/usr/share/cmake-3.21/Modules/CMakeDetermineCCompiler.cmake" "/usr/share/cmake-3.21/Modules/CMakeDetermineCCompiler.cmake"
"/usr/share/cmake-3.21/Modules/CMakeDetermineCXXCompiler.cmake" "/usr/share/cmake-3.21/Modules/CMakeDetermineCXXCompiler.cmake"
"/usr/share/cmake-3.21/Modules/CMakeDetermineCompileFeatures.cmake" "/usr/share/cmake-3.21/Modules/CMakeDetermineCompileFeatures.cmake"
@ -185,7 +182,6 @@ set(CMAKE_MAKEFILE_DEPENDS
"/usr/share/cmake-3.21/Modules/CMakeTestCCompiler.cmake" "/usr/share/cmake-3.21/Modules/CMakeTestCCompiler.cmake"
"/usr/share/cmake-3.21/Modules/CMakeTestCXXCompiler.cmake" "/usr/share/cmake-3.21/Modules/CMakeTestCXXCompiler.cmake"
"/usr/share/cmake-3.21/Modules/CMakeTestCompilerCommon.cmake" "/usr/share/cmake-3.21/Modules/CMakeTestCompilerCommon.cmake"
"/usr/share/cmake-3.21/Modules/CMakeUnixFindMake.cmake"
"/usr/share/cmake-3.21/Modules/CheckCXXCompilerFlag.cmake" "/usr/share/cmake-3.21/Modules/CheckCXXCompilerFlag.cmake"
"/usr/share/cmake-3.21/Modules/CheckCXXSourceCompiles.cmake" "/usr/share/cmake-3.21/Modules/CheckCXXSourceCompiles.cmake"
"/usr/share/cmake-3.21/Modules/CheckSymbolExists.cmake" "/usr/share/cmake-3.21/Modules/CheckSymbolExists.cmake"
@ -265,11 +261,11 @@ set(CMAKE_MAKEFILE_OUTPUTS
# Byproducts of CMake generate step: # Byproducts of CMake generate step:
set(CMAKE_MAKEFILE_PRODUCTS set(CMAKE_MAKEFILE_PRODUCTS
"CMakeFiles/3.21.0/CMakeSystem.cmake" "CMakeFiles/3.21.2/CMakeSystem.cmake"
"CMakeFiles/3.21.0/CMakeCCompiler.cmake" "CMakeFiles/3.21.2/CMakeCCompiler.cmake"
"CMakeFiles/3.21.0/CMakeCXXCompiler.cmake" "CMakeFiles/3.21.2/CMakeCXXCompiler.cmake"
"CMakeFiles/3.21.0/CMakeCCompiler.cmake" "CMakeFiles/3.21.2/CMakeCCompiler.cmake"
"CMakeFiles/3.21.0/CMakeCXXCompiler.cmake" "CMakeFiles/3.21.2/CMakeCXXCompiler.cmake"
"prefix.sh" "prefix.sh"
"ecm_uninstall.cmake" "ecm_uninstall.cmake"
"CMakeFiles/CMakeDirectoryInformation.cmake" "CMakeFiles/CMakeDirectoryInformation.cmake"

View file

@ -394,8 +394,6 @@ src/CMakeFiles/plasma_applet_seventasks.dir/plasma_applet_seventasks_autogen/moc
/usr/include/qt/QtCore/qbytearray.h /usr/include/qt/QtCore/qbytearray.h
/usr/include/qt/QtCore/QStandardPaths /usr/include/qt/QtCore/QStandardPaths
/usr/include/qt/QtCore/qstandardpaths.h /usr/include/qt/QtCore/qstandardpaths.h
/usr/include/KF5/plasma/version.h
/usr/include/KF5/plasma_version.h
/usr/include/KF5/KPackage/KPackage/Package /usr/include/KF5/KPackage/KPackage/Package
/usr/include/KF5/KPackage/kpackage/package.h /usr/include/KF5/KPackage/kpackage/package.h
/usr/include/qt/QtCore/QCryptographicHash /usr/include/qt/QtCore/QCryptographicHash
@ -847,8 +845,6 @@ src/CMakeFiles/plasma_applet_seventasks.dir/seventasks.cpp.o
/usr/include/qt/QtCore/qbytearray.h /usr/include/qt/QtCore/qbytearray.h
/usr/include/qt/QtCore/QStandardPaths /usr/include/qt/QtCore/QStandardPaths
/usr/include/qt/QtCore/qstandardpaths.h /usr/include/qt/QtCore/qstandardpaths.h
/usr/include/KF5/plasma/version.h
/usr/include/KF5/plasma_version.h
/usr/include/KF5/KPackage/KPackage/Package /usr/include/KF5/KPackage/KPackage/Package
/usr/include/KF5/KPackage/kpackage/package.h /usr/include/KF5/KPackage/kpackage/package.h
/usr/include/qt/QtCore/QCryptographicHash /usr/include/qt/QtCore/QCryptographicHash

View file

@ -393,8 +393,6 @@ src/CMakeFiles/plasma_applet_seventasks.dir/plasma_applet_seventasks_autogen/moc
/usr/include/qt/QtCore/qbytearray.h \ /usr/include/qt/QtCore/qbytearray.h \
/usr/include/qt/QtCore/QStandardPaths \ /usr/include/qt/QtCore/QStandardPaths \
/usr/include/qt/QtCore/qstandardpaths.h \ /usr/include/qt/QtCore/qstandardpaths.h \
/usr/include/KF5/plasma/version.h \
/usr/include/KF5/plasma_version.h \
/usr/include/KF5/KPackage/KPackage/Package \ /usr/include/KF5/KPackage/KPackage/Package \
/usr/include/KF5/KPackage/kpackage/package.h \ /usr/include/KF5/KPackage/kpackage/package.h \
/usr/include/qt/QtCore/QCryptographicHash \ /usr/include/qt/QtCore/QCryptographicHash \
@ -845,8 +843,6 @@ src/CMakeFiles/plasma_applet_seventasks.dir/seventasks.cpp.o: ../src/seventasks.
/usr/include/qt/QtCore/qbytearray.h \ /usr/include/qt/QtCore/qbytearray.h \
/usr/include/qt/QtCore/QStandardPaths \ /usr/include/qt/QtCore/QStandardPaths \
/usr/include/qt/QtCore/qstandardpaths.h \ /usr/include/qt/QtCore/qstandardpaths.h \
/usr/include/KF5/plasma/version.h \
/usr/include/KF5/plasma_version.h \
/usr/include/KF5/KPackage/KPackage/Package \ /usr/include/KF5/KPackage/KPackage/Package \
/usr/include/KF5/KPackage/kpackage/package.h \ /usr/include/KF5/KPackage/kpackage/package.h \
/usr/include/qt/QtCore/QCryptographicHash \ /usr/include/qt/QtCore/QCryptographicHash \
@ -956,8 +952,6 @@ src/plasma_applet_seventasks_autogen/include/seventasks.moc:
/usr/include/KF5/KPackage/kpackage/package.h: /usr/include/KF5/KPackage/kpackage/package.h:
/usr/include/KF5/plasma/version.h:
/usr/include/qt/QtCore/QStandardPaths: /usr/include/qt/QtCore/QStandardPaths:
/usr/include/qt/QtCore/QByteArray: /usr/include/qt/QtCore/QByteArray:
@ -1294,8 +1288,6 @@ src/plasma_applet_seventasks_autogen/EWIEGA46WW/moc_seventasks.cpp:
/usr/include/bits/struct_mutex.h: /usr/include/bits/struct_mutex.h:
/usr/include/KF5/plasma_version.h:
/usr/include/c++/11.1.0/streambuf: /usr/include/c++/11.1.0/streambuf:
/usr/include/qt/QtGui/QRgb: /usr/include/qt/QtGui/QRgb:

View file

@ -1 +1 @@
/usr/bin/c++ -fPIC -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -Wl,--no-undefined -Wl,--fatal-warnings -Wl,--enable-new-dtags -shared -o plasma_applet_seventasks.so CMakeFiles/plasma_applet_seventasks.dir/plasma_applet_seventasks_autogen/mocs_compilation.cpp.o CMakeFiles/plasma_applet_seventasks.dir/seventasks.cpp.o /usr/lib/libQt5Quick.so.5.15.2 /usr/lib/libKF5Plasma.so.5.84.0 /usr/lib/libQt5QmlModels.so.5.15.2 /usr/lib/libQt5Qml.so.5.15.2 /usr/lib/libQt5Network.so.5.15.2 /usr/lib/libKF5Service.so.5.84.0 /usr/lib/libKF5ConfigCore.so.5.84.0 /usr/lib/libKF5Package.so.5.84.0 /usr/lib/libKF5I18n.so.5.84.0 /usr/lib/libKF5CoreAddons.so.5.84.0 /usr/lib/libQt5Gui.so.5.15.2 /usr/lib/libQt5Core.so.5.15.2 /usr/bin/c++ -fPIC -fno-operator-names -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Wvla -Wdate-time -Wsuggest-override -Wlogical-op -Wl,--no-undefined -Wl,--fatal-warnings -Wl,--enable-new-dtags -shared -o plasma_applet_seventasks.so CMakeFiles/plasma_applet_seventasks.dir/plasma_applet_seventasks_autogen/mocs_compilation.cpp.o CMakeFiles/plasma_applet_seventasks.dir/seventasks.cpp.o /usr/lib/libQt5Quick.so.5.15.2 /usr/lib/libKF5Plasma.so.5.85.0 /usr/lib/libQt5QmlModels.so.5.15.2 /usr/lib/libQt5Qml.so.5.15.2 /usr/lib/libQt5Network.so.5.15.2 /usr/lib/libKF5Service.so.5.85.0 /usr/lib/libKF5ConfigCore.so.5.85.0 /usr/lib/libKF5Package.so.5.85.0 /usr/lib/libKF5I18n.so.5.85.0 /usr/lib/libKF5CoreAddons.so.5.85.0 /usr/lib/libQt5Gui.so.5.15.2 /usr/lib/libQt5Core.so.5.15.2

View file

@ -276,7 +276,6 @@ src/CMakeFiles/plasma_applet_seventasks.dir/plasma_applet_seventasks_autogen/moc
/usr/include/qt/QtCore/qbytearray.h \ /usr/include/qt/QtCore/qbytearray.h \
/usr/include/qt/QtCore/QStandardPaths \ /usr/include/qt/QtCore/QStandardPaths \
/usr/include/qt/QtCore/qstandardpaths.h \ /usr/include/qt/QtCore/qstandardpaths.h \
/usr/include/KF5/plasma/version.h /usr/include/KF5/plasma_version.h \
/usr/include/KF5/KPackage/KPackage/Package \ /usr/include/KF5/KPackage/KPackage/Package \
/usr/include/KF5/KPackage/kpackage/package.h \ /usr/include/KF5/KPackage/kpackage/package.h \
/usr/include/qt/QtCore/QCryptographicHash \ /usr/include/qt/QtCore/QCryptographicHash \

View file

@ -275,7 +275,6 @@ src/CMakeFiles/plasma_applet_seventasks.dir/seventasks.cpp.o: \
/usr/include/qt/QtCore/qbytearray.h \ /usr/include/qt/QtCore/qbytearray.h \
/usr/include/qt/QtCore/QStandardPaths \ /usr/include/qt/QtCore/QStandardPaths \
/usr/include/qt/QtCore/qstandardpaths.h \ /usr/include/qt/QtCore/qstandardpaths.h \
/usr/include/KF5/plasma/version.h /usr/include/KF5/plasma_version.h \
/usr/include/KF5/KPackage/KPackage/Package \ /usr/include/KF5/KPackage/KPackage/Package \
/usr/include/KF5/KPackage/kpackage/package.h \ /usr/include/KF5/KPackage/kpackage/package.h \
/usr/include/qt/QtCore/QCryptographicHash \ /usr/include/qt/QtCore/QCryptographicHash \

View file

@ -38,8 +38,6 @@
mdp:/usr/include/KF5/plasma/plasma_export.h mdp:/usr/include/KF5/plasma/plasma_export.h
mdp:/usr/include/KF5/plasma/svg.h mdp:/usr/include/KF5/plasma/svg.h
mdp:/usr/include/KF5/plasma/theme.h mdp:/usr/include/KF5/plasma/theme.h
mdp:/usr/include/KF5/plasma/version.h
mdp:/usr/include/KF5/plasma_version.h
mdp:/usr/include/asm-generic/errno-base.h mdp:/usr/include/asm-generic/errno-base.h
mdp:/usr/include/asm-generic/errno.h mdp:/usr/include/asm-generic/errno.h
mdp:/usr/include/asm/errno.h mdp:/usr/include/asm/errno.h
@ -480,8 +478,6 @@
mdp:/usr/include/KF5/plasma/plasma_export.h mdp:/usr/include/KF5/plasma/plasma_export.h
mdp:/usr/include/KF5/plasma/svg.h mdp:/usr/include/KF5/plasma/svg.h
mdp:/usr/include/KF5/plasma/theme.h mdp:/usr/include/KF5/plasma/theme.h
mdp:/usr/include/KF5/plasma/version.h
mdp:/usr/include/KF5/plasma_version.h
mdp:/usr/include/asm-generic/errno-base.h mdp:/usr/include/asm-generic/errno-base.h
mdp:/usr/include/asm-generic/errno.h mdp:/usr/include/asm-generic/errno.h
mdp:/usr/include/asm/errno.h mdp:/usr/include/asm/errno.h

View file

@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<component> <component type="addon">
<id>org.kde.plasma.seventasks</id> <id>org.kde.plasma.seventasks</id>
<extends>org.kde.plasmashell</extends>
<name>SevenTasks</name> <name>SevenTasks</name>
<name xml:lang="ar">SevenTasks</name> <name xml:lang="ar">SevenTasks</name>
<name xml:lang="az">SevenTasks</name> <name xml:lang="az">SevenTasks</name>

View file

@ -35,8 +35,6 @@
/usr/include/KF5/plasma/plasma_export.h \ /usr/include/KF5/plasma/plasma_export.h \
/usr/include/KF5/plasma/svg.h \ /usr/include/KF5/plasma/svg.h \
/usr/include/KF5/plasma/theme.h \ /usr/include/KF5/plasma/theme.h \
/usr/include/KF5/plasma/version.h \
/usr/include/KF5/plasma_version.h \
/usr/include/asm-generic/errno-base.h \ /usr/include/asm-generic/errno-base.h \
/usr/include/asm-generic/errno.h \ /usr/include/asm-generic/errno.h \
/usr/include/asm/errno.h \ /usr/include/asm/errno.h \

View file

@ -37,8 +37,6 @@
/usr/include/KF5/plasma/plasma_export.h \ /usr/include/KF5/plasma/plasma_export.h \
/usr/include/KF5/plasma/svg.h \ /usr/include/KF5/plasma/svg.h \
/usr/include/KF5/plasma/theme.h \ /usr/include/KF5/plasma/theme.h \
/usr/include/KF5/plasma/version.h \
/usr/include/KF5/plasma_version.h \
/usr/include/asm-generic/errno-base.h \ /usr/include/asm-generic/errno-base.h \
/usr/include/asm-generic/errno.h \ /usr/include/asm-generic/errno.h \
/usr/include/asm/errno.h \ /usr/include/asm/errno.h \

View file

@ -18,6 +18,10 @@ MouseArea {
task.updateMousePosition(position.x); task.updateMousePosition(position.x);
} }
onContainsMouseChanged: {
var position = audioStreamIconBox.mapToItem(task, audioStreamIconBox.mouseX, audioStreamIconBox.mouseY);
task.updateMousePosition(position.x);
}
// Using States rather than a simple Behavior we can apply different transitions, // Using States rather than a simple Behavior we can apply different transitions,
// which allows us to delay showing the icon but hide it instantly still. // which allows us to delay showing the icon but hide it instantly still.
states: [ states: [

View file

@ -132,6 +132,7 @@ MouseArea {
} }
onContainsMouseChanged: { onContainsMouseChanged: {
updateMousePosition(ma.mouseX);
if(taskList.firstTimeHover === false) { if(taskList.firstTimeHover === false) {
taskList.updateHoverFunc(); taskList.updateHoverFunc();
taskList.firstTimeHover = true; taskList.firstTimeHover = true;
@ -397,9 +398,9 @@ MouseArea {
} }
gradient: Gradient { gradient: Gradient {
id: radialGrad id: radialGrad
GradientStop { position: 0.0; color: "#CCEAEAEA" } GradientStop { position: 0.0; color: Qt.lighter(hoverColor, 1.8) }
GradientStop { position: 0.4; color: hoverColor } GradientStop { position: 0.4; color: hoverColor }
GradientStop { position: 0.8; color: "transparent" } GradientStop { position: 0.9; color: "transparent" }
} }
verticalOffset: hoverRect.height/2.2 verticalOffset: hoverRect.height/2.2
horizontalOffset: 0 horizontalOffset: 0
@ -419,7 +420,13 @@ MouseArea {
anchors.fill: parent anchors.fill: parent
onPositionChanged: { onPositionChanged: {
task.updateMousePosition(ma.mouseX); task.updateMousePosition(ma.mouseX);
task.positionChanged(mouse); task.positionChanged(mouse);
}
onContainsMouseChanged: {
task.updateMousePosition(ma.mouseX);
//task.onContainsMouseChanged();
//toolTipArea.onContainsMouseChanged();
//mouse.accepted = false;
} }
onPressed: mouse.accepted = false; onPressed: mouse.accepted = false;
onReleased: mouse.accepted = false; onReleased: mouse.accepted = false;

View file

@ -38,6 +38,7 @@ MouseArea {
Plasmoid.onUserConfiguringChanged: { Plasmoid.onUserConfiguringChanged: {
if (plasmoid.userConfiguring) { if (plasmoid.userConfiguring) {
LayoutManager.layout(taskRepeater);
groupDialog.visible = false; groupDialog.visible = false;
} }
} }
@ -63,6 +64,15 @@ MouseArea {
StateChangeScript { StateChangeScript {
script: taskList.updateHoverFunc(); script: taskList.updateHoverFunc();
} }
StateChangeScript {
script: LayoutManager.layout(taskRepeater);
}
PropertyChanges {
target: taskList; firstTimeHover: false
}
/*PropertyChanges {
target: tasks; needLayoutRefresh: true
}*/
} }
onWidthChanged: { onWidthChanged: {
@ -470,7 +480,7 @@ MouseArea {
delegate: Task { id: task } delegate: Task { id: task }
onItemAdded: { onItemAdded: {
taskList.layout() taskList.layout();
taskList.updateHoverFunc(); taskList.updateHoverFunc();
} }
onItemRemoved: { onItemRemoved: {

View file

@ -37,6 +37,7 @@ QRgb averageColor(QRgb a, QRgb b)
} }
QColor SevenTasks::getDominantColor(QVariant src) QColor SevenTasks::getDominantColor(QVariant src)
{ {
QColor defaultHighlight(67, 160, 214, 170);
QIcon ico = qvariant_cast<QIcon>(src); QIcon ico = qvariant_cast<QIcon>(src);
if(ico.isNull()) return QColor(255,255,255,170); if(ico.isNull()) return QColor(255,255,255,170);
//if(ico.name().isNull()) return QColor(255,255,255,170); //if(ico.name().isNull()) return QColor(255,255,255,170);
@ -64,6 +65,8 @@ QColor SevenTasks::getDominantColor(QVariant src)
int y = mapColorChannel(qGreen(line[j])); int y = mapColorChannel(qGreen(line[j]));
int z = mapColorChannel(qBlue(line[j])); int z = mapColorChannel(qBlue(line[j]));
if((x == y && y == z)) continue; if((x == y && y == z)) continue;
/*if(QColor(qRed(line[j]), qGreen(line[j]), qBlue(line[j])).value() < 32) continue;
if(QColor(qRed(line[j]), qGreen(line[j]), qBlue(line[j])).hsvSaturation() < 32) continue;*/
histogram[x][y][z].append(line[j]); histogram[x][y][z].append(line[j]);
} }
} }
@ -92,7 +95,7 @@ QColor SevenTasks::getDominantColor(QVariant src)
} }
if(maxX == maxY && maxY == maxZ) if(maxX == maxY && maxY == maxZ)
{ {
return QColor(16, 140, 195, 170); return defaultHighlight;
} }
QRgb minCol = qRgb(255, 255, 255); QRgb minCol = qRgb(255, 255, 255);
QRgb maxCol = qRgb(0, 0, 0); QRgb maxCol = qRgb(0, 0, 0);
@ -109,8 +112,8 @@ QColor SevenTasks::getDominantColor(QVariant src)
} }
QRgb avg = averageColor(minCol, maxCol); QRgb avg = averageColor(minCol, maxCol);
QColor finalCol = QColor(avg); QColor finalCol = QColor(avg);
if(finalCol.hsvSaturation() < 32) return QColor(16, 140, 195, 170); if(finalCol.hsvSaturation() < 32) return defaultHighlight;
if(finalCol.value() < 32) return QColor(16, 140, 195, 170); if(finalCol.value() < 85) return defaultHighlight;
int saturation = finalCol.hsvSaturation() * 1.5; int saturation = finalCol.hsvSaturation() * 1.5;
int value = finalCol.value() * 1.5; int value = finalCol.value() * 1.5;
if(saturation > 255) saturation = 255; if(saturation > 255) saturation = 255;

View file

@ -113,6 +113,14 @@ MouseArea {
flow: vertical ? GridLayout.TopToBottom : GridLayout.LeftToRight flow: vertical ? GridLayout.TopToBottom : GridLayout.LeftToRight
ExpanderArrow {
id: expander
Layout.fillWidth: vertical
Layout.fillHeight: !vertical
Layout.alignment: vertical ? Qt.AlignVCenter : Qt.AlignHCenter
visible: root.hiddenLayout.itemCount > 0
}
GridView { GridView {
id: tasksGrid id: tasksGrid
@ -122,7 +130,7 @@ MouseArea {
flow: vertical ? GridView.LeftToRight : GridView.TopToBottom flow: vertical ? GridView.LeftToRight : GridView.TopToBottom
// The icon size to display when not using the auto-scaling setting // The icon size to display when not using the auto-scaling setting
readonly property int smallIconSize: PlasmaCore.Units.iconSizes.smallMedium readonly property int smallIconSize: PlasmaCore.Units.iconSizes.small
readonly property bool autoSize: plasmoid.configuration.scaleIconsToFit readonly property bool autoSize: plasmoid.configuration.scaleIconsToFit
readonly property int gridThickness: root.vertical ? root.width : root.height readonly property int gridThickness: root.vertical ? root.width : root.height
@ -203,13 +211,6 @@ MouseArea {
} }
} }
ExpanderArrow {
id: expander
Layout.fillWidth: vertical
Layout.fillHeight: !vertical
Layout.alignment: vertical ? Qt.AlignVCenter : Qt.AlignHCenter
visible: root.hiddenLayout.itemCount > 0
}
} }
//Main popup //Main popup

View file

@ -0,0 +1,284 @@
/*
SPDX-FileCopyrightText: 2013 Sebastian Kügler <sebas@kde.org>
SPDX-FileCopyrightText: 2014 Marco Martin <mart@kde.org>
SPDX-FileCopyrightText: 2019 Konrad Materka <materka@gmail.com>
SPDX-License-Identifier: GPL-2.0-or-later
*/
import QtQuick 2.5
import QtQuick.Controls 2.5 as QQC2
import QtQuick.Layouts 1.3
import org.kde.kquickcontrols 2.0 as KQC
import org.kde.kirigami 2.10 as Kirigami
ColumnLayout {
id: iconsPage
signal configurationChanged
property var cfg_shownItems: []
property var cfg_hiddenItems: []
property var cfg_extraItems: []
property alias cfg_showAllItems: showAllCheckBox.checked
QQC2.CheckBox {
id: showAllCheckBox
text: i18n("Always show all entries")
}
function categoryName(category) {
switch (category) {
case "ApplicationStatus":
return i18n("Application Status")
case "Communications":
return i18n("Communications")
case "SystemServices":
return i18n("System Services")
case "Hardware":
return i18n("Hardware Control")
case "UnknownCategory":
default:
return i18n("Miscellaneous")
}
}
QQC2.ScrollView {
id: scrollView
Layout.fillWidth: true
Layout.fillHeight: true
contentHeight: itemsList.implicitHeight
Component.onCompleted: scrollView.background.visible = true
property bool scrollBarVisible: QQC2.ScrollBar.vertical && QQC2.ScrollBar.vertical.visible
property var scrollBarWidth: scrollBarVisible ? QQC2.ScrollBar.vertical.width : 0
ListView {
id: itemsList
property var visibilityColumnWidth: Kirigami.Units.gridUnit
property var keySequenceColumnWidth: Kirigami.Units.gridUnit
clip: true
model: plasmoid.nativeInterface.configSystemTrayModel
header: Kirigami.AbstractListItem {
hoverEnabled: false
RowLayout {
Kirigami.Heading {
text: i18nc("Name of the system tray entry", "Entry")
level: 2
Layout.fillWidth: true
}
Kirigami.Heading {
text: i18n("Visibility")
level: 2
Layout.preferredWidth: itemsList.visibilityColumnWidth
Component.onCompleted: itemsList.visibilityColumnWidth = Math.max(implicitWidth, itemsList.visibilityColumnWidth)
}
Kirigami.Heading {
text: i18n("Keyboard Shortcut")
level: 2
Layout.preferredWidth: itemsList.keySequenceColumnWidth
Component.onCompleted: itemsList.keySequenceColumnWidth = Math.max(implicitWidth, itemsList.keySequenceColumnWidth)
}
QQC2.Button { // Configure button column
icon.name: "configure"
enabled: false
opacity: 0
}
}
}
section {
property: "category"
delegate: Kirigami.ListSectionHeader {
label: categoryName(section)
}
}
delegate: Kirigami.AbstractListItem {
highlighted: false
hoverEnabled: false
property bool isPlasmoid: model.itemType === "Plasmoid"
contentItem: RowLayout {
RowLayout {
Layout.fillWidth: true
Kirigami.Icon {
implicitWidth: Kirigami.Units.iconSizes.smallMedium
implicitHeight: Kirigami.Units.iconSizes.smallMedium
source: model.decoration
}
QQC2.Label {
Layout.fillWidth: true
text: model.display
elide: Text.ElideRight
wrapMode: Text.NoWrap
}
}
QQC2.ComboBox {
id: visibilityComboBox
property var contentWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset,
implicitContentWidth + leftPadding + rightPadding)
implicitWidth: Math.max(contentWidth, itemsList.visibilityColumnWidth)
Component.onCompleted: itemsList.visibilityColumnWidth = Math.max(implicitWidth, itemsList.visibilityColumnWidth)
enabled: (!showAllCheckBox.checked || isPlasmoid) && itemId
textRole: "text"
model: comboBoxModel()
currentIndex: {
var value
if (cfg_shownItems.indexOf(itemId) !== -1) {
value = "shown"
} else if (cfg_hiddenItems.indexOf(itemId) !== -1) {
value = "hidden"
} else if (isPlasmoid && cfg_extraItems.indexOf(itemId) === -1) {
value = "disabled"
} else {
value = "auto"
}
for (var i = 0; i < model.length; i++) {
if (model[i].value === value) {
return i
}
}
return 0
}
property var myCurrentValue: model[currentIndex].value
onActivated: {
var shownIndex = cfg_shownItems.indexOf(itemId)
var hiddenIndex = cfg_hiddenItems.indexOf(itemId)
var extraIndex = cfg_extraItems.indexOf(itemId)
switch (myCurrentValue) {
case "auto":
if (shownIndex > -1) {
cfg_shownItems.splice(shownIndex, 1)
}
if (hiddenIndex > -1) {
cfg_hiddenItems.splice(hiddenIndex, 1)
}
if (extraIndex === -1) {
cfg_extraItems.push(itemId)
}
break
case "shown":
if (shownIndex === -1) {
cfg_shownItems.push(itemId)
}
if (hiddenIndex > -1) {
cfg_hiddenItems.splice(hiddenIndex, 1)
}
if (extraIndex === -1) {
cfg_extraItems.push(itemId)
}
break
case "hidden":
if (shownIndex > -1) {
cfg_shownItems.splice(shownIndex, 1)
}
if (hiddenIndex === -1) {
cfg_hiddenItems.push(itemId)
}
if (extraIndex === -1) {
cfg_extraItems.push(itemId)
}
break
case "disabled":
if (shownIndex > -1) {
cfg_shownItems.splice(shownIndex, 1)
}
if (hiddenIndex > -1) {
cfg_hiddenItems.splice(hiddenIndex, 1)
}
if (extraIndex > -1) {
cfg_extraItems.splice(extraIndex, 1)
}
break
}
iconsPage.configurationChanged()
}
function comboBoxModel() {
var autoElement = {"value": "auto", "text": i18n("Shown when relevant")}
var shownElement = {"value": "shown", "text": i18n("Always shown")}
var hiddenElement = {"value": "hidden", "text": i18n("Always hidden")}
var disabledElement = {"value": "disabled", "text": i18n("Disabled")}
if (showAllCheckBox.checked) {
if (isPlasmoid) {
return [autoElement, disabledElement]
} else {
return [shownElement]
}
} else {
if (isPlasmoid) {
return [autoElement, shownElement, hiddenElement, disabledElement]
} else {
return [autoElement, shownElement, hiddenElement]
}
}
}
}
KQC.KeySequenceItem {
id: keySequenceItem
Layout.minimumWidth: itemsList.keySequenceColumnWidth
Layout.preferredWidth: itemsList.keySequenceColumnWidth
Component.onCompleted: itemsList.keySequenceColumnWidth = Math.max(implicitWidth, itemsList.keySequenceColumnWidth)
visible: isPlasmoid
enabled: visibilityComboBox.myCurrentValue !== "disabled"
keySequence: model.applet ? model.applet.globalShortcut : ""
onKeySequenceChanged: {
if (model.applet && keySequence !== model.applet.globalShortcut) {
model.applet.globalShortcut = keySequence
itemsList.keySequenceColumnWidth = Math.max(implicitWidth, itemsList.keySequenceColumnWidth)
}
}
}
// Placeholder for when KeySequenceItem is not visible
Item {
Layout.minimumWidth: itemsList.keySequenceColumnWidth
Layout.maximumWidth: itemsList.keySequenceColumnWidth
visible: !keySequenceItem.visible
}
QQC2.Button {
readonly property QtObject configureAction: (model.applet && model.applet.action("configure")) || null
Accessible.name: configureAction ? configureAction.text : ""
icon.name: "configure"
enabled: configureAction && configureAction.visible && configureAction.enabled
// Still reserve layout space, so not setting visible to false
opacity: enabled ? 1 : 0
onClicked: configureAction.trigger()
QQC2.ToolTip {
// Strip out ampersands right before non-whitespace characters, i.e.
// those used to determine the alt key shortcut
text: parent.Accessible.name.replace(/&(?=\S)/g, "")
}
}
}
}
}
}
}

View file

@ -0,0 +1,41 @@
/*
SPDX-FileCopyrightText: 2020 Konrad Materka <materka@gmail.com>
SPDX-License-Identifier: GPL-2.0-or-later
*/
import QtQuick 2.14
import QtQuick.Controls 2.14 as QQC2
import QtQuick.Layouts 1.13
import org.kde.plasma.core 2.1 as PlasmaCore
import org.kde.kirigami 2.13 as Kirigami
ColumnLayout {
property bool cfg_scaleIconsToFit
Kirigami.FormLayout {
Layout.fillHeight: true
QQC2.RadioButton {
Kirigami.FormData.label: i18nc("The arrangement of system tray icons in the Panel", "Panel icon size:")
enabled: !Kirigami.Settings.tabletMode
text: i18n("Small")
checked: cfg_scaleIconsToFit == false && !Kirigami.Settings.tabletMode
onToggled: cfg_scaleIconsToFit = !checked
}
QQC2.RadioButton {
id: automaticRadioButton
enabled: !Kirigami.Settings.tabletMode
text: plasmoid.formFactor === PlasmaCore.Types.Horizontal ? i18n("Scale with Panel height")
: i18n("Scale with Panel width")
checked: cfg_scaleIconsToFit == true || Kirigami.Settings.tabletMode
onToggled: cfg_scaleIconsToFit = checked
}
QQC2.Label {
visible: Kirigami.Settings.tabletMode
text: i18n("Automatically enabled when in tablet mode")
font: PlasmaCore.Theme.smallestFont
}
}
}

View file

@ -0,0 +1,175 @@
/*
SPDX-FileCopyrightText: 2011 Marco Martin <mart@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.12
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
PlasmaCore.FrameSvgItem {
id: currentItemHighLight
property int location
property bool animationEnabled: true
property var highlightedItem: null
property var containerMargins: {
let item = currentItemHighLight;
while (item.parent) {
item = item.parent;
if (item.isAppletContainer) {
return item.getMargins;
}
}
return undefined;
}
z: -1 // always draw behind icons
opacity: systemTrayState.expanded ? 1 : 0
imagePath: "widgets/tabbar"
prefix: {
var prefix = ""
switch (location) {
case PlasmaCore.Types.LeftEdge:
prefix = "west-active-tab";
break;
case PlasmaCore.Types.TopEdge:
prefix = "north-active-tab";
break;
case PlasmaCore.Types.RightEdge:
prefix = "east-active-tab";
break;
default:
prefix = "south-active-tab";
}
if (!hasElementPrefix(prefix)) {
prefix = "active-tab";
}
return prefix;
}
// update when System Tray is expanded - applet activated or hidden icons shown
Connections {
target: systemTrayState
function onActiveAppletChanged() {
Qt.callLater(updateHighlightedItem);
}
function onExpandedChanged() {
Qt.callLater(updateHighlightedItem);
}
}
// update when applet changes parent (e.g. moves from active to hidden icons)
Connections {
target: systemTrayState.activeApplet
function onParentChanged() {
Qt.callLater(updateHighlightedItem);
}
}
// update when System Tray size changes
Connections {
target: parent
function onWidthChanged() {
Qt.callLater(updateHighlightedItem);
}
function onHeightChanged() {
Qt.callLater(updateHighlightedItem);
}
}
// update when scale of newly added tray item changes (check 'add' animation in GridView in main.qml)
Connections {
target: !!highlightedItem && highlightedItem.parent ? highlightedItem.parent : null
function onScaleChanged() {
Qt.callLater(updateHighlightedItem);
}
}
function updateHighlightedItem() {
var forceEdgeHighlight;
if (systemTrayState.expanded) {
if (systemTrayState.activeApplet && systemTrayState.activeApplet.parent && systemTrayState.activeApplet.parent.inVisibleLayout) {
changeHighlightedItem(systemTrayState.activeApplet.parent.container, forceEdgeHighlight=false);
} else { // 'Show hiden items' popup
changeHighlightedItem(parent, forceEdgeHighlight=true);
}
} else {
highlightedItem = null;
}
}
function changeHighlightedItem(nextItem, forceEdgeHighlight) {
// do not animate the first appearance
// or when the property value of a highlighted item changes
if (!highlightedItem || (highlightedItem === nextItem)) {
animationEnabled = false;
}
var returnAllMargins;
const p = parent.mapFromItem(nextItem, 0, 0);
if (containerMargins && (parent.oneRowOrColumn || forceEdgeHighlight)) {
x = p.x - containerMargins('left', returnAllMargins=true);
y = p.y - containerMargins('top', returnAllMargins=true);
width = nextItem.width + containerMargins('left', returnAllMargins=true) + containerMargins('right', true);
height = nextItem.height + containerMargins('bottom', returnAllMargins=true) + containerMargins('top', true);
} else {
x = p.x;
y = p.y;
width = nextItem.width
height = nextItem.height
}
highlightedItem = nextItem;
animationEnabled = true;
}
Behavior on opacity {
NumberAnimation {
duration: PlasmaCore.Units.longDuration
easing.type: systemTrayState.expanded ? Easing.OutCubic : Easing.InCubic
}
}
Behavior on x {
id: xAnim
enabled: animationEnabled
NumberAnimation {
duration: PlasmaCore.Units.longDuration
easing.type: Easing.InOutCubic
}
}
Behavior on y {
id: yAnim
enabled: animationEnabled
NumberAnimation {
duration: PlasmaCore.Units.longDuration
easing.type: Easing.InOutCubic
}
}
Behavior on width {
id: widthAnim
enabled: animationEnabled
NumberAnimation {
duration: PlasmaCore.Units.longDuration
easing.type: Easing.InOutCubic
}
}
Behavior on height {
id: heightAnim
enabled: animationEnabled
NumberAnimation {
duration: PlasmaCore.Units.longDuration
easing.type: Easing.InOutCubic
}
}
}

View file

@ -0,0 +1,200 @@
/*
SPDX-FileCopyrightText: 2016 Marco Martin <mart@kde.org>
SPDX-FileCopyrightText: 2020 Nate Graham <nate@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.12
import QtQuick.Layouts 1.12
import org.kde.plasma.core 2.0 as PlasmaCore
// We still need PC2 here for that version of Menu, as PC2 Menu is still very problematic with QActions
// Not being a proper popup window, makes it a showstopper to be used in Plasma
import org.kde.plasma.components 2.0 as PC2
import org.kde.plasma.components 3.0 as PlasmaComponents
import org.kde.plasma.extras 2.0 as PlasmaExtras
Item {
id: popup
//set width/height to avoid useless Dialog resize
readonly property int defaultWidth: PlasmaCore.Units.gridUnit * 24
readonly property int defaultHeight: PlasmaCore.Units.gridUnit * 24
width: defaultWidth
Layout.minimumWidth: defaultWidth
Layout.preferredWidth: defaultWidth
Layout.maximumWidth: defaultWidth
height: defaultHeight
Layout.minimumHeight: defaultHeight
Layout.preferredHeight: defaultHeight
Layout.maximumHeight: defaultHeight
property alias hiddenLayout: hiddenItemsView.layout
// Header
PlasmaExtras.PlasmoidHeading {
id: plasmoidHeading
anchors {
top: parent.top
left: parent.left
right: parent.right
}
height: trayHeading.height + bottomPadding + container.headingHeight
Behavior on height {
NumberAnimation { duration: PlasmaCore.Units.shortDuration/2; easing.type: Easing.InOutQuad }
}
}
// Main content layout
ColumnLayout {
id: expandedRepresentation
anchors.fill: parent
// TODO: remove this so the scrollview fully touches the header;
// add top padding internally
spacing: plasmoidHeading.bottomPadding
// Header content layout
RowLayout {
id: trayHeading
PlasmaComponents.ToolButton {
id: backButton
visible: systemTrayState.activeApplet && systemTrayState.activeApplet.expanded && (hiddenLayout.itemCount > 0)
icon.name: LayoutMirroring.enabled ? "go-previous-symbolic-rtl" : "go-previous-symbolic"
onClicked: systemTrayState.setActiveApplet(null)
}
PlasmaExtras.Heading {
Layout.fillWidth: true
leftPadding: systemTrayState.activeApplet ? 0 : PlasmaCore.Units.smallSpacing * 2
level: 1
text: systemTrayState.activeApplet ? systemTrayState.activeApplet.title : i18n("Status and Notifications")
}
PlasmaComponents.ToolButton {
id: actionsButton
visible: visibleActions > 0
checked: visibleActions > 1 ? configMenu.status !== PC2.DialogStatus.Closed : singleAction && singleAction.checked
property QtObject applet: systemTrayState.activeApplet || plasmoid
property int visibleActions: menuItemFactory.count
property QtObject singleAction: visibleActions === 1 ? menuItemFactory.object.action : null
icon.name: "application-menu"
checkable: visibleActions > 1 || (singleAction && singleAction.checkable)
contentItem.opacity: visibleActions > 1
// NOTE: it needs an IconItem because QtQuickControls2 buttons cannot load QIcons as their icon
PlasmaCore.IconItem {
parent: actionsButton
anchors.centerIn: parent
active: actionsButton.hovered
implicitWidth: PlasmaCore.Units.iconSizes.smallMedium
implicitHeight: implicitWidth
source: actionsButton.singleAction !== null ? actionsButton.singleAction.icon : ""
visible: actionsButton.singleAction
}
onToggled: {
if (visibleActions > 1) {
if (checked) {
configMenu.openRelative();
} else {
configMenu.close();
}
}
}
onClicked: {
if (singleAction) {
singleAction.trigger();
}
}
PlasmaComponents.ToolTip {
text: actionsButton.singleAction ? actionsButton.singleAction.text : i18n("More actions")
}
PC2.Menu {
id: configMenu
visualParent: actionsButton
placement: PlasmaCore.Types.BottomPosedLeftAlignedPopup
}
Instantiator {
id: menuItemFactory
model: {
configMenu.clearMenuItems();
let actions = [];
for (let i in actionsButton.applet.contextualActions) {
const action = actionsButton.applet.contextualActions[i];
if (action.visible && action !== actionsButton.applet.action("configure")) {
actions.push(action);
}
}
return actions;
}
delegate: PC2.MenuItem {
id: menuItem
action: modelData
}
onObjectAdded: {
configMenu.addMenuItem(object);
}
}
}
PlasmaComponents.ToolButton {
icon.name: "configure"
visible: actionsButton.applet && actionsButton.applet.action("configure")
PlasmaComponents.ToolTip {
text: parent.visible ? actionsButton.applet.action("configure").text : ""
}
onClicked: actionsButton.applet.action("configure").trigger();
}
PlasmaComponents.ToolButton {
id: pinButton
checkable: true
checked: plasmoid.configuration.pin
onToggled: plasmoid.configuration.pin = checked
icon.name: "window-pin"
PlasmaComponents.ToolTip {
text: i18n("Keep Open")
}
}
}
// Grid view of all available items
HiddenItemsView {
id: hiddenItemsView
Layout.fillWidth: true
Layout.fillHeight: true
Layout.topMargin: PlasmaCore.Units.smallSpacing
visible: !systemTrayState.activeApplet
}
// Container for currently visible item
PlasmoidPopupsContainer {
id: container
Layout.fillWidth: true
Layout.fillHeight: true
visible: systemTrayState.activeApplet
// We need to add margin on the top so it matches the dialog's own margin
Layout.topMargin: mergeHeadings ? 0 : dialog.margins.top
}
}
// Footer
PlasmaExtras.PlasmoidHeading {
id: plasmoidFooter
location: PlasmaExtras.PlasmoidHeading.Location.Footer
anchors {
bottom: parent.bottom
left: parent.left
right: parent.right
}
visible: container.appletHasFooter
height: container.footerHeight
// So that it doesn't appear over the content view, which results in
// the footer controls being inaccessible
z: -9999
}
}

View file

@ -0,0 +1,100 @@
/*
SPDX-FileCopyrightText: 2013 Sebastian Kügler <sebas@kde.org>
SPDX-FileCopyrightText: 2015 Marco Martin <mart@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.0
import QtQuick.Layouts 1.1
import org.kde.plasma.core 2.0 as PlasmaCore
PlasmaCore.ToolTipArea {
id: tooltip
property bool vertical: plasmoid.formFactor === PlasmaCore.Types.Vertical
property int iconSize: PlasmaCore.Units.iconSizes.smallMedium
implicitWidth: iconSize
implicitHeight: iconSize
subText: systemTrayState.expanded ? i18n("Close popup") : i18n("Show hidden icons")
MouseArea {
id: arrowMouseArea
anchors.fill: parent
onClicked: systemTrayState.expanded = !systemTrayState.expanded
readonly property int arrowAnimationDuration: PlasmaCore.Units.shortDuration
PlasmaCore.Svg {
id: arrowSvg
imagePath: "widgets/arrows"
}
PlasmaCore.SvgItem {
id: arrow
anchors.centerIn: parent
width: Math.min(parent.width, parent.height)
height: width
rotation: systemTrayState.expanded ? 180 : 0
Behavior on rotation {
RotationAnimation {
duration: arrowMouseArea.arrowAnimationDuration
}
}
opacity: systemTrayState.expanded ? 0 : 1
Behavior on opacity {
NumberAnimation {
duration: arrowMouseArea.arrowAnimationDuration
}
}
svg: arrowSvg
elementId: {
if (plasmoid.location === PlasmaCore.Types.TopEdge) {
return "down-arrow";
} else if (plasmoid.location === PlasmaCore.Types.LeftEdge) {
return "right-arrow";
} else if (plasmoid.location === PlasmaCore.Types.RightEdge) {
return "left-arrow";
} else {
return "up-arrow";
}
}
}
PlasmaCore.SvgItem {
anchors.centerIn: parent
width: arrow.width
height: arrow.height
rotation: systemTrayState.expanded ? 0 : -180
Behavior on rotation {
RotationAnimation {
duration: arrowMouseArea.arrowAnimationDuration
}
}
opacity: systemTrayState.expanded ? 1 : 0
Behavior on opacity {
NumberAnimation {
duration: arrowMouseArea.arrowAnimationDuration
}
}
svg: arrowSvg
elementId: {
if (plasmoid.location === PlasmaCore.Types.TopEdge) {
return "up-arrow";
} else if (plasmoid.location === PlasmaCore.Types.LeftEdge) {
return "left-arrow";
} else if (plasmoid.location === PlasmaCore.Types.RightEdge) {
return "right-arrow";
} else {
return "down-arrow";
}
}
}
}
}

View file

@ -0,0 +1,60 @@
/*
SPDX-FileCopyrightText: 2016 Marco Martin <mart@kde.org>
SPDX-FileCopyrightText: 2020 Konrad Materka <materka@gmail.com>
SPDX-FileCopyrightText: 2020 Nate Graham <nate@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.1
import QtQuick.Layouts 1.1
import org.kde.plasma.core 2.1 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents // For Highlight
import org.kde.plasma.extras 2.0 as PlasmaExtras
import "items"
MouseArea {
id: hiddenTasksView
property alias layout: hiddenTasks
hoverEnabled: true
onExited: hiddenTasks.currentIndex = -1
PlasmaExtras.ScrollArea {
width: parent.width
height: parent.height
frameVisible: false
horizontalScrollBarPolicy: Qt.ScrollBarAlwaysOff
verticalScrollBarPolicy: systemTrayState.activeApplet ? Qt.ScrollBarAlwaysOff : Qt.ScrollBarAsNeeded
GridView {
id: hiddenTasks
readonly property int rows: 4
readonly property int columns: 4
cellWidth: Math.floor(hiddenTasks.width / hiddenTasks.columns)
cellHeight: Math.floor(hiddenTasks.height / hiddenTasks.rows)
currentIndex: -1
highlight: PlasmaComponents.Highlight {}
highlightMoveDuration: 0
pixelAligned: true
readonly property int itemCount: model.count
model: PlasmaCore.SortFilterModel {
sourceModel: plasmoid.nativeInterface.systemTrayModel
filterRole: "effectiveStatus"
filterCallback: function(source_row, value) {
return value === PlasmaCore.Types.PassiveStatus
}
}
delegate: ItemLoader {}
}
}
}

View file

@ -0,0 +1,144 @@
/*
SPDX-FileCopyrightText: 2015 Marco Martin <mart@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.4
import QtQuick.Layouts 1.1
import QtQuick.Controls 1.4
//needed for units
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 3.0 as PlasmaComponents3
import org.kde.plasma.extras 2.0 as PlasmaExtras
StackView {
id: mainStack
focus: true
Layout.minimumWidth: PlasmaCore.Units.gridUnit * 12
Layout.minimumHeight: PlasmaCore.Units.gridUnit * 12
readonly property Item activeApplet: systemTrayState.activeApplet
/* Heading */
property bool appletHasHeading: false
property bool mergeHeadings: appletHasHeading && activeApplet.fullRepresentationItem.header.visible
property int headingHeight: mergeHeadings ? activeApplet.fullRepresentationItem.header.height : 0
/* Footer */
property bool appletHasFooter: false
property bool mergeFooters: appletHasFooter && activeApplet.fullRepresentationItem.footer.visible
property int footerHeight: mergeFooters ? activeApplet.fullRepresentationItem.footer.height : 0
onActiveAppletChanged: {
mainStack.appletHasHeading = false
mainStack.appletHasFooter = false
if (activeApplet != null) {
//reset any potential anchor
activeApplet.fullRepresentationItem.anchors.left = undefined;
activeApplet.fullRepresentationItem.anchors.top = undefined;
activeApplet.fullRepresentationItem.anchors.right = undefined;
activeApplet.fullRepresentationItem.anchors.bottom = undefined;
activeApplet.fullRepresentationItem.anchors.centerIn = undefined;
activeApplet.fullRepresentationItem.anchors.fill = undefined;
if (activeApplet.fullRepresentationItem instanceof PlasmaComponents3.Page) {
if (activeApplet.fullRepresentationItem.header && activeApplet.fullRepresentationItem.header instanceof PlasmaExtras.PlasmoidHeading) {
mainStack.appletHasHeading = true
activeApplet.fullRepresentationItem.header.background.visible = false
}
if (activeApplet.fullRepresentationItem.footer && activeApplet.fullRepresentationItem.footer instanceof PlasmaExtras.PlasmoidHeading) {
mainStack.appletHasFooter = true
activeApplet.fullRepresentationItem.footer.background.visible = false
}
}
mainStack.replace({item: activeApplet.fullRepresentationItem, immediate: !systemTrayState.expanded, properties: {focus: true}});
} else {
mainStack.replace(emptyPage);
}
}
onCurrentItemChanged: {
if (currentItem !== null && plasmoid.expanded) {
currentItem.forceActiveFocus();
}
}
Connections {
target: plasmoid
function onAppletRemoved(applet) {
if (applet === systemTrayState.activeApplet) {
mainStack.clear()
}
}
}
//used to animate away to nothing
Item {
id: emptyPage
}
delegate: StackViewDelegate {
id: transitioner
function transitionFinished(properties) {
properties.exitItem.opacity = 1
}
property bool goingLeft: {
const unFlipped = systemTrayState.oldVisualIndex < systemTrayState.newVisualIndex
if (Qt.application.layoutDirection == Qt.LeftToRight) {
return unFlipped
} else {
return !unFlipped
}
}
replaceTransition: StackViewTransition {
ParallelAnimation {
PropertyAnimation {
target: enterItem
property: "x"
from: root.vertical ? 0 : (transitioner.goingLeft ? enterItem.width : -enterItem.width)
to: 0
easing.type: Easing.InOutQuad
duration: PlasmaCore.Units.shortDuration
}
SequentialAnimation {
PropertyAction {
target: enterItem
property: "opacity"
value: 0
}
PauseAnimation {
duration: root.vertical ? (PlasmaCore.Units.shortDuration/2) : 0
}
PropertyAnimation {
target: enterItem
property: "opacity"
from: 0
to: 1
easing.type: Easing.InOutQuad
duration: (PlasmaCore.Units.shortDuration/2)
}
}
}
ParallelAnimation {
PropertyAnimation {
target: exitItem
property: "x"
from: 0
to: root.vertical ? 0 : (transitioner.goingLeft ? -exitItem.width : exitItem.width)
easing.type: Easing.InOutQuad
duration: PlasmaCore.Units.shortDuration
}
PropertyAnimation {
target: exitItem
property: "opacity"
from: 1
to: 0
easing.type: Easing.InOutQuad
duration: PlasmaCore.Units.shortDuration/2
}
}
}
}
}

View file

@ -0,0 +1,88 @@
/*
SPDX-FileCopyrightText: 2020 Konrad Materka <materka@gmail.com>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.12
import org.kde.plasma.core 2.1 as PlasmaCore
import org.kde.plasma.plasmoid 2.0
//This object contains state of the SystemTray, mainly related to the 'expanded' state
QtObject {
//true if System Tray is 'expanded'. It may be when:
// - there is an active applet or
// - 'Status and Notification' with hidden items is shown
property bool expanded: false
//set when there is an applet selected
property Item activeApplet
//allow expanded change only when activated at least once
//this is to suppress expanded state change during Plasma startup
property bool acceptExpandedChange: false
// These properties allow us to keep track of where the expanded applet
// was and is on the panel, allowing PlasmoidPopupContainer.qml to animate
// depending on their locations.
property int oldVisualIndex: -1
property int newVisualIndex: -1
function setActiveApplet(applet, visualIndex) {
if (visualIndex === undefined) {
oldVisualIndex = -1
newVisualIndex = -1
} else {
oldVisualIndex = newVisualIndex
newVisualIndex = visualIndex
}
const oldApplet = activeApplet
activeApplet = applet
if (oldApplet && oldApplet !== applet) {
oldApplet.expanded = false
}
expanded = true
}
onExpandedChanged: {
if (expanded) {
plasmoid.status = PlasmaCore.Types.RequiresAttentionStatus
} else {
plasmoid.status = PlasmaCore.Types.PassiveStatus;
if (activeApplet) {
// if not expanded we don't have an active applet anymore
activeApplet.expanded = false
activeApplet = null
}
}
acceptExpandedChange = false
plasmoid.expanded = expanded
}
//listen on SystemTray AppletInterface signals
property Connections plasmoidConnections: Connections {
target: plasmoid
//emitted when activation is requested, for example by using a global keyboard shortcut
function onActivated() {
acceptExpandedChange = true
}
function onExpandedChanged() {
if (acceptExpandedChange) {
expanded = plasmoid.expanded
} else {
plasmoid.expanded = expanded
}
}
}
property Connections activeAppletConnections: Connections {
target: activeApplet
function onExpandedChanged() {
if (!activeApplet.expanded) {
expanded = false
}
}
}
}

View file

@ -0,0 +1,159 @@
/*
SPDX-FileCopyrightText: 2016 Marco Martin <mart@kde.org>
SPDX-FileCopyrightText: 2020 Konrad Materka <materka@gmail.com>
SPDX-FileCopyrightText: 2020 Nate Graham <nate@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.2
import QtQuick.Layouts 1.1
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 3.0 as PlasmaComponents3
PlasmaCore.ToolTipArea {
id: abstractItem
height: inVisibleLayout ? visibleLayout.cellHeight : hiddenTasks.cellHeight
width: inVisibleLayout ? visibleLayout.cellWidth : hiddenTasks.cellWidth
property var model: itemModel
property string itemId
property alias text: label.text
property alias iconContainer: iconContainer
property int /*PlasmaCore.Types.ItemStatus*/ status: model.status || PlasmaCore.Types.UnknownStatus
property int /*PlasmaCore.Types.ItemStatus*/ effectiveStatus: model.effectiveStatus || PlasmaCore.Types.UnknownStatus
readonly property bool inHiddenLayout: effectiveStatus === PlasmaCore.Types.PassiveStatus
readonly property bool inVisibleLayout: effectiveStatus === PlasmaCore.Types.ActiveStatus
signal clicked(var mouse)
signal pressed(var mouse)
signal wheel(var wheel)
signal contextMenu(var mouse)
/* subclasses need to assign to this tooltip properties
mainText:
subText:
*/
location: {
if (inHiddenLayout) {
if (LayoutMirroring.enabled && plasmoid.location !== PlasmaCore.Types.RightEdge) {
return PlasmaCore.Types.LeftEdge;
} else if (plasmoid.location !== PlasmaCore.Types.LeftEdge) {
return PlasmaCore.Types.RightEdge;
}
}
return plasmoid.location;
}
//BEGIN CONNECTIONS
onContainsMouseChanged: {
if (inHiddenLayout && containsMouse) {
root.hiddenLayout.currentIndex = index
}
}
//END CONNECTIONS
PulseAnimation {
targetItem: iconContainer
running: (abstractItem.status === PlasmaCore.Types.NeedsAttentionStatus ||
abstractItem.status === PlasmaCore.Types.RequiresAttentionStatus ) &&
PlasmaCore.Units.longDuration > 0
}
function activated() {
activatedAnimation.start()
}
SequentialAnimation {
id: activatedAnimation
loops: 1
ScaleAnimator {
target: iconContainer
from: 1
to: 0.5
duration: PlasmaCore.Units.shortDuration
easing.type: Easing.InQuad
}
ScaleAnimator {
target: iconContainer
from: 0.5
to: 1
duration: PlasmaCore.Units.shortDuration
easing.type: Easing.OutQuad
}
}
MouseArea {
anchors.fill: abstractItem
hoverEnabled: true
drag.filterChildren: true
acceptedButtons: Qt.LeftButton | Qt.MiddleButton | Qt.RightButton
onClicked: abstractItem.clicked(mouse)
onPressed: {
abstractItem.hideImmediately()
abstractItem.pressed(mouse)
}
onPressAndHold: {
abstractItem.contextMenu(mouse)
}
onWheel: {
abstractItem.wheel(wheel);
//Don't accept the event in order to make the scrolling by mouse wheel working
//for the parent scrollview this icon is in.
wheel.accepted = false;
}
}
ColumnLayout {
anchors.fill: abstractItem
spacing: 0
Item {
id: iconContainer
property alias container: abstractItem
property alias inVisibleLayout: abstractItem.inVisibleLayout
readonly property int size: abstractItem.inVisibleLayout ? root.itemSize : PlasmaCore.Units.iconSizes.medium
Layout.alignment: Qt.Bottom | Qt.AlignHCenter
Layout.fillHeight: abstractItem.inHiddenLayout ? true : false
implicitWidth: root.vertical && abstractItem.inVisibleLayout ? abstractItem.width : size
implicitHeight: !root.vertical && abstractItem.inVisibleLayout ? abstractItem.height : size
Layout.topMargin: abstractItem.inHiddenLayout ? Math.round(PlasmaCore.Units.smallSpacing * 1.5): 0
}
PlasmaComponents3.Label {
id: label
Layout.fillWidth: true
Layout.fillHeight: abstractItem.inHiddenLayout ? true : false
Layout.leftMargin: abstractItem.inHiddenLayout ? PlasmaCore.Units.smallSpacing : 0
Layout.rightMargin: abstractItem.inHiddenLayout ? PlasmaCore.Units.smallSpacing : 0
Layout.bottomMargin: abstractItem.inHiddenLayout ? PlasmaCore.Units.smallSpacing : 0
visible: abstractItem.inHiddenLayout
verticalAlignment: Text.AlignTop
horizontalAlignment: Text.AlignHCenter
elide: Text.ElideRight
wrapMode: Text.Wrap
maximumLineCount: 3
opacity: visible ? 1 : 0
Behavior on opacity {
NumberAnimation {
duration: PlasmaCore.Units.longDuration
easing.type: Easing.InOutQuad
}
}
}
}
}

View file

@ -0,0 +1,23 @@
/*
SPDX-FileCopyrightText: 2020 Konrad Materka <materka@gmail.com>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.0
Loader {
id: itemLoader
property var itemModel: model
source: {
if (model.itemType === "Plasmoid" && model.hasApplet) {
return "PlasmoidItem.qml"
} else if (model.itemType === "StatusNotifier") {
return "StatusNotifierItem.qml"
}
console.warn("SystemTray ItemLoader: Invalid state, cannot determine source!")
return ""
}
}

View file

@ -0,0 +1,128 @@
/*
SPDX-FileCopyrightText: 2015 Marco Martin <mart@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.1
import QtQml 2.15
import org.kde.plasma.core 2.0 as PlasmaCore
AbstractItem {
id: plasmoidContainer
property Item applet: model.applet || null
text: applet ? applet.title : ""
itemId: applet ? applet.pluginName : ""
mainText: applet ? applet.toolTipMainText : ""
subText: applet ? applet.toolTipSubText : ""
mainItem: applet && applet.toolTipItem ? applet.toolTipItem : null
textFormat: applet ? applet.toolTipTextFormat : ""
active: systemTrayState.activeApplet !== applet
onClicked: {
if (!applet) {
return
}
//forward click event to the applet
if (mouse.button === Qt.LeftButton || mouse.button === Qt.MidButton) {
const mouseArea = findMouseArea(applet.compactRepresentationItem)
if (mouseArea) {
mouseArea.clicked(mouse)
} else if (mouse.button === Qt.LeftButton) {//falback
applet.expanded = true
}
}
}
onPressed: {
if (mouse.button === Qt.RightButton) {
plasmoidContainer.contextMenu(mouse);
}
}
onContextMenu: {
if (applet) {
plasmoid.nativeInterface.showPlasmoidMenu(applet, 0, plasmoidContainer.inHiddenLayout ? applet.height : 0);
}
}
onWheel: {
if (!applet) {
return
}
//forward wheel event to the applet
const mouseArea = findMouseArea(applet.compactRepresentationItem)
if (mouseArea) {
mouseArea.wheel(wheel)
}
}
//some heuristics to find MouseArea
function findMouseArea(item) {
if (!item) {
return null
}
if (item instanceof MouseArea) {
return item
}
for (var i = 0; i < item.children.length; i++) {
const child = item.children[i]
if (child instanceof MouseArea && child.enabled) {
//check if MouseArea covers the entire item
if (child.anchors.fill === item || (child.x === 0 && child.y === 0 && child.height === item.height && child.width === item.width)) {
return child
}
}
}
return null
}
//This is to make preloading effective, minimizes the scene changes
function preloadFullRepresentationItem(fullRepresentationItem) {
if (fullRepresentationItem && fullRepresentationItem.parent === null) {
fullRepresentationItem.width = expandedRepresentation.width
fullRepresentationItem.width = expandedRepresentation.height
fullRepresentationItem.parent = preloadedStorage;
}
}
onAppletChanged: {
if (applet) {
applet.parent = plasmoidContainer.iconContainer
applet.anchors.fill = applet.parent
applet.visible = true
preloadFullRepresentationItem(applet.fullRepresentationItem)
}
}
Connections {
target: applet
//activation using global keyboard shortcut
function onActivated() {
plasmoidContainer.activated()
}
function onExpandedChanged(expanded) {
if (expanded) {
systemTrayState.setActiveApplet(applet, model.row)
plasmoidContainer.activated()
}
}
function onFullRepresentationItemChanged(fullRepresentationItem) {
preloadFullRepresentationItem(fullRepresentationItem)
}
}
Binding {
property: "hideOnWindowDeactivate"
value: !plasmoid.configuration.pin
target: plasmoidContainer.applet
when: null !== plasmoidContainer.applet
restoreMode: Binding.RestoreBinding
}
}

View file

@ -0,0 +1,40 @@
/*
SPDX-FileCopyrightText: 2013 Sebastian Kügler <sebas@kde.org>
SPDX-FileCopyrightText: 2015 Kai Uwe Broulik <kde@privat.broulik.de>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.2
import org.kde.plasma.core 2.0 as PlasmaCore
SequentialAnimation {
id: pulseAnimation
objectName: "pulseAnimation"
property Item targetItem
readonly property int duration: PlasmaCore.Units.veryLongDuration * 5
loops: Animation.Infinite
alwaysRunToEnd: true
ScaleAnimator {
target: targetItem
from: 1
to: 1.2
duration: pulseAnimation.duration * 0.15
easing.type: Easing.InQuad
}
ScaleAnimator {
target: targetItem
from: 1.2
to: 1
duration: pulseAnimation.duration * 0.15
easing.type: Easing.InQuad
}
PauseAnimation {
duration: pulseAnimation.duration * 0.7
}
}

View file

@ -0,0 +1,105 @@
/*
SPDX-FileCopyrightText: 2016 Marco Martin <mart@kde.org>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.1
import org.kde.plasma.core 2.0 as PlasmaCore
AbstractItem {
id: taskIcon
itemId: model.Id
text: model.Title || model.ToolTipTitle
mainText: model.ToolTipTitle !== "" ? model.ToolTipTitle : model.Title
subText: model.ToolTipSubTitle
textFormat: Text.AutoText
PlasmaCore.IconItem {
id: iconItem
parent: taskIcon.iconContainer
anchors.fill: iconItem.parent
source: {
if (model.status === PlasmaCore.Types.NeedsAttentionStatus) {
if (model.AttentionIcon) {
return model.AttentionIcon
}
if (model.AttentionIconName) {
return model.AttentionIconName
}
}
return model.Icon ? model.Icon : model.IconName
}
active: taskIcon.containsMouse
}
onContextMenu: {
openContextMenu(plasmoid.nativeInterface.popupPosition(taskIcon, mouse.x, mouse.y))
}
onClicked: {
var pos = plasmoid.nativeInterface.popupPosition(taskIcon, mouse.x, mouse.y);
var service = model.Service;
switch (mouse.button) {
case Qt.LeftButton:
var operation = service.operationDescription("Activate");
operation.x = pos.x;
operation.y = pos.y;
var job = service.startOperationCall(operation);
job.finished.connect(function () {
if (!job.result) {
// On error try to invoke the context menu.
// Workaround primarily for apps using libappindicator.
openContextMenu(pos);
}
});
taskIcon.activated()
break;
case Qt.RightButton:
openContextMenu(pos);
break;
case Qt.MiddleButton:
var operation = service.operationDescription("SecondaryActivate");
operation.x = pos.x;
operation.y = pos.y;
service.startOperationCall(operation);
taskIcon.activated()
break;
}
}
function openContextMenu(pos) {
var service = model.Service;
var operation = service.operationDescription("ContextMenu");
operation.x = pos.x;
operation.y = pos.y;
var job = service.startOperationCall(operation);
job.finished.connect(function () {
plasmoid.nativeInterface.showStatusNotifierContextMenu(job, taskIcon);
});
}
onWheel: {
//don't send activateVertScroll with a delta of 0, some clients seem to break (kmix)
if (wheel.angleDelta.y !== 0) {
var service = model.Service;
var operation = service.operationDescription("Scroll");
operation.delta =wheel.angleDelta.y;
operation.direction = "Vertical";
service.startOperationCall(operation);
}
if (wheel.angleDelta.x !== 0) {
var service = model.Service;
var operation = service.operationDescription("Scroll");
operation.delta =wheel.angleDelta.x;
operation.direction = "Horizontal";
service.startOperationCall(operation);
}
}
}

View file

@ -0,0 +1,249 @@
/*
SPDX-FileCopyrightText: 2011 Marco Martin <mart@kde.org>
SPDX-FileCopyrightText: 2020 Konrad Materka <materka@gmail.com>
SPDX-License-Identifier: LGPL-2.0-or-later
*/
import QtQuick 2.5
import QtQuick.Layouts 1.1
import org.kde.plasma.core 2.1 as PlasmaCore
import org.kde.plasma.plasmoid 2.0
import org.kde.draganddrop 2.0 as DnD
import org.kde.kirigami 2.5 as Kirigami
import "items"
MouseArea {
id: root
readonly property bool vertical: plasmoid.formFactor === PlasmaCore.Types.Vertical
Layout.minimumWidth: vertical ? PlasmaCore.Units.iconSizes.small : mainLayout.implicitWidth + PlasmaCore.Units.smallSpacing
Layout.minimumHeight: vertical ? mainLayout.implicitHeight + PlasmaCore.Units.smallSpacing : PlasmaCore.Units.iconSizes.small
LayoutMirroring.enabled: !vertical && Qt.application.layoutDirection === Qt.RightToLeft
LayoutMirroring.childrenInherit: true
readonly property alias systemTrayState: systemTrayState
readonly property alias itemSize: tasksGrid.itemSize
readonly property alias visibleLayout: tasksGrid
readonly property alias hiddenLayout: expandedRepresentation.hiddenLayout
readonly property bool oneRowOrColumn: tasksGrid.rowsOrColumns == 1
onWheel: {
// Don't propagate unhandled wheel events
wheel.accepted = true;
}
SystemTrayState {
id: systemTrayState
}
//being there forces the items to fully load, and they will be reparented in the popup one by one, this item is *never* visible
Item {
id: preloadedStorage
visible: false
}
CurrentItemHighLight {
location: plasmoid.location
parent: root
}
DnD.DropArea {
anchors.fill: parent
preventStealing: true;
/** Extracts the name of the system tray applet in the drag data if present
* otherwise returns null*/
function systemTrayAppletName(event) {
if (event.mimeData.formats.indexOf("text/x-plasmoidservicename") < 0) {
return null;
}
var plasmoidId = event.mimeData.getDataAsByteArray("text/x-plasmoidservicename");
if (!plasmoid.nativeInterface.isSystemTrayApplet(plasmoidId)) {
return null;
}
return plasmoidId;
}
onDragEnter: {
if (!systemTrayAppletName(event)) {
event.ignore();
}
}
onDrop: {
var plasmoidId = systemTrayAppletName(event);
if (!plasmoidId) {
event.ignore();
return;
}
if (plasmoid.configuration.extraItems.indexOf(plasmoidId) < 0) {
var extraItems = plasmoid.configuration.extraItems;
extraItems.push(plasmoidId);
plasmoid.configuration.extraItems = extraItems;
}
}
}
//Main Layout
GridLayout {
id: mainLayout
rowSpacing: 0
columnSpacing: 0
anchors.fill: parent
flow: vertical ? GridLayout.TopToBottom : GridLayout.LeftToRight
GridView {
id: tasksGrid
Layout.alignment: Qt.AlignCenter
interactive: false //disable features we don't need
flow: vertical ? GridView.LeftToRight : GridView.TopToBottom
// The icon size to display when not using the auto-scaling setting
readonly property int smallIconSize: PlasmaCore.Units.iconSizes.smallMedium
// Automatically use autoSize setting when in tablet mode, if it's
// not already being used
readonly property bool autoSize: plasmoid.configuration.scaleIconsToFit || Kirigami.Settings.tabletMode
readonly property int gridThickness: root.vertical ? root.width : root.height
// Should change to 2 rows/columns on a 56px panel (in standard DPI)
readonly property int rowsOrColumns: autoSize ? 1 : Math.max(1, Math.min(count, Math.floor(gridThickness / (smallIconSize + PlasmaCore.Units.smallSpacing))))
// Add margins only if the panel is larger than a small icon (to avoid large gaps between tiny icons)
readonly property int smallSizeCellLength: gridThickness < smallIconSize ? smallIconSize : smallIconSize + PlasmaCore.Units.smallSpacing * 2
cellHeight: {
if (root.vertical) {
return autoSize ? root.width + PlasmaCore.Units.smallSpacing : smallSizeCellLength
} else {
return autoSize ? root.height : Math.floor(root.height / rowsOrColumns)
}
}
cellWidth: {
if (root.vertical) {
return autoSize ? root.width : Math.floor(root.width / rowsOrColumns)
} else {
return autoSize ? root.height + PlasmaCore.Units.smallSpacing : smallSizeCellLength
}
}
//depending on the form factor, we are calculating only one dimention, second is always the same as root/parent
implicitHeight: root.vertical ? cellHeight * Math.ceil(count / rowsOrColumns) : root.height
implicitWidth: !root.vertical ? cellWidth * Math.ceil(count / rowsOrColumns) : root.width
readonly property int itemSize: {
if (autoSize) {
const size = Math.min(implicitWidth / rowsOrColumns, implicitHeight / rowsOrColumns)
return PlasmaCore.Units.roundToIconSize(Math.min(size, PlasmaCore.Units.iconSizes.enormous))
} else {
return smallIconSize
}
}
model: PlasmaCore.SortFilterModel {
sourceModel: plasmoid.nativeInterface.systemTrayModel
filterRole: "effectiveStatus"
filterCallback: function(source_row, value) {
return value === PlasmaCore.Types.ActiveStatus
}
}
delegate: ItemLoader {}
add: Transition {
enabled: itemSize > 0
NumberAnimation {
property: "scale"
from: 0
to: 1
easing.type: Easing.InOutQuad
duration: PlasmaCore.Units.longDuration
}
}
displaced: Transition {
//ensure scale value returns to 1.0
//https://doc.qt.io/qt-5/qml-qtquick-viewtransition.html#handling-interrupted-animations
NumberAnimation {
property: "scale"
to: 1
easing.type: Easing.InOutQuad
duration: PlasmaCore.Units.longDuration
}
}
move: Transition {
NumberAnimation {
properties: "x,y"
easing.type: Easing.InOutQuad
duration: PlasmaCore.Units.longDuration
}
}
}
ExpanderArrow {
id: expander
Layout.fillWidth: vertical
Layout.fillHeight: !vertical
Layout.alignment: vertical ? Qt.AlignVCenter : Qt.AlignHCenter
iconSize: tasksGrid.itemSize
visible: root.hiddenLayout.itemCount > 0
}
}
//Main popup
PlasmaCore.Dialog {
id: dialog
visualParent: root
flags: Qt.WindowStaysOnTopHint
location: plasmoid.location
hideOnWindowDeactivate: !plasmoid.configuration.pin
visible: systemTrayState.expanded
onVisibleChanged: {
systemTrayState.expanded = visible
}
mainItem: ExpandedRepresentation {
id: expandedRepresentation
Keys.onEscapePressed: {
systemTrayState.expanded = false
}
// Draws a line between the applet dialog and the panel
PlasmaCore.SvgItem {
anchors {
top: plasmoid.location == PlasmaCore.Types.BottomEdge ? undefined : parent.top
left: plasmoid.location == PlasmaCore.Types.RightEdge ? undefined : parent.left
right: plasmoid.location == PlasmaCore.Types.LeftEdge ? undefined : parent.right
bottom: plasmoid.location == PlasmaCore.Types.TopEdge ? undefined : parent.bottom
topMargin: plasmoid.location == PlasmaCore.Types.BottomEdge ? undefined : -dialog.margins.top
leftMargin: plasmoid.location == PlasmaCore.Types.RightEdge ? undefined : -dialog.margins.left
rightMargin: plasmoid.location == PlasmaCore.Types.LeftEdge ? undefined : -dialog.margins.right
bottomMargin: plasmoid.location == PlasmaCore.Types.TopEdge ? undefined : -dialog.margins.bottom
}
height: (plasmoid.location == PlasmaCore.Types.TopEdge || plasmoid.location == PlasmaCore.Types.BottomEdge) ? 1 : undefined
width: (plasmoid.location == PlasmaCore.Types.LeftEdge || plasmoid.location == PlasmaCore.Types.RightEdge) ? 1 : undefined
z: 999 /* Draw the line on top of the applet */
elementId: (plasmoid.location == PlasmaCore.Types.TopEdge || plasmoid.location == PlasmaCore.Types.BottomEdge) ? "horizontal-line" : "vertical-line"
svg: PlasmaCore.Svg {
imagePath: "widgets/line"
}
}
LayoutMirroring.enabled: Qt.application.layoutDirection === Qt.RightToLeft
LayoutMirroring.childrenInherit: true
}
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 168 KiB