[Pidgin] #9267: Log window inconvenience - dialog

Pidgin trac at pidgin.im
Mon Jun 1 16:16:03 EDT 2009


#9267: Log window inconvenience - dialog
---------------------------+------------------------------------------------
 Reporter:  jankratochvil  |        Owner:  deryni      
     Type:  enhancement    |       Status:  new         
Milestone:                 |    Component:  pidgin (gtk)
  Version:  2.5.6          |   Resolution:              
 Keywords:                 |  
---------------------------+------------------------------------------------
Changes (by deryni):

  * owner:  => deryni


Comment:

 I read the EWMH the other direction, non-specified windows that are
 transient to some other window should be treated similarly to _TYPE_DIALOG
 windows (specifically to avoid them being treated as any other window
 type, like _UTILITY, I'd imagine), but _TYPE_DIALOG windows need not be
 transient to anything.

 You cannot be 'in a "transient-for" relationship' without a parent window,
 not meaningfully at least (I'm ignoring any potential application
 transience/modality here). Further, the EWMH suggests (as an
 implementation note) that "Windows that are transient for another window
 should be kept above this window" but makes no such claim about
 _TYPE_DIALOG windows and does not place them anywhere explicit in the
 stacking order.

 I'm not sure I agree with the handling of _TYPE_DIALOG in metacity and
 xfwm (even less so in the non-transient case), but I haven't thought about
 it enough (or know enough of the implementation details) to have an actual
 opinion at the moment, nor do I care much.

 The issue at hand is whether the "Conversations with ..." windows are
 'dialogs' or not, if they are then we are doing things exactly as we
 should be, and your dislike of your environments handling of such windows
 is unfortunate but not our problem.

 If, on the other hand, they should not be considered 'dialogs' then we
 likely should not be (ab)using gtk_dialog_new_with_buttons to create them
 and regardless of that should not be setting them as _TYPE_DIALOG (which
 may mean overriding the type setting that the gtk_dialog_* functions do
 automatically).

 Keeping in mind my caveats before about my lack of fully considered
 opinion on this, I would suggest that the (apparent) policy of keeping all
 _TYPE_DIALOG windows above all windows (either of all applications or only
 of the parent application) regardless of actual transience marking is a
 poor policy and the cause of the problems here.

-- 
Ticket URL: <http://developer.pidgin.im/ticket/9267#comment:4>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list