]> git.eshelyaron.com Git - emacs.git/commitdiff
New C function `push_display_kboard'.
authorKaroly Lorentey <lorentey@elte.hu>
Mon, 27 Jun 2005 00:57:09 +0000 (00:57 +0000)
committerKaroly Lorentey <lorentey@elte.hu>
Mon, 27 Jun 2005 00:57:09 +0000 (00:57 +0000)
* 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

src/keyboard.c
src/keyboard.h

index 6fb95f5d815920481ee743174685d6b8be4ad73c..a906146df4adec7005c72179bd0da93a1d596d89 100644 (file)
@@ -1111,6 +1111,22 @@ struct kboard_stack
 
 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 @@ delete_kboard (kb)
       && 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 ();
     }
index de2254952b4c787bff06c8d8954af0e361211033..91226ce6e65eaf356563fb3f3cab3d31a6bcc27e 100644 (file)
@@ -315,6 +315,7 @@ extern void init_kboard P_ ((KBOARD *));
 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));