Chromium Code Reviews| Index: chrome/browser/ui/views/apps/app_info_dialog/app_info_summary_panel.h |
| diff --git a/chrome/browser/ui/views/apps/app_info_dialog/app_info_summary_panel.h b/chrome/browser/ui/views/apps/app_info_dialog/app_info_summary_panel.h |
| index 0466cab3732a22bac44d5d7ca11ea6238b131caf..a35ad3fc62441cfbd0537686a297c92ba141fdbf 100644 |
| --- a/chrome/browser/ui/views/apps/app_info_dialog/app_info_summary_panel.h |
| +++ b/chrome/browser/ui/views/apps/app_info_dialog/app_info_summary_panel.h |
| @@ -5,11 +5,14 @@ |
| #ifndef CHROME_BROWSER_UI_VIEWS_APPS_APP_INFO_DIALOG_APP_INFO_SUMMARY_PANEL_H_ |
| #define CHROME_BROWSER_UI_VIEWS_APPS_APP_INFO_DIALOG_APP_INFO_SUMMARY_PANEL_H_ |
| +#include "base/memory/ref_counted.h" |
| #include "base/memory/scoped_ptr.h" |
| +#include "base/memory/weak_ptr.h" |
| #include "chrome/browser/ui/views/apps/app_info_dialog/app_info_panel.h" |
| #include "chrome/common/extensions/extension_constants.h" |
| #include "ui/views/controls/combobox/combobox_listener.h" |
| +class AppSizeBuffer; |
| class LaunchOptionsComboboxModel; |
| class Profile; |
| @@ -25,7 +28,8 @@ class Label; |
| // The summary panel of the app info dialog, which provides basic information |
| // and controls related to the app. |
| class AppInfoSummaryPanel : public AppInfoPanel, |
| - public views::ComboboxListener { |
| + public views::ComboboxListener, |
| + public base::SupportsWeakPtr<AppInfoSummaryPanel> { |
| public: |
| AppInfoSummaryPanel(Profile* profile, const extensions::Extension* app); |
| @@ -43,6 +47,11 @@ class AppInfoSummaryPanel : public AppInfoPanel, |
| // Overridden from views::ComboboxListener: |
| virtual void OnPerformAction(views::Combobox* combobox) OVERRIDE; |
| + // Called asynchronously to calculate and update the size of the app displayed |
| + // in the dialog. |
| + void StartCalculatingAppSize(); |
| + void OnAppSizeCalculated(scoped_refptr<AppSizeBuffer> app_size_in_bytes); |
| + |
| // Returns the time this app was installed. |
| base::Time GetInstalledTime() const; |
| @@ -63,6 +72,8 @@ class AppInfoSummaryPanel : public AppInfoPanel, |
| views::Label* description_label_; |
| views::Label* details_heading_; |
| + views::Label* size_title_; |
| + views::Label* size_value_; |
| views::Label* version_title_; |
| views::Label* version_value_; |
| views::Label* installed_time_title_; |
| @@ -70,9 +81,13 @@ class AppInfoSummaryPanel : public AppInfoPanel, |
| views::Label* last_run_time_title_; |
| views::Label* last_run_time_value_; |
| + int64 app_size_in_bytes_; |
|
tapted
2014/07/31 00:42:04
I don't think you use this
sashab
2014/07/31 05:00:46
Removed.
|
| + |
| scoped_ptr<LaunchOptionsComboboxModel> launch_options_combobox_model_; |
| views::Combobox* launch_options_combobox_; |
| + base::WeakPtrFactory<AppInfoSummaryPanel> weak_ptr_factory_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(AppInfoSummaryPanel); |
| }; |