Skip to content
Snippets Groups Projects
  1. Dec 01, 2020
  2. Nov 29, 2020
  3. Nov 28, 2020
  4. Nov 21, 2020
    • Olivier Fourdan's avatar
      client: Make above/below consistent · 8d027c1d
      Olivier Fourdan authored
      
      The window menu entries would check for valid transients or modal dialog
      window to enable or disable the above/below entries.
      
      Yet the actual above/below function would simply check for any transient
      or modal dialog, hence denying the request for fake dialogs without an
      actual parent window.
      
      Fix the logic to remain consistent, and allows fake dialogs to be placed
      above or below other windows.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      Closes:#458
      8d027c1d
  5. Nov 14, 2020
  6. Nov 11, 2020
    • Olivier Fourdan's avatar
      client: Keep tiled size of windows · 93154517
      Olivier Fourdan authored
      
      Tiling works by moving and resizing windows to a specific location  on
      screen.
      
      GTK clients using client-side decorations (aka CSD) draw the drop shadow
      themselves and use the property _GTK_FRAME_EXTENTS to let the window
      manager or compositor know about the actual relative frame size and
      location.
      
      GTK automatically removes the drop shadow on some specific window
      states, such as fullscreen or maximized, and restores the drop shadow
      when the window returns to a normal state.
      
      If that update occurs after the tiled size was computed, the drop shadow
      is not accounted for and the window will appear smaller than the actual
      expected tiled size.
      
      To avoid that issue, the window manager should recompute the tiled size
      whenever the _GTK_FRAME_EXTENTS is updated.
      
      Store the tiled mode and recompute the tiled size/location of windows
      when the frame extents or the screen size change.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      Closes: #450
      93154517
  7. May 23, 2020
    • Olivier Fourdan's avatar
      client: Rely in XRes reported PID is available · 49c1a33a
      Olivier Fourdan authored
      
      When xfwm4 needs to kill an unresponsive client, it will use the its PID
      is known.
      
      However, the _NET_WM_PID as defined in the extended window manager hint
      mechanism is unreliable when the client runs within a sandbox, as it is
      the client itself who sets that property using its own view of the PID.
      
      The Xserver can provide a more accurate value of the client PID using
      the XRes X11 extension, so use that protocol if available.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      49c1a33a
  8. Apr 20, 2020
  9. Apr 05, 2020
  10. Sep 21, 2019
    • Olivier Fourdan's avatar
      stacking : Fix raise delay · daffbf9a
      Olivier Fourdan authored
      
      Bug: 15974
      
      Raise delay would be ignored, because on focus change, the newly
      focused window would be raised as soon as it receives focus.
      
      Use the raise delay timeout instead of raising the window immediately
      so that the raise delay remains functional.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      daffbf9a
  11. Jun 24, 2019
  12. May 11, 2019
    • Olivier Fourdan's avatar
      Protect against XErrors · 0bf68c53
      Olivier Fourdan authored
      
      Places where the window manager uses the client window are all possible
      sources of XError because the window may have vanished and the window
      manager won't know until it gets the destroy notification from the
      Xserver.
      
      As GDK error handler is smart and uses the serial of the requests to
      check for errors, if the XError is not trapped in time it will end up in
      GDK and cause an abort.
      
      Protect against such a possibility by making sure cases where the XID
      of the client or one of its dependent resources is used remains withing
      an error trap/push.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      0bf68c53
  13. May 08, 2019
  14. May 02, 2019
    • Olivier Fourdan's avatar
      events: Catch more XErrors · e8e920cb
      Olivier Fourdan authored
      
      Many operations such as XI2's grab/ungrab can cause an XError for
      various reasons, and X11 being asynchronous, those may end up being
      caught in gdk's own code, causing the termination of xfwm4.
      
      Catch XErrors in the relevant portions in xfwm4 code with error trap
      push/pop before gdk get them.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      e8e920cb
  15. Apr 21, 2019
  16. Jan 10, 2019
    • Olivier Fourdan's avatar
      events: ignore client configure requests when maxized · 3751c2c7
      Olivier Fourdan authored
      
      Bug: 13954
      
      Some clients tend to send us a configure request when transitioning to
      maximized, which introduces a race condition because the window manager
      will remove the maximized flag when the client resizes itself, now that
      we allow for that since commit aee8b25a.
      
      Ignore the configure request from the client when maximized or
      fullscreen to work around such behavior from the client.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      3751c2c7
  17. Jul 24, 2018
  18. Mar 31, 2018
  19. Nov 27, 2017
  20. Jul 03, 2017
  21. Jul 02, 2017
  22. Jun 15, 2016
  23. Nov 26, 2015
    • Olivier Fourdan's avatar
      netwm: reset decoration on netwm type change · a64b7437
      Olivier Fourdan authored
      
      Bug: 10413
      
      Some applications may temporarily set a transient relationship betwen
      their toplevel windows to maintain a stacking order, in which case we
      would change the decorations (as transients may not have all buttons
      available).
      
      However, we ought to restore the controls when this transient
      relationship is removed by the application, otherwise we leave the
      toplevels with reduced controls.
      
      Signed-off-by: default avatarOlivier Fourdan <fourdan@xfce.org>
      a64b7437
  24. Mar 14, 2015
  25. Mar 10, 2015
  26. Feb 26, 2015
  27. Feb 24, 2015
  28. Feb 06, 2015
  29. Jan 30, 2015
  30. Jan 29, 2015
  31. Jan 24, 2015
  32. Jan 20, 2015
Loading