[rhythmbox] artdisplay: use height-for-width size request method
- From: Jonathan Matthew <jmatthew src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [rhythmbox] artdisplay: use height-for-width size request method
- Date: Mon, 7 Feb 2011 22:11:38 +0000 (UTC)
commit c5210ad0277e1d7adb95bb0b1b8811ad310da454
Author: Jonathan Matthew <jonathan d14n org>
Date: Tue Feb 8 08:08:25 2011 +1000
artdisplay: use height-for-width size request method
plugins/artdisplay/artdisplay/__init__.py | 25 +++++++++++++------------
1 files changed, 13 insertions(+), 12 deletions(-)
---
diff --git a/plugins/artdisplay/artdisplay/__init__.py b/plugins/artdisplay/artdisplay/__init__.py
index 1ae742f..8ff0603 100644
--- a/plugins/artdisplay/artdisplay/__init__.py
+++ b/plugins/artdisplay/artdisplay/__init__.py
@@ -96,7 +96,8 @@ class FadingImage (Gtk.Misc):
self.sc_id = self.connect('screen-changed', self.screen_changed)
self.sa_id = self.connect('size-allocate', self.size_allocate_cb)
self.resize_id, self.fade_id, self.anim_id = 0, 0, 0
- self.missing_image, self.size = missing_image, 100
+ self.missing_image = missing_image
+ self.size = 100
self.screen_changed (self, None)
self.old_pixbuf, self.new_pixbuf = None, None
self.merged_pixbuf, self.missing_pixbuf = None, None
@@ -151,20 +152,11 @@ class FadingImage (Gtk.Misc):
self.missing_pixbuf = merge_with_background (missing_pixbuf, bgcolor, False)
def size_allocate_cb (self, widget, allocation):
- #old_width = self.get_allocated_width()
-
if self.resize_id == 0:
self.resize_id = gobject.idle_add (self.after_resize)
- #if old_width != allocation.width:
- # XXX possibly use adjust_size_allocation instead?
max_size = self.emit ('get-max-size')
self.size = min (self.get_allocated_width (), max_size)
- self.queue_resize ()
- #elif self.get_window() is not None:
- # self.get_window().move_resize (allocation.x, allocation.y, allocation.width, allocation.height)
- # self.queue_draw ()
- # self.get_window().process_updates (True)
def after_resize (self):
self.reload_util_pixbufs ()
@@ -173,8 +165,17 @@ class FadingImage (Gtk.Misc):
self.queue_draw ()
return False
- def do_get_preferred_height(self):
- return (self.size, self.size)
+ def do_get_request_mode(self):
+ return Gtk.SizeRequestMode.HEIGHT_FOR_WIDTH
+
+ def do_get_preferred_width(self):
+ # maybe set minimum width here?
+ return (0, 0)
+
+ def do_get_preferred_height_for_width(self, width):
+ max_size = self.emit ('get-max-size')
+ size = min(self.get_allocated_width(), max_size)
+ return (size, size)
def do_draw (self, cr):
if not self.ensure_merged_pixbuf ():
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]