Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fixes for logout hang #592

Merged
merged 8 commits into from Oct 31, 2015
Merged

fixes for logout hang #592

merged 8 commits into from Oct 31, 2015

Commits on Oct 16, 2015

  1. fix busy cursor on logout

    Add busy cursor methods, with a reference counter.  Flush the cursor
    change to the display.  Reduce the time between checks for journal
    ready.
    
    Why?
    
    - the busy cursor effect was not re-entrant; if the busy cursor was
      already in use it would not be restored,
    
    - a previous patch to add busy cursor on logout never worked properly
      because the cursor change was not flushed to the display,
    
    - the busy cursor should be removed as soon as practical once the
      journal is ready.
    quozl committed Oct 16, 2015
    Copy the full SHA
    056ba5c View commit details
    Browse the repository at this point in the history
  2. add session manager shutdown cancel

    Add a cancel shutdown method to the session manager.  Remove a delay
    before final shutdown.
    
    Why?
    
    - a cancel method is needed by a later patch to handle hung activities,
    
    - the one second delay before final shutdown is unnecessary, and makes
      Sugar feel unresponsive.
    quozl committed Oct 16, 2015
    Copy the full SHA
    aef843d View commit details
    Browse the repository at this point in the history
  3. fix busy cursor on control panel

    Add reference counted busy cursor methods, and flush the display.
    
    Why?
    
    - the busy cursor was delayed, because the change was not flushed,
    
    - a busy method will be useful for other delays in the control panel.
    quozl committed Oct 16, 2015
    Copy the full SHA
    0d5246d View commit details
    Browse the repository at this point in the history
  4. methods for control panel alerts

    Move the add and remove of alerts into new methods, for re-use.
    quozl committed Oct 16, 2015
    Copy the full SHA
    f8b7690 View commit details
    Browse the repository at this point in the history
  5. add quit failure alert

    Add a quit failure alert to the menu and the control panel.  After 30
    seconds with no click, continue with the quit.
    
    Why?
    
    The buddy menu has options for shutdown, restart or logout.  The control
    panel may also restart.  These make Sugar quit.  Session manager sends a
    save-yourself message to running activities, and waits for the
    activities to respond.
    
    When an activity does not respond, Sugar does not quit.  No reason is
    given.
    
    Adding the alert will allow user to cancel the shutdown, cancel the
    control panel section change, and work the problem, or lose unsaved
    work.
    
    Caution: requires a patch to
    
        sugar-toolkit-gtk3:src/sugar3/graphics/alert.py
    
    otherwise a forced shutdown will occur 30 seconds after the alert is
    shown, even if Cancel is clicked.
    quozl committed Oct 16, 2015
    Copy the full SHA
    f4dd3da View commit details
    Browse the repository at this point in the history
  6. fix homewindow alerts

    Remove previous stacked alerts implementation.  Remove alerts before
    changing zoom level.  Fix button pressed callback to
    
    No code was using alerts in the homewindow.  When it began to be used,
    changes to zoom level were ruining the ordering of children of self._box
    quozl committed Oct 16, 2015
    Copy the full SHA
    d5296ef View commit details
    Browse the repository at this point in the history
  7. simplify register fail alert

    Use ErrorAlert so that the Ok button need not be added.
    
    Connect before add to fit documented ordering.  No actual effect.
    quozl committed Oct 16, 2015
    Copy the full SHA
    2b13eb6 View commit details
    Browse the repository at this point in the history
  8. ignore quit failure for developers

    After a few seconds, force the session manager to shutdown if there
    remain activities that are not responding.
    
    	"just throw fire on everything and kill it anyway" -- Sam
    quozl committed Oct 16, 2015
    Copy the full SHA
    85451d2 View commit details
    Browse the repository at this point in the history