aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStefan Kangas2021-04-03 21:53:06 +0200
committerStefan Kangas2021-04-03 21:53:06 +0200
commitb0d095b2cdff7b43ab3866a2d541d18e359a4125 (patch)
tree738c7c3389d5399df29346ec8f42baa9670d2874
parentebc2b78c8bffc40f3bc863d333dccc0b26def3b4 (diff)
downloademacs-b0d095b2cdff7b43ab3866a2d541d18e359a4125.tar.gz
emacs-b0d095b2cdff7b43ab3866a2d541d18e359a4125.zip
Add SVG icons for customize buffers
* etc/images/checkbox-mixed.svg: * etc/images/checked.svg: * etc/images/down.svg: * etc/images/left.svg: * etc/images/radio-checked.svg: * etc/images/radio-mixed.svg: * etc/images/radio.svg: * etc/images/right.svg: * etc/images/unchecked.svg: * etc/images/up.svg: New files from the Adwaita Icon Theme (made by the GNOME project). The background color was changed from gray to none to use the same colors as the current face instead. (Bug#47074) * etc/images/README: Add license information for the above new files. * lisp/wid-edit.el (widget-image-conversion): Prefer SVG if it exists. (radio-button): Rename radio buttons to "radio-checked" and "radio". These files did not exist before.
-rw-r--r--etc/images/README27
-rw-r--r--etc/images/checkbox-mixed.svg6
-rw-r--r--etc/images/checked.svg6
-rw-r--r--etc/images/down.svg40
-rw-r--r--etc/images/left.svg40
-rw-r--r--etc/images/radio-checked.svg6
-rw-r--r--etc/images/radio-mixed.svg6
-rw-r--r--etc/images/radio.svg3
-rw-r--r--etc/images/right.svg40
-rw-r--r--etc/images/unchecked.svg3
-rw-r--r--etc/images/up.svg40
-rw-r--r--lisp/wid-edit.el6
12 files changed, 220 insertions, 3 deletions
diff --git a/etc/images/README b/etc/images/README
index 00aac4f510a..9bbe796cc95 100644
--- a/etc/images/README
+++ b/etc/images/README
@@ -104,3 +104,30 @@ same conditions.
104 104
105The *.pbm files were generally converted from *.xpm by running GIMP or 105The *.pbm files were generally converted from *.xpm by running GIMP or
106ImageMagick's 'convert'. 106ImageMagick's 'convert'.
107
108
109* The following icons are from the Adwaita Icon Theme (made by the
110GNOME project). They are not part of Emacs, but are distributed and
111used by Emacs. They are licensed under either the GNU LGPL v3 or the
112Creative Commons Attribution-Share Alike 3.0 United States License.
113
114To view a copy of the CC-BY-SA licence, visit
115http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative
116Commons, 171 Second Street, Suite 300, San Francisco, California 94105, USA.
117
118For more information see the adwaita-icon-theme repository at:
119
120 https://gitlab.gnome.org/GNOME/adwaita-icon-theme
121
122Emacs images and their source in the Adwaita/scalable directory:
123
124 checked.svg ui/checkbox-checked-symbolic.svg
125 unchecked.svg ui/checkbox-symbolic.svg
126 checkbox-mixed.svg ui/checkbox-mixed-symbolic.svg
127 radio.svg ui/radio-symbolic.svg
128 radio-mixed.svg ui/radio-mixed-symbolic.svg
129 radio-checked.svg ui/radio-checked-symbolic.svg
130 down.svg ui/pan-down-symbolic.svg
131 left.svg ui/pan-start-symbolic.svg
132 right.svg ui/pan-end-symbolic.svg
133 up.svg ui/pan-up-symbolic.svg
diff --git a/etc/images/checkbox-mixed.svg b/etc/images/checkbox-mixed.svg
new file mode 100644
index 00000000000..13bccaa7ce1
--- /dev/null
+++ b/etc/images/checkbox-mixed.svg
@@ -0,0 +1,6 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
2 <g>
3 <path d="M3.5 1A2.506 2.506 0 001 3.5v9C1 13.876 2.124 15 3.5 15h9c1.376 0 2.5-1.124 2.5-2.5v-9C15 2.124 13.876 1 12.5 1zm0 1h9c.84 0 1.5.66 1.5 1.5v9c0 .84-.66 1.5-1.5 1.5h-9c-.84 0-1.5-.66-1.5-1.5v-9C2 2.66 2.66 2 3.5 2z" overflow="visible" />
4 <path d="M5 6a2 2 0 100 4h6a2 2 0 100-4z" overflow="visible" />
5 </g>
6</svg>
diff --git a/etc/images/checked.svg b/etc/images/checked.svg
new file mode 100644
index 00000000000..6fefd5569ef
--- /dev/null
+++ b/etc/images/checked.svg
@@ -0,0 +1,6 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
2 <g>
3 <path d="M3.5 1A2.506 2.506 0 001 3.5v9C1 13.876 2.124 15 3.5 15h9c1.376 0 2.5-1.124 2.5-2.5v-9C15 2.124 13.876 1 12.5 1zm0 1h9c.84 0 1.5.66 1.5 1.5v9c0 .84-.66 1.5-1.5 1.5h-9c-.84 0-1.5-.66-1.5-1.5v-9C2 2.66 2.66 2 3.5 2z" overflow="visible" />
4 <path d="M14.5 3l-.5-.5L7.5 9 5 6.5l-2 2L7.5 13l7-7z" overflow="visible" />
5 </g>
6</svg>
diff --git a/etc/images/down.svg b/etc/images/down.svg
new file mode 100644
index 00000000000..e2760427d73
--- /dev/null
+++ b/etc/images/down.svg
@@ -0,0 +1,40 @@
1<?xml version='1.0' encoding='UTF-8' standalone='no'?>
2<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-down-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
3 <sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='-8.85234' inkscape:cy='7.9624984' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
4 <inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-152.00586' originy='-952' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
5 <inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-152.00586' originy='-952' spacingx='0.5' spacingy='0.5' type='xygrid'/>
6 </sodipodi:namedview>
7 <metadata id='metadata90'>
8 <rdf:RDF>
9 <cc:Work rdf:about=''>
10 <dc:format>image/svg+xml</dc:format>
11 <dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
12 <dc:title>Gnome Symbolic Icons</dc:title>
13 <cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
14 </cc:Work>
15 <cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
16 <cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
17 <cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
18 <cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
19 <cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
20 <cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
21 <cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
22 </cc:License>
23 </rdf:RDF>
24 </metadata>
25 <title id='title8473'>Gnome Symbolic Icons</title>
26 <defs id='defs7386'/>
27 <g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-152.00586,-952)'>
28 <path inkscape:connector-curvature='0' d='m 166,957 -5.99414,5.99999 L 154,957 Z' id='path6424' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
29 </g>
30 <g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-152.00586,-888)'/>
31 <g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-152.00586,-952)'/>
32 <g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-152.00586,-888)'/>
33 <g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-152.00586,-888)'/>
34 <g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-152.00586,-888)'/>
35 <g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-152.00586,-888)'/>
36 <g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-152.00586,-888)'/>
37 <g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-152.00586,-888)'/>
38 <g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-152.00586,-888)'/>
39 <g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-152.00586,-888)'/>
40</svg>
diff --git a/etc/images/left.svg b/etc/images/left.svg
new file mode 100644
index 00000000000..d6429bc4109
--- /dev/null
+++ b/etc/images/left.svg
@@ -0,0 +1,40 @@
1<?xml version='1.0' encoding='UTF-8' standalone='no'?>
2<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-start-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
3 <sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='51.147672' inkscape:cy='7.96251' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
4 <inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-92.005848' originy='-951.99999' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
5 <inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-92.005848' originy='-951.99999' spacingx='0.5' spacingy='0.5' type='xygrid'/>
6 </sodipodi:namedview>
7 <metadata id='metadata90'>
8 <rdf:RDF>
9 <cc:Work rdf:about=''>
10 <dc:format>image/svg+xml</dc:format>
11 <dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
12 <dc:title>Gnome Symbolic Icons</dc:title>
13 <cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
14 </cc:Work>
15 <cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
16 <cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
17 <cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
18 <cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
19 <cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
20 <cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
21 <cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
22 </cc:License>
23 </rdf:RDF>
24 </metadata>
25 <title id='title8473'>Gnome Symbolic Icons</title>
26 <defs id='defs7386'/>
27 <g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-92.005848,-951.99999)'>
28 <path inkscape:connector-curvature='0' d='M 103,966 97.00585,959.99999 103,954 Z' id='path6400' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
29 </g>
30 <g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-92.005848,-887.99999)'/>
31 <g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-92.005848,-951.99999)'/>
32 <g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-92.005848,-887.99999)'/>
33 <g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-92.005848,-887.99999)'/>
34 <g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-92.005848,-887.99999)'/>
35 <g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-92.005848,-887.99999)'/>
36 <g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-92.005848,-887.99999)'/>
37 <g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-92.005848,-887.99999)'/>
38 <g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-92.005848,-887.99999)'/>
39 <g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-92.005848,-887.99999)'/>
40</svg>
diff --git a/etc/images/radio-checked.svg b/etc/images/radio-checked.svg
new file mode 100644
index 00000000000..db711841cf0
--- /dev/null
+++ b/etc/images/radio-checked.svg
@@ -0,0 +1,6 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
2 <g>
3 <path d="M8 5a3.001 3.001 0 000 6 3.001 3.001 0 000-6z" overflow="visible"/>
4 <path d="M8.004 1C4.144 1 1 4.144 1 8.004c0 3.86 3.144 7.006 7.004 7.006 3.86 0 7.006-3.146 7.006-7.006C15.01 4.144 11.864 1 8.004 1zm0 1a6.002 6.002 0 016.006 6.004 6.004 6.004 0 01-6.006 6.006A6.002 6.002 0 012 8.004 6 6 0 018.004 2z" overflow="visible"/>
5 </g>
6</svg>
diff --git a/etc/images/radio-mixed.svg b/etc/images/radio-mixed.svg
new file mode 100644
index 00000000000..5a8be0cf657
--- /dev/null
+++ b/etc/images/radio-mixed.svg
@@ -0,0 +1,6 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
2 <g font-weight="400" fill="#474747">
3 <path d="M8 1C4.142 1 1 4.142 1 8s3.142 7 7 7 7-3.142 7-7-3.142-7-7-7zm0 1c3.316 0 6 2.684 6 6s-2.684 6-6 6-6-2.684-6-6 2.684-6 6-6z" overflow="visible" />
4 <path d="M5 6a2 2 0 100 4h6a2 2 0 100-4z" overflow="visible" />
5 </g>
6</svg>
diff --git a/etc/images/radio.svg b/etc/images/radio.svg
new file mode 100644
index 00000000000..0d649c99cd4
--- /dev/null
+++ b/etc/images/radio.svg
@@ -0,0 +1,3 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
2 <path d="M8 1C4.142 1 1 4.142 1 8s3.142 7 7 7 7-3.142 7-7-3.142-7-7-7zm0 1c3.316 0 6 2.684 6 6s-2.684 6-6 6-6-2.684-6-6 2.684-6 6-6z" overflow="visible" />
3</svg>
diff --git a/etc/images/right.svg b/etc/images/right.svg
new file mode 100644
index 00000000000..d58cd364359
--- /dev/null
+++ b/etc/images/right.svg
@@ -0,0 +1,40 @@
1<?xml version='1.0' encoding='UTF-8' standalone='no'?>
2<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-end-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
3 <sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='31.147668' inkscape:cy='7.96251' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
4 <inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-112.00585' originy='-951.99999' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
5 <inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-112.00585' originy='-951.99999' spacingx='0.5' spacingy='0.5' type='xygrid'/>
6 </sodipodi:namedview>
7 <metadata id='metadata90'>
8 <rdf:RDF>
9 <cc:Work rdf:about=''>
10 <dc:format>image/svg+xml</dc:format>
11 <dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
12 <dc:title>Gnome Symbolic Icons</dc:title>
13 <cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
14 </cc:Work>
15 <cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
16 <cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
17 <cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
18 <cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
19 <cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
20 <cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
21 <cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
22 </cc:License>
23 </rdf:RDF>
24 </metadata>
25 <title id='title8473'>Gnome Symbolic Icons</title>
26 <defs id='defs7386'/>
27 <g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-112.00585,-951.99999)'>
28 <path inkscape:connector-curvature='0' d='m 117,966 6.00585,-6.00001 L 117,954 Z' id='path6412' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
29 </g>
30 <g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-112.00585,-887.99999)'/>
31 <g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-112.00585,-951.99999)'/>
32 <g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-112.00585,-887.99999)'/>
33 <g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-112.00585,-887.99999)'/>
34 <g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-112.00585,-887.99999)'/>
35 <g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-112.00585,-887.99999)'/>
36 <g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-112.00585,-887.99999)'/>
37 <g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-112.00585,-887.99999)'/>
38 <g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-112.00585,-887.99999)'/>
39 <g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-112.00585,-887.99999)'/>
40</svg>
diff --git a/etc/images/unchecked.svg b/etc/images/unchecked.svg
new file mode 100644
index 00000000000..18cd25b43fd
--- /dev/null
+++ b/etc/images/unchecked.svg
@@ -0,0 +1,3 @@
1<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16">
2 <path d="M3.5 1A2.506 2.506 0 001 3.5v9C1 13.876 2.124 15 3.5 15h9c1.376 0 2.5-1.124 2.5-2.5v-9C15 2.124 13.876 1 12.5 1zm0 1h9c.84 0 1.5.66 1.5 1.5v9c0 .84-.66 1.5-1.5 1.5h-9c-.84 0-1.5-.66-1.5-1.5v-9C2 2.66 2.66 2 3.5 2z" overflow="visible" />
3</svg>
diff --git a/etc/images/up.svg b/etc/images/up.svg
new file mode 100644
index 00000000000..9e1a245be74
--- /dev/null
+++ b/etc/images/up.svg
@@ -0,0 +1,40 @@
1<?xml version='1.0' encoding='UTF-8' standalone='no'?>
2<svg xmlns:cc='http://creativecommons.org/ns#' xmlns:dc='http://purl.org/dc/elements/1.1/' sodipodi:docname='pan-up-symbolic.svg' inkscape:export-filename='/home/sam/source-symbolic.png' inkscape:export-xdpi='270' inkscape:export-ydpi='270' height='16' id='svg7384' xmlns:inkscape='http://www.inkscape.org/namespaces/inkscape' xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:sodipodi='http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd' style='enable-background:new' xmlns:svg='http://www.w3.org/2000/svg' version='1.1' inkscape:version='1.0 (4035a4fb49, 2020-05-01)' width='16' xmlns='http://www.w3.org/2000/svg'>
3 <sodipodi:namedview inkscape:bbox-nodes='true' inkscape:bbox-paths='false' bordercolor='#000000' borderlayer='false' borderopacity='0.50196078' inkscape:current-layer='layer10' inkscape:cx='11.14767' inkscape:cy='7.9625016' inkscape:document-rotation='0' gridtolerance='10' inkscape:guide-bbox='true' guidetolerance='10' id='namedview88' inkscape:measure-end='0,0' inkscape:measure-start='0,0' inkscape:object-nodes='true' inkscape:object-paths='true' objecttolerance='10' pagecolor='#e2e2e2' inkscape:pageopacity='0' inkscape:pageshadow='2' showborder='false' showgrid='true' showguides='false' inkscape:showpageshadow='false' inkscape:snap-bbox='true' inkscape:snap-bbox-edge-midpoints='false' inkscape:snap-bbox-midpoints='true' inkscape:snap-center='false' inkscape:snap-global='true' inkscape:snap-grids='true' inkscape:snap-intersection-paths='false' inkscape:snap-midpoints='true' inkscape:snap-nodes='true' inkscape:snap-object-midpoints='true' inkscape:snap-others='true' inkscape:snap-page='false' inkscape:snap-smooth-nodes='true' inkscape:snap-to-guides='true' inkscape:window-height='1205' inkscape:window-maximized='0' inkscape:window-width='1553' inkscape:window-x='26' inkscape:window-y='23' inkscape:zoom='1'>
4 <inkscape:grid color='#000000' dotted='false' empcolor='#0800ff' empopacity='0.4627451' empspacing='4' enabled='true' id='grid4866' opacity='0.16470588' originx='-132.00585' originy='-952' snapvisiblegridlinesonly='true' spacingx='1' spacingy='1' type='xygrid' visible='true'/>
5 <inkscape:grid dotted='true' empcolor='#3f3fff' empopacity='0' empspacing='4' id='grid3540' originx='-132.00585' originy='-952' spacingx='0.5' spacingy='0.5' type='xygrid'/>
6 </sodipodi:namedview>
7 <metadata id='metadata90'>
8 <rdf:RDF>
9 <cc:Work rdf:about=''>
10 <dc:format>image/svg+xml</dc:format>
11 <dc:type rdf:resource='http://purl.org/dc/dcmitype/StillImage'/>
12 <dc:title>Gnome Symbolic Icons</dc:title>
13 <cc:license rdf:resource='http://creativecommons.org/licenses/by-sa/4.0/'/>
14 </cc:Work>
15 <cc:License rdf:about='http://creativecommons.org/licenses/by-sa/4.0/'>
16 <cc:permits rdf:resource='http://creativecommons.org/ns#Reproduction'/>
17 <cc:permits rdf:resource='http://creativecommons.org/ns#Distribution'/>
18 <cc:requires rdf:resource='http://creativecommons.org/ns#Notice'/>
19 <cc:requires rdf:resource='http://creativecommons.org/ns#Attribution'/>
20 <cc:permits rdf:resource='http://creativecommons.org/ns#DerivativeWorks'/>
21 <cc:requires rdf:resource='http://creativecommons.org/ns#ShareAlike'/>
22 </cc:License>
23 </rdf:RDF>
24 </metadata>
25 <title id='title8473'>Gnome Symbolic Icons</title>
26 <defs id='defs7386'/>
27 <g inkscape:groupmode='layer' id='layer10' inkscape:label='ui' transform='translate(-132.00585,-952)'>
28 <path inkscape:connector-curvature='0' d='M 146,963 140.00585,956.99999 134,963 Z' id='path6418' sodipodi:nodetypes='cccc' style='fill:#2e3436;fill-opacity:1;stroke:none'/>
29 </g>
30 <g inkscape:groupmode='layer' id='layer1' inkscape:label='status' transform='translate(-132.00585,-888)'/>
31 <g inkscape:groupmode='layer' id='layer11' inkscape:label='legacy' transform='translate(-132.00585,-952)'/>
32 <g inkscape:groupmode='layer' id='layer7' inkscape:label='places' transform='translate(-132.00585,-888)'/>
33 <g inkscape:groupmode='layer' id='layer6' inkscape:label='mimetypes' transform='translate(-132.00585,-888)'/>
34 <g inkscape:groupmode='layer' id='layer5' inkscape:label='emotes' transform='translate(-132.00585,-888)'/>
35 <g inkscape:groupmode='layer' id='layer9' inkscape:label='emblems' transform='translate(-132.00585,-888)'/>
36 <g inkscape:groupmode='layer' id='layer2' inkscape:label='devices' transform='translate(-132.00585,-888)'/>
37 <g inkscape:groupmode='layer' id='layer8' inkscape:label='categories' transform='translate(-132.00585,-888)'/>
38 <g inkscape:groupmode='layer' id='layer3' inkscape:label='apps' transform='translate(-132.00585,-888)'/>
39 <g inkscape:groupmode='layer' id='layer4' inkscape:label='actions' transform='translate(-132.00585,-888)'/>
40</svg>
diff --git a/lisp/wid-edit.el b/lisp/wid-edit.el
index 51c6b49e6df..49baab69199 100644
--- a/lisp/wid-edit.el
+++ b/lisp/wid-edit.el
@@ -750,7 +750,7 @@ automatically."
750 :type 'boolean) 750 :type 'boolean)
751 751
752(defcustom widget-image-conversion 752(defcustom widget-image-conversion
753 '((xpm ".xpm") (gif ".gif") (png ".png") (jpeg ".jpg" ".jpeg") 753 '((svg ".svg") (xpm ".xpm") (gif ".gif") (png ".png") (jpeg ".jpg" ".jpeg")
754 (xbm ".xbm")) 754 (xbm ".xbm"))
755 "Conversion alist from image formats to file name suffixes." 755 "Conversion alist from image formats to file name suffixes."
756 :group 'widgets 756 :group 'widgets
@@ -2564,9 +2564,9 @@ Return an alist of (TYPE MATCH)."
2564 :button-suffix "" 2564 :button-suffix ""
2565 :button-prefix "" 2565 :button-prefix ""
2566 :on "(*)" 2566 :on "(*)"
2567 :on-glyph "radio1" 2567 :on-glyph "radio-checked"
2568 :off "( )" 2568 :off "( )"
2569 :off-glyph "radio0") 2569 :off-glyph "radio")
2570 2570
2571(defun widget-radio-button-notify (widget _child &optional event) 2571(defun widget-radio-button-notify (widget _child &optional event)
2572 ;; Tell daddy. 2572 ;; Tell daddy.