Your message dated Mon, 28 Apr 2014 11:33:51 +0000 with message-id <E1Wejol-0004Ky-SH@franck.debian.org> and subject line Bug#745359: fixed in cdebconf 0.190 has caused the Debian Bug report #745359, regarding cdebconf-gtk-udeb: fails to extend banner when needed to be marked as done. This means that you claim that the problem has been dealt with. If this is not the case it is now your responsibility to reopen the Bug report if necessary, and/or fix the problem forthwith. (NB: If you are a system administrator and have no idea what this message is talking about, this may indicate a serious mail system misconfiguration somewhere. Please contact owner@bugs.debian.org immediately.) -- 745359: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745359 Debian Bug Tracking System Contact owner@bugs.debian.org with problems
--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: cdebconf-gtk-udeb: fails to extend banner when needed
- From: Cyril Brulebois <kibi@debian.org>
- Date: Sun, 20 Apr 2014 23:10:52 +0200
- Message-id: <[🔎] 20140420211052.10771.69282.reportbug@arya.home.mraw.org>
Package: cdebconf-gtk-udeb Version: 0.189 Severity: important Tags: patch pending rootskel-gtk ships a 800px-wide banner, and that ought to be sufficient since the default mode is 800x600. Some systems are using a wider display though (seen with kfreebsd-amd64, or even with amd64 on some EFI-based systems), which leads to a bad display (centered banner, with a blank margin on both sides). One could think of various options, including: - ship banner in different sizes; - replicate a 1px-wide strip on the left and on the right to fill in the blanks; - stretch/scale the banner. I've decided to implement the last option. Before/after screenshots are attached. Easy to reproduce, replacing vga=788 with vga=791 on the kernel command line, at the syslinux prompt. Of course, scaling isn't looking too nice, but I feel it's better than the current situation. The patch I'm planning to commit is also attached. I note this also fixes the label's being unreadable (that happens in rescue mode for example). Mraw, KiBi.--- a/src/modules/frontend/gtk/fe_data.h +++ b/src/modules/frontend/gtk/fe_data.h @@ -66,6 +66,8 @@ struct frontend_data */ int logo_width; int logo_height; + bool logo_adjusted; + GtkWidget * logo_widget; /** Internal data of the handler of progress commands. * --- a/src/modules/frontend/gtk/ui.c +++ b/src/modules/frontend/gtk/ui.c @@ -103,6 +103,30 @@ static gboolean handle_exposed_banner(GtkWidget * widget, gchar * message; char * text; + /* There's no way to get the window size before it's realized, so + * defer (possibly) adjusting the logo size until the first expose + * event. + */ + if (TRUE != fe_data->logo_adjusted) { + fprintf(stderr, "Checking the need for logo adjustment.\n"); + + /* If logo and window widths differ, scale. */ + GtkAllocation allocation; + gtk_widget_get_allocation(fe_data->window, &allocation); + if (fe_data->logo_width != allocation.width) { + fprintf(stderr, "Logo needs scaling: width from %d to %d pixels.\n", fe_data->logo_width, allocation.width); + GdkPixbuf * scaled_pixbuf = gdk_pixbuf_scale_simple(gtk_image_get_pixbuf(GTK_IMAGE(fe_data->logo_widget)), + allocation.width, + fe_data->logo_height, + GDK_INTERP_BILINEAR); + gtk_image_set_from_pixbuf(GTK_IMAGE(fe_data->logo_widget), scaled_pixbuf); + fe_data->logo_width = allocation.width; + } else { + fprintf(stderr, "Logo needs no scaling: width stays at %d pixels.\n", allocation.width); + } + fe_data->logo_adjusted = TRUE; + } + if (NULL != fe->info) { text = q_get_description(fe, fe->info); message = g_strdup_printf( @@ -189,6 +213,8 @@ static void create_banner(struct frontend * fe, GtkWidget * container) pixbuf = gtk_image_get_pixbuf(GTK_IMAGE(logo)); fe_data->logo_width = gdk_pixbuf_get_width(pixbuf); fe_data->logo_height = gdk_pixbuf_get_height(pixbuf); + fe_data->logo_adjusted = FALSE; + fe_data->logo_widget = logo; g_signal_connect_after(G_OBJECT(banner), "expose_event", G_CALLBACK(handle_exposed_banner), fe);Attachment: before-cropped.png
Description: PNG imageAttachment: after-cropped.png
Description: PNG image
--- End Message ---
--- Begin Message ---
- To: 745359-close@bugs.debian.org
- Subject: Bug#745359: fixed in cdebconf 0.190
- From: Cyril Brulebois <kibi@debian.org>
- Date: Mon, 28 Apr 2014 11:33:51 +0000
- Message-id: <E1Wejol-0004Ky-SH@franck.debian.org>
Source: cdebconf Source-Version: 0.190 We believe that the bug you reported is fixed in the latest version of cdebconf, which is due to be installed in the Debian FTP archive. A summary of the changes between this version and the previous one is attached. Thank you for reporting the bug, which will now be closed. If you have further comments please address them to 745359@bugs.debian.org, and the maintainer will reopen the bug report if appropriate. Debian distribution maintenance software pp. Cyril Brulebois <kibi@debian.org> (supplier of updated cdebconf package) (This message was generated automatically at their request; if you believe that there is a problem with it please contact the archive administrators by mailing ftpmaster@ftp-master.debian.org) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Format: 1.8 Date: Mon, 28 Apr 2014 13:10:14 +0200 Source: cdebconf Binary: cdebconf cdebconf-gtk libdebconfclient0 libdebconfclient0-dev cdebconf-udeb cdebconf-priority libdebconfclient0-udeb cdebconf-text-udeb cdebconf-slang-udeb cdebconf-newt-udeb cdebconf-gtk-udeb Architecture: source all amd64 Version: 0.190 Distribution: unstable Urgency: medium Maintainer: Debian Install System Team <debian-boot@lists.debian.org> Changed-By: Cyril Brulebois <kibi@debian.org> Description: cdebconf - Debian Configuration Management System (C-implementation) cdebconf-gtk - Gtk+ frontend for Debian Configuration Management System cdebconf-gtk-udeb - Gtk+ frontend for Debian Configuration Management System (udeb) cdebconf-newt-udeb - Newt frontend for Debian Configuration Management System (udeb) cdebconf-priority - Change debconf priority (udeb) cdebconf-slang-udeb - S-Lang frontend for Debian Configuration Management System (udeb) cdebconf-text-udeb - Plain text frontend for Debian Configuration Management System (udeb) cdebconf-udeb - Debian Configuration Management System (C-implementation) (udeb) libdebconfclient0 - Debian Configuration Management System (C-implementation library) libdebconfclient0-dev - Development files for cdebconf libdebconfclient0-udeb - Debian Configuration Management System (C-implementation) (udeb) Closes: 745359 Changes: cdebconf (0.190) unstable; urgency=medium . * Resize banner when window width and banner width don't match (Closes: #745359). Checksums-Sha1: cbac468d02fcc8ee332817b02c7d41a7f3ff44a0 2673 cdebconf_0.190.dsc 53913c41f11c486b29dbcbb23d42fcc2f21894a5 265796 cdebconf_0.190.tar.xz 34f557e543c2610a3ddcc43b8cb2542867d42793 3344 cdebconf-priority_0.190_all.udeb 0ce4756b8c4e9a2d4564a16e72e31de3ad7ed3e1 173606 cdebconf_0.190_amd64.deb 470c2ddf0997e262cf3215a76a2d7d6a03a16bbd 70986 cdebconf-gtk_0.190_amd64.deb cb24a59d5fe5170978e22bc085218b7f3e3a660c 46170 libdebconfclient0_0.190_amd64.deb f920aefa4f2b15e24d163e4e0b1ea145b0bf874c 50710 libdebconfclient0-dev_0.190_amd64.deb be24f6a3f6baa6b9a8144eb7769aa263c511b2f3 82194 cdebconf-udeb_0.190_amd64.udeb 28ef2936fc1ac6711e579a36fa9e1976aa6a98f2 3158 libdebconfclient0-udeb_0.190_amd64.udeb 19ed866b177d28ab1033d3ca4efe010a977d335b 24534 cdebconf-text-udeb_0.190_amd64.udeb 261bf43ac03bb887344f2681156c4d418a21f6ed 20434 cdebconf-newt-udeb_0.190_amd64.udeb 6d7a12eca58406f0afe298dd8f11951fef67e30b 28738 cdebconf-gtk-udeb_0.190_amd64.udeb Checksums-Sha256: faecdadbd90effde61767a520f9818dcade38966681b1bc00c67172cc72d3956 2673 cdebconf_0.190.dsc ffc40a4f181cc93034e05c98a444b1337ea2fe706f6d30bd582630f741f520ac 265796 cdebconf_0.190.tar.xz 2c8d5107fcbba5bead6110b82b7b7db80a352a1dc21e895db82d4bc49871c3a2 3344 cdebconf-priority_0.190_all.udeb 9527766626474914081074d6e6bccb9dea4688d029949ef664d4f5d8bfb0cf51 173606 cdebconf_0.190_amd64.deb 50a9534ff55dead086202a7033154a2d9db3d0ff120d41adab3eca72314be271 70986 cdebconf-gtk_0.190_amd64.deb 17b0f4dd690001a86146acb5505e65caba369cf28d18ea9338ad765454a93e94 46170 libdebconfclient0_0.190_amd64.deb 5f7ff6ef54a9e535fa62413ccc829091e482cef85fad70eb650bad75fd6a9824 50710 libdebconfclient0-dev_0.190_amd64.deb ce7c090d4e01c77f80150da348fcca3d7be9202f018a300e28b2019ad605cb3f 82194 cdebconf-udeb_0.190_amd64.udeb 645d07171111c23ff9b49302e6cce999696daa39d22f6f86e1dfca426468c731 3158 libdebconfclient0-udeb_0.190_amd64.udeb be447bce71509114efc2094dccfb1e3cfa8c9146703082884f6f16a51a67b615 24534 cdebconf-text-udeb_0.190_amd64.udeb f0b94dc10feb7cda68c629a14384b9063eef761a70b755788eeb8d3f81578030 20434 cdebconf-newt-udeb_0.190_amd64.udeb bb577ac9cd365f4ff62a0a3431828e1737780ee787e8e2d583377650675d08a7 28738 cdebconf-gtk-udeb_0.190_amd64.udeb Files: 836cc4b906d712909a64b03d71d6292d 3344 debian-installer standard cdebconf-priority_0.190_all.udeb 41e867b0ee60be681b07b37b050e78e0 173606 utils extra cdebconf_0.190_amd64.deb 03e5b9f51c0df045c392ce115ed721e8 70986 admin extra cdebconf-gtk_0.190_amd64.deb 4951dfe8b0927af457594ad41b849afa 46170 libs optional libdebconfclient0_0.190_amd64.deb ae5322e576f6ca70aa3bd3e3c5f2dd5f 50710 libdevel optional libdebconfclient0-dev_0.190_amd64.deb e68386f49d8c01ec63399a36ad57987a 82194 debian-installer standard cdebconf-udeb_0.190_amd64.udeb 0419099b14e21da4dbf736ee95c23db3 3158 debian-installer optional libdebconfclient0-udeb_0.190_amd64.udeb 3fa71768640d4aa69d7651236a731feb 24534 debian-installer optional cdebconf-text-udeb_0.190_amd64.udeb 05615a40b6cae07dc098b7e23878e990 20434 debian-installer optional cdebconf-newt-udeb_0.190_amd64.udeb 45c7eff08afcbe8b87b8922d4ae28ae2 28738 debian-installer optional cdebconf-gtk-udeb_0.190_amd64.udeb 85b529929760de09b3b37adc207a0468 2673 utils optional cdebconf_0.190.dsc 533fb1c16d49a7a85a1a439750f55cfc 265796 utils optional cdebconf_0.190.tar.xz -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iQIcBAEBAgAGBQJTXjpVAAoJEP+RSvDCs1UgjroQAMHCq8oBUh0yTG1simnRAE9n v8gRKE1UaIaVKyskd3EKFsdQOj46YgaCoVr887FByjU/P6zPB1q4XpLwgvOtQUrY cT0SU/x1eNNbK/82NNMZ9QW5mPYxVeLY+29ZnO7PxVuOFwIX2hlwf/torCSXZ/j3 /+cjhdUFeEwwhxHrLqVqLlT06EVNYT3g/yz2mSUi/TmrDL942HjAvyjTA1ypVK8y N0pISBONW56D7+hEnBlwK7m0GppWTTAQLAsZ12RBItTcOV4FvE1665C9P/p4sHK0 mxO0bnbBhrlpZTU1JgGcyNivn4hhwh2A9MbuDi48VbYDrEXZFIC/Y89N5+o9AQNh yCnSZdGbdOghbnfJ1iHzOp9YHIxPmA6u5oWsEgi2EpHc+DQvxdozjhvPxzGCjrym rkE3MTMVj3a/20YzTwz2NMCml7qfobuH9qIFD6jXKUgbAzv1dJNOvEhmJsYUIgu6 f6WAsnT1vB4gRRLklIXK1dfY8PJXL2GCxKbkwmNYJidDwoQaBwXNzG8preComt3b BtBrnETqm+iadhKW4ssSIV81qv84emp10cnKzyrs8OKAkbaDrFlqG7S3qokA4ZP/ 85JRlrQMA9J2/I5gsCA9F9Y93lCcGlX+oOkWFEqoaTrkb4QTwTHvHu4UJR2BI9E7 waCugEFyZ11GLOl8zXyf =3iT+ -----END PGP SIGNATURE-----
--- End Message ---