emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/msdos.c


From: Kim F. Storm
Subject: [Emacs-diffs] Changes to emacs/src/msdos.c
Date: Sat, 16 Feb 2002 18:57:34 -0500

Index: emacs/src/msdos.c
diff -c emacs/src/msdos.c:1.162 emacs/src/msdos.c:1.163
*** emacs/src/msdos.c:1.162     Sat Feb 16 14:23:16 2002
--- emacs/src/msdos.c   Sat Feb 16 18:57:34 2002
***************
*** 1181,1189 ****
                          Mouse Highlight (and friends..)
   ************************************************************************/
  
- /* This is used for debugging, to turn off note_mouse_highlight.  */
- int disable_mouse_highlight;
- 
  /* If non-nil, dos_rawgetc generates an event to display that string.
     (The display is done in keyboard.c:read_char, by calling
     show_help_echo.)  */
--- 1181,1186 ----
***************
*** 1242,1247 ****
--- 1239,1247 ----
    /* There's no sense to do anything if the mouse face isn't realized.  */
    if (hl > 0)
      {
+       if (dpyinfo->mouse_face_hidden)
+       goto set_cursor_shape;
+ 
        fp = FACE_FROM_ID (SELECTED_FRAME(), dpyinfo->mouse_face_face_id);
        if (!fp)
        goto set_cursor_shape;
***************
*** 1496,1502 ****
    if (mouse_preempted)
      return;
  
!   if (disable_mouse_highlight
        || !f->glyphs_initialized_p)
      return;
  
--- 1496,1502 ----
    if (mouse_preempted)
      return;
  
!   if (NILP (Vmouse_highlight)
        || !f->glyphs_initialized_p)
      return;
  
***************
*** 2591,2596 ****
--- 2591,2597 ----
    the_only_x_display.display_info.mouse_face_mouse_x =
      the_only_x_display.display_info.mouse_face_mouse_y = 0;
    the_only_x_display.display_info.mouse_face_defer = 0;
+   the_only_x_display.display_info.mouse_face_hidden = 0;
  
    init_frame_faces (sf);
  
***************
*** 3161,3166 ****
--- 3162,3168 ----
  {
    struct input_event event;
    union REGS regs;
+   struct display_info *dpyinfo = FRAME_X_DISPLAY_INFO (SELECTED_FRAME());
    
  #ifndef HAVE_X_WINDOWS
    /* Maybe put the cursor where it should be.  */
***************
*** 3370,3376 ****
      make_event:
        if (code == 0)
        continue;
!       
        if (code >= 0x100)
        event.kind = non_ascii_keystroke;
        else
--- 3372,3384 ----
      make_event:
        if (code == 0)
        continue;
! 
!       if (!dpyinfo->mouse_face_hidden && INTEGERP (Vmouse_highlight))
!       {
!         dpyinfo->mouse_face_hidden = 1;
!         clear_mouse_face (dpyinfo);
!       }
! 
        if (code >= 0x100)
        event.kind = non_ascii_keystroke;
        else
***************
*** 3395,3400 ****
--- 3403,3414 ----
           might need to update mouse highlight.  */
        if (mouse_last_x != mouse_prev_x || mouse_last_y != mouse_prev_y)
        {
+         if (dpyinfo->mouse_face_hidden)
+           {
+             dpyinfo->mouse_face_hidden = 0;
+             clear_mouse_face (dpyinfo);
+           }
+ 
          if (x_autoselect_window_p)
            {
              int mouse_area;
***************
*** 3419,3424 ****
--- 3433,3439 ----
            }
          else
            last_mouse_window = Qnil;
+ 
          previous_help_echo = help_echo;
          help_echo = help_echo_object = help_echo_window = Qnil;
          help_echo_pos = -1;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]