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); |
}; |