1. 20 Oct, 2021 3 commits
  2. 19 Oct, 2021 3 commits
  3. 18 Oct, 2021 3 commits
    • Xaver Hugl's avatar
      platforms/drm: reverse output creation order · 1cce55f5
      Xaver Hugl authored
      This was inverted from 5.22, which switches plasma layouts and the default
      Xwayland primary screen.
      
      
      (cherry picked from commit 72af3093)
      1cce55f5
    • Vlad Zahorodnii's avatar
      x11: Properly unredirect windows if compositing is not possible · 140834e7
      Vlad Zahorodnii authored
      Before attempting to create scenes, kwin will redirect windows but if
      the opengl scene can't be created, it won't unredirect windows, which
      seems to cause issues on aarch64.
      
      BUG: 443953
      
      
      (cherry picked from commit 85f8a533)
      140834e7
    • Vlad Zahorodnii's avatar
      Restore old behavior of Workspace::clientArea(clientOpt, Toplevel) · 29588812
      Vlad Zahorodnii authored
      When geometry updates are blocked, the output doesn't get updated. This
      breaks Workspace::clientArea() overload that takes only the window.
      
      Previously, clientArea() would look up the output where the window is
      every time it's called, so the fact that the screen id or AbstractOutput
      is unsynchronized with the frame geometry was irrelevant.
      
      This change restores the old behavior as 5.23 is affected by the
      output() being out of sync with the frameGeometry(). Specifically, when
      kwin starts managing an X11 window, it will block geometry updates,
      setup the window, e.g. make it fullscreen, and unblock geometry updates.
      
      Since Workspace::clientArea(clientArea, Toplevel) uses the output(),
      X11Client::setFullScreen() will most likely put the X11 window at a
      wrong output if it's called inside X11Client::manage().
      
      BUG: 443787
      
      
      (cherry picked from commit 6d5fc9fd)
      29588812
  4. 17 Oct, 2021 1 commit
  5. 15 Oct, 2021 3 commits
  6. 14 Oct, 2021 1 commit
    • Heiko Becker's avatar
      Set KDE_COMPILERSETTINGS_LEVEL · f6938af0
      Heiko Becker authored
      Since the KF5 version requirement was incremented to 5.86 the build
      started to fail (at least with KF 5.87.0) due to deprecations.
      f6938af0
  7. 13 Oct, 2021 1 commit
    • Aleix Pol Gonzalez's avatar
      pipewire: Fix downloading software-rotated textures · 26aab43f
      Aleix Pol Gonzalez authored and Aleix Pol Gonzalez's avatar Aleix Pol Gonzalez committed
      At the moment we'll be setting the YInverted setting, but in practice
      that won't have any effect as it only changes the render matrix and
      we'll end up streaming inverted textures.
      This change addresses it by rendering it into another texture first to
      resolve this situation and then download that new texture instead.
      
      
      (cherry picked from commit c0718249)
      26aab43f
  8. 12 Oct, 2021 2 commits
  9. 11 Oct, 2021 1 commit
  10. 07 Oct, 2021 3 commits
    • Jonathan Esk-Riddell's avatar
      Update version number for 5.23.0 · ff5a251b
      Jonathan Esk-Riddell authored
      GIT_SILENT
      ff5a251b
    • Vlad Zahorodnii's avatar
      wayland: Improve default placement of pointer · 1854708f
      Vlad Zahorodnii authored
      Currently, the pointer is moved to the center of the workspace. However,
      on a multi-monitor setup, the workspace center may not be the same as
      the center of the output it's on. That's the case with my setup -
      1920x1080, 1920x1080, 1080x1920 (the monitors are laid out in a row from
      left to right).
      
      This change improves the default placement of the pointer by actually
      moving it to the center of the screen that contains the workspace center
      so the pointer doesn't end up at some "random" position from the user's
      point of view.
      
      
      (cherry picked from commit 4f3ff4fb)
      1854708f
    • Xaver Hugl's avatar
      platforms/drm: set DPMS property properly · 63d39d81
      Xaver Hugl authored
      (cherry picked from commit 9f69d4c9)
      63d39d81
  11. 06 Oct, 2021 1 commit
  12. 05 Oct, 2021 1 commit
    • Vlad Zahorodnii's avatar
      Clear should_get_focus in Workspace::focusToNull() · fba3f1e7
      Vlad Zahorodnii authored
      On X11, there are four input models. With some input models, it's okay
      if the window manager calls XSetInputFocus(), with others, the wm has to
      ask the client to make a XSetInputFocus() request.
      
      If kwin wants a client to take input focus, kwin will add the client
      to the should_get_focus list, which contains all the windows that
      are about to get input focus. Clients are popped from the list upon
      receiving FOCUS_IN events.
      
      A client will be added to the should_get_focus list even if kwin thinks
      that the client already has input focus because communication between
      the wm and xorg is async, anything can happen with input focus in meanwhile.
      
      On the other hand, the wm may sometimes focus the null window if no
      window should contain the input focus. The issue is that the
      should_get_focus list is not cleaned up in that case, which can lead to
      Workspace::mostRecentlyActivatedClient() returning wrong client and
      possibly other async related issues.
      
      We don't have such madness on Wayland as the compositor is in charge of
      handling input focus.
      
      This change makes Workspace::focusToNull() clear the should_get_focus,
      which is reasonable. We need to deactivate "in-flight" focus requests.
      
      This also fixes the bug where fullscreen Wayland windows don't go above
      docks and panels due to Workspace::mostRecentlyActivatedClient() returning
      bad client.
      
      BUG: 439405
      BUG: 395919
      
      
      (cherry picked from commit e6c77a1d)
      fba3f1e7
  13. 04 Oct, 2021 7 commits
  14. 03 Oct, 2021 1 commit
    • Xaver Hugl's avatar
      platforms/drm: remove redundant check for placeholder output · 10a048e5
      Xaver Hugl authored
      It's not necessary, the placeholder output already gets created in DrmBackend::removeOutput
      if necessary. More improtantly it's missing the check for shutdown, which
      may cause issues if the computer is turned off while no outputs are connected.
      
      
      (cherry picked from commit d83da1cd)
      10a048e5
  15. 01 Oct, 2021 6 commits
  16. 30 Sep, 2021 3 commits