1. 03 Sep, 2020 1 commit
  2. 07 Aug, 2020 2 commits
    • Vlad Zahorodnii's avatar
      Prettify license headers · 4ce853e8
      Vlad Zahorodnii authored
      4ce853e8
    • Vlad Zahorodnii's avatar
      Switch to SPDX license markers · 1fb9f6f1
      Vlad Zahorodnii authored
      The main advantage of SPDX license identifiers over the traditional
      license headers is that it's more difficult to overlook inappropriate
      licenses for kwin, for example GPL 3. We also don't have to copy a
      lot of boilerplate text.
      
      In order to create this change, I ran licensedigger -r -c from the
      toplevel source directory.
      1fb9f6f1
  3. 23 Jul, 2020 1 commit
  4. 30 Apr, 2020 1 commit
  5. 08 Apr, 2020 1 commit
    • David Edmundson's avatar
      [wayland] Add new XdgOutput properties · a13ecf8d
      David Edmundson authored
      Summary:
      AbstractOutput::name() behaviour is changed so that it matches the X11
      behaviour, showing an identifier like "HDMI-0".
      
      XdgOutput.name is set to this name.
      
      XdgOutput.description is currently set to the manufacturer name and
      model, but it's not exposed to Qt so we probably don't care too much.
      
      This should fix plasmashell changing applets when switching between X11
      and wayland.
      
      Test Plan:
      Relevant unit test
      I still need to run it on my laptop.
      
      Reviewers: #kwin, #plasma, zzag
      
      Reviewed By: #kwin, #plasma, zzag
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D28230
      a13ecf8d
  6. 26 Nov, 2019 1 commit
    • Roman Gilg's avatar
      Associate output transforms and orientations · 6bfa931f
      Roman Gilg authored
      Summary:
      We use internally Qt:ScreenOrientation for representing output transforms.
      
      This is not ideal since the values do not map directly to Wayland transform
      values, but we can make it work by using OR combinations of
      Qt:ScreenOrientations.
      
      Do this for now and see if we should not better introduce an internal enum
      mapped directly.
      
      Additionally the OR combinations need to be handled in the drm backend at
      various places accordingly as well (see TODOs).
      
      Test Plan: Compiles
      
      Reviewers: #kwin
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Maniphest Tasks: T11670
      
      Differential Revision: https://phabricator.kde.org/D25505
      6bfa931f
  7. 05 Sep, 2019 1 commit
    • Roman Gilg's avatar
      Lift output enablement into Platform · f7ff62e2
      Roman Gilg authored
      Summary:
      This lifts the enablement code for outputs from the DRM backend to Platform
      allowing other Wayland backends in the future to use this interface as well.
      
      To do that we also create some helper functions on Platform level and have to
      spill some KWayland classes into AbstractOutput what motivates a further split
      of Platform into a Wayland child class like for AbstractOutput.
      
      Test Plan: Disabled and enabled an output in DRM session.
      
      Reviewers: #kwin
      
      Subscribers: zzag, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D23545
      f7ff62e2
  8. 29 Jul, 2019 1 commit
    • Vlad Zahorodnii's avatar
      Use more traditional doxygen style · 684b4b63
      Vlad Zahorodnii authored
      Summary:
      So far we were following a bit unique and rare doxygen comment style:
      
          /**
           * Contents of the comment.
           **/
      
      Doxygen comments with this style look balanced and neat, but many people
      that contribute to KWin don't follow this style. Instead, they prefer
      more traditional doxygen comment style, i.e.
      
          /**
           * Contents of the comment.
           */
      
      Reviewing such changes has been a bit frustrating for me (so selfish!)
      and for other contributors.
      
      This change switches doxygen comment style in KWin to a more traditional
      style. The main reason for doing this is to make code review process easier
      for new contributors as well us.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D22812
      684b4b63
  9. 17 Jun, 2019 2 commits
    • Vlad Zahorodnii's avatar
      Overhaul AbstractOutput · 8e88139f
      Vlad Zahorodnii authored
      Summary:
      There are several issues with code of AbstractOutput class:
      
      (a) Some methods are documented, and some are not. In general, we tend
          to document all public methods in KWin core. It looks like a very
          minor issue, but there are methods that have very ambiguous return
          value. One such method is geometry(). It's not obvious whether the
          returned geometry is in device independent pixels or not;
      
      (b) There's a mix of methods defined in the cpp file and in the header.
          This is not very good because reading such code becomes a bit harder
          if you don't use any fancy IDE;
      
      (c) Missing Q_DISABLE_COPY, etc.
      
      This change addresses these issues, so the code is a bit more readable
      and easier to work with.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: broulik, cfeck, davidedmundson, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D21874
      8e88139f
    • Vlad Zahorodnii's avatar
      Backport Night Color feature to X11 · 0d381846
      Vlad Zahorodnii authored
      Summary:
      The color correction manager doesn't make any specific assumptions about
      underlying platform, e.g. whether it's x11, etc. The platform just
      has to be capable of setting gamma ramps. Given that, there are no any
      significant technical blockers for making this feature work on x.
      
      Reviewers: #kwin, davidedmundson, romangg
      
      Reviewed By: #kwin, davidedmundson, romangg
      
      Subscribers: romangg, neobrain, GB_2, filipf, davidedmundson, ngraham, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D21345
      0d381846
  10. 13 Jun, 2019 1 commit
    • Roman Gilg's avatar
      [platforms/x11/standalone] Port to AbstractOutput · 1a11abc8
      Roman Gilg authored
      Summary:
      Represent outputs in the X11 session via AbstractOutput. For that we
      move all Wayland specific parts of AbstractOutput into a new subclass
      AbstractWaylandOutput and let the outputs of our Wayland backends inherit
      from there.
      
      This should allow us to get rid of the Screens class later on.
      
      Test Plan: Manually in X session.
      
      Reviewers: #kwin, zzag, davidedmundson
      
      Reviewed By: #kwin, zzag, davidedmundson
      
      Subscribers: ngraham, zzag, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D19208
      1a11abc8
  11. 16 Apr, 2019 1 commit
  12. 12 Feb, 2019 1 commit
    • Vlad Zahorodnii's avatar
      Overhaul doxygen comments · 7b20e1f6
      Vlad Zahorodnii authored
      Summary:
      We have a mix of different doxygen comment styles, e.g.
      
          /*!
            Foo bar.
           */
      
          /**
           * Foo bar.
           */
      
          /** Foo bar.
           */
      
          /**
           * Foo bar.
           */
      
          /**
           * Foo bar.
           **/
      
      To make the code more consistent, this change updates the style of all
      doxygen comments to the last one.
      
      Test Plan: Compiles.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D18683
      7b20e1f6
  13. 14 Nov, 2018 7 commits
  14. 09 Nov, 2018 1 commit
    • Roman Gilg's avatar
      Initialize Wayland output in AbstractOutput · 21aee588
      Roman Gilg authored
      Summary:
      Wayland output is on protocol level and not dependent on the hardware
      platform. Next steps are to do the same for output device and then let
      the virtual output call into these initializing functions as well.
      
      Test Plan: Manually and auto test.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: davidedmundson, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16783
      21aee588
  15. 31 Aug, 2018 2 commits
    • Roman Gilg's avatar
      [colorcorrection] Set gamma through Output class · 9cf2730f
      Roman Gilg authored
      Summary:
      With the new Output class we can set the gamma directly here. This is also
      a stepping stone to adjust individual output gamma adjustment later on.
      
      This means any future backend, which aims to support the color correction
      frontend needs to use the Output class.
      
      Test Plan: Night Color test still passes.
      
      Reviewers: #kwin
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D11803
      9cf2730f
    • Roman Gilg's avatar
      Introduce generic Output class · fe63e21f
      Roman Gilg authored
      Summary:
      In order to separate high-level properties of individual outputs from
      hardware-specific ones and access these, introduce a new generic class Output.
      
      Also make the DrmOutput class directly a child class of this generic class.
      
      The long-term goal is to get rid of the Screens global object on Wayland and
      instead directly work with Output objects on compositing level.
      
      This should enable us long-term to do direct scanout to hardware planes, what
      I predict needs this generic output representation at one point.
      
      Test Plan: Manually.
      
      Reviewers: #kwin
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D11781
      fe63e21f