1. 13 Nov, 2017 1 commit
    • Eike Hein's avatar
      When used by QML, only populate after component is complete · b40c0de0
      Eike Hein authored
      Summary:
      This introduces the use of QQmlParserStatus to delay populating
      the model until all properties have been set, to avoid delegate
      churn.
      
      TasksModel is also meant to be used by C++. There's no good way
      to determine whether an object is being instanciated by QML
      during construction time, therefore this patch also introduces a
      delay in initial population of the model after construction via
      a single-shot timer. At the time the slot is invoked we know if
      we're used by QML (because QQmlParserStatus::classBegin has
      either been called or not by then) so we can decide to populate
      or wait more for QQmlParserStatus::componentComplete.
      
      I'm not super happy with this behavior change for C++ users,
      however as the model is usually used via QML currently, it's
      pragmatic to optimize performance for the common case, and it
      doesn't technically break QAbstractItemModel semantics, as model
      population isn't required to be sync.
      
      There's a decent change this fixes a recently-reported crash as a
      by-product:
      CCBUG:386630
      
      Reviewers: #plasma, davidedmundson, mart
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D8723
      b40c0de0
  2. 14 Aug, 2017 1 commit
  3. 18 Oct, 2016 1 commit
  4. 17 Oct, 2016 1 commit
  5. 10 Oct, 2016 3 commits
  6. 23 Sep, 2016 1 commit
  7. 12 Aug, 2016 1 commit
  8. 29 Jul, 2016 1 commit
  9. 12 Jul, 2016 2 commits
  10. 07 Jul, 2016 1 commit
    • Eike Hein's avatar
      Return LegacyWinIdList for groups in final proxy sort order. · 313aede0
      Eike Hein authored
      TaskGroupingProxyModel appends; the proxy may sort differently
      (e.g. alphabetically by default). The win id list was returned
      in TGPM sort order, which meant the tooltips had the thumbnails
      in the wrong order, and clicking them would activate the wrong
      window.
      
      BUG:365181
      313aede0
  11. 28 Jun, 2016 2 commits
  12. 25 Jun, 2016 1 commit
  13. 21 Jun, 2016 3 commits
  14. 15 Jun, 2016 1 commit
    • Eike Hein's avatar
      Add an inline grouping mode. · 1f0ca818
      Eike Hein authored
      Summary:
      When grouping inline, the group subtrees are flattened out into
      the top-level list, parents removed, and move() treats groups as
      singular entities.
      
      This functionality was previously found in Netrunner's Expanding
      Icons Task Manager fork.
      
      This is the first half of the EITM functionality merge.
      
      Reviewers: davidedmundson
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D1881
      1f0ca818
  15. 14 Jun, 2016 1 commit
    • David Faure's avatar
      TasksModel: cache launcherCount(). · 6e72674a
      David Faure authored
      Summary:
      This also allows to only emit launcherCountChanged() when it actually changed.
      
      The emit from TasksModel::filterAcceptsRow() is weird though.
      
      Test Plan:
      adding one launcher for dolphin, shows up. Running dolphin,
      the launcher disappears. Switching desktops, it reappears. Coming back, it
      disappears. Closing dolphin, the launcher reappears.
      
      Reviewers: hein
      
      Reviewed By: hein
      
      Subscribers: broulik, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D1865
      6e72674a
  16. 06 Jun, 2016 2 commits
  17. 10 Mar, 2016 1 commit
  18. 09 Feb, 2016 1 commit
  19. 30 Mar, 2014 1 commit
    • Aleix Pol Gonzalez's avatar
      Initial import from the monolithic kde-workspace. · da27b276
      Aleix Pol Gonzalez authored
      This is the beginning of revision history for this module. If you
      want to look at revision history older than this, please refer to the
      techbase wiki for how to use Git history grafting. At the time of
      writing, this wiki is located here:
      
      http://community.kde.org/Frameworks/GitOldHistory
      
      If you have already performed the grafting and you don't see any
      history beyond this commit, try running "git log" with the "--follow"
      argument.
      
      Branched from the monolithic repo kde-workspace, frameworks  branch, at commit
      049113e719dd2fc4446d054fa1a3aada330094f0
      da27b276