Re: FVWM: FVWM 2.5.25 and Skype: Profile Window won't show

2008-10-21 Thread Philipp Kolmann

Hi,

i did some more testing.

cvs head doesn't work on FC9.

Compiled 2.5.24 on debian and there everything works as expected. 2.5.25 
somehow doesn't start properly. 2.5.26 starts nice, and profile view 
window doesn't appear.


So it seems it is some regression from 2.5.24 to 2.5.26. The Diff is 6k 
lines, so nothing easy to spot.

Any hint, what might be the issue or how to trace it?

Thanks
Philipp



Re: FVWM: FVWM 2.5.25 and Skype: Profile Window won't show

2008-10-21 Thread Philipp Kolmann

ok, I dug though the diff.

Philipp Kolmann wrote:
So it seems it is some regression from 2.5.24 to 2.5.26. The Diff is 
6k lines, so nothing easy to spot.

Any hint, what might be the issue or how to trace it?



diff -ur fvwm-2.5.24/fvwm/events.c fvwm-2.5.26/fvwm/events.c
--- fvwm-2.5.24/fvwm/events.c   2007-11-17 12:47:56.0 +0100
+++ fvwm-2.5.26/fvwm/events.c   2008-03-21 08:15:37.0 +0100
@@ -2897,6 +2924,21 @@
   /* If the window has never been mapped before ... */
   if (!fw || (fw && DO_REUSE_DESTROYED(fw)))
   {
+   check_if_event_args args;
+   XEvent dummy;
+
+   args.w = ew;
+   args.do_return_true = True;
+   args.do_return_true_cr = False;
+   if (
+   FCheckIfEvent(
+   dpy, &dummy, test_withdraw_request,
+   (XPointer)&args)) {
+   /* The window is moved back to the WitdrawnState
+* immideately. Don't map it. */
+   return;
+   }
+


This seems to be making my profile window go away.
If I comment the return out, the profile window pops up without a problem.

Question is now, is it a problem on Skype's side (according to the 
comments, they draw a window and set the withdaw state) or is it some 
bug on your side?


Thanks
Philipp



Re: FVWM: FVWM 2.5.25 and Skype: Profile Window won't show

2008-10-21 Thread Viktor Griph

On Tue, 21 Oct 2008, Philipp Kolmann wrote:


ok, I dug though the diff.

Philipp Kolmann wrote:
So it seems it is some regression from 2.5.24 to 2.5.26. The Diff is 6k 
lines, so nothing easy to spot.

Any hint, what might be the issue or how to trace it?



diff -ur fvwm-2.5.24/fvwm/events.c fvwm-2.5.26/fvwm/events.c
--- fvwm-2.5.24/fvwm/events.c   2007-11-17 12:47:56.0 +0100
+++ fvwm-2.5.26/fvwm/events.c   2008-03-21 08:15:37.0 +0100
@@ -2897,6 +2924,21 @@
  /* If the window has never been mapped before ... */
  if (!fw || (fw && DO_REUSE_DESTROYED(fw)))
  {
+   check_if_event_args args;
+   XEvent dummy;
+
+   args.w = ew;
+   args.do_return_true = True;
+   args.do_return_true_cr = False;
+   if (
+   FCheckIfEvent(
+   dpy, &dummy, test_withdraw_request,
+   (XPointer)&args)) {
+   /* The window is moved back to the WitdrawnState
+* immideately. Don't map it. */
+   return;
+   }
+


This seems to be making my profile window go away.
If I comment the return out, the profile window pops up without a problem.

Question is now, is it a problem on Skype's side (according to the comments, 
they draw a window and set the withdaw state) or is it some bug on your side?


That particular diff is related to a fix for gtk-windows disappearing when 
using some new GTK praxis.

(See http://www.mail-archive.com/[EMAIL PROTECTED]/msg01359.html)

It's hard to say exactly what Skype does since it's closed source. I'll 
try to debug it some to see if I'm able to reproduce the issue using bare 
X-calls, and see if those calls are right or not. I still belive that the 
above diff is right in accordance with the ICCCM2 specification, but 
without knoing what Skype does it's hard to say if it is fvwm or Skype 
that breaks the rules.


/Viktor




Re: FVWM: FVWM 2.5.25 and Skype: Profile Window won't show

2008-10-21 Thread Viktor Griph

On Tue, 21 Oct 2008, Viktor Griph wrote:
Question is now, is it a problem on Skype's side (according to the 
comments, they draw a window and set the withdaw state) or is it some bug 
on your side?


That particular diff is related to a fix for gtk-windows disappearing when 
using some new GTK praxis.

(See http://www.mail-archive.com/[EMAIL PROTECTED]/msg01359.html)

It's hard to say exactly what Skype does since it's closed source. I'll try 
to debug it some to see if I'm able to reproduce the issue using bare 
X-calls, and see if those calls are right or not. I still belive that the 
above diff is right in accordance with the ICCCM2 specification, but without 
knoing what Skype does it's hard to say if it is fvwm or Skype that breaks 
the rules.


After som preliminary debuging, it seems as if Skype does a 
XWithdrawWindow() call, and then waits for some event to happen before it 
maps the window again. I'm not sure what it wat's for, but obviously the 
dif you posted prevents that event from being sent, since Skype doesn't 
try to remap the window. I'll do some more debugging trying with the aim 
to find out which event Skype waits for, and once I know that I should be 
able to say if it should be able to expect that event or not based on the 
sequence of oprations that has been going on.



/Viktor