--- dialog.c.asterisk	Sun Apr 23 21:22:24 2000
+++ dialog.c	Mon Dec 25 21:50:59 2000
@@ -348,7 +348,7 @@
 	av[1],
 	atoi(av[2]),
 	atoi(av[3]),
-	init_inputbox, 1);
+	init_inputbox, 2);
     if (ret == 0)
 	fprintf(stderr, "%s", dialog_input_result);
     return ret;
--- dialog.h.asterisk	Wed Apr 26 01:48:32 2000
+++ dialog.h	Mon Dec 25 21:51:01 2000
@@ -284,7 +284,7 @@
 
 /* inputstr.c */
 extern bool dlg_edit_string(char *string, int *offset, int key, bool force);
-extern void dlg_show_string(WINDOW *win, char *string, int offset, chtype attr, int y_base, int x_base, int x_last, bool hidden, bool force);
+extern void dlg_show_string(WINDOW *win, char *string, int offset, chtype attr, int y_base, int x_base, int x_last, int hidden, bool force);
 
 /* util.c */
 extern int dlg_default_item(char **items, int llen);
--- inputstr.c.asterisk	Wed Apr 26 01:29:16 2000
+++ inputstr.c	Mon Dec 25 21:51:09 2000
@@ -83,27 +83,48 @@
 
 void
 dlg_show_string(WINDOW *win, char *string, int offset, chtype attr,
-    int y_base, int x_base, int x_last, bool hidden, bool force)
+    int y_base, int x_base, int x_last, int hidden, bool force)
 {
-    if (hidden) {
-	if (force) {
-	    wmove(win, y_base, x_base);
-	    wrefresh_lock(win);
-	}
-    } else {
-	int i, input_x;
-	int len = strlen(string);
-	int scrollamt = (offset + 1 - x_last);
+    switch(hidden) {
+	case 0: {
+                int i, input_x;
+  	        int len = strlen(string);
+	        int scrollamt = (offset + 1 - x_last);
 
-	if (scrollamt < 0)
-	    scrollamt = 0;
-	input_x = offset - scrollamt;
+	        if (scrollamt < 0)
+	            scrollamt = 0;
+ 	        input_x = offset - scrollamt;
 
-	wattrset(win, attr);
-	wmove(win, y_base, x_base);
-	for (i = 0; i < x_last; i++)
-	    waddch(win, (i + scrollamt) < len ? CharOf(string[scrollamt + i]) : ' ');
-	wmove(win, y_base, x_base + input_x);
-	wrefresh_lock(win);
+ 	        wattrset(win, attr);
+	        wmove(win, y_base, x_base);
+	     	for (i = 0; i < x_last; i++)
+	            waddch(win, (i + scrollamt) < len ? CharOf(string[scrollamt + i]) : ' ');
+	    	    wmove(win, y_base, x_base + input_x);
+	     	wrefresh_lock(win);
+	    }
+	    break;
+	case 1:
+ 	    if (force) {
+	        wmove(win, y_base, x_base);
+	        wrefresh_lock(win);
+	    }
+	    break;
+	case 2: {
+                int i, input_x;
+  	        int len = strlen(string);
+	        int scrollamt = (offset + 1 - x_last);
+
+	        if (scrollamt < 0)
+	            scrollamt = 0;
+ 	        input_x = offset - scrollamt;
+
+ 	        wattrset(win, attr);
+	        wmove(win, y_base, x_base);
+	     	for (i = 0; i < x_last; i++)
+	            waddch(win, (i + scrollamt) < len ? '*' : ' ');
+	    	    wmove(win, y_base, x_base + input_x);
+	     	wrefresh_lock(win);
+	    }
+	    break;	      
     }
 }
--- textbox.c.asterisk	Wed Apr 26 01:50:21 2000
+++ textbox.c	Mon Dec 25 21:51:14 2000
@@ -575,7 +575,7 @@
 	}
 	if (dlg_edit_string(input, &offset, key, first)) {
 	    dlg_show_string(dialog, input, offset, searchbox_attr,
-		box_y, box_x, box_width, FALSE, first);
+		box_y, box_x, box_width, 0, first);
 	    first = FALSE;
 	}
     }
