--- extension_orig.js	2015-10-07 00:08:08.723404782 +0200
+++ extension.js	2015-10-07 00:10:05.208304423 +0200
@@ -213,6 +213,8 @@ const BaseButton = new Lang.Class({
                                                   St.ButtonMask.THREE });
         this.actor._delegate = this;
 
+        this.actor.connect('motion-event', Lang.bind(this, this._onMotionEvent));
+
         this.actor.connect('allocation-changed',
                            Lang.bind(this, this._updateIconGeometry));
         this.actor.connect('clicked', Lang.bind(this, this._onClicked));
@@ -246,6 +248,10 @@ const BaseButton = new Lang.Class({
         this._onClicked(this.actor, 1);
     },
 
+    _onMotionEvent: function(actor, event) {
+        this.actor.sync_hover();
+    },
+
     _onClicked: function(actor, button) {
         throw new Error('Not implemented');
     },
