Use BuildPrototype to build prototype
This saves the step of manually keeping the global template object, which is easy to forget then leak.
This commit is contained in:
parent
6795bd1d96
commit
a15f9fab5b
10 changed files with 148 additions and 126 deletions
|
@ -17,7 +17,7 @@ namespace atom {
|
|||
|
||||
namespace api {
|
||||
|
||||
class DownloadItem : public mate::EventEmitter,
|
||||
class DownloadItem : public mate::TrackableObject<DownloadItem>,
|
||||
public content::DownloadItem::Observer {
|
||||
public:
|
||||
class SavePathData : public base::SupportsUserData::Data {
|
||||
|
@ -32,6 +32,10 @@ class DownloadItem : public mate::EventEmitter,
|
|||
content::DownloadItem* item);
|
||||
static void* UserDataKey();
|
||||
|
||||
// mate::TrackableObject:
|
||||
static void BuildPrototype(v8::Isolate* isolate,
|
||||
v8::Local<v8::ObjectTemplate> prototype);
|
||||
|
||||
protected:
|
||||
explicit DownloadItem(content::DownloadItem* download_item);
|
||||
~DownloadItem();
|
||||
|
@ -53,10 +57,6 @@ class DownloadItem : public mate::EventEmitter,
|
|||
void SetSavePath(const base::FilePath& path);
|
||||
|
||||
private:
|
||||
// mate::Wrappable:
|
||||
mate::ObjectTemplateBuilder GetObjectTemplateBuilder(
|
||||
v8::Isolate* isolate) override;
|
||||
|
||||
content::DownloadItem* download_item_;
|
||||
|
||||
DISALLOW_COPY_AND_ASSIGN(DownloadItem);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue