Chromium Code Reviews| Index: chrome/browser/ui/app_list/fast_show_pickler.h |
| diff --git a/chrome/browser/ui/app_list/fast_show_pickler.h b/chrome/browser/ui/app_list/fast_show_pickler.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..26995304b00b48fa1f9b54bfabaa6f23a5d81cf6 |
| --- /dev/null |
| +++ b/chrome/browser/ui/app_list/fast_show_pickler.h |
| @@ -0,0 +1,41 @@ |
| +// Copyright 2013 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_UI_APP_LIST_FAST_SHOW_PICKLER_H_ |
| +#define CHROME_BROWSER_UI_APP_LIST_FAST_SHOW_PICKLER_H_ |
| + |
| +#include <string> |
| + |
| +#include "base/memory/scoped_ptr.h" |
| +#include "base/pickle.h" |
| +#include "base/strings/string16.h" |
| +#include "ui/app_list/app_list_item_model.h" |
| +#include "ui/app_list/app_list_model.h" |
| + |
| + |
|
benwells
2013/08/29 04:49:28
Nit: extra blank line.
|
| +// Functions for pickling/unpickling AppListModel for fast show. Fast show is |
| +// where the app list is put on the screen using data retrieved from a cache |
| +// before the extension system has loaded. |
| +class FastShowPickler { |
| + public: |
| + // The version that this pickler understands. |
| + static const int kVersion; |
| + |
| + // Pickles a subset of the data in |model| that is useful for doing a fast |
| + // show of the app list. |
| + static scoped_ptr<Pickle> PickleAppListModelForFastShow( |
|
benwells
2013/08/29 04:49:28
Nit: Maybe don't need 'ForFastShow' in the name as
|
| + app_list::AppListModel* model); |
| + |
| + // Given a Pickle created by PickleAppListModelForFastShow(), this creates an |
| + // AppListModel that represents it. |
| + static scoped_ptr<app_list::AppListModel> UnpickleAppListModelForFastShow( |
| + Pickle* pickle); |
| + |
| + // Copies parts that are needed to show the app list quickly on startup from |
| + // |src| to |dest|. |
| + static void CopyOver( |
|
benwells
2013/08/29 04:49:28
What is this going to be used for?
|
| + app_list::AppListModel* src, app_list::AppListModel* dest); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_UI_APP_LIST_FAST_SHOW_PICKLER_H_ |