| Index: chrome/browser/ui/views/apps/native_app_window_views.cc
|
| diff --git a/chrome/browser/ui/views/apps/native_app_window_views.cc b/chrome/browser/ui/views/apps/native_app_window_views.cc
|
| index 5c187109637ba9988507b0a59a33122d453d8775..e321c7751fe35a8bed5ec388f61bf52d7dbe9e95 100644
|
| --- a/chrome/browser/ui/views/apps/native_app_window_views.cc
|
| +++ b/chrome/browser/ui/views/apps/native_app_window_views.cc
|
| @@ -169,6 +169,7 @@ void NativeAppWindowViews::InitializeDefaultWindow(
|
| // TODO(erg): Conceptually, these are toplevel windows, but we theoretically
|
| // could plumb context through to here in some cases.
|
| init_params.top_level = true;
|
| + init_params.keep_on_top = create_params.always_on_top;
|
| gfx::Rect window_bounds = create_params.bounds;
|
| bool position_specified =
|
| window_bounds.x() != INT_MIN && window_bounds.y() != INT_MIN;
|
| @@ -410,14 +411,16 @@ void NativeAppWindowViews::FlashFrame(bool flash) {
|
| }
|
|
|
| bool NativeAppWindowViews::IsAlwaysOnTop() const {
|
| - if (!shell_window_->window_type_is_panel())
|
| - return false;
|
| + if (shell_window_->window_type_is_panel()) {
|
| #if defined(USE_ASH)
|
| return ash::wm::GetWindowState(window_->GetNativeWindow())->
|
| panel_attached();
|
| #else
|
| return true;
|
| #endif
|
| + } else {
|
| + return window_->IsAlwaysOnTop();
|
| + }
|
| }
|
|
|
| gfx::Insets NativeAppWindowViews::GetFrameInsets() const {
|
| @@ -443,6 +446,11 @@ bool NativeAppWindowViews::IsVisible() const {
|
| void NativeAppWindowViews::HideWithApp() {}
|
| void NativeAppWindowViews::ShowWithApp() {}
|
|
|
| +void NativeAppWindowViews::SetAlwaysOnTop(bool always_on_top) {
|
| + window_->SetAlwaysOnTop(always_on_top);
|
| + shell_window_->OnNativeWindowChanged();
|
| +}
|
| +
|
| gfx::NativeView NativeAppWindowViews::GetHostView() const {
|
| return window_->GetNativeView();
|
| }
|
|
|