1. 31 Oct, 2018 1 commit
  2. 30 Oct, 2018 1 commit
    • Vlad Zahorodnii's avatar
      [effects/desktopgrid] Don't display the close button from Present Windows · 558b86e9
      Vlad Zahorodnii authored
      Summary:
      If you activate the Present Windows effect and then the Desktop Grid,
      you'll be able to see the close button from PW. The reason for that is
      PW doesn't destroy the close button and DG doesn't filter it out.
      
      This patch addesses this problem by syncing DesktopGridEffect::isRelevantWithPresentWindows
      with PresentWindowsEffect::isSelectableWindow.
      
      On X11, the close button is filtered by the isSpecialWindow check. On
      Wayland, the close button is filtered by the acceptsFocus check.
      
      The proposed solution is kinda hack-ish, but on the other hand, we have
      to keep those two methods in sync anyway.
      
      In addition to the close button, notifications won't be displayed too.
      
      BUG: 364710
      FIXED-IN: 5.14.3
      
      Test Plan:
      * Activate the Present Windows effect;
      * Activate the Desktop Grid effect;
      * (the close button is no longer visible)
      
      Reviewers: #kwin, graesslin
      
      Reviewed By: #kwin, graesslin
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16513
      558b86e9
  3. 28 Oct, 2018 3 commits
    • Vlad Zahorodnii's avatar
      8fa1537d
    • Erik Kurzinger's avatar
      [effects/presentwindows] Avoid potential freeze during fill-gaps · 4348cd56
      Erik Kurzinger authored
      Summary:
      When using the natural layout algorithm with the fill-gaps option, a small
      error (less than one) is introduced in windows' aspect ratio each time they are
      enlarged due to floating-point roundoff.
      
      Currently, the algorithm computes the width and height enlargement factors and
      then attempts to enlarge in each of the four possible directions, repeating
      until it can't enlarge any windows any further.  Hence, this aspect ratio error
      can be multiplied by up to four. Especially for small, long, and narrow
      windows, this can result in a total error of greater than one by the end of
      that loop iteration. If this occurs, on subsequent iterations the height
      enlargement factor might then be computed as negative violating some of the
      core assumptions of the algorithm and resulting in the loop iterating endlessly
      until one of the window dimensions overflows, freezing the program for up to
      several minutes.
      
      To fix this, the height enlargement factor should be re-computed based on the
      new width each time the window is enlarged, ensuring the error introduced in
      the aspect ratio never exceeds one.
      
      BUG: 364709
      BUG: 380865
      BUG: 368811
      
      FIXED-IN: 5.15.0
      
      Test Plan:
      The most reliable way to reproduce the freeze seems to be to activate the
      desktop-grid effect while a tool-tip window is fading in.
      Ensure desktop-grid is configured to use present windows, and that present
      windows is configured to use the natural layout algorithm with the fill gaps
      option selected.
      
      The freeze is still intermittent, but using this method should be able to be
      triggered within about 10 tries without this fix.
      After applying the fix, the freeze has never been observed.
      
      Reviewers: #kwin, zzag
      
      Reviewed By: #kwin, zzag
      
      Subscribers: graesslin, kwin, zzag
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16278
      4348cd56
    • Script Kiddy's avatar
      SVN_SILENT made messages (.desktop file) - always resolve ours · 5d22ad68
      Script Kiddy authored
      In case of conflict in i18n, keep the version of the branch "ours"
      To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
      5d22ad68
  4. 27 Oct, 2018 1 commit
    • Vlad Zahorodnii's avatar
      [effects/thumbnailaside] Save shortcuts · 00c9b4c1
      Vlad Zahorodnii authored
      Summary:
      If user selects a shortcut to trigger the effect, that shortcut won't
      work after the KCM is closed because we don't save it.
      
      BUG: 400351
      FIXED-IN: 5.14.3
      
      Test Plan:
      * Specified custom shortcut to trigger the effect;
      * Closed the KCM;
      * Pressed the shortcut, a thumbnail appeared.
      
      Reviewers: #kwin, graesslin
      
      Reviewed By: #kwin, graesslin
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16456
      00c9b4c1
  5. 26 Oct, 2018 3 commits
    • Vlad Zahorodnii's avatar
      e4c399a6
    • Erik Kurzinger's avatar
      [effects/desktopgrid] Specify screen projection matrix when drawing moving window · 408ed806
      Erik Kurzinger authored
      Summary:
      Currently, when the user is moving a window in the desktop grid it is drawn from
      the paintScreen function to ensure it appears above all other windows. However,
      when drawing the window, the screenProjectionMatrix for the WindowPaintData structure
      is never specified. Because of this, the window will not be visible if OpenGL
      compositing along with Lanczos scaling are in use since its coordinates will never
      be projected into screen-space (unless the window is maximized, in which case the
      scaling code is bypassed).
      
      BUG: 361371
      BUG: 364509
      
      FIXED-IN: 5.14.3
      
      Test Plan:
      Ensure OpenGL compositing is enabled and the scaling method is set to "Accurate" on
      hardware supporting this option. Additionally, ensure the desktop grid effect is
      active and is configured to use Present Windows. Open a window and ensure is it not
      maximized. Click on the window and drag it around - its contents should remain visible
      the entire time and follow the mouse.
      
      Reviewers: #kwin, zzag, graesslin, davidedmundson
      
      Reviewed By: #kwin, zzag, davidedmundson
      
      Subscribers: broulik, davidedmundson, kwin, #kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16430
      408ed806
    • Erik Kurzinger's avatar
      [effects/desktopgrid] Specify screen projection matrix when drawing moving window · 91b53810
      Erik Kurzinger authored
      Summary:
      Currently, when the user is moving a window in the desktop grid it is drawn from
      the paintScreen function to ensure it appears above all other windows. However,
      when drawing the window, the screenProjectionMatrix for the WindowPaintData structure
      is never specified. Because of this, the window will not be visible if OpenGL
      compositing along with Lanczos scaling are in use since its coordinates will never
      be projected into screen-space (unless the window is maximized, in which case the
      scaling code is bypassed).
      
      BUG: 361371
      BUG: 364509
      
      FIXED-IN: 5.14.3
      
      Test Plan:
      Ensure OpenGL compositing is enabled and the scaling method is set to "Accurate" on
      hardware supporting this option. Additionally, ensure the desktop grid effect is
      active and is configured to use Present Windows. Open a window and ensure is it not
      maximized. Click on the window and drag it around - its contents should remain visible
      the entire time and follow the mouse.
      
      Reviewers: #kwin, zzag, graesslin, davidedmundson
      
      Reviewed By: #kwin, zzag, davidedmundson
      
      Subscribers: broulik, davidedmundson, kwin, #kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16430
      91b53810
  6. 25 Oct, 2018 1 commit
  7. 24 Oct, 2018 2 commits
  8. 23 Oct, 2018 2 commits
  9. 22 Oct, 2018 1 commit
  10. 20 Oct, 2018 1 commit
  11. 16 Oct, 2018 1 commit
  12. 12 Oct, 2018 2 commits
  13. 11 Oct, 2018 1 commit
    • Vlad Zahorodnii's avatar
      [effects/diminactive] Delete active transitions when window is deleted · 396f8f55
      Vlad Zahorodnii authored
      Summary:
      The Dim Inactive effect expects that the windowClosed signal always
      proceeds the windowDeleted signal. But in some cases that's not the case.
      
      If a window gets destroyed before becoming ready for painting, only
      the windowDeleted signal will be emitted. In addition to that, KWin will
      activate that window, which means we'll probably start a transition for
      it.
      
      Because this effect cannot terminate active transitions for such
      windows, KWin can crash in postPaintScreen.
      
      This change addresses the crash in postPaintScreen by adding extra clean
      up stuff in the windowDeleted slot to make sure that there are no
      transitions for deleted windows.
      
      The proper fix would be to not emit windowActivated signal for windows
      that are not ready for painting.
      
      BUG: 399612
      FIXED-IN: 5.14.1
      
      Test Plan:
      Ran
      ```
      x <- seq(5, 15, length=1000)
      y <- dnorm(x, mean=10, sd=3)
      plot(x, y, type="l", lwd=1)
      ```
      in RKWard multiple times.
      
      Reviewers: #kwin
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16130
      396f8f55
  14. 10 Oct, 2018 3 commits
    • David Edmundson's avatar
      [activities] Fix logic error in user menu blocking activity updates · 273a3fab
      David Edmundson authored
      Summary:
      There's an attempt to block updates to activities whilst the popup menu
      is showing.
      
      In one of the two code paths for positioning the menu the block is set
      but instead of releasing the block at the end of the exec locks it
      again.
      
      CCBUG: 335725
      
      Test Plan:
      On X11 changed activities with the popup menu near the bottom.
      It still flickered like crazy whilst the menu is open (see bug report)
      But now at least fixes itself after
      
      Reviewers: #kwin, zzag
      
      Reviewed By: #kwin, zzag
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16101
      273a3fab
    • David Edmundson's avatar
      [qpa] Always keep a at least one screen · 6724955a
      David Edmundson authored
      Summary:
      Qt does not like having no screens. Both Qt XCB and Wayland QPAs have
      systems pretend there's always at least 1 screen
      present.
      
      Kwin already uses a dummy screen on startup, this patch reinserts the
      dummy screen if the platform states that all real screens are removed.
      
      BUG: 399564
      
      Test Plan:
      Logged in, everything still worked
      Did not reproduce the original bug
      
      Reviewers: #kwin, zzag
      
      Reviewed By: #kwin, zzag
      
      Subscribers: kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D16096
      6724955a
    • Script Kiddy's avatar
      SVN_SILENT made messages (.desktop file) - always resolve ours · 43bed9a2
      Script Kiddy authored
      In case of conflict in i18n, keep the version of the branch "ours"
      To resolve a particular conflict, "git checkout --ours path/to/file.desktop"
      43bed9a2
  15. 09 Oct, 2018 1 commit
    • Vlad Zahorodnii's avatar
      [effects/wobblywindows] Fix visual artifacts caused by maximize effect · c2ffcfdc
      Vlad Zahorodnii authored
      Summary:
      If one wants to drag a maximized window while he or she has enabled both
      the Wobbly Windows and the Maximize effect, visual artifacts can be
      shown.
      
      When the Maximize effect animates transition from maximize to restore,
      some parts of the window can overshoot repaint regions(because of
      wobbliness), leaving us with the visual artifacts.
      
      To fix that, we have to take into account current scale and translation
      when calculating dirty region in the Wobbly Windows effect.
      
      BUG: 370612
      FIXED-IN: 5.14.1
      
      Test Plan: When dragging maximized windows, there are no visual artifacts anymore.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: abetts, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D15961
      c2ffcfdc
  16. 08 Oct, 2018 1 commit
  17. 07 Oct, 2018 1 commit
  18. 05 Oct, 2018 2 commits
  19. 04 Oct, 2018 2 commits
    • Vlad Zahorodnii's avatar
      [effects/zoom] Set wrap mode for cursor texture · e9fd5728
      Vlad Zahorodnii authored
      Summary:
      With the Oxygen cursor theme, a visual glitch can appear in the
      bottom-left corner of the cursor when the screen is zoomed in.
      
      The reason for that is we're using GL_REPEAT for GL_TEXTURE_WRAP_S
      and GL_TEXTURE_WRAP_T. So, when the linear filter samples neighboring
      texels in the bottom, it can sample some texels from the top (because of
      GL_REPEAT).
      
      To fix that, we have to set the wrap mode to GL_CLAMP_TO_EDGE.
      
      BUG: 338254
      FIXED-IN: 5.14.0
      
      Test Plan:
      Before:
      {F6303912}
      
      After:
      {F6303913}
      
      Tried other cursor themes(Breeze and Adwaita), everything looks okay.
      
      Reviewers: #kwin, davidedmundson
      
      Reviewed By: #kwin, davidedmundson
      
      Subscribers: davidedmundson, kwin
      
      Tags: #kwin
      
      Differential Revision: https://phabricator.kde.org/D15949
      e9fd5728
    • Jonathan Riddell's avatar
      Update version number for 5.14.0 · b3e3cf86
      Jonathan Riddell authored
      GIT_SILENT
      b3e3cf86
  20. 29 Sep, 2018 2 commits
  21. 25 Sep, 2018 1 commit
  22. 23 Sep, 2018 1 commit
  23. 22 Sep, 2018 1 commit
  24. 18 Sep, 2018 1 commit
  25. 17 Sep, 2018 2 commits
  26. 15 Sep, 2018 1 commit
  27. 13 Sep, 2018 1 commit