| 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/window/window.h" | 5 #include "views/window/window.h" |
| 6 | 6 |
| 7 #include "base/string_util.h" | 7 #include "base/string_util.h" |
| 8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
| 9 #include "third_party/skia/include/core/SkBitmap.h" | 9 #include "third_party/skia/include/core/SkBitmap.h" |
| 10 #include "ui/base/l10n/l10n_font_util.h" | 10 #include "ui/base/l10n/l10n_font_util.h" |
| (...skipping 19 matching lines...) Expand all Loading... |
| 30 } | 30 } |
| 31 | 31 |
| 32 Window::Window() | 32 Window::Window() |
| 33 : native_window_(NULL), | 33 : native_window_(NULL), |
| 34 window_delegate_(NULL), | 34 window_delegate_(NULL), |
| 35 ALLOW_THIS_IN_INITIALIZER_LIST( | 35 ALLOW_THIS_IN_INITIALIZER_LIST( |
| 36 non_client_view_(new NonClientView(this))), | 36 non_client_view_(new NonClientView(this))), |
| 37 saved_maximized_state_(false), | 37 saved_maximized_state_(false), |
| 38 minimum_size_(100, 100), | 38 minimum_size_(100, 100), |
| 39 disable_inactive_rendering_(false), | 39 disable_inactive_rendering_(false), |
| 40 window_closed_(false) { | 40 window_closed_(false), |
| 41 frame_type_(FRAME_TYPE_DEFAULT) { |
| 41 } | 42 } |
| 42 | 43 |
| 43 Window::~Window() { | 44 Window::~Window() { |
| 44 } | 45 } |
| 45 | 46 |
| 46 // static | 47 // static |
| 47 Window* Window::CreateChromeWindow(gfx::NativeWindow parent, | 48 Window* Window::CreateChromeWindow(gfx::NativeWindow parent, |
| 48 const gfx::Rect& bounds, | 49 const gfx::Rect& bounds, |
| 49 WindowDelegate* window_delegate) { | 50 WindowDelegate* window_delegate) { |
| 50 Window* window = new Window; | 51 Window* window = new Window; |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 231 | 232 |
| 232 void Window::UpdateFrameAfterFrameChange() { | 233 void Window::UpdateFrameAfterFrameChange() { |
| 233 native_window_->UpdateFrameAfterFrameChange(); | 234 native_window_->UpdateFrameAfterFrameChange(); |
| 234 } | 235 } |
| 235 | 236 |
| 236 gfx::NativeWindow Window::GetNativeWindow() const { | 237 gfx::NativeWindow Window::GetNativeWindow() const { |
| 237 return native_window_->GetNativeWindow(); | 238 return native_window_->GetNativeWindow(); |
| 238 } | 239 } |
| 239 | 240 |
| 240 bool Window::ShouldUseNativeFrame() const { | 241 bool Window::ShouldUseNativeFrame() const { |
| 242 if (frame_type_ != FRAME_TYPE_DEFAULT) |
| 243 return frame_type_ == FRAME_TYPE_FORCE_NATIVE; |
| 241 return native_window_->ShouldUseNativeFrame(); | 244 return native_window_->ShouldUseNativeFrame(); |
| 242 } | 245 } |
| 243 | 246 |
| 247 void Window::DebugToggleFrameType() { |
| 248 if (frame_type_ == FRAME_TYPE_DEFAULT) { |
| 249 frame_type_ = ShouldUseNativeFrame() ? FRAME_TYPE_FORCE_CUSTOM : |
| 250 FRAME_TYPE_FORCE_NATIVE; |
| 251 } else { |
| 252 frame_type_ = frame_type_ == FRAME_TYPE_FORCE_CUSTOM ? |
| 253 FRAME_TYPE_FORCE_NATIVE : FRAME_TYPE_FORCE_CUSTOM; |
| 254 } |
| 255 FrameTypeChanged(); |
| 256 } |
| 257 |
| 244 void Window::FrameTypeChanged() { | 258 void Window::FrameTypeChanged() { |
| 245 native_window_->FrameTypeChanged(); | 259 native_window_->FrameTypeChanged(); |
| 246 } | 260 } |
| 247 | 261 |
| 248 //////////////////////////////////////////////////////////////////////////////// | 262 //////////////////////////////////////////////////////////////////////////////// |
| 249 // Window, internal::NativeWindowDelegate implementation: | 263 // Window, internal::NativeWindowDelegate implementation: |
| 250 | 264 |
| 251 bool Window::CanActivate() const { | 265 bool Window::CanActivate() const { |
| 252 return window_delegate_->CanActivate(); | 266 return window_delegate_->CanActivate(); |
| 253 } | 267 } |
| 254 | 268 |
| 255 bool Window::IsInactiveRenderingDisabled() const { | 269 bool Window::IsInactiveRenderingDisabled() const { |
| 256 return disable_inactive_rendering_; | 270 return disable_inactive_rendering_; |
| 257 } | 271 } |
| 258 | 272 |
| 259 void Window::EnableInactiveRendering() { | 273 void Window::EnableInactiveRendering() { |
| 260 disable_inactive_rendering_ = false; | 274 disable_inactive_rendering_ = false; |
| 261 non_client_view_->DisableInactiveRendering(false); | 275 non_client_view_->DisableInactiveRendering(false); |
| 262 } | 276 } |
| 263 | 277 |
| 264 bool Window::IsModal() const { | 278 bool Window::IsModal() const { |
| 265 return window_delegate_->IsModal(); | 279 return window_delegate_->IsModal(); |
| 266 } | 280 } |
| 267 | 281 |
| 268 bool Window::IsDialogBox() const { | 282 bool Window::IsDialogBox() const { |
| 269 return !!window_delegate_->AsDialogDelegate(); | 283 return !!window_delegate_->AsDialogDelegate(); |
| 270 } | 284 } |
| 271 | 285 |
| 272 bool Window::IsUsingNativeFrame() const { | |
| 273 return non_client_view_->UseNativeFrame(); | |
| 274 } | |
| 275 | |
| 276 gfx::Size Window::GetMinimumSize() const { | 286 gfx::Size Window::GetMinimumSize() const { |
| 277 return non_client_view_->GetMinimumSize(); | 287 return non_client_view_->GetMinimumSize(); |
| 278 } | 288 } |
| 279 | 289 |
| 280 int Window::GetNonClientComponent(const gfx::Point& point) const { | 290 int Window::GetNonClientComponent(const gfx::Point& point) const { |
| 281 return non_client_view_->NonClientHitTest(point); | 291 return non_client_view_->NonClientHitTest(point); |
| 282 } | 292 } |
| 283 | 293 |
| 284 bool Window::ExecuteCommand(int command_id) { | 294 bool Window::ExecuteCommand(int command_id) { |
| 285 return window_delegate_->ExecuteWindowsCommand(command_id); | 295 return window_delegate_->ExecuteWindowsCommand(command_id); |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 400 if (!window_delegate_) | 410 if (!window_delegate_) |
| 401 return; | 411 return; |
| 402 | 412 |
| 403 bool maximized; | 413 bool maximized; |
| 404 gfx::Rect bounds; | 414 gfx::Rect bounds; |
| 405 native_window_->GetWindowBoundsAndMaximizedState(&bounds, &maximized); | 415 native_window_->GetWindowBoundsAndMaximizedState(&bounds, &maximized); |
| 406 window_delegate_->SaveWindowPlacement(bounds, maximized); | 416 window_delegate_->SaveWindowPlacement(bounds, maximized); |
| 407 } | 417 } |
| 408 | 418 |
| 409 } // namespace views | 419 } // namespace views |
| OLD | NEW |