[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/keyboard.c
From: |
Kim F. Storm |
Subject: |
[Emacs-diffs] Changes to emacs/src/keyboard.c |
Date: |
Thu, 21 Mar 2002 16:32:50 -0500 |
Index: emacs/src/keyboard.c
diff -c emacs/src/keyboard.c:1.663 emacs/src/keyboard.c:1.664
*** emacs/src/keyboard.c:1.663 Sun Mar 10 11:16:38 2002
--- emacs/src/keyboard.c Thu Mar 21 16:32:50 2002
***************
*** 6510,6523 ****
}
else
{
! /* No, so use major and minor mode keymaps.
! Don't include local-map or keymap properties, as menu-bar
! bindings are not supported in those maps (that would require
! checking for menu-bar updates after every command). */
! nmaps = current_minor_maps (NULL, &tmaps);
! maps = (Lisp_Object *) alloca ((nmaps + 2) * sizeof (maps[0]));
! bcopy (tmaps, maps, nmaps * sizeof (maps[0]));
! maps[nmaps++] = current_buffer->keymap;
}
maps[nmaps++] = current_global_map;
}
--- 6510,6530 ----
}
else
{
! /* No, so use major and minor mode keymaps and keymap property.
! Note that menu-bar bindings in the local-map and keymap
! properties may not work reliable, as they are only
! recognized when the menu-bar (or mode-line) is updated,
! which does not normally happen after every command. */
! Lisp_Object tem;
! int nminor;
! nminor = current_minor_maps (NULL, &tmaps);
! maps = (Lisp_Object *) alloca ((nminor + 3) * sizeof (maps[0]));
! nmaps = 0;
! if (tem = get_local_map (PT, current_buffer, Qkeymap), !NILP (tem))
! maps[nmaps++] = tem;
! bcopy (tmaps, (void *) (maps + nmaps), nminor * sizeof (maps[0]));
! nmaps += nminor;
! maps[nmaps++] = get_local_map (PT, current_buffer, Qlocal_map);
}
maps[nmaps++] = current_global_map;
}
***************
*** 7158,7171 ****
}
else
{
! /* No, so use major and minor mode keymaps.
! Don't include local-map or keymap properties, as tool-bar
! bindings are not supported in those maps (that would require
! checking for tool-bar updates after every command). */
! nmaps = current_minor_maps (NULL, &tmaps);
! maps = (Lisp_Object *) alloca ((nmaps + 2) * sizeof (maps[0]));
! bcopy (tmaps, maps, nmaps * sizeof (maps[0]));
! maps[nmaps++] = current_buffer->keymap;
}
/* Add global keymap at the end. */
--- 7165,7185 ----
}
else
{
! /* No, so use major and minor mode keymaps and keymap property.
! Note that tool-bar bindings in the local-map and keymap
! properties may not work reliable, as they are only
! recognized when the tool-bar (or mode-line) is updated,
! which does not normally happen after every command. */
! Lisp_Object tem;
! int nminor;
! nminor = current_minor_maps (NULL, &tmaps);
! maps = (Lisp_Object *) alloca ((nminor + 3) * sizeof (maps[0]));
! nmaps = 0;
! if (tem = get_local_map (PT, current_buffer, Qkeymap), !NILP (tem))
! maps[nmaps++] = tem;
! bcopy (tmaps, (void *) (maps + nmaps), nminor * sizeof (maps[0]));
! nmaps += nminor;
! maps[nmaps++] = get_local_map (PT, current_buffer, Qlocal_map);
}
/* Add global keymap at the end. */