Package: grun
Version: 0.9.2-14
Severity: wishlist
Tags: patch

Using the 'fixed' layout for widgets causes them to be unable to
adjust to changes in text size, such as that caused by using different
fonts, or by translations. The following patch removes said use.

----------------------------------------------------------------------
diff --git a/grun.c b/grun.c
index 953d676..8f259c2 100644
--- a/grun.c
+++ b/grun.c
@@ -1059,7 +1059,7 @@ int main(int argc, char **argv) {
 #else
 int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int 
nShowCmd) {
 #endif
-       GtkWidget *win, *btn, *lbl, *cmb, *fix;
+        GtkWidget *win, *btn, *lbl, *cmb, *main_box, *button_box;
        GtkTooltips *tips;
        int c, len, persist, tooltips;
        char *home_env, *fname, *cmd, *icmd;
@@ -1182,7 +1182,7 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, 
LPSTR lpCmdLine, int nS
        sprintf(fname, gettext("gRun %s"), VERSION);
        gtk_window_set_title(GTK_WINDOW(win), fname);
        g_free(fname);
-       gtk_widget_set_usize(GTK_WIDGET(win), 250, 100);
+
        gtk_signal_connect(GTK_OBJECT (win), "destroy", (GtkSignalFunc) gexit, 
NULL);
        gtk_container_border_width(GTK_CONTAINER (win), 5);
 
@@ -1194,12 +1194,15 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE 
hPrevInst, LPSTR lpCmdLine, int nS
                gtk_tooltips_disable(tips);
        }
 
-       fix = gtk_fixed_new();
-       gtk_container_add(GTK_CONTAINER(win), fix);
+       main_box = gtk_vbox_new(FALSE, 5);
+       gtk_container_add(GTK_CONTAINER(win), main_box);
 
        lbl = gtk_label_new(gettext("Launch Application"));
-       gtk_fixed_put(GTK_FIXED (fix), lbl, 65, 4);
-       gtk_widget_show(lbl);
+        button_box = gtk_hbutton_box_new();
+
+       gtk_box_pack_start_defaults(GTK_BOX (main_box), lbl);
+       gtk_box_pack_end_defaults(GTK_BOX (main_box), button_box);
+
 
        list = loadHistory();
        gdat->history = list;
@@ -1214,8 +1217,9 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, 
LPSTR lpCmdLine, int nS
        cmb = gtk_combo_new();
        gdat->cmb = cmb;
        gdat->rsp = NULL;
-       gtk_widget_set_usize(GTK_WIDGET (GTK_COMBO(cmb)->entry), 215, 24);
-       gtk_fixed_put(GTK_FIXED (fix), cmb, 5, 27);
+
+       gtk_box_pack_start_defaults(GTK_BOX (main_box), cmb);
+
        if (list) {
                gtk_combo_set_popdown_strings(GTK_COMBO (cmb), list);
                gtk_entry_set_text(GTK_ENTRY (GTK_COMBO (cmb)->entry), 
list->data);
@@ -1231,14 +1235,12 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE 
hPrevInst, LPSTR lpCmdLine, int nS
        }
        gtk_signal_connect(GTK_OBJECT (GTK_COMBO (cmb)->entry), 
"key_press_event", (GtkSignalFunc) gclick, (gpointer) gdat);
        gtk_window_set_focus(GTK_WINDOW (win), GTK_COMBO (cmb)->entry);
-       gtk_widget_show(cmb);
 
        btn = gtk_button_new_with_label(gettext("OK"));
-       gtk_widget_set_usize(GTK_WIDGET(btn), 70, 24);
-       gtk_fixed_put(GTK_FIXED (fix), btn, 5, 60);
+
+       gtk_box_pack_start_defaults(GTK_BOX (button_box), btn);
        gtk_signal_connect(GTK_OBJECT (btn), "clicked", (GtkSignalFunc) launch, 
(gpointer) gdat);
        gtk_tooltips_set_tip(tips, btn, gettext("Launch application"), 
gettext("The OK button launches the application given in the entry box"));
-       gtk_widget_show(btn);
 
        if (persist) {
                btn = gtk_button_new_with_label(gettext("Close"));
@@ -1247,8 +1249,7 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, 
LPSTR lpCmdLine, int nS
                btn = gtk_button_new_with_label(gettext("Cancel"));
        }
 
-       gtk_widget_set_usize(GTK_WIDGET(btn), 70, 24);
-       gtk_fixed_put(GTK_FIXED (fix), btn, 85, 60);
+       gtk_box_pack_start_defaults(GTK_BOX (button_box), btn);
        gtk_signal_connect(GTK_OBJECT (btn), "clicked", (GtkSignalFunc) cancel, 
(gpointer) gdat);
        if (persist) {
                gtk_tooltips_set_tip(tips, btn, gettext("Close gRun"), 
gettext("The Close button will close the persistant gRun window"));
@@ -1256,16 +1257,12 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE 
hPrevInst, LPSTR lpCmdLine, int nS
        else {
                gtk_tooltips_set_tip(tips, btn, gettext("Cancel launch"), 
gettext("The Cancel button cancels the launch process and closes gRun"));
        }
-       gtk_widget_show(btn);
 
        btn = gtk_button_new_with_label(gettext("Browse"));
-       gtk_widget_set_usize(GTK_WIDGET(btn), 70, 24);
-       gtk_fixed_put(GTK_FIXED (fix), btn, 165, 60);
+       gtk_box_pack_start_defaults(GTK_BOX (button_box), btn);
        gtk_signal_connect(GTK_OBJECT (btn), "clicked", (GtkSignalFunc) browse, 
(gpointer) gdat);
        gtk_tooltips_set_tip(tips, btn, gettext("Browse for command"), 
gettext("The Browse button opens a file selection box so the user can browse 
for the command to launch"));
-       gtk_widget_show(btn);
 
-       gtk_widget_show(fix);
        gtk_window_set_policy(GTK_WINDOW (win), FALSE, FALSE, FALSE);
        gtk_widget_realize(win);
 
@@ -1280,7 +1277,7 @@ int PASCAL WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, 
LPSTR lpCmdLine, int nS
        g_free(mask);
 #endif
 #endif /* 0 */
-       gtk_widget_show(win);
+       gtk_widget_show_all(win);
        gtk_main();
         return 0;
 }
----------------------------------------------------------------------


-- 
Rodrigo Gallardo
GPG-Fingerprint: 7C81 E60C 442E 8FBC D975  2F49 0199 8318 ADC9 BC28

Attachment: signature.asc
Description: Digital signature

Reply via email to