diff options
| author | Eli Zaretskii | 2017-11-11 14:42:30 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2017-11-11 14:42:30 +0200 |
| commit | 7657a867095f9edbb43c22f979f06dbe880059b7 (patch) | |
| tree | ddabb7270ab53f3a2dc7892e11ae9515f702dcd6 /src | |
| parent | 603a0716a8824731a689d3b5144b55eed9ee4db4 (diff) | |
| download | emacs-7657a867095f9edbb43c22f979f06dbe880059b7.tar.gz emacs-7657a867095f9edbb43c22f979f06dbe880059b7.zip | |
Fix comparisons with tip_frame in GTK builds
* src/xterm.c (x_update_begin, x_new_font):
* src/xfns.c (Fx_display_monitor_attributes_list):
* src/frame.c (Fframe_list) [USE_GTK]: Don't consider tip_frame a
tooltip frame unless its 'tooltip' parameter is non-nil. (Bug#26747)
Diffstat (limited to 'src')
| -rw-r--r-- | src/frame.c | 6 | ||||
| -rw-r--r-- | src/xfns.c | 6 | ||||
| -rw-r--r-- | src/xterm.c | 12 |
3 files changed, 20 insertions, 4 deletions
diff --git a/src/frame.c b/src/frame.c index fe1709e6ede..2b32751c0d3 100644 --- a/src/frame.c +++ b/src/frame.c | |||
| @@ -1472,7 +1472,11 @@ DEFUN ("frame-list", Fframe_list, Sframe_list, | |||
| 1472 | Lisp_Object frames; | 1472 | Lisp_Object frames; |
| 1473 | frames = Fcopy_sequence (Vframe_list); | 1473 | frames = Fcopy_sequence (Vframe_list); |
| 1474 | #ifdef HAVE_WINDOW_SYSTEM | 1474 | #ifdef HAVE_WINDOW_SYSTEM |
| 1475 | if (FRAMEP (tip_frame)) | 1475 | if (FRAMEP (tip_frame) |
| 1476 | #ifdef USE_GTK | ||
| 1477 | && !NILP (Fframe_parameter (tip_frame, Qtooltip)) | ||
| 1478 | #endif | ||
| 1479 | ) | ||
| 1476 | frames = Fdelq (tip_frame, frames); | 1480 | frames = Fdelq (tip_frame, frames); |
| 1477 | #endif | 1481 | #endif |
| 1478 | return frames; | 1482 | return frames; |
diff --git a/src/xfns.c b/src/xfns.c index 9022e4a9674..83fc07dc6cb 100644 --- a/src/xfns.c +++ b/src/xfns.c | |||
| @@ -4915,7 +4915,11 @@ Internal use only, use `display-monitor-attributes-list' instead. */) | |||
| 4915 | struct frame *f = XFRAME (frame); | 4915 | struct frame *f = XFRAME (frame); |
| 4916 | 4916 | ||
| 4917 | if (FRAME_X_P (f) && FRAME_DISPLAY_INFO (f) == dpyinfo | 4917 | if (FRAME_X_P (f) && FRAME_DISPLAY_INFO (f) == dpyinfo |
| 4918 | && !EQ (frame, tip_frame)) | 4918 | && !(EQ (frame, tip_frame) |
| 4919 | #ifdef USE_GTK | ||
| 4920 | && !NILP (Fframe_parameter (tip_frame, Qtooltip)) | ||
| 4921 | #endif | ||
| 4922 | )) | ||
| 4919 | { | 4923 | { |
| 4920 | GdkWindow *gwin = gtk_widget_get_window (FRAME_GTK_WIDGET (f)); | 4924 | GdkWindow *gwin = gtk_widget_get_window (FRAME_GTK_WIDGET (f)); |
| 4921 | 4925 | ||
diff --git a/src/xterm.c b/src/xterm.c index dbb8349452d..e11cde771ab 100644 --- a/src/xterm.c +++ b/src/xterm.c | |||
| @@ -997,7 +997,11 @@ x_update_begin (struct frame *f) | |||
| 997 | { | 997 | { |
| 998 | #ifdef USE_CAIRO | 998 | #ifdef USE_CAIRO |
| 999 | if (! NILP (tip_frame) && XFRAME (tip_frame) == f | 999 | if (! NILP (tip_frame) && XFRAME (tip_frame) == f |
| 1000 | && ! FRAME_VISIBLE_P (f)) | 1000 | && ! FRAME_VISIBLE_P (f) |
| 1001 | #ifdef USE_GTK | ||
| 1002 | && !NILP (Fframe_parameter (tip_frame, Qtooltip)) | ||
| 1003 | #endif | ||
| 1004 | ) | ||
| 1001 | return; | 1005 | return; |
| 1002 | 1006 | ||
| 1003 | if (! FRAME_CR_SURFACE (f)) | 1007 | if (! FRAME_CR_SURFACE (f)) |
| @@ -9960,7 +9964,11 @@ x_new_font (struct frame *f, Lisp_Object font_object, int fontset) | |||
| 9960 | /* Don't change the size of a tip frame; there's no point in | 9964 | /* Don't change the size of a tip frame; there's no point in |
| 9961 | doing it because it's done in Fx_show_tip, and it leads to | 9965 | doing it because it's done in Fx_show_tip, and it leads to |
| 9962 | problems because the tip frame has no widget. */ | 9966 | problems because the tip frame has no widget. */ |
| 9963 | if (NILP (tip_frame) || XFRAME (tip_frame) != f) | 9967 | if (NILP (tip_frame) || XFRAME (tip_frame) != f |
| 9968 | #ifdef USE_GTK | ||
| 9969 | || NILP (Fframe_parameter (tip_frame, Qtooltip)) | ||
| 9970 | #endif | ||
| 9971 | ) | ||
| 9964 | { | 9972 | { |
| 9965 | adjust_frame_size (f, FRAME_COLS (f) * FRAME_COLUMN_WIDTH (f), | 9973 | adjust_frame_size (f, FRAME_COLS (f) * FRAME_COLUMN_WIDTH (f), |
| 9966 | FRAME_LINES (f) * FRAME_LINE_HEIGHT (f), 3, | 9974 | FRAME_LINES (f) * FRAME_LINE_HEIGHT (f), 3, |