1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-01-23 18:47:57 +00:00
Commit Graph

94111 Commits

Author SHA1 Message Date
Eli Zaretskii
8fccb1179b Continue work on R2L paragraphs in GUI sessions.
xdisp.c (set_cursor_from_row): Don't be fooled by truncated
 rows: don't treat them as having zero-width characters.  Improve
 comments.
 (extend_face_to_end_of_line): Use window_box_width to compute the
 width of the stretch glyph, to account for margins.  If this is
 the last glyph row, use DEFAULT_FACE_ID, to avoid painting the
 rest of the window with the region face.
2010-04-17 12:46:44 +03:00
Eli Zaretskii
f951a50681 Implement cursor on the left fringe for R2L lines.
xdisp.c (IT_OVERFLOW_NEWLINE_INTO_FRINGE): For R2L lines,
 consider the left fringe, not the right one.
 (set_cursor_from_row): Don't reverse pos_before and pos_after for
 reversed glyph rows.  Set cursor.x to negative value when the
 cursor might be on the left fringe.
 (extend_face_to_end_of_line): Append the stretch glyph only if its
 width is positive.
 (notice_overwritten_cursor, draw_phys_cursor_glyph)
 (erase_phys_cursor): For reversed cursor_row, support cursor on
 the left fringe.
 w32term.c (w32_draw_window_cursor): For reversed glyph rows,
 draw cursor on the left fringe.
 xterm.c (x_draw_window_cursor): For reversed glyph rows, draw
 cursor on the left fringe.
 fringe.c (draw_fringe_bitmap): For reversed glyph rows, allow
 cursor on the left fringe.
 dispnew.c (update_text_area): Handle reversed desired rows when
 the cursor is on the left fringe.
 (set_window_cursor_after_update): Limit cursor's hpos by -1 from
 below, not by 0, for when the cursor is on the left fringe.
2010-04-10 19:28:30 +03:00
Eli Zaretskii
2204f4de61 Initial implementation of display of R2L paragraphs in GUI sessions.
xdisp.c [HAVE_WINDOW_SYSTEM]: Add prototype for
 append_stretch_glyph.
 (set_cursor_from_row) <cursor_x>: Remove unused variable.  Fix
 off-by-one error in computing x at end of text in the row.
 (extend_face_to_end_of_line): If the row is reversed, prepend a
 stretch glyph whose width is such that the rightmost glyph will be
 drawn at the right margin of the window.
 (append_stretch_glyph): In reversed row, prepend the glyph rather
 than append it.  Set resolved_level and bidi_type of the glyph.
2010-04-10 15:40:35 +03:00
Eli Zaretskii
9cbb0335ff Overwritten from mainline. 2010-04-09 14:17:35 +03:00
Eli Zaretskii
21d2848427 Fix bug#5856: don't dereference glyphs beyond end of glyph_row.
xdisp.c (set_cursor_from_row): Don't dereference glyphs beyond
 the end of TEXT_AREA.  (Bug#5856)
2010-04-09 00:14:33 +03:00
Stefan Monnier
e754e83b65 Fix some of the problems in defsubst* (bug#5728).
* emacs-lisp/cl-macs.el (defsubst*): Don't substitute non-trivial args.
(cl-defsubst-expand): Do the substitutions simultaneously (bug#5728).
2010-04-08 15:59:46 -04:00
Jan Djärv
0269ef7730 * xsettings.c (XSETTINGS_FONT_NAME): Move XSETTINGS_FONT_NAME out of HAVE_GCONF. 2010-04-08 20:22:51 +02:00
Eli Zaretskii
5930fe974d Fix crash due to incorrect resolution of type of NSM characters (bug#5858).
bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
 prev.orig_type, for resolving type of NSM.
2010-04-08 20:35:10 +03:00
Jan Djärv
99852628a8 Lucid menus can now use Xft for fonts.
* xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
(parse_xft_settings): Also check for XSETTINGS_FONT_NAME and save that
in current_font.
(init_gconf): Read value of SYSTEM_FONT and save it in current_font.
(Ffont_get_system_normal_font, xsettings_get_system_normal_font): New
functions.
(syms_of_xsettings): Initialize current_font. defsubr
Sfont_get_system_normal_font.

* xsettings.h (Ffont_get_system_normal_font,
xsettings_get_system_normal_font): Declare.

* xfns.c (extern xlwmenu_default_font): Remove.
(Fx_create_frame): Remove setting of xlwmenu_default_font, moved
to xlwmenu.c.

* menu.c (digest_single_submenu): If USE_LUCID and HAVE_XFT, encode
menu items in UTF-8.

* xmenu.c: include xsettings.h and xlwmenu.h if USE_LUCID.
(apply_systemfont_to_menu): New function.
(set_frame_menubar, create_and_show_popup_menu): Call
apply_systemfont_to_menu.

* xlwmenu.c (xlwmenu_default_font): Make static.
(xlwMenuResources): Add XtNfaceName and XtNdefaultFace.
(string_width): Use XftTextExtentsUtf8 if HAVE_XFT.
(MENU_FONT_HEIGHT, MENU_FONT_ASCENT): Add versions for
HAVE_XFT.
(size_menu): Set max_rest_width in window_state structure.
(display_menu_item): If HAVE_XFT and xft_draw is set, use
XftDrawRect and XftDrawStringUtf8 to draw text.
(make_windows_if_needed): Set max_rest_width and xft_draw
in windows[i].
(openXftFont): New.
(XlwMenuInitialize): Call openXftFont if HAVE_XFT. If mw->menu.font
is not set, load font fixed and save it in xlwmenu_default_font.
(XlwMenuInitialize): Set max_rest_width and xft_draw in windows[0].
(XlwMenuClassInitialize): Initialize xlwmenu_default_font.
(XlwMenuRealize): Set xft_fg, xft_bg, xft_disabled_fg and
windows[0].xft_draw if xft_font is set.
(XlwMenuDestroy): Destroy all xft_draw and close xft_font.
(facename_changed): New.
(XlwMenuSetValues): Call facename_changed. If face name did change,
close old fonts and destroy xft_draw:s.  Then create new ones.

* xlwmenu.h (XtNfaceName, XtCFaceName, XtNdefaultFace,
XtCDefaultFace): New.

* xlwmenuP.h (_window_state): Add max_rest_width and xft_draw.
(_XlwMenu_part): Add faceName,xft_fg, xft_bg, xft_disabled_fg and
xft_font.

* xresources.texi (Lucid Resources): Mention faceName to set Xft fonts.
2010-04-08 18:20:32 +02:00
Sam Steingold
9a15cc5a68 add ";;;###autoload" cookies 2010-04-07 12:25:49 -04:00
Sam Steingold
9e86ab0bc7 (compilation-save-buffers-predicate): New custom variable.
(compile, recompile): Pass it to `save-some-buffers'.
2010-04-07 12:20:35 -04:00
Christoph
42d3cab7ad * lib-src/makefile.w32-in: Use parenthesis for macros for nmake compatibility. 2010-04-07 15:43:04 +02:00
Jan Djärv
b0c8b840b4 wid-edit.el (widget-choose): Put cursor on second line of the buffer (Bug#5695). 2010-04-07 14:57:04 +02:00
Jan D
7fc874c42c Fix resizing for X and non-Gtk+ build. Bug #5848.
* frame.h (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Don't use
  FRAME_LINE_TO_PIXEL_Y.

* xterm.c (x_set_window_size_1): Don't add border_width/height to
  pixelwidth/height.
2010-04-07 13:39:26 +02:00
Dan Nicolaescu
5e5a3b92e4 Simplify code for HP machines.
* m/hp800.h (LOAD_AVE_TYPE, LOAD_AVE_CVT, NO_REMAP): Do not define
for GNU_LINUX, not needed.
(UNEXEC, NEED_BSDTTY): Move definitions...
* s/hpux10-20.h (UNEXEC, NEED_BSDTTY): ... here.
2010-04-06 23:11:45 -07:00
Dan Nicolaescu
863bf4810a * m/iris4d.h (UNEXEC): Move definition ...
* s/irix6-5.h (UNEXEC): ... here.
2010-04-06 23:01:30 -07:00
Dan Nicolaescu
31527c5682 Add new VC methods: vc-log-incoming and vc-log-outgoing.
* vc.el (vc-print-log-setup-buttons): New function split out from
vc-print-log-internal.
(vc-log-internal-common): New function, a parametrized version of
vc-print-log-internal.
(vc-print-log-internal): Just call vc-log-internal-common with the
right arguments.
(vc-incoming-outgoing-internal):
(vc-log-incoming, vc-log-outgoing): New functions.
(vc-log-view-type): New permanent local variable.

* vc-hooks.el (vc-menu-map): Bind vc-log-incoming and vc-log-outgoing.

* vc-bzr.el (vc-bzr-log-view-mode): Use vc-log-view-type instead
of the dynamic bound vc-short-log.
(vc-bzr-log-incoming, vc-bzr-log-outgoing): New functions.

* vc-git.el (vc-git-log-outgoing): New function.
(vc-git-log-view-mode): Use vc-log-view-type instead
of the dynamic bound vc-short-log.

* vc-hg.el (vc-hg-log-view-mode): Use vc-log-view-type instead
of the dynamic bound vc-short-log.  Highlight the tag.
(vc-hg-log-incoming, vc-hg-log-outgoing): New functions.
(vc-hg-outgoing, vc-hg-incoming, vc-hg-outgoing-mode):
(vc-hg-incoming-mode): Remove.
(vc-hg-extra-menu-map): Do not bind vc-hg-incoming and vc-hg-outgoing.
2010-04-06 22:56:35 -07:00
Dan Nicolaescu
7ec69e2b1a Fix default-directory for vc-root-diff.
* vc.el (vc-root-diff): Bind default-directory to the root
directory for the diff command.
2010-04-06 21:14:56 -07:00
Wilson Snyder
fd9ea9d32b * verilog-mode.el (verilog-forward-sexp, verilog-calc-1): Support
"disable fork" and "fork wait" multi word keywords, suggested by
Steve Pearlmutter.
(verilog-pretty-declarations): Support lineup of declarations in
port lists.
(verilog-skip-backward-comments, verilog-skip-forward-comment-p):
fix bug for /* / comments
(verilog-backward-syntactic-ws, verilog-forward-syntactic-ws):
Speed up and simplfy as this is never called with a bound.
(verilog-pretty-declarations): Enhance to line up declarations
inside a parameter list, suggested by Alan Morgan.
(verilog-pretty-expr): Tune assignment regular expression match
string for corner cases; also use markers instead of character
number as indent changes the later.
(verilog-type-keywords): Fix pulldown as missing
keyword.
(verilog-read-sub-decls-line): Fix comments in AUTO_TEMPLATE
causing truncation of AUTOWIRE signals.  Reported by Bruce
Tennant.
(verilog-auto-inst, verilog-auto-inst-port): Add vl_mbits for
AUTO_TEMPLATEs needing multiple array bits.  Suggested by Bruce
Tennant.
(verilog-keywords):
(verilog-1800-2005-keywords, verilog-1800-2009-keywords): Add IEEE
1800-2009 keywords, including "global.".
2010-04-06 21:06:23 -07:00
Jay Belanger
cfd4160dba (calcFunc-fdiv): Use `nth' to choose elements from list. 2010-04-06 20:43:23 -05:00
Vincent Belaïche
317a26be00 (calcFunc-fdiv): Allow `fdiv' to divide fractions. 2010-04-06 20:33:00 -05:00
John Wiegley
cb1b04a5d8 Removed duplicate definition of ido-virtual-buffers 2010-04-06 14:17:55 -04:00
Juanma Barranquero
8b32731a1d Fix typos. 2010-04-06 13:02:56 +02:00
John Wiegley
2a07afc5fe Fixed duplicate names appearing in IDO buffer list (using virtuals)
* ido.el (ido-add-virtual-buffers-to-list): Fixed duplicated names
appearing in buffer list (if a live buffer name matched a recentf
file basename).  Should use uniqify to offer a real solution.
2010-04-06 03:02:57 -04:00
John Wiegley
f9a27d8615 Minor fixes to a recent contribution to ido.el
* ido.el (ido-use-virtual-buffers, ido-virtual): Moved a ChangeLog
comment to code, and added a :version tag.
(ido-virtual-buffers): Moved defvar to fix byte-compiler warning.
2010-04-05 23:38:56 -04:00
Juanma Barranquero
9caf8a8f7f Enable recentf-mode if using virtual buffers.
* ido.el (recentf-list): Declare for byte-compiler.
  (ido-virtual-buffers): Move up to silence byte-compiler.  Add docstring.
  (ido-make-buffer-list): Simplify.
  (ido-add-virtual-buffers-to-list): Simplify.  Enable recentf-mode.
2010-04-06 04:26:37 +02:00
Juri Linkov
5a97d2da2c Scrolling commands which scroll a line instead of full screen..
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01452.html

* simple.el (scroll-up-line, scroll-down-line): New commands.
Put property isearch-scroll=t on them.

* emulation/ws-mode.el (scroll-down-line, scroll-up-line):
Remove commands.
2010-04-06 02:44:24 +03:00
Juri Linkov
79ce172a46 Scrolling commands which does not signal errors at top/bottom.
http://lists.gnu.org/archive/html/emacs-devel/2010-03/msg01452.html

* simple.el (scroll-up-command, scroll-down-command): New commands.
Put property isearch-scroll=t on them.

* bindings.el (global-map): Rebind [prior] from `scroll-down' to
`scroll-down-command' and [next] from `scroll-up' to
`scroll-up-command'.

* emulation/cua-base.el: Put property CUA=move on
`scroll-up-command' and `scroll-down-command'.
(cua--init-keymaps): Remap `scroll-up-command' to `cua-scroll-up'
and `scroll-down-command' to `cua-scroll-down'.
2010-04-06 02:38:53 +03:00
Juanma Barranquero
6460e5342c lisp/help.el: Turn ChangeLog comment into source comment. 2010-04-05 22:05:47 +02:00
Juanma Barranquero
309d5b43a7 * help.el (describe-mode): Return nil (for IELM's sake). 2010-04-05 12:36:45 +02:00
Jan D
ac61e7e14f xfns.c (set_machine_and_pid_properties): Fix parantesis 2010-04-05 09:35:53 +02:00
Jan Djärv
6c1b5a1c01 Move declaration before other statements. 2010-04-04 17:29:42 +02:00
Jan Djärv
3e6bec3b8c Set WM_CLIENT_MACHINE and _NET_WM_PID properties (Bug#5828).
* xfns.c (set_machine_and_pid_properties): New function.
         (Fx_create_frame): Call set_machine_and_pid_properties.
2010-04-04 12:47:12 +02:00
Eli Zaretskii
feb72cfb93 Improve commentary of handle_stop_backwards. 2010-04-04 12:30:38 +03:00
John Wiegley
0523d11710 2010-04-04 John Wiegley <jwiegley@gmail.com>
* ido.el (ido-use-virtual-buffers): New variable to indicate
	whether "virtual buffer" support is enabled for IDO.  Essentially
	it works as follows: Say you are visiting a file and the buffer
	gets cleaned up by mignight.el.  Later, you want to switch to that
	buffer, but find it's no longer open.  With virtual buffers
	enabled, the buffer name stays in the buffer list (using the
	ido-virtual face, and always at the end), and if you select it, it
	opens the file back up again.  This allows you to think less about
	whether recently opened files are still open or not.  Most of the
	time you can quit Emacs, restart, and then switch to a file buffer
	that was previously open as if it still were.  NOTE: This feature
	has been present in iswitchb for several years now, and I'm
	porting the same logic to IDO.
	(ido-virtual): Face used to indicate virtual buffers in the list.
	(ido-buffer-internal): If a buffer is chosen, and no such buffer
	exists, but a virtual buffer of that name does (which would be why
	it was in the list), recreate the buffer by reopening the file.
	(ido-make-buffer-list): If virtual buffers are being used, call
	`ido-add-virtual-buffers-to-list' before the make list hook.
	(ido-virtual-buffers): New variable which contains a copy of the
	current contents of the `recentf-list', albeit pared down for the
	sake of speed, and with proper faces applied.
	(ido-add-virtual-buffers-to-list): Using the `recentf-list',
	create a list of "virtual buffers" to present to the user in
	addition to the currently open set.  Note that this logic could
	get rather slow if that list is too large.  With the default
	`recentf-max-saved-items' of 200, there is little speed penalty.
2010-04-04 02:55:19 -04:00
Stefan Monnier
202ff0d6ee * font-lock.el: Require CL when compiling.
(font-lock-turn-on-thing-lock): Use `case'.
2010-04-03 16:10:14 -04:00
Eli Zaretskii
0157365cb2 Fix merge conflicts in ldefs-boot.el. 2010-04-03 16:59:53 +03:00
Eli Zaretskii
1502b81937 Fix infloop in bidi buffers with vertical cursor motion at ZV.
bidi.c (bidi_resolve_explicit, bidi_level_of_next_char): Check
 bidi_it->bytepos against ZV_BYTE instead of bidi_it->ch against
 BIDI_EOB.
2010-04-03 16:43:23 +03:00
Eli Zaretskii
83d02defce Fix typo in src/ChangeLog. 2010-04-03 12:09:56 +03:00
Eli Zaretskii
8e13db7799 Revert last change in batch-update-authors. 2010-04-03 12:04:46 +03:00
Eli Zaretskii
ef43a0f4b0 Fix bug in batch-update-authors. Add bidi to AUTHORS.
emacs-lisp/authors.el (authors-fixed-entries): Add entry for Eli Zaretskii.
 (batch-update-authors): Fix popping arguments from command line.
2010-04-03 11:59:36 +03:00
Juanma Barranquero
b372fceb03 Add stubs for Windows, required after CVE-2010-0825 change.
* ntlib.c (getgid, getegid, setegid): New stubs.
* ntlib.h (getgid, getegid, setegid): Declare them.
2010-04-03 04:23:51 +02:00
Stefan Monnier
2912322b80 Merge from emacs-23 2010-04-02 21:54:24 -04:00
Chong Yidong
d86d8ea85a Bump version to 23.1.95. 2010-04-02 20:42:10 -04:00
Dan Nicolaescu
a568f507d1 * m/intel386.h (NO_REMAP): Move definition ...
* s/msdos.h (NO_REMAP): ... here.
2010-04-02 17:24:53 -07:00
Dan Nicolaescu
4cd9f6c2f9 * m/vax.h (CRT0_DUMMIES): Remove, unused. 2010-04-02 17:20:04 -07:00
Dan Nicolaescu
c435b43224 * ecrt0.c: Remove MSDOS, m68k and __sparc__ conditionals, file not
used on those platforms.
2010-04-02 17:06:38 -07:00
Juri Linkov
9c13a46e07 * ehelp.el (electric-help-orig-major-mode): New buffer-local variable.
(electric-help-mode): Set it to original major-mode.  Doc fix.
(with-electric-help): Use `electric-help-orig-major-mode' instead
of (default-value 'major-mode).  Doc fix.
http://lists.gnu.org/archive/html/emacs-devel/2010-04/msg00069.html
2010-04-03 02:01:22 +03:00
Sam Steingold
dbb5e44a98 (bug-reference-bug-regexp): Also accept "patch" and "RFE".
(bug-reference-fontify): `bug-reference-url-format' can also be a
function to be able to handle the bug kind.
(turn-on-bug-reference-mode, turn-on-bug-reference-prog-mode): Add
2010-04-02 13:24:37 -04:00
Chong Yidong
51a91f9da6 Fix permissions handling (CVE-2010-0825).
* movemail.c (main): Check return values of setuid.  Avoid
possibility of symlink attack when movemail is setgid mail
(CVE-2010-0825).
2010-04-02 11:26:24 -04:00