diff --git a/src/steamcompmgr.cpp b/src/steamcompmgr.cpp index a53f678..4f7c804 100644 --- a/src/steamcompmgr.cpp +++ b/src/steamcompmgr.cpp @@ -2007,6 +2007,11 @@ is_focus_priority_greater( win *a, win *b ) a->is_dialog != b->is_dialog && b->is_dialog ) return true; + // Attempt to tie-break dropdowns by transient-for. + if ( win_maybe_a_dropdown( a ) && win_maybe_a_dropdown( b ) && + !a->transientFor != !b->transientFor ) + return !a->transientFor; + // The damage sequences are only relevant for game windows. if ( win_has_game_id( a ) && a->damage_sequence != b->damage_sequence ) return a->damage_sequence > b->damage_sequence;