Skip to content
  • David Edmundson's avatar
    Track surface creation/destruction inside wayland window effects · 0a0c3f23
    David Edmundson authored
    Summary:
    The wayland surface is destroyed and recreated after every hide/show. As
    it's a new surface, it needs a new blur attached and applied.
    
    The best hook is the expose event on the window.
    
    The current event filtering in Breeze operates on the QWidget which
    doesn't match the window. Fixing there still introduces a second layer
    of event filters on another object once the window is known.
    
    Whilst it could be done in breeze, clients should ideally just call
    KWindowEffects once per window and forget about it regardless of
    the underlying state. It also fixes all other wayland users of the call
    at once.
    
    This fixes blur on context menus opened a second time.
    
    BUG: 398899
    
    Test Plan:
    Turned on the show transparency effect in breeze
    Opened a context menu multiple times
    Observed that it was transparent and blurred
    
    Reviewers: #kwin
    
    Subscribers: plasma-devel
    
    Tags: #plasma
    
    Differential Revision: https://phabricator.kde.org/D20951
    0a0c3f23