changeset 83324:eed3bdcacf4d

New C function `push_display_kboard'. * src/keyboard.c (push_display_kboard): New function. * src/keyboard.h (push_display_kboard): Declare it. git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-364
author Karoly Lorentey <lorentey@elte.hu>
date Mon, 27 Jun 2005 00:57:09 +0000
parents 61487e73bbc2
children 9e41c80c6389
files src/keyboard.c src/keyboard.h
diffstat 2 files changed, 18 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/keyboard.c	Mon Jun 27 00:56:21 2005 +0000
+++ b/src/keyboard.c	Mon Jun 27 00:57:09 2005 +0000
@@ -1112,6 +1112,22 @@
 static struct kboard_stack *kboard_stack;
 
 void
+push_display_kboard (d)
+     struct display *d;
+{
+#ifdef MULTI_KBOARD
+  struct kboard_stack *p
+    = (struct kboard_stack *) xmalloc (sizeof (struct kboard_stack));
+
+  p->next = kboard_stack;
+  p->kboard = current_kboard;
+  kboard_stack = p;
+
+  current_kboard = d->kboard;
+#endif
+}
+
+void
 push_frame_kboard (f)
      FRAME_PTR f;
 {
@@ -10803,7 +10819,7 @@
       && FRAMEP (selected_frame)
       && FRAME_LIVE_P (XFRAME (selected_frame)))
     {
-      current_kboard = XFRAME (selected_frame)->kboard;
+      current_kboard = XFRAME (selected_frame)->display->kboard;
       if (current_kboard == kb)
 	abort ();
     }
--- a/src/keyboard.h	Mon Jun 27 00:56:21 2005 +0000
+++ b/src/keyboard.h	Mon Jun 27 00:57:09 2005 +0000
@@ -315,6 +315,7 @@
 extern void delete_kboard P_ ((KBOARD *));
 extern void single_kboard_state P_ ((void));
 extern void not_single_kboard_state P_ ((KBOARD *));
+extern void push_display_kboard P_ ((struct display *));
 extern void push_frame_kboard P_ ((struct frame *));
 extern void pop_frame_kboard P_ ((void));
 extern void record_asynch_buffer_change P_ ((void));