From ce1b85f611d42dd91eab1db7d4e73df7d1a7b51a Mon Sep 17 00:00:00 2001 From: "msw@chromium.org" <msw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> Date: Tue, 12 Nov 2013 20:09:43 +0000 Subject: [PATCH] Make ColorChooserAura browser modal, not always-on-top. Parent the chooser widget to the content's browser window. (ColorChooserView already returns ui::MODAL_TYPE_WINDOW) Make it no longer always-on-top (has been since r144111). BUG=295832,295832 TEST=The Color chooser is browser modal, not always on top; see an example at <http://github.hubspot.com/pace/docs/welcome>. R=mukai@chromium.org,pkasting@chromium.org Review URL: https://codereview.chromium.org/65733002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@234615 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/browser/ui/views/color_chooser_aura.cc | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/chrome/browser/ui/views/color_chooser_aura.cc b/chrome/browser/ui/views/color_chooser_aura.cc index 637b367a57fea..48d73a2dae93f 100644 --- a/chrome/browser/ui/views/color_chooser_aura.cc +++ b/chrome/browser/ui/views/color_chooser_aura.cc @@ -3,6 +3,8 @@ // found in the LICENSE file. #include "chrome/browser/ui/browser_dialogs.h" +#include "chrome/browser/ui/browser_finder.h" +#include "chrome/browser/ui/browser_window.h" #include "content/public/browser/color_chooser.h" #include "content/public/browser/web_contents.h" #include "content/public/browser/web_contents_view.h" @@ -10,7 +12,6 @@ #include "ui/views/color_chooser/color_chooser_view.h" #include "ui/views/widget/widget.h" - namespace { class ColorChooserAura : public content::ColorChooser, @@ -55,9 +56,9 @@ ColorChooserAura::ColorChooserAura(content::WebContents* web_contents, SkColor initial_color) : web_contents_(web_contents) { view_ = new views::ColorChooserView(this, initial_color); - widget_ = views::Widget::CreateWindowWithContext( - view_, web_contents->GetView()->GetNativeView()); - widget_->SetAlwaysOnTop(true); + Browser* browser = chrome::FindBrowserWithWebContents(web_contents); + widget_ = views::Widget::CreateWindowWithParent( + view_, browser->window()->GetNativeWindow()); widget_->Show(); }