aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* (x_make_frame_visible): Wait for frame becoming visibleGerd Moellmann1999-12-301-24/+20
| | | | differently.
* All codes adjusted for the change of struct glyph.Kenichi Handa1999-12-271-24/+24
|
* (XTread_socket): At the beginning of the loop, pass theGerd Moellmann1999-12-221-9/+10
| | | | | | | frame's X window to XFilterEvent instead of None because that's the X window for which the IC was created. This makes dead accents work when the pointer is not in Emacs' frame. (XTread_socket) <KeyPress>: Don't call XFilterEvent here.
* (BUILD_GLYPH_STRINGS): For pcc, remove continuation in arg list.Dave Love1999-12-151-2/+1
|
* (x_append_glyph): Setup members of struct glyph properlyKenichi Handa1999-12-151-395/+549
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for composition. (x_append_composite_glyph): New function. (VCENTER_BASELINE_OFFSET): New macro. (x_produce_glyphs): If it->what == IT_COMPOSITION, setup members of struct it for the composition. Cache pixel offsets in the struct composition. Delete codes for a composite character. Handle Vignore_relative_composition in composition code. (struct glyph_string): Delete member cmpcharp, add new member cmp. (x_set_cursor_gc): Check s->cmp, not s->cmpcharp. (x_compute_glyph_string_overhangs): Likewise. (x_get_glyph_overhangs): Delete codes for a composite character. (x_right_overwritten): Check s->cmp, not s->cmpcharp. (x_draw_glyph_string_background): Likewise. Delete codes for checking s->gidx for a composition. (x_draw_glyph_string_foreground): Delete code for a composite character. (x_draw_composite_glyph_string_foreground): New function. (x_draw_glyph_string_box): Check s->cmp, not s->cmpcharp. (x_draw_glyph_string): Handle the case of COMPOSITE_GLYPH. (struct work): Deleted. (x_fill_composite_glyph_string): Argument changed. Mostly rewritten for that. (x_fill_glyph_string): Don't check CHARSET_COMPOSITION. (BUILD_CHAR_GLYPH_STRINGS): Don't handle composition here. (BUILD_COMPOSITE_GLYPH_STRING): New macro. (BUILD_GLYPH_STRINGS): For composition, call BUILD_COMPOSITE_GLYPH_STRING. (x_new_font): Initialize f->output_data.x->baseline_offset, not f->output_data.x->font_baseline.
* (show_mouse_face): Don't use updated_area, use TEXT_AREA.Gerd Moellmann1999-12-141-1/+1
|
* (x_initialize): only setup xaw3d_* if they've been declared.Stefan Monnier1999-12-101-0/+2
|
* (#includes): Allow compilation with only Xaw.Stefan Monnier1999-12-101-71/+116
| | | | | | | | | | | | | | | | | | | | | (xaw3d_arrow_scroll, xaw3d_pick_top): New variables. (xt_action_hook): Replace XAW3D by XAW. (xaw3d_jump_callback): Renamed to xaw_jump_callback. (xaw_jump_callback): Renamed from xaw3d_jump_callback. Determine epsilon dynamically and don't try to be too clever. (xaw3d_scroll_callback): Renamed to xaw_scroll_callback. (xaw_scroll_callback): Renamed from xaw3d_scroll_callback. Handle both Xaw3d with arrow-scrollbars and with Xaw-style scrollbar (using `ratio'). (x_create_toolkit_scroll_bar): Try to detect which style of Xaw3d scrollbar we have so as to set it up more optimally and to fix xaw3d_arrow_scroll and xaw3d_pick_top. (x_set_toolkit_scroll_bar_thumb): Try to maintain 2 spare pixels at the bottom of the Xaw3d scrollbar, to work around its tendency to refuse shrinking the thumb. Also make sure that `XawScrollbarSetThumb' is not ignored, using a major gross hack. (x_initialize): Init default values for xaw3d_arrow_scroll and xaw3d_pick_top.
* (XTread_socket) <ClientMessage, Xatom_Scrollbar>:Gerd Moellmann1999-11-281-0/+2
| | | | Switch off busy-cursor by setting inhibit_busy_cursor to 2.
* Add support for large files, 64-bit Solaris, system locale codings.Paul Eggert1999-10-191-42/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile.in (emacs): Set the LC_ALL environment variable to "C" when dumping, so that the dumped Emacs doesn't have stray locale info. (dired.o): Depend on systime.h. (editfns.o): Depend on coding.h. * alloc.c, buffer.c, callproc.c, ccl.c, charset.c, coding.c, data.c, dispnew.c, editfns.c, emacs.c, filelock.c, floatfns.c, hftctl.c, keyboard.c, process.c, sysdep.c, unexelf.c, unexhp9k800.c, unexsunos4.c, vmsfns.c, vmsgmalloc.c, w32faces.c, w32menu.c, w32term.c, w32xfns.c, xfaces.c, xfns.c, xmenu.c, xterm.c: Include <config.h> before any system include files. * alloc.c, buffer.c, ccl.c, data.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, frame.c, insdel.c, keymap.c, lread.c, m/alpha.h, print.c, search.c, sysdep.c, xdisp.c, xfaces.c, xfns.c, xmenu.c, xterm.c: Do not include <stdlib.h>, as <config.h> does this now. * callproc.c (Fcall_process): Synchronize messages locale before invoking strerror. Decode resulting string with locale-coding-system. * coding.c (Vlocale_coding_system): New var. (syms_of_coding): Adjust to above change. (emacs_strerror): New function. * coding.h (emacs_strerror, Vlocale_coding_system): New decls. * config.in (HAVE_STDIO_EXT_H, HAVE_TM_GMTOFF, HAVE___FPENDING, HAVE_FTELLO, HAVE_GETLOADAVG, HAVE_MBLEN, HAVE_MBRLEN, HAVE_STRSIGNAL): New macros. (BITS_PER_LONG): Default to 64 if _LP64 is defined. <stdlib.h>: Include if HAVE_STDLIB_H is defined and NOT_C_CODE isn't. * dired.c: Include "systime.h". (Ffile_attributes): Do not cast s.st_size to int; this loses information if int is 32 bits but st_size and EMACS_INT are larger. Treat large device numbers like large inode numbers. * dispnew.c (PENDING_OUTPUT_COUNT): Use __fpending if available. * editfns.c: Include coding.h. (emacs_strftime): Remove decl. (emacs_strftimeu): New decl. (emacs_memftimeu): Renamed from emacs_memftime; new arg UT. Use emacs_strftimeu instead of emacs_strftime. (Fformat_time_string): Convert format string using Vlocale_coding_system, and convert result back. Synchronize time locale before invoking lower level function. Invoke emacs_memftimeu, passing ut, instead of emacs_memftime. * emacs.c: Include <locale.h> if HAVE_SETLOCALE is defined. (Vmessages_locale, Vprevious_messages_locale, Vtime_locale, Vprevious_time_locale): New variables. (main): Invoke setlocale early, so that initial error messages are localized properly. But skip locale-setting if LC_ALL is "C". Fix up locale when it's safe to do so. (fixup_locale): Moved here from xterm.c. (synchronize_locale, synchronize_time_locale, synchronize_messages_locale): New functions. (syms_of_emacs): Accommodate above changes. * fileio.c (report_file_error): Convert strerror output according to Vlocale_coding_system. (Finsert_file_contents): Check for arithmetic overflow in computations that depend on file size. Report IO errors with emacs_strerror, not strerror. * fns.c (Fgethash): Declare dflt parameter. * gmalloc.c: Do not define const to nothing if HAVE_CONFIG_H is defined; that's config.h's job. * lisp.h (EMACS_INT, BITS_PER_EMACS_INT, EMACS_UINT): If _LP64, default these values to long, BITS_PER_LONG, and unsigned long. (VALBITS, MARKBIT, XINT): Do not assume 32-bit EMACS_INT. (PNTR_COMPARISON_TYPE): Default to EMACS_UINT, not to unsigned int. (code_convert_string_norecord, fixup_locale, synchronize_messages_locale, synchronize_time_locale, emacs_open, emacs_close, emacs_read, emacs_write): New decls. All Emacs callers of open, close, read, write changed to use emacs_open, emacs_close, emacs_read, emacs_write. * lread.c (file_offset, file_tell): New macros. All uses of ftell changed to file_tell. (saved_doc_string_position, prev_saved_doc_string_position): Now of type file_offset. (init_lread): Do not fix locale here; fixup_locale now does this. * m/amdahl.h, s/usg5-4.h: (NSIG): Remove. (NSIG_MINIMUM): New macro. * m/cydra5.h, m/dpx2.h, m/mips.h, m/pfa50.h, m/sps7.h, m/stride.h, m/ustation.h, s/gnu-linux.h, s/hpux.h, s/iris3-5.h, s/iris3-6.h, s/umips.h, s/usg5-4.h: (SIGIO): Do not undef. (BROKEN_SIGIO): New macro. * m/ustation.h: (SIGTSTP): Do not undef. (BROKEN_SIGTSTP): New macro. * s/gnu-linux.h: (SIGPOLL, SIGURG): Do not undef. (BROKEN_SIGPOLL, BROKEN_SIGURG): New macros. * s/ptx4.h: (SIGINFO): Do not undef. (BROKEN_SIGINFO): New macros. * m/delta.h, s/ptx.h, s/template.h: Doc fix. * mktime.c, strftime.c: Update to glibc 2.1.2 version, with some Emacs-related changes merged. * print.c (float_to_string): Prepend "-" to representation of a NaN if the NaN is negative. * process.c (sys_siglist): Omit if HAVE_STRSIGNAL. (wait_reading_process_input): Use emacs_strerror, not strerror. * process.c (status_message, sigchld_handler): Synchronize locale, then use strsignal istead of sys_siglist. * w32proc.c (sys_wait): Likewise. * s/aix3-1.h, s/bsd4-1.h, s/dgux.h, s/gnu-linux.h, s/hiuxmpp.h, s/hpux.h, s/iris3-5.h, s/iris3-6.h, s/irix3-3.h, s/osf1.h, s/rtu.h, s/sunos4-1.h, s/unipl5-0.h, s/unipl5-2.h, s/usg5-0.h, s/usg5-2-2.h, s/usg5-2.h, s/usg5-3.h, s/xenix.h: (open, close, read, write, INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE, INTERRUPTIBLE_IO): Remove. * s/sol2-5.h (_LARGEFILE_SOURCE, _FILE_OFFSET_BITS): New macros. * sysdep.c (sys_read, sys_write, read, write, sys_close, close, sys_open, open): Remove. (emacs_open, emacs_close, emacs_read, emacs_write): Always define; the old INTERRUPTIBLE_OPEN, INTERRUPTIBLE_CLOSE, and INTERRUPTIBLE_IO macros are no longer used. (emacs_open): Renamed from sys_open. Merge BSD4_1 version. (emacs_close): Renamed from sys_close. (emacs_read): Renamed from sys_read. (emacs_write): Renamed from sys_write. (sys_siglist): Do not declare if HAVE_STRSIGNAL. (dup2): Do not print error on failure; the real dup2 doesn't. (strsignal): New function, defined if !HAVE_STRSIGNAL. * syssignal.h (SIGINFO): Undef if defined and if BROKEN_SIGINFO is defined. (SIGIO, SIGPOLL, SIGTSTP, SIGURG): Likewise. (NSIG): If less than NSIG_MINIMUM, define to NSIG_MINIMUM. (strsignal): Declare if !HAVE_STRSIGNAL. * unexelf.c (ElfBitsW, ELFSIZE, ElfExpandBitsW): New macros. (ElfW): Define in terms of ElfExpandBitsW. * w32proc.c (sys_siglist): Remove decl. * xdisp.c (decode_mode_spec): 3rd arg is int, not char, to comply with ANSI C. (display_string): Declare face_string_pos arg. * xfns.c (Fx_show_tip): Declare timeout param. * xterm.c: No need to include locale.h. (x_alloc_lighter_color, x_setup_relief_color): Pass arg as double, not float, for compatibility with ANSI C. (fixup_locale): Move to emacs.c. (x_term_init): Do not setlocale or fixup locale; the main program does this now.
* (XTread_socket) <ClientMessage, WM_TAKE_FOCUS>:Gerd Moellmann1999-10-081-0/+14
| | | | | Don't call XSetInputFocus because that can generate additional FocusIn events.
* (XTread_socket) <MotionNotify>: Change #ifdefGerd Moellmann1999-09-231-2/+2
| | | | USE_X_TOOLKIT to #ifdef USE_TOOLKIT_SCROLL_BARS.
* (x_scroll_bar_handle_click): Compile only ifGerd Moellmann1999-09-141-23/+18
| | | | | | | | | | | | | | not USE_TOOLKIT_SCROLL_BARS. (x_scroll_bar_set_handle, x_scroll_bar_note_movement): Ditto. (x_produce_glyphs): Remove unused variable(s). (x_alloc_nearest_color_for_widget, note_tool_bar_highlight, x_set_toolkit_scroll_bar_thumb): Ditto. (x_scroll_bar_create): Move local variable to the conditionally compiled section of code where it is used. (x_scroll_bar_create): Remove unused variable(s). (x_scroll_bar_remove, XTread_socket): Ditto. (XTread_socket) <ConfigureNotify>: Move variables used for non-toolkit case into conditionally compiled section of code.
* Don't continue #define args for benefit of old cc.Dave Love1999-09-131-9/+7
| | | | (xt_action_hook): Indent #error for benefit of K&R cc.
* (XTcursor_to): Change for Lisp_Object selected_frame.Gerd Moellmann1999-09-131-18/+18
| | | | | (x_clear_frame, XTring_bell, XTmouse_position, XTread_socket): Ditto. (XRINGBELL): Removed.
* Use XCAR and XCDR instead of explicit member references.Ken Raeburn1999-09-121-45/+45
|
* (XTread_socket): In XSetInputFocus, use RevertToParent,Richard M. Stallman1999-09-111-12/+17
| | | | | | not RevertToPointerRoot. (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]: Fix the code to clear around the scroll bar.
* ChangeGerd Moellmann1999-09-051-13/+13
| | | | | `top-line' and `top_line' to `header-line' and `header_line'. Likewise for similar spellings.
* Change spelling of `toolbar' to `tool_bar' or `tool-bar'.Gerd Moellmann1999-09-051-74/+74
| | | | Likewise for upper-case etc.
* (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:Gerd Moellmann1999-09-051-1/+1
| | | | Fix reference to renamed variable.
* (XTset_vertical_scroll_bar): Block input when clearingGerd Moellmann1999-09-031-7/+62
| | | | | | | | | | | | | | under newly created scroll bar. (expose_window): If window is not yet fully initialized, do nothing. This can happen when toolkit scroll bars are used and a window is split. Reconfiguring the scroll bars will generate an expose for a newly created window. (x_alloc_nearest_color_for_widget) [USE_X_TOOLKIT]: New. Allocate color for lwlib widgets. (x_alloc_nearest_color): Change parameter list include the frame on which to allocate colors. Gamma-correct colors. (x_alloc_lighter_color): Call x_alloc_lighter_color with new parameter list.
* (x_scroll_bar_create): Don't clear under scroll barGerd Moellmann1999-09-031-57/+57
| | | | | | | here. (XTset_vertical_scroll_bar): Clarify position computations. Clear under newly created scroll bar. Put toolkit scroll bars in the middle of the area reserved for the scroll bar.
* Remove unused bitmaps.Gerd Moellmann1999-08-301-44/+44
| | | | | | | | | | | | | | | | | (continued_bits, continuation_bits, overlay_bits): Change images. (x_draw_vertical_border): Use FRAME_X_RIGHT_FLAGS_AREA_WIDTH instead of FRAME_X_FLAGS_AREA_WIDTH. (x_after_update_window_line): Ditto. (x_draw_bitmap): Likewise. (x_draw_row_bitmaps): Likewise. (x_draw_glyph_string_box): Likewise. (x_draw_glyphs): Likewise. (x_scroll_run): Likewise. (expose_window_tree): Likewise. (note_mode_line_highlight): Likewise. (XTset_vertical_scroll_bar): Likewise. (x_clip_to_row): Likewise. (x_set_window_size): Likewise.
* (expose_window_tree): Fix typo CANON_Y_UNIT toGerd Moellmann1999-08-241-1/+1
| | | | CANON_X_UNIT.
* Call change_frame_size and do_pending_window_change withGerd Moellmann1999-08-211-2/+6
| | | | | | new parameter. (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]: Clear under scroll bar widget.
* (XTset_vertical_scroll_bar): Fix previous change. ClearGerd Moellmann1999-08-191-1/+2
| | | | under scroll bar with width FRAME_SCROLL_BAR_COLS.
* (expose_area): If row extends face to end of line,Gerd Moellmann1999-08-171-23/+32
| | | | write the whole line.
* (x_draw_glyph_string_box): Use the background widthGerd Moellmann1999-08-171-1/+1
| | | | of the glyph string for the width of the box.
* (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:Gerd Moellmann1999-08-151-33/+6
| | | | Simplify clearing "under" scroll bar.
* (x_display_and_set_cursor): If cursor_in_echo_area,Gerd Moellmann1999-08-061-7/+19
| | | | | show hollow box cursor for windows other than echo_area_window, show normal cursor for echo_area_window.
* (x_draw_phys_cursor_glyph): Redraw overlaps.Gerd Moellmann1999-08-061-100/+224
| | | | | | | | | | | | | | | | | | | | (x_fix_overlapping_area): New. (x_redisplay_interface): Add x_fix_overlapping_area. (x_draw_glyphs): Add parameter overlaps_p. (struct glyph_string): Add member for_overlaps_p. (x_get_glyph_string_clip_rect): If glyph string draws foreground of overlapping rows, clip to window bottom. (x_fill_glyph_string): Add parameter overlaps_p. (x_fill_composite_glyph_string): Ditto. (BUILD_GLYPH_STRINGS): Ditto. (BUILD_CHAR_GLYPH_STRINGS): Ditto. (x_draw_glyph_string): Don't draw anything but the foreground if glyph string draws row overlaps. (x_append_glyph): Set glyph flag overlaps_vertically_p. (x_produce_image_glyph): Compute iterator's physical ascent and descent. (x_produce_stretch_glyph): Ditto. (x_produce_glyphs): Ditto.
* (x_set_window_size): When calling change_frame_size, specify 1 for DELAY.Richard M. Stallman1999-08-021-3/+6
|
* (x_set_toolkit_scroll_bar_thumb): Fix previous change.Gerd Moellmann1999-07-291-1/+7
|
* (x_set_toolkit_scroll_bar_thumb): Don't callGerd Moellmann1999-07-271-12/+32
| | | | | XawScrollbarSetThumb if thumb parameters haven't changed because that function apparently isn't optimized for this case.
* (x_find_ccl_program): Add casting.Kenichi Handa1999-07-271-1/+2
|
* (x_setup_relief_color): Don't try smart color allocationGerd Moellmann1999-07-271-10/+3
| | | | | | if display is mono. (x_draw_row_bitmaps): If face has stipple, don't switch to foreground color for clearing areas, and set the fill style.
* (x_get_glyph_string_clip_rect): Take internal borderGerd Moellmann1999-07-261-8/+13
| | | | | | | | | into account for full-width windows. Don't add scroll bar width to width of clip rect. (x_draw_glyph_string_box): Add 1 to right x of full width lines. (x_set_glyph_string_background_width): Add 1 to background width. (x_draw_glyphs): Take internal border into account for full-width lines.
* (x_find_ccl_program): Get compiled CCL code by justKenichi Handa1999-07-261-24/+11
| | | | calling setup_coding_system.
* Display-related functions implemented from scratch. Add toolkitGerd Moellmann1999-07-211-2090/+7276
| | | | | | | | | | | | | scroll bars, mouse-sensitive mode line, help-echo, busy-cursor. (x_calc_absolute_position): Subtract menu bar height for YNegative, if using X toolkit. (XTread_socket) [USE_MOTIF] <KeyPress>: Catch events in scroll bars. (SET_SAVED_MENU_EVENT): Give it statement form. (XTflash): Don't flash the toolbar window. (XTread_socket): Workaround for LessTif popup menus in case of ButtonPress events. (XTread_socket): Set inhibit_busy_cursor.
* (x_display_bar_cursor): Use the cursor-colorRichard M. Stallman1999-07-101-1/+20
| | | | to display the bar, not the cursor foreground pixel.
* (x_load_font): Fix typo (`>' -> `=').Kenichi Handa1999-05-041-1/+1
|
* (x_list_fonts): Fix previous change.Karl Heuer1999-04-261-0/+1
|
* Trap X errors so that Emacs doesn't dieKenichi Handa1999-04-131-4/+34
| | | | by them.
* (dumpglyphs): Be sure to fill the whole background ofKenichi Handa1999-04-051-1/+3
| | | | glyphs.
* (XTread_socket) <ConfigureNotify>:Karl Heuer1999-03-151-3/+11
| | | | If cursor pos is outside the new frame size, mark cursor as off.
* (x_list_fonts): Trap X errors so that Emacs doesn't dieKenichi Handa1999-03-151-0/+10
| | | | | by them. (x_load_font): Likewise.
* (x_load_font): For the height of font, if normarl ascent andKenichi Handa1999-01-301-1/+8
| | | | | descent value are larger than those in max_bounds field, use the former.
* (x_new_fontset): For ASCII font, don't use the font nameKenichi Handa1999-01-301-1/+1
| | | | | returned by x_new_font (the resolved one) but use the font name set in the fontset specification.
* (same_x_server): Detect treat ":0" and "unix:0"Richard M. Stallman1999-01-241-0/+28
| | | | as the same. Treat "myname:0" as the same as those two.
* (dumpglyphs): Don't convert 7-bit ASCII characters viaEli Zaretskii1998-12-211-2/+4
| | | | nonascii-translation-table.