Skip to content
  1. Sep 09, 2018
  2. Sep 08, 2018
    • Owen W. Taylor's avatar
      fix problems with focus tracking · 19c5732a
      Owen W. Taylor authored and Alberts Muktupāvels's avatar Alberts Muktupāvels committed
      When a client spontaneously focuses their window, perhaps in response
      to WM_TAKE_FOCUS we'll get a FocusOut/FocusIn pair with same serial.
      Updating display->focus_serial in response to FocusOut then was causing
      us to ignore FocusIn and think that the focus was not on any window.
      
      We need to distinguish this spontaneous case from the case where we
      set the focus ourselves - when we set the focus ourselves, we're careful
      to combine the SetFocus with a property change so that we know definitively
      what focus events we have already accounted for.
      
      https://bugzilla.gnome.org/show_bug.cgi?id=720558
      19c5732a
    • Alberts Muktupāvels's avatar
      display: ensure that we ignore our own focus events for focus predictions · 66a4cb4a
      Alberts Muktupāvels authored
      When we set the input focus, we first set the predicted window,
      and then try to process focus events. But as FocusOut on the
      existing window comes before FocusIn on the new window, we'll
      see the focus out on the old window and think the focus is going
      to nothing, which makes metacity think the prediction failed.
      
      Fix this by making sure that we ignore focus window changes of our
      own cause when updating the focus window field, by ignoring all
      focus events that have a serial the same as the focus request or
      lower. Note that if metacity doens't make any requests after the
      focus request, this could be racy, as another client could steal
      the focus, but metacity would ignore it as the serial was the same.
      Bump the serial by making a dummy ChangeProperty request to a
      metactiy-controlled window in this case.
      
      Based on mutter commit:
      https://gitlab.gnome.org/GNOME/mutter/commit/7fdfbad6d495ede1632588e528801443846e5f6d
      66a4cb4a
  3. Sep 02, 2018
  4. Aug 16, 2018
  5. Jun 25, 2018
  6. Jun 16, 2018
  7. Mar 24, 2018
  8. Mar 14, 2018
  9. Mar 11, 2018
  10. Mar 10, 2018
  11. Mar 03, 2018
  12. Feb 22, 2018
  13. Dec 23, 2017