summaryrefslogtreecommitdiffstats
path: root/athena/content/app_activity_proxy.cc
Commit message (Collapse)AuthorAgeFilesLines
* Delete athena/pkotwicz2015-01-221-112/+0
| | | | | | | | | | | | Athena is deprecated and is not maintained. Delete athena/ BUG=440818 TEST=None TBR=oshima, sky Review URL: https://codereview.chromium.org/863033002 Cr-Commit-Position: refs/heads/master@{#312526}
* athena: Introduce ActivityView.Sadrul Habib Chowdhury2014-11-051-0/+3
| | | | | | | | | | | | | ActivityViewModel has the necessary information that should be displayed to the user. So provide mechanism for it to be able to update the view when the relevant information (e.g. title, icon, color) changes. BUG=none R=oshima@chromium.org Review URL: https://codereview.chromium.org/694413005 Cr-Commit-Position: refs/heads/master@{#302753}
* athena: Remove ActivityViewModel::CreateWidget().Sadrul Habib Chowdhury2014-11-031-5/+1
| | | | | | | | | | | | | Use the existing views API (views::Widget::GetWidgetForNativeView()) to get any existing views::Widget for an athena::Activity, instead of asking its ActivityViewModel. BUG=none R=oshima@chromium.org Review URL: https://codereview.chromium.org/702473005 Cr-Commit-Position: refs/heads/master@{#302523}
* Set AppActivityProxy window name for better Ctrl+Shift+Alt+W outputhashimoto2014-10-301-4/+4
| | | | | | | | | | | To call GetWindow(), make overridden methods of AppActivityProxy public. (this should be OK as AppActivity is doing the same thing and these methods become public with static_cast<Activity*>). BUG=None Review URL: https://codereview.chromium.org/659493007 Cr-Commit-Position: refs/heads/master@{#302028}
* NULL -> nullptr under athena/oshima2014-10-231-3/+3
| | | | | | | | BUG=None Review URL: https://codereview.chromium.org/653563004 Cr-Commit-Position: refs/heads/master@{#300978}
* Remove unused code in AppActivityProxypkotwicz2014-10-101-1/+0
| | | | | | | | | BUG=None TEST=None Review URL: https://codereview.chromium.org/626913003 Cr-Commit-Position: refs/heads/master@{#299111}
* Adding application lifetime tests to athena, allowing to override focus ↵skuhne2014-10-091-7/+6
| | | | | | | | | | | | | | | | | request for applciations Background: For Athena we have an intelligent applciation management which allows us to load and unload applications / activities at any time. In some cases we "pre-load" applications to short loading time. In that case we do not want that the application can show its window activated (thus bringing it to front). Instead we have to override that request. At the same time several things have changed in the application window framework which required. The Browsertests are testing the activation override as well as the activity order upon (re-)creation. I added miket as OWNER for the extensions/* changes. BUG=419379 TEST=AppActivityBrowserTest.CreatedAppGetsFocus, AppActivityBrowserTest.UnloadReloadApplicationInPlace, AppActivityBrowserTest.ReloadActivatedApplication, AppActivityBrowserTest.ReloadMovedApplication Review URL: https://codereview.chromium.org/631333003 Cr-Commit-Position: refs/heads/master@{#299003}
* Creating PNG images from web content to be used by OverviewMode navigationskuhne2014-09-251-1/+1
| | | | | | | | | | | | | | | | | This patch reads back content from the GPU in quarter res and stores it (in memory) as PNG. The OverviewMode can then grab an image through an activity to present it accordingly. Since we do not have browser test framework for Athena, there is no unit test yet. I took however issue 412474 on to mitigate that and I will use this test as the gunieapig test. In the meantime sadrul@chromium.org can start using this for his overviewmode presentation development. BUG=408837 TEST=Visual: Added Logging statements to see that the code gets properly executed. Review URL: https://codereview.chromium.org/591693002 Cr-Commit-Position: refs/heads/master@{#296729}
* Get FileSelect dialog work on athenaoshima2014-09-251-0/+4
| | | | | | | | | | | Introduced c/b/ui/views/athena/athena_util so that arbitrary code under chrome/browser doesn't have to depend on athena/ BUG=414340,410499 Review URL: https://codereview.chromium.org/603033002 Cr-Commit-Position: refs/heads/master@{#296628}
* rename WidnowManager::GetInstance -> ::Getoshima2014-09-241-1/+1
| | | | | | | | | | | | | call OnTerminating in unit test. BUG=None Committed: https://crrev.com/828338e278350941febbfbede2b34d721be6dab1 Cr-Commit-Position: refs/heads/master@{#296348} Review URL: https://codereview.chromium.org/599683003 Cr-Commit-Position: refs/heads/master@{#296448}
* Revert of [Athena, Cleanup] rename WidnowManager::GetInstance -> ::Get ↵phoglund2014-09-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | (patchset #1 id:40001 of https://codereview.chromium.org/599683003/) Reason for revert: Seems to cause crash in two tests; the crash is in athena_test_base. Likely it isn't possible to call AthenaEnv::Get()->OnTerminating(); in all cases. Example: https://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20%28dbg%29%283%29/builds/36880/steps/athena_unittests/logs/TerminatingCallback Original issue's description: > rename WidnowManager::GetInstance -> ::Get > call OnTerminating in unit test. > > BUG=None > > Committed: https://crrev.com/828338e278350941febbfbede2b34d721be6dab1 > Cr-Commit-Position: refs/heads/master@{#296348} TBR=mukai@chromium.org,skuhne@chromium.org,oshima@chromium.org NOTREECHECKS=true NOTRY=true BUG=None Review URL: https://codereview.chromium.org/601753002 Cr-Commit-Position: refs/heads/master@{#296392}
* rename WidnowManager::GetInstance -> ::Getoshima2014-09-241-1/+1
| | | | | | | | | | call OnTerminating in unit test. BUG=None Review URL: https://codereview.chromium.org/599683003 Cr-Commit-Position: refs/heads/master@{#296348}
* Adding overview / layer framework to Activities so that unloaded / sleeping ↵skuhne2014-09-151-10/+12
| | | | | | | | | | | | | | | | | | activities can be shown with as little resources as possible The new |ContentProxy| object is a placeholder for now which only creates a single color view. It can use the |web_view| to generate the image preview in the next step and will work for WebContents as well as App's. So more work is necessary, this patch is mainly to get the overview mode working again when running out of memory (and avoiding that it gets too big). Adding sky for the DEPS inclusion. BUG=408837 TEST=unittests and visual TBR=sky@chromium.org Review URL: https://codereview.chromium.org/548633005 Cr-Commit-Position: refs/heads/master@{#294837}
* [Athena] Hack to display favicons for web activities in overview mode.pkotwicz2014-09-111-0/+4
| | | | | | | | | | BUG=411631 TEST=None TBR=oshima,sadrul (TBR for changes to athena/content/DEPS) Review URL: https://codereview.chromium.org/550643002 Cr-Commit-Position: refs/heads/master@{#294400}
* V2 app support step2 : Use NativeAppWindow for Activity's window.oshima2014-09-111-0/+4
| | | | | | | | | | | | | | This CL removes redundant widget created by Activity, and use NativeAppWindow instead. Activity APIs needs to some cleanup and I'll look into it once hashimoto-san finished app_window transition. step3 will replace ChromeAppNativeWindowViews with athena's impl. BUG=410448 Review URL: https://codereview.chromium.org/558243002 Cr-Commit-Position: refs/heads/master@{#294297}
* Adding functions to the window_list_provider for accessing the activitiesskuhne2014-09-101-4/+6
| | | | | | | | | | | | | | | | | | | | window list As discussed - added the window/activity order management functions to the WindowListProvider and changed the use cases (at least partially). There are still more things to do, but we might want to do that either a. incrementally or b. as a separate issue since the associated BUG(388085) has nothing to do with this. Note: This is more work - especially because the code in question is being worked on actively by others. BUG=407103 TEST=athena_unittest.SimpleChecks, athena_unittest.TestWindowOrderingFunctions Review URL: https://codereview.chromium.org/480293003 Cr-Commit-Position: refs/heads/master@{#294103}
* Make activities have a thick border when in overview mode part 1pkotwicz2014-09-061-0/+6
| | | | | | | | | | | BUG=401559 TEST=Manual, see bug TBR=sadrul, oshima (TBR for DEPS additions) NOTRY=true Review URL: https://codereview.chromium.org/518673007 Cr-Commit-Position: refs/heads/master@{#293620}
* Decoupling visibility states from webcontent, adding visibility management ↵skuhne2014-09-051-9/+18
| | | | | | | | | | | | | in ResourceManager It works as desired. An abstract class to handle overview representations of unloaded WebContents has still to be added, but since the CL is already quite big as is, I split this up into a follow up CL. BUG=408826, 408834 TEST=AppActivityTest.*, ResourceManager.* and visual Review URL: https://codereview.chromium.org/536013002 Cr-Commit-Position: refs/heads/master@{#293414}
* Adding Baseframework of the ResourceManager (all hooks and observers)skuhne2014-08-281-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | are being put in place with a very basic management scheme The current ash implementation of the LowMemoryObserver polls "/dev/chromeos-low-mem" to find if we are running out of memory. After discussion with semenzato@ we decided that that is not precise enough and we should rather poll the system memory information. Going forward this has multiple benefits: 1. it does not require special kernel handling. 2. it also gives us information about GPU memory on chromeOS which will come handy once we are adding more sophisticated management. Beside that, this CL adds the ResourceManager which hooks itself into several components to detect changes in Activity's and their ordering as well as memory pressure. Note: The current management implementation itself is really primitive and needs to be improved. TBR for the DEPS file BUG=381212, 403782 TEST=MemoryPressureTest.*, ResourceManagerTest.* TBR=oshima@chromium.org Review URL: https://codereview.chromium.org/513523002 Cr-Commit-Position: refs/heads/master@{#292286}
* Athena: Adding basic resource management framework (un-/re-loading) of V2 ↵skuhne@chromium.org2014-08-221-0/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | applications 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
* Revert 291221 "Athena: Adding basic resource management framewor..."finnur@chromium.org2014-08-221-84/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reason: Failure on ASAN build bots. https://build.chromium.org/p/chromium.memory/builders/Linux%20Chromium%20OS%20ASan%20LSan%20Tests%20(3)/builds/2854/steps/athena_unittests/logs/OneAppActivity > Athena: Adding basic resource management framework (un-/re-loading) of V2 applications > > 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.* > > Review URL: https://codereview.chromium.org/477523002 TBR=skuhne@chromium.org Review URL: https://codereview.chromium.org/497013002 Cr-Commit-Position: refs/heads/master@{#291370} git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291370 0039d316-1c4b-4281-b951-d872f2087c98
* Athena: Adding basic resource management framework (un-/re-loading) of V2 ↵skuhne@chromium.org2014-08-211-0/+84
applications 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.* Review URL: https://codereview.chromium.org/477523002 Cr-Commit-Position: refs/heads/master@{#291221} git-svn-id: svn://svn.chromium.org/chrome/trunk/src@291221 0039d316-1c4b-4281-b951-d872f2087c98