self.icons=None
self.lasticon=None # The last icon that got selected
+ self.draw_pending=False
+
def do_realize(self, config):
self.config=config
def setMode(self, mode):
self.mode=mode
- if isinstance(self, gtk.Widget):
+ if not isinstance(self, gtk.Widget):
+ return
+
+ v=self.get_property('is-on-current-desktop')
+ if v:
self.queue_draw()
+ else:
+ self.draw_pending=True
def iconAt(self, x, y):
""" Get icon at coordinates x,y. X and Y are in pixels """
return(ret)
def _draw(self, cr, event):
+ self.draw_pending=False
+
w=self.config.iconsize + self.config.iconspace
for x,y in self.icons:
if self.mode=='l' or self.config.getIndiv():
self.connect('show-settings', self.slot_show_settings)
self.connect('long-press', self.signalLongpress)
self.connect('click', self.signalClick)
+ self.connect('notify', self.signalNotify)
HomePluginItem.do_realize(self)
def on_orientation_changed(self, orientation):
+ # Get the first character of the string (l/p)
o=orientation[0]
self.setMode(o)
# self.queue_draw()
if not config.getLongpress():
self.handle_click(sender, icon)
+ def signalNotify(self, sender, property):
+ if property.name=='is-on-current-desktop':
+ v=self.get_property(property.name)
+ if v and self.draw_pending:
+ self.queue_draw()
+
def resize(self):
config=self.get_config()