[gnome-applets] Add Inhibit Applet



commit af9ed17b373ecb0a0205ca19255ae7e9e3d5309e
Author: Balló György <ballogyor gmail com>
Date:   Sun Aug 16 13:28:24 2015 +0200

    Add Inhibit Applet
    
    It was part of the gnome-power-manager project:
    https://git.gnome.org/browse/gnome-power-manager/commit/?id=0a3dd43ca163de1b9c34a1496f2ef7d3f85e2637

 Makefile.am                                        |    4 +-
 configure.ac                                       |   21 +
 inhibit/Makefile.am                                |   52 ++
 inhibit/icons/16x16/Makefile.am                    |    3 +
 inhibit/icons/16x16/apps/Makefile.am               |   16 +
 inhibit/icons/16x16/apps/gnome-inhibit-applet.png  |  Bin 0 -> 801 bytes
 inhibit/icons/16x16/status/Makefile.am             |   19 +
 inhibit/icons/16x16/status/gpm-inhibit-invalid.png |  Bin 0 -> 855 bytes
 inhibit/icons/16x16/status/gpm-inhibit.png         |  Bin 0 -> 855 bytes
 inhibit/icons/16x16/status/gpm-uninhibit.png       |  Bin 0 -> 685 bytes
 inhibit/icons/22x22/Makefile.am                    |    3 +
 inhibit/icons/22x22/apps/Makefile.am               |   16 +
 inhibit/icons/22x22/apps/gnome-inhibit-applet.png  |  Bin 0 -> 1032 bytes
 inhibit/icons/22x22/status/Makefile.am             |   19 +
 inhibit/icons/22x22/status/gpm-inhibit-invalid.png |  Bin 0 -> 1241 bytes
 inhibit/icons/22x22/status/gpm-inhibit.png         |  Bin 0 -> 1423 bytes
 inhibit/icons/22x22/status/gpm-uninhibit.png       |  Bin 0 -> 1042 bytes
 inhibit/icons/24x24/Makefile.am                    |    3 +
 inhibit/icons/24x24/apps/Makefile.am               |   16 +
 inhibit/icons/24x24/apps/gnome-inhibit-applet.png  |  Bin 0 -> 1031 bytes
 inhibit/icons/24x24/status/Makefile.am             |   19 +
 inhibit/icons/24x24/status/gpm-inhibit-invalid.png |  Bin 0 -> 1828 bytes
 inhibit/icons/24x24/status/gpm-inhibit.png         |  Bin 0 -> 1513 bytes
 inhibit/icons/24x24/status/gpm-uninhibit.png       |  Bin 0 -> 1035 bytes
 inhibit/icons/32x32/Makefile.am                    |    3 +
 inhibit/icons/32x32/apps/Makefile.am               |   16 +
 inhibit/icons/32x32/apps/gnome-inhibit-applet.png  |  Bin 0 -> 1714 bytes
 inhibit/icons/32x32/status/Makefile.am             |   19 +
 inhibit/icons/32x32/status/gpm-inhibit-invalid.png |  Bin 0 -> 1940 bytes
 inhibit/icons/32x32/status/gpm-inhibit.png         |  Bin 0 -> 2526 bytes
 inhibit/icons/32x32/status/gpm-uninhibit.png       |  Bin 0 -> 1699 bytes
 inhibit/icons/48x48/Makefile.am                    |    3 +
 inhibit/icons/48x48/apps/Makefile.am               |   16 +
 inhibit/icons/48x48/apps/gnome-inhibit-applet.png  |  Bin 0 -> 2591 bytes
 inhibit/icons/48x48/status/Makefile.am             |   19 +
 inhibit/icons/48x48/status/gpm-inhibit-invalid.png |  Bin 0 -> 3230 bytes
 inhibit/icons/48x48/status/gpm-inhibit.png         |  Bin 0 -> 4132 bytes
 inhibit/icons/48x48/status/gpm-uninhibit.png       |  Bin 0 -> 2703 bytes
 inhibit/icons/Makefile.am                          |   16 +
 inhibit/icons/scalable/Makefile.am                 |    3 +
 inhibit/icons/scalable/apps/Makefile.am            |   16 +
 .../icons/scalable/apps/gnome-inhibit-applet.svg   |  725 ++++++++++++++++++++
 inhibit/icons/scalable/status/Makefile.am          |   19 +
 .../icons/scalable/status/gpm-inhibit-invalid.svg  |  376 ++++++++++
 inhibit/icons/scalable/status/gpm-inhibit.svg      |  259 +++++++
 inhibit/icons/scalable/status/gpm-uninhibit.svg    |  249 +++++++
 inhibit/inhibit-applet-menu.xml                    |    6 +
 inhibit/inhibit-applet.c                           |  528 ++++++++++++++
 inhibit/org.gnome.InhibitApplet.panel-applet.in.in |   15 +
 ...me.panel.applet.InhibitAppletFactory.service.in |    3 +
 po/POTFILES.in                                     |    3 +
 po/POTFILES.skip                                   |    1 +
 52 files changed, 2485 insertions(+), 1 deletions(-)
---
diff --git a/Makefile.am b/Makefile.am
index 84f8f2f..b937123 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -39,6 +39,7 @@ endif
 always_built_SUBDIRS =  \
        charpick        \
        drivemount      \
+       inhibit         \
        geyes           \
        stickynotes     \
        trashapplet \
@@ -74,7 +75,8 @@ DIST_SUBDIRS = \
        trashapplet     \
        cpufreq         \
        invest-applet   \
-       windowpicker
+       windowpicker    \
+       inhibit
 
 EXTRA_DIST = \
        MAINTAINERS                     \
diff --git a/configure.ac b/configure.ac
index f79efad..9ecabef 100644
--- a/configure.ac
+++ b/configure.ac
@@ -650,6 +650,26 @@ cpufreq/src/cpufreq-selector/Makefile
 cpufreq/src/Makefile
 drivemount/help/Makefile
 drivemount/Makefile
+inhibit/Makefile
+inhibit/icons/Makefile
+inhibit/icons/16x16/Makefile
+inhibit/icons/16x16/apps/Makefile
+inhibit/icons/16x16/status/Makefile
+inhibit/icons/22x22/Makefile
+inhibit/icons/22x22/apps/Makefile
+inhibit/icons/22x22/status/Makefile
+inhibit/icons/24x24/Makefile
+inhibit/icons/24x24/apps/Makefile
+inhibit/icons/24x24/status/Makefile
+inhibit/icons/32x32/Makefile
+inhibit/icons/32x32/apps/Makefile
+inhibit/icons/32x32/status/Makefile
+inhibit/icons/48x48/Makefile
+inhibit/icons/48x48/apps/Makefile
+inhibit/icons/48x48/status/Makefile
+inhibit/icons/scalable/Makefile
+inhibit/icons/scalable/apps/Makefile
+inhibit/icons/scalable/status/Makefile
 geyes/help/Makefile
 geyes/Makefile
 geyes/themes/Makefile
@@ -720,6 +740,7 @@ gnome-applets-$VERSION configure summary:
         - drivemount                   always
         - geyes                        always
         - gweather                     $build_libgweather_applets
+        - inhibit                      always
         - invest-applet                $HAVE_PYGOBJECT
         - mini-commander               $enable_mini_commander
         - modemlights                  $BUILD_MODEM_LIGHTS
diff --git a/inhibit/Makefile.am b/inhibit/Makefile.am
new file mode 100644
index 0000000..c50c33b
--- /dev/null
+++ b/inhibit/Makefile.am
@@ -0,0 +1,52 @@
+SUBDIRS = icons
+
+AM_CPPFLAGS =                                  \
+       -I.                                     \
+       -I$(srcdir)                             \
+       -DINHIBIT_MENU_UI_DIR=\""$(uidir)"\"    \
+       $(GNOME_APPLETS_CFLAGS)                 \
+       $(DBUS_CFLAGS)                          \
+       $(WARN_CFLAGS)                          \
+       $(NULL)
+
+libexec_PROGRAMS=gnome-inhibit-applet
+
+gnome_inhibit_applet_SOURCES =                                 \
+       inhibit-applet.c
+
+gnome_inhibit_applet_LDADD =                                   \
+       $(DBUS_LIBS)                                            \
+       $(GNOME_APPLETS_LIBS)
+
+appletdir       = $(LIBPANEL_APPLET_DIR)
+applet_in_files = org.gnome.InhibitApplet.panel-applet.in
+applet_DATA     = $(applet_in_files:.panel-applet.in=.panel-applet)
+
+$(applet_in_files): $(applet_in_files).in Makefile
+       $(AM_V_GEN)sed \
+            -e "s|\ LIBEXECDIR\@|$(libexecdir)|" \
+            -e "s|\ VERSION\@|$(PACKAGE_VERSION)|" \
+            $< > $@
+
+%.panel-applet: %.panel-applet.in $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*po) ; $(INTLTOOL_MERGE) 
$(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache
+
+servicedir       = $(datadir)/dbus-1/services
+service_in_files = org.gnome.panel.applet.InhibitAppletFactory.service.in
+service_DATA     = $(service_in_files:.service.in=.service)
+
+org.gnome.panel.applet.InhibitAppletFactory.service: $(service_in_files)
+       $(AM_V_GEN)sed \
+            -e "s|\ LIBEXECDIR\@|$(libexecdir)|" \
+            $< > $@
+
+uidir   = $(pkgdatadir)/ui
+ui_DATA = inhibit-applet-menu.xml
+
+CLEANFILES = $(applet_DATA) $(applet_DATA).in $(service_DATA)
+
+EXTRA_DIST = \
+       org.gnome.InhibitApplet.panel-applet.in.in \
+       $(ui_DATA) \
+       $(service_in_files)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/16x16/Makefile.am b/inhibit/icons/16x16/Makefile.am
new file mode 100644
index 0000000..04a3e32
--- /dev/null
+++ b/inhibit/icons/16x16/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = apps status
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/16x16/apps/Makefile.am b/inhibit/icons/16x16/apps/Makefile.am
new file mode 100644
index 0000000..30d9bbd
--- /dev/null
+++ b/inhibit/icons/16x16/apps/Makefile.am
@@ -0,0 +1,16 @@
+themedir = $(datadir)/icons/hicolor
+size = 16x16
+context = apps
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+icons_DATA =                           \
+       gnome-inhibit-applet.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/16x16/apps/gnome-inhibit-applet.png 
b/inhibit/icons/16x16/apps/gnome-inhibit-applet.png
new file mode 100644
index 0000000..b435771
Binary files /dev/null and b/inhibit/icons/16x16/apps/gnome-inhibit-applet.png differ
diff --git a/inhibit/icons/16x16/status/Makefile.am b/inhibit/icons/16x16/status/Makefile.am
new file mode 100644
index 0000000..2dd73e6
--- /dev/null
+++ b/inhibit/icons/16x16/status/Makefile.am
@@ -0,0 +1,19 @@
+themedir = $(pkgdatadir)/icons/hicolor
+size = 16x16
+context = status
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+
+icons_DATA =                           \
+       gpm-inhibit.png                 \
+       gpm-inhibit-invalid.png         \
+       gpm-uninhibit.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/16x16/status/gpm-inhibit-invalid.png 
b/inhibit/icons/16x16/status/gpm-inhibit-invalid.png
new file mode 100644
index 0000000..0cc90a1
Binary files /dev/null and b/inhibit/icons/16x16/status/gpm-inhibit-invalid.png differ
diff --git a/inhibit/icons/16x16/status/gpm-inhibit.png b/inhibit/icons/16x16/status/gpm-inhibit.png
new file mode 100644
index 0000000..0cc90a1
Binary files /dev/null and b/inhibit/icons/16x16/status/gpm-inhibit.png differ
diff --git a/inhibit/icons/16x16/status/gpm-uninhibit.png b/inhibit/icons/16x16/status/gpm-uninhibit.png
new file mode 100644
index 0000000..36dde47
Binary files /dev/null and b/inhibit/icons/16x16/status/gpm-uninhibit.png differ
diff --git a/inhibit/icons/22x22/Makefile.am b/inhibit/icons/22x22/Makefile.am
new file mode 100644
index 0000000..04a3e32
--- /dev/null
+++ b/inhibit/icons/22x22/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = apps status
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/22x22/apps/Makefile.am b/inhibit/icons/22x22/apps/Makefile.am
new file mode 100644
index 0000000..0d2c86c
--- /dev/null
+++ b/inhibit/icons/22x22/apps/Makefile.am
@@ -0,0 +1,16 @@
+themedir = $(datadir)/icons/hicolor
+size = 22x22
+context = apps
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+icons_DATA =                           \
+       gnome-inhibit-applet.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/22x22/apps/gnome-inhibit-applet.png 
b/inhibit/icons/22x22/apps/gnome-inhibit-applet.png
new file mode 100644
index 0000000..0b663a6
Binary files /dev/null and b/inhibit/icons/22x22/apps/gnome-inhibit-applet.png differ
diff --git a/inhibit/icons/22x22/status/Makefile.am b/inhibit/icons/22x22/status/Makefile.am
new file mode 100644
index 0000000..52e3956
--- /dev/null
+++ b/inhibit/icons/22x22/status/Makefile.am
@@ -0,0 +1,19 @@
+themedir = $(pkgdatadir)/icons/hicolor
+size = 22x22
+context = status
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+
+icons_DATA =                           \
+       gpm-inhibit.png                 \
+       gpm-inhibit-invalid.png         \
+       gpm-uninhibit.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/22x22/status/gpm-inhibit-invalid.png 
b/inhibit/icons/22x22/status/gpm-inhibit-invalid.png
new file mode 100644
index 0000000..1f4a215
Binary files /dev/null and b/inhibit/icons/22x22/status/gpm-inhibit-invalid.png differ
diff --git a/inhibit/icons/22x22/status/gpm-inhibit.png b/inhibit/icons/22x22/status/gpm-inhibit.png
new file mode 100644
index 0000000..bd10e7d
Binary files /dev/null and b/inhibit/icons/22x22/status/gpm-inhibit.png differ
diff --git a/inhibit/icons/22x22/status/gpm-uninhibit.png b/inhibit/icons/22x22/status/gpm-uninhibit.png
new file mode 100644
index 0000000..30dbaad
Binary files /dev/null and b/inhibit/icons/22x22/status/gpm-uninhibit.png differ
diff --git a/inhibit/icons/24x24/Makefile.am b/inhibit/icons/24x24/Makefile.am
new file mode 100644
index 0000000..04a3e32
--- /dev/null
+++ b/inhibit/icons/24x24/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = apps status
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/24x24/apps/Makefile.am b/inhibit/icons/24x24/apps/Makefile.am
new file mode 100644
index 0000000..9839431
--- /dev/null
+++ b/inhibit/icons/24x24/apps/Makefile.am
@@ -0,0 +1,16 @@
+themedir = $(datadir)/icons/hicolor
+size = 24x24
+context = apps
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+icons_DATA =                           \
+       gnome-inhibit-applet.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/24x24/apps/gnome-inhibit-applet.png 
b/inhibit/icons/24x24/apps/gnome-inhibit-applet.png
new file mode 100644
index 0000000..4624716
Binary files /dev/null and b/inhibit/icons/24x24/apps/gnome-inhibit-applet.png differ
diff --git a/inhibit/icons/24x24/status/Makefile.am b/inhibit/icons/24x24/status/Makefile.am
new file mode 100644
index 0000000..d840fbc
--- /dev/null
+++ b/inhibit/icons/24x24/status/Makefile.am
@@ -0,0 +1,19 @@
+themedir = $(pkgdatadir)/icons/hicolor
+size = 24x24
+context = status
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+
+icons_DATA =                           \
+       gpm-inhibit.png                 \
+       gpm-inhibit-invalid.png         \
+       gpm-uninhibit.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/24x24/status/gpm-inhibit-invalid.png 
b/inhibit/icons/24x24/status/gpm-inhibit-invalid.png
new file mode 100644
index 0000000..9b0bf3a
Binary files /dev/null and b/inhibit/icons/24x24/status/gpm-inhibit-invalid.png differ
diff --git a/inhibit/icons/24x24/status/gpm-inhibit.png b/inhibit/icons/24x24/status/gpm-inhibit.png
new file mode 100644
index 0000000..d74bfc1
Binary files /dev/null and b/inhibit/icons/24x24/status/gpm-inhibit.png differ
diff --git a/inhibit/icons/24x24/status/gpm-uninhibit.png b/inhibit/icons/24x24/status/gpm-uninhibit.png
new file mode 100644
index 0000000..0e11863
Binary files /dev/null and b/inhibit/icons/24x24/status/gpm-uninhibit.png differ
diff --git a/inhibit/icons/32x32/Makefile.am b/inhibit/icons/32x32/Makefile.am
new file mode 100644
index 0000000..04a3e32
--- /dev/null
+++ b/inhibit/icons/32x32/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = apps status
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/32x32/apps/Makefile.am b/inhibit/icons/32x32/apps/Makefile.am
new file mode 100644
index 0000000..16f7f4f
--- /dev/null
+++ b/inhibit/icons/32x32/apps/Makefile.am
@@ -0,0 +1,16 @@
+themedir = $(datadir)/icons/hicolor
+size = 32x32
+context = apps
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+icons_DATA =                           \
+       gnome-inhibit-applet.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/32x32/apps/gnome-inhibit-applet.png 
b/inhibit/icons/32x32/apps/gnome-inhibit-applet.png
new file mode 100644
index 0000000..dc6a6e2
Binary files /dev/null and b/inhibit/icons/32x32/apps/gnome-inhibit-applet.png differ
diff --git a/inhibit/icons/32x32/status/Makefile.am b/inhibit/icons/32x32/status/Makefile.am
new file mode 100644
index 0000000..8520098
--- /dev/null
+++ b/inhibit/icons/32x32/status/Makefile.am
@@ -0,0 +1,19 @@
+themedir = $(pkgdatadir)/icons/hicolor
+size = 32x32
+context = status
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+
+icons_DATA =                           \
+       gpm-inhibit.png                 \
+       gpm-inhibit-invalid.png         \
+       gpm-uninhibit.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/32x32/status/gpm-inhibit-invalid.png 
b/inhibit/icons/32x32/status/gpm-inhibit-invalid.png
new file mode 100644
index 0000000..0de5ee5
Binary files /dev/null and b/inhibit/icons/32x32/status/gpm-inhibit-invalid.png differ
diff --git a/inhibit/icons/32x32/status/gpm-inhibit.png b/inhibit/icons/32x32/status/gpm-inhibit.png
new file mode 100644
index 0000000..c9bf337
Binary files /dev/null and b/inhibit/icons/32x32/status/gpm-inhibit.png differ
diff --git a/inhibit/icons/32x32/status/gpm-uninhibit.png b/inhibit/icons/32x32/status/gpm-uninhibit.png
new file mode 100644
index 0000000..064452f
Binary files /dev/null and b/inhibit/icons/32x32/status/gpm-uninhibit.png differ
diff --git a/inhibit/icons/48x48/Makefile.am b/inhibit/icons/48x48/Makefile.am
new file mode 100644
index 0000000..04a3e32
--- /dev/null
+++ b/inhibit/icons/48x48/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = apps status
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/48x48/apps/Makefile.am b/inhibit/icons/48x48/apps/Makefile.am
new file mode 100644
index 0000000..0127a7c
--- /dev/null
+++ b/inhibit/icons/48x48/apps/Makefile.am
@@ -0,0 +1,16 @@
+themedir = $(datadir)/icons/hicolor
+size = 48x48
+context = apps
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+icons_DATA =                           \
+       gnome-inhibit-applet.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/48x48/apps/gnome-inhibit-applet.png 
b/inhibit/icons/48x48/apps/gnome-inhibit-applet.png
new file mode 100644
index 0000000..f933d82
Binary files /dev/null and b/inhibit/icons/48x48/apps/gnome-inhibit-applet.png differ
diff --git a/inhibit/icons/48x48/status/Makefile.am b/inhibit/icons/48x48/status/Makefile.am
new file mode 100644
index 0000000..aa20120
--- /dev/null
+++ b/inhibit/icons/48x48/status/Makefile.am
@@ -0,0 +1,19 @@
+themedir = $(pkgdatadir)/icons/hicolor
+size = 48x48
+context = status
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+
+icons_DATA =                           \
+       gpm-inhibit.png                 \
+       gpm-inhibit-invalid.png         \
+       gpm-uninhibit.png
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/48x48/status/gpm-inhibit-invalid.png 
b/inhibit/icons/48x48/status/gpm-inhibit-invalid.png
new file mode 100644
index 0000000..8ddb9fe
Binary files /dev/null and b/inhibit/icons/48x48/status/gpm-inhibit-invalid.png differ
diff --git a/inhibit/icons/48x48/status/gpm-inhibit.png b/inhibit/icons/48x48/status/gpm-inhibit.png
new file mode 100644
index 0000000..3b29848
Binary files /dev/null and b/inhibit/icons/48x48/status/gpm-inhibit.png differ
diff --git a/inhibit/icons/48x48/status/gpm-uninhibit.png b/inhibit/icons/48x48/status/gpm-uninhibit.png
new file mode 100644
index 0000000..b9815eb
Binary files /dev/null and b/inhibit/icons/48x48/status/gpm-uninhibit.png differ
diff --git a/inhibit/icons/Makefile.am b/inhibit/icons/Makefile.am
new file mode 100644
index 0000000..3ebd12d
--- /dev/null
+++ b/inhibit/icons/Makefile.am
@@ -0,0 +1,16 @@
+SUBDIRS = scalable 16x16 22x22 24x24 32x32 48x48
+
+gtk_update_icon_cache = gtk-update-icon-cache -f -t $(pkgdatadir)/icons/hicolor
+
+install-data-hook: update-icon-cache
+uninstall-hook: update-icon-cache
+update-icon-cache:
+       @-if test -z "$(DESTDIR)"; then \
+               echo "Updating Gtk icon cache."; \
+               $(gtk_update_icon_cache); \
+       else \
+               echo "*** Icon cache not updated.  After (un)install, run this:"; \
+               echo "***   $(gtk_update_icon_cache)"; \
+       fi
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/scalable/Makefile.am b/inhibit/icons/scalable/Makefile.am
new file mode 100644
index 0000000..04a3e32
--- /dev/null
+++ b/inhibit/icons/scalable/Makefile.am
@@ -0,0 +1,3 @@
+SUBDIRS = apps status
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/scalable/apps/Makefile.am b/inhibit/icons/scalable/apps/Makefile.am
new file mode 100644
index 0000000..c64d2b2
--- /dev/null
+++ b/inhibit/icons/scalable/apps/Makefile.am
@@ -0,0 +1,16 @@
+themedir = $(datadir)/icons/hicolor
+size = scalable
+context = apps
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+icons_DATA =                           \
+       gnome-inhibit-applet.svg
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/scalable/apps/gnome-inhibit-applet.svg 
b/inhibit/icons/scalable/apps/gnome-inhibit-applet.svg
new file mode 100644
index 0000000..c0fb73c
--- /dev/null
+++ b/inhibit/icons/scalable/apps/gnome-inhibit-applet.svg
@@ -0,0 +1,725 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   version="1.0"
+   width="48"
+   height="48"
+   id="svg11300">
+  <defs
+     id="defs3">
+    <linearGradient
+       id="linearGradient13678">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop13680" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop13682" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient14993">
+      <stop
+         style="stop-color:#000000;stop-opacity:1"
+         offset="0"
+         id="stop14995" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0"
+         offset="1"
+         id="stop14997" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient14981">
+      <stop
+         style="stop-color:#788600;stop-opacity:1"
+         offset="0"
+         id="stop14983" />
+      <stop
+         style="stop-color:#505900;stop-opacity:1"
+         offset="1"
+         id="stop14985" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient14973">
+      <stop
+         style="stop-color:#747474;stop-opacity:1"
+         offset="0"
+         id="stop14975" />
+      <stop
+         style="stop-color:#b0b0b0;stop-opacity:1"
+         offset="0.62068963"
+         id="stop14977" />
+      <stop
+         style="stop-color:#3f3f3f;stop-opacity:1"
+         offset="1"
+         id="stop14979" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient14881">
+      <stop
+         style="stop-color:#747474;stop-opacity:1"
+         offset="0"
+         id="stop14883" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0.62068963"
+         id="stop14893" />
+      <stop
+         style="stop-color:#3f3f3f;stop-opacity:1"
+         offset="1"
+         id="stop14885" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient14861">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop14863" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop14865" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient14780">
+      <stop
+         style="stop-color:#ebff39;stop-opacity:1"
+         offset="0"
+         id="stop14782" />
+      <stop
+         style="stop-color:#ebff39;stop-opacity:0"
+         offset="1"
+         id="stop14784" />
+    </linearGradient>
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14786"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,-5.90625,0)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14790"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,-2.890625,0)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14794"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,9.375e-2,0)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14798"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,3.09375,-1.3595e-2)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14802"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,6.09375,-1.3595e-2)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14806"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,9.109375,-1.3595e-2)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14810"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,12.10938,-1.3595e-2)" />
+    <linearGradient
+       x1="6.2209711"
+       y1="42.890816"
+       x2="6.2376504"
+       y2="39.266895"
+       id="linearGradient14814"
+       xlink:href="#linearGradient14780"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.984375,0,0,1,15.10938,-1.3595e-2)" />
+    <linearGradient
+       x1="16.964844"
+       y1="20.165941"
+       x2="18.968426"
+       y2="31.347067"
+       id="linearGradient14867"
+       xlink:href="#linearGradient14861"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.934742,0,0,1.14936,6.518753,-5.859611)" />
+    <linearGradient
+       x1="24"
+       y1="19.5"
+       x2="27"
+       y2="19.5"
+       id="linearGradient14887"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(5,-2)" />
+    <linearGradient
+       x1="24"
+       y1="21.5"
+       x2="27"
+       y2="21.5"
+       id="linearGradient14889"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(5,-2)" />
+    <linearGradient
+       x1="24"
+       y1="23.5"
+       x2="27"
+       y2="23.5"
+       id="linearGradient14891"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(5,-2)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14895"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(6,-2)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14897"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(6,-2)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14899"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(6,-2)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14903"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-35)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14907"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-37)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14911"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-39)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14915"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-41)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14919"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-43)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14923"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-45)" />
+    <linearGradient
+       x1="8"
+       y1="19.5"
+       x2="4.3283887"
+       y2="19.5"
+       id="linearGradient14927"
+       xlink:href="#linearGradient14881"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(8,-47)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="11.5"
+       x2="4.712738"
+       y2="11.5"
+       id="linearGradient14943"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-35)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="13.5"
+       x2="4.712738"
+       y2="13.5"
+       id="linearGradient14945"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-37)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="15.5"
+       x2="4.712738"
+       y2="15.5"
+       id="linearGradient14947"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-39)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="17.5"
+       x2="4.712738"
+       y2="17.5"
+       id="linearGradient14949"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-41)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="19.5"
+       x2="4.712738"
+       y2="19.5"
+       id="linearGradient14951"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-43)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="21.5"
+       x2="4.712738"
+       y2="21.5"
+       id="linearGradient14953"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-45)" />
+    <linearGradient
+       x1="7.1161165"
+       y1="23.5"
+       x2="4.712738"
+       y2="23.5"
+       id="linearGradient14955"
+       xlink:href="#linearGradient14973"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(18,-47)" />
+    <linearGradient
+       x1="20.046677"
+       y1="22.747095"
+       x2="39.002876"
+       y2="49.79393"
+       id="linearGradient14987"
+       xlink:href="#linearGradient14981"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(6,-2)" />
+    <radialGradient
+       cx="21.5"
+       cy="44.75"
+       r="17"
+       fx="21.5"
+       fy="44.75"
+       id="radialGradient14999"
+       xlink:href="#linearGradient14993"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.220588,0,34.87868)" />
+    <linearGradient
+       x1="40.546875"
+       y1="1.125"
+       x2="47.375"
+       y2="37.75"
+       id="linearGradient13684"
+       xlink:href="#linearGradient13678"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="40.546875"
+       y1="1.125"
+       x2="47.375"
+       y2="37.75"
+       id="linearGradient13702"
+       xlink:href="#linearGradient13678"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <g
+     id="layer1">
+    <g
+       id="g13622">
+      <path
+         d="M 7.50103,11.630239 L 7.5049363,38.34988 C 7.5049363,38.428758 7.5937382,38.500087 
7.6917178,38.500087 L 10.503317,38.515712 L 10.499411,43.368984 C 10.499411,43.440252 10.521808,43.495319 
10.623693,43.495754 L 37.379371,43.487941 C 37.471786,43.484243 37.503652,43.424197 37.503652,43.361171 L 
37.507559,38.492274 L 40.389917,38.500087 C 40.483667,38.500087 40.505959,38.369818 40.502479,38.28738 L 
40.502479,11.630239 C 40.506385,11.548207 40.456968,11.508247 40.374292,11.50347 L 7.6253115,11.50347 C 
7.5468642,11.507811 7.4932175,11.55602 7.50103,11.630239 z "
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14987);fill-opacity:1;fill-rule:nonzero;stroke:#3a3e00;stroke-width:1.00000012;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14772" />
+      <path
+         d="M 38.5 44.75 A 17 3.75 0 1 1  4.5,44.75 A 17 3.75 0 1 1  38.5 44.75 z"
+         transform="matrix(1.28015,0,0,1,-3.162329,-1.75)"
+         
style="opacity:0.61931817;color:#000000;fill:url(#radialGradient14999);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path14991" />
+      <path
+         d="M 31,21.472233 L 31.064355,22.003177 L 33.488776,23.895331 L 33.488776,28.499107 L 
16.429825,28.499107 L 16.429825,32.432389"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path14957" />
+      <path
+         d="M 13.441942,40.96101 L 13.496788,35.180327 L 15.397748,32.513864 L 37.46967,32.513864 L 
37.46967,27.142136 L 31.889942,21.613515 L 36,21.46967 L 36,17 L 32,17"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path14826" />
+      <path
+         d="M 19.5,40.96101 L 19.554846,35.180327 L 21.455804,32.513864"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path14830" />
+      <path
+         d="M 16.5,40.96101 L 16.554846,35.180327 L 18.455804,32.513864"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path14838" />
+      <g
+         transform="translate(6,-2)"
+         id="g14850">
+        <path
+           d="M 16.5,42.96101 L 16.554846,37.180327 L 18.455804,34.513864"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14840" />
+        <path
+           d="M 19.5,42.96101 L 19.554846,37.180327 L 21.455804,34.513864"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14842" />
+        <path
+           d="M 22.5,42.96101 L 22.554846,37.180327 L 24.455804,34.513864"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14844" />
+        <path
+           d="M 25.544196,42.96101 L 25.599042,37.180327 L 27.5,34.513864"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14846" />
+        <path
+           d="M 28.5,42.96101 L 28.554846,37.180327 L 30.455804,34.513864"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14848" />
+      </g>
+      <g
+         transform="translate(6,-2)"
+         id="g14816">
+        <path
+           d="M 6.9921875,39.59375 C 7.7918594,39.59375 7.984375,40.223 7.984375,40.5 L 7.984375,44.919845 C 
7.984375,44.919845 6,44.919845 6,44.919845 L 6,40.5 C 6,40.223 6.2081406,39.59375 6.9921875,39.59375 z "
+           
style="color:#000000;fill:url(#linearGradient14786);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="rect14777" />
+        <path
+           d="M 10.007812,39.59375 C 10.807484,39.59375 11,40.223 11,40.5 L 11,44.919845 C 11,44.919845 
9.015625,44.919845 9.015625,44.919845 L 9.015625,40.5 C 9.015625,40.223 9.2237656,39.59375 10.007812,39.59375 
z "
+           
style="color:#000000;fill:url(#linearGradient14790);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14788" />
+        <path
+           d="M 12.992187,39.59375 C 13.791859,39.59375 13.984375,40.223 13.984375,40.5 L 
13.984375,44.919845 C 13.984375,44.919845 12,44.919845 12,44.919845 L 12,40.5 C 12,40.223 12.208141,39.59375 
12.992187,39.59375 z "
+           
style="color:#000000;fill:url(#linearGradient14794);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14792" />
+        <path
+           d="M 15.992187,39.580155 C 16.791859,39.580155 16.984375,40.209405 16.984375,40.486405 L 
16.984375,44.90625 C 16.984375,44.90625 15,44.90625 15,44.90625 L 15,40.486405 C 15,40.209405 
15.208141,39.580155 15.992187,39.580155 z "
+           
style="color:#000000;fill:url(#linearGradient14798);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14796" />
+        <path
+           d="M 18.992187,39.580155 C 19.791859,39.580155 19.984375,40.209405 19.984375,40.486405 L 
19.984375,44.90625 C 19.984375,44.90625 18,44.90625 18,44.90625 L 18,40.486405 C 18,40.209405 
18.208141,39.580155 18.992187,39.580155 z "
+           
style="color:#000000;fill:url(#linearGradient14802);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14800" />
+        <path
+           d="M 22.007812,39.580155 C 22.807484,39.580155 23,40.209405 23,40.486405 L 23,44.90625 C 
23,44.90625 21.015625,44.90625 21.015625,44.90625 L 21.015625,40.486405 C 21.015625,40.209405 
21.223766,39.580155 22.007812,39.580155 z "
+           
style="color:#000000;fill:url(#linearGradient14806);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14804" />
+        <path
+           d="M 25.007812,39.580155 C 25.807484,39.580155 26,40.209405 26,40.486405 L 26,44.90625 C 
26,44.90625 24.015625,44.90625 24.015625,44.90625 L 24.015625,40.486405 C 24.015625,40.209405 
24.223766,39.580155 25.007812,39.580155 z "
+           
style="color:#000000;fill:url(#linearGradient14810);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14808" />
+        <path
+           d="M 28.007812,39.580155 C 28.807484,39.580155 29,40.209405 29,40.486405 L 29,44.90625 C 
29,44.90625 27.015625,44.90625 27.015625,44.90625 L 27.015625,40.486405 C 27.015625,40.209405 
27.223766,39.580155 28.007812,39.580155 z "
+           
style="color:#000000;fill:url(#linearGradient14814);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14812" />
+      </g>
+      <path
+         d="M 11.40625,17.3125 L 9.53125,18.5625 L 9.53125,20.4375 L 9.53125,30.5 L 16.53125,30.5625"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path15029" />
+      <rect
+         width="16.055548"
+         height="7.9304557"
+         rx="0.94194132"
+         ry="0.9419415"
+         x="13.472219"
+         y="15.503517"
+         
style="opacity:1;color:#000000;fill:#555753;fill-opacity:1;fill-rule:nonzero;stroke:#2e3436;stroke-width:0.99999958;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14857" />
+      <rect
+         width="14.116029"
+         height="5.8817496"
+         rx="0"
+         ry="0"
+         x="14.416605"
+         y="16.510822"
+         
style="opacity:0.17045456;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:url(#linearGradient14867);stroke-width:0.99999976;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14859" />
+      <rect
+         width="3"
+         height="1"
+         x="11"
+         y="17"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14899);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14869" />
+      <path
+         d="M 11.640625,19.5 L 9.515625,20.5625 L 9.515625,23"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path15031" />
+      <rect
+         width="3"
+         height="1"
+         x="11"
+         y="19"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14897);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14871" />
+      <path
+         d="M 11.5,21.5625 L 9.5,23"
+         
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path15033" />
+      <rect
+         width="3"
+         height="1"
+         x="11"
+         y="21"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14895);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14873" />
+      <rect
+         width="3"
+         height="1"
+         x="29"
+         y="17"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14887);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14875" />
+      <rect
+         width="3"
+         height="1"
+         x="29"
+         y="19"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14889);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14877" />
+      <rect
+         width="3"
+         height="1"
+         x="29"
+         y="21"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14891);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14879" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-16"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14903);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14901" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-18"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14907);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14905" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-20"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14911);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14909" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-22"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14915);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14913" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-24"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14919);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14917" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-26"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14923);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14921" />
+      <rect
+         width="3"
+         height="1"
+         x="13"
+         y="-28"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14927);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14925" />
+      <g
+         transform="translate(6,-2)"
+         id="g14967">
+        <path
+           d="M 9.4575532,27.582292 L 10.518213,30.499107 L 12.462757,30.499107 L 11.402097,27.538097"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14959" />
+        <path
+           d="M 13.457553,27.582292 L 14.518213,30.499107 L 16.462757,30.499107 L 15.402097,27.538097"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14961" />
+        <path
+           d="M 17.457553,27.582292 L 18.518213,30.499107 L 20.462757,30.499107 L 19.402097,27.538097"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14963" />
+        <path
+           d="M 21.457553,27.582292 L 22.518213,30.499107"
+           
style="opacity:1;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#98a332;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+           id="path14965" />
+      </g>
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-16"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14943);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14929" />
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-18"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14945);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14931" />
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-20"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14947);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14933" />
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-22"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14949);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14935" />
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-24"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14951);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14937" />
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-26"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14953);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14939" />
+      <path
+         d="M 8.5012312,37.501619 L 11.499344,37.501563 L 11.510393,42.484683 L 36.511389,42.482271 L 
36.508534,37.494975 L 39.49833,37.497656 C 39.502302,37.497247 39.502062,12.503547 39.502062,12.503547 L 
8.5047333,12.501369 C 8.5087743,20.839994 8.5012312,37.501619 8.5012312,37.501619 z "
+         
style="opacity:0.23863633;color:#000000;fill:none;fill-opacity:1;fill-rule:nonzero;stroke:#ffffff;stroke-width:1.0000006;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="path14989" />
+      <rect
+         width="3"
+         height="1"
+         x="23"
+         y="-28"
+         transform="matrix(0,1,-1,0,0,0)"
+         
style="opacity:1;color:#000000;fill:url(#linearGradient14955);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:block;overflow:visible"
+         id="rect14941" />
+    </g>
+    <g
+       id="g13689">
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721 L 46.925968,3.8880343 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Segoe"
+         id="path13687" />
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721"
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="text12733" />
+      <path
+         d="M 35.46875,1.34375 L 35.40625,3.59375 L 43.40625,3.59375 C 43.542681,3.6020985 
43.663766,3.6840106 43.722279,3.8075389 C 43.780792,3.9310671 43.767467,4.0766473 43.6875,4.1875 L 
34.84375,15.53125 L 34.84375,15.65625 L 46.6875,15.65625 L 46.6875,13.40625 L 39.96875,13.40625 C 
39.826696,13.409243 39.695149,13.331702 39.628973,13.205968 C 39.562797,13.080234 39.573358,12.9279 
39.65625,12.8125 L 46.5625,3.75 L 46.625,1.34375 L 35.46875,1.34375 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.21348314;fill:#3465a4;fill-opacity:1;stroke:url(#linearGradient13684);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13676" />
+    </g>
+    <g
+       transform="matrix(0.567849,0,0,0.567849,7.284268,18.44895)"
+       id="g13694">
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.790599 L 
34.475371,16.790599 L 34.475371,16.203791 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 
L 46.988468,0.97041721 L 46.925968,3.8880343 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:3.52206182;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Segoe"
+         id="path13696" />
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721"
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13698" />
+      <path
+         d="M 35.46875,1.34375 L 35.40625,3.59375 L 43.40625,3.59375 C 43.542681,3.6020985 
43.663766,3.6840106 43.722279,3.8075389 C 43.780792,3.9310671 43.767467,4.0766473 43.6875,4.1875 L 
34.84375,15.53125 L 34.84375,15.65625 L 46.6875,15.65625 L 46.6875,13.40625 L 39.96875,13.40625 C 
39.826696,13.409243 39.695149,13.331702 39.628973,13.205968 C 39.562797,13.080234 39.573358,12.9279 
39.65625,12.8125 L 46.5625,3.75 L 46.625,1.34375 L 35.46875,1.34375 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.21348314;fill:#3465a4;fill-opacity:1;stroke:url(#linearGradient13702);stroke-width:1.76103091px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13700" />
+    </g>
+  </g>
+</svg>
diff --git a/inhibit/icons/scalable/status/Makefile.am b/inhibit/icons/scalable/status/Makefile.am
new file mode 100644
index 0000000..bba1f75
--- /dev/null
+++ b/inhibit/icons/scalable/status/Makefile.am
@@ -0,0 +1,19 @@
+themedir = $(pkgdatadir)/icons/hicolor
+size = scalable
+context = status
+
+iconsdir = $(themedir)/$(size)/$(context)
+
+
+icons_DATA =                           \
+       gpm-inhibit.svg                 \
+       gpm-inhibit-invalid.svg         \
+       gpm-uninhibit.svg
+
+noinst_DATA =
+
+EXTRA_DIST =           \
+       $(icons_DATA)   \
+       $(noinst_DATA)
+
+-include $(top_srcdir)/git.mk
diff --git a/inhibit/icons/scalable/status/gpm-inhibit-invalid.svg 
b/inhibit/icons/scalable/status/gpm-inhibit-invalid.svg
new file mode 100644
index 0000000..92909ee
--- /dev/null
+++ b/inhibit/icons/scalable/status/gpm-inhibit-invalid.svg
@@ -0,0 +1,376 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   version="1.0"
+   width="48"
+   height="48"
+   id="svg1306">
+  <defs
+     id="defs1308">
+    <linearGradient
+       x1="40.546875"
+       y1="1.125"
+       x2="47.375"
+       y2="37.75"
+       id="linearGradient13684"
+       xlink:href="#linearGradient13678"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient13678">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop13680" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop13682" />
+    </linearGradient>
+    <linearGradient
+       x1="40.546875"
+       y1="1.125"
+       x2="47.375"
+       y2="37.75"
+       id="linearGradient13702"
+       xlink:href="#linearGradient13678"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient4184">
+      <stop
+         style="stop-color:#838383;stop-opacity:1"
+         offset="0"
+         id="stop4186" />
+      <stop
+         style="stop-color:#bbbbbb;stop-opacity:0"
+         offset="1"
+         id="stop4188" />
+    </linearGradient>
+    <linearGradient
+       x1="7.0625"
+       y1="35.28125"
+       x2="24.6875"
+       y2="35.28125"
+       id="linearGradient4209"
+       xlink:href="#linearGradient4184"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.673759,0,0,1.084542,6.241576,-3.24763)" />
+    <linearGradient
+       id="linearGradient4236">
+      <stop
+         style="stop-color:#eeeeee;stop-opacity:1"
+         offset="0"
+         id="stop4238" />
+      <stop
+         style="stop-color:#eeeeee;stop-opacity:0"
+         offset="1"
+         id="stop4240" />
+    </linearGradient>
+    <linearGradient
+       x1="12.277412"
+       y1="37.205811"
+       x2="12.221823"
+       y2="33.758667"
+       id="linearGradient4242"
+       xlink:href="#linearGradient4236"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.084542,3.204508,-1.842482)" />
+    <linearGradient
+       id="linearGradient2212">
+      <stop
+         style="stop-color:#2e3436;stop-opacity:1"
+         offset="0"
+         id="stop2214" />
+      <stop
+         style="stop-color:#2e3436;stop-opacity:0"
+         offset="1"
+         id="stop2216" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2187">
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="0"
+         id="stop2189" />
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="1"
+         id="stop2191" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2179">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop2181" />
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="1"
+         id="stop2183" />
+    </linearGradient>
+    <radialGradient
+       cx="23.098124"
+       cy="34.511105"
+       r="20.657619"
+       fx="23.098124"
+       fy="34.511105"
+       id="radialGradient4460"
+       xlink:href="#linearGradient2212"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.987016,-3.036258e-7,1.235702e-7,0.154497,0.46639,29.0816)" />
+    <linearGradient
+       x1="32.57143"
+       y1="32.428574"
+       x2="19.499998"
+       y2="22.357141"
+       id="linearGradient4462"
+       xlink:href="#linearGradient2187"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.885726,1.000008,10.98679)" />
+    <linearGradient
+       x1="22.5"
+       y1="18"
+       x2="25.642859"
+       y2="19.285715"
+       id="linearGradient4466"
+       xlink:href="#linearGradient2179"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.000008,9.940941)" />
+    <linearGradient
+       id="linearGradient2479">
+      <stop
+         style="stop-color:#ffe69b;stop-opacity:1"
+         offset="0"
+         id="stop2481" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="1"
+         id="stop2483" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2536">
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="0"
+         id="stop2538" />
+      <stop
+         style="stop-color:#ff1717;stop-opacity:1"
+         offset="1"
+         id="stop2540" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient3957">
+      <stop
+         style="stop-color:#fffeff;stop-opacity:0.33333334"
+         offset="0"
+         id="stop3959" />
+      <stop
+         style="stop-color:#fffeff;stop-opacity:0.21568628"
+         offset="1"
+         id="stop3961" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5152">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop5154" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop5156" />
+    </linearGradient>
+    <linearGradient
+       x1="23.28125"
+       y1="21.40625"
+       x2="21.78125"
+       y2="55.90625"
+       id="linearGradient2658"
+       xlink:href="#linearGradient5152"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="36.917976"
+       y1="66.288063"
+       x2="19.071495"
+       y2="5.5410109"
+       id="linearGradient2703"
+       xlink:href="#linearGradient2536"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="43.93581"
+       y1="53.835983"
+       x2="20.064686"
+       y2="-8.5626707"
+       id="linearGradient2705"
+       xlink:href="#linearGradient2479"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       x1="21.993773"
+       y1="33.955299"
+       x2="20.917078"
+       y2="15.814602"
+       id="linearGradient2707"
+       xlink:href="#linearGradient3957"
+       gradientUnits="userSpaceOnUse" />
+  </defs>
+  <g
+     id="layer1">
+    <path
+       d="M 44.951788 34.413448 A 20.657619 3.5860415 0 1 1  3.636549,34.413448 A 20.657619 3.5860415 0 1 1  
44.951788 34.413448 z"
+       transform="matrix(1.064982,0,0,2.667528,-0.872845,-54.3647)"
+       
style="opacity:0.74731182;fill:url(#radialGradient4460);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2210" />
+    <path
+       d="M 11.595947,16.530688 L 38.476667,16.553056 L 42.492024,29.64558 L 42.517278,38.801506 C 
42.517278,40.796839 41.565961,41.523596 39.456617,41.523596 L 10.432307,41.557148 C 8.2441489,41.557148 
7.4776109,40.797782 7.4776109,38.689134 L 7.5028649,29.7015 L 11.595947,16.530688 z "
+       
style="fill:url(#linearGradient4462);fill-opacity:1;fill-rule:evenodd;stroke:#686a65;stroke-width:1.00000012px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
+       id="path1417" />
+    <path
+       d="M 8.0000079,29.940941 L 41.849754,30.040687 L 37.416007,17.897602 L 12.44195,17.98599 L 
8.0000079,29.940941 z "
+       
style="fill:url(#linearGradient4466);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path2159" />
+    <path
+       d="M 12.189025,17.505341 L 37.778261,17.461116 L 41.51435,30.089316 L 41.501723,38.761393 C 
41.501723,39.868144 41.089891,40.551146 39.608779,40.551146 L 10.336991,40.562202 C 9.105851,40.562202 
8.5348099,40.200944 8.5348099,38.841913 L 8.4969289,30.064124 L 12.189025,17.505341 z "
+       
style="opacity:0.61538463;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path2157" />
+    <rect
+       width="11.875"
+       height="6.0327663"
+       x="11"
+       y="32"
+       
style="opacity:1;color:#000000;fill:url(#linearGradient4209);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.40899992;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       id="rect4174" />
+    <path
+       d="M 11.062502,38 C 11.062502,38 11.062502,33.649375 11.062502,33.649375 C 12.89803,37.09738 
19.358993,38 24,38 C 24,38 11.062502,38 11.062502,38 z "
+       
style="opacity:0.81142853;fill:url(#linearGradient4242);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4194" />
+    <path
+       d="M 29.5,32.559777 L 29.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4284" />
+    <path
+       d="M 31.5,32.559777 L 31.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4286" />
+    <path
+       d="M 33.5,32.559777 L 33.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4288" />
+    <path
+       d="M 35.5,32.559777 L 35.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4290" />
+    <path
+       d="M 37.5,32.559777 L 37.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4292" />
+    <path
+       d="M 28.5,32.549899 L 28.5,37.570834"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4294" />
+    <path
+       d="M 30.5,32.609676 L 30.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4296" />
+    <path
+       d="M 32.5,32.609676 L 32.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4298" />
+    <path
+       d="M 34.5,32.609676 L 34.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4300" />
+    <path
+       d="M 36.5,32.609676 L 36.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4302" />
+    <path
+       d="M 10,32.001126 L 10,38 L 22.5625,38 L 10.34375,37.627189 L 10,32.001126 z "
+       
style="opacity:0.18681317;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4572" />
+    <g
+       transform="translate(-2.336444,2.090765)"
+       id="g13689">
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721 L 46.925968,3.8880343 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Segoe"
+         id="path13687" />
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721"
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="text12733" />
+      <path
+         d="M 35.46875,1.34375 L 35.40625,3.59375 L 43.40625,3.59375 C 43.542681,3.6020985 
43.663766,3.6840106 43.722279,3.8075389 C 43.780792,3.9310671 43.767467,4.0766473 43.6875,4.1875 L 
34.84375,15.53125 L 34.84375,15.65625 L 46.6875,15.65625 L 46.6875,13.40625 L 39.96875,13.40625 C 
39.826696,13.409243 39.695149,13.331702 39.628973,13.205968 C 39.562797,13.080234 39.573358,12.9279 
39.65625,12.8125 L 46.5625,3.75 L 46.625,1.34375 L 35.46875,1.34375 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.21348314;fill:#3465a4;fill-opacity:1;stroke:url(#linearGradient13684);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13676" />
+    </g>
+    <g
+       transform="matrix(0.567849,0,0,0.567849,1.423195,14.55986)"
+       id="g13694">
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.790599 L 
34.475371,16.790599 L 34.475371,16.203791 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 
L 46.988468,0.97041721 L 46.925968,3.8880343 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:3.52206182;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Segoe"
+         id="path13696" />
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721"
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13698" />
+      <path
+         d="M 35.46875,1.34375 L 35.40625,3.59375 L 43.40625,3.59375 C 43.542681,3.6020985 
43.663766,3.6840106 43.722279,3.8075389 C 43.780792,3.9310671 43.767467,4.0766473 43.6875,4.1875 L 
34.84375,15.53125 L 34.84375,15.65625 L 46.6875,15.65625 L 46.6875,13.40625 L 39.96875,13.40625 C 
39.826696,13.409243 39.695149,13.331702 39.628973,13.205968 C 39.562797,13.080234 39.573358,12.9279 
39.65625,12.8125 L 46.5625,3.75 L 46.625,1.34375 L 35.46875,1.34375 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.21348314;fill:#3465a4;fill-opacity:1;stroke:url(#linearGradient13702);stroke-width:1.76103091px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13700" />
+    </g>
+    <path
+       d="M -58.90625,11.03125 C -59.19669,11.039977 -59.53125,11.157646 -59.53125,11.875 L -59.53125,17 C 
-59.530637,17.436942 -59.849355,17.808779 -60.28125,17.875 C -62.686591,18.209506 -64.879883,19.20144 
-66.6875,20.65625 C -67.040291,20.944557 -67.554423,20.917498 -67.875,20.59375 L -71.59375,16.875 C 
-72.317254,16.151495 -72.633989,16.349563 -72.78125,16.5 C -72.928511,16.650437 -73.133168,17.023081 
-72.4375,17.71875 L -68.71875,21.4375 C -68.395002,21.758077 -68.367943,22.272209 -68.65625,22.625 C 
-70.115293,24.421601 -71.095941,26.598194 -71.4375,29 C -71.503721,29.431895 -71.875558,29.750613 
-72.3125,29.75 L -77.4375,29.75 C -77.964654,29.75 -78.246728,29.88919 -78.375,30 C -78.503272,30.11081 
-78.505114,30.199742 -78.5,30.3125 C -78.489772,30.538017 -78.322529,30.96875 -77.4375,30.96875 L 
-72.40625,30.96875 C -71.948096,30.971901 -71.568283,31.324585 -71.53125,31.78125 C -71.34994,34.320481 
-70.451074,36.625967 -69.03125,38.5625 C -68.769871,38.917391 -68.809862,3
 9.410604 -69.125,39.71875 L -72.4375,43.03125 C -72.770294,43.364044 -72.836029,43.622379 -72.84375,43.78125 
C -72.851471,43.940121 -72.809635,44.039621 -72.71875,44.125 C -72.536981,44.295758 -72.175223,44.456473 
-71.59375,43.875 L -68.40625,40.6875 C -68.073314,40.353794 -67.5371,40.340045 -67.1875,40.65625 C 
-65.301494,42.336066 -62.916927,43.449024 -60.28125,43.8125 C -59.849355,43.878721 -59.530637,44.250558 
-59.53125,44.6875 L -59.53125,48.875 C -59.531249,49.871884 -59.121391,49.96859 -58.90625,49.96875 C 
-58.691109,49.96891 -58.3125,49.874638 -58.3125,48.875 L -58.3125,44.8125 C -58.309349,44.354346 
-57.956665,43.974533 -57.5,43.9375 C -54.759458,43.737971 -52.272336,42.667378 -50.25,41.03125 C 
-49.897209,40.742943 -49.383077,40.770002 -49.0625,41.09375 L -46.28125,43.875 C -46.270575,43.885155 
-46.260155,43.895575 -46.25,43.90625 C -45.773667,44.438621 -45.477416,44.276373 -45.25,44.0625 C 
-45.136292,43.955563 -45.061078,43.833114 -45.0625,43.6875 C -45.063922,43.54
 1886 -45.101963,43.351572 -45.40625,43.0625 C -45.416925,43.052345 -45.427345,43.041925 -45.4375,43.03125 L 
-48.21875,40.25 C -48.542498,39.929423 -48.569557,39.415291 -48.28125,39.0625 C -46.640647,37.032854 
-45.602204,34.542599 -45.40625,31.78125 C -45.369217,31.324585 -44.989404,30.971901 -44.53125,30.96875 L 
-40.4375,30.96875 C -39.84992,30.96875 -39.701727,30.625331 -39.6875,30.3125 C -39.680386,30.156084 
-39.726586,30.027052 -39.8125,29.9375 C -39.898414,29.847948 -40.051022,29.75 -40.4375,29.75 L -44.625,29.75 
C -45.061942,29.750613 -45.433779,29.431895 -45.5,29 C -45.867584,26.376403 -46.9819,24.004866 
-48.65625,22.125 C -48.972455,21.7754 -48.958706,21.239186 -48.625,20.90625 L -45.46875,17.75 C 
-45.453451,17.733002 -45.451715,17.735185 -45.4375,17.71875 C -44.926604,17.128069 -45.104678,16.884141 
-45.28125,16.71875 C -45.462735,16.548757 -45.787839,16.410737 -46.3125,16.90625 L -49.59375,20.1875 C 
-49.901896,20.502638 -50.395109,20.542629 -50.75,20.28125 C -52.6795
 89,18.866515 -54.97243,17.967355 -57.5,17.78125 C -57.956665,17.744217 -58.309349,17.364404 
-58.3125,16.90625 L -58.3125,11.875 C -58.3125,11.464956 -58.429033,11.290076 -58.53125,11.1875 C 
-58.633467,11.084924 -58.761031,11.026886 -58.90625,11.03125 z "
+       transform="translate(-83.97077,6.3456611)"
+       
style="opacity:0.64606742;color:#000000;fill:none;fill-opacity:1;fill-rule:evenodd;stroke:url(#linearGradient2658);stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       id="path5150" />
+    <g
+       transform="matrix(0.906044,0,0,0.906044,-45.916135,5.4035841)"
+       id="g11350">
+      <g
+         transform="matrix(0.50181,0,0,0.50181,77.515538,19.216431)"
+         id="g1491">
+        <g
+           id="g1493" />
+        <g
+           id="g11312">
+          <g
+             id="g4006">
+            <path
+               d="M 46.857143 23.928572 A 23.357143 23.357143 0 1 1  0.1428566,23.928572 A 23.357143 
23.357143 0 1 1  46.857143 23.928572 z"
+               transform="matrix(0.920488,0,0,0.920488,2.368532,0.97408)"
+               
style="fill:url(#linearGradient2703);fill-opacity:1;fill-rule:nonzero;stroke:#b20000;stroke-width:2.16492105;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+               id="path1314" />
+            <path
+               d="M 49.901535 26.635273 A 23.991123 23.991123 0 1 1  1.9192886,26.635273 A 23.991123 
23.991123 0 1 1  49.901535 26.635273 z"
+               transform="matrix(0.804178,0,0,0.804178,3.163406,1.58053)"
+               
style="opacity:0.34659089;fill:#cc0000;fill-opacity:0;stroke:url(#linearGradient2705);stroke-width:2.47803497;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
+               id="path3560" />
+          </g>
+        </g>
+        <g
+           id="layer3">
+          <path
+             d="M 21.158162,27.488536 L 20.704556,6.8863757 L 26.590888,6.8863757 L 26.202083,27.488536 L 
21.158162,27.488536 z "
+             
style="fill:#efefef;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:0.73876643;stroke-miterlimit:4;stroke-opacity:0.8627451"
+             id="rect2070" />
+        </g>
+        <g
+           id="layer4">
+          <path
+             d="M 43.370686,21.715486 C 43.370686,32.546102 33.016357,15.449178 24.695948,22.101874 C 
16.569626,28.599385 4.0989837,34.292422 4.0989837,23.461806 C 4.0989837,12.377753 12.79438,2.0948032 
23.625,2.0948032 C 34.455619,2.0948032 43.370686,10.884868 43.370686,21.715486 z "
+             transform="matrix(1.002994,0,0,1.002994,-7.185874e-2,1.968356e-2)"
+             
style="fill:url(#linearGradient2707);fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+             id="path3955" />
+        </g>
+      </g>
+      <path
+         d="M 35.797279 38.542446 A 1.8561553 1.8561553 0 1 1  32.084969,38.542446 A 1.8561553 1.8561553 0 1 
1  35.797279 38.542446 z"
+         transform="translate(55.52947,-2.387226)"
+         
style="color:#000000;fill:#efefef;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+         id="path4327" />
+    </g>
+  </g>
+</svg>
diff --git a/inhibit/icons/scalable/status/gpm-inhibit.svg b/inhibit/icons/scalable/status/gpm-inhibit.svg
new file mode 100644
index 0000000..218da94
--- /dev/null
+++ b/inhibit/icons/scalable/status/gpm-inhibit.svg
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   version="1.0"
+   width="48"
+   height="48"
+   id="svg3089">
+  <defs
+     id="defs3091">
+    <linearGradient
+       id="linearGradient2982">
+      <stop
+         style="stop-color:#8db1d8;stop-opacity:1"
+         offset="0"
+         id="stop2984" />
+      <stop
+         style="stop-color:#3465a4;stop-opacity:1"
+         offset="1"
+         id="stop2986" />
+    </linearGradient>
+    <linearGradient
+       x1="40.416721"
+       y1="1.9139081"
+       x2="46.404255"
+       y2="9.2939177"
+       id="linearGradient1979"
+       xlink:href="#linearGradient2982"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="scale(1.032655,0.968377)" />
+    <linearGradient
+       id="linearGradient2854">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop2856" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop2858" />
+    </linearGradient>
+    <linearGradient
+       x1="27.625"
+       y1="23.25"
+       x2="27.363037"
+       y2="0.5"
+       id="linearGradient2860"
+       xlink:href="#linearGradient2854"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-60,1)" />
+    <linearGradient
+       id="linearGradient2862">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop2864" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop2866" />
+    </linearGradient>
+    <linearGradient
+       x1="14"
+       y1="34"
+       x2="20.636963"
+       y2="8.25"
+       id="linearGradient2868"
+       xlink:href="#linearGradient2862"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-60,1)" />
+    <linearGradient
+       id="linearGradient2921">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop2923" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop2925" />
+    </linearGradient>
+    <linearGradient
+       x1="23.276466"
+       y1="21.037874"
+       x2="16.77494"
+       y2="5.2555733"
+       id="linearGradient2927"
+       xlink:href="#linearGradient2921"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-60,1)" />
+    <linearGradient
+       id="linearGradient2986">
+      <stop
+         style="stop-color:#a40000;stop-opacity:1"
+         offset="0"
+         id="stop2988" />
+      <stop
+         style="stop-color:#690000;stop-opacity:1"
+         offset="1"
+         id="stop2990" />
+    </linearGradient>
+    <linearGradient
+       x1="41.185291"
+       y1="16.25"
+       x2="43.331738"
+       y2="37.5"
+       id="linearGradient2892"
+       xlink:href="#linearGradient2986"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-60,1)" />
+    <linearGradient
+       id="linearGradient2788">
+      <stop
+         style="stop-color:#f67f7f;stop-opacity:1"
+         offset="0"
+         id="stop2790" />
+      <stop
+         style="stop-color:#ef2929;stop-opacity:1"
+         offset="1"
+         id="stop2792" />
+    </linearGradient>
+    <linearGradient
+       x1="27.762564"
+       y1="71.519295"
+       x2="24"
+       y2="21.605078"
+       id="linearGradient2884"
+       xlink:href="#linearGradient2788"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-60,1)" />
+    <linearGradient
+       x1="32.875"
+       y1="13.15625"
+       x2="31.59153"
+       y2="5.7135463"
+       id="linearGradient1981"
+       xlink:href="#linearGradient2967"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient2967">
+      <stop
+         style="stop-color:#729fcf;stop-opacity:1"
+         offset="0"
+         id="stop2969" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="1"
+         id="stop2971" />
+    </linearGradient>
+    <linearGradient
+       x1="17.763865"
+       y1="4.5018396"
+       x2="16"
+       y2="-1.7008253"
+       id="linearGradient2900"
+       xlink:href="#linearGradient2967"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-57,26)" />
+    <linearGradient
+       id="linearGradient2891">
+      <stop
+         style="stop-color:#000000;stop-opacity:1"
+         offset="0"
+         id="stop2893" />
+      <stop
+         style="stop-color:#000000;stop-opacity:0"
+         offset="1"
+         id="stop2895" />
+    </linearGradient>
+    <radialGradient
+       cx="11"
+       cy="19"
+       r="10.5"
+       fx="11"
+       fy="19"
+       id="radialGradient2896"
+       xlink:href="#linearGradient2891"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.238095,0,14.47619)" />
+  </defs>
+  <g
+     id="layer1">
+    <g
+       transform="translate(60,-1.000007)"
+       id="g2013">
+      <path
+         d="M 21.5 19 A 10.5 2.5 0 1 1  0.5,19 A 10.5 2.5 0 1 1  21.5 19 z"
+         transform="matrix(2.095238,0,0,2.6,-59.04762,-7.899993)"
+         
style="opacity:0.3;fill:url(#radialGradient2896);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path2894" />
+      <path
+         d="M -40.5,26.5 L -40.5,28.5 L -38.5,28.5 L -40.5,31 L -40.5,32.5 L -35.5,32.5 L -35.5,30.5 L 
-37.5,30.5 L -35.5,28 L -35.5,26.5 L -40.5,26.5 z "
+         
style="fill:url(#linearGradient2900);fill-opacity:1;stroke:#1a3e71;stroke-width:1;stroke-linecap:round;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path2898" />
+      <g
+         transform="translate(-64,7)"
+         id="g1975">
+        <path
+           d="M 31,9 L 35.999995,9.000002 L 35.999995,10.053574 L 32.79543,14 L 36,14 L 35.999995,15.000004 
L 30.999995,15.000004 L 31,13.946429 L 34.210006,10.000002 L 31,10 L 31,9"
+           
style="font-size:11.05665684px;font-style:normal;font-weight:bold;fill:#729fcf;fill-opacity:1;stroke:#1a3e71;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Bitstream
 Vera Sans Mono"
+           id="path2946" />
+        <path
+           d="M 31,9 L 35.999995,9.000002 L 35.999995,10.053574 L 32.79543,14 L 36,14 L 35.999995,15.000004 
L 30.999995,15.000004 L 31,13.946429 L 34.210006,10.000002 L 31,10 L 31,9"
+           
style="font-size:11.05665684px;font-style:normal;font-weight:bold;fill:url(#linearGradient1981);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream
 Vera Sans Mono"
+           id="text2929" />
+      </g>
+      <path
+         d="M -36,3.5 C -47.315997,3.5 -56.5,12.683996 -56.5,24 C -56.5,35.316004 -47.315998,44.5 -36,44.5 C 
-24.684003,44.5 -15.5,35.316004 -15.5,24 C -15.5,12.683996 -24.684003,3.5 -36,3.5 z M -36,10.5 C 
-28.547988,10.5 -22.5,16.547989 -22.5,24 C -22.499999,26.460112 -23.161315,28.763003 -24.3125,30.75 L 
-42.75,12.3125 C -40.763003,11.161315 -38.460112,10.5 -36,10.5 z M -47.6875,17.25 L -29.25,35.6875 C 
-31.236997,36.838685 -33.539888,37.5 -36,37.5 C -43.452011,37.499999 -49.5,31.452011 -49.5,24 C 
-49.5,21.539888 -48.838685,19.236997 -47.6875,17.25 z "
+         
style="opacity:1;fill:url(#linearGradient2884);fill-opacity:1;stroke:url(#linearGradient2892);stroke-width:1;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path1937" />
+      <path
+         d="M -36,4 C -47.046768,4 -56,12.953225 -56,24 C -56,24.959954 -55.943218,25.888666 
-55.8125,26.8125 C -54.026413,29.505858 -51.431424,30.500603 -48.40625,30.5 C -49.431719,28.554625 
-50,26.34827 -50,24 C -50,21.450714 -49.318348,19.059772 -48.125,17 C -48.047062,16.861595 
-47.907735,16.76871 -47.75,16.75 C -47.597778,16.736961 -47.448002,16.794567 -47.34375,16.90625 L -36.75,27.5 
C -34.723835,26.67689 -32.744082,25.818859 -30.78125,24.96875 L -43.09375,12.65625 C -43.203339,12.54817 
-43.268339,12.402822 -43.25,12.25 C -43.231662,12.097178 -43.132048,11.954083 -43,11.875 C 
-40.940228,10.681652 -38.549286,10 -36,10 C -29.035568,9.9999996 -23.255791,15.113784 -22.1875,21.78125 C 
-19.53273,21.146135 -17.397421,21.224034 -16.0625,22.59375 C -16.786977,12.20618 -25.428066,4 -36,4 z "
+         
style="opacity:0.25;fill:url(#linearGradient2927);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path2912" />
+      <path
+         d="M -35.999988,4.500001 C -46.763991,4.500001 -55.499998,13.236002 -55.499998,24.000011 C 
-55.499998,34.76402 -46.763992,43.500021 -35.999988,43.500021 C -25.235985,43.500021 -16.499978,34.76402 
-16.499978,24.000011 C -16.499978,13.236002 -25.235985,4.500001 -35.999988,4.500001 z "
+         
style="opacity:0.7;fill:none;fill-opacity:1;stroke:#ffffff;stroke-width:1.00000048;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+         id="path2841" />
+      <path
+         d="M -47.84375,16.25 C -47.523667,16.195406 -47.197077,16.300381 -46.96875,16.53125 L 
-28.53125,34.96875 C -28.302052,35.189305 -28.192078,35.506125 -28.23533,35.821254 C -28.278583,36.136382 
-28.469853,36.411855 -28.75,36.5625 C -30.882548,37.798011 -33.361541,38.5 -36,38.5 C -43.990467,38.499999 
-50.5,31.990467 -50.5,24 C -50.5,21.361541 -49.798011,18.882548 -48.5625,16.75 C -48.413028,16.481243 
-48.147713,16.296676 -47.84375,16.25 L -47.84375,16.25 z "
+         
style="opacity:0.7;fill:none;fill-opacity:1;stroke:url(#linearGradient2868);stroke-width:1;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+         id="path2847" />
+      <path
+         d="M -36,9.5 C -28.009532,9.4999996 -21.5,16.009533 -21.5,24 C -21.499999,26.63846 
-22.201989,29.117452 -23.4375,31.25 C -23.588145,31.530147 -23.863618,31.721417 -24.178746,31.76467 C 
-24.493875,31.807922 -24.810695,31.697948 -25.03125,31.46875 L -43.46875,13.03125 C -43.697948,12.810695 
-43.807922,12.493875 -43.76467,12.178746 C -43.721417,11.863618 -43.530147,11.588145 -43.25,11.4375 C 
-41.117452,10.201989 -38.638459,9.5 -36,9.5 z "
+         
style="opacity:0.7;fill:none;fill-opacity:1;stroke:url(#linearGradient2860);stroke-width:1;stroke-linecap:square;stroke-linejoin:round;stroke-miterlimit:4;stroke-dashoffset:0;stroke-opacity:1"
+         id="path2850" />
+      <g
+         transform="translate(-64,7)"
+         id="g1967">
+        <path
+           d="M 40,1 L 47.000003,0.99999935 L 47.005991,3.0714286 L 43,7 L 47,7 L 47.000003,9.0000161 L 
39.999984,9.0000161 L 39.999982,6.9285713 L 44,3 L 40.005989,3.0000007 L 40,1"
+           
style="font-size:15.10630894px;font-style:normal;font-weight:bold;fill:#729fcf;fill-opacity:1;stroke:#1a3e71;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Bitstream
 Vera Sans Mono"
+           id="path2949" />
+        <path
+           d="M 40,1 L 47.000003,0.99999935 L 47.005991,3.0714286 L 43,7 L 47,7 L 47.000003,9.0000161 L 
39.999984,9.0000161 L 39.999982,6.9285713 L 44,3 L 40.005989,3.0000007 L 40,1"
+           
style="font-size:15.10630894px;font-style:normal;font-weight:bold;fill:url(#linearGradient1979);fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Bitstream
 Vera Sans Mono"
+           id="text2933" />
+        <g
+           style="opacity:0.5"
+           id="g3008">
+          <path
+             d="M 40.5,2.5 L 40.5,1.5 L 46.5,1.5"
+             
style="opacity:1;fill:none;fill-rule:evenodd;stroke:#ffffff;stroke-width:1px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+             id="path2951" />
+          <path
+             d="M 43.0625,7 C 42.786358,7.0258883 42.583487,7.2707326 42.609375,7.546875 C 
42.635263,7.8230174 42.880108,8.0258883 43.15625,8 L 47,8 L 47,7 L 43.15625,7 C 43.125069,6.9970641 
43.093681,6.9970641 43.0625,7 z "
+             
style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+             id="path2953" />
+          <path
+             d="M 44.09375,3 C 44.007938,3.0311398 43.932288,3.0851759 43.875,3.15625 L 40.15625,6.78125 L 
40,6.9375 L 40,7.15625 L 40,9 L 41,9 L 41,7.34375 L 44.5625,3.84375 C 44.724254,3.6862744 44.760437,3.4399497 
44.650803,3.2426093 C 44.54117,3.0452688 44.31291,2.9458567 44.09375,3 L 44.09375,3 z "
+             
style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:round;stroke-linejoin:miter;stroke-opacity:1"
+             id="path2955" />
+        </g>
+      </g>
+    </g>
+  </g>
+</svg>
diff --git a/inhibit/icons/scalable/status/gpm-uninhibit.svg b/inhibit/icons/scalable/status/gpm-uninhibit.svg
new file mode 100644
index 0000000..ececcd3
--- /dev/null
+++ b/inhibit/icons/scalable/status/gpm-uninhibit.svg
@@ -0,0 +1,249 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+<svg
+   xmlns:svg="http://www.w3.org/2000/svg";
+   xmlns="http://www.w3.org/2000/svg";
+   xmlns:xlink="http://www.w3.org/1999/xlink";
+   version="1.0"
+   width="48"
+   height="48"
+   id="svg1306">
+  <defs
+     id="defs1308">
+    <linearGradient
+       x1="40.546875"
+       y1="1.125"
+       x2="47.375"
+       y2="37.75"
+       id="linearGradient13684"
+       xlink:href="#linearGradient13678"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient13678">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop13680" />
+      <stop
+         style="stop-color:#ffffff;stop-opacity:0"
+         offset="1"
+         id="stop13682" />
+    </linearGradient>
+    <linearGradient
+       x1="40.546875"
+       y1="1.125"
+       x2="47.375"
+       y2="37.75"
+       id="linearGradient13702"
+       xlink:href="#linearGradient13678"
+       gradientUnits="userSpaceOnUse" />
+    <linearGradient
+       id="linearGradient4184">
+      <stop
+         style="stop-color:#838383;stop-opacity:1"
+         offset="0"
+         id="stop4186" />
+      <stop
+         style="stop-color:#bbbbbb;stop-opacity:0"
+         offset="1"
+         id="stop4188" />
+    </linearGradient>
+    <linearGradient
+       x1="7.0625"
+       y1="35.28125"
+       x2="24.6875"
+       y2="35.28125"
+       id="linearGradient4209"
+       xlink:href="#linearGradient4184"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.673759,0,0,1.084542,6.241576,-3.24763)" />
+    <linearGradient
+       id="linearGradient4236">
+      <stop
+         style="stop-color:#eeeeee;stop-opacity:1"
+         offset="0"
+         id="stop4238" />
+      <stop
+         style="stop-color:#eeeeee;stop-opacity:0"
+         offset="1"
+         id="stop4240" />
+    </linearGradient>
+    <linearGradient
+       x1="12.277412"
+       y1="37.205811"
+       x2="12.221823"
+       y2="33.758667"
+       id="linearGradient4242"
+       xlink:href="#linearGradient4236"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,1.084542,3.204508,-1.842482)" />
+    <linearGradient
+       id="linearGradient2212">
+      <stop
+         style="stop-color:#2e3436;stop-opacity:1"
+         offset="0"
+         id="stop2214" />
+      <stop
+         style="stop-color:#2e3436;stop-opacity:0"
+         offset="1"
+         id="stop2216" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2187">
+      <stop
+         style="stop-color:#babdb6;stop-opacity:1"
+         offset="0"
+         id="stop2189" />
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="1"
+         id="stop2191" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient2179">
+      <stop
+         style="stop-color:#ffffff;stop-opacity:1"
+         offset="0"
+         id="stop2181" />
+      <stop
+         style="stop-color:#eeeeec;stop-opacity:1"
+         offset="1"
+         id="stop2183" />
+    </linearGradient>
+    <radialGradient
+       cx="23.098124"
+       cy="34.511105"
+       r="20.657619"
+       fx="23.098124"
+       fy="34.511105"
+       id="radialGradient4460"
+       xlink:href="#linearGradient2212"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.987016,-3.036258e-7,1.235702e-7,0.154497,0.46639,29.0816)" />
+    <linearGradient
+       x1="32.57143"
+       y1="32.428574"
+       x2="19.499998"
+       y2="22.357141"
+       id="linearGradient4462"
+       xlink:href="#linearGradient2187"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1,0,0,0.885726,1.000008,10.98679)" />
+    <linearGradient
+       x1="22.5"
+       y1="18"
+       x2="25.642859"
+       y2="19.285715"
+       id="linearGradient4466"
+       xlink:href="#linearGradient2179"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(1.000008,9.940941)" />
+  </defs>
+  <g
+     id="layer1">
+    <path
+       d="M 44.951788 34.413448 A 20.657619 3.5860415 0 1 1  3.636549,34.413448 A 20.657619 3.5860415 0 1 1  
44.951788 34.413448 z"
+       transform="matrix(1.064982,0,0,2.667528,-0.872845,-54.3647)"
+       
style="opacity:0.74731182;fill:url(#radialGradient4460);fill-opacity:1;stroke:none;stroke-width:1;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
+       id="path2210" />
+    <path
+       d="M 11.595947,16.530688 L 38.476667,16.553056 L 42.492024,29.64558 L 42.517278,38.801506 C 
42.517278,40.796839 41.565961,41.523596 39.456617,41.523596 L 10.432307,41.557148 C 8.2441489,41.557148 
7.4776109,40.797782 7.4776109,38.689134 L 7.5028649,29.7015 L 11.595947,16.530688 z "
+       
style="fill:url(#linearGradient4462);fill-opacity:1;fill-rule:evenodd;stroke:#686a65;stroke-width:1.00000012px;stroke-linecap:butt;stroke-linejoin:round;stroke-opacity:1"
+       id="path1417" />
+    <path
+       d="M 8.0000079,29.940941 L 41.849754,30.040687 L 37.416007,17.897602 L 12.44195,17.98599 L 
8.0000079,29.940941 z "
+       
style="fill:url(#linearGradient4466);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path2159" />
+    <path
+       d="M 12.189025,17.505341 L 37.778261,17.461116 L 41.51435,30.089316 L 41.501723,38.761393 C 
41.501723,39.868144 41.089891,40.551146 39.608779,40.551146 L 10.336991,40.562202 C 9.105851,40.562202 
8.5348099,40.200944 8.5348099,38.841913 L 8.4969289,30.064124 L 12.189025,17.505341 z "
+       
style="opacity:0.61538463;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path2157" />
+    <rect
+       width="11.875"
+       height="6.0327663"
+       x="11"
+       y="32"
+       
style="opacity:1;color:#000000;fill:url(#linearGradient4209);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.40899992;stroke-linecap:round;stroke-linejoin:round;marker:none;marker-start:none;marker-mid:none;marker-end:none;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;visibility:visible;display:inline;overflow:visible"
+       id="rect4174" />
+    <path
+       d="M 11.062502,38 C 11.062502,38 11.062502,33.649375 11.062502,33.649375 C 12.89803,37.09738 
19.358993,38 24,38 C 24,38 11.062502,38 11.062502,38 z "
+       
style="opacity:0.81142853;fill:url(#linearGradient4242);fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4194" />
+    <path
+       d="M 29.5,32.559777 L 29.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4284" />
+    <path
+       d="M 31.5,32.559777 L 31.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4286" />
+    <path
+       d="M 33.5,32.559777 L 33.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4288" />
+    <path
+       d="M 35.5,32.559777 L 35.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4290" />
+    <path
+       d="M 37.5,32.559777 L 37.5,37.580712"
+       
style="fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#ffffff;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:0.42372885"
+       id="path4292" />
+    <path
+       d="M 28.5,32.549899 L 28.5,37.570834"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4294" />
+    <path
+       d="M 30.5,32.609676 L 30.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4296" />
+    <path
+       d="M 32.5,32.609676 L 32.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4298" />
+    <path
+       d="M 34.5,32.609676 L 34.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4300" />
+    <path
+       d="M 36.5,32.609676 L 36.5,37.630611"
+       
style="opacity:0.09714284;fill:none;fill-opacity:0.75;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000048px;stroke-linecap:square;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4302" />
+    <path
+       d="M 10,32.001126 L 10,38 L 22.5625,38 L 10.34375,37.627189 L 10,32.001126 z "
+       
style="opacity:0.18681317;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
+       id="path4572" />
+    <g
+       transform="translate(-2.336444,2.090765)"
+       id="g13689">
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721 L 46.925968,3.8880343 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Segoe"
+         id="path13687" />
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721"
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="text12733" />
+      <path
+         d="M 35.46875,1.34375 L 35.40625,3.59375 L 43.40625,3.59375 C 43.542681,3.6020985 
43.663766,3.6840106 43.722279,3.8075389 C 43.780792,3.9310671 43.767467,4.0766473 43.6875,4.1875 L 
34.84375,15.53125 L 34.84375,15.65625 L 46.6875,15.65625 L 46.6875,13.40625 L 39.96875,13.40625 C 
39.826696,13.409243 39.695149,13.331702 39.628973,13.205968 C 39.562797,13.080234 39.573358,12.9279 
39.65625,12.8125 L 46.5625,3.75 L 46.625,1.34375 L 35.46875,1.34375 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.21348314;fill:#3465a4;fill-opacity:1;stroke:url(#linearGradient13684);stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13676" />
+    </g>
+    <g
+       transform="matrix(0.567849,0,0,0.567849,1.423195,14.55986)"
+       id="g13694">
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.790599 L 
34.475371,16.790599 L 34.475371,16.203791 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 
L 46.988468,0.97041721 L 46.925968,3.8880343 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:#204a87;stroke-width:3.52206182;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;font-family:Segoe"
+         id="path13696" />
+      <path
+         d="M 46.925968,3.8880343 L 39.95384,13.020388 L 47.047248,13.020388 L 47.047248,16.020148 L 
34.475371,16.020148 L 34.475371,15.43334 L 43.399686,3.9716929 L 35.015933,3.9716929 L 35.078433,0.97041721 L 
46.988468,0.97041721"
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#3465a4;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13698" />
+      <path
+         d="M 35.46875,1.34375 L 35.40625,3.59375 L 43.40625,3.59375 C 43.542681,3.6020985 
43.663766,3.6840106 43.722279,3.8075389 C 43.780792,3.9310671 43.767467,4.0766473 43.6875,4.1875 L 
34.84375,15.53125 L 34.84375,15.65625 L 46.6875,15.65625 L 46.6875,13.40625 L 39.96875,13.40625 C 
39.826696,13.409243 39.695149,13.331702 39.628973,13.205968 C 39.562797,13.080234 39.573358,12.9279 
39.65625,12.8125 L 46.5625,3.75 L 46.625,1.34375 L 35.46875,1.34375 z "
+         
style="font-size:10px;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;line-height:100%;writing-mode:lr-tb;text-anchor:start;opacity:0.21348314;fill:#3465a4;fill-opacity:1;stroke:url(#linearGradient13702);stroke-width:1.76103091px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-family:Segoe"
+         id="path13700" />
+    </g>
+  </g>
+</svg>
diff --git a/inhibit/inhibit-applet-menu.xml b/inhibit/inhibit-applet-menu.xml
new file mode 100644
index 0000000..2e06182
--- /dev/null
+++ b/inhibit/inhibit-applet-menu.xml
@@ -0,0 +1,6 @@
+<section>
+       <item>
+               <attribute name="label" translatable="yes">_About</attribute>
+               <attribute name="action">inhibit.about</attribute>
+       </item>
+</section>
diff --git a/inhibit/inhibit-applet.c b/inhibit/inhibit-applet.c
new file mode 100644
index 0000000..9525dec
--- /dev/null
+++ b/inhibit/inhibit-applet.c
@@ -0,0 +1,528 @@
+/* -*- Mode: C; tab-width: 8; indent-tabs-mode: t; c-basic-offset: 8 -*-
+ *
+ * Inhibit Applet
+ * Copyright (C) 2006 Benjamin Canou <bookeldor gmail com>
+ * Copyright (C) 2006-2009 Richard Hughes <richard hughsie com>
+ *
+ * Licensed under the GNU General Public License Version 2
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#ifdef HAVE_CONFIG_H
+#  include <config.h>
+#endif
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <panel-applet.h>
+#include <gtk/gtk.h>
+#include <glib-object.h>
+#include <glib/gi18n.h>
+#include <dbus/dbus-glib.h>
+
+#define GPM_TYPE_INHIBIT_APPLET                (gpm_inhibit_applet_get_type ())
+#define GPM_INHIBIT_APPLET(o)          (G_TYPE_CHECK_INSTANCE_CAST ((o), GPM_TYPE_INHIBIT_APPLET, 
GpmInhibitApplet))
+#define GPM_INHIBIT_APPLET_CLASS(k)    (G_TYPE_CHECK_CLASS_CAST((k), GPM_TYPE_INHIBIT_APPLET, 
GpmInhibitAppletClass))
+#define GPM_IS_INHIBIT_APPLET(o)       (G_TYPE_CHECK_INSTANCE_TYPE ((o), GPM_TYPE_INHIBIT_APPLET))
+#define GPM_IS_INHIBIT_APPLET_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), GPM_TYPE_INHIBIT_APPLET))
+#define GPM_INHIBIT_APPLET_GET_CLASS(o)        (G_TYPE_INSTANCE_GET_CLASS ((o), GPM_TYPE_INHIBIT_APPLET, 
GpmInhibitAppletClass))
+
+typedef struct{
+       PanelApplet parent;
+       /* applet state */
+       guint cookie;
+       /* the icon */
+       GtkWidget *image;
+       /* connection to gnome-session */
+       DBusGProxy *proxy;
+       DBusGConnection *connection;
+       guint bus_watch_id;
+       guint level;
+} GpmInhibitApplet;
+
+typedef struct{
+       PanelAppletClass        parent_class;
+} GpmInhibitAppletClass;
+
+GType                gpm_inhibit_applet_get_type  (void);
+
+#define GS_DBUS_SERVICE                "org.gnome.SessionManager"
+#define GS_DBUS_PATH           "/org/gnome/SessionManager"
+#define GS_DBUS_INTERFACE      "org.gnome.SessionManager"
+
+static void      gpm_inhibit_applet_class_init (GpmInhibitAppletClass *klass);
+static void      gpm_inhibit_applet_init       (GpmInhibitApplet *applet);
+
+G_DEFINE_TYPE (GpmInhibitApplet, gpm_inhibit_applet, PANEL_TYPE_APPLET)
+
+static void    gpm_applet_update_icon          (GpmInhibitApplet *applet);
+static void    gpm_applet_size_allocate_cb     (GtkWidget *widget, GdkRectangle *allocation);
+static void    gpm_applet_update_tooltip       (GpmInhibitApplet *applet);
+static gboolean        gpm_applet_click_cb             (GpmInhibitApplet *applet, GdkEventButton *event);
+static void    gpm_applet_dialog_about_cb      (GSimpleAction *action, GVariant *parameter, gpointer data);
+static gboolean        gpm_applet_cb                   (PanelApplet *_applet, const gchar *iid, gpointer 
data);
+static void    gpm_applet_destroy_cb           (GObject *object);
+
+#define GPM_INHIBIT_APPLET_ID                  "InhibitApplet"
+#define GPM_INHIBIT_APPLET_FACTORY_ID          "InhibitAppletFactory"
+#define GPM_INHIBIT_APPLET_ICON                        "gnome-inhibit-applet"
+#define GPM_INHIBIT_APPLET_ICON_INHIBIT                "gpm-inhibit"
+#define GPM_INHIBIT_APPLET_ICON_INVALID                "gpm-inhibit-invalid"
+#define GPM_INHIBIT_APPLET_ICON_UNINHIBIT      "gpm-uninhibit"
+#define GPM_INHIBIT_APPLET_NAME                        _("Inhibit Applet")
+#define GPM_INHIBIT_APPLET_DESC                        _("Allows user to inhibit automatic power saving.")
+#define PANEL_APPLET_VERTICAL(p)                                       \
+        (((p) == PANEL_APPLET_ORIENT_LEFT) || ((p) == PANEL_APPLET_ORIENT_RIGHT))
+
+
+/** cookie is returned as an unsigned integer */
+static gboolean
+gpm_applet_inhibit (GpmInhibitApplet *applet,
+                   const gchar     *appname,
+                   const gchar     *reason,
+                   guint           *cookie)
+{
+       GError  *error = NULL;
+       gboolean ret;
+
+       g_return_val_if_fail (cookie != NULL, FALSE);
+
+       if (applet->proxy == NULL) {
+               g_warning ("not connected\n");
+               return FALSE;
+       }
+
+       ret = dbus_g_proxy_call (applet->proxy, "Inhibit", &error,
+                                G_TYPE_STRING, appname,
+                                G_TYPE_UINT, 0, /* xid */
+                                G_TYPE_STRING, reason,
+                                G_TYPE_UINT, 1+2+4+8, /* logoff, switch, suspend, and idle */
+                                G_TYPE_INVALID,
+                                G_TYPE_UINT, cookie,
+                                G_TYPE_INVALID);
+       if (error) {
+               g_debug ("ERROR: %s", error->message);
+               g_error_free (error);
+               *cookie = 0;
+       }
+       if (!ret) {
+               /* abort as the DBUS method failed */
+               g_warning ("Inhibit failed!");
+       }
+
+       return ret;
+}
+
+static gboolean
+gpm_applet_uninhibit (GpmInhibitApplet *applet,
+                     guint            cookie)
+{
+       GError *error = NULL;
+       gboolean ret;
+
+       if (applet->proxy == NULL) {
+               g_warning ("not connected");
+               return FALSE;
+       }
+
+       ret = dbus_g_proxy_call (applet->proxy, "Uninhibit", &error,
+                                G_TYPE_UINT, cookie,
+                                G_TYPE_INVALID,
+                                G_TYPE_INVALID);
+       if (error) {
+               g_debug ("ERROR: %s", error->message);
+               g_error_free (error);
+       }
+       if (!ret) {
+               /* abort as the DBUS method failed */
+               g_warning ("Uninhibit failed!");
+       }
+
+       return ret;
+}
+
+/**
+ * gpm_applet_update_icon:
+ * @applet: Inhibit applet instance
+ *
+ * sets an icon from stock
+ **/
+static void
+gpm_applet_update_icon (GpmInhibitApplet *applet)
+{
+       const gchar *icon;
+
+       /* get icon */
+       if (applet->proxy == NULL) {
+               icon = GPM_INHIBIT_APPLET_ICON_INVALID;
+       } else if (applet->cookie > 0) {
+               icon = GPM_INHIBIT_APPLET_ICON_INHIBIT;
+       } else {
+               icon = GPM_INHIBIT_APPLET_ICON_UNINHIBIT;
+       }
+       gtk_image_set_from_icon_name (GTK_IMAGE(applet->image),
+                                     icon,
+                                     GTK_ICON_SIZE_BUTTON);
+}
+
+/**
+ * gpm_applet_size_allocate_cb:
+ * @applet: Inhibit applet instance
+ *
+ * resize icon when panel size changed
+ **/
+static void
+gpm_applet_size_allocate_cb (GtkWidget    *widget,
+                             GdkRectangle *allocation)
+{
+       GpmInhibitApplet *applet = GPM_INHIBIT_APPLET (widget);
+       int               size;
+
+       switch (panel_applet_get_orient (PANEL_APPLET (applet))) {
+               case PANEL_APPLET_ORIENT_LEFT:
+               case PANEL_APPLET_ORIENT_RIGHT:
+                       size = allocation->width;
+                       break;
+
+               case PANEL_APPLET_ORIENT_UP:
+               case PANEL_APPLET_ORIENT_DOWN:
+                       size = allocation->height;
+                       break;
+       }
+
+       /* copied from button-widget.c in the panel */
+       if (size < 22)
+               size = 16;
+       else if (size < 24)
+               size = 22;
+       else if (size < 32)
+               size = 24;
+       else if (size < 48)
+               size = 32;
+       else
+               size = 48;
+
+       /* GtkImage already contains a check to do nothing if it's the same */
+       gtk_image_set_pixel_size (GTK_IMAGE(applet->image), size);
+}
+
+/**
+ * gpm_applet_update_tooltip:
+ * @applet: Inhibit applet instance
+ *
+ * sets tooltip's content (percentage or disabled)
+ **/
+static void
+gpm_applet_update_tooltip (GpmInhibitApplet *applet)
+{
+       const gchar *buf;
+       if (applet->proxy == NULL) {
+               buf = _("Cannot connect to gnome-session");
+       } else {
+               if (applet->cookie > 0) {
+                       buf = _("Automatic sleep inhibited");
+               } else {
+                       buf = _("Automatic sleep enabled");
+               }
+       }
+       gtk_widget_set_tooltip_text (GTK_WIDGET(applet), buf);
+}
+
+/**
+ * gpm_applet_click_cb:
+ * @applet: Inhibit applet instance
+ *
+ * pops and unpops
+ **/
+static gboolean
+gpm_applet_click_cb (GpmInhibitApplet *applet, GdkEventButton *event)
+{
+       /* react only to left mouse button */
+       if (event->button != 1) {
+               return FALSE;
+       }
+
+       if (applet->cookie > 0) {
+               g_debug ("uninhibiting %u", applet->cookie);
+               gpm_applet_uninhibit (applet, applet->cookie);
+               applet->cookie = 0;
+       } else {
+               g_debug ("inhibiting");
+               gpm_applet_inhibit (applet,
+                                         GPM_INHIBIT_APPLET_NAME,
+                                         _("Manual inhibit"),
+                                         &(applet->cookie));
+       }
+       /* update icon */
+       gpm_applet_update_icon (applet);
+       gpm_applet_update_tooltip (applet);
+
+       return TRUE;
+}
+
+/**
+ * gpm_applet_dialog_about_cb:
+ *
+ * displays about dialog
+ **/
+static void
+gpm_applet_dialog_about_cb (GSimpleAction *action, GVariant *parameter, gpointer data)
+{
+       GtkAboutDialog *about;
+
+       GdkPixbuf *logo =
+               gtk_icon_theme_load_icon (gtk_icon_theme_get_default (),
+                                         GPM_INHIBIT_APPLET_ICON,
+                                         128, 0, NULL);
+
+       static const gchar *authors[] = {
+               "Benjamin Canou <bookeldor gmail com>",
+               "Richard Hughes <richard hughsie com>",
+               NULL
+       };
+       const char *license[] = {
+                N_("Licensed under the GNU General Public License Version 2"),
+                N_("Inhibit Applet is free software; you can redistribute it and/or\n"
+                  "modify it under the terms of the GNU General Public License\n"
+                  "as published by the Free Software Foundation; either version 2\n"
+                  "of the License, or (at your option) any later version."),
+                N_("Inhibit Applet is distributed in the hope that it will be useful,\n"
+                  "but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
+                  "MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n"
+                  "GNU General Public License for more details."),
+                N_("You should have received a copy of the GNU General Public License\n"
+                  "along with this program; if not, write to the Free Software\n"
+                  "Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA\n"
+                  "02110-1301, USA.")
+       };
+       const char *translator_credits = NULL;
+       char       *license_trans;
+
+       license_trans = g_strconcat (_(license[0]), "\n\n", _(license[1]), "\n\n",
+                                    _(license[2]), "\n\n", _(license[3]), "\n", NULL);
+
+       about = (GtkAboutDialog*) gtk_about_dialog_new ();
+       gtk_about_dialog_set_program_name (about, GPM_INHIBIT_APPLET_NAME);
+       gtk_about_dialog_set_version (about, VERSION);
+       gtk_about_dialog_set_copyright (about, _("Copyright \xc2\xa9 2006-2007 Richard Hughes"));
+       gtk_about_dialog_set_comments (about, GPM_INHIBIT_APPLET_DESC);
+       gtk_about_dialog_set_authors (about, authors);
+       gtk_about_dialog_set_translator_credits (about, translator_credits);
+       gtk_about_dialog_set_logo (about, logo);
+       gtk_about_dialog_set_license (about, license_trans);
+
+       g_signal_connect (G_OBJECT(about), "response",
+                         G_CALLBACK(gtk_widget_destroy), NULL);
+
+       gtk_widget_show (GTK_WIDGET(about));
+
+       g_free (license_trans);
+       g_object_unref (logo);
+}
+
+/**
+ * gpm_applet_destroy_cb:
+ * @object: Class instance to destroy
+ **/
+static void
+gpm_applet_destroy_cb (GObject *object)
+{
+       GpmInhibitApplet *applet = GPM_INHIBIT_APPLET(object);
+
+       g_bus_unwatch_name (applet->bus_watch_id);
+}
+
+/**
+ * gpm_inhibit_applet_class_init:
+ * @klass: Class instance
+ **/
+static void
+gpm_inhibit_applet_class_init (GpmInhibitAppletClass *class)
+{
+       /* nothing to do here */
+}
+
+
+/**
+ * gpm_inhibit_applet_dbus_connect:
+ **/
+static gboolean
+gpm_inhibit_applet_dbus_connect (GpmInhibitApplet *applet)
+{
+       GError *error = NULL;
+
+       if (applet->connection == NULL) {
+               g_debug ("get connection\n");
+               g_clear_error (&error);
+               applet->connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error);
+               if (error != NULL) {
+                       g_warning ("Could not connect to DBUS daemon: %s", error->message);
+                       g_error_free (error);
+                       applet->connection = NULL;
+                       return FALSE;
+               }
+       }
+       if (applet->proxy == NULL) {
+               g_debug ("get proxy\n");
+               g_clear_error (&error);
+               applet->proxy = dbus_g_proxy_new_for_name_owner (applet->connection,
+                                                        GS_DBUS_SERVICE,
+                                                        GS_DBUS_PATH,
+                                                        GS_DBUS_INTERFACE,
+                                                        &error);
+               if (error != NULL) {
+                       g_warning ("Cannot connect, maybe the daemon is not running: %s\n", error->message);
+                       g_error_free (error);
+                       applet->proxy = NULL;
+                       return FALSE;
+               }
+       }
+       return TRUE;
+}
+
+/**
+ * gpm_inhibit_applet_dbus_disconnect:
+ **/
+static gboolean
+gpm_inhibit_applet_dbus_disconnect (GpmInhibitApplet *applet)
+{
+       if (applet->proxy != NULL) {
+               g_debug ("removing proxy\n");
+               g_object_unref (applet->proxy);
+               applet->proxy = NULL;
+               /* we have no inhibit, these are not persistant across reboots */
+               applet->cookie = 0;
+       }
+       return TRUE;
+}
+
+/**
+ * gpm_inhibit_applet_name_appeared_cb:
+ **/
+static void
+gpm_inhibit_applet_name_appeared_cb (GDBusConnection *connection, const gchar *name, const gchar 
*name_owner, GpmInhibitApplet *applet)
+{
+       gpm_inhibit_applet_dbus_connect (applet);
+       gpm_applet_update_tooltip (applet);
+       gpm_applet_update_icon (applet);
+}
+
+/**
+ * gpm_inhibit_applet_name_vanished_cb:
+ **/
+static void
+gpm_inhibit_applet_name_vanished_cb (GDBusConnection *connection, const gchar *name, GpmInhibitApplet 
*applet)
+{
+       gpm_inhibit_applet_dbus_disconnect (applet);
+       gpm_applet_update_tooltip (applet);
+       gpm_applet_update_icon (applet);
+}
+
+/**
+ * gpm_inhibit_applet_init:
+ * @applet: Inhibit applet instance
+ **/
+static void
+gpm_inhibit_applet_init (GpmInhibitApplet *applet)
+{
+       /* initialize fields */
+       applet->image = NULL;
+       applet->cookie = 0;
+       applet->connection = NULL;
+       applet->proxy = NULL;
+
+       /* Add application specific icons to search path */
+       gtk_icon_theme_append_search_path (gtk_icon_theme_get_default (),
+                                          PKG_DATA_DIR G_DIR_SEPARATOR_S "icons");
+
+       /* monitor the daemon */
+       applet->bus_watch_id =
+               g_bus_watch_name (G_BUS_TYPE_SESSION,
+                                 GS_DBUS_SERVICE,
+                                 G_BUS_NAME_WATCHER_FLAGS_NONE,
+                                 (GBusNameAppearedCallback) gpm_inhibit_applet_name_appeared_cb,
+                                 (GBusNameVanishedCallback) gpm_inhibit_applet_name_vanished_cb,
+                                 applet, NULL);
+
+       /* prepare */
+       panel_applet_set_flags (PANEL_APPLET (applet), PANEL_APPLET_EXPAND_MINOR);
+       applet->image = gtk_image_new();
+       gtk_container_add (GTK_CONTAINER (applet), applet->image);
+
+       /* show */
+       gtk_widget_show_all (GTK_WIDGET(applet));
+
+       /* connect */
+       g_signal_connect (G_OBJECT(applet), "button-release-event",
+                         G_CALLBACK(gpm_applet_click_cb), NULL);
+
+       g_signal_connect (G_OBJECT(applet), "size-allocate",
+                         G_CALLBACK(gpm_applet_size_allocate_cb), NULL);
+
+       g_signal_connect (G_OBJECT(applet), "destroy",
+                         G_CALLBACK(gpm_applet_destroy_cb), NULL);
+}
+
+/**
+ * gpm_applet_cb:
+ * @_applet: GpmInhibitApplet instance created by the applet factory
+ * @iid: Applet id
+ *
+ * the function called by libpanel-applet factory after creation
+ **/
+static gboolean
+gpm_applet_cb (PanelApplet *_applet, const gchar *iid, gpointer data)
+{
+       GpmInhibitApplet *applet = GPM_INHIBIT_APPLET(_applet);
+       GSimpleActionGroup *action_group;
+       gchar *ui_path;
+
+       static const GActionEntry menu_actions [] = {
+               { "about", gpm_applet_dialog_about_cb, NULL, NULL, NULL },
+       };
+
+       if (strcmp (iid, GPM_INHIBIT_APPLET_ID) != 0) {
+               return FALSE;
+       }
+
+       action_group = g_simple_action_group_new ();
+       g_action_map_add_action_entries (G_ACTION_MAP (action_group),
+                                        menu_actions,
+                                        G_N_ELEMENTS (menu_actions),
+                                        applet);
+       ui_path = g_build_filename (INHIBIT_MENU_UI_DIR, "inhibit-applet-menu.xml", NULL);
+       panel_applet_setup_menu_from_file (PANEL_APPLET (applet), ui_path, action_group, GETTEXT_PACKAGE);
+       g_free (ui_path);
+
+       gtk_widget_insert_action_group (GTK_WIDGET (applet), "inhibit",
+                                       G_ACTION_GROUP (action_group));
+
+       g_object_unref (action_group);
+
+       return TRUE;
+}
+
+/**
+ * this generates a main with a applet factory
+ **/
+PANEL_APPLET_OUT_PROCESS_FACTORY
+       (/* the factory iid */
+       GPM_INHIBIT_APPLET_FACTORY_ID,
+       /* generates inhibit applet instead of regular gnome applets  */
+       GPM_TYPE_INHIBIT_APPLET,
+       /* our callback (with no user data) */
+       gpm_applet_cb, NULL)
diff --git a/inhibit/org.gnome.InhibitApplet.panel-applet.in.in 
b/inhibit/org.gnome.InhibitApplet.panel-applet.in.in
new file mode 100644
index 0000000..6573acd
--- /dev/null
+++ b/inhibit/org.gnome.InhibitApplet.panel-applet.in.in
@@ -0,0 +1,15 @@
+[Applet Factory]
+Id=InhibitAppletFactory
+Location= LIBEXECDIR@/gnome-inhibit-applet
+Name=Inhibit Applet Factory
+Description=Factory for Inhibit Applet
+
+[InhibitApplet]
+_Name=Inhibit Applet
+_Description=Allows user to inhibit automatic power saving
+Icon=gnome-inhibit-applet
+X-GNOME-Bugzilla-Bugzilla=GNOME
+X-GNOME-Bugzilla-Product=gnome-applets
+X-GNOME-Bugzilla-Component=Intibit Applet (inhibit)
+X-GNOME-Bugzilla-Version= VERSION@
+X-GNOME-Bugzilla-OtherBinaries=gnome-inhibit-applet
diff --git a/inhibit/org.gnome.panel.applet.InhibitAppletFactory.service.in 
b/inhibit/org.gnome.panel.applet.InhibitAppletFactory.service.in
new file mode 100644
index 0000000..d557105
--- /dev/null
+++ b/inhibit/org.gnome.panel.applet.InhibitAppletFactory.service.in
@@ -0,0 +1,3 @@
+[D-BUS Service]
+Name=org.gnome.panel.applet.InhibitAppletFactory
+Exec= LIBEXECDIR@/gnome-inhibit-applet
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 3c600b6..074c5cd 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -28,6 +28,9 @@ cpufreq/src/cpufreq-monitor-factory.c
 cpufreq/src/cpufreq-monitor-procfs.c
 cpufreq/src/cpufreq-popup.c
 cpufreq/src/cpufreq-selector/org.gnome.cpufreqselector.policy.in
+inhibit/inhibit-applet.c
+[type: gettext/glade]inhibit/inhibit-applet-menu.xml
+[type: gettext/ini]inhibit/org.gnome.InhibitApplet.panel-applet.in.in
 drivemount/drive-button.c
 drivemount/drivemount.c
 [type: gettext/glade]drivemount/drivemount-applet-menu.xml
diff --git a/po/POTFILES.skip b/po/POTFILES.skip
index 3ebc1b4..f09c8d0 100644
--- a/po/POTFILES.skip
+++ b/po/POTFILES.skip
@@ -11,6 +11,7 @@ charpick/org.gnome.gnome-applets.charpick.gschema.xml.in
 cpufreq/org.gnome.applets.CPUFreqApplet.panel-applet.in
 cpufreq/org.gnome.gnome-applets.cpufreq.gschema.xml.in
 drivemount/drivemount/org.gnome.applets.DriveMountApplet.panel-applet.in
+inhibit/org.gnome.InhibitApplet.panel-applet.in
 geyes/org.gnome.applets.GeyesApplet.panel-applet.in
 geyes/org.gnome.gnome-applets.geyes.gschema.xml.in
 gweather/org.gnome.applets.GWeatherApplet.panel-applet.in


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