1. 10 Jul, 2018 1 commit
  2. 09 Jul, 2018 1 commit
  3. 02 Jul, 2018 1 commit
  4. 06 Feb, 2018 1 commit
  5. 02 Nov, 2017 1 commit
  6. 20 Sep, 2017 1 commit
  7. 04 May, 2017 1 commit
    • David Edmundson's avatar
      Fix Output::geometry() when dealing with a scaled monitor · 4a9f18f9
      David Edmundson authored
      Summary:
      When a monitor is scaled the "size" is not the same as the mode size, we
      want things in global co-ordinates.
      
      This is only relevant on Wayland, but on everything else scale is 1, so
      this makes no difference.
      
      Test Plan:
      Plugged in normal monitor to laptop, generator had the correct co-ordiantes
      of second monitor
      
      Reviewers: #plasma, graesslin
      
      Reviewed By: #plasma, graesslin
      
      Subscribers: plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D5697
      4a9f18f9
  8. 22 Nov, 2016 1 commit
    • Sebastian Kügler's avatar
      allow changing an output's modelist at runtime · 7367e55b
      Sebastian Kügler authored
      This should fix running Plasma in a windowed virtual machine, when the window is
      resized, the mode list changes, and libksreen can't currently handle that.
      
      Summary:
      * make Output::modes() non CONSTANT, add modesChanged() signal
      * compare the mode lists and set the new one
      * queue an outputChanged signal when applied
      * autotest for modelist changes
      * update the mode list on RRNotify events
      
      BUG:356864
      
      Test Plan:
      * for library part, autotests are added
      * for xrandr backends, we can't sensibly autotest this :(
      
      Reviewers: #plasma, mart
      
      Reviewed By: mart
      
      Subscribers: graesslin, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D3117
      7367e55b
  9. 10 Nov, 2016 1 commit
    • Sebastian Kügler's avatar
      scale property for KScreen::Output · 2875e5d3
      Sebastian Kügler authored
      Summary:
      This adds a scale property to KScreen::Output. By default, it's 1.0,
      which means no scaling. The value is a qreal, and the conversion to int
      for the backends that only understand int is made in the underlying
      backend code. RFC. :)
      
      Test Plan: autotests included
      
      Reviewers: graesslin, davidedmundson
      
      Reviewed By: davidedmundson
      
      Subscribers: plasma-devel, davidedmundson
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D3312
      2875e5d3
  10. 20 Oct, 2016 1 commit
    • Sebastian Kügler's avatar
      allow changing an output's modelist at runtime · 6cc05cae
      Sebastian Kügler authored
      This should fix running Plasma in a windowed virtual machine, when the window is
      resized, the mode list changes, and libksreen can't currently handle that.
      
      Summary:
      * make Output::modes() non CONSTANT, add modesChanged() signal
      * compare the mode lists and set the new one
      * queue an outputChanged signal when applied
      * autotest for modelist changes
      * update the mode list on RRNotify events
      
      BUG:356864
      
      Test Plan:
      * for library part, autotests are added
      * for xrandr backends, we can't sensibly autotest this :(
      
      Reviewers: #plasma, mart
      
      Reviewed By: mart
      
      Subscribers: graesslin, plasma-devel
      
      Tags: #plasma
      
      Differential Revision: https://phabricator.kde.org/D3117
      6cc05cae
  11. 03 Aug, 2016 1 commit
  12. 02 Aug, 2016 1 commit
  13. 24 Nov, 2015 8 commits
  14. 18 Nov, 2015 1 commit
  15. 13 Nov, 2015 2 commits
  16. 12 Nov, 2015 2 commits
  17. 11 Nov, 2015 3 commits
  18. 18 May, 2015 1 commit
    • Daniel Vrátil's avatar
      Fix regression in Output::geometry() behaviour introduced in f57dc · 20855223
      Daniel Vrátil authored
      Output::geometry() always reflects whatever is currently stored in
      the Output (which can be different from what is the currently active
      configuration). This was broken in the previous commit, because the
      size() property is only updated when we get update from KScreen backend.
      
      The API documentation for those properties has been updated to
      explictly and clearly describe the difference in behaviour of those
      properties.
      
      CCMAIL: afiestas@kde.org
      20855223
  19. 08 May, 2015 1 commit
    • Àlex Fiestas's avatar
      Add Output::size and make it report correct size · f57dc936
      Àlex Fiestas authored
      We were making some assumptions in Output::geometry like for example
      assuimg that the resolution of the currentMode was actually the output
      size which is not always the case, like for example in a case we were
      already covering of vertical transformed output.
      
      In order to fix this proplerly we are adding a size property to Output
      that backends and fill with whatever value they want and we use it to
      create the QRrect with return in Output::geometry.
      
      QScreen: Whatever QScreen::screenGeometry().size() returns
      Fake: Added a test for singleOutput, the rest is all the same
      XRandR11: Whatever size has currentMode
      
      XRandR: Whatever size CRTC reports.
      Note that crtc is the one in charge of applying transformations so it
      always reports correct geometry, even on scaled or vertical/landscape
      outputs.
      f57dc936
  20. 29 Jan, 2015 1 commit
  21. 20 Nov, 2014 1 commit
  22. 19 Nov, 2014 2 commits
  23. 29 Oct, 2014 1 commit
    • Daniel Vrátil's avatar
      Output::apply(): delay change signals emission until all changes are done · 0f90ad4c
      Daniel Vrátil authored
      This seems to be the key point for many of the unexplainable crashes
      that we've been seeing all over the place, especially in the KDED module.
      When the ConfigMonitor is updating the properties one by one, the
      change signals are being emitted immediatelly. So if someone is listening
      to these signals, and will try to access some property that we have not
      udpated yet, they will get inconsistent data (like empty mode list for
      instance), leading to crashes.
      
      With this patch we block signals emission on the output, collect all changes
      that happened, and then emit the signals all at once after we updated all
      the properties. This way applications can safely access any properties.
      0f90ad4c
  24. 22 Oct, 2014 5 commits