w32uniscribe.c (uniscribe_shape): Update commentary. Don't
try to reorder grapheme clusters, since LGSTRING should always
hold them in the logical order.
(uniscribe_encode_char, uniscribe_shape): Force ScriptShape to
return glyph codes in the logical order.
(blink-paren-post-self-insert-function): New function.
(post-self-insert-hook): Use it.
* src/cmds.c (Vblink_paren_function): Remove.
(internal_self_insert): Make it insert N chars at a time.
Don't call blink-paren-function.
(Fself_insert_command): Adjust accordingly.
(syms_of_cmds): Don't declare blink-paren-function.
* lisp/mouse.el (mouse-yank-primary): Avoid setting primary when
deactivating the mark (Bug#6872).
* src/keyboard.c (command_loop_1): Don't set primary selection during
handle-switch-frame (Bug#6872).
(Fdbus_close_bus): New function.
(Vdbus_registered_buses): New variable.
(xd_initialize): Implement string as bus address.
(Fdbus_init_bus): Add bus to Vdbus_registered_buses).
(Fdbus_get_unique_name, Fdbus_call_method)
(Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
(Fdbus_method_error_internal, Fdbus_send_signal)
(Fdbus_register_signal, Fdbus_register_method): Remove bus type
check. This is done in xd_initialize_bus. Adapt doc string, if
necessary.
(xd_pending_messages, xd_read_queued_messages): Loop over buses in
Vdbus_registered_buses.
(Vdbus_registered_objects_table): Create hash.
* lisp/simple.el (read-extended-command): New function with the logic
for `completing-read' moved to Elisp from `execute-extended-command'.
Use `function-called-at-point' in `minibuffer-default-add-function'
to get a command name for M-n (bug#5364, bug#5214).
* src/keyboard.c (Fexecute_extended_command): Move reading a command name
with `completing-read' to a new Elisp function `read-extended-command'.
Call it to read a command to `function' (bug#5364, bug#5214).
sysselect.h [WINDOWSNT]: Don't define the FD_* and select stuff for w32.
s/ms-w32.h (HAVE_SYS_TIMEB_H): Don't #undef HAVE_SYS_SELECT_H, it's done
in nt/config.nt.
makefile.w32-in ($(BLD)/sysdep.$(O)): Depend on sysselect.h.
All non-MSDOS non-WINDOWSNT platforms define HAVE_TERMIOS, so
HAVE_TERMIO code is obsolete.
Replace HAVE_TERMIOS conditionals with !DOS_NT.
* src/systty.h: Do not define HAVE_TCATTR.
Remove HAVE_TERMIO, HAVE_LTCHARS and HAVE_TCHARS code.
Do not define EMACS_HAVE_TTY_PGRP. Only define
EMACS_GET_TTY_PGRP for !DOS_NT.
* src/sysdep.c: Include sysselect.h unconditionally. Do not include
sys/ioctl.h and termios.h, systty.h does it. Use
HAVE_SYS_UTSNAME_H instead of USG as an include guard.
(init_baud_rate): Remove HAVE_TERMIO code.
(child_setup_tty): Remove HAVE_TERMIO code.
(emacs_get_tty, emacs_set_tty): Remove HAVE_TERMIO, HAVE_TCHARS
and HAVE_LTCHARS code. Use !DOS_NT instead of HAVE_TCATTR.
(new_ltchars, new_tchars): Remove, unused.
(init_sys_modes): Remove HAVE_TERMIO, HAVE_TCHARS and HAVE_LTCHARS
code. Remove special casing for __mips__, it was a no-op. Remove
HAVE_TCATTR conditional, it is implied by HAVE_TERMIOS.
(init_sys_modes): Remove HPUX special case.
* src/process.c: Include stdlib.h unconditionally. Do not include
fcntl.h, systty.h does it. Remove conditional code for
HAVE_SERIAL, it is always true.
(process_send_signal): Remove HAVE_TERMIOS conditional, it's
always true when SIGNALS_VIA_CHARACTERS is true.
(Fcontinue_process, Fprocess_send_eof): Simplify conditionals:
!WINDOWSNT means HAVE_TERMIOS.
(create_process): Remove HAVE_TERMIOS, it's inside a HAVE_PTYS
conditional, which is true for all HAVE_TERMIOS systems.
* src/keyboard.c (init_keyboard): Do not use HAVE_TERMIO, use !DOS_NT
instead of HAVE_TERMIOS.
* src/emacs.c (shut_down_emacs): Use !defined DOS_NT instead of
EMACS_HAVE_TTY_PGRP.
* src/callproc.c (child_setup): Move EMACS_SET_TTY_PGRP use to the
non-MSDOS, non-WINDOWSNT code, it's only defined for such systems
anyway.
msdos/mainmake.v2 (version): Update due to change in emacs.c.
src/emacs.c <emacs_version>: Add a comment regarding msdos/mainmake.v2's
dependency on the syntax of this declaration.
msods/mainmake.v2 (version): Update due to change in emacs.c.
src/emacs.c <emacs_version>: Add a comment regarding msdos/mainmake.v2's
dependency on the syntax of this declaration.
dispnew.c (buffer_posn_from_coords): Fix calculation of buffer
position for R2L lines by mirroring the pixel position wrt the
text are box. Improve commentary.