diff options
Diffstat (limited to 'sugar/graphics')
-rw-r--r-- | sugar/graphics/palette.py | 6 | ||||
-rw-r--r-- | sugar/graphics/toolbox.py | 14 |
2 files changed, 17 insertions, 3 deletions
diff --git a/sugar/graphics/palette.py b/sugar/graphics/palette.py index 919b3e7..760f702 100644 --- a/sugar/graphics/palette.py +++ b/sugar/graphics/palette.py @@ -49,7 +49,7 @@ class Palette(gobject.GObject): self._alignment = ALIGNMENT_AUTOMATIC - self._popup_anim = animator.Animator(0.6, 10) + self._popup_anim = animator.Animator(0.3, 10) self._popup_anim.add(_PopupAnimation(self)) self._popup_anim.start() @@ -300,7 +300,9 @@ class CanvasInvoker(Invoker): def get_rect(self): context = self._item.get_context() - x, y = context.translate_to_screen(self._item) + if context: + x, y = context.translate_to_screen(self._item) + width, height = self._item.get_allocation() return gtk.gdk.Rectangle(x, y, width, height) diff --git a/sugar/graphics/toolbox.py b/sugar/graphics/toolbox.py index 38d767b..d510eeb 100644 --- a/sugar/graphics/toolbox.py +++ b/sugar/graphics/toolbox.py @@ -25,6 +25,13 @@ _N_TABS = 8 class Toolbox(gtk.VBox): __gtype_name__ = 'SugarToolbox' + + __gsignals__ = { + 'current-toolbar-changed': (gobject.SIGNAL_RUN_FIRST, + gobject.TYPE_NONE, + ([int])) + } + def __init__(self): gtk.VBox.__init__(self) @@ -34,7 +41,12 @@ class Toolbox(gtk.VBox): self._notebook.set_show_tabs(False) self.pack_start(self._notebook) self._notebook.show() - + + self._notebook.connect('notify::page', self._notify_page_cb) + + def _notify_page_cb(self, notebook, pspec): + self.emit('current-toolbar-changed', notebook.props.page) + def _toolbar_box_expose_cb(self, widget, event): widget.style.paint_flat_box(widget.window, gtk.STATE_NORMAL, gtk.SHADOW_NONE, |