aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Nicolaescu2007-11-20 17:58:52 +0000
committerDan Nicolaescu2007-11-20 17:58:52 +0000
commit202c09a889e637eb4162db551252c80bbf46b02b (patch)
tree91c9a3f493ce067ab3d389783a683348cb1c6b45
parent1571d112d97475f53d99a3aff303139ff6ac748b (diff)
downloademacs-202c09a889e637eb4162db551252c80bbf46b02b.tar.gz
emacs-202c09a889e637eb4162db551252c80bbf46b02b.zip
* term/mac-win.el (x-setup-function-keys): Only setup
local-function-key-map if it has not been setup already for the current frame. Move the suspend-emacs processing here. * s/darwin.h (MULTI_KBOARD): Remove. * macfns.c (x_create_tip_frame, Fx_create_frame) (x_create_tip_frame): Don't deal with MULTI_KBOARD.
-rw-r--r--lisp/ChangeLog6
-rw-r--r--lisp/term/mac-win.el43
-rw-r--r--src/ChangeLog7
-rw-r--r--src/macfns.c12
-rw-r--r--src/macterm.c2
-rw-r--r--src/s/darwin.h3
6 files changed, 36 insertions, 37 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 4d04952b62e..ef4f67bf37c 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,9 @@
12007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * term/mac-win.el (x-setup-function-keys): Only setup
4 local-function-key-map if it has not been setup already for the
5 current frame. Move the suspend-emacs processing here.
6
12007-11-20 Juanma Barranquero <lekktu@gmail.com> 72007-11-20 Juanma Barranquero <lekktu@gmail.com>
2 8
3 * progmodes/grep.el (xargs-program): New variable. 9 * progmodes/grep.el (xargs-program): New variable.
diff --git a/lisp/term/mac-win.el b/lisp/term/mac-win.el
index 7e4ec6546c8..684de49c4ea 100644
--- a/lisp/term/mac-win.el
+++ b/lisp/term/mac-win.el
@@ -1058,28 +1058,31 @@ XConsortium: rgb.txt,v 10.41 94/02/20 18:39:36 rws Exp")
1058 1058
1059;;;; Function keys 1059;;;; Function keys
1060 1060
1061(substitute-key-definition 'suspend-emacs 'iconify-or-deiconify-frame
1062 global-map)
1063
1064(defun x-setup-function-keys (frame) 1061(defun x-setup-function-keys (frame)
1065 "Setup Function Keys for mac." 1062 "Setup Function Keys for mac."
1066;; Map certain keypad keys into ASCII characters 1063 ;; Don't do this twice on the same display, or it would break
1067;; that people usually expect. 1064 ;; normal-erase-is-backspace-mode.
1068(define-key local-function-key-map [backspace] [?\d]) 1065 (unless (terminal-parameter frame 'x-setup-function-keys)
1069(define-key local-function-key-map [delete] [?\d]) 1066 (with-selected-frame frame
1070(define-key local-function-key-map [tab] [?\t]) 1067 ;; Map certain keypad keys into ASCII characters
1071(define-key local-function-key-map [linefeed] [?\n]) 1068 ;; that people usually expect.
1072(define-key local-function-key-map [clear] [?\C-l]) 1069 (define-key local-function-key-map [backspace] [?\d])
1073(define-key local-function-key-map [return] [?\C-m]) 1070 (define-key local-function-key-map [delete] [?\d])
1074(define-key local-function-key-map [escape] [?\e]) 1071 (define-key local-function-key-map [tab] [?\t])
1075(define-key local-function-key-map [M-backspace] [?\M-\d]) 1072 (define-key local-function-key-map [linefeed] [?\n])
1076(define-key local-function-key-map [M-delete] [?\M-\d]) 1073 (define-key local-function-key-map [clear] [?\C-l])
1077(define-key local-function-key-map [M-tab] [?\M-\t]) 1074 (define-key local-function-key-map [return] [?\C-m])
1078(define-key local-function-key-map [M-linefeed] [?\M-\n]) 1075 (define-key local-function-key-map [escape] [?\e])
1079(define-key local-function-key-map [M-clear] [?\M-\C-l]) 1076 (define-key local-function-key-map [M-backspace] [?\M-\d])
1080(define-key local-function-key-map [M-return] [?\M-\C-m]) 1077 (define-key local-function-key-map [M-delete] [?\M-\d])
1081(define-key local-function-key-map [M-escape] [?\M-\e]) 1078 (define-key local-function-key-map [M-tab] [?\M-\t])
1082) 1079 (define-key local-function-key-map [M-linefeed] [?\M-\n])
1080 (define-key local-function-key-map [M-clear] [?\M-\C-l])
1081 (define-key local-function-key-map [M-return] [?\M-\C-m])
1082 (define-key local-function-key-map [M-escape] [?\M-\e])
1083 (substitute-key-definition 'suspend-emacs 'iconify-or-deiconify-frame
1084 local-function-key-map global-map))
1085 (set-terminal-parameter frame 'x-setup-function-keys t))))
1083 1086
1084;; These tell read-char how to convert 1087;; These tell read-char how to convert
1085;; these special chars to ASCII. 1088;; these special chars to ASCII.
diff --git a/src/ChangeLog b/src/ChangeLog
index 4113948bc97..dda5b989775 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
12007-11-20 Dan Nicolaescu <dann@ics.uci.edu>
2
3 * s/darwin.h (MULTI_KBOARD): Remove.
4
5 * macfns.c (x_create_tip_frame, Fx_create_frame)
6 (x_create_tip_frame): Don't deal with MULTI_KBOARD.
7
12007-11-19 Stefan Monnier <monnier@iro.umontreal.ca> 82007-11-19 Stefan Monnier <monnier@iro.umontreal.ca>
2 9
3 * buffer.c (Fbuffer_local_value): Remove redundant test. 10 * buffer.c (Fbuffer_local_value): Remove redundant test.
diff --git a/src/macfns.c b/src/macfns.c
index 1622576f073..7afeaafd85b 100644
--- a/src/macfns.c
+++ b/src/macfns.c
@@ -2547,11 +2547,7 @@ This function is an internal primitive--use `make-frame' instead. */)
2547 if (EQ (display, Qunbound)) 2547 if (EQ (display, Qunbound))
2548 display = Qnil; 2548 display = Qnil;
2549 dpyinfo = check_x_display_info (display); 2549 dpyinfo = check_x_display_info (display);
2550#ifdef MULTI_KBOARD
2551 kb = dpyinfo->terminal->kboard; 2550 kb = dpyinfo->terminal->kboard;
2552#else
2553 kb = &the_only_kboard;
2554#endif
2555 2551
2556 name = mac_get_arg (parameters, Qname, "name", "Name", RES_TYPE_STRING); 2552 name = mac_get_arg (parameters, Qname, "name", "Name", RES_TYPE_STRING);
2557 if (!STRINGP (name) 2553 if (!STRINGP (name)
@@ -2615,9 +2611,7 @@ This function is an internal primitive--use `make-frame' instead. */)
2615 image_cache_refcount = FRAME_X_IMAGE_CACHE (f)->refcount; 2611 image_cache_refcount = FRAME_X_IMAGE_CACHE (f)->refcount;
2616 dpyinfo_refcount = dpyinfo->reference_count; 2612 dpyinfo_refcount = dpyinfo->reference_count;
2617#endif /* GLYPH_DEBUG */ 2613#endif /* GLYPH_DEBUG */
2618#ifdef MULTI_KBOARD
2619 FRAME_KBOARD (f) = kb; 2614 FRAME_KBOARD (f) = kb;
2620#endif
2621 2615
2622 /* Specify the parent under which to make this window. */ 2616 /* Specify the parent under which to make this window. */
2623 2617
@@ -3809,11 +3803,7 @@ x_create_tip_frame (dpyinfo, parms, text)
3809 3803
3810 parms = Fcopy_alist (parms); 3804 parms = Fcopy_alist (parms);
3811 3805
3812#ifdef MULTI_KBOARD
3813 kb = dpyinfo->terminal->kboard; 3806 kb = dpyinfo->terminal->kboard;
3814#else
3815 kb = &the_only_kboard;
3816#endif
3817 3807
3818 /* Get the name of the frame to use for resource lookup. */ 3808 /* Get the name of the frame to use for resource lookup. */
3819 name = mac_get_arg (parms, Qname, "name", "Name", RES_TYPE_STRING); 3809 name = mac_get_arg (parms, Qname, "name", "Name", RES_TYPE_STRING);
@@ -3859,9 +3849,7 @@ x_create_tip_frame (dpyinfo, parms, text)
3859 image_cache_refcount = FRAME_X_IMAGE_CACHE (f)->refcount; 3849 image_cache_refcount = FRAME_X_IMAGE_CACHE (f)->refcount;
3860 dpyinfo_refcount = dpyinfo->reference_count; 3850 dpyinfo_refcount = dpyinfo->reference_count;
3861#endif /* GLYPH_DEBUG */ 3851#endif /* GLYPH_DEBUG */
3862#ifdef MULTI_KBOARD
3863 FRAME_KBOARD (f) = kb; 3852 FRAME_KBOARD (f) = kb;
3864#endif
3865 f->output_data.mac->parent_desc = FRAME_MAC_DISPLAY_INFO (f)->root_window; 3853 f->output_data.mac->parent_desc = FRAME_MAC_DISPLAY_INFO (f)->root_window;
3866 f->output_data.mac->explicit_parent = 0; 3854 f->output_data.mac->explicit_parent = 0;
3867 3855
diff --git a/src/macterm.c b/src/macterm.c
index 5ea8f0ba607..bc33cfe472e 100644
--- a/src/macterm.c
+++ b/src/macterm.c
@@ -12823,7 +12823,6 @@ mac_create_terminal (struct mac_display_info *dpyinfo)
12823 /* FIXME: This keyboard setup is 100% untested, just copied from 12823 /* FIXME: This keyboard setup is 100% untested, just copied from
12824 w32_create_terminal in order to set window-system now that it's 12824 w32_create_terminal in order to set window-system now that it's
12825 a keyboard object. */ 12825 a keyboard object. */
12826#ifdef MULTI_KBOARD
12827 /* We don't yet support separate terminals on Mac, so don't try to share 12826 /* We don't yet support separate terminals on Mac, so don't try to share
12828 keyboards between virtual terminals that are on the same physical 12827 keyboards between virtual terminals that are on the same physical
12829 terminal like X does. */ 12828 terminal like X does. */
@@ -12838,7 +12837,6 @@ mac_create_terminal (struct mac_display_info *dpyinfo)
12838 if (current_kboard == initial_kboard) 12837 if (current_kboard == initial_kboard)
12839 current_kboard = terminal->kboard; 12838 current_kboard = terminal->kboard;
12840 terminal->kboard->reference_count++; 12839 terminal->kboard->reference_count++;
12841#endif
12842 12840
12843 return terminal; 12841 return terminal;
12844} 12842}
diff --git a/src/s/darwin.h b/src/s/darwin.h
index 6bfa0e95106..c1108e7c295 100644
--- a/src/s/darwin.h
+++ b/src/s/darwin.h
@@ -53,9 +53,6 @@ Boston, MA 02110-1301, USA. */
53/* We need a little extra space, see ../../lisp/loadup.el. */ 53/* We need a little extra space, see ../../lisp/loadup.el. */
54#define SYSTEM_PURESIZE_EXTRA 30000 54#define SYSTEM_PURESIZE_EXTRA 30000
55 55
56/* XXX The MULTI_KBOARD support does not work yet on this platform. */
57#undef MULTI_KBOARD
58
59#endif 56#endif
60#endif 57#endif
61 58