Skip to content
  • Colin Walters's avatar
    apps: Ensure running apps override new .desktop file data · 0af10821
    Colin Walters authored
    This patch fixes the "apps vanish from alt-TAB bug".
    
    If a "package system" rips away and possibly replaces .desktop files
    at some random time, we have historically used inotify to detect this
    and reread state (in a racy way, but...).  In GNOME 2, this was
    generally not too problematic because the menu widget was totally
    separate from the list of windows - and the data they operate on was
    disjoint as well.
    
    In GNOME 3 we unify these, and this creates architectural problems
    because the windows are tied to the app.
    
    What this patch tries to do is, when rereading the application state,
    if we have a running application, we keep that app around instead of
    making a new instance.  This ensures we preserve any state such as the
    set of open windows.
    
    This requires moving the running state into ShellAppSystem.  Adjust
    callers as necessary, and while we're at it drop the unused "contexts"
    stuff.
    
    This is just a somewhat quick band-aid; a REAL fix would requir...
    0af10821