GNU bug report logs - #61667
29.0.60; Failure to redisplay

Previous Next

Package: emacs;

Reported by: Dmitry Gutov <dgutov <at> yandex.ru>

Date: Tue, 21 Feb 2023 02:55:01 UTC

Severity: normal

Found in version 29.0.60

Full log


Message #167 received at 61667 <at> debbugs.gnu.org (full text, mbox):

From: Dmitry Gutov <dgutov <at> yandex.ru>
To: Po Lu <luangruo <at> yahoo.com>
Cc: 61667 <at> debbugs.gnu.org, Eli Zaretskii <eliz <at> gnu.org>, gregory <at> heytings.org
Subject: Re: bug#61667: 29.0.60; Failure to redisplay
Date: Fri, 24 Feb 2023 15:32:19 +0200
On 24/02/2023 02:59, Po Lu via Bug reports for GNU Emacs, the Swiss army 
knife of text editors wrote:
> The easy thing to do is to place a window containing changing content
> (such as an animation or image) behind Emacs, apply the following
> change:
> 
> diff --git a/src/xterm.c b/src/xterm.c
> index 5e6378db30d..8459dd33297 100644
> --- a/src/xterm.c
> +++ b/src/xterm.c
> @@ -5222,37 +5222,37 @@ x_update_opaque_region (struct frame *f, XEvent *configure)
>     if (!FRAME_DISPLAY_INFO (f)->alpha_bits)
>       return;
>   
> -  if (f->alpha_background < 1.0)
> +  /* if (f->alpha_background < 1.0) */
>       XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
>   		     FRAME_DISPLAY_INFO (f)->Xatom_net_wm_opaque_region,
>   		     XA_CARDINAL, 32, PropModeReplace,
>   		     NULL, 0);
> -#ifndef HAVE_GTK3
> -  else
> -    XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
> -		     FRAME_DISPLAY_INFO (f)->Xatom_net_wm_opaque_region,
> -		     XA_CARDINAL, 32, PropModeReplace,
> -		     (unsigned char *) &opaque_region, 4);
> -#else
> -  else if (FRAME_TOOLTIP_P (f))
> -    XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f),
> -		     FRAME_DISPLAY_INFO (f)->Xatom_net_wm_opaque_region,
> -		     XA_CARDINAL, 32, PropModeReplace,
> -		     (unsigned char *) &opaque_region, 4);
> -  else
> -    {
> -      /* This causes child frames to not update correctly for an
> -	 unknown reason.  (bug#55779) */
> -      if (!FRAME_PARENT_FRAME (f))
> -	{
> -	  object_class = G_OBJECT_GET_CLASS (FRAME_GTK_OUTER_WIDGET (f));
> -	  class = GTK_WIDGET_CLASS (object_class);
> -
> -	  if (class->style_updated)
> -	    class->style_updated (FRAME_GTK_OUTER_WIDGET (f));
> -	}
> -    }
> -#endif
> +/* #ifndef HAVE_GTK3 */
> +/*   else */
> +/*     XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), */
> +/* 		     FRAME_DISPLAY_INFO (f)->Xatom_net_wm_opaque_region, */
> +/* 		     XA_CARDINAL, 32, PropModeReplace, */
> +/* 		     (unsigned char *) &opaque_region, 4); */
> +/* #else */
> +/*   else if (FRAME_TOOLTIP_P (f)) */
> +/*     XChangeProperty (FRAME_X_DISPLAY (f), FRAME_X_WINDOW (f), */
> +/* 		     FRAME_DISPLAY_INFO (f)->Xatom_net_wm_opaque_region, */
> +/* 		     XA_CARDINAL, 32, PropModeReplace, */
> +/* 		     (unsigned char *) &opaque_region, 4); */
> +/*   else */
> +/*     { */
> +/*       /\* This causes child frames to not update correctly for an */
> +/* 	 unknown reason.  (bug#55779) *\/ */
> +/*       if (!FRAME_PARENT_FRAME (f)) */
> +/* 	{ */
> +/* 	  object_class = G_OBJECT_GET_CLASS (FRAME_GTK_OUTER_WIDGET (f)); */
> +/* 	  class = GTK_WIDGET_CLASS (object_class); */
> +
> +/* 	  if (class->style_updated) */
> +/* 	    class->style_updated (FRAME_GTK_OUTER_WIDGET (f)); */
> +/* 	} */
> +/*     } */
> +/* #endif */
>   }
>   
> and see whether or not the problem can still be reproduced that way.

Okay, I've tried this one now, and the problem still reproduces.

For the background window I tried both 'xclock -update 1' and 'xclock 
-update 0.001', made no difference.

The Emacs window didn't look any different, though (not sure if it was 
supposed to look more transparent).




This bug report was last modified 1 year and 63 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.