[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#401693: Patch to make the g-i fulscreen



package: cdebconf-gtk-udeb
severity: wishlist
tags: patch

GTK frontend has currently a fixed size 800x600, but on some machines (especially PPCs) the framebuffer device has a fixed size which is greater than 800x600, resulting in a ugly frame around the installer.
This patch takes care of making the frontend going "fullscreen".

Attilio
--- gtk.c	2006-12-05 12:56:44.000000000 +0100
+++ gtk.c.fullscreen	2006-12-05 13:02:00.000000000 +0100
@@ -57,9 +57,6 @@
 #include <directfb.h>
 #endif
 
-#define WINDOW_WIDTH 800
-#define WINDOW_HEIGHT 600
-
 /* maximum length for string questions */
 #define STRING_MAX_LENGTH 128
 
@@ -67,6 +64,7 @@
 #define PROGRESSBAR_HPADDING 60
 #define PROGRESSBAR_VPADDING 60
 
+int screen_width, screen_height;
 typedef int (gtk_handler)(struct frontend *obj, struct question *q, GtkWidget *questionbox);
 
 static GCond *button_cond = NULL;
@@ -245,7 +243,7 @@
             pango_layout_set_font_description(layout, pango_font_description_from_string("Sans 12"));
             pango_layout_get_pixel_size(layout, &w, &h);
             /* obj->info is drawn over the debian banner, top-right corner of the screen */
-            gdk_draw_layout(wid->window, gdk_gc_new(wid->window),  WINDOW_WIDTH - w - 4, 4, layout);
+            gdk_draw_layout(wid->window, gdk_gc_new(wid->window),  screen_width - w - 4, 4, layout);
             free(message);
         }
         free(text);
@@ -1445,8 +1443,10 @@
     
     gtk_init (&args, &name);
 
+    screen_width = gdk_screen_get_width (gdk_screen_get_default ());
+    screen_height = gdk_screen_get_height (gdk_screen_get_default ());
     window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
-    gtk_widget_set_size_request (window, WINDOW_WIDTH, WINDOW_HEIGHT);
+    gtk_widget_set_size_request (window, screen_width, screen_height);
     gtk_window_set_resizable (GTK_WINDOW (window), TRUE);
     gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
     gtk_window_set_decorated (GTK_WINDOW (window), TRUE);

Reply to: