Skip to content
  • Martin Flöser's avatar
    Honor struts when placing Wayland transients · 792d8404
    Martin Flöser authored
    Summary:
    So far transients were placed anywhere on the screen. This behavior was
    inspired from X11 where context menus were able to overlap any other
    window and use the complete screen area. On X11 context menus and
    similar windows are override redirect and thus above all windows managed
    by KWin.
    
    On Wayland, though, context menus and similar and windows just like any
    other window and thus follow stacking constraints like the parent
    window. A context menu is stacked just above it's parent and is
    (normally) below any panels. This resulted in problems that context menu
    are stacked behind the panel with unreachable options.
    
    This change changes the placement for transients to use the
    PlacementArea instead of a screen geometry. Thus the transient does not
    render behind the panel. Only in case of a fullscreen the struts are
    ignored.
    
    BUG: 389222
    FIXED-IN: 5.15
    
    Test Plan: New test case
    
    Reviewers: #kwin
    
    Subscribers: kwin
    
    Tags: #kwin
    
    Differential Revision: https://phabricator.kde.org/D17826
    792d8404