diff --git a/icons/scalable/device/virtualkeyboard.svg b/icons/scalable/device/virtualkeyboard.svg
new file mode 100644
index 0000000..6d35000
--- /dev/null
+++ b/icons/scalable/device/virtualkeyboard.svg
@@ -0,0 +1,140 @@
+<?xml version="1.0" ?><!DOCTYPE svg  PUBLIC '-//W3C//DTD SVG 1.1//EN'  'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd' [
+	<!ENTITY stroke_color "#010101">
+	<!ENTITY fill_color "#FFFFFF">
+]><svg enable-background="new 0 0 55 55" height="55px" version="1.1" viewBox="0 0 55 55" width="55px" x="0px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" y="0px">
+  <rect fill="&fill_color;" stroke="&stroke_color;"
+     height="18.11911"
+     id="rect806"
+     rx="1.6"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;fill-rule:evenodd;stroke-width:2.50000000000000000;stroke-linejoin:round;stroke-opacity:1;fill-opacity:0"
+     width="43.363712"
+     x="5.7767382"
+     y="19.446568" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 6.4892878,24.027243 42.1421992,0"
+     id="path807"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 6.4892878,28.506124 42.7529552,0"
+     id="path808"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 6.5910805,32.985005 41.6332355,0"
+     id="path809"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 12.596852,23.925451 0,4.377088"
+     id="path811"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 14.021951,28.302539 0,4.682466"
+     id="path812"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 10.764583,20.362704 0,3.460954"
+     id="path813"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 20.231309,28.200746 0,4.886052"
+     id="path815"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 17.991868,24.129036 0,4.07171"
+     id="path816"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 24.303019,24.332621 0,3.969918"
+     id="path817"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 26.746045,28.200746 0,4.682466"
+     id="path818"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 30.817755,24.434414 0,4.173503"
+     id="path819"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 33.057196,28.302539 0,4.580673"
+     id="path820"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 37.739662,24.332621 0,4.07171"
+     id="path821"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 39.87731,28.200746 0,4.682466"
+     id="path822"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 11.37534,33.290383 0,3.66454"
+     id="path823"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 16.872148,33.188591 0,3.969917"
+     id="path824"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 36.212771,33.188591 0,3.460953"
+     id="path825"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 42.422128,33.188591 0,3.562746"
+     id="path826"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 15.345257,20.56629 0,3.562746"
+     id="path827"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 20.027724,20.159119 0,3.868124"
+     id="path828"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 25.015568,20.464497 0,3.155575"
+     id="path829"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 29.698035,20.260911 0,3.460954"
+     id="path830"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 34.584087,20.260911 0,3.359161"
+     id="path831"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 39.470139,20.464497 0,3.359161"
+     id="path832"
+     sodipodi:nodetypes="cc"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+  <path fill="&fill_color;" stroke="&stroke_color;"
+     d="m 44.152605,20.057326 0,3.562746"
+     id="path833"
+     sodipodi:stroke-cmyk="(0.0000000 0.0000000 0.0000000 0.69999999)"
+     style="font-size:12px;stroke-width:0.8pt;stroke-linejoin:round;stroke-opacity:1" />
+</svg>
diff --git a/icons/scalable/device/Makefile.am b/icons/scalable/device/Makefile.am
index 28818ab..6e5e58c 100644
--- a/icons/scalable/device/Makefile.am
+++ b/icons/scalable/device/Makefile.am
@@ -84,7 +84,8 @@ icon_DATA =				\
 	speaker-muted-000.svg		\
 	speaker-muted-033.svg		\
 	speaker-muted-066.svg		\
-	speaker-muted-100.svg		
+	speaker-muted-100.svg		\
+	virtualkeyboard.svg
 
 EXTRA_DIST = $(icon_DATA)
 
