Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(27)

Unified Diff: apps/app_restore_service.cc

Issue 14607023: Add support for persistent file access in apps. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: rebase Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: apps/app_restore_service.cc
diff --git a/apps/app_restore_service.cc b/apps/app_restore_service.cc
index a567811289f4d1f5b2b6d41d75b0fe3edcc226c1..7f453ea3b1ffa4a2f3c01e4775348c6873136c97 100644
--- a/apps/app_restore_service.cc
+++ b/apps/app_restore_service.cc
@@ -4,8 +4,8 @@
#include "apps/app_restore_service.h"
+#include "apps/saved_files_service.h"
#include "chrome/browser/extensions/api/app_runtime/app_runtime_api.h"
-#include "chrome/browser/extensions/api/file_handlers/app_file_handler_util.h"
#include "chrome/browser/extensions/event_router.h"
#include "chrome/browser/extensions/extension_host.h"
#include "chrome/browser/extensions/extension_prefs.h"
@@ -70,13 +70,13 @@ void AppRestoreService::HandleStartup(bool should_restore_apps) {
it != extensions->end(); ++it) {
const Extension* extension = *it;
if (extension_prefs->IsExtensionRunning(extension->id())) {
- std::vector<SavedFileEntry> file_entries;
- extensions::app_file_handler_util::GetSavedFileEntries(extension_prefs,
- extension->id(),
- &file_entries);
RecordAppStop(extension->id());
+ // On a Chrome restart, restore the running apps. Otherwise, on startup,
+ // flush the retained file entries.
if (should_restore_apps)
- RestoreApp(*it, file_entries);
+ RestoreApp(*it);
+ else
+ SavedFilesService::Get(profile_)->MaybeClearQueue(extension);
}
}
}
@@ -138,8 +138,6 @@ void AppRestoreService::RecordAppStop(const std::string& extension_id) {
ExtensionPrefs* extension_prefs =
ExtensionSystem::Get(profile_)->extension_service()->extension_prefs();
extension_prefs->SetExtensionRunning(extension_id, false);
- extensions::app_file_handler_util::ClearSavedFileEntries(
- extension_prefs, extension_id);
}
void AppRestoreService::RecordIfAppHasWindows(
@@ -162,12 +160,8 @@ void AppRestoreService::RecordIfAppHasWindows(
extension_prefs->SetHasWindows(id, has_windows);
}
-void AppRestoreService::RestoreApp(
- const Extension* extension,
- const std::vector<SavedFileEntry>& file_entries) {
- extensions::RestartPlatformAppWithFileEntries(profile_,
- extension,
- file_entries);
+void AppRestoreService::RestoreApp(const Extension* extension) {
+ extensions::RestartPlatformApp(profile_, extension);
}
void AppRestoreService::StartObservingShellWindows() {

Powered by Google App Engine
This is Rietveld 408576698