diff options
author | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-02 22:06:15 +0000 |
---|---|---|
committer | ben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-12-02 22:06:15 +0000 |
commit | db84ed0319cadfcff26cf9892f7fef2a84156bfb (patch) | |
tree | b7d152310e47d94eb9af5292f1b3142975ac5bab /ui/views/widget | |
parent | bb0f98962bec19c112e72ef523d987375dc2377c (diff) | |
download | chromium_src-db84ed0319cadfcff26cf9892f7fef2a84156bfb.zip chromium_src-db84ed0319cadfcff26cf9892f7fef2a84156bfb.tar.gz chromium_src-db84ed0319cadfcff26cf9892f7fef2a84156bfb.tar.bz2 |
Revert 112770 - Prevent a crash in the first run search engine selector.
It is possible to try and close the window now before the TemplateURLService is loaded. In this case we will not have a fallback search engine to select by default. So we will just reject attempts to close the window in this circumstance until it is loaded and a fallback choice has been set. It should be an edge case.
http://crbug.com/106078
TEST=unit test
Review URL: http://codereview.chromium.org/8771018
TBR=ben@chromium.org
Review URL: http://codereview.chromium.org/8790001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@112804 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/views/widget')
-rw-r--r-- | ui/views/widget/widget.cc | 4 | ||||
-rw-r--r-- | ui/views/widget/widget_delegate.cc | 4 | ||||
-rw-r--r-- | ui/views/widget/widget_delegate.h | 3 |
3 files changed, 2 insertions, 9 deletions
diff --git a/ui/views/widget/widget.cc b/ui/views/widget/widget.cc index deeaa38..472e284 100644 --- a/ui/views/widget/widget.cc +++ b/ui/views/widget/widget.cc @@ -466,8 +466,8 @@ void Widget::Close() { return; } - bool can_close = widget_delegate_->CanClose(); - if (non_client_view_ && can_close) + bool can_close = true; + if (non_client_view_) can_close = non_client_view_->CanClose(); if (can_close) { SaveWindowPlacement(); diff --git a/ui/views/widget/widget_delegate.cc b/ui/views/widget/widget_delegate.cc index dbbd438..6456c61 100644 --- a/ui/views/widget/widget_delegate.cc +++ b/ui/views/widget/widget_delegate.cc @@ -128,10 +128,6 @@ bool WidgetDelegate::ShouldRestoreWindowSize() const { return true; } -bool WidgetDelegate::CanClose() { - return true; -} - View* WidgetDelegate::GetContentsView() { if (!default_contents_view_) default_contents_view_ = new View; diff --git a/ui/views/widget/widget_delegate.h b/ui/views/widget/widget_delegate.h index ea48930..58a2c72 100644 --- a/ui/views/widget/widget_delegate.h +++ b/ui/views/widget/widget_delegate.h @@ -117,9 +117,6 @@ class VIEWS_EXPORT WidgetDelegate { // Default is true. virtual bool ShouldRestoreWindowSize() const; - // Return false to indicate that the window can't be closed. Defaults to true. - virtual bool CanClose(); - // Called when the window closes. The delegate MUST NOT delete itself during // this call, since it can be called afterwards. See DeleteDelegate(). virtual void WindowClosing() {} |