Olivier Chapuis spake unto us the following wisdom:
> Ethan Blanton a écrit :
> >Patrick Börjesson spake unto us the following wisdom:
> >
> >>>If there is a bug or misfeature which should be fixed, I would like to
> >>>know so that I can make sure it is addressed.
> >>
> >>http://sourceforge.net/forum/forum.php?thread_id=1455264&forum_id=665
> >
> >Ahh, this is actually a common problem for us (this _class_ of problem
> >is common for us, I should say), in that we are using a perfectly
> >appropriate Gtk+ function which is, behind the scenes, doing something
> >one would not expect.  I am not sure what an appropriate fix for this
> >is.
> 
> How you can say that you use a "perfectly appropriate Gtk+ function"?

Because the last time *I* read that documentation, it was not so
explicit.  I'm not trying to perpetrate a conspiracy, here...

> The function is gtk_window_present() and the gtk+ doc say:
> 
> "This function should be used when the user tries to open a window
> that's already open. Say for example the preferences dialog is currently
> open, and the user chooses Preferences from the menu a second time; use
> gtk_window_present() to move the already-open dialog where the user can
> see it."
> 
> But you use it at startup. I do not understand why you want to do
> something special when gaim starts but if you really want to do
> something special gtk_window_set_urgency_hint seems to me more
> appropriate (the gtk+ doc says: "Windows may set a hint asking the
> desktop environment to draw the users attention to the window").

We do not intend to do anything special when Gaim starts up.  We have
been using gtk_window_present uniformly, but it seems that there are
times we should not.

> Now a note on _NET_CURRENT_DESKTOP (and _NET_DESKTOP_VIEW PORT), the
> EWMH spec says that this property (as a client msg) is for a pager. Thus
> if gtk_window_present() uses this property (and one may understand that
> it uses it in the *view of the doc*), you may understand that you go
> beyond what an application is espected to do at startup: is gaim a
> Pager?

This is the part I was saying seems inappropriate; a pager cannot call
gtk_window_present on a window from another application, because the
function requires a GtkWindow argument for a window owned by *this*
application.  We call this function on our own windows, which seems to
be invoking properties that sound inappropriate to me.

In any case, I'll see what I can do about ensuring that
gtk_window_present is called only when we believe a window should
already be mapped someplace.

Ethan

-- 
The laws that forbid the carrying of arms are laws [that have no remedy
for evils].  They disarm only those who are neither inclined nor
determined to commit crimes.
                -- Cesare Beccaria, "On Crimes and Punishments", 1764

Attachment: signature.asc
Description: Digital signature

Reply via email to