Ken Brown [Sun, 17 Mar 2013 14:34:18 +0000 (10:34 -0400)]
Fix return type of image_background (Bug#13981)
* src/dispextern.h (RGB_PIXEL_COLOR): Move here from image.c. Use it
as return type of image_background. (Bug#13981)
* src/image.c (RGB_PIXEL_COLOR): Move to dispextern.h.
Jan Djärv [Sat, 16 Mar 2013 13:52:12 +0000 (14:52 +0100)]
* nsfns.m (ns_filename_from_panel, ns_directory_from_panel): New
functions.
(Fns_read_file_name): ret is BOOL. If ! dir_only_p, don't choose
directories. If filename is nil, get directory name.
Use getFilename and getDirectory.
(getFilename, getDirectory): New methods for EmacsSavePanel and
EmacsOpenPanel.
(ok:): In EmacsOpenPanel, if we can't choose directories, just return.
* nsterm.h (EmacsSavePanel, EmacsOpenPanel): Add getFilename
and getDirectory.
Eli Zaretskii [Sat, 16 Mar 2013 08:20:36 +0000 (10:20 +0200)]
Fix command-line-normalize-file-name for DOS/Windows file names.
lisp/startup.el (command-line-normalize-file-name): Fix handling of
backslashes in DOS and Windows file names. Reported by Xue Fuqiao
<xfq.free@gmail.com> in
http://lists.gnu.org/archive/html/help-gnu-emacs/2013-03/msg00245.html.
Dmitry Antipov [Fri, 15 Mar 2013 07:23:49 +0000 (11:23 +0400)]
* region-cache.c (find_cache_boundary, move_cache_gap)
(insert_cache_boundary, delete_cache_boundaries, set_cache_region):
Simplify debugging check and convert to eassert. Adjust comment.
(pp_cache): Put under ENABLE_CHECKING.
Tassilo Horn [Thu, 14 Mar 2013 21:33:07 +0000 (22:33 +0100)]
* doc-view.el Fix bug#13887.
(doc-view-insert-image): Don't modify overlay associated to
non-live windows, and implement horizontal centering of image in
case it's smaller than the window.
(doc-view-new-window-function): Force redisplay of new windows on
doc-view buffers.
Eli Zaretskii [Thu, 14 Mar 2013 17:37:51 +0000 (19:37 +0200)]
Fix bug #13953 with spontaneous frame resizes on MS-Windows.
src/w32term.c (w32_read_socket) <WM_WINDOWPOSCHANGED>: Remove old
and incorrect code. Treat WM_WINDOWPOSCHANGED like WM_ACTIVATE
and WM_ACTIVATEAPP.
(w32fullscreen_hook): If the frame is visible, reset
f->want_fullscreen flag after changing the frame size. If the
frame is not visible, set f->want_fullscreen to FULLSCREEN_WAIT.
Tassilo Horn [Thu, 14 Mar 2013 15:24:04 +0000 (16:24 +0100)]
* doc-view.el (doc-view-insert-image): Don't modify overlay
associated with pseudo winprops entry, and implement horizontal
centering of image in case it's smaller than the window
(bug#13887).
Stefan Monnier [Thu, 14 Mar 2013 03:00:18 +0000 (23:00 -0400)]
* leim/quail/latin-ltx.el: Resolve conflicts.
(latin-ltx--mark-map, latin-ltx--mark-re): New constants.
(latin-ltx--define-rules): Check for conflicts. Eval `re's.
(rules): Use tighter regexps to avoid conflicts.
Consolidate the various rules for combining marks.
* emacs.c (main): Call syms_of_cygw32 on CYGWIN non-NTGUI builds
too so that these builds can use Cygwin's file conversion
functions. (We've been building and linking cygw32.o all along
and just not using it.)
Paul Eggert [Wed, 13 Mar 2013 18:42:22 +0000 (11:42 -0700)]
File synchronization fixes.
* admin/CPP-DEFINES (BSD_SYSTEM, HAVE_FSYNC): Remove.
* admin/merge-gnulib (GNULIB_MODULES): Add fsync, fdatasync.
* configure.ac (BSD_SYSTEM, BSD_SYSTEM_AHB): Remove; no longer needed.
(fsync): Remove check; now done by gnulib.
* lib/fdatasync.c, lib/fsync.c, m4/fdatasync.m4, m4/fsync.m4:
New files, from gnulib.
* lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
* lib-src/Makefile.in (LIB_FDATASYNC): New macro.
(emacsclient${EXEEXT}): Use it.
* lib-src/emacsclient.c (main): Use fdatasync, not fsync, since we don't
care about metadata. Keep trying if interrupted.
* lib-src/movemail.c (main, popmail): Don't worry about BSD_SYSTEM, since
fsync is available everywhere (or there is a substitute). Don't
report an error if fsync returns EINVAL.
* nt/inc/ms-w32.h (fdatasync): New macro, suggested by Eli Zaretskii.
* src/Makefile.in (LIB_FDATASYNC): New macro.
(LIBES): Use it.
* src/conf_post.h (BSD_SYSTEM, BSD_SYSTEM_AHB): Remove; no longer needed.
* src/fileio.c (Fwrite_region, write_region_inhibit_fsync):
Don't worry about HAVE_FSYNC, since a substitute fsync is
available if the system lacks one.
(Fwrite_regin): Retry fsync if interrupted.
Paul Eggert [Wed, 13 Mar 2013 05:04:46 +0000 (22:04 -0700)]
* sysdep.c: Remove a use of BSD_SYSTEM, which I'm trying to phase out.
Include <sys/param.h> unconditionally, as that works elsewhere and
is simpler here. Include <sys/sysctl.h> if DARWIN_OS ||
__FreeBSD__, not if BSD_SYSTEM, since it's needed only for Darwin
and FreeBSD now.
Paul Eggert [Wed, 13 Mar 2013 00:38:42 +0000 (17:38 -0700)]
Merge from gnulib.
This incorporates:
2013-03-12 mktime: fix configure typo
2013-03-11 regex: port to mingw's recent addition of undeclared alarm
2013-03-11 putenv: avoid compilation warning on mingw
2013-03-11 unistd: don't prevent Tru64 Unix from using gnulib strtod.
Glenn Morris [Mon, 11 Mar 2013 08:09:21 +0000 (01:09 -0700)]
Small updates for make-manuals admin scripts
* admin/admin.el (make-manuals): Add emacs-lisp-intro and some more
doc/misc manuals.
(manual-html-mono, manual-html-node, manual-txt): Pass -I to makeinfo.
Stefan Monnier [Mon, 11 Mar 2013 04:24:15 +0000 (00:24 -0400)]
* lisp/term/xterm.el: Don't discard input. Use lexical-binding.
(xterm--report-background-handler, xterm--query): New functions.
(terminal-init-xterm): Use them.
Michael Mauger [Mon, 11 Mar 2013 04:09:37 +0000 (00:09 -0400)]
* progmodes/sql.el Version 3.2
Please note that my address changed to <michael@mauger.com>; the
<mmaug@yahoo.com> address remains active.
(sql-connection-alist): Updates documentation to fix bug#13715.
(sql-connect): Handle missing `sql-connection-alist' correctly.
(sql-mode-oracle-font-lock-keywords): Add missing keywords.
(sql-magic-go, sql-magic-semicolon): Mark with `delete-selection'
property.
(sql-default-value): New function.
(sql-get-login-ext, sql-get-login): Fixes bug where buffer-local
values were not used.
(sql-rename-buffer): Make sure alternate buffer name has no text
properties.
(sql-input-sender, sql-execute-feature): Fetch variable with
`buffer-local-value' rather than `with-current-buffer'.
(sql-*): Use #' function syntax consistently.
(sql-*): Use message/error/user-error consistently.
Stefan Monnier [Mon, 11 Mar 2013 01:17:40 +0000 (21:17 -0400)]
* src/keyboard.c: Move keyboard decoding to read_key_sequence.
(decode_keyboard_code): Remove.
(tty_read_avail_input): Don't try to decode input.
(read_decoded_char): New function.
(read_key_sequence): Use it.
* w32term.h (GUISTR, GUI_ENCODE_FILE, GUI_ENCODE_SYSTEM, GUI_FN)
(GUI_SDATA, guichar_t): Macros to abstract out differences between
NTGUI_UNICODE and !NTGUI_UNICODE builds, some moved out of
w32fns.c.
* w32term.c (construct_drag_n_drop): Use the above macros to make
drag-and-drop work for non-ASCII filenames in cygw32 builds.
* w32fns.c (x_set_name, x_set_title): Use the above macros to
properly display non-ASCII frame titles in cygw32 builds.
* w32fns.c (Fw32_shell_execute): Use the above macros to properly
call ShellExecute in cygw32 builds.
* w32fn.c (Fx_file_dialog): Use the above macros to simplify the
common file dialog code.
* w32fns.c (Ffile_system_info): Remove from cygw32 builds, which
can just use du like other systems.
Stefan Monnier [Sun, 10 Mar 2013 21:37:42 +0000 (17:37 -0400)]
* lisp/comint.el: Use with-silent-modifications.
(comint-send-input, comint-snapshot-last-prompt)
(comint-output-filter, comint-update-fence): Use with-silent-modifications.
Eli Zaretskii [Sun, 10 Mar 2013 17:28:04 +0000 (19:28 +0200)]
Use macros from dispextern.h where appropriate.
src/xdisp.c (display_tool_bar_line, redisplay_tool_bar)
(redisplay_internal, set_cursor_from_row, try_window)
(try_window_id, dump_glyph_row, extend_face_to_end_of_line)
(display_line, notice_overwritten_cursor)
(mouse_face_from_buffer_pos, note_mouse_highlight): Use
MATRIX_ROW_DISPLAYS_TEXT_P.
(note_mouse_highlight): Use MATRIX_ROW_GLYPH_START.
(mouse_face_from_string_pos, fast_find_string_pos): Use
MATRIX_ROW_VPOS.
src/xfns.c (Fx_show_tip): Use MATRIX_ROW_DISPLAYS_TEXT_P.
src/w32fns.c (Fx_show_tip): Use MATRIX_ROW_DISPLAYS_TEXT_P.
src/xdisp.c (try_cursor_movement): Use MATRIX_ROW and
MATRIX_MODE_LINE_ROW.
src/dispnew.c (update_window): Use MATRIX_ROW and MATRIX_MODE_LINE_ROW.
Jambunathan K [Sun, 10 Mar 2013 08:44:07 +0000 (14:14 +0530)]
Provide for customizing default regexp in occur commands (Bug#13892).
* lisp/replace.el (occur-read-regexp-defaults-function): New var.
(occur-read-regexp-defaults): New defun.
(occur-read-primary-args): Propagate above change.
Michael Albinus [Sat, 9 Mar 2013 11:06:23 +0000 (12:06 +0100)]
Major rewrite due to changed D-Bus interface of GVFS 1.14.
* net/tramp-gvfs.el (top): Extend check for gvfs availability.
(tramp-gvfs-methods-mounttracker, tramp-gvfs-listmounts)
(tramp-gvfs-mountlocation, tramp-gvfs-mountlocation-signature):
New defconst.
(tramp-gvfs-file-name-handler-alist) [directory-files]:
[directory-files-and-attributes, file-exists-p, file-modes]: Use
Tramp default handler.
[file-acl, file-selinux-context, process-file, set-file-acl]:
[set-file-modes, set-file-selinux-context, shell-command]:
[start-file-process ]: Remove handler.
[verify-visited-file-modtime]: New handler.
(tramp-gvfs-dbus-string-to-byte-array)
(tramp-gvfs-dbus-byte-array-to-string): New defuns. Replace all
calls of `dbus-string-to-byte-array' and
`tramp-gvfs-dbus-byte-array-to-string'.
(tramp-gvfs-handle-copy-file)
(tramp-gvfs-handle-delete-directory)
(tramp-gvfs-handle-delete-file, tramp-gvfs-handle-file-attributes)
(tramp-gvfs-handle-file-directory-p)
(tramp-gvfs-handle-file-executable-p)
(tramp-gvfs-handle-file-name-all-completions)
(tramp-gvfs-handle-file-readable-p)
(tramp-gvfs-handle-file-writable-p)
(tramp-gvfs-handle-insert-directory)
(tramp-gvfs-handle-insert-file-contents)
(tramp-gvfs-handle-make-directory, tramp-gvfs-handle-rename-file)
(tramp-gvfs-handle-set-visited-file-modtime)
(tramp-gvfs-handle-write-region): Rewrite.
(tramp-gvfs-handle-file-acl)
(tramp-gvfs-handle-file-selinux-context)
(tramp-gvfs-handle-process-file, tramp-gvfs-handle-set-file-acl)
(tramp-gvfs-handle-set-file-modes)
(tramp-gvfs-handle-set-file-selinux-context)
(tramp-gvfs-handle-shell-command)
(tramp-gvfs-handle-start-file-process)
(tramp-gvfs-handle-verify-visited-file-modtime): Remove defuns.
(tramp-gvfs-url-file-name): Do not use `file-truename', we work
over the symlinks. Fix user handling.
(top, tramp-gvfs-handler-mounted-unmounted): Handle different names
of the D-Bus signals.
(tramp-gvfs-connection-mounted-p): Handle different names of the
D-Bus methods.
(tramp-gvfs-mount-spec-entry): New defun.
(tramp-gvfs-mount-spec): Use it.
(tramp-gvfs-maybe-open-connection): Check, that in case of "smb"
there is a share name. Handle different names of the D-Bus
signals and methods.
(tramp-gvfs-maybe-open-connection): Set connection properties
needed for `tramp-check-cached-permissions'.
(tramp-gvfs-send-command): Apply `tramp-gvfs-maybe-open-connection'.
Return t or nil.
* net/tramp.el (tramp-backtrace): Move up.
(tramp-error): Apply a backtrace into the debug buffer when
`tramp-verbose > 9.
(tramp-file-mode-type-map, tramp-file-mode-from-int)
(tramp-file-mode-permissions, tramp-get-local-uid)
(tramp-get-local-gid, tramp-check-cached-permissions): Move from
tramp-sh.el.
Stefan Monnier [Sat, 9 Mar 2013 04:15:53 +0000 (23:15 -0500)]
Separate mouse-1-click-follows-link from mouse-drag-region.
* lisp/mouse.el (mouse--down-1-maybe-follows-link): New function.
(key-translation-map): Use it to implement mouse-1-click-follows-link.
(mouse-drag-line, mouse-drag-track): Remove mouse-1-click-follows-link code.
(mouse--remap-link-click-p): Remove.
* src/keyboard.c (access_keymap_keyremap): Accept nil return value from
functions to mean "no change".
* src/keyboard.h (EVENT_START, EVENT_END, POSN_WINDOW, POSN_POSN)
(POSN_WINDOW_POSN, POSN_TIMESTAMP): Be careful since events may come
from Elisp via unread-command-events.