Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--addons/bubblemessage.py1
-rw-r--r--addons/bubblemessagewimg.py1
-rw-r--r--tutorius/overlayer.py13
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()