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();
 }