aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
authorMartin Rudalics2008-12-22 09:40:33 +0000
committerMartin Rudalics2008-12-22 09:40:33 +0000
commit56f2de103fd8ee430ae3d2f6a1b83d4aa2012f90 (patch)
tree4dcbba9b999a65c7919278eb93fd5b821f9b5b2d /src/xterm.c
parentcaf857eb7c7815e1d11ed706fb4a789bc92c3924 (diff)
downloademacs-56f2de103fd8ee430ae3d2f6a1b83d4aa2012f90.tar.gz
emacs-56f2de103fd8ee430ae3d2f6a1b83d4aa2012f90.zip
* frame.c (delete_frame): New function derived from
Fdelete_frame to handle Qnoelisp value for FORCE argument. Delete last frame iff FORCE equals Qnoelisp. (Bug#1450) (Fdelete_frame): Call delete_frame. Remove line from doc-string saying that FORCE non-nil doesn't run `delete-frame-functions'. * frame.h: Extern delete_frame. * window.c (window_loop): * terminal.c (delete_terminal): * xterm.c (x_connection_closed): * xfns.c (Fx_hide_tip): * w32fns.c (Fx_hide_tip): Call delete_frame instead of Fdelete_frame.
Diffstat (limited to 'src/xterm.c')
-rw-r--r--src/xterm.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/src/xterm.c b/src/xterm.c
index 505100c6488..37c187486d8 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -4017,7 +4017,7 @@ x_window_to_scroll_bar (display, window_id)
4017 4017
4018 if (! FRAME_X_P (XFRAME (frame))) 4018 if (! FRAME_X_P (XFRAME (frame)))
4019 continue; 4019 continue;
4020 4020
4021 /* Scan this frame's scroll bar list for a scroll bar with the 4021 /* Scan this frame's scroll bar list for a scroll bar with the
4022 right window ID. */ 4022 right window ID. */
4023 condemned = FRAME_CONDEMNED_SCROLL_BARS (XFRAME (frame)); 4023 condemned = FRAME_CONDEMNED_SCROLL_BARS (XFRAME (frame));
@@ -6467,7 +6467,7 @@ handle_one_xevent (dpyinfo, eventp, finish, hold_quit)
6467 inev.ie.code = XFASTINT (c); 6467 inev.ie.code = XFASTINT (c);
6468 goto done_keysym; 6468 goto done_keysym;
6469 } 6469 }
6470 6470
6471 /* Random non-modifier sorts of keysyms. */ 6471 /* Random non-modifier sorts of keysyms. */
6472 if (((keysym >= XK_BackSpace && keysym <= XK_Escape) 6472 if (((keysym >= XK_BackSpace && keysym <= XK_Escape)
6473 || keysym == XK_Delete 6473 || keysym == XK_Delete
@@ -7172,7 +7172,7 @@ XTread_socket (terminal, expected, hold_quit)
7172 XTread_socket_fake_io_error = 0; 7172 XTread_socket_fake_io_error = 0;
7173 x_io_error_quitter (terminal->display_info.x->display); 7173 x_io_error_quitter (terminal->display_info.x->display);
7174 } 7174 }
7175 7175
7176#if 0 /* This loop is a noop now. */ 7176#if 0 /* This loop is a noop now. */
7177 /* Find the display we are supposed to read input for. 7177 /* Find the display we are supposed to read input for.
7178 It's the one communicating on descriptor SD. */ 7178 It's the one communicating on descriptor SD. */
@@ -7871,7 +7871,7 @@ x_connection_closed (dpy, error_message)
7871 dpyinfo->reference_count++; 7871 dpyinfo->reference_count++;
7872 dpyinfo->terminal->reference_count++; 7872 dpyinfo->terminal->reference_count++;
7873 } 7873 }
7874 7874
7875 /* First delete frames whose mini-buffers are on frames 7875 /* First delete frames whose mini-buffers are on frames
7876 that are on the dead display. */ 7876 that are on the dead display. */
7877 FOR_EACH_FRAME (tail, frame) 7877 FOR_EACH_FRAME (tail, frame)
@@ -7883,7 +7883,7 @@ x_connection_closed (dpy, error_message)
7883 && FRAME_X_P (XFRAME (minibuf_frame)) 7883 && FRAME_X_P (XFRAME (minibuf_frame))
7884 && ! EQ (frame, minibuf_frame) 7884 && ! EQ (frame, minibuf_frame)
7885 && FRAME_X_DISPLAY_INFO (XFRAME (minibuf_frame)) == dpyinfo) 7885 && FRAME_X_DISPLAY_INFO (XFRAME (minibuf_frame)) == dpyinfo)
7886 Fdelete_frame (frame, Qnoelisp); 7886 delete_frame (frame, Qnoelisp);
7887 } 7887 }
7888 7888
7889 /* Now delete all remaining frames on the dead display. 7889 /* Now delete all remaining frames on the dead display.
@@ -7893,10 +7893,10 @@ x_connection_closed (dpy, error_message)
7893 if (FRAME_X_P (XFRAME (frame)) 7893 if (FRAME_X_P (XFRAME (frame))
7894 && FRAME_X_DISPLAY_INFO (XFRAME (frame)) == dpyinfo) 7894 && FRAME_X_DISPLAY_INFO (XFRAME (frame)) == dpyinfo)
7895 { 7895 {
7896 /* Set this to t so that Fdelete_frame won't get confused 7896 /* Set this to t so that delete_frame won't get confused
7897 trying to find a replacement. */ 7897 trying to find a replacement. */
7898 FRAME_KBOARD (XFRAME (frame))->Vdefault_minibuffer_frame = Qt; 7898 FRAME_KBOARD (XFRAME (frame))->Vdefault_minibuffer_frame = Qt;
7899 Fdelete_frame (frame, Qnoelisp); 7899 delete_frame (frame, Qnoelisp);
7900 } 7900 }
7901 7901
7902 /* We have to close the display to inform Xt that it doesn't 7902 /* We have to close the display to inform Xt that it doesn't
@@ -10170,7 +10170,7 @@ x_term_init (display_name, xrm_option, resource_name)
10170 terminal->name = (char *) xmalloc (SBYTES (display_name) + 1); 10170 terminal->name = (char *) xmalloc (SBYTES (display_name) + 1);
10171 strncpy (terminal->name, SDATA (display_name), SBYTES (display_name)); 10171 strncpy (terminal->name, SDATA (display_name), SBYTES (display_name));
10172 terminal->name[SBYTES (display_name)] = 0; 10172 terminal->name[SBYTES (display_name)] = 0;
10173 10173
10174#if 0 10174#if 0
10175 XSetAfterFunction (x_current_display, x_trace_wire); 10175 XSetAfterFunction (x_current_display, x_trace_wire);
10176#endif /* ! 0 */ 10176#endif /* ! 0 */
@@ -10622,7 +10622,7 @@ x_delete_terminal (struct terminal *terminal)
10622 struct x_display_info *dpyinfo = terminal->display_info.x; 10622 struct x_display_info *dpyinfo = terminal->display_info.x;
10623 int i; 10623 int i;
10624 10624
10625 /* Protect against recursive calls. Fdelete_frame in 10625 /* Protect against recursive calls. delete_frame in
10626 delete_terminal calls us back when it deletes our last frame. */ 10626 delete_terminal calls us back when it deletes our last frame. */
10627 if (!terminal->name) 10627 if (!terminal->name)
10628 return; 10628 return;
@@ -10664,7 +10664,7 @@ static struct terminal *
10664x_create_terminal (struct x_display_info *dpyinfo) 10664x_create_terminal (struct x_display_info *dpyinfo)
10665{ 10665{
10666 struct terminal *terminal; 10666 struct terminal *terminal;
10667 10667
10668 terminal = create_terminal (); 10668 terminal = create_terminal ();
10669 10669
10670 terminal->type = output_x_window; 10670 terminal->type = output_x_window;
@@ -10672,7 +10672,7 @@ x_create_terminal (struct x_display_info *dpyinfo)
10672 dpyinfo->terminal = terminal; 10672 dpyinfo->terminal = terminal;
10673 10673
10674 /* kboard is initialized in x_term_init. */ 10674 /* kboard is initialized in x_term_init. */
10675 10675
10676 terminal->clear_frame_hook = x_clear_frame; 10676 terminal->clear_frame_hook = x_clear_frame;
10677 terminal->ins_del_lines_hook = x_ins_del_lines; 10677 terminal->ins_del_lines_hook = x_ins_del_lines;
10678 terminal->delete_glyphs_hook = x_delete_glyphs; 10678 terminal->delete_glyphs_hook = x_delete_glyphs;
@@ -10695,7 +10695,7 @@ x_create_terminal (struct x_display_info *dpyinfo)
10695 10695
10696 terminal->delete_frame_hook = x_destroy_window; 10696 terminal->delete_frame_hook = x_destroy_window;
10697 terminal->delete_terminal_hook = x_delete_terminal; 10697 terminal->delete_terminal_hook = x_delete_terminal;
10698 10698
10699 terminal->rif = &x_redisplay_interface; 10699 terminal->rif = &x_redisplay_interface;
10700 terminal->scroll_region_ok = 1; /* We'll scroll partial frames. */ 10700 terminal->scroll_region_ok = 1; /* We'll scroll partial frames. */
10701 terminal->char_ins_del_ok = 1; 10701 terminal->char_ins_del_ok = 1;