self.width = self.balloon_surface.get_width()
self.height = self.balloon_surface.get_height()
self.darea.set_size_request(self.width, self.height)
- region = Gdk.cairo_region_create_from_surface(self.balloon_surface)
- self.window.input_shape_combine_region(region)
self.reset_arrow()
self.reset_sstp_marker()
self.reset_message_regions()
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
cr.set_operator(cairo.OPERATOR_OVER) # restore default
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
# draw images
for i in range(len(self.images)):
image_surface, (x, y) = self.images[i]
w = surface.get_width()
h = surface.get_height()
darea.set_size_request(w, h)
- region = Gdk.cairo_region_create_from_surface(surface)
- self.window.input_shape_combine_region(region)
else:
box = Gtk.HBox(spacing=10)
box.set_border_width(10)
cr.set_source_surface(surface, 0, 0)
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
def destroy(self):
if self.window:
h = self.balloon_surface.get_height()
w = max(8, int(w * self.scale / 100))
h = max(8, int(h * self.scale / 100))
- region = Gdk.cairo_region_create_from_surface(self.balloon_surface)
- self.window.input_shape_combine_region(region)
self.darea.set_size_request(w, h)
self.base_x, self.base_y = self.get_coordinate(w, h)
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
cr.set_operator(cairo.OPERATOR_OVER) # restore default
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
if self.layout:
cr.set_source_rgb(*self.fontcolor)
cr.move_to(int(self.left), int(self.top))
return
self.path = path
self.w, self.h = w, h
- region = Gdk.cairo_region_create_from_surface(self.image_surface)
- self.window.input_shape_combine_region(region)
self.darea = Gtk.DrawingArea()
self.darea.set_events(Gdk.EventMask.EXPOSURE_MASK|
Gdk.EventMask.BUTTON_PRESS_MASK|
cr.set_source_surface(self.image_surface, 0, 0)
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
def get_image_surface(self, surface_id):
path = os.path.join(os.fsencode(self.data['dir']),
cr.set_source_surface(overlay_surface, x, y)
cr.mask_surface(overlay_surface, x, y)
del cr
- region = Gdk.cairo_region_create_from_surface(new_surface)
- self.window.input_shape_combine_region(region)
#self.darea.queue_draw_area(0, 0, w, h)
self.image_surface = new_surface
self.darea.queue_draw()
cr.set_source_surface(self.image_surface, 0, 0)
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
def delete(self, widget, event):
self.request_parent('NOTIFY', 'finalize')
self.request_parent('NOTIFY', 'finalize')
return
self.w, self.h = w, h
- region = Gdk.cairo_region_create_from_surface(new_surface)
- self.window.input_shape_combine_region(region)
self.darea.set_size_request(self.w, self.h)
self.image_surface = new_surface
self.darea.queue_draw()
cr.set_source_surface(self.image_surface, 0, 0)
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
def set_movement(self, timing):
key = ''.join((timing, 'fall.type'))
self.request_parent('NOTIFY', 'finalize')
return
self.w, self.h = w, h
- region = Gdk.cairo_region_create_from_surface(new_surface)
- self.window.input_shape_combine_region(region)
self.darea.set_size_request(self.w, self.h)
#self.darea.queue_draw_area(0, 0, self.w, self.h)
self.image_surface = new_surface
Gtk.Window.add(self, fixed) # XXX
self.__fixed = fixed
self.__child = None
+ self.__child_size = (-1, -1)
self.__position = (0, 0)
self.connect_after('size_allocate', self.size_allocate)
def reset_truncate(self):
self.fixed.move(self.__child, 0, 0)
+ self.__child.set_size_request(*self.__child_size)
self.set_size_request(-1, -1)
self.offset['left'] = 0
self.offset['top'] = 0
else:
Gtk.Window.move(self, new_x, new_y) # XXX
else:
+ if not self.truncated:
+ self.__child_size = (w, h)
self.fixed.move(self.__child, offset_left, offset_top)
self.__child.set_size_request(w + offset_right,
h + offset_bottom)
cr.set_source_surface(overlay_surface, x, y)
cr.mask_surface(overlay_surface, x, y)
del cr
- region = Gdk.cairo_region_create_from_surface(new_surface)
- self.window.input_shape_combine_region(region)
self.image_surface = new_surface
self.darea.queue_draw()
cr.set_operator(cairo.OPERATOR_SOURCE)
cr.paint()
cr.restore()
+ region = Gdk.cairo_region_create_from_surface(cr.get_target())
+ self.window.input_shape_combine_region(region)
if self.request_parent('GET', 'get_preference', 'check_collision'):
self.draw_region(cr)