Commit 69b11c72 authored by ben@chromium.org's avatar ben@chromium.org

Make Chrome limp briefly before freaking out with aura no ash.

BUG=none
TEST=none
Review URL: https://chromiumcodereview.appspot.com/10407022

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@137706 0039d316-1c4b-4281-b951-d872f2087c98
parent 843f6d39
...@@ -98,7 +98,7 @@ ...@@ -98,7 +98,7 @@
# imply using ash. This rule should be removed for the future when # imply using ash. This rule should be removed for the future when
# both Linux and Windows are using the aura windows without the ash # both Linux and Windows are using the aura windows without the ash
# interface. # interface.
['use_aura==1 and ((OS=="linux" and chromeos==0) or OS=="win")', { ['use_aura==1 and ((OS=="linux" and chromeos==0))', {
'use_ash%': 1, 'use_ash%': 1,
}], }],
['use_ash==1', { ['use_ash==1', {
......
...@@ -4369,6 +4369,19 @@ ...@@ -4369,6 +4369,19 @@
'../ui/aura/aura.gyp:aura', '../ui/aura/aura.gyp:aura',
'../ui/compositor/compositor.gyp:compositor', '../ui/compositor/compositor.gyp:compositor',
], ],
'conditions': [
['OS=="win"', {
'sources/': [
['exclude', '^browser/background/background_mode_manager_aura.cc'],
['exclude', '^browser/ui/webui/certificate_viewer_webui.cc'],
['exclude', '^browser/ui/webui/certificate_viewer_webui.h'],
['exclude', '^browser/ui/webui/certificate_viewer_ui.cc'],
['exclude', '^browser/ui/webui/certificate_viewer_ui.h'],
['exclude', '^browser/ui/browser_list_win.cc'],
['exclude', '^browser/fullscreen_win.cc'],
],
}],
],
}], }],
['ui_compositor_image_transport==1', { ['ui_compositor_image_transport==1', {
'dependencies': [ 'dependencies': [
......
...@@ -223,9 +223,7 @@ void WebContentsViewAura::CreateView(const gfx::Size& initial_size) { ...@@ -223,9 +223,7 @@ void WebContentsViewAura::CreateView(const gfx::Size& initial_size) {
window_->SetType(aura::client::WINDOW_TYPE_CONTROL); window_->SetType(aura::client::WINDOW_TYPE_CONTROL);
window_->SetTransparent(false); window_->SetTransparent(false);
window_->Init(ui::LAYER_NOT_DRAWN); window_->Init(ui::LAYER_NOT_DRAWN);
#if defined(USE_ASH)
window_->SetParent(NULL); window_->SetParent(NULL);
#endif
window_->layer()->SetMasksToBounds(true); window_->layer()->SetMasksToBounds(true);
window_->SetName("WebContentsViewAura"); window_->SetName("WebContentsViewAura");
......
...@@ -18,7 +18,11 @@ DesktopStackingClient::~DesktopStackingClient() { ...@@ -18,7 +18,11 @@ DesktopStackingClient::~DesktopStackingClient() {
} }
Window* DesktopStackingClient::GetDefaultParent(Window* window) { Window* DesktopStackingClient::GetDefaultParent(Window* window) {
return window->GetRootWindow(); if (!null_parent_.get()) {
null_parent_.reset(new aura::RootWindow(gfx::Rect(100, 100)));
null_parent_->Init();
}
return null_parent_.get();
} }
} // namespace aura } // namespace aura
...@@ -9,9 +9,11 @@ ...@@ -9,9 +9,11 @@
#include "base/basictypes.h" #include "base/basictypes.h"
#include "base/compiler_specific.h" #include "base/compiler_specific.h"
#include "base/memory/scoped_ptr.h"
#include "ui/aura/aura_export.h" #include "ui/aura/aura_export.h"
namespace aura { namespace aura {
class RootWindow;
class Window; class Window;
// A stacking client for the desktop; always sets the default parent to the // A stacking client for the desktop; always sets the default parent to the
...@@ -24,6 +26,10 @@ class AURA_EXPORT DesktopStackingClient : public client::StackingClient { ...@@ -24,6 +26,10 @@ class AURA_EXPORT DesktopStackingClient : public client::StackingClient {
// Overridden from client::StackingClient: // Overridden from client::StackingClient:
virtual Window* GetDefaultParent(Window* window) OVERRIDE; virtual Window* GetDefaultParent(Window* window) OVERRIDE;
private:
// Windows with NULL parents are parented to this.
scoped_ptr<aura::RootWindow> null_parent_;
DISALLOW_COPY_AND_ASSIGN(DesktopStackingClient); DISALLOW_COPY_AND_ASSIGN(DesktopStackingClient);
}; };
......
...@@ -40,6 +40,7 @@ DesktopNativeWidgetHelperAura::~DesktopNativeWidgetHelperAura() { ...@@ -40,6 +40,7 @@ DesktopNativeWidgetHelperAura::~DesktopNativeWidgetHelperAura() {
void DesktopNativeWidgetHelperAura::PreInitialize( void DesktopNativeWidgetHelperAura::PreInitialize(
const Widget::InitParams& params) { const Widget::InitParams& params) {
#if !defined(OS_WIN)
// We don't want the status bubble or the omnibox to get their own root // We don't want the status bubble or the omnibox to get their own root
// window on the desktop; on Linux // window on the desktop; on Linux
// //
...@@ -52,6 +53,7 @@ void DesktopNativeWidgetHelperAura::PreInitialize( ...@@ -52,6 +53,7 @@ void DesktopNativeWidgetHelperAura::PreInitialize(
} else if (params.type == Widget::InitParams::TYPE_CONTROL) { } else if (params.type == Widget::InitParams::TYPE_CONTROL) {
return; return;
} }
#endif
gfx::Rect bounds = params.bounds; gfx::Rect bounds = params.bounds;
if (bounds.IsEmpty()) { if (bounds.IsEmpty()) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment