summaryrefslogtreecommitdiffstats
path: root/ui/views/widget
diff options
context:
space:
mode:
authorben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-02 22:06:15 +0000
committerben@chromium.org <ben@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-02 22:06:15 +0000
commitdb84ed0319cadfcff26cf9892f7fef2a84156bfb (patch)
treeb7d152310e47d94eb9af5292f1b3142975ac5bab /ui/views/widget
parentbb0f98962bec19c112e72ef523d987375dc2377c (diff)
downloadchromium_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.cc4
-rw-r--r--ui/views/widget/widget_delegate.cc4
-rw-r--r--ui/views/widget/widget_delegate.h3
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() {}