1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CHROME_BROWSER_UI_COCOA_DOWNLOAD_DOWNLOAD_SHELF_MAC_H_
6 #define CHROME_BROWSER_UI_COCOA_DOWNLOAD_DOWNLOAD_SHELF_MAC_H_
8 #import <Cocoa/Cocoa.h>
10 #include "base/compiler_specific.h"
11 #include "chrome/browser/download/download_shelf.h"
13 class DownloadItemModel
;
15 @
class DownloadShelfController
;
17 // A class to bridge the chromium download shelf to mac gui. This is just a
18 // wrapper class that forward everything to DownloadShelfController.
20 class DownloadShelfMac
: public DownloadShelf
{
22 DownloadShelfMac(Browser
* browser
, DownloadShelfController
* controller
);
24 // DownloadShelf implementation.
25 bool IsShowing() const override
;
26 bool IsClosing() const override
;
27 Browser
* browser() const override
;
30 void DoAddDownload(content::DownloadItem
* download
) override
;
31 void DoShow() override
;
32 void DoClose(CloseReason reason
) override
;
35 // The browser that owns this shelf.
38 DownloadShelfController
* shelf_controller_
; // weak, owns us
41 #endif // CHROME_BROWSER_UI_COCOA_DOWNLOAD_DOWNLOAD_SHELF_MAC_H_