Chromium Code Reviews| Index: chrome/browser/download/download_util.cc |
| diff --git a/chrome/browser/download/download_util.cc b/chrome/browser/download/download_util.cc |
| index d18d876eaf52646108b17f8b19f50102fa8a8469..32eaa2f861161d676b35ac1e0da04454712f20dd 100644 |
| --- a/chrome/browser/download/download_util.cc |
| +++ b/chrome/browser/download/download_util.cc |
| @@ -75,6 +75,21 @@ |
| namespace { |
| +// Key used to attach ShowInShelfData to a DownloadItem. |
| +const char kShowInShelfKey[] = "chrome.download_util.show_in_shelf"; |
| + |
| +// Class that tracks the "show in download shelf" setting for a download item. |
| +class ShowInShelfData : public base::SupportsUserData::Data { |
| + public: |
| + explicit ShowInShelfData(bool should_show) : should_show_(should_show) { |
| + } |
| + |
| + bool should_show() const { return should_show_; } |
| + |
| + private: |
| + const bool should_show_; |
| +}; |
| + |
| // Get the opacity based on |animation_progress|, with values in [0.0, 1.0]. |
| // Range of return value is [0, 255]. |
| int GetOpacity(double animation_progress) { |
| @@ -484,4 +499,14 @@ void RecordDownloadSource(ChromeDownloadSource source) { |
| "Download.SourcesChrome", source, CHROME_DOWNLOAD_SOURCE_LAST_ENTRY); |
| } |
| +bool GetShouldShowInShelf(content::DownloadItem* item) { |
| + ShowInShelfData* data = |
| + static_cast<ShowInShelfData*>(item->GetUserData(kShowInShelfKey)); |
|
Greg Billock
2012/09/25 07:15:46
Do we not have a type token wrapper for getting da
sail
2012/10/02 18:57:01
Done.
Removed code.
|
| + return !data || data->should_show(); |
| +} |
| + |
| +void SetShouldShowInShelf(content::DownloadItem* item, bool should_show) { |
| + item->SetUserData(kShowInShelfKey, new ShowInShelfData(should_show)); |
|
Nico
2012/09/25 03:07:18
Can't you just add a bool to DownloadItem?
Steve McKay
2012/09/25 18:56:04
That'd probably work if you generalize the propert
sail
2012/10/02 18:57:01
Done.
Added DownloadItem::ShouldShowInDownloadsUI(
|
| +} |
| + |
| } // namespace download_util |