1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-11 14:01:43 -08:00
Commit graph

10633 commits

Author SHA1 Message Date
Kenichi Handa
32278fd599 (char_valid_p): Handle a composite character correctly. 1998-11-11 10:31:24 +00:00
Kenichi Handa
9b4d1fe69d (str_cmpchar_id): Check the byte sequence for
composition more rigidly.
(Fcompose_string): Allow DEL to be composed.  Signal error if STR
contains an invalid multibyte sequence.
1998-11-11 03:36:15 +00:00
Kenichi Handa
861bf815f3 (x_list_fonts): Don't change the value of maxnames. 1998-11-11 03:36:15 +00:00
Geoff Voelker
ccc2d29c56 (Vw32_pass_optional_keys_to_system): Variable removed.
(Vw32_pass_lwindow_to_system):
(Vw32_pass_rwindow_to_system):
(Vw32_lwindow_modifier):
(Vw32_rwindow_modifier):
(Vw32_apps_modifier):
(Vw32_enable_num_lock):
(Vw32_enable_caps_lock):
(Vw32_scroll_lock_modifier): New variables.
(modifier_set): Return toggle state for Scroll Lock.
(w32_key_to_modifier): New function.  Returns chosen modifier bit
for given key.
(w32_get_modifiers): Returns modifier flags for
non-keyboard input events.
(construct_console_modifiers): Renamed from construct_modifiers;
recognize Windows and Apps keys as modifiers.
(w32_get_key_modifiers): New function.  Returns modifier flags for
keyboard input events.
(map_keypad_keys): Make non-static.  Use second arg as extended
flag.
(w32_grabbed_keys): New variable.
(HOTKEY, HOTKEY_ID, HOTKEY_VK_CODE, HOTKEY_MODIFIERS): New macros.
(register_hot_keys):
(unregister_hot_keys):
(lookup_vk_code):
(w32_parse_hot_key):
(Fw32_register_hot_key):
(Fw32_unregister_hot_key):
(Fw32_registered_hot_keys):
(Fw32_reconstruct_hot_key): New functions to support hotkeys.
(post_character_message): New function.
(w32_msg_pump): Handle new messages for using hotkeys and changing
keyboard layout/language.
(w32_wnd_proc): Major rework of keyboard input handling:
optionally recognize Windows keys and Apps key as modifiers;
optionally treat NumLock, CapsLock and ScrollLock as function
keys; let system translate keystrokes to characters to avoid
system bugs relating to dead-key handling; preserve shift
distinction for control characters; forward keyboard
layout/language changes to lisp; detect and convert hot-key events
to normal keystrokes.
(syms_of_w32fns): Register new functions and variables.
(w32_last_error): New function for use in debugging.
1998-11-10 20:54:46 +00:00
Geoff Voelker
f791da1d45 ($(BLD)\w32inevt.obj): Add dependencies on w32term.h
and w32heap.h.
1998-11-10 20:54:31 +00:00
Geoff Voelker
29a2c30ff6 Include w32term.h and w32heap.h.
(map_keypad_keys):
(Vw32_enable_caps_lock):
(Vw32_enable_num_lock):
(Vw32_pass_lwindow_to_system):
(Vw32_pass_rwindow_to_system):
(Vw32_lwindow_modifier):
(Vw32_rwindow_modifier):
(Vw32_apps_modifier):
(Vw32_scroll_lock_modifier):
(w32_key_to_modifier): Add externs.
(w32_kbd_mods_to_emacs): Recognize Windows keys, Apps key, and
Scroll Lock as potential modifiers; exclude numpad keys from
effect by CapsLock; act on Vw32_enable_caps_lock; remove obsolete
code.
(is_dead_key): Copy from w32fns.c.
(w32_kbd_patch_key): Comment attempt to improve handling of
dead-keys, and system bug relating to same on Windows NT.  Work
around the bug by calling ToUnicode and then converting to the
correct codepage.
(map_virt_key): Removed obsolete variable.
(lispy_function_keys): Add extern.
(key_event): Major rework of keyboard input handling: optionally
recognize Windows keys and Apps key as modifiers; optionally treat
NumLock, CapsLock and ScrollLock as function keys; let system
translate keystrokes to characters to avoid system bugs relating
to dead-key handling; preserve shift distinction for control
characters.  Remove some obsolete code.
1998-11-10 20:52:20 +00:00
Geoff Voelker
0eaf592609 (sys_kill): Set extended key flag when faking
Ctrl-Break keystrokes.
(Fw32_get_locale_info): Allow LONGFORM parameter to specify an
arbitrary locale property using a numerical index.
(Vw32_valid_codepages): New variable.
(enum_codepage_fn):
(Fw32_get_valid_codepages):
(Fw32_get_console_codepage):
(Fw32_set_console_codepage):
(Fw32_get_console_output_codepage):
(Fw32_set_console_output_codepage):
(Fw32_get_codepage_charset):
(Fw32_get_valid_keyboard_layouts):
(Fw32_get_keyboard_layout):
(Fw32_set_keyboard_layout): New functions, exposing Windows locale
handling functions.
(syms_of_ntproc): Register them.
1998-11-10 20:50:40 +00:00
Geoff Voelker
f98169a023 (convert_to_key_event): Removed.
(is_dead_key): Copied to w32fns.c.
(w32_read_socket): Generate language_change_event.  Modify to work
with keyboard handling changes in w32_wnd_proc.
1998-11-10 20:50:08 +00:00
Geoff Voelker
bb35543459 (struct w32_display_info): New element faked_key.
(WM_EMACS_SETKEYBOARDLAYOUT):
(WM_EMACS_REGISTER_HOT_KEY):
(WM_EMACS_UNREGISTER_HOT_KEY): New message definitions.
(LEFT_WIN_PRESSED):
(RIGHT_WIN_PRESSED):
(APPS_PRESSED): New console keyboard modifier flags.
1998-11-10 20:49:30 +00:00
Karl Heuer
3583e969a4 (regex_compile): Handle translation of multibyte
exact-match characters.
1998-11-10 07:03:05 +00:00
Kenichi Handa
c61bca6a28 (CATEGORY_SET): Adjusted for the change of cmpchar_component.
(CATEGORY_SET): Likewise.
1998-11-10 00:24:40 +00:00
Kenichi Handa
de54b0d5ec (cmpchar_component): New arg NOERROR. Check
composition char ID more strictly.
(Fcmpchar_component): Call cmpchar_component with NOERROR arg
zero.
(Fcmpchar_cmp_rule): If CHARACTER should be composed relatively,
return 255.
(Fcompose_string): Signal error if STR contains a rule-based
composition character.
1998-11-10 00:24:40 +00:00
Kenichi Handa
cf36cf3f21 (cmpchar_component): Proto-type adjusted. 1998-11-10 00:24:40 +00:00
Kenichi Handa
1dca54f61e (string_to_non_ascii_char): Return correct length for
a charset of dimension 2 and composition character.
1998-11-09 07:06:11 +00:00
Karl Heuer
31cd7d0079 (Fprocess_status): Doc fix. 1998-11-07 16:55:41 +00:00
Kenichi Handa
6038393415 (init_charset_once): Fix previous change. 1998-11-07 01:42:20 +00:00
Kenichi Handa
bb63e573a8 (string_to_non_ascii_char): Fix previous change.
(char_valid_p): The the validity of CHARSET by CHARSET_DEFINED_P.
1998-11-06 10:59:09 +00:00
Kenichi Handa
dfd57aa70f (SPLIT_NON_ASCII_CHAR): Check dimension of an invalid
character correctly.
(STRING_CHAR): Handle an invalid charater correctly.
1998-11-06 10:59:09 +00:00
Kenichi Handa
f35b0e56f0 (MULTIBYTE_BYTES_WIDTH): Check validity of a multibyte character. 1998-11-06 00:44:16 +00:00
Kenichi Handa
d9d851ea28 (Fstring_to_char): Don't return a multibyte character
if STRING is a unibyte string.
1998-11-06 00:44:16 +00:00
Kenichi Handa
a6c253264f (string_to_non_ascii_char): Fix previous change. 1998-11-06 00:44:16 +00:00
Kenichi Handa
d6127b83e3 (MAKE_NON_ASCII_CHAR): Check validity of CHARSET. 1998-11-06 00:44:16 +00:00
Kenichi Handa
a688bb2444 (display_text_line): Check validity of a multibyte
character.
(display_string): Likewise.  Handle an invalid character
correctly.
1998-11-06 00:44:16 +00:00
Karl Heuer
101e446fa0 (Fcombine_after_change_execute): Return nil, not junk.
If nothing to do, return immediately.
(syms_of_insdel): Initialize combine_after_change_buffer.
1998-11-05 20:06:22 +00:00
Karl Heuer
edad46f664 (XTread_socket): ButtonPress clears f->mouse_moved. 1998-11-05 19:17:42 +00:00
Geoff Voelker
484fa2c1ec (w32_enable_unicode_output): Rename from
w32_no_unicode_output.
(w32_use_unicode_for_codepage, syms_of_w32term): Use new name
and new semantics.
1998-11-04 23:42:04 +00:00
Geoff Voelker
bc6af9357c (dumpglyphs): Use FRAME_FONT for w32_fill_area. 1998-11-04 23:38:42 +00:00
Geoff Voelker
396594fed9 (w32_list_fonts): Report an error if a frame has not
been created yet.
1998-11-04 23:38:19 +00:00
Kenichi Handa
fbddb98df1 Initial revision 1998-11-04 10:54:59 +00:00
Kenichi Handa
a4165c918b (do_switch_frame): Cancel previous change. 1998-11-04 10:53:14 +00:00
Kenichi Handa
da1ad4e741 (print_string): Check validity of a character.
(print): Likewise.
1998-11-04 10:53:14 +00:00
Kenichi Handa
6a0d0ed308 [nec_ews_svr4]: Extern *_sobuf. 1998-11-04 10:53:14 +00:00
Kenichi Handa
6ef23ebb48 (string_to_non_ascii_char): Change the check for the
varidity of multibyte form.
(update_charset_table): Check validity of BYTES.  Don't set
bytes_by_char_head here.
(init_charset_once): Set bytes_by_char_head completely.
1998-11-04 10:48:53 +00:00
Geoff Voelker
c654fd9e7d Compile multiple source files when possible. 1998-11-04 01:28:57 +00:00
Geoff Voelker
f2b56a5d96 (Qmouse_face): Replace definition with extern decl. 1998-11-04 01:26:24 +00:00
Andrew Innes
01f31dfb5f (stat): GetFileInformationByHandle can legitimately fail, so don't
rely on it succeeding.
1998-11-03 22:39:04 +00:00
Andrew Innes
1a292d24f1 (x_to_w32_font): Specify DEFAULT_CHARSET in the w32 LOGFONT struct if
x font doesn't specify the charset.

(x_to_w32_charset): Change >= to == when testing results of stricmp.
1998-11-03 22:21:58 +00:00
Geoff Voelker
4488d7e15c (Fsubstitute_in_file_name) [DOS_NT]: Fix typo. 1998-11-03 02:26:21 +00:00
Richard M. Stallman
33fa85e042 (set_internal): For built-in maybe-local vars,
when BINDFLAG is set, do not mark them as local.
1998-10-31 23:39:42 +00:00
Kenichi Handa
b80f1b20d3 (replace_range): Fix previous change. 1998-10-31 05:24:11 +00:00
Kenichi Handa
33a2d2a074 (do_switch_frame): Update minibuf_window if necessary. 1998-10-31 05:12:07 +00:00
Kenichi Handa
039af53ac4 (byte_combining_error): New function.
(CHECK_BYTE_COMBINING_FOR_INSERT): Call byte_combining_error.
(insert_from_string_1): Set *(GPT_ADDR) to 0 before calling
CHECK_BYTE_COMBINING_FOR_INSERT.
(insert_from_buffer_1): Likewise.
(adjust_after_replace): Check the posibility of inhibitted byte
combining correctly.
(replace_range): Before signaling an error for inhibitted byte
combining, recover the buffer in a safe state.
(del_range_2): Check the posibility of inhibitted byte combining
correctly.
1998-10-31 05:12:07 +00:00
Kenichi Handa
48839d2ed7 (Fsubst_char_in_region): Fix previous change.
(Ftranslate_region): Fix previous change.
1998-10-31 05:12:07 +00:00
Kenichi Handa
922dfd866f (Fbase64_decode_region): Fix previous change.
n
1998-10-31 05:12:07 +00:00
Andreas Schwab
aac77ff120 (Vselection_coding_system): Doc fix. 1998-10-30 10:21:58 +00:00
Andreas Schwab
8b835738fd (Fbase64_encode_region): Use SET_PT_BOTH instead of SET_PT
when we have both char and byte position.  Fix type clashes.
1998-10-30 10:20:25 +00:00
Andreas Schwab
377127ce12 (Fsignal): Use a separate format string when passing
error message string to fatal, in case it contains %'s.
1998-10-30 10:14:50 +00:00
Andreas Schwab
3c52e568d6 (Fchar_after): Fix type clashes. 1998-10-30 10:13:41 +00:00
Andreas Schwab
60022cb712 (Fchar_bytes): Doc fix.
(char_bytes): Fix returned value to match returned type.
(syms_of_charset): Fix type clash in initialisation of
Vauto_fill_chars.
1998-10-30 10:13:36 +00:00
Geoff Voelker
938469f27d (initialize_w32_display): Use buffer coords
instead of buffer size (which may be larger than the window).
1998-10-30 04:22:31 +00:00