aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
authorJohn Wiegley2016-07-12 15:27:25 -0700
committerJohn Wiegley2016-07-12 15:27:25 -0700
commit54b7eb0dee2397f1430e81b7356f8efb19946ba0 (patch)
treea463da12f08f32dc78beb2f99a37eb1951f51a43 /src/xterm.c
parent9c8c3a5478db6ff4b245e9128cbf24bd722ab1d6 (diff)
downloademacs-54b7eb0dee2397f1430e81b7356f8efb19946ba0.tar.gz
emacs-54b7eb0dee2397f1430e81b7356f8efb19946ba0.zip
Revert "Cleanup tooltips"
This reverts commit 20038f8ab75dd1551412a43cd58520c483c22921. I am reverting this change because it was applied without prior discussion on emacs-devel, and has been found to break the NS port. It needs more testing and review before it should be applied here.
Diffstat (limited to 'src/xterm.c')
-rw-r--r--src/xterm.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/xterm.c b/src/xterm.c
index ada1160ec90..cd1d712f39a 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -987,7 +987,8 @@ static void
987x_update_begin (struct frame *f) 987x_update_begin (struct frame *f)
988{ 988{
989#ifdef USE_CAIRO 989#ifdef USE_CAIRO
990 if (FRAME_TOOLTIP_P (f) && ! FRAME_VISIBLE_P (f)) 990 if (! NILP (tip_frame) && XFRAME (tip_frame) == f
991 && ! FRAME_VISIBLE_P (f))
991 return; 992 return;
992 993
993 if (! FRAME_CR_SURFACE (f)) 994 if (! FRAME_CR_SURFACE (f))
@@ -7838,9 +7839,11 @@ handle_one_xevent (struct x_display_info *dpyinfo,
7838 7839
7839 case UnmapNotify: 7840 case UnmapNotify:
7840 /* Redo the mouse-highlight after the tooltip has gone. */ 7841 /* Redo the mouse-highlight after the tooltip has gone. */
7841 if (dpyinfo->x_tooltip_frame 7842 if (event->xunmap.window == tip_window)
7842 && FRAME_X_WINDOW (dpyinfo->x_tooltip_frame) == event->xunmap.window) 7843 {
7843 x_redo_mouse_highlight (dpyinfo); 7844 tip_window = 0;
7845 x_redo_mouse_highlight (dpyinfo);
7846 }
7844 7847
7845 f = x_top_window_to_frame (dpyinfo, event->xunmap.window); 7848 f = x_top_window_to_frame (dpyinfo, event->xunmap.window);
7846 if (f) /* F may no longer exist if 7849 if (f) /* F may no longer exist if
@@ -8430,7 +8433,7 @@ handle_one_xevent (struct x_display_info *dpyinfo,
8430 8433
8431#ifdef USE_X_TOOLKIT 8434#ifdef USE_X_TOOLKIT
8432 /* Tip frames are pure X window, set size for them. */ 8435 /* Tip frames are pure X window, set size for them. */
8433 if (FRAME_TOOLTIP_P (f)) 8436 if (! NILP (tip_frame) && XFRAME (tip_frame) == f)
8434 { 8437 {
8435 if (FRAME_PIXEL_HEIGHT (f) != configureEvent.xconfigure.height 8438 if (FRAME_PIXEL_HEIGHT (f) != configureEvent.xconfigure.height
8436 || FRAME_PIXEL_WIDTH (f) != configureEvent.xconfigure.width) 8439 || FRAME_PIXEL_WIDTH (f) != configureEvent.xconfigure.width)
@@ -9611,7 +9614,7 @@ x_new_font (struct frame *f, Lisp_Object font_object, int fontset)
9611 /* Don't change the size of a tip frame; there's no point in 9614 /* Don't change the size of a tip frame; there's no point in
9612 doing it because it's done in Fx_show_tip, and it leads to 9615 doing it because it's done in Fx_show_tip, and it leads to
9613 problems because the tip frame has no widget. */ 9616 problems because the tip frame has no widget. */
9614 if (!FRAME_TOOLTIP_P (f)) 9617 if (NILP (tip_frame) || XFRAME (tip_frame) != f)
9615 { 9618 {
9616 adjust_frame_size (f, FRAME_COLS (f) * FRAME_COLUMN_WIDTH (f), 9619 adjust_frame_size (f, FRAME_COLS (f) * FRAME_COLUMN_WIDTH (f),
9617 FRAME_LINES (f) * FRAME_LINE_HEIGHT (f), 3, 9620 FRAME_LINES (f) * FRAME_LINE_HEIGHT (f), 3,
@@ -10686,7 +10689,7 @@ x_set_window_size (struct frame *f, bool change_gravity,
10686 /* The following breaks our calculations. If it's really needed, 10689 /* The following breaks our calculations. If it's really needed,
10687 think of something else. */ 10690 think of something else. */
10688#if false 10691#if false
10689 if (!FRAME_TOOLTIP_P (f)) 10692 if (NILP (tip_frame) || XFRAME (tip_frame) != f)
10690 { 10693 {
10691 int text_width, text_height; 10694 int text_width, text_height;
10692 10695
@@ -11337,8 +11340,6 @@ x_free_frame_resources (struct frame *f)
11337 dpyinfo->x_focus_event_frame = 0; 11340 dpyinfo->x_focus_event_frame = 0;
11338 if (f == dpyinfo->x_highlight_frame) 11341 if (f == dpyinfo->x_highlight_frame)
11339 dpyinfo->x_highlight_frame = 0; 11342 dpyinfo->x_highlight_frame = 0;
11340 if (f == dpyinfo->x_tooltip_frame)
11341 dpyinfo->x_tooltip_frame = 0;
11342 if (f == hlinfo->mouse_face_mouse_frame) 11343 if (f == hlinfo->mouse_face_mouse_frame)
11343 reset_mouse_highlight (hlinfo); 11344 reset_mouse_highlight (hlinfo);
11344 11345