views: Don't leak ViewsDelegate.
This commit is contained in:
parent
651ebdde65
commit
7a196933bb
3 changed files with 10 additions and 3 deletions
|
@ -50,9 +50,7 @@ void BrowserMainParts::ToolkitInitialized() {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(TOOLKIT_VIEWS)
|
#if defined(TOOLKIT_VIEWS)
|
||||||
if (!views::ViewsDelegate::views_delegate)
|
views_delegate_.reset(new ViewsDelegate);
|
||||||
views::ViewsDelegate::views_delegate = new ViewsDelegate;
|
|
||||||
|
|
||||||
wm_state_.reset(new wm::WMState);
|
wm_state_.reset(new wm::WMState);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,6 +10,10 @@
|
||||||
#include "content/public/browser/browser_main_parts.h"
|
#include "content/public/browser/browser_main_parts.h"
|
||||||
|
|
||||||
#if defined(TOOLKIT_VIEWS)
|
#if defined(TOOLKIT_VIEWS)
|
||||||
|
namespace brightray {
|
||||||
|
class ViewsDelegate;
|
||||||
|
}
|
||||||
|
|
||||||
namespace wm {
|
namespace wm {
|
||||||
class WMState;
|
class WMState;
|
||||||
}
|
}
|
||||||
|
@ -53,6 +57,7 @@ class BrowserMainParts : public content::BrowserMainParts {
|
||||||
scoped_ptr<WebUIControllerFactory> web_ui_controller_factory_;
|
scoped_ptr<WebUIControllerFactory> web_ui_controller_factory_;
|
||||||
|
|
||||||
#if defined(TOOLKIT_VIEWS)
|
#if defined(TOOLKIT_VIEWS)
|
||||||
|
scoped_ptr<ViewsDelegate> views_delegate_;
|
||||||
scoped_ptr<wm::WMState> wm_state_;
|
scoped_ptr<wm::WMState> wm_state_;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -9,9 +9,13 @@
|
||||||
namespace brightray {
|
namespace brightray {
|
||||||
|
|
||||||
ViewsDelegate::ViewsDelegate() {
|
ViewsDelegate::ViewsDelegate() {
|
||||||
|
DCHECK(!views::ViewsDelegate::views_delegate);
|
||||||
|
views::ViewsDelegate::views_delegate = this;
|
||||||
}
|
}
|
||||||
|
|
||||||
ViewsDelegate::~ViewsDelegate() {
|
ViewsDelegate::~ViewsDelegate() {
|
||||||
|
DCHECK_EQ(views::ViewsDelegate::views_delegate, this);
|
||||||
|
views::ViewsDelegate::views_delegate = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
void ViewsDelegate::SaveWindowPlacement(const views::Widget* window,
|
void ViewsDelegate::SaveWindowPlacement(const views::Widget* window,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue