D9138: Don't update when the underlying FrameSvg is repaint-blocked
    Eike Hein 
    noreply at phabricator.kde.org
       
    Sun Dec  3 15:04:38 UTC 2017
    
    
  
hein created this revision.
hein added reviewers: Plasma, davidedmundson, mart.
Restricted Application added projects: Plasma, Frameworks.
Restricted Application added a subscriber: Frameworks.
REVISION SUMMARY
  When the component completes `FrameSvg::setRepaintBlocked(false)`
  is called, which calls `updateFrameData`, which emits
  `repaintNeeded`, which is connected to `doUpdate` anyway.
  
  This saves one `doUpdate` per instanciation. The reason for that
  is as follows:
  
  - The concept or repaint blocking is implemented in `FrameSvg`, which inherits from `Svg`.
  - The `repaintNeeded` signal connected to `doUpdate` is the one in `Svg`.
  - `Svg` code emits `repaintNeeded` liberally even when repaints are blocked, since it doesn't know anything about this.
  
  Hence we check if repaints are blocked in doUpdate and abort,
  implementing the QQmlParserStatus interface in the right class.
REPOSITORY
  R242 Plasma Framework (Library)
BRANCH
  master
REVISION DETAIL
  https://phabricator.kde.org/D9138
AFFECTED FILES
  src/declarativeimports/core/framesvgitem.cpp
To: hein, #plasma, davidedmundson, mart
Cc: plasma-devel, #frameworks, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20171203/45e7517f/attachment-0001.html>
    
    
More information about the Plasma-devel
mailing list