• skuhne@chromium.org's avatar
    Athena: Adding basic resource management framework (un-/re-loading) of V2 applications · 9f4e1358
    skuhne@chromium.org authored
    Functionality:
    
    The |AppRegistry| has for each running application an |AppActivityRegistry|.
    
    The |AppActivityRegistry| knows all activities associated with the application it represents.
    It can furthermore shut the app entirely down upon resource manager request. It will then create
    an |AppActivityProxy| for the overview mode which shows a placeholder for an unloaded app. This
    placeholder can then ask the |AppActivityRegistry| to restart the application again.
    
    A shutdown request for the application is only performed when all activities were marked for
    UNLOAD.
    
    If there were multiple activities upon shutdown for one app, the app has to take care of
    re-creating all windows and thus re-creating all activities. Since an activity match cannot
    be performed, the |AppActivityProxy| will only be shown once and it will show in the location
    of the most recently used activity of that app. If we later on find an app which really uses
    multiple windows and it is imperative to keep the history for all of them tact & the app is
    recreating them properly, (a lot of if's) we can revisit the single |AppActivityProxy| and
    try to address it in a cleaner way, but at this time that seems rather un-useful since it is
    not known if required.
    
    BUG=388085
    TEST=AppActivityTest.*
    
    Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=291221
    
    Review URL: https://codereview.chromium.org/477523002
    
    Cr-Commit-Position: refs/heads/master@{#291454}
    git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291454 0039d316-1c4b-4281-b951-d872f2087c98
    9f4e1358
test_app_content_control_delegate_impl.cc 1.55 KB