* src/xfns.c (xic_set_preeditarea): Don't set the GTK context on
tooltip frames.
(x_set_alpha_background): Don't make tooltip frames paintable.
* src/xterm.c (x_xr_ensure_picture): Get rid of GDK visual code.
This is now done in a better way inside xg_create_frame_widgets.
(bug#53654)
#ifdef USE_GTK
/* This prevents GTK from painting the window's background, which
interferes with transparent background in some environments */
- gtk_widget_set_app_paintable (FRAME_GTK_OUTER_WIDGET (f),
- f->alpha_background != 1.0);
+
+ if (!FRAME_TOOLTIP_P (f))
+ gtk_widget_set_app_paintable (FRAME_GTK_OUTER_WIDGET (f),
+ f->alpha_background != 1.0);
#endif
if (f->alpha_background != 1.0)
XFree (attr);
}
#ifdef USE_GTK
+ if (f->tooltip)
+ return;
+
GdkRectangle rect;
int scale = xg_get_scale (f);
{
XRenderPictureAttributes attrs;
attrs.clip_mask = None;
- XRenderPictFormat *fmt;
-
-#ifdef USE_GTK
- GdkWindow *wnd = gtk_widget_get_window (FRAME_GTK_OUTER_WIDGET (f));
- GdkVisual *visual = gdk_window_get_visual (wnd);
- Visual *xvisual = gdk_x11_visual_get_xvisual (visual);
-
- fmt = XRenderFindVisualFormat (FRAME_X_DISPLAY (f), xvisual);
-
- if (!fmt)
-#endif
- fmt = FRAME_X_PICTURE_FORMAT (f);
+ XRenderPictFormat *fmt = FRAME_X_PICTURE_FORMAT (f);
FRAME_X_PICTURE (f) = XRenderCreatePicture (FRAME_X_DISPLAY (f),
FRAME_X_RAW_DRAWABLE (f),