Index: ui/views/widget/native_widget_aura.cc |
diff --git a/ui/views/widget/native_widget_aura.cc b/ui/views/widget/native_widget_aura.cc |
index 754b258eead2f0474b8189a9b147c285c587a58c..de8069c7cb28b145b7c01edf83a5f7691d3b9ecf 100644 |
--- a/ui/views/widget/native_widget_aura.cc |
+++ b/ui/views/widget/native_widget_aura.cc |
@@ -30,11 +30,13 @@ |
#include "ui/native_theme/native_theme_aura.h" |
#include "ui/views/drag_utils.h" |
#include "ui/views/ime/input_method_bridge.h" |
+#include "ui/views/view_constants_aura.h" |
#include "ui/views/views_delegate.h" |
#include "ui/views/widget/desktop_aura/desktop_native_widget_aura.h" |
#include "ui/views/widget/drop_helper.h" |
#include "ui/views/widget/native_widget_aura_window_observer.h" |
#include "ui/views/widget/native_widget_delegate.h" |
+#include "ui/views/widget/native_widget_layer_reorderer_aura.h" |
#include "ui/views/widget/root_view.h" |
#include "ui/views/widget/tooltip_manager_aura.h" |
#include "ui/views/widget/widget_aura_utils.h" |
@@ -172,6 +174,9 @@ void NativeWidgetAura::InitNativeWidget(const Widget::InitParams& params) { |
GetWidget()->widget_delegate()->CanMaximize()); |
window_->SetProperty(aura::client::kCanResizeKey, |
GetWidget()->widget_delegate()->CanResize()); |
+ |
+ layer_reorderer_.reset(new NativeWidgetLayerReordererAura(window_, |
+ GetWidget()->GetRootView())); |
} |
NonClientFrameView* NativeWidgetAura::CreateNonClientFrameView() { |
@@ -226,6 +231,21 @@ gfx::Vector2d NativeWidgetAura::CalculateOffsetToAncestorWithLayer( |
return gfx::Vector2d(); |
} |
+void NativeWidgetAura::ReorderLayers() { |
+ layer_reorderer_->ReorderLayers(); |
+} |
+ |
+bool NativeWidgetAura::HasNativeViewAttachedToViewTree() const { |
+ // TODO(pkotwicz): Set the the kHostViewKey property when a |
+ // NativeViewHost attaches a NativeView to |window_|. |
+ const std::vector<aura::Window*>& child_windows = window_->children(); |
+ for (size_t i = 0; i < child_windows.size(); ++i) { |
+ if (child_windows[i]->GetProperty(kHostViewKey)) |
+ return true; |
+ } |
+ return false; |
+} |
+ |
void NativeWidgetAura::ViewRemoved(View* view) { |
DCHECK(drop_helper_.get() != NULL); |
drop_helper_->ResetTargetViewIfEquals(view); |