| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 "ash/common/wm/overview/window_selector_item.h" | 5 #include "ash/common/wm/overview/window_selector_item.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "ash/common/material_design/material_design_controller.h" | 10 #include "ash/common/material_design/material_design_controller.h" |
| (...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 268 caption_container_view_(nullptr), | 268 caption_container_view_(nullptr), |
| 269 window_label_button_view_(nullptr), | 269 window_label_button_view_(nullptr), |
| 270 close_button_(new OverviewCloseButton(this)), | 270 close_button_(new OverviewCloseButton(this)), |
| 271 window_selector_(window_selector) { | 271 window_selector_(window_selector) { |
| 272 CreateWindowLabel(window->GetTitle()); | 272 CreateWindowLabel(window->GetTitle()); |
| 273 if (!ash::MaterialDesignController::IsOverviewMaterial()) { | 273 if (!ash::MaterialDesignController::IsOverviewMaterial()) { |
| 274 views::Widget::InitParams params; | 274 views::Widget::InitParams params; |
| 275 params.type = views::Widget::InitParams::TYPE_POPUP; | 275 params.type = views::Widget::InitParams::TYPE_POPUP; |
| 276 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 276 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
| 277 params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW; | 277 params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW; |
| 278 params.name = "OverviewModeCloseButton"; |
| 278 close_button_widget_.reset(new views::Widget); | 279 close_button_widget_.reset(new views::Widget); |
| 279 close_button_widget_->set_focus_on_creation(false); | 280 close_button_widget_->set_focus_on_creation(false); |
| 280 window->GetRootWindowController()->ConfigureWidgetInitParamsForContainer( | 281 window->GetRootWindowController()->ConfigureWidgetInitParamsForContainer( |
| 281 close_button_widget_.get(), kShellWindowId_StatusContainer, ¶ms); | 282 close_button_widget_.get(), kShellWindowId_StatusContainer, ¶ms); |
| 282 close_button_widget_->Init(params); | 283 close_button_widget_->Init(params); |
| 283 close_button_->SetVisible(false); | 284 close_button_->SetVisible(false); |
| 284 close_button_widget_->SetContentsView(close_button_); | 285 close_button_widget_->SetContentsView(close_button_); |
| 285 close_button_widget_->SetSize(close_button_->GetPreferredSize()); | 286 close_button_widget_->SetSize(close_button_->GetPreferredSize()); |
| 286 close_button_widget_->Show(); | 287 close_button_widget_->Show(); |
| 287 | 288 |
| (...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 512 } | 513 } |
| 513 | 514 |
| 514 void WindowSelectorItem::CreateWindowLabel(const base::string16& title) { | 515 void WindowSelectorItem::CreateWindowLabel(const base::string16& title) { |
| 515 const bool material = ash::MaterialDesignController::IsOverviewMaterial(); | 516 const bool material = ash::MaterialDesignController::IsOverviewMaterial(); |
| 516 window_label_.reset(new views::Widget); | 517 window_label_.reset(new views::Widget); |
| 517 views::Widget::InitParams params; | 518 views::Widget::InitParams params; |
| 518 params.type = views::Widget::InitParams::TYPE_POPUP; | 519 params.type = views::Widget::InitParams::TYPE_POPUP; |
| 519 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; | 520 params.ownership = views::Widget::InitParams::WIDGET_OWNS_NATIVE_WIDGET; |
| 520 params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW; | 521 params.opacity = views::Widget::InitParams::TRANSLUCENT_WINDOW; |
| 521 params.visible_on_all_workspaces = true; | 522 params.visible_on_all_workspaces = true; |
| 523 params.name = "OverviewModeLabel"; |
| 522 window_label_->set_focus_on_creation(false); | 524 window_label_->set_focus_on_creation(false); |
| 523 root_window_->GetRootWindowController() | 525 root_window_->GetRootWindowController() |
| 524 ->ConfigureWidgetInitParamsForContainer( | 526 ->ConfigureWidgetInitParamsForContainer( |
| 525 window_label_.get(), kShellWindowId_StatusContainer, ¶ms); | 527 window_label_.get(), kShellWindowId_StatusContainer, ¶ms); |
| 526 window_label_->Init(params); | 528 window_label_->Init(params); |
| 527 window_label_button_view_ = new OverviewLabelButton(this, title); | 529 window_label_button_view_ = new OverviewLabelButton(this, title); |
| 528 window_label_button_view_->SetBorder(views::Border::NullBorder()); | 530 window_label_button_view_->SetBorder(views::Border::NullBorder()); |
| 529 window_label_button_view_->SetEnabledTextColors(kLabelColor); | 531 window_label_button_view_->SetEnabledTextColors(kLabelColor); |
| 530 window_label_button_view_->set_animate_on_state_change(false); | 532 window_label_button_view_->set_animate_on_state_change(false); |
| 531 if (material) { | 533 if (material) { |
| (...skipping 21 matching lines...) Expand all Loading... |
| 553 shadow_->Init(::wm::Shadow::STYLE_INACTIVE); | 555 shadow_->Init(::wm::Shadow::STYLE_INACTIVE); |
| 554 shadow_->layer()->SetVisible(true); | 556 shadow_->layer()->SetVisible(true); |
| 555 window_label_->GetLayer()->Add(shadow_->layer()); | 557 window_label_->GetLayer()->Add(shadow_->layer()); |
| 556 window_label_->GetLayer()->SetMasksToBounds(false); | 558 window_label_->GetLayer()->SetMasksToBounds(false); |
| 557 | 559 |
| 558 views::View* background_view = | 560 views::View* background_view = |
| 559 new RoundedContainerView(kLabelBackgroundRadius, kLabelBackgroundColor); | 561 new RoundedContainerView(kLabelBackgroundRadius, kLabelBackgroundColor); |
| 560 window_label_selector_.reset(new views::Widget); | 562 window_label_selector_.reset(new views::Widget); |
| 561 params.activatable = views::Widget::InitParams::Activatable::ACTIVATABLE_NO; | 563 params.activatable = views::Widget::InitParams::Activatable::ACTIVATABLE_NO; |
| 562 params.accept_events = false; | 564 params.accept_events = false; |
| 565 params.name = "OverviewModeLabelSelector"; |
| 563 window_label_selector_->Init(params); | 566 window_label_selector_->Init(params); |
| 564 window_label_selector_->set_focus_on_creation(false); | 567 window_label_selector_->set_focus_on_creation(false); |
| 565 window_label_selector_->SetContentsView(background_view); | 568 window_label_selector_->SetContentsView(background_view); |
| 566 window_label_selector_->Show(); | 569 window_label_selector_->Show(); |
| 567 } else { | 570 } else { |
| 568 // Indicate that the label will be drawn onto a transparent background | 571 // Indicate that the label will be drawn onto a transparent background |
| 569 // (disables subpixel antialiasing). | 572 // (disables subpixel antialiasing). |
| 570 window_label_button_view_->SetBackgroundColorHint(SK_ColorTRANSPARENT); | 573 window_label_button_view_->SetBackgroundColorHint(SK_ColorTRANSPARENT); |
| 571 window_label_->SetContentsView(window_label_button_view_); | 574 window_label_->SetContentsView(window_label_button_view_); |
| 572 } | 575 } |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 661 window_label_selector_window->SetOpacity(opacity); | 664 window_label_selector_window->SetOpacity(opacity); |
| 662 } | 665 } |
| 663 | 666 |
| 664 void WindowSelectorItem::UpdateCloseButtonAccessibilityName() { | 667 void WindowSelectorItem::UpdateCloseButtonAccessibilityName() { |
| 665 close_button_->SetAccessibleName(l10n_util::GetStringFUTF16( | 668 close_button_->SetAccessibleName(l10n_util::GetStringFUTF16( |
| 666 IDS_ASH_OVERVIEW_CLOSE_ITEM_BUTTON_ACCESSIBLE_NAME, | 669 IDS_ASH_OVERVIEW_CLOSE_ITEM_BUTTON_ACCESSIBLE_NAME, |
| 667 GetWindow()->GetTitle())); | 670 GetWindow()->GetTitle())); |
| 668 } | 671 } |
| 669 | 672 |
| 670 } // namespace ash | 673 } // namespace ash |
| OLD | NEW |