Fix the drawing method of _IconWidget, used by IconTray
Invoker draw_rectangle() now receives a Cairo context, as can be seen in [1] The testcase is also fixed by this commit. Signed-off-by: Manuel Quiñones <manuq@laptop.org> Acked-by: Simon Schampijer <simon@laptop.org> [1] http://git.sugarlabs.org/sugar-toolkit-gtk3/sugar-toolkit-gtk3/blobs/master/src/sugar3/graphics/palettewindow.py#line1018
This commit is contained in:
parent
09e9373612
commit
e2ddd70c13
@ -415,13 +415,13 @@ class _IconWidget(Gtk.EventBox):
|
|||||||
self.add(self._icon)
|
self.add(self._icon)
|
||||||
self._icon.show()
|
self._icon.show()
|
||||||
|
|
||||||
def do_expose_event(self, event):
|
def do_draw(self, cr):
|
||||||
palette = self.get_parent().palette
|
palette = self.get_parent().palette
|
||||||
if palette and palette.is_up():
|
if palette and palette.is_up():
|
||||||
invoker = palette.props.invoker
|
invoker = palette.props.invoker
|
||||||
invoker.draw_rectangle(event, palette)
|
invoker.draw_rectangle(cr, palette)
|
||||||
|
|
||||||
Gtk.EventBox.do_expose_event(self, event)
|
Gtk.EventBox.do_draw(self, cr)
|
||||||
|
|
||||||
def get_icon(self):
|
def get_icon(self):
|
||||||
return self._icon
|
return self._icon
|
||||||
|
@ -16,6 +16,7 @@
|
|||||||
# Boston, MA 02111-1307, USA.
|
# Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
from gi.repository import Gtk
|
from gi.repository import Gtk
|
||||||
|
from gi.repository import GObject
|
||||||
|
|
||||||
from sugar3.graphics.toolbutton import ToolButton
|
from sugar3.graphics.toolbutton import ToolButton
|
||||||
|
|
||||||
|
@ -31,10 +31,10 @@ test = common.Test()
|
|||||||
vbox = Gtk.VBox()
|
vbox = Gtk.VBox()
|
||||||
|
|
||||||
tray = HTray()
|
tray = HTray()
|
||||||
vbox.pack_start(tray, False)
|
vbox.pack_start(tray, False, False, 0)
|
||||||
tray.show()
|
tray.show()
|
||||||
|
|
||||||
theme_icons = Gtk.IconTheme.get_default().list_icons()
|
theme_icons = Gtk.IconTheme.get_default().list_icons(context=None)
|
||||||
|
|
||||||
for i in range(0, 100):
|
for i in range(0, 100):
|
||||||
button = TrayButton(icon_name=theme_icons[i])
|
button = TrayButton(icon_name=theme_icons[i])
|
||||||
@ -42,7 +42,7 @@ for i in range(0, 100):
|
|||||||
button.show()
|
button.show()
|
||||||
|
|
||||||
tray = HTray()
|
tray = HTray()
|
||||||
vbox.pack_start(tray, False)
|
vbox.pack_start(tray, False, False, 0)
|
||||||
tray.show()
|
tray.show()
|
||||||
|
|
||||||
for i in range(0, 10):
|
for i in range(0, 10):
|
||||||
@ -53,7 +53,7 @@ for i in range(0, 10):
|
|||||||
hbox = Gtk.HBox()
|
hbox = Gtk.HBox()
|
||||||
|
|
||||||
tray = VTray()
|
tray = VTray()
|
||||||
hbox.pack_start(tray, False)
|
hbox.pack_start(tray, False, False, 0)
|
||||||
tray.show()
|
tray.show()
|
||||||
|
|
||||||
for i in range(0, 100):
|
for i in range(0, 100):
|
||||||
@ -62,7 +62,7 @@ for i in range(0, 100):
|
|||||||
button.show()
|
button.show()
|
||||||
|
|
||||||
tray = VTray()
|
tray = VTray()
|
||||||
hbox.pack_start(tray, False)
|
hbox.pack_start(tray, False, False, 0)
|
||||||
tray.show()
|
tray.show()
|
||||||
|
|
||||||
for i in range(0, 4):
|
for i in range(0, 4):
|
||||||
|
Loading…
Reference in New Issue
Block a user