1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-23 04:53:12 -08:00
No description
Find a file
Jason Rumney 9f5a911b46 (remember_mouse_glyph): New function.
(w32_mouse_position): Use it.
(note_mouse_movement): If the mouse moved off the glyph, remember its
new position.

Sync with xterm.c:
(notice_overwritten_cursor): Renamed from note_overwritten_text_cursor.
Rewritten to take glyph widths into account.
(x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
(fast_find_string_pos): New function.
(fast_find_position): Return the correct vpos.  Add parameter STOP.
In the final row, stop before glyphs having STOP as object.
Don't consider glyphs that are not from a buffer.
(fast_find_position) [0]: Add a presumably more correct version for after 21.1.
(expose_window_tree, expose_frame): Don't compute intersections here.
(expose_window): Do it here instead.
(expose_window_tree, expose_window, expose_line): Return 1 when
overwriting mouse-face.
(expose_window): If W is the window currently being updated, mark
the frame garbaged.
(expose_frame): If mouse-face was overwritten, redo it.
(x_use_underline_position_properties): New variable.
(syms_of_xterm): DEFVAR_BOOL it.
(x_draw_glyph_string): Add comment to use it in future.
(x_draw_glyph_string): Restore clipping after drawing box.
Fix a computation of the underline position.
(w32_get_glyph_string_clip_rect): Minor cleanup.
(x_fill_stretch_glyph_string): Remove an assertion.
(x_produce_glyphs): Don't convert multibyte characters
to unibyte characters in unibyte buffers.
(cursor_in_mouse_face_p): New function.
(x_draw_stretch_glyph_string): Use it to choose a different GC
when drawing a cursor within highlighted text.  Don't draw
background again if it has already been drawn.
(x_draw_glyph_string_box): Don't draw a full-width
box just because the glyph row's full_width_p flag is set.
(x_draw_glyphs): Fix computation of rightmost x for full-width rows.
(x_dump_glyph_string): Put in #if GLYPH_DEBUG.
(w32_draw_relief_rect): Extend left shadow to the bottom and left;
change bottom shadow accordingly. Some cleanup.
(x_update_window_end): Handle overwritten mouse face
also for tool bar windows.
(show_mouse_face): Set the glyph row's mouse_face_p flag also when
DRAW is DRAW_IMAGE_RAISED.
(clear_mouse_face): Return 1 if text with mouse face was
actually redrawn.  Make the function static.  Reset
dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
optimize away highlighting if we pass over that same overlay again.
(note_mouse_highlight): Call mouse_face_overlay_overlaps
to detect a case where we have to highlight a different region
despite not having left the currently highlighted region.
Set mouse_face_overlay in the x_display_info.  Avoid changing the
mouse pointer shape when show_mouse_face has already done it, or
there is no need.  Handle mouse-face and help-echo in strings.
(glyph_rect): New function.
(w32_mouse_position): Use it to raise the threshold for mouse
movement event generation.
(w32_initialize_display_info): Initialize the x_display_info's
mouse_face_overlay.
(w32_set_vertical_scroll_bar): Don't clear a zero height or width area.
(w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
a widget to zero height.
2001-10-21 15:20:03 +00:00
admin *** empty log message *** 2001-10-21 09:04:46 +00:00
etc *** empty log message *** 2001-10-21 09:04:46 +00:00
info Add woman-1 and woman-2. 2001-06-22 16:36:42 +00:00
leim *** empty log message *** 2001-10-21 09:04:46 +00:00
lib-src *** empty log message *** 2001-10-21 14:44:58 +00:00
lisp *** empty log message *** 2001-10-21 14:44:58 +00:00
lispref *** empty log message *** 2001-10-21 09:04:46 +00:00
lwlib *** empty log message *** 2001-10-21 09:04:46 +00:00
mac *** empty log message *** 2001-10-21 09:04:46 +00:00
man *** empty log message *** 2001-10-21 09:04:46 +00:00
msdos *** empty log message *** 2001-10-21 09:04:46 +00:00
nt *** empty log message *** 2001-10-21 09:04:46 +00:00
oldXMenu *** empty log message *** 2001-10-21 09:04:46 +00:00
src (remember_mouse_glyph): New function. 2001-10-21 15:20:03 +00:00
vms Fix the URL where Emacs for VMS is available. 2001-06-16 07:17:18 +00:00
.gitignore *** empty log message *** 2001-01-30 19:51:14 +00:00
AUTHORS Regenerated with fixed ChangeLogs. 2001-02-14 21:17:47 +00:00
BUGS *** empty log message *** 2000-12-22 10:56:11 +00:00
ChangeLog *** empty log message *** 2001-10-21 09:04:46 +00:00
config.bat Update the copyright. 2001-03-04 07:09:15 +00:00
config.guess Updated from master source. 2000-11-11 15:57:45 +00:00
config.sub Updated from master source. 2000-11-11 15:57:45 +00:00
configure *** empty log message *** 2001-10-19 15:27:05 +00:00
configure.in (configuration): Set from host' if host_alias' isn't defined. 2001-10-19 15:20:20 +00:00
COPYING *** empty log message *** 2001-03-05 10:42:09 +00:00
FTP Replaces GETTING.GNU.SOFTWARE. 2000-11-20 18:14:17 +00:00
INSTALL Recommend XPM 3.4k. 2001-07-25 15:49:09 +00:00
install-sh
make-dist (nt): Link subdirs.el as well. 2001-09-01 06:58:54 +00:00
Makefile.in (${srcdir}/configure): Don't depend on aclocal.m4. 2001-10-19 12:33:44 +00:00
mkinstalldirs (errstatus): Chmod a+rx directories we create. 2001-02-02 13:09:26 +00:00
move-if-change
noleim-Makefile.in *** empty log message *** 2001-01-31 14:08:26 +00:00
README Bump Emacs version to 21.1.50. 2001-10-13 10:45:03 +00:00
update-subdirs Add copyright notice. 2001-02-20 11:00:55 +00:00
vpath.sed

This directory tree holds version 21.1.50 of GNU Emacs, the extensible,
customizable, self-documenting real-time display editor.

You may encounter bugs in this release.  If you do, please report
them; your bug reports are valuable contributions to the FSF, since
they allow us to notice and fix problems on machines we don't have, or
in code we don't use often.  See the file BUGS for more information on
how to report bugs.

See the file etc/NEWS for information on new features and other
user-visible changes in recent versions of Emacs.

The file INSTALL in this directory says how to bring up GNU Emacs on
various systems, once you have loaded the entire subtree of this
directory.

The file etc/PROBLEMS contains information on many common problems that
occur in building, installing and running Emacs.

Reports of bugs in Emacs should be sent to the mailing list
bug-gnu-emacs@gnu.org.  See the "Bugs" section of the Emacs
manual for more information on how to report bugs.  (The file `BUGS'
in this directory explains how you can find and read that section
using the Info files that come with Emacs.)  See `etc/MAILINGLISTS'
for more information on mailing lists relating to GNU packages.

The `etc' subdirectory contains several other files, named in capital
letters, which you might consider looking at when installing GNU
Emacs.

The file `configure' is a shell script to acclimate Emacs to the
oddities of your processor and operating system.  It creates the file
`Makefile' (a script for the `make' program), which automates the
process of building and installing Emacs.  See INSTALL for more
detailed information.

The file `configure.in' is the input used by the autoconf program to
construct the `configure' script.  Since Emacs has some configuration
requirements that autoconf can't meet directly, and for historical
reasons, `configure.in' uses an unholy marriage of custom-baked
configuration code and autoconf macros.  If you want to rebuild
`configure' from `configure.in', you will need to install a recent
version of autoconf and GNU m4.

The file `Makefile.in' is a template used by `configure' to create
`Makefile'.

The file `make-dist' is a shell script to build a distribution tar
file from the current Emacs tree, containing only those files
appropriate for distribution.  If you make extensive changes to Emacs,
this script will help you distribute your version to others.

There are several subdirectories:

`src' holds the C code for Emacs (the Emacs Lisp interpreter and its
    primitives, the redisplay code, and some basic editing functions).
`lisp' holds the Emacs Lisp code for Emacs (most everything else).
`lib-src' holds the source code for some utility programs for use by
    or with Emacs, like movemail and etags.
`etc' holds miscellaneous architecture-independent data files
    Emacs uses, like the tutorial text and the Zippy the Pinhead quote
    database.  The contents of the `lisp', `info' and `man'
    subdirectories are architecture-independent too.

`info' holds the Info documentation tree for Emacs.
`man' holds the source code for the Emacs Manual.  If you modify the
      manual sources, you will need the `makeinfo' program to produce
      an updated manual.  `makeinfo' is part of the GNU Texinfo
      package; you need version 4.0 or later of Texinfo.

   Note that the Emacs Lisp Reference Manual sources are distributed
separately.  (They are twice as large as the Emacs Manual in the man
subdirectory.)

`msdos' holds configuration files for compiling Emacs under MSDOG.
`vms' holds instructions and useful files for running Emacs under VMS.
`nt' holds various command files and documentation files that pertain
     to running Emacs on Windows NT.
`mac' holds instructions, sources, and other useful files for building
      and running Emacs on the Mac.

   Building Emacs on non-Posix platforms requires to install tools
that aren't part of the standard distribution of the OS.  The
platform-specific README files and installation instructions should
list the required tools.