Re: [e-users] emacs problem persists

2021-08-19 Thread Carsten Haitzler
On Thu, 19 Aug 2021 16:39:16 +0900 Masaru Nomiya  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  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 
> 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,
> );
> +XChangeGC (dpy, dpyinfo->scratch_cursor_gc, GCForeground, );
>else
>  dpyinfo->scratch_cursor_gc = XCreateGC (dpy, FRAME_X_DRAWABLE (f),
> - GCForeground | GCLineWidth,
> );
> + GCForeground, );
>gc = dpyinfo->scratch_cursor_gc;
>  
>

[e-users] emacs problem persists

2021-08-19 Thread Masaru Nomiya
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  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 
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.orig2021-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, 
);
+XChangeGC (dpy, dpyinfo->scratch_cursor_gc, GCForeground, );
   else
 dpyinfo->scratch_cursor_gc = XCreateGC (dpy, FRAME_X_DRAWABLE (f),
-   GCForeground | GCLineWidth, );
+   GCForeground, );
   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