Index: apps/ui/views/native_app_window_views.cc |
diff --git a/apps/ui/views/native_app_window_views.cc b/apps/ui/views/native_app_window_views.cc |
index 62b941d9e58db4628f080934c6bf49b1660b76a8..36542204658950758864f6c4bded6d34d771630b 100644 |
--- a/apps/ui/views/native_app_window_views.cc |
+++ b/apps/ui/views/native_app_window_views.cc |
@@ -27,14 +27,12 @@ NativeAppWindowViews::NativeAppWindowViews() |
web_view_(NULL), |
widget_(NULL), |
frameless_(false), |
- transparent_background_(false), |
resizable_(false) {} |
void NativeAppWindowViews::Init(AppWindow* app_window, |
const AppWindow::CreateParams& create_params) { |
app_window_ = app_window; |
frameless_ = create_params.frame == AppWindow::FRAME_NONE; |
- transparent_background_ = create_params.transparent_background; |
resizable_ = create_params.resizable; |
size_constraints_.set_minimum_size( |
create_params.GetContentMinimumSize(gfx::Insets())); |
@@ -260,7 +258,7 @@ void NativeAppWindowViews::OnWidgetActivationChanged(views::Widget* widget, |
void NativeAppWindowViews::RenderViewCreated( |
content::RenderViewHost* render_view_host) { |
- if (transparent_background_) { |
+ if (app_window_->RequestedTransparentBackground() && CanHaveAlphaEnabled()) { |
content::RenderWidgetHostView* view = render_view_host->GetView(); |
DCHECK(view); |
view->SetBackgroundOpaque(false); |
@@ -398,4 +396,12 @@ void NativeAppWindowViews::SetContentSizeConstraints( |
size_constraints_.set_maximum_size(max_size); |
} |
+bool NativeAppWindowViews::CanHaveAlphaEnabled() const { |
+ return true; |
tapted
2014/07/14 03:30:24
does this work fine on desktop-linux as well as Ch
jackhou1
2014/07/14 04:51:02
This doesn't work on Linux.
I think this logic s
|
+} |
+ |
+void NativeAppWindowViews::CanHaveAlphaEnabledChanged() { |
+ app_window_->OnNativeWindowChanged(); |
+} |
+ |
} // namespace apps |