1. 26 Nov, 2020 5 commits
    • Vlad Zahorodnii's avatar
      Re-initialize colord integration when colord daemon is restarted · 83003f0c
      Vlad Zahorodnii authored
      We need to re-create all colord devices in case colord daemon is reloaded.
    • Vlad Zahorodnii's avatar
      Explicitly destroy plugins · 3a7bce69
      Vlad Zahorodnii authored
      A plugin may need to access kwinApp() or kwinApp()->platform() during
      tear down, but the problem is that plugins are destroyed after the
      kwinApp() object. The plugin manager must be destroyed explicitly while
      the application is still valid to ensure that no crash will occur
      during compositor teardown.
    • Yuri Chornoivan's avatar
    • Aleix Pol Gonzalez's avatar
      Address window placing problem on rotation · 44055516
      Aleix Pol Gonzalez authored
      When changing the workspace size, clients will need to reposition
      themselves. This leaves a short amount of time where strutted clients
      (e.g. panels) will be floating in the wrong place.
      This change makes it so when the area could not be properly calculated,
      we ignore these clients until they start giving us proper values again.
      This is a bit of a workaround though, it would make sense to implement
      client placement more synchronously so we didn't have weird moments
      where everything is wrong.
      It's mostly prominent on the phone but it happens elsewhere when you
    • Aleix Pol Gonzalez's avatar
      xdgshellclient: Support set_fullscreen argument · 91064cb2
      Aleix Pol Gonzalez authored
      xdgshell allows clients to specify which output should we fill on
      set_fullscreen. This change takes this request into consideration
      instead of ignoring it.
  2. 25 Nov, 2020 2 commits
  3. 24 Nov, 2020 11 commits
  4. 23 Nov, 2020 6 commits
  5. 22 Nov, 2020 4 commits
    • David Edmundson's avatar
      [autotests] Fix decoration input test · 30f9e2a5
      David Edmundson authored
      QTRY_COMPARE doesn't work well with how we do our wayland event
      We know the client hasn't processed any events yet, so we can safely do
      a normal wait.
    • David Edmundson's avatar
      Add an explicit quit mechanism controlled by plasma · 71ce1f7a
      David Edmundson authored
      On X Kwin's lifespan used to be managed by XSMP. This accidentally broke
      in 5.20 as we made kwin start before ksmserver for speed purposes.
      This leaves kwin to be killed by the display manager as the X connection
      closes, but this can lead to deadlocks.
      On wayland kwin's lifespan is mapped to the lifespan of the ksmserver
      binary. This is problematic as it makes our entire xwayland robustness
      redundant if we ultimately rely on an application that /has/ to run in
      BUG: 427688
    • Xaver Hugl's avatar
      Add a QRect to showWindowMenu · 8f104815
      Xaver Hugl authored
      This is so we don't have to rely on the cursor position for the popup
      BUG: 393163
    • David Edmundson's avatar
      Bundle QPA plugin directly · 5e60e64a
      David Edmundson authored
      On wayland, we know we're always going to load our internal QPA. Instead
      of shipping a plugin and loading it dynamically we can use Qt static
      This should result in slightly faster load times, but also reduce the
      number of moving pieces for kwin.
      This also prevents anyone outside kwin loading our QPA which wouldn't
      have made any sense and just crashed.
  6. 20 Nov, 2020 3 commits
  7. 19 Nov, 2020 6 commits
  8. 18 Nov, 2020 3 commits
    • Nate Graham's avatar
      [kcmkwin/kwindecoration] Clean up QML code · 592c82ab
      Nate Graham authored
      Various fixes:
      - Remove unneeded PlasmaCore import
      - Re-arrange imports to be alphabetical and grouped consistently
      - Use standard import names
      - Use Kirigami units explicitly
      - Remove unused ids
      - Remove unneeded cases of setting aproperty to its default value
      - Use Layouts where appropriate instead of lots of anchors
      - Reduce number of unnecessary items
      - Fix inappropriate mutation of `width` and `height` inside layouts
      Visual changes are extremely minor and of a bugfixy nature.
      BUG: 428883
      FIXED-IN: 5.21
    • Chaojiang Luo's avatar
      fix: Restore full screen window to the right screen · 99c5f0ae
      Chaojiang Luo authored
      We should use the geometry restore to check the full screen workspace
      to make sure the window is on the right screen.
          1.plug extend display, change to Extend mode
          2.start a window, move to extend display, change to fullscreen
          3.unplug the extend display
          4.re-plug the extend display
      Now, the full screen window do not restore to the extend display
    • xinbo wang's avatar
      fix: magiclamp effect wrong direction. · 44b2a3f8
      xinbo wang authored
      if the dock is on the top,and the dock is not close together with screen edge.
      for example,the dock is 10 pixels taller then sceen edge,the "position" will be "Bottom".
      Autually,the dock is on the top of screen.