diff options
| author | Karoly Lorentey | 2004-10-12 07:52:25 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2004-10-12 07:52:25 +0000 |
| commit | 684c64437d4bcdea90b1a922d557477b7cff1084 (patch) | |
| tree | 0b16b6a2e696b586f121f5abb315fb1101bf042a /src | |
| parent | 65f640341c447084163a74acba654e0f6a32c73c (diff) | |
| parent | e62e7654ac785834b72bfb8784ff34d203d3190f (diff) | |
| download | emacs-684c64437d4bcdea90b1a922d557477b7cff1084.tar.gz emacs-684c64437d4bcdea90b1a922d557477b7cff1084.zip | |
Merged in changes from CVS trunk.
Patches applied:
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-608
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-609
Update from CVS
* miles@gnu.org--gnu-2004/emacs--cvs-trunk--0--patch-610
Merge from gnus--rel--5.10
* miles@gnu.org--gnu-2004/gnus--rel--5.10--patch-45
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-258
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 34 | ||||
| -rw-r--r-- | src/doc.c | 6 | ||||
| -rw-r--r-- | src/keyboard.c | 35 | ||||
| -rw-r--r-- | src/keyboard.h | 2 | ||||
| -rw-r--r-- | src/mac.c | 47 | ||||
| -rw-r--r-- | src/macfns.c | 8 | ||||
| -rw-r--r-- | src/macgui.h | 2 | ||||
| -rw-r--r-- | src/macterm.c | 18 | ||||
| -rw-r--r-- | src/xfns.c | 2 |
9 files changed, 107 insertions, 47 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 131586c4e8d..1a513d0194e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,37 @@ | |||
| 1 | 2004-10-12 Kim F. Storm <storm@cua.dk> | ||
| 2 | |||
| 3 | * doc.c (Fsubstitute_command_keys): Ignore remappings unless there | ||
| 4 | are no ordinary bindings. | ||
| 5 | |||
| 6 | 2004-10-11 Jan Dj,Ad(Brv <jan.h.d@swipnet.se> | ||
| 7 | |||
| 8 | * xfns.c (syms_of_xfns): defsubr x-file-dialog for GTK also. | ||
| 9 | |||
| 10 | 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp> | ||
| 11 | |||
| 12 | * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow | ||
| 13 | (x_lower_frame): Add BLOCK_INPUT around SendBehind | ||
| 14 | (make_mac_frame): Add BLOCK_INPUT around the making of a | ||
| 15 | terminal frame | ||
| 16 | (mac_initialize): Add BLOCK_INPUT around carbon initialization | ||
| 17 | * macgui.h (mktime): Use emacs_mktime | ||
| 18 | * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code. | ||
| 19 | Make a cancel file-open dialog be like C-g. | ||
| 20 | * mac.c (mktime): Use emacs_mktime | ||
| 21 | (Fdo_applescript): Add BLOCK_INPUT around do_applescript | ||
| 22 | (Fmac_paste_function): Add better error handling for carbon | ||
| 23 | cut/paste | ||
| 24 | |||
| 25 | 2004-10-10 Kim F. Storm <storm@cua.dk> | ||
| 26 | |||
| 27 | * keyboard.c (timer_resume_idle): New function to resume idle | ||
| 28 | timer without resetting timers on the idle list. | ||
| 29 | (read_char): Use timer_resume_idle. Remove local var last_idle_start. | ||
| 30 | (timer_start_idle, timer_stop_idle): Declare static. | ||
| 31 | (read_key_sequence): Use timer_resume_idle instead of timer_start_idle. | ||
| 32 | |||
| 33 | * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes. | ||
| 34 | |||
| 1 | 2004-10-08 Steven Tamm <steventamm@mac.com> | 35 | 2004-10-08 Steven Tamm <steventamm@mac.com> |
| 2 | 36 | ||
| 3 | * config.in (HAVE_MALLOC_MALLOC_H): Regenerate | 37 | * config.in (HAVE_MALLOC_MALLOC_H): Regenerate |
| @@ -776,9 +776,13 @@ thus, \\=\\=\\=\\= puts \\=\\= into the output, and \\=\\=\\=\\[ puts \\=\\[ int | |||
| 776 | idx = strp - SDATA (string); | 776 | idx = strp - SDATA (string); |
| 777 | tem = Fintern (make_string (start, length_byte), Qnil); | 777 | tem = Fintern (make_string (start, length_byte), Qnil); |
| 778 | 778 | ||
| 779 | /* Ignore remappings unless there are no ordinary bindings. */ | ||
| 780 | tem = Fwhere_is_internal (tem, keymap, Qt, Qnil, Qt); | ||
| 781 | if (NILP (tem)) | ||
| 782 | tem = Fwhere_is_internal (tem, keymap, Qt, Qnil, Qnil); | ||
| 783 | |||
| 779 | /* Note the Fwhere_is_internal can GC, so we have to take | 784 | /* Note the Fwhere_is_internal can GC, so we have to take |
| 780 | relocation of string contents into account. */ | 785 | relocation of string contents into account. */ |
| 781 | tem = Fwhere_is_internal (tem, keymap, Qt, Qnil, Qnil); | ||
| 782 | strp = SDATA (string) + idx; | 786 | strp = SDATA (string) + idx; |
| 783 | start = SDATA (string) + start_idx; | 787 | start = SDATA (string) + start_idx; |
| 784 | 788 | ||
diff --git a/src/keyboard.c b/src/keyboard.c index 940802764d2..475479b66a3 100644 --- a/src/keyboard.c +++ b/src/keyboard.c | |||
| @@ -665,6 +665,9 @@ static void clear_event P_ ((struct input_event *)); | |||
| 665 | static void any_kboard_state P_ ((void)); | 665 | static void any_kboard_state P_ ((void)); |
| 666 | static SIGTYPE interrupt_signal P_ ((int signalnum)); | 666 | static SIGTYPE interrupt_signal P_ ((int signalnum)); |
| 667 | static void handle_interrupt P_ ((void)); | 667 | static void handle_interrupt P_ ((void)); |
| 668 | static void timer_start_idle P_ ((void)); | ||
| 669 | static void timer_stop_idle P_ ((void)); | ||
| 670 | static void timer_resume_idle P_ ((void)); | ||
| 668 | 671 | ||
| 669 | /* Nonzero means don't try to suspend even if the operating system seems | 672 | /* Nonzero means don't try to suspend even if the operating system seems |
| 670 | to support it. */ | 673 | to support it. */ |
| @@ -2383,7 +2386,6 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) | |||
| 2383 | volatile Lisp_Object also_record; | 2386 | volatile Lisp_Object also_record; |
| 2384 | volatile int reread; | 2387 | volatile int reread; |
| 2385 | struct gcpro gcpro1, gcpro2; | 2388 | struct gcpro gcpro1, gcpro2; |
| 2386 | EMACS_TIME last_idle_start; | ||
| 2387 | int polling_stopped_here = 0; | 2389 | int polling_stopped_here = 0; |
| 2388 | 2390 | ||
| 2389 | also_record = Qnil; | 2391 | also_record = Qnil; |
| @@ -2890,9 +2892,6 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) | |||
| 2890 | 2892 | ||
| 2891 | non_reread: | 2893 | non_reread: |
| 2892 | 2894 | ||
| 2893 | /* Record the last idle start time so that we can reset it | ||
| 2894 | should the next event read be a help-echo. */ | ||
| 2895 | last_idle_start = timer_idleness_start_time; | ||
| 2896 | timer_stop_idle (); | 2895 | timer_stop_idle (); |
| 2897 | RESUME_POLLING; | 2896 | RESUME_POLLING; |
| 2898 | 2897 | ||
| @@ -2932,7 +2931,7 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) | |||
| 2932 | prevents automatic window selection (under | 2931 | prevents automatic window selection (under |
| 2933 | mouse_autoselect_window from acting as a real input event, for | 2932 | mouse_autoselect_window from acting as a real input event, for |
| 2934 | example banishing the mouse under mouse-avoidance-mode. */ | 2933 | example banishing the mouse under mouse-avoidance-mode. */ |
| 2935 | timer_idleness_start_time = last_idle_start; | 2934 | timer_resume_idle (); |
| 2936 | 2935 | ||
| 2937 | /* Resume allowing input from any kboard, if that was true before. */ | 2936 | /* Resume allowing input from any kboard, if that was true before. */ |
| 2938 | if (!was_locked) | 2937 | if (!was_locked) |
| @@ -3131,7 +3130,7 @@ read_char (commandflag, nmaps, maps, prev_event, used_mouse_menu) | |||
| 3131 | show_help_echo (help, window, object, position, 0); | 3130 | show_help_echo (help, window, object, position, 0); |
| 3132 | 3131 | ||
| 3133 | /* We stopped being idle for this event; undo that. */ | 3132 | /* We stopped being idle for this event; undo that. */ |
| 3134 | timer_idleness_start_time = last_idle_start; | 3133 | timer_resume_idle (); |
| 3135 | goto retry; | 3134 | goto retry; |
| 3136 | } | 3135 | } |
| 3137 | 3136 | ||
| @@ -4252,7 +4251,7 @@ swallow_events (do_display) | |||
| 4252 | /* Record the start of when Emacs is idle, | 4251 | /* Record the start of when Emacs is idle, |
| 4253 | for the sake of running idle-time timers. */ | 4252 | for the sake of running idle-time timers. */ |
| 4254 | 4253 | ||
| 4255 | void | 4254 | static void |
| 4256 | timer_start_idle () | 4255 | timer_start_idle () |
| 4257 | { | 4256 | { |
| 4258 | Lisp_Object timers; | 4257 | Lisp_Object timers; |
| @@ -4280,12 +4279,23 @@ timer_start_idle () | |||
| 4280 | 4279 | ||
| 4281 | /* Record that Emacs is no longer idle, so stop running idle-time timers. */ | 4280 | /* Record that Emacs is no longer idle, so stop running idle-time timers. */ |
| 4282 | 4281 | ||
| 4283 | void | 4282 | static void |
| 4284 | timer_stop_idle () | 4283 | timer_stop_idle () |
| 4285 | { | 4284 | { |
| 4286 | EMACS_SET_SECS_USECS (timer_idleness_start_time, -1, -1); | 4285 | EMACS_SET_SECS_USECS (timer_idleness_start_time, -1, -1); |
| 4287 | } | 4286 | } |
| 4288 | 4287 | ||
| 4288 | /* Resume idle timer from last idle start time. */ | ||
| 4289 | |||
| 4290 | static void | ||
| 4291 | timer_resume_idle () | ||
| 4292 | { | ||
| 4293 | if (! EMACS_TIME_NEG_P (timer_idleness_start_time)) | ||
| 4294 | return; | ||
| 4295 | |||
| 4296 | timer_idleness_start_time = timer_last_idleness_start_time; | ||
| 4297 | } | ||
| 4298 | |||
| 4289 | /* This is only for debugging. */ | 4299 | /* This is only for debugging. */ |
| 4290 | struct input_event last_timer_event; | 4300 | struct input_event last_timer_event; |
| 4291 | 4301 | ||
| @@ -8918,14 +8928,7 @@ read_key_sequence (keybuf, bufsize, prompt, dont_downcase_last, | |||
| 8918 | keymap may have changed, so replay the sequence. */ | 8928 | keymap may have changed, so replay the sequence. */ |
| 8919 | if (BUFFERP (key)) | 8929 | if (BUFFERP (key)) |
| 8920 | { | 8930 | { |
| 8921 | EMACS_TIME initial_idleness_start_time; | 8931 | timer_resume_idle (); |
| 8922 | EMACS_SET_SECS_USECS (initial_idleness_start_time, | ||
| 8923 | EMACS_SECS (timer_last_idleness_start_time), | ||
| 8924 | EMACS_USECS (timer_last_idleness_start_time)); | ||
| 8925 | |||
| 8926 | /* Resume idle state, using the same start-time as before. */ | ||
| 8927 | timer_start_idle (); | ||
| 8928 | timer_idleness_start_time = initial_idleness_start_time; | ||
| 8929 | 8932 | ||
| 8930 | mock_input = t; | 8933 | mock_input = t; |
| 8931 | /* Reset the current buffer from the selected window | 8934 | /* Reset the current buffer from the selected window |
diff --git a/src/keyboard.h b/src/keyboard.h index c079994ca9a..3039f028bbb 100644 --- a/src/keyboard.h +++ b/src/keyboard.h | |||
| @@ -326,8 +326,6 @@ extern void swallow_events P_ ((int)); | |||
| 326 | extern int help_char_p P_ ((Lisp_Object)); | 326 | extern int help_char_p P_ ((Lisp_Object)); |
| 327 | extern void quit_throw_to_read_char P_ ((void)) NO_RETURN; | 327 | extern void quit_throw_to_read_char P_ ((void)) NO_RETURN; |
| 328 | extern void cmd_error_internal P_ ((Lisp_Object, char *)); | 328 | extern void cmd_error_internal P_ ((Lisp_Object, char *)); |
| 329 | extern void timer_start_idle P_ ((void)); | ||
| 330 | extern void timer_stop_idle P_ ((void)); | ||
| 331 | extern int lucid_event_type_list_p P_ ((Lisp_Object)); | 329 | extern int lucid_event_type_list_p P_ ((Lisp_Object)); |
| 332 | extern void kbd_buffer_store_event P_ ((struct input_event *)); | 330 | extern void kbd_buffer_store_event P_ ((struct input_event *)); |
| 333 | extern void kbd_buffer_store_event_hold P_ ((struct input_event *, | 331 | extern void kbd_buffer_store_event_hold P_ ((struct input_event *, |
| @@ -47,6 +47,8 @@ Boston, MA 02111-1307, USA. */ | |||
| 47 | #undef realloc | 47 | #undef realloc |
| 48 | #undef init_process | 48 | #undef init_process |
| 49 | #include <Carbon/Carbon.h> | 49 | #include <Carbon/Carbon.h> |
| 50 | #undef mktime | ||
| 51 | #define mktime emacs_mktime | ||
| 50 | #undef free | 52 | #undef free |
| 51 | #define free unexec_free | 53 | #define free unexec_free |
| 52 | #undef malloc | 54 | #undef malloc |
| @@ -73,6 +75,7 @@ Boston, MA 02111-1307, USA. */ | |||
| 73 | #include "process.h" | 75 | #include "process.h" |
| 74 | #include "sysselect.h" | 76 | #include "sysselect.h" |
| 75 | #include "systime.h" | 77 | #include "systime.h" |
| 78 | #include "blockinput.h" | ||
| 76 | 79 | ||
| 77 | Lisp_Object QCLIPBOARD; | 80 | Lisp_Object QCLIPBOARD; |
| 78 | 81 | ||
| @@ -2548,7 +2551,9 @@ component. */) | |||
| 2548 | 2551 | ||
| 2549 | CHECK_STRING (script); | 2552 | CHECK_STRING (script); |
| 2550 | 2553 | ||
| 2554 | BLOCK_INPUT; | ||
| 2551 | status = do_applescript (SDATA (script), &result); | 2555 | status = do_applescript (SDATA (script), &result); |
| 2556 | UNBLOCK_INPUT; | ||
| 2552 | if (status) | 2557 | if (status) |
| 2553 | { | 2558 | { |
| 2554 | if (!result) | 2559 | if (!result) |
| @@ -2618,26 +2623,23 @@ DEFUN ("mac-paste-function", Fmac_paste_function, Smac_paste_function, 0, 0, 0, | |||
| 2618 | () | 2623 | () |
| 2619 | { | 2624 | { |
| 2620 | #if TARGET_API_MAC_CARBON | 2625 | #if TARGET_API_MAC_CARBON |
| 2626 | OSStatus err; | ||
| 2621 | ScrapRef scrap; | 2627 | ScrapRef scrap; |
| 2622 | ScrapFlavorFlags sff; | 2628 | ScrapFlavorFlags sff; |
| 2623 | Size s; | 2629 | Size s; |
| 2624 | int i; | 2630 | int i; |
| 2625 | char *data; | 2631 | char *data; |
| 2626 | 2632 | ||
| 2627 | if (GetCurrentScrap (&scrap) != noErr) | 2633 | BLOCK_INPUT; |
| 2628 | return Qnil; | 2634 | err = GetCurrentScrap (&scrap); |
| 2629 | 2635 | if (err == noErr) | |
| 2630 | if (GetScrapFlavorFlags (scrap, kScrapFlavorTypeText, &sff) != noErr) | 2636 | err = GetScrapFlavorFlags (scrap, kScrapFlavorTypeText, &sff); |
| 2631 | return Qnil; | 2637 | if (err == noErr) |
| 2632 | 2638 | err = GetScrapFlavorSize (scrap, kScrapFlavorTypeText, &s); | |
| 2633 | if (GetScrapFlavorSize (scrap, kScrapFlavorTypeText, &s) != noErr) | 2639 | if (err == noErr && (data = (char*) alloca (s))) |
| 2634 | return Qnil; | 2640 | err = GetScrapFlavorData (scrap, kScrapFlavorTypeText, &s, data); |
| 2635 | 2641 | UNBLOCK_INPUT; | |
| 2636 | if ((data = (char*) alloca (s)) == NULL) | 2642 | if (err != noErr || s == 0) |
| 2637 | return Qnil; | ||
| 2638 | |||
| 2639 | if (GetScrapFlavorData (scrap, kScrapFlavorTypeText, &s, data) != noErr | ||
| 2640 | || s == 0) | ||
| 2641 | return Qnil; | 2643 | return Qnil; |
| 2642 | 2644 | ||
| 2643 | /* Emacs expects clipboard contents have Unix-style eol's */ | 2645 | /* Emacs expects clipboard contents have Unix-style eol's */ |
| @@ -2702,13 +2704,22 @@ DEFUN ("mac-cut-function", Fmac_cut_function, Smac_cut_function, 1, 2, 0, | |||
| 2702 | #if TARGET_API_MAC_CARBON | 2704 | #if TARGET_API_MAC_CARBON |
| 2703 | { | 2705 | { |
| 2704 | ScrapRef scrap; | 2706 | ScrapRef scrap; |
| 2707 | |||
| 2708 | BLOCK_INPUT; | ||
| 2705 | ClearCurrentScrap (); | 2709 | ClearCurrentScrap (); |
| 2706 | if (GetCurrentScrap (&scrap) != noErr) | 2710 | if (GetCurrentScrap (&scrap) != noErr) |
| 2707 | error ("cannot get current scrap"); | 2711 | { |
| 2712 | UNBLOCK_INPUT; | ||
| 2713 | error ("cannot get current scrap"); | ||
| 2714 | } | ||
| 2708 | 2715 | ||
| 2709 | if (PutScrapFlavor (scrap, kScrapFlavorTypeText, kScrapFlavorMaskNone, len, | 2716 | if (PutScrapFlavor (scrap, kScrapFlavorTypeText, kScrapFlavorMaskNone, len, |
| 2710 | buf) != noErr) | 2717 | buf) != noErr) |
| 2711 | error ("cannot put to scrap"); | 2718 | { |
| 2719 | UNBLOCK_INPUT; | ||
| 2720 | error ("cannot put to scrap"); | ||
| 2721 | } | ||
| 2722 | UNBLOCK_INPUT; | ||
| 2712 | } | 2723 | } |
| 2713 | #else /* not TARGET_API_MAC_CARBON */ | 2724 | #else /* not TARGET_API_MAC_CARBON */ |
| 2714 | ZeroScrap (); | 2725 | ZeroScrap (); |
| @@ -2743,9 +2754,11 @@ and t is the same as `SECONDARY'. */) | |||
| 2743 | ScrapRef scrap; | 2754 | ScrapRef scrap; |
| 2744 | ScrapFlavorFlags sff; | 2755 | ScrapFlavorFlags sff; |
| 2745 | 2756 | ||
| 2757 | BLOCK_INPUT; | ||
| 2746 | if (GetCurrentScrap (&scrap) == noErr) | 2758 | if (GetCurrentScrap (&scrap) == noErr) |
| 2747 | if (GetScrapFlavorFlags (scrap, kScrapFlavorTypeText, &sff) == noErr) | 2759 | if (GetScrapFlavorFlags (scrap, kScrapFlavorTypeText, &sff) == noErr) |
| 2748 | val = Qt; | 2760 | val = Qt; |
| 2761 | UNBLOCK_INPUT; | ||
| 2749 | #else /* not TARGET_API_MAC_CARBON */ | 2762 | #else /* not TARGET_API_MAC_CARBON */ |
| 2750 | Handle my_handle; | 2763 | Handle my_handle; |
| 2751 | long rc, scrap_offset; | 2764 | long rc, scrap_offset; |
| @@ -2770,8 +2783,6 @@ and t is the same as `SECONDARY'. */) | |||
| 2770 | extern int inhibit_window_system; | 2783 | extern int inhibit_window_system; |
| 2771 | extern int noninteractive; | 2784 | extern int noninteractive; |
| 2772 | 2785 | ||
| 2773 | #include "blockinput.h" | ||
| 2774 | |||
| 2775 | /* When Emacs is started from the Finder, SELECT always immediately | 2786 | /* When Emacs is started from the Finder, SELECT always immediately |
| 2776 | returns as if input is present when file descriptor 0 is polled for | 2787 | returns as if input is present when file descriptor 0 is polled for |
| 2777 | input. Strangely, when Emacs is run as a GUI application from the | 2788 | input. Strangely, when Emacs is run as a GUI application from the |
diff --git a/src/macfns.c b/src/macfns.c index f7594e9c6c2..88f975a65c8 100644 --- a/src/macfns.c +++ b/src/macfns.c | |||
| @@ -4247,6 +4247,7 @@ specified. Ensure that file exists if MUSTMATCH is non-nil. */) | |||
| 4247 | NavUserAction userAction; | 4247 | NavUserAction userAction; |
| 4248 | CFStringRef message=NULL, client=NULL, saveName = NULL; | 4248 | CFStringRef message=NULL, client=NULL, saveName = NULL; |
| 4249 | 4249 | ||
| 4250 | BLOCK_INPUT; | ||
| 4250 | /* No need for a callback function because we are modal */ | 4251 | /* No need for a callback function because we are modal */ |
| 4251 | NavGetDefaultDialogCreationOptions(&options); | 4252 | NavGetDefaultDialogCreationOptions(&options); |
| 4252 | options.modality = kWindowModalityAppModal; | 4253 | options.modality = kWindowModalityAppModal; |
| @@ -4317,9 +4318,7 @@ specified. Ensure that file exists if MUSTMATCH is non-nil. */) | |||
| 4317 | AEDisposeDesc(&defLocAed); | 4318 | AEDisposeDesc(&defLocAed); |
| 4318 | } | 4319 | } |
| 4319 | 4320 | ||
| 4320 | BLOCK_INPUT; | ||
| 4321 | status = NavDialogRun(dialogRef); | 4321 | status = NavDialogRun(dialogRef); |
| 4322 | UNBLOCK_INPUT; | ||
| 4323 | } | 4322 | } |
| 4324 | 4323 | ||
| 4325 | if (saveName) CFRelease(saveName); | 4324 | if (saveName) CFRelease(saveName); |
| @@ -4332,9 +4331,7 @@ specified. Ensure that file exists if MUSTMATCH is non-nil. */) | |||
| 4332 | { | 4331 | { |
| 4333 | case kNavUserActionNone: | 4332 | case kNavUserActionNone: |
| 4334 | case kNavUserActionCancel: | 4333 | case kNavUserActionCancel: |
| 4335 | NavDialogDispose(dialogRef); | 4334 | break; /* Treat cancel like C-g */ |
| 4336 | Fsignal (Qquit, Qnil); /* Treat cancel like C-g */ | ||
| 4337 | return; | ||
| 4338 | case kNavUserActionOpen: | 4335 | case kNavUserActionOpen: |
| 4339 | case kNavUserActionChoose: | 4336 | case kNavUserActionChoose: |
| 4340 | case kNavUserActionSaveAs: | 4337 | case kNavUserActionSaveAs: |
| @@ -4369,6 +4366,7 @@ specified. Ensure that file exists if MUSTMATCH is non-nil. */) | |||
| 4369 | dir, mustmatch, dir, Qfile_name_history, | 4366 | dir, mustmatch, dir, Qfile_name_history, |
| 4370 | default_filename, Qnil); | 4367 | default_filename, Qnil); |
| 4371 | } | 4368 | } |
| 4369 | UNBLOCK_INPUT; | ||
| 4372 | } | 4370 | } |
| 4373 | 4371 | ||
| 4374 | UNGCPRO; | 4372 | UNGCPRO; |
diff --git a/src/macgui.h b/src/macgui.h index 58081df52b4..e5ea665ac15 100644 --- a/src/macgui.h +++ b/src/macgui.h | |||
| @@ -42,6 +42,8 @@ typedef unsigned long Time; | |||
| 42 | #undef min | 42 | #undef min |
| 43 | #undef init_process | 43 | #undef init_process |
| 44 | #include <Carbon/Carbon.h> | 44 | #include <Carbon/Carbon.h> |
| 45 | #undef mktime | ||
| 46 | #define mktime emacs_mktime | ||
| 45 | #undef Z | 47 | #undef Z |
| 46 | #define Z (current_buffer->text->z) | 48 | #define Z (current_buffer->text->z) |
| 47 | #undef free | 49 | #undef free |
diff --git a/src/macterm.c b/src/macterm.c index b7ebaea0990..f62bbbc0d84 100644 --- a/src/macterm.c +++ b/src/macterm.c | |||
| @@ -5317,7 +5317,11 @@ x_raise_frame (f) | |||
| 5317 | struct frame *f; | 5317 | struct frame *f; |
| 5318 | { | 5318 | { |
| 5319 | if (f->async_visible) | 5319 | if (f->async_visible) |
| 5320 | SelectWindow (FRAME_MAC_WINDOW (f)); | 5320 | { |
| 5321 | BLOCK_INPUT; | ||
| 5322 | SelectWindow (FRAME_MAC_WINDOW (f)); | ||
| 5323 | UNBLOCK_INPUT; | ||
| 5324 | } | ||
| 5321 | } | 5325 | } |
| 5322 | 5326 | ||
| 5323 | /* Lower frame F. */ | 5327 | /* Lower frame F. */ |
| @@ -5326,7 +5330,11 @@ x_lower_frame (f) | |||
| 5326 | struct frame *f; | 5330 | struct frame *f; |
| 5327 | { | 5331 | { |
| 5328 | if (f->async_visible) | 5332 | if (f->async_visible) |
| 5329 | SendBehind (FRAME_MAC_WINDOW (f), nil); | 5333 | { |
| 5334 | BLOCK_INPUT; | ||
| 5335 | SendBehind (FRAME_MAC_WINDOW (f), nil); | ||
| 5336 | UNBLOCK_INPUT; | ||
| 5337 | } | ||
| 5330 | } | 5338 | } |
| 5331 | 5339 | ||
| 5332 | static void | 5340 | static void |
| @@ -8757,6 +8765,7 @@ make_mac_frame (FRAME_PTR fp) | |||
| 8757 | 8765 | ||
| 8758 | mwp = fp->output_data.mac; | 8766 | mwp = fp->output_data.mac; |
| 8759 | 8767 | ||
| 8768 | BLOCK_INPUT; | ||
| 8760 | if (making_terminal_window) | 8769 | if (making_terminal_window) |
| 8761 | { | 8770 | { |
| 8762 | if (!(mwp->mWP = GetNewCWindow (TERM_WINDOW_RESOURCE, NULL, | 8771 | if (!(mwp->mWP = GetNewCWindow (TERM_WINDOW_RESOURCE, NULL, |
| @@ -8784,9 +8793,8 @@ make_mac_frame (FRAME_PTR fp) | |||
| 8784 | /* so that update events can find this mac_output struct */ | 8793 | /* so that update events can find this mac_output struct */ |
| 8785 | mwp->mFP = fp; /* point back to emacs frame */ | 8794 | mwp->mFP = fp; /* point back to emacs frame */ |
| 8786 | 8795 | ||
| 8787 | SetPortWindowPort (mwp->mWP); | ||
| 8788 | |||
| 8789 | SizeWindow (mwp->mWP, FRAME_PIXEL_WIDTH (fp), FRAME_PIXEL_HEIGHT (fp), false); | 8796 | SizeWindow (mwp->mWP, FRAME_PIXEL_WIDTH (fp), FRAME_PIXEL_HEIGHT (fp), false); |
| 8797 | UNBLOCK_INPUT; | ||
| 8790 | } | 8798 | } |
| 8791 | 8799 | ||
| 8792 | 8800 | ||
| @@ -9210,6 +9218,7 @@ mac_initialize () | |||
| 9210 | signal (SIGPIPE, x_connection_signal); | 9218 | signal (SIGPIPE, x_connection_signal); |
| 9211 | #endif | 9219 | #endif |
| 9212 | 9220 | ||
| 9221 | BLOCK_INPUT; | ||
| 9213 | mac_initialize_display_info (); | 9222 | mac_initialize_display_info (); |
| 9214 | 9223 | ||
| 9215 | #if TARGET_API_MAC_CARBON | 9224 | #if TARGET_API_MAC_CARBON |
| @@ -9228,6 +9237,7 @@ mac_initialize () | |||
| 9228 | if (!inhibit_window_system) | 9237 | if (!inhibit_window_system) |
| 9229 | MakeMeTheFrontProcess (); | 9238 | MakeMeTheFrontProcess (); |
| 9230 | #endif | 9239 | #endif |
| 9240 | UNBLOCK_INPUT; | ||
| 9231 | } | 9241 | } |
| 9232 | 9242 | ||
| 9233 | 9243 | ||
diff --git a/src/xfns.c b/src/xfns.c index 9e9a85749a1..115a5aeb3c5 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -5590,7 +5590,7 @@ Chinese, Japanese, and Korean. */); | |||
| 5590 | last_show_tip_args = Qnil; | 5590 | last_show_tip_args = Qnil; |
| 5591 | staticpro (&last_show_tip_args); | 5591 | staticpro (&last_show_tip_args); |
| 5592 | 5592 | ||
| 5593 | #ifdef USE_MOTIF | 5593 | #if defined (USE_MOTIF) || defined (USE_GTK) |
| 5594 | defsubr (&Sx_file_dialog); | 5594 | defsubr (&Sx_file_dialog); |
| 5595 | #endif | 5595 | #endif |
| 5596 | } | 5596 | } |