summaryrefslogtreecommitdiffstats
path: root/chrome/browser/gtk/download_shelf_gtk.h
diff options
context:
space:
mode:
authorestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-05 20:50:44 +0000
committerestade@chromium.org <estade@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-05-05 20:50:44 +0000
commitb2cc43523f7bb309cecd6071de51a1677e5d15cf (patch)
treef35c93b5d7cdd95877f86f30cca96738856b7236 /chrome/browser/gtk/download_shelf_gtk.h
parentbef76ead355bfb64d93336a548b8b16602a853c1 (diff)
downloadchromium_src-b2cc43523f7bb309cecd6071de51a1677e5d15cf.zip
chromium_src-b2cc43523f7bb309cecd6071de51a1677e5d15cf.tar.gz
chromium_src-b2cc43523f7bb309cecd6071de51a1677e5d15cf.tar.bz2
Linux download shelf: remove download items when the associated download is removed.
BUG=11381 TEST=in opt mode: download something, go to downloads tab, clear all, go back to tab with downloaded item. The shelf should be gone. Review URL: http://codereview.chromium.org/100366 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15335 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/gtk/download_shelf_gtk.h')
-rw-r--r--chrome/browser/gtk/download_shelf_gtk.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/chrome/browser/gtk/download_shelf_gtk.h b/chrome/browser/gtk/download_shelf_gtk.h
index 76ff640..e2819a0 100644
--- a/chrome/browser/gtk/download_shelf_gtk.h
+++ b/chrome/browser/gtk/download_shelf_gtk.h
@@ -30,6 +30,15 @@ class DownloadShelfGtk : public DownloadShelf {
virtual bool IsShowing() const;
private:
+ // Remove |download_item| from the download shelf and delete it.
+ void RemoveDownloadItem(DownloadItemGtk* download_item);
+
+ // Get the leftmost non-download item widget on the shelf.
+ GtkWidget* GetRightBoundingWidget() const;
+
+ // Get the hbox download items ought to pack themselves into.
+ GtkWidget* GetHBox() const;
+
static void OnButtonClick(GtkWidget* button, DownloadShelfGtk* toolbar);
// The top level widget of the shelf.
@@ -57,6 +66,8 @@ class DownloadShelfGtk : public DownloadShelf {
// The download items we have added to our shelf.
std::vector<DownloadItemGtk*> download_items_;
+
+ friend class DownloadItemGtk;
};
#endif // CHROME_BROWSER_GTK_DOWNLOAD_SHELF_GTK_H_