Skip to content
  • Vlad Zahorodnii's avatar
    Introduce Toplevel::frameGeometryChanged signal · 15af09c7
    Vlad Zahorodnii authored
    Summary:
    Currently we have two signals that are emitted when the Toplevel's geometry
    changes - geometryShapeChanged() and geometryChanged(). The former signal
    is used primarily to invalidate cached window quads and the latter is
    sort of emitted when the frame geometry changes. But it's not that easy. We
    have a bunch of connects that link those signals together...
    
    The worst part about all of this is that the window quads cache gets
    invalidated every time a geometry update occurs, for example when user
    moves a window around on the screen.
    
    This change introduces a new signal and deprecates the existing geometryChanged
    signal. frameGeometryChanged is similar to geometryChanged except that it is
    emitted when an _actual_ geometry change has occurred.
    
    We do still emit geometryShapeChanged signal. However, in long term, we
    need to get rid of this signal or come up with something that makes sense
    and doesn't require us to waste computational resources.
    
    Reviewers: #kwin, davidedmundson
    
    Reviewed By: #kwin, davidedmundson
    
    Subscribers: davidedmundson, romangg, kwin
    
    Tags: #kwin
    
    Differential Revision: https://phabricator.kde.org/D26863
    15af09c7