Stefan Monnier [Fri, 10 Aug 2012 14:47:12 +0000 (10:47 -0400)]
* lisp/term/x-win.el (x-menu-bar-open): Always pass last-nonmenu-event.
* lisp/subr.el (eventp): `nil' is not an event, and eventp is not hot.
(event-start, event-end): Use posn-at-point to return a more
informative posn.
(posnp): New function.
* lisp/mouse.el (popup-menu-normalize-position): Use it.
Dmitry Antipov [Fri, 10 Aug 2012 13:24:20 +0000 (17:24 +0400)]
Fix last change to allow compilation with low optimization levels.
* intervals.c (INTERVALS_INLINE): Define to EXTERN_INLINE.
Reported by Jan Djärv <jan.h.d@swipnet.se>.
Masatake YAMATO [Fri, 10 Aug 2012 12:44:06 +0000 (08:44 -0400)]
* lisp/mouse.el (popup-menu-normalize-position): New function.
(popup-menu): Use `popup-menu-normalize-position' to normalize
the form for POSITION argument.
* lisp/term/x-win.el (x-menu-bar-open):
Use the value returend from (posn-at-point) as position
passed to `popup-menu'.
Eli Zaretskii [Fri, 10 Aug 2012 07:16:58 +0000 (10:16 +0300)]
Improve commit in 2012-08-10T06:54:37Z!eliz@gnu.org.
src/w32fns.c <w32_unicode_gui>: New static variable.
(globals_of_w32fns): Initialize it according to os_subtype.
(w32_init_class, w32_msg_pump, w32_wnd_proc): Use it instead of
testing os_subtype.
Eli Zaretskii [Fri, 10 Aug 2012 06:54:37 +0000 (09:54 +0300)]
Fix bug #10299 with Unicode characters sent on MS-Windows by MSKLC.
src/w32fns.c (INIT_WINDOW_CLASS): New macro.
(w32_init_class): Use it to initialize the Emacs class with either
ANSI or Unicode API calls.
(w32_msg_pump): Call GetMessageW and DispatchMessageW on NT and
later.
(w32_wnd_proc): If the character code sent by WM_CHAR or
WM_SYSCHAR is above 255, post a WM_UNICHAR message, not the
original message. Call DefWindowProcW on NT and later.
Jay Belanger [Thu, 9 Aug 2012 14:46:03 +0000 (09:46 -0500)]
calccomp.el (math-compose-expr): Add extra argument indicating that
parentheses should be put around products in denominators. Give
multiplication precedence over division during composition.
* progmodes/python.el: Enhancements to forward-sexp.
(python-nav-forward-sexp): Rename from
python-nav-forward-sexp-function.
(python-nav--forward-sexp, python-nav--backward-sexp): New
functions.
Stefan Monnier [Wed, 8 Aug 2012 19:53:44 +0000 (15:53 -0400)]
* src/xdisp.c (safe_eval_handler): Remove prototype. Receive args describing
the failing expression, include them in the error message.
* src/eval.c (internal_condition_case_n): Pass nargs and args to hfun.
* src/lisp.h (internal_condition_case_n): Update declaration.
Michael Albinus [Wed, 8 Aug 2012 13:40:45 +0000 (15:40 +0200)]
* net/tramp-sh.el (tramp-find-file-exists-command): Protect the
tests by `ignore-error'.
(tramp-find-shell): Open also a new shell, when cache is already
set. Reported by Carsten Bormann <cabo@tzi.org>. (Bug#12148)
Juri Linkov [Wed, 8 Aug 2012 08:48:57 +0000 (11:48 +0300)]
* lisp/bookmark.el: Add `defaults' property to the bookmark record.
(bookmark-current-buffer): Doc fix.
(bookmark-make-record): Add `defaults' property with default values
to the bookmark record.
(bookmark-minibuffer-read-name-map): Remove key binding "\C-u"
with `bookmark-insert-current-bookmark'.
(bookmark-set): Get `defaults' property from the bookmark record
and use it in `read-from-minibuffer'.
(bookmark-insert-current-bookmark): Remove function.
* lisp/info.el (Info-bookmark-make-record): Add `defaults' property
with values of canonical Info node name, the current Info file name
and the current Info node name.
Eli Zaretskii [Tue, 7 Aug 2012 16:53:38 +0000 (19:53 +0300)]
Fix .gdbinit to match changes with INTERNAL_FIELD.
src/.gdbinit (xframe, xwindow, nextcons, xcar, xcdr, xlist): Rename
fields to match removal of FGET and WGET and disuse of
INTERNAL_FIELD in Lisp_Cons.
Dmitry Antipov [Tue, 7 Aug 2012 13:37:21 +0000 (17:37 +0400)]
Revert and cleanup Lisp_Cons, Lisp_Misc and Lisp_Symbol things.
* src/lisp.h (struct Lisp_Symbol): Change xname to meaningful
name since all xname users are fixed long time ago. Do not use
INTERNAL_FIELD.
(set_symbol_name, set_symbol_function, set_symbol_plist):
(set_symbol_next, set_overlay_plist): New function.
(struct Lisp_Cons): Do not use INTERNAL_FIELD.
(struct Lisp_Overlay): Likewise.
(CVAR, MVAR, SVAR): Remove.
* src/alloc.c, src/buffer.c, src/buffer.h, src/bytecode.c:
* src/cmds.c, src/data.c, src/doc.c, src/eval.c, src/fns.c:
* src/keyboard.c, src/lread.c, src/nsselect.m, src/xterm.c:
Adjust users.
* src/.gdbinit: Change to use name field of struct Lisp_Symbol
where appropriate.
* admin/coccinelle/overlay.cocci, admin/coccinelle/symbol.cocci:
Remove.
* nt/config.nt: Sync with autogen/config.nt.
(BROKEN_GETWD, DISPNEW_NEEDS_STDIO_EXT): New macros.
(PENDING_OUTPUT_COUNT): Move definition to inc/ms-w32.h.
Dmitry Antipov [Tue, 7 Aug 2012 07:42:34 +0000 (11:42 +0400)]
Drop PGET and revert read access to Lisp_Objects slots of Lisp_Process.
* process.h (PGET): Remove.
(struct Lisp_Process): Do not use INTERNAL_FIELD.
* gnutls.c, print.c, process.c, sysdep.c, w32.c, xdisp.c: Adjust users.
Chong Yidong [Tue, 7 Aug 2012 07:02:04 +0000 (15:02 +0800)]
Check for live frames explicitly in window.c functions which need it.
* window.c (Fwindow_edges, Fwindow_pixel_edges)
(Fwindow_absolute_pixel_edges, Fdelete_other_windows_internal)
(Fdelete_window_internal): Signal an error if the window is not on
a live frame.
Stefan Monnier [Mon, 6 Aug 2012 21:05:48 +0000 (17:05 -0400)]
* lisp/help-fns.el (help-fns--key-bindings, help-fns--signature)
(help-fns--parent-mode, help-fns--obsolete): New funs, extracted from
describe-function-1.
(describe-function-1): Use them. Move compiler macro after sig.
(help-fns--compiler-macro): Use function-get. Assume we're already in
standard-output. Adjust layout to new call order.
Glenn Morris [Mon, 6 Aug 2012 20:22:22 +0000 (16:22 -0400)]
Remove GNU_LIBRARY_PENDING_OUTPUT_COUNT
* configure.ac (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Remove.
(PENDING_OUTPUT_COUNT): Absorb GNU_LIBRARY_PENDING_OUTPUT_COUNT.
(DISPNEW_NEEDS_STDIO_EXT): New define.
* src/dispnew.c (GNU_LIBRARY_PENDING_OUTPUT_COUNT, PENDING_OUTPUT_COUNT):
Let configure handle it.
(stdio_ext.h) [DISPNEW_NEEDS_STDIO_EXT]: Include it.
* nt/config.nt (GNU_LIBRARY_PENDING_OUTPUT_COUNT): Remove.
(PENDING_OUTPUT_COUNT): Define it as dispnew.c used to.
Dmitry Antipov [Mon, 6 Aug 2012 16:55:46 +0000 (20:55 +0400)]
Use GCALIGNMENT where appropriate.
* alloc.c (XMALLOC_HEADER_ALIGNMENT, roundup_size):
(union aligned_Lisp_Symbol, union aligned_Lisp_Misc):
(mark_maybe_pointer, pure_alloc): Change to use GCALIGNMENT.
Eli Zaretskii [Mon, 6 Aug 2012 16:55:41 +0000 (19:55 +0300)]
Fix bug #12138 with indexing "closures".
doc/lispref/functions.texi (Closures): Put the main index entry for
"closures" here.
doc/lispref/variables.texi (Lexical Binding): Disambiguate the index entry
for "closures".
Dmitry Antipov [Mon, 6 Aug 2012 15:45:27 +0000 (19:45 +0400)]
Fix Windows build errors introduced after converting to WGET and WSET.
* w32term.c (w32_set_vertical_scroll_bar): Change to use WSET.
Reported by Andy Moreton <andrewjmoreton@gmail.com>.
Dmitry Antipov [Mon, 6 Aug 2012 11:16:07 +0000 (15:16 +0400)]
Separate read and write access to Lisp_Object slots of Lisp_Process.
* process.h (PGET, PSET): New macros similar to AREF and ASET.
* gnutls.c, print.c, process.c, sysdep.c, w32.c, xdisp.c: Adjust users.
Dmitry Antipov [Mon, 6 Aug 2012 09:28:17 +0000 (13:28 +0400)]
Fix Windows build errors introduced after converting to FGET and FSET.
* w32term.c (x_frame_rehighlight, x_scroll_bar_create):
(w32_condemn_scroll_bars, w32_redeem_scroll_bar):
(w32_judge_scroll_bars): Change to use FSET.
Reported by Andy Moreton <andrewjmoreton@gmail.com>.
Dmitry Antipov [Mon, 6 Aug 2012 08:32:49 +0000 (12:32 +0400)]
Fix replacement typo.
* window.c (replace_window): Set root_window instead of
selected_window. This fixes a total window subsystem
malfunction reported by Bastien Guerry <bzg@gnu.org>.