diff --git a/bitmaps_png/CMakeLists.txt b/bitmaps_png/CMakeLists.txt
index ff947b6876..7275672cd8 100644
--- a/bitmaps_png/CMakeLists.txt
+++ b/bitmaps_png/CMakeLists.txt
@@ -246,6 +246,7 @@ set( BMAPS_MID
     file_pos
     file_svg
     fill_zone
+    filter
     find
     find_replace
     flag
diff --git a/bitmaps_png/cpp_24/filter.cpp b/bitmaps_png/cpp_24/filter.cpp
new file mode 100644
index 0000000000..ca610357fa
--- /dev/null
+++ b/bitmaps_png/cpp_24/filter.cpp
@@ -0,0 +1,24 @@
+
+/* Do not modify this file, it was automatically generated by the
+ * PNG2cpp CMake script, using a *.png file as input.
+ */
+
+#include <bitmaps_png/bitmaps_list.h>
+
+static const unsigned char png[] = {
+ 0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x0d, 0x49, 0x48, 0x44, 0x52,
+ 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x18, 0x08, 0x04, 0x00, 0x00, 0x00, 0x4a, 0x7e, 0xf5,
+ 0x73, 0x00, 0x00, 0x00, 0x68, 0x49, 0x44, 0x41, 0x54, 0x38, 0xcb, 0x63, 0x60, 0x20, 0x1d, 0x84,
+ 0xfc, 0x27, 0x1e, 0x42, 0x35, 0x7c, 0x26, 0x12, 0x92, 0xab, 0x21, 0xfc, 0xe7, 0x69, 0xa2, 0x94,
+ 0x9f, 0xfe, 0x1f, 0xfe, 0x13, 0xac, 0x21, 0xd4, 0x26, 0xfa, 0xf3, 0x29, 0x82, 0xca, 0xcf, 0xfe,
+ 0x8f, 0xfe, 0x12, 0xea, 0x04, 0xf5, 0x36, 0x61, 0x2d, 0x28, 0xca, 0x09, 0x6b, 0xc1, 0x50, 0x8e,
+ 0x5f, 0x0b, 0x56, 0xe5, 0xb8, 0xb5, 0xe0, 0x54, 0x8e, 0x5d, 0x0b, 0x5e, 0xe5, 0x98, 0x5a, 0x08,
+ 0x2a, 0x07, 0x47, 0xa3, 0x43, 0xc4, 0x6f, 0x98, 0x86, 0x88, 0xdf, 0x21, 0x0e, 0x44, 0xa5, 0x2d,
+ 0xb4, 0x98, 0x1d, 0xd5, 0x30, 0x54, 0x34, 0xa0, 0x65, 0x7a, 0xca, 0x00, 0x00, 0xa9, 0x7e, 0xc6,
+ 0x8e, 0xac, 0x4a, 0x47, 0xce, 0x00, 0x00, 0x00, 0x00, 0x49, 0x45, 0x4e, 0x44, 0xae, 0x42, 0x60,
+ 0x82,
+};
+
+const BITMAP_OPAQUE filter_xpm[1] = {{ png, sizeof( png ), "filter_xpm" }};
+
+//EOF
diff --git a/bitmaps_png/include/bitmaps_png/bitmaps_list.h b/bitmaps_png/include/bitmaps_png/bitmaps_list.h
index c848ecf108..56569be859 100644
--- a/bitmaps_png/include/bitmaps_png/bitmaps_list.h
+++ b/bitmaps_png/include/bitmaps_png/bitmaps_list.h
@@ -171,6 +171,7 @@ EXTERN_BITMAP( file_pdf_xpm )
 EXTERN_BITMAP( file_pos_xpm )
 EXTERN_BITMAP( file_svg_xpm )
 EXTERN_BITMAP( fill_zone_xpm )
+EXTERN_BITMAP( filter_xpm )
 EXTERN_BITMAP( find_xpm )
 EXTERN_BITMAP( find_replace_xpm )
 EXTERN_BITMAP( flag_xpm )
diff --git a/bitmaps_png/sources/filter.svg b/bitmaps_png/sources/filter.svg
new file mode 100644
index 0000000000..959b569718
--- /dev/null
+++ b/bitmaps_png/sources/filter.svg
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<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"
+   id="Слой_1"
+   data-name="Слой 1"
+   viewBox="0 0 24 24"
+   version="1.1"
+   sodipodi:docname="filter.svg"
+   inkscape:version="1.0.1 (c497b03c, 2020-09-10)">
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1280"
+     inkscape:window-height="715"
+     id="namedview30"
+     showgrid="true"
+     inkscape:zoom="17.400005"
+     inkscape:cx="12.49122"
+     inkscape:cy="12.932069"
+     inkscape:window-x="0"
+     inkscape:window-y="23"
+     inkscape:window-maximized="0"
+     inkscape:document-rotation="0"
+     inkscape:current-layer="Слой_1">
+    <inkscape:grid
+       type="xygrid"
+       id="grid_kicad"
+       spacingx="0.5"
+       spacingy="0.5"
+       color="#9999ff"
+       opacity="0.13"
+       empspacing="2" />
+  </sodipodi:namedview>
+  <metadata
+     id="metadata43">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <cc:license
+           rdf:resource="http://creativecommons.org/licenses/by-sa/4.0/" />
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title>drc</dc:title>
+      </cc:Work>
+      <cc:License
+         rdf:about="http://creativecommons.org/licenses/by-sa/4.0/">
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#Reproduction" />
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#Distribution" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#Notice" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#Attribution" />
+        <cc:permits
+           rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
+        <cc:requires
+           rdf:resource="http://creativecommons.org/ns#ShareAlike" />
+      </cc:License>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs116686">
+    <style
+       id="style116684">.cls-1{fill:#b9b9b9;}.cls-2{fill:#fff;}.cls-2,.cls-3{stroke:#545454;}.cls-2,.cls-3,.cls-4{stroke-linecap:round;stroke-linejoin:round;}.cls-3,.cls-4{fill:none;}.cls-4{stroke:#1a81c4;}.cls-5{fill:#545454;}</style>
+  </defs>
+  <title
+     id="title116688">drc</title>
+  <path
+     style="display:inline;fill:#f3f3f3;fill-opacity:1;stroke:#545454;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+     d="m 1.5,1.5 h 21 v 3 0 l -8,8 v 10 h -5 v -10 l -8,-8 z"
+     id="path943"
+     sodipodi:nodetypes="cccccccccc" />
+</svg>
diff --git a/common/tool/actions.cpp b/common/tool/actions.cpp
index 3706da5ff6..72a7a76941 100644
--- a/common/tool/actions.cpp
+++ b/common/tool/actions.cpp
@@ -167,8 +167,7 @@ TOOL_ACTION ACTIONS::paste( "common.Interactive.paste",
 TOOL_ACTION ACTIONS::selectAll( "common.Interactive.selectAll",
         AS_GLOBAL,
         MD_CTRL + 'A', "",
-        _( "Select All" ), _( "Select all items on screen" ),
-        plus_xpm );
+        _( "Select All" ), _( "Select all items on screen" ) );
 
 TOOL_ACTION ACTIONS::pasteSpecial( "common.Interactive.pasteSpecial",
         AS_GLOBAL, 0, "",
diff --git a/pcbnew/tools/pcb_actions.cpp b/pcbnew/tools/pcb_actions.cpp
index d067d51abc..60606b7257 100644
--- a/pcbnew/tools/pcb_actions.cpp
+++ b/pcbnew/tools/pcb_actions.cpp
@@ -1197,7 +1197,7 @@ TOOL_ACTION PCB_ACTIONS::selectSameSheet( "pcbnew.InteractiveSelection.SelectSam
 TOOL_ACTION PCB_ACTIONS::filterSelection( "pcbnew.InteractiveSelection.FilterSelection",
         AS_GLOBAL, 0, "",
         _( "Filter Selection..." ), _( "Filter the types of items in the selection" ),
-        options_generic_xpm );
+        filter_xpm );
 
 
 // ZONE_FILLER_TOOL
diff --git a/pcbnew/tools/pcb_selection_tool.cpp b/pcbnew/tools/pcb_selection_tool.cpp
index 46afda8d6e..a0ae6a0f87 100644
--- a/pcbnew/tools/pcb_selection_tool.cpp
+++ b/pcbnew/tools/pcb_selection_tool.cpp
@@ -65,7 +65,6 @@ public:
         ACTION_MENU( true )
     {
         SetTitle( _( "Select" ) );
-        SetIcon( options_generic_xpm );
 
         Add( PCB_ACTIONS::filterSelection );