1. 20 Oct, 2015 1 commit
  2. 10 Oct, 2015 1 commit
  3. 03 Oct, 2015 1 commit
  4. 01 Oct, 2015 3 commits
  5. 30 Sep, 2015 3 commits
  6. 29 Sep, 2015 1 commit
    • Thomas Lübking's avatar
      restore linked screenedges times · 1d3a1aa0
      Thomas Lübking authored
      commit c6bd68d78a2e00ce094a4087c106aaf4067f9f57 fixed a bug
      that allowed early invocation when pushback was forced down.
      However, it also turned activation and re-activation time
      additive again (ie. invocation could only happen after
      r+a ms instead of after r ms)
      
      see also REVIEW 124888
      REVIEW: 125143
      1d3a1aa0
  7. 18 Sep, 2015 1 commit
  8. 14 Sep, 2015 4 commits
    • Thomas Lübking's avatar
      reset the transientInfo id when cleaning group · 295132de
      Thomas Lübking authored
      otherwise a pseudo-transient window with no
      group causes a nullptr deref in eg. mainClients
      
      BUG: 352483
      FIXED-IN: 5.4.2
      REVIEW: 125122
      295132de
    • Thomas Lübking's avatar
      ensure to "hide" desktop buttons · 584850f1
      Thomas Lübking authored
      before, hiding the buttons relied on the effect
      seeing a paint event for the (with a low timeline
      value) what's too wonky at least for instant animations
      (certain failure) or when effect exits immediatey
      (due to screen edge invocation issues or whatever)
      
      BUG: 351869
      FIXED-IN: 5.4.2
      REVIEW: 124970
      584850f1
    • Thomas Lübking's avatar
      fetch motif hints when get them for managed client · cc6886d7
      Thomas Lübking authored
      notably *after* storing the old values.
      Otherwise the old value is polluted because of
      m_hints being nullptr, thus a default value is
      returned (instead of the actual old value)
      
      BUG: 347818
      FIXED-IN: 5.4.2
      REVIEW: 125007
      cc6886d7
    • Thomas Lübking's avatar
      recreate presentwindows grids from desktopgrid · 57f8c6d5
      Thomas Lübking authored
      Theory:
      ----------
      because PresentWindowsEffect::screenCountChanged() is shortcut
      for "if (!isActive())", but the desktopgrid doesn't call
      PresentWindowsEffect::setActive (or at least
      PresentWindowsEffect::screenCountChanged), so the effect can
      "miss" the increasing screen count change (it sees the signal,
      but ignores it) and when desktopgrid calls it, it assumes the
      m_gridSizes array is big enough (but it isn't)
      
      Steps:
      ----------
      1. effects are loaded, 1 screen present
      2. 2nd screen gets added, but inactive effects ignore that
      3. desktop grid gets activated, updates according to screen count,
         calls presentwindows for screen #2
      4. presentwindows data is only prepared for one screen from step 1
         => BOOM
      
      BUG: 351724
      CCBUG: 326032
      FIXED-IN: 5.4.2
      REVIEW: 124960
      57f8c6d5
  9. 10 Sep, 2015 1 commit
  10. 07 Sep, 2015 1 commit
  11. 03 Sep, 2015 1 commit
  12. 31 Aug, 2015 1 commit
  13. 28 Aug, 2015 1 commit
  14. 27 Aug, 2015 4 commits
    • Thomas Lübking's avatar
      blur transparent 24bit windows · 0c71d514
      Thomas Lübking authored
      also stretch blur opacity a bit (ie.
      slightly transparent windows get more
      blur compared to their opacity)
      
      REVIEW: 124148
      0c71d514
    • Thomas Lübking's avatar
      never trigger edges during the cooldown · 9139cca7
      Thomas Lübking authored
      regardless of whether the pushback is forced down or the user
      has deactivated it or whatever. The edge is waiting from previous
      activation and we need to prevent immediate reactivation since that
      may cause duplicate action and unwanted state toggles
      
      BUG: 351627
      CCBUG: 351869
      FIXED-IN: 5.4.1
      REVIEW: 124888
      9139cca7
    • Thomas Lübking's avatar
      tests test tests, not code · b5e3e4ac
      Thomas Lübking authored
      The test put a reference to the XCB::Window as data
      to the _net_wm_transient property, not the window ID
      This "works" (you get various garbage transients for
      the leader in addition) as long as the window id itself
      is the first item in the structure (because that is what
      the test resolves to verify what it has done) bug fails
      when the XCB::Window structure changes and anything
      is the first item (or, btw., when the compiler feels
      to re-align the structure and adds some padding...)
      
      So let's fix the test by at least passing the proper
      data reference.
      
      is FIXED-IN: 5.4.1
      REVIEW: 124888
      also see REVIEW: 124864
      b5e3e4ac
    • Thomas Lübking's avatar
      Use shader traits for magnifer effect · 0f4c5193
      Thomas Lübking authored
      adapted from the zoom effect patch which
      was broken likewise in KWin/5
      
      REVIEW: 124942
      0f4c5193
  15. 26 Aug, 2015 1 commit
  16. 25 Aug, 2015 1 commit
  17. 24 Aug, 2015 1 commit
  18. 21 Aug, 2015 1 commit
    • Martin Flöser's avatar
      Fix regression in unit-test introduced with 62b64011 · abc3c633
      Martin Flöser authored
      I don't understand why, but this fixes the TestXcbWrapper::testTransientFor().
      
      Failing code fragment in question:
      
      Window transientWindow(createWindow());
      transientWindow.changeProperty(XCB_ATOM_WM_TRANSIENT_FOR, XCB_ATOM_WINDOW, 32, 1, &m_testWindow);
      // let's get another transient object
      TransientFor realTransient(transientWindow);
      QVERIFY(realTransient.getTransientFor(&compareWindow));
      QCOMPARE(compareWindow, (xcb_window_t)m_testWindow);
      
      the QCOMPARE failed with one compareWindow being 0. It looks like the
      cast from Xcb::Window to xcb_window_t in the changeProperty failed.
      
      REVIEW: 124864
      abc3c633
  19. 20 Aug, 2015 1 commit
  20. 19 Aug, 2015 3 commits
  21. 14 Aug, 2015 4 commits
    • Thomas Lübking's avatar
      do the hide-is-move dance w/ desktopgrid buttons · c240f7a0
      Thomas Lübking authored
      the (old) button effect windows used to be unreferenced
      with the re-invocation of the effect. because we stopped
      deleting/recreating the window, this approach failed and
      the effect window was never deleted.
      
      Unreferencing the window at proper occasion (see new hide
      location) coked up - guess what - the exact same "texture is
      junk" issue as for the QtQuick close button in present windows...
      
      So we resort to the exact same stupid "hide by moving" solution
      as we have there.
      
      BUG: 348577
      FIXED-IN: 5.4
      REVIEW: 124136
      c240f7a0
    • Thomas Lübking's avatar
      smart placement of unregularily max'd clients · 269e275c
      Thomas Lübking authored
      1. if a client has oversize, ensure to keep the titlebar in
      sight
      
      2. if a maximized client *almost* covers the entire maximization
      area, users can easily be trapped to click into the missing
      pixels, thus the client below.
      
      Therfore the clients is then stuffed into one corner, with
      preference to the titlebar edge and the screen area (ie.
      *away* from panels and towards actual screen borders because
      of fitt's law)
      
      BUG: 349935
      REVIEW: 124286
      FIXED-IN: 5.4
      269e275c
    • Thomas Lübking's avatar
      only discard pixmaps when the XCB Window resized · eb71b47d
      Thomas Lübking authored
      Causes invalid textures on the nvidia blob
      when referencing textures for crossfading
      eg. during maximization
      
      BUG: 324823
      REVIEW: 124591
      FIXED-IN: 5.4
      eb71b47d
    • Thomas Lübking's avatar
      store logic (what we think) geometry of XCB Window · 62b64011
      Thomas Lübking authored
      This allows us to check and compare geometry of
      system windows, no matter what the interim logic
      client geometry (eg. shaded etc.) is
      
      REVIEW: 124591
      62b64011
  22. 12 Aug, 2015 1 commit
  23. 11 Aug, 2015 1 commit
  24. 06 Aug, 2015 1 commit
  25. 31 Jul, 2015 1 commit