1. 14 Apr, 2021 4 commits
  2. 09 Apr, 2021 1 commit
  3. 08 Apr, 2021 1 commit
  4. 05 Apr, 2021 1 commit
  5. 25 Mar, 2021 1 commit
    • David Edmundson's avatar
      Fix keyboard handling of preset selection · 66882a03
      David Edmundson authored
      The view did not have focus correctly, due in part to this and a
      kirigami issue.
      
      We also want to prevent the plasma dialog from closing when escape is
      pressed. Ideally we would have a magic solution in OverlaySheet, but
      after we fixed focus it is impossible to do nicely.
      
      shortcutOverride is only invoked on the item with real active focus, not
      any parents.
      
      BUG: 430563
      66882a03
  6. 22 Mar, 2021 1 commit
    • David Edmundson's avatar
      Use shared instance of the process list · 43b07b18
      David Edmundson authored and David Redondo's avatar David Redondo committed
      
      
      We might want to present the process list in several different views.
      The process list is quite expensive, so if we ref-count the core we can
      use it in multiple places.
      
      Timers remain in their respecitive views as Processes has it's own
      internal throttling mechanism.
      
      Because that leaves us with a ref-counting issue on which plugin
      attributes are enabled or not, that is changed to be implicit based on
      whether we have dataChanged connected or not; which actually simplifies
      some code.
      
      Co-authored-by: David Redondo's avatarDavid Redondo <kde@david-redondo.de>
      43b07b18
  7. 19 Mar, 2021 1 commit
  8. 18 Mar, 2021 2 commits
  9. 14 Mar, 2021 1 commit
  10. 11 Mar, 2021 1 commit
    • David Edmundson's avatar
      Avoid emitting configurationChanged during save · 0c0e4af8
      David Edmundson authored
      The system montior widgets have a 3 way-sync between it's own internal
      saving mechanism and external cfg properties purely for the apply
      button. This leads to us calling load just after save when values sync,
      and because JS can't compare arrays easily this leads to us emitting the
      config has changes again immediately.
      
      BUG: 422672
      0c0e4af8
  11. 09 Mar, 2021 1 commit
  12. 08 Mar, 2021 2 commits
  13. 05 Mar, 2021 2 commits
  14. 04 Mar, 2021 3 commits
    • David Redondo's avatar
      Refactor so that the methods of AbstractProcesses return the actual error · 0ed84fe6
      David Redondo authored
      Checking if the return value is false and then acessing the last error is
      not very elegant. Instead we can directly return the actual error. This does
      not yet extend to public API in Processes but the same can be easily done there
      in the future.
      0ed84fe6
    • David Edmundson's avatar
      Move CGroup pid fetching callback to the controller · 18937f39
      David Edmundson authored
      The CGroup class started out as a dumb data store, that did some
      fetching of relevant data.
      
      It then gained a more complex async operation. The lifepsan of the
      CGgroup object is managed by the model, so could get deleted whilst the
      runnable was running. QRunnables and non-qobjects leds to a lot of
      potential problems. There was a complex mutex and a wait condition, yet
      it still misses a case only solvable with yet more mutexes.
      
      By moving the callback handling logic to the controller, we can guard
      everything in a safer more Qt manner without any overhead and with
      simpler code.
      
      There is a behavioural change if you call pids whilst things are
      loading, but given a signal is emitted when pids load that's fine.
      
      This class is exported, but the header was never installed.
      Whilst technically it is an ABI break it pragmantically will have no
      impact whatsoever.
      
      BUG: 430615
      18937f39
    • Nicolas Fella's avatar
  15. 03 Mar, 2021 1 commit
  16. 01 Mar, 2021 9 commits
  17. 26 Feb, 2021 2 commits
  18. 23 Feb, 2021 2 commits
    • Arjen Hiemstra's avatar
      Set min/max for Y axis range spinboxes to minimum/maximum possible value · 504dcbd2
      Arjen Hiemstra authored
      Some sensors have a range of gigabytes or terabytes, like memory and
      disk. Since the base unit for these is bytes, we end up needing a very
      large value in the range, which currently is not possible due to the
      spinbox limiting the value. Internally, spinbox seems to use an int so
      we can only store a value that fits within the range of an int, so we
      use that as min/max value.
      
      Longer term we want to have some ability to choose an actual "maximum"
      sensor but that's going to need more work.
      
      BUG: 433007
      BUG: 424527
      504dcbd2
    • David Redondo's avatar
      Guard against null configloader in destructor · 34eb6ce9
      David Redondo authored
      We do not necessarily have a config loader (invalid id or when the face does
      not have any config options).
      BUG:433431
      FIXED-IN:5.21.1
      34eb6ce9
  19. 18 Feb, 2021 1 commit
  20. 11 Feb, 2021 2 commits
  21. 09 Feb, 2021 1 commit