diff src/keyboard.c @ 103704:6a4e411bd83b

* xterm.h (struct x_display_info): Add invisible_cursor. (struct x_output): Add current_cursor. * xterm.c (XTtoggle_invisible_pointer): New function. (x_define_frame_cursor): Don't define cursor if invisible or the same as before. Set current_cursor. (x_create_terminal): Set toggle_invisible_pointer_hook. * xfns.c (make_invisible_cursor): New function. (x_set_mouse_color): Call make_invisible_cursor. Set current_cursor. (x_window): Set current_cursor. * termhooks.h (struct terminal): Add toggle_invisible_pointer_hook. * keyboard.c (command_loop_1): Call frame_make_pointer_invisible after inserting a character. (read_avail_input): Call frame_make_pointer_visible. * frame.c (Vmake_pointer_invisible): New variable. (frame_make_pointer_invisible, frame_make_pointer_visible): New functions. (syms_of_frame): DEFVAR make-pointer-invisible, initialize to Qt. * frame.h: Declare frame_make_pointer_invisible and frame_make_pointer_visible. (struct frame): Add pointer_invisible. * cus-start.el (all): Added make-pointer-invisible.
author Jan Djärv <jan.h.d@swipnet.se>
date Fri, 03 Jul 2009 11:07:02 +0000
parents 563d704f3c48
children b729d024f6dc
line wrap: on
line diff
--- a/src/keyboard.c	Fri Jul 03 01:43:33 2009 +0000
+++ b/src/keyboard.c	Fri Jul 03 11:07:02 2009 +0000
@@ -1867,6 +1867,8 @@
 		  if (value == 2)
 		    nonundocount = 0;
 
+                  frame_make_pointer_invisible ();
+
 		  if (! NILP (Vpost_command_hook))
 		    /* Put this before calling adjust_point_for_property
 		       so it will only get called once in any case.  */
@@ -7134,6 +7136,8 @@
   if (err && !nread)
     nread = -1;
 
+  frame_make_pointer_visible ();
+
   return nread;
 }