0

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
This commit is contained in:
msw@chromium.org
2013-11-12 20:09:43 +00:00
parent 2b0aa1c396
commit ce1b85f611

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