diff --git a/src/jarabe/journal/expandedentry.py b/src/jarabe/journal/expandedentry.py
index e0c603f..1886483 100644
a
|
b
|
class ExpandedEntry(gtk.EventBox): |
194 | 194 | return date |
195 | 195 | |
196 | 196 | def _create_preview(self): |
197 | | width = style.zoom(320) |
198 | | height = style.zoom(240) |
199 | 197 | box = gtk.EventBox() |
200 | 198 | box.modify_bg(gtk.STATE_NORMAL, style.COLOR_WHITE.get_gdk_color()) |
201 | 199 | |
| 200 | box.connect('expose-event', self.__expose_event_cb) |
| 201 | box.connect_after('button-release-event', |
| 202 | self._preview_box_button_release_event_cb) |
| 203 | return box |
| 204 | |
| 205 | def __expose_event_cb(self, box, event): |
| 206 | width = style.zoom(320) |
| 207 | height = style.zoom(240) |
| 208 | |
202 | 209 | if len(self._metadata.get('preview', '')) > 4: |
203 | 210 | if self._metadata['preview'][1:4] == 'PNG': |
204 | 211 | preview_data = self._metadata['preview'] |
… |
… |
class ExpandedEntry(gtk.EventBox): |
214 | 221 | surface = cairo.ImageSurface.create_from_png(png_file) |
215 | 222 | png_width = surface.get_width() |
216 | 223 | png_height = surface.get_height() |
217 | | pixmap = gtk.gdk.Pixmap(None, png_width, png_height, 24) |
| 224 | gdk_window = self.get_toplevel().window |
| 225 | pixmap = gtk.gdk.Pixmap(gdk_window, png_width, png_height, -1) |
218 | 226 | cr = pixmap.cairo_create() |
219 | 227 | cr.set_source_surface(surface, 0, 0) |
220 | 228 | cr.scale(width / png_width, height / png_height) |
… |
… |
class ExpandedEntry(gtk.EventBox): |
230 | 238 | |
231 | 239 | if has_preview: |
232 | 240 | box.add(im) |
| 241 | im.show() |
233 | 242 | else: |
234 | 243 | label = gtk.Label() |
235 | 244 | label.set_text(_('No preview')) |
236 | 245 | label.set_size_request(width, height) |
237 | 246 | box.add(label) |
238 | | |
239 | | box.connect_after('button-release-event', |
240 | | self._preview_box_button_release_event_cb) |
241 | | return box |
| 247 | label.show() |
242 | 248 | |
243 | 249 | def _create_technical(self): |
244 | 250 | vbox = gtk.VBox() |