chore: use ScopedPumpMessagesInPrivateModes in tray (#18977)

* chore: use ScopedPumpMessagesInPrivateModes in tray

* revert refcounting of AtomMenuModel

* Prefer WeakPtr for posting tasks to handle unexpected destruction
This commit is contained in:
Shelley Vohr 2019-06-26 10:18:53 -07:00 committed by GitHub
parent d643921313
commit 6243dba068
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 16 additions and 15 deletions

View file

@ -13,8 +13,7 @@
namespace electron {
class AtomMenuModel : public ui::SimpleMenuModel,
public base::RefCounted<AtomMenuModel> {
class AtomMenuModel : public ui::SimpleMenuModel {
public:
class Delegate : public ui::SimpleMenuModel::Delegate {
public:
@ -49,6 +48,7 @@ class AtomMenuModel : public ui::SimpleMenuModel,
};
explicit AtomMenuModel(Delegate* delegate);
~AtomMenuModel() override;
void AddObserver(Observer* obs) { observers_.AddObserver(obs); }
void RemoveObserver(Observer* obs) { observers_.RemoveObserver(obs); }
@ -69,9 +69,6 @@ class AtomMenuModel : public ui::SimpleMenuModel,
AtomMenuModel* GetSubmenuModelAt(int index);
private:
friend class base::RefCounted<AtomMenuModel>;
~AtomMenuModel() override;
Delegate* delegate_; // weak ref.
std::map<int, base::string16> roles_; // command id -> role