| Index: chrome/browser/ui/gtk/download/download_item_gtk.cc
|
| diff --git a/chrome/browser/ui/gtk/download/download_item_gtk.cc b/chrome/browser/ui/gtk/download/download_item_gtk.cc
|
| index 988db58934eb0aa9056f00685c47bb92bc3a46a9..71c5601a41a61e5cb6021b62b0ddd3c5cee87ce8 100644
|
| --- a/chrome/browser/ui/gtk/download/download_item_gtk.cc
|
| +++ b/chrome/browser/ui/gtk/download/download_item_gtk.cc
|
| @@ -14,14 +14,13 @@
|
| #include "chrome/browser/download/download_item.h"
|
| #include "chrome/browser/download/download_item_model.h"
|
| #include "chrome/browser/download/download_manager.h"
|
| -#include "chrome/browser/download/download_shelf_context_menu.h"
|
| #include "chrome/browser/download/download_util.h"
|
| #include "chrome/browser/ui/browser.h"
|
| #include "chrome/browser/ui/gtk/custom_drag.h"
|
| +#include "chrome/browser/ui/gtk/download/download_shelf_context_menu_gtk.h"
|
| #include "chrome/browser/ui/gtk/download/download_shelf_gtk.h"
|
| #include "chrome/browser/ui/gtk/gtk_theme_service.h"
|
| #include "chrome/browser/ui/gtk/gtk_util.h"
|
| -#include "chrome/browser/ui/gtk/menu_gtk.h"
|
| #include "chrome/browser/ui/gtk/nine_box.h"
|
| #include "content/common/notification_service.h"
|
| #include "grit/generated_resources.h"
|
| @@ -79,79 +78,6 @@ static const double kDownloadItemLuminanceMod = 0.8;
|
|
|
| } // namespace
|
|
|
| -// DownloadShelfContextMenuGtk -------------------------------------------------
|
| -
|
| -class DownloadShelfContextMenuGtk : public DownloadShelfContextMenu,
|
| - public MenuGtk::Delegate {
|
| - public:
|
| - // The constructor creates the menu and immediately pops it up.
|
| - // |model| is the download item model associated with this context menu,
|
| - // |widget| is the button that popped up this context menu, and |e| is
|
| - // the button press event that caused this menu to be created.
|
| - DownloadShelfContextMenuGtk(BaseDownloadItemModel* model,
|
| - DownloadItemGtk* download_item)
|
| - : DownloadShelfContextMenu(model),
|
| - download_item_gtk_(download_item) {
|
| - }
|
| -
|
| - ~DownloadShelfContextMenuGtk() {
|
| - }
|
| -
|
| - void Popup(GtkWidget* widget, GdkEventButton* event) {
|
| - // Create the menu if we have not created it yet or we created it for
|
| - // an in-progress download that has since completed.
|
| - if (download_item()->IsComplete())
|
| - menu_.reset(new MenuGtk(this, GetFinishedMenuModel()));
|
| - else
|
| - menu_.reset(new MenuGtk(this, GetInProgressMenuModel()));
|
| -
|
| - if (widget)
|
| - menu_->PopupForWidget(widget, event->button, event->time);
|
| - else
|
| - menu_->PopupAsContext(gfx::Point(event->x_root, event->y_root),
|
| - event->time);
|
| - }
|
| -
|
| - // MenuGtk::Delegate implementation:
|
| - virtual void StoppedShowing() {
|
| - download_item_gtk_->menu_showing_ = false;
|
| - gtk_widget_queue_draw(download_item_gtk_->menu_button_);
|
| - }
|
| -
|
| - virtual GtkWidget* GetImageForCommandId(int command_id) const {
|
| - const char* stock = NULL;
|
| - switch (command_id) {
|
| - case SHOW_IN_FOLDER:
|
| - case OPEN_WHEN_COMPLETE:
|
| - stock = GTK_STOCK_OPEN;
|
| - break;
|
| -
|
| - case CANCEL:
|
| - stock = GTK_STOCK_CANCEL;
|
| - break;
|
| -
|
| - case ALWAYS_OPEN_TYPE:
|
| - case TOGGLE_PAUSE:
|
| - stock = NULL;
|
| - }
|
| -
|
| - return stock ? gtk_image_new_from_stock(stock, GTK_ICON_SIZE_MENU) : NULL;
|
| - }
|
| -
|
| - private:
|
| - // The menu we show on Popup(). We keep a pointer to it for a couple reasons:
|
| - // * we don't want to have to recreate the menu every time it's popped up.
|
| - // * we have to keep it in scope for longer than the duration of Popup(), or
|
| - // completing the user-selected action races against the menu's
|
| - // destruction.
|
| - scoped_ptr<MenuGtk> menu_;
|
| -
|
| - // The download item that created us.
|
| - DownloadItemGtk* download_item_gtk_;
|
| -};
|
| -
|
| -// DownloadItemGtk -------------------------------------------------------------
|
| -
|
| NineBox* DownloadItemGtk::body_nine_box_normal_ = NULL;
|
| NineBox* DownloadItemGtk::body_nine_box_prelight_ = NULL;
|
| NineBox* DownloadItemGtk::body_nine_box_active_ = NULL;
|
| @@ -167,8 +93,8 @@ DownloadItemGtk::DownloadItemGtk(DownloadShelfGtk* parent_shelf,
|
| : parent_shelf_(parent_shelf),
|
| arrow_(NULL),
|
| menu_showing_(false),
|
| - theme_service_(GtkThemeService::GetFrom(
|
| - parent_shelf->browser()->profile())),
|
| + theme_service_(
|
| + GtkThemeService::GetFrom(parent_shelf->browser()->profile())),
|
| progress_angle_(download_util::kStartAngleDegrees),
|
| download_model_(download_model),
|
| dangerous_prompt_(NULL),
|
|
|