diff options
author | John Wiegley <johnw@newartisans.com> | 2016-07-12 15:27:25 -0700 |
---|---|---|
committer | John Wiegley <johnw@newartisans.com> | 2016-07-12 15:27:25 -0700 |
commit | 54b7eb0dee2397f1430e81b7356f8efb19946ba0 (patch) | |
tree | a463da12f08f32dc78beb2f99a37eb1951f51a43 /src/xdisp.c | |
parent | 9c8c3a5478db6ff4b245e9128cbf24bd722ab1d6 (diff) | |
download | emacs-54b7eb0dee2397f1430e81b7356f8efb19946ba0.tar.gz |
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/xdisp.c')
-rw-r--r-- | src/xdisp.c | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/src/xdisp.c b/src/xdisp.c index b8dcdcec41f..14d6f8fcf93 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -2841,7 +2841,11 @@ init_iterator (struct it *it, struct window *w, frames when the fringes are turned off. But leave the dimensions zero for tooltip frames, as these glyphs look ugly there and also sabotage calculations of tooltip dimensions in x-show-tip. */ - if (!FRAME_TOOLTIP_P (it->f)) +#ifdef HAVE_WINDOW_SYSTEM + if (!(FRAME_WINDOW_P (it->f) + && FRAMEP (tip_frame) + && it->f == XFRAME (tip_frame))) +#endif { if (it->line_wrap == TRUNCATE) { @@ -11709,7 +11713,7 @@ x_consider_frame_title (Lisp_Object frame) if ((FRAME_WINDOW_P (f) || FRAME_MINIBUF_ONLY_P (f) || f->explicit_name) - && !FRAME_TOOLTIP_P (f)) + && NILP (Fframe_parameter (frame, Qtooltip))) { /* Do we have more than one visible frame on this X display? */ Lisp_Object tail, other_frame, fmt; @@ -11726,7 +11730,7 @@ x_consider_frame_title (Lisp_Object frame) if (tf != f && FRAME_KBOARD (tf) == FRAME_KBOARD (f) && !FRAME_MINIBUF_ONLY_P (tf) - && !FRAME_TOOLTIP_P (tf) + && !EQ (other_frame, tip_frame) && (FRAME_VISIBLE_P (tf) || FRAME_ICONIFIED_P (tf))) break; } @@ -11789,6 +11793,13 @@ prepare_menu_bars (void) { bool all_windows = windows_or_buffers_changed || update_mode_lines; bool some_windows = REDISPLAY_SOME_P (); + Lisp_Object tooltip_frame; + +#ifdef HAVE_WINDOW_SYSTEM + tooltip_frame = tip_frame; +#else + tooltip_frame = Qnil; +#endif if (FUNCTIONP (Vpre_redisplay_function)) { @@ -11829,7 +11840,7 @@ prepare_menu_bars (void) && !XBUFFER (w->contents)->text->redisplay) continue; - if (!FRAME_TOOLTIP_P (f) + if (!EQ (frame, tooltip_frame) && (FRAME_ICONIFIED_P (f) || FRAME_VISIBLE_P (f) == 1 /* Exclude TTY frames that are obscured because they @@ -11866,7 +11877,7 @@ prepare_menu_bars (void) struct window *w = XWINDOW (FRAME_SELECTED_WINDOW (f)); /* Ignore tooltip frame. */ - if (FRAME_TOOLTIP_P (f)) + if (EQ (frame, tooltip_frame)) continue; if (some_windows |