diff options
Diffstat (limited to 'chrome/browser/ui/panels/panel_mouse_watcher.cc')
-rw-r--r-- | chrome/browser/ui/panels/panel_mouse_watcher.cc | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/chrome/browser/ui/panels/panel_mouse_watcher.cc b/chrome/browser/ui/panels/panel_mouse_watcher.cc index b55ca76..1774658 100644 --- a/chrome/browser/ui/panels/panel_mouse_watcher.cc +++ b/chrome/browser/ui/panels/panel_mouse_watcher.cc @@ -14,15 +14,16 @@ PanelMouseWatcher::~PanelMouseWatcher() { } void PanelMouseWatcher::AddObserver(PanelMouseWatcherObserver* observer) { + bool already_started = observers_.might_have_observers(); observers_.AddObserver(observer); - if (observers_.size() == 1) + if (!already_started) Start(); } void PanelMouseWatcher::RemoveObserver(PanelMouseWatcherObserver* observer) { DCHECK(observers_.HasObserver(observer)); observers_.RemoveObserver(observer); - if (observers_.size() == 0) + if (!observers_.might_have_observers()) Stop(); } |