On Thu, 19 Aug 2021 16:39:16 +0900 Masaru Nomiya <nom...@galaxy.dti.ne.jp> said:

I wonder if they are using the netwm visibility state oddly? E will set
the netwm state to invisible if a window is iconified or when screen blanks and
set it back when it is uniconified or screen unblanks. Also if you switch
virtual desktops windows on other desktops get the hidden state set and
removed when they appear again. When does it freeze and stop rendering? what do
you do before that to make it happen?

ie you will see:

_NET_WM_STATE(ATOM) = _NET_WM_STATE_HIDDEN

if you use xprop on a window if its iconified, on a non-visible virtual desktop
or when screen blanking starts. that property will be deleted/removed when it is
uniconified or otherwise visible again.

> Hello,
> 
> In the Message; 
> 
>   Subject    : Re: [e-users] How to prevent the sudden appear of screenshot
> panel Message-ID : <87y298jnlu.wl-nom...@galaxy.dti.ne.jp>
>   Date & Time: Wed, 11 Aug 2021 19:13:17 +0900
> 
> [MN] == Masaru Nomiya <nom...@galaxy.dti.ne.jp> has written:
> 
> [...]
> MN> My issue seeems to occur with my hardware problem.
> 
> MN> That is, I'm using the PS/2 USB conversion adapter for my keyboard.
> MN> It's wired no matter how it often requires the "taking out and putting
> MN> in of USB connection" operation.
> 
> MN> I'll change the adapter.
> 
> I's this!
> 
> Sorry for the noise.
> 
> BTW.
> 
> Still now, emacs problem persists;
> 
> 1. Emacs built with '--with-x-toolkit=lucid' option DOES shrink.
> 
> 2. Emacs built with '--with-x-toolkit=gtk3' never shrinked, but got
> another problem. That is, Emacs got a quasi freeze since May 8th.
> I reported this issue to the bug-gnu-emacs ML, and yesterday was
> suggested to check my WM. That's it. The git head of enlightenment is
> causing the problem, I found.
> Then, I try to dig out the cause, and detected.
> 
> The triiger of this issue is;
> 
> commit 483c5e953c12a95382bef4a3b6769a680c32fe86
> Author: Martin Rudalics <rudal...@gmx.at>
> Date:   Wed May 5 10:26:32 2021 +0200
> 
>     Fix two GTK3 event handling issues
>     
>     * src/xterm.c (handle_one_xevent): For GTK3 PropertyNotify and
>     MapNotify events explicitly request the stored frame sizes when
>     the frame changes from iconified to a non-hidden state
>     (Bug#24526).  For Expose events do not change the frame's
>     visibility or iconified state.  For FocusIn events on GTK3 do
>     not apply the fix for Bug#42655.  The latter two changes are to
>     avoid that plain invisible frames get reported as iconified.
> 
> That is, this patch is the cause.
> 
> --- xterm.c.orig      2021-05-16 11:13:56.013376500 +0900
> +++ xterm.c   2021-08-19 16:17:49.823963974 +0900
> @@ -8181,12 +8181,8 @@
>  #if defined USE_GTK && defined HAVE_GTK3
>             /* If GTK3 wants to impose some old size here (Bug#24526),
>                tell it that the current size is what we want.  */
> -           if (f->was_invisible)
> -             {
> -               xg_frame_set_char_size
> -                 (f, FRAME_PIXEL_WIDTH (f), FRAME_PIXEL_HEIGHT (f));
> -               f->was_invisible = false;
> -             }
> +           xg_frame_set_char_size
> +             (f, FRAME_PIXEL_WIDTH (f), FRAME_PIXEL_HEIGHT (f));
>  #endif
>             XSETFRAME (inev.ie.frame_or_window, f);
>           }
> @@ -8447,12 +8443,8 @@
>  #if defined USE_GTK && defined HAVE_GTK3
>             /* If GTK3 wants to impose some old size here (Bug#24526),
>                tell it that the current size is what we want.  */
> -           if (f->was_invisible)
> -             {
> -               xg_frame_set_char_size
> -                 (f, FRAME_PIXEL_WIDTH (f), FRAME_PIXEL_HEIGHT (f));
> -               f->was_invisible = false;
> -             }
> +           xg_frame_set_char_size
> +             (f, FRAME_PIXEL_WIDTH (f), FRAME_PIXEL_HEIGHT (f));
>  #endif
>             f->output_data.x->has_been_visible = true;
>           }
> @@ -9343,11 +9335,6 @@
>        goto OTHER;
>  
>      case VisibilityNotify:
> -      f = x_top_window_to_frame (dpyinfo, event->xvisibility.window);
> -      if (f && (event->xvisibility.state == VisibilityUnobscured
> -             || event->xvisibility.state == VisibilityPartiallyObscured))
> -     SET_FRAME_VISIBLE (f, 1);
> -
>        goto OTHER;
>  
>      case MappingNotify:
> @@ -9604,12 +9591,11 @@
>    /* The foreground of cursor_gc is typically the same as the normal
>       background color, which can cause the cursor box to be invisible.  */
>    xgcv.foreground = f->output_data.x->cursor_pixel;
> -  xgcv.line_width = 1;
>    if (dpyinfo->scratch_cursor_gc)
> -    XChangeGC (dpy, dpyinfo->scratch_cursor_gc, GCForeground | GCLineWidth,
> &xgcv);
> +    XChangeGC (dpy, dpyinfo->scratch_cursor_gc, GCForeground, &xgcv);
>    else
>      dpyinfo->scratch_cursor_gc = XCreateGC (dpy, FRAME_X_DRAWABLE (f),
> -                                         GCForeground | GCLineWidth,
> &xgcv);
> +                                         GCForeground, &xgcv);
>    gc = dpyinfo->scratch_cursor_gc;
>  
>    /* When on R2L character, show cursor at the right edge of the
> 
> 
> Does this give you any clue?
> 
> Regards.
> 
> ---
> ┏━━┓彡 Masaru Nomiya             mail-to: nomiya @ galaxy.dti.ne.jp
> ┃\/彡
> ┗━━┛ "Bill! You married with Computer.
>           Not with Me!"
>          "No..., with money."
> 
> 
> _______________________________________________
> enlightenment-users mailing list
> enlightenment-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-users
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
Carsten Haitzler - ras...@rasterman.com



_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to