Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "views/widget/native_widget_aura.h" | 5 #include "views/widget/native_widget_aura.h" |
| 6 | 6 |
| 7 #include "base/bind.h" | 7 #include "base/bind.h" |
| 8 #include "ui/aura/desktop.h" | 8 #include "ui/aura/desktop.h" |
| 9 #include "ui/aura/event.h" | 9 #include "ui/aura/event.h" |
| 10 #include "ui/aura/window.h" | 10 #include "ui/aura/window.h" |
| (...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 79 window_->Init(params.create_texture_for_layer ? | 79 window_->Init(params.create_texture_for_layer ? |
| 80 ui::Layer::LAYER_HAS_TEXTURE : ui::Layer::LAYER_HAS_NO_TEXTURE); | 80 ui::Layer::LAYER_HAS_TEXTURE : ui::Layer::LAYER_HAS_NO_TEXTURE); |
| 81 // TODO(beng): respect |params| authoritah wrt transparency. | 81 // TODO(beng): respect |params| authoritah wrt transparency. |
| 82 window_->layer()->SetFillsBoundsOpaquely(false); | 82 window_->layer()->SetFillsBoundsOpaquely(false); |
| 83 delegate_->OnNativeWidgetCreated(); | 83 delegate_->OnNativeWidgetCreated(); |
| 84 window_->set_minimum_size(delegate_->GetMinimumSize()); | 84 window_->set_minimum_size(delegate_->GetMinimumSize()); |
| 85 window_->SetBounds(params.bounds); | 85 window_->SetBounds(params.bounds); |
| 86 if (params.type == Widget::InitParams::TYPE_CONTROL) { | 86 if (params.type == Widget::InitParams::TYPE_CONTROL) { |
| 87 window_->SetParent(params.GetParent()); | 87 window_->SetParent(params.GetParent()); |
| 88 } else { | 88 } else { |
| 89 window_->SetParent(NULL); | |
| 90 gfx::NativeView parent = params.GetParent(); | 89 gfx::NativeView parent = params.GetParent(); |
| 91 if (parent) | 90 if (parent) |
| 92 parent->AddTransientChild(window_); | 91 parent->AddTransientChild(window_); |
| 92 window_->SetParent(NULL); | |
| 93 } | 93 } |
| 94 // TODO(beng): do this some other way. | 94 // TODO(beng): do this some other way. |
| 95 delegate_->OnNativeWidgetSizeChanged(params.bounds.size()); | 95 delegate_->OnNativeWidgetSizeChanged(params.bounds.size()); |
| 96 can_activate_ = params.can_activate; | 96 can_activate_ = params.can_activate; |
| 97 if (params.type != Widget::InitParams::TYPE_TOOLTIP && !params.child) { | 97 if (params.type != Widget::InitParams::TYPE_TOOLTIP && !params.child) { |
| 98 DCHECK(GetWidget()->GetRootView()); | 98 DCHECK(GetWidget()->GetRootView()); |
| 99 views::TooltipManagerViews* manager = new views::TooltipManagerViews( | 99 views::TooltipManagerViews* manager = new views::TooltipManagerViews( |
| 100 GetWidget()->GetRootView()); | 100 GetWidget()->GetRootView()); |
| 101 tooltip_manager_.reset(manager); | 101 tooltip_manager_.reset(manager); |
| 102 } | 102 } |
| (...skipping 200 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 303 | 303 |
| 304 void NativeWidgetAura::CloseNow() { | 304 void NativeWidgetAura::CloseNow() { |
| 305 delete window_; | 305 delete window_; |
| 306 } | 306 } |
| 307 | 307 |
| 308 void NativeWidgetAura::EnableClose(bool enable) { | 308 void NativeWidgetAura::EnableClose(bool enable) { |
| 309 NOTIMPLEMENTED(); | 309 NOTIMPLEMENTED(); |
| 310 } | 310 } |
| 311 | 311 |
| 312 void NativeWidgetAura::Show() { | 312 void NativeWidgetAura::Show() { |
| 313 window_->Show(); | 313 ShowWithWindowState(ui::SHOW_STATE_INACTIVE); |
| 314 } | 314 } |
| 315 | 315 |
| 316 void NativeWidgetAura::Hide() { | 316 void NativeWidgetAura::Hide() { |
| 317 window_->Hide(); | 317 window_->Hide(); |
| 318 } | 318 } |
| 319 | 319 |
| 320 void NativeWidgetAura::ShowMaximizedWithBounds( | 320 void NativeWidgetAura::ShowMaximizedWithBounds( |
| 321 const gfx::Rect& restored_bounds) { | 321 const gfx::Rect& restored_bounds) { |
| 322 window_->SetBounds(restored_bounds); | 322 window_->SetBounds(restored_bounds); |
| 323 window_->Maximize(); | 323 ShowWithWindowState(ui::SHOW_STATE_MAXIMIZED); |
| 324 window_->Show(); | |
| 325 } | 324 } |
| 326 | 325 |
| 327 void NativeWidgetAura::ShowWithWindowState(ui::WindowShowState state) { | 326 void NativeWidgetAura::ShowWithWindowState(ui::WindowShowState state) { |
| 328 switch(state) { | 327 switch (state) { |
| 329 case ui::SHOW_STATE_MAXIMIZED: | 328 case ui::SHOW_STATE_MAXIMIZED: |
| 330 window_->Maximize(); | 329 window_->Maximize(); |
| 331 break; | 330 break; |
| 332 case ui::SHOW_STATE_FULLSCREEN: | 331 case ui::SHOW_STATE_FULLSCREEN: |
| 333 window_->Fullscreen(); | 332 window_->Fullscreen(); |
| 334 break; | 333 break; |
| 335 default: | 334 default: |
| 336 break; | 335 break; |
| 337 } | 336 } |
| 338 window_->Show(); | 337 window_->Show(); |
| 338 if (can_activate_ && (state != ui::SHOW_STATE_INACTIVE || | |
| 339 !GetWidget()->SetInitialFocus())) | |
| 340 window_->Activate(); | |
|
Ben Goodger (Google)
2011/10/31 18:31:39
braces around this block
| |
| 339 } | 341 } |
| 340 | 342 |
| 341 bool NativeWidgetAura::IsVisible() const { | 343 bool NativeWidgetAura::IsVisible() const { |
| 342 return window_->IsVisible(); | 344 return window_->IsVisible(); |
| 343 } | 345 } |
| 344 | 346 |
| 345 void NativeWidgetAura::Activate() { | 347 void NativeWidgetAura::Activate() { |
| 346 window_->Activate(); | 348 window_->Activate(); |
| 347 } | 349 } |
| 348 | 350 |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 381 void NativeWidgetAura::SetFullscreen(bool fullscreen) { | 383 void NativeWidgetAura::SetFullscreen(bool fullscreen) { |
| 382 fullscreen ? window_->Fullscreen() : window_->Restore(); | 384 fullscreen ? window_->Fullscreen() : window_->Restore(); |
| 383 } | 385 } |
| 384 | 386 |
| 385 bool NativeWidgetAura::IsFullscreen() const { | 387 bool NativeWidgetAura::IsFullscreen() const { |
| 386 return window_->show_state() == ui::SHOW_STATE_FULLSCREEN; | 388 return window_->show_state() == ui::SHOW_STATE_FULLSCREEN; |
| 387 } | 389 } |
| 388 | 390 |
| 389 void NativeWidgetAura::SetOpacity(unsigned char opacity) { | 391 void NativeWidgetAura::SetOpacity(unsigned char opacity) { |
| 390 window_->layer()->SetOpacity(opacity / 255.0); | 392 window_->layer()->SetOpacity(opacity / 255.0); |
| 393 window_->layer()->ScheduleDraw(); | |
| 391 } | 394 } |
| 392 | 395 |
| 393 void NativeWidgetAura::SetUseDragFrame(bool use_drag_frame) { | 396 void NativeWidgetAura::SetUseDragFrame(bool use_drag_frame) { |
| 394 NOTIMPLEMENTED(); | 397 NOTIMPLEMENTED(); |
| 395 } | 398 } |
| 396 | 399 |
| 397 bool NativeWidgetAura::IsAccessibleWidget() const { | 400 bool NativeWidgetAura::IsAccessibleWidget() const { |
| 398 NOTIMPLEMENTED(); | 401 NOTIMPLEMENTED(); |
| 399 return false; | 402 return false; |
| 400 } | 403 } |
| (...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 646 } | 649 } |
| 647 | 650 |
| 648 // static | 651 // static |
| 649 bool NativeWidgetPrivate::IsMouseButtonDown() { | 652 bool NativeWidgetPrivate::IsMouseButtonDown() { |
| 650 NOTIMPLEMENTED(); | 653 NOTIMPLEMENTED(); |
| 651 return false; | 654 return false; |
| 652 } | 655 } |
| 653 | 656 |
| 654 } // namespace internal | 657 } // namespace internal |
| 655 } // namespace views | 658 } // namespace views |
| OLD | NEW |