aboutsummaryrefslogtreecommitdiff
path: root/lib/main.vala
diff options
context:
space:
mode:
authorWilliam Hua <william.hua@canonical.com>2014-02-26 13:24:23 -0500
committerWilliam Hua <william.hua@canonical.com>2014-02-26 13:24:23 -0500
commitc68445a226bf38411a7baa7ea5a82890fbb4bba1 (patch)
tree083a50e42415c8f4cb7122a43209da1dab2d2251 /lib/main.vala
parentd65d929498d2302a13ab70cec63f163e2af6df3e (diff)
downloadayatana-indicator-keyboard-c68445a226bf38411a7baa7ea5a82890fbb4bba1.tar.gz
ayatana-indicator-keyboard-c68445a226bf38411a7baa7ea5a82890fbb4bba1.tar.bz2
ayatana-indicator-keyboard-c68445a226bf38411a7baa7ea5a82890fbb4bba1.zip
Update icons when icon theme changes.
Diffstat (limited to 'lib/main.vala')
-rw-r--r--lib/main.vala20
1 files changed, 20 insertions, 0 deletions
diff --git a/lib/main.vala b/lib/main.vala
index d16022e9..85c9369f 100644
--- a/lib/main.vala
+++ b/lib/main.vala
@@ -59,6 +59,26 @@ public class Indicator.Keyboard.Service : Object {
if (use_gtk) {
use_gtk = Gtk.init_check (ref args);
+
+ Gtk.IconTheme? icon_theme = Gtk.IconTheme.get_default ();
+
+ if (icon_theme != null) {
+ ((!) icon_theme).changed.connect (() => {
+ if (sources != null) {
+ foreach (var source in (!) sources) {
+ source.icon = null;
+ }
+ }
+
+ if (sources_menu != null) {
+ update_sources_menu ();
+ }
+
+ if (indicator_action != null) {
+ update_indicator_action ();
+ }
+ });
+ }
} else {
Gdk.init (ref args);
}