changeset 111345:8ed4db9b46e6

Fix mouse redesigned mouse highlight on MSDOS. dispnew.c (init_display): Setup initial frame's output_data for text terminal frames. frame.h (MOUSE_HL_INFO): Fix TTY definition. msdos.h (initialize_msdos_display): Add prototype.
author Eli Zaretskii <eliz@gnu.org>
date Fri, 05 Nov 2010 14:11:22 +0200
parents b775602e70c8
children 2d0c056a50d8
files src/ChangeLog src/dispnew.c src/frame.h src/msdos.h
diffstat 4 files changed, 14 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Fri Nov 05 12:03:17 2010 +0200
+++ b/src/ChangeLog	Fri Nov 05 14:11:22 2010 +0200
@@ -1,5 +1,10 @@
 2010-11-05  Eli Zaretskii  <eliz@gnu.org>
 
+	* dispnew.c (init_display): Setup initial frame's output_data for
+	text terminal frames.
+
+	* frame.h (MOUSE_HL_INFO): Fix TTY definition.
+
 	* dispextern.h (tty_draw_row_with_mouse_face): Add prototype.
 
 	* xdisp.c (draw_row_with_mouse_face): Don't #ifdef away on MSDOS.
@@ -10,6 +15,7 @@
 	GPM implementation.
 
 	* msdos.h (Display_Info): Restore typedef.
+	(initialize_msdos_display): Add prototype.
 
 2010-11-02  Eli Zaretskii  <eliz@gnu.org>
 
--- a/src/dispnew.c	Fri Nov 05 12:03:17 2010 +0200
+++ b/src/dispnew.c	Fri Nov 05 14:11:22 2010 +0200
@@ -6424,6 +6424,12 @@
     f->terminal = t;
 
     t->reference_count++;
+#ifdef MSDOS
+    f->output_data.tty->display_info = &the_only_display_info;
+#else
+    if (f->output_method == output_termcap)
+      create_tty_output (f);
+#endif
     t->display_info.tty->top_frame = selected_frame;
     change_frame_size (XFRAME (selected_frame),
                        FrameRows (t->display_info.tty),
--- a/src/frame.h	Fri Nov 05 12:03:17 2010 +0200
+++ b/src/frame.h	Fri Nov 05 14:11:22 2010 +0200
@@ -550,7 +550,7 @@
 #define MOUSE_HL_INFO(F)				\
   (FRAME_WINDOW_P(F)					\
    ? &(FRAME_X_DISPLAY_INFO(F)->mouse_highlight)	\
-   : &(((F)->output_data.tty)->mouse_highlight))
+   : &(((F)->output_data.tty->display_info)->mouse_highlight))
 
 /* Nonzero if frame F is still alive (not deleted).  */
 #define FRAME_LIVE_P(f) ((f)->terminal != 0)
--- a/src/msdos.h	Fri Nov 05 12:03:17 2010 +0200
+++ b/src/msdos.h	Fri Nov 05 14:11:22 2010 +0200
@@ -34,6 +34,7 @@
 char *rootrelativepath (char *);
 void init_environment (int, char **, int);
 void internal_terminal_init (void);
+void initialize_msdos_display (struct terminal *);
 
 extern int have_mouse;
 void mouse_init (void);