From 7ac5dac91307a99913c558898c520da649dbf4ea Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Fri, 5 Nov 2010 14:11:22 +0200 Subject: [PATCH] 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. --- src/ChangeLog | 6 ++++++ src/dispnew.c | 6 ++++++ src/frame.h | 2 +- src/msdos.h | 1 + 4 files changed, 14 insertions(+), 1 deletion(-) diff --git a/src/ChangeLog b/src/ChangeLog index db3582db7bd..e840b18460e 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,10 @@ 2010-11-05 Eli Zaretskii + * 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 diff --git a/src/dispnew.c b/src/dispnew.c index deb42f47639..116d9972ba5 100644 --- a/src/dispnew.c +++ b/src/dispnew.c @@ -6424,6 +6424,12 @@ init_display (void) 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), diff --git a/src/frame.h b/src/frame.h index 00c062cfd36..72c0f6be2d7 100644 --- a/src/frame.h +++ b/src/frame.h @@ -550,7 +550,7 @@ typedef struct frame *FRAME_PTR; #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) diff --git a/src/msdos.h b/src/msdos.h index fe9964af25e..d07c28d410e 100644 --- a/src/msdos.h +++ b/src/msdos.h @@ -34,6 +34,7 @@ void dostounix_filename (char *); 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); -- 2.39.5