Skip to content
  • David Edmundson's avatar
    Use lambdas for queued invocation of composition suspending · 3ba33e4b
    David Edmundson authored
    Summary:
    Qt's metaobject is rather sensitive with scope resolution.
    
    Foo::Bar and Bar don't always match to a Qt metaobject, even if they
    refer to the same thing to a compiler. Here we register
    X11Compositor::SuspendReason but Q_ARG uses SuspendReason and they don't
    match. This leads to a runtime failure where the method isn't invoked.
    
    Rather than fixing metaobject usage, port the whole thing to lambdas
    which does better compile time checking and is generally nicer to read.
    
    BUG: 412353
    
    Test Plan:
    Ran xprop to block compositing. Compositing was blocked.
    Grepped source code for Q_ARG use
    
    Reviewers: #kwin, zzag
    
    Reviewed By: #kwin, zzag
    
    Subscribers: zzag, kwin
    
    Tags: #kwin
    
    Differential Revision: https://phabricator.kde.org/D24244
    3ba33e4b