diff options
-rw-r--r-- | addons/bubblemessage.py | 1 | ||||
-rw-r--r-- | addons/bubblemessagewimg.py | 1 | ||||
-rw-r--r-- | tutorius/overlayer.py | 13 |
3 files changed, 12 insertions, 3 deletions
diff --git a/addons/bubblemessage.py b/addons/bubblemessage.py index aaf086c..7c3c0fd 100644 --- a/addons/bubblemessage.py +++ b/addons/bubblemessage.py @@ -76,6 +76,7 @@ class BubbleMessage(Action): Destroy the dialog """ if self._bubble: + self.overlay.remove(self._bubble) self._bubble.destroy() self._bubble = None diff --git a/addons/bubblemessagewimg.py b/addons/bubblemessagewimg.py index 9c3dfc1..1d5d5d3 100644 --- a/addons/bubblemessagewimg.py +++ b/addons/bubblemessagewimg.py @@ -79,6 +79,7 @@ class BubbleMessageWImg(Action): Destroy the dialog """ if self._bubble: + self.overlay.remove(self._bubble) self._bubble.destroy() self._bubble = None diff --git a/tutorius/overlayer.py b/tutorius/overlayer.py index ef6fed5..8c653ac 100644 --- a/tutorius/overlayer.py +++ b/tutorius/overlayer.py @@ -480,13 +480,20 @@ class TextBubbleWImg(gtk.Widget): #ct = cairo.Context(surface) # paint image + img_upper_left_x = int((self.allocation.width-self.imgsize[0])/2) + img_upper_left_y = int(self.line_width+self.padding/2) context.set_source_pixbuf( self.pixbuf, - int((self.allocation.width-self.imgsize[0])/2), - int(self.line_width+self.padding/2)) + img_upper_left_x, + img_upper_left_y) + # Set a rectangle + context.rectangle(img_upper_left_x, img_upper_left_y, + self.imgsize[0], self.imgsize[1]) + context.clip() context.paint() - + context.reset_clip() + # work done. Be kind to next cairo widgets and reset matrix. context.identity_matrix() |