diff -ruN newt-0.52.2-old/scale.c newt-0.52.2/scale.c
--- newt-0.52.2-old/scale.c	2002-06-11 13:52:11.000000000 +0100
+++ newt-0.52.2/scale.c	2006-04-11 20:41:47.000000000 +0100
@@ -82,4 +82,6 @@
         else
             SLsmg_write_char(' ');
     }
+    /* put cursor at beginning of text for better accessibility */
+    newtGotorc(co->top, co->left + xlabel);
 }
diff -ruN newt-0.52.2-old/textbox.c newt-0.52.2/textbox.c
--- newt-0.52.2-old/textbox.c	2006-04-11 20:41:29.000000000 +0100
+++ newt-0.52.2/textbox.c	2006-04-11 20:41:47.000000000 +0100
@@ -376,6 +376,8 @@
 	if (!*tb->lines[i + tb->topLine])
             dir = 'N';
     }
+    /* put cursor at beginning of text for better accessibility */
+    newtGotorc(c->top, c->left);
 }
 
 static struct eventResult textboxEvent(newtComponent co, 
