Re: Gnome Mahjongg problem




Tomas Ogren <stric@ing.umu.se> writes:

> On 07 February, 1999 - Lee Skinol sent me these 1.3K bytes:
> 
> > Here's one more problem I've run into.  The Gnome Mahjongg game
> > (distributed in gnome-games versions 0.99.3 and below - I haven't
> > checked 0.99.4 or higher) has a problem with every FVWM2 version
> > I've tried.  When the game comes up, its "body" is mapped "directly"
> > to the upper left of the screen.  A frame window appears on the
> > screen, and can be moved, but the game itself stays put in the upper
> > left.  The game also appears on all of the screen pages.
> > 
> > This application seems to be Ok in several other popular WMs.
> > 
> > If I kill FVWM2, and restart it while the game is running, it
> > will "capture" the game window and work correctly.  It's only
> > when the game starts after FVWM2 that the problem occurs.
> > 
> > Lastly, when the game runs, FVWM2 2.1.5 gives me the following
> > errors:
> > 
> > [FVWM][FvwmErrorHandler]: <<ERROR>> *** internal error ***
> > [FVWM][FvwmErrorHandler]: <<ERROR>> Request 1, Error 2, EventType: 20
> > [FVWM][FvwmErrorHandler]: <<ERROR>> *** internal error ***
> > [FVWM][FvwmErrorHandler]: <<ERROR>> Request 12, Error 2, EventType: 20
> 
> I just committed the fix (in mahjongg) into gnome-cvs...
> 
> I don't know why, but some apps needs to get the main window realized
> manually.. Otherwise funky stuff happens... Not sure if it's only fvwm
> or any other WM has the same problem..
> 
> Any Gtk-expert know?

I've looked into this. The problem is that GnomeApp/Dock does
some improper things which result in the application window
being temporarily created and mapped with an incorrect
minimum or maximum width/height. In some cases, this width/height
could be 0x0, which confuses the heck out of fvwm.

In detail, the problem is that gnome-app is changing its
requisition in its realization handler, which is just
a bad thing to do. (GTK+ runs the size_request before
the window is realized, so this change doesn't take
effect until the next idle queue run, and in between
things are in an odd state.)

Probably the right thing to do is to move the 
gnome_dock_add_from_layout() call and associated stuff from
gnome_app_realize() into gnome_app_size_request().

(GTK+ should probably refuse to set a maxium width
 height of zero, which would tame the problem to simply
 being a flash at the wrong size, but I think fixing
 gnome would be appropriate)

Regards,
                                        Owen



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]