diff options
author | Thierry Vignaud <tv@mandriva.org> | 2008-10-01 10:44:27 +0000 |
---|---|---|
committer | Thierry Vignaud <tv@mandriva.org> | 2008-10-01 10:44:27 +0000 |
commit | c6550ae930cf5716527c555b57b27882fca3a2f6 (patch) | |
tree | ae99cb38d6c06ab79db5d5046b1808dee7633a47 /perl-install | |
parent | 35ee9eef791d93e7156304d8892a3f7e16dc56ba (diff) | |
download | drakx-c6550ae930cf5716527c555b57b27882fca3a2f6.tar drakx-c6550ae930cf5716527c555b57b27882fca3a2f6.tar.gz drakx-c6550ae930cf5716527c555b57b27882fca3a2f6.tar.bz2 drakx-c6550ae930cf5716527c555b57b27882fca3a2f6.tar.xz drakx-c6550ae930cf5716527c555b57b27882fca3a2f6.zip |
(_gtk__Image_using_pixbuf) revert r246993 from 2008-09-29, thus fixing
dithering regression:
"(_gtk__Image_using_pixbuf) simplify using
pixbuf storage (which brings in
optimized refresh on expose event as side effect)
(needed for next commit)"
Diffstat (limited to 'perl-install')
-rw-r--r-- | perl-install/NEWS | 2 | ||||
-rw-r--r-- | perl-install/install/NEWS | 1 | ||||
-rw-r--r-- | perl-install/mygtk2.pm | 12 |
3 files changed, 14 insertions, 1 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS index 9a6b25c32..6a7115b02 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,3 +1,5 @@ +- fix dithering regression (introduced on 2008-09-29) + Version 11.61 - 30 September 2008 - bootloader-config: diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS index aa4d25408..38b9868c6 100644 --- a/perl-install/install/NEWS +++ b/perl-install/install/NEWS @@ -1,5 +1,6 @@ - add help button for media selection step - fix/adjust some help pages (#42986) +- fix dithering regression (introduced on 2008-09-29) Version 11.58 - 29 September 2008 diff --git a/perl-install/mygtk2.pm b/perl-install/mygtk2.pm index 60e4a7b1d..28cdaed9f 100644 --- a/perl-install/mygtk2.pm +++ b/perl-install/mygtk2.pm @@ -330,7 +330,17 @@ sub _gtk__Image { } : $class =~ /using_pixbuf/ ? sub { my ($w, $file) = @_; my $pixbuf = _pixbuf_render_alpha(gtknew('Pixbuf', file => $file, %{$w->{options}}), 255); - $w->set_from_pixbuf($pixbuf); + my ($width, $height) = ($pixbuf->get_width, $pixbuf->get_height); + $w->set_size_request($width, $height); + $w->signal_connect(expose_event => sub { + if (!$w->{x}) { + my $alloc = $w->allocation; + $w->{x} = $alloc->x; + $w->{y} = $alloc->y; + } + $pixbuf->render_to_drawable($w->window, $w->style->fg_gc('normal'), + 0, 0, $w->{x}, $w->{y}, $width, $height, 'max', 0, 0); + }); } : sub { my ($w, $file, $o_size) = @_; my $pixbuf = gtknew('Pixbuf', file => $file, if_($o_size, size => $o_size), %{$w->{options}}); |