[gimp/wip/nielsdg/propswitch: 3/3] icons: install switch-(on|off)-symbolic icons in GIMP's hicolor theme.




commit e815c615e103ccd10cc2e8f5932fc968115280c1
Author: Jehan <jehan girinstud io>
Date:   Sun Aug 23 00:10:27 2020 +0200

    icons: install switch-(on|off)-symbolic icons in GIMP's hicolor theme.
    
    These icons are not available in any of our themes (Symbolic or Color).
    Also they don't seem to be available in many icon themes either actually
    and I'm not sure GIMP properly fallbacks to system icon theme when an
    icon is missing in the selected theme anyway (I think to remember this
    used to work, but it doesn't look like it works anymore).
    
    Anyway I just copied the 2 symbolic switch on|off icons available in the
    GTK+ repository at gtk/icons/scalable/status/. These are supposed to be
    used by GtkSwitch but somehow they aren't. So for the time being, let's
    bundle them directly with GIMP (until we figure something better out).
    I put them in hicolor because this is the generic/default theme which is
    always used as last resort and is common to any theme. It means any
    specific theme will be able to override these icons, but if missing,
    hicolor will be able to provide a fallback.

 configure.ac                                   |  1 +
 icons/Makefile.am                              | 11 +----
 icons/hicolor/Makefile.am                      | 12 +++++
 icons/hicolor/index.theme                      | 13 ++++++
 icons/hicolor/meson.build                      | 16 +++++++
 icons/hicolor/scalable/switch-off-symbolic.svg | 62 +++++++++++++++++++++++++
 icons/hicolor/scalable/switch-on-symbolic.svg  | 64 ++++++++++++++++++++++++++
 icons/index.theme                              |  6 ---
 icons/meson.build                              |  5 +-
 9 files changed, 171 insertions(+), 19 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 58ae88b898..0d2ce0f58b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3090,6 +3090,7 @@ icons/Makefile
 icons/Color/Makefile
 icons/Legacy/Makefile
 icons/Symbolic/Makefile
+icons/hicolor/Makefile
 themes/Makefile
 themes/System/Makefile
 data/Makefile
diff --git a/icons/Makefile.am b/icons/Makefile.am
index 0d6c34d1bb..1c7291e555 100644
--- a/icons/Makefile.am
+++ b/icons/Makefile.am
@@ -1,12 +1,5 @@
 SUBDIRS = \
        Color           \
        Legacy          \
-       Symbolic
-
-iconsdir = $(gimpdatadir)/icons/hicolor
-
-icons_DATA = \
-       index.theme
-
-EXTRA_DIST = \
-       $(icons_DATA)
+       Symbolic        \
+       hicolor
diff --git a/icons/hicolor/Makefile.am b/icons/hicolor/Makefile.am
new file mode 100644
index 0000000000..8ac97a120d
--- /dev/null
+++ b/icons/hicolor/Makefile.am
@@ -0,0 +1,12 @@
+iconsdir = $(gimpdatadir)/icons/hicolor
+icons_DATA = \
+       index.theme
+
+actionsdir = $(iconsdir)/scalable/actions
+actions_DATA = \
+       scalable/switch-on-symbolic.svg         \
+       scalable/switch-off-symbolic.svg
+
+EXTRA_DIST = \
+       $(icons_DATA)           \
+       $(actions_DATA)
diff --git a/icons/hicolor/index.theme b/icons/hicolor/index.theme
new file mode 100644
index 0000000000..b87ce56843
--- /dev/null
+++ b/icons/hicolor/index.theme
@@ -0,0 +1,13 @@
+[Icon Theme]
+Name=Hicolor
+Comment=Fallback icon theme
+Hidden=true
+
+Directories=scalable/actions
+
+[scalable/actions]
+Context=Actions
+Size=16
+MinSize=8
+MaxSize=512
+Type=Scalable
diff --git a/icons/hicolor/meson.build b/icons/hicolor/meson.build
new file mode 100644
index 0000000000..30a1a5ea2c
--- /dev/null
+++ b/icons/hicolor/meson.build
@@ -0,0 +1,16 @@
+install_data('index.theme',
+  install_dir: gimpiconsdir / theme,
+)
+
+generic_icons = [
+  [ 'scalable/actions/', 'scalable/switch-on-symbolic.svg' ],
+  [ 'scalable/actions/', 'scalable/switch-off-symbolic.svg' ]
+]
+
+foreach icon_info : generic_icons
+  icons_dir = icon_info[0]
+  icons_list= icon_info[1]
+  install_data(icons_list,
+    install_dir: gimpiconsdir / theme / icons_dir,
+  )
+endforeach
diff --git a/icons/hicolor/scalable/switch-off-symbolic.svg b/icons/hicolor/scalable/switch-off-symbolic.svg
new file mode 100644
index 0000000000..10b40b5975
--- /dev/null
+++ b/icons/hicolor/scalable/switch-off-symbolic.svg
@@ -0,0 +1,62 @@
+<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="16"
+   height="16"
+   viewBox="0 0 16 16"
+   version="1.1"
+   id="svg8"
+   inkscape:version="0.92.4 5da689c313, 2019-01-14"
+   sodipodi:docname="switch-off-symbolic.svg">
+  <defs
+     id="defs2" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="11.858493"
+     inkscape:cx="-1.0931113"
+     inkscape:cy="14.095717"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     units="px">
+    <inkscape:grid
+       type="xygrid"
+       id="grid815" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata5">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-292.76666)">
+    <path
+       
style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;font-variant-ligatures:normal;font-variant-position:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-alternates:normal;font-feature-settings:normal;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;text-orientation:mixed;dominant-baseline:auto;baseline-shift:baseline;text-anchor:start;white-space:normal;shape-padding:0;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:2;
 
stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;paint-order:normal;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate"
+       d="m 7.9785156,295.73828 c -2.7589327,0 -5.015625,2.25865 -5.015625,5.01758 0,2.75893 
2.2566923,5.01758 5.015625,5.01758 2.7589324,0 5.0175784,-2.25865 5.0175784,-5.01758 0,-2.75893 
-2.258646,-5.01758 -5.0175784,-5.01758 z m 0,2 c 1.6780526,0 3.0175784,1.33953 3.0175784,3.01758 0,1.67805 
-1.3395258,3.01758 -3.0175784,3.01758 -1.6780525,0 -3.015625,-1.33953 -3.015625,-3.01758 0,-1.67805 
1.3375725,-3.01758 3.015625,-3.01758 z"
+       id="path838"
+       inkscape:connector-curvature="0" />
+  </g>
+</svg>
diff --git a/icons/hicolor/scalable/switch-on-symbolic.svg b/icons/hicolor/scalable/switch-on-symbolic.svg
new file mode 100644
index 0000000000..0f0e18fb68
--- /dev/null
+++ b/icons/hicolor/scalable/switch-on-symbolic.svg
@@ -0,0 +1,64 @@
+<?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:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd";
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape";
+   width="16"
+   height="16"
+   viewBox="0 0 16 16"
+   version="1.1"
+   id="svg8"
+   inkscape:version="0.92.4 5da689c313, 2019-01-14"
+   sodipodi:docname="on-symbolic.svg">
+  <defs
+     id="defs2" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="31.678384"
+     inkscape:cx="10.416792"
+     inkscape:cy="9.9204611"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="true"
+     units="px">
+    <inkscape:grid
+       type="xygrid"
+       id="grid815" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata5">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage"; />
+        <dc:title></dc:title>
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Layer 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-292.76666)">
+    <rect
+       
style="opacity:1;vector-effect:none;fill:#000000;fill-opacity:1;stroke:none;stroke-width:2.58198857;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-start:none;marker-mid:none;marker-end:none;paint-order:normal"
+       id="rect817"
+       width="2"
+       height="9.9999971"
+       x="7"
+       y="295.76666" />
+  </g>
+</svg>
diff --git a/icons/meson.build b/icons/meson.build
index 5a758f157b..64d5c49f2f 100644
--- a/icons/meson.build
+++ b/icons/meson.build
@@ -1638,12 +1638,9 @@ themes = [
   'Color',
   # 'Legacy',
   'Symbolic',
+  'hicolor'
 ]
 
 foreach theme : themes
   subdir(theme)
 endforeach
-
-install_data('index.theme',
-  install_dir: gimpiconsdir / 'hicolor',
-)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]