diff --git a/data/icons/128x128/status/gpm-gaming-input-000.png b/data/icons/128x128/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..c3fbdc8b
Binary files /dev/null and b/data/icons/128x128/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/128x128/status/gpm-gaming-input-020.png b/data/icons/128x128/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..f08503d9
Binary files /dev/null and b/data/icons/128x128/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/128x128/status/gpm-gaming-input-040.png b/data/icons/128x128/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..2dc2a344
Binary files /dev/null and b/data/icons/128x128/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/128x128/status/gpm-gaming-input-060.png b/data/icons/128x128/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..3e8803ca
Binary files /dev/null and b/data/icons/128x128/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/128x128/status/gpm-gaming-input-080.png b/data/icons/128x128/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..2c985743
Binary files /dev/null and b/data/icons/128x128/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/128x128/status/gpm-gaming-input-100.png b/data/icons/128x128/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..7e923762
Binary files /dev/null and b/data/icons/128x128/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/16x16/status/gpm-gaming-input-000.png b/data/icons/16x16/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..4dfbc3a5
Binary files /dev/null and b/data/icons/16x16/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/16x16/status/gpm-gaming-input-020.png b/data/icons/16x16/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..73c3f030
Binary files /dev/null and b/data/icons/16x16/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/16x16/status/gpm-gaming-input-040.png b/data/icons/16x16/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..b4479587
Binary files /dev/null and b/data/icons/16x16/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/16x16/status/gpm-gaming-input-060.png b/data/icons/16x16/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..f04926df
Binary files /dev/null and b/data/icons/16x16/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/16x16/status/gpm-gaming-input-080.png b/data/icons/16x16/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..1b52ed4c
Binary files /dev/null and b/data/icons/16x16/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/16x16/status/gpm-gaming-input-100.png b/data/icons/16x16/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..bfd606f1
Binary files /dev/null and b/data/icons/16x16/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/22x22/status/gpm-gaming-input-000.png b/data/icons/22x22/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..8762a1a5
Binary files /dev/null and b/data/icons/22x22/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/22x22/status/gpm-gaming-input-020.png b/data/icons/22x22/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..8f0dc780
Binary files /dev/null and b/data/icons/22x22/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/22x22/status/gpm-gaming-input-040.png b/data/icons/22x22/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..f59cc8d5
Binary files /dev/null and b/data/icons/22x22/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/22x22/status/gpm-gaming-input-060.png b/data/icons/22x22/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..8d99b522
Binary files /dev/null and b/data/icons/22x22/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/22x22/status/gpm-gaming-input-080.png b/data/icons/22x22/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..94c99b4e
Binary files /dev/null and b/data/icons/22x22/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/22x22/status/gpm-gaming-input-100.png b/data/icons/22x22/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..5527532a
Binary files /dev/null and b/data/icons/22x22/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/24x24/status/gpm-gaming-input-000.png b/data/icons/24x24/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..fc8e6357
Binary files /dev/null and b/data/icons/24x24/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/24x24/status/gpm-gaming-input-020.png b/data/icons/24x24/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..881d1ba2
Binary files /dev/null and b/data/icons/24x24/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/24x24/status/gpm-gaming-input-040.png b/data/icons/24x24/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..5fc64f55
Binary files /dev/null and b/data/icons/24x24/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/24x24/status/gpm-gaming-input-060.png b/data/icons/24x24/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..cd6e4dda
Binary files /dev/null and b/data/icons/24x24/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/24x24/status/gpm-gaming-input-080.png b/data/icons/24x24/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..31142c66
Binary files /dev/null and b/data/icons/24x24/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/24x24/status/gpm-gaming-input-100.png b/data/icons/24x24/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..c0e8ca29
Binary files /dev/null and b/data/icons/24x24/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/256x256/status/gpm-gaming-input-000.png b/data/icons/256x256/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..bfd6819b
Binary files /dev/null and b/data/icons/256x256/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/256x256/status/gpm-gaming-input-020.png b/data/icons/256x256/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..3d1696f8
Binary files /dev/null and b/data/icons/256x256/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/256x256/status/gpm-gaming-input-040.png b/data/icons/256x256/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..5df9c34a
Binary files /dev/null and b/data/icons/256x256/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/256x256/status/gpm-gaming-input-060.png b/data/icons/256x256/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..e36d91fe
Binary files /dev/null and b/data/icons/256x256/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/256x256/status/gpm-gaming-input-080.png b/data/icons/256x256/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..04590f4c
Binary files /dev/null and b/data/icons/256x256/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/256x256/status/gpm-gaming-input-100.png b/data/icons/256x256/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..58fc16e8
Binary files /dev/null and b/data/icons/256x256/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/32x32/status/gpm-gaming-input-000.png b/data/icons/32x32/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..a9689c87
Binary files /dev/null and b/data/icons/32x32/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/32x32/status/gpm-gaming-input-020.png b/data/icons/32x32/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..3320717c
Binary files /dev/null and b/data/icons/32x32/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/32x32/status/gpm-gaming-input-040.png b/data/icons/32x32/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..692cbcbf
Binary files /dev/null and b/data/icons/32x32/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/32x32/status/gpm-gaming-input-060.png b/data/icons/32x32/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..98d4e425
Binary files /dev/null and b/data/icons/32x32/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/32x32/status/gpm-gaming-input-080.png b/data/icons/32x32/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..4f6b109e
Binary files /dev/null and b/data/icons/32x32/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/32x32/status/gpm-gaming-input-100.png b/data/icons/32x32/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..3b66f8f8
Binary files /dev/null and b/data/icons/32x32/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/48x48/status/gpm-gaming-input-000.png b/data/icons/48x48/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..82530a60
Binary files /dev/null and b/data/icons/48x48/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/48x48/status/gpm-gaming-input-020.png b/data/icons/48x48/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..6fc83a32
Binary files /dev/null and b/data/icons/48x48/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/48x48/status/gpm-gaming-input-040.png b/data/icons/48x48/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..c68f75ae
Binary files /dev/null and b/data/icons/48x48/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/48x48/status/gpm-gaming-input-060.png b/data/icons/48x48/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..2841e071
Binary files /dev/null and b/data/icons/48x48/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/48x48/status/gpm-gaming-input-080.png b/data/icons/48x48/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..f01e325b
Binary files /dev/null and b/data/icons/48x48/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/48x48/status/gpm-gaming-input-100.png b/data/icons/48x48/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..5af2d929
Binary files /dev/null and b/data/icons/48x48/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/64x64/status/gpm-gaming-input-000.png b/data/icons/64x64/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..d4d38aea
Binary files /dev/null and b/data/icons/64x64/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/64x64/status/gpm-gaming-input-020.png b/data/icons/64x64/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..b7af39c5
Binary files /dev/null and b/data/icons/64x64/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/64x64/status/gpm-gaming-input-040.png b/data/icons/64x64/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..294354d5
Binary files /dev/null and b/data/icons/64x64/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/64x64/status/gpm-gaming-input-060.png b/data/icons/64x64/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..c30481b8
Binary files /dev/null and b/data/icons/64x64/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/64x64/status/gpm-gaming-input-080.png b/data/icons/64x64/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..23b57a7a
Binary files /dev/null and b/data/icons/64x64/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/64x64/status/gpm-gaming-input-100.png b/data/icons/64x64/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..94833657
Binary files /dev/null and b/data/icons/64x64/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/96x96/status/gpm-gaming-input-000.png b/data/icons/96x96/status/gpm-gaming-input-000.png
new file mode 100644
index 00000000..8d63c9f2
Binary files /dev/null and b/data/icons/96x96/status/gpm-gaming-input-000.png differ
diff --git a/data/icons/96x96/status/gpm-gaming-input-020.png b/data/icons/96x96/status/gpm-gaming-input-020.png
new file mode 100644
index 00000000..7b5309c6
Binary files /dev/null and b/data/icons/96x96/status/gpm-gaming-input-020.png differ
diff --git a/data/icons/96x96/status/gpm-gaming-input-040.png b/data/icons/96x96/status/gpm-gaming-input-040.png
new file mode 100644
index 00000000..c43f39fc
Binary files /dev/null and b/data/icons/96x96/status/gpm-gaming-input-040.png differ
diff --git a/data/icons/96x96/status/gpm-gaming-input-060.png b/data/icons/96x96/status/gpm-gaming-input-060.png
new file mode 100644
index 00000000..05b536e8
Binary files /dev/null and b/data/icons/96x96/status/gpm-gaming-input-060.png differ
diff --git a/data/icons/96x96/status/gpm-gaming-input-080.png b/data/icons/96x96/status/gpm-gaming-input-080.png
new file mode 100644
index 00000000..f1f935c8
Binary files /dev/null and b/data/icons/96x96/status/gpm-gaming-input-080.png differ
diff --git a/data/icons/96x96/status/gpm-gaming-input-100.png b/data/icons/96x96/status/gpm-gaming-input-100.png
new file mode 100644
index 00000000..b316a4e6
Binary files /dev/null and b/data/icons/96x96/status/gpm-gaming-input-100.png differ
diff --git a/data/icons/scalable/status/gpm-gaming-input-000.svg b/data/icons/scalable/status/gpm-gaming-input-000.svg
new file mode 100644
index 00000000..fdcaa77f
--- /dev/null
+++ b/data/icons/scalable/status/gpm-gaming-input-000.svg
@@ -0,0 +1,507 @@
+
+
+
+
diff --git a/data/icons/scalable/status/gpm-gaming-input-020.svg b/data/icons/scalable/status/gpm-gaming-input-020.svg
new file mode 100644
index 00000000..d5e8f506
--- /dev/null
+++ b/data/icons/scalable/status/gpm-gaming-input-020.svg
@@ -0,0 +1,792 @@
+
+
+
+
diff --git a/data/icons/scalable/status/gpm-gaming-input-040.svg b/data/icons/scalable/status/gpm-gaming-input-040.svg
new file mode 100644
index 00000000..4a7ae617
--- /dev/null
+++ b/data/icons/scalable/status/gpm-gaming-input-040.svg
@@ -0,0 +1,673 @@
+
+
+
+
diff --git a/data/icons/scalable/status/gpm-gaming-input-060.svg b/data/icons/scalable/status/gpm-gaming-input-060.svg
new file mode 100644
index 00000000..901ad0f2
--- /dev/null
+++ b/data/icons/scalable/status/gpm-gaming-input-060.svg
@@ -0,0 +1,521 @@
+
+
+
+
diff --git a/data/icons/scalable/status/gpm-gaming-input-080.svg b/data/icons/scalable/status/gpm-gaming-input-080.svg
new file mode 100644
index 00000000..5d209e23
--- /dev/null
+++ b/data/icons/scalable/status/gpm-gaming-input-080.svg
@@ -0,0 +1,673 @@
+
+
+
+
diff --git a/data/icons/scalable/status/gpm-gaming-input-100.svg b/data/icons/scalable/status/gpm-gaming-input-100.svg
new file mode 100644
index 00000000..b0201af3
--- /dev/null
+++ b/data/icons/scalable/status/gpm-gaming-input-100.svg
@@ -0,0 +1,501 @@
+
+
+
+
diff --git a/src/gpm-statistics.c b/src/gpm-statistics.c
index ae144cb8..e87651bb 100644
--- a/src/gpm-statistics.c
+++ b/src/gpm-statistics.c
@@ -894,6 +894,9 @@ gpm_stats_add_device (UpDevice *device, GPtrArray *devices)
if ((vendor != NULL && strlen(vendor) != 0) && (model != NULL && strlen(model) != 0)) {
label = g_strdup_printf ("%s %s", vendor, model);
}
+ else if((vendor == NULL || strlen(vendor) == 0) && (model != NULL && strlen(model) != 0)) {
+ label = g_strdup_printf ("%s", model);
+ }
else {
label = g_strdup_printf ("%s", gpm_device_kind_to_localised_string (kind, 1));
}
diff --git a/src/gpm-tray-icon.c b/src/gpm-tray-icon.c
index 258c2424..9f5fe388 100644
--- a/src/gpm-tray-icon.c
+++ b/src/gpm-tray-icon.c
@@ -269,6 +269,9 @@ gpm_tray_icon_add_device (GpmTrayIcon *icon, GtkMenu *menu, const GPtrArray *arr
if ((vendor != NULL && strlen(vendor) != 0) && (model != NULL && strlen(model) != 0)) {
label = g_strdup_printf ("%s %s (%.1f%%)", vendor, model, percentage);
}
+ else if((vendor == NULL || strlen(vendor) == 0) && (model != NULL && strlen(model) != 0)) {
+ label = g_strdup_printf ("%s (%.1f%%)", model, percentage);
+ }
else {
label = g_strdup_printf ("%s (%.1f%%)", gpm_device_kind_to_localised_string (kind, 1), percentage);
}
@@ -354,6 +357,7 @@ gpm_tray_icon_create_menu (GpmTrayIcon *icon)
dev_cnt += gpm_tray_icon_add_device (icon, menu, array, UP_DEVICE_KIND_MEDIA_PLAYER);
dev_cnt += gpm_tray_icon_add_device (icon, menu, array, UP_DEVICE_KIND_TABLET);
dev_cnt += gpm_tray_icon_add_device (icon, menu, array, UP_DEVICE_KIND_COMPUTER);
+ dev_cnt += gpm_tray_icon_add_device (icon, menu, array, UP_DEVICE_KIND_GAMING_INPUT);
g_ptr_array_unref (array);
/* skip for things like live-cd's and GDM */
diff --git a/src/gpm-upower.c b/src/gpm-upower.c
index 6cf24c66..7311936f 100644
--- a/src/gpm-upower.c
+++ b/src/gpm-upower.c
@@ -162,6 +162,9 @@ gpm_upower_get_device_icon (UpDevice *device)
index_str = gpm_upower_get_device_icon_index (device);
filename = g_strdup_printf ("gpm-%s-%s", prefix, index_str);
}
+ } else if (kind == UP_DEVICE_KIND_GAMING_INPUT) {
+ index_str = gpm_upower_get_device_icon_index (device);
+ filename = g_strdup_printf ("gpm-%s-%s", prefix, index_str);
}
/* nothing matched */
@@ -526,6 +529,10 @@ gpm_device_kind_to_localised_string (UpDeviceKind kind, guint number)
/* TRANSLATORS: tablet device */
text = ngettext ("Computer", "Computers", number);
break;
+ case UP_DEVICE_KIND_GAMING_INPUT:
+ /* TRANSLATORS: wireless gamepad, joystick etc */
+ text = ngettext ("Gaming input", "Gaming inputs", number);
+ break;
default:
g_warning ("enum unrecognised: %i", kind);
text = up_device_kind_to_string (kind);