Index: gtk/gtktextview.c
===================================================================
RCS file: /cvs/gnome/gtk+/gtk/gtktextview.c,v
retrieving revision 1.221
diff -u -b -B -p -r1.221 gtktextview.c
--- gtk/gtktextview.c	21 Jan 2003 22:31:29 -0000	1.221
+++ gtk/gtktextview.c	24 Jan 2003 00:26:24 -0000
@@ -4503,6 +4509,32 @@ gtk_text_view_move_cursor_internal (GtkT
     {
       gtk_text_view_scroll_hpages (text_view, count, extend_selection);
       gtk_text_view_pend_cursor_blink (text_view);
+      return;
+    }
+
+  if (!text_view->cursor_visible) 
+    {
+      GtkAdjustment *adj;
+
+      switch (step) 
+	{
+	case GTK_MOVEMENT_LOGICAL_POSITIONS:
+        case GTK_MOVEMENT_VISUAL_POSITIONS:
+        case GTK_MOVEMENT_WORDS:
+	  adj = get_hadjustment (text_view);
+	  break;
+        case GTK_MOVEMENT_DISPLAY_LINES:
+        case GTK_MOVEMENT_DISPLAY_LINE_ENDS:
+        case GTK_MOVEMENT_PARAGRAPHS:
+	  adj = get_vadjustment (text_view);
+	  break;
+	}
+      
+      if (count > 0)
+	set_adjustment_clamped (adj, adj->value + adj->step_increment);
+      else
+	set_adjustment_clamped (adj, adj->value - adj->step_increment);
+
       return;
     }
 
